df查看磁盘使用率和du各目录大小对不上问题的解决

本文介绍了一种解决Linux系统中磁盘占用率过高的方法,通过查找并清理僵尸文件,释放被占用的空间,最终使磁盘使用率恢复正常。

df -h 发现磁盘占用率很高,40G几乎完全使用

du -ah --max-depth=1 / 发现各目录大小加起来不足10G,差的30G不知去向

lsof -n /|grep delete 发现有一堆僵尸文件

找到一些大的文件的进程号kill,比如kill -9 2838

更安全的做法是

cd /proc/2838/fd

ll|grep zabbix_agentd.log

看到1和2两个文件是deleted,清空两个文件

echo ''>1

echo ''>2

再次df -h磁盘使用率基本正常

系统日志的删除,磁盘占用问题貌似通过service rsyslog restart就可以解决。

### 查看特定目录下的磁盘使用率Linux 系统中,`du` 命令是用于估算文件目录磁盘使用情况的工具。通过该命令,用户可以详细了解某个特定目录下的磁盘占用情况[^3]。 #### 使用 `du` 命令查看特定目录的磁盘使用情况 以下是一些常用的 `du` 命令示例: 1. **查看特定目录的总大小** 使用 `-s` 参数可以汇总整个目录大小,而 `-h` 参数则以人类可读的格式显示结果。 ```bash du -sh /path/to/directory ``` 例如,若要查看 `/var/log` 目录的总大小,可以运行: ```bash du -sh /var/log ``` 2. **查看特定目录下各子目录大小** 使用 `--max-depth=1` 参数限制输出为一级子目录大小。 ```bash du -h --max-depth=1 /path/to/directory ``` 示例: ```bash du -h --max-depth=1 /var ``` 3. **查找特定目录占用空间最大的文件或目录** 结合 `sort` `head` 命令,可以列出占用空间最大的几个文件或目录。 ```bash du -h --max-depth=1 /path/to/directory | sort -hr | head -n 10 ``` 示例: ```bash du -h --max-depth=1 /var | sort -hr | head -n 10 ``` 4. **查找特定类型文件的磁盘使用情况** 使用 `find` 命令结合 `du` 命令,可以统计特定类型文件的磁盘占用。 ```bash find /path/to/directory -name "*.log" -type f -exec du -ch {} \; | grep total$ ``` 示例: ```bash find /var/log -name "*.log" -type f -exec du -ch {} \; | grep total$ ``` 5. **交互式分析磁盘使用情况** 如果系统安装了 `ncdu` 工具,可以使用它以交互方式分析磁盘使用情况。 ```bash ncdu /path/to/directory ``` 这个工具提供了更直观的界面,便于导航分析磁盘占用情况[^3]。 #### 注意事项 - 在执行 `du` 命令时,可能需要超级用户权限(`sudo`)来访问某些受保护的目录。 - 对于大型目录,`du` 命令可能会花费较长时间来计算磁盘使用情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰风漫天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值