[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Spurious "more than one current_mirror" error
From: |
EricZolf |
Subject: |
Re: Spurious "more than one current_mirror" error |
Date: |
Thu, 21 Sep 2023 19:21:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 |
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