Hello all

I have a problem with the --copy-unsafe-links option. My environment is
presented and the end of the message. I have the following directory
structure (I hope the that it will be visible; commands below)

TST/
+-- outside1
|    |
|    +-- outside1-file.txt
|
+-- outside2-file.txt
|
+-- tree
     +-- inside.txt
     |
     +-- lnk-ans.txt -> ../../ans.txt
     |
     +-- o1-file.txt -> ../outside1/outside1-file.txt
     |
     +-- o1-folder -> ../outside1
     |
     +-- o2-file.txt -> ../outside2-file.txt

The directory structure can be created with the following commands:

mkdir -p TST/outside1 TST/tree
echo "outside1" > TST/outside1/outside1-file.txt
echo "outside2" > TST/outside2-file.txt
echo "inside"  > TST/tree/inside.txt
(cd TST/tree/; ln -s ../outside1 ./o1-folder; ln -s 
../outside1/outside1-file.txt ./o1-file.txt;)
(cd TST/tree/; ln -s ../outside2-file.txt ./o2-file.txt;)
(cd TST/tree/; ln -s ../../ans.txt ./lnk-ans.txt)

Now if I execute the commands

$ cd TST
$ rsync --copy-unsafe-links -avz --delete tree XXX

  sending incremental file list
  copying unsafe symlink "tree/lnk-ans.txt" -> "../../ans.txt"
  created directory XXX
  tree/
  tree/inside.txt
  tree/lnk-ans.txt
  tree/o1-file.txt -> ../outside1/outside1-file.txt
  tree/o1-folder -> ../outside1
  tree/o2-file.txt -> ../outside2-file.txt

  sent 440 bytes  received 93 bytes  1,066.00 bytes/sec
  total size is 147  speedup is 0.28

As we can see from the output rsync makes a copy of tree/lnk-ans.txt
According to the documentation this is correct. --copy-unsafe-links
instructs rsync to make copies of the files outside the copied tree.

But the same should happen for

    tree/o1-file.txt
    tree/o1-folder
    tree/o2-file.txt

because all these symlinks point outside tree.

am I missing something? Is this the intended behavior? According to
the documentation (man rsync) I think it is not.

Thank you very much.
Cristian



-------- BEGIN ENVIRONMNENT ---------

$ rsync --version
rsync  version 3.1.3  protocol version 31
Copyright (C) 1996-2018 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes, prealloc
Operating System: Debian 10

-------- END ENVIRONMNENT ---------


--
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Reply via email to