2018年8月18日TwitterFacebookGoogle+ファイル同期といえばDropboxですよね。無料プランでも結構な容量が使えますし、LinuxとWindowsでファイル同期することもできます。スマホからファイルにアクセスすることも可能ですね。Dropboxのような外部のサーバーに預けるのは気が引けるファイルもありますよね。いって、暗号化したものをDropboxで同期すると扱いが面倒だったりします。復号化する手間がかかったり、スマホから見れなかったりとか。そこで使えるのが、「Syncthing」というソフトです。Dropboxと同様、LinuxやWindowsなどでファイル同期を行うソフトなのですが、中央サーバーにファイルを預けずに同期が可能です。同期したい複数のPCやスマホにSyncthingをインストールして接続すれば、あとはインターネットにつながっている間にフォルダ単位で同期しつづけてくれます。固定のIPアドレスは不要ですし、ルーターも自動で超えて同期可能です。オープンソースソフトウェアなので中身が公開されていて安心ですし、PC版もスマホ版も無料で利用できます。Syncthingについて紹介していきましょう。外部のサーバーにファイルを預けず安全に同期ができるSyncthingなら「誰にも渡したくないけれども、常に複数のPC・スマホで同期したいファイルがある」という要望にこたえられます。ファイルを他の誰かが管理するサーバーに預けることなく、LANおよびインターネットにつながっているデバイス間で同期することができます。データは暗号化して送受信されるので、覗き見される心配もありません。上限容量を気にしなくてもいいDropboxだと、容量を気にして使わないといけないですよね。Syncthingは外部サービスにファイルを預けませんから、各デバイスのストレージ容量いっぱいまで使えます。WebインタフェースからGUIで設定できるサーバーソフトというと、設定ファイルを手で編集するのが多いですよね。Syncthingは、Webインタフェースで簡単に設定することができます。X、Androidなどの間でファイル同期できる各OS向けのバイナリとソースコードが配布されているので、多様なデバイスでファイル同期が可能です。ファイルサーバーでの共有と違って各デバイスにファイルがあるこれはDropboxも同じですが、Syncthingでもデバイスごとのローカルストレージにファイルが保存されます。ファイルサーバーでの共有だと、とくに多人数で使っている場合はパフォーマンス的な問題が出たりしますよね。ファイル同期だと、ストレスなく使えるのが良い点です。複数のデバイスにファイルがコピーされるので、障害時のバックアップにもなるというのもメリットです。双方がNATを超えて同期できる自宅や社内のファイルサーバーにアクセスしようとすると、ルーターでポートフォワードを設定するとか、VPNサーバーに接続するとかいったことが必要になりますが、Syncthingは何もしなくてもNATを超えて同期してくれます。双方のルーターがUPnPに対応している必要がありますが、ほとんどのルーターが対応しています。同期するフォルダをデバイスごとに選べるDropboxだと、同期するフォルダは1つですよね。Syncthingの場合、デバイスごとに同期するフォルダを選択することができます。PCだけで使うファイルを入れたフォルダと、スマホでも使うファイルを入れたフォルダに分ける、といったことができます。しておけば、スマホに余計なファイルを同期しなくて済みますね。中央サーバーがない(常時接続のデバイスを追加することはできる)Dropboxだと、同期するファイルはDropboxのサーバーにも保存されますよね。一般的なファイルサーバーでも、特定のサーバーにファイルが貯められます。Syncthingはpeer-to-peer(P2P)で分散同期するシステムで、こうした「中央サーバー」は存在しません。設定したデバイス同士が接続したら同期がはじまる仕組みです。サーバーがなくても気軽に使えるというのはメリットですね。中央サーバーが無いため、他のデバイスの電源がすべて落ちていると同期できない、ということになります。2台だけで同期しているなら、片方の電源が落ちているともう一方は同期しようがないということですね。それだと問題があるという場合は、常にネットワークにつながっているデバイスも同期に参加させるだけで、いつでも同期ができます。Piを省電力Syncthingサーバーにするという手もあります。NAS製品でSyncthingが動くものもあります。デスクトップ環境が入っていないLinuxサーバーでも簡単に動くVPSなどの環境で動いているLinuxには、デスクトップ環境は入っていないのが普通ですよね。Dropboxの場合、そういう環境へのインストールはデスクトップ版と異なる手順が必要になりますが、Syncthingはデスクトップ版と同じ手順で簡単に導入できます。デスクトップPCとノートPCで同期を設定しておけば、両方の電源が入っている間に同期されます。サーバーの無い環境で写真や動画、オフィスファイルなどを共有するのに便利ですし、一方のストレージが壊れた時のための簡易的なバックアップにもなります。自宅サーバーがあるなら、そちらにもSyncthingを入れて同期を設定しておくのがおすすめです。すれば、デスクトップPCの電源が切れている時でもノートPCに同期できます。デスクトップPCの電源を切って出かけても、外出先からルーターを超えて自宅サーバーと同期することもできます。これなら、Dropboxと使い勝手は大きく変わらなくなりますね。DiskstationやQNAP、ReadyNASといったLinuxベースのNASデバイスにSyncthingを入れる方法もあります。スマホとも同期Androidスマートフォンに「Syncthing」を入れておけば、PC-スマホ間でもファイルを同期させることができます。前述の通り、スマホにも同期させるファイルは別フォルダにしておいたほうがいいでしょう。AndroidのSyncthingアプリには、デフォルトでカメラ画像フォルダが同期対象として追加されています。これをPCに同期する設定を行うだけで、撮影した画像がバックアップされるというわけです。Connectを設定しておくのもおすすめです。同期の開始を待つことなく、直接スマホにファイルを送ることができます。PCに通知するなど多彩な機能があります。Connect」でファイル転送&着信通知etc.https://linuxfan.info/kde-connectLinuxとAndroidの間でファイルをやり取りするとき、もっと手軽に送受信できたらいいなぁと思ったことはありませんか?共有ディレクトリやクラウドに置いたり、ケーブルでつないだりするのって面倒ですよね。スマホからURLなどのテキストを送りたいってことも良...VPSにも同期VPSでLinuxを動かしているなら、Syncthingを入れてPCと同期しておくのも便利でしょう。自宅サーバーに比べたら容量的な制限はありますが、いつでもどこからでも同期できるのは強みです。VPS上のファイルを手元のPCなどに同期するという使い方もできます。Linuxサーバー間で同期Linuxサーバー間での同期というと、rsyncをパスワード無しで実行できるようにしたりとか、面倒なことが多いですよね。その点Syncthingを使えば、簡単にサーバー間のファイル同期を行うことができます。cronで重要なファイルを数世代分バックアップしているディレクトリを、障害に備えて他のサーバーに同期しておくといった使い方があります。SyncthingのインストールUbuntu/Debian系なら最新のSyncthingが簡単にインストールできます。以下の通りコマンドを実行するだけです。syncthingなお、とくにLinuxサーバーの場合はファイアウォールが設定されているかもしれませんね。その場合、TCPの22000番ポートとUDPの21027番ポートへの接続を許可する設定が必要です。ufwを用いているなら、以下のコマンドで設定することができます。syncthingWindowsの場合、SyncTrayzorをインストールするのが簡単です。AndroidのSyncthingアプリは、以下からインストールできます。Freeその他のOS、ディストリビューションについては、https://docs.syncthing.net/users/contrib.htmlを参照してください。デバイスと同期フォルダの追加LinuxデスクトップにSyncthingをインストール後、コマンドラインで「syncthing」を実行してください。すると、Syncthingが起動すると共に、ブラウザでhttp://127.0.0.1:8384/が開き、以下のような設定画面が表示されます。AndroidにSyncthingを入れた場合は、以下のような画面が表示されます。これらの画面から、相互に「デバイスの追加」を行います。デバイスの追加には「デバイスID」が必要です。PCでWebブラウザを使っている場合は、左上の「メニュー」→「IDを表示」を選択します。同じLANに接続しているなら、もう一方のPCで右下の「接続先デバイスを追加」をクリックし、「デバイスID」を選んで登録できます。IDを直接入力して登録することも、もちろん可能です。AndroidにIDを追加するなら、Android側で「デバイスの追加」をタップし、デバイスIDの入力欄右側にあるQRコードアイコンをタップすれば、内蔵カメラで別デバイスに表示されたIDのQRコードを読み取ることができます。デバイスを追加すると、相手側ブラウザに許可してよいかどうかの確認ダイアログが出ます。ここで「デバイスを追加」をクリックし、同じダイアログで追加を行えば、同期が可能となります。デバイスを追加時、共有(同期)するフォルダを選択することもできます。後から別のフォルダを追加することも可能です。Folder」として追加されています。Syncthingでは、接続したデバイス双方で同じ「フォルダーID」がついているフォルダが同期されます。一方でフォルダを追加し、他方に同期するよう設定してみましょう。このように実行すると、「共有するデバイス」で選択された側には、以下のように表示されます。双方で同期の設定が完了すると、同期が開始します。GUIの無いLinuxサーバーでSyncthingを設定する方法GUIの無いLinuxサーバーの場合、syncthingを起動してもWebブラウザは開けませんし、初期設定では他のPCからWebブラウザでアクセスすることもできません。そこで、他のLinuxデスクトップから、以下のようなSSHコマンドでLinuxサーバーへ接続しましょう。ユーザー名@サーバーのホスト名orアドレスこうすると、localhostの9999番ポートへのアクセスが、接続先サーバーの8384番ポートに転送されます。SSHで接続したまま、Webブラウザで「http://localhost:9999」を開いてください。リモートで動いているSyncthingの設定画面が表示されるはずです。9999以外のポートを使っても構いません。多くのLinuxでは、systemdに登録することでログイン前からsyncthingを動かすことができます。ユーザー名「lintaro」は、ご自身のものに変えて実行してください。protected]ログイン後、ブラウザで「http://127.0.0.1:8384/」にアクセスすると設定画面が開きます。Windowsなら、SyncTrayzorを使っていれば、ログイン時に自動で起動してタスクトレイに常駐するはずです。ある「常にバックグラウンドで実行」にチェックを入れることで再起動後に自動起動します。同期するファイルのサイズや使用回線によっては、「Wi-Fi接続時のみ同期」にもチェックを入れたほうがいいでしょう。まとめSyncthingは、さまざまな活用ができるソフトです。家庭内のPCでファイルを手軽にファイルを共有するためにも使えますし、遠隔地にある何台ものPCやサーバーから手元のサーバーに自動でバックアップを取る、といった使い方もできます。VPSで生成したファイルをスマホに同期して、いつでも見られるようにするなんていう使い方もできそうです。持ち歩くPCでSyncthingを使うなら、通信回線やストレージへの負担を考えて、日常的に使う各種ファイルや、最近作成したテキストファイルやオフィスファイルだけを同期しておき、大きなファイルや何年も前のファイルはファイルサーバーに置いておいたほうがいいでしょう。外出先からアクセスできるファイルサーバーが欲しいなら、LinuxサーバーにNextcloudを入れるのが非常に便利です。したPDF、過去に作成した文書など、あらゆるファイルに外出先からブラウザでアクセスすることができますし、外部からのアップロードも簡単です。このNextcloudについては、いずれ別の記事で紹介したいと思います。...ビデオ編集アプリ「Shotcut」の最新版をUbuntuにインストールする方法Shotcutは無料でオープンソースのビデオ編集アプリです。コメントをキャンセルメールアドレスが公開されることはありません。*ウェブサイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。