Rsync push-pull backup
需求:
配置rsync服务 实现数据可以进行全备与增备
环境准备:
服务端
CentOS7.6 backup01
eth0:10.0.0.41/24 eth1:172.16.1.41/24
客户端
CentOS7.6 web01
eth0:10.0.0.7/24 eth1:172.16.1.7/24
实现思路
安装Rsync服务>配置服务端与客户端配置文件>实现备份需求
步骤一:
服务端
安装Rsync服务
[[email protected] ~]# yum install -y rsync
Installed:
rsync.x86_64 0:3.1.2-6.el7_6.1
Complete!
[[email protected] ~]#
步骤二:
删除原有配置文件内容,修改为以下内容
[[email protected] ~]# vim /etc/rsyncd.conf #rsync的配置文件
uid = rsync #运行进程的用户
gid = rsync #运行进程的用户组
port = 873 #监听端口
fake super = yes #无需让rsync以root身份运行,允许接收文件的完整属性
use chroot = no #禁锢推送的数据至某个目录,不允许跳出该目录
max connections = 200 #最大连接数
timeout = 600 #超时时间
ignore errors #忽略错误信息
read only = false #对备份的数据设置可读写
list = false #不允许查看模块信息
auth users = rsync_backup #定义的虚拟用户,作为连接认证用户
secrets file = /etc/rsync.passwd #定义rsync服务用户连接认证密码文件路径
log file = /var/log/rsyncd.log #rsync的日志信息
#####################################
[wesley] #模块名称
comment = welcome to oldboyedu backup! #模块注释信息
path = /backup #定义接收备份数据目录
~
步骤三:
创建rsync的系统用户 ,并且不允许登录用户与创建家目录
[[email protected] ~]# id rsync
id: rsync: no such user
[[email protected] ~]# useradd rsync -s /sbin/nologin -M
[[email protected] ~]# tail -1 /etc/passwd
rsync:x:1000:1000::/home/rsync:/sbin/nologin
[[email protected] ~]#
步骤四:
创建备份目录,并授权rsync用户为属主
[[email protected] ~]# mkdir /backup
[[email protected] ~]# chown -R rsync.rsync /backup/
步骤五:
创建rsync的虚拟用户的用户密码的配置文件(用于客户端连接时使用)
[[email protected] ~]# echo "rsync_backup" >/etc/rsync.passwd
[[email protected] ~]# chmod 600 /etc/rsync.passwd
[[email protected] ~]#
步骤六:
配置文件修改完成后,重启服务并加入开机自启
[[email protected] ~]# systemctl start rsyncd
[[email protected] ~]# systemctl enable rsyncd
Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to /usr/lib/systemd/system/rsyncd.service.
[[email protected] ~]#
步骤七:
查看rsync端口
[[email protected] ~]# netstat -lntup|grep rsync
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 16635/rsync
tcp6 0 0 :::873 :::* LISTEN 16635/rsync
[[email protected] ~]#
以上服务端配置完成
开始配置客户端
步骤一:
安装Rsync服务
[[email protected] ~]# yum install -y rsync
Installed:
rsync.x86_64 0:3.1.2-6.el7_6.1
Complete!
[[email protected] ~]#
步骤二:
创建虚拟用户的密码权限,并授权为600的安全权限
[[email protected] ~]# echo "123456" >/etc/rsync.passwd
[[email protected] ~]# chmod 600 /etc/rsync.passwd
[[email protected] ~]#
客户端配置结束
测试
客户端推送etc目录下的所有内容到Rsync服务器端
[[email protected] ~]# rsync -avz /etc/ [email protected]::wesley
测试二
客户端拉取Rsync服务端的wesley模块的数据到本地的data目录下
[[email protected] cs]# rsync -avz [email protected]::wesley ./ --password-file=/etc/rsync.passwd
本地传输方式
备份etc目录到./目录下
[[email protected] cs]# rsync -avz /etc/ ./
新建一个文件实现增量备份
[[email protected] cs]# touch /etc/123.txt
[[email protected] cs]# rsync -avz /etc/ ./
sending incremental file list
./
123.txt
sent 43,989 bytes received 641 bytes 89,260.00 bytes/sec
total size is 27,224,604 speedup is 610.01
[[email protected] cs]#
远程传输方式
拉取远程文件
[[email protected] cs]# rsync -avz [email protected]:/etc/passwd ./
[email protected]'s password:
receiving incremental file list
passwd
sent 43 bytes received 448 bytes 196.40 bytes/sec
total size is 843 speedup is 1.72
[[email protected] cs]#
拉球远程目录下的所有文件
[[email protected] cs]# rsync -avz [email protected]:/etc/ ./
yum/vars/infra
sent 34,535 bytes received 10,324,421 bytes 1,381,194.13 bytes/sec
total size is 27,224,646 speedup is 2.63
拉取远程目录以及目录下的所有文件
[[email protected] cs]# rsync -avz [email protected]:/etc ./
etc/yum/vars/infra
sent 34,372 bytes received 10,325,252 bytes 2,302,138.67 bytes/sec
total size is 27,224,646 speedup is 2.63
原文地址:https://www.cnblogs.com/wesley-Linux/p/12340913.html
时间: 2024-11-17 18:17:23