【企业案例】
要求你把数据在其他机器上做一个周期性定时备份。要求如下:
每天晚上00点整在NFS服务器nfs01上打包备份网站程序目录等并通过rsync命令推送到备份服务器backup上备份保存
备份思路:可以是先在本地按IP地址+日期打包,然后再利用rsync推送到备份服务器上。
具体要求如下:
[x] NFS服务器nfs01和备份服务器backup的备份目录必须都为/backup
[x] 要备份的系统配置文件包括但不限于:
定时任务服务的配置文件(/var/spool/cron/root)
开机自启动的配置文件(/etc/rc.local)
日常脚本的目录(/server/scripts)
防火墙iptables的配置文件(/etc/sysconfig/iptables)
自己思考下还有什么需要备份呢
[x] Web服务器站点目录假定为(/var/html/www)
[x] Web服务器A访问日志路径假定为(/app/logs)
[x] Web服务器保留打包后的7天的备份数据即可(本地留存不能多于7天,因为太多硬盘会满)
[x] 备份服务器上,保留每周一的所有数据副本,其它要保留6个月的数据副本
[x] 备份服务器上要按照备份数据服务器的内网IP为目录保存备份,备份的文件按照时间名字保存。
[x] 需要确保备份的数据尽量完整正确,在备份服务器上对备份的数据进行检查,把备份的成功及失败结果信息发送给系统管理员邮箱中。
操作系统
# cat /etc/issue
内核版本
# uname -a
主机网络参数设置:
主机名 |
网卡eth0 |
用途 |
backup |
10.10.10.209 |
rsync服务端 |
nfs01 |
10.10.10.208 |
NFS存储服务器客户端 |
1)确认软件是否安装
# rpm -qa rsync
2)配置/etc/rsyncd.conf配置文件
3)根据rsyncd.conf配置,创建elas账户及共享目录并修改目录属主为elas
创建elas用户
# useadd elas
创建共享目录
# mkdir /home/elas/data
修改共享目录的权限
# chown -R elas /home/elas/data
4)启动服务rsync
# rsync --daemon
默认去使用/etc/rsyncd.conf这个配置文件,也可以指定配置文件 rsync --daemon--config=/etc/rsyncd2.conf,更改配置文件不用重启服务,即时生效。
验证rsync服务
# ss -antup | grep rsync
5)制作服务启动脚本/etc/init.d/rsyncd
6)启动脚本放到/etc/init.d目录下,增加x执行权限并添加开机启动
文件赋予执行权限
# chmod +x /etc/init.d/rsyncd
启动/关闭rsyncd
7)创建elas虚拟账户名和密码,并赋予密码文件600权限
# echo "elas:123456" > /etc/rsync.password
# chmod 600 /etc/rsync.password
8)配置Rsync服务器端检查脚本
9)将脚本挂定时任务
00 6 * * * /bin/sh /server/scripts/rsync_Server.sh >/dev/null2>&1
1)只需要创建密码文件(只包含密码即可),并赋予密码文件600权限
# echo "123456" >/etc/rsync.password
# chmod 600 /etc/rsync.password
2)创建共享目录data
# mkdir /home/elas/data
3)在客户端进行推送测试
rsync -avzP /home/elas/data/ [email protected]::backup--password-file=/etc/rsync.password
4)nfs01服务器打包脚本实现
5)将脚本挂定时任务
00 0 * * * /bin/sh/server/scripts/backup.sh >/dev/null 2>&1