删除文件或者重新格式化磁盘并不会破坏敏感数据,即使被删除这些数据也可以恢复。彻底删除某些无用数据是好事,但是如果删除的是财务数据、银行帐号密码或者分类公司信息而无法彻底删除就很危险,本文将介绍一些能够在Linux Ubuntu操作系统中安全删除文件的工具。
Shred
虽然shred命令有一些限制,但是shred命令可以很有效地彻底删除文件,使文件很难或者无法恢复。Shred是这样进行彻底删除的:通过使用数据模式对文件进行反复重写以实现最大程度的摧毁,这样即使使用高灵敏度的数据恢复设备也很难恢复数据了。
使用rm命令删除文件实际上并没有毁坏数据,它只是毁坏列有文件位置的索引,使文件的数据块还可以重复使用。因此,使用rm命令删除的文件可以很容易使用特殊设备或者命令进行恢复,前提条件是文件释放的数据库还没有被重复利用。然而,如果在完全是硬盘驱动(HDD)的动态系统,释放的空间只能在几分钟或者几秒钟内进行恢复。
Shred 语句
shred [option(s)] file(s)_or_devices(s)
可用选项
-f, –force – 更改权限允许写入(如有必要)
-n, –iterations=N – 重写N次而不是默认的(25)次
-s, –size=N – 将文件粉碎为很多字节(可使用后缀如K、M、C等)
-u, –remove – 重写后截短和移除文件
-v, –verbose – 显示进程
-x, –exact - do not round file sizes up to the next full block
-z, –zero - add a final overwrite with zeros to hide shredding
-shred 标准输出
–help – 显示帮助并退出
–version – 输出版本信息并退出
Shred示例
1)下列命令能够用于安全删除三个文件夹:file1、file2和file3:
shred file1 file2 file3
2) 下列命令将删除第一个HDD的第七个分区上的数据:
shred /dev/hda7
3)可以利用下列命令来擦除你在第一个盘的软盘中创建的文件系统路径,该命令需要花费20分钟来擦除“1.44MB”(实际为1440KiB)的软盘:
shred –verbose /dev/fd0
4) 要想删除硬盘上所选分区的数据,可以使用下列命令:
shred –verbose /dev/sda5
在Ubuntu的Nautilus菜单中添加shred
首先在终端使用下列命令安装nautilus-actions数据包:
sudo aptitude install nautilus-actions
现在打开Nautilus Actions Configuration:System->Preference->Nautilus Actions Configuration
打开后你会看到类似下图的窗口,点击添加。
现在输入以下信息:
Label: Shred
Tooltip: shred utility to securely erase files
Icon: gtk-dialog-warning
Path: shred
Parameters: -f -u -v -z %M
点击Conditions条目,勾选“Appears if selection contains”上面的“Only files”( 也可以选择文件和文件夹),勾选“Appears if selection has multiple files or folders”,单击确定。
添加后你将看到如下窗口,点击关闭。
打开终端,运行下列程序对nautilus进行更新:
nautilus -q
nautilus
这样将打开nautilus窗口,现在右击单击任何文件,就能在菜单中看到shred命令选项。
wipe
wipe是一种小命令,能够安全删除磁性媒介上的文件,该命令能够在各种unix平台进行汇编,包括Linux 2.*、(Open+Net+Free)BSD、 aix 4.1、 SunOS 5.5.1以及Solaris 2.6等。从磁性媒介上恢复已经被擦除的数据要比人们想象的容易得多,一种称为“Magnetic Force Microscopy (MFM)”的技术能够恢复写入磁盘的最后2层或者3层的数据。而wipe命令能够向已删除的文件反复写入特殊图案,使用fsync() call和/或 O_SYNC bit强迫磁盘访问。
在Ubuntu中安装wipe
sudo aptitude install wipe
wipe语句
wipe [options] path1 path2 … pathn
Wipe示例
擦除/home/berke/plaintext/下的每个文件和每个目录(option -r),常规文件将使用34次passes擦除,它们的大小也将骤减几倍。而特殊文件(字符和块设备、FIFO等)则不会这样。所有目录条目(文件、特殊文件和目录)将被重新命名10次,然后用unlink操作符删除文件。不被允许的操作将进行chmod()处理(option -c).这些都不需要用户确认(option -f):
wipe -rcf /home/berke/plaintext/
假设/dev/hda3是与主要IDE界面的主盘第三区相对应的,则将在快速模式(option -q)下被擦除,例如,使用四种任意passes。Inode不会被重新命名或者unlink,在开始前,系统将要求输入“确认”:
Shred
虽然shred命令有一些限制,但是shred命令可以很有效地彻底删除文件,使文件很难或者无法恢复。Shred是这样进行彻底删除的:通过使用数据模式对文件进行反复重写以实现最大程度的摧毁,这样即使使用高灵敏度的数据恢复设备也很难恢复数据了。
使用rm命令删除文件实际上并没有毁坏数据,它只是毁坏列有文件位置的索引,使文件的数据块还可以重复使用。因此,使用rm命令删除的文件可以很容易使用特殊设备或者命令进行恢复,前提条件是文件释放的数据库还没有被重复利用。然而,如果在完全是硬盘驱动(HDD)的动态系统,释放的空间只能在几分钟或者几秒钟内进行恢复。
Shred 语句
shred [option(s)] file(s)_or_devices(s)
可用选项
-f, –force – 更改权限允许写入(如有必要)
-n, –iterations=N – 重写N次而不是默认的(25)次
-s, –size=N – 将文件粉碎为很多字节(可使用后缀如K、M、C等)
-u, –remove – 重写后截短和移除文件
-v, –verbose – 显示进程
-x, –exact - do not round file sizes up to the next full block
-z, –zero - add a final overwrite with zeros to hide shredding
-shred 标准输出
–help – 显示帮助并退出
–version – 输出版本信息并退出
Shred示例
1)下列命令能够用于安全删除三个文件夹:file1、file2和file3:
shred file1 file2 file3
2) 下列命令将删除第一个HDD的第七个分区上的数据:
shred /dev/hda7
3)可以利用下列命令来擦除你在第一个盘的软盘中创建的文件系统路径,该命令需要花费20分钟来擦除“1.44MB”(实际为1440KiB)的软盘:
shred –verbose /dev/fd0
4) 要想删除硬盘上所选分区的数据,可以使用下列命令:
shred –verbose /dev/sda5
在Ubuntu的Nautilus菜单中添加shred
首先在终端使用下列命令安装nautilus-actions数据包:
sudo aptitude install nautilus-actions
现在打开Nautilus Actions Configuration:System->Preference->Nautilus Actions Configuration
打开后你会看到类似下图的窗口,点击添加。
现在输入以下信息:
Label: Shred
Tooltip: shred utility to securely erase files
Icon: gtk-dialog-warning
Path: shred
Parameters: -f -u -v -z %M
点击Conditions条目,勾选“Appears if selection contains”上面的“Only files”( 也可以选择文件和文件夹),勾选“Appears if selection has multiple files or folders”,单击确定。
添加后你将看到如下窗口,点击关闭。
打开终端,运行下列程序对nautilus进行更新:
nautilus -q
nautilus
这样将打开nautilus窗口,现在右击单击任何文件,就能在菜单中看到shred命令选项。
wipe
wipe是一种小命令,能够安全删除磁性媒介上的文件,该命令能够在各种unix平台进行汇编,包括Linux 2.*、(Open+Net+Free)BSD、 aix 4.1、 SunOS 5.5.1以及Solaris 2.6等。从磁性媒介上恢复已经被擦除的数据要比人们想象的容易得多,一种称为“Magnetic Force Microscopy (MFM)”的技术能够恢复写入磁盘的最后2层或者3层的数据。而wipe命令能够向已删除的文件反复写入特殊图案,使用fsync() call和/或 O_SYNC bit强迫磁盘访问。
在Ubuntu中安装wipe
sudo aptitude install wipe
wipe语句
wipe [options] path1 path2 … pathn
Wipe示例
擦除/home/berke/plaintext/下的每个文件和每个目录(option -r),常规文件将使用34次passes擦除,它们的大小也将骤减几倍。而特殊文件(字符和块设备、FIFO等)则不会这样。所有目录条目(文件、特殊文件和目录)将被重新命名10次,然后用unlink操作符删除文件。不被允许的操作将进行chmod()处理(option -c).这些都不需要用户确认(option -f):
wipe -rcf /home/berke/plaintext/
假设/dev/hda3是与主要IDE界面的主盘第三区相对应的,则将在快速模式(option -q)下被擦除,例如,使用四种任意passes。Inode不会被重新命名或者unlink,在开始前,系统将要求输入“确认”: