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

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掉进程,文件删除成功

你可能感兴趣的:(linux)