m4-第7周作业

1 写出使用rsync的时候遇到的6个故障及解决过程

  

1 rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]
解决:新添加的模块文件夹 没有更改权限 
[root@backup ~]# chown rsync.rsync /nfsbackup

2 rsync: failed to connect to 172.16.1.41: No route to host (113)
  rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]

解决:服务器端的防火墙没有关闭
[root@backup ~]# /etc/init.d/iptables start

3 [root@web01 ~]# rsync -avzP /etc/hosts raync_backup@172.16.1.41::backup --password-file=/etc/rsync.password 
@ERROR: auth failed on module backup
rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]

解决:认证错误,发送时,服务端的认证用户名不对
rsync -avzP /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

4 [root@web01 ~]# rsync -avz /backup rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
rsync: failed to connect to 172.16.1.41: Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]

解决:服务器端的rsync 守护进程没有打开
[root@backup ~]# ps -ef |grep rsync
root 1367 1305 0 02:51 pts/0 00:00:00 grep rsync
[root@backup ~]# rsync --daemon
[root@backup ~]# ps -ef |grep rsync
root 1369 1 2 02:51 ? 00:00:00 rsync --daemon
root 1371 1305 0 02:51 pts/0 00:00:00 grep rsync

5 backup模块host allow未配置
解决:设置 hosts allow = 172.16.1.0/24

6 /etc/rsync.password 权限未修改
解决:chmod 600 /etc/rsync.password

 

2 说出rsync命令常用的参数及含义

-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD。
-P 等同于 --partial,显示同步的过程,及传输时的进度信息。保留那些因故没有完全传输的文件,以加快随后的再次传输
-v, --verbose 显示详细模式输出。
-z, --compress 对备份的文件在传输时进行压缩处理。
--delete 删除那些DST中SRC没有的文件。 
--exclude=PATTERN 指定排除不需要传输的文件模式。
--bwlimit=KBPS 限制I/O带宽,KBytes per second。单位是1KB

 

3 某公司里有一台Web服务器,里面的数据很重要,但是如果硬盘坏了,数据就会丢失,现在领导要求你把数据在其他机器上做一个周期性定时备份。要求如下:
每天晚上00点整在Web服务器A(web01 )上打包备份网站程序目录和系统配置文件(想想哪些文件需要备份)
具体要求如下:
1)Web服务器A和备份服务器B的备份目录必须都为/backup。
2)Web服务器站点目录假定为(/app/www)。
3)Web服务器本地仅保留30天内的备份。
4)备份服务器上每周日的数据都保留,其他备份仅保留180天备份。
5)备份服务器上检查备份结果是否正常,并将每天的备份结果发给管理员信箱。
请写出部署流程包含相应的脚本,定时任务内容。

web服务器端

创建目录
mkdir /backup 
书写备份脚本
[root@web01 ~]# vim /server/scripts/bak-web01.sh 

#!/bin/bash
#desc:backup html && conf

Date=$(date +%F_%w)
#backup file && conf
cd / && \
tar zchf /backup/web01-${Date}.tar.gz /app/www /etc/rc.local /var/spool/cron/

#make md5sum
cd /backup/ && \
md5sum web01-${Date}.tar.gz >check.log

#rsync file to backup
rsync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

#delete 30 day ago
find /backup/ -type f -name "*.tar.gz" -mtime +30|xargs rm /backup/{}

书写定时任务
[root@web01 ~]# crontab -e
#backup conf html lewen 2018-07-25
00 0 * * * /bin/sh /server/scripts/bak-web01.sh >/dev/null 2>&1


backup服务器端

创建备份目录
mkdir /backup
书写检查脚本
[root@backup ~]# vim /server/scripts/check_bak-wb01.sh 

#!/bin/bash

#del 180 day 
find /backup/ -type f -name "*.tar.gz" -mtime +180 ! -name "*_0.tar.gz"|xargs rm -i /backup/{}

cd /backup/ && md5sum -c check.log >/backup/result.log
if [ $? -ne 0 ];then
mail -s "md5sum wrong" fadewalk@163.com </backup/result.log
fi

书写检查定时任务
[root@backup ~]# crontab -e
#check & send result by lewen at 2018-7-25
* * * * * /bin/sh /server/scripts/check_bak-wb01.sh >/dev/null 2>&1

 

posted @ 2019-03-14 13:49  元贞  阅读(140)  评论(0)    收藏  举报