Boot Raspberry Pi from a 16MB SD card

Posted by Mike Redrobe | Posted in PC Hardware | Posted on 12-05-2014



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.

Comments (20)

[…] 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 […]

without usb pendrive:

how about instructions for boot to console?


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 ?

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

“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!

How’s the performance compared to running off SD?

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?

Quite interesting.

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

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

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.

How about uboot and the rest via network
or than jumpstart

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.

For Arch Linux, use /dev/sda5.

so big thx… 🙂

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


I’ve wrote a post on my blog recently how to boot from nfs:

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

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?

[…] 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 […]

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.

Write a comment