系统相关
首页 > 系统相关> > Linux-rsync+inotify-实时同步

Linux-rsync+inotify-实时同步

作者:互联网

实验环境

数据端      centos8    10.0.0.8      data-server

备份端      centos8    10.0.0.88    backup-server

1、备份服务器  backup-server 配置

安装rsync

[root@backup-server ~]#yum install rsync rsync-daemon -y

创建rsync配置文件

[root@backup-server ~]#touch /etc/rsyncd.conf    #有rsyncd.conf配置文件才能启动rsync服务端
[root@backup-server ~]#rsync --daemon            # --daemon  启动服务端

设置共享目录,编辑配置文件

[root@backup-server ~]#vim /etc/rsyncd.conf 
[root@backup-server ~]#cat /etc/rsyncd.conf 
[www]
path = /data/www/
read only = no  #默认yes只读, no指定可读写    

指定目录给nobody权限,默认用户以nobody访问此目录

[root@backup-server ~]#mkdir /data/www
[root@backup-server ~]#setfacl -m u:nobody:rwx /data/www/

2、数据端查看,配置

监控工具

yum install -y inotify-tools rsync

访问测试

[root@data-server ~]#rsync rsync://10.0.0.88
www                 #查看到共项目了

  [root@data-server ~]#rsync 10.0.0.88::
  www

拷贝文件测试

数据端
[root@data-server ~]#rsync /etc/passwd 10.0.0.88::www
备份端
[root@backup-server ~]#ll /data/www/
total 4
-rw-r--r-- 1 nobody nobody 1320 May 28 23:29 passwd   #用户默认都映射为nobody

以独立服务方式运行rsync并实现验证功能

备份服务器

编辑 rsync 配置文件

[root@backup-server ~]#vim /etc/rsyncd.conf 
[root@backup-server ~]#cat /etc/rsyncd.conf 
uid=root      #指定用户来访问共享目录,将之指定为生成的文件所有者,默认nobody
gid=root      #默认nobody
max connections = 0   #最大连接数不受限制
ignore errors         #错误跳过
exclude = lost+found/  #跳过某些目录
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
reverse lookup = no    #禁止方向解析

[www]
path = /data/www/
read only = no
auth users = rsyncuser    #默认anonymous可以访问rsync服务器
secrets file = /etc/rsync.pas  #用户密码存放文件

 

root@backup-server ~]#echo "rsyncuser:123456" > /etc/rsnc.pas   #设置用户密码存放进文件
[root@backup-server ~]#chmod 600 /etc/rsnc.pas                  #不给其他用户查看 增删改
[root@backup-server ~]#ll /etc/rsnc.pas 
-rw------- 1 root root 17 May 28 23:43 /etc/rsync.pas
[root@backup-server ~]#rsync --daemon                #可加入/etc/rc.d/rc.local 实现开机启动
[root@backup-server ~]#systemctl start rsyncd        #服务来自rsync-daemon包

数据端

[root@data-server ~]#echo "123456" > /etc/rsync.pas
[root@data-server ~]#chmod 600 /etc/rsync.pas 

客户端测试同步数据

数据端
[root@data-server ~]#rsync /etc/sysctl.conf  --password-file=/etc/rsync.pas    rsync://rsyncuser@10.0.0.88/www
备份服务器
[root@backup-server /data/www]#ll
total 8
-rw-r--r-- 1 nobody nobody 1320 May 28 23:29 passwd
-rw-r--r-- 1 root   root    449 May 29 00:26 sysctl.conf

创建文件测试

 

 删除文件测试

 

标签:rsync,inotify,root,server,etc,data,Linux,backup
来源: https://www.cnblogs.com/lyj1023/p/16322685.html