目标
- 把每台重要的数据、配置及脚本备份到本地、远程存储。
- 本地数据保留7天备份数据
- 本地备份文件推送到备份服务器上
- 备份服务器保留最近180天备份
企业案例
某公司里有一台web服务器,里面的数据很重要,但是如果硬盘坏了,数据就会丢失,现在领导要求你把数据在其他机器上做一个周期性定时备份,要求如下:
每天晚上00点整点在web服务器上打包备份重要目录并通过rsync命令推送到备份服务器保留备份。
具体要求
1、web服务器和备份服务器的备份目录必须为/backup。
2、web服务器本地保留7天备份。
3、本地备份推送到备份服务器。
4、备份服务器每周六数据保留,其他备份保留180天。
5、备份服务器上检查备份结果是否正常,并将结果发给管理员邮箱。
实施过程
1、配置rsync守护进程模式。
2、配置客户端备份脚本。(打包、推送、删除)
3、服务端删除与检查脚本。
4、发邮件
rsync服务端安装
- 检查是否已经安装软件包
[root@backup30 ~]# rpm -qa rsync
rsync-3.1.2-4.el7.x86_64 - 如果未安装,执行以下命令进行安装
[root@backup30 ~]# yum install rsync -y - 添加rsync服务用户
[root@backup30 ~]# useradd -s /sbin/nologin -M rsync
[root@backup30 ~]# id rsync
uid=1000(rsync) gid=1000(rsync) groups=1000(rsync) - 配置rsyncd.conf配置文件
[root@backup30 ~]# 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]
path = /backup - 创建所需目录,授权目录
[root@backup30 ~]# mkdir /data -p
[root@backup30 ~]# mkdir /backup -p
[root@backup30 ~]# chown rsync.rsync /backup - 写入密码到文件并赋予权限
[root@backup30 ~]# echo 'rsync_backup:123456' >/etc/rsync.password
[root@backup30 ~]# chmod 600 /etc/rsync.password - 启动rsync服务,检查端口
[root@backup30 ~]# systemctl start rsyncd
[root@backup30 ~]# ps -ef|grep rsync
[root@backup30 ~]# systemctl restart rsyncd
[root@backup30 ~]# ss -lntup|grep rsync
tcp LISTEN 0 5 :873 : users:(("rsync",pid=1787,fd=3))
tcp LISTEN 0 5 :::873 ::: users:(("rsync",pid=1787,fd=5))
网友评论