Pourquoi ne pas synchroniser des dossiers en dehors de la maison avec Ubuntu One?

19

Il m'a fallu un certain temps pour découvrir qu'avec Ubuntu One, je ne pouvais synchroniser que les dossiers de mon dossier personnel. Sur tous les autres dossiers, l'option Ubuntu One est disponible dans les préférences, mais les actions réelles sont grisées.

La FAQ Ubuntu One est assez claire à ce sujet:

Non, vous ne pouvez actuellement choisir de synchroniser les dossiers que dans votre répertoire personnel.

Mais je me demande en fait pourquoi et si cela va changer et s'il y a une astuce autour d'elle (une autre que d'installer ma maison /)?

Personnellement, je n'ai aucune donnée importante dans mon dossier personnel autre que la configuration du programme. Tous les documents, images et musiques se trouvent dans un dossier appelé /dataqui se trouve en fait sur une partition différente. Cela rend beaucoup plus facile quand on veut réinstaller Ubuntu.

pair
la source
Je n'achète pas "vous ne voulez pas synchroniser des partitions spéciales". Je ne pense pas que ce soit une raison valable pour ne pas synchroniser des éléments en dehors de votre répertoire personnel. Il existe certains dossiers / répertoires que U1 ne doit jamais synchroniser. / etc, / home, / boot par exemple, sous Linux; \ windows, \ program files sur Windows. J'ai exactement la même situation. Je ne garde rien dans mon répertoire personnel ou dans mon répertoire Documents sur mon ordinateur portable Windows. J'aurais plusieurs Go de choses là-bas si je le faisais. Je préfère utiliser quelques autres emplacements à la place.

Réponses:

17

Cela ne changera pas, du moins dans un avenir prévisible (et à ce sujet, je peux prévoir quelques années dans le futur). Permettre aux utilisateurs de sélectionner des dossiers arbitraires en dehors de leur domicile pour la synchronisation avec Ubuntu One, qui pourraient potentiellement se synchroniser entre plusieurs ordinateurs différents, ouvre un grand nombre de problèmes d'utilisation pour couvrir un cas d'utilisation qui, très franchement, n'est pas si courant.

L'un des problèmes dont je me souviens du haut de ma tête est que si vous essayez de synchroniser un point de montage d'un périphérique amovible (et que beaucoup de gens essaient de le faire), lorsque vous supprimez le périphérique, le syncdaemon supprimera tout; pour le faire fonctionner correctement, syncdaemon devrait connaître les appareils, détecter leur suppression, des choses comme ça. Un effort assez important et beaucoup de potentiel pour des cauchemars d'utilisation.

Un autre problème est que si vous essayez de synchroniser un dossier avec des autorisations spéciales, une propriété ou des types de fichiers: pensez à /etc/, /tmp/ou /dev/comme certains des pires cas. Ou tout dossier que vous ne possédez pas vraiment. Nous pourrions simplement interdire la synchronisation des dossiers que vous ne possédez pas, mais nous savons pertinemment que certaines personnes exécutent syncdaemon en tant que root (malgré nos avertissements).

Une solution de contournement pour vous serait de monter (via /etc/fstab, donc vous êtes raisonnablement sûr que la partition est montée à chaque fois - sinon vous risquez de perdre vos données synchronisées) le /datadossier dans votre maison. Vous pouvez simplement passer /dataà ~/dataou, si vous avez des choses dont le /datachemin est codé en dur (très probablement), ou si vous êtes déjà habitué à /datavous-même (également très probablement), créer un lien symbolique ou lier la monture /dataau point de montage de votre maison. Si vous ne voulez pas du tout le voir dans votre maison, faites-le ~/.data.

Chipaca
la source
Je pense que le cas d'utilisation n'est pas très courant maintenant car il n'y a pas une belle interface disponible pour synchroniser des dossiers arbitraires. Ce n'est pas une tâche facile, je suis d'accord, mais une fois que les problèmes d'ingénierie et d'utilisabilité seront résolus et qu'une belle interface intuitive sera disponible, je suis sûr que beaucoup de gens l'utiliseraient, car beaucoup de gens ont plusieurs ordinateurs.
Aras
SpiderOak, Wuala et Bitcasa prennent tous en charge la synchronisation des disques externes sur Linux, donc le problème n'est pas insurmontable. Vous mentionnez que syncdaemoncela supprimera tout lorsque le lecteur est retiré - n'êtes-vous pas les auteurs de syncdaemon? Vous ne pouvez pas le programmer pour ne pas le faire pour les disques externes?
BlueRaja - Danny Pflughoeft
Oui, bien sûr, nous le pouvons. Nous ne l'avons pas encore fait.
Chipaca
Sur les fenêtres avec des utilisateurs avancés, il est simplement <del> stupide </del> d'interdire de changer cela. Les entreprises et les configurations résidentielles saines ont un lecteur système souvent différent du lecteur de données de Windows. Par exemple. Je garde jamais rien dans c:\users\<myusername>, je garde tous les personnels et toutes les autres données à une partition séparée sur un disque dur séparé. Mais sous Windows, le montage et la liaison ne sont pas aussi faciles que sous Linux dans toutes les versions, donc on ne monte pas ou ne relie pas simplement ces lecteurs ou dossiers dans son dossier personnel. Je trouve totalement fou que je ne puisse pas changer cet endroit. Même Dropbox le permet.
n611x007
1
Les utilisateurs expérimentés de @naxa peuvent changer l'emplacement de leur répertoire personnel sur un autre lecteur (ce que vous avez déjà fait si vous y conservez toutes vos données personnelles), de sorte que ce point particulier est sans objet.
Chipaca
4

J'ai réussi à faire fonctionner cela en utilisant une monture de liaison. La ligne /etc/fstabressemble à ceci:

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

De toute évidence, vous aurez besoin d'autorisations d'écriture dans le dossier en question. Vous devrez peut-être également posséder les fichiers, je n'en suis pas sûr.

Daniel Murray
la source
3

Je soupçonne que la raison en est les droits. Vous remarquerez que vous ne pouvez pas non plus modifier facilement les fichiers en dehors de votre répertoire personnel? Il s'agit d'une fonctionnalité de sécurité générale de Linux, et je soupçonne que les développeurs d'Ubuntu One (à juste titre) pensent que l'utilisateur moyen conserverait tous ses fichiers dans le répertoire personnel, où le démon peut facilement s'exécuter sans privilèges élevés.

Sur une note latérale sur votre configuration, tout est une question de préférence, mais je garde mon / home / complet sur un disque / partition séparé. Cela signifie qu'entre les réinstallations, vous devez parcourir et supprimer tous les dossiers / fichiers cachés pour une installation propre, mais vous donnera l'avantage d'un répertoire personnel entièrement natif avec des droits ubuntuone, etc. - juste une pensée.

thomasmichaelwallace
la source
2
oh, et je viens d'essayer l'une des solutions de contournement les plus évidentes (liens sym) et ubuntuone n'en avait pas ...
thomasmichaelwallace
1

En deux mots: utilisez Dropbox.

Les raisons énumérées par @Chipaca peuvent être difficiles à surmonter, mais Dropbox a réussi d'une manière ou d'une autre. Certes, cette solution n'est pas open source, mais tant que les gens d'Ubuntu One ne résoudront pas certains problèmes d'utilisation majeurs (dont l'un d'eux), beaucoup d'utilisateurs ne pourront pas utiliser Ubuntu One.

nbubis
la source
0

J'ai une configuration très similaire sous Ubuntu 12.04. J'ai une partition NFTS avec ma bibliothèque musicale visible par Windows 7 et Ubuntu. Je voulais pouvoir synchroniser ce répertoire avec Ubuntu One sans avoir à déplacer explicitement le répertoire entier vers mon répertoire personnel (cela semble être une demande raisonnable, non?).

Ma solution consistait simplement à monter la partition partagée dans mon répertoire personnel à chaque démarrage de Ubuntu. Cela a pris deux étapes assez simples.

  1. Installez et utilisez pysdmpour vous assurer que la partition monte correctement au démarrage (pas nécessairement dans votre répertoire personnel, juste quelque part dans le système de fichiers). Alternativement, vous pouvez modifier le /etc/fstabfichier vous-même si vous êtes suffisamment confiant. En tant qu'utilisateur relativement nouveau, j'ai trouvé la solution pysdm plus simple.

    Dans tous les cas, assurez-vous de sauvegarder votre /etc/fstabfichier avant de faire cette étape! (Au cas où!)

    sudo cp /etc/fstab /etc/fstab.old (par exemple)

    En cas de problème, vous pouvez toujours restaurer l'ancien fichier et revenir à la case départ:

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

    Dans l' pysdminterface graphique, sélectionnez la partition cible et appuyez sur le bouton "Assistant". Assurez-vous de sélectionner l'option «Le propriétaire de l'appareil peut le monter». Cela garantira que vous pouvez remonter dans votre répertoire personnel à l'aide d'Upstart. Dans mon cas, j'ai défini la sda4partition sur laquelle monter /media/sda4/.

  2. En général, le comportement d'Upstart est défini par les fichiers du /etc/init/répertoire. Pour monter la nouvelle partition (pour moi, /media/sda4) dans mon répertoire personnel, j'ai défini un /etc/init/mount-mydirs.conffichier qui contient:

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

    La première ligne indique à Upstart d'exécuter la tâche au démarrage normal. La deuxième ligne indique à Upstart que le travail doit être effectué une fois (pas comme un travail indéfini ou récurrent), et la dernière ligne lui indique d'exécuter le script /bin/mount-mydirs(avec les privilèges root).

    Le fichier `/ bin / mount-mydirs 'ressemble à:

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

    (L'option --bind permet d'accéder aux fichiers à la fois à partir du point de montage d'origine et du nouveau).

J'écoute ma bibliothèque musicale entièrement synchronisée et nouvellement montée pendant que j'écris ceci !!

Dave B.
la source