由於當初安裝系統時設計不合理,有些分區分的過小,以及網絡通訊故障等造成日志文件迅速增長等其他原因都可能表現為磁盤空間滿,造成無法讀寫磁盤,應用程序無法執行等。下面就給你支幾招(以/home空間滿為例):
1. 定期對重要文件系統掃描,並作對比,分析那些文件經常讀寫
#ls –lR /home >;files.txt
#diff filesold.txt files.txt
通過分析預測空間的增長情況,同時可以考慮對不經常讀寫文件進行壓縮,以減少占用空間。
2. 查看空間滿的文件系統的inodes消耗
#df – i /home
如果還有大量inode可用,說明大文件占用空間,否則是可能大量小文件占用空間。
3. 找出占用空間較大的目錄
查看/home 占用的空間
#du –hs /home
查看/home 下占用空間超過1000m
#du |awk '$1>;2000'
4. 找出占用空間較大的文件
#find /home –size +2000k
5. 找出最近修改或創建的文件
先touch一個你想要的時間的文件如下:
# touch -t 08190800 test
#find /home -newer test -print
6. 刪除系統日志等
刪除生成 core,mbox等文件
#find / -name core|xargs rm –rf
刪除日志
#rm -rf /var/log/*
7. 對分區做鏈接
在有空間的分區,對沒有空間分區做鏈接
#ln -s /home /usr/home
8.找出耗費大量的空間的進程
根據不同的應用,找出對應的進程。分析原因。
9.檢查並修復文件系統
#fsck –y /home
10.重起機器
有了以上的十招,應該可以解決大部分問題,但關鍵還是安裝時要規劃好分區。另外發現磁盤滿時,不能急,小心操作,認真分析原因,然後小心應對。需要注意,以上十招不需要順序執行,有的可能一招封喉,有的可能需要數招並用,刪除操作一定要小心。如果還不行,只有采取增加硬盤,重新安裝系統等“硬”辦法了。
還可以:
cd \
du -h --max-depth=1|grep G|sort -n
找到最大的那個目錄後進入該目錄
再運行du -h --max-depth=1|grep G|-n
如果沒有結果可以運行 du -h --max-depth=1|grep M|sort -n
找出來以後看是否有用的文件
沒用就刪掉