SSH 到遠端需要執行 sudo 命令,除了修改 sudoers 外,還有哪些方式可以使用呢?
ssh 遠端執行 sudo 要如何輸入密碼
Linux shell 想要直接執行遠端機器命令,可以使用:ssh remote-host ls # 執行 ls
但是若遇到 sudo 會需要打密碼的情況,就會出現下述錯誤:
- ssh remote-host sudo ls
- sudo: no tty present and no askpass program specified
想要將輸入密碼的回應傳回來,可以使用 ssh -t 來達成
- ssh -t remote-host sudo ls
- [sudo] password for user: # 輸入密碼就可以正常執行
- Connection to remote-host closed.
若想要寫成 script,自動輸入密碼,可以使用 sudo -S
- echo 'password' | ssh remote-host sudo -S ls