一,服务端配置

 #!/bin/sh
#########################################################
#by:kingle #
#use: configuraion rsync #
#version:1.0 #
#########################################################
. /etc/init.d/functions
BackPath=/backup
Passwd=
Name=rsync_backup
IP=10.0.0.0/
Port=`losf |wc -l`
Rev=`tail -l /etc/rc.local`
rsync_conf(){
cat >/etc/rsyncd.conf<<EOF
uid = rsync
gid = rsync
use chroot = no
max connections =
timeout =
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = no
list = no
hosts allow =10.0.0.0/
auth users = rsync_backup
secrets file =/etc/rsync.password
[backup]
path = $BackPath
EOF
if [ -f /etc/rsync.conf ];then
echo "rsync is configuration successing!"
else
echo "please to help!!"
fi
}
rsync_user(){
id rsync &>/dec/null
if [ $? -ne ];then
useradd -s /sbin/nologin -M rsync
else
echo "hava user!!"
fi }
rsync_C_file(){
mkdir $BackPath -p
chown -R rsync.rsync $BackPath
echo "$Name:$Passwd" >/etc/rsync.password
chmod /etc/rsync.password
if [ $Port -eq ]; then
echo "rsync starting"
else
rsync --daemon
fi
if [ $Rev -eq "rsync --daemon" ]; then
echo "rev ok"
else
echo "rsync --daemon" >>/etc/rc.local
fi
}
main (){
rsync_conf
rsync_user
rsync_C_file
}
main

二,客户端配置

 #!/bin/sh
#########################################################
#by:kingle #
#use: configuraion rsync #
#version:1.0 #
######################################################### echo "123456" > /etc/rsync.password
chmod /etc/rsync.password
mkdir /backup -p

三,测试

  在/backup/目录下创建文件

  rsync -avzP /backup/ rsync_backup@10.0.0.201::backup --password-file=/etc/rsync.password

  查看服务端是否存在

  

四,全网备份脚本

 #!/bin/sh
#########################################################
#by:kingle #
#use: configuraion rsync #
#version:1.0 #
#########################################################
#!/bin/sh
. /etc/init.d/functions
Backup_Dir=/backup
Passwd=
Passwd_File=/etc/rsync.password
IP=`hostname -I|awk '{print $2}'`
Remote_IP=10.0.0.201
Create_dir(){
[ ! -d ${Backup_Dir}/$IP ] && mkdir -p ${Backup_Dir}/$IP
echo "$Passwd" >$Passwd_File && chmod $Passwd_File
}
Backup_File(){
cd / &&\
tar zchf ${Backup_Dir}/$IP/sysconfig_$(date +%F).tar.gz var/spool/cron/root etc/rc.local server/scripts etc/sysconfig/iptables
}
Push_date(){
find ${Backup_Dir}/$IP/ -type f -name "*.tar.gz"|xargs md5sum >${Backup_Dir}/$IP/zhiwen_$(date +%F).txt
rsync -az ${Backup_Dir}/$IP "rsync_backup"@${Remote_IP}::backup --password-file=${Passwd_File}
if [ $? -eq ];then
action "backup" /bin/true
else
action "backup" /bin/false
fi
find ${Backup_Dir}/$IP -type f -name "*.tar.gz" -mtime +|xargs rm -f
if [ $? -eq ];then
action "rm" /bin/true
else
action "rm" /bin/false
fi
}
main(){
Create_dir
Backup_File
Push_date
}
main

nfs 全网分发,全网执行

全网备份脚本rsync的更多相关文章

  1. nfs详解及实现全网备份

    1.统一hosts cat /etc/hosts 172.16.1.5 lb01 172.16.1.6 lb02 172.16.1.7 web02 172.16.1.8 web01 172.16.1. ...

  2. 集群架构05·备份服务rsync

    初识 开源,多功能,全量和增量的本地或远程数据同步备份的优秀工具,remote synchronization 俩服务器定/实时备份cron+rsync,数据同步,全网备份 一个rsync相当于scp ...

  3. Centos6.9 搭建rsync服务端与客户端 案例:全网备份项目

    rsync的企业工作场景说明 1)定时备份 1.1生产场景集群架构服务器备份方案项目 借助cron+rsync把所有客户服务器数据同步到备份服务器 2)实时复制 本地数据传输模式(local-only ...

  4. rsync全网备份low方法

    要求: 1.基本备份要求已知3 台服务器主机名分别为web01.backup .nfs01,主机信息见下表:服务器说明外网IP(NAT) 内网IP(NAT) 主机名称nginx web 服务器10.0 ...

  5. rsync全网备份

    rsync备份企业方案 企业有Linux服务器又有windows服务器,备份用rsync(服务端),Linux(客户端),Windows(客户端,cwrsync,旧版本有免费版)打包压缩数据往服务器上 ...

  6. linux运维、架构之路-全网备份项目方案

    一.项目需求说明 某公司有多台服务器,里面的数据很重要,如果磁盘坏了,数据就会丢失,所以公司要求把重要服务器数据备份以便出现问题时可以进行恢复,要求:每天晚上00点整在所有服务器上打包备份系统配置文件 ...

  7. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

  8. SVN全量备份+增量备份脚本

    一.全量备份 环境:一台主SVN,一台备SVN(主要提供备份功能),后续可通过钩子脚本进行实时备份,后续发给大家. 工作原理:通过svn的hotcopy命令过行热备份,并进行一系列的检查,备份后通过r ...

  9. ansible-playbook 实战案例 全网备份 实时备份

    目录 ansible-playbook 基础介绍 1.YAML三板斧 2. ansible playbook 安装apache 示例 案例 全网备份 实时备份 环境规划 目录规划 base.yaml ...

随机推荐

  1. web大文件上传控件-设置附加参数-Xproer.HttpUploader6

    自定义附加字段在up6.js中定义,也可以不用定义: 注意: 1.附加字段必须是字符串类型. 2.如果附加字段的值包含中文,在上传前必须使用encodeURIComponent进行编码.     在引 ...

  2. 如何将一个用utf-8编码的文本用java程序转换成ANSI编码的文本

    jdk有一个关于UTF-8的bug所以加了一句 br.skip(1); bugID: http://bugs.java.com/view_bug.do?bug_id=4508058 public st ...

  3. 软工作业1:wc.exe项目开发(java)

    Github地址:https://github.com/Zzhaomin/learngit 项目相关要求 : wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写一个 ...

  4. delphi 指针 认识

    delphi 指针分为类型指针和无类型指针: 类型指针分为PChar.PInteger.PString等. 无类型指针Pointer. PPChar/PP...为指针的指针 @和Addr一样,为获取变 ...

  5. java实现链式队列

    java实现链式队列...比较简单 package datastruct; public class QueueLink implements Queue { // 定义一个节点内部类 class N ...

  6. Java集合类总结 (五)

    集合框架 为了避免进行不必要的随机访问操作,Java引入了一种标签接口RandomAccess, 这个接口没有任何方法,只是一个标签,用来标记一个集合是否应该进行随机访问操作: if (c insta ...

  7. LoadRunner监控Linux条件和解决方法

    注:内容来自网络 需要下载3个包: (1)rsh-0.17-14.i386.rpm (2)rsh-server-0.17-14.i386.rpm (3)rpc.rstatd-4.0.1.tar.gz ...

  8. ubuntu安装nginx与配置

    命令行安装:(当前时间为2018.11,版本为1.10.3) sudo apt-get install nginx 安装好的文件位置: /usr/sbin/nginx:主程序 /etc/nginx:存 ...

  9. PHP获取对象的纯数字属性

    php的对象属性 我们知道获取php的对象属性用箭头: echo $obj->name; 如果属性名是一个变量,那么可以用: $var = 'name'; echo $obj->$var; ...

  10. 【ARC080F】Prime Flip 差分+二分图匹配

    Description ​ 有无穷个硬币,初始有n个正面向上,其余均正面向下.  你每次可以选择一个奇质数p,并将连续p个硬币都翻转.  问最小操作次数使得所有硬币均正面向下. Input ​ 第一行 ...