linux 刪除檔案後,如何釋放磁碟空間
阿新 • • 發佈:2019-01-06
硬碟大小 : 20G
問題 : 磁碟空間不足
處理過程 :
1. 執行”df -hl”命令,磁碟空間使用已滿,結果如下
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 19G 31M 100% /
tmpfs 938M 0 938M 0% /dev/shm
2.發現一個14G的nohup.out檔案,使用 rm -rf命令刪除發現一個14G的nohup.out檔案,使用 rm -rf命令刪除
3.在根目錄”/”下,
執行 “du -sh”命令,結果為 5.2G,
執行”df -hl”命令,結果仍是使用100%。
解決辦法
解決過程: 執行方法: lsof | grep nohup.out
sh 6148 leo 1w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
sh 6148 leo 2w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
java 6149 leo 1w REG 202 ,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
java 6149 leo 2w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
殺死程序6148,6149
sudo kill -9 6148
sudo kill -9 6149
然後執行”df -hl”檢視磁碟空間,磁碟空間已釋放,結果如下
Filesystem Size Used Avail Use% Mounted on
/dev /xvda1 20G 5.2G 14G 28% /
tmpfs 938M 0 938M 0% /dev/shm
附:
lsof 命令
lsof(list open files)是一個列出當前系統開啟檔案的工具。在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以訪問常規資料,還可以訪問網路連線和硬體。所以如傳輸控制協議 (TCP) 和使用者資料報協議 (UDP) 套接字等,系統在後臺都為該應用程式分配了一個檔案描述符,無論這個檔案的本質如何,該檔案描述符為應用程式與基礎作業系統之間的互動提供了通用介面。因為應用程式開啟檔案的描述符列表提供了大量關於這個應用程式本身的資訊,因此通過lsof工具能夠檢視這個列表對系統監測以及排錯將是很有幫助的。
[[email protected] ~]# lsof |head -5
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 253,1 4096 2 /
systemd 1 root rtd DIR 253,1 4096 2 /
systemd 1 root txt REG 253,1 1478168 519674 /usr/lib/systemd/systemd
systemd 1 root mem REG 253,1 20032 516898 /usr/lib64/libuuid.so.1.3.0
生產環境下 kill程序這種操作 慎用