我試圖以root身份在多個遠程服務器上運行本地腳本。我沒有su根源,但可以使用sudo運行root命令。到目前爲止,我嘗試:在遠程服務器上以根用戶身份運行本地腳本
for host in $(cat hosts_list); do ssh -tt $host "echo mypassword | sudo bash -s" < ./myscript.sh
而在myscript.sh有一樣的東西:
echo "test test123" >> /etc/tests
exit 0
但它看起來像沒有工作,也不會改變文件。以root用戶身份運行此腳本的正確方法是什麼,並且不必爲每個主機單獨輸入密碼?
我認爲這將是對ServerFault –
一個更適合我相信這是一個純粹的shell腳本問題。 – JavaRed
嘗試'sudo echo「PermitRootLogin yes」>>/etc/ssh/sshd_config'然後'sudo service ssh restart' – Arash