当前第2页 返回上一页
1 2 3 4 5 6 7 | #!/bin/bash
src= /opt/test/
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' -- format '%T %w%f%e' -e close_write,delete,create,attrib $src | while read file
do
/usr/bin/rsync -arzuq $src 192.168.0.1::www/
echo " ${file} was rsynced" >> /opt/soft/log/rsync .log 2>&1
done
|
赋予执行权限: chmod +x inotify_bak.sh
然后执行:nohup inotify_bak.sh & 放入后台执行
4. 关于启动
目标服务器:先启动rsync后台服务: /usr/bin/rsync --daemon
来源服务器: 执行 inotify_bak.sh &
5. 测试:
在来源服务器目录中新建目录和文件,inotify_bak.sh脚本会检测到,然后同步到目标服务器的相关目录下
可以查看日志文件: /opt/soft/log/rsync.log 命令如下:观察实时同步的情况。
1 | tail -f /opt/soft/log/rsync .log
|
错误解决:
/usr/local/bin/inotifywait: error while loading shared libraries: libinotifytools.so.0: cannot open shared object file: No such file or directory
这是因为找不到库文件的原因,做一个软连接就好了
1 | ln -s /usr/local/lib/libinotifytools .so.0 /usr/lib64/libinotifytools .so.0
|
以上就是linux下实现两台服务器实时同步方法介绍的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
如何快速排查无法打开 ecs 实例上运行的网站
通过describenetworkinterfaces查看弹性网卡(eni)列表
Linux使用mail命令发送邮件的方法
Linux怎么查看防火墙是否关闭了
Linux怎么保存
Linux系统查看磁盘空间的命令是什么
Linux如何获取cpu信息?
Linux下命令不识别怎么办
如何使用共享的自定义镜像创建ecs实例或者更换实例的系统盘
Linux无法正常安装与卸载node.js的方法实例
更多相关阅读请进入《Linux》频道 >>
转载请注明出处:木庄网络博客 » linux下实现两台服务器实时同步方法介绍