IST - Física MEFT - Programação 18:15:03
03 - May - 2024
  Página de entrada  
  Informações  
  Avaliação  
  Sumários  
  Séries Semanais  
  Trabalhos Finais  
  Bibliografia  
  Manuais  
  Links Úteis  
  HowTo  
  Pagina Web (Exemplo)  
  Turmas de Laboratório  
  Notas Finais e Marcações  
  Contacto  

HowTo: RSync


Sumário
1. Introdução
2. Instalação
3. Opções mais frequentes
4. Comandos mais usuais
5. Documentação e Links Úteis
Início

1. Introdução

O rsync é um software livre para transferir e sincronizar ficheiros entre um computador e uma unidade de armazenamento.
Início

2. Instalação

Para fazer a instalação do rsync em ubuntu fazer:
apt-get install rsync
Início

3. Opções mais frequentes

A estrutura dos comandos de rsync é a seguinte:
rsync [Opções] origem/ destino/
A opções mais usuais são:
OpçõesSignificado
-a, --archiveModo arquivo. É equivalente a fazer '-rlptgoD'
-b, --backup Os ficheiros de destino preexistentes são renomeados à medida que cada arquivo é transferido ou excluído. Você pode controlar para onde vai o arquivo de backup e o que é anexado usando as opções '--backup-dir' e '--suffix'
-c, --checksum Faz verificação com base em 'checksum' em vez da modificação da data ou do tamanho
-d, --dirstransfere pastas sem recorrer (?????)
-g, --groupPreservar grupo associado ao ficheiro
-h, --human-readable Escrita em formato legível por humanos
-l, --linksCopiar link simbólicos como links simbólicos
-n, --dry-run Faz uma execução de teste sem fazer nenhuma alteração
-o, --ownerPreserva o proprietário do ficheiro (só superuser)
-p, --permsPreserva as permissões dos ficheiros
-PO mesmo que --partial --progress
-r, --recursive Executa recursivamente sobre todas as sub-pastas
-R, --relativeUsa nomes de caminhos relativos
-t, --timesPreserva os tempos de modificação dos ficheiros
-z, --compress Comprime os dados dos ficheiros durante a transferência
--backup-dir=DIR Em combinação com a opção '--backup' (ou -b), diz ao rsync para armazenar todos os backups na pasta especificada no lado receptor. Pode ser usado para backups incrementais. Também se pode especificar um sufixo de backup usando a opção '--suffix', caso contrário, os arquivos de backup no diretório manterá seus nomes de arquivo originais.
--devices Preserva os ficheiros do dispositivo (só superuser) (????)
--exclude=PATTERN Exclui na cópia ou sincronização os ficheros correspondentes a 'PATTERN'
--include=PATTERN Inclui na cópia ou sincronização os ficheros correspondentes a 'PATTERN'
--partialMantém os ficheiros parcialmente transferidos
--progress Mostra o progresso da durante a execução
--specialsPreserva ficheiros especiais (????)
--suffix=SUFFIX Permite substituir o sufixo de backup padrão usado com a opção '--backup' (ou -b). O sufixo padrão é um '~' no caso de '-backup-dir' não ser especificado, caso contrário, é uma string vazia.
--delete Apaga os ficheiros do destino que não existem na origem
-v, --verboseVerbose
-q, --quietElimina mensagens que não são de erro (stdout)
-h, --helpMostra ajuda
--config=FILEIndica o ficheiro de configuração para a execução
--no-detachNão se liberta da janela em que é executadou
--log-file=FILEIndica o ficheiro 'log' a usar
Início

4. Comandos mais usuais

Aqui são feitas as explicações para os comandos mais usuais:
  • rsync origem/ destino/
    É o comando mais simples, vai copiar ou sincronizar os ficheiros da pasta 'original' para a pasta 'cópia'
  • rsync [Opções] --dry-run origem/ destino/
    Faz a execução do programa mostrando os ficheiros a copiar sem, no entanto, fazer qualquer alteração. Se depois se quiser fazer a execução, usa-se o mesmo comando sem '--dry-run'.
  • rsync -av origem/ destino/
    Faz a execução do programa copiando ou sincronizando recursivamente os ficheiros da pasta 'original' para a pasta 'cópia', preservando as permissões, datas e outros dados dos ficheiros. Para além disso, mostra o que está a fazer.
  • rsync -av --delete origem/ destino/
    Para além do que a execução '-av' faz, apaga em 'cópia' os ficheiros que não se encontram em 'original'.
    É aconselhável usar com cuidado, por exemplo, executando inicialmente com a opção '--dry-run' que apenas mostra o que vai fazer.
  • rsync -av --exclude=file1,file2,... origem/ destino/
    Na execução '-av' ignora os ficheiros indicados (file1,file2,...).
  • rsync -av --include=L* --exclude=* origem/ destino/
    Na execução '-av' ignora todos os ficheiros excepto os começados por 'L'.
  • rsync -aP --include=L* --exclude=* origem/ destino/
    O comando adicional '-P' é equivalente às opções '--progress --partial' juntas. '--progress' vai mostrar uma barra de progresso da execução e '--partial' permite continuar qualquer transferência que foi interrompida.
  • rsync -a --delete --backup --backup-dir=/path/to/backup origem/ destino/
    Outro comando importante é criação de um backup. Faça-se '-backup' (ou '-b') com o comando '-dir' para que se possa especificar onde os arquivos de backup serão armazenados.
Início

5. Documentação e Links Úteis

Início