用意されているユーザーとグループ
Linuxではインストールしてすぐにそのシステムを利用できるように、ユーザーとそのユーザーが所属するグループが用意されています。ユーザーやグループは必要に応じて複数追加できます。
一般グループのユーザーとグループ
Linuxにログインするにはアカウントを作成するとユーザー名と同様のグループが作られ、ユーザーはそのユーザーグループに所属しているとシステムに登録されます。
グループは複数のユーザーをまとめるためにあり、個別のユーザーを所属部署などの単位でグループ化することができます。グループを使うことでシステム上にあるディレクトリのアクセス権を設定して、特定のグループに属したユーザーのみアクセスできるディレクトリを作成するといった使い方や、特定グループに属しているユーザーのみ後述のrootユーザーになることができるような運用が可能になります。
rootユーザー
rootユーザーはシステムの設定変更や、プログラムのインストールや削除、ユーザーを作成・削除することができる、利用に制限がない特別なユーザーです。Rootユーザーはアクセス権に関係なくすべてのユーザーのディレクトリへのアクセス、コンテンツの読み書きが行える点で一般ユーザーとは異なります。
このようにrootユーザーでログインできればすべての操作を行うことができてしまうため、rootユーザーのアカウントは厳格に管理する必要があります。
suコマンド
suコマンドは既に別のユーザーでログインしているユーザーが一時的に他のユーザーになるためのコマンドです。suコマンドを実行する際、オプションとしてユーザーを指定しない場合は、rootユーザーでシェルを起動します。
オプションを付けずにsuコマンド単体でコマンドを実行するとカレントディレクトリを変更せずにrootユーザーでログインします。カレントディレクトリをrootのホームディレクトリに変更してログインするには、”su -“または”su – root”と実行することでカレントディレクトリを変更したうえでrootユーザでログインできます。安全や管理の面から考えると、一般ユーザーでログインしてからrootユーザーの権限を取得し、システム作業をすることが望ましいです。
①
1 |
$ su |
→rootユーザーになり、カレントディレクトリは”/root”に移動する。
②
1 |
$ su - [ユーザー名] |
→指定したユーザーになり、カレントディレクトリは”/home/ユーザー名”に移動する。
sudoコマンド
スーパーユーザー(root)権限でコマンドを実行したいときは、sudoコマンドを使います。普段作業するときはユーザー権限で行い、必要に応じてsudoを使いコマンドを実行することで、suコマンドでユーザーをrootに切り替えることなく、root権限が必要な設定やプログラムを実行することができます。オプション-uを用いれば、任意のユーザーでコマンドを実行することが可能です。
1 |
$ sudo 実行したいコマンド |
【代表的なオプション】
-u ユーザー名
|
指定したユーザーでコマンドを実行する
|
【演習】
cat /var/log/syslogとsudo cat /var/log/syslog を実行してみましょう。2つの結果を比較してみましょう。