このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
【Linux】グループの作成:groupaddコマンド
groupaddコマンドの概要
「groupadd
」コマンドは、新しいグループを Linuxシステム上に作成するために使用されます。システム管理者はこのコマンドを使用して、ユーザーの集合体であるグループを作成し、アクセス制御や権限管理を容易に行うことができます。グループを作成することで、ファイルやディレクトリに対するアクセス権限を設定し、複数のユーザー間で共有リソースを管理することが可能です。
主なオプションと説明
オプション | 説明 |
---|---|
-g GID | 指定したGID(グループID)を持つグループを作成します。 |
-r | システムグループを作成します。システムグループは通常、0〜999の範囲のGIDを持ちます。 |
-f | 既に存在するグループ名を指定した場合でもエラーにしません。指定されたグループ名が存在しない場合、新しいグループを作成します。 |
コマンドの使用例と解説
1.基本的なグループの作成
まず、管理コマンドを実行するために、「su -
」コマンドを使って、rootユーザーに切り替えます。
・「su -
」コマンドを実行します。
現在のユーザーから root
ユーザーに完全に切り替え、root
ユーザーのログインシェルと環境変数を読み込みます。これにより、root
ユーザーとしてログインした場合と同じ環境が提供されます。
user01@ubuntu-vm:~$ su -
パスワード:
root@ubuntu-vm:~#
・「groupadd developers
」コマンドを実行し、「grep developers /etc/group
」で確認します。
「developers
」という名前の新しいグループを作成します。このグループには自動的に次の利用可能なGIDが割り当てられます。
root@ubuntu-vm:~# groupadd developers
root@ubuntu-vm:~# grep developers /etc/group
developers:x:1004:
2.特定のGIDを持つグループの作成
・「groupadd -g 1005 qa_team
」コマンドを実行し、「grep qa_team /etc/group
」で確認します。
GID 1005を持つ「qa_team
」という新しいグループを作成します。指定したGIDが他のグループで使用されていないことを確認しておく必要があります。
root@ubuntu-vm:~# groupadd -g 1005 qa_team
root@ubuntu-vm:~# grep qa_team /etc/group
qa_team:x:1005:
3.システムグループの作成
・「groupadd -r backup_team
」コマンドを実行し、「grep buckup_team /etc/group
」で確認します。
システムグループ「backup_team
」を作成します。システムグループは通常、システムレベルのプロセスやデーモンによって使用されます。システムグループは通常、0〜999の範囲のGIDを持ちます。
root@ubuntu-vm:~# groupadd -r backup_team
root@ubuntu-vm:~# grep backup_team /etc/group
backup_team:x:997
4.既存のグループ名を指定してエラーを避ける
・「groupadd -f developers
」コマンドを実行し、「grep developers /etc/group
」で確認します。
「developers
」というグループが既に存在する場合でもエラーを出さず、存在しない場合は新しく作成します。
root@ubuntu-vm:~# groupadd -f developers
5.作成したグループの削除
この演習で作成したグループを削除します。以下のコマンドを実行します。
- 「
groupdel developers
」コマンドを実行します。 - 「
groupdel qa_team
」コマンドを実行します。 - 「
groupdel backup_team
」コマンドを実行します。
root@ubuntu-vm:~# groupdel developers
root@ubuntu-vm:~# groupdel qa_team
root@ubuntu-vm:~# groupdel backup_team
まとめ
「groupadd
」コマンドは、新しいグループを作成するための基本的なツールです。適切なオプションを使用することで、特定のGIDを持つグループやシステムグループの作成が可能です。また、既存のグループ名やGIDに対しても柔軟に対応できます。これにより、システム管理者は効率的にグループを管理し、ユーザーのアクセス権限を効果的に設定することができます。