根據登錄后的提示,可初步判斷是由于磁盤空間已滿或者有大量小文件將inode值打滿,導致的。故執行以下命令查看具體情況
通過上述命令可發現maillog有15G的日志,首先查看日志報錯,發現為
postfix/sendmail[3993]: warning: inet_protocols:IPv6 support is disabled:Address family not supported by protocol
postfix/sendmail[3993]: warning: inet_protocols: configuring for IPv4 support only
于是先趕緊清除日志
echo > miallog
清除后依舊系統依舊提示
– bash echo: write erroe :No space left on device
于是使用下列命令去查看
[root@webmap_web:/var/spool/postfix]
#df -i
Filesystem Inodes IUsed ifree IUse% Mounted on
/dev/vda1 2621440 2621423 17 100% /
tmpfs 4110040 1 4110039 1% /dev/shm
/dev/vdb1 19660800 2154 19658646 1% /home
/dev/vdc1 32768000 20503172 12264828 63% /var/www/html/map
發現系統盤的inode值已經被打滿了。故系統盤一定存在大量小文件,未被刪除。因log顯示maillog有大量日志,故懷疑/var/spool/postfix/下應該有很多文件產生 于是進入該目錄
[root@webmap_web:/var/spool/postfix]
#du -sh *
4.0K active
4.0K bounce
4.0K corrupt
4.0K defer
4.0K deferred
4.0K flush
4.0K hold
4.0K incoming
1.3G maildrop
4.0K pid
4.0K private
4.0K public
4.0K saved
4.0K trace
發現 maildrop目錄下有大量文件,故決定刪除。
[root@webmap_web:/var/spool/postfix/maildrop]
#rm -rf *
-bash: /bin/rm: Argument list too long
但發現系統提示,數據太多無法刪除,于是通過命令統計了下目錄下大致有多少文件
[root@webmap_web:/var/spool/postfix/maildrop]
#ls |wc -l
337912
emmmmm,文件數量很大,于是決定結合xargs命令來刪除,ls | xargs -n 9 rm -rf ,ls列出當前目錄下的所有文件,以空格作為分隔, xargs是一個過濾器, -n 9 表示每9個文件作為一組,作為 命令 rm -rf 的參數,這樣命令行就不會過長了。
[root@webmap_web:/var/spool/postfix/maildrop]#
ls |xargs -n 9 rm -f
等待一段時間后,可以發現系統磁盤的inode值已經降低到83%了。系統以恢復正常
在系統正常后,我們再來處理上面maillog中的報錯信息
修改方法:
/usr/sbin/postconf | grep inet_protocols –查看當前的inet_protocols
inet_protocols = all
vi /etc/postfix/main.cf
inet_protocols = all
改為inet_protocols = ipv4
重啟/etc/init.d/postfix restart