`rm -P` 的目的是什麼?

`rm -P` 的目的是什麼?

rm當我遇到這個選項時,我正在閱讀手冊頁:

-P    Overwrite regular files before deleting them.  Files are overwritten 
      three times, first with the byte pattern 0xff, then 0x00, and 
      then 0xff again, before they are deleted.

我猜-P是為了徹底刪除文件,但將所有位元組設定為0xff0x00還不夠嗎?為什麼要在兩者之間切換三次呢?

答案1

有一種稱為殘留資訊檢索的技術,可以讀取被刪除的數據,其原理是當驅動器被磁化以存儲數據時,靠近數據的其他部分也會受到影響,並且應該可以重新恢復。方式讀取資料...這雖然是一種成本高昂的技術,但如果您偏執,請使用它;)

透過寫入資料 3 次(在這種情況下),磁碟機上磁軌旁邊的部分也應該重置,以便不可能以這種方式重新讀取。

答案2

這個選項基本上沒什麼用。用多種模式覆蓋有點偏執,這在現實世界的測試中是不合理的:在現代硬碟上,用零、一或隨機模式覆蓋一次或多次,沒有任何區別。 SSD 的情況還不太清楚,但它們也有自己的問題;多次覆蓋會更快磨損設備,但無論如何都不會真正幫助清除資料。

刪除檔案時擦除檔案基本上沒用的主要原因是,通常有檔案的先前版本、編輯器備份、編輯器交換檔案等未被擦除。此外,檔案系統本身可能已經修改了周圍的資料(由於碎片整理或檔案系統檢查)。

如果您擔心文件可能會留下碎片,請對其進行加密。如果文件已加密,則刪除它時無需採取任何預防措施;您只需要確保不洩露密鑰即可。您可以專門加密該文件,在這種情況下,您應該確保所有備份和其他可能包含全部或部分資料的文件也被加密;或者您可以加密文件所在的磁碟區(通常會處理這些其他文件)。

有關更多信息,請參閱

答案3

因為它在取消連結之前會清理檔案的內容(以防止復原),所以它還會清理檔案的「其他副本」(實際上是同一檔案),這些副本可能以硬連結的形式存在於檔案系統的其他位置。

對於 BTRFS 或任何其他寫入時複製檔案系統,我希望它不會對資料進行取證破壞,儘管該檔案的所有其他硬連結都將由垃圾組成。它還會保留該文件的任何其他母版副本不變......或快照中該文件的任何副本。

相關內容