今天它来了!
今天龙哥就教大家如何用python实现每天定时备份交换机配置文件?
1思路
1、编写好python脚本。2、交换机开启FTP服务,即把交换机设置成FTP服务器,配置ftp账号密码。3、利用window的任务计划程序,设置定时任务,如每天某个时刻运行该python脚本,实现定时备份。
2编写python脚本
python代码如下,很简单。大家要使用的话,复制后修改IP地址、ftp用户名、密码即可。如果备份其他网络设备,需要修改一下设备默认的配置文件名,如华为交换机默认为:vrpcfg.zip
(左右滑动,查看代码)
# more ftp-huawei.py # -*- coding=utf-8 -*-from ftplib import FTPimport time,oshostid="192.168.1.200" Today = time.strftime("%Y-%m-%d", time.localtime())#获取当天时间ftp = FTP()#创建变量 ftp.set_debuglevel(2)#开启debug模式ftp.connect(host=hostid,port=21)#FTP地址(交换机地址) ftp.login(user="along",passwd="along123")#FTP账号密码print(ftp.getwelcome())#打印ftp登陆成功信息 os.chdir('./')#改变当前路径至(已经在该目录下创建了这个文件夹) bufsize=1024filename=hostid + "--{}.zip".format(Today)#创建日期为前缀的zip文件 file_handle=open(filename,"wb").write#创建写操作 ftp.retrbinary("RETR vrpcfg.zip",file_handle,bufsize)#ftp后获取vrpcfg.zip这个文件并写入本地文件 ftp.set_debuglevel(0)#关闭调试模式 ftp.quit()#关闭FTP
复制上面代码,粘贴到python IDLE,相关参数修改后,文件名后缀记得保存为.py 格式。
如果你的电脑还没安装python的,可以参照如下教程:
3设置交换机FTP相关配置
交换机开启FTP服务功能:
[along]ftp server enable
给交换机创建ftp账号、密码,账号权限级别、ftp路径、账号服务类型添加ftp:
[along]aaa
[along-aaa] local-user along password irreversible-cipheralong123
[along-aaa]local-user along privilege level 15
[along-aaa]local-user along ftp-directory flash:
[along-aaa]local-user along service-type http ftp
设置交换机vty登录认证模式为:aaa ,即调用aaa 刚才创建的ftp账号、密码:
[along]user-interface vty 0 4
[along-ui-vty0-4] authentication-mode aaa
交换机确保网络的连通性:
vlan 10
#
interface Vlanif10
ip address 192.168.1.200 255.255.255.0
#
interface GigabitEthernet0/0/24
port link-type access
port default vlan 10
#
交换机 ping 我的电脑 能通:
本次龙哥测试环境非常简单,就是用交换机真机 直连 我的台式电脑,实际运用中:你们要确保网络的连通性 和 TP端口可达即可。
测试一下,python脚本是否可用? 双击该程序即可。
双击后,会发现多了一个文件:
打开该文件,对比配置,确实没错,测试通过!
4设置周期定时任务
如果我们需要每天定时去备份配置,我们可以利用window系统的“任务计划程序”来实现。
任务计划程序在哪里? 你可以直接搜索 或 控制面板打开:
或控制面板:
接下来,开始创建任务:
1、点击创建任务
然后选择 操作、新建:
条件、设置:默认设置即可
测试,验证成功,已在规定的时间,执行该脚本,实现定期备份了: