df命令查看文件系统整体空间使用情况,du命令统计目录或文件实际占用空间;df基于文件系统元数据快速显示挂载点使用状态,du通过遍历目录计算具体空间消耗;二者差异常因已删除但被进程占用的“幽灵文件”导致数据不一致;使用df -h可快速识别高使用率分区,结合-i可检查inode耗尽问题,而du -sh与--max-depth配合sort命令能精准定位占用空间大的目录或文件。

在Linux系统里检查磁盘使用率,通常会用到
df
du
df
du
要检查Linux中的磁盘使用率,最直接的方式就是运用
df
du
使用df
df
常用选项:
-h
-T
-i
示例:
df -h # 显示所有文件系统的磁盘使用情况,人类可读 df -h /home # 仅显示/home分区的磁盘使用情况 df -hT # 显示文件系统类型和磁盘使用情况
使用du
du
常用选项:
-h
-s
-c
--max-depth=N
示例:
du -sh /var/log # 汇总显示/var/log目录的总大小 du -h --max-depth=1 / # 显示根目录下各一级子目录的大小 du -h /path/to/your/dir # 显示指定目录及其子目录的详细大小
df
du
这是个经常让人困惑的问题,甚至有时候你会发现它们给出的数字完全对不上号。在我看来,理解它们的根本工作方式是关键。
df
/dev/sda1
/var
df
而
du
du
du
它们之间最常见的差异来源,往往是那些“幽灵文件”——也就是已经被删除,但仍然被某个进程打开着的文件。
df
du
df
du
df
df
1. 快速概览: 运行
df -h
tmpfs
devtmpfs
df -h
输出会类似这样:
文件系统 容量 已用 可用 已用% 挂载点 udev 3.9G 0 3.9G 0% /dev tmpfs 798M 1.6M 797M 1% /run /dev/sda1 40G 35G 2.5G 94% / tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock /dev/sda2 100G 50G 50G 50% /home tmpfs 798M 12K 798M 1% /run/user/1000
这里,
/dev/sda1
2. 关注特定分区: 如果我知道某个服务的数据都放在
/var
df -h /var
df -h /var
3. 检查inode使用情况: 有时候,磁盘空间明明还有很多,但你却无法创建新文件。这很可能是因为inode(索引节点)用完了。Inode是文件系统用来存储文件元数据(如文件大小、权限、所有者、时间戳等)的数据结构。每个文件或目录都需要一个inode。在处理大量小文件(比如邮件服务器、Web缓存)时,inode耗尽是个常见问题。
df -hi # 检查所有文件系统的inode使用情况
如果看到某个分区的
IUse%
Use%
4. 过滤不关心的文件系统: 对于日常监控,我通常不关心
tmpfs
devtmpfs
udev
-x
df -hT -x tmpfs -x devtmpfs -x udev
这样输出会更干净,只显示你真正关心的物理磁盘挂载点。
du
当
df
du
1. 快速定位当前目录总大小: 进入一个你怀疑有问题的大目录,比如
/var/log
cd /var/log du -sh .
.
-s
-h
2. 找出子目录中的“胖子”: 如果
/var/log
--max-depth
sort
du -h --max-depth=1 /var/log | sort -rh
-h
--max-depth=1
sort -rh
apache2
nginx
mysql
3. 查找整个文件系统中的大文件(需要谨慎): 如果你想全局查找,但又不想遍历
/proc
/sys
--exclude
du -h --exclude=/proc --exclude=/sys --exclude=/dev --max-depth=1 / | sort -rh
这会显示根目录下所有一级子目录的大小,并排除掉那些不实际占用磁盘空间或不应被遍历的目录。
4. 结合find
.log
find / -name "*.log" -type f -size +1G -print0 | xargs -0 du -h
find
-print0
xargs -0
du -h
5. 找出某个目录下的前N个大文件: 这在清理日志或缓存时非常实用。
du -a /path/to/dir | sort -n -r | head -n 10
-a
sort -n -r
head -n 10
du -ah /path/to/dir | sort -rh | head -n 10
需要注意的是,
du
df
du
以上就是如何在Linux中检查磁盘使用率 Linux df与du命令对比的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号