2. groupadd/groupdel 命令

在 Linux/UNIX 下默认只有 root 用户才能对用户和组进行操作。或者用户通过 sudo 权限授权给特定用户root 权限来执行相应的命令。

常用的组管理命令有: 添加组 groupadd命令和删除组 groupdel 俩命令。

groupadd 命令

在系统中创建一个新的用户组。同时为新组分配唯一的 GID(Group ID)。组主要用于权限管理,方便多用户共享文件或文件夹的访问权限。

命令格式:

groupadd [选项] 组名

例如:

创建开发部(develop) 和 人力资源部(hr)两个组。

weimingze@mzstudio:~$ sudo groupadd develop
[sudo] password for weimingze:
weimingze@mzstudio:~$ sudo groupadd hr
weimingze@mzstudio:~$ tail -2 /etc/group
develop:x:1001:
hr:x:1002:

创建完成后使用 tail 命令查看 /etc/group 的最后两行,显示 develop 组ID 分别是 1001,hr 组ID 是 1002,说明创建成功了。

groupadd 常用选项

选项
说明
-g GID
指定新组的 GID(默认自动分配)
-f
如果组已存在,强制成功退出(不报错)

groupdel 命令

groupdel 命令的用于删除系统中已存在的用户组。此命令将从 /etc/group/etc/gshadow 中移除该组的记录行。

命令格式:

groupdel [选项] 组名

示例:

删除 hr 这个组。

weimingze@mzstudio:~$ tail -2 /etc/group
develop:x:1001:
hr:x:1002:
weimingze@mzstudio:~$ sudo groupdel hr
[sudo] password for weimingze:
weimingze@mzstudio:~$ tail -2 /etc/group
weimingze:x:1000:
develop:x:1001:
weimingze@mzstudio:~$

可见这个组已经不存在了。

注意事项:

groupdel 命令不会删除 属于该组的用户,但用户会失去该组的附加权限。

groupdel 不能删除 某个用户的 主组,除非先修改该用户的主组。

groupdel 常用选项

选项
说明
-f
强制删除,可能导致用户无法登录。

练习:

  1. 创建一个名为 class99 的组。
  2. 查看 /etc/group 文件,看此组是否存在。
  3. 删除名为 class99 的组。