Trả lời ngắn: ghi lại mã băm của mọi tệp khi bạn tạo bản sao lưu, và chạy lại bước kiểm tra trên bản sao lưu sau đó.
Nếu mã băm vẫn khớp, các byte vẫn còn đó. Không có gì khác chứng minh được điều này.
Có bốn điều có thể hỏng, và không điều nào tự báo hiệu:
Cả bốn trông y hệt nhau từ bên ngoài: một thư mục đầy tệp có tên và ngày tháng hợp lý.
Khi tạo bản sao lưu, hãy ghi lại những gì đã ghi:
find /Volumes/Backup/Documents -type f -exec shasum -a 256 {} + > ~/backup.sha256
Sau đó, hỏi xem bản sao lưu có còn khớp với bản ghi đó không:
shasum -a 256 -c ~/backup.sha256
Mỗi dòng trả về OK hoặc FAILED. Một tệp đã biến mất hoàn toàn được báo là không đọc được, đó là hành vi bạn muốn: tệp bị thiếu là một lỗi, không phải là thiếu bằng chứng.
Hãy giữ tệp mã băm ở nơi không phải ổ sao lưu. Một bản ghi lưu cạnh thứ nó mô tả sẽ mất theo thứ đó.
Câu hỏi riêng, và là câu hỏi khiến người ta mắc kẹt. Tệp mới nhất trong bản sao lưu cho bạn biết tác vụ thành công lần cuối khi nào:
find /Volumes/Backup -type f -newermt '-7 days' | head
Không có kết quả nghĩa là không có gì được ghi trong một tuần. Nếu bạn dựa vào Time Machine, hãy hỏi trực tiếp nó:
tmutil latestbackup
Mã băm chứng minh các byte còn nguyên. Chúng không chứng minh bạn lấy lại được tệp, vì việc đó còn phụ thuộc vào công cụ, chỉ mục, khóa mã hóa và trí nhớ của bạn về cách dùng cả ba. Mỗi năm một hai lần, hãy khôi phục vài tệp vào một thư mục thử và mở ra xem.
Hãy chọn một tệp bạn thực sự sẽ tiếc nếu mất, không phải tài liệu thử. Mục đích của bài tập là phát hiện ra khóa khôi phục của bạn nằm trên một ghi chú trong chính máy Mac đang được sao lưu, và phát hiện điều đó vào một ngày thứ Ba yên ả.
Kiểm tra tự động có ba đặc tính mà cách thủ công không có: nó chạy dù bạn có nhớ hay không, nó kiểm tra mọi phần kể cả những phần bạn không nghĩ tới, và nó báo cho bạn ngay khi thất bại.
Copy Shelter đọc lại bản sao lưu và kiểm tra từng phần với mã băm đã lưu, báo phần bị xóa là bị thiếu, và chỉ tính những bản sao đã thực sự được kiểm tra. Nó cũng lên tiếng sau 7 ngày không có bản sao lưu thành công, giúp phát hiện sự cố thứ tư ở trên, sự cố phổ biến nhất.
shasum có chậm không?Nó đọc mọi byte, nên mất khoảng thời gian như sao chép dữ liệu. Đó chính là mục đích: một bước kiểm tra không đọc dữ liệu thì không thể phát hiện ổ đĩa không trả được dữ liệu.
Có, và một mẫu ngẫu nhiên tốt hơn nhiều so với không có gì. find ... | shuf -n 50 cho bạn năm mươi tệp để kiểm tra, đủ để nhanh chóng phát hiện ổ đang hỏng hoặc tác vụ đã dừng, dù không phát hiện được một tệp hỏng lẻ.
Nhà cung cấp lưu trữ kiểm tra checksum các bản sao của chính họ, và điều đó bảo vệ bạn khỏi ổ đĩa của họ bị hỏng. Nó không bảo vệ bạn khỏi một lần tải lên chưa bao giờ xong, một tệp đã hỏng từ khi bạn gửi, hay một lần đồng bộ đã dừng. Việc kiểm tra phải diễn ra từ phía bạn.
Đừng ghi đè bản sao lưu. Hãy tạo bản sao thứ hai từ máy Mac sang nơi lưu khác trước, rồi tìm xem cái nào trong hai cái bị sai. Một lần kiểm tra thất bại trên bản sao lưu mà bạn chạy lại ngay là một lần kiểm tra thất bại mà bạn vừa xóa mất bằng chứng.
Hằng tháng là nhịp hợp lý cho kiểm tra đầy đủ, hằng tuần cho kiểm tra mẫu, và một hoặc hai lần mỗi năm cho một lần khôi phục thực sự. Bất cứ thứ gì chạy theo lịch đều tốt hơn thứ bạn phải tự nhớ.
Liên quan: quy tắc sao lưu 3-2-1, và những điều người ta hay làm sai.