1.Rsync功能及配置
[toc]
Rsync功能描述
是一款开源,多功能,全量或者增量本地,远程数据同步,适用于linux,unix ,windows,macOS
全量备份
将所有的数都进行一次备份

增量备份
基于全量备份来说,只给新增的数据进行备份

常用端口
| 1 | # rsync端口是873 | 
配置Rsync
环境准备
| 外网 | 内网 | 主机 | 角色 | 
|---|---|---|---|
| 10.0.0.31 | 172.16.1.31 | nfs | rsync客户端 | 
| 10.0.0.41 | 172.16.1.41 | backup | rsync服务端 | 
| 1 | # rsync服务类型 | 
rsync选项
| 1 | # 常用选项 | 
本地工作模式
| 1 | # 本地拷贝数据命令 | 
远程工作模式
Pull拉取数据命令
| 1 | # 语法格式 | 
Push推送数据命令
| 1 | # 语法格式 | 
守护进程
Pull拉取数据命令
| 1 | # 语法格式 | 
Push推送数据命令
| 1 | # 语法格式 | 
rsync服务配置
服务端配置
- 安装rsync - 1 
 2- # 安装rsync 
 yum install -y rsync
- 编辑rsync配置文件 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38- # 编辑rsync配置文件 
 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 oldboyedu backup!
 path = /backup
 # 配置详解
 uid = rsync # 服务启动的用户
 gid = rsync # 服务启动的用户组
 port = 873 # 监听端口 0~65535
 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服务用户连接认证密码文件路径
 [backup] # 定义模块信息
 comment = commit # 模块注释信息
 path = /backup # 定义接收备份数据目录
- 创建rsync用户 - 1 
 2
 3- # 创建rsync用户 
 ## -s不登录此用户 -M不创建家目录
 useradd rsync -s /sbin/nologin -M
- 创建密码 - 1 
 2
 3
 4
 5
 6- # 创建密码 
 ## 免交互创建rsync_backup的密码为:123
 echo 'rsync_backup:123' > /etc/rsync.passwd
 # 检查密码是否创建成功
 cat /etc/rsync.passwd backup:123
- 更改密码文件权限 - 1 
 2
 3- # 更改密码文件权限 
 ## rsync要求密码文件的权限必须是600
 chmod 600 /etc/rsync.passwd
- 创建备份目录 - 1 
 2
 3- # 创建备份目录 
 ## 服务端备份模块文件存放路径
 mkdir /backup
- 修改模块路径属主和属组 - 1 
 2
 3
 4
 5
 6- # 修改backup的属主和属组 
 chown rsync:rsync /backup/
 # 检查属主和属组是否修改成功
 ll -d /backup/
 drwxr-xr-x 2 rsync rsync 6 Nov 29 11:52 /backup/
- 开启服务并加入开机自启 - 1 
 2
 3
 4
 5
 6
 7- # 开启服务并加入开机自启 
 ## 开启rsyncd服务
 systemctl start rsyncd
 ## 将rsyncd加入开机自启
 systemctl enable rsyncd
 Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to
 /usr/lib/systemd/system/rsyncd.service.
- 检查是否运行 - 1 
 2
 3- # 检查rsyncd服务是否启动 
 ps -ef | grep [r]sync
 root 17891 1 0 11:54 ? 00:00:00 /usr/bin/rsync --daemon --no-detach
- 检查端口 - 1 
 2
 3
 4
 5
 6
 7- # 检查端口 
 ## 检查rsync服务的873端口是否开启
 netstat -lntup | grep 873
 tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
 17891/rsync
 tcp6 0 0 :::873 :::* LISTEN
 17891/rsync
客户端配置
- 安装服务 - 1 
 2- # 安装服务 
 yum install -y rsync
- 设置密码 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12- # 设置密码 
 echo '123' > /etc/rsync.pass
 20 ✗ 12:09:08 root@nfs,172.16.1.31:~ # rsync -avz /etc rsync_backup@10.0.0.41::backup
 Password:
 ## 错误提示
 @ERROR: auth failed on module backup
 rsync error: error starting client-server protocol (code 5) at main.c(1656)
 [sender=3.1.2]
 1.密码文件权限不是600
 2.密码文件里的免密和手动输入的不一致
 3.密码文件里的名字和配置文件中名字不一致
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 奥利奥の麦旋风!




