rsync sobre questões ssh - criando diretórios no host remoto se eles não existirem

0

Eu quero usar o rsync para fazer backup de alguns arquivos em ssh que consegui trabalhar bem usando:

rsync --delete -avze ssh /home/malachi/www/site/ malachi@remote-host:~/backups/daily/sites/site/

Como eu criaria o site / site / diretório no host remoto se ele ainda não existe?

Seria melhor colocar o abaixo antes de executar o comando acima?

ssh -l malachi remote-host mkdir -p ~/backups/daily/sites/site/

Ou existe uma solução melhor?

    
por Malachi 02.08.2011 / 22:36

2 respostas

1

Acabei indo com o comando mkdir e criando um script para lidar com o processo de backup

    
por 01.02.2012 / 18:24
3

Se for apenas um nível acima, o rsync irá criar o diretório. Seu comando funcionaria se você rsync'd a pasta site em vez do conteúdo? Isso é:

rsync --delete -avze ssh /home/malachi/www/site \ 
malachi@remote-host:~/backups/daily/sites

Desta forma, o rsync deve criar a pasta sites no host remoto, pois é apenas um nível acima da pasta site que você deseja copiar. Observe que isso requer a opção --recursive , que está implícita com -a em seu comando. Consulte esta postagem SO para detalhes.

Existem maneiras maravilhosamente complicadas de fazer isso se você precisar criar vários níveis de diretórios pai.

    
por 02.08.2011 / 23:09

Tags