Linux 彻底且安全地删除文件

博客地址:https://www.cnblogs.com/zylyehuo/

以下两个指令的作用都是彻底且安全地删除文件(也就是“粉碎”数据),防止被数据恢复软件找回。它们的核心都使用了 shred 命令来覆盖文件原本占用的磁盘空间。

1. find src -type f -exec shred -v -n 3 -z -u {} \;

这个命令的作用是:src 文件夹中找出所有的普通文件,并将它们逐一彻底粉碎并删除。

  • find src:在名为 src 的目录中进行搜索。
  • -type f:限制搜索结果,只查找“普通文件”(不包括目录、设备文件或快捷方式,因为 shred 只能处理文件)。
  • -exec ... {} \;:对找到的每一个文件执行后面的指令。其中 {} 会被替换为当前找到的文件路径。
  • shred:执行安全删除操作的主程序。
    • -v (--verbose):显示详细的操作过程,你可以看到哪些文件正在被处理。
    • -n 3 (--iterations=3):用随机数据将文件内容覆盖 3 次(3 也是 shred 的默认次数)。
    • -z (--zero):在最后一次覆盖时,用“全零(0x00)”进行覆盖。这可以掩盖文件曾被粉碎过的痕迹,让该区域看起来像是正常的空闲磁盘空间。
    • -u (--remove):在所有的覆盖操作完成后,截断并删除该文件。如果不加这个参数,shred 只会把文件内容打乱,但文件依然会保留在目录中。

2. shred -v -n 3 -z -u src.zip

这个命令的作用是:使用完全相同的安全级别,彻底粉碎并删除 src.zip 这个压缩包文件。

它的参数含义与第一条指令中的完全一致:

  • src.zip 覆盖 3 次随机数据(-n 3)。
  • 最后用 0 覆盖一次(-z)。
  • 显示执行过程(-v)。
  • 粉碎后将文件从系统中彻底删除(-u)。
posted @ 2026-06-26 23:12  zylyehuo  阅读(33)  评论(0)    收藏  举报