用意されているユーザとグループ
用意されているユーザとグループ
Linuxはインストールしてすぐにそのシステムを利用できるように、ユーザとそのユーザが所属するグループが用意されている。
一般のユーザとグループ
Linuxにログインするにはアカウントが必要である。アカウントを作成するとユーザ名と同様の名前のグループが作られ、ユーザはそのユーザグループに所属しているとシステムに登録される。
グループは複数のユーザをまとめるためにある。グループを使うことで、システム上にあるディレクトリのアクセス権を設定し、 「特定のユーザにのみアクセスできるディレクトリファイルの作成する」 などといった使い方や、特定グループに属しているユーザのみ root ユーザになることができるような運用が可能となる。
rootユーザ
root ユーザはシステム設定の変更や、プログラムのインストールや削除、ユーザを作成、削除することができる利用に制限のない特別なユーザである。
root ユーザはアクセス権に関係なく、全てのユーザのディレクトリへのアクセス、コンテンツの読み書きが行えるなどの点で他の一般ユーザとは異なる。
su コマンド
su コマンドは既に別のユーザでログインしているユーザが、一時的に他のユーザになるためのコマンドである。su コマンドを実行する際に、オプションとしてユーザを指定しない場合は root ユーザでシェルを起動する。
オプションを付けずに su コマンドを実行した場合はカレントディレクトを変更せずに root ユーザでログインする。カレントディレクトリを root のホームディレクトリに変更してログインする場合は 「 su - 」 もしくは 「 su -root 」 と実行することでカレントディレクトリを変更した上で root ユーザでログインできる。
root ユーザでログインすると、システム管理用のコマンドを実行することができる。複数人でLinuxシステムを管理している場合は、root ユーザで直接ログインして作業すると、root ユーザとしての履歴だけが残り、誰がどんな作業をしたのか履歴が残らない。
一方で、一般ユーザから root ユーザへ切り替えると、 root ユーザで作業を開始した時間などは直ぐに分かる。よって、安全や管理を考えると、一般ユーザでログインしてから root ユーザの権限を取得し、システム作業することが望ましい。
$ su $ su - [ユーザ]
オプション
su - ( もしくは su - root ) root ユーザになることができる。 su - user 指定したユーザになることができる。
root ユーザでコマンドを実行する sudo コマンド
sudo コマンドを使えば、スーパーユーザ ( root ユーザ ) 権限でコマンドを実行できる。su コマンドでユーザを root に切り替えることなく、 root 権限が必要な設定やプログラムを実行することができる。
-u オプションを付けて sudo コマンドを実行すると、任意のユーザでコマンドを実行できる。オプションを付けないで sudo コマンドを実行した場合は root 権限でコマンドを実行する。
sudo の設定は /etc/sudoers ファイルを編集することでユーザが sudo コマンドを実行できるようになる。/etc/sudoers ファイルは visufo コマンドを実行すると編集できる。
$ sudo コマンド スーパーユーザ ( root ) 権限でコマンドを実行
例
$ sudo cat /var/log/message
オプション
-u ユーザ 指定したユーザでコマンドを実行する。