Linux基础命令[27]-gpasswd

文章目录

    • [1. gpasswd 命令说明](#1. gpasswd 命令说明)
    • [2. gpasswd 命令语法](#2. gpasswd 命令语法)
    • [3. gpasswd 命令示例](#3. gpasswd 命令示例)
      • [3.1 不加参数](#3.1 不加参数)
      • [3.2 -a(将用户加入组)](#3.2 -a(将用户加入组))
      • [3.3 -d(从组中删除用户)](#3.3 -d(从组中删除用户))
      • [3.4 -r(删除组密码)](#3.4 -r(删除组密码))
      • [3.5 -M(多个用户一起加入组)](#3.5 -M(多个用户一起加入组))
      • [3.6 -A(设置组管理员用户)](#3.6 -A(设置组管理员用户))
    • [4. 总结](#4. 总结)

1. gpasswd 命令说明

gpasswd:用于管理用户组的密码文件,也可以将用户添加到一个组中,或删除组中的用户,也可以为一个组设置或更改密码。基本信息如下:

shell 复制代码
Usage: gpasswd [option] GROUP

Options:
  -a, --add USER                add USER to GROUP
  -d, --delete USER             remove USER from GROUP
  -h, --help                    display this help message and exit
  -Q, --root CHROOT_DIR         directory to chroot into
  -r, --delete-password         remove the GROUP's password
  -R, --restrict                restrict access to GROUP to its members
  -M, --members USER,...        set the list of members of GROUP
  -A, --administrators ADMIN,...
                                set the list of administrators for GROUP
Except for the -A and -M options, the options cannot be combined.

基本参数如下:

选项 作用
-a, --add USER 将用户添加到组
-d, --delete USER 从组中删除用户
-h, --help 显示帮助消息并退出
-Q, --root CHROOT_DIR 要导入的目录
-r, --delete-password 删除组的密码
-R, --restrict 将对组的访问权限限制为其成员
-M, --members USER,... 设置组的成员列表
-A, --administrators ADMIN,... 设置组的管理员列表

2. gpasswd 命令语法

shell 复制代码
gpasswd [option] GROUP

3. gpasswd 命令示例

先创建了一个用户 t20,同时创建了用户组 t20。/etc/group 里面是组信息,/etc/gshadow 是组密码文件。

shell 复制代码
[root@loaclhost home]# id t20
uid=1012(t20) gid=13001(t20) groups=13001(t20)
[root@loaclhost home]# tail -3 /etc/group
sysgrp:x:980:
t111:x:13000:
t20:x:13001:
[root@loaclhost home]# tail -3 /etc/gshadow
sysgrp:!::
t111:!::
t20:!::
[root@loaclhost home]# 

3.1 不加参数

设置组密码

shell 复制代码
[root@loaclhost home]# gpasswd t20
Changing the password for group t20
New Password: 
Re-enter new password: 
[root@loaclhost home]# tail -3 /etc/gshadow
sysgrp:!::
t111:!::
t20:$1$UUCoI/q.$U5lwWl.p6r0IZwdT/eGTV0::
[root@loaclhost home]# 

3.2 -a(将用户加入组)

shell 复制代码
[root@loaclhost home]# ls
aaa  demo1  demo2  root2  t20  tuser15
[root@loaclhost home]# id tuser15
uid=1011(tuser15) gid=1011(tuser15) groups=1011(tuser15)
[root@loaclhost home]# gpasswd -a tuser15 t20
Adding user tuser15 to group t20
[root@loaclhost home]# id tuser15
uid=1011(tuser15) gid=1011(tuser15) groups=1011(tuser15),13001(t20)
[root@loaclhost home]# 

3.3 -d(从组中删除用户)

shell 复制代码
[root@loaclhost home]# ls
aaa  demo1  demo2  root2  t20  tuser15
[root@loaclhost home]# id tuser15
uid=1011(tuser15) gid=1011(tuser15) groups=1011(tuser15),13001(t20)
[root@loaclhost home]# gpasswd -d tuser15 t20
Removing user tuser15 from group t20
[root@loaclhost home]# id tuser15
uid=1011(tuser15) gid=1011(tuser15) groups=1011(tuser15)
[root@loaclhost home]# 

3.4 -r(删除组密码)

shell 复制代码
[root@loaclhost home]# tail -3 /etc/gshadow
sysgrp:!::
t111:!::
t20:$1$UUCoI/q.$U5lwWl.p6r0IZwdT/eGTV0::
[root@loaclhost home]# gpasswd -r t20
[root@loaclhost home]# tail -3 /etc/gshadow
sysgrp:!::
t111:!::
t20:::
[root@loaclhost home]# 

3.5 -M(多个用户一起加入组)

shell 复制代码
[root@loaclhost home]# ls
aaa  demo1  demo2  root2  t20  tuser15
[root@loaclhost home]# id demo1
uid=1013(demo1) gid=1008(demo1) groups=1008(demo1)
[root@loaclhost home]# id demo2
uid=1010(demo2) gid=1010(demo2) groups=1010(demo2)
[root@loaclhost home]# gpasswd -M demo1,demo2 t20
[root@loaclhost home]# id demo1
uid=1013(demo1) gid=1008(demo1) groups=1008(demo1),13001(t20)
[root@loaclhost home]# id demo2
uid=1010(demo2) gid=1010(demo2) groups=1010(demo2),13001(t20)
[root@loaclhost home]# 

3.6 -A(设置组管理员用户)

shell 复制代码
[root@loaclhost home]# gpasswd -A t20 t20

4. 总结

gpasswd:不仅可以对组密码进行设置,还可以对组用户进行增加、删除、设置管理员等。

相关推荐
fanstuck2 小时前
1M 上下文能怎么用?我用 Seed Evolving 做了一个招标文件版本差异审查器
服务器·人工智能·数据分析·开源·aigc
北龙云海5 小时前
案例分享 | 面向公网业务系统境内访问白名单配置实操方案
运维·网络·安全·网络安全·告警·数据泄露·入侵攻击
FoldWinCard5 小时前
D5 Linux 网络及端口命令
linux·运维·服务器
kirs_ur6 小时前
SSD 在 AI 训练中的角色
大数据·服务器·人工智能
零涂毕业设计6 小时前
毕业设计模块开发-OLED显示屏(IIC协议0.96寸)STM32 ESP32 FPGA Linux驱动免费分享
linux·stm32·单片机·嵌入式·esp32·fpga·oled
tedcloud1237 小时前
OmniRoute怎么部署?开源AI模型路由平台Linux部署教程
linux·服务器·人工智能·开源·音视频
霸道流氓气质7 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库
kirs_ur7 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化
SakitamaX7 小时前
LVS(Linux Virtual Server)概念详解
linux·运维·lvs
小张同学a.7 小时前
Linux系统管理
linux·运维