I mentioned a while ago that I will be rolling out a Zimbra mail server. It's been a hard slog but I think I've got it together enough to roll out into production.
I had some grief with bad sectors showing up on the system disk I used. They showed up in the swap partition. When bad sectors show up here applications that are using that virtual memory will show behaviour akin to faulty memory. This meant that when I was migrating e-mail from the old mail server to the Zimbra server it would cause Zimbra to use a bit of swap memory for various things and come across these bad sectors in turn causing it to crash.
Having pinpointed the fault to bad sectors (using dmesg to see the disk errors) I went about imaging from the old disk to a new one. The system disk isn't mirrored, Zimbra lives on a mirror but the system disk stands alone - you can call it a compromise of costs if you like. However the cheap onboard RAID controller is either set to all SATA ports as RAID or none. I have to set up single disk stripes in order to add a single disk. This means that I have to contend with the obscure device mapping between the BIOS, RAID BIOS and the linux device mapper. Juggling all these around I managed to get the new disk in and booting without failed mounts and what not.
I decided after all this to clear the user accounts and aliases and refresh them. The reasons for doing this is that I modified the zmprov script for converting the passwd file to a zmprov command list to include UID and GIDs plus the SambaID. I could have created another script that simply modified each user however I felt it better to run thought the process of clearing and restoring users again just to be sure.
I also updated Zimbra to the latest 6.0.7 release. I also tested the shared calendaring and resource scheduling a bit further to make sure it fits the requirements - all works quite well and I like the different permission levels for managing resources.
I think it would be possible to make a Zimbra appliance of sorts so I wouldn't mind having a go at scripting the installation and packaging it up into a small power efficient server that can be easily used by small businesses or as departmental mail servers. Could be something to add to my consulting work on the side along with cheap and efficient network consulting.