Postfix

Postfix 啟動失敗:無法設置排他鎖:資源暫時不可用

  • July 13, 2021

Postfix 執行良好,直到我更新message_size_limit後出於某種原因決定重新啟動

通過做這個

postconf -e message_size_limit=24840000

停止它,現在…… Postfix不會啟動,它一直在說

致命:打開鎖定文件/var/lib/postfix/master.lock:無法設置獨占鎖定:資源暫時不可用

我嘗試恢復更改但沒有運氣,

Sep 23 20:47:45 example.com systemd[1]: Starting Postfix Mail Transport Agent...
Sep 23 20:47:45 example.com postfix/postfix-script[13392]: starting the Postfix mail system
Sep 23 20:47:45 example.com postfix/master[13394]: fatal: open lock file /var/lib/postfix/master.lock: unable to set exclusive lock: Resource temporarily unavailable
Sep 23 20:47:46 example.com postfix/master[13393]: fatal: daemon initialization failure
Sep 23 20:47:47 example.com postfix/postfix-script[13395]: fatal: mail system startup failed
Sep 23 20:47:47 example.com systemd[1]: postfix.service: control process exited, code=exited status=1
Sep 23 20:47:47 example.com systemd[1]: Failed to start Postfix Mail Transport Agent.
Sep 23 20:47:47 example.com systemd[1]: Unit postfix.service entered failed state.
Sep 23 20:47:47 example.com systemd[1]: postfix.service failed.

如果有幫助,我還像 2 週前一樣從LetsEncrypt安裝了 SSL ,也許這可能是問題的原因?

感謝與**@ryan-babchishin共享的URL**,它有助於找到解決方案

##問題所以我使用systemctl來啟動、重新載入、停止 postfix,它正在添加其他隱藏使用者,我最近更新了virtualmin,它繼續使用

#systemctl status postfix.service
#systemctl stop postfix.service
#systemctl start postfix.service

代替

#postfix <start/stop>

##解決方案所以導致master.lock被其他使用者使用因此我們無法修改,導致

致命:郵件系統啟動失敗

我們只需要殺死程序啟動postfix

現在…檢查文件是否存在

#ls -l /var/lib/postfix/master.lock

尋找使用它的過程

#htop 

或者乾脆做

#fuser /var/lib/postfix/master.lock
7881

現在

#ps -ef | grep 7881
root      7881     1  0 Sep16 ?        00:00:09 /usr/libexec/postfix/master -w
postfix   9127  7881  0 10:04 ?        00:00:00 pickup -l -t unix -u
postfix   9469  7881  0 10:13 ?        00:00:00 smtpd -n smtp -t inet -u -o stress= -o smtpd_sasl_auth_enable=yes
postfix   9470  7881  0 10:13 ?        00:00:00 proxymap -t unix -u
postfix   9471  7881  0 10:13 ?        00:00:00 smtpd -n smtp -t inet -u -o stress= -o smtpd_sasl_auth_enable=yes
postfix   9472  7881  0 10:13 ?        00:00:00 anvil -l -t unix -u
postfix   9476  7881  0 10:13 ?        00:00:00 trivial-rewrite -n rewrite -t unix -u
root      9486  8671  0 10:13 pts/0    00:00:00 grep --color=auto 7881
postfix  28581  7881  0 Sep17 ?        00:00:01 qmgr -l -t unix -u

查找使用鎖文件的程序

殺死程序

#kill 7881

現在讓我們回到 postfix

# postfix status
postfix/postfix-script: the Postfix mail system is not running

現在開始

# postfix start
postfix/postfix-script: starting the Postfix mail system

後綴再次執行!

讓我在 Android 上玩 Sticky Bubble來放鬆一下 :)

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