Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk melaksanakan operasi jauh di Linux menggunakan skrip Python

Bagaimana untuk melaksanakan operasi jauh di Linux menggunakan skrip Python

WBOY
WBOYasal
2023-10-05 10:57:041477semak imbas

Bagaimana untuk melaksanakan operasi jauh di Linux menggunakan skrip Python

Cara menggunakan skrip Python untuk melaksanakan operasi jauh di Linux memerlukan contoh kod khusus

Dalam sistem Linux, menggunakan skrip Python boleh melaksanakan operasi jauh dengan mudah dan boleh melaksanakan arahan dari jauh, memindahkan fail dan fungsi lain. Artikel ini akan memperkenalkan cara menggunakan skrip Python untuk melaksanakan operasi jauh di Linux dan memberikan contoh kod khusus.

1. Pelaksanaan perintah jauh

Untuk melaksanakan fungsi pelaksanaan arahan jauh dalam sistem Linux, anda boleh menggunakan modul paramiko. paramiko ialah perpustakaan protokol SSHv2 yang dilaksanakan dalam Python tulen, yang boleh melaksanakan fungsi klien SSH.

Pertama, anda perlu memasang modul paramiko pada mesin tempatan anda. Anda boleh menggunakan pip untuk memasang, arahannya adalah seperti berikut:

pip install paramiko

Selepas pemasangan selesai, anda boleh menggunakan contoh kod berikut untuk melaksanakan fungsi melaksanakan arahan dari jauh:

import paramiko

def remote_execute(hostname, username, password, command):
    # 创建SSH客户端对象
    ssh = paramiko.SSHClient()
    # 如果目标主机不在known_hosts文件中,允许连接
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    try:
        # 连接目标主机
        ssh.connect(hostname, username=username, password=password)
        # 执行命令
        stdin, stdout, stderr = ssh.exec_command(command)
        # 获取命令输出
        output = stdout.read().decode()
        # 打印输出结果
        print(output)
    finally:
        # 关闭连接
        ssh.close()

# 示例:远程执行命令
remote_execute('192.168.1.100', 'root', 'password', 'ls')

Dalam kod di atas, fungsi remote_execute menerima empat parameter: nama hos (alamat IP hos sasaran ), nama pengguna (nama pengguna), kata laluan (kata laluan) dan arahan (arahan untuk dilaksanakan). Melalui objek SSHClient modul paramiko, anda boleh menyambung ke hos yang ditentukan dan melaksanakan arahan.

2. Pindahkan fail

Untuk merealisasikan fungsi pemindahan fail dalam sistem Linux, anda boleh menggunakan fungsi SFTP modul paramiko. SFTP (SSH File Transfer Protocol) ialah protokol pemindahan fail berdasarkan protokol SSH, yang boleh merealisasikan operasi seperti memuat naik dan memuat turun fail jauh.

Berikut ialah contoh kod yang boleh merealisasikan fungsi memuat naik fail dari jauh:

import paramiko

def remote_upload(hostname, username, password, local_path, remote_path):
    # 创建SSH客户端对象
    ssh = paramiko.SSHClient()
    # 如果目标主机不在known_hosts文件中,允许连接
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    try:
        # 连接目标主机
        ssh.connect(hostname, username=username, password=password)
        # 创建SFTP客户端对象
        sftp = ssh.open_sftp()
        # 上传文件
        sftp.put(local_path, remote_path)
        # 关闭SFTP连接
        sftp.close()
    finally:
        # 关闭SSH连接
        ssh.close()

# 示例:远程上传文件
remote_upload('192.168.1.100', 'root', 'password', '/path/to/local/file', '/path/to/remote/file')

Dalam kod di atas, fungsi remote_upload menerima lima parameter: nama hos (alamat IP hos sasaran), nama pengguna (nama pengguna), kata laluan (kata laluan) , local_path (laluan fail tempatan) dan remote_path (laluan fail jauh). Melalui objek SSHClient dan objek SFTP modul paramiko, anda boleh menyambung ke hos yang ditentukan dan memuat naik fail.

Ringkasan:

Melalui contoh kod di atas, anda boleh merealisasikan fungsi pengendalian jauh dalam Linux oleh skrip Python. Pelaksanaan jauh arahan dan pemindahan fail adalah sangat biasa dalam operasi sebenar dan kerja penyelenggaraan Menggunakan skrip Python boleh meningkatkan kecekapan dan kemudahan. Sudah tentu, apabila menggunakan skrip Python untuk operasi jauh, anda perlu memberi perhatian kepada kawalan keselamatan dan kebenaran untuk mengelakkan masalah yang tidak perlu.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan operasi jauh di Linux menggunakan skrip Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn