centos7自动化备份华为思科交换机配置

1、安装tftp-server、 xinetd、expect

yum install tftp-server xinetd expect
systemctl restart xinetd.service
chkconfig tftp on
chkconfig xinetd on
service xinetd start

2.创建脚本文件

mkdir /home/Network_Config_Backup
cat >>/home/Network_Config_Backup/start.sh<<END
#!/bin/bash
#使用该脚本前需要安装tftp,xinetd,expect
#取时间戳
BACKUP_DATA=`date +%Y%m%d`
#创建时间戳的备份目录
mkdir -p /home/Network_Config_Backup/$BACKUP_DATA

#TFTP服务根目录授权
chmod 777 /home/Network_Config_Backup/$BACKUP_DATA

#修改TFTP根目录
sed -i "s/Network_Config_Backup\/......../Network_Config_Backup\/$BACKUP_DATA/" /etc/xinetd.d/tftp
echo
echo
echo
echo ------------------------------------------------------------
echo 
echo          该脚本适用于Cisco、Huawei、H3C 网络设备使用 
echo          Cisco使用tftp方式将配置文件上传到服务器 
echo          Huawei、H3C使用窗口记录方式获取配置信息 
echo 
echo ------------------------------------------------------------
echo
echo 备份文件存放位置: /home/Network_Config_Backup/$BACKUP_DATA
echo
echo
echo
service xinetd restart
sleep 4

#账号密码及IP地址存放在user.passwd中,通过awk获取所有IP并存放在数组IPADDR(大写)
DEVICENAME=(`cat /home/Network_Config_Backup/user.passwd | awk '{print $1}'`)

#for循环,取出所有设备名称devicename(小写)
for devicename in ${DEVICENAME[@]} 
do
#输出备份开始时间戳
echo "`date +%H:%M:%S` 开始备份$devicename"

#根据设备名称devicename取出相应交换机的IP地址、用户、密码
IPADDR=(`cat /home/Network_Config_Backup/user.passwd | grep "$devicename" | awk '{print $3}'`)
USERNAME=(`cat /home/Network_Config_Backup/user.passwd | grep "$devicename" | awk '{print $4}'`)
PASSWORD=(`cat /home/Network_Config_Backup/user.passwd | grep "$devicename" | awk '{print $5}'`)
TABLE=(`cat /home/Network_Config_Backup/user.passwd | grep "$devicename" | awk '{print $2}'`)

if [ $TABLE = Cisco ]
then
/usr/bin/expect >> /dev/null << EOF
        set timeout 10
        spawn telnet $IPADDR
        expect "*sername:"
        send "$USERNAME\r"
        expect "*assword:"
        send "$PASSWORD\r"
        expect {
        "*>" {
                send "enable\r"
                expect "*assword:"
                send "$PASSWORD\r"
                expect "*#"
                send "copy running-config tftp:\r"
                expect "*remote host*"
                send "192.168.*.*\r"
                #此处为ftp的服务地址
                expect "*filename*"
                send "$devicename\n"
                expect "*!*"
                send "\n"
        }
        "*#" {
                send "copy running-config tftp:\r"
                expect "*remote host*"
                send "192.168.48.250\r"
                expect "*filename*"
                send "$devicename\n"
                expect "*!*"
                send "\n"
        }
}
EOF
elif [ $TABLE = Huawei -o H3C ]
then
/usr/bin/expect >> /dev/null << EOF
set timeout 10
        log_file /home/Network_Config_Backup/$BACKUP_DATA/$devicename
        spawn telnet $IPADDR
        expect "*ogin:"
        send "$USERNAME\r"
        expect "*assword:"
        send "$PASSWORD\r"
        expect "*>"
        send "display current-configuration\r"
        while (1) {
        expect {
        "*--- More ----" { send " " }
        "return" { break }
        }
        }
EOF
fi
sleep 3

#判断备份目录中是否存在$devicename,如果存在则检查文件内是否存在字符串end或者return。如果文件不存在视为备份失败,如果不存在end或者return视为备份失败
if [ -f "/home/Network_Config_Backup/$BACKUP_DATA/$devicename" ];then
        grep -E "^end$|^return$" /home/Network_Config_Backup/$BACKUP_DATA/$devicename
        if [ $? -eq 0 ];then
                echo "$devicename $IPADDR 备份成功"
                echo "$devicename $IPADDR 备份成功" >> /home/Network_Config_Backup/$BACKUP_DATA/log
                echo "-------------------------------"
        else
                echo "$devicename $IPADDR 备份失败"
                echo "$devicename $IPADDR 备份失败" >> /home/Network_Config_Backup/$BACKUP_DATA/log
                echo "-------------------------------"
        fi
else
        echo "$devicename $IPADDR 备份失败"
        echo "$devicename $IPADDR 备份失败" >> /home/Network_Config_Backup/$BACKUP_DATA/log
        echo "-------------------------------"
fi

done
END

3.添加交换机信息文件

cat >>/home/Network_Config_Backup/user.passwd<<END
*设备名 品牌 IP地址 用户名 密码*
sw1 Cisco 192.168.4.1 user password
END

4.修改tftp储存目录

[root@localhost Network_Config_Backup]# cat /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /home/Network_Config_Backup/20221016 -c
                                #-c允许该文件下创建文件
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
service xinetd start

5.运行脚本

bash /home/Network_Config_Backup/start.sh
#/home/Network_Config_Backup/ 下查看备份文件

参考至:https://blog.csdn.net/fsk2684/article/details/86757040

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
华为交换机的IP配置有多种方法。引用中提到的一种方法是通过SSH登录交换机并使用VLAN配置IP。首先,您需要创建一个VLAN并将端口添加到该VLAN中。然后,您可以通过配置VLAN接口的IP地址来为交换机分配一个IP地址。最后,您可以使用ping命令来检测配置是否成功。 另一种方法是使用引用中提到的命令行配置。您可以通过进入system-view模式,然后选择Meth接口并配置IP地址和子网掩码来为交换机分配IP。接下来,您需要配置网关,指定默认路由和出口接口。最后,您可以保存配置并退出。 请注意,在配置IP之前,您需要确保您具有正确的VGA转接头(如果需要)和与交换机连接的电脑。此外,根据您的交换机型号和固件版本,命令可能会略有不同,请根据实际情况进行调整。 综上所述,华为交换机的IP配置方法可以通过SSH登录并使用VLAN配置或通过命令行配置实现。具体的步骤和命令可能会因交换机型号和固件版本而有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [华为交换机配置IP](https://blog.csdn.net/weixin_42322068/article/details/122130070)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [华为交换机中配置管理IP](https://blog.csdn.net/kobe24fgy/article/details/112250801)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [华为数据库openGauss2.0安装指南实操篇(CentOS、openEuler篇)](https://download.csdn.net/download/karlch/88226492)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值