Compactar pasta com rsync.

1. Compactar pasta com rsync.

Rubens Leonardo de Oliveira Lima Torres
rubinhotorres

(usa Debian)

Enviado em 10/09/2020 - 17:25h

Boa tarde gente ;

Queria fazer um BKP de uma pasta inteira de outro computador que esta na mesma rede que o meu. Sendo que o meu pc e linux e a outra maquina e windows mas as duas se comunicam e consigo acessar a pasta via modo gráfico e também linha de comando.

Eu tentei usar o LuckyBackup mas não achei nele a opção de compactar a pasta sendo onde essa pasta tem uns 30 Gb.

Queria ver co vocês como fazer esse BKP com o rsync e que compacta-se a pasta para ela ficar o menos possível. E como fazer isso automaticamente todos os dias sem que eu precisa-e executar o comando dia a dia.

Fico grato pela ajuda

Rubens Torres
iniciante_Debian


  


2. Re: Compactar pasta com rsync.

me
meteoro17

(usa Outra)

Enviado em 11/09/2020 - 10:01h

Com rsync eu não sei..
Faço backups com o TAR mesmo.
Tem umas opções do TAR para comprimir em gz..


3. Re: Compactar pasta com rsync.

JOAO PAULO SCOPEL
joaopauloscopel

(usa Ubuntu)

Enviado em 11/09/2020 - 10:47h

rubinhotorres escreveu:

Boa tarde gente ;

Queria fazer um BKP de uma pasta inteira de outro computador que esta na mesma rede que o meu. Sendo que o meu pc e linux e a outra maquina e windows mas as duas se comunicam e consigo acessar a pasta via modo gráfico e também linha de comando.

Eu tentei usar o LuckyBackup mas não achei nele a opção de compactar a pasta sendo onde essa pasta tem uns 30 Gb.

Queria ver co vocês como fazer esse BKP com o rsync e que compacta-se a pasta para ela ficar o menos possível. E como fazer isso automaticamente todos os dias sem que eu precisa-e executar o comando dia a dia.

Fico grato pela ajuda

Rubens Torres
iniciante_Debian


Olá,

Antes de responder sua pergunta, vamos esclarecer por etapas o seguinte:

1º - O Comando RSYNC por si só, serve para realizar a sincronização de arquivos e pastas entre hosts LINUX apenas, sejam eles remotos ou locais. (Salvo exceção de computadores com Windows 10 e com o SSH Habilitado)
2º - Para comprimir os arquivos usando o RSYNC, você pode utilizar como argumento a função (-z).
3º - Ao fazer o backup utilizando o rsync, você pode usar os seguintes argumentos: (hoje eu uso assim em meu ambiente profissional)

rsync -ogphrbtvD -X /caminhoorigem /caminhodestino 


rsync - comando utilizado para sincronização de diretórios.
-o , –owner preservar proprietário (somente superusuário )
-g , –group preservar grupo
-p , –perms preservar permissões
h , – legível por humanos números de saída em um formato legível por humanos
-r , –recursive recursão em diretórios
-b , –backup faça backups (consulte –suffix & –backup-dir )
-t , –times preservar os tempos de modificação
-v , –verbose mostrar o processo em escrita na tela, modo verboso
-D o mesmo que –dispositivos – especiais
-X , –xattrs preservar atributos estendidos

Eu particularmente não uso a compressão de arquivos, e sim somente a sincronização. Esta sintaxe facilita muito em casos onde você precisa restaurar um backup, pois ao precisar restaurar, basta inverter os caminhos no comando, por exemplo:

rsync -ogphrbtvD -X /caminhoorigem /caminhodestino 


Para restaurar o backup, pode-se usar:
rsync -ogphrbtvD -X /caminhodestino /caminhoorigem  



Este site aqui mostra maiores detalhes sobre a sintaxe e opcionais para o uso do RSYNC: https://www.linuxforce.com.br/comandos-linux/comandos-linux-rsync/

Para automatizar a tarefa da sua linha de comando ser executada automaticamente, você deve agendar no CRONTAB do seu servidor Linux.

No meu caso, eu utilizo o Ubuntu Server e para mim realizar esta tarefa, eu executo o seguinte comando via SSH:

$ sudo vim /etc/crontab 


Dentro do Contrab, insiro a seguinte linha (o exemplo é meu servidor em produção):

1 2 * * * rsync -ogphrbtvD -X /var/www/nextcloud [email protected]:/mnt/backups_vms/nextcloud 


1 - Minuto a ser executado
2 - Hora a ser executado
* - Dia da Semana.
* - Dia do mês.
* - Mêses do Ano.
/var/www/nextcloud - caminho de origem no servidor local
[email protected]:/mnt/backups_vms/nextcloud - Host remoto de destino, para onde os arquivos estão sendo enviados.

O * significa como "todos".

Para a execução automática funcionar, os servidores devem ter comunicação entre si através das chaves SSH e não por autenticação de usuário e senha.

Isto entra em outro assunto, mas você pode obter esta informação facilmente aqui no fórum...

Espero ter lhe ajudado! Se ainda assim tiver dúvidas, poste aqui que tentaremos lhe auxiliar na medida do possível.

Abraço!


Atenciosamente,

"Com grandes poderes vem grandes responsabilidades."