1. Vorwort
Übliche Lösungen erfordern die erforderliche Konfiguration des Remote-Servers. Wenn es nur einen oder zwei Remote-Server gibt, müssen Sie diese einzeln konfigurieren oder Code verwenden Führen Sie die oben genannten Vorgänge mit der oben genannten Methode aus Es ist nicht sehr praktisch. Die Verwendung von Paramiko kann die oben genannten Probleme sehr gut lösen. Im Vergleich zur vorherigen Methode muss nur die entsprechende Software (Python und PyCrypto) lokal installiert werden und es sind keine Konfigurationsanforderungen für Remote-Server erforderlich. Besonders hilfreich ist die Bedienung. Im folgenden Artikel wird die Installation und Verwendung des Python Paramiko-Moduls ausführlich vorgestellt. Lassen Sie uns gemeinsam lernen. ,
2. Installation
Es gibt zwei Voraussetzungen für die Installation von Paramiko, Python und einem weiteren Modul namens PyCrypto.
Normalerweise führen Sie zur Installation von Standard-Python-Modulen einfach Folgendes im Stammverzeichnis des Moduls aus:
python setup.py build python setup.py install
Hinweis: Überprüfen Sie vor der Installation, ob gcc installiert ist (yum -y install gcc)
2.1 PyCrypto-Installation
wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gz tar -zxvf pycrypto-2.6.tar.gz cd pycrypto-2.6/ python setup.py build && python setup.py install
Test:
python>> import Crypto
(Fehler beim Kompilieren: Fehler: Befehl 'gcc' ist mit Exit-Status 1 fehlgeschlagen; das liegt daran, dass das Paket python-dev fehlt, also yum -y install python-devel)
2.2 Paramiko-Installation
wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz tar xvzf paramiko-1.7.7.1.tar.gz cd paramiko-1.7.7.1/ python setup.py build && python setup.py install Crypto error: 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC'
Test:
python>> import paramiko (Crypto error: 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC'
Suchen Sie /usr/lib/python2.7/site-packages/Crypto/Util/number.py
Sagen Sie es
if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:
Kommentiert
#if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:
3. Verwendung
3.1 Fernbefehle ausführen
#!/usr/bin/python import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect("某IP地址",22,"用户名", "口令") stdin, stdout, stderr = ssh.exec_command("你的命令") print stdout.readlines() ssh.close()
3.2 Dateien auf die Fernbedienung hochladen
#!/usr/bin/python import paramiko t = paramiko.Transport(("某IP地址",22)) t.connect(username = "用户名", password = "口令") sftp = paramiko.SFTPClient.from_transport(t) remotepath='/tmp/test.txt' localpath='/tmp/test.txt' sftp.put(localpath,remotepath) t.close()
3.3 Dateien von der Fernbedienung herunterladen
#!/usr/bin/python import paramiko t = paramiko.Transport(("某IP地址",22)) t.connect(username = "用户名", password = "口令") sftp = paramiko.SFTPClient.from_transport(t) remotepath='/tmp/test.txt' localpath='/tmp/test.txt' sftp.get(remotepath, localpath) t.close()
Zusammenfassung
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels für das Studium oder die Arbeit von Nutzen sein kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen.