如何粉碎文件夹?

Ash*_*shu 22 command-line files shredding

我想要一个命令来完全粉碎文件夹/目录(可能在文件夹/目录内)的内容。还请解释命令。

Vea*_*zer 32

  1. 安装软件包secure-delete
  2. 使用该命令srm -r pathname删除您的文件夹和文件。

默认设置是 38 (!!!) 次覆盖,恕我直言,这是极端矫枉过正的(在此处查看有关此的更多信息)。

对于我的使用,我只需要一次随机数据,所以我使用srm -rfll pathname.

如果要在 GUI 中为文件和文件夹创建右键单击选项,请使用 gnome-actions 调用如下脚本:

#!/bin/bash
if dialog=`zenity --window-icon=warning --question --title="Secure Delete" --no-wrap --text="Are you sure you want to securely delete:\n\n     $1\n\nand any other files and folders selected? File data will be overwritten and cannot be recovered."` 
then /usr/bin/srm -fllrv "$@"| zenity --progress --pulsate --text="File deletion in progress..." --title="Secure Delete" --auto-close
fi 
Run Code Online (Sandbox Code Playgroud)

如果你想要更多的偏执设置,一定要修改上面的脚本。

  • 好的,整个默认过程是:1 次使用 0xff(零擦除),使用 /dev/urandom 的 5 次随机传递用于安全 RNG(如果可用),27 次传递具有由 Peter Gutmann 定义的特殊值,另外 5 次随机传递来自/开发/随机。然后将文件重命名为随机值并截断文件。IIRC,/dev/random 被认为是更好的随机数生成系统。使用 -fll 我们跳过 1+5+27+5 次传递并用单次随机数据替换,可能来自不太“真正随机”的生成器。 (2认同)

小智 10

对于文件而不是目录,这里有一个更简单的方法而不是-exec shred -u {} \;类型的方法:

cd to your directory.
Run Code Online (Sandbox Code Playgroud)

然后

find . -type f -print0 | xargs -0 shred -fuzv -n 48
Run Code Online (Sandbox Code Playgroud)

这会递归地传递 48 次到您cd进入的当前目录。

希望这对一些人有所帮助。