Fedora 13 May Support Btrfs System Rollbacks
Fedora 12 was just released this week, but features for Fedora 13 have been in planning long before this release made it out the door. In fact, it was last month that we began talking about features for Fedora 13. One of the features though that has just been proposed for Fedora 13 is rather interesting and that is system rollback support via Btrfs file-system snapshots.
While Btrfs is still under heavy development (though it has been in the mainline kernel for nearly a year) and it still has room for performance improvements, it does have a nice set of features like online volume growth, online defragmentation, transparent compression support, SSD optimizations, and copy-on-write snapshot support.
Chris Ball and Josef Bacik are looking to leverage the Btrfs snapshots support in Fedora 13 by introducing support for system rollbacks. Under their proposal, a yum plug-in would create a Btrfs snapshot before every yum transaction. Users could also create their own Btrfs snapshot at anytime. If one of the package upgrades has gone awry or another serious problem found, the user could reboot and select an earlier snapshot to boot. The Btrfs file-system snapshots are copy-on-write and non-destructive when rolling backwards and forwards between snapshots. However, this support wouldn't be ideal for an average end-user since they are snapshots of the entire file-system, thus inclusive of the /home/ directory by default. Switching back to an older Btrfs snapshot would also revert the user's data.
Implementing Fedora system rollback support via Btrfs snapshots would require patches to Palimpsest, yum, Btrfs, and GRUB. This work isn't done yet, so it might not make it into Fedora 13, but it's a real possibility that we will see this arrive with Fedora 13 early next year. Btrfs though will not be the default file-system in Fedora 13, so this feature will only be able to those that opt from using the default EXT4 file-system.