Mengirim fail konfigurasi, fail imej, dsb. ialah operasi biasa dalam pengurusan peranti rangkaian. Netmiko ialah perpustakaan Python yang boleh digunakan untuk berinteraksi dengan pelbagai peranti rangkaian Ia menyediakan beberapa fungsi untuk memindahkan fail, termasuk fungsi SCP (Secure Copy Protocol).
Netmiko ialah perpustakaan Python lanjutan untuk Paramiko yang boleh digunakan untuk menyambung dan mengurus pelbagai peranti rangkaian. Netmiko boleh digunakan untuk menyambung ke pelbagai peranti rangkaian, seperti Cisco, Juniper, Arista, HP, dll. Pustaka Netmiko menyediakan pelbagai fungsi untuk menjadikan operasi seperti sambungan, penghantaran arahan, pemindahan fail, dll. lebih mudah dan mesra pengguna.
SCP ialah protokol pemindahan fail selamat yang menggunakan protokol SSH untuk memindahkan fail. Berbanding dengan protokol pemindahan fail lain seperti FTP dan TFTP, SCP menggunakan sambungan yang disulitkan untuk menyediakan keselamatan yang lebih tinggi. Walaupun SCP kurang cekap apabila memindahkan fail besar, ia adalah pilihan ideal apabila memindahkan fail kecil.
Sebelum menggunakan Netmiko, anda perlu memasangnya. Netmiko boleh dipasang menggunakan pip, hanya gunakan arahan berikut:
pip install netmiko
Gunakan fungsi SCP dalam perpustakaan Netmiko untuk memindahkan fail dari komputer tempatan ke peranti , dan juga boleh memindahkan fail daripada peranti ke komputer tempatan. Di bawah ini kami akan memperkenalkan cara menggunakan fungsi SCP Netmiko untuk memindahkan fail.
Untuk memindahkan fail daripada peranti ke komputer tempatan anda perlu menggunakan fungsi file_transfer
Netmiko. Fungsi ini memerlukan empat parameter: laluan jauh, laluan tempatan, nama fail dan arah pemindahan fail (dari peranti jauh ke komputer tempatan). Laluan jauh dan laluan tempatan boleh menjadi laluan relatif atau laluan mutlak. Arah pemindahan fail perlu ditentukan menggunakan rentetan get
. Berikut ialah contoh kod untuk memindahkan fail menggunakan fungsi file_transfer
Netmiko:
from netmiko import ConnectHandler device = { 'device_type': 'cisco_ios', 'ip': '192.168.1.1', 'username': 'username', 'password': 'password', } remote_path = 'flash:/config.txt' local_path = '/home/user/config.txt' file_name = 'config.txt' with ConnectHandler(**device) as ssh: ssh.file_transfer( remote_file=remote_path, local_file=local_path, file_system='flash:', direction='get' )
Dalam kod contoh di atas, kami mula-mula mentakrifkan kamus peranti dan kemudian menggunakan fungsi ConnectHandler
untuk menyambungkan peranti. Selepas menyambungkan peranti, kami menggunakan fungsi file_transfer
untuk memindahkan fail. Parameter remote_file
menentukan laluan fail pada peranti jauh, parameter local_file
menentukan laluan fail pada komputer setempat, parameter file_system
menentukan sistem fail di mana fail terletak dan parameter direction
menentukan arah pemindahan. Jalankan kod di atas untuk memindahkan fail dari peranti ke komputer tempatan anda.
Memindahkan fail daripada komputer tempatan ke peranti juga memerlukan penggunaan fungsi file_transfer
Netmiko. Fungsi ini memerlukan empat parameter: laluan jauh, laluan tempatan, nama fail dan arah pemindahan fail (dari komputer tempatan ke peranti jauh). Laluan jauh dan laluan tempatan boleh menjadi laluan relatif atau laluan mutlak. Arah pemindahan fail perlu ditentukan menggunakan rentetan put
. Berikut ialah contoh kod yang menggunakan fungsi file_transfer
Netmiko untuk memindahkan fail dari komputer setempat ke peranti:
from netmiko import ConnectHandler device = { 'device_type': 'cisco_ios', 'ip': '192.168.1.1', 'username': 'username', 'password': 'password', } remote_path = 'flash:/config.txt' local_path = '/home/user/config.txt' file_name = 'config.txt' with ConnectHandler(**device) as ssh: ssh.file_transfer( remote_file=remote_path, local_file=local_path, file_system='flash:', direction='put' )
Dalam kod sampel di atas, kami juga mentakrifkan kamus peranti dahulu dan kemudian menggunakan ConnectHandler
berfungsi untuk menyambung peralatan. Selepas menyambungkan peranti, kami menggunakan fungsi file_transfer
untuk memindahkan fail. Parameter remote_file
menentukan laluan fail pada peranti jauh, parameter local_file
menentukan laluan fail pada komputer setempat, parameter file_system
menentukan sistem fail di mana fail terletak dan parameter direction
menentukan arah pemindahan. Jalankan kod di atas untuk memindahkan fail dari komputer setempat anda ke peranti.
Atas ialah kandungan terperinci Cara menggunakan Netmiko untuk pemindahan fail dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!