歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 徹底消失,Linux下用命令行徹底刪除文件

徹底消失,Linux下用命令行徹底刪除文件

日期:2017/2/28 13:44:36   编辑:Linux教程

在大多數情況下,我們想要刪除電腦文件,Linux下一般會使用刪除鍵或者rm命令、將文件扔到垃圾箱。但是,這些方法並沒把文件從我們的電腦裡徹底刪除,只是把文件隱藏起來,讓用戶看不見而已。

假設某個文件含有機密或秘密的內容,比如安全系統的用戶名和密碼,如果攻擊者擁有必要的專長和技能,就能輕松恢復已刪除的文件,從而訪問那些用戶資料,這種場景造成的後果可想而知。

本文中,我們將介紹多款命令行工具,幫你實現永久安全地刪除Linux下的文件。

1. shred – 覆蓋文件以隱藏內容

shred可覆蓋文件以隱藏內容,另外還可以刪除文件。

  1. $ shred -zvu -n 5 passwords.list

這個命令包括的幾個選項有:

  • -z – 最後一次覆蓋添加0,以隱藏覆蓋操作
  • -v – 能夠顯示操作進度
  • -u – 覆蓋後截斷並刪除文件
  • -n – 指定覆蓋文件內容的次數(默認值是3次)

shred – 覆蓋文件以隱藏內容。

你可以在shred的參考手冊頁找到更多的使用選項和信息:

  1. $ man shred

2. wipe – 安全地擦除Linux下的文件

Linux的wipe命令,可安全地刪除磁存儲器中的文件,後續無法恢復已刪除文件或目錄的內容。

首先,你需要安裝wipe工具才能使用它,運行下面命令:$ sudo apt-get install wipe [在Debian及其衍生版上]

  1. $ sudo yum install wipe [在基於RedHat的系統上]

下面這個命令將擦除目錄private下面的一切內容。

  1. $ wipe -rfi private/*

相關標志的用法如下:

  • -r – 告訴wipe遞歸查詢子目錄
  • -f – 啟用強行刪除,並禁用確認查詢
  • -i – 顯示刪除過程的進度

wipe – 安全地刪除Linux下的文件

注意:wipe只能適用於磁存儲器,對於固態磁盤要使用其他方法。

仔細閱讀wipe的參考手冊頁,了解更多的使用選項和使用說明:

  1. $ man wipe

3. 面向Linux的secure-deletetion工具包

secure-delete是一套安全文件刪除工具,包含SRM(secure_deletion)工具,它是用來安全地刪除文件。

首先,你要安裝它,為此使用下面這個相關命令:$ sudo apt-get install secure-delete [在Debian及其衍生版上]

  1. $ sudo yum install secure-delete [在基於RedHat的系統上]

一旦安裝完畢,你可以使用srm工具,在Linux系統上安全地刪除文件或目錄,如下所示。

  1. $ srm -vz private/*

使用的選項如下:

  • -v – 啟用詳細信息模式
  • -z – 用0而不是隨機數據擦除上一次寫入的內容

srm – 安全刪除Linux下的文件

仔細閱讀srm的參考手冊頁,了解更多的使用選項和信息:

  1. $ man srm

4. sfill –安全免費的磁盤/索引節點空間擦除工具

ffill是secure-deletetion工具包的一部分,它是一種安全免費的磁盤和索引節點空間擦除工具,可以安全地刪除閒置磁盤空間上的文件。sfill可檢查指定分區上的閒置空間,並用來自/dev/urandom的隨機數據來填充。

下面這個命令將在我的根分區上執行sfill,-v參數選項符啟用詳細信息模式:

  1. $ sudo sfill -v /home/aaronkilik/tmp/

假設你創建了一個單獨的分區,/home用來存儲平常的系統用戶主目錄,那麼你可以在該分區上指定一個目錄,對它進行sfill操作:

  1. $ sudo sfill -v /home/username

sfill有幾個局限性,參考手冊頁中有說明,你還能找到另外的使用標志和操作說明:

  1. $ man sfill

注意:secure-deletetion工具包中的下面兩個工具(sswap和sdmem)與本文並不直接有關,不過我們會介紹它們,也許將來用得著。

5. sswap – 安全交換分區擦除工具

這是一個安全分區擦除工具,sswap刪除的數據駐留在交換分區上的數據。

警告:記得在使用sswap之前先卸載掉你的交換分區!不然系統可能會崩潰!

只要確定你的交換分區(並使用swapon命令,核實分頁和交換設備/文件是否開啟),下一步,使用swapoff命令,禁用分頁和交換設備/文件。

然後,在交換分區上運行sswap命令:

  1. $ cat /proc/swaps
  2. $ swapon
  3. $ sudo swapoff /dev/sda6
  4. $ sudo sswap /dev/sda6 #這個命令需要一段時間才能完成,默認情況下執行38趟

sswap – 安全交換分區擦除工具

確保仔細閱讀sswap的參考手冊頁,了解更多的使用選項和信息:

  1. $ man sswap

6. sdmem – 安全內存擦除工具

sdmem是安全內存擦除工具,它旨在安全地刪除駐留在內存中的數據。

它原先名叫smem,但是在Debain系統上,有另一個程序包名叫smem(報告每個進程和每個用戶的內存使用情況),於是開發人員將它改名為sdmem。

  1. $ sudo sdmem -f -v

想了解更多的使用信息,請仔細閱讀sdmem的參考手冊頁:

  1. $ man sdmem

就是這樣!我們在本文中介紹了多款永久安全地刪除Linux下文件的命令工具。歡迎留言交流。

原文標題:rmanently and Securely Delete ‘Files and Directories’ in Linux,作者:Aaron Kili

Copyright © Linux教程網 All Rights Reserved