如果想把Linux系统中的文件彻底删除,使用rm命令并不是有效的,技术人员可以轻松恢复这些文件,因此,我们往往要借助一些方法才能完全将数据从磁盘中抹去。

方案一 使用shred覆盖文件
使用shred命令覆盖文件以达到删除数据的效果,当然也可以直接选择删除。
0x01 安装及说明
|
1 |
yum -y install coreutils |
参数说明
| 参数 | 说明 |
| -f, --force | 允许修改权限进行强制写操作 |
| -n, --iterations=N | 指定覆盖文件内容的次数(默认为3) |
| --random-source=FILE | 从指定文件获取随机数据 |
| -s, --size=N | 按字节长度切碎(K/M/G单位) |
| -u, --remove | 覆盖后截断和删除文件 |
| -v, --verbose | 显示操作进度 |
| -x, --exact | 不将文件大小四舍五入到下一个完整块,非常规文件的默认设置 |
| -z, --zero | 添加一个带有零的最终覆盖以隐藏切碎 |
0x02 使用示例
|
1 |
shred -zvu -n 5 users.lst |
方案二 通过wipe擦除文件
通过wipe命令将文件从磁存储器中安全擦除,无法恢复。
1x01 安装及说明
|
1 |
yum -y install wipe |
参数说明
| 参数 | 说明 |
| -r | 同时整个目录 |
| -f | 强制删除且无需确认 |
| -i | 显示删除详情 |
1x02 使用示例
|
1 |
wipe -rfi private/* |
方案三 通过secure-delete安全删除
Secure-delete是一个安全文件删除工具的集合,其中包含srm (secure_deletion) 工具,用于安全删除文件,原理是在删除文件前重写文件内容。
2x01 安装及说明
|
1 |
yum -y install secure-delete |
参数说明
| 参数 | 说明 |
| -C, --rcmp | 使用加拿大皇家骑警通行证覆盖 |
| -D, --dod | 使用符合美国国防部标准的7重覆盖 |
| -d, --directory | 忽略“.”和“..”目录,与rm兼容 |
| -E, --doe | 使用符合美国能源部标准的3重覆盖 |
| -f, --force | 强制删除 |
| -G, --gutmann | 使用35重古特曼法覆盖 |
| -i, --interactive | 在删除前提示 |
| -P, --openbsd | 像OpenBSD中的rm一样使用三次覆盖 |
| -r, -R, --recursive | 删除整个目录 |
| -s, --simple | 使用0x00单次覆盖(默认) |
| -v, --verbose | 显示删除详情 |
| -x, --one-file-system | 不跨越文件系统 |
| -z | 用零而不是随机数据擦除最后一次写入 |
2x02 使用示例
|
1 |
srm -vz private/* |
2x03 套件中的其他命令
| 命令 | 说明 |
| sfill | Secure Free Space Wiper,清除保存设备可用空间所残留的使用痕迹 |
| sdmem | Secure Memory Wiper,清除内存(RAM)中残留的使用痕迹 |
| sswap | Secure Swap Wiper,清除置换空间(SWAP)中残留的使用痕迹 |
原创文章禁止转载:技术学堂 » Linux彻底删除数据的常见方法

技术学堂
















