Creeper

Creeper is my new server. Built in March 2011, it has only ever run Linux (with one exception). It is named after the most feared enemy in Minecraft.

Minecraft server features
I built this box as a server for Minecraft.

Nightly backups
This was standard with the server script that we were using. However, there was no easy way to restore them, so I added that.

I modified the script to use rsnapshot.

Shadow server for vandalism
I tweaked the server script to add an additional server on port 56552, which hosts a copy of the previous night's backup. This is copied again each night, so it's perfect for sabotaging things that you don't want to destroy permanently (such as someone else's cheaty gold-block towers, say).

Nightly Overviewer maps
At first we tried Tectonicus, but we kept getting the Linux seg fault that the author clearly has no interest in fixing. To be fair, it's probably the fault of the JVM, not Tectonicus. To be unfair, this is the risk you take when you rely on a JVM.

Later, Overviewer caught our eye, and it ran without crashing. So that's how we're generating the [/overview maps].

PXE booting Ubuntu install disk
After assembling creeper, I faced the moment of truth: Do I own a working CD/DVD burner drive? But lo, have I not heard that you can set up a machine to boot over the network?!

Sure enough, it's called PXE, and after several false starts, this guy's instructions worked. My MBP served up an Ubuntu boot image via an old hub, and creeper booted up without any physical media; I thought of this moment as the passing of the Eternal Flame from one steward to the next. After swapping the network cable over to our real router, the install was underway.

I returned the DVD-ROM drive, unused, to Newegg for a refund.

Overheating
None of creeper's parts shipped with thermal grease, though the motherboard mentioned it in its instructions. I must have bought all OEM gear. This worried me, but I hoped that maybe if they didn't include it, it may not be necessary. This was a grievous error! Eager to go live right away, I assembled the whole thing sans grease, and almost immediately suffered from regular erratic reboots and occasional warnings about operations suppressed due to excessive heat. A visit to the BIOS revealed that the idle temperature was well in excess of all the available options for "shutdown temperature". I ordered some thermal grease and shut it down.

The grease arrived on March 28, 2011 and was applied soon thereafter. When I checked the BIOS, the temperature was about 100 Fahrenheit degrees lower. Stability improved noticeably, but the crashes did not go away altogether (though the warnings about suppressed operations did). I moved creeper next to an open Wisconsin spring window and tried running Memtest86+ to see if maybe the "badram" kernel parameter might provide an easy way out. The results were erratic; the machine consistently rebooted immediately on Test #8, and around 19% on Test #5. Test #6 told me that address 0x0020c7edbdb0 was bad&mdash;once; subsequent tests came back clear. Needless to say, badram=0x0020c7edbdb0 did not help even a little bit. I concluded that the RAM was not the problem.

On April 6, 2011, I resigned myself to a two-step plan:
 * 1) Swap the DIMMs. &#x2714;
 * 2) Replace the poor, obviously heat-damaged CPU if that doesn't help. Too bad Newegg's returns policy doesn't cover acts of gross stupidity. &#x2714;

Moral of the story: '''Always use thermal grease! Never boot without it!'''

Update April 12, 2011: This approach has failed. The reboots continue on a new CPU that has never overheated. Back to the drawing board.

Update April 24, 2011: It wasn't the motherboard, either. I've taken out one DIMM to see if that makes a difference. At this rate it won't be long before I have enough spare parts to make a whole new PC, so I've decided to do that and give it to my significant other.

Update April 27, 2011: Taking out a DIMM seemed to help. I began to suspect PAE, so I upgraded to 64-bit. If it stays stable now, then this section will need a rewrite.

Flashing the BIOS
As part of the overheating adventure, I searched for foxconn linux bios. This revealed several blog posts and forum threads alleging that my motherboard vendor had deliberately sabotaged their BIOS to thwart Linux!!!1 The symptoms were a near-perfect match&mdash;random reboots connected with ACPI, which I presumed would be involved in thermal monitoring.

The posts were old, and more recent ones said that the problem had been fixed. Whew. I downloaded my board's latest BIOS, only to discover that (of course) the only way to flash it was to run an MS-DOS utility. A few web searches revealed that the usual way for an Ubuntu user to handle this situation is to create a FreeDOS boot disk. But I had already decided not to install any removable drives.

My attempts to set up PXE for FreeDOS were stymied by some obscure error messages presumably caused by incompatibilities among the various tools I was using. Eventually I stumbled on a page explaining how to boot a FreeDOS disk with grub. This is a great idea! You don't need a physical disk or even a separate partition; just the fdboot.img file will do. And in case you ever need it again, you can just leave the menu entry there in grub! A few moments later and my BIOS was up to date (and not noticeably changed, and not preventing the random crashes).

Switchover
Late on the evening of July 1, 2011, the map file for our collaborative world was copied over from Omnibort's server to mine, replacing a copy of my own singleplayer map. Creeper is now live!!

Predecessors
Creeper joins a proud tradition of computers owned by me. This list is in reverse chronological order since that seems to be how the kids do things these days.

Codepimp
MacBook Pro bought to take on vacation in 2006.

Hotrod
DIY box built after college based on the guide of the same name at Ars Technica. Mouse and keyboard were later shanghai'd to compensate for Codepimp's shortcomings in those respects.

Jesus
DIY box built at college. Creeper currently is borrowing jesus's mouse.

Zoso
Compaq desktop purchased by my parents for high school. Thanks, Mom &amp; Dad! Creeper currently is borrowing zoso's keyboard.