本页内容
- 先决条件
- 使用 df 命令查看磁盘空间
- 以人类可读格式显示磁盘空间
- 显示文件系统类型
- 使用 du 命令查看磁盘空间占用
- 结论
监控磁盘使用信息是任何系统管理员每天都要执行的任务。Linux 提供了一些易于使用的实用工具,可帮助你在命令行中查看系统的磁盘空间情况。
- df 命令:用于显示 Linux 文件系统所占用的磁盘空间大小。
- du 命令:用于显示文件和目录所占用的磁盘空间大小。
在本教程中,我将向你展示在 Linux 上检查磁盘空间的几种方法。

先决条件
- 一台运行 Ubuntu Linux 操作系统的服务器。
- 服务器上已配置 root 密码。
使用 df 命令查看磁盘空间
你可以不带任何参数直接使用 df 命令,来查看已挂载文件系统的磁盘空间使用情况。
df
你将看到如下输出:
Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 288237920 35699668 237873500 14% / none 4 0 4 0% /sys/fs/cgroup udev 1950372 4 1950368 1% /dev tmpfs 392664 4548 388116 2% /run none 5120 0 5120 0% /run/lock none 1963312 150760 1812552 8% /run/shm none 102400 48 102352 1% /run/user /dev/sda5 187308940 37156240 140614908 21% /Data /dev/loop0 93568 93568 0 100% /snap/core/8592 /dev/loop1 177536 177536 0 100% /snap/skype/112 /dev/loop2 93568 93568 0 100% /snap/core/8689 /dev/loop3 46080 46080 0 100% /snap/gtk-common-themes/1440 /dev/loop4 56064 56064 0 100% /snap/core18/1668 /dev/loop5 177664 177664 0 100% /snap/skype/115 /dev/loop6 164096 164096 0 100% /snap/gnome-3-28-1804/116 /dev/loop7 56832 56832 0 100% /snap/teams-for-linux/79
下面简要说明每一列的含义:
- Filesystem(文件系统):显示文件系统分区的名称。
- 1K-blocks(1K 块数):以 1K 块为单位显示文件系统的大小。
- Used(已用):显示已使用的空间。
- Available(可用):显示可用的剩余空间。
- Use%(使用率):以百分比形式显示已使用空间占比。
- Mounted on(挂载点):显示文件系统所挂载的目录。
以人类可读格式显示磁盘空间
如果你想以人类可读的格式显示磁盘空间使用情况,可以使用带 -h 选项的 df 命令。
df -h
你将得到如下输出:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 275G 35G 227G 14% / none 4.0K 0 4.0K 0% /sys/fs/cgroup udev 1.9G 4.0K 1.9G 1% /dev tmpfs 384M 4.7M 379M 2% /run none 5.0M 0 5.0M 0% /run/lock none 1.9G 160M 1.8G 9% /run/shm none 100M 48K 100M 1% /run/user /dev/sda5 179G 36G 135G 21% /Data /dev/loop0 92M 92M 0 100% /snap/core/8592 /dev/loop1 174M 174M 0 100% /snap/skype/112 /dev/loop2 92M 92M 0 100% /snap/core/8689 /dev/loop3 45M 45M 0 100% /snap/gtk-common-themes/1440 /dev/loop4 55M 55M 0 100% /snap/core18/1668 /dev/loop5 174M 174M 0 100% /snap/skype/115 /dev/loop6 161M 161M 0 100% /snap/gnome-3-28-1804/116 /dev/loop7 56M 56M 0 100% /snap/teams-for-linux/79
显示文件系统类型
你可以配合 -T 选项使用 df 命令,在显示其他信息的同时一并显示文件系统类型。
df -T
你将看到如下输出:
Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda1 ext4 288237920 35700492 237872676 14% / none tmpfs 4 0 4 0% /sys/fs/cgroup udev devtmpfs 1950372 4 1950368 1% /dev tmpfs tmpfs 392664 4976 387688 2% /run none tmpfs 5120 0 5120 0% /run/lock none tmpfs 1963312 223944 1739368 12% /run/shm none tmpfs 102400 48 102352 1% /run/user /dev/sda5 ext4 187308940 37156240 140614908 21% /Data /dev/loop0 squashfs 93568 93568 0 100% /snap/core/8592 /dev/loop1 squashfs 177536 177536 0 100% /snap/skype/112 /dev/loop2 squashfs 93568 93568 0 100% /snap/core/8689 /dev/loop3 squashfs 46080 46080 0 100% /snap/gtk-common-themes/1440 /dev/loop4 squashfs 56064 56064 0 100% /snap/core18/1668 /dev/loop5 squashfs 177664 177664 0 100% /snap/skype/115 /dev/loop6 squashfs 164096 164096 0 100% /snap/gnome-3-28-1804/116 /dev/loop7 squashfs 56832 56832 0 100% /snap/teams-for-linux/79
若要只显示 ext4 分区的信息,可运行以下命令:
df -t ext4
你将看到如下输出:
Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 288237920 35700936 237872232 14% / /dev/sda5 187308940 37156240 140614908 21% /Data
不带任何参数运行 du 命令,会显示当前目录的磁盘空间占用情况:
You can also use the du command to check the disk space usage in a Linux system.
你将看到如下输出:
du
若要以人类可读的格式显示信息,可运行以下命令:
308 ./.anydesk/thumbnails 1256 ./.anydesk 164 ./.gftp 4 ./.xx-svn-diff 4 ./Public 4 ./.local/share/folks 12 ./.local/share/data/Nextcloud 16 ./.local/share/data 4 ./.local/share/gstreamer-1.0/presets 8 ./.local/share/gstreamer-1.0 20 ./.local/share/unity-webapps 8 ./.local/share/vlc 4 ./.local/share/evolution/calendar/trash 8 ./.local/share/evolution/calendar/system 16 ./.local/share/evolution/calendar 4 ./.local/share/evolution/mail/trash 8 ./.local/share/evolution/mail 4 ./.local/share/evolution/memos/trash
你将看到如下输出:
du -h
你可以使用带 -hs 选项的 du 命令,来显示指定目录的总磁盘空间占用情况。
308K ./.anydesk/thumbnails 1.3M ./.anydesk 164K ./.gftp 4.0K ./.xx-svn-diff 4.0K ./Public 4.0K ./.local/share/folks 12K ./.local/share/data/Nextcloud 16K ./.local/share/data 4.0K ./.local/share/gstreamer-1.0/presets 8.0K ./.local/share/gstreamer-1.0 20K ./.local/share/unity-webapps 8.0K ./.local/share/vlc 4.0K ./.local/share/evolution/calendar/trash 8.0K ./.local/share/evolution/calendar/system 16K ./.local/share/evolution/calendar
你将看到如下输出:
du -hs /var/log
你还可以配合 sort 参数使用 du 命令,按大小对文件和目录进行排序,如下所示:
18M /var/log
结论
du -h | sort -rn
You should see the following output:
136K ./master-pdf-editor-4/lang/qt 124K ./master-pdf-editor-5/stamps/Standard 124K ./master-pdf-editor-4/stamps/Standard 80K ./master-pdf-editor-5/templates 80K ./master-pdf-editor-4/templates 77M ./HD-Wallpaper 76K ./master-pdf-editor-5/templates/stamps 76K ./master-pdf-editor-4/templates/stamps 64M ./Mummy 52K ./111 48M ./master-pdf-editor-5 44M ./master-pdf-editor-4 19M ./master-pdf-editor-5/lang 15M ./master-pdf-editor-4/lang 12M ./Webserver
Conclusion
In the above guide, you learned how to check disk space usage with the du and df command. I hope this will help you in your day-to-day tasks.