[Time4VPS] Resilio Sync で FileMaker データベースをバックアップ

Time4VPS に FileMaker Server を立てたことを書いた。

[Time4VPS] FileMaker Server 構築手順のまとめ – with a Christian Wife
https://wacw.cf/2021/07/06/overview-of-installing-filemaker-server-on-time4vps/

これまでは自宅のマシンで FileMaker Server を立てていたが、バックアップを行っていた。標準のスケジュール・バックアップで保存されるフォルダを、rsync でコピーして別の場所へ別途バックアップを保存していた。標準のバックアップだけでは心配だからだ。

参考:
[Mac] フォルダ構造ごとそのままコピーし、元のフォルダの古いファイルを削除2 – with a Christian Wife
https://wacw.cf/2018/11/30/organise-files-automatically-2/

では VPS 上の FileMaker Server のデータベースのバックアップはどうすればいいか。当然スケジュール・バックアップを実行するが、そのバックアップだけでは心配だ。CentOS に何かがあったらデータが取れなくなる可能性がある。なので、何らかの方法でリモート・バックアップをしたい。

考えた方法は、Resilio Sync を使って P2P でバックアップ・フォルダと自宅マシンを同期することだ。自宅マシンに同期されれば扱いやすくなる。

環境:
・Time4VPS「Linux 8」(CPU: 2 x 2.60 GHz、RAM: 8192 MB、Storage: 80 GB、Bandwidth: 8 TB、Port speed: 100 Mbps、Virtualization: KVM)、CentOS 7.8
・FileMaker Server for Linux 19.0.1.22(英語)
・macOS Catalina Version 10.15.6(英語環境) で SSH 接続

FileMaker Server の「Admin Console>Configuration>Folders>Backup Folders」で確認すると、FileMaker Server のバックアップ・フォルダはデフォルトで /opt/FileMaker/FileMaker Server/Data/Backups/ となっている。実際にディレクトリを確認してみるとバックアップ・ファイルが保存されていた。このディレクトリを自宅の Mac と同期したい。

(1)以下 root で作業する。/etc/yum.repos.d/resilio-sync.repo を以下の内容で作成する。

[resilio-sync]
name=Resilio Sync
baseurl=https://linux-packages.resilio.com/resilio-sync/rpm/$basearch
enabled=1
gpgcheck=1

(2)公開鍵のインストール。

# rpm --import https://linux-packages.resilio.com/resilio-sync/key.asc

(3)インストール。

1# yum update
2# yum install resilio-sync

(4)/etc/resilio-sync/config.json を修正し、ローカルホルト以外から許可するようにする。

修正前:

1"webui" :
2	{
3	 	"force_https": true,
4		"listen" : "127.0.0.1:8888"
5	}

修正後:

1"webui" :
2	{
3	 	"force_https": true,
4		"listen" : "0.0.0.0:8888"
5	}

(5)ユーザーディレクトリを作成。

# mkdir "/home/rslsync/Resilio Sync"

(6)ファイアーウォール設定。

1# firewall-cmd --add-port=8888/tcp --permanent
2# firewall-cmd --reload

(7)サービスを起動および自動起動設定。

1# systemctl start resilio-sync.service
2# systemctl enable resilio-sync.service

(8)以下のアドレスで WebUI にアクセスする。

https://[Time4VPS の IP アドレス]:8888

Mac では Chrome からはアクセスできず、Safari ならセキュリティー警告が出てくるもののアクセスできた。

ユーザー登録をする。

(9)「左上の+ボタン>Standard folderプラブボタンをクリック。

/opt/FileMaker/FileMaker Server/Data/Backups/ を指定すると、以下のように警告が出る。

Alert
foldererror32795

これは対象ディレクトリにパーミッションが設定されていないからのようだ。以下のコマンドでディレクトリのパーミッションを調べてみると、fmsadmin グループに設定されている。

# ls -l

なので以下のコマンドで rslsync ユーザーを fmsadmin グループに追加する。

# usermod -aG fmsadmin rslsync

ディレクトリーのパーミッションを変更。

# chmod g+rw /opt/FileMaker/FileMaker\ Server/Data/Backups

Resilio Sync を再起動する。

# service resilio-sync restart

これでバックアップフォルダーを指定できるようになった。

Read & Write ができるようにして Key をコピー。Mac にインストールした Resilio Sync のフォルダーと同期できるようになった。

参考:
Installing Sync package on Linux – Sync
https://help.resilio.com/hc/en-us/articles/206178924-Installing-Sync-package-on-Linux

Resilio Sync をインスト-ルしてバックアップを構成する | Meaningless Notebook
https://gokugetsu.plala.jp/resilio-sync-%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%EF%BC%8D%E3%83%AB%E3%81%97%E3%81%A6%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E3%82%92%E6%A7%8B%E6%88%90%E3%81%99%E3%82%8B/

CentOS へ yum で Resilio Sync をセットアップ – IT漂着メモ
https://god-support.blogspot.com/2017/07/centos-resilio-sync.html

Foldererror32795 : ResilioSync
https://www.reddit.com/r/ResilioSync/comments/if7bup/foldererror32795/

resilio plugin "Don't have permissions to write to selected folder." error : freenas
https://www.reddit.com/r/freenas/comments/d9esqi/resilio_plugin_dont_have_permissions_to_write_to/

RaspberryPiへのResilioSyncのインストール
https://ichi.pro/raspberrypi-e-no-resiliosync-no-insuto-ru-154512704614973

Linuxでユーザーをグループに追加する – Qiita
https://qiita.com/orangain/items/056db6ffc16d765a8187