Recovering from a blown upgrade
From Qmailtoaster
Recovering from a blown upgrade
A few weeks ago someone posted a message about how he did an upgrade on a production server and it stopped working. He was getting the message "451 qq write error or disk full (#4.3.0)"
I had this same problem happen today. While I do not know what caused it, I suspect that not turning off monit had something to do with it, as monit would have tried to restart qmail every few minutes. Again, this is just a suspicion.
The tangible results of this upgrade failure was that many files and folders throughout the qmail installation ended up being owned by named:named.
One thing you should know about my system is that /home/vpopmail is a softlink to /var/qmail. This allows me to have less directories to back up and to follow a scheme that I used on earlier (pre-toaster) setups. So when I refer to the /var/qmail/domains directory, it is likely to be /home/vpopmail/domains for you if you do not have your schema set up as do I,
What needs to be done to revive the system is to do a lot of ownership changes and some mode changes.
First I ran queue_repair.py -r. I do not know that it actually did a lot of good because things it said that it did, when I checked it did not, but I include it here for thoroughness.
Here are the changes I had to make:
chown root:root /usr/sbin/httpd cd /var/qmail ; chown -R qmaill:qmail supervise cd /var/qmail/bin; chown root:qmail qmail-clean qmail-lspawn qmail-rspawn qmail-send qmail-smtpd cd /var/qmail/domains ; chown -R vpopmail:vchkpw * cd /var/qmail/etc ; chown vpopmail:vchkpw vpopmail.mysql* cd /var/log/qmail ; chown -R qmaill:qmail * cd /var/qmail/queue ; chown -R qmailq:qmail todo cd /var/qmail/queue/todo ; chmod 644 *
I have no idea of how apache (httpd) got changed, but it had monit sending me alerts, so that was what I had changed first.
So that's my list of things that needed to be fixed to get a messed-up toaster upgrade back to working condition. Hopefully it will save someone the half hour of work it took me to figure it all out.