Linux 提供了所有必要的工具来帮助你确切地发现你的驱动器上剩余多少空间。Jack 在这里展示了如何做。
快速提问:你的驱动器剩余多少剩余空间?一点点还是很多?接下来的提问是:你知道如何找出这些剩余空间吗?如果你碰巧使用的是 GUI 桌面( 例如 GNOME、KDE、Mate、Pantheon 等 ),则任务可能非常简单。但是,当你要在一个没有 GUI 桌面的服务器上查询剩余空间,你该如何去做呢?你是否要为这个任务安装相应的软件工具?答案是绝对不是。在 Linux 中,具备查找驱动器上的剩余磁盘空间的所有工具。事实上,有两个非常容易使用的工具。
在本文中,我将演示这些工具。我将使用 Elementary OS(LCTT译注:Elementary OS 是基于 Ubuntu 精心打磨美化的桌面 Linux 发行版 ),它还包括一个 GUI 方式,但我们将限制自己仅使用命令行。好消息是这些命令行工具随时可用于每个 Linux 发行版。在我的测试系统中,连接了许多的驱动器(内部的和外部的)。使用的命令与连接驱动器的位置无关,仅仅与驱动器是否已经挂载好并且对操作系统可见有关。
言归正传,让我们来试试这些工具。
1.命令格式: du [选项][文件] 2.命令功能: 显示每个文件和目录的磁盘使用空间。mode这个开关可以有6个选项copy(磁盘到磁盘的拷贝)、load (从备份 文件恢复到磁盘)、dump (从磁盘备份到文件)、pcopy(分区到分区的 拷贝)、pload(从备份文件恢复到分区)、pdump(从分区备份到文件)。 使用sar进行综合分析 表1 sar参数说明 选项 功能 -a 汇总所有的报告 -a 报告文件读写使用情况 -b 报告附加的缓存的使用情况 -b 报告缓存的使用情况 -c 报告系统调用的使用情况 -d 报告磁盘的使用情况 -g 报告串口的使用情况 -h 报告关于buffer使用的统计数据 -m 报告ipc消息队列和信号量的使用情况 -n 报告命名cache的使用情况 -p 报告调页活动的使用情况 -q 报告运行队列和交换队列的平均长度 -r 报告进程的活动情况 -r 报告没有使用的内存页面和硬盘块 -u 报告cpu的利用率 -v 报告进程、i节点、文件和锁表状态 -w 报告系统交换活动状况 -y 报告tty设备活动状况 sar是system activity reporter(系统活动情况报告)的缩写。
图 1:Elementary OS 系统上 df -H 命令的输出结果
如果你的驱动器列表非常长并且你只想查看单个驱动器上使用的空间,该怎么办?对于 df 这没问题。我们来看一下位于 /dev/sda1 的主驱动器已经使用了多少空间。为此,执行如下命令:
df -H /dev/sda1
输出将限于该驱动器(图 2)。
图 2:一个单独驱动器空间情况
你还可以限制 df 命令结果报告中显示指定的字段。可用的字段包括:
让我们显示所有驱动器的输出,仅显示 size ,used ,avail 字段。对此的命令是:
df -H --output=size,used,avail
该命令的输出非常简单( 图 3 )。
图 3:显示我们驱动器的指定输出
这里唯一需要注意的是我们不知道该输出的来源,因此linux命令,我们要把 source 加入命令中:
df -H --output=source,size,used,avail
现在输出的信息更加全面有意义(图 4)。
图 4:我们现在知道了磁盘使用情况的来源
我们的下一个命令是 du 。 正如您所料,这代表磁盘使用情况disk usage。 du 命令与 df 命令完全不同,因为它报告目录而不是驱动器的空间使用情况。 因此,您需要知道要检查的目录的名称。 假设我的计算机上有一个包含虚拟机文件的目录。 那个目录是 /media/jack/HALEY/VIRTUALBOX 。 如果我想知道该特定目录使用了多少空间,我将运行如下命令: