我将要出售旧台式机,即使使用数据恢复软件重新格式化硬盘后,购买者仍可以使用我的一些敏感信息,我对此持谨慎态度。
如何安全擦拭硬盘驱动器,以使其上的数据无法恢复?
尽管我特别希望获得Windows PC的帮助,但是如果对Mac也有建议的话,也不会受到损害。
我将要出售旧台式机,即使使用数据恢复软件重新格式化硬盘后,购买者仍可以使用我的一些敏感信息,我对此持谨慎态度。
如何安全擦拭硬盘驱动器,以使其上的数据无法恢复?
尽管我特别希望获得Windows PC的帮助,但是如果对Mac也有建议的话,也不会受到损害。
Answers:
看看达里克的靴子和核弹。这是一张可启动CD,可让您安全地擦除硬盘驱动器。
Windows7有一个名为的工具cipher.exe
,可以擦拭磁盘:
http://www.ghacks.net/2010/06/21/wipe-yopur-drives-securely-with-a-hidden-windows-7-tool/
该命令很简单
cipher /w:x:\folder
您可以在其中替换
x:\folder
要擦除的位置,例如D:\
驱动器或C:\Users\Mike Halsey\Music folder
。
cipher
,该工具本身不会删除任何内容。您必须先删除所有数据,然后cipher
再用零和一覆盖所有可用空间。
好吧,使用诸如DBAN之类的工具被认为是毫无意义的,而且非常耗时。
一般来说,你不会需要做什么,但充满驱动为0x00(零个字节/ NUL)只有一次,这些天,为了可靠地防止原数据的恢复。
进行多次传递是多余的,并且几乎没有用,更不用说用随机数据填充驱动器了。进行此类操作后,尝试还原任何内容的唯一方法是使用原子力显微镜-显然,这是一个极端的过程,即使最小的JPG文件和错误率也要花费数月的时间(false -正)将是巨大的(换句话说-您将不会从中得到任何有意义的东西)。对于更高容量的型号(更高密度的盘片),情况更是如此。
但是,人们只能推测NSA手中可能掌握的技术,因此请牢记这一点来判断所提供的信息。
因此,一种最终的软件方式(快速,可靠和安全)是dd的一次运行(零填充):
dd if=/dev/zero of=/dev/sdX bs=1M
或者,如果您想衡量进度:
pv < /dev/zero > /dev/sdX
但是,有一种叫做安全擦除的东西。这是已建立的ATA标准。此功能已集成到驱动器本身中。它不仅比运行dd还要快(因为它已经是基于硬件的,并且硬件>软件,从速度来看),而且由于能够清除已重新分配的原始坏扇区,因此它也更加安全!有2种版本:香草版(从2001年开始)和增强版(从2004年开始)。因此,如果您的驱动器大约是10年前制造的,则很可能已经支持此功能。
hdparm --security-set-pass NULL /dev/sdX
hdparm --security-erase NULL /dev/sdX
hdparm --security-erase-enhanced NULL /dev/sdX
擦除!
dd
评论有疑问,但没有引用参考文献,但是您对DBAN 的评论是不切实际的,并且ATA Secure Erase应该是最受好评的答案。
作为无法完全格式化和擦除磁盘并必须放弃操作系统完好无损的计算机所有权(例如辞职和归还笔记本电脑)的情况的补充说明,Scott Hanselman记下了要进行的活动清单永远放弃。
http://www.hanselman.com/blog/TheDevelopersQuittingYourJobTechnologyChecklist.aspx
不用担心安全删除数据,替代方法可能是购买新的硬盘驱动器,然后在该硬盘上进行全新安装。
然后,您可以将旧硬盘驱动器保留一段时间,以防万一您忘记备份某些东西,最终将其作为新计算机中的第二个(或第三个!)驱动器进行回收。
对于Mac,另一个建议是使用Apple的Disk Utility程序。它包含在OS X安装光盘中,因此,如果从该光盘启动,则可以打开“磁盘工具”,选择驱动器,然后将其擦除(有一些选项可以覆盖数据等次数)。
另外,如果您碰巧拥有许多重要数据,则最简单,最快的方法就是物理破坏介质。与使用随机二进制模式重写1TB磁盘15次相比,大锤的打击要简单得多。
diskpart
可用于将整个磁盘归零
diskpart
select disk 0
。您可以通过运行获取磁盘号list disk
跑 clean all
DISKPART> help clean
Removes any and all partition or volume formatting from the disk with
focus.
Syntax: CLEAN [ALL]
ALL Specifies that each and every byte\sector on the disk is set to
zero, which completely deletes all data contained on the disk.
On master boot record (MBR) disks, only the MBR partitioning information
and hidden sector information are overwritten. On GUID partition table
(GPT) disks, the GPT partitioning information, including the Protective
MBR, is overwritten. If the ALL parameter is not used, the first 1MB
and the last 1MB of the disk are zeroed. This erases any disk formatting
that had been previously applied to the disk. The disk's state after
cleaning the disk is 'UNINITIALIZED'.
format
也可以使用该/P
选件擦除单个驱动器。例如,将D:驱动器格式化为NTFS并用零擦拭两次,您可以使用format D: /fs:ntfs /P:2
C:\> format /?
Formats a disk for use with Windows.
FORMAT volume [/FS:file-system] [/V:label] [/Q] [/L[:state]] [/A:size] [/C] [/I:state] [/X] [/P:passes] [/S:state]
FORMAT volume [/V:label] [/Q] [/F:size] [/P:passes]
FORMAT volume [/V:label] [/Q] [/T:tracks /N:sectors] [/P:passes]
FORMAT volume [/V:label] [/Q] [/P:passes]
FORMAT volume [/Q]
...
/P:count Zero every sector on the volume. After that, the volume
will be overwritten "count" times using a different
random number each time. If "count" is zero, no additional
overwrites are made after zeroing every sector. This switch
is ignored when /Q is specified.
此命令将用二进制0完全填充硬盘驱动器。 运行此命令的次数越多,擦除驱动器的安全性就越高。
sudo dd if=/dev/zero of=/dev/rdisk3 bs=4096
# ^ ^ ^
# Binary data add the r optimal MacBook Pro block size
使用检查磁盘diskutil list
。disk
带的前缀r
。检查您的最佳块大小stat -f "%k" .
对我来说,这需要大约20分钟才能充满250GB的硬盘。在命令完成之前,您将看不到进度。如果要查看进度,可以更新dd brew install coreutils
并使用
sudo gdd if=/dev/zero of=/dev/rdisk3 bs=4096 status=progress
# ^ ^
# note the g
在计算机上安装Python后,我将python filldisk.py
使用以下文件:
import numpy as np
size = 256*1024*1024 # starts with 256 MB files
i = 0
while True:
try:
with open(str(i), 'wb') as f:
f.write(np.random.bytes(size))
i += 1
except:
print('Too big, trying new size: %i' % size)
size /= 2
if size == 0:
print('Finished')
break
它开始根据需要将多达256 MB的文件填充到磁盘中。当没有空间可用于新的256 MB文件时,它将尝试填充128 MB,64 MB,...,32字节,16字节,... 1字节文件。最后,磁盘已装满随机数据二进制文件。
在3行中用n个1 GB AVI电影副本填充磁盘的另一种解决方案:
import shutil
for i in range(10000):
shutil.copy('c:\\movie.avi', 'file%i' % i)
最后,磁盘上的可用空间可能少于1,您可以通过复制/粘贴各种文件(越来越小)来填充它,并且在某个时候您会看到类似“ 0字节的剩余磁盘空间”的信息。 /磁盘已满”。
这两种方法相当粗糙,但是:
我确切地知道它的作用:它写入磁盘的全部内容
它使我无需安装有时是“黑匣子”的第三方工具即可完成操作(不知道它的作用)
它也适用于Windows(其他解决方案dd
不适用于Windows),并且不需要在可启动的USB闪存驱动器(如dban
软件...)上重启。