5种Linux下安全删除文件的软件工具(最新)
March 22, 2018
本文主要讲述Linux系统下5种不同的安全删除文件工具的用法介绍。 通常情况下,我们在Linux系统下删除文件的主要方法是通过rm命令或者unlink命令进行删除。 但是正如我们之前介绍过的rm命令删除文件的原理,该命令只是将文件所对应的inode链接删除,但是文件在磁盘存储的数据依然还在,这样就有可能造成数据的泄露。 下面我们会介绍5种Linux系统下永久安全的从磁盘中删除文件数据的工具。
Table of Contents
Shred 删除工具
Shred工具主要是通过多次的覆盖文件的方式来达到安全删除文件的目的。
Shred 工具用法及选项
用法如下:
Shred [选项] 文件名
选项如下:
-f, --force 必要时修改权限以使目标可写 -n, --iterations=N 覆盖N 次,而非使用默认的3 次 --random-source=文件 从指定文件中取出随机字节 -s, --size=N 粉碎数据为指定字节的碎片(可使用K、M 和G 作为单位) -u truncate and remove file after overwriting --remove[=HOW] like -u but give control on HOW to delete; See below -v, --verbose show progress -x, --exact do not round file sizes up to the next full block; this is the default for non-regular files -z, --zero add a final overwrite with zeros to hide shredding --help 显示此帮助信息并退出 --version 显示版本信息并退出
实例:删除当前目录下的文件fio.txt, 执行下面的命令:
# shred -zvu -n 3 fio.txt
命令输出如下:
root@devops:~/osetc# shred -zvu -n 3 fio.txt shred: fio.txt:正在删除 shred: fio.txt:名称已更改为 0000000 shred: 0000000:名称已更改为 000000 shred: 000000:名称已更改为 00000 shred: 00000:名称已更改为 0000 shred: 0000:名称已更改为 000 shred: 000:名称已更改为 00 shred: 00:名称已更改为 0 shred: fio.txt:已删除
Wipe删除工具
接下来要介绍的第二种安全删除文件的工具是wipe, 该工具可以安全的删除指定磁盘上的文件,当文件被删除后,是无法再恢复的。
安装wipe工具
执行下面的命令:
#sudo apt-get install wipe
命令输出如下:
root@devops:~/osetc# apt-get install wipe 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不需要了: java-common libappindicator1 libindicator7 Linux-headers-4.10.0-28 Linux-headers-4.10.0-28-generic Linux-image-4.10.0-28-generic Linux-image-extra-4.10.0-28-generic 使用'apt autoremove'来卸载它(它们)。 下列【新】软件包将被安装: wipe 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 205 个软件包未被升级。 需要下载 41.8 kB 的归档。 解压缩后会消耗 128 kB 的额外空间。 获取:1 http://mirrors.aliyun.com/ubuntu xenial/universe amd64 wipe amd64 0.22-3 [41.8 kB] 已下载 41.8 kB,耗时 0秒 (268 kB/s) 正在选中未选择的软件包 wipe。 (正在读取数据库 ... 系统当前共安装有 290931 个文件和目录。) 正准备解包 .../archives/wipe_0.22-3_amd64.deb ... 正在解包 wipe (0.22-3) ... 正在处理用于 man-db (2.7.5-1) 的触发器 ... 正在设置 wipe (0.22-3) ...
实例,安全删除当前目录下的文件fio.txt, 执行下面的命令:
wipe -rfi fio.txt
命令输出如下:
root@devops:~/osetc# wipe -rfi fio.txt File fio.txt (0 bytes) wiped Operation finished. 1 file wiped and 0 special files ignored in 0 directories, 0 symlinks removed but not followed, 0 errors occured.
Secure-delete删除文件工具
接下来要介绍的是一款名叫secure-delete的安全文件删除工具集合,该集合里包含用来安全删除指定文件的工具叫srm。
安装secure-delete 工具集
执行下面的命令:
#sudo apt-get install secure-delete
命令输出如下:
root@devops:~/osetc# sudo apt-get install secure-delete sudo: 无法解析主机:devops 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不需要了: java-common libappindicator1 libindicator7 Linux-headers-4.10.0-28 Linux-headers-4.10.0-28-generic Linux-image-4.10.0-28-generic Linux-image-extra-4.10.0-28-generic 使用'sudo apt autoremove'来卸载它(它们)。 下列【新】软件包将被安装: secure-delete 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 205 个软件包未被升级。 需要下载 62.7 kB 的归档。 解压缩后会消耗 161 kB 的额外空间。 获取:1 http://mirrors.aliyun.com/ubuntu xenial/universe amd64 secure-delete amd64 3.1-6ubuntu1 [62.7 kB] 已下载 62.7 kB,耗时 0秒 (365 kB/s) 正在选中未选择的软件包 secure-delete。 (正在读取数据库 ... 系统当前共安装有 290943 个文件和目录。) 正准备解包 .../secure-delete_3.1-6ubuntu1_amd64.deb ... 正在解包 secure-delete (3.1-6ubuntu1) ... 正在处理用于 man-db (2.7.5-1) 的触发器 ... 正在设置 secure-delete (3.1-6ubuntu1) ...
如果要删除当前目录下的fio.txt文件,可以执行下面的命令:
#srm –vz fio.txt
命令输出如下:
root@devops:~/osetc# srm -vz fio.txt Using /dev/urandom for random input. Wipe mode is secure (38 special passes) Wiping fio.txt ************************************** Removed file fio.txt ... Done
Sfill 安全删除文件工具
Sfill工具是secure-delete工具集里的一个安全删除文件的另一个工具,该工具主要用来安全的删除磁盘上所有可用空间上的文件。主要针对通过rm命令删除文件的inode链接的那些空间上的文件。该工具会对磁盘进行检查,将找到的可用空间通过/dev/urandom 设备上的随机数据进行填充。
执行命令:
#sfill –v osetc
命令输出如下:
root@devops:~# sfill -v osetc/ Using /dev/urandom for random input. Wipe mode is secure (38 special passes) Wiping now ... Creating osetc/oooooooo.ooo ...
Sdmem 删除内存数据工具
最后我们要介绍一种可以安全的删除RAM 内存储器中的数据的工具名叫sdmem
执行命令如下:
#sdmem –f –v
命令输出如下:
root@devops:~/osetc# sdmem -f -v Starting Wiping the memory, press Control-C to abort earlier. Help: "sdmem -h" Wipe mode is secure (38 special passes)
99%的人还阅读了:
0 Comments