Por que não sincronizar pastas fora de casa com o Ubuntu One?

19

Demorei um pouco para descobrir que, com o Ubuntu One, posso sincronizar apenas pastas na minha pasta pessoal. Em todas as outras pastas, a opção Ubuntu One está disponível nas preferências, mas as ações reais estão em cinza.

O FAQ do Ubuntu One é bem claro:

  

Não, atualmente você só pode selecionar para sincronizar pastas dentro de seu diretório pessoal.

Mas eu realmente me pergunto por que e se isso vai mudar e se há um truque em torno dele (um outro do que definir minha casa para / )?

Eu pessoalmente não tenho nenhum dado importante na minha pasta pessoal além das configurações do programa. Todos os documentos, imagens e músicas estão em uma pasta chamada /data , que está em uma partição diferente. Isso torna muito mais fácil quando se quer reinstalar o Ubuntu.

    
por peer 01.07.2011 / 08:13
fonte

5 respostas

17

Não vai mudar, pelo menos no futuro previsível (e nisso posso prever um par de anos no futuro). Permitir que os usuários selecionem pastas arbitrárias fora da sua casa para sincronizar com o Ubuntu One, que poderia potencialmente sincronizar entre vários computadores diferentes, abre um grande número de problemas de usabilidade para cobrir um caso de uso que, francamente, não é tão comum. / p>

Um dos problemas que eu lembro em cima da minha cabeça é que, se você tentar sincronizar um ponto de montagem de um dispositivo removível (e algumas pessoas tentam fazer isso), quando você remover o dispositivo, o syncdaemon será excluído tudo; para fazê-lo funcionar corretamente syncdaemon teria que saber sobre dispositivos, detectar sua remoção, coisas assim. Um grande esforço e muito potencial para pesadelos de usabilidade.

Outro problema é se você tentar sincronizar uma pasta com permissões especiais, propriedade ou tipos de arquivo: pense em /etc/ , /tmp/ ou /dev/ como alguns dos piores casos. Ou qualquer pasta que você não possua, na verdade. Poderíamos simplesmente proibir a sincronização de pastas que você não possui, mas sabemos que algumas pessoas estão executando o syncdaemon como root (apesar de nossos avisos).

Uma solução alternativa para você seria montar (via /etc/fstab , então você está razoavelmente certo de que a partição está montada toda vez - caso contrário corre o risco de perder seus dados sincronizados) a pasta /data em sua casa. Você poderia simplesmente mover /data para ~/data ou, se você tem coisas que têm o código /data codificado (bastante provável), ou se você já está acostumado a /data (também bastante provável), link simbólico ou vincule a montagem /data ao ponto de montagem em sua casa. Se você não quiser vê-lo em sua casa, basta torná-lo ~/.data .

    
por Chipaca 01.07.2011 / 12:00
fonte
4

Consegui fazer isso funcionar usando uma montagem de ligação. A linha em /etc/fstab se parece com isso:

/mnt/s1/Audio   /home/daniel/Music      bind    defaults,bind   0       0

Obviamente, você precisará de permissões de gravação para a pasta em questão. Possivelmente você pode precisar possuir os arquivos também, não tenho certeza.

    
por Daniel Murray 11.03.2012 / 05:05
fonte
3

Eu suspeito que a razão seja direitos. Você perceberá que não pode editar facilmente nenhum dos arquivos fora do seu diretório pessoal? Este é um recurso de segurança geral do linux, e eu suspeito que os desenvolvedores do Ubuntu One (com razão) acham que o usuário médio manteria todos os seus arquivos no diretório inicial, onde o daemon pode facilmente rodar sem privilégios elevados.

Em uma nota lateral sobre sua configuração, é tudo uma questão de preferência, mas eu mantenho o meu completo / home / em um disco / partição separada. Isto significa que entre re-instalações você precisa passar por e apagar todas as pastas / arquivos ocultos para uma instalação limpa, mas lhe dará a vantagem de um diretório home completamente nativo com direitos de ubuntuone, etc. - apenas um pensamento. / p>     

por thomasmichaelwallace 01.07.2011 / 10:08
fonte
1

Em duas palavras: use o Dropbox.

As razões listadas pelo @Chipaca podem ser difíceis de superar, mas o dropbox conseguiu de alguma forma. É verdade que esta solução não é de código aberto, mas até que o pessoal do Ubuntu One resolva alguns dos principais problemas de usabilidade (sendo um deles), muitos usuários não poderão usar o Ubuntu One.

    
por nbubis 12.04.2012 / 12:27
fonte
0

Eu tenho uma configuração muito semelhante no Ubuntu 12.04. Eu tenho uma partição NFTS com minha biblioteca de músicas que é visível para o Windows 7 e Ubuntu. Eu queria poder sincronizar este diretório com o Ubuntu One sem ter que mover explicitamente todo o diretório para meu diretório pessoal (parece uma solicitação razoável, certo?).

Minha solução foi simplesmente montar a partição compartilhada dentro do meu diretório pessoal toda vez que eu inicializo no Ubuntu. Isso levou dois passos bem simples.

  1. Instale e use pysdm para garantir que a partição seja montada corretamente na inicialização (não necessariamente em seu diretório pessoal, apenas em algum lugar no sistema de arquivos). Alternativamente, você mesmo pode modificar o arquivo /etc/fstab se tiver confiança suficiente. Como um usuário razoavelmente novo, achei a solução pysdm mais direta.

    De qualquer forma, certifique-se de fazer o backup do seu arquivo /etc/fstab antes de fazer este passo! (apenas no caso!)

    sudo cp /etc/fstab /etc/fstab.old (por exemplo)

    Se algo der errado, você poderá restaurar o arquivo antigo e voltar ao ponto zero:

    sudo cp /etc/fstab.old /etc/fstab

    Na pysdm GUI, selecione a partição de destino e clique no botão "Assistente". Certifique-se de selecionar a opção "O proprietário do dispositivo pode montá-lo". Isso garantirá que você possa montar novamente em seu diretório inicial usando o Upstart. No meu caso, eu defino a partição sda4 para montar em /media/sda4/ .

  2. Em geral, o comportamento do Upstart é definido por arquivos no diretório /etc/init/ . Para montar a nova partição (para mim, /media/sda4 ) em meu diretório inicial, defini um arquivo /etc/init/mount-mydirs.conf que contém:

    start on runlevel [2345]
    task
    exec /bin/mount-mydirs'
    

    A primeira linha informa ao Upstart para executar a tarefa na inicialização normal. A segunda linha informa ao Upstart que o trabalho deve ser executado uma vez (não como um trabalho indefinido ou recorrente), e a linha final diz para executar o script /bin/mount-mydirs (com privilégios de root).

    O arquivo '/ bin / mount-mydirs' se parece com:

    mount --bind /media/sda4/ /<home directory>

    (A opção --bind permite que os arquivos sejam acessados ​​do ponto de montagem original e do novo).

Estou a ouvir a minha biblioteca musical totalmente sincronizada e recém montada enquanto escrevo isto !!

    
por Dave B. 29.12.2012 / 21:21
fonte

Tags