4 个用来擦除数据的 Linux 工具

2021-10-23
3分钟阅读时长

用这些开源工具从你的硬盘驱动器中擦除数据。

保持数据安全的最好方法之一是只向加密的硬盘驱动器写入数据。在一个标准的硬盘上,只要把硬盘挂载就可以查看数据,就像 U 盘一样,甚至可以用 ScalpelTestdisk 等工具显示和恢复已删除的数据。但是在一个加密的驱动器上,如果没有解密密钥(通常是你在挂载驱动器时输入的密码),数据是无法被读取的。

加密可以在你安装操作系统时建立,有些操作系统甚至可以在安装后的任何时候激活加密功能。

但是,当你卖掉一台电脑或更换一个一开始就没有被加密的驱动器时,你该怎么办呢?

与从一开始就加密你的数据相比,最好的办法是在你用完硬盘后删除数据。

负责任的看管者

我经常被要求帮助客户升级一台旧电脑。无一例外,他们更愿意帮助我回收它们,使它们能被别人使用。我很乐意翻新这些旧电脑,用较新的固态驱动器来改装它们,极大地提高性能。

然而,把一个旧驱动器扔进垃圾桶并不是一个好主意。它需要被擦除,然后被妥善处理。我没有把硬盘留在原来的电脑里,而是把它们取出来,放在一个硬盘盒里,然后把它们连接到我的 Linux 电脑上。有几个 Linux 工具可以很容易地完成这个任务。其中一个是 Gnu Shred

GNU Shred

$ sudo shred -vfz /dev/sdX

Shred 有许多选项:

  • -n - 覆盖的次数。默认是三次。
  • -u - 覆盖并删除。
  • -s - 要粉碎的字节数。
  • -v - 显示扩展信息。
  • -f - 必要时强制改变权限以允许写入。
  • -z - 最后用 0 覆盖来隐藏粉碎。

使用 shred --help 获取更多信息

ShredOS

ShredOS 是一个 即用 Live Linux 发行版,它的唯一目的是清除驱动器的全部内容。它是在一个名为 DBAN 的类似发行版停止维护后开发的。它使用 nwipe 应用,它是 DBAN 的 dwipe 的一个分叉。你可以通过下载 32 位或 64 位镜像,并在 Linux 和 macOS 上使用 dd 命令将其写入驱动器来制作一个可启动的 USB 驱动器:

$ sudo dd if=shredos.img of=/dev/sdX bs=4M status=progress

另外,你可以在 Linux、macOS 和 Windows 上使用 Etcher 工具烧录。

dd 命令

清除驱动器的一个常见方法是使用 Linux 的 dd 命令。几乎所有的 Linux 安装都安装了 dd 工具。确保该驱动器没有被挂载。

$ sudo umount /dev/sdXY -l

如果你想在整个目标磁盘上写零,执行以下命令。这可能需要一个整个通宵。

$ sudo dd if=/dev/urandom of=/dev/sdX bs=10M

警告:请确保你知道你在系统中的位置,并以正确的驱动器为目标,这样你就不会意外地删除自己的数据。

Nvme-cli

如果你的计算机包含一个较新的 NVMe 驱动器,你可以安装 nvme-cli 程序,并使用 sanitize 选项来清除你的驱动器。

nvme sanitize help 命令提供了选项列表:

  • --no-dealloc-d - 净化后不解除分配。
  • --oipbp-i - 每次覆写后反转模式。
  • --owpass=-n - 覆写次数。
  • --ause-u - 允许无限制净化退出。
  • --sanact=-a - 净化动作。
  • --ovrpat=-p - 覆写模式。

下面是我使用的命令:

$ sudo nvme sanitize /dev/nvme0nX

这里的警告与格式化过程相同:首先备份重要的数据,因为这个命令会擦除这些数据!

信息管理

你保存在计算机上的信息是很重要的。它属于你,也属于其他任何人。当你卖掉一台电脑或处理一个硬盘时,确保你已经用这些很棒的工具之一清除了你的数据。


via: https://opensource.com/article/21/10/linux-tools-erase-data

作者:Don Watkins 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出