Am Wed, 19 Nov 2014 16:58:16 +0100 schrieb Jakob Schürz <wertsto...@nurfuerspam.de>:
> Hi there! > > I'm new on btrfs, and I like it :) Me too :) . (I've been using it since May.) > But i have a question. I have a existing backup on an external HDD. This > was ext4 before i converted it to btrfs. > And i installed my debian new on btrfs with some subvolumes. (f.e. home, > var, multimedia/Video multimedia/Audio...) > > On my backup there are no subvolumes. > > Now i wrote a script to take local snapshots on my laptops HDD an mirror > this snapshots with btrfs send/receive to the external HDD. Yeah, I also recently made the switch to btrfs send/receive, and I just love being able to do incremental full system backups in less than two minutes (it's also efficient enough that I backup my (borrowed) laptop over WLAN). So from me a big thanks to the btrfs devs :) ! But to get to the questions: > An i don't know, how to do, to make the inital snapshot on the external > HDD. I want to use the existing data there, so I don't have to transmit > the whole bunch of data to the external drive, which exists there > already... Yeah, I had that problem, too, with my old rsync based backups; see below. > What happens, if i make the same structure on the external drive with > creating subvolumes and »cp --reflink«, give this subvolumes the correct > names, and fire a »btrfs send«? Do you mean cp --reflink from the original backup to the new structure? That won't help. Again, see below. > Or is the best (ONLY???) way, to make an initial snapshot on the > external drive and delete the old backup there? I couldn't think of any other way than doing an initial snapshot + send that transferred the entire subvolumes, then doing incremental sends from there. Here's my understanding as a complete non-expert: The problem is that you need a parent snapshot, which needs to be on *both* the source *and* target volumes, with which to be able to generate and then receive the incremental send. Currently, your source and target volumes are independent, so btrfs can't infer anything about any differences between them; that is, while the data may be related, the file systems themselves have independent "histories", making it impossible to compare them via their data structures. This is why you need to make an initial send: to give both volumes a common frame of reference, so to speak. So I bit the bullet and went through with it, and am keeping the original backups until enough snapshots have accumulated in the new backup location (both of my backups are on the same file system in different subvolumes). > greetings > jakob HTH -- Marc Joliet -- "People who think they know everything really annoy those of us who know we don't" - Bjarne Stroustrup
signature.asc
Description: PGP signature