2021-05-12 14:32:11
徹底消失,Linux下用命令列徹底刪除檔案
在大多數情況下,我們想要刪除電腦檔案,Linux下一般會使用刪除鍵或者rm命令、將檔案扔到垃圾箱。但是,這些方法並沒把檔案從我們的電腦裡徹底刪除,只是把檔案隱藏起來,讓使用者看不見而已。
假設某個檔案含有機密或秘密的內容,比如安全系統的使用者名稱和密碼,如果攻擊者擁有必要的專長和技能,就能輕鬆恢復已刪除的檔案,從而存取那些使用者資料,這種場景造成的後果可想而知。
本文中,我們將介紹多款命令列工具,幫你實現永久安全地刪除Linux下的檔案。
1. shred – 覆蓋檔案以隱藏內容
shred可覆蓋檔案以隱藏內容,另外還可以刪除檔案。
- $ shred -zvu -n 5 passwords.list
這個命令包括的幾個選項有:
- -z – 最後一次覆蓋新增0,以隱藏覆蓋操作
- -v – 能夠顯示操作進度
- -u – 覆蓋後截斷並刪除檔案
- -n – 指定覆蓋檔案內容的次數(預設值是3次)
shred – 覆蓋檔案以隱藏內容。
你可以在shred的參考手冊頁找到更多的使用選項和資訊:
- $ man shred
2. wipe – 安全地擦除Linux下的檔案
Linux的wipe命令,可安全地刪除磁記憶體中的檔案,後續無法恢復已刪除檔案或目錄的內容。
首先,你需要安裝wipe工具才能使用它,執行下面命令:$ sudo apt-get install wipe [在Debian及其衍生版上]
- $ sudo yum install wipe [在基於RedHat的系統上]
下面這個命令將擦除目錄private下面的一切內容。
- $ wipe -rfi private/*
相關標誌的用法如下:
- -r – 告訴wipe遞回查詢子目錄
- -f – 啟用強行刪除,並禁用確認查詢
- -i – 顯示刪除過程的進度
wipe – 安全地刪除Linux下的檔案
注意:wipe只能適用於磁記憶體,對於固態磁碟要使用其他方法。
仔細閱讀wipe的參考手冊頁,了解更多的使用選項和使用說明:
- $ man wipe
3. 面向Linux的secure-deletetion工具包
secure-delete是一套安全檔案刪除工具,包含SRM(secure_deletion)工具,它是用來安全地刪除檔案。
首先,你要安裝它,為此使用下面這個相關命令:$ sudo apt-get install secure-delete [在Debian及其衍生版上]
- $ sudo yum install secure-delete [在基於RedHat的系統上]
一旦安裝完畢,你可以使用srm工具,在Linux系統上安全地刪除檔案或目錄,如下所示。
- $ srm -vz private/*
使用的選項如下:
- -v – 啟用詳細資訊模式
- -z – 用0而不是亂數據擦除上一次寫入的內容
srm – 安全刪除Linux下的檔案
仔細閱讀srm的參考手冊頁,了解更多的使用選項和資訊:
- $ man srm
4. sfill –安全免費的磁碟/索引節點空間擦除工具
ffill是secure-deletetion工具包的一部分,它是一種安全免費的磁碟和索引節點空間擦除工具,可以安全地刪除閒置磁碟空間上的檔案。sfill可檢查指定分割區上的閒置空間,並用來自/dev/urandom的亂數據來填充。
下面這個命令將在我的根分割區上執行sfill,-v引數選項符啟用詳細資訊模式:
- $ sudo sfill -v /home/aaronkilik/tmp/
假設你建立了一個單獨的分割區,/home用來儲存平常的系統使用者主目錄,那麼你可以在該分割區上指定一個目錄,對它進行sfill操作:
- $ sudo sfill -v /home/username
sfill有幾個局限性,參考手冊頁中有說明,你還能找到另外的使用標誌和操作說明:
- $ man sfill
注意:secure-deletetion工具包中的下面兩個工具(sswap和sdmem)與本文並不直接有關,不過我們會介紹它們,也許將來用得著。
5. sswap – 安全交換分割區擦除工具
這是一個安全分割區擦除工具,sswap刪除的資料駐留在交換分割區上的資料。
警告:記得在使用sswap之前先解除安裝掉你的交換分割區!不然系統可能會崩潰!
只要確定你的交換分割區(並使用swapon命令,核實分頁和交換裝置/檔案是否開啟),下一步,使用swapoff命令,禁用分頁和交換裝置/檔案。
然後,在交換分割區上執行sswap命令:
- $ cat /proc/swaps
- $ swapon
- $ sudo swapoff /dev/sda6
- $ sudo sswap /dev/sda6 #這個命令需要一段時間才能完成,預設情況下執行38趟
sswap – 安全交換分割區擦除工具
確保仔細閱讀sswap的參考手冊頁,了解更多的使用選項和資訊:
- $ man sswap
6. sdmem – 安全記憶體擦除工具
sdmem是安全記憶體擦除工具,它旨在安全地刪除駐留在記憶體中的資料。
它原先名叫smem,但是在Debain系統上,有另一個程式包名叫smem(報告每個進程和每個使用者的記憶體使用情況),於是開發人員將它改名為sdmem。
- $ sudo sdmem -f -v
想了解更多的使用資訊,請仔細閱讀sdmem的參考手冊頁:
- $ man sdmem
就是這樣!我們在本文中介紹了多款永久安全地刪除Linux下檔案的命令工具。歡迎留言交流。
原文標題:rmanently and Securely Delete ‘Files and Directories’ in Linux,作者:Aaron Kili
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-01/139599.htm
相關文章