1

ターミナル経由のログ記録 root ユーザーに切り替えることができます:

ubuntu@ip-10-0-0-70:~$ sudo -s
root@ip-10-0-0-70:~# whoami
root

そこで、rundeck でこれを使用してジョブ スクリプトを作成しました。

whoami;
echo "1st step";
sudo -s;
echo "2nd step";

そして、これを実行すると、次のように出力されます。

ubuntu
1st step

「最初のステップ」を印刷した後、永久に動かなくなります。sudo -sコマンドに問題があるようです。

  • 試しsudo -iましたが、同じことが起こります
  • 試しsudo su - rootましたが、同じことが起こります
  • rundeck は ubuntu ユーザーとしてログインしています。私も同様です。

rundeck スクリプトで root に切り替えるアイデアはありますか?

4

2 に答える 2

1

これは予期される動作です。「sudo -s」を介してシェルを実行していて、シェルを離れたり終了したりしていません! そのため、来ない何かを永遠に待ちます。

おそらく、スクリプトの高度なオプションとして「sudo」を追加できます(「インタープリターまたはプレフィックスを使用してスクリプトを実行します。例:sudo、time :」と表示されます)。ただし、スクリプト全体をルートとして実行します。特定のコマンドを root として実行するだけの場合は、コマンドの前に sudo を付けて次のようにします。

sudo "enter_your_command_to_be_run_as_root_here"
于 2014-07-03T11:54:59.443 に答える