linux的du和df命令
封面图
•
2025-12-23
•
Linux
196
0
0
0
在 Linux 系统中,`du` 和 `df` 是两个非常常用的命令,用于查看磁盘使用情况。虽然它们都与“磁盘空间”有关,但用途和显示的内容有所不同。 --- ## 一、`df` 命令(Disk Free) ### 功能: 显示文件系统的磁盘空间使用情况,包括已用空间、可用空间、总空间等。 ### 常用语法: ```bash df [选项] [目录或文件系统] ``` ### 常用选项: - `-h`:以易读方式(如 GB、MB)显示大小。 - `-T`:显示文件系统类型。 - `-a`:列出所有文件系统(包括虚拟文件系统)。 - `-i`:显示 inode 使用情况。 ### 示例: ```bash df -h ``` 输出示例: ``` Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 20G 30G 40% / tmpfs 7.8G 0 7.8G 0% /dev ``` --- ## 二、`du` 命令(Disk Usage) ### 功能: 显示指定目录或文件的磁盘使用情况(即占用多少空间)。 ### 常用语法: ```bash du [选项] [目录或文件] ``` ### 常用选项: - `-h`:以易读方式显示大小。 - `-s`:只显示总计(不显示子目录)。 - `-a`:显示每个文件的大小。 - `-c`:显示总计(加上汇总)。 - `-k`:以 KB 显示大小(默认是块,通常为 512B)。 ### 示例: ```bash du -sh /home ``` 输出示例: ``` 1.2G /home ``` ```bash du -h /var/log ``` 输出示例: ``` 4.0K /var/log/messages 16K /var/log/audit ... 1.2G /var/log ``` --- ## 三、`df` 和 `du` 的区别 | 特性 | `df` | `du` | |--------------|----------------------------------|-----------------------------------| | 用途 | 查看整个文件系统的磁盘空间使用情况 | 查看某个目录或文件占用的空间 | | 显示内容 | 总空间、已用、剩余、使用率等 | 某个目录或文件的大小 | | 是否递归 | 否(除非指定) | 是(默认递归显示子目录) | | 显示单位 | 块(通常是 512B) | 可以设置为 KB、MB、GB 等 | | 是否统计文件 | 否 | 是 | --- ## 四、常见用法对比 ### 1. 查看根目录的磁盘使用情况: ```bash df -h / ``` ### 2. 查看 `/home` 目录的磁盘占用: ```bash du -sh /home ``` ### 3. 查看当前目录下各个子目录的大小: ```bash du -h ``` ### 4. 查看 `/var/log` 下各文件的大小: ```bash du -h /var/log ``` --- ## 五、注意事项 - `df` 显示的是文件系统的整体状态,而 `du` 显示的是具体文件或目录的占用情况。 - 如果你发现 `df` 显示磁盘已满,但 `du` 显示的空间并没有那么多,可能是由于 **删除了文件但未释放空间**(比如被进程占用),可以用 `lsof` 或 `find / -name 'deleted'` 来排查。 --- 如果你有具体的使用场景或问题,也可以告诉我,我可以帮你分析。
上一篇:
Linux查看磁盘剩余空间方法
下一篇:
Linux的inode的理解
标题录入,一次不能超过6条
留言
评论