mwolson.org Blog - /Tech

Tue, 03 Oct 2006

"hariken" begins its existence

My Mac Mini arrived earlier on Friday than I had hoped, so I was able to take it with me to my dad's house over the weekend. Unfortunately, I forgot to bring the DVI/VGA adapter, and had to use the TV-out cable instead. This method works fine for OS X, but the Ubuntu edgy Live CD did not work with it. Luckily, I was able to move the contents of my laptop onto a USB hard drive (via a newly-created ext3 partition on it). "tuxtanker", my laptop, was decommissioned and given to my dad. I put Windows XP on it, with the possibility of installing GNU/Linux for dual-booting later on.

I named my Mac Mini "hariken", which is a School Rumble reference (one of the main characters used this as a pun on the word "hurricane", his first and last name, and a Japanese phrase meaning "scattering fist"). A rare triple-pun makes it a worthy name for a machine owned by me.

I brought the mini with me to work these past two days in order to get Ubuntu edgy on it. I found that I could not use the Live CD installer, because it would not handle the creation of LVM partitions. So I used the Server Install CD instead. The idea is that I only am allowed to have two partitions to put GNU/Linux on, because Mac OS X takes up the other 2, and only 4 total are allowed so that two different kinds of partition table layouts can be kept in sync.

I went for a very detailed partitioning setup this time. Thanks to work, I now have a reasonably good idea for how to make such a setup. Additionally, I wanted to isolate the file system corruption that I experienced for the past two weeks. I doubt it will happen again, but you never know.

For some reason, Ubuntu's installer's invocation of lilo errored out, so I had to get a console and manually install it to the 3rd partition. I'm using the lovely rEFIt boot menu to choose between OS X and GNU/Linux at boot time. I tried to get grub working, but it was giving me an error about an unrecognized partition type when I tried to install it to the boot record of the 3rd partition. It seems not to like the fact that my root partition is of type "0xef", which means "EFI [FAT 12/16/32]" according to the output from fdisk. I'm not exactly sure why the partition is of this type — perhaps it's something that bootcamp did, or something that rEFIt did when I had it sync the partition table. Oh well.

Because I made several install scripts last week (while bringing tuxtanker back up), the post-install process went fairly smoothly. I seem to have used the wrong rsync options when restoring my large "stuff" partition from the USB hard drive, because it did not restore any symlinks from that partition. This wasn't too huge of a loss, because I remember most of the areas that I had symlinked.

I noticed a couple of other problems after installation. The foremost one is that Ubuntu's new runlevel iterator (or whatever the terminology is) called "upstart" locks up the system before it is fully booted. Hitting Ctrl+Alt+Del aborts whatever process was hung and continues the boot successfully. It turned out that netenv, a program I use to manually switch between networking configurations, was trying to prompt me for a menu. D'oh! I'm not sure why it did that, since that behavior was removed in Ubuntu Dapper, and for the better, in my opinion. Once I replaced its init.d script with "exit 0", things went swimmingly.

The other problem was that XFCE was missing a dependency on gamin, which caused it to start in a broken state. I'm going to file a bug report on that before I forget to do so.

Lastly, I managed to get the built-in wireless to work with Ubuntu, after noting with great annoyance that (1) the interface name would not change from "ath0" to "wlan0", no matter what I tried and (2) the wpasupplicant package maintainer changed the way that wpa_supplicant and /etc/network/interfaces work together again. The latter change seemed to be for the better, as I can now specify a second interface which will get called as soon as wpa_supplicant is done associating, which causes dhclient to be invoked. Details are available at the PLUG: PAL20Howto page.