Syncthing

提供: ArchWiki
2015年12月18日 (金) 20:32時点におけるKusakata (トーク | 投稿記録)による版 (コマンドの前の文は。ではなく:(コロン)で終わらせて下さい)
ナビゲーションに移動 検索に移動

関連記事

Syncthing はオープンソースのファイル同期クライアント・サーバーアプリケーションです。Go で書かれており、Block Exchange Protocol を実装しています。Syncthing ノード間のトランジットは全て暗号化され、全てのノードは暗号証明書によって一意に識別されます。

インストール

Syncthing は syncthing または syncthing-gtk パッケージでインストールできます。後者のパッケージには inotify による同期、デスクトップ通知、Nautilus や Nemo、Caja との投稿などの機能が追加されています。

インストールしたら、ターミナルから手動で syncthing バイナリを実行するか、パッケージに含まれている syncthing.service を使って systemd/ユーザーインスタンスで起動してください:

$ systemctl --user start syncthing.service

もしくは、必要であれば syncthing@.service利用することもできます。この場合アクティブなユーザーセッションを必要としません。

systemd サービスは特定のユーザーで起動する必要があります。サービスに関する詳細は Autostart-syncthing with systemd を見て下さい。

syncthing を起動したら、デフォルトで localhost port 8384 からウェブインターフェイスを使うことができます。syncthing を手動で起動したときは、ブラウザで管理ページを開いて下さい。

ノート: In syncthing releases before 0.11 (or when you have updated from 0.10) the web interface is available at port 8080. Since port 8080 often conflicts with web development utilities the default port has been changed to port 8384 ('ST' in ASCII). Custom port number can be configured under "GUI Listen Addresses" in the settings, configuration from versions prior to 0.11 were not adjusted automatically.
ヒント: You can run multiple copies of syncthing, but only one instance per user as syncthing locks the database to it. Check logs for errors related to locked database.

設定

インストールしたら Syncthing はすぐに使うことができます。ウェブインターフェイスから新しいサーバーやフォルダを追加できます。シンプルなネットワークをセットアップする方法は Syncthing's getting started を読んで下さい。

最初の起動時に、~/Sync にデフォルトリポジトリが作成されます。ウェブ管理インターフェイスで確認できます。右側が追加したノードのリストで、左側がリポジトリ(他のノードと共有するフォルダ)のリストになります。

新しくノードを追加するには、ノードのリストの下方にある "Add Node" をクリックして下さい。ノードの Node ID (他のマシンで Edit > Show ID をクリックすることで確認できます) と名前、アドレスの入力を求められます。アドレスに "dynamic" と指定すると、syncthing アナウンスサーバーによって自動的にノード間でアドレスが交換されます。Node ID についてもっとよく知りたい場合は、適当な syncthing documentation page を読んで下さい。

設定を保存すると、syncthing サーバーを再起動するように表示されます。再起動することで変更が適用されます。

次に、デフォルトノードの設定を変更するか (名前をクリックして Edit)、データを共有する新しいノードを作成します。データを共有したいノードにチェックを入れれば、アクセスできるようになります。

Inotify を使う

Inotify (inode notify) はファイルシステムの変更を検出してアプリケーションに変更を報告する Linux カーネルのサブシステムです。Syncthing は Inotify をサポートしていませんが、Syncthing REST API と対話する公式の拡張モジュールが存在します。Inotify を利用することで毎分ごとに再スキャンすることがなくなります。フォルダの再スキャン間隔は自動的に増えていき再スキャンを出来るだけしないようになります。Syncthing-inotify は syncthing-inotify パッケージでインストールできます。systemd サービスが含まれているので有効化・起動してください:

# systemctl enable syncthing-inotify@user.service
# systemctl start syncthing-inotify@user.service

もしくはユーザーユニットとして有効化・起動:

$ systemctl --user enable syncthing-inotify.service
$ systemctl --user start syncthing-inotify.service

syncthing-inotify サービスは syncthing を必要とするので syncthing を起動・有効化する必要はありません。

トラブルシューティング

Debugging syncthing を見て下さい。