I'm figuring out a failsafe upgrade scheme for my embedded Linux device.  I want to be able to upgrade the kernel and RFS, and have the system revert to an older image if the new image fails for some reason.  I can see how to do this if we always preserve a copy of the older images, but am wondering if there's a way to achieve this without 2 copies of the kernel and 2 copies of the RFS?
Any way to perform failsafe upgrade without having two images?
linux;upgrade;flash memory;remote management