このページで解説している内容は、以下の 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に対しても柔軟に対応できます。これにより、システム管理者は効率的にグループを管理し、ユーザーのアクセス権限を効果的に設定することができます。