Postfix in Plesk: Out: 451 4.3.0 Error: queue file write error

Want to help support this blog? Try out Oh Dear, the best all-in-one monitoring tool for your entire website, co-founded by me (the guy that wrote this blogpost). Start with a 10-day trial, no strings attached.

We offer uptime monitoring, SSL checks, broken links checking, performance & cronjob monitoring, branded status pages & so much more. Try us out today!

Profile image of Mattias Geniar

Mattias Geniar, August 02, 2011

Follow me on Twitter as @mattiasgeniar

As the administrator of a Linux server running the Plesk Controlpanel, you may receive e-mails like this if you’re running Plesk 9.x.

e>

Disk space & mailbox quota

Check if you still have sufficient disk space on the server, and if the mailquota of the user that is supposed to receive this mail has not been reached.

Check the disk usage.

# df -h

And see the total mailbox quota of that user.

# du -hs /var/qmail/mailnames/[DOMAIN]/[USER]/

If the disk is either full, or the user has reached its quota, the same error message can occur.

Command time limit exceeded

There’s a few things you can check to troubleshoot it. First, see if any of the following messages are found in the /usr/local/psa/var/log/maillog logfile.

# cd /usr/local/psa/var/log
# grep -P 'exit status' maillog
Jul 26 04:04:42 [hostname] postfix/spawn[7213]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255
Jul 26 04:04:42 [hostname] postfix/spawn[7215]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255
Jul 26 07:08:29 [hostname] postfix/spawn[19951]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255
Jul 26 09:26:31 [hostname] postfix/spawn[25609]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255
Jul 26 09:35:19 [hostname] postfix/spawn[25984]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255
Jul 26 09:35:19 [hostname] postfix/spawn[25982]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255

If you see those messages, do a search for the ID found in the spawn[ID] in the logs. See the underlined above.

# cd /usr/local/psa/var/log
# grep -P 25982 maillog
Jul 26 08:51:55 [hostname] postfix/spawn[25982]: warning: /usr/lib64/plesk-9.0/postfix-queue: process id 26095: command time limit exceeded
Jul 26 09:35:19 [hostname] postfix/spawn[25982]: warning: command /usr/lib64/plesk-9.0/postfix-queue exit status 255

If you get the above message, with command time limit exceeded, there’s a known fix from Parallels in KB #6074. The default timeout from Postfix is 30 seconds, but that may be insufficient when you’re retrieving large mails with attachments from slow hosts.

File permissions on postfix-queue

Check the file permissions on the postfix-queue file, they should be similar to this.

# ls -alh /usr/lib64/plesk-9.0/postfix-queue
-r-xr-x--- 1 mhandlers-user popuser 77K May  4  2010 /usr/lib64/plesk-9.0/postfix-queue

If you run a 32-bit linux, the file will be in the lib directory instead of lib64.

# ls -alh /usr/lib/plesk-9.0/postfix-queue
-r-xr-x--- 1 mhandlers-user popuser 77K May  4  2010 /usr/lib64/plesk-9.0/postfix-queue

Adjust the file permissions accordingly.

Nameservers in /etc/resolv.conf

The same problem can occur the nameservers in your /etc/resolv.conf are invalid, causing all DNS lookups to take extremely long and thus causing a timeout in the Postfix services.

Check each nameserver listed there, and see if they respond as you would expect them to.

# dig @[IP] google.be

If the response takes more than 30 seconds, consider removing that nameserver.

Disabling anti-spam routing Postfix

If you’re still experiencing the problem, go into /etc/postfix/master.cf and search for the line beginning with “smtp inet”, usually at the very top.

smtp inet n - - - - smtpd -o smtpd_proxy_filter=127.0.0.1:10025

And change that to

smtp inet n - n - - smtpd

And restart your Postfix.

# /etc/init.d/postfix restart

This effectively disables anti-spam (regardless of what your Plesk may say), to be able to exclude that as the source of the problems.



Want to subscribe to the cron.weekly newsletter?

I write a weekly-ish newsletter on Linux, open source & webdevelopment called cron.weekly.

It features the latest news, guides & tutorials and new open source projects. You can sign up via email below.

No spam. Just some good, practical Linux & open source content.