The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Monday, April 25, 2005

The past two weeks

From: "Ken Maier" <KMAIER@JKAUGUST.COM> <XXXXXXXXXXXXXXXXXXX>
To: "'Sean 'Captain Napalm' Conner'" <SEAN@CONMAN.ORG>
Subject: RE: FW: The Boston Diaries Update Notification
Date: Mon, 4 Apr 2005 08:41:22 -0400

but as an aside, I'd like to thank you for keeping your blog updated and not falling into the category of people who start something and don't post to it anymore. I'm never sure what to read on your blog Sean and I'm always entertained. Keep up the good work! ;-)

Note that Ken sent that earlier this month. And what do I do in response?

Not update for two weeks.

Sigh.

Since my last update I've:

Tuesday April 12th

Sometime in January I tried renewing my driver's license and renew my car's registration online but while it looked like it worked, I had yet to receive my driver's license or registration. So I set aide this day to look into this matter at the DMV office.

Or rather, offices. The closest office to handle driver licenses is in Lantana (only a couple of miles from Casa New Jersey) but they don't handle car registrations; that office is in Lake Worth (again, only a couple of miles away from Casa New Jersey, but in the other direction). No big deal, just take the day off from work (of course) and hit both offices.

My mistake was in not hitting the driver license office at 7:30 am.

When I arrived around noon, there was a mob of people outside. Pushing my way inside I found another mob of people waiting in line to get permission to wait in line. This convinced me that I might be better off trying to do this by phone. Only (after I got home) the phone was busy (imagine that) so I tried the online thang again. Seemed to work this time around.

Friday, April 15th

Taxes.

Ouch.

Just … ouch.

I've heard cries about simplifying the tax code, possibly going with a flat tax to make things simpler. Only it's not the actual tax calculation which is hard (if it's less than US$100,000.00 you look up the amount on a table, and if it's over that it's 25–35% of your income, depending upon how much it is and what your filing status is—but the worksheet for that is simple)—it's the definition of “income” which is hard. Lines six through fourty-two of Form 1040 exist just to figure out your taxable income (that's 36 lines and up to six schedules and four forms).

Having a flat tax won't make that go away.

Saturday, April 16th

The House Chillin' Party.

It was great! Most of the people invited showed up, and much food, drink and conversation was had. The rocket launch (The Kids found a model rocket when we moved in) was successful (once we figured out that the launch key had to be shoved way into the launch control unit), and the parachute deployment was successful, but the winds carried the rocket away to a private golf course an inaccessible area—I just hope we didn't scare any golfers indigenous populations with its landing.

By the way, the Words of Wisdom we asked people to bring where strung up across the living room.

Last week at work

At the House Chillin' Party I managed to talk to Mark and Rob about the broadcast copy idea I was working on (Rob is now a senior Unix administrator for Negiyo and they're responsible to updating and managing hundreds of servers across two dozen or so groups so any insight he has is great) and both didn't like the idea of multicast or broadcasting changes around. They also weren't keen on the idea of polling for updates. So I may just go with the O(log n) method of pushing files out.

So I slipped into another related project—that of monitoring a large number of servers. I do know that SNMP is used here to monitor the various routers and switches, but it seems that since I last looked at it (late 90s) it's been extended (since it is extensible) to include host information (you can even monitor processes! And installed packages! Wow!). So not only have I been installing NTP on all the servers (slowly, working my way through the list) but also SNMP.

Smirk also wants to use Cobalt RaQs for various infrastructure hosts, like DNS, since they use very little power (about 35W vs. 250W for a typical server). I've already set one up as a firewall, but more about this in the next entry.

That pretty much brings us up to date.


Installing Debian on a MIPS-based Cobalt RaQ

There are two major types of Cobalt RaQs, those based on the MIPS chip (RaQs 1 and 2, plus the Qubes) and those based upon the Intel Pentium chips (RaQs 3 and 4). They come with a version of Linux preinstalled, but they're an older kernel (2.0 or 2.2) and due to the limited nature of the firmware, it's not easy to upgrade them with a more modern Linux kernel.

It can be done.

But it takes some work.

This entry is about upgrading a Cobalt RaQ 1 or 2 (the MIPS based machines).

I had intended to install NetBSD but the install instructions seem to assume you have a bootable Cobalt RaQ to begin with. I didn't, since the unit I was given lacked a harddrive (as I found out); I didn't have the luxury of a booting Cobalt RaQ (it came without a harddrive).

Debian has a port to the Cobalt RaQ (MIPS, not the Intel). The instructions I initially found mentioned the “woody” release (a few years old now) and that distribution failed miserably. Poking around the Debian site lead to the “sarge” release, which worked wonderfully, but in getting it going you need to do quite a bit of work.

I'm not sure if RARP is required for this or not (the NetBSD instructions seemed to indicate it was) but since I had RARP support for a previous NetBSD install a few years ago it didn't hurt to use it. Getting the MAC address of the machine was a simple matter of a forced network based boot and sniffing the network traffic and then rarp -s 10.0.0.15 00:10:e0:00:68:10. In any case, you will need the MAC address of the Cobalt RaQ.

Then it's configuring of NFS. Easy enough to export the /nfsroot directory (yes, I had to create it) and to keep the potential problems down added the following to /etc/exports:

/nfsroot *(rw,no_root_squash,async)

Now, the final DHCP configuration that worked:

host kobold
{
  hardware      ethernet 00:10:E0:00:68:10;
  fixed-address 10.0.0.15;
  filename      "/boot/vmlinux.gz";
  option        root-path "/nfsroot";
  option        domain-name             "kobold.groomlake.area51";
  option        domain-name-servers     10.0.0.1;
  option        routers                 10.0.0.1;
  option        subnet-mask             255.255.255.0;
  option        broadcast-address       10.0.0.255;
  next-server   10.0.0.3;
  server-name   "10.0.0.3";
}

(yes, I know that .area51 is not a valid TLD; it's one I created a few years ago when playing with DNS and it's only used for the private network at Casa New Jersey).

Next step, getting the files that are needed to boot the Cobalt RaQ. If you don't mind Debian, these work. You'll need initrd.gz, vmlinux.gz and vmlinux_raq-2800.gz—while I did get default.colo it didn't seem to actually work but hey, it can't hurt to get it. All the files are placed in /nfsroot/boot/ on the NFS server, and marked executable (I also placed a copy in /nfsroot but that shouldn't matter).

Next step, getting those files loaded. Hook up to the serial console on the Cobalt RaQ (baud rate 115200, parity 8n1 and if that doesn't work, take a paper clip and hold in the button in the hole just to the right of the LCD screen while powering up; that will reset the serial console to 115200 8n1). While powering it on, hit the space bar to get the boot prompt, and type:

bfd /boot/vmlinuz.gz root=/dev/nfs nfsroot=/nfsroot

What you are loading is not Linux, but yet another boot loader that doesn't have the same restrictions as the one built in (it's CoLo, which can be used to replace the existing boot loader, or used in this chaining method). That will boot and if it fails to load the actual Linux kernel (which in my case it always did) you can simply (hah!) type:

ColoPrompt> nfs {dhcp-next-server} {dhcp-root-path} vmlinux-2.4.27-r5k-cobalt initrd.gz
ColoPrompt> execute rd_start=0x{initrd-start} rd_size=0x{initrd-size} console=ttyS0,{console-speed}

(and if that doesn't work, power cycle the Cobalt RaQ and try again—I had to do this twice to get the Debian Intaller running)

You are then running the Debian Installer and from there on out it's just like any other Linux installation. You partition the drives (for this system it's recommended you let it partition the drives), select the type of install and let it go. You'll end up with a usable, if rather bare, Linux system (right now it's compiling MySQL).

Obligatory Picture

[It's the most wonderful time of the year!]

Obligatory Contact Info

Obligatory Feeds

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site: http://boston.conman.org/, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

http://boston.conman.org/2000/08/01

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2021 by Sean Conner. All Rights Reserved.