Linux提供了所有必要的工具来帮助您准确地发现驱动器上还剩下多少空间。杰克在这里展示了如何做。快速提问:您的驱动器上还剩多少可用空间?一点点还是很多?下一个问题是:你知道如何找出这些剩余空间吗?如果您碰巧使用GUI桌面(例如GNOME、KDE、Mate、Pantheon等),任务会非常简单。但是如何在没有GUI桌面的服务器上查询可用空间呢?您要为此任务安装合适的软件工具吗?答案是绝对不会。在Linux中,有所有工具可以查找驱动器上的剩余磁盘空间。事实上,有两个非常易于使用的工具。在本文中,我演示了这些工具。我将使用ElementaryOS(LCTT译注:ElementaryOS是一个基于Ubuntu的经过精心打磨和美化的桌面Linux发行版),它还包括GUI模式,但我们将仅限于使用命令行。好消息是这些命令行工具可用于每个Linux发行版。在我的测试系统中,连接了许多驱动器(内部和外部)。使用的命令与驱动器的连接位置无关,仅与驱动器是否已安装并且对操作系统可见有关。事不宜迟,让我们试用这些工具。dfdf命令是我在Linux上查询驱动器空间的第一个工具,可以追溯到1990年代。使用和报告结果非常简单。时至今日,df是我执行此任务的首选命令。此命令有多个选项开关,对于基本报告,您实际上只需要一个选项。命令是df-H。-H选项开关用于以人类可读的格式显示df报告的结果。df-H的输出包括:已用空间量、可用空间、已用空间百分比以及每个磁盘附加到系统的安装点(图1)。图1:在ElementaryOS系统上df-H命令的输出如果您有很长的驱动器列表并且只想查看单个驱动器上使用的空间怎么办?对于df这很好。让我们看看位于/dev/sda1的主驱动器使用了多少空间。为此,请执行以下命令:df-H/dev/sda1输出将限于该驱动器(图2)。图2:单个驱动器空间情况您还可以限制df命令结果报告中指定字段的显示。可用字段有:source——文件系统的来源(LCTT译注:通常是一个设备,如/dev/sda1)size——使用的块总数——驱动器的已用空间avail——剩余可使用空间pcent—驱动器的已用空间占总驱动器空间目标的百分比—驱动器的安装点让我们显示所有驱动器的输出,只有size、used、available字段。此命令是:df-H--output=size,used,avail此命令的输出非常简单(图3)。图3:显示我们驱动器的指定输出这里唯一需要注意的是我们不知道这个输出的来源,所以我们需要在命令中添加源:df-H--output=source,size,used,availnow输出的信息更加全面和有意义(图4)。图4:我们现在知道磁盘使用情况来自du我们的下一个命令是du。如您所料,这代表磁盘使用情况。du命令与df命令的不同之处在于它报告目录而不是驱动器的空间使用情况。因此,您需要知道要检查的目录的名称。假设我的计算机上有一个包含虚拟机文件的目录。该目录是/media/jack/HALEY/VIRTUALBOX。如果我想知道那个特定目录使用了多少空间,我会运行这样的命令:du-h/media/jack/HALEY/VIRTUALBOX上面命令的输出将显示目录中每个文件占用的空间目录(图5)。图5在特定目录上运行du命令的输出到目前为止,这个命令并不是那么有用。如果我们想知道特定目录的总使用情况怎么办?幸运的是,du可以处理这个任务。对于同一目录,命令为:du-sh/media/jack/HALEY/VIRTUALBOX/现在我们知道上述目录使用的存储空间总和(图6)。图6:我的虚拟机文件使用的存储空间总和为559GB你也可以使用这个命令查看父目录所有子目录使用了多少空间,如下:du-h/media/jack/HALEY的此命令的输出参见(图7),是查看每个子目录占用多少驱动器空间的好方法。图7:按子目录划分的存储空间使用情况du命令也是查看系统中使用最多磁盘空间的目录列表的好工具。这样做的方法是将du命令的输出通过管道传递给另外两个命令:sort和head。以下命令用于查找驱动器上占用存储空间的前10个目录***:du-a/media/jack|排序-n-r|head-n10输出将按照从大到小的顺序列出这些目录(图8)。图8:使用最多驱动器空间的10个目录它并不像您想象的那么难查看安装在Linux系统上的驱动器的空间使用情况非常简单。只要将驱动器安装在Linux系统上,使用df命令或du命令就可以很好地报告必要的信息。使用df命令可以快速查看磁盘上的总空间使用情况,使用du命令可以查看特定目录的空间使用情况。对于每一个Linux系统管理员来说,这两个命令的组合是必须要掌握的。而且,如果您没有注意到,我最近介绍了如何在Linux上检查内存使用情况。总而言之,这些技巧将对成功管理您的Linux服务器大有帮助。
