Linuxコマンド - グループ関連

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動

概要



グループにユーザを追加する

usermodコマンド

特定のグループにユーザを追加するには、usermodコマンドを使用する。

sudo usermod <オプション> <グループ名> <ユーザ名>


例えば、現在ログインしているユーザをグループdialoutに追加する場合は、以下のコマンドを実行する。

# -aオプションを付加しない場合、上書きになるので注意すること
sudo usermod -aG dialout $USER


useraddコマンド

特定のグループにユーザを追加するには、adduserコマンドを使用する。

sudo useradd <オプション> <ユーザ名> <グループ名>


例えば、現在ログインしているユーザをグループdialoutに追加する場合は、以下のコマンドを実行する。

sudo useradd $USER dialout


上記のグループdialoutは、Linuxのシステムグループの1つである。
USBを含むシリアルポートへのフルアクセスを設定できる。


グループからユーザを削除する

gpasswdコマンド

特定のグループからユーザを削除するには、gpasswd -dコマンドを使用する。

sudo gpasswd -d <ユーザ名> <グループ名>


例えば、現在ログインしているユーザをグループdialoutから削除する場合は、以下のコマンドを実行する。

sudo gpasswd -d $USER dialout


userdelコマンド

特定のグループからユーザを削除するには、userdelコマンドを使用する。

sudo userdel <オプション> <ユーザ名> <グループ名>


例えば、現在ログインしているユーザをグループdialoutから削除する場合は、以下のコマンドを実行する。

sudo userdel $USER dialout



ユーザが所属しているグループを表示する

特定のユーザが所属しているグループ一覧を表示するには、groupsコマンドを使用する。

groups <ユーザ名>


例えば、ユーザhogeが所属しているグループを表示するには、以下のコマンドを実行する。

groups hoge


また、現在ログインしているユーザが所属しているグループの場合、ユーザ名は省略できる。

groups



グループに所属するユーザ群を表示する

特定のグループが所属しているユーザ一覧を表示するには、getent groupコマンドの使用、または、/etc/groupファイルを表示する。

getent group <グループ名>
または
cat /etc/group
cat /etc/group | grep -i <検索するグループ名>


例えば、グループwheelのみを確認するには、以下のコマンドを実行する。

getent group wheel
または
cat /etc/group | grep -i "wheel"



グループの作成

グループを作成する場合は、groupaddコマンドを使用する。

sudo groupadd <グループ名>



グループとユーザを同時に作成

# RHEL
sudo dnf install adduser

# SUSE
sudo zypper install shadow-utils


  • --systemオプション
    ユーザを作成する。
  • --no-create-homeオプション
    ホームディレクトリを作成しない。
  • --shell /bin/falseオプション
    ログインシェルを/bin/falseに設定する。
    このユーザはログインできなくなる。
  • --user-groupオプション
    ユーザ名と同じ名前のグループを作成する。


# nginxユーザおよびnginxグループを同時に作成する場合
sudo useradd --system --no-create-home --shell /bin/false --user-group nginx



グループの削除

グループを削除する場合は、groupdelコマンドを使用する。
groupdelコマンドには、オプションは無い。

sudo groupdel <グループ名>


groupdelコマンドを実行することにより変更されるファイルは、以下の2つである。

  • /etc/group
  • /etc/gshadow


削除対象のグループをイニシャルグループ(主グループ)とするユーザが存在する場合、そのグループを削除することができない。
その時、まず、イニシャルグループ(主グループ)とするユーザを削除した後、グループを削除する。

# イニシャルグループ(主グループ)とするユーザを削除する
sudo userdel -r <ユーザ名>

# グループを削除する
sudo groupdel <グループ名>