您好,登錄后才能下訂單哦!
腳本的功能是代替手工到交換機上保存配置,是完全登陸交換機來作的操作,不論交換機的版本高低,只要權限內能敲的命令,基本都可以實現(xiàn)。
腳本的執(zhí)行過程是這樣的:telnet到指定交換機--保存配置--通過交換機登陸到服務器--輸入用戶名密碼--將交換機的配置文件上傳到FTP服務器上。
下面是腳本內容(vi tel10.sh):
#!/usr/bin/expect //此處用的是expect,如果linux沒有的話,需要yum安裝一下//
set date [exec date "+%Y%m%d"] //給date變量賦值,后面需要調用//
spawn telnet 192.168.10.10 //這是expect的一個命令,表示從服務器上telnet到192.168.1.104//
expect “Username:" //在回顯的字符串中匹配Username:,如果匹配到,執(zhí)行下面//
send "admin\r" //向交換機發(fā)送admin字符串,即輸入telnet到交換機的用戶名//
expect "Password:" //在回顯的字符串中匹配Password:,如果匹配到,執(zhí)行下面//
send "Admin@huawei\r" //向交換機發(fā)送Admin@huawei字符串。即輸入tel到交換機的密碼//
send "save\r" //向交換機發(fā)送save字符串,相當于在交換機上執(zhí)行save命令//
send "Y\r" //因交換機在save時,會有個交互過程,發(fā)送字符串Y,相當于在交換機輸入Y//
send "ftp 192.168.10.1\r" //向交換機發(fā)送ftp 192.168.1.1指令,相當于在交換機上輸入ftp 192.168.1.1這條命令,意思就是登陸FTP服務器//
send "admin\r" //發(fā)送字符串admin,即輸入登陸FTP服務器的用戶名//
send "Admin@huawei\r" //發(fā)送字符串Admin@huawei。即輸入登陸FTP服務器的密碼//
send "put flash:/vrpcfg.zip /configbck/$date.zip\r" //執(zhí)行指令Put,交配置文件上傳到FTP服務器//
interact
說明:1、Linux服務器上要先按裝expect,否則是不能執(zhí)行expect命令的。
2、Linux服務器要安裝telnet,否則是不能telnet的。此處也可以使用ssh 登錄服務器代碼如下:
spawn ssh -p 22 admin@192.168.10.10
send "yes\r"
expect "password:"
send "Admin@huawei\r"
3、向交換機發(fā)送什么指令,不同的交換機是不一樣的,根據(jù)需要選擇要send的字符串,也就是根據(jù)需要來指定你要在交換機的輸入的命令。當然不只有備份,像reload /switchport mode trunk都是可以做的。
下面我們要做的是,創(chuàng)建一個crontab自動執(zhí)行任務
[root@permanet ~]# crontab -e
00 01 * * * /home/expect/tel10.exp //1點0分,每日每月每周,執(zhí)行絕對路徑下的命令//
可以寫改寫腳本建立一個ip地址文件,然后讀取文件中的ip,依次備份。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。