首先,获取配置
文件路径及文件名
在用户视图下使用dir命令找到配置文件在设备上的保存路径和配置文件名称。
不同型号设备配置文件的默认存储位置不同,常见的有flash:/和cfcard:/。华为设备默认配置文件名为vrpcfg.zip。
<SX-3F-WL>dirDirectory of flash:/Idx AttrSize(Byte) Date Time FileName 0 -rw- 685,821 Dec 09 09:40:34 web.7z1 -rw-22,045,068 Dec 09 09:41:50 s5700-p-li-2 drw- - Dec 09 09:44:50 user3 -rw-1,004 Oct 18 17:09:32 private-data.txt4 -rw- 836 Oct 18 15:22:16 rr.dat5 -rw- 836 Oct 18 15:22:16 rr.bak6 drw- - Dec 09 09:45:48 dhcp7 drw- - Oct 18 15:24:24 syslogfile8 drw- - Nov 10 00:00:26 resetinfo9 -rw-1,595 Oct 25 15:16:58 vrpcfg.zip204,556 KB total (181,924 KB free)
其次,开启ftp功能
在需要备份配置文件的设备上开启ftp功能并设置能使用ftp登录的用户
<Huawei> 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登录
然后,准备脚本文件
我们需要准备两个文件:ip.txt、ftp.sh
ip.txt的主要作用:向ftp.sh输入设备IP地址、设备名称(可选)、用户名(可选)、密码(可选)。
如果所有设备使用同一个用户名和密码,则可以写入ftp.sh中作为变量。
ftp.sh的主要作用:执行ftp登录,下载配置文件,修改配置文件名。
首先是ip.txt,示例中设备使用同一个用户名和密码。
192.168.10.100 办公汇聚
192.168.10.101服务器汇聚
然后是ip.sh
#!/bin/bashDate=`date +%Y%m%d` #备份日期while read ip name#读取IP和设备名称doftp -n << EOFopen $ipuser admin Password#用户名和密码binary #二进制传输模式get vrpcfg.zip#配置文件名称,此处需根据待备份设备填写quitEOFmv vrpcfg.zip config/$ip-$name-$Date.zip#移动文件并修改备份的文件名done < ip.txt
最后,使用bash script.sh命令执行就好了