[Dar-support] dar creating corrupted archives
For full, incremental, compressed and encrypted backups or archives
Brought to you by:
edrusb
|
From: Paul N. <ma...@pa...> - 2025-12-16 08:21:30
|
affected/installed dar versions: dar-2.7.12-bp156.1.4 and
dar-2.7.15-bp160.1.3 from official openSUSE repositories
openSUSE Leap 15.6 and openSUSE Leap 16.0
Hello,
dar (on some of my backups, not all) creates corrupted archives:
ls and dar -t output (dar -l same output)
# ls -l backup-roothome*
-rw------- 1 root root 30 15. Dez 10:14 backup-roothomeDataBase
-rw------- 1 root root 28427612 15. Dez 10:14 backup-roothomeFull.1.dar
-rw------- 1 root root 68 15. Dez 10:14 backup-roothomeFull.1.dar.sha1
-rw------- 1 root root 40873 15. Dez 10:14 backup-roothomeFull.cat.1.dar
-rw------- 1 root root 72 15. Dez 10:14 backup-roothomeFull.cat.1.dar.sha1
(0)(0)xxx:/backup # dar -t backup-roothomeFull
Final memory cleanup...
FATAL error, aborting operation: Cannot open catalogue: incoherent catalogue structure
(2)(0)xxx:/backup # dar -t backup-roothomeFull.cat
Final memory cleanup...
FATAL error, aborting operation: Cannot open catalogue: incoherent catalogue structure
checksums are ok.
exact command run:
dar -c /backup/backup-roothomeFull -@ /backup/backup-roothomeFull.cat
-R //.localbackup-snapshots/localbackup-20251215-100708 -zbzip2:9 -m 0
-v -D -N -w -Q --hash sha1 --user-comment '%h %d %c' --retry-on-change
3 -g"root" -P "*/.Trash*" -P ".Trash*" -P "*/.mozilla/*/[Cc]ache" -P
"*/.opera/[Cc]ache*" -P "*/.pan/*/[Cc]ache" -P "*/.thumbnails" -P
"*/.beagle" -P "root/.opera/" -P "root/.cache/" -P
"root/clamav-quarantine/" -an -Z "*.dar" -Z "*.crypt" -Z "*.arj" -Z
"*.bz2" -Z "*.bz" -Z "*.Z" -Z "*.tgz" -Z "*.taz" -Z "*.cpio" -Z "*.deb"
-Z "*.gtar" -Z "*.gz" -Z "*.lzh" -Z "*.lhz" -Z "*.rar" -Z "*.rpm" -Z
"*.shar" -Z "*.sv4cpi" -Z "*.sv4crc" -Z "*.ustar" -Z "*.zoo" -Z "*.zip"
-Z "*.jar" -Z "*.jpg" -Z "*.gif" -Z "*.mpg" -Z "*.mpeg" -Z "*.avi" -Z
"*.ram" -Z "*.rm" -Z "*.7z" -Z "*.xz" -Z "*.lz" -Z "*.lzma" -Z "*.lz4"
-Z "*.zst" -Z "*.txz" -Z "*.tbz" -Z "*.tbz2" -Z "*.apk" -Z "*.war" -Z
"*.msi" -Z "*.cab" -Z "*.pkg" -Z "*.snap" -Z "*.jpeg" -Z "*.jpe" -Z
"*.png" -Z "*.webp" -Z "*.tif" -Z "*.tiff" -Z "*.mp3" -Z "*.ogg" -Z
"*.oga" -Z "*.opus" -Z "*.flac" -Z "*.m4a" -Z "*.aac" -Z "*.wma" -Z
"*.mp4" -Z "*.m4v" -Z "*.mkv" -Z "*.mov" -Z "*.wmv" -Z "*.flv" -Z
"*.webm" -Z "*.docx" -Z "*.xlsx" -Z "*.pptx" -Z "*.odt" -Z "*.ods" -Z
"*.odp" -ac
(/.localbackup-snapshots/localbackup-20251215-100708/ in this case is
a btrfs snapshot created by my backup script of the root filesystem)
dar returned 0, suggesting success, its output:
No user target found on command line
The following user comment will be placed in clear text in the archive:
theta Mon Dec 15 10:07:13 2025 "dar" "-c" "/backup/backup-roothomeFull"
"-@" "/backup/backup-roothomeFull.cat" "-R"
"//.localbackup-snapshots/localbackup-20251215-100708" "-zbzip2:9" "-m"
"0" "-v" "-D" "-N" "-w" "-Q" "--hash" "sha1" "--user-comment" "%h %d
%c" "--retry-on-change" "3" "-groot" "-P" "*/.Trash*" "-P" ".Trash*"
"-P" "*/.mozilla/*/[Cc]ache" "-P" "*/.opera/[Cc]ache*" "-P"
"*/.pan/*/[Cc]ache" "-P" "*/.thumbnails" "-P" "*/.beagle" "-P"
"root/.opera/" "-P" "root/.cache/" "-P" "root/clamav-quarantine/" "-an"
"-Z" "*.dar" "-Z" "*.crypt" "-Z" "*.arj" "-Z" "*.bz2" "-Z" "*.bz" "-Z"
"*.Z" "-Z" "*.tgz" "-Z" "*.taz" "-Z" "*.cpio" "-Z" "*.deb" "-Z"
"*.gtar" "-Z" "*.gz" "-Z" "*.lzh" "-Z" "*.lhz" "-Z" "*.rar" "-Z"
"*.rpm" "-Z" "*.shar" "-Z" "*.sv4cpi" "-Z" "*.sv4crc" "-Z" "*.ustar"
"-Z" "*.zoo" "-Z" "*.zip" "-Z" "*.jar" "-Z" "*.jpg" "-Z" "*.gif" "-Z"
"*.mpg" "-Z" "*.mpeg" "-Z" "*.avi" "-Z" "*.ram" "-Z" "*.rm" "-Z" "*.7z"
"-Z" "*.xz" "-Z" "*.lz" "-Z" "*.lzma" "-Z" "*.lz4" "-Z" "*.zst" "-Z"
"*.txz" "-Z" "*.tbz" "-Z" "*.tbz2" "-Z" "*.apk" "-Z" "*.war" "-Z"
"*.msi" "-Z" "*.cab" "-Z" "*.pkg" "-Z" "*.snap" "-Z" "*.jpeg" "-Z"
"*.jpe" "-Z" "*.png" "-Z" "*.webp" "-Z" "*.tif" "-Z" "*.tiff" "-Z"
"*.mp3" "-Z" "*.ogg" "-Z" "*.oga" "-Z" "*.opus" "-Z" "*.flac" "-Z"
"*.m4a" "-Z" "*.aac" "-Z" "*.wma" "-Z" "*.mp4" "-Z" "*.m4v" "-Z"
"*.mkv" "-Z" "*.mov" "-Z" "*.wmv" "-Z" "*.flv" "-Z" "*.webm" "-Z"
"*.docx" "-Z" "*.xlsx" "-Z" "*.pptx" "-Z" "*.odt" "-Z" "*.ods" "-Z"
"*.odp" "-ac"
Creating low layer: Writing archive into a plain file object...
Adding a new layer on top: Caching layer for better performances...
Writing down the archive header...
Adding a new layer on top: Escape layer to allow sequential reading...
Adding a new layer on top: compression...
Adding a streamed compression layer
All layers have been created successfully
Building the catalog object...
Processing files for backup...
Adding folder to archive: //.localbackup-snapshots/localbackup-20251215-100708/root
Saving Filesystem Specific Attributes for //.localbackup-snapshots/localbackup-20251215-100708/root
Adding folder to archive:
//.localbackup-snapshots/localbackup-20251215-100708/root/.dbus
[...]
Adding file to archive: //.localbackup-snapshots/localbackup-20251215-100708/root/.gnupg/pubring.gpg
//.localbackup-snapshots/localbackup-20251215-100708/root/.gnupg/pubring.gpg : Failed resaving uncompressed the inode data
[this kind of error, I never noticed before repeats for a lot of files]
//.localbackup-snapshots/localbackup-20251215-100708/root/LOCK-backup : Failed resaving uncompressed the inode data
Saving Filesystem Specific Attributes for //.localbackup-snapshots/localbackup-20251215-100708/root/LOCK-backup
Writing down archive contents...
Closing the compression layer...
Closing the escape layer...
Writing down the first archive terminator...
Writing down archive trailer...
Writing down the second archive terminator...
Closing archive low layer...
Archive is closed.
--------------------------------------------
1497 inode(s) saved
including 0 hard link(s) treated
0 inode(s) changed at the moment of the backup and could not be saved properly
0 byte(s) have been wasted in the archive to resave changing files
0 inode(s) with only metadata changed
0 inode(s) not saved (no inode/file change)
0 inode(s) failed to be saved (filesystem error)
29 inode(s) ignored (excluded by filters)
0 inode(s) recorded as deleted from reference backup
--------------------------------------------
Total number of inode(s) considered: 1526
--------------------------------------------
EA saved for 0 inode(s)
FSA saved for 1362 inode(s)
--------------------------------------------
Making room in memory (releasing memory used by archive of reference)...
Now performing on-fly isolation...
Creating low layer: Writing archive into a plain file object...
Adding a new layer on top: Caching layer for better performances...
Writing down the archive header...
Adding a new layer on top: Escape layer to allow sequential reading...
Adding a new layer on top: compression...
Adding a streamed compression layer
All layers have been created successfully
Writing down archive contents...
Closing the compression layer...
Closing the escape layer...
Writing down the first archive terminator...
Writing down archive trailer...
Writing down the second archive terminator...
Closing archive low layer...
Archive is closed.
Final memory cleanup...
everything looks fine besides these "Failed resaving uncompressed
the inode data", but the created .dar files are unusable!?
I have the same problem on 2 different computers/servers with the above
mentioned versions/distributions for two different backups (one machine
backup /root/ false, on the other backup /etc/ fails (same Failure
mode).
Never had the issue before. I created a new backup script, which runs
fine on an older install and dar-2.4.18-2.3. and deployed it after
much testing to other machines. what essentially changed from before
is compression (from gzip to bzip2) and the use of btrfs snapshots.
It happens both with -c and -A (differential to older, not-corrupted
Full-backup)
Do you have any idea? consulting search machines and chatGPT didn't
result in anything useful.
Thank you,
Paul
Further info: ldd and installed rpm versions on the newer install:
# ldd /usr/bin/dar
linux-vdso.so.1 (0x00007fedcb19c000)
libdar64.so.6000 => /lib64/libdar64.so.6000 (0x00007fedcae00000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fedcaa00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fedcb0c9000)
libc.so.6 => /lib64/libc.so.6 (0x00007fedca806000)
libargon2.so.1 => /lib64/libargon2.so.1 (0x00007fedcb0be000)
libthreadar.so.1000 => /lib64/libthreadar.so.1000 (0x00007fedcb0ae000)
libgpgme.so.11 => /lib64/libgpgme.so.11 (0x00007fedcada8000)
libcurl.so.4 => /lib64/libcurl.so.4 (0x00007fedcacd0000)
librsync.so.2 => /lib64/librsync.so.2 (0x00007fedcacc2000)
libgcrypt.so.20 => /lib64/glibc-hwcaps/x86-64-v3/libgcrypt.so.20.5.1 (0x00007fedca668000)
liblz4.so.1 => /lib64/glibc-hwcaps/x86-64-v3/liblz4.so.1.10.0 (0x00007fedcac9a000)
libzstd.so.1 => /lib64/glibc-hwcaps/x86-64-v3/libzstd.so.1.5.7 (0x00007fedca5b4000)
liblzma.so.5 => /lib64/glibc-hwcaps/x86-64-v3/liblzma.so.5.8.1 (0x00007fedca57a000)
liblzo2.so.2 => /lib64/glibc-hwcaps/x86-64-v3/liblzo2.so.2.0.0 (0x00007fedcac77000)
libbz2.so.1 => /lib64/glibc-hwcaps/x86-64-v3/libbz2.so.1.0.6 (0x00007fedca561000)
libz.so.1 => /lib64/glibc-hwcaps/x86-64-v3/libz.so.1.2.13 (0x00007fedca547000)
libm.so.6 => /lib64/libm.so.6 (0x00007fedca45f000)
/lib64/ld-linux-x86-64.so.2 (0x00007fedcb19e000)
libassuan.so.9 => /lib64/libassuan.so.9 (0x00007fedca44a000)
libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007fedca41e000)
libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x00007fedca3f2000)
libidn2.so.0 => /lib64/libidn2.so.0 (0x00007fedca3d0000)
libssh.so.4 => /lib64/libssh.so.4 (0x00007fedca352000)
libpsl.so.5 => /lib64/libpsl.so.5 (0x00007fedca33e000)
libssl.so.3 => /lib64/glibc-hwcaps/x86-64-v3/libssl.so.3.5.0 (0x00007fedca21d000)
libcrypto.so.3 => /lib64/glibc-hwcaps/x86-64-v3/libcrypto.so.3.5.0 (0x00007fedc9a00000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007fedca1c9000)
libldap.so.2 => /lib64/libldap.so.2 (0x00007fedca166000)
liblber.so.2 => /lib64/liblber.so.2 (0x00007fedca155000)
libbrotlidec.so.1 => /lib64/glibc-hwcaps/x86-64-v3/libbrotlidec.so.1.1.0 (0x00007fedca147000)
libjitterentropy.so.3 => /lib64/libjitterentropy.so.3 (0x00007fedca13c000)
libunistring.so.5 => /lib64/libunistring.so.5 (0x00007fedc9819000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007fedca06d000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007fedc9801000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fedcac6b000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007fedca05d000)
libsasl2.so.3 => /lib64/libsasl2.so.3 (0x00007fedc97e2000)
libbrotlicommon.so.1 => /lib64/glibc-hwcaps/x86-64-v3/libbrotlicommon.so.1.1.0 (0x00007fedc97bf000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007fedc97b8000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fedc97a7000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fedc9775000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007fedc96bd000)
# for i in $(ldd /usr/bin/dar | awk '{ print ($3 ? $3 : $1) }' | sort ); do echo -e "$(rpm -qf "${i}")\t${i}"; done
libbrotlicommon1-x86-64-v3-1.1.0-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libbrotlicommon.so.1.1.0
libbrotlidec1-x86-64-v3-1.1.0-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libbrotlidec.so.1.1.0
libbz2-1-x86-64-v3-1.0.8-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libbz2.so.1.0.6
libopenssl3-x86-64-v3-3.5.0-160000.3.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libcrypto.so.3.5.0
libgcrypt20-x86-64-v3-1.11.1-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libgcrypt.so.20.5.1
liblz4-1-x86-64-v3-1.10.0-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/liblz4.so.1.10.0
liblzma5-x86-64-v3-5.8.1-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/liblzma.so.5.8.1
liblzo2-2-x86-64-v3-2.10-160000.3.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/liblzo2.so.2.0.0
libopenssl3-x86-64-v3-3.5.0-160000.3.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libssl.so.3.5.0
libz1-x86-64-v3-1.2.13-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libz.so.1.2.13
libzstd1-x86-64-v3-1.5.7-160000.2.2.x86_64 /lib64/glibc-hwcaps/x86-64-v3/libzstd.so.1.5.7
glibc-2.40-160000.2.2.x86_64 /lib64/ld-linux-x86-64.so.2
libargon2-1-20190702-160000.2.2.x86_64 /lib64/libargon2.so.1
libassuan9-3.0.2-160000.2.2.x86_64 /lib64/libassuan.so.9
libcom_err2-1.47.0-160000.3.2.x86_64 /lib64/libcom_err.so.2
glibc-2.40-160000.2.2.x86_64 /lib64/libc.so.6
libcurl4-8.14.1-160000.3.1.x86_64 /lib64/libcurl.so.4
libdar64-6000-2.7.15-bp160.1.3.x86_64 /lib64/libdar64.so.6000
libgcc_s1-15.1.1+git9973-160000.2.2.x86_64 /lib64/libgcc_s.so.1
libgpg-error0-1.54-160000.2.2.x86_64 /lib64/libgpg-error.so.0
libgpgme11-1.24.3-160000.3.1.x86_64 /lib64/libgpgme.so.11
krb5-1.21.3-160000.2.2.x86_64 /lib64/libgssapi_krb5.so.2
libidn2-0-2.3.8-160000.2.2.x86_64 /lib64/libidn2.so.0
libjitterentropy3-3.6.3-160000.2.2.x86_64 /lib64/libjitterentropy.so.3
krb5-1.21.3-160000.2.2.x86_64 /lib64/libk5crypto.so.3
libkeyutils1-1.6.3-160000.3.2.x86_64 /lib64/libkeyutils.so.1
krb5-1.21.3-160000.2.2.x86_64 /lib64/libkrb5.so.3
krb5-1.21.3-160000.2.2.x86_64 /lib64/libkrb5support.so.0
libldap-2-2.6.10+10-160000.2.2.x86_64 /lib64/liblber.so.2
libldap-2-2.6.10+10-160000.2.2.x86_64 /lib64/libldap.so.2
glibc-2.40-160000.2.2.x86_64 /lib64/libm.so.6
libnghttp2-14-1.64.0-160000.2.2.x86_64 /lib64/libnghttp2.so.14
libpcre2-8-0-10.45-160000.2.2.x86_64 /lib64/libpcre2-8.so.0
libpsl5-0.21.5-160000.3.2.x86_64 /lib64/libpsl.so.5
glibc-2.40-160000.2.2.x86_64 /lib64/libresolv.so.2
librsync2-2.3.4-160000.3.2.x86_64 /lib64/librsync.so.2
libsasl2-3-2.1.28-160000.3.1.x86_64 /lib64/libsasl2.so.3
libselinux1-3.8.1-160000.2.2.x86_64 /lib64/libselinux.so.1
libssh4-0.11.2-160000.2.2.x86_64 /lib64/libssh.so.4
libstdc++6-15.1.1+git9973-160000.2.2.x86_64 /lib64/libstdc++.so.6
libthreadar1000-1.5.0-bp160.1.3.x86_64 /lib64/libthreadar.so.1000
libunistring5-1.3-160000.3.2.x86_64 /lib64/libunistring.so.5
error: file /root/linux-vdso.so.1: No such file or directory
linux-vdso.so.1
|