Fazer automaticamente uma sincronização bidirecional de dois diretórios

17

Eu gostaria de fazer uma sincronização automática bidirecional entre pastas Directory Ae Directory B. Isso significa que sempre que um arquivo Directory Aou um de seus subdiretórios é alterado, essa alteração é aplicada imediatamente Directory Be sempre que um arquivo Directory Bou um de seus subdiretórios é alterado, essa alteração é aplicada imediatamente Directory A. Assim, os dois diretórios seriam completamente idênticos, incluindo as propriedades do documento. Como posso conseguir isso?

Estou usando o Ubuntu 16.10.

Links simbólicos não são uma opção.

Georgelemental
fonte
@ dadexix86 Se uma alteração feita Directory Afor aplicada Directory B, isso modifica um arquivo Directory Bou cria um novo. Mas, essa alteração não pôde ser aplicada novamente, Directory Apois os dois diretórios já são idênticos. Você não pode modificar um arquivo sem modificá-lo.
Georgelemental
1
Se isso for por motivos de backup, tenha muito cuidado ao implementar isso (cron + rsync, talvez?), Porque se você acidentalmente excluir um arquivo em um diretório, ele será removido do outro - para que você também tenha perdido o backup.
Carl H
mv B B.old && ln-s A B=). Se você deseja A para == B, basta criar um link de A para B. Caso contrário, use o rsync de A para B ou, provavelmente o melhor, algum tipo de controle de versão.
Panther
1
@CarlH sincronização não é para uma cópia de segurança ;-)
Rinzwind

Respostas:

10

Uníssono

O Unison é uma ferramenta GUI e baseada em terminal que permite que arquivos e diretórios sejam mantidos sincronizados entre si, entre diferentes diretórios e unidades locais ou em uma rede, que pode estar em diferentes sistemas operacionais. O aplicativo está disponível para sistemas operacionais Unix (Linux e Mac OS X) e Windows. Podem ser feitas alterações nos diferentes locais, e o Unison atualizará as máquinas com as versões corretas de arquivos e pastas, copiando, excluindo, renomeando ou excluindo arquivos e diretórios, conforme necessário.

O aplicativo de sincronização Unison é provavelmente o mais usado e confiável pela comunidade Ubuntu / Debian. Está disponível no Centro de Software e no gerenciador de pacotes. Ele possui uma linha de comando e uma interface gráfica do usuário (GUI) (GTK).

Unison Homepage

Wiki da Comunidade Ajuda do Ubuntu - Unison

Manual do Ubuntu - Unison

Um exemplo de uso breve, próximo à sua solicitação, pode ser encontrado na resposta da Rmano (captura de tela abaixo).

insira a descrição da imagem aqui

FreeFileSync

O FreeFileSync é um software de backup de dados gratuito que ajuda a sincronizar arquivos e sincronizar pastas. Ele foi projetado para economizar seu tempo de configuração e execução de backups de dados e, ao mesmo tempo, ter um bom feedback visual. O FreeFileSync é um software de código aberto, disponível para Windows, Linux e macOS.

Eu nunca tentei, mas parece valer a pena tentar. Possui uma GUI padrão e está em desenvolvimento ativo.

Página inicial do FreeFileSync

insira a descrição da imagem aqui

Synkron

Synkron é um aplicativo que ajuda você a manter seus arquivos e pastas sempre atualizados. Você pode sincronizar facilmente seus documentos, músicas ou fotos para ter suas versões mais recentes em todos os lugares. O Synkron fornece uma interface fácil de usar e possui muitos recursos. Além disso, é gratuito, de código aberto e multiplataforma.

Página inicial da Synkron

insira a descrição da imagem aqui

Felipe GM Maia
fonte
O unison está disponível nos repositórios do ubuntu. apt-get install unison-gtk
phil294
2

Durante muito tempo, usei o rsync para sincronizar meus laptops (2) e uma terceira máquina, depois tentei sincronizar, mas nesta manhã um famoso mecanismo de pesquisa me ofereceu este projeto:

Espelho

Você também encontrará uma comparação de diferentes soluções.

Seu principal argumento contra o rsync são: não em tempo real e nem oficialmente de duas maneiras.

ps: estou usando o zerotier para que minha máquina sempre possa se comunicar juntos.

JOduMonT
fonte
1

Eu recomendaria a synkronferramenta. Este é um aplicativo de código aberto disponível para Linux (e outros SOs). A cópia mais recente do arquivo é atualizada em pastas com base no carimbo de data / hora. A frequência da sincronização é definida pelo usuário.

Para instalar você precisa compilá-lo, o que requer Qt 4.3 ou versão recente.

Verifique a página do sourceforge ( synkron no sourceforge ) para obter detalhes de download e instalação.

Vantagens rsync+crone outras abordagens simples:

  • Um backup temporário é criado, salvo por um certo período de tempo.
  • Opção para não propagar exclusões.
  • Múltiplas pastas podem ser vinculadas como mestres ou configuração mestre-escravo.

Página do projeto - página Synkron / Documentação - documentação da Synkron

ankit7540
fonte
0

Chego tarde nessa questão: para executar essa tarefa com frequência nas mesmas pastas, existe o Synchrorep .

Sébastien Kus
fonte