釋放Linux磁盤空間的一種方法
1、用df 檢查發現/根目錄可用空間爲0
[root@/]#df -h
2、用du檢查發現 各目錄佔用的空間都很少,有約3G的空間莫名其妙地丟了。
[root@/]# du -m –max-depth=1 |sort -gr
3、用lsof檢 查後才發 現 原因是,有文件被刪除, 而進程還活着, 因而造成還佔用空間的現象
[root@/]# lsof |grep delete
根據lsof列出的進程號,kill這些進程後,空間就釋放出來了。
另外不想重啓在線的服務,可以這樣操作:
root@ip-14-17-108-243:/# lsof |grep delete
java 64975 root 1uREG8, 2 22855206396133602 /tmp/tmpfqQeoi1 (deleted)
# ls /proc/64975/fd/ -lh total 0 lr-x------ 1 root root 64 Nov 19 18:11 0 -> /dev/null lrwx------ 1 root root 64 Nov 19 18:11 1 -> /tmp/tmpfqQeoi1 (deleted)
lrwx------ 1 root root 64 Nov 19 18:11 20 -> socket:[29968498] lrwx------ 1 root root 64 Nov 19 18:11 21 -> socket:[29972951] 然後,用一個空字符去覆蓋。 echo > /proc/64975/fd/1 在查看的話,空間就被釋放了。