suコマンドって?
suコマンドについて復習していきます
[ 目次 ]
はじめに
こんにちは、香港に住んでいるWEBデベロッパーのなかむ(@nakanakamu0828)です。
この記事は過去に運用していたブログからの移行記事になります。
LinuxやMac, Unixで利用されるsuコマンドについての復習まとめ記事です。
suとは
suコマンドは、"Switch User"の略です。
OSのユーザーを切り替える際に利用します。
オプション名 | 説明 |
---|---|
-f | 初期設定ファイル(.bashrc)を実行しない |
-l, - | ログイン・シェルを使用してユーザーを切り替える |
-m, -p | 環境変数"HOME","USER","LOGNAME","SHELL"を変更しない |
-c | ユーザ切り替え後、commnadを実行する |
-s shell | 指定したシェルを実行する。 |
--help | ヘルプ |
user[arg...] | ログインするユーザを指定する |
サンプルコマンド
【サンプル1 : rootユーザーに切り替える】
$ su - (root[ユーザー名])
ユーザーを指定しない場合、rootユーザーへの切り替えになります。
ハイフンの有無について)
ハイフンなしの場合、元のユーザーの環境変数やカレントディレクトリを引き継ぎます。
rootユーザーに変更する場合、ハイフンをつけず元のユーザーの環境変数を引き継ぐとコマンドが実行できない場合があります。ハイフンをつけるように気をつけましょう。
【サンプル2 : 切り替えたユーザーでコマンド実行】
# su - user -c "whoami"
rootユーザーからuserユーザーに切り替えて、"whoami"コマンドを実行します。"user"という結果がされると思います。
今回は -c オプションを使った別ユーザーのコマンド実行がしたかったので、メモとしてまとめさせて頂きました。