df 命令报告系统的磁盘空间用量。如果你在 shell 提示下键入了 df 命令,它的输出与下面相似:
Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda2 10325716 2902060 6899140 30% / /dev/hda1 15554 8656 6095 59% /boot /dev/hda3 20722644 2664256 17005732 14% /home none 256796 0 256796 0% /dev/shm |
按照默认设置,该工具把分区大小显示为 1KB 的块,已用的和可用的磁盘空间以 KB 为单位显示。要查看以 MB 和 GB 为单位的信息,使用 df -h 命令。-h 选项代表人可读格式。它的输出类似于:
Filesystem Size Used Avail Use% Mounted on /dev/hda2 9.8G 2.8G 6.5G 30% / /dev/hda1 15M 8.5M 5.9M 59% /boot /dev/hda3 20G 2.6G 16G 14% /home none 251M 0 250M 0% /dev/shm |
在分区列表中,有一项是 /dev/shm。该项目代表系统的虚拟内存文件系统。
du 命令显示被目录中的文件使用的估计空间数量。如果你在 shell 提示下键入了 du 命令,每个子目录的用量都会在列表中显示,当前目录和子目录的总和也会在列表的最后一行中被显示。如果你不想查看每个子目录的用量,使用 du -hs 命令来使用人可读的格式只列出目录用量总和。使用 du --help 命令来查看更多选项。
要查看图形化的系统分区和磁盘空间用量,使用「系统监视器」标签,如图 26-2的底部所示。
窍门 | |
---|---|
关于实现磁盘配额的信息,请参阅第6章 。 |
Red Hat Linux 提供了一个叫做 diskcheck 的工具程序,它监视系统上的空闲磁盘空间数量。根据配置文件的规定,当一个或多个磁盘驱动器上的用量达到指定程度时,它会向系统管理员发送电子邮件。要使用该工具,你必须安装了 diskcheck RPM 软件包。
该工具作为每小时 cron [1]任务运行。
以下变量可以在 /etc/diskcheck.conf 文件中被定义:
defaultCutoff — 当磁盘驱动器的用量达到这个百分比,它就会被报告。譬如,如果 defaultCutoff = 90 被指定,磁盘驱动器的用量达到 90%, 电子邮件就会被寄出。
cutoff[/dev/partition] — 超越分区的 defaultCutoff。例如,如果 cutoff['/dev/hda3'] = 50 被指定,当 /dev/hda3 分区的用量达到 50%,diskcheck 就会警告系统管理员。
cutoff[/mountpoint] — 超越挂载点的 defaultCutoff。譬如,如果 cutoff['/home'] = 50 被指定,当 /home 挂载点的用量达到 50%,diskcheck 就会警告系统管理员。
exclude — 指定 diskcheck 要忽略的一个或多个分区。譬如,如果 exclude = "/dev/sda2 /dev/sda4" 被指定,在 /dev/sda2 或 /dev/sda4 的用量达到指定的切断百分比的情况下,diskcheck 将不会警告系统管理员。
ignore — 指定要忽略的一个或多个文件系统,格式为 -x filesystem-type。譬如,如果 ignore = "-x nfs -x iso9660" 被指定了,在 nfs 或 iso9660 文件系统的用量达到限制时,系统管理员将不会被警告。
mailTo — 当分区或挂载点达到限制时,要向系统管理员发出警告的电子邮件地址。譬如,如果 mailTo = "webmaster@example.com" 被指定了,警告就会被邮寄给 webmaster@example.com。
mailFrom — 指定电子邮件寄发者的身份。这有助于系统管理员过滤来自 diskcheck 的邮件。譬如,如果 mailFrom = "Disk Usage Monitor" 被指定了,发送给系统管理员的电子邮件的寄发者就是“磁盘用量监控器”。
mailProg — 指定发送电子邮件警告要使用的邮寄程序。譬如,如果 mailProg = "/usr/sbin/sendmail" 被指定了,Sendmail 就会被用作邮寄程序。
如果你改变了配置文件,你不必重新启动服务,因为每次 cron 任务运行的时候都会重读该配置文件。你必须运行 crond 服务才能执行 cron 任务。要判定该守护进程是否在运行,使用 /sbin/service crond status 命令。推荐你在引导时启动该服务。关于在引导时自动启动 cron 服务的详细信息,请参阅第14章 。
[1] | 关于 cron 的详情请参阅 第28章 。 |