Sincronizando várias pastas base com dropbox e links simbólicos

4

Para manter vários computadores sincronizados com a caixa de depósito, tentei o seguinte.

Abordagem A.

-Computador 1: Instale o dropbox, a pasta dropbox: / Dropbox /
-Computador 1: Criar um link simbólico nessa pasta para a pasta pessoal

   $ln -s /home/ /Dropbox/

-Computador 2: Instalar dropbox, pasta dropbox: / Dropbox / (foi preenchido com arquivos do computador 1
-Computador 2: Tente sobrescrever os arquivos com links simbólicos para arquivos locais idênticos

$ln -sfn /home/ /Dropbox/
  ln: '/Dropbox/home': cannot overwrite directory

Então essa abordagem falha, alguém tem uma sugestão para corrigir o erro? Ou outra abordagem? As abordagens que cheguei até agora:

Abordagem B. Eu poderia escrever um script para recodificar symlink todos os arquivos, mas eu prefiro não ir nessa direção, então eu teria que rodar esse script para pegar novos arquivos.

Abordagem C. Use o rsync para sincronizar entre a pasta inicial e a caixa de depósito. Eu não gostaria que, desde então, não seja atualizado automaticamente, você teria que chamar o rsync para fazer isso. E colocar o rsync em um cronjob que é executado a cada minuto não parece uma solução ideal.

Alguém pode me ajudar a consertar a abordagem A ou chegar à abordagem D ou me convencer da abordagem B ou C?

    
por Sebastian 13.12.2012 / 19:21

2 respostas

1

Pensei em uma solução alternativa para os problemas com a abordagem A:

-Computador 2: pause a sincronização da caixa de depósito clicando com o botão direito do mouse no ícone de notificação e selecione "pausar sincronização"
-Computador 2: Remova todos os arquivos da sua caixa de depósito (opcional, mova-os para a sua pasta pessoal substituindo os arquivos locais, mas neste cenário eles são idênticos)
-Computador 2: Symlink como você fez no computador 1, um link na pasta dropbox para a pasta pessoal:

$ln -s /home/ /Dropbox/ 

-Computador 2: Retoma a sincronização do daemon do dropbox, já que os links simbólicos apontam exatamente para os mesmos arquivos e nenhuma sincronização deve acontecer.

Acho que esta é uma boa solução porque a pasta pessoal permanece intacta e o dropbox faz o que precisa em outra pasta em segundo plano. Não é realmente simples.

Também pensei na abordagem A2 e compartilharei aqui como alternativa:
-Computador 2: remova os arquivos originais em sua pasta pessoal e crie um link simbólico em sua pasta pessoal para os arquivos do Dropbox

Contras: isso faz com que todos os ícones da sua pasta pessoal tenham a seta do link neles. Agora você tem links simbólicos em sua pasta home ao invés de arquivos, você tem que estar ciente disso quando você faz operações de arquivo neles

    
por 14.12.2012 / 10:46
1

Existe realmente nenhuma maneira possível de especificar em qual diretório você quer que o Dropbox opere? Você não pode simplesmente dizer ao Dropbox para usar o / home?

Se não, você pode tentar ignorar links simbólicos e usar várias montagens de ligação para conseguir isso. Em outras palavras:

mount --bind /home /Dropbox

nos dois computadores.

    
por 14.12.2012 / 00:09