rootユーザーの利用方法

rootユーザーの利用方法

rootユーザーを利用する上での注意点とルール

rootユーザーには何でもできる権限がある一方、少しの操作ミスで重要なものを削除してしまうといった、
システム全体に影響を与えるようなリスクがあります。

基本は一般ユーザーとして、ログインする

常にrootユーザであることは大変危険ですので、通常の作業は一般ユーザーとしてログインし、
root権限が必要なときにのみ、一時的にrootユーザになって作業するのが一般的です。

root権限を使用する際は、専用のコマンドを使用する

その都度ログアウト/ログインし直すのは手間がかかるため、以下の専用のコマンドを使って、
一時的にroot権限が必要なコマンドを使用することができます。

suコマンドを使って、rootユーザーに切り替える

書式

su [-] [ユーザ名]

一時的にユーザを切り替えるためのコマンドです。
引数にはユーザ名を指定しますが、ユーザ名を省略すると、rootユーザを指定したものと
みなされます。

※ -(ハイフン)の役割について

-(ハイフン)を付けると、コマンドの実行時に、切り替えたユーザのホームディレクトリに移動しますが、 反対に -(ハイフン)を付けないと、ユーザーを切り替えた後も、 カレント(現在の)ディレクトリは、 移動されません。

実践①:カレント(現在の)ディレクトリのパスを確認する

現在、一般ユーザー(user01)でログインしているため、パスを確認すると
一般ユーザーのホームディレクトリのパス(/home/use01)が表示されます。

※ use01でログインしてありディレクトリを移動していない場合の想定です。

[user01@localhost ~]$ pwd
/home/user01

実践②:rootユーザーに切り替える

次にrootユーザーに切り替えた後は、rootユーザーのホームディレクトリ(rootディレクトリ)が、カレント(現在の)ディレクトリになるのでパスを確認すると、次のような結果になります。

[user01@localhost ~]$ su - 
パスワード:root123
[root@localhost ~]#pwd
/root

実践③:元のユーザーに戻る

元のユーザーに戻るために、exitコマンドを使用します。

[root@localhost ~]# exit ログアウト [user01@localhost ~]$

※ rootユーザーの権限が必要な作業が終わったら、必ずexitコマンドを使って元のユーザーに戻ってください

実践④:ディレクトリを変更せずに、rootユーザに切り替える

今度は、カレント(現在の)ディレクトリを変更しないで、rootユーザに切り替えるために、-(ハイフン)をつけない状態で、suコマンドを実行しましょう。

[user01@localhost ~]$ su  
パスワード:root123
[root@localhost user01]$pwd
/home/user01

実践⑤:一般ユーザに戻ります

[root@localhost user01]# exit
ログアウト

sudoコマンドで、root権限のコマンドを安全に実行

書式

sudo  [コマンド名]

rootユーザーの権限が必要なコマンドを実行するためのコマンド

このコマンドは、rootユーザーの権限が必要なコマンドを実行するためのコマンドです。

suコマンドはパスワードの入力が求められるので、rootユーザーのパスワードが漏洩するなどの
リスクがありますが、sudoコマンドはパスワードを使う必要がないので、より安全にroot権限を利用できます。

sudoコマンドの利用を許可する設定について

sudoコマンドを介してroot権限が必要なコマンドを実行できますが、ユーザーによってコマンドの利用権限は異なるので、当然、全てのユーザーがsudoコマンドを利用できる状況は好ましくありません。

そのため、Linuxではsudoコマンドは、使用権限が付与されたユーザーだけが利用できます。

では、使用権限を付与するためにはどうすればよいのでしょうか?

次のどちらかの方法で、権限を付与することができます。

実践①:sudoコマンドの利用権限を与える(wheelグループに追加する)

  1. 別のTeraTermを立ち上げ、rootユーザーでログインする
  2. 次のコマンドを実行する

wheelグループに追加

[root@localhost ~]# usermod -G  wheel  user01

user01のグループIDを確認

[root@localhost ~]#id user01
uid=1000(user01) gid=1000(user01) groups=1000(user01),10(wheel)
[root@localhost ~]# exit

実践②:sudoコマンドを利用する

  1. 一般ユーザー(user01)をログアウトし、再ログインする
    グループへの所属、sudoの利用権限を有効にするために、再ログインが必要になります。
  2. 次のコマンドを実行する
[user01@localhost ~]$ sudo tail /etc/shadow 
あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:
    #1) 他人のプライバシーを尊重すること。
    #2) タイプする前に考えること。
    #3) 大いなる力には大いなる責任が伴うこと。
[sudo] user01 のパスワード:kanda1234
user02:$6$v/hldgpx$h4sMxpPIlS4IkX…(以下省略)


NEXT>> ユーザー操作で使用するコマンド