Warum nicht Ordner außerhalb von zu Hause mit Ubuntu One synchronisieren?

19

Es hat eine Weile gedauert, bis ich herausgefunden habe, dass ich mit Ubuntu One nur Ordner in meinem Home-Ordner synchronisieren kann. In allen anderen Ordnern ist die Ubuntu One-Option in den Einstellungen verfügbar, die tatsächlichen Aktionen sind jedoch ausgegraut.

Die Ubuntu One FAQ macht diesbezüglich Folgendes klar:

Nein, derzeit können Sie nur Ordner in Ihrem Home-Verzeichnis synchronisieren.

Aber ich frage mich eigentlich, warum und ob sich das ändern wird und ob es einen Trick gibt (einen anderen als den, auf den ich mein Zuhause einstelle /)?

Ich persönlich habe außer den Programmkonfigurationen keine wichtigen Daten in meinem Home-Ordner. Alle Dokumente, Bilder und Musikdateien befinden sich in einem Ordner /data, der sich auf einer anderen Partition befindet. Das macht es viel einfacher, wenn man Ubuntu neu installieren möchte.

Peer
quelle
Ich kaufe nicht "Sie möchten keine speziellen Partitionen synchronisieren". Ich denke nicht, dass es ein triftiger Grund ist, Dinge außerhalb Ihres Home-Verzeichnisses nicht zu synchronisieren. Es gibt bestimmte Ordner / Verzeichnisse, die U1 niemals synchronisieren sollte. / etc, / home, / boot zum Beispiel unter Linux; \ windows, \ program files unter Windows. Ich habe genau die gleiche Situation. Ich behalte nichts in meinem Home-Verzeichnis oder in meinem Dokumentenverzeichnis auf meinem Windows-Laptop. Ich hätte dort Sachen im Wert von mehreren GB, wenn ich das täte. Ich bevorzuge stattdessen ein paar andere Orte.

Antworten:

17

Das wird sich zumindest in absehbarer Zeit nicht ändern (und dazu kann ich ein paar Jahre in die Zukunft sehen). Wenn Benutzer beliebige Ordner für die Synchronisierung mit Ubuntu One außerhalb ihres Hauses auswählen können, die möglicherweise zwischen mehreren verschiedenen Computern synchronisiert werden können, treten eine Vielzahl von Usability-Problemen auf, um einen Anwendungsfall abzudecken, der, ganz offen gesagt, nicht allzu häufig ist.

Eines der Probleme, an das ich mich aus dem Kopf erinnere, ist, dass wenn Sie versuchen, einen Bereitstellungspunkt eines Wechseldatenträgers zu synchronisieren (und einige Leute versuchen dies zu tun), wenn Sie den Syncdaemon des Geräts entfernen, alles gelöscht wird. Damit es richtig funktioniert, müsste syncdaemon über Geräte Bescheid wissen, deren Entfernung erkennen, solche Dinge. Ziemlich viel Aufwand und viel Potenzial für Usability-Albträume.

Ein weiteres Problem ist , wenn Sie versuchen , einen Ordner mit speziellen Berechtigungen, den Besitz oder Dateitypen darin zu synchronisieren: Man denke an /etc/, /tmp/oder /dev/wie einige der schlimmsten Fälle. Oder einen Ordner, den Sie nicht besitzen. Wir könnten das Synchronisieren von Ordnern, die Sie nicht besitzen, einfach ablehnen, aber wir wissen, dass einige Leute syncdaemon als root ausführen (trotz unserer Warnungen).

Ein Workaround für Sie wäre das Mounten (über /etc/fstab, so dass Sie sicher sind, dass die Partition jedes Mal gemountet wird - andernfalls riskieren Sie den Verlust Ihrer synchronisierten Daten) des /dataOrdners in Ihrem Zuhause. Sie könnten einfach bewegen /datazu ~/dataoder, wenn Sie die Dinge haben, die haben /dataPfad fest einprogrammiert (sehr wahrscheinlich), oder wenn Sie bereits gewohnt sind , /datasich (auch sehr wahrscheinlich), Symlink oder binden Halterung /dataan den Mount - Punkt in Ihrem Zuhause. Wenn Sie es in Ihrem Zuhause überhaupt nicht sehen möchten, machen Sie es einfach ~/.data.

Chipaca
quelle
Ich denke, der Anwendungsfall ist derzeit nicht sehr verbreitet, da es keine nette Schnittstelle zum Synchronisieren beliebiger Ordner gibt. Ich bin mir sicher, dass dies keine leichte Aufgabe ist, aber sobald die technischen und benutzerfreundlichen Probleme gelöst sind und eine schöne intuitive Benutzeroberfläche zur Verfügung steht, werden es sicher viele Menschen nutzen, da viele Menschen mehrere Computer haben.
Aras
SpiderOak, Wuala und Bitcasa unterstützen alle die Synchronisierung externer Laufwerke unter Linux, sodass das Problem nicht unüberwindbar ist. Sie erwähnen, dass syncdaemonalles gelöscht wird, wenn das Laufwerk entfernt wird - seid ihr nicht die Autoren von syncdaemon? Kannst du es nicht so programmieren, dass es das nicht für externe Laufwerke macht?
BlueRaja - Danny Pflughoeft
Ja, natürlich können wir. Das haben wir noch nicht getan.
Chipaca
Unter Windows mit Hauptbenutzern ist es nur <del> dumm </ del>, das Ändern zu verbieten. Unternehmen und vernünftige Heiminstallationen haben häufig ein anderes Systemlaufwerk als das Datenlaufwerk in Windows. Z.B. Ich behalte nie etwas in c:\users\<myusername>, ich behalte alle persönlichen und alle anderen Daten auf einer separaten Partition auf einer separaten Festplatte. Unter Windows ist das Mounten und Verknüpfen jedoch nicht in allen Versionen so einfach wie unter Linux, sodass man diese Laufwerke oder Ordner nicht einfach in den eigenen Ordner mounten oder verknüpfen muss. Ich finde es total verrückt, dass ich diesen Ort nicht ändern darf. Auch Dropbox erlaubt das.
n611x007
1
@naxa-Power-User können den Speicherort ihres Home-Verzeichnisses auf ein anderes Laufwerk ändern (was Sie bereits getan haben , wenn Sie alle Ihre persönlichen Daten dort aufbewahren), sodass ein bestimmter Punkt nicht zutrifft.
Chipaca
4

Ich habe es geschafft, dies mit einem Bind Mount zum Laufen zu bringen. Die Zeile in /etc/fstabsieht folgendermaßen aus:

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

Natürlich benötigen Sie Schreibrechte für den betreffenden Ordner. Möglicherweise müssen Sie die Dateien auch besitzen, da bin ich mir nicht sicher.

Daniel Murray
quelle
3

Ich vermute, der Grund sind Rechte. Sie werden feststellen, dass Sie auch außerhalb Ihres Home-Verzeichnisses keine der Dateien leicht bearbeiten können? Dies ist eine allgemeine Sicherheitsfunktion von Linux, und ich vermute, dass die Ubuntu One-Entwickler (zu Recht) der Meinung sind, dass der Durchschnittsbenutzer alle seine Dateien im Home-Verzeichnis speichern würde, in dem der Daemon ohne erhöhte Berechtigungen problemlos ausgeführt werden kann.

Eine Randnotiz zu Ihrer Konfiguration ist alles eine Frage der Präferenz, aber ich behalte mein vollständiges / home / auf einer separaten Festplatte / Partition. Dies bedeutet, dass Sie zwischen Neuinstallationen alle versteckten Ordner / Dateien löschen müssen, um eine Neuinstallation durchzuführen. Sie erhalten jedoch den Vorteil eines vollständig nativen Basisverzeichnisses mit Ubuntuone-Rechten usw. - nur ein Gedanke.

thomasmichaelwallace
quelle
2
oh, und ich habe gerade eine der offensichtlicheren Problemumgehungen (sym links) ausprobiert und Ubuntuone hatte keine davon ...
ThomasMichaelwallace
1

In zwei Worten: Verwenden Sie Dropbox.

Die von @Chipaca aufgelisteten Gründe sind möglicherweise schwer zu überwinden, aber dropbox hat es irgendwie geschafft. Diese Lösung ist zwar keine Open-Source-Lösung, aber bis die Leute bei Ubuntu One einige große Usability-Probleme gelöst haben (dies ist eines davon), können viele Benutzer Ubuntu One nicht verwenden.

nbubis
quelle
0

Ich habe ein sehr ähnliches Setup unter Ubuntu 12.04. Ich habe eine NFTS-Partition mit meiner Musikbibliothek, die sowohl für Windows 7 als auch für Ubuntu sichtbar ist. Ich wollte in der Lage sein, dieses Verzeichnis mit Ubuntu One zu synchronisieren, ohne das gesamte Verzeichnis explizit in mein Home-Verzeichnis verschieben zu müssen (scheint eine vernünftige Aufforderung zu sein, oder?).

Meine Lösung bestand einfach darin, die freigegebene Partition bei jedem Start von Ubuntu in meinem Home-Verzeichnis zu mounten. Dies dauerte zwei ziemlich einfache Schritte.

  1. Installieren und verwenden Sie diese Option, pysdmum sicherzustellen, dass die Partition beim Start korrekt bereitgestellt wird (nicht unbedingt in Ihrem Ausgangsverzeichnis, sondern nur irgendwo im Dateisystem). Alternativ können Sie die /etc/fstabDatei auch selbst ändern, wenn Sie sicher genug sind. Als ziemlich neuer Benutzer fand ich die pysdm-Lösung einfacher.

    Stellen Sie in jedem Fall sicher, dass Sie Ihre /etc/fstabDatei sichern , bevor Sie diesen Schritt ausführen! (nur für den Fall!)

    sudo cp /etc/fstab /etc/fstab.old (beispielsweise)

    Wenn etwas schief geht, können Sie die alte Datei jederzeit wiederherstellen und zur ersten zurückkehren:

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

    pysdmWählen Sie in der GUI die Zielpartition aus und klicken Sie auf die Schaltfläche "Assistent". Stellen Sie sicher, dass Sie die Option "Der Besitzer des Geräts kann es bereitstellen" auswählen. Auf diese Weise stellen Sie sicher, dass Sie Upstart zum erneuten Laden in Ihr Basisverzeichnis verwenden können. In meinem Fall habe ich die sda4Partition so eingestellt, dass sie bei eingehängt wird /media/sda4/.

  2. Im Allgemeinen wird das Verhalten von Upstart durch Dateien im /etc/init/Verzeichnis definiert. Um die neue Partition (für mich /media/sda4) in meinem Home-Verzeichnis bereitzustellen, habe ich eine /etc/init/mount-mydirs.confDatei definiert, die Folgendes enthält:

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

    In der ersten Zeile wird Upstart angewiesen, die Aufgabe beim normalen Start auszuführen. In der zweiten Zeile wird Upstart mitgeteilt, dass der Job einmal ausgeführt werden soll (nicht als unbestimmter oder wiederkehrender Job), und in der letzten Zeile wird das Skript ausgeführt /bin/mount-mydirs(mit Root-Rechten).

    Die Datei `/ bin / mount-mydirs 'sieht folgendermaßen aus:

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

    (Mit der Option --bind kann auf die Dateien sowohl vom ursprünglichen als auch vom neuen Einhängepunkt aus zugegriffen werden.)

Ich höre gerade meine vollständig synchronisierte, neu eingebundene Musikbibliothek, während ich das schreibe !!

Dave B.
quelle