- 締切済み
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 お願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Murasan759
- ベストアンサー率59% (312/527)
回答No.1
何故わざわざsuコマンドを使用されているのか不明ですが、単純に ------------ !#/bin/sh mkdir /home/user1/tmp sudo mkdir /var/log/aaa touch /home/user1/bbb ------------ では駄目なんでしょうか?
補足
sudo su を利用する理由は、 sudo実行で対話式でパスワードが聞かれてしまうので最初にroot権限にスイッチしたいためです。 sudoers にノーパスワードは権限的に難しいです。対話式をクリアできる方法ご存知でしたら教えて下さい。