グループは、ファイル、フォルダー、および構成に対して同じ一連のアクセス許可とアクセス権を持つユーザーアカウントのコレクションです。 Linux OSで新しいユーザーが作成されると、そのユーザーはユーザーと同じ名前のグループに自動的に追加されます。単一のユーザーは、単一または複数のグループの一部になることができます。
場合によっては、ユーザーがどのグループに属しているかを調べる必要があります。ユーザーが持っている権限の種類を理解し、正常に機能していない場合のトラブルシューティングに役立ちます。この投稿では、Ubuntuでユーザーがどのグループに属しているかを確認する方法を紹介します。
注 :ここに記載されているコマンドは、 Ubuntu 20.04 LTSでテストされています 。これらのコマンドは、他のLinuxディストリビューションにも適用されます。
Linuxユーザーが属するグループを見つける方法
まず、Ctrl + Alt+Tショートカットを押してターミナルを開きます。次に、現在のユーザーアカウントが属するグループを確認するには、 groupsと入力します。 ターミナルでEnterキーを押します:
$ groups
現在ログインしているユーザーが所属するグループが表示されます。たとえば、次の出力は、現在ログインしているユーザー「kbuzdar」がメンバーになっているグループの名前を示しています。
現在ログインしているユーザー以外の特定のユーザーのグループ情報を検索するには、 groupsと入力します。 その後にそのユーザー名が続きます:
$ groups <user_name>
たとえば、「test」という名前のユーザーが属するグループを見つけるには、コマンドは次のようになります。
$ groups test
または、 idを使用することもできます 現在ログインしているユーザーが属するグループを確認するコマンド:
$ id
現在ログインしているユーザーが所属するグループIDとともに、すべてのグループが表示されます。
現在ログインしているユーザー以外のユーザーのグループ情報を検索するには、 idと入力します。 その後にユーザー名が続きます:
$ id <user_name>
Linuxのすべてのグループを一覧表示
システムに存在するすべてのグループを一覧表示する場合は、ターミナルで次のコマンドを発行します。
$ cat /etc/group
このコマンドは、システムに存在するすべてのグループを一覧表示します。
同様に、すべてのグループを一覧表示するだけでなく、システム上のすべてのユーザーを一覧表示することもできます。
グループのすべてのメンバーを一覧表示する
グループのすべてのメンバーを一覧表示する場合は、ターミナルで次のコマンドを発行します。
$ getent group <group_name>
このコマンドは、グループ名とそれに続くすべてのメンバーを出力します。たとえば、「sudo」グループのすべてのメンバーを出力するには、コマンドは次のようになります。
$ getent group sudo
次の出力は、「sudo」グループに「kbuzdar」と「ummara」の2つのメンバーがあることを示しています。
ボーナス:
グループへのユーザーの追加
ユーザーをグループに追加する場合は、次のコマンド構文を使用します。
$ sudo usermod -aG <group_name> <user_name>
たとえば、既存のユーザー「ummara」を「sudo」グループに追加するには、コマンドは次のようになります。
$ sudo usermod -aG sudo ummara
グループからのユーザーの削除
グループからユーザーを削除するには、次のコマンド構文を使用します。
$ sudo gpasswd -d <user_name> <group_name>
たとえば、ユーザー「ummara」を「sudo」グループから削除するには、コマンドは次のようになります。
$ sudo gpasswd -d ummara sudo
この投稿で共有されている手順に従うことで、Ubuntuでユーザーがどのグループに属しているかを簡単に見つけることができます。また、システム内のすべてのグループを一覧表示する方法、グループのメンバーを一覧表示する方法、グループにユーザーを追加および削除する方法も共有しました。システムでのユーザーの追加/削除については、Ubuntuでユーザーを追加および削除する方法に関する投稿をご覧ください。