[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[rdiff-backup-users] Problems with backup on encfs
From: |
ruttmannn |
Subject: |
[rdiff-backup-users] Problems with backup on encfs |
Date: |
Fri, 30 Apr 2010 12:46:35 +0200 |
Hi
using rdiff-backup for years now, I currently testing doing backups stored on
encfs to support offsite storage. Unfortunatly this results in some unexpected
warnings and errors and I have no idea where are they coming from.
The test scenario is easily described:
I just do a backup on a localy attached storage, into a encfs mounted directory.
$ encfs /mnt/backup/.cryptdir /mnt/backup/backup
$ rdiff-backup -v4 --no-hard-links / /mnt/backup/backup/x31
This shows the following warnings, thousands of them, but the numbers are only
partly incrementing by one:
Warning: listattr('/mnt/backup/backup/x/bin/rdiff-backup.tmp.8'): [Errno 2] No
such file or directory
Warning: listattr('/mnt/backup/backup/x/bin/rdiff-backup.tmp.10'): [Errno 2] No
such file or directory
Warning: listattr('/mnt/backup/backup/x/bin/rdiff-backup.tmp.13'): [Errno 2] No
such file or directory
Warning: listattr('/mnt/backup/backup/x/bin/rdiff-backup.tmp.14'): [Errno 2] No
such file or directory
Our good old friend strace shows tells us this:
lstat64("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10", 0xbfc85a7c) = -1 ENOENT
(No such file or directory)
symlink("gawk-3.1.6", "/mnt/backup/backup/x/bin/rdiff-backup.tmp.10") = 0
lstat64("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10", {st_mode=S_IFLNK|0777,
st_size=10, ...}) = 0
readlink("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10", "gawk-3.1.6"..., 1023)
= 10
llistxattr("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10", (nil), 0) = -1
ENOENT (No such file or directory)
write(4, "Warning: listattr('/mnt/backup/ba"..., 105) = 105
lchown32("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10", 0, 0) = 0
rename("/mnt/backup/backup/x/bin/rdiff-backup.tmp.10",
"/mnt/backup/backup/x/bin/awk") = 0
Another strace block for a file WITHOUT error looks like that:
lstat64("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
0xbfdb83dc) = -1 ENOENT (No such file or direct
ory)
open("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 7
fstat64(7, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
fstat64(6, {st_mode=S_IFREG|0444, st_size=1726, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7c03000
read(6, "# $Xprint.org: HPLJ4family model-"..., 131072) = 1726
read(6, ""..., 129024) = 0
fstat64(7, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7a30000
read(6, ""..., 131072) = 0
write(7, "# $Xprint.org: HPLJ4family model-"..., 1726) = 1726
close(7) = 0
munmap(0xb7a30000, 4096) = 0
lstat64("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
{st_mode=S_IFREG|0600, st_size=1726, ...}) = 0
listxattr("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
(nil), 0) = 0
listxattr("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
0x890b468, 0) = 0
close(6) = 0
munmap(0xb7c03000, 4096) = 0
chown32("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
0, 0) = 0
chmod("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
0444) = 0
gettimeofday({1272619573, 87733}, NULL) = 0
utimes("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
{{1272619573, 0}, {1127524337, 0}}) = 0
rename("/mnt/backup/backup/x/etc/X11/xserver/C/print/models/HPLJ4family/rdiff-backup.tmp.4210",
"/mnt/backup/backup/x/etc/X11/xserver/C/print/
models/HPLJ4family/model-config") = 0
Aha, it seems like the file with the warning is a symlink. I checked a few
hundred files in the strace log: Every file resulting in a warning showed the
symlink syscall. And I checked a few of this files: Yes, they are symlinks.
This lead me to some bug reports like this:
http://www.mail-archive.com/address@hidden/msg164377.html
This bug report is for 1.2.2
And this changelog entry:
Workaround for broken support for symlink extended attributes in pyxattr <
0.2.2. Thanks to Leo Bergolth for reporting the issue. (Andrew Ferguson)
Tested with rdiff-backup 1.2.8 and 1.3.3 and pyxattr 0.4 and 0.5. I found no
current open bugs for that versions.
Okay, it's only a warning. But it makes me curious, because I never saw this
before in years. And then I did compare/verify the backup and that resulted in
more warnings:
$ rdiff-backup -v4 --compare-hash / /mnt/backup/backup/x
Warning: Metadata file has no digest for etc/pam.d/chfn, unable to compare.
Warning: Metadata file has no digest for etc/pam.d/chpasswd, unable to compare.
Warning: Metadata file has no digest for etc/pam.d/chsh, unable to compare.
Warning: Metadata file has no digest for etc/pam.d/groupadd, unable to compare.
...
And that one does not look good either:
$ rdiff-backup -v4 --compare-full / /mnt/backup/backup/x
Warning: listattr('/mnt/backup/backup/x31/bin/awk'): [Errno 2] No such file or
directory
Warning: listattr('/mnt/backup/backup/x31/bin/gawk'): [Errno 2] No such file or
directory
Warning: listattr('/mnt/backup/backup/x31/bin/igawk'): [Errno 2] No such file
or directory
Warning: listattr('/mnt/backup/backup/x31/bin/pgawk'): [Errno 2] No such file
or directory
...
Okay, everything is a warning only and if I switch to -v3 it is silent. But -v4
used to list only very few files, that did change in size while the backup was
running. I considered this very valuable information. Now -v4 is more or less
useless. And more importantly I fear that there might lurk some deeper problems
in there.
This leads to some final question I cannot currently answer and therefor wrote
this mail:
Why does a backup on an encfs behave diffrently than on a normal ext3?
Why does -v4 gives so much warnings now?
cu
john
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [rdiff-backup-users] Problems with backup on encfs,
ruttmannn <=