Owncloud」カテゴリーアーカイブ

「BitTorrent Sync」で「Owncloud」を置き換え

同期が遅いOwncloud 、なんとかならんか・・・

以前からDropboxに変わる環境としてOwncloudを自宅サーバに構築し、デスクトップPCとノートPCの「ドキュメント」フォルダを同期させたりなどなど、主に複数端末のフォルダの同期を目的に使ってきました。

やはり、Dropboxのような人様のサーバに大事なファイルを置くことに不安・抵抗があり、Owncloudであれば、それに対しては多少なりとも安心感があります。

ところが、Owncloudは同期が遅い。大変に遅いです。

ファイルやりとりに「webdav」を利用しており、ファイル一個を同期するたびにセッションを起こしているらしく。

1分間に5個くらいしか進みません。同期にかかる時間は、ファイルの容量ではなくファイル数で効いてきます。

例えば先日、訳あって、マイドキュメントのフォルダを再同期する必要があり、Owncloud上のデータを削除し、ローカルPCから再度同期をかけました。なんと、これに要した時間、丸三日以上です。

  • ファイル数 : 18331
  • フォルダ数 : 3586
  • 容量 : 18.5GB
  • Owncloudサーバとの同期時間 : 丸三日以上

もう一つ、私は「紙copi」というHPの取り込みソフトを使っています。これはHPをローカルのHDに綺麗に取り込んでくれるソフトですが、保存先のフォルダをOwncloudで共有しています。(→参考記事:紙copiが復活。紙copi 3。Evernoteから紙copiへの移行にトライしてみた。
ところがHPによっては、1枚で細かい部品含め100個近くのファイルで構成されることもあり、その場合owncloud同期に10分くらいかかってしまうことがあります。

これだけ遅いと、複数同時に更新をかけた場合のコンフリクトも起こりやすくなりますし、ちょっと、実用上厳しいな~と思っていました。

これ、もちろん、LAN(Gigabit Ether) 接続の話です。

 

BitTorrent Sync というソフトがあった! ファイル同期が超高速

そんな折、ネットサーフィンをしていると、BitTorrent Syncなるソフトを発見しました。

サーバ不要で、インターネットに接続さえしていれば、ピアツーピア(P2P)で特定フォルダのファイル同期が簡単にできてしまうというソフトです。

複数の端末で共有することも可能です。

フリーで公開されていましたので、早速試したところ、

  • 導入超簡単!
  • マルチプラットフォーム対応 (Windows、Mac、iPhone、Android、WindowsPhone、Linux)
  • 同期、転送が超高速 (Owncloud比)

前出のドキュメントフォルダをLAN内で同期したところ、数十分で同期が完了しました。
これは、「たまらん」くらい魅力的な速さです。
開発者も転送速度含めて同期の速度にはこだわって開発しているようです。

Owncloudは、デバイス間のファイル同期の機能もありますが、webアクセス(ブラウザ)のインターフェースもあり、全く同じ機能というわけではありませんが、私の利用目的がデバイス間のファイル同期であることを考えると、Owncloudからの「乗り換え」を考えるに十分です。

このソフト、昨年前半にはいろんなところで紹介されていたんですね。全く知りませんでした。

 

BitTorrent Syncとは

BitTorrent Syncとは、特定のユーザ間のみでファイル共有できるソフトなんですが、これをBitTorrentの技術を使って実現しています。

詳しくはこちら→ メインページ動作のしくみ技術仕様

参考記事: GigaZine 「PC同士を直接同期し巨大ファイルも高速転送できるソフト「BitTorrent Sync」」

ポイントを簡単に。

  • サーバが不要です。P2Pで共有・同期します。
  • 同期対象のデバイスは2台に限らず、何台でもOK。
  • アカウント管理も不要(というか、無い)。フォルダ毎に共通秘密鍵を設定し、それを各デバイスに設定するだけ。
  • キーは、「読み取り専用キー」「読み書き可能キー」の2種類です。いずれも20文字。
    • 読み取り専用は「片方向」、読み書き可能は「双方向」、の同期と理解できます。
  • 同期時には、その端末同士が同時にネットに接続している必要があります。
  • HTTPプロトコルを使用するので、ルータからは通常のwebアクセスに見えます。UPnPを使用するので、(UPnPが有効なら)FWの設定変更は不要です。
  • マルチプラットフォーム対応 (Windows、Mac、iPhone、Android、WindowsPhone、Linux)

Owncloudでは、同期させたいフォルダをサーバ上に全て設置し、必要に応じてデバイス側から同期したいフォルダを選択し、サーバに接続して同期をしていました。

BitTorrentSyncでは、そもそもサーバの概念がなく、同期をしたいフォルダ・ファイルを持っているデバイスから、同期が必要なデバイスへ直接同期をかけることになります。

デバイス同士で直接、です。

デバイス間のファイル同期を目的としている私としては、Owncloudの置き換え可能なツールとなります。

 

Owncloudと置き換えは可能か?

Owncloudにあって、BitTorrent Syncに無いものを挙げます。

共有フォルダへのwebアクセス画面

OwncloudにはDropbox同様、webアクセスのUIが用意されています。

OwncloudのWeb画面

OwncloudのWeb画面

ファイルをサーバに置いたまま、必要なファイルを探して閲覧したり、サーバ上に置いたまま編集したりと、シンクライアント的な使い方ができます。

プラグインを追加すれば、pdfやMS-Officeのファイルを閲覧・編集したり、ブラウザベースで何でもできてしまう環境を指向できます。

住所録、カレンダー、ニュース等

他にも、以下のようなサービスもあります。

Owncloudの提供サービス。総合ポータルを指向してる?

Owncloudの提供サービス。Dropboxだけでなく、Googleのサービスの置き換えを指向してる?

Googleの各種サービスの置き換えを意識しているようにも思います。

これらの機能は、Owncloudを使うユーザアカウントの存在がベースにあるので、共有・同期機能に特化したBitTorrent Syncにはありません。

 

結論:ファイル同期機能しか使っていないので、置き換え可能(私の場合)

Owncloudを置き換えた場合、上記の機能が使えなくなります。

私自身は、webアクセスのUIを使うことはほとんど無く、もっぱらファイル同期機能しか使っていませんので、十分置き換え可能です。

ただし、OwncloudのwebUIの可能性の検証は続けたいので、何らかの形で共存する方法も考えてみます。

 

常時同期をさせるには、常時ONの「サーバ」はあった方がよい

BitTorrent Syncはサーバ不要ですが、同期するデバイスが同時にネットにアクセスできないと同期ができないため、すれ違いでファイル同期ができない場合があります。常時ネットに接続しているデバイスがあれば、このすれ違いは回避できます。

ですので、置き換えにあたっては、サーバ的に振る舞う、常時接続・常時電源ONのデバイスを一個設けることにします。

Linux用のBitTorrent Syncアプリ(btsync)がありますので、これを自宅サーバ上で常時起動させればOKです。

WebUIを持っていますので、他のWindowsPCと同様の操作感で操作できます。WebUI用のTCPポート(デフォルト8888)はFWを空けておく必要があります。

Linux版BitTorrent SyncのwebUI画面。Windows版と変わりません。

Linux版BitTorrent SyncのwebUI画面。Windows版と変わりません。

btsyncの常時起動にあたっては、起動権限を一般ユーザにするなど、Linux的な一般的なセキュリティ条件は考慮が必要です。

 

導入

Owncloudのクライアントソフトを起動しないか、同期停止にする

いきなり、Owncloudで共有対象にしているフォルダの置き換えをトライしましたので、Owncloudのクライアントは停止させました。BitTorrent Syncとowncloudの2系統で同期をすれば、当然混乱すると思います。

各デバイスにBitTorrent Syncをインストール

私の場合、これまでowncloudで同期を取っていたデバイスは、デスクトップPC、ノートPC、スマートフォン、自宅サーバ上のitunes専用サーバ、eye-fi連動サーバの5台でしたので、各デバイスにBittorrent Syncアプリをインストールします。

また、前述のとおり、常時起動サーバ(Linux)にもインストールします。

各デバイスにおいて、自動起動するよう、適宜設定します。Linux版以外は、アプリの設定項目の中に「自動起動」のチェックがありますので、それでOK。
Linux版は、init.dに起動スクリプトを書くなど、多少手間が必要です。

共有対象のフォルダのキーを、適宜交換する

共有する対象のフォルダごとに、キーを発行し、共有先のデバイスに設定します。

最初のオリジナルのフォルダのあるデバイスを決め、そこで共有フォルダを設定し、そこで出てくるキーを、うまいこと各デバイスに送って貼り付けることになります。

スマホの場合は画面に出てくる2次元バーコードをBitTorrentSyncで写真に撮ると、キーを取り込んでくれます。詳しくは他の紹介記事に譲ります。

完了、同期開始

ということで、同期を開始したところ、数MB/sの速度で転送が始まりました。数時間後、同期が完了。

極めてあっさりと、owncloudで構築していたファイル同期環境を置き換えることができました。

1万個以上のファイルを持ったフォルダが2,3ありましたが、2,3時間後には全て同期が完了していました。

ファイル数をチェックしましたが、全て揃っていました。

 

各デバイスのBitTorrentSync管理画面を開いて目視した状態で、あるデバイスのフォルダにファイルを新規作成してみました。

作成直後、各デバイスの管理画面に送受信の印が現れ、あっという間に全デバイスに伝達されました。なんか、いかにもP2Pという風情です。

 

※注意点: 最初の同期設定時、同期先フォルダは空っぽがよいようです。

キーをコピーして共有設定する先のフォルダに、オリジナルと同名のファイルがある場合、最初の同期がいつまでも終わらない場合がありました。一部のファイルについて、アップロードとダウンロードを延々と繰り返してしまいます。

最初に共有設定する場合は、共有先のフォルダはまずは空っぽにしておいた方がよいようです。同期先にしか無いファイルがある場合は、いったん待避しておいて、初期同期が完了して落ち着いた後に、同期フォルダに放り込むのがよいと思います。

 

OwncloudのwebUIを活かす(BitTorrent SyncとOwncloudの連動)

半日で、Owncloud環境の置き換えが完了してしまいました。が、OwnlcoudのwebUIから見れると便利なフォルダがあるにはあるため、owncloudとの共存を考えます。

Owncloudのコンテンツディレクトリを直接覗くのはムズい

Owncloudの共有フォルダの実体は、webサーバのコンテンツディレクトリ内にあります。

パーミッションがwebサーバ用に合わせてあることと、暗号化していれば直接アクセスしても中身が見えないこと、仕組みはよく理解していませんが、MySQL等DBMSとも連動しているため、btsyncから直接覗いてファイルをいじるには、少しハードルが高いようです。

Owncloudの外部ストレージ共有機能を使う

Ownlcoudには、外部ストレージをマウントする機能があり、Sambaもサポートしています。こいつを使います。

btsyncの共有フォルダを、直接Sambaで共有
  ↓
Owncloud外部ストレージ機能でマウント

OwncloudのwebUIで閲覧

常時起動のbtsyncを起動しているLinuxサーバに、sambaを導入するわけです。

 

これを実行したところ、あっさり連動できました。

私の場合はOwncloud側からは閲覧専用としたかったため、sambaの共有を読み取り専用にしてOwncloudからアクセスさせました。

sambaの設定を「読み書き許可」にすれば、Owncloud側からの追加・変更・削除もできるようになると思います。

 

今回はこんなところで。

紙copiが復活。紙copi 3。Evernoteから紙copiへの移行にトライしてみた。

紙copiは優れたHPスクラップ、資料管理ソフト。Evernoteより直感的。

復活という表現が正しいかどうかわかりませんが、10年以上アップデートのなかった紙copiが、先月アップデートされていました。

今回のアップデートは、取り込み機能の強化、Dropbox連携機能追加というところのようです。

記事 : 「紙copi」5年ぶりメジャーアップデート Dropbox連携、Windows 8.1対応

 

たしか最初の登場は前世紀だったと思いますが、ほぼ登場時期からずっと愛用していたHPのスクラップソフトです。

大変お世話になったソフトなので、復活は嬉しいニュースです。Evernoteなんぞに負けず、日本のソフトパワーを見せつけてほしいものです。

12022c334c73987394414e8daa9160e3

紙ラボ。無料お試し30日です。

東京新聞をキャプチャしたところ

東京新聞をキャプチャしたところ

スクラップの正確さがすばらしかった。ほとんどのページを崩れることなく取り込んでくれました。

スクラップしたHPを「紙」として、また、それらを「箱」という概念で分類して管理するコンセプトがユニークで、私には直感的に理解できました。

テキストファイルのメモも作成できます。いちいち「新規作成」とか「ファイル名をつける」などという回りくどい行為なしに、いきなりメモを起こせるのです。

作成したテキストファイルも「紙」として管理できます。

他にも、pdf、ppt等のビューワも内蔵しています。

私自身は、類似機能をもつEvernoteのノート管理より、直感的でわかりやすいと思います。

詳しくはこちら。

紙copiがネットやスマホへの対応が不十分なまま、発展が止まってしまったために、私は数年前にEvernoteに乗り換えてしまいました。

Eye-Fi(デジカメ)から自宅サーバのOwncloudへ自動転送する

Eye-Fiはものすごく便利なのだけど

Eye-FiはカメラにSDカードとして装着したまま、Wi-Fi経由で写真を自動で転送してくれる、大変便利なアイテムです。
写真を撮影したあと、SDカードをいちいち抜き差ししなくても、気づいたらPCのフォルダの中にその写真ファイルが入っているという、何とも快適なものです。

自宅サーバに立ち上げているOwncloudにEye-Fiから自動転送できると、さらによいのですが、後述する理由から叶いません。Owncloudは、簡単に言うと自前版Dropboxです。無償で自宅サーバにインストールして構築できます。
Dropboxが使用容量が増えるごとに料金が増えるのに比べ、自前のサーバのHDDの容量が許す限り無制限に好きなように使うことができます。(テラバイト使っても料金不要!)

自宅サーバにOwncloud環境を整えてからは、Dropboxから完全移行し、自前のストレージをデスクトップPCやスマホから利用しています。

実際便利なEye-Fiですが、サービス上の制限がいくつかあります。

  • デジカメから写真を転送する場合、必ずEye-Fiの用意したサーバに一度吸い上げ、ここを経由して手元のPCかオンラインサービスに転送される
    (転送先はEye-Fiの裁量で決められてしまうってことです)
  • 転送先のPCは、Eye-Fiマネージャが動作しているものに限られる(windowsかmac)
  • 転送先のPCは、1台だけ
  • PCを転送先に設定するときに、そのPCのUSBポートに、Eye-Fiカードを挿しておかなければならない
  • Eye-Fiサーバの転送先にオンラインサービスを選べるが、多くが有償サービス。Owncloudは無い。

今の環境では、WindowsのデスクトップPCにEye-Fiマネージャをインストールしていて、ここにデジカメの写真が転送されてきます。転送されてきた写真は、さらにOwncloudクライアントからOwncloudサーバに自動で転送されます。

ですが、このデスクトップPCの電源が入っていないときは、Owncloudに反映されません。

eye-fi

手元PCの電源On/Offに関わらず、「写真撮影→即、Owncloudに反映」する環境を整えるのが今回の目標です。