Rsync criando o diretório \ # 015

3

Eu tenho um servidor ubuntu virtual em execução no meu servidor windows. Este servidor tem 2 discos rígidos externos conectados, que são montados no Ubuntu.

Agora eu tento rodar o rsync para sincronizar um diretório na minha área de trabalho e no meu servidor windows.

Eu faço isso da seguinte maneira:

rsync -av --update [email protected]:/home/seagate/Syncfolder/Pictures/ /syncs/pictures

O /syncs/pictures é um link simbólico para /cygdrive/c/../pictures . Todos esses links simbólicos funcionam corretamente, e o diretório remoto também existe.

Agora, quando executo o comando rsync acima, ele faz isso:

created directory /syncs/pictures\#015

Isso, na verdade, cria um diretório chamado "imagens" na minha pasta / syncs /. Então não no symlink. Ao lado do link simbólico:

$ ls
pictures pictures?

Quando adiciono uma barra ao destino:

rsync -av --update [email protected]:/home/seagate/Syncfolder/Pictures/ /syncs/pictures/

Ele cria um diretório chamado "# 015" (o ponto estranho) dentro da minha pasta Pictures em minha torre!

Eu acho que tem algo a ver com a codificação?

Eu escrevi todos os scripts do bash no notepad ++ com codificação para ANSI.

    
por Christophe De Troyer 28.08.2013 / 12:54

2 respostas

1

Eu resolvi isso executando dos2unix no Windows em todos os arquivos de script. Você também pode fazer isso no Linux.

    
por Christophe De Troyer 17.11.2013 / 15:07
2

O problema fundamental aqui - pelo menos no meu caso - era que o arquivo em questão tinha a convenção do Windows de um caractere CR + LF no final do arquivo de script, em oposição à convenção * nix de usar apenas LF . Para corrigir isso, você precisa alterar o próprio arquivo de script para que ele siga as convenções * nix. A resposta acima sugere algumas boas maneiras de fazer isso. Alguns editores (por exemplo, o Notepad ++) têm funcionalidades semelhantes incorporadas.

    
por user239748 25.01.2014 / 16:35