Hello,
I think there is a bug when using Conf{XferMethod} = 'tar';
and one-file-system option that backup only a hard link when puting two time the same relative path to the file (to backup). The tar option "--check-links" may help.
example:
Conf{BackupFilesOnly} = ['/','/bin'];
"/bin" and "/" are on the same file system.
Conf{XferMethod} = 'tar';
Conf{XferLogLevel} = 10;
Conf{TarClientCmd} = '$sshPath -q -x -n -l backuppc $host'
. ' nice -n 19'
. ' env LC_ALL=C /usr/bin/sudo $tarPath -c -v -f - -C $shareName+'
. ' --totals --one-file-system --check-links';
-----------------------------------------------------------------------------------------------------------------------------------------------
Running: /usr/bin/ssh -q -x -n -l backuppc HOST nice -n 19 env LC_ALL=C /usr/bin/sudo /usr/bin/tar -c -v -f - -C / --totals --one-file-system --check-links --exclude=\*/tmp/\* ./ ./bin
full backup started for directory /
Xfer PIDs are now 22697,22696
./
[...]
./bin/zmore
[...]
tarExtract: Got file './bin/zmore', mode 0755, size 2500, type 0 create 755 0/0 2500 bin/zmore
[...]
./bin/zmore
[...]
/usr/bin/tar: Missing links to `./bin/zmore'.
[...]
tarExtract: Got file './bin/zmore', mode 0755, size 0, type 1 create h 755 0/0 11 bin/zmore
-------------------------------------------------------------------------------------------
So at the end only a hard link will be in the cpool, ref to the real file is gone.
I think, the correct way may be to force the use of "--hard-dereference" if "--one-file-system" is present And/Or to exit when tar detect a Missing links.
Of course Conf{BackupFilesOnly} may be corrected but I find is convenient to put '/' to create all the directories.
Thanks,
--
Ali |