scp
copia arquivos e é isso. Se você está procurando algo mais flexível, o rsync é o que você precisa.
Para copiar uma árvore de diretórios, use
rsync -a local-directory/ remote.example.com:remote-directory/
Se a transferência for interrompida, execute novamente o rsync e ele continuará de onde parou.
Preservar permissões provavelmente é a coisa certa, mas se você quiser aplicar argumentos diferentes, você pode usar a opção --chmod
. Se você realmente quiser ignorar as permissões locais, use --no-perms
.
Se houver arquivos grandes e suas cópias forem interrompidas com freqüência, e a árvore remota for uma nova cópia que você está preenchendo com o rsync, use a opção --append
. Dessa forma, se uma cópia for interrompida no meio de um arquivo, o rsync finalizará esse arquivo sem verificar se o conteúdo atual do arquivo remoto corresponde ao conteúdo local, o que pode economizar algum tempo. Mais uma vez, faça isso apenas se tiver certeza de que um arquivo remoto parcial é o resultado de uma transferência interrompida e não, e. alguma versão mais antiga do arquivo.