The Xandros distribution that comes with the ASUS Eee PC 900 is very simple and a great experience for those new to Linux. For more advanced users, however, it may feel quite confining and limiting. It's a good distribution considering the target audience of the Eee PC, but installing additional software or a different desktop environment can be quite challenging. There are many distributions that work on the Eee PC besides Xandros, and the ability to boot off of SD cards allows you to keep the default Xandros OS and also boot other distributions. This makes it quite easy to use a whole array of operating systems on the Eee PC if the idea of blowing away the default OS doesn't sit well.
Out of the many distributions that work on the Eee PC, Mandriva Linux 2008 Spring (or 2008.1) is one that works exceptionally well. It can be installed to the built-in SSD or onto an external SD card. The Eee PC supports the newer SDHC cards which provide larger capacity. For example, a 4GB SDHC card is more than enough to install Mandriva 2008.1, and using the built-in SSD drive for /home, which would share it with the default Xandros install, is more than sufficient.
Because the Eee PC does not come with a built-in CD or DVD drive, you will need an external USB. To begin the install, enter the ASUS Eee PC BIOS and enable all of the hardware devices. This will allow the installer to properly detect all of the hardware. Also make sure that you don't do the install on battery power; installing to an SDHC easily will take over four hours.
Once the changes have been saved to the BIOS, when the Eee PC boots, press the ESC key and tell it to boot from the external CD or DVD drive. Once the Mandriva installer starts, perform an install as normal. On the Eee PC 900, when you arrive at the step for formatting and partitioning drives, select the advanced options to partition yourself and select the SDHC card; it will most likely be the /dev/sdc device. There will be three devices: /dev/sda would be the first 4GB SSD while /dev/sdb would be the 16GB SSD. On a new SDHC card, you can tell the right device by it being one large FAT partition. Re-partition this to a single partition and mount it as /, or the root partition. Use a journaling filesystem like ext3 or reiserfs.
The only other thing to watch for is to make sure that you do not install GRUB to the system MBR as this would overwrite the boot sector for Xandros. Instead, make sure you install GRUB to the MBR of the media you are installing Mandriva onto, the SDHC card. This will allow you to later set up the BIOS to have the boot order look for the SDHC card first, or you can select it by pressing ESC when the system boots.
Everything else, other than wireless, will be configured correctly for hardware. Wireless will be configured on the first reboot, but you will need to have the Eee PC connected to the Internet via the wired Ethernet port in order to obtain the drivers to configure the wireless network card.
On the first reboot, you'll note that Mandriva boots much slower than Xandros; this is normal as accessing the SDHC is much slower than the internal SSD but once the system is booted, it will run quite fast and shouldn't be too slow.
Enter the Mandriva Control Center and be sure to be connected to the Internet to set up the software sources. Remove the original install media and set up a remote source. Next, head to the networking setup; now you can configure the wireless connection since remote sources will have been set up. This is necessary to download the appropriate madwifi packages. You may have to install the various security and bugfix updates first, which include a new kernel and new madwifi packages.
Finally, edit /etc/fstab and make a few changes to minimize the number of writes to the flash memory. Make sure that all of the mounts have the "noatime" option, and you may also use the tmpfs filesystem for things like temporary files and logs. Anything on tmpfs will not persist across reboots, but for a device like the Eee PC, it's doubtful that you will want to keep log files anyway, so add the following to the end of /etc/fstab:
tmpfs /tmp tmpfs noatime 0 0
tmpfs /var/log tmpfs noatime 0 0
tmpfs /var/tmp tmpfs noatime 0 0
One final point to note: Regardless of what distribution you install to an SD or SDHC card, you will not be able to suspend/resume, so ensure you do proper shutdowns. Due to the card reader being on the USB bus, suspend/resume does not, as of yet, work properly because of how the kernel interacts with USB devices. Other than that, everything should work as if you installed to the internal SSD.
Get the PDF version of this tip here.
Delivered each Tuesday, TechRepublic's free Linux and Open Source newsletter provides tips, articles, and other resources to help you hone your Linux skills. Automatically sign up today!
Vincent Danen works on the Red Hat Security Response Team and lives in Canada. He has been writing about and developing on Linux for over 10 years and is a veteran Mac user.