You are here

Intrepid on the eeePC

Topics: 
Ubuntu

As reported previously, I upgraded my eeePC to Intrepid lately, which introduced quite some space problems. Before I continue, I need to explain the storage contained in this netbook. I acquired the 900 Linux model, which contains 20GB in total. This 20GB is in fact a 4GB SSD drive, combined with a (much) slower internal 16GB SD card. As the SSD drive is really fast, I installed the Ubuntu eee onto it in a single partition (Ubuntu eee doesn't support LVM during install mode), and converted the 16GB drive later to a LVM volume group, on which I installed /home and /opt.

A default Ubuntu install is about 3GB, which means I got 75% used disk space on the SSD drive. Ubuntu needs about 1.5GB temp space in /var/cache/apt/archives during an upgrade, which I didn't had any more on the SSD drive, but I created an extra lvol on the SD card, and mounted this as /var/cache/apt/archives before the install. All went well, but I hit a 97% barrier during the install on the root partition, so I knew I had to resolve this.

Normally, I would enter both disks as physical volumes into the same volume group, but mixing disks with a different speed is a bad idea, and this would require a reinstall also. So I opted for a more ugly approach, where I would move one or more directories to a lvol onto the SD card. /usr was 2.5GB large, so an ideal candidate for migration. This went without any problem, but after a reboot, the /usr partition which resided now on the SD card, was so slow it annoyed the crap out of me.

I decided to move /usr back onto its original place, but to keep /usr/share (still 1.2GB large) onto the slower SD card. Now, moving /usr on a Unix system can be tricky. If everything is designed nicely, you should be able to boot into single user mode without needing anything in /usr. Which wasn't the case for Ubuntu... Booting into single user, starts a program with /usr dependancies, so unmounting /usr is impossible. The easiest solution was to comment /usr in /etc/fstab, which prevented the program to start up, and dumped me into a root shell, after which I could unmount /usr.