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]

脚注[編集]

外部リンク[編集]

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