ubuntu系统下使用python来配置华为交换机

发布时间 2023-09-25 00:54:55作者: zhouyqax11
##修改更新源#
sudo cp /etc/apt/sources.list /etc/apt/sources.list.old
sudo passwd root
nasadmin
nasadmin
nasadmin

vi /etc/apt/
sources.list
#替换为下面的内容

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse

# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
保存
sudo apt update
sudo apt -y install wget vim

# 安装python组件
sudo apt update sudo apt -y install python3-netmiko

 

# 开始写配置脚本
zhouyqax@ubuntu-py:~$ su root 密码: root@ubuntu-py:/home/zhouyqax# cd root@ubuntu-py:~# cd switch/ root@ubuntu-py:~/switch# ls -l 总计 16 -rw-r--r-- 1 root root 42 9月 24 16:20 config.txt -rw-r--r-- 1 root root 32 9月 24 16:19 devices_list.txt -rw-r--r-- 1 root root 41 9月 24 16:02 shuoming.txt -rw-r--r-- 1 root root 765 9月 24 16:18 sw-peizi.py root@ubuntu-py:~/switch# cat config.txt vlan 101 dhcp snooping enable quit quit root@ubuntu-py:~/switch# cat devices_list.txt 10.203.224.130 10.203.224.131 root@ubuntu-py:~/switch# cat sw-peizi.py import netmiko import textfsm import json with open('devices_list.txt') as f: for line in f.readlines(): line_s = line.split( ) device_ip = line_s[0] device_name = line_s[1] connection_info = { 'device_type': 'huawei', 'ip': device_ip, 'username': 'sshadmin', 'password': 'admin@123' } with netmiko.ConnectHandler(**connection_info) as connect: print('已成功登录设备: ' + device_ip) output = conn.send_command('dis cu | i hostname') print(output) output = connect.send_config_from_file('config.txt') print(output) output = connect.send_command('save','y') print(output) root@ubuntu-py:~/switch#