shell指令碼批量備份交換機配置檔案

2021-10-16 05:06:34 字數 1710 閱讀 5890

對於中小型網路來說,網路裝置相對較少,維護相對簡單,即使出現故障解決起來也相對較快。

而大型網路一般結構複雜,裝置數量多,不同網路區域的裝置配置大多不同,不可能記住所有裝置配置。當修改配置後未及時儲存,某天意外斷電後,恢復起來非常麻煩。或者發生了誤操作,未能及時發現,找起來也是比較麻煩的。這時候,備份裝置配置就顯得尤為重要。

而手動備份配置檔案是件很枯燥的、重複的工作,當裝置數量比較多時會浪費大量時間。

既然這是件重複的工作,我們可不可以用指令碼或其他工具定時自動批量備份裝置檔案呢?

這裡分享下如何使用shell指令碼自動批量備份交換機配置檔案。

1、 首先,獲取配置檔案路徑及檔名

在使用者檢視下使用dir命令找到配置檔案在裝置上的儲存路徑和配置檔案名稱。

不同型號裝置配置檔案的預設儲存位置不同,常見的有flash:/和cfcard:/。華為裝置預設配置檔案名為vrpcfg.zip,華三裝置預設配置檔案名為config.cfg。

dir
在需要備份配置檔案的裝置上開啟ftp功能並設定能使用ftp登入的使用者

dir

[huawei] ftp server enable //開啟ftp

[huawei] aaa

[huawei-aaa] local-user admin ftp-directory cfcard:/ //設定預設路徑

[huawei-aaa] local-user admin service-type terminal telnet ftp //允許admin使用者通過ftp登入

3、然後,準備指令碼檔案

我們需要準備兩個檔案:address.txt、script.sh

address.txt的主要作用:向script.sh輸入裝置ip位址、裝置名稱(可選)、使用者名稱(可選)、密碼(可選)。如果所有裝置使用同乙個使用者名稱和密碼,則可以寫入script.sh中作為變數。

首先是address.txt,示例中裝置使用同乙個使用者名稱和密碼。

192.168.10.254 辦公匯聚

192.168.20.254 伺服器匯聚

然後是script.sh

#!/bin/bash

date=

`date +%y%m%d`

#備份日期

while

read ip name #讀取ip和裝置名稱

doftp -n <<

eof open $ip

user

admin testpassword #使用者名稱和密碼

binary

get vrpcfg.zip #配置檔案名稱,此處需根據待備份裝置填寫

quit

eofmv vrpcfg.zip config/$ip-$name-$date.zip #移動檔案並修改備份的檔名

done

< address.txt

4、最後,使用bash script.sh命令執行就好了

python批量備份交換機

1.編寫指令碼 vi backup.py 匯入paramiko time datetime等模組 usr bin python import paramiko import time from datetime import datetime 設定ssh使用者名稱和密碼,需要注意這裡的密碼是新密碼 ...

利用expect指令碼實現備份華為交換機配置之 四

利用expect指令碼實現備份華為交換機配置之 四 為了方便管理,我們可以將windows共享資料夾掛在到linux下,以便讓備份的 資料能夠通過windows來隨時檢視,並制定相應的計畫任務讓指令碼自動執行。www.2cto.com 1.將windows共享掛載到 mnt share root g...

基於pexpect通過堡壘機備份交換機配置

usr bin env python coding utf 8 import time import pexpect time1 time.strftime y.m.d h m s list 10.109.101.99 10.107.101.99 filename open tmp test1.tx...