Rsync é um utilitário de linha de comando famoso por seus recursos de sincronização de dados no Linux. Você pode usá-lo para sincronizar os arquivos no mesmo sistema e em sistemas diferentes. Além disso, oferece recursos como compactação de arquivos, criptografia, sincronização seletiva e muito mais que o tornam superior a outras ferramentas. Ele pode comparar os diretórios de origem e de destino para transferir apenas os arquivos recém-adicionados e atualizados do diretório de origem.
Todos esses recursos ajudam a reduzir o tempo de espera e aumentar a produtividade. No entanto, muitos usuários do Linux não conhecem os recursos do rsync e não estão familiarizados com sua transferência eficiente de arquivos. Este blog explicará brevemente os métodos de uso do rsync para transferência eficiente de arquivos entre diretórios no Linux.
Como usar o Rsync para transferência eficiente de arquivos entre diretórios no Linux
Existem algumas maneiras de usar o rsync no Linux, então dividiremos esta seção ainda mais para explicar seu uso em diferentes cenários.
Instalação Rsync
Embora o utilitário rsync venha pré-instalado na maioria dos sistemas Linux, você pode instalá-lo executando o seguinte comando:
sudo apto instalar sincronizar novamente -e
Agora, verifique a versão instalada do rsync.
Quando terminar, execute o seguinte comando para iniciar a sincronização da origem e do destino:
sincronizar novamente -o fonte alvo
-
- A origem é o diretório do qual você deseja sincronizar os arquivos.
- Destino é o diretório de destino onde você deseja armazenar esses arquivos.
Transferência de arquivos locais
Você pode usar o rsync para copiar e colar os arquivos no mesmo sistema usando o seguinte comando:
sudo sincronizar novamente -de caminho_fonte / caminho de Destino /
-
- A opção “-a” significa arquivo que preserva os atributos do arquivo durante uma transferência.
- O “-v” é para o modo detalhado no qual você pode ver quais arquivos estão sendo transferidos.
Por exemplo, vamos usá-lo para copiar os arquivos do diretório “Downloads” para o diretório “Document”:
sudo sincronizar novamente -de ~ / Downloads ~ / Documentos
Transferência remota de arquivos
Você pode usar o rsync principalmente para transferir arquivos remotamente entre duas máquinas conectadas em uma rede. Para isso, você precisa especificar o host remoto usando a seguinte sintaxe:
sincronizar novamente -de -e ssh do utilizador @ hospedeiro remoto: / caminho / para / fonte / / caminho / para / alvo /
Com a opção “-e ssh”, você pode dizer ao sistema para usar especificamente o shell seguro ou SSH para esta transferência de arquivos.
Exclua arquivos do diretório de destino (que não estão presentes na origem)
Suponha que você queira tornar os dois diretórios idênticos e conter arquivos semelhantes. Neste caso, você deve excluir os arquivos extras (se houver) presentes no diretório de destino. Felizmente, com o rsync, você pode fazer isso usando a opção “– –delete”. Para saber como, execute o seguinte comando:
sincronizar novamente -de --excluir / caminho / para / fonte / / caminho / para / alvo /
Excluir arquivos durante a transferência
Ao transferir diretórios inteiros, pode ser necessário excluir alguns arquivos ou subdiretórios. Portanto, você pode usar a opção “– –exclude” da seguinte maneira:
sincronizar novamente -de --excluir 'nome do arquivo' / caminho / para / fonte / / caminho / para / alvo /
Funcionamento a seco
Ao usar o rsync para diretórios grandes, você deve primeiro fazer uma simulação. Desta forma, o sistema demonstra o que este comando faria sem transferir os arquivos. No entanto, isso pode ajudá-lo a evitar a transferência de arquivos indesejados. Para realizar um teste, use a opção “– –dry-run” no seguinte comando:
sincronizar novamente -de --funcionamento a seco / caminho / para / fonte / / caminho / para / alvo /
Por exemplo, execute uma simulação antes de sincronizar os arquivos do diretório “Downloads” para o diretório “Documentos”:
Exibir o indicador de progresso
Como alguns usuários preferem ter um indicador de progresso para ver o andamento de sua transferência, você pode habilitá-lo usando o seguinte comando:
sincronizar novamente -de --progresso fonte / alvo /
Tomando o exemplo anterior com o indicador de progresso, você obterá o resultado conforme mostrado na imagem a seguir:
Conclusão
Rsync é uma ferramenta poderosa para transferir arquivos entre diretórios no Linux. Este blog explica seus vários casos de uso, como sincronização de dados local e remota. Além disso, possui vários subcomandos para facilitar algumas funcionalidades como excluir os arquivos durante a transferência e excluir os arquivos do destino. Apesar de todas essas funções, os usuários ainda podem cometer erros. Portanto, você deve sempre realizar uma simulação para transferências de arquivos grandes.