自宅の外のフォルダーをUbuntu Oneと同期してみませんか?


19

Ubuntu Oneでは、ホームフォルダー内のフォルダーのみを同期できることを知るのに時間がかかりました。他のすべてのフォルダーでは、Ubuntu Oneオプションが設定で利用できますが、実際のアクションはグレー表示されます。

Ubuntuの一つのよくある質問は、その上、非常に明確です:

いいえ、現在、ホームディレクトリ内のフォルダの同期のみを選択できます。

しかし、実際にこれがなぜ変わるのか、そしてそれの周りにトリックがあるのか​​どうか(私の家をに設定する以外の方法/)疑問に思います。

個人的には、プログラムの構成以外の重要なデータはホームフォルダーにありません。すべてのドキュメント、写真、音楽は、/data実際には別のパーティションにあるというフォルダーにあります。これにより、Ubuntuを再インストールする場合に非常に簡単になります。


「特別なパーティションを同期したくない」とは思っていません。ホームディレクトリ以外のものを同期しないのは正当な理由ではないと思います。U1が同期してはならない特定のフォルダー/ディレクトリがあります。/ etc、/ home、/ boot、たとえばLinux。\ windows、Windows上の\ programファイル。これとまったく同じ状況です。ホームディレクトリまたはWindowsラップトップのDocumentsディレクトリには何も保存しません。もしあれば、数GBのデータがあります。代わりに、他のいくつかの場所を使用することを好みます。

回答:


17

少なくとも予見可能な将来においては、変化することはありません(そして、これについては、数年先を予見できます)。複数の異なるコンピューター間で同期する可能性のあるUbuntu Oneと同期するために、ユーザーが自宅外の任意のフォルダーを選択できるようにすると、非常に率直に言ってあまり一般的ではないユースケースをカバーするために、多くのユーザビリティの問題が生じます。

頭上で覚えている問題の1つは、リムーバブルデバイスのマウントポイントを同期しようとすると(そしてかなりの数の人がこれを試みると)、デバイスを削除するとsyncdaemonがすべてを削除することです。syncdaemonが適切に機能するためには、デバイスについて知る必要があり、その削除を検出する必要があります。かなりの労力と、使いやすさの悪夢に対する多くの可能性。

考える:あなたはそれで特別な権限、所有権またはファイルタイプとフォルダを同期しようとすると、別の問題がある/etc//tmp/または/dev/最悪の場合の一部として。または、あなたが所有していないフォルダです。所有していないフォルダの同期を単に禁止することもできますが、実際には、一部の人々がsyncdaemonをルートとして実行していることを知っています(警告にもかかわらず)。

回避策は/etc/fstab、(を介してマウントすることです。そうすることで、パーティションが毎回マウントされます-そうでなければ、同期データを失う危険があり/dataます)フォルダーを家に置きます。パスにハードコードされたものがある場合(非常に可能性が高い)に移動/dataする~/dataか、/dataすでに慣れて/dataいる(非常に可能性が高い)場合/dataは、ホームのマウントポイントにマウントをシンボリックリンクまたはバインドします。自宅で見たくない場合は、作成してください~/.data


任意のフォルダを同期するための素敵なインターフェイスが利用できないため、今ではユースケースはあまり一般的ではないと思います。簡単なことではありませんが、エンジニアリングとユーザビリティの問題が解決され、直感的なインターフェイスが利用可能になると、多くの人が複数のコンピューターを使用するため、多くの人が使用するはずです。
アラス

SpiderOak、Wuala、およびBitcasaはすべてLinuxでの外部ドライブの同期をサポートしているため、この問題は克服できません。syncdaemonドライブを取り外すとすべてが削除されるとおっしゃっていますが、著者の皆さんではありませんsyncdaemonか?外付けドライブでそれをしないようにプログラムすることはできませんか?
BlueRaja-ダニーPflughoeft

はい、もちろんできます。まだそうしていません。
チパカ

パワーユーザーのいるウィンドウでは、これを変更することを禁止するのは賢明ではありません。企業、および健全な家庭のセットアップでは、システムドライブがWindowsのデータドライブとは異なることがよくあります。例えば。私はも保管せc:\users\<myusername>すべての個人データと他のすべてのデータを別のハードドライブ上の別のパーティションに保管します。しかし、Windowsでは、すべてのバージョンのLinuxほどマウントおよびリンクが簡単ではないため、それらのドライブまたはフォルダーを単にホームフォルダーにマウントまたはリンクするだけではありません。この場所を変更することが許可されていないことはまったく正気ではありません。Dropboxでも可能です。
n611x007

1
@naxaのパワーユーザーは、ホームディレクトリの場所を別のドライブに変更できます(実際にすべての個人データをそこに保存ている場合は、すでに完了しています)。
チパカ

4

バインドマウントを使用して、これを機能させることができました。の行は/etc/fstab次のようになります。

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

明らかに、問題のフォルダへの書き込み権限が必要になります。おそらくあなたもファイルを所有する必要があるかもしれません、私にはわかりません。


3

理由は権利だと思う。ホームディレクトリ以外のファイルも簡単に編集できないことに気付くでしょうか?これはLinuxの一般的なセキュリティ機能であり、Ubuntu Oneの開発者は(当然)平均的なユーザーはすべてのファイルをホームディレクトリに保持すると感じていると思われます。

あなたの設定についての補足として、それはすべて好みの問題ですが、私は完全な/ home /を別のディスク/パーティションに置いています。これは、再インストールの間にクリーンインストールのためにすべての隠しフォルダー/ファイルを削除する必要があることを意味しますが、ubuntuone権限などを備えた完全にネイティブなホームディレクトリの利点を提供します-ただの考えです。


2
ああ、私はちょうどより明確な回避策(シンボリックリンク)の1つを試したところ、ubuntuoneにはそれがありませんでした
...-thomasmichaelwallace

1

2つの言葉で:Dropboxを使用します。

@Chipacaがリストした理由を克服するのは難しいかもしれませんが、Dropboxはなんとかして管理しています。確かに、このソリューションはオープンソースではありませんが、Ubuntu Oneの人々が主要なユーザビリティの問題を解決するまで(これがその1つです)、多くのユーザーがUbuntu Oneを使用できなくなります。


0

Ubuntu 12.04で非常によく似た設定をしています。Windows 7とUbuntuの両方に表示される音楽ライブラリを含むNFTSパーティションがあります。ディレクトリ全体を明示的にホームディレクトリに移動することなく、このディレクトリをUbuntu Oneに同期できるようにしたかったのです(合理的な要求のようです)。

私の解決策は、Ubuntuを起動するたびにホームディレクトリ内に共有パーティションをマウントすることです。これには、2つの非常に簡単な手順が必要でした。

  1. pysdm起動時にパーティションが正しくマウントされるようにインストールして使用します(必ずしもホームディレクトリではなく、ファイルシステムのどこかに)。または、/etc/fstab十分に自信がある場合は、自分でファイルを変更できます。かなり新しいユーザーとして、私はpysdmソリューションがよりわかりやすいと感じました。

    いずれにしても、/etc/fstabこのステップを実行する前に、必ずファイルをバックアップしてください!(念のため!)

    sudo cp /etc/fstab /etc/fstab.old (例えば)

    問題が発生した場合は、いつでも古いファイルを復元して、元のファイルに戻すことができます。

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

    ではpysdmGUI、ターゲットパーティションを選択し、「アシスタント」ボタンを押してください。「デバイスの所有者がマウントできる」オプションを選択してください。これにより、Upstartを使用してホームディレクトリ内で再マウントできるようになります。私の場合、sda4パーティションをにマウントするように設定し/media/sda4/ます。

  2. 一般に、Upstartの動作は/etc/init/ディレクトリ内のファイルによって定義されます。/media/sda4私のホームディレクトリ内に新しいパーティションをマウントするために、私は以下/etc/init/mount-mydirs.confを含むファイルを定義しました:

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

    最初の行は、通常の起動時にタスクを実行するようUpstartに指示します。2行目は、ジョブを1回(無期限または繰り返しのジョブとしてではなく)実行することをUpstartに伝え、最後の行は/bin/mount-mydirs(root権限で)スクリプトを実行するように伝えます。

    ファイル「/ bin / mount-mydirs」は次のようになります。

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

    (--bindオプションを使用すると、元のマウントポイントと新しいマウントポイントの両方からファイルにアクセスできます)。

これを書いている間、完全に同期された、新しくマウントされた音楽ライブラリを聴いています!!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.