Plan 9 on Raspberry Pi

Jump to: navigation, search

The Plan 9 operating system has been made available as open source by Bell Labs since 1992. It is an experimental operating system specially targeted to developers. Since it has a small footprint it is a perfect candidate operating system for the Raspberry Pi. This is a rough script to install Plan 9 on e.g. a Raspberry Pi.

Obtaining the installation kit

Download the installation kit[1]. You might perform the unzip operation later:

gunzip 9pi.img.gz

Available partitions

You can run another Linux system, or boot from a live DVD, and have a USB stick (containing the distribution kit) and an (empty) SD card available. First check the available partitions on your system:

/dev/sdb1: UUID="E704-D4E9" TYPE="vfat" 
/dev/sdc: SEC_TYPE="msdos" LABEL="WEBKIT" UUID="22DA-36EB" TYPE="vfat"

Check the target device:

fdisk -l /dev/sdb
  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            8192    61497343    30744576    c  W95 FAT32 (LBA)

Note: Your environment might be different...

Install the Plan 9 system

Now install the Plan 9 operating system on the SD card:

umount /dev/sdb1

mount /dev/sdc /mnt/sdc

Check the source kit:

ls -l /mnt/sdc
total 598176
-rwxr-xr-x 1 root root 481976320 Jun 29 22:41 9pi.img
dd bs=1M if=/mnt/sdc/9pi.img of=/dev/sdb

or if you did not unzip the kit:

gunzip -dc /mnt/sdc/9pi.img.gz | dd bs=1M of=/dev/sdb

Caveat: all the data from the target SD card will be lost...

Partitions after the installation

fdisk -l /dev/sdb
  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63      120959       60448+   b  W95 FAT32
/dev/sdb2          120960     3782015     1830528   39  Plan 9


  1. Remark that you have still plenty of empty space on the target disk
  2. You could create other partitions like Raspbian in a multi-boot environment using GParted and dd
  3. Additional (data) partitions could be added as well

First boot

Now you can mount the SD card in a Raspberry Pi, and have a first boot. Do not forget to connect a keyboard, mouse, and a HDMI screen.

Activating the network

To enable DHCP networking you can choose another boot file:

cp /boot/cmdline-demo-net.txt /boot/cmdline.txt

You could customize both cmdline.txt and config.txt to tune your system to your requirements.

Serial port console access

You might try to have console access. See RPi Serial Connection.

dmesg |tail

screen /dev/ttyUSB0

Unresolved: we would require a getty daemon to get a console prompt...

Internet links


  1. Plan 9 for Raspberry Pi, Retrieved 16-11-2014