困っていること
lsyncdとrsyncdにより、親サーバのあるディレクトリの内容を子サーバのあるディレクトリに同期する形でコピーしたいと考えています。
コピーしたい内容は以下です。
- ディレクトリ、ファイルの作成、更新、削除
- ディレクトリ、ファイルの権限
- ディレクトリ、ファイルのタイムスタンプ
しかし、この内削除のみうまくいきません。
やりたいことは、「同期先で作成されたファイル」が「同期元に無い」場合「同期先でファイルを削除」するということです。
調べてみたところ、lsyncdで同期元に無いファイルをrsyncdで削除するには、lsyncdの設定ファイルでdeleteをtrueにする必要があるようですが、
ドキュメントによるとdelete=trueはデフォルト設定になっているようです。
rsyncで**--delete**オプションをつけて実施すれば問題なく差分削除されますし、
lsyncに関してもsystemctl restart lsyncd.service などとサービスの再起動を行えばそのタイミングで差分削除が行われます。
この差分削除に関して動作させたいのですが、何か特別な条件などが必要でしょうか。
#動作環境
バージョンなど
OS …… AmazonLinux2 (Amazon EC2で動作 / 2つのOSでそれぞれ検証済)
rsync …… 3.1.2 (親子同じ)
lsync …… 2.2.2 (親子同じ)
設定
/etc/lsyncd.conf (親サーバ)
settings { logfile = "/var/log/lsyncd.log", pidfile = "/var/run/lsyncd.pid", statusFile = "/var/log/lsyncd-status.log", statusInterval = 1, nodaemon = false, } sync { default.rsync, source = "/tmp/rsynctest/test1/", target = "xxx.xxx.xxx.xxx::module1", delay = 0, rsync = { owner = true, group = true, perms = true, hard_links = true, archive = true, inplace = true } }
/etc/rsyncd.conf (親サーバ)
uid = root gid = root log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid hosts allow = xxx.xxx.xxx.xxx/32 hosts deny = * read only = true exclude = * include = * dont compress = *.gz *.tgz *.zip *.pdf *.sit *.sitx *.lzh *.bz2 *.jpg *.gif *.png #------------------ # MODULE PARAMETERS #------------------ [module1] comment = rsync test dir1 path = /tmp/rsynctest/test1/
ここまで調査した中であやしいこと
https://qiita.com/msssgur/items/4e2b199796654e0af791
上記にて、
リモートで修正されたものはローカルと同期されないので、変更は必ずローカルで行うこと。
とあるため、実はそもそもリモートで作成したファイルはlsyncで削除できないのではと考えています。
ただ、lsyncdを再起動したときとrsyncでならば「同期」することが出来るため、これが正しい動作なのかどうかがわからなくなっています。
参考サイト
- https://www.atmarkit.co.jp/ait/articles/1702/02/news031.html
- https://axkibe.github.io/lsyncd/manual/config/layer4/
- http://www.1x1.jp/blog/2008/04/rsync_delete_asterisk.html
- https://www.very-cute.net/wp/79/
- http://www.maruko2.com/mw/rsync_%E3%81%A7%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AE%E5%90%8C%E6%9C%9F%EF%BC%88%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%EF%BC%89
- https://101010.fun/posts/mac-shell-rsync.html
- https://techblog.kyamanak.com/entry/2017/09/19/180516
- https://qiita.com/mitzi2funk/items/9308db56829d7b4cb90d
- https://hacknote.jp/archives/31531/
- https://qiita.com/daikiichikawa/items/f04e6bd6e4d615dfcd4b
- https://codeday.me/jp/qa/20181206/41512.html
- https://qiita.com/ritsuka/items/67f3d86ac245a5acd269
- https://changineer.info/server/centos_basic/lsyncd_rsynd.html
- https://q.hatena.ne.jp/1403497791
- https://teratail.com/questions/157554
- https://www.greptips.com/posts/9/
- https://qiita.com/Yuki_BB3/items/31629ca7f40703c139be
- https://www.powercms.jp/blog/2017/10/lsyncd.html
- https://norm-nois.com/blog/archives/4784
- https://qiita.com/msssgur/items/4e2b199796654e0af791
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/24 02:26
2019/10/24 02:32
2019/10/24 02:46
2019/10/24 04:18
2019/10/24 04:28
2019/10/24 04:54
2019/10/24 04:56
2019/10/24 04:58
2019/10/24 06:07