Chinaunix首页 | 论坛 | 博客
  • 博客访问: 193775
  • 博文数量: 72
  • 博客积分: 1415
  • 博客等级: 上尉
  • 技术积分: 738
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-12 14:51
文章分类

全部博文(72)

文章存档

2011年(34)

2010年(38)

我的朋友

分类: LINUX

2010-10-22 15:53:50

 

前言

作为网络的维护者,备份交换机是我们工作中比不可少的一部分,但是日常工作中,因为交换机太多,手工备份的话,花去的时间太长。为了省去手工备份交换机的麻烦,特地编写了自动备份脚本

首先备份CISCO交换机配置,需要一个TFTP服务器。所以第一步先搭建一个TFTP环境。

TFTP服务

安装TFTP

[root@localhost ~]# yum -y install tftp tftp-server xinet

,配置TFTP服务

修改tftp服务的配置文件

[root@localhost ~]# vi /etc/xinedt.d/tftp

修改后的文件如下:

service tftp

{ socket_type=dgram

protocol =udp

wait=yes

user=root

server =/usr/sbin/in.tftpd

server_args =-s /home/work/tftpboot -c

disable=no

per_source =11

cps =100 2

flags =IPv4

}

保存后退出

,创建TFTP的目录

[root@localhost ~]# mkdir –p /home/work/tftpboot

,将TFTP服务加入到系统启动项中

[root@localhost ~]#chkconfig tftp on

,启动TFTP服务

[root@localhost ~]#service xinetd restart

 

,查看TFTP服务是否正常启动。

[root@localhost ~]# netstat -a | grep tftp

如果显示如下信息

udp        0      0 *:tftp                      *:* 

表明服务已开启

LINUX自动脚本

脚本分为两部分,一个是执行脚本,一个是文本文件(存放,账号,密码,IP等信息)

首先创建备份脚本switch_tftp.sh

内容如下:

#!/bin/sh

##########################################################################################

#====================================================================

#TFTP服务器地址

TFTP_IP=192.168.1.2

#交换机配置文件(包含账号,密码,IP等信息)

Switch_conf=/root/shell/switch.conf

Daliy="$(date +%Y%m%d)"

while read SW_INFO; do

#Switch information

SW_NAME=`echo $SW_INFO | awk -F"," '{print $1}' |awk -F"=" '{print $2}'`

SW_IP=`echo $SW_INFO | awk -F"," '{print $2}' |awk -F"=" '{print $2}'`

TELNET_NAME=`echo $SW_INFO | awk -F"," '{print $3}' |awk -F"=" '{print $2}'`

TELNET_PASSWD=`echo $SW_INFO | awk -F"," '{print $4}' |awk -F"=" '{print $2}'`

ENABLE_PASSWD=`echo $SW_INFO | awk -F"," '{print $5}' |awk -F"=" '{print $2}'`

FILE="$SW_NAME"_config_"$Daliy"

(

   sleep 3;

   echo $TELNET_NAME

   sleep 3;

   echo $TELNET_PASSWD

   sleep 3;

   echo "enable";

   sleep 1;

   echo $ENABLE_PASSWD

   sleep 3;

   echo "copy running-config tftp";

   sleep 1;

   echo $TFTP_IP

   sleep 1;

   echo $FILE

   sleep 15;

   echo "exit";

   ) | telnet $SW_IP |tee -a /var/log/switch_backup_$Daliy.log

done <  $switch_conf

exit 0

 

创建交换机配置文件switch.conf

[root@localhost ~]# vi /root/shell/switch.conf

内容如下:

SW_NAME=switch1,IPADDR=192.168.1.2,TELNET_NAME=admin,TELNET_PASSWD=test,ENABLE_PASSWD=test

保存后退出

switch.conf的具体格式(适用于cisco交换机)

以逗号“,”作为分割符,第一项是交换机名字,第二项是交换机IP,第三项是telnet用户名,第四项是telnet密码 第五项是enable密码。一个交换机,一行配置信息。

 

阅读(7468) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~