我计划出售一个USB外置硬盘,其中目前包含一份带有存储密码和银行信息的旧Ubuntu安装。
在出售之前,我应该如何安全地擦除该硬盘?
我计划出售一个USB外置硬盘,其中目前包含一份带有存储密码和银行信息的旧Ubuntu安装。
在出售之前,我应该如何安全地擦除该硬盘?
有一款命令行实用程序叫做shred
,它可以使用随机位覆盖文件或整个设备中的数据,几乎不可能恢复。
首先,您需要确定设备的名称。
可能会像/dev/sdb
或/dev/hdb
这样(但不是像/dev/sdb1
,那是一个分区)。您可以使用sudo fdisk -l
列出所有连接的存储设备,并在其中找到外部硬盘。
注意:确保选择正确的设备,选择错误的设备将导致其数据被清除。
如果该设备上有任何已挂载的分区,请卸载它们。
然后运行以下命令,将/dev/sdX
替换为您设备的名称:
sudo shred -v /dev/sdX
这将使用随机数据三次覆盖设备上的所有块,-v
标志用于详细模式,并打印当前进度。
您可以添加选项-n
N
,仅执行N次以节省大容量设备的时间。这可能需要一些时间,取决于您外部硬盘的大小(我认为我的4GB闪存驱动器需要大约20分钟左右)。
您还可以通过添加选项-z
在最后一次迭代后将所有位设置为零,我更喜欢这样做。
sudo shred -v -n1 -z /dev/sdX
sudo apt-get install gparted
gksu gparted
shred
会用随机数据三次覆盖设备上的所有数据" - 它对空白空间有任何作用吗?顺便说一下,Ubuntu在manpages.ubuntu.com上有自己的手册存储库。 - papukaijahdparm
工具执行安全擦除,让驱动器自己擦除数据。该方法试图擦除整个驱动器,包括坏扇区。此外,它比常规覆盖方式更快速。对于固态硬盘驱动器,这也是推荐的方法,而使用“shred”则是极不明智的选择。 - Maarten Bodewesshred /dev/sdc4
似乎可以工作。 - AmanicAshred
命令不会使数据 绝对 不可恢复吗? - Fiksdalgparted
,因为它是关于安全擦除,而不是准备后续使用。我认为操作系统安装程序不需要你进行这样的准备。 - H2ONaCl使用dd
工具将其归零:
系统 > 管理 > 磁盘实用程序
启动磁盘实用程序/dev/sdX
)sudo dd if=/dev/zero of=/dev/sdX bs=1M
这将使用零覆盖整个磁盘,并且比生成千兆字节的随机数据要快得多。与所有其他工具一样,这不会处理由于某种原因(写入错误,保留等)映射出的块,但是您的买家几乎不可能拥有工具和知识来从这些块中恢复任何内容。
PS:在Bruce Schneier的粉丝们对我进行投票之前:我想要证明,即使使用零覆盖,也可以从非古老的旋转硬盘中恢复数据。不要考虑发表其他评论! :P
bs=1M
参数?我可以阅读手册,而且我理解您只是将缓冲区限制在1兆字节;为什么这样做是有益的呢? - gaazkamcat </dev/zero >/dev/sdX
就足够了。 - Alois Mahdaldd ... status=progress
或者类似的工具iotop
时,我也能看到这一点。从理论上讲,硬件支持的最大负载写入大小可能会导致最少的写入操作次数。 - user8675309/dev/zero
是有原因的:像BTRFS或ZFS这样具有透明压缩功能的文件系统会将许多0
进行压缩,只有极少数的0
会写入磁盘。这在某种程度上有违初衷。 :-) - Thorsten Schöningdd
到 /dev/sdX
会绕过驱动器上的任何文件系统。没有 btrfs 或 zfs 在其中压缩数据或重复块。当然,不应指定较高级别的块设备,而应将 sdX
占位符替换为最接近硬件的最低级别块设备描述符。该评论不适用于此回答。 - cfibadblocks -w
进行破坏性读写测试。它有两个主要优点:
-w
执行4次破坏性写入测试。
用法示例(如果您的磁盘是使用写入模式测试。使用此选项,badblocks通过在设备的每个块上写入一些模式(0xaa、0x55、0xff、0x00),读取每个块并比较内容来扫描坏块。
sdd
):sudo badblocks -wsv /dev/sdd
sv
)-t
选项,并执行一次零填充的单次操作,如下所示:sudo badblocks -wsv -t 0x00 /dev/sdd
sudo hdparm -I /dev/sdX | grep -i security
(用sda/sdb/sdc替换sdX,根据您的磁盘)。
如果您看不到输出,请使用dd:
sudo dd if=/dev/zero of=/dev/sdX bs=1M
sudo hdparm -I /dev/sdX | grep -i frozen
未冻结
,将密码设置为“Eins”:sudo hdparm --user-master u --security-set-pass Eins /dev/sdX
可选:您可能想知道需要多长时间:
sudo hdparm -I /dev/sdX | awk '/for SECURITY ERASE UNIT/'
sudo hdparm --user-master u --security-erase Eins /dev/sdX
然后等待。对于一个1TB的磁盘,这可能需要3个小时或更长时间。
有一个不错的脚本可以自动化这些步骤。
--security-erase-enhanced
呢? - goulashsoupgnome-disks
)工具已经添加了ATA Secure Erase功能。您可以使用它来擦除硬盘。同样的选项也可以通过命令行工具hdparm
来实现,详细说明请参考this answer。
警告!
请查看免责声明和警告说明https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase(感谢@colan提出此问题)
还请参考下方的评论。某些硬件可能会损坏。
ATA增强安全擦除
(如果为所选驱动器提供)。或者您可以选择写零(慢速)
,这被认为是相对安全的。
格式化
dd if=/dev/zero of=/dev/hdX
dd if=/dev/random of=/dev/hdX
dd if=/dev/urandom of=/dev/hdX
供参考:
请参阅以下链接:
注意:
你可以使用wipe。
安装
sudo apt-get install wipe
shred -vfz -n ? (drive)