Vzdump LXC error code 23

h1r0sh1ma

Member
Aug 26, 2019
2
0
21
18
Hello fellow Gens!

Virtual Environment 7.1-12
Using LVM Thin: No

Im getting the following error during the container backup (with installed Postgresql).
Code:
vzdump 110 --mailnotification always --storage local --mailto lxc110@co.jp --node my-server --mode suspend --compress zstd

110: 2022-07-08 14:43:42 INFO: Starting Backup of VM 110 (lxc)
110: 2022-07-08 14:43:42 INFO: status = running
110: 2022-07-08 14:43:42 INFO: backup mode: suspend
110: 2022-07-08 14:43:42 INFO: ionice priority: 7
110: 2022-07-08 14:43:42 INFO: CT Name: LXC-110
110: 2022-07-08 14:43:42 INFO: including mount point rootfs ('/') in backup
110: 2022-07-08 14:43:42 INFO: starting first sync /proc/2292404/root/ to /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_43_42.tmp
110: 2022-07-08 14:45:44 INFO: first sync finished - transferred 23.63G bytes in 122s
110: 2022-07-08 14:45:44 INFO: suspending guest
110: 2022-07-08 14:45:44 INFO: starting final sync /proc/2292404/root/ to /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_43_42.tmp
110: 2022-07-08 14:45:47 INFO: resume vm
110: 2022-07-08 14:45:47 INFO: guest is online again after 3 seconds
110: 2022-07-08 14:45:49 ERROR: Backup of VM 110 failed - command 'rsync --stats --verbose '--log-file=/tmp/rsync.log' --ignore-missing-args -h -X -A --numeric-ids -aH --delete --no-whole-file --inplace --one-file-system --relative '--exclude=/tmp/?*' '--exclude=/var/tmp/?*' '--exclude=/var/run/?*.pid' /proc/2292404/root//./ /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_43_42.tmp' failed: exit code 23
Ive found that some files were vanished during the rsync:
Code:
2022/07/08 14:45:41 [2780269] file has vanished: "/proc/2292404/root/var/lib/postgresql/13/main/pg_subtrans/1624"
2022/07/08 14:45:41 [2780269] file has vanished: "/proc/2292404/root/var/lib/postgresql/13/main/pg_wal/000000010000005F00000055"
Using the manual ive created the rsync-no24 wrapper and replaced the initial rsync variable with rsync-no24 in the /usr/share/perl5/PVE/VZDump/LXC.pm
The whole string :
Code:
my $rsync = ['rsync-no24', '--stats', '--verbose', '--log-file=/tmp/rsync.log', '--ignore-missing-args', '-h', @xattr, '--numeric-ids',
                 '-aH', '--delete', '--no-whole-file',
                 ($first ? '--sparse' : '--inplace'),
                 '--one-file-system', '--relative'];
Now when im firing the vzdump utility i see:
Code:
root     2775935  0.0  0.0   2420   532 pts/0    S+   14:32   0:00 /bin/sh /bin/rsync-no24 --stats --verbose --ignore-missing-args -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative --exclude=/tmp/?* --exclude=/var/tmp/?* --exclude=/var/run/?*.pid /proc/2292404/root//./ /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_32_47.tmp
root     2775936 24.6  0.0  84192 11040 pts/0    D+   14:32   0:01 rsync --stats --verbose --ignore-missing-args -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative --exclude=/tmp/?* --exclude=/var/tmp/?* --exclude=/var/run/?*.pid /proc/2292404/root//./ /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_32_47.tmp
root     2775937  2.0  0.0  43104  3356 pts/0    S+   14:32   0:00 rsync --stats --verbose --ignore-missing-args -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative --exclude=/tmp/?* --exclude=/var/tmp/?* --exclude=/var/run/?*.pid /proc/2292404/root//./ /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_32_47.tmp
root     2775938 53.0  0.0  84104  3744 pts/0    R+   14:32   0:02 rsync --stats --verbose --ignore-missing-args -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative --exclude=/tmp/?* --exclude=/var/tmp/?* --exclude=/var/run/?*.pid /proc/2292404/root//./ /var/lib/vz/dump/vzdump-lxc-110-2022_07_08-14_32_47.tmp
so i still have the same error.
Would you be so kind to advice how to deal with this nasty vanishing-files-situation ....
As you can see the additional rsync argument --ignore-missing-args didnt help either.

Thanks in advance.
 
Last edited:
To whom it may concern:
The code mentioned in the link (https://rsync.samba.org/FAQ.html#10) above does not work as intended.
The working one is the following:
Code:
#!/bin/bash
IGNOREEXIT=24
IGNOREOUT='^(file has vanished: |rsync warning: some files vanished before they could be transferred)'

set -o pipefail

rsync "${@}" 2>&1 | (egrep -v "$IGNOREOUT" || true)
ret=$?

if [[ $ret == $IGNOREEXIT ]]; then
    ret=0
fi

exit $ret
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!