Se você tiver que copiar um grande número de arquivos, ou tiver arquivos grandes, o rsync sobre o ssh será muito mais rápido que o scp.
Existe um motivo para usar scp
em vez de rsync
? Eu não vejo razão para usar scp
novamente, rsync
faz tudo que scp
faz, com mais segurança (pode preservar links simbólicos etc).
scp fornece um método semelhante ao cp para copiar arquivos de uma máquina para uma máquina remota através de uma conexão SSH segura.
O rsync permite sincronizar pastas remotas.
Eles são programas diferentes e ambos têm seus usos. O scp é sempre seguro, enquanto o rsync deve viajar pelo SSH para ser seguro.
Uma das principais coisas (que eu acho que ninguém mencionou) é que, se você está transferindo grandes quantidades de dados ou arquivos, e se a transferência for desconectada antes da conclusão por qualquer motivo, o rsync vai continuar de onde parou . Considerando scp não.
Eu uso o scp se eu quiser transferir um ou alguns arquivos ou diretórios. Eu vou para rsync para dados de tamanho multi GB.
rsync : Transfere deltas (usando seu Algoritmo de Transferência Delta ) entre:
scp : Transfere arquivos inteiros entre:
Resumo: scp
pode transferir arquivos entre dois hosts remotos, enquanto rsync
não os suporta.
Usuário Chris no Webhosting Talk escreve:
rsync
compares the files at each end and transfers only the changed parts of changed files. When you transfer files the first timeo it behaves pretty much likescp
, but for a second transfer, where most files are unchanged, it will push a lot less data thanscp
. It's also a convenient way to restart failed transfers - you just reissue the same command and it will pick up where it left off the time before, whereasscp
will start again from scratch.
scp
é mais simples de usar, pois leva menos argumentos. Eu pego myselv usando scp em vez de rsync
se eu só transferir um único arquivo. Provavelmente eu sou apenas preguiçoso para definir um alias para rsync ...; -)
Créditos para @tomrunia no link
rsync -aHAXxv --numeric-ids --delete --progress \
-e "ssh -T -c [email protected] -o Compression=no -x" \
[source_directory] user@hostname:[target_directory]/
Preste atenção em --delete
, não use se quiser manter arquivos estranhos em dir dirs