目次

ディレクトリ間の同期 (lsyncd)

概要

設定方法

  1. lsyncd のインストール
    $ sudo apt-get install lsyncd
  2. 設定ファイルの編集 (/etc/lsyncd/lsyncd.conf を作成)
    settings{
    	logfile = "/path/to/logfile.log",
    	statusFile = "/path/to/lsyncd.stat",
    	statusInterval = 1,
    }
     
    sync{
    	default.rsync,
    	delay = 0,
    	source = "/path/to/A",
    	target = "/path/to/B",
    	delete = "running",
    	rsync = {
    		owner = true,
    		group = true
    	}
    }
     
    sync{
    	default.rsync,
    	delay = 0,
    	source = "/path/to/B",
    	target = "/path/to/A",
    	delete = "running",
    	rsync = {
    		owner = true,
    		group = true
    	}
    }
    • settings: グローバルな設定
      • logfile: ログファイルの指定
      • statusFile: ステータス管理ファイルの指定
      • statusInterval: ステータス更新頻度 (秒)
      • delay: 同期を開始するまでの遅延 (秒) (デフォルト: 15秒) (対象: 全体)
    • sync: 同期する内容の設定 (同期するペアの分だけ記述していく; 双方向するなら sourcetarget を入れ替えた sync も作成する)
      • default.rsync: rsync の基本設定を使う (この他、default.rsyncssh が使える)
      • source: 同期元
      • target: 同期先
      • delay: 同期を開始するまでの遅延 (秒) (対象: 個別; settingsでも指定している場合は、こちらが優先される)
      • delete:
        • true: 同期元にないファイルを同期先から削除
        • false: 同期先のファイルを削除しない
        • running: 同期元にないファイルを同期先から削除 (ただし、同期対象がサーバの場合はスタートアップするまで待機する?)
      • rsync: rsync の設定
        • owner: 所有者情報保持の指定
        • group: 所有グループ保持の指定
    • 参考サイト
  3. 設定を適用して実行
    $ sudo service lsyncd restart