Estou usando ssh
para se conectar a uma máquina remota. No meu diretório home, eu criei um link simbólico para um diretório montado, como você pode ver abaixo:
username@hostname:~$ ls -l
lrwxrwxrwx 1 username users 69 Jan 21 09:09 mysymlink -> /media/some/mounted/target/directory/
Se eu tentar executar o comando rsync
abaixo na minha máquina principal, ele não resolverá o link simbólico no caminho de destino e desejará criar esse diretório em vez de seguir o link para o diretório existente:
~$ rsync -av --progress /home/bytecommander/EclipseProjects -e ssh username@hostname:/home/username/mysymlink
username@hostname's password:
sending incremental file list
EclipseProjects/
rsync: recv_generator: mkdir "/home/username/mysymlink/EclipseProjects" failed: Permission denied (13)
*** Skipping any contents from this failed directory ***
sent 36,368 bytes received 2,451 bytes 15,527.60 bytes/sec
total size is 39,039,765 speedup is 1,005.69
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]
Já tentei adicionar as opções abaixo a rsync
, uma de cada vez, mas sem sucesso:
-l, --links copy symlinks as symlinks
-L, --copy-links transform symlink into referent file/dir
--copy-unsafe-links only "unsafe" symlinks are transformed
--safe-links ignore symlinks that point outside the tree
-k, --copy-dirlinks transform symlink to dir into referent dir
-K, --keep-dirlinks treat symlinked dir on receiver as dir
-H, --hard-links preserve hard links
Como posso dizer a rsync
que mysymlink
é um link que deve seguir ao resolver o caminho de destino?