2015-06-11 73 views
2

我有本地備份的重要數據。我有一個本地硬盤驅動器上的數據的工作副本,然後在外部硬盤驅動器上備份(然後在異地服務器上的另一個副本)。如何檢查數據備份的完整性

有沒有一種方法可以讓我對數據完整性進行定期(例如每週)掃描,以確保任何驅動器上都沒有損壞?

1)磁盤利用掃描(例如fsck)將檢查驅動器,但不一定是數據。 2)rsync會告訴你版本是否不同。 3)散列在'完成'的文件夾?

任何其他更好的方法來檢查磁盤上的數據的完整性,以確保沒有任何損壞?

回答

1

我前段時間和備份有類似的問題。我發現我可以輕鬆地備份數據,但確保備份和原始文件都是有效的,然後如果它們被損壞則更換,這是一件苦差事。我開發了一個C#應用程序來爲我做這件事,但它很麻煩,並不是那麼高效。最後,我最終轉向使用ZFS鏡像的NAS4Free NAS。 ZFS非常重視數據完整性。 ZFS會阻止級別校驗和並將這些校驗和與文件分開存儲。如果您創建ZFS鏡像,則數據將出現在兩個(或更多)位置,您可以擦洗鏡像。擦洗遍歷鏡像中的每個塊,並確保數據與校驗和匹配。如果不是,則從鏡像中的其他位置抓取有效的塊。

這將照顧您的本地數據。就異地數據而言,如果您無法在現場創建ZFS存儲解決方案,那麼您可能需要在異地備份之前對其進行存檔和校驗,然後才能將其發送出去,然後按需要經常檢查完整性。我將所有文件作爲加密存檔備份到Amazon Glacier,並在需要稍後從備份中獲取某些內容時編制校驗和。

有很多可行的方法可以解決這個問題,但我發現ZFS支持的存儲解決方案是最簡單,最透明和最少量的維護。我希望這會有所幫助,或者至少可以讓你指引一個有用的方向。

Nas4Free

ZFS

ZFS Mirrors