Groups make it easy to associate users with similar access-control requirements, so managing users and groups is a key responsibility for sysadmins. As I mentioned in my article on managing users, I like simple commands with a logical syntax. Such commands are easier to remember, particularly for new administrators.

The three commands used to manage group accounts on Red Hat Enterprise Linux (RHEL) and RHEL-like distributions fit this description nicely:

  • Add a group: groupadd
  • Modify a group: groupmod
  • Delete a group: groupdel

As in my overview on user account administration, these concepts apply to any distribution of Linux.

Groups make it easier to associate users that have similar access control requirements. Tyler Carrigan's article Managing local group accounts in Linux covers some of this content.

groupadd

Sysadmins are likely to add groups that represent specific and varied needs to Linux servers. Most of these needs center on controlling access to files, directories, or other resources. You can even use groups help manage sudo access.

To create a group, use the following command:

$ sudo groupadd projectA

Note: These commands require root or administrative privileges.

This command adds projectA to the /etc/group file. The file contains the group name, password (if any), group ID, and a list of existing members. The group membership is empty by default. The fields are separated by colons.

There are a few options for groupadd, but a common one is --gid (-g for short), to specify a group ID (GID) number.

[ You might also be interested in the Bash shell scripting cheat sheet. ]

groupmod

Creating a group is only the first step. You might also need to modify the group by using the groupmod command. The most common group modifications consist of name changes.

Note: Adding or removing a user from a group modifies the user, not the group, by using the usermod command.

Group modification options include:

  • --gid (-g): Change the GID
  • --new-name (-n): Change the group name

Therefore, if you need to update a group name from projectA to projectZ, use:

$ sudo groupmod --new-name projectZ projectA

The projectA string is the command's argument.

After modifying the group, use the tail or cat commands to check the /etc/group file contents to ensure the desired settings are in place.

groupdel

You may need to delete a group. Deleting a group does not delete the user accounts that are members of the group.

To delete the projectA group, type:

$ sudo groupdel projectA

Other than the --help option for help, the other option sysadmins commonly use is --force, which forces the group deletion.

Wrap up

The three commands used to manage groups are quite similar to the user management commands. There are few options to remember, yet these six commands to manage users and groups are logical and straightforward.

  • Add a group: groupadd
  • Modify a group: groupmod
  • Delete a group: groupdel

To manage users, use:

  • Add a user: useradd
  • Modify a user: usermod
  • Delete a user: userdel

Because user and group management are such common and important tasks for Linux sysadmins, you would be wise to learn and memorize these commands.


关于作者

Damon Garn owns Cogspinner Coaction, LLC, a technical writing, editing, and IT project company based in Colorado Springs, CO. Damon authored many CompTIA Official Instructor and Student Guides (Linux+, Cloud+, Cloud Essentials+, Server+) and developed a broad library of interactive, scored labs. He regularly contributes to Enable Sysadmin, SearchNetworking, and CompTIA article repositories. Damon has 20 years of experience as a technical trainer covering Linux, Windows Server, and security content. He is a former sysadmin for US Figure Skating. He lives in Colorado Springs with his family and is a writer, musician, and amateur genealogist.

UI_Icon-Red_Hat-Close-A-Black-RGB

按频道浏览

automation icon

自动化

有关技术、团队和环境 IT 自动化的最新信息

AI icon

人工智能

平台更新使客户可以在任何地方运行人工智能工作负载

open hybrid cloud icon

开放混合云

了解我们如何利用混合云构建更灵活的未来

security icon

安全防护

有关我们如何跨环境和技术减少风险的最新信息

edge icon

边缘计算

简化边缘运维的平台更新

Infrastructure icon

基础架构

全球领先企业 Linux 平台的最新动态

application development icon

应用领域

我们针对最严峻的应用挑战的解决方案

Virtualization icon

虚拟化

适用于您的本地或跨云工作负载的企业虚拟化的未来