sshpass nicht richtig funktioniert
Ich bin mit sshpass, um das Passwort weitergeben, nicht-interaktiven auf ubuntu 11.04.
wenn ich sshpass mit scp
sshpass -p '123' scp [email protected]:/home/sayuj/examples.desktop ~/Desktop/
funktioniert es einwandfrei
aber es funktioniert nicht mit ssh
sshpass -p '123' ssh [email protected]
Was könnte das problem sein und wie behebe ich es?
InformationsquelleAutor Sayuj | 2011-06-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe eine Lösung gefunden:
Das problem ist, dass die neue version des ssh-client noch hat und die alte version von
sshpass
(aus dem Jahr 2008 nicht verändert).Finden Sie die patch - hier
sshpass
QuelleAlles, was Sie brauchen, ist nur patchen der Sourcen (nur 1 Zeile hinzufügen, und 1 wenig ändern), kompilieren und installieren (vergessen Sie nicht zu entfernen Paket vor).
InformationsquelleAutor Temujeen
Neuen sshpass-version 1.05 funktioniert mit den neuesten ssh-client. Es ist in der Ubuntu 12.04 Precise Pangolin.
Für ältere Ubuntu (oder andere Linux-Distributionen) können Sie sich die Sourcen aus:
entpacken mit:
bauen:
und verwenden Sie die erstellten binäre sshpass.
InformationsquelleAutor mmm
Vielleicht brauchen Sie
-o stricthostkeychecking=no
wie dieseInformationsquelleAutor Alex Montoya
Schließlich landete ich mit
rsync
stattscp
nur wegen dem gleichen problem. Ich habe Kraft, um dieses nützliche Befehl, weil Im sichern der Router-Konfigurationen und Daten von Computern vorgenommen, um die Router. Router verwenden eine sehr begrenzte Anzahl von linux-Befehlen, und diese ist verfügbar auf den Modellen, die wir verwenden. Wir tryied für die Verwendung von SSH-keys, aber Router haben nicht einen permanenten Speicher, sobald Sie reinicialize, alle SSH-Schlüssel gewischt bekommen.Also der Befehl für
rsync
ist hier mit der-e
option aktiviert, auch ich bin mit einem 2222 port, der-p
option können Sie die Anschlüsse ändern.Können Sie schützen, noch weiter, als ich getan haben, ersetzen Sie das Kennwort für eine Datei eine Zeile mit einem bash-Skript für multi-server-Umgebung. Alternative ist, die option-f verwenden, damit das Kennwort nicht in der bash history
-f "/path/to/passwordfile"
Wenn Sie möchten, aktualisieren Sie nur die veränderten Dateien dann verwenden Sie diesen Parameter -h -v -r -P -t wie hier beschrieben https://unix.stackexchange.com/questions/67539/how-to-rsync-only-new-files
Durch die Art und Weise, wenn Sie wollen, um die wiederherstellen, nur in umgekehrter Quelle durch das Ziel. Brauchen nicht viel ändern, aus dem gleichen Befehls-shell können Sie es tun, eine Umkehrung der Reihenfolge der Ziel-und Quell-Verzeichnisse, stellen Sie sicher, Sie haben einen Benutzer auf dem Ziel-mit dem gleichen Kennwort zu akzeptieren, die
rsync
InformationsquelleAutor Luis H Cabrejo
Können Sie
rsync
wie unten erwähnt:rsync --rsh="sshpass -p 123 ssh -l sayuj" 192.168.1.51:/home/sayuj/examples.desktop ~/Desktop/
scp
. Es ist das öffnen einer SSH-Sitzung, die er nicht tun kann.InformationsquelleAutor Sridhar