Installing Ubuntu 9.04 into Alix2d3

Hi fellow geeks!

For sometime now, I’ve been looking forward to acquire an embedded system that would become my home router and testbed for some networking stuff I’m working on. The requisites are the following:

  • Noiseless, cause I want to sleep with it right next to me
  • Very small
  • x86 architecture, cause I want it as a testbed for my networking applications and don’t want to fiddle with architecture vs compiler/libraries issues
  • Two or more Ethernet devices
  • USB and mini-PCI are pluses
  • Cheap!!

Thanks to my friend João Barraca, I went for a PC Engines Alix ALIX2D3. And must I say, it’s great!! And only 104Euro + 26Euro (customs taxes).  I’m not showing the unboxing process, but here’s a picture of the board.

ALIX2D3 board

ALIX2D3 board

I did some things wrong though, on the rush of getting a new toy (don’t you geeks know this feeling?!). First PC Engines is based in Switzerland, and therefor non-EU, and therefor customs taxes and a long wait for the delivery. Then I ordered the board and a black case only, so at arrival, I missed a DC, a Compact Flash card and a null-modem serial cable. I went to one of those big electronics market and bought the following:

  • Vivanco universal DC 7v-24v (I recommend setting it for 18v, depending on the number of devices you’ll be using, such as USB and mini-PCI stuff). Oh and be careful with the polarity of the board which you can find by looking down the FB18, and using the correct connector size, 2.1mm.
  • Sandisk CF Ultra II 4GB;
  • Null-modem serial cable (female-to-female);
  • Serial-to-USB adapter.

As I said, I also ordered a black case and I had an issue while assembling the board into it. The serial port hex nuts wouldn’t fit the case! Well, just remove them, insert the board, and attach them again. In the end, this is the result:

Board in the case

Board in the case

Front of "the machine"

Front of "the machine"

Size compared to the E71

Size compared to the E71

I recommend you install everything you need and test it before you put the board into the case, so you can avoid repeating the screw/unscrew process.

Now, let’s head for the installation.

  1. First, grab the alternate installer for the latest Ubuntu i386 (9.04 iso). Burn it.
  2. Plug your CF card into a USB card-reader and punch it in your PC/laptop.
  3. Boot from the CD and press F4. Select text-only system installation.
  4. Install Ubuntu into your CF. I recommend setting only one partition and not using swap as you don’t want to “burn” lifetime from your CF.
  5. Don’t install grub into the MBR of the first disk, but on the MBR of the CF.
  6. Reboot.
  7. Boot into your CF Ubuntu system and log-in.
  8. Install an ssh server. sudo apt-get install openssh-server
  9. Edit your /etc/network/interfaces and configure your network devices as you see fit.
  10. As you’re using your PC/laptop for the installation process, udev has persisted the currently existing network devices. You must remove all entries before putting the CF into the ALIX2D3 board, so that all Ethernet devices there are correctly named (eth0, eth1, eth2). Just issue echo “” > /etc/udev/rules.d/70-persistent-net.rules
  11. In order to protect the CF once more, edit your /etc/fstab and change relatime to noatime in the root line (/). Also, add the following lines:

none /tmp tmpfs nr_inodes=200k,mode=01777 0 0
none /var/tmp tmpfs nr_inodes=200k,mode=01777 0 0

Power off. Now, put the CF into the board and have fun through ssh. Enjoy 🙂