rsync实时监控以及守护进程
2022/1/2 7:08:02
本文主要是介绍rsync实时监控以及守护进程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
rsync守护进程模式
服务端的操作
1、安装 [root@backup ~]# yum install -y rsync 2、修改配置文件 [root@m01 ~]# vim /etc/rsyncd.conf uid = rsync gid = rsync port = 873 fake super = yes use chroot = no max connections = 200 timeout = 600 ignore errors read only = false list = false auth users = rsync_backup secrets file = /etc/rsync.passwd log file = /var/log/rsyncd.log ##################################### [backup] comment = welcome to backup! path = /backup [linux] comment = welcome to linux! path=/tmp/linux " [backup] comment = welcome to backup! path = /backup (备份目录) [linux] comment = welcome to linux! path=/tmp/linux (备份目录) " 3、创建系统用户 [root@backup opt]# groupadd rsync -g 666 [root@backup opt]# useradd rsync -u 666 -g 666 -M -s /sbin/nologin -r 4、创建密码文件 "新创建rsync.passwd,写入虚拟认证用户的密码" [root@backup opt]# echo "rsync_backup:123456" > /etc/rsync.passwd 5、授权(必须授权为600 [root@backup opt]# chmod 600 /etc/rsync.passwd 6、创建备份目录 [root@backup opt]# mkdir /backup [root@backup opt]# mkdir /tmp/linux 7、目录授权 [root@backup opt]# chown rsync.rsync /backup/ [root@backup opt]# chown rsync.rsync /tmp/linux/ 8、关闭防火墙和selinux [root@backup opt]# systemctl disable --now firewalld [root@backup opt]# setenforce 0 9、启动rsyncd服务 [root@backup opt]# systemctl start rsyncd
客户端操作
# 方法三选其一 方法一:自己输入密码 [root@m01 ~]# rsync -avzP ./* rsync_backup@172.16.1.41::backup rsync_backup : 虚拟用户,只在数据传输时使用 172.16.1.41 : backup服务端的IP backup : 模块名称 方法二:设置密码文件,运行时读取 1、编写密码文件 [root@backup opt]# echo "123456" > /etc/rsync.passwd 2、授权 [root@m01 ~]# chmod 600 /etc/rsync.passwd 3、连接 [root@m01 ~]# rsync -avzP --password-file=/etc/rsync.passwd ./* rsync_backup@172.16.1.41::linux 方法三:添加环境变量 1、定义环境变量 export RSYNC_PASSWORD=123456 2、同步 [root@m01 ~]# rsync -avzP ./* rsync_backup@172.16.1.41::linux
完成rsync实时同步
rsync是不支持实时同步的,通常我们借助于inotify这个软件来实时监控文件变化,一旦inotify监控到文件变,则立即调用rsync进行同步。 1、安装inotify(装在客户端) [root@web01 ~]# yum -y install inotify-tools 2、inotify参数介绍 -m 持续监控 -r 递归 -q 静默,仅打印时间信息 --timefmt 指定输出时间格式 --format 指定事件输出格式 %Xe 事件 %w 目录 %f 文件 -e 指定监控的事件 access 访问 modify 内容修改 attrib 属性修改 close_write 修改真实文件内容 open 打开 create 创建 delete 删除 umount 卸载 3、先尝试此步骤开始监控(插图1) [root@m01 ~]# /usr/bin/inotifywait -mrq --format '%Xe %w %f' -e create,modify,delete,attrib,close_write /root 4.开始实时监控并同步(插图2) /usr/bin/inotifywait -mrq --format '%Xe %w %f' -e create,modify,delete,attrib,close_write /root | while read line;do rsync -avzP --delete --password-file=/etc/rsync.passwd ./* rsync_backup@172.16.1.41::backup done # 客户端需要打开两个端口 一个端口实时监控 一个端口操作文件,服务端需要cd 至 选择的将数据同步到的目录
插图1)
插图2)
至此结束rsync的守护进程
如果在部署期间遇到问题可以留言哦,博主白天都会守在电脑前
这篇关于rsync实时监控以及守护进程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享