Câu hỏi 1:
Liên quan đến -b
tùy chọn: điều này phụ thuộc vào đĩa của bạn. Các đĩa lớn, hiện đại có các khối 4KB, trong trường hợp đó bạn nên đặt -b 4096
. Bạn có thể lấy kích thước khối từ hệ điều hành và thường có thể lấy được bằng cách đọc thông tin của đĩa ra khỏi nhãn hoặc bằng cách lấy số mô hình của đĩa. Nếu -b
được đặt thành một cái gì đó lớn hơn kích thước khối của bạn, tính toàn vẹn của badblocks
kết quả có thể bị tổn hại (nghĩa là bạn có thể bị phủ định sai: không tìm thấy khối xấu nào khi chúng vẫn còn tồn tại). Nếu -b
được đặt thành một cái gì đó nhỏ hơn kích thước khối của ổ đĩa của bạn, tốc độ badblocks
chạy có thể bị tổn hại. Tôi không chắc chắn, nhưng có thể có vấn đề khác với cài đặt-b
đến một cái gì đó nhỏ hơn kích thước khối của bạn, vì nó không xác minh tính toàn vẹn của toàn bộ một khối, nên vẫn có thể có âm tính giả nếu nó được đặt quá nhỏ.
Các -c
tùy chọn tương ứng với bao nhiêu khối cần được kiểm tra ngay lập tức. Hàng loạt đọc / viết, về cơ bản. Tùy chọn này không ảnh hưởng đến tính toàn vẹn của kết quả của bạn, nhưng nó ảnh hưởng đến tốc độ badblocks
chạy. badblocks
sẽ (tùy chọn) viết, sau đó đọc, đệm, kiểm tra, lặp lại cho mỗi khối N như được chỉ định bởi -c
. Nếu -c
được đặt quá thấp, điều này sẽ khiến việc badblocks
chạy của bạn mất nhiều thời gian hơn bình thường, vì việc xếp hàng và xử lý một yêu cầu IO riêng phát sinh chi phí và đĩa cũng có thể áp đặt thêm chi phí cho mỗi yêu cầu. Nếu -c
được đặt quá cao, badblocks
có thể hết bộ nhớ. Nếu điều này xảy ra, badblocks
sẽ thất bại khá nhanh sau khi nó bắt đầu. Các cân nhắc bổ sung ở đây bao gồm các badblocks
hoạt động song song : nếu bạn đang chạybadblocks
chống lại nhiều phân vùng trên cùng một đĩa (ý tưởng tồi) hoặc chống lại nhiều ổ đĩa trên cùng một kênh IO, có thể bạn sẽ muốn điều chỉnh -c
đến mức cao hợp lý với bộ nhớ có sẵn để badblocks
chạy song song không chiến đấu với băng thông IO và có thể song song một cách lành mạnh.
Câu hỏi 2:
Trái với những gì câu trả lời khác cho thấy, các -w
bài kiểm tra ghi-mode không phải là nhiều hay ít đáng tin cậy hơn so với kiểm tra đọc-ghi không phá hủy, nhưng nó là nhanh gấp hai lần, với chi phí của việc phá hoại cho tất cả các dữ liệu của bạn. Tôi sẽ giải thích tại sao:
Trong chế độ không phá hủy, badblocks
thực hiện như sau:
- Đọc dữ liệu hiện có, kiểm tra lại (đọc lại nếu cần) và lưu nó vào bộ nhớ.
- Viết một mẫu được xác định trước (ghi đè bằng
-p
tùy chọn, mặc dù thường không cần thiết) cho khối.
- Đọc lại khối, xác minh rằng dữ liệu đọc giống với mẫu.
- Ghi dữ liệu gốc trở lại đĩa.
- Tôi không chắc chắn về điều này, nhưng nó cũng có thể đọc lại và xác minh rằng dữ liệu gốc đã được viết thành công và vẫn còn kiểm tra cho cùng một điều.
Trong -w
chế độ hủy ( ), badblocks
chỉ thực hiện bước 2 và 3 ở trên. Điều này có nghĩa là số lượng thao tác đọc / ghi cần thiết để xác minh tính toàn vẹn dữ liệu bị cắt giảm một nửa. Nếu một khối xấu, dữ liệu sẽ bị lỗi ở một trong hai chế độ. Tất nhiên, nếu bạn quan tâm đến dữ liệu được lưu trữ trên ổ đĩa của mình, bạn nên sử dụng chế độ không phá hủy, vì -w
nó sẽ xóa sạch tất cả dữ liệu và badblocks
thay vào đó là các mẫu được ghi vào đĩa.
Hãy cẩn thận: nếu một khối bị hỏng, nhưng chưa hoàn toàn biến mất, một số cặp xác minh đọc / ghi có thể hoạt động và một số thì không. Trong trường hợp này, chế độ không phá hủy có thể cho bạn một dấu hiệu đáng tin cậy hơn về "độ nhão" của một khối, vì nó có hai bộ xác minh đọc / ghi (có thể - xem dấu đầu dòng ở bước 4). Ngay cả khi chế độ không phá hủy đáng tin cậy hơn theo cách đó, nó chỉ đáng tin cậy hơn bởi sự trùng hợp . Cách chính xác để kiểm tra các khối không hoàn toàn xấu nhưng không thể duy trì nhiều thao tác đọc / ghi là chạy badblocks
nhiều lần trên cùng một dữ liệu, sử dụng -p
tùy chọn.
Câu 3:
Nếu SMART là phân bổ lại các lĩnh vực, có lẽ bạn nên xem xét việc thay thế ổ đĩa càng sớm càng tốt. Các ổ đĩa bị mất một vài lĩnh vực không phải lúc nào cũng mất chúng, nhưng nguyên nhân thường là do ổ đĩa được sử dụng nhiều bị nhiễm từ tính, hoặc đầu / động cơ bị hỏng dẫn đến đọc / ghi không chính xác hoặc thất bại. Tất nhiên, quyết định cuối cùng tùy thuộc vào bạn: dựa trên giá trị của dữ liệu trên ổ đĩa và độ tin cậy bạn cần từ các hệ thống bạn chạy trên nó, bạn có thể quyết định theo kịp. Tôi có một số ổ đĩa với các khối xấu đã biết đã quay với cảnh báo SMART trong nhiều năm trong máy chủ tệp của mình, nhưng chúng được sao lưu theo lịch để tôi có thể xử lý hoàn toàn thất bại mà không phải chịu nhiều đau đớn.