用shred碎纸机在linux中安全清除文件/分区
sean 编辑于2023-10-30 18:25树莓派及Linux
shred 顾名思义:撕碎,碎纸机的意思, shred 是 Linux 软件包 coreutils 的一部分, 默认包含在系统中下面是shred的用法:
$ shred --help
用法:shred [选项]... 文件...
多次覆盖指定的 <文件>,使得即使非常昂贵的硬件探测仪器也难以将数据复原。
如果 <文件> 是 "-",则对标准输出进行粉碎操作。
长选项的必选参数对于短选项也是必选的。
-f, --force 必要时修改权限以使目标可写
-n, --iterations=N 覆盖 N 次,而非默认的 3 次
--random-source=文件 从 <文件> 中获得随机字节
-s, --size=N 仅粉碎 N 个字节(可添加后缀,如 K、M 和 G 等)
-u 覆盖后取消分配并删除文件
--remove[=如何] 类似 -u,但可以控制 <如何> 删除;参见下文
-v, --verbose 显示进度
-x, --exact 不将文件大小增加至最接近的块大小;对于非普通文件,此为默认值
-z, --zero 最后使用 0 再覆盖一次,以隐藏粉碎过程
--help 显示此帮助信息并退出
--version 显示版本信息并退出
如果指定了 --remove (-u),则会删除 <文件>。默认的方式是不删除文件,因为
对设备文件(如 /dev/hda)进行粉碎操作是很普遍的,而这些文件通常不应删除。
可选参数 <如何> 用于指定如何删除目录项:
"unlink" => 使用标准的 unlink 调用。
"wipe" => 同上,并且先混淆文件名中的各个字节。
"wipesync" => 同上,并且将已混淆的字节同步 (sync) 到设备。
默认模式是 "wipesync",但请注意该模式可能较为耗时。
小心:shred 假定文件系统和硬件会原地覆盖数据。尽管大多数情况下其行为
的确如此,仍有许多平台有不一样的行为。另外,数据备份和镜像中也可能包
含不可删除的文件副本,从而可以恢复文件内容。请阅读 GNU coreutils 手册
以了解详细信息。
GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告任何翻译错误
完整文档 <https://www.gnu.org/software/coreutils/shred>
或者在本地使用:info '(coreutils) shred invocation'
对文件/分区进行写入随机内容:
$ shred -v abc.txt
shred: abc.txt: 第 1 次,共 3 次 (random)...
shred: abc.txt: 第 2 次,共 3 次 (random)...
shred: abc.txt: 第 3 次,共 3 次 (random)...
通过-z 是对文件/分区最后写0覆盖:
$ shred -v -z abc.txt
shred: abc.txt: 第 1 次,共 4 次 (random)...
shred: abc.txt: 第 2 次,共 4 次 (random)...
shred: abc.txt: 第 3 次,共 4 次 (random)...
shred: abc.txt: 第 4 次,共 4 次 (000000)...
也可以用 --random-source=/dev/urandom 选项可以设置内核的随机数生成器接口。
此外用dd命令也可以通过写入分区特定内容来实现覆盖,bs是写入block的size, 单位是bytes:
# 写入随机数据到分区/dev/sdc
# dd bs=512 if=/dev/urandom of=/dev/sdc status=progress
#写入0到分区/dev/sdc
# dd bs=512 if=/dev/zero of=/dev/sdc status=progress
参考链接:https://linuxiac.com/best-ways-to-securely-erase-disk-in-linux/
关于本站
肥龙软件分享的软件是本站作者开发的免费,无广告,安全可靠,绝不附带任何无关软件,绝不困绑任何插件的实用软件。如果您感觉好用,可以捐赠我们,这样我们可以有更积极的动力去改进升级软件,维持服务器运转,感谢您的捐助,谢谢!
致谢 赞赏/捐助名单
更新时间:2024.8.31
联系作者(邮箱)
软件