No space left on device 解決Linux系統磁盤空間滿的辦法

因爲當初安裝系統時設計不合理,有些分區分的太小,以及網絡通信故障等形成日誌文件迅速增加等其餘緣由均可能表現爲磁盤空間滿,形成沒法讀寫磁盤,應用程序沒法執行等。node

(以/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
 
  找出來之後看是否有用的文件
 
  沒用就刪掉
相關文章
相關標籤/搜索