I recently acquired an old Compaq ML350 server from work, and thought it might come in useful at home for something. Never one to need an actual requirement before getting new kit, I hastily (well, as hastily as possible with this heavy beast) took it home.It's been sitting under my stairs for a couple of months now, but as I've recently discovered the fantastic SSL Explorer, I thought I'd get the trusty ML350 configured as my secure-access host.
My first choice I had to make was on of Operating Systems. Windows Server would be the easy choice, as this is what the system came with, and so I knew it would work, however the licensing would be somewhat ambiguous (I can't recall if the license was OEM or company-owned, and it certainly wasn't Windows Server 2003) so I opted for a Linux distribution.
I've used a few different variants over the years, usually one of the big names like Red Hat, SUSE or Ubuntu, but in this case I went for Ubuntu 7.04 Server Edition. I've used this particular version fairly recently, so was pretty confident I could get it working.
Read on for details on how I got this trusty old Compaq ML350 to play nicely with Ubuntu 7.04...
(Oh, and this sucker is NOISY. Don't worry about that, we'll be able to calm all those fans down a bit later)

The Spec
The server is a dual-processor Pentium-III 1GHz with 256Kb cache. It has 768Mb RAM, and four 18.2Gb hot-swappable disks mounted on a Compaq Smart Array 431 controller. Not blinding by today's standards...
Initial Preparation
First of all I deleted the Logical Drive that was setup on the RAID controller (accessed by pressing F8 when prompted at boot-up), this was both to easily (but not really securely!) delete any existing data on the disks, and also because previously it was set up with a slightly peculiar RAID scheme.
I set up the array as a pretty standard RAID-5 configuration mainly because the disks are fairly old, they were heavily used before (it was an Exchange server) and so I expect one of them could fail. This gives me 50.9Gb of usable disk space.
Ubuntu Setup
The system boots off a standard Ubuntu 7.04 Server CD with no problems, although after selecting "Install from CD" I do get the following error for a few seconds, but this can be safely (?) ignored. (That first number in the square brackets varies, so don't try and search the Internet for that bit)
[ 394.803746] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
I selected all the relevant options for languages and keyboards etc for my system (UK), I set my host-name, and setup soon proceeded to the disk partitioning.
For the disks, I simply selected "Guided - use entire disk". I was tempted to select the LVM option, but as there's not really much space for growth on this box, nor will I be using any software RAID, I thought it best not to complicate matters.
Setup detected and suggested the following disk to manage (the virtual disk that the controller presents to the Operating System):
/dev/ida/c0d0 - 54.6 GB Compaq Smart Array
And the partition configuration that Ubuntu suggested was a simple "data + swap":
partition #1 of /dev/ida/c0d0 as ext3
partition #2 of /dev/ida/c0d0 as swap
On the "software selection" screen I selected the LAMP option, as I know I'll be needing Apache, MySQL and PHP. I'll be adding the other bits and pieces I'll be needing later.
Now on my system, after rebooting it seems to run a few more startup tasks after the login-prompt appears. This means it's not obvious that it's waiting for a user name, because the bottom of the screen is just listing another startup step (/etc/rc.local). Press [Enter] and you'll see your trusty login prompt as usual.
Software
Sources
As a bare minimum, I also always add an Internet repository to the APT sources, and take out the CD source. I don't want to be prompted for CDs all the time!
sudo vim /etc/apt/sources.list
I comment out the "deb cdrom:" line, the Multiverse repository is selected by default already, so just leave that. I then updated the APT sources with
sudo apt-get update
And then upgrade any new packages with
sudo apt-get upgrade
A couple of critical utilities
These are needed for me to do almost any of the rest of this article.
These can be installed by typing in the following command, replacing "packagename" with whatever you want to install (the names are in square brackets)
sudo a pt-get install packagename
- ssh server [openssh-server] to allow me to remotely administer the machine, and not have to juggle another keyboard and monitor.
Thanks for reading this far, I'll post more about silencing the turbines next time...