如何使用命令行和 GUI 工具永久删除 Linux 中的文件

了解如何使用命令行和 GUI 在 Linux 系统中永久删除文件

对于任何设备上任何操作系统的用户来说,删除文件是一项非常普遍的任务。无论您是想删除 PC 上未使用的文件,还是想通过删除服务器上较旧的日志文件来释放空间,了解文件删除的各种选项都很方便。

在涉及数据隐私和围绕它的各种合法性时,安全删除文件也是一项重要措施。许多新的文件系统使用了诸如日志等新技术,其中删除不会“删除”数据,而是在日志中为已删除的文件创建一个“已删除”条目,并将其空间标记为可用。一个简单的 R M 命令根本不保证“删除”的内容无法恢复。

从 rm 手册页:

如果您使用 rm 删除文件,则在有足够的专业知识和/或时间的情况下,有可能恢复其中的某些内容。

因此,了解 Linux 中的工具至关重要,这些工具至少在一定程度上保证数据被删除并且无法通过恢复工具或任何其他数据恢复方法恢复。

在 Linux 上永久删除文件的命令行工具

使用 R M 命令

R M 是在 GNU/Linux 系统中删除文件的标准程序。它是 GNU Coreutils 的一部分,几乎所有 Linux 发行版中都预装了它。

要使用 rm 删除文件, 你可以运行:

rm 文件 1 文件 2 /home/用户/文件 3

这不适用于目录。 要删除整个目录, 连同下面的层次结构,您可以运行:

rm -r dir1 /home/user/dir2 file3

使用删除的数据 R M 直到新数据写入被删除数据占用的磁盘空间后才能恢复。因此, R M 如果要删除的数据不包含任何敏感信息,则是一个不错的选择。

使用 撕碎 命令

shred 命令使用随机数据多次覆盖文件以及删除文件的选项。这使得即使使用昂贵的硬件也极不可能恢复数据。

粉碎文件内容(用随机数据覆盖), 运行以下命令:

粉碎文件名

请注意,默认情况下,它会覆盖随机数据 3 次。 要以不同的迭代次数覆盖, 运行以下命令:

shred -n 10 文件名

这将覆盖数据 10 次。注意以上不会删除文件,只会覆盖数据。

使用 撕碎 删除和覆盖文件的内容, 使用以下命令:

shred -n 10 --remove 文件名

使用 shred 的一个缺点是没有“递归 shred”选项。

使用 资源管理器 命令

该程序 资源管理器 是基于 Debian 和 Red Hat 的发行版中 secure-delete 软件包的一部分。它使用类似的方法 撕碎 用于安全删除文件。但是,这两种工具用于覆盖文件的算法是不同的。

安装 资源管理器 在 Ubuntu 和类似的发行版上, 运行以下命令:

sudo apt 安装安全删除

笔记: 对于较旧的 Ubuntu 版本(版本 14.04 及以下),您需要使用 apt-get 应该使用而不是 易于.

安装 资源管理器 在基于 Red Hat 的发行版上, 运行以下命令:

yum 安装安全删除

使用递归删除文件和文件夹 资源管理器, 运行以下命令:

srm -r 文件夹名/

在 Linux 上完全删除文件的 GUI 工具

使用鹦鹉螺

Nautilus 是大多数 Linux 发行版的默认文件浏览器。您可以按照以下说明永久删除 Nautilus 中的文件。

首先,打开 Nautilus 并转到要从中删除文件的文件夹。

选择文件/文件夹并按组合键 Shift + 删除.

在确认对话框中,单击 删除 永久删除文件或文件夹。

如果您更喜欢使用鼠标而不是键盘, 然后你可以添加 删除 上下文菜单中的选项,以便您可以右键单击文件/文件夹并选择删除。默认情况下,上下文菜单的唯一选项是“移至垃圾箱”。

要在右键菜单中启用永久删除选项, 请执行下列操作:

  • 编辑 » 偏好 在文件浏览器中。
  • 然后选择 行为 标签。
  • 选中该框 包括绕过垃圾箱的删除命令.

这将添加一个 删除 Ubuntu 和其他 Linux 发行版上 Nautilus 中上下文菜单的选项。

使用 Nautilus 脚本(用于从 GUI 运行任何程序)

Nautilus 可以选择添加手动脚本以在选定文件上执行。我们可以利用这个来运行 撕碎 或者 资源管理器 来自 GUI 的命令。

让我们创建一个脚本来运行 资源管理器 递归地。 打开终端,并通过运行以下命令转到 Nautilus 脚本文件夹位置:

cd ~/.local/share/nautilus/scripts/

使用以下命令创建一个空白脚本文件:

vim ~/.local/share/nautilus/scripts/Secure_Delete

将以下行添加到我们在上述步骤中创建的脚本文件中。

#!/bin/bash srm -r $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS

这里 $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS 是一个变量,包含用户在 Nautilus 中选择的所有文件和文件夹的路径。

保存文件 首先按下 退出 键,然后键入 :wq 保存文件并退出 vim 控制台。

最后,通过使用以下命令授予执行权限使脚本可执行。

chmod +x Secure_Delete

设置脚本文件后,返回 Nautilus GUI 并右键单击文件或文件夹。你应该看到脚本 安全_删除 在下面 脚本 上下文菜单中的选项。

单击脚本名称(即 安全_删除 在这种情况下)在右键单击之前永久删除您选择的文件。

以类似的方式,您可以添加脚本 撕碎 或任何其他工具并从 GUI 执行它。

有更多的 GUI 工具可用,例如 Nautilus-wipe 和 Bleachbit,它们也使用类似的算法 撕碎资源管理器.两者都可以从标准的 Ubuntu 存储库安装。

请注意,即使使用这些方法后,仍然有很小的机会可以使用软件(磁盘恢复)或硬件方法(硬盘驱动器冻结)恢复数据。因此,在永久删除极其敏感的数据的情况下,将硬盘驱动器加热到 1500 摄氏度的方法可确保没有任何工具可以从磁盘中恢复任何数据。