Acabei indo com o comando mkdir
e criando um script para lidar com o processo de backup
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?
Acabei indo com o comando mkdir
e criando um script para lidar com o processo de backup
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.