Posts: 46
Joined: Wed Apr 17, 2013 8:27 pm

How to partition copy SD card - NOOBS

Mon Apr 13, 2015 12:21 pm

My question is (read below) Is there a way to do what rpi-clone does for 2 partitions, for NOOBS. And I am surprised no one has come up with one. I have a need to clone class SD cards quickly, not 5-10 mins a piece. I also want to be able to build on 8 GB cards, and rsync to 4 GB cards as rpi-clone can. The key is sizing and building the partitions on a new SD card. rpi-clone does boot (FAT) in a set size, and then takes up the rest of the SD card for the linux partition.


I have been using the Bill W's rpi-clone for a long time. I have tried to modify it for NOOBS with no success (I did have limited success, but not moving from different size SD cards).

I do a lot of class works and have an SD master (currently only Raspbain install so I can use rpi-clone). I don't want to create an image of 8 or 16 GB and work on 5-20 SD cards for copying, which takes hours. I have used rpi-clone to keep one master, move to copy one, enhance the class, then copy back to all the other cards. I have also modified rpi-clone to rsync to a remote drive so I can do this remotely.

I can modify the rpi-clone as needed, if I could just build the partitions. That is use dd, sgdisk or some other tool to just copy the partitions and them mount them. After that, it is a matter of rsync which rpi-clone can do.

Please let me know the details (I saw the NOOBS explained on Github) of how i might be able to copy a NOOBS partitions to a new card without having to DD the whole thing

thanks samighi11

User avatar
Posts: 156
Joined: Wed Jan 21, 2015 11:20 pm
Contact: Website

Re: How to partition copy SD card - NOOBS

Wed Apr 15, 2015 4:58 am

All you need is: 1st fat32 partition which has bootcode.bin, which would load start.elf in that partition (or recovery.elf in case of noosbs). noobs now requires a settings partition as partition #3. It reads that to see if any OS has already been installed, and if so, does a soft-reset and loads the partition mentioned in the installed_os.json file (within the settings) partition to start the boot process.

That's what I did for my noobs based multi-boot. I just have multiple boot partitions in the second partition (#2), for booting individual OSes. And i add entries to the installed_ps.json to indicate which OS to boot when I start up the Pi.

Return to “Advanced users”