配置搭建备份服务(rsync)
Rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具,全量和增量备份的软件。
rsync备份服务部署
1. 服务器端部署
第一个历程: 检查下载安装软件
rpm -qa|grep rsync # 确认rsync软件服务是否存在,查看服务器端是否有rsync
yum install -y rsync # 安装rsync
第二个历程: 编写配置文件
man rsyncd.conf
vim /etc/rsyncd.conf // CentOS 7 中自带;centos 6 中需要自己编写
配置文件内容:
##created by HQ at 2017
###rsyncd.conf start##
## 全局配置
uid = rsync --- 指定管理备份目录的用户
gid = rsync --- 指定管理备份目录的用户组
port = 873 --- 定义rsync备份服务的网络端口号
fake super = yes --- 将rsync虚拟用户伪装成为一个超级管理员用户
use chroot = no --- 和安全相关的配置
max connections = 200 --- 最大连接数 同时只能有200个客户端连接到备份服务器
timeout = 300 --- 超时时间(单位秒)
pid file = /var/run/rsyncd.pid --- 记录进程号码信息 :
1.让程序快速停止进程 2. 判断一个服务是否正在运行
lock file = /var/run/rsync.lock --- 锁文件
log file = /var/log/rsyncd.log --- rsync服务的日志文件 用于排错分析问题
##模块配置
ignore errors --- 忽略传输中的简单错误
read only = false --- 指定备份目录是可读可写
list = false --- 使客户端可以查看服务端的模块信息
hosts allow = 172.16.1.0/24 --- 允许传输备份数据的主机(白名单)
hosts deny = 0.0.0.0/32 --- 禁止传输备份数据的主机(黑名单)
auth users = rsync_backup --- 指定认证用户
secrets file = /etc/rsync.password --- 指定认证用户密码文件 用户名称:密码信息
[backup] --- 模块信息
comment = "backup dir by lsh"
path = /backup --- 模块中配置参数 指定备份目录
# 注意:配置文件中,行后不要有注释和空格
重启服务:systemctl restart rsyncd
第三个历程: 创建rsync服务的虚拟用户,该用户只被rsync使用
useradd rsync -M -s /sbin/nologin
第四个历程: 创建备份服务认证密码文件,修改文件权限
echo "rsync_backup:lsh123456" >/etc/rsync.password
chmod 600 /etc/rsync.password
第五个历程: 创建备份目录并修改属主属组信息
mkdir /backup
chown rsync.rsync /backup/
第六个历程: 启动备份服务
systemctl start rsyncd
systemctl enable rsyncd # 开机自启
systemctl status rsyncd
2. 客户端使用
第一个历程: 创建一个秘密文件
echo "lsh123456" >/etc/rsync.password
chmod 600 /etc/rsync.password
第二个历程: 进行免交互传输数据测试
rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password