Making an Ubuntu Server - Part 1: The Plan
Added: September 5th, 2007 (tagged with: computer)
When I graduated High School (way back in 2002 ;-), I embarked on the process of building my own desktop computer. It has something like (it's been a while, I'm shaky on the exact specs) a 1.6 GHz P4 processor, 512 Megs of RAM, 120GB HDD, nVidia GeForce 4 Ti 4400 graphics card (supporting dual monitors - I miss that), CD burner, DVD player, blah, blah, blah... Served me well throughout my first few years in college. One day, I come home from classes and my machine won't fully boot. Part way through the loading process, I lose video. Assumption: Video Card over-heating. Not a total loss to me, by this time I had pretty much moved to working primarily on my Toshiba Satellite laptop.
Flash forward to this weekend. After picking up my new MacBook, I start thinking about setting up a personal server again. Since I my focus at work has shifted to Ruby on Rails development, I think it would be nice to set up a server running Apache, Capistrano, Subversion... heck, maybe even MythTV. I haven't had that much experience using Linux (or one of the flavors), so I have a new opportunity to grow. Why Ubuntu? Why not? I know a few people that use Ubuntu as their desktop system and like it, so I'll give the server edition a try.
But, back to the problem with my old system. I don't want to invest too much time or money in setting this server up, I don't need it to do that much. I'm not running any public facing services on it. Time to diagnose the problem with my old desktop...
Checking Out the Video Card
I don't remember all of what I did to narrow the problem down to the video card a couple of years ago, but I thought I would start there.
Now, this box has been sitting around my parents house for a few years now, before that it was in my fraternity house, so the system probably needs to be cleaned out :-) On my lunch break yesterday, I went over to Office Depot and picked up a can of compressed air and a lint-free cloth. When I got home from work, the dissection began. There was an awful lot of dust built up in the computer. After an hour or so of blowing all the dust around and reconnection all of the components, my machine was finally in a condition to be turned on again.
During the boot process, the screen freezes. Reboot, I get to the Windows startup screen, before it freezes again. Boot into safe mode, and I'm in!
A spend a bit of time looking around, reminiscing about all the time spent watching Farscape and Futurama, deleting a bunch of outdated programs that were just choking the hard drive. Reboot, load Windows normally, no problems. Everything seems to be running okay, so maybe the graphics card is alright.
Checking the Memory (RAM)
So if the graphics card isn't the problem, the next culprit on my list is the RAM. So, I go online with my MacBook, download a copy of Memtest86+, burn a boot CD and give it a whirl. No problems, all the tests ran just fine.
Checking the HDD
Okay, so the memory seems to be fine, what about the hard disk? Does it have some corrupt sectors that are causing the crashes? Boot into Windows and run chkdsk... Aha, chkdsk found some errors and needs to be run with chkdsk /f to fix them. Okay, no problem. Reboot, chkdsk fixes the errors, reboot into Windows. Delete some more crap files and programs... Time for bed, I'll run the Disk Defragment tool before I go to sleep...
Wake up in the morning, and the screen is frozen... Hmm...
Checking the Memory (RAM) Again
All signs to me are pointing to the system memory. But, Memtest86+ successfully ran through all of it's tests. Try again. I look at the configuration options, and notice that it Memtest86+ is only testing a select portion of the memory. Adjust the settings to test all available memory, and... Errors! Woo-hoo. It looks like some of the upper memory is bad. I have two chips in there so maybe one is corrupt and the other one is fine...
I don't know yet... I had to go to work. But, when I get home, I know exactly what I am going to test. I'm going to test each memory stick individually to find the problem, and then head over to Best Buy to get myself a replacement and a new HDD for the server.
Server Plans
So, what do I actually envision the server doing? Not sure, really just winging it. I know I want it running Ubuntu with Apache, MySQL, Ruby, Rails, Capistrano, SVN, and MythTV. But, what are my log term goals of the server? I don't know. I would like to use the machine as a testing ground for my web development. Having an SVN server would be really nice to hold all the source code for the various projects I am working on (and want to work on). MythTV, so I can record the TV shows I watch. So, the server has no big goals, just a lot of little "it would be nice if" goals. I'll keep this blog updated with the progress I make (and the problems I run into) in my first attempt to build an Ubuntu Server.
