在CentOS系统中查询已删除但仍占用磁盘空间的文件
在CentOS系统中查询已删除但仍占用磁盘空间的文件
- 在CentOS系统中查询已删除但仍占用磁盘空间的文件
- 1. 检查磁盘整体使用情况
- 2. 查找被删除但仍被进程占用的文件
- 3. 释放磁盘空间
- 4. 替代方案(不终止进程)
- 注意事项
- 补充工具
在CentOS系统中查询已删除但仍占用磁盘空间的文件
在CentOS系统中查询已删除但仍占用磁盘空间的文件,可通过以下步骤操作:
1. 检查磁盘整体使用情况
使用df -h
命令查看磁盘占用率,确认是否存在空间不足问题。
2. 查找被删除但仍被进程占用的文件
通过lsof
命令结合grep
过滤已删除文件:
lsof | grep deleted
或更精确地指定目录:
lsof -n /指定路径/ | grep deleted
此操作会列出文件路径及占用进程的PID。
3. 释放磁盘空间
根据上一步获取的PID,终止相关进程:
kill -9 PID
或批量终止所有占用已删除文件的进程:
lsof -n /指定路径/ | grep deleted | awk '{print $2}' | xargs kill -9
终止后系统会自动回收空间。
4. 替代方案(不终止进程)
若需保留进程,可通过清空文件内容释放空间:
echo "" > /proc/PID/fd/文件描述符
或使用truncate
命令。
注意事项
- 风险提示:强制终止进程可能导致服务异常,生产环境中需谨慎操作。
- 恢复误删文件:若需恢复已删除文件,可使用
extundelete
或testdisk
工具,但需停止写入操作以提高成功率。
补充工具
- 使用
du -sh * | sort -hr
排序查看目录占用空间。 - 定期清理日志文件(如
/var/log/
)可预防空间不足问题。