No.1
- 回答日時:
ひとつの方法は、su の man を詳しく見てみることです。
例えば、GNU の su には、-c というオプションがあり、コマンドを指定できます。
例えば、
% su -c ls -
で、root 権限で ls を実行できます。
もうひとつの方法は sudo というプログラムを使うこと。参考URLに紹介して
おきます。
もし、あなたが C 言語と、システムコールについてそこそこ詳しいのであれば、
プログラムを作るのは、さして難しいことではありません。setuid という
関数のマニュアルを読んでみてください。
参考URL:http://www.courtesan.com/sudo/
この回答への補足
suコマンドにそういうオプションがあったのですね。
manをちゃんと見る癖をつけないとだめですね~。
今回やろうと思ってるのは、suでログインしてから、いくつかの操作を行いたいので、su -cでは難しそうです。
1行ごとにpasswdを入力する必要がありますよね?
そういう場合はsudoになるのでしょうか?
この方向でも考えてみます。
No.2ベストアンサー
- 回答日時:
> 今回やろうと思ってるのは、suでログインしてから、いくつかの操作を行いたいので
であれば、そのいくつかの操作をまとめてシェルスクリプトにして、
それを su の -c に渡せば良いですね。
例えば、rally というユーザで、シェルスクリプト名が do_rally.sh とします。
スクリプトに実行権限がついていなければ
% su - rally -c "sh do_rally.sh"
という感じ。実行権限がついていれば
% su - rally -c do_rally.sh
で良いです。
ただ、最低一回はパスワードの入力があるので、su を使っている限りは
それからは逃れられません。
# ちょっと遅くなったので、もう sudo を使っているかな?
> % su - rally -c "sh do_rally.sh"
あ、これいいですね。
> # ちょっと遅くなったので、もう sudo を使っているかな?
sudoはちょっと難しかったので、"su root"でログインしてからshellを実行するようにしてました。
そのshellでは、root以外のユーザーで実行したいプログラムもあったので、下のように書いてました。
su rallyx -c "runAAA"
1.su rootでroot権限を得る。
2.シェルを実行する。
という2つの処理をa-kumaさんの方法だと1つで済みますね。
#なんで気づかなかったんだろう・・・。(^^;
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux linuxサーバーのキャッシュをクリアするコマンドを実行したい。 5 2023/01/24 14:52
- UNIX・Linux shellscript内のコマンドを、sudo(toor)として実行 2 2022/09/23 15:05
- UNIX・Linux ubuntuに外部侵入できるか 2 2022/04/09 12:48
- UNIX・Linux リナックスのリモート接続の際に使う sshコマンドについて 1 2022/11/21 19:46
- その他(コンピューター・テクノロジー) (コマンドプロンプト)コマンドプロンプトのactiveについて 2 2022/07/16 17:21
- Windows 10 外部ドライブにマウントできない問題について 9 2022/03/22 18:08
- サーバー ログオンユーザーがいない場合に自動再起動 1 2022/09/28 09:53
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- UNIX・Linux AWSのEC2のZabbixユーザーでawscliコマンドが実行できない状態を解決する 1 2022/12/06 22:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの表にヘンな枠が・・・
-
pingは正常なのにtracerouteで...
-
SONYの音楽ソフト「x-アプリ」...
-
python IDLEで訂正、削除のやり...
-
バッチファイル内の各コマンド...
-
linuxサーバーのキャッシュをク...
-
LD_LIBRARY_PATHって?
-
最初の一度しか実行されないロ...
-
ROBOCOPY cmdで正常に処理され...
-
regファイルでワイルドカードを...
-
UNIXシェルの途中でユーザー切...
-
エクセルからアクセスのプロシ...
-
Linux のシェルスクリプトの強...
-
sysstatをインストールしたが、...
-
シェルスクリプト内の「exit」
-
linux初心者です wineをつかっ...
-
英語版での表示
-
コマンドプロンプト Windows
-
Macでシェルスクリプト実行時に...
-
デフラグの目安
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SONYの音楽ソフト「x-アプリ」...
-
エクセルの表にヘンな枠が・・・
-
pingは正常なのにtracerouteで...
-
ファイルサイズが小さくなりま...
-
windows10のごみ箱をrd /s /q C...
-
LD_LIBRARY_PATHって?
-
バッチファイル内の各コマンド...
-
linuxサーバーのキャッシュをク...
-
最初の一度しか実行されないロ...
-
Linux のシェルスクリプトの強...
-
エクセルからアクセスのプロシ...
-
python IDLEで訂正、削除のやり...
-
SPI非言語の問題 解説お願いします
-
shutdownコマンド実行の残り時...
-
ROBOCOPY cmdで正常に処理され...
-
taskkill をバッチ処理できない。
-
Openイベントを開始させないで...
-
ACCESSレポートをPDFに出力したい
-
sudoで実行したコマンドの実行...
-
信頼済みサイト登録をbatファイ...
おすすめ情報