There is the older Beaglebone with its guide to install Gentoo and the Beaglebone Black the newer one having HDMI output some other help can be found at

Figure 3.3. Beagle Bone


To have the board up and running a kernel and uboot the bootloader are required.

On New Beaglebone versions there is an embedded NAND flash where the x-loader and boot loader are. This however could become corrupt. In this case hold down the reset (or user) button during reset and it tries locate x-loader and bootloader on the SD card.

Old beagle bones do not have a NAND flash and boot just from the SD card.

The PC connects with one USB cable to the Beaglebone, however there is a USB hub on the board so it ends up via VCP (Virtual Com Port FTDI) to a console 115200 baud /dev/ttyUSB0. The second USB ends up at the microcontroller where the original Angström Linux distribution acts as memory device where the first (boot) partition of the SDcard holding all documentation appears.

The Gentoo documents ask to get kernel and bootloader sources and compile them creating and use a cross compiler. Alternatively this work can be avoided by taking already working bootloaders and kernels that once the system boots can be replaced. Therefore here a very quick guide:

A SD card with at least 4GB is required. First bootable partition has to be around 100MB FAT32 fdisk type c and bootable. The second partition takes the rest and is fdisk type 83 with ext4. It is not recommended to have a swap partition (= SD card killer)

To have a fast gentoo installation, copy all you found as MLO, u-boot.img, uEnv.txt, uImage from the original Angström distribution to a SD cards first bootable partition .

MLO, u-boot.img and uEnv.txt are the bootloader. uImage is the kernel. Gentoo advises that uEnv.txt should hold the following, however it boots also with what the file from Angström

loaduimage=run loaduimagefat; run mmcboot

The bootloader uboot does not need to setup the MBR since Beaglebone is more advanced than most PC's and has an internal ROM where a two stage u-boot bootloader can be installed see Just having the first partition setup already allows to test that. When attaching a terminal program as gtkterm (baudrate 115200 and ttyUSB0) it can seen that it boots and starts the kernel, however the kernel then will not find the root filesystem and init and therefore panic.


The kernel used is big an monolithic, this means just the uImage file is necessary and no kernel device driver files in /lib/modules are required

The second partition holds the root filesystem. Obtain and copy from Gentoo mirrors stage3 and portage-snapshot

Important is adjusting /etc/fstab so the kernel will find the root filesystem and init

To be able to login via serial link change in /etc/inittab

    s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100


    s0:12345:respawn:/sbin/agetty -L 115200 ttyO0 vt100

Instead of creating a root password delete it by putting


to /etc/shadow

The root password can be later set in the console using passwd

When done, plug SD card into Beaglebone and boot.

To really work with it, it needs to know the time otherwise things as updating and installing packages via emerge would fail. But there is no battery powered real time clock on the board, so set the time zone and set date and time first manually by date <MMDDhhmmYYYY> and then from Internet

emerge net-misc/ntp

rc-update add ntpd default

rc-update add ntp-client default

/etc/init.d/ntp-client start

/etc/init.d/ntpd start

Check the regular Gentoo setup steps from configure network, system logger, cron, keyboard setup, emerge missing packets and maybe think about distcc and crosscompilation.

Linurs Servernest startpage