Linuxのユーザー管理では「グループ」の設定が非常に重要です。複数のユーザーに同じ権限を与えることで、アクセス管理を効率的に行うことができます。そんなときに使う代表的なコマンドが「groupadd
」。本記事では、Linuxにおけるグループの基本的な考え方から、groupadd
コマンドの使い方、オプション、エラー対処法まで、初心者でもわかりやすいように丁寧に解説します。グループの作成でつまずいたことがある方や、はじめて触れる方にも役立つ内容です。
Linuxでは、ユーザーごとに異なるアクセス権限を設定できるのが大きな特徴です。しかし、複数ユーザーに共通のアクセス権を与える場合、1人ずつ個別に設定するのは手間がかかります。そんなときに便利なのが「グループ」です。
グループとは、複数のユーザーをひとまとめにした概念です。グループごとにファイルやディレクトリへのアクセス権を割り当てることで、ユーザー管理を効率化できます。
たとえば、開発チーム全員を「dev」グループに所属させることで、そのグループに対するファイルの読み書き権限を一括で設定できます。
groupadd
は、新しいグループを作成するためのLinuxコマンドです。主にrootユーザーまたはsudo権限を持つユーザーが使用します。
基本構文は以下の通りです。
groupadd [オプション] グループ名
シンプルながらも、さまざまなオプションを付けて細かく制御することが可能です。
最も基本的な使い方は、単純にグループ名を指定して実行する方法です。
sudo groupadd developers
このコマンドを実行すると、「developers」というグループが作成されます。作成されたグループ情報は、以下のファイルに反映されます。
/etc/group
: グループ名とそのGID(グループID)が記載/etc/gshadow
: グループのパスワードなどの機密情報以下のコマンドで、グループが作成されているかを確認できます。
getent group developers
または、/etc/group
ファイルを直接確認しても構いません。
cat /etc/group | grep developers
groupadd
にはいくつか便利なオプションがあります。目的に応じて使い分けることで、より柔軟なグループ管理が可能になります。
デフォルトでは自動でGIDが割り当てられますが、自分で指定することもできます。
sudo groupadd -g 1500 devops
この例では、GID1500で「devops」グループを作成します。
たとえば、システムグループの最小GIDを一時的に指定する場合に使います。
sudo groupadd -K GID_MIN=2000 -g 2001 testgroup
このように、システム全体の設定を変えずに一時的な値を使うことができます。
システムで内部的に使うグループを作成する際に使います。
sudo groupadd -r syslog
このように作成されたグループは、通常のユーザーグループとは区別され、GIDの範囲も異なります。
groupadd
を使っていて、以下のようなエラーに遭遇することがあります。
groupadd: group 'developers' already exists
この場合は、同名のグループがすでに存在しているため、別のグループ名を指定するか、既存グループを確認してください。
getent group developers
groupadd: GID '1001' already exists
GIDを指定する場合は、他のグループと重複していないか確認しましょう。
getent group | grep 1001
グループを作成しただけでは、そのグループには誰も所属していません。ユーザーを追加するには、usermod
コマンドを使用します。
sudo usermod -aG developers username
この例では、「username」というユーザーを「developers」グループに追加します。-aG
オプションを使うことで、現在の所属グループを維持したまま新たにグループを追加できます。
グループ変更が反映されるのは、次のログインからになる点に注意しましょう。
現在のグループを一覧で確認したい場合、以下のコマンドが便利です。
getent group
あるいは、現在ログイン中のユーザーの所属グループを確認するには:
groups
このように、簡単にグループ情報を取得できます。
Linuxにおけるユーザー管理では、グループをうまく活用することが不可欠です。groupadd
コマンドはその第一歩。この記事で紹介したように、基本的な使い方から便利なオプション、エラー対処法まで理解しておけば、日々の管理作業がぐっと楽になります。
複数人でサーバーを運用する際、あるいは開発環境を整える際にもグループ設定は欠かせません。ぜひgroupadd
を使いこなして、安全かつ効率的なLinux環境を構築してみてください。