De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Desafio na era do Terabytes II

Colaboração: Fabio Maximo

Data de Publicação: 02 de December de 2008

Com as midias removiveis aumenta a demanda por sincronismo de diretorios. É pendrive, usbdisk, /home do lap e do desktop... O Rsync faz sincronismo de mão unica, enquanto o unison faz de mão dupla. O Rsync é um otimo programa e o utilizo em backups e sincronismos de repositorios... Porem para sincronizar meu pen drive com um diretorio no Desktop ou para sincronizar o meu disco USB com o espelho dele no Desk Top - ou seja lugares onde posso alterar qualquer um dos lados - prefiro o unison.

Pagina do Projeto: http://www.cis.upenn.edu/~bcpierce/unison/

USO:

  unison caminho1  caminho2 [opções]

Opções interessantes:

  • -batch (Não realiza nenhuma pergunta)

Comandos interativos (Sem o uso do --batch)

f segue a sujestão do unison (se existir)
I ignora este caminho permanentemente
E ignora permanentemente os arquivos com essa extensão
N ignora permanentemente os caminhos com esse final
m Junta as duas versões
d Mostra diferenças
x Mostra detalhes
L list all suggested changes tersely
l lista as alterações sujeridas com detalhes
p or b Volta para o item anterior
g Inicia propagação imediatamente.
q sai sem propagar alteração alguma
/ pula esse item
> ou . propaga da esquerda para direita
< ou , propaga da direita para esquerda

Por exemplo, para sincronizar meu pen drive eu executaria o seguinte comando:

  unison /media/maximo /home/maximo/backuppen

Na primeira vez ele vai perguntar bastante (a menos que se use o -b), porem depois é so nos arquivos alterados.

Uso remoto via SSH

Que tal sincronizar o seu diretorio de apostilas do lap top com o de casa?? Para sincronismo com o mesmo usuario local, eu uso o seguinte comando:

  unison /caminholocal ssh://remotehost//caminho/remoto

Exemplo

  unison -batch /home/maximo/ebooks ssh://adilson//home/adilson/ebooks

Sim, parece um erro mas não é: ha uma barra separando o host e o caminho (que tambem começa com uma barra).

Para sincronização com outro usuário

Para sincronização remota via ssh a partir de outro usuário especificado, no caso do exemplo o usuário fulano.

  unison /caminholocal ssh://usuario@remotehost//caminho/remoto

Exemplo:

  unison /tmp/diretoriolocal ssh://fulano@192.168.1.3//tmp/diretorio/remoto

Caso você vá sincronizar maquinas em redes usando ssh que roda em portas não padrão (Vai um virtua ai?):

  unison /caminholocal ssh://user@host:port//path/to/directory

Exemplo

  unison /local/diretorio ssh://fulano@192.168.1.3:30022//caminho/remoto

Acesso com chave ssh especifica: Parametros adicionais

Parametros adicionais do SSH podem ser adicionados com o -sshargs. Muito util para scripts mais seguros é usar uma chave especifica para aquele script. Adicione o parametro e os valores abaixo para usar a chave2 na conexão.

   -sshargs '-i /home/usuario/.ssh/chave2' 

Exemplo:

   unison -batch -sshargs '-i /home/zico/.ssh/chaveparabackup_rsa' /home/zico/diretorio ssh://zico@zico.com.br:20022//home/zico/diretorio

Abraço a todos, e não deixem de fazer um espelho de seu pendrive no desktop, alem de testar seus backups. Perder dados as vezes dói mais que perder o proprio hardware que o carrega, e como disse um professor muito querido me ensinou a máxima: "Pior que não ter backup é achar que tem!"

Error: No site found with the domain 's2.dicas-l.com.br' (Learn more)