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:不仅可以对组密码进行设置,还可以对组用户进行增加、删除、设置管理员等。

相关推荐
invicinble3 小时前
对linux形成认识
linux·运维·服务器
小Pawn爷4 小时前
14.VMmare安装ubuntu
linux·运维·ubuntu
技术路上的探险家4 小时前
8 卡 V100 服务器:基于 vLLM 的 Qwen 大模型高效部署实战
运维·服务器·语言模型
有谁看见我的剑了?4 小时前
介绍一款 测试 DNS解析成功率的网站
运维
半桔4 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
绵绵细雨中的乡音4 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
HABuo5 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
Howrun7775 小时前
关于Linux服务器的协作问题
linux·运维·服务器
小白同学_C6 小时前
Lab3-page tables && MIT6.1810操作系统工程【持续更新】
linux·c/c++·操作系统os
十年磨一剑~7 小时前
Linux程序接收到sigpipe信号崩溃处理
linux