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

相关推荐
Johny_Zhao3 小时前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴8504 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
一心0925 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上5 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊5 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
tan180°6 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
代码老y6 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程6 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9986 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
你想考研啊9 小时前
四、jenkins自动构建和设置邮箱
运维·jenkins