There are two major steps in installing Debian on your Bifferboard:
- Kernel installation on the Bifferboard.
- Rootfs installation on a USB device or an SD/MMC card.
Kernel installation on the Bifferboard
Download a pre-built kernel binary image:
- vmlinuz-2.6.30.5-bifferboard-ipipe (909K)
- vmlinuz-2.6.32-bifferboard (906K) – EXPERIMENTAL
The kernel is compiled with (almost) all possible modules, so your Bifferboard should be able to easily use any device supported on Debian. Once you have downloaded the kernel image, you can then upload it to the Bifferboard, as advised at the Biffboot Wiki page. You have two options to upload the kernel – via the serial port or over the ethernet. Both work well.
Example: Assuming that you have the Bifferboard SVN repository checked out in “~/biffer/svn“, you have downloaded the “vmlinuz-2.6.30.5-bifferboard-ipipe” kernel image in “/tmp“, your Bifferboard has a MAC address of “00:B3:F6:00:37:A9“, and you have connected it on the Ethernet port “eth0” of your computer, here are the commands that you would need to use:
cd ~/biffer/svn/utils sudo ./bb_eth_upload.py eth0 00:B3:F6:00:37:A9 /tmp/vmlinuz-2.6.30.5-bifferboard-ipipe
Rootfs installation on a USB device or an SD/MMC card
Once you have the kernel “installed” on the Bifferboard and ready to boot, you need to prepare a rootfs media. This is where your Debian installation is stored and booted from. Download one of the following pre-built rootfs images (default root password is “biffroot”):
- Debian “lenny” for Bifferboard – minimal (download size 95M, uncompressed size 346MB).
- Debian “lenny” for Bifferboard – developer (download size 129M, uncompressed size 468MB).
The “developer” version adds the following packages: build-essential, perl, links, manpages, manpages-dev, man-db, mc, vim. Note that for each image you will need at least 100MB more free on the rootfs media.
In order to populate the rootfs media, you have to do the following:
- Create one primary partition, format it as “ext3″ and then mount the USB device or SD/MMC card.
- Extract the archive in the mounted directory.
- Unmount the directory.
Example: Assuming that you have the Bifferboard SVN repository checked out in “~/biffer/svn“, you have downloaded the “minimal” rootfs image in “/tmp“, and you are using an SD/MMC card under the device name “/dev/mmcblk0“, here are the commands that you would need to use:
sudo bash mkdir /mnt/rootfs cd ~/biffer/svn/debian/rootfs ./format-and-mount.sh /dev/mmcblk0 /mnt/rootfs tar -jxf /tmp/debian-lenny-bifferboard-rootfs-minimal.tar.bz2 -C /mnt/rootfs umount /mnt/rootfs # CHANGE THE DEFAULT ROOT PASSWORD!
When you have the USB device or SD/MMC card ready and populated with the customized Debian rootfs, plug it in Bifferboard, attach a serial cable to Bifferboard, if you have one, and boot it up.
That’s it. Enjoy your Bifferboard running Debian.
Update: As already mentioned in the comments below, you would probably need to set up swap too. Here is my recipe:
# change "128" (MBytes) below to a number which suits your needs dd if=/dev/zero of=/swapfile bs=1M count=128 mkswap /swapfile swapon /swapfile # enables swap right away; disable with "swapoff -a" echo '/swapfile none swap sw 0 0' >> /etc/fstab # enables swap at system boot
Using a file for swap on a 2.6 Linux kernel has the same performances as using a separate swap partition as discussed at LKML.
P.S. If you want to build your own customized Debian rootfs image for Bifferboard – checkout the Bifferboard SVN repository and review the instructions in “debian/rootfs/images.txt“.
References:
- dpkg: extract specific file.
- Other similar Debian projects for Bifferboard – Bifferboard Wiki “Home > ’Desktop’ Linux Distributions > Debian” page.
- Pinouts for the standard single USB Bifferboard.
- Bifferboard with 2 USB ports – hardware specification and pinouts.

[...] partitioned in two parts – /dev/sda1 (1GB) and the rest in /dev/sda2. Once you have installed Debian on Bifferboard, here are the commands which further transform your Bifferboard into a secure [...]
it’s very important to create a swap partition for debian, otherwise your kernel will keep killing programs because 32 Megs of RAM is not very much.
HowTo:
Resize sda1 on ANOTHER Linux machine using a program of you choice (gparted, parted, whatever)
Create a swap partition sda2
Boot up debian, execute swapon /dev/sda2
To make sure the swap partition is mounted after a reboot, add this to your /etc/fstab :
/dev/sda2 none swap sw 0 0
You are definitely right. Very often you need swap, even for an apt-get upgrade of “locales”. I’ve added a note about it in the article.
Hi all,
has anyone tried to run Java on a bifferboard? Are there any expierence? Does debian lenny already contain a java installation?
Best regards
Andreas
You can install Java runtime on your Debian very easily by executing the following:
You already started a thread about Java at the Bifferboard mailing list and as suggested there, you can also try JamVM, which is a lighter Java runtime implementation, by executing:
P.S. Please post support inquiries about Debian at the mailing list. I didn’t reply in this current thread, because it wasn’t about Debian, nor was asked for this OS.