Wenn Sie die passwortlose Anmeldung aktiviert haben, können Sie entweder SSH verwenden, um Befehle im Stapelmodus auf einem Remote-Computer auszuführen, oder SCP verwenden, um Dateien von/auf den Remote-Computer zu kopieren.
Wenn es Probleme mit der passwortlosen Anmeldung gibt, kann Ihr Batch-Programm in einer Schleife oder Zeitüberschreitung enden.
Lassen Sie uns in diesem Artikel überprüfen, wie Sie ssh/scp anweisen, die Operation nur dann durchzuführen, wenn Sie auf das Warten auf das Passwort verzichten können.
Bevor Sie dies ausprobieren, stellen Sie sicher, dass zwischen Ihrem lokalen Host und Remote-Host.
1. ssh -o „BatchMode yes“ Anwendungsbeispiel
Wenn Sie die Anmeldung ohne Passwort aktiviert haben, wird sich das folgende Beispiel beim Remote-Host anmelden und den Befehl who ausführen, ohne nach dem Passwort zu fragen.
local-host# ssh ramesh@remote-host who
Wenn die Anmeldung ohne Passwort nicht aktiviert ist, wird es wie unten gezeigt zur Eingabe des Passworts auf dem Remote-Host aufgefordert.
local-host# ssh ramesh@remote-host who ramesh@remote-host's password:
Wenn Sie ssh -o „BatchMode yes“ verwenden, wird ssh nur ausgeführt, wenn die passwortlose Anmeldung aktiviert ist, andernfalls wird ein Fehler zurückgegeben und fortgesetzt.
local-host# ssh -o "BatchMode yes" ramesh@remote-host Command
Befehlsausführung im Stapelmodus mit SSH – Erfolgsfall
local-host# ssh -o "BatchMode yes" ramesh@remote-host who .. [Note: This will display the output of remote-host's who command]
Batch-Modus-Befehlsausführung mit SSH – Fehlerfall
local-host# ssh -o "BatchMode yes" ramesh@remote-host who Permission denied (publickey,password).
Hinweis: Wenn Sie -o „BatchMode yes“ nicht verwendet hätten, hätte der obige Befehl nach dem Passwort für mein Konto auf dem Remote-Host gefragt. Dies ist der Hauptunterschied bei der Verwendung der Ja-Option von BatchMode.
2. scp -B Option Verwendungsbeispiel
Wenn Sie die Option scp -B verwenden, wird scp nur ausgeführt, wenn die passwortlose Anmeldung aktiviert ist, andernfalls wird es sofort beendet, ohne auf das Passwort zu warten.
$ scp -B file root@IP:PATH
SCP im Stapelmodus – erfolgreicher Fall
local-host# scp -B /etc/yp.conf ramesh@remote-host:/tmp yp.conf 100% 84 0.1KB/s 00:00
SCP im Stapelmodus – Fehlerfall
Wenn scp in diesem Beispiel ohne Authentifizierung möglich ist, wird der Befehl ausgeführt, andernfalls wird er wie unten gezeigt beendet.
local-host# scp -B /etc/yp.conf ramesh@remote-host:/tmp Permission denied (publickey,password). lost connection