Skip to main content

Como usar o rsync para copiar pastas e arquivos do Linux

rsync - Cópia, Sincronização e Backup de arquivos no Linux (Abril 2025)

rsync - Cópia, Sincronização e Backup de arquivos no Linux (Abril 2025)
Anonim

O rsync é um programa de transferência de arquivos para Linux que permite copiar diretórios e arquivos com um comando simples, que inclui opções adicionais além da função de cópia tradicional.

Um dos recursos úteis do rsync é que, quando você o utiliza para copiar diretórios da linha de comando, pode excluir arquivos de maneira sistemática. Dessa forma, se você estiver usando o rsync para fazer backups de arquivos, poderá fazer backup apenas dos arquivos que deseja arquivar, evitando todo o resto.

Sintaxe de rsync

Usar o comando rsync corretamente requer que você siga a sintaxe correta:

rsync OPÇÃO … SRC … DESTrsync OPÇÃO … SRC … USER @ HOST: DESTrsync OPÇÃO … SRC … USER @ HOST :: DESTrsync OPÇÃO … SRC … rsync: // USER @ HOST : PORT / DESTrsync OPTION … USER @ HOST: SRC DESTrsync OPÇÃO … USER @ HOST :: SRC DESTrsync OPÇÃO … rsync: // USER @ HOST : PORT / SRC DEST

o opção o espaço fornecido acima pode ser preenchido com várias coisas. Veja o RESUMO DAS OPÇÕES seção da documentação do rsync para uma lista completa, mas aqui estão alguns exemplos:

  • -v, --verbose: Aumentar a verbosidade
    • --info = BANDEIRAS : Detalhamento informativo de granulação fina
    • --debug = BANDEIRAS : Verbosidade de depuração refinada
    • --msgs2stderr: Tratamento de saída especial para depuração
  • -q, --quieto: Suprimir mensagens que não são de erro
    • --no-motd: Suprimir modo daemon MOTD
  • -c, --checksum: Pular com base na soma de verificação, não mod-time e tamanho
  • -r, --recursivo: Recurse em diretórios
  • -b, --cópia de segurança: Fazer backups
    • --backup-dir = DIR : Faça backups em uma hierarquia baseada em DIR
    • --suffix = SUFIXO : Sufixo de backup
  • -d, - carnes: Transferir diretórios sem recursão

Exemplos de rsync

Aqui estão apenas alguns exemplos de como usar o rsync com algumas dessas opções:

Gorjeta: Em cada um desses exemplos, o texto em negrito não pode ser alterado porque é parte do comando. Como você pode ver, os caminhos das pastas e outras opções são personalizados para os nossos exemplos específicos, então eles serão diferentes quando você os usar.

rsync /home/jon/Desktop/data/*.jpg / home / jon / Desktop / backupdata /

Neste exemplo acima, todos os arquivos JPG do /dados/ pasta são copiados para o /Dados de backup/ pasta na pasta do usuário Jon's Desktop.

rsync --max-size =2k / home / jon / Desktop / dados / / home / jon / Desktop / backupdata /

Este exemplo de rsync é um pouco mais complicado, já que está configurado para não copiar arquivos se forem maiores que 2.048 KB. Ou seja, copiar apenas arquivos menores que o tamanho indicado. Você pode usar k, m ou g para indicar kilobytes, megabytes e gigabytes no multiplicador de 1.024 ou kb , mb ou gb para usar 1.000.

rsync --min-size =30mb / home / jon / Desktop / dados / / home / jon / Desktop / backupdata /

O mesmo pode ser feito para --min-size , como você vê acima. Neste exemplo, o rsync só copiará arquivos com 30 MB ou mais.

rsync --min-size =30mb --progresso / home / jon / Desktop / data / / home / jon / Desktop / backupdata /

Quando você está usando o rsync para copiar arquivos que são muito grandes, como 30 MB ou mais, e especialmente quando há um número deles, você pode querer ver o progresso da função de cópia em vez de assumir que o comando foi congelado. Nesses casos, use o --progresso opção para assistir o processo chegar a 100%.

rsync --recursivo / home / jon / Desktop / data / home / jon / Desktop / data2

o --recursivo opção fornece uma maneira fácil de copiar uma pasta inteira para um local diferente, como / data2 / pasta no nosso exemplo.

rsync -r --exclude = "*.deb' / home / jon / Desktop / data / home / jon / Desktop / backupdata

Você também pode copiar uma pasta inteira, mas excluir arquivos de uma certa extensão de arquivo, como arquivos DEB, neste exemplo acima. Desta vez, o todo /dados/ pasta é copiada para /Dados de backup/ como no exemplo anterior, mas todos os arquivos DEB são excluídos da cópia.