su (Unix)

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

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

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

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

関連するコマンドとして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という類似コマンドが存在する。runas

外部リンク[編集]

  • Manpage of SU GNU 版 su、JM Project
  • su(1M) man page(SunOS リファレンスマニュアル)
  • su(1) man page(HP-UX リファレンス)