我有一個shell腳本權限被拒絕公鑰運行shell腳本,其中包含ansible命令
#!/bin/bash
echo "hello world"
ansible zookservers -i /home/ec2-user/kafka_scripts/ansible_rep/inventory -a "/home/ec2-user/kafka_2.11-0.9.0.0/bin/kafka-server-start.sh kafka_2.11-0.9.0.0/config/server.properties" --sudo
而
我的錯誤是
| FAILED => SSH Error: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
while connecting to 172.30.0.243:22
當我運行ansible命令則正在執行 ,但當我把它放在一個shell腳本中時,我得到上面的錯誤
我的外殼與chmod 777權限 - 所以問題它沒有與外殼執行權限
我發現了一些有趣的事情 當我從任何其他地方運行腳本我收到錯誤。但是當它運行在一個安全的目錄中時,它就會被執行。後來當我從任何其他目錄運行它時,它不會引發任何錯誤。 所以這個問題是首次公開密鑰認證
而你不是用sudo調用腳本?這是唯一的想法,我會爲什麼你的關鍵被忽略。用'-vvv'調用Ansible來調試ssh。 – udondan
嗨我試過,但我無法解決問題 - '失敗=> SSH錯誤:權限被拒絕(publickey,gssapi-keyex,gssapi-with-mic)。 連接到172.30.0.243:22時 使用-vvvv重新運行命令有時會很有用,它會打印SSH調試輸出以幫助診斷問題。 –
我發現了一些有趣的東西 - 當我從其他地方運行腳本時出現錯誤。但是當它運行在一個安全的目錄中時,它會被執行,然後當我從任何其他目錄運行它時,它不會引發任何錯誤。所以問題是與初始公鑰認證 - 很高興,如果你能以這種方式幫助我 –