On 08/11/2015 01:27 PM, Chris Murphy wrote:
The other context for snapshots are system rollbacks, which is on a sliding continuum between stateless vs stateful systems. So you can get certain aspects of statelessness with snapshots, with an otherwise stateful system. This is how Windows has done updates for a long time now, and snapper, and Fedora Atomic (rpm-ostree) work. The underlying technical details of how the snapshot is achieved are dissimilar, but the basic idea is the same which is you have multiple trees and can revert to previous states. So maybe it's better to call these rollbacks in terms of "user selectable stateful states" haha. Whereas statelessness is like a system reset: such as what we find on mobile devices, and since Windows 8. Is restoring an rsync backup to a currently running system a rollback? It's not atomic, and unless you first backup the current state you can't then do a rollforward after you've done the rollback because you've overwritten the current state with the backup. And since the overwrite happens with in-use files, it's not atomic. Any mistakes and it can easily implode the system in a way that you can't go forward or backward to get to a bootable system and you're in diagnose and repair mode. NTFS shadow copy, snapper+Btrfs (or LVM thinp), and rpm-ostree are all atomic rollbacks. I think it can be argued that rollbacks imply the expectation of atomicity. Otherwise you'd just say "restoring from backup" or "doing a system restore/rebuild from backup".
Thanx Chris for this elucidation. However, it is still not clear how one can do an atomic rollback when the currently booted system and perhaps logged in user has (have) already modified some files. How does one proceed then? Save the files modified since last backup or snapshot, do the restoration/ rollback, and then go through the tedious process of comparing the just saved files against the ones brought by rollback? How does one proceed in such a situation? -- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines Have a question? Ask away: http://ask.fedoraproject.org