You can run multiple Linux distributions on a single Raspberry Pi by using a multi-boot manager like PINN, NOOBS, or BerryBoot, or by manually partitioning your SD card or USB drive. This guide explains the practical methods, how to choose between them, and how to avoid common pitfalls.
Why Run Multiple Distros on One Pi
Running several Linux distributions on one Raspberry Pi is useful for testing, learning, or dedicating different systems to different tasks. For example, you might keep Raspberry Pi OS for daily use, install Ubuntu Server for a lightweight web server, and add LibreELEC for a media center. Instead of swapping SD cards or re-flashing the same card each time, a multi-boot setup lets you pick your system at power-on.
The main trade-off is storage: each distro needs its own partition, and the Pi boots from a single card or drive. You also need a boot manager that can present a menu and load the selected kernel.
How Multi-Boot Works on the Pi
Unlike a typical PC with a BIOS or UEFI, the Raspberry Pi’s boot process is handled by the GPU and the firmware on the SD card. The first-stage bootloader looks for a file called config.txt and a kernel image. A multi-boot manager replaces that default boot flow with its own menu program, which then loads the kernel of whichever distro you choose.
The most common approach is to use a boot manager that writes a small partition for itself and then creates separate partitions for each OS. When you power on, the manager displays a list of installed systems. Selecting one sets the appropriate kernel and root filesystem, then boots it. This is similar to GRUB on a PC, but tailored to the Pi’s firmware.
Method 1: PINN (Recommended)
PINN is a fork of NOOBS (New Out Of Box Software) that is actively maintained and supports a wide range of distributions. It is the easiest way for beginners to set up multiple distros.
- Download the PINN image from its official GitHub releases page (the file is named
PINN_lite.zipor similar). - Format an SD card (at least 16 GB, ideally 32 GB or more) as FAT32 using the official Raspberry Pi Imager or SD Card Formatter.
- Extract the PINN files onto the card so that
bootcode.binandconfig.txtare at the root. - Insert the card into the Pi and power it on. PINN will show a graphical menu.
- Select the distributions you want (for example, Raspberry Pi OS, Ubuntu, LibreELEC) and click Install. PINN will download and partition automatically.
- After installation, you can hold Shift during boot to return to the PINN menu and add or remove OSes.
PINN also supports USB boot on Pi 3 and later, so you can install to a USB drive instead of an SD card for better performance and reliability.
Method 2: BerryBoot
BerryBoot is another popular multi-boot loader that works on most Pi models. It is lighter than PINN and can boot from a network or a local drive.
- Download BerryBoot from its official website.
- Write the BerryBoot image to an SD card using
ddor a tool like Etcher. - Boot the Pi; BerryBoot will ask you to choose a storage device (SD card or USB) and then show a list of distros to install.
- Select the ones you want and let it download and install them.
BerryBoot is less actively developed than PINN, but it still works for many common distros. It also allows you to set a default OS and a timeout for automatic boot.
Method 3: Manual Partitioning and GRUB
For advanced users, manual partitioning gives full control. You can create multiple ext4 partitions on the SD card or USB drive, install each distro to its own partition (using a chroot or a tool like debootstrap), and then set up a boot menu using GRUB for ARM or a custom script.
This method is time-consuming and error-prone, but it avoids the overhead of a boot manager and lets you customize the boot process. It is only recommended if you need a specific setup that PINN or BerryBoot cannot provide.
Choosing the Right Distros
Not every Linux distribution is available for the Raspberry Pi, and some are better suited to multi-boot than others. Here are common choices:
- Raspberry Pi OS – The official OS, best for general use and compatibility.
- Ubuntu Server / Desktop – Good for servers or a more familiar Ubuntu environment.
- LibreELEC / OSMC – Lightweight media center distros that boot quickly.
- Manjaro ARM – Arch-based, rolling release, good for tinkerers.
- Kali Linux – For security testing (note: not for beginners).
Before installing, check that the distro provides an image compatible with your Pi model (e.g., Pi 4 vs Pi 5). Some distros may not support the newest Pi at launch.
Common Problems and How to Fix Them
Multi-boot setups can fail for a few reasons:
- Not enough storage – Each distro needs several GB. Use a 32 GB card or larger, and consider a USB SSD for speed.
- Corrupted SD card – Always safely eject the card and use a quality card (Class 10 or A1).
- Boot menu not appearing – On PINN, hold Shift during boot. On BerryBoot, press a key when prompted.
- Distro fails to boot after selection – Ensure the distro is compatible with your Pi model and that you have the latest firmware (run
rpi-eeprom-updateon Raspberry Pi OS). - Wi-Fi not working on one distro – Some distros require additional drivers or firmware. Check the distro’s documentation.
Performance and Storage Considerations
SD cards are slower than SSDs and have limited write endurance. If you plan to run multiple distros frequently, consider booting from a USB SSD. The Pi 4 and Pi 5 support USB 3.0, which gives much faster read/write speeds. For a multi-boot setup, a 64 GB or 128 GB USB drive is a good balance of capacity and cost.
Each distro will occupy its own partition, so plan your storage accordingly. For example, Raspberry Pi OS with desktop needs about 8 GB, Ubuntu Server about 5 GB, and LibreELEC about 2 GB. Add a few GB of headroom for updates and user data.
Frequently Asked Questions
Can I dual-boot Raspberry Pi OS and Ubuntu?
Yes, PINN and BerryBoot both support installing Raspberry Pi OS and Ubuntu on the same card. Just select both during installation. You will see a menu at boot to choose which one to start.
Will multi-boot slow down my Pi?
No, the boot manager only adds a few seconds to the boot time. Once the OS is loaded, performance is identical to a single-boot setup. The main factor is the storage speed, not the boot manager.
Can I use an external USB drive instead of an SD card?
Yes, on Pi 3 and later you can boot entirely from USB. PINN and BerryBoot can install to a USB drive. This is recommended for better reliability and speed.
How do I remove a distro from the boot menu?
With PINN, hold Shift during boot to enter the recovery menu, then select the OS you want to remove and choose uninstall. With BerryBoot, you can edit the berryboot.conf file or use the menu options.
Can I run 64-bit and 32-bit distros side by side?
Yes, as long as your Pi model supports 64-bit (Pi 3 and later). PINN and BerryBoot handle both architectures. Just choose the appropriate image when installing.
What is the difference between NOOBS and PINN?
NOOBS was the official installer from the Raspberry Pi Foundation, but it is no longer maintained. PINN is a community fork that adds more distros, better compatibility, and ongoing updates. For new setups, PINN is the better choice.
Related
General steps for current mainstream versions; menus can differ by device and version. See the disclaimer or report an error.
More in this bed
- TV vs Computer Monitor: Key Differences
- Fix iOS 13 Camera Not Working: 9 Real Fixes
- How to Fix a Frozen PC: 9 Steps That Work
- iPhone GPS Not Working? Fixes That Actually Help
- How to Create 3D Photos on Facebook
- Show the Developer Tab in Word: Step-by-Step