grep と groups によるグループ所属の確認
このステップでは、ユーザーのグループ所属をより効率的に確認する方法を学びます。これまでは /etc/group ファイルに対して grep を使用して特定のグループのメンバーを確認してきましたが、特定のユーザーが所属しているすべてのグループを表示する、より直接的な方法があります。これは、権限や設定を確認するシステム管理者にとって一般的な作業です。
まず、再び grep を使用しますが、今回はユーザー labex が所属しているすべてのサブグループを探します。/etc/group ファイル内でユーザー名を検索することで、labex がメンバーとしてリストされているすべてのグループエントリを確認できます。
ターミナルで次のコマンドを実行してください。
grep labex /etc/group
出力には、文字列 "labex" を含む /etc/group 内のすべての行が表示されます。これには、先ほど追加した research グループや、その他のデフォルトのサブグループが含まれます。システムの構成によっては、追加のグループが表示される場合もあります。
sudo:x:27:labex
ssl-cert:x:121:labex
labex:x:5000:
public:x:5002:labex
research:x:5003:labex
この方法でも確認できますが、より直接的で分かりやすいコマンドが groups です。このコマンドは、指定したユーザーのすべてのグループ(プライマリおよびサブグループの両方)をリストするために特別に設計されています。
labex ユーザーが所属するすべてのグループを表示するには、次のコマンドを実行します。
groups labex
このコマンドは、ユーザーのグループ所属を 1 行で簡潔にまとめて表示します。
labex : labex sudo ssl-cert public research
この出力において、コロンの前にある名前(labex)は照会されたユーザーです。コロンの後のリストはすべてのグループを示しています。リストの最初のグループ(labex)はユーザーの「プライマリグループ」です。それに続くすべてのグループ(sudo、ssl-cert、public、research)は「サブグループ」です。このコマンドは、ユーザーのグループ所属の全体像を把握するための最も迅速な方法です。