394 文字
2 分
Ubuntuにlsyncdを導入する
2020-03-08
2020-03-09

ディレクトリのリアルタイム同期をしたかったのでUbuntu 18.04 LTSにlsyncdを導入しました。その時の手順メモです。

lsyncdのインストール#

まずはlsyncdをインストールします。これはaptコマンド一発で入ります。

Terminal window
$ sudo apt install lsyncd

設定ファイルを作成#

同期周りの設定ファイルを作成します。デフォルトだと設定ファイルのパスはは/etc/lsyncd/lsyncd.conf.luaになっているため、この名前のファイルを作成します。

もし設定ファイル名やファイルパスを変えたい場合は、/etc/init.d/lsyncdの以下の部分を修正すればファイル名、ファイルパスを変えることができます多分(やったことはないです)。

CONFIG=/etc/lsyncd/lsyncd.conf.lua

設定ファイルはとりあえず最低限の項目のみを作成します。

Terminal window
$ sudo mkdir /etc/lsyncd
$ sudo vim /etc/lsyncd/lsyncd.conf.lua
settings {
logfile = "/tmp/lsyncd.log",
statusFile = "/tmp/lsyncd.status"
}
sync {
default.rsync,
source = "/home/user/lsyncd_test/src/",
target = "/home/user/lsyncd_test/dst/"
}

lsyncdの起動#

lsyncdのプロセスを起動します。

Terminal window
$ sudo systemctl start lsyncd

ログの確認#

lsyncdのログを確認してみます。以下のようなログが出ていれば同期に成功しています。

Terminal window
$ cat /tmp/lsyncd.log
Sun Mar 8 05:57:38 2020 Normal: recursive startup rsync: /home/user/lsyncd_test/src/ -> /home/user/lsyncd_test/dst/
Sun Mar 8 05:57:38 2020 Normal: Startup of "/home/user/lsyncd_test/src/" finished.

psコマンドでプロセスが起動してるかも確認してみます。以下のようなプロセスがあれば無事起動しています。

Terminal window
$ ps aux | grep lsyncd | grep -v grep
root 12600 0.0 0.0 12932 2072 ? SNs 03:53 0:00 /usr/bin/lsyncd -pidfile /var/run/lsyncd.pid /etc/lsyncd/lsyncd.conf.lua

もし起動してない場合は

Terminal window
$ sudo systemctl status lsyncd

でlsyncdのステータスを確認してみましょう。

参考: