IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 史上最好用的网络设备自动备份脚本 -> 正文阅读

[系统运维]史上最好用的网络设备自动备份脚本

一、物理环境搭建

? ?? 说明:这里我只演示备份一台交换机,备份多台网络设备原理是一样的!!!

1、备份原理: centos 安装ftp客户端,centos 通过ftp登录到交换机拉取交换机配置文件保存到ftp服务器,登录拉取实现自动化无需人工干预,实现定期批量备份网络设备。

二、备份前准备

2、交换机s7706配置

#交换机需开启ftp,为了保证交换机安全,不要用ssh登录账号,单独建立个ftp账号。
ftp server enable  //开启ftp
set  default ftp-directory flash:   //设置ftp主目录
#认证 授权 审计
aaa  // 进入aaa认证
local-user ftp privilege level 3 password cipher 123  //创建ftp登录账号
local-user ftp  service-type ftp //设置服务类型为ftp

#注意:可能不同版本的配置ftp命令不一样,更具你的版本进行配置

3、centos配置

#安装ftp客户端,只需安装ftp客户端就可以了无需安装服务端
[root@tzw-centos ~]# yum install -y ftp   //这里使用yum方式安装
#检查服务器到交换机网络是否畅通
[root@gzy-centos ~]# ping 192.168.3.1
PING 192.168.3.1 (192.168.3.1) 56(84) bytes of data.
64 bytes from 192.168.3.1: icmp_seq=1 ttl=254 time=3.26 ms
64 bytes from 192.168.3.1: icmp_seq=2 ttl=254 time=1.89 ms

4、创建IP、密码存放文件

[root@tzw-centos ~]# cat /root/ip.text
# ip地址       用户名  密码        别名
192.168.3.1:ftp:123:核心机房交换机-主

#注意必须安装上述示例写,不然脚本提取信息会失败':'中间不能有空格!!!,
#如果以后那台交换机不需要备份就在前面加#就可以了!!
#如下我不备份被核心交换机!!!
[root@tzw-centos ~]# cat ip.text
# ip地址       用户名  密码        别名
192.168.3.1:ftp:admin@123:核心交换机-主
#192.168.3.2:ftp:admin@123:备核心交换机-主

5、准备份脚本

swich_back.sh

#!/bin/bash
#该脚本实现网络设备自动备份
#注意该脚本适用于华为,华三设备
#创建时间2021-12-15
#定义变量
echo -e "\033[32m##############################################################\033[0m"
echo -e "\033[32m#         欢迎使用小汤一键备份网络设备脚本!!!             #\033[0m"
echo -e "\033[32m#       使用该脚本前请确保网络设备的ftp服务正常!!!        #\033[0m" 
echo -e "\033[32m#               有问题请联系:QQ 527887682                    #\033[0m"
echo -e "\033[32m##############################################################\033[0m"
      
check_os()
{ 
#检查是否安装ftp,expect
echo -e "\033[32m#           正在检查你的系统是否符合要求,请稍等\033[5;32m...\033[0m         \033[32m #\033[0m"
sleep 3
rpm  -aq | grep ftp &>/dev/null
[ $? -ne 0 ] &&  echo "ftp未安装" && echo "正在安装ftp....." && yum install -y ftp &>/dev/null
yum list installed | grep expect &>/dev/null
[ $? -ne 0 ] &&  echo "expect未安装" && echo "正在安装expect....." && yum install -y expect &>/dev/null
}

back_up()
{
echo -e "\033[32m#                   开始备份,请稍等\033[5;32m...\033[0m                      \033[32m #\033[0m"
sleep 3 
echo -e "\033[32m##############################################################\033[0m"
mkdir /root/backup #目录可修改
BACKUP_DIR=/root/backup #目录可以修改
TIME=`date +%Y-%m-%d-%H:%M`
IPLIST=/root/ip.text  #这个文件必须和创建的ip、密码存放文件一样!!
for  IP in $(cat $IPLIST )
do
  address=`echo $IP | grep -v ^#  | awk -F ":" '{if($1!~/^#/) print$1}' | grep -v ^$`
  user=`echo $IP |  grep -v ^#  | awk -F ":" '{if($2!~/^#/) print$2}' | grep -v ^$`
  passwd=`echo $IP |  grep -v ^#  | awk -F ":" '{if($3!~/^#/) print$3}' | grep -v ^$`
  name=`echo $IP |  awk -F ":" '{if($4!~/^#/) print$4}' | grep -v ^$ `
 /usr/bin/expect << END &>/dev/null
spawn ftp $address
expect "*Name*"
send "$user\n"
expect "Password:"
send "$passwd\n"

expect "ftp>*"
send   "lcd $BACKUP_DIR\n"
expect "ftp>*"
send  "get vrpcfg.zip $name-$TIME.zip \n"
expect "ftp>*"
send   "exit\n"
expect eof
interact
END
done
echo -e "\033[32m#                   恭喜你备份完成                           #\033[0m"
echo -e "\033[32m#            请到$BACKUP_DIR 目录查看文件                   #\033[0m"
echo -e "\033[32m##############################################################\033[0m"
}
check_os;back_up

三、开始备份

[root@gzy-centos ~]# chmod +x swich_back.sh  //添加执行权限
[root@gzy-centos ~]# ./swich_back.sh 
##############################################################
#         欢迎使用小汤一键备份网络设备脚本!!!                 #
#       使用该脚本前请确保网络设备的ftp服务正常!!!            #
#               有问题请联系:QQ 527887682                     #
##############################################################
#           正在检查你的系统是否符合要求,请稍等...             #
#                   开始备份,请稍等...                        #
##############################################################
#                   恭喜你备份完成                            #
#            请到/root/backup 目录查看文件                    #
##############################################################
[root@gzy-centos ~]# ls /root/backup/
核心交换机-主-2021-12-15-22:06.zip

四、添加计划任务

#每星期六的晚上11:00执行备份,可以根据自己需求设置计划任务
[root@gzy-centos ~]# crontab -l -uroot
0 23 * * 6 /root/swich_back.sh 

到此备份完成!!!

注意:此脚本只适用于华为、华三网络设备!!!因为它们的配置文件是vrpcfg.zip''

备份中间有啥问题可以私信哦!!!

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-16 18:06:52  更:2021-12-16 18:08:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:58:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码