四個用來擦除數(shù)據(jù)的 Linux 工具
用這些開源工具從你的硬盤驅(qū)動器中擦除數(shù)據(jù)。
保持數(shù)據(jù)安全的最好方法之一是只向加密的硬盤驅(qū)動器寫入數(shù)據(jù)。在一個標準的硬盤上,只要把硬盤掛載就可以查看數(shù)據(jù),就像 U 盤一樣,甚至可以用 Scalpel 和 Testdisk 等工具顯示和恢復已刪除的數(shù)據(jù)。但是在一個加密的驅(qū)動器上,如果沒有解密密鑰(通常是你在掛載驅(qū)動器時輸入的密碼),數(shù)據(jù)是無法被讀取的。
加密可以在你安裝操作系統(tǒng)時建立,有些操作系統(tǒng)甚至可以在安裝后的任何時候激活加密功能。
但是,當你賣掉一臺電腦或更換一個一開始就沒有被加密的驅(qū)動器時,你該怎么辦呢?
與從一開始就加密你的數(shù)據(jù)相比,最好的辦法是在你用完硬盤后刪除數(shù)據(jù)。
負責任的看管者
我經(jīng)常被要求幫助客戶升級一臺舊電腦。無一例外,他們更愿意幫助我回收它們,使它們能被別人使用。我很樂意翻新這些舊電腦,用較新的固態(tài)驅(qū)動器來改裝它們,極大地提高性能。
然而,把一個舊驅(qū)動器扔進垃圾桶并不是一個好主意。它需要被擦除,然后被妥善處理。我沒有把硬盤留在原來的電腦里,而是把它們?nèi)〕鰜?,放在一個硬盤盒里,然后把它們連接到我的 Linux 電腦上。有幾個 Linux 工具可以很容易地完成這個任務。其中一個是 Gnu Shred。
GNU Shred
$ sudo shred -vfz /dev/sdX
Shred 有許多選項:
-n
- 覆蓋的次數(shù)。默認是三次。-u
- 覆蓋并刪除。-s
- 要粉碎的字節(jié)數(shù)。-v
- 顯示擴展信息。-f
- 必要時強制改變權(quán)限以允許寫入。-z
- 最后用 0 覆蓋來隱藏粉碎。
使用 shred --help
獲取更多信息
ShredOS
ShredOS 是一個即用 Linux 發(fā)行版,它的唯一目的是清除驅(qū)動器的全部內(nèi)容。它是在一個名為 DBAN 的類似發(fā)行版停止維護后開發(fā)的。它使用 nwipe
應用,它是 DBAN 的 dwipe
的一個分叉。你可以通過下載 32 位或 64 位鏡像,并在 Linux 和 macOS 上使用 dd
命令將其寫入驅(qū)動器來制作一個可啟動的 USB 驅(qū)動器:
$ sudo dd if=shredos.img of=/dev/sdX bs=4M status=progress
另外,你可以在 Linux、macOS 和 Windows 上使用 Etcher 工具燒錄。
dd 命令
清除驅(qū)動器的一個常見方法是使用 Linux 的 dd
命令。幾乎所有的 Linux 安裝都安裝了 dd
工具。確保該驅(qū)動器沒有被掛載。
$ sudo umount /dev/sdXY -l
如果你想在整個目標磁盤上寫零,執(zhí)行以下命令。這可能需要一個整個通宵。
$ sudo dd if=/dev/urandom of=/dev/sdX bs=10M
警告:請確保你知道你在系統(tǒng)中的位置,并以正確的驅(qū)動器為目標,這樣你就不會意外地刪除自己的數(shù)據(jù)。
Nvme-cli
如果你的計算機包含一個較新的 NVMe 驅(qū)動器,你可以安裝 nvme-cli 程序,并使用 sanitize
選項來清除你的驅(qū)動器。
nvme sanitize help
命令提供了選項列表:
--no-dealloc
、-d
- 凈化后不解除分配。--oipbp
、-i
- 每次覆寫后反轉(zhuǎn)模式。--owpass=
、-n
- 覆寫次數(shù)。--ause
、-u
- 允許無限制凈化退出。--sanact=
、-a
- 凈化動作。--ovrpat=
、-p
- 覆寫模式。
下面是我使用的命令:
$ sudo nvme sanitize /dev/nvme0nX
這里的警告與格式化過程相同:首先備份重要的數(shù)據(jù),因為這個命令會擦除這些數(shù)據(jù)!
信息管理
你保存在計算機上的信息是很重要的。它屬于你,也屬于其他任何人。當你賣掉一臺電腦或處理一個硬盤時,確保你已經(jīng)用這些很棒的工具之一清除了你的數(shù)據(jù)。