I working on replacing an unstable btrfs snapshot based backup system. One of the option was to go ZFS but it's not natively in the kernel. XFS was reliable for me since 10 years but as my research shows it cannot do snapshots on it's own, people are using it in conjunction with LVM.
http://www.tecmint.com/take-snapshot-of-logical-volume-and-restore-in-lvm/
Now my biggest problem is that the snapshot (subvolumes) need a fix size also this seems to me that when you give 1G to a snapshot (no matter if it needs that much it will eat up unnecessarily that space).
Also if the snapshot size too small or the space on the xfs partition runs out I ran into all sorts of trouble:
/dev/backup-vg/snap1: read failed after 0 of 4096 at 1073676288: Input/output error
/dev/backup-vg/snap1: read failed after 0 of 4096 at 1073733632: Input/output error
/dev/backup-vg/snap1: read failed after 0 of 4096 at 0: Input/output error
/dev/backup-vg/snap1: read failed after 0 of 4096 at 4096: Input/output error
/dev/backup-vg/snap2: read failed after 0 of 4096 at 1073676288: Input/output error
/dev/backup-vg/snap2: read failed after 0 of 4096 at 1073733632: Input/output error
/dev/backup-vg/snap2: read failed after 0 of 4096 at 0: Input/output error
/dev/backup-vg/snap2: read failed after 0 of 4096 at 4096: Input/output error
How to solve this? Anyone knows a good case study/howto for implementing LVM based backup systems?