Chủ Nhật, 10 tháng 7, 2011

Lệnh "CHKDSK" và ứng dụng sửa lỗi ổ cứng

Cú pháp:

Code:
chkdsk [tên ổ đĩa][đường dẫn][tên file] [/f] [/v] [/r] [/x] [/i] [/c] [/l[:kích thước]] [/b]



Miêu tả các tham số:

[tên file]: Chỉ định các file để kiểm tra việc phân mảnh dữ liệu (Defrag). Chỉ dùng với các hệ thống file FAT/FAT32

/f: Sửa các lỗi tìm thấy trên ổ đĩa, ổ đĩa này sẽ bị khóa lại cho tới khi các lỗi được sửa xong. Sẽ có 1 tin nhắn hiện ra cho phép bạn lựa chọn có sửa các lỗi này ở lần khởi động máy tiếp theo không, nếu là ổ C - ổ cài Windows thì chắc không cần phải hỏi nữa vì làm sao mà Windows có thể chạy khi ổ C bị khóa đúng không ?

/v: Hiển thị tên của mỗi tập tin trong thư mục mỗi khi ổ đĩa được kiểm tra

/r: Xác định vị trí của các Bad Sector và phục hồi nếu có thể (thường là có thể phục hồi được). Tương tự như /f, ổ đĩa cũng sẽ bị khóa lại và tham số này cũng bao gồm cả /f và các phân tích bổ sung đối với các lỗi ổ đĩa vật lý.

/x: Là lựa chọn đầu tiên để tách các phân vùng nếu cần thiết. Tất cả các truy cập vào ổ đĩa đều sẽ không có hiệu lực, /x bao gồm cả /f

/i: Chỉ có thể dùng với ổ đĩa có định dạng NTFS. Tận dụng lợi thế của các Index Entries trong NTFS, nó sẽ làm giảm thời gian cần thiết để chạy lệnh chkdsk. Các bạn nên chọn tham số này nếu xài NTFS

/c: Chỉ có thể dùng với ổ đĩa có định dạng NTFS. Không kiểm tra chu kỳ bên trong cấu trúc thư mục, làm giảm thời gian cần thiết để chạy lệnh chkdsk.

/l[:kích thước]: Chỉ có thể dùng với ổ đĩa có định dạng NTFS. Thay đổi kích thước file log bằng kích thước mà bạn quy định, nếu bạn không nhập kích thước file log, /l sẽ hiển thị kích thước hiện tại của file này

/b: Chỉ có thể dùng với ổ đĩa có định dạng NTFS. Xóa danh sách các Bad Sector và scan lại vị trí của tất cả các cluster bị lỗi. /b bao gồm cả /r. Khi dùng /b, các bạn nên tự nghĩ cho mình dung luợng của một ổ đĩa mới

...... và cuối cùng, một tham số có phần hơi vô dụng nhưng lại vô cùng quan trọng cho các newbie đó là /? dùng để hiển thị hướng dẫn sử dụng lệnh chkdsk cũng như tất cả các lệnh khác. Đôi khi tham -? cũng có tính năng tương tự nhưng với tham số này có một số lệnh lại không "hiểu" nó nên dẫn đến việc báo lỗi tham số,.... Nói chung các bạn nên dùng /?[/size]
Chú ý:

  • Giảm thời gian chạy lệnh chkdsk

    /i và /c bỏ qua một số quá trình kiểm tra để giảm thời gian chạy lệnh chkdsk

  • Sữa chữa các Bad Sector ở lần khởi động máy kế tiếp

    Nếu bạn muốn chkdsk sửa lỗi ổ đĩa, bạn không thể truy cập dữ liệu trên ổ đĩa đó (vì nó đã bị chkdsk khoá), nếu bạn cố gắng làm việc này, sẽ có một thông báo lỗi xuất hiện

    Quote
    Chkdsk cannot run because the volume is in use by another process. Would you like to schedule this volume to be checked the next time the system restarts? (Y/N)

    Nếu bạn chọn Y, Windows sẽ tự động sửa chữa các Bad Sector đó vào lần khởi động máy kế tiếp trước khi bạn đăng nhập vào Windows. Nếu ổ đĩa đó là một Boot Partition (phân vùng đầu tiên được khởi động của ổ cứng), chkdks sẽ tự động restart lại máy sau khi nó đã check xong Boot Partition này. Bạn cũng có thể sử dụng lệnh chkntfs /c để lên lịch cho quá trình này. Lệnh fsutil dirty set sẽ giúp bạn chỉ ra dung lượng của các bit bẩn và Windows sẽ chạy chkdsk khi máy tính được khởi động lại  

  • Báo cáo lỗi ổ đĩa

    Thỉnh thoảng, bạn có thể dùng lệnh chkdsk để kiểm tra lỗi ổ đĩa trên các hệ thống file FAT và NTFS. chkdsk sẽ kiểm tra chi tiết không gian đĩa cứng và các vùng đã sử dụng và báo cáo cho bạn trạng thái cụ thể của các hệ thông tập tập tin. Các báo cáo này có thể cho thấy các sai sót trong hệ thông tập tin đó. Nếu bạn chạy chkdsk mà không có tham số /f trên một phân vùng đĩa đang hoạt động, chkdsk có thể sẽ báo cáo lỗi do nó đã không thể khoá phân vùng đó lại

  • Sửa lỗi các ổ đĩa Logic
    chkdsk sẽ sửa các lỗi của ổ đĩa Logic nếu bạn đưa thêm tham số /f và nó phải có khả năng khoá được ổ đĩa để tiếng hành sửa lỗi. Sửa chữa các ổ đĩa có định dạng FAT có thể ảnh hưởng đến bảng cấp phát file và đôi khi có thể làm mất dữ liệu, chkdsk sẽ hiển thị một thông báo xác nhận tương tự như sau:
    Quote
    10 lost allocation units found in 3 chains.
    Convert lost chains to files?

    Nếu bạn chọn Y, Windows sẽ lưu các chuỗi bị mất trong thư mục gốc của ổ đĩa với định dạng file là <nnnn>.chk. Khi lệnh chkdsk kết thúc, bạn có thể kiểm tra những file này để xem nó có chứa các dữ liệu bạn cần hay không. Nếu bạn chọn N, Windows sẽ tiến hành sữa lỗi nhưng nó sẽ không lưu lại thông tin về các chuỗi dữ liệu bị mất nếu có. Nếu bạn không dùng /f, chkdsk sẽ hiển thị thông báo rằng nó cần sửa các lỗi ổ đĩa tuy nhiên nó vẫn chưa tiến hành quá trình này, ngược lại, nếu bạn chọn /f, quá trình sửa lỗi sẽ được tiến hành. Đối với các ổ đĩa có dung lượng lớn và chứa nhiều dữ liệu (chiếm nhiều Sector trong ổ cứng), chkdsk sẽ mất một khoảng thời gian kha khá để hoàn thành công việc

  • Tìm kiếm lỗi ổ đĩa vật lí

    Dùng tham số /r để tìm kiếm các lỗi ổ đĩa vật lí trong hệ thống và nó sẽ cố gắng phục hồi cho bạn dữ liệu bị ảnh hưởng từ bất cứ Sector nào của ổ cứng

  • Dùng chkdsk với các tập tin đang mở

    Nếu bạn chỉ định tham số /f, chkdsk sẽ hiển thị một thông báo lỗi nếu có sự truy cập dữ liệu vào ổ đĩa đang được sửa chữa. Nếu bạn không dùng /f mà thay đổi các file trên ổ đĩa (được ghi nhận trong bảng cấp phát file), chkdsk sẽ báo cáo việc mất địa chỉ các đơn vị dữ liệu trên ổ đĩa, nếu chkdsk báo cáo việc mất một lượng lớn địa chỉ của các đơn vị dữ liệu này, bạn phải tính đến việc scan lại ổ đĩa từ đầu và sữa chữa lại chúng

  • Tìm hiểu về các exit code của lệnh chkdsk

    Mã 0: Không có lỗi ổ đĩa nào được tìm thấy

    Mã 1: Không có lỗi ổ đĩa nào được tìm thấy và sửa chữa

    Mã 2: Thực hiện dọn dẹp ổ đĩa như dọn dẹp rác, temp file,.... hoặc không thực hiện dọn dẹp do /f không chỉ định

    Mã 3: Không thể kiểm tra ổ đĩa, các lỗi không được sửa hoặc không thể sửa được do /f không chỉ định

  • Lệnh chkdsk với các thông số như trên có thể được thực thi trong Recovery Console

  • Trên các server chạy liên tục suốt ngày đêm, bạn có thể dùng lệnh chkntfs hoặc fsutil dirty query để xác định dung lượng của các bit dữ liệu bẩn trước khi chạy chkdsk

Các ví dụ:

Code:
chkdsk d: /f

Với lệnh trên, Windows sẽ tiến hành kiểm tra và sửa chữa các lỗi nếu có trong ổ đĩa D. Nếu có lỗi xuất hiện, chkdsk sẽ tạm dừng hoạt động đó lại và hiển thị tin nhắn báo cáo cho bạn biết chi tiết của lỗi đã xảy ra. Khi kết thúc việc thực hiện lệnh, chkdsk sẽ hiển thị một báo cáo về tình trạng của ổ đĩa D và một lần nữa cần phải nhắc lại là bạn không thể mở bất kì file nào trong ổ đĩa D cho tới khi lệnh chkdsk được thực hiện xong. Bạn cũng có thể hủy bỏ lệnh chkdsk khi nó đang chạy nhưng đó là điều không nên làm, ít nhiều gì thì nó cũng sẽ ảnh hưởng đến ổ đĩa của bạn

Để kiểm tra tất cả các file trên một ổ đĩa với định dạng FAT trong thư mục hiện hành cho các khối dữ liệu không liên tiếp nhau, bạn gõ lệnh:

Code:
chkdsk *.*

chkdsk sẽ hiển thị một thông báo trạng thái và sau đó là một danh sách các file phù hợp với các file có thông số kĩ thuật có các khối không liên tiếp

Một vài hình ảnh của lệnh chkdsk trên ổ đĩa định dạng NTFS







Phụ lục

Kí hiệu dòng trong cú pháp của các lệnh

Chữ in nghiêng: Thông tin bắt buộc bạn phải cung cấp

Chữ in đậm: Các tham số yêu cầu người sử dụng phải nhập chính xác

Dấu chấm lửng (...): Các tham số có thể lặp đi lặp lại nhiều lần trong một dòng lệnh

Ở giữa dấu ngoặc vuông [  ]: Giá trị cho phép người dùng tùy chọn (theo các quy tắc nhất định)

Ở giữa dấu ngoặc nhọn {  }: Các thiết lập cần thiết, người dùng chỉ có thể chọn một trong số chúng

Ngăn cách nhau bằng dấu gạch dọc |: Các mục tách biệt nhau, người dùng chỉ có thể chọn một trong số chúng

Xem VD:

E:\>net /?
The syntax of this command is:
NET
    [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |
      HELPMSG | LOCALGROUP | PAUSE | SESSION | SHARE | START |
      STATISTICS | STOP | TIME | USE | USER | VIEW ]




Font Courier: Các mã lệnh hoặc kết quả của một lệnh
 (Nguồn CMClab)

Không có nhận xét nào:

Đăng nhận xét