Su (Unix)

Unixコマンドであるsu(エスユー、ス)は、再ログインすることなく、シェルのユーザを切り替えるために利用される。Unixにおいて、マシンの管理作業を行う際にroot権限を得るために頻繁に使用されるコマンドである。KDEGNOME等のようなデスクトップ環境において、root権限が必要なコマンドを実行しようとすると、一般的にパスワード用の入力フィールドがポップアップする。

概要

suは一般的に、コマンドラインのターミナルから実行される。suを実行すると、切り替え先ユーザのパスワードが要求され、認証が成功した場合は、そのアカウントへのアクセス権限が与えられる。

johndoe@klinger:~$ su
Password: 
root@klinger# exit
exit
johndoe@klinger:~$

関連するコマンドとしてsudoがある。sudoを用いれば、別のユーザの権限でコマンドを実行できる。

sudoコマンド実行時、実行者であるユーザが、どのユーザの権限で、どういうコマンドラインを実行できるかといった情報は、一般的に/etc/sudoersで設定されている。 suを実行する際には切り替え先の権限のパスワードが要求されるのに対して、sudoを実行する際には自分のパスワードが要求される。 そのため、sudoを利用して作業をする人に対して切り替え先のユーザのパスワードを伝える必要がなく、ユーザーパスワードと管理者パスワードの両方を管理する必要がなく、パスワードが漏洩する危険性も軽減できる。Linuxディストリビューションによっては、suを利用してroot権限になることを禁止しており、root権限でコマンドを実行する場合は常にsudoを先頭につけることもある。

システム管理者は、不正な利用者によってroot権限を取得されないように、rootのパスワードを慎重に決定しなければならない。 Unixシステムによってはwheelグループが存在し、wheelグループに所属していないユーザはsuコマンドでroot権限を得ることができない。 この仕組みによって、侵入者がroot権限を得る可能性を軽減できる。 しかしながら、GNU suは思想的な理由によりWheelグループをサポートしない。

Windows XPにもrunasという類似コマンドが存在する[1]

脚注

[脚注の使い方]
  1. ^ runas

外部リンク

  • Manpage of SU GNU 版 su、JM Project
  • su Command man page(SunOS リファレンスマニュアル)
  • su(1) man page(HP-UX リファレンス)
  • 表示
  • 編集
Unixコマンド
ファイルとファイルシステム管理
プロセス管理
ユーザ管理/環境
テキスト処理
シェルビルトイン
通信
検索
  • find
  • grep
  • locate(英語版)
  • whatis(英語版)
  • whereis(英語版)
マニュアル
  • apropos(英語版)
  • help(英語版)
  • man
ソフトウェア開発
その他
  • bc
  • dc
  • cal
  • date
  • expr
  • false
  • lp(英語版)
  • lpr
  • od
  • sl
  • sleep
  • stty
  • true
  • tty