歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

Linux磁盤空間不足之inode

# crontab -e
 編輯好之後保存
 crontab: installing new crontab
 cron/tmp.xxx1222: No space left on device
 crontab: edits left in /tmp/crontab.xxx1222
 報錯是表示磁盤滿了
 
# df -hl
 文件系統              容量  已用 可用 已用% 掛載點
 /dev/sda1              29G  24G  3.4G  88% /
 /dev/sda5              94G  406M  89G  1% /date
 tmpfs                467M    0  467M  0% /dev/shm
 /dev/sda2              19G  2.5G  16G  14% /home
 也還好, 磁盤空間還有很大的剩余, 後來想了一下, 這個不一定是磁盤滿了, 也可能是inode用完了
 
# df -i
 文件系統              Inode (I)已用 (I)可用 (I)已用% 掛載點
 /dev/sda1            7685440  7684646    794  99%    /
 /dev/sda5            25427968  10569 25417399    1% /date
 tmpfs                119383      1  119382    1% /dev/shm
 /dev/sda2            5124480    4244 5120236    1% /home
 
 真的是inode用完了,磁盤沒法再寫入新的內容了,這個是某些臨時的小文件太多了,把inode用完了,把它刪掉就行了。
 最有可能的是那個目錄呢?? 呵呵,想都不用想了
 # find /var/spool/clientmqueue -type f -print -exec rm -f {} \;
 
 這個命令中 /var/spool/clientmqueue 是要刪除的文件所在的目錄 -type f這個參數限定find只查找普通文件(即不是管道文件,不是塊文件,不是鏈接文件,不是目錄等),防止誤刪除系統文件。
 原因分析:系統中有用戶開啟了cron,而cron中執行的程序有輸出內容,輸出內容會以郵件形式發給cron的用戶,而sendmail沒有啟動所以就產生了這些文件;
 解決辦法:
 將crontab裡面的命令後面加上  > /dev/null 2>&1
  或者
  crontab裡面的命令後面加上  > /dev/null
Copyright © Linux教程網 All Rights Reserved