Originally posted by Bucic
View Post
But about backups, there are several things Btrfs supports there. First off is snapshots ? cheap to make, yet complete subvolume copies thanks to copy-on-write. Snapper makes them and cleans them automatically with a cron job. YaST and zypper also make pre/post snapshots automatically, too, to allow you to both check what was changed during the session and to roll back changes. On Gentoo I have made a script for myself that creates pre/post snapshots on every non-pretend invocation of emerge for the same reason.
Next we have RAID, of course. Btrfs generally best supports simple mirroring (RAID5/6 are still being worked on IIRC), so that if you have two disks, if one suddenly dies you still have the other with the exact same data (and/or metadata, RAID applies to those independently; very useful in my case, where I have a small SSD and a large HDD ? I couldn't mirror the whole HDD contents on the SSD, but I did it with the metadata, and still have space for new data on the SSD).
And then you have btrfs send/receive, which can copy a subvolume/snapshot to another device, and also synchronise it once the original changes (without recopying the entire thing), which means that you can have manual backups on external storage that way. These copies are accessible like any other regular Btrfs file system (except they're by default read-only). So if you want to do something potentially dangerous and want to make a manual full backup, this is the way to go.
Comment