Bash

當您“刪除”文件而不是安全地粉碎它時會發生什麼?

  • December 30, 2011

我讀到,當您刪除文件時,根據情況,可以恢復其內容。

當您“刪除”文件時,硬體級別會發生什麼,例如。$ rm myFile而不是安全地切碎它,例如。$ shred myFile這使得“已刪除”的文件可能可以恢復?

所發生的一切就是您將文件的連結數減少了一個。如果連結計數達到零,則磁碟上的空間被標記為可重複使用,但不會立即被覆蓋。

這可能會以兩種方式咬你:

1)如果文件的連結計數不是一開始的,刪除操作實際上不是刪除,它只是一個取消連結。所以文件的內容仍然完全可以通過另一個路徑獲得。(假設文件系統是一個相當現代的系統,例如 NTFS。)

  1. 即使文件的連結計數變為零,保存文件數據的磁碟部分仍然保存文件數據,直到系統有某種理由在那裡寫入其他內容。

安全地粉碎文件會用隨機數據、零等覆蓋數據。這樣,即使文件中的數據仍然可以通過某種方式訪問,它也不再是您關心的數據。

請注意,對於具有數據記錄和壓縮等高級功能的 SSD 和文件系統,即使粉碎也可能不夠。

引用自:https://serverfault.com/questions/345232