Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie Remote-Vorgänge unter Linux mithilfe von Python-Skripten

So implementieren Sie Remote-Vorgänge unter Linux mithilfe von Python-Skripten

WBOY
WBOYOriginal
2023-10-05 10:57:041459Durchsuche

So implementieren Sie Remote-Vorgänge unter Linux mithilfe von Python-Skripten

Für die Verwendung von Python-Skripten zum Implementieren von Remote-Vorgängen unter Linux sind bestimmte Codebeispiele erforderlich.

In Linux-Systemen können mithilfe von Python-Skripten problemlos Remote-Vorgänge implementiert und Befehle aus der Ferne ausgeführt, Dateien übertragen und andere Funktionen übertragen werden. In diesem Artikel wird die Verwendung von Python-Skripten zur Implementierung von Remote-Vorgängen unter Linux vorgestellt und spezifische Codebeispiele gegeben.

1. Remote-Ausführung von Befehlen

Um die Funktion der Remote-Befehlsausführung in einem Linux-System zu implementieren, können Sie das Paramiko-Modul verwenden. paramiko ist eine in reinem Python implementierte SSHv2-Protokollbibliothek, die die Funktionen eines SSH-Clients implementieren kann.

Zuerst müssen Sie das Paramiko-Modul auf Ihrem lokalen Computer installieren. Sie können pip zum Installieren verwenden. Der Befehl lautet wie folgt:

pip install paramiko

Nach Abschluss der Installation können Sie das folgende Codebeispiel verwenden, um die Funktion zum Remote-Ausführen von Befehlen zu implementieren:

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')

Im obigen Code akzeptiert die Funktion remote_execute vier Parameter: Hostname (IP-Adresse des Zielhosts), Benutzername (Benutzername), Passwort (Passwort) und Befehl (auszuführender Befehl). Über das SSHClient-Objekt des Paramiko-Moduls können Sie eine Verbindung zum angegebenen Host herstellen und Befehle ausführen.

2. Dateien übertragen

Um die Funktion der Dateiübertragung im Linux-System zu realisieren, können Sie die SFTP-Funktion des Paramiko-Moduls verwenden. SFTP (SSH File Transfer Protocol) ist ein auf dem SSH-Protokoll basierendes Dateiübertragungsprotokoll, das Vorgänge wie das Hoch- und Herunterladen von Remote-Dateien realisieren kann.

Das Folgende ist ein Beispielcode, der die Funktion des Remote-Hochladens von Dateien realisieren kann:

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')

Im obigen Code akzeptiert die Funktion remote_upload fünf Parameter: Hostname (IP-Adresse des Zielhosts), Benutzername (Benutzername), Passwort (Passwort) , local_path (lokaler Dateipfad) und remote_path (Remote-Dateipfad). Über das SSHClient-Objekt und das SFTP-Objekt des Paramiko-Moduls können Sie eine Verbindung zum angegebenen Host herstellen und Dateien hochladen.

Zusammenfassung:

Anhand der obigen Codebeispiele können Sie die Funktion des Remote-Betriebs in Linux per Python-Skript realisieren. Die Fernausführung von Befehlen und die Dateiübertragung sind bei tatsächlichen Betriebs- und Wartungsarbeiten weit verbreitet. Die Verwendung von Python-Skripten kann die Effizienz und den Komfort verbessern. Wenn Sie Python-Skripte für Remote-Vorgänge verwenden, müssen Sie natürlich auf Sicherheit und Berechtigungskontrolle achten, um unnötige Probleme zu vermeiden.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie Remote-Vorgänge unter Linux mithilfe von Python-Skripten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn