Sincronizando pastas fora do Dropbox usando Links e Junções Simbólicas

6

Eu tenho lido muitas informações sobre isso e ainda não tenho certeza se é possível.

O que eu quero alcançar é: sincronizar uma pasta que esteja fora do Dropbox e qualquer arquivo alterado para essa pasta ou os arquivos dentro de espelhar para a pasta do Dropbox e o servidor do Dropbox.

Isso é o que eu tentei: Eu instalei o Link Shell Extension. Escolhi uma pasta com 10 fotos dentro e criei uma junção para ela dentro da pasta do Dropbox. Quando eu apago as imagens de dentro da pasta original (fora do Dropbox) a alteração é refletida na pasta Junction dentro da pasta Dropbox, não no servidor.

O mesmo comportamento exato com a opção Link simbólico.

Se eu selecionar manualmente o ícone Pausar Sincronização da bandeja do sistema do Dropbox e, em seguida, Retomar a sincronização = ele fará o upload das alterações para o servidor.

Eu sei que posso mover todos os meus arquivos dentro da pasta do Dropbox e criar junções / links simbólicos em seus locais originais, mas quero fazê-lo ao contrário.

Qual é a diferença entre escolher a junção e a opção de link simbólico em relação a uma pasta?

Obrigado.

    
por user2247336 17.10.2013 / 13:55

3 respostas

7

De acordo com o DropBox ( link )

Junction points and aliases

Dropbox will follow Windows junction points (Windows Vista or later) and sync the files or folders they link to. However, any changes to those files or folders made from the Windows operating system will not sync again until the Dropbox desktop application is restarted. To get around this, move the original folder to your Dropbox and add a junction point from its previous location to link to its new location in the Dropbox folder.

    
por 20.12.2013 / 02:02
2

Links simbólicos e junções não funcionam realmente para isso. Mas você pode usar outra coisa para conseguir o que deseja.

Meu aplicativo Boxifier ( link ) pode sincronizar pastas fora da sua pasta do Dropbox sem movê-las ou copiá-las para a pasta local do Dropbox. Você não precisa criar links ou junções simbólicas.

Basta clicar com o botão direito do mouse em uma pasta para sincronizá-lo.

SuasfotoscomeçarãoasersincronizadasetodasasalteraçõesfeitasnessapastaserãoespelhadasnoDropbox.

    
por 14.10.2014 / 00:36
0

Para uma solução mais avançada, mas melhor, você pode combinar uma instalação do cygwin rsync com um script em lotes init, chamando um script shell do cygwin que acionaria - sempre que roteirizado - uma sincronização sincronizada com a pasta de armazenamento em nuvem confiável de terceiros com o conteúdo deitado na pasta assistida.

(1.) Instale o cygwin seguindo este link . Cuidado para selecionar o rsync na lista de pacotes a serem selecionados. Se você errar, poderá executar o instalador com segurança sempre que desejar. Sempre que você precisar de outro pacote no futuro.

(2.) Depois de se movimentar no cygwin, obtendo uma compreensão básica do ambiente, edite o sync.sh sempre que quiser (você pode depois movê-lo para um local melhor).

conteúdo do sync.sh:

#!/usr/bin/env bash
#   The synchronized folders.
WATCHED_FOLDER=/cygdrive/DRIVE_LETTER/PATH/TO/WATCHED/FOLDER
SYNCED_FOLDER=/cygdrive/DRIVE_LETTER/PATH/TO/SYNCED/FOLDER
#   Will run forever!
until false
do
  #   Do a single remote synchronization
  rsync -avn --delete WATCHED_FOLDER SYNCED_FOLDER
  #   Wait five minutes before resyncing.
  sleep 300
done

(3) Faça alguns testes com chamadas manuais para sync.sh do cygwin. Assista os resultados. Altere algumas pastas e arquivos e execute novamente. Assista novamente. Repita.

(4). Quando estiver satisfeito com os resultados, ative -avn para -av para desativar o a seco por sua conta e risco . A partir deste ponto, as alterações serão executadas com eficácia sem suporte ao thrashbin da Microsoft .

(5.) Iniciar programas de > > iniciar > [clique com o botão direito do mouse] - > abrir > novo > arquivo.

(6.) Nomeie o arquivo sync.bat ou algo assim.

(7.) Editar sync.bat e ~/.bashrc do Cygwin:

conteúdo do sync.bat:

rem   call the synchronization neverending script.
DRIVE_LETTER:\PATH\TO\CYGWIN\Cygwin.bat

~ / .bashrc contents (isso é difícil, porque você precisa editá-lo com vi do Cygwin, mas provavelmente você pode resolver isso editando da Microsoft o arquivo DRIVE_LETTER: \ PATH \ TO \ CYGWIN \ home \ YOUR_USER_NAME.bashrc:

[...]
/cygdrive/DRIVE_LETTER/PATH/TO/sync.sh
[...]

Essa é uma linha que chamaria de loop infinito de sincronização. Essa não é a maneira verdadeira de fazer esse tipo de coisa, mas deve ser apenas OK por enquanto.

(8). Reinicie

(9). Verifique com taskmgr.exe ou o Gerenciador de Tarefas da Microsoft se há um bash.exe em execução. Se você ainda não iniciou o cygwin, esse deve ser o processo que está fazendo a sincronização.

(10.) Como etapas futuras opcionais, você pode querer daemonizar o processo de qualquer forma. Pode haver muitas possibilidades aqui.

Isso pode ser um passo a passo difícil, mas há muito suporte da comunidade na Internet para todas as etapas.

Muitas outras maneiras de fazer podem existir. Por exemplo, você pode iniciar automaticamente uma máquina virtual GNU / Linux que faria tudo isso sem o Cygwin. Isso exigiria que você compartilhasse as pastas monitoradas e sincronizadas pela rede local, melhoraria uma rede privada entre seu host e a máquina virtual e, em seguida, montaria as pastas do GNU / Linux usando os pacotes cifs-utils, samba e smbclient. Muitos dos estágios mostrados aplicarão o mesmo a essa outra metodologia de fornecer recursos de shell UNIX ao seu host Microsoft.

    
por 08.01.2014 / 10:06

Tags