Índice
Introdução ao rsync
LinuxNeste tutorial, vou explicar-lhe como utilizar o rsyncrsync(Remote Synchronization) para fazer cópias/cópias de segurança.
rsynTrata-se de uma ferramenta de sincronização de pastas disponível na maioria das distribuiçõesLinuxe que é frequentemente utilizada para efetuar cópias de segurança de ficheiros/sites…
Ao utilizar sucessivamente o mesmo comando, ou seja, com a mesma origem e destino,rynco rsync irá copiar apenas os novos elementos e aqueles que foram alterados.
A vantagem de utilizar o rsync é o suporte nativo ao SSH, que permite copiar para um servidor remoto ou a partir de um servidor remoto.
Utilização do rsync
Agora, vamos ver como funciona o rsync.
Tal como a maioria dos programas de cópia, é necessário especificar uma origem e um destino:
rsync -parameters source/ destination/Os parâmetros mais utilizados são:
- -a / –archive: permite efetuar uma cópia recursiva, preservando praticamente todas as propriedades dos elementos copiados.
- -v / –verbose: permite visualizar o progresso
Para ilustrar este tutorial, vamos guardar a pasta/etc/ansible/, numa primeira fase, no mesmo servidor, numa pasta específica/backup/ansible/, e, numa segunda fase, num servidor remoto.
Eis a pasta de origem:

Para copiar o ficheiro, eis o comando a utilizar:
sudo rsync -a /etc/ansible/ /backup/ansible/
-vComo se pode ver, o comando não apresenta qualquer saída; se se pretender obter informações sobre a transferência, é necessário adicionar o parâmetro.
Se eu verificar a pasta /backup/ansible/, vejo que as pastas e os ficheiros foram efetivamente copiados.

Como puderam ver no comando para efetuar a cópia, no final da fonte há um
/.Os dois comandos seguintes não têm o mesmo resultado:
rsync -a /etc/ansible /backup/ansible/rsync -a /etc/ansible/ /backup/ansible/O primeiro comando irá criar a pasta de origem no local de destino, o que significa que encontraríamos a cópia de segurança na seguinte pasta:
/backup/ansible/ansible/enquanto que o segundo comando copia o conteúdo da pasta de origem para a pasta de destino.
Para visualizar o progresso e o resultado do comandorsync, é necessário adicionar o parâmetro -v
sudo rsync -av /etc/ansible/ /backup/ansible/
Se eu executar o mesmo comando a seguir, pode-se ver que nada foi copiado, pois não foi efetuada qualquer alteração.

Na apresentação, referi quersynco suporta nativamente o SSH para efetuar a cópia de segurança para um servidor remoto e é isso que vamos ver agora.
O servidor remoto pode ser tanto a origem como o destino (pode até ser ambos ao mesmo tempo, mas ainda não experimentei!).
Eis a sintaxe para indicar o servidor remoto: <user>@<server>:/path/use/by/rsync/.
Para fazer a cópia de segurança da pasta /etc/ansible/ num servidor remoto:
sudo rsync -avz /etc/ansible/ [email protected]:/backup/ansible/Ao executar o comando, é necessário indicar a palavra-passe da conta no servidor remoto.


Como podem ver, adicionei o parâmetro -z, que permite ativar a compressão durante a transferência.
A conta utilizada para a ligação ao servidor remoto deve ter direitos de escrita na pasta de destino.
No servidor de destino, encontro os meus ficheiros e pastas que foram transferidos por rsync.
Na Internet, também encontrará esta sintaxe de comando:
sudo rsync -e ssh -avz /etc/ansible/ [email protected]:/backup/ansible/O parâmetro
-eé adicionado para indicar o shell remoto (remote shell)
Se pretender criar um script de cópia de segurança para um servidor remoto, terá de configurar uma autenticação SSH por chave.
Parâmetros adicionais para o rsync
Para concluir este primeiro tutorial dedicado aorsync , eis alguns parâmetros úteis:
--delete-after: esta opção permite eliminar os ficheiros na pasta de destino que já não se encontram na fonte--remove-source-files: eliminar os ficheiros da origem após a transferência; isto equivale a fazer um «cortar/colar», não sendo as pastas eliminadas.--exclude: permite excluir ficheiros ou pastas--exclude="*.log" --exclude="temp"; ao adicionar isto ao comando rsync, serão excluídos todos os ficheiros com a extensão .log e as pastas cujo nome contenha «temp».
Agora já tem todas as informações necessárias para configurar scripts de cópias de segurança utilizando o rsync.
Além disso, aqui está a página dersync manual do rsync com todos os parâmetros disponíveis.
Num projeto tutorial, explicarei como fazer cópias de segurança diferenciais e incrementais com o rsync.
