使用 Linux 系统时,不仅要以完美的方式简化和处理技术问题,同时还要解开这些问题背后的技术迷团。本文将着重揭示 “rm”命令使用后的一些技术细节。

根据其手册页的描述,rm 是 GNU Coreutils 包的成员,并预装在所有的 Linux 发行版中。

此命令的主要功能是删除 Linux 文件系统中不再使用的文件或目录,一般由具备”sudo”权限的用户或”root”用户执行,特别是在处理存储在根文件系统 “/”下的文件时,更需要具有相应权限。

rm 命令的语法非常简单,如下所示:

# rm [OPTION]... [FILE]...

1] Linux 删除文件的差异

如果在 Linux 的桌面环境删除文件,这些文件会被暂时保存在回收站里,用户可以决定是恢复还是彻底删除文件。

但是使用 rm 命令,就不能在回收站里找到被删除的文件,至于选择恢复还是删除文件也就无从谈起。

例如我们想使用 rm 命令删除一个文件”mork.txt”,删除之后再使用 ls 命令显示该文件时,系统就会提示没有这个文件或目录,步骤如下图所示:

2] 理解 Linux 文件系统

使用 Linux 作为主用操作系统的好处就是它的早够透明,对用户没有任何保留。为了理解上面讨论的执行 rm 命令的含义,我们需要强调一个关于 Linux 文件系统的重要事实。

Linux 文件系统象是一个管家,管理储如存储在计算机上的文件这类数据。文件系统的关键属性就是访问控制和文件命名。

这些属性有助于描述存储的数据或文件,没有它们,Linux 操作系统只会将存储的数据视为 bit 块。我们将无法访问任何元数据,甚至无法知道存储数据的具体位置。

当我们在 Linux 系统创建或存储一个文件时,指向该文件的链接也就回时创建,当我们执行 rm 命令删除该文件时,实际并不是删除实际存储的文件,而是在文件系统中将这个链接删除。

此命令删除对我们文件的位置引用,然后 Linux 操作系统将文件的关联存储块标记为空闲。文件的 inode(索引节点)和数据块被标记为未使用。注意此步骤是不可逆的,因为该文件与系统完全断开链接。

在使用 rm 命令之前,请确保您有文件的备份副本,因为命令执行过程是不可逆的

发表评论

您的电子邮箱地址不会被公开。