Linux
如何從 RAID 6 安全地粉碎文件?
我正在尋找一種以安全方式(粉碎)從 RAID 6 實現中刪除文件的方法。我是否需要從 RAID 中刪除文件,拆卸 RAID,擦除每個驅動器的可用空間,然後重新組裝 RAID?那會奏效嗎?這樣做後數據會保留嗎?
這一切都取決於 RAID(和文件系統)的實現。在基本的 RAID 6 實施中,您可以在將文件從文件系統中刪除之前粉碎文件。
這是因為寫入 RAID 會導致數據和奇偶校驗磁碟都被更新(通常 RAID 6 將有兩個奇偶校驗磁碟)。
更高級的 RAID(或文件系統)可能具有更好地處理中途終止的操作的功能。此類功能可能會將數據留在主要為文件分配的扇區之外的其他扇區中。如果存在任何此類高級功能,則如果文件已被粉碎,則數據可能仍然存在。
這些問題適用於重新映射的硬碟扇區。SSD 上的磨損均衡。文件系統日誌以及 RAID 實現中的日誌(如果 RAID 使用日誌)。
如果是 SSD,最好的辦法是使用 TRIM 命令。在其他情況下,使用該
shred
命令通常足夠安全。但是,如果需要非常高的數據洩露安全性,您可能需要採取諸如覆蓋整個驅動器然後消磁和物理切碎每個碟片等嚴厲措施。理論上,RAID 實現可以通過使用單獨的密鑰加密每個物理驅動器,並將密鑰作為秘密共享儲存在所有磁碟上,從而為您提供更好的數據洩露保護。這可以確保如果一次更換一個 RAID 中的有缺陷的磁碟,則在不破壞加密的情況下無法從刪除的磁碟中恢復任何數據。
在大多數情況下,您無法拆卸 RAID 並擦除底層驅動器上的可用空間。這是因為可用空間的概念僅在文件系統內進行跟踪,因此一旦 RAID 被拆解,就無法區分可用空間和已用空間。如果 RAID 實現了 TRIM 命令,可能會有例外,但嘗試擦除已拆卸 RAID 上的可用空間仍然不太可能有意義。