7.2. 文件系统使用情况

许多报告都在谈论存储变得多么便宜,但如果你和我们大多数人一样,它仍然不够便宜。我们大多数人的空间有限,需要能够监控和控制它的使用方式。

7.2.1. df 命令

`df` 是查看磁盘使用情况的最简单工具。只需输入 `df`,您将看到所有已挂载文件系统的磁盘使用情况,以 1K 块为单位显示

user@server:~> df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda3              5242904    759692   4483212  15% /
tmpfs                   127876         8    127868   1% /dev/shm
/dev/hda1               127351     33047     87729  28% /boot
/dev/hda9             10485816     33508  10452308   1% /home
/dev/hda8              5242904    932468   4310436  18% /srv
/dev/hda7              3145816     32964   3112852   2% /tmp
/dev/hda5              5160416    474336   4423928  10% /usr
/dev/hda6              3145816    412132   2733684  14% /var

您还可以使用 `-h` 以“人类可读”格式查看输出。这将以 K、兆字节或千兆字节为单位,具体取决于文件系统的大小。或者,您也可以使用 `-B` 来指定块大小。

除了空间使用情况外,您还可以使用 `-i` 选项来查看已用和可用 inode 的数量。

user@server:~> df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/hda3                  0       0       0    -  /
tmpfs                  31969       5   31964    1% /dev/shm
/dev/hda1              32912      47   32865    1% /boot
/dev/hda9                  0       0       0    -  /home
/dev/hda8                  0       0       0    -  /srv
/dev/hda7                  0       0       0    -  /tmp
/dev/hda5             656640   26651  629989    5% /usr
/dev/hda6                  0       0       0    -  /var

7.2.2. du 命令

现在您知道文件系统上已使用了多少空间,如何找出数据在哪里呢?要查看目录或文件的使用情况,您可以使用 `du` 命令。除非您指定文件名,否则 `du` 将以递归方式运行。例如

user@server:~> du file.txt
1300    file.txt
或者像 `df` 命令一样,我可以使用 `-h` 并获得相同的“人类可读”格式的输出。
user@server:~> du -h file.txt
1.3M     file.txt

除非您指定文件名,否则 `du` 将以递归方式运行。

user@server:~> du -h /usr/local
4.0K    /usr/local/games
16K     /usr/local/include/nessus/net
180K    /usr/local/include/nessus
208K    /usr/local/include
62M     /usr/local/lib/nessus/plugins/.desc
97M     /usr/local/lib/nessus/plugins
164K    /usr/local/lib/nessus/plugins_factory
97M     /usr/local/lib/nessus
12K     /usr/local/lib/pkgconfig
2.7M    /usr/local/lib/ladspa
104M    /usr/local/lib
112K    /usr/local/man/man1
4.0K    /usr/local/man/man2
4.0K    /usr/local/man/man3
4.0K    /usr/local/man/man4
16K     /usr/local/man/man5
4.0K    /usr/local/man/man

如果您只想获得该目录的摘要,可以使用 `-s` 选项。

user@server:~> du -hs /usr/local
210M    /usr/local

7.2.3. 配额

有关配额的更多信息,您可以阅读《Quota HOWTO》