I spent the weekend (or a fair portion of it, anyway) converting the old desktop machine that Ghostwheel replaced into a server. Last night I pulled the plug on Gimp, the old 350MHz Pentium III that has been serving wonko.com for over a year, and replaced it with the new box, Serenity: an AMD Athlon XP 1800+ with more memory and lots more storage space.
I had expected to spend as much as a week gradually getting FreeBSD configured, installing applications, and migrating user accounts and settings, but I did it in less than two days and encountered only a few minor problems. FreeBSD deserves all the credit for this. I'm convinced there is no better operating system for servers. The ports collection makes things sinfully easy.
One of the problems I've often had with previous servers is that I forget how I've configured things. On a machine like Serenity, which handles web, email, and database services for wonko.com and a few hosted sites, the intricate web of dependencies and configuration files can quickly become difficult to manage. This time, I set out to document every configuration change from the beginning. Installing everything from ports allows me to use the port management tools to keep track of dependencies, and I created a set of web pages documenting every port I installed and every configuration option I set. This documentation has already come in handy several times, and the server hasn't even been operational for more than twenty-four hours.
The downside is that it could quickly become tedious to update the documentation every time I make a change to the server, which will probably be often, since I love to tinker. I'm thinking of writing a web-based tool to make the process easier.
I love it when things go smoothly, and this is the smoothest server upgrade I've ever done. Hooray for FreeBSD!