解決Linux磁碟空間滿的「軟」辦法

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

  當初安裝系統時設計不合理,有些分區分的過小,以及網路通訊故障等造成日誌文件迅速增長等其他原因都可能表現為磁碟空間滿,造成無法讀寫磁碟,應用程序無法執行等.下面就給你支幾招(以/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

  找出來以後看是否有用的文件

  沒用就刪掉

  【轉自】http://bbs3.chinaunix.net/viewthread.php?tid=422421





[火星人 ] 解決Linux磁碟空間滿的「軟」辦法已經有592次圍觀

http://coctec.com/docs/linux/show-post-52201.html