linux查看文件大小信息,df -h和du -sh查询命令查询结果不一样

本文介绍Linux下df-h和du-sh等命令的使用方法,包括检查磁盘使用情况、文件大小统计及删除操作。同时解析了df-h与du-sh显示磁盘大小不一致的原因,并提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

df -h查看系统中文件的使用情况

Size 分割区总容量
Used 已使用的大小
Avail 剩下的大小
Use% 使用的百分比
Mounted on 路径地址

FreeBSD下,当硬盘容量已满时,您可能会看到已使用的百分比超过 100%,因为 FreeBSD 会留一些空间给 root,让 root 在档案系统满时,还是可以写东西到该档案系统中,以进行管理。

du -sh *查看当前目录下各个文件及目录占用空间大小

大小 文件名
4.0K test.txt

  • du -h --max-depth=1 /root/* 查看目录下的说有文件大小
  • du -h --max-depth=1 /root 列出root目录下面所有的一级目录文件大小;
rm删除命令
  • rm -f * 切换到要删除的目录,删除目录下的所有文件
  • rm -rf log/* 删除logs文件夹下的所有文件,而不删除文件夹本身
df -hdu -sh显示的磁盘大小不一致原因及解决办法

df -hT显示132G空间全部占用,du -sh显示只占用30G

问题原因

使用rm命令删除文件时,只有当该文件不存在任何link才会被删除
当有进程访问这个文件时,这个文件的实际占用空间就不会释放
du是根据文件名进行的空间统计,使用rm时该文件对系统来说已经不可见,所以不会统计这个文件。
df则是磁盘实际占用的数量

解决方法

使用lsof|grep delete命令查看正在使用的已删除的文件,发现存在多个这样的文件,kill掉进程,文件删除成功

`df -h` `du -sh` 都是用来查看磁盘使用情况的命令,但它们的作用对象工作原理有所同。下面详细介绍两者的区别: ### `df -h` - **功能**:显示文件系统的整体磁盘空间使用情况。 - **作用范围**:针对的是整个文件系统(如 `/`, `/home`, `/var` 等挂载点)。它可以告诉你每个分区或挂载点上有多少总容量、已经用了多少、还剩多少可用的空间。 - **参数说明**: - `-h`: Human readable 格式化输出,让数字更易读(例如 KB, MB, GB)。 #### 示例输出 ``` Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 20G 30G 40% / tmpfs 796M 0 796M 0% /run ... ``` 这里可以看到各个挂载点的具体信息。 ### `du -sh` - **功能**:估算文件目录占用的磁盘空间大小。 - **作用范围**:专注于特定路径下的实际内容所占的空间。对于给定的一个文件夹或单个文件,计算其包含的所有子文件夹文件的实际存储消耗。 - **参数说明**: - `-s`: Summary 总结总的磁盘用量,而列出每一个单独项; - `-h`: 类似于 `df` 中的 `-h` 参数,使得输出更具可读性。 #### 示例输出 ``` $ du -sh /path/to/directory/ 8.6G /path/to/directory/ ``` 这表明该目录及其所有子项目总共占据了大约 8.6GB 的磁盘空间。 ### 主要差异 | 特征 | `df -h` | `du -sh` | |----| | 查看的对象 | 整个文件系统 (如根目录 `/`) | 指定路径内的文件目录 | | 测量的内容 | 分区/卷的总体分配 | 具体文件目录的实际数据体积 | | 输出形式 | 包含“已用”、“可用”的百分比等统计信息 | 只提供指定位置的整体占用情况 | 简而言之,如果你想知道某个分区还有多少空闲空间,应该用 `df -h`;如果你想了解某一个具体的目录到底有多大,则更适合用 `du -sh` 来查看--- ### 使用场景示例 - **何时使用 `df -h`?** 当你需要快速掌握服务器上各分区是否有足够的剩余空间可以继续存放新资料时,比如想确认主分区是是快满了而影响应用程序的日志记录或其他操作。 - **何时使用 `du -sh`?** 当你怀疑某个特定的应用程序生成了大量的临时文件导致某些地方异常增大时,你可以进入对应的目录并运行 `du -sh *` 来找出最大的几个文件夹或文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值