The Raspberry pi is one of the boards with the highest performance/price ratio you can find on the web. There are so many awesome projects you can do using the Linux potential and the GPIO ports. After installing the well known Raspbian you might have realized that the system was a bit to heavy. Instead of trying the top-bottom approach unistalling programs and speeding up the boot process by removing useless commands in the rcS file, you should try to create your minimal Linux Operative System. A very basic Linux system can work within 5 Mb of RAM.
It’s worth pointing out that this tutorial is just a sequence of commands I’ve used to fulfill the objective of creating a minimal distribution for the Raspberry Pi. If you are interested about Linux and/or embedded systems please check out the reference section at the bottom of each page for further informations.

The first step in designing and implementing an embedded linux system can be carried out by defining the appropriate system components. So sit down and write what you need. If you don’t have any idea yet, thanks to BusyBox, you will have an exhaustive list of packages to choose from.

In order to simplify the overall process we will use a powerfull tool called Buildroot. You can find more information in the official website. In short, Buildroot simplifies the process of building a complete Linux system for an embedded system, using cross-compilation. It is able to generate a cross-compilation toolchain, a root filesystem, a Linux kernel image and a bootloader for your target, which is, in our case, the Raspberry Pi.

Here are the main parts of the tutorial:

What you will need

Here are the ingredients for this tutorial:

  • A Raspberry Pi Model B.
  • SD Card (4GB or greater)
  • Power supply for your Pi & a Micro USB cable
  • A monitor with the HDMI input port