Linux groupadd命令教程:如何创建和管理用户组(附案例详解和注意事项)

Linux groupadd命令介绍

groupadd命令是Linux系统中的一个基本命令,它的全称是Group Add。这个命令主要用于在系统中创建新的用户组。在Linux系统中,用户组是一种用于权限管理的机制,通过将用户添加到特定的用户组,可以方便地控制用户的文件访问权限。

Linux groupadd命令适用的Linux版本

groupadd命令在大多数Linux发行版中都是可用的,包括Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora、Raspbian等。在某些系统中,如果groupadd命令不可用,可能需要安装shadow包来获取它。在CentOS 7和CentOS 8中,安装命令分别为yum install shadow-utils和dnf install shadow-utils。

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo yum install shadow-utils  # CentOS 7
[linux@bashcommandnotfound.cn ~]$ sudo dnf install shadow-utils  # CentOS 8

Linux groupadd命令的基本语法

groupadd命令的基本语法如下:

bash 复制代码
groupadd [options] groupname

Linux groupadd命令的常用选项或参数说明

以下是groupadd命令的一些常用选项:

选项 说明
-g, --gid GID 以GID为组ID创建新组
-K, --key KEY=VALUE 覆盖/etc/login.defs中的默认值
-o, --non-unique 允许创建具有非唯一组ID的组
-p, --password PASSWORD 使用此加密密码为新组设置密码
-r, --system 创建一个系统组

Linux groupadd命令实例详解

以下是一些groupadd命令的使用实例:

实例1:创建新的用户组

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo groupadd mygroup

这个命令会创建一个名为mygroup的新用户组。

实例2:创建具有特定组ID的用户组

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo groupadd -g 1234 mygroup

这个命令会创建一个名为mygroup的新用户组,并将其组ID设置为1234。

实例3:创建系统用户组

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo groupadd -r sysgroup

这个命令会创建一个名为sysgroup的新系统用户组。系统用户组通常用于系统服务。

实例4:创建用户组并设置密码

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo groupadd -p mypassword mygroup

这个命令会创建一个名为mygroup的新用户组,并将其密码设置为mypassword。

实例5:创建具有非唯一组ID的用户组

bash 复制代码
[linux@bashcommandnotfound.cn ~]$ sudo groupadd -o -g 1234 mygroup

这个命令会创建一个名为mygroup的新用户组,并将其组ID设置为1234。即使已经存在一个组ID为1234的用户组,这个命令也会成功。

Linux groupadd命令的注意事项

  • groupadd命令需要root权限才能运行。如果你在没有root权限的情况下运行这个命令,你会看到一个错误消息,如bash: groupadd: command not found。在这种情况下,你需要使用sudo命令来获取root权限。
  • 在创建用户组时,你需要确保组名是唯一的。如果你试图创建一个已经存在的用户组,groupadd命令会失败,并显示一个错误消息。

Linux groupadd相关命令

groupadd 是一个用来创建新的用户组的命令。以下是与 groupadd 相关的,或者是一些基础的系统和用户管理相关的命令:

groupmod 命令:修改一个群组的定义
groups 命令:显示用户所属的群组
id 命令:显示用户和群组的ID信息
useradd 命令:创建新的用户或更新默认的新用户信息
usermod 命令:修改用户账号
passwd 命令:修改用户密码
chgrp 命令:改变文件所属的用户组
chmod 命令:改变文件的权限
chown 命令:改变文件所有者和所属群组
adduser 命令:一个脚本,简化 'useradd' 命令的使用
userdel 命令:删除用户账户和相关文件
last 命令:显示用户最近登录的信息
who 命令:显示当前登录的用户
su 命令:替换当前用户身份
sudo 命令:以另一个用户身份执行命令
ls 命令:列出文件和目录
cd 命令:切换目录
ps 命令:显示当前进程的状态
kill 命令:向进程发送信号
df 命令:显示磁盘空间使用情况
top 命令:显示系统中处于活动状态的进程
history 命令:列出当前会话中执行过的命令

相关推荐
Linux运维技术栈8 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
云边云科技_云网融合9 小时前
连锁门店组网怎么做?SD-WAN 多分支组网的架构选型、部署与成本结构
服务器·数据库·php
云上先途19 小时前
企业 AI 服务部署周期多久,会不会影响原有业务运转?
大数据·运维·人工智能
网络小江9 小时前
组网第35课:静态路由——下一跳、出接口、默认路由、浮动静态与黑洞路由
服务器·网络·默认路由·黑洞路由·浮动静态路由
执伞人ONLY10 小时前
AI知识库自动化知识加工没做对,人工整理永远追不上知识产生
运维·人工智能·自动化
slongzhang_10 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
叼烟扛炮10 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
无足鸟ICT10 小时前
【RHCA+】who命令(查看已登陆用户)
linux·运维·服务器
Escalating_xu10 小时前
【Linux 网络编程】应用层协议 HTTP(下):Header、连接管理与 C++ HTTP 服务器
linux·服务器·网络
RacentCLM10 小时前
证书即服务CaaS:从申请、续期到部署的自动化链路拆解
运维·数据库·自动化·ssl