アフィリエイト広告を利用しています

2019年12月28日

OpenBSD: ファイル共有 ── Syncthing の導入

以前 VirtualBox の仮想マシン上にインストールした OpenBSD の設定を体調不良の中で少しづつ進めている.
毎日できるわけではないので時間がかかってしまうのは仕方が無い.

ゲスト OS である OpenBSD と, ホスト OS である macOS との間でファイルの共有をしたい. 具体的にはメールボックス内にあるメールを共有したい.
これができれば OpenBSD でもメールが読めるようになる.

最初は Grive2 というフリーの Google Drive クライアントを使おうと考えた. そのためには OpenBSD 側で次の操作を行う.

(1) OpenBSD ports として提供されている Grive2 をインストールする.

$ sudo pkg_add grive2

(2) Grive2 の Google Drive に対する認証を行う

$ cd
$ mkdir google-drive
$ cd google-drive
$ grive -a

grive -a を実行すると, 認証のための URL が表示されるので, この URL をブラウザーで開く.
自身の Google アカウントを指定する. これで認証が行われる.

ところが

このアプリでは「Google でログイン」機能が一時的に無効

このアプリは Google での確認がまだ完了していないため Google ログインを使用できません。

というメッセージが表示されて先に進めない.
原因など調べたいがそのとてもその気力が出ない. ひとまず今回は Grive2 の使用は諦めた.

代わりに Syncthing というオープンソースのファイル共有ソフトを使ってみることにした.
このソフトウェアの特徴的なところは, クラウドにデータを置くことをせず, ノード間で直接データの同期を行う P2P の仕組みを採用していることである.
自分の場合, とりあえずホスト OS とゲスト OS の間だけでデータの同期を行えればいいのでこれで十分だ.

インストールとファイル共有の手順は以下のようにする

(1) ホストの macOS とゲストの OpenBSD を同一のプライベートアドレスネットワークに置くために仮想マシンのネットワークの設定を「ブリッジアダプター」に設定する.

(2) ホストの macOS とゲストの OpenBSD に Syncthing をインストールする.

macOS 用の Syncthing は Syncthing のサイト からダウンロードできる.

OpenBSD 用の Syncthing は ports パッケージからインストールできる.

$ sudo pkg_add syncthing

(3) macOS と OpenBSD の双方で Syncthing の初期化を行う.

$ syncthing

これで Syncthing の初期化が行われ, ユーザーのホームディレクトリーに Sync というファイル共有のためのディレクトリーが作成される. このディレクトリー配下に置かれたファイルはホストの macOS とゲストの OpenBSD の間で同期が行われる.

Syncthing では, 同期を行う各ノードを "デバイス" と呼んでいる. 今回の設定では macOS と OpenBSD がそれぞれデバイスに相当する.

(4) Syncthing の監視と設定

管理画面
http://127.0.0.1:8384/ にアクセスすることによりブラウザー上から Syncthing の設定や現在の状態を監視することができる.

・ 共有フォルダーの追加
・ Syncthing の起動・停止・再起動
・ デバイス間の共有フォルダーの同期状況

(5) ファイルの共有の問題

自分の場合は共有フォルダーはとりあえずデフォルトの $HOME/Sync のみとした. ここにメールボックスのディレクトリー ('mbox' という名前) を置く. これに対してホームディレクトリーに Mail という名前でシンボリックリンクを張る. この操作は両デバイス macOS と OpenBSD 上で行う.

$ cd
$ ln -s ~/Sync/mbox Mail

macOS 側の共有フォルダー ~/Sync/mbox ディレクトリー配下には約 83000 個 (2.4 GB) のメールファイルが存在する. これが Syncthing の同期機能によって OpenBSD 側と同期されるのを待てばよい.

● 問題: 同期が非常に遅い
三日間放っておいたが同期が取れたのは 83000 ファイルのうち 130 個あまりで, これでは全てのファイルの同期に何日かかるのかわからない. 調べたら Syncthing のサイトにもメールボックスのような小さなファイルが大量にある場合の同期には非常に時間がかかるという問題が掲載されている. Tiny file synchronization is super slow #5568

それでやり方を変えた.

(1) 両デバイス (macOS, OpenBSD) 上で Syncthing デーモンを一旦停止する.

(2) macOS 側の ~/Sync/mbox ファイルを rsync を使って OpenBSD 側にコピーする

$ rsync -avz ~/Sync/mbox 192.168.100.146:Sync

ここで 192.168.100.146 は OpenBSD 仮想マシンのプライベート IP アドレスである. macOS 上の ~/Sync/mbox ディレクトリー以下の内容全てを OpenBSD 上の ~/Sync/mbox ディレクトリーにコピーする.

(3) 両デバイス (macOS, OpenBSD) 双方で Syncthing デーモンを起動する. 同期が開始される.

このやり方でいいのかどうかわからない. 二日間かかって同期はほぼ完了した.

今後しばらく使って, 日常の使用に耐えるかどうか確かめる.
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

この記事へのトラックバックURL
https://fanblogs.jp/tb/9520565

この記事へのトラックバック
ファン
検索
<< 2024年11月 >>
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新記事
最新コメント
眼科の定期検査 〜 散歩 by コトタマ (02/15)
眼科の定期検査 by 三文字寄れば文殊のヒフミヨ (09/21)
本を読んで過ごす by 底彦 (12/13)
本を読んで過ごす by ねこ (12/12)
数学の計算をする by 底彦 (12/04)
タグクラウド
カテゴリアーカイブ
仕事(59)
社会復帰(22)
(44)
コンピューター(211)
(1440)
借金(8)
勉強(13)
(13)
数学(97)
運動(8)
日常生活(1402)
(204)
健康(38)
読書(21)
プロフィール

ブログランキング・にほんブログ村へ
にほんブログ村
にほんブログ村 メンタルヘルスブログ うつ病(鬱病)へ
にほんブログ村
にほんブログ村 科学ブログ 数学へ
にほんブログ村
にほんブログ村 IT技術ブログ プログラム・プログラマーへ
にほんブログ村