用户和组管理 | 学习笔记

简介: 快速学习用户和组管理 。

开发者学堂课程Linux用户和组管理用户和组管理学习笔记与课程紧密联系,让用户快速学习知识.

课程地址:https://developer.aliyun.com/learning/course/580/detail/7994


用户和组管理


目录:

一、默认值设定

二、显示或更改默认设置

三、新建用户的相关文件和命令

四、用户属性修改

五、删除用户

六、查看用户相关的 ID 信息

七、切换用户以其他用户身份执行命令

八、设置密码

九、修改用户密码策略

十、用户相关的其他命令

十一、创建组

十二、修改和删除组

十三、更改组密码

十四、更改和查看组成员

十五、文件权限


用户与组织管理系统负责集中式管理和维护用户数据、组织机构数据以及机构成员数据,确保用户信息、机构信息和成员信息全网通用。

创建用户: useradd


一.默认值设定:

/etc/default/us eradd文件中


二.显示或更改默认设置  

useradd -D

useradd-D-s SHELL

useradd -D-b BASE DIR useradd-D-g GROUP

练习:

1、创建用户gentoo,附加组为bin和root    默认shell为/bin/csh,注释信息为    

Gentoo Distribution"

2、创建下面的用户、组和组成员关系名字为webs的组

用户nginx使用webs作为附属组

用户varnish,也使用webs作为附属组

用户mysql,不可交互登录系统,且不是we ebs的成员,nginx,varnish, mysql密码都是magedu

创建第一个用户:useradd-G webs nginx

第二个用户: useradd-G webs varnish

第三个用户:useradd -s /sbin/nol ogin mysq]

代码4:passwd nginx

代码5:echo magedu I passwd --stdin varinish


三.新建用户的相关文件和命令

/etc/default/useradd etc/skel/*

/etc/login.defs

newusers passwd格式文件 批量创建用户

chpasswd 批量修改用户口令


四。用户属性修改

Usermod  [OPTION]  login

-u UID: 新UID -gGID :新主组

-G GROUP1[,GROUP2[GROUPN]] ]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用 -a 选项

-S SHELL :新的默认 SHELL

-C'COMMENT :新的注释信息

-d HOME :新家目录不会自动创建;若要创建新家目录并移动原家数据同时使用 -m 选项

-l login name :新的名字;

-L: lock 指定用户,在 /etc/shadow 密码栏的增加!

-U:  unlock 指定用户,将 /etc/shadow密码栏的!拿掉

-e YYYY-MM-DD :指明用户账号过期日期

-f INACTIVE :设定非活动期限


五.删除用户

Iuserdel [OPTION]... login

-r: 删除用户家目录(重要选项)


六.查看用户相关的 ID 信息

1、完全切换:不需要输入口令

2、完全切换:需要输入口令

id [OPTION]... [USER]

-u :显示 UID -g :显示 GIDI

-G :显示用户所属的组的 ID

-n :显示名称,需配合 ugG 使用


七.切换用户以其他用户身份执行命令

1、su [options...] [-] [user [args...]]

切换用户的方式:

su UserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

su-UserName:登录式切换,会读取目标用户的配置文件,切换至家日录,完全切换

2、root su 至其他用户无须密码;非 root 用户切换时需要密码

换个身份执行命令:

su [-] UserName -c 'COMMAND

选项:h--login

su -l UserName  相当于 su-UserName


八.设置密码

1、passwdI[OPTIONS]UserName: 修改指定用户的密码

常用选项:

-d: 删除指定用户密码

-i: 锁定指定用户

-u: 解锁指定用户

-e: 强制用户下次登录修改密码

-f: 强制操作

-n mindays :指定最短使用期限

-x maxdays :最大使用期限

-wwarnday s:提前多少天开始警告

-i inactivedays :非活动期限

-stdin :从标准输入接收用户密码

echo "PASSWORD"|passwd--stdin USERNAME


九.修改用户密码策略

1、chage [OPTION]... LOGIN

-d LAST-DAY

-E--expiredate EXPIRE-DATE

-| --inactive INACTIVE

-m --mindays MIN DAYS

-M --maxdays MAX DAYS

-W--warndays WARN DAYS

-L显示密码策略

2、示例:

chage-d 0 tom下一次登录强制重设密码

Chage -m 0-M 42-w 14-i 7 tom

chage -E 2016-09-10 tom(修改账户过期时常)


十.用户相关的其他命令

chfn指定个人信息

chsh 指定shelli finger


十一.创建组

1、groupadd [OPTION]... group_name

-g GID : 指明 GID 号;[GID MIN,GID MAX]

-r : 创建系统组

CentOS 6 : ID<500

CentOS 7 : ID<1000


十二.修改和删除组

1、组属性修改: groupmod

groupmod [OPTION]... group

-n group_name: 新名字

-g GID:新的GID

2、组删除: groupdel

Groupdel GROUP


十三.更改组密码

1、组密码:  gpasswd

(1)、gpasswd [OPTION] GROUP

-a user 将 user 添加至指定组中

-duser 从指定组中移除用户 user

-Auser1user2,... 设置有管理权限的用户列表

(2)、Newgrp命令:临时切换主组

如果用户本不属于此组,则需要组密码


十四.更改和查看组成员

groupmems [options] [action]

1、options:

-g,--group groupname 更改为指定组(只有root)

Actions:

-a,--add username 指定用户加入组

-d.--delete username 从组中删除用户

--purge 从组中清除所有成员    

-i,--list 显示组成员列表    

  1. groups [OPTION].[USERNAME]…. 查看用户所属组列表


十五.文件权限

1.文件属性

image.png

2.文件属性操作

3、chown 设置文件的所有者

4、chgrp 设置文件的属组信息

课堂笔记:

useradd usermod userel

groupadd groupmod groupdel groups groupmems gpasswd

newgrg newusers

chage chfn chsh chpasswd

vipw vipr

pwck prpck

grpck  

Authconfig

finger  

Getent

Su~

相关文章
|
消息中间件 Kubernetes 关系型数据库
教程get | K8S部署OpenStack容器云(下)
如何借助OpenStack Kolla-K8S项目,通过K8S对OpenStack进行容器化部署?并最终部署一套All-In-One类型的OpenStack容器云?让我们继续部署: 部署kolla-kubernetes ■  覆盖默认的RBAC设置 通过kubectl replace命令进行默.
4947 0
|
12月前
|
存储 JavaScript 前端开发
深入理解 JavaScript 执行上下文与 this 绑定机制
JavaScript 代码执行时,会为每段可执行代码创建对应的执行上下文,其中包含三个重要属性:变量对象、作用域链、和 this。本文深入剖析了执行上下文的生命周期以及 this 在不同情况下的指向规则。通过解析全局上下文和函数上下文中的 this,我们详细讲解了 this 的运行期绑定特性,并展示了如何通过调用方式影响 this 的绑定对象。同时,文中对箭头函数 this 的特殊性以及四条判断 this 绑定的规则进行了总结,帮助开发者更清晰地理解 JavaScript 中的 this 行为。
1025 8
深入理解 JavaScript 执行上下文与 this 绑定机制
|
缓存 NoSQL 关系型数据库
MySQL与Redis的默契协作:解析数据一致性难题与解决方案
MySQL与Redis的默契协作:解析数据一致性难题与解决方案
474 0
MySQL与Redis的默契协作:解析数据一致性难题与解决方案
|
机器学习/深度学习 算法 数据挖掘
深度学习面试问题目录 | 深度学习目标检测、语义分割、分类上百种面试问答技巧
这篇文章汇总了深度学习面试,特别是目标检测领域的常见问题,提供了一个详细的目录大纲,便于读者直接跳转至答案。通过理解和解答这些问题,求职者能展示其在深度学习专业的知识、解决问题的能力及对应用的理解,从而提高面试成功率和竞争力。包含多个专题,如损失函数、Python解释器、经典网络、YOLO系列、激活函数等。
|
传感器 数据采集 监控
LabVIEW 开发在不确定路况下自动速度辅助系统
LabVIEW 开发在不确定路况下自动速度辅助系统
63 0
|
SQL 存储 分布式计算
Hologres实时湖仓能力增强,挑战5分钟加速分析OSS数据
5分钟快速使用Hologres实时湖仓能力,无需移动数据,直接加速读取存储于数据湖OSS上的Hudi、Delta、Paimon等格式类型的数据
|
负载均衡 应用服务中间件 测试技术
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块(上)
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块
639 0
|
负载均衡 Java 应用服务中间件
微服务网关的总结和实践
微服务网关的总结和实践
952 0
|
算法 Java 开发者
Java 21 将放弃分代 Shenandoah GC
Java 21 将放弃分代 Shenandoah GC
305 0