inotify配合rsync将文件实时同步到备份服务器

Linux大全评论564 views阅读模式

一、环境准备

1、服务器详细信息如下,有两台主机,A和B

主机 主机名 ip
A linux-node1 192.168.17.23
B linux-node2 192.168.17.24

2、为详细的拓扑图架构
逻辑架构图如下:

物理架构图
3、将两台主机上的hosts解析设置为一样
主机A

[root@linux-node1 ~]# tail -2 /etc/hosts
192.168.17.23  linux-node1.com
192.168.17.24  linux-node2.com

主机B

[root@linux-node2 ~]# tail -2 /etc/hosts
192.168.17.23  linux-node1.com
192.168.17.24  linux-node2.com

二、部署rsync服务器端

1、配置rsyncd.conf

#情动发现报错,原来是需要配置rsyncd.conf
[root@linux-node1 ~]# rsync --daemon
Failed to parse config file: /etc/rsyncd.conf
#配置rsyncd.conf
[root@linux-node1 ~]# cat /etc/rsyncd.conf 
###this is rsyncd.conf 
###by amsilence
uid = rsync
gid = rsync
use chroot = no
max connections =2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 192.168.17.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#################################
[backup]
path = /backup

2、启动rsync服务
错误1:

[root@linux-node1 ~]# rsync --deamon
rsync: --deamon: unknown option
rsync error: syntax or usage error (code 1) at main.c(1422) [client=3.0.6]

解决办法:忘记创建/etc/rsync.password文件

[root@linux-node1 ~]# echo “rsync_backup:123456” >/etc/rsync.password 

启动rsync成功

[root@linux-node1 ~]# cat /etc/rsync.password 
rsync_backup:123456
[root@linux-node1 ~]# chmod 600 /etc/rsync.password 
[root@linux-node1 ~]# rsync --daemon
[root@linux-node1 ~]# pgrep rsync
1267
[root@linux-node1 ~]# netstat -lntup|grep rsync
tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      1267/rsync
tcp        0      0 :::873                      :::*                        LISTEN      1267/rsync    

3、创建rsync需要使用对的真实用户

[root@linux-node1 ~]# useradd -s /sbin/nologin -M rsync
[root@linux-node1 ~]# id rsync
uid=501(rsync) gid=501(rsync) groups=501(rsync)

4、创建rsync推送需要的目录(需要按照)

[root@linux-node1 ~]# mkdir /backup
[root@linux-node1 ~]# chown -R rsync.rsync /backup/

5、使用真实用户来测试rsync服务
注意:如果ssh端口修改了,就需要用这种加上端口,rsync -参数 文件 -e ‘ssh -p 端口号’ 用户名@ip:要推送到那里

[root@linux-node1 ~]# rsync -avz install.log '-e ssh -p 4086' silence@linux-node1.com:/tmp
The authenticity of host '[linux-node1.com]:4086 ([192.168.17.23]:4086)' can't be established.
RSA key fingerprint is a3:55:28:26:ec:e6:9c:95:bc:06:3c:fd:fc:1b:b3:23.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[linux-node1.com]:4086,[192.168.17.23]:4086' (RSA) to the list of known hosts.
silence@linux-node1.com's password: 
sending incremental file list
install.log

sent 5398 bytes  received 31 bytes  638.71 bytes/sec
total size is 21764  speedup is 4.01
[root@linux-node1 ~]# ll /tmp/
total 24
-rw-r--r-- 1 silence silence 21764 Jan 4 08:41 install.log

测试rsync使用成功

三、部署rsync客户端

1、测试rsync虚拟用户
注意:在使用虚拟用户的时候不需用ssh的端口

[root@linux-node2 ~]# rsync -avz install.log rsync_backup@linux-node1.com::backup                 
Password: 
sending incremental file list
install.log

sent 5394 bytes  received 27 bytes  2168.40 bytes/sec
total size is 21764  speedup is 4.01
[root@linux-node2 ~]# cat /etc/rsync.password 
123456
[root@linux-node2 ~]# chmod 600 /etc/rsync.password
#下面内容为测试 
[root@linux-node2 ~]# rsync -avz install.log rsync_backup@linux-node1.com::backup --password-file=/etc/rsync.password 
sending incremental file list

sent 32 bytes  received 8 bytes  26.67 bytes/sec
total size is 21764  speedup is 544.10

企鹅博客
  • 本文由 发表于 2020年8月9日 22:47:41
  • 转载请务必保留本文链接:https://www.qieseo.com/169250.html

发表评论