在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/
)可預防空間不足問題。