zfs q regarding backup strategy
tech-lists at zyxst.net
Sat Oct 2 23:21:34 UTC 2021
On Fri, Oct 01, 2021 at 10:28:16PM +0100, Steve O'Hara-Smith wrote:
>On Fri, 1 Oct 2021 15:14:08 +0100
>tech-lists <tech-lists at zyxst.net> wrote:
>> What I'm looking for is something (ideally) written in sh. Or even perl.
>> But even before that, need to understand incremental backups properly.
>> Basically the backup needs to be (effectively) write-only. By that, I
>> mean only added to.
> With zfs send every stream is a send up to some 'target' snapshot,
>a full stream is the complete history while an incremental stream is from
>an earlier 'source' snapshot.
> It is therefore necessary for any successful incremental backup
>system to know what the last snapshot sent was so that the next cycle can
>start by creating a new snapshot and sending the increment from the last
>sent to the latest. On the receiving end the options are to either store
>each send as a file named in such a way as to make it obvious what order to
>process them in should restore be needed or (more usefully) to use zfs recv
>to load them into filesystems in a pool on the receiving machine. If you do
>this there will be no pruning of the received snapshots unless you set
>something up to do it.
OK. if I think I understand correctly then if we need to keep everything then
I'll need to keep every incremental snapshot.
Let's say there are 3 files in a zfs dir 1, 2 & 3
full backup happens on day 1, all three files are fully backed up
first snapshot happens on day 2: theres nothing added nothing removed because
nothing changed at source
second snapshot happens on day 3, file 2 disappears at source so the
difference is this file is not there but the other two are.
third snapshot happens file 2 of the same name appears at source but has
A month (30 days) later someone looks for file 2 as it was on day 1, and
it's not the one they expected on the source. So I have to get it from
the backup somehow. In order to do this, and given that when I'm looking
for this I might not know *when* file 2 was deleted from the source, then
changed and then added, do I have to keep every single
snapshot? If this is the case, then how can I scan through the snapshots
looking for the right file? there may be thousands of snapshots.
Or can I incorporate or expire the snapshots into the full backup and
tell it that I want to look back to day 1 and retreive file 2? The
reason I'm thinking this might be possible is via zfs redundancy.
copies=3 that sort of thing. Like a time machine but for a backup, I
Or some other method that I've not understood (there's lots about zfs I
don't understand) or haven't read about yet?
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 833 bytes
Desc: not available
More information about the freebsd-questions