We are using Raspberry Pis model 3B in some remote deployed products, each one is running a Raspbarian OS image. I'd like to investigate a software update scheme that would allow dual OS partitions, so the system can revert in an automated way to the previous partition if the update fails for some reason. I had implemented such a system before on another custom ARM Linux product, we used a modified boot loader that kept track of the state of the boot process in combination with a hardware watchdog. Any software updates were applied to the non active partition, and the system would try and boot into that partition, but boot into the previous working partition if booting into the newly updated partition didn't work for some reason.

Implementing all of the above however was a lot of work, so I'd like to avoid doing all that again for the Raspberry Pi, if there's any existing software out there that could do this for us.

1 Answer 1


You could use PINN, which allows independent installation of multiple OS, and enables switching between them.

The latest version has options to clone an OS (although I have never tried this).

Another alternative is to have 2 root partitions. It is possible to switch between the 2 OS by a simple edit on cmdline.txt. This does require the OS to share a boot partition, and thus a common kernel, so updates which install a new kernel/firmware are more complex.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.