目录
[root@backup ~]# yum install -y rsync
[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
配置文件详解
uid = rsync #启动服务的用户id(启动应用程序系统用户)
gid = rsync #启动服务用户的组id
port = 873 #服务默认监听端口
fake super = yes #无须使用root用户启动
use chroot = no #安全机制
max connections = 200 #最大连接数
timeout = 600 #超时时间
ignore errors #忽略错误
read only = false #只读权限
list = false #用户端查看模块列表(False)
auth users = rsync_backup #定义虚拟用户(rsync传输过程使用的用户)同步数据用户
secrets file = /etc/rsync.passwd #定义虚拟用户的密码
log file = /var/log/rsyncd.log #日志文件
#####################################
[backup] #模块
comment = welcome to oldboyedu backup! #模块的备注
path = /backup #服务器真实的路径
[linux]
comment = welcome to linux!
path=/tmp/linux
解析:
添加几个模块都可以,
作用:
使用备份,填写那个模块就自动备份到模块路径下了。
[root@backup opt]# groupadd rsync -g 666
[root@backup opt]# useradd rsync -u 666 -g 666 -M -s /sbin/nologin -r
[root@backup opt]# echo "rsync_backup:123456" > /etc/rsync.passwd
[root@backup opt]# chmod 600 /etc/rsync.passwd
[root@backup opt]# mkdir /backup
[root@backup opt]# mkdir /tmp/linux
[root@backup opt]# chown rsync.rsync /backup/
[root@backup opt]# chown rsync.rsync /tmp/linux/
[root@backup opt]# systemctl disabel --now firewalld
[root@backup opt]# setenforce 0
[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
inotify简介
rsync是不支持实时同步的,通常我们借助于inotify这个软件来实时监控文件变化,一旦inotify监控到文件变,则立即调用rsync进行同步。
两种结合 取长补短(实现实时同步)
[root@web01 ~]# yum -y install inotify-tools
-m 持续监控
-r 递归
-q 静默,仅打印时间信息
--timefmt 指定输出时间格式
--format 指定事件输出格式
%Xe 事件
%w 目录
%f 文件
-e 指定监控的事件
access 访问
modify 内容修改
attrib 属性修改
close_write 修改真实文件内容
open 打开
create 创建
delete 删除
umount 卸载
测试开启实时监控客户端数据
[root@m01 ~]# /usr/bin/inotifywait -mrq --format '%Xe %w %f' -e create,modify,delete,attrib,close_write /root
[root@m01 ~]# /usr/bin/inotifywait -mrq --format '%Xe %w %f' -e create,modify,delete,attrib,close_write /root | while read line;do
cd /root
rsync -avzP --delete --password-file=/etc/rsync.passwd ./* rsync_backup@172.16.1.41::backup
done
手机扫一扫
移动阅读更方便
你可能感兴趣的文章