Eu fiz alguns links para arquivos em uma pasta. Quando adicionei essa pasta ao Dropbox, os links continham cópias duplicadas dos arquivos vinculados. Você já teve esse problema? Você entende o que está acontecendo? Há uma solução?
Para deixar essa pergunta mais clara: Na coluna "tipo" do gerenciador de arquivos, antes de conectar-se ao Dropbox, Link_to_notes mostrou ser um link e o tamanho era 32 bytes. Após conectar-se ao Dropbox, o Link_to_notes mostrou ser um documento de texto sem formatação e o tamanho era 18,7 kB, o tamanho do arquivo de anotações.
dropbox
symbolic-link
user119046
fonte
fonte
Respostas:
O DropBox segue links simbólicos e os trata como diretórios. É realmente útil para fazer backup sem precisar mover arquivos e diretórios para o diretório do DropBox.
fonte
A melhor maneira de fazer isso é armazenar os arquivos na pasta dropbox e vincular-lhes o link de fora ...
Então, crie ~ / Dropbox / Documents e link simbólico:
Isso impede que o dropbox fique confuso e desconecte qualquer coisa que seja um link interno, porque você tem todas as coisas internas e, quando você as deseja em outro lugar, vincula-as ao dropbox. A regra básica é que não há links simbólicos em nenhum lugar da pasta dropbox ... coloque-os fora da pasta dropbox e você não terá problemas.
Eu tenho o dropbox em várias máquinas ubuntu e tenho todas as minhas principais pastas de nível superior realmente armazenadas no dropbox.
fonte
O dropbox seguirá links sym para diretórios, mas quebrará um link (sym ou hard) para um arquivo e o substituirá por um arquivo.
fonte
TL; DR: Abaixo está uma maneira de obter um comportamento bastante semelhante aos links simbólicos, apenas no nível da interface gráfica do usuário (GUI), o que é especialmente útil se você não quiser que o DropBox copie repetidamente os mesmos arquivos para diferentes pastas dentro do DropBox hierarquia apenas porque você deseja visualizá-los de lugares diferentes (ou seja, caminhos de pastas).
fundo
Mais de uma vez, eu fui queimado pelas pastas duplicadas do DropBox se eu criar links simbólicos (links simbólicos) dentro da hierarquia de pastas do DropBox, até o ponto de encher minha conta. Como muitos observaram na web, não há uma correção real para a falta do DropBox de tratar adequadamente os links simbólicos, o que é lamentável, pois não seria difícil para eles fazê-lo.
Solução alternativa
Uma solução alternativa que eu uso, no entanto, para obter o comportamento equivalente dos links simbólicos na hierarquia do DropBox - o que outras pessoas chamam de "links simbólicos internos" - sem o DropBox duplicar tudo, é criar o equivalente a um arquivo de atalho do Windows (por exemplo, , um arquivo .lnk no ecossistema MS). Eu faço isso criando um arquivo .desktop que abre o gerenciador de arquivos do meu sistema no caminho desejado. Portanto, essa solução alternativa funciona apenas no nível da GUI e apenas para sistemas compatíveis com XDG (por exemplo, Ubuntu, sistemas baseados no GNOME, muitos outros).
Exemplo
Por exemplo, estou lendo as técnicas avançadas de Python para um novo trabalho que estou executando, e os PDFs que estou lendo são armazenados na minha pasta DropBox para o GoodReader App (iOS), para que eu possa ler os dois na minha área de trabalho e com meus dispositivos móveis. Em vez de precisar detalhar essa pasta (
/home/morse/lib/active/GoodReader/Books/Python
), basta criar umaPython.desktop
pasta/home/morse/Desktop
com o seguinte conteúdo:(Nota: Certifique-se de adaptar a
Exec=nautilus ...
parte se você estiver usando um gerenciador de arquivos diferente do Nautilus, e é claro que você vai querer adaptar oName=
,Icon=
e parte do caminho daExec=
linha para cada "link simbólico" que deseja criar.)Com isso, vejo uma pasta chamada Python na minha área de trabalho que age como um link simbólico - ou seja, clico duas vezes nela e abre a pasta apropriada - mas apenas um pequeno arquivo de texto (por exemplo, Python. desktop) é sincronizado com o DropBox e meus outros sistemas (em oposição a todo o conteúdo eventualmente ser duplicado em qualquer lugar pelo DropBox).
Como em outros arquivos .desktop, as permissões devem ser definidas para que o arquivo seja legível e executável (por exemplo,
chmod 700 Python.desktop
ouchmod 755 Python.desktop
) para que o ícone indicado seja exibido e clique duas vezes nele para realmente fazer alguma coisa.Sumário
Em resumo, então, sempre terei os arquivos reais disponíveis em algum lugar do DropBox --- neste exemplo,
/home/morse/lib/active/GoodReader/Books/Python
--- mas também terei um "atalho" na área de trabalho em todos os meus sistemas baseados em Linux para os quais também tem o DropBox configurado.Obviamente, essa solução alternativa não funciona no nível da linha de comando, como faria um verdadeiro link simbólico.
Dito isto, essa parece ser uma nova solução alternativa no nível da GUI, que eu não vi postada em nenhum outro lugar. Portanto, espero que essa abordagem possa ser útil para outras pessoas.
fonte
Comprima seus links e salve o arquivo compactado no Dropbox
As respostas anteriores são exaustivas e claras. Eu apenas sugiro três soluções alternativas, com base em um único princípio. O terceiro parece mais difícil, mas é muito eficiente. A idéia é: compactar seus links simbólicos em um arquivo tar, que o Dropbox não tratará como um link, e salve-o no Dropbox. A terceira maneira é quase tão direta quanto copiar seus links diretamente para o Dropbox - na verdade, muito mais rápido do que copiar vários links, um por um.
Eu tenho cerca de vinte links simbólicos que normalmente uso na minha instalação do Lubuntu, por exemplo, para acesso rápido a scripts bash salvos no Dropbox, a discos rígidos externos, a documentos usados com frequência etc. Eles estão todos no meu diretório pessoal e na área de trabalho, e acho que É conveniente ter uma cópia do Dropbox para usar em outras instalações ou quando eu fizer o upgrade à distância (ou seja, quando eu reinstalar depois de tentar fazer o upgrade à distância;).
1ª via
Você cria um diretório chamado MyLinks (por exemplo, em Documentos) e copia todos os links simbólicos da sua casa; se você tiver links simbólicos em outros diretórios, crie subdiretórios no MyLinks e copie seus links simbólicos para eles. Por exemplo, se os links que você deseja salvar estiverem em casa e na área de trabalho, copie os links pessoais para MyLinks, crie um diretório chamado Área de Trabalho nele e copie os links da Área de Trabalho. Em seguida, abra um terminal, cd Documents (desde que este seja o diretório onde está o MyLinks) e crie um arquivo tar:
(Lembre-se de adicionar a extensão ".tar" ao nome do arquivo tarfile ou o Ubuntu Archive Manager se recusaria a abri-lo.) Se você fizer isso, tome cuidado para não adicionar a opção -h (--dereference) ao tar porque se comportaria com precisão como Dropbox e compactaria os arquivos de destino em vez dos links simbólicos. (A propósito, esse comportamento seria bem-vindo na maioria dos casos, especialmente se alguém visa à portabilidade, mas não é o caso de querer salvar os links simbólicos como links simbólicos.)
O arquivo tar também incluiria links quebrados temporariamente, como links para hdds externos não montados atualmente - o que é bom.
Salve o arquivo tar no seu Dropbox. Quando você precisar voltar os links, copie o arquivo tar para um diretório em seu sistema de arquivos (não no Dropbox), extraia-o (clique com o botão direito do mouse e escolha "Extrair aqui") e copie seus links simbólicos de volta para os locais em que deseja .
2ª via
Se os links simbólicos que você deseja salvar tiverem um prefixo unívoco (como "MySl" ...), você poderá criar seu tarfile rapidamente dessa maneira (espaços desnecessários adicionados para evitar erros):
O único ponto após "localizar" significa o diretório atual: abra o Terminal no diretório inicial (como padrão). Você certamente pode adicionar um caminho ao arquivo tar e pode emitir o comando de outro diretório que não esteja em casa: substitua o "." com o caminho para sua casa / usuário. Não há necessidade de criar diretórios de trabalho como os MyLinks acima. A restauração dos links simbólicos também é rápida: você copia o arquivo tarfile para sua casa, clica com o botão direito do mouse e "extrai aqui". No entanto, antes de começar a prefixar todos os nomes dos seus links simbólicos, dê uma olhada na próxima opção.
3ª via (e melhor)
Uma maneira muito rápida de coletar todos os seus links simbólicos em um arquivo tar é: abra um Terminal em sua casa / usuário (que é o padrão quando você abre um Terminal) e:
A desvantagem é que você inclui TODOS os seus links, incluindo alguns links simbólicos mozilla ou hplip que você nem sabia que tinha. Para evitar isso e copiar todos e somente os links simbólicos de uma lista especificada de diretórios sem recursão , escreva a lista após "localizar" no comando acima. Digamos que você queira salvar os links de casa / usuário e área de trabalho; você pode escrever
"-maxdepth 1" é para impedir que a localização ocorra novamente em casa. Você pode adicionar um caminho para tarfile, se desejar. Alternativamente:
Se você é preguiçoso e deseja usá-lo com frequência, pode adicioná-lo como um alias para .bashrc ou .bash_aliases em seu diretório pessoal (.bash_aliases é uma maneira muito conveniente de coletar seus aliases e, por que não, salvá-los em Dropbox...). Basta criar um novo arquivo vazio chamado .bash_aliases em seu diretório pessoal (ou seja, / home / user), abra-o com um editor de texto e escreva a seguinte linha:
Substitua os diretórios após "localizar" pelos de sua escolha e "save_symlinks" pelo nome de comando de sua escolha. Para restaurar, abra o gerenciador de arquivos (se o caminho para os diretórios no comando acima não for absoluto, o tarfile deve estar em casa / usuário), clique com o botão direito e extraia.
Se você fizer isso, a vida é mais fácil. Tudo o que tem a fazer é:
SALVAR: digite save_symlinks no Terminal, salve o arquivo tar em sua casa no Dropbox; RESTAURAR: copie o arquivo do Dropbox para o diretório inicial, clique com o botão direito do mouse e selecione "extrair aqui".
fonte