Lysncd 實(shí)際上是lua語(yǔ)言封裝了 inotify 和 rsync 工具
1.安裝
sudo apt install lsyncd
2.配置(ubuntu根據(jù)shell腳本/etc/init.d/lsyncd可以知道)
vi /etc/lsyncd/lsyncd.conf.lua
配置如下
-- sync{default.rsyncssh, source="/usr/local/coremgr/resource/cloudcore_v2.6.3", host="localhost", targetdir="/home/sder/cloudcore_v2.6.3"}
settings {
logfile = "/var/log/lsyncd/lsyncd.log", #指定lsyncd工具本身運(yùn)行所產(chǎn)生的日志文件存放位置
statusFile = "/var/log/lsyncd/lsyncd.status", #定義lsyncd監(jiān)控目錄狀態(tài)文件的存放位置
inotifyMode = "CloseWrite", #事件的狀態(tài)
maxProcesses = 1000, #指定同步時(shí)進(jìn)程的最大個(gè)數(shù)
maxDelays = 10, #當(dāng)事件被命中累計(jì)多少次后才進(jìn)行一次同步
}
sync { #主要用來(lái)定義同步時(shí)的一些設(shè)置,可以同時(shí)同步多個(gè)目錄,只需要在該代碼塊中事先定義好多個(gè)sync即可
default.rsync,
source = "/usr/local/coremgr/resource/cloudcore_v2.6.3",
host = "localhost",
target = "/home/sder/cloudcore_v2.6.3",
delay = 1, #當(dāng)命中的事件累計(jì)到多少時(shí)再觸發(fā)同步
delete = true, #刪除目錄中的數(shù)據(jù)會(huì)與rsync服務(wù)器同步,也可以選擇不同步刪除
rsync = {
binary = "/usr/bin/rsync",
password_file = "/etc/rsync.password",
archive = true,
compress = false,
verbose = true
}
}
3.啟動(dòng)服務(wù)
sudo systemctl status lsyncd
sudo systemctl status lsyncd
輸出如下
● lsyncd.service - LSB: lsyncd daemon init script
Loaded: loaded (/etc/init.d/lsyncd; generated)
Active: active (running) since Thu 2023-02-16 14:28:24 CST; 5s ago
Docs: man:systemd-sysv-generator(8)
Process: 8610 ExecStop=/etc/init.d/lsyncd stop (code=exited, status=0/SUCCESS)
Process: 8620 ExecStart=/etc/init.d/lsyncd start (code=exited, status=0/SUCCESS)
Tasks: 4 (limit: 4915)
CGroup: /system.slice/lsyncd.service
├─8640 /usr/bin/lsyncd -pidfile /var/run/lsyncd.pid /etc/lsyncd/lsyncd.conf.lua
├─8642 /usr/bin/rsync --delete --ignore-errors -gpvsoltD -r /usr/local/coremgr/resource/cloudcore_v2.6.3/ /home/sder/cloudcore_v2.6.3/
├─8643 /usr/bin/rsync --delete --ignore-errors -gpvsoltD -r /usr/local/coremgr/resource/cloudcore_v2.6.3/ /home/sder/cloudcore_v2.6.3/
└─8644 /usr/bin/rsync --delete --ignore-errors -gpvsoltD -r /usr/local/coremgr/resource/cloudcore_v2.6.3/ /home/sder/cloudcore_v2.6.3/
2月 16 14:28:24 sder_plt_185 systemd[1]: Starting LSB: lsyncd daemon init script...
2月 16 14:28:24 sder_plt_185 lsyncd[8620]: * Starting synchronization daemon lsyncd
2月 16 14:28:24 sder_plt_185 lsyncd[8620]: ...done.
2月 16 14:28:24 sder_plt_185 systemd[1]: Started LSB: lsyncd daemon init script.