Postfix

Postfix 判斷它沒有足夠的磁碟空間

  • February 28, 2020

最後結果

我通過xvda將分區大小從 700MB 調整到 10GB 來解決這個問題。我使用 Linode 的控制面板來執行此操作,其中包括關閉 VPS、執行調整大小操作,然後重新啟動它。非常感謝所有提供見解和解決方案的人;他們都是有用的和樂於助人的。

原始問題

我將 Postfix 作為我的 MTA 執行,它隨機決定停止接受傳入的電子郵件:

Sep 14 07:50:26 zulu postfix/smtpd[27946]: warning: not enough free space in mail queue: 6832128 bytes < 1.5*message size limit

在我的postconf

message_size_limit = 10240000
queue_minfree = 25000000

發送到我係統的所有郵件都被拒絕452 4.3.1 Insufficient system storage

我對分區和相關魔法知之甚少,我只知道 Postfix 似乎在告訴我它沒有空間,而實際上我的系統有足夠的空間:

最後,Postfix 還在向我的賬戶發送失敗通知postmaster@,所以我真的很茫然。

編輯

root@zulu:/# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda             679M  644M  6.9M  99% /
tmpfs                 249M     0  249M   0% /lib/init/rw
udev                   10M  112K  9.9M   2% /dev
tmpfs                 249M     0  249M   0% /dev/shm

據我所知,郵件隊列儲存在/var/spool/postfix. 我不完全確定如何確定這是否正確,但它似乎是正確的:

root@zulu:/var/spool/postfix# ls -al
total 84
drwxr-xr-x 21 root    root     4096 Sep  6 13:58 .
drwxr-xr-x  4 root    root     4096 Sep  6 06:55 ..
drwx------  2 postfix root     4096 Sep 14 08:37 active
drwx------  2 postfix root     4096 Sep 13 13:19 bounce
drwx------  2 postfix root     4096 Sep  6 06:55 corrupt
drwx------  3 postfix root     4096 Sep 12 06:13 defer
drwx------  3 postfix root     4096 Sep 12 06:13 deferred
drwxr-xr-x  2 root    root     4096 May  4 17:30 dev
drwxr-xr-x  3 root    root     4096 Sep 14 07:37 etc
drwx------  2 postfix root     4096 Sep  6 06:55 flush
drwx------  2 postfix root     4096 Sep  6 06:55 hold
drwx------  2 postfix root     4096 Sep 14 08:37 incoming
drwxr-xr-x  2 root    root     4096 Sep 14 07:37 lib
drwx-wx--T  2 postfix postdrop 4096 Sep  8 21:41 maildrop
drwxr-xr-x  2 root    root     4096 Sep 12 06:13 pid
drwx------  2 postfix root     4096 Sep 14 07:37 private
drwx--s---  2 postfix postdrop 4096 Sep 14 07:37 public
drwx------  2 postfix root     4096 Sep  6 06:55 saved
drwx------  2 postfix root     4096 Sep  6 06:55 trace
drwxr-xr-x  3 root    root     4096 Sep  6 06:55 usr
drwxr-xr-x  3 root    root     4096 Sep  6 13:58 var

磁碟:

root@zulu:/# fdisk -l /dev/xvda

Disk /dev/xvda: 734 MB, 734003200 bytes
255 heads, 63 sectors/track, 89 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/xvda doesn't contain a valid partition table

我可能應該注意到這是一個 Linode VPS。

您顯示大量空間的原因是因為您的 linode 圖像大小為 956mb,而您的帳戶總共有 20gb。因此,您的實際伺服器只有 956mb 大小(目前可用 6.9mb)。要解決 - 關閉您的 linode 實例,請調整圖像大小以使用更多帳戶(建議全部使用,除非您需要執行其他圖像)。

您的根目錄已滿,這是問題所在。您可以立即做一些事情。一,執行 apt-get clean all。這將刪除文件系統上所有下載的包。接下來,執行以下操作:

cd /var/log
du -hs

這將顯示有多少空間用於日誌。如果它很重要,請繼續並發出 du -hs *。這將顯示 /var/log 中的每個目錄正在使用多少空間。尋找一個使用最多空間的。輸入它(cd 其中是問題目錄的名稱。發出 ls -lh 並查看每個文件的大小。如果文件以 .gz 結尾,那麼您可以簡單地刪除它們(rm)或者如果有一個文件很大但不以 .gz 結尾,而且您不關心內容問題:

> <filename>

同樣,問題文件的名稱在哪裡。這應該會讓你重新開始執行,我相當有信心你會在 /var/log 中找到你的問題。

引用自:https://serverfault.com/questions/311279