bradford bio photo

Twitter LinkedIn Github Stackoverflow

It finally arrived! I woke up last week to find that there was a small box waiting for me to open.

f19161728

f19128968 f19115648

It was packaged surprisingly well. I’ve never purchased a dev kit before, but this was packaged better than any retail gadget I’ve purchased. Very impressed.

Installing Ubuntu

I originally wanted to install Gentoo, however I really didn’t want to go through the work of learning how to compile for this device,especially considering Marvel has already included an Ubuntu image already optimized for the device.

Install was a pain, only because I didn’t realize that the plug was already set up with Ubuntu installed! I made a few stupid moves and found myself having to start over.

The Marvel documentation is a good place to start if you’re trying to install Ubuntu on the SheevaPlug. All the files and documentation you need are found on the SheevaPlug Dev Kit page.

Installing Ubuntu consisted of using the USB serial connection (I used PuTTY, be sure to install the USB driver as directed in the documentation and connect at 115200) to talk to the Plug, installing a tftp and nfs server on my linux image, telling the Plug to go to the tftp server to grab the image that would allow it to boot from nfs and finally allow me to install the Ubuntu image onto the device. It really took me hours, since I ran into so many stupid issues caused by my ignorance of using tftp and nfs.

I made the silly mistake of doing a dist-upgrade through aptitude. I eventually installed the Ubuntu image all over again because this made the device really unstable.

It appears that when you boot off NAND, the OS is loaded into RAM as a ramdisk. That’s why some directories (like /var/apt/cache) are cleared after a reboot. Because of this, I followed the openplug.org walkthrough on installing the OS onto my 4GB class 6 SDHC card. The result: bootup is much faster along with generally better performance all around.

My next post will be about setting up the Plug as my LAMP server (well, now it’s my LLMP server).