New Server
I’m building a new server that hosts this web site, my email, many other web sites, and other miscellaneous goodies.
The hardware is:
AsusM2NBP-VM motherboard
AMD64 X2 4800+ CPU (2.5 Ghz)
1 GB DDR2/667 RAM
160 GB Western Digital SATA 300 GB/s HD (three of them)
Sony 16X DVD-ROM/CD-ROM
Mid-tower case with 450 watt power supply
An extra 80mm fan (case came with 2)
Some SATA power connectors
80 wire ATA-133 rounded IDE cable (the case has a window, and rounded cable are cooler)
Got the hardware put together Friday night. First thing I did was setup the BIOS goodies. I wasn’t paying attention, and I went to set the integrated video card to the minimum RAM setting since it uses system memory. I set it to “disabled” instead of the lowest setting. Oops. After setting up the BIOS, I rebooted, and the system wouldn’t come up. I thought back on what I did, and realized my mistake. I cracked the case, removed the battery, and flipped the jumper to clear the BIOS RAM. Rebooted again, and setup the BIOS again with the proper settings. The lowest setting is 32MB of RAM for video. I really only need about 2MB. That’s 30MB of RAM wasted. Oh well….
Started installing the OS (Ubuntu Server 7.04 for AMD64), and it choked right near the end with a corrupted package. The package was the kernel image… Kind of need that.
I rebooted and ran the built-in CD integrity check. It found the problem. I burned a new CD, and did the integrity check. Same problem. I assumed it was a bad ISO, so I downloaded a new ISO. At this time it was about 1:30 AM Friday night, so I went to bed during the almost 2 hour download.
Got up Saturday, and the ISO was good. The third CD burned was good, and started the install. The problem that I noticed right away was that I had setup two the SATA drives to be a RAID 1 array in the BIOS/RAID controller, but the install package still saw three individual drives. I figured it would see two drives with one of them being the hardware RAID. Turns out the the RAID system on the motherboard is a combination hardware configuration and software RAID. Of course, the motherboard came with Windows drivers for doing software RAID, but this doesn’t help me. I decided to scrap the idea of having hardware RAID since that wasn’t an option. I rebooted, reconfigured the drives to be all independent of one another as far as the BIOS/RAID “controller” is concerned.
Did a configuration using software RAID under Linux, and did the install. The install went fine, but after I rebooted, I had black screen with a cursor at the top-left corner. Crap. GRUB wouldn’t even load. I figured it may be a problem with my software RAID settings, the hardware, the OS, or some combination of all three. I was able to boot from the CD, and then choose “Boot From First Hard Disk” and it would boot. Not an acceptable solution. I Googled and searched Ubuntu Forums for the rest of the day trying to find solutions to the problem. Tried troubleshooting GRUB, and software RAID, and hard disk configurations, and all sorts of stuff. I finally decided that I needed the Ubuntu Alternate 7.04 CD because there were some reports of it having better software RAID support. Unfortunately, Ubuntu’s site does not really tell you what the difference between desktop, server, and alternate are. Turns out that the server version that I was using does have software RAID support, so I didn’t need the alternate CD. While the ISO was downloading, I ran into town to pick up that rounded cable that I listed above. When I got back home, it was already 5:45, and I had to split to get to my D&D game that started at 6:00. I was late getting out of the house, but that’s ok.
Sunday rolled around, and I decided to do an install without using any kind of RAID. Just break the install down to the simplest form to reduce all variables. I used all three drives during the install. The first I put root (/) on. The second was for /home, and the third was for swap and /usr. Same problem. Ok. I knew that it wasn’t the RAID doing this. Had to be a hardware failure, or a BIOS misconfiguration. Like most BIOS books, this one sucked. There is a setting for “HDD SMART Monitoring”. Not sure what that is. I look it up in the book, and it tells me, “This allows you to enable or disable HDD SMART Monitoring.” No shit. WHAT IS IT? Come on!
Anyway, I roll through the BIOS settings without using the book since it’s worthless. I pay careful attention to each screen with all settings that are there. I finally get to a screen that lists all three of my hard drives. “Yep. They’re there.” I say to myself. I almost move on, but I told myself that I needed to pay special attention to every detail in the BIOS. I look a little closer, and I see some instructions on the side bar. It’s telling me that I can use ‘+’ and ‘-’ to change the boot order of the drives! Brilliant! I had already chosen my boot order to be CD then hard drive with all other options (floppy and removable media) disabled. This screen was actually letting me choose which hard drive to boot off of first! I looked a little closer, and my SECOND hard drive was listed FIRST. Huh? I didn’t do that! Why would #2 be the default first choice?? I don’t get it. This was why things weren’t booting! I had put my MBR and /boot/ on the first drive in ALL installs that I did, and that wasn’t the boot drive in the BIOS settings. What I don’t understand is that this is the “boot order” for the hard drives. If #2 failed, then it should have tried #1, and then #3. Nope. #2 failed, so it just choked and sat there.
I finally fixed the boot order for the hard drives to go in the logical order of #1, then #2, then #3. I then booted the system without a CD in it, and the system booted, loaded Linux, and got me to my login prompt! I felt like I was finally making some headway. Yay!
The next step was to boot from CD, setup my software RAID (RAID 1 for /) on #2 and #3. I then setup /boot, swap, and a large backup partition where my weekly rsync of / gets copied to just in case. I then ran through the install (again) and things worked just as I expected. After the install, I rebooted, and the system came up just like I thought it would on Friday night. Yay!
I then spent a few hours on and off during Sunday to get various things installed and configured on the box. I’m going to spend my evenings this week and this up coming weekend getting everything that I need installed, and as configured as I can get it.
The next step will be to get it online full time with a static IP at the colo. This probably won’t happen until I’m back from Breckenridge in the second week of Oct. Once this happens, then I’ll start copying the gigs and gigs (about 15 or so) of data that I have on the old server to the new server and making sure that things work. After a week or two of doing this, I’ll do the cut-over, and then take the old server offline after a week or two delay which will help me ensure that I didn’t miss anything.
I’m itching to get home tonight, so I can start throwing packages on the new server to get it all going. Should prove interesting!
First Test Sidestepped
Looks like the first test of the GPL in a court of law has been sidestepped. I’m glad that Monsoon Multimedia has promised to do the right thing. I hope that they follow through with their promise, and publish their code changes.
My only gripe about this whole thing is that it was a solid case in support of the GPL, and setting some precedence in an actual court ruling would have done wonders for the free software movement.
Ah well…. Maybe next time.