Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了NFS,rsync3-1大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

某公司里有一台NFS服务器,里面的数据很重要,但是如果硬盘坏了,数据就会丢失,现在领导要求你把数据在其他机器上做一个周期性定时备份。 要求如下: 每天晚上00点整在NFS服务器nfs01上打包备份网站程序目录等并通过rsync命令推送到备份服务器BACkup上备份保存(备份思路:可以是先在本地按IP地址+日期打包,然后再利用rsync推送到备份服务器上)。 具体要求如下: 1).NFS服务器nfs
某公司里有一台NFS服务器,里面的数据很重要,但是如果硬盘坏了,数据就会丢失,现在领导要求你把数据在其他机器上做一个周期性定时备份。
要求如下:
每天晚上00点整在NFS服务器nfs01上打包备份网站程序目录等并通过rsync命令推送到备份服务器BACkup上备份保存(备份思路:可以是先在本地按IP地址+日期打包,然后再利用rsync推送到备份服务器上)。
具体要求如下:
1).NFS服务器nfs01和备份服务器BACkup的备份目录必须都为/BACkup;

  1. [[email protected] BACkup]# pwd
    /BACkup
    [[email protected] BACkup]# hostname
    nfs01
  2. [[email protected] BACkup]# pwd
    /BACkup
    [[email protected] BACkup]# hostname
    BACkup
    2).NFS服务器站点目录假定为(/var/www/html);
    1. [[email protected] html]# pwd
      /var/www/html
      [[email protected] html]# hostname
      nfs01
      3).NFS服务器脚本目录假定为(/server/scripts);
      [[email protected] scripts]# pwd
      /server/scripts
      [[email protected] scripts]# hostname
      nfs01
      4).NFS服务器站点日志目录假定为(/app/logs);
  3. [[email protected] logs]# pwd
    /app/logs
    [[email protected] logs]# hostname
    nfs01
    5).NFS服务器个人配置文件目录路径(/etc/rc.d/rc.local);
  4. [[email protected] rc.d]# pwd
    /etc/rc.d
    [[email protected] rc.d]# ls
    init.d rc rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rc.local rc.sysinit
    6).NFS服务器定时任务文件路径为(/var/spool/cron/root);
    [[email protected] cron]# pwd
    /var/spool/cron
    [[email protected] cron]# ls
    root
    [[email protected] cron]# cat root
    #time sync by lidao at 2018-12-07
    /5 * /usr/sbin/ntPDAte pool.ntp.org >/dev/null 2>&1
    7).将以上文件或目录打包(2-6条所示)推送到备份服务器BACkup ;
  5. [[email protected] BACkup]# tar -czvf /BACkup/bak$(date +%F).tag.gz /var/www/html/ /server/scripts/ /app/logs/ /etc/rc.d/rc.local /var/spool/cron/root && rsync -avz /BACkup/bak$(date +%F).tag.gz [email protected]::BACkup --password-file=/etc/rsync.password
    8).NFS服务器本地仅保留7天内的备份;
    8.1 [[email protected] BACkup]#crontab -e
    0 /bin/find /BACkup/ -type f -name "." -mtime +7 -exec rm {} \;
    9).备份服务器上检查备份结果是否正常,并将每天的备份结果发给管理员信箱;
  6. [email protected] scripts]# /etc/init.d/postfix start #备份服务器开启邮件队列,否则无法发送。
    [[email protected] scripts]# vi /etc/mail.rc #备份服务器配置邮件把下面的配置命令放到这个文件的最后一行
    set from=发送邮件的邮箱@163.com smtp.163.com smtp-auth-user=邮箱的客户端授权码 smtp-auth-password=邮箱的密码 smtp-auth=login

2.备份服务器上的检查脚本如下:
[[email protected] scripts]# cat check.sh
#!/bin/bash
IP=$(ifconfig eth1|awk -F "[ :]+" ‘NR==2{print $4}‘)
Path=/BACkup
if [ $(date +%w) -eq 0 ]
then
Time="week$(date +%F%w -d "-1day")"
else
Time=$(date +%F -d "-1day")
fi

LANG=en &&\

/bin/find /BACkup -type f -name "flag_${TimE}.log"|xargs md5sum -c >>$Path/${TimE}_result.log 2>&1
/bin/mail -s "$Time bak result" 管理员的邮箱 <$Path/${TimE}_result.log && \
/bin/find /BACkup/ -type f -mtime +180 ! -name "
week_6"|xargs rm -f
测试结果如下

10).备份服务器上每周六的数据都保留,其他备份仅保留180天备份。
10.1 [[email protected] BACkup]#crontab -e0 /bin/find /BACkup/ -type f ! -name "file_$(date +%F_6.tag.gz" -mtime +180 -exec rm {} \;

大佬总结

以上是大佬教程为你收集整理的NFS,rsync3-1全部内容,希望文章能够帮你解决NFS,rsync3-1所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:13rsync