このチュートリアルでは、 groupaddを使用してLinuxでグループを作成する方法を学習します。 コマンド。
Linuxグループとは何ですか?
Linuxグループは、ユーザーの特権を管理するために使用されます。特定のリソースへの読み取り、書き込みアクセスなど、グループに対する一連の特権を定義できます。その後、グループ内のすべてのユーザーが自動的にそのリソースにアクセスできるようになります。
簡単に言うと、グループはユーザーの集まりです。これは、ユーザーのグループに特権をすばやく付与するのに役立ちます。たとえば、「sudo」はグループであり、そのグループ内のすべてのユーザーが自動的にスーパーユーザー権限を取得します。
Linuxでグループを作成するには?
Linux groupaddコマンドは、Linuxでグループを作成するために使用されます。これはLinux固有のコマンドであり、Ubuntu、CentOS、Debianなどのすべてのディストリビューションで使用できます。
Linuxgroupaddコマンド構文
groupaddコマンドの構文は次のとおりです。
groupadd [options] GROUP
groupaddコマンドの使用法とそのさまざまなオプションを理解するために、いくつかの例を見てみましょう。
Linuxグループの作成
groupaddコマンドは、rootユーザーが実行することも、sudo権限を使用してスーパーユーザーとして実行することもできます。
root@localhost:~# groupadd test_users
グループが作成された場合、エラーや成功のメッセージは表示されません。
グループ情報は/etc/group
に保存されます ファイル。このファイルで、新しく作成されたグループ情報を確認できます。
root@localhost:~# cat /etc/group | grep test_users test_users:x:1004: root@localhost:~#

上記の数字は、整数値であるグループIDを示しています。 getent
を使用することもできます グループの詳細を取得するコマンド。
root@localhost:~# getent group test_users test_users:x:1004:journaldev root@localhost:~#
グループがすでに存在する場合はエラー
グループがすでに存在する場合は、エラーメッセージが表示されます。上記のコマンドをもう一度実行してみましょう。
root@localhost:~# groupadd test_users groupadd: group 'test_users' already exists root@localhost:~#

グループIDを使用したグループの作成
-gオプションを使用してグループを作成するときにも、グループIDを指定できます。
root@localhost:~# groupadd -g 1005 test_users1 root@localhost:~# cat /etc/group | grep 1005 test_users1:x:1005: root@localhost:~#
グループIDがすでに使用されている場合は、エラーメッセージが表示されます。
root@localhost:~# groupadd -g 1005 test_users2 groupadd: GID '1005' already exists root@localhost:~#
Linux groupadd Force Success Option
グループがすでに存在する場合は、-fまたは–forceオプションを指定して正常に終了できます。
root@localhost:~# groupadd -f test_users root@localhost:~#
強制成功オプションを使用してグループを作成していて、グループIDがすでに存在する場合、グループIDは無視され、グループが作成されます。
root@localhost:~# groupadd -f -g 1005 test_users2 root@localhost:~# cat /etc/group | grep test_users2 test_users2:x:1006: root@localhost:~#
-fオプションを使用したため、Linuxグループは別のグループIDで作成されていることに注意してください。
Linuxgroupaddヘルプ
groupaddコマンドの使用法についてサポートが必要な場合は、-hオプションを使用してください。
root@localhost:~# groupadd -h Usage: groupadd [options] GROUP Options: -f, --force exit successfully if the group already exists, and cancel -g if the GID is already used -g, --gid GID use GID for the new group -h, --help display this help message and exit -K, --key KEY=VALUE override /etc/login.defs defaults -o, --non-unique allow to create groups with duplicate (non-unique) GID -p, --password PASSWORD use this encrypted password for the new group -r, --system create a system account -R, --root CHROOT_DIR directory to chroot into --extrausers Use the extra users database root@localhost:~#
Linuxgroupadd-Kオプション
-Kオプションを使用して、/ etc/login.defsファイルにあるGID_MIN値とGID_MAX値を上書きできます。
これは、新しいグループIDが-Kオプションを使用して指定された範囲から取得されることを意味します。この機能を明確に理解するために例を見てみましょう。
root@localhost:~# cat /etc/login.defs | grep GID GID_MIN 1000 GID_MAX 60000 root@localhost:~# root@localhost:~# groupadd -K GID_MIN=20000 -K GID_MAX=21000 test_users6 root@localhost:~# cat /etc/group | grep test_users6 test_users6:x:20000: root@localhost:~#
以前のコマンドを見ると、割り当てられたグループIDは1000に近かったです。しかし、上記のgroupaddコマンドでは、使用されたグループIDは20000です。
パスワードを使用したグループの作成
-pオプションを使用して、パスワードでグループを作成できます。
root@localhost:~# groupadd -p abc123 test_users_pwd root@localhost:~#
しかし、私はそれを自分で使用したことはなく、誰もそれを使用しているのを見たことがありません。実際、gpasswdのマニュアルページには、これはセキュリティの問題であると記載されています。
root@localhost:~# man gpasswd Notes about group passwords Group passwords are an inherent security problem since more than one person is permitted to know the password. However, groups are a useful tool for permitting co-operation between different users.'
システムグループの作成
-rオプションを使用してシステムグループを作成できます。
通常のグループとシステムグループの間に違いはありません。唯一の違いは、グループIDの割り当てです。
通常のグループの場合、グループIDは1000から60000(デフォルト値)に割り当てられます。システムグループの場合、グループIDは1000未満です。
繰り返しになりますが、グループIDには意味がないか、追加の権限はありません。
root@localhost:~# groupadd -r system_group root@localhost:~# cat /etc/group | grep system_group system_group:x:999: root@localhost:~#
割り当てられたグループIDが999であることに注意してください。
結論
Linuxでgroupaddコマンドを使用してグループを追加できます。これは非常にシンプルで一般的なコマンドであり、任意のLinuxディストリビューションで使用してグループを作成できます。
参照:
- グループパスワードのユースケースに関するStackExchangeディスカッション
- システムグループに関するAskUbuntuディスカッション