私の rundeck ジョブは、sudo を使用して呼び出すように構成された単一のスクリプト ステップで構成されています。ジョブ構成 UI のスクリプト ステップの実行プレビューには、次のように表示されます。
sudo -u ${option.mysudouser} scriptfile
ジョブの実行時に、以下のエラーが発生します:
[sudo] < my ssh user> のパスワード:
sudo: /tmp/< XXX>-dispatch-script.tmp.sh を実行できません: 権限が拒否されました
分析の結果、rundeck によってノード ホストに scp されている/tmp/< XXX>-dispatch-script.tmp.shファイルが、すべての実行権限を持っていないことがわかりました。残念ながら、< my ssh user> と my < sudo user> は異なり、グループを共有していません。そのため、スクリプトを含む一時ファイルを sudo ユーザーとして呼び出すことができなかったため、ジョブの実行はアクセス許可の問題で失敗します。
誰でも提案できますか:
* rundeck が、作成される一時スクリプト ファイルのアクセス許可を決定するための構成値を提供する場合。
* その他の回避策:
以下のようにスクリプトを指定して試しましたが、問題は解決しません:
- chmod 777 /tmp/ -dispatch-script.tmp.sh;sudo -u ${option.mysudouser} scriptfile
- chmod 777 /tmp/ -dispatch-script.tmp.sh && sudo -u ${option.mysudouser} スクリプトファイル
これを解決する方法を提案してください。