在Linux中永久并安全刪除文件和目錄的方法
引言
在大多數情況下,我們習慣于使用 Delete 鍵、垃圾箱或 rm 命令從我們的計算機中刪除文件,但這不是永久安全地從硬盤中(或任何存儲介質)刪除文件的方法。
該文件只是對用戶隱藏,它駐留在硬盤上的某個地方。它有可能被數據竊賊、執法取證或其它方式來恢復。
假設文件包含密級或機密內容,例如安全系統的用戶名和密碼,具有必要知識和技能的攻擊者可以輕松地恢復刪除文件的副本并訪問這些用戶憑證(你可以猜測到這種情況的后果)。
在本文中,我們將解釋一些命令行工具,用于永久并安全地刪除 Linux 中的文件。
1.shred – 覆蓋文件來隱藏內容
shred 會覆蓋文件來隱藏它的內容,并且也可以選擇刪除它。
在下面的命令中,選項有:
你可以在 shred 的幫助頁中找到更多的用法選項和信息:
2.wipe – 在 Linux 中安全刪除文件
wipe 命令可以安全地擦除磁盤中的文件,從而不可能恢復刪除的文件或目錄內容。
首先,你需要安裝 wipe 工具,運行以下適當的命令:
下面的命令會銷毀 private 目錄下的所有文件。
當使用下面的標志時:
注意:wipe 僅可以在磁性存儲上可以可靠地工作,因此對固態磁盤(內存)請使用其他方法。
閱讀 wipe 手冊以獲取其他使用選項和說明:
3.Linux 中的安全刪除工具集
secure-delete 是一個安全文件刪除工具的集合,它包含用于安全刪除文件的 srm(secure_deletion)工具。
首先,你需要使用以下相關命令安裝它:
安裝完成后,你可以使用 srm 工具在 Linux 中安全地刪除文件和目錄。
下面是使用的選項:
閱讀 srm 手冊來獲取更多的使用選項和信息:
4.sfill -安全免費的磁盤 / inode 空間擦除器
sfill 是 secure-deletetion 工具包的一部分,是一個安全免費的磁盤和 inode 空間擦除器,它以安全的方法刪除可用磁盤空間中的文件。 sfill 會檢查指定分區上的可用空間,并使用來自 /dev/urandom 的隨機數據填充它。
以下命令將在我的根分區上執行 sfill,使用 `-v’ 選項啟用 verbose 模式:
假設你創建了一個單獨的分區 /home 來存儲正常的系統用戶主目錄,你可以在該分區上指定一個目錄,以便在其上應用 sfill:
你可以在 sfill 的手冊上看到一些限制,你也可以看到額外的使用標志和命令:
注意:secure-deletetion 工具包中的另外兩個工具(sswap 和 sdmem)與本指南的范圍不直接相關,但是,為了將來的使用和傳播知識的目的,我們會在下面介紹它們。
5.sswap – 安全 swap 擦除器
它是一個安全的分區擦除器,sswap 以安全的方式刪除 swap 分區上存在的數據。
警告:請記住在使用 sswap 之前卸載 swap 分區! 否則你的系統可能會崩潰!
要找到交換分區(并檢查分頁和交換設備/文件是否已經使用,請使用 swapon 命令),接下來,使用swapoff 命令禁用分頁和交換設備/文件(使 swap 分區不可用)。
然后在(關閉的) swap 分區上運行 sswap 命令:
閱讀 sswap 的手冊來獲取更多的選項和信息:
6. sdmem – 安全內存擦除器
sdmem 是一個安全的內存擦除器,其設計目的是以安全的方式刪除存儲器(RAM)中的數據。
它最初命名為 smem,但是因為在 Debain 系統上存在另一個包 smem – 報告每個進程和每個用戶的內存消耗,開發人員決定將它重命名為 sdmem。
關于更多的使用信息,閱讀 sdmen 的手冊: