目次
sudo とは
sudo(“su do”)は、UNIXおよびUnix系オペレーティングシステムのプログラムの1つで、ユ ーザーが別のユーザーの権限レベルでプログラムを実行するためのコマンドである。
一般的に、ユーザーがスーパーユーザー(superuser、すなわちroot)の特権レベルを利用する際に用いられることが多い。sudo – ウィキペディア
https://ja.wikipedia.org/wiki/Sudo
sudo は、指定したユーザーでコマンドを実行するコマンドです。
sudo -u root, sudo -u taro のように使用し、ユーザを指定しない場合は、 rootとして実行されます。
通常、一般ユーザでroot権限でしか実行出来ないコマンドを実行する為に利用しますが、
デフォルトでは、インストール時に管理者として登録したユーザ以外、sudo コマンドが実行できません。
// 管理者以外のユーザが sudo コマンドを実行した場合 $ sudo -u root reboot [sudo] password for taro:_ taro は sudoers ファイル内にありません。この事象は記録・報告されます。
ユーザを管理者グループに追加
これは、新規に追加したユーザが sudo を実行できる管理者のグループに属していないからです。
管理者のグループの名前は、CentOS の場合 wheel、 ubuntu の場合 sudo グループなので、このグループに対象ユーザを属してあげる事により sudo コマンドが実行可能になります。
ユーザ taro は、sudo コマンドが使えるようになります。 // CentOS の場合 taro ユーザを wheel グループに追加 $ sudo usermod -G wheel taro // Ubuntu の場合 taro ユーザを sudo グループに追加 $ sudo usermod -G sudo taro
ユーザ毎に実行できるコマンドを設定
しかし、システム管理上、複数のユーザにroot権限を付与するのは好ましくない場合もあります。
visudo コマンドは、sudo の設定ファイル(/etc/sudoers) を編集する為のコマンドです。
例えば、ユーザ jiro にシステムアップデートと再起動の権限を与えたい場合、以下の行を追加することにより、ユーザ jiro は、sudo コマンドを使って yum と reboot コマンドのみ実行でき
るようになり、ユーザごとに実行できるコマンドを割り当てる事もできます。 そして jiro ユーザは、管理者のグループ、wheel, sudo グループに追加する必用はありません。
$ sudo visudo jiro ALL=(ALL) /usr/bin/yum, /usr/sbin/reboot