Ssh

使用“並行”在遠端主機上執行命令 - 不返回任何內容,登錄失敗

  • February 20, 2018

我正在嘗試執行簡單的“並行”命令

parallel -S server1,server2,server3 echo "Number {}: Running on \`hostname\`" ::: 1 2 3

它要求我輸入三台伺服器的密碼,但沒有任何反應。這些伺服器的正常 ssh 工作正常。

一旦我登錄到其中一台伺服器,系統就會警告我登錄“notty”失敗。

我怎樣才能實現正確的執行?

“它要求我輸入三台伺服器的密碼”

查看 GNU Parallel的文件:

“sshlogin 必須不需要密碼”

由於您使用的是-S(–sshlogin) 標誌,因此這是一個問題。

所以你會被要求輸入密碼,這意味著 GNU Parallel 將無法執行。

您需要設置 ssh 密鑰以確保您可以進行無密碼連接。

您可以按照連結中的步驟設置密鑰。

您確實在文章中說正常的 ssh 可以正常工作。所以你可能設置了 ssh 來詢問密碼。authorized_keys如果是這種情況,您可以使用現有的密鑰並將它們添加到文件中。

引用自:https://unix.stackexchange.com/questions/425400