Re: Spurious "more than one current_mirror" error
EricZolf <[email protected]> Thu, 21 Sep 2023 19:21:56 +0200
| Newsgroups | gmane.comp.sysutils.backup.rdiff-backup.general |
|---|---|
| Organization | rdiff-backup.net |
| Message-ID | <[email protected]> |
Hi, On 21/09/2023 18:29, David Croll wrote: > Hi Eric, > > >> I'm disturbed by the fact that the path contains a blank, but your >> commands don't show any quoting or escaping. Is it really the whole >> command? > Fish has an auto-completion that, of course, escapes the spaces in file > and directory names. > > Properly, the command is > > for d in (cat /media/david/Backup\ 1\ TB/backupdirs) > > sudo rdiff-backup backup $d /media/david/Backup\ 1\ TB/$d > > end > >> What does `cat "/media/david/Backup Drive/backupdirs"` actually show? >> Could it be that it contains .purple multiple times? > cat /media..... shows this: > > david@ASUS ~> cat /media/david/Backup\ 1\ TB/backupdirs > Desktop > Documents > Games > Music > Pictures/Zeichnen_und_Malen > Pictures/Memes > .purple > .mozilla > snap/firefox/common/.mozilla/firefox/onotah21.default-1528902033143 > snap/firefox/common/.cache/mozilla/firefox/onotah21.default-1528902033143 > Templates > .thunderbird > Videos First, and I should have started with this, a more usual usage of rdiff-backup would be to have all directories backed-up in one repository with a command like: sudo rdiff-backup backup --include-globbing-filelist backupdirs2 \ /home/david /media/david/Backup\ 1\ TB/$d where backupdirs2 would contain something like /home/david/Desktop /home/david/Documents [etc...] - /home/david/* You can: 1. use a relative path instead of an absolute one (even `.`) 2. use `- **` as last entry 3. check the man-page for more details Now, if you really want to backup each directory separately, I didn't say anything. > I checked the backupdirs file with a hex editor, and there are no > non-printable characters. ".purple" is preceded with 0A (end of line), > the . is 2E, and ".purple" is immediately followed by another 0A. > > Using "sleep 2" > > for d in (cat /media/david/Backup\ 1\ TB/backupdirs) > > sudo rdiff-backup backup $d /media/david/Backup\ 1\ TB/$d > > sleep 2 > > end > > results in this, again: > > NOTE: Starting increment operation from source path .purple to > destination path /media/david/Backup 1 TB/.purple > ERROR: Either there is more than one current_mirror or the last backup > is not in the past. Aborting. > ERROR: Action backup failed on step run > > So super-disturbing that > > david@ASUS ~> sudo rdiff-backup backup .purple /media/david/Backup\ 1\ > TB/.purple > [sudo] password for david: > NOTE: Starting increment operation from source path .purple to > destination path /media/david/Backup 1 TB/.purple > > always works. > > The file system is btrfs (on both source and destination). Checking the > destination filesystem with gparted doesn't give me any error. Deleting > the rdiff-backup-data folder doesn't help. Deleting the entire contents > of .purple on the destination side and then, running the for loop, also > results in an error. We already had some weird behaviors with btrfs: https://github.com/rdiff-backup/rdiff-backup/issues?q=is%3Aissue+btrfs You could try to use `btrfsck` to check the file system(s) and see if it fixes your issue. I don't have a better suggestion currently beside: don't use btrfs for backups! KR, Eric > Perhaps the most disturbing discovery: Running rdiff-backup inside this > forloop, with an *empty* .purple directory on the source side, and a > non-existent .purple directory on the destination side, also results in > an error. > > What the funk... > > > David > > > >