Boot Raspberry Pi from a 16MB SD card

The Pi boots from SD card, and this normally means you have to have at least a 2GB SD card,
but you can instead use a small SD card and a USB pendrive, as I show here.

The Raspberry Pi only needs an SD card at bootup time, it can immediately hand over to a USB pendrive later, and here’s how:

Take one ancient 16MB SD card – yes, 16MB – not the 1000x larger 16GB cards we use nowadays !

You’ll also need a USB pendrive of 2GB or bigger (or usb HDD of course)

1) select your usb pendrive in win32diskimager instead of the sd card, and write the image
(e.g. 2GB raspbian:

2) copy all the pre-boot files (9mb) to the SD card
(I had to remove kernel_emergency.img from the normal boot files as that was 9mb in itself)

3) edit the cmdline.txt on the SD card to read /dev/sda2:

That’s it – all done, put SD card and USB pendrive into the Pi and boot up.

This entry was posted in PC Hardware and tagged . Bookmark the permalink. Follow any comments here with the RSS feed for this post. Post a comment or leave a trackback: Trackback URL.


  1. Gabriel says:

    That is great ! Does that mean that we could, after the system is booted up, remove the sd-card and use the sd port to flash other sd-cards ?

    • Mike Redrobe says:

      Yes you could do that – the SD card is only used for booting (its still mounted at /boot though)

    • bfesser says:

      “Pinky! Are you pondering what I’m pondering?” Setting up the Pi as a camera that saves photos out to the SD card in the ‘standard’ way!

  2. bfesser says:

    How’s the performance compared to running off SD?

  3. PapaRoni says:

    How about using more USB pendrives to boot to OpenElec, Retropie, RaspBMC and so on. Will this also work? Or connect a USB pendrive or diskdrive and use NOOBS for selecting the OS on the USB?

  4. Christian Nobel says:

    Quite interesting.

    What if using af harddisk instead of a USB stick – have you tried to measure the performance?

  5. jo says:

    hello im trying with the smallest sd i could find 512mb
    and a 2gb usb but its not working im just geting the initial loading screen (the rainbow square) do i need to delet the boot partition from the usb? im using the v1 pi

    • Mayank says:

      Hey Man, I just tested it with a 128 microSD & a 16 GB usb drive. It works just great. My steps are as follows (Win 8 / 7):

      – Download the latest image.
      – Copy the image to USB drive using Win32DiskImager
      – Remove the pen-drive & re-insert it.
      – “Boot” partition should be visible in “Computer”
      – Format your SD Card (MMC do not work).
      – Copy all the files from boot partition to your memory card.
      – Edit cmdline.txt in SD Card and replace content with this

      dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/sda2 rootfstype=ext4 elevator=deadline rootwait

      Put both on RPi and you should have it running in matter of seconds.

  6. luckyh says:

    How about uboot and the rest via network
    or than jumpstart

  7. silviu says:

    I’m using a 500 GB WD Elements Portable and the Raspberry Pi has much more CPU resources released, as flash takes a lot of CPU especially when writing. So much more snappier.

  8. Dustin says:

    For Arch Linux, use /dev/sda5.

  9. 1000io says:

    It works but, How can I expand the USB pendrive raspbian size? The .img is 2gb but my pen is 8gb.


  10. Mehmet says:

    I have found 8Mb card. And I can’t do this. Bad luck:(

  11. hELMI says:

    i did this boot (was quiet good) and i set the keyboard too in the console, but i cant do anything cause the mouse and keyboard doesnt communicates with pi in the graphycal function. leds are okay on both, but no reaction. why is that?

  12. Tijmen says:

    i did what you said and it worked!
    at least until some menu where my mouse and keybord didn’t work so couldn’t select anything.

  13. Jonathan Chetwynd says:

    without usb pendrive:

    how about instructions for boot to console?


2 Trackbacks

  1. By Boot from a 16MB SD card | Raspberry Pi on May 20, 2014 at 12:20 pm

    […] to make his Pi boot from something he’d found down the back of some prehistoric sofa. With a very minimal amount of work, he was able to put all the pre-boot files (9MB) for Raspbian on the SD card, put the boot image […]

  2. […] January 20, 2015: Mike Redrobe discussed on his blog how to do this in May 2014, with great instructions on how to do this under […]

Post a Comment

Your email is never published nor shared.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>