On Sun 10 Apr 2011, Neal H. Walfield wrote:

> I use storebackup to create daily backups and I mirror these backups
> to a report machine using:
> 
>   rsync --stats -a -z -H --numeric-ids --link-dest=/backup \
>         /backup/ bruckner.vpn.huenfield.org:/home/backup/
> 
> During today's run, rsync reported the following errors:
> 
> ERROR     2011.04.10 11:14:45 27930 rsync: link 
> "/home/backup/forster/2011.04.10_06.36.53/neal/src/temp/linux-2.6-2.6.32/debian/build/build_i386_none_486/include/config/dvb/s5h1409.h"
>  => forster/2011.03.10_11.11.28/.gksu.lock failed: Too many links (31)
> ERROR     2011.04.10 11:14:45 27930 rsync: link 
> "/home/backup/forster/2011.04.10_06.36.53/neal/src/temp/linux-2.6-2.6.32/debian/build/build_i386_none_486/include/config/early/printk.h"
>  => forster/2011.03.10_11.11.28/.gksu.lock failed: Too many links (31)

> I'd like rsync to not fail.  Perhaps it should create an additional
> copy of the content.



On Thu 16 Oct 2014, Jonathan David Amery wrote:
> 
> 
>  It appears that this may have improved slightly since 2011 -- there's
> no longer an assertion failure....
> 
>  My backups do: 
> 
>  rsync --archive --sparse --numeric-ids --compress \
>  --fuzzy --hard-links --delete --quiet --one-file-system \
>  --link-dest=/mnt/backups/internal/ivanova/aleph/2014-10-15 \
>  ivanova:/mnt/aleph/. /mnt/backups/internal/ivanova/aleph/2014-10-16/.
> 
>  and today I got the error:
> 
> rsync: link 
> "/mnt/backups/internal/ivanova/aleph/2014-10-16/./home/jdamery/dev/projects/buildit/lis2las/rfid.o"
>  => home/jdamery/dev/projects/buildit/addcurve/rfid.o failed: Too many links 
> (31)

>  When it has this link failure rsync should make a new copy of the file
> exactly as if it had been unable to find a file to link in the first
> place.


In my testing today it seems that this does not go wrong anymore and a
new copy of the file is indeed created; here's the relevant strace
output that shows the link() call failed and subsequently a new file was
created:

[pid 24011] lstat("b", 0x7ffcc58574a0)  = -1 ENOENT (No such file or directory)
[pid 24011] lstat("/tmp/d/linkdest/./b", {st_mode=S_IFREG|0644, st_size=9, 
...}) = 0
[pid 24011] link("/tmp/d/linkdest/./b", "b") = -1 EMLINK (Too many links)
[pid 24011] open(".b.Tnq0GH", O_RDWR|O_CREAT|O_EXCL, 0600) = 0
[pid 24011] fchmod(0, 0600)             = 0
[pid 24011] open("/tmp/d/linkdest/./b", O_RDONLY) = 4
[pid 24011] read(4, "contents\n", 8192) = 9
[pid 24011] write(0, "contents\n", 9)   = 9
[pid 24011] read(4, "", 8192)           = 0
[pid 24011] close(4)                    = 0
[pid 24011] close(0)                    = 0
[pid 24011] lstat(".b.Tnq0GH", {st_mode=S_IFREG|0600, st_size=9, ...}) = 0
[pid 24011] utimensat(AT_FDCWD, ".b.Tnq0GH", {UTIME_NOW, {1451558126, 
485533088}}, AT_SYMLINK_NOFOLLOW) = 0
[pid 24011] chmod(".b.Tnq0GH", 0644)    = 0
[pid 24011] rename(".b.Tnq0GH", "b")    = 0


If you still have problems please reply to the bug report so that I can
investigate further. Otherwise I will close this bug soon.


thanks,
Paul

Reply via email to