• 締切済み

Linux  CentOS shellスクリプト内でユーザーをスイッチする方法教えて下さい。

困っています。ご存知の方教えて下さい。 一般ユーザーでshellスクリプトを実行して、root権限にスイッチして、root権限のみに許されたコマンドを実行してから、 一般ユーザーに戻る方法がわかりません。 ターミナルで sudo su コマンドを実行すると、対話式でパスワードを入力できますが、スクリプト内で対話式のパスワードを入力してrootに ユーザーをスイッチする方法がわかりません。 ------------ !#/bin/sh mkdir /home/user1/tmp ←一般ユーザーで実行したいコマンド sudo su ←ここでパスーワード入力して rootに権限スイッチ mkdir /var/log/aaa   ←root権限で実行したいコマンド su user1 touch /home/user1/bbb ← 一般ユーザーに戻ってコマンド実行 ------------ 環境:CentOS5 お願いします。

みんなの回答

回答No.1

何故わざわざsuコマンドを使用されているのか不明ですが、単純に ------------ !#/bin/sh mkdir /home/user1/tmp sudo mkdir /var/log/aaa touch /home/user1/bbb ------------ では駄目なんでしょうか?

Humi_Sap
質問者

補足

sudo su を利用する理由は、 sudo実行で対話式でパスワードが聞かれてしまうので最初にroot権限にスイッチしたいためです。 sudoers にノーパスワードは権限的に難しいです。対話式をクリアできる方法ご存知でしたら教えて下さい。

関連するQ&A