用户管理

用户组

种类

  • 基本组: 一个用户一定要有一个基本组 ,且只有一个
  • 附加组: 一个用户可以没有附加组,一个用户可以有多个附加组

分别基本组和 附加组?
[root@localhost data]#id zhangsan
uid=1000(zhangsan) gid=1000(zhangsan) 组=1000(zhangsan),0(root)
用户排在第一个的组是基本组,后面的都是附加组

用户账号管理

用户账号的管理工作主要涉及到用户账号的添加、修改和删除。

/etc/passwd

存放用户信息

行内字段含义:

[root@localhost ~]# head -n1 /etc/passwd //查看passwd文件头1行
root:x:0:0:root:/root:/bin/bash

冒号(:)作为分隔符,将每行分为了7段

  • 第一字段:用户名
  • 第二字段:密码占位符
  • 第三字段:uid
  • 第四字段:组id
  • 第五字段:备注信息
  • 第六字段:家目录位置
  • 第七字段:默认shell程序

/etc/shadow

存放密码信息

行内字段含义:

[root@localhost ~]# tail -n1 /etc/shadow //查看shadow文件最后一行 jlx:$6$732cCyCHqHnTfu8S$yIt47YNag7kl1VO539g1W0yiJWa9aFDehq6lSQDQPkN1j.q/qSgQr8r9Qaj4LFw2OLe8N2hcu7fBHxxxe3ad81::0:99999:7:::

每个字段用冒号隔开

  • 第一字段:用户名
  • 第二字段:加密后的密码 如果为 * !! 无法登录
  • 第三字段:上一次修改密码时间,数字的含义为 从1970-1-1 到改密码的时间 一共经历多少天
  • 第四字段:最小修改密码间隔时间 如果是0 可以随意修改, 7代表7 天后才可以修改
  • 第五字段: 密码有效期 默认99999天 273年,设置为 7 代表7天要求你重新设置密码
  • 第六字段:密码到期提醒时间 设置为7 代表密码到期前7天会提示你
  • 第七字段:密码过期后的宽限天数 设置为10 表示密码到期后还可以使用10天
  • 第八字段:用户失效时间 同第 3 个字段一样,使用自 1970 年 1 月 1 日以来的总天数作为账户的失效时间 到期后无法登录
  • 第九字段:保留字段

添加用户 useradd

格式: useradd [选项]…. 用户名

选项

选项 说明 -u 指定用户的UID,要求该UID未被其他用户使用 -d 指定用户的家目录 -e 指定用户的账户失效时间,可使用YYYY-MM-DD的日期格式 -g 指定用户的基本组 -G 指定用户的附加组 -M 不建立家目录 -s 指定用户的登录shell -r 建立系统用户

undefined

示例

-u 指定用户的UID

[root@localhost ~]# useradd -u 2000 pp //添加pp用户,并指定UID为2000 [root@localhost ~]# tail -n1 /etc/passwd //查看passwd中pp的信息 pp:x:2000:2000::/home/pp:/bin/bash

用户管理

-d 指定用户的家目录

[root@localhost ~]# useradd -d /home/test/ 111 //创建用户,并指定家目录 [root@localhost ~]# tail -n1 /etc/passwd 111:x:2001:2001::/home/test/:/bin/bash

用户管理

用户管理

-e 指定用户的账户失效时间

[root@localhost ~]# useradd -e 2022-9-26 222 //创建用户并指定账户失效时间为2022年6月30日 [root@localhost ~]# tail -n1 /etc/shadow //查看shadow文件,19261表示距离1970年1月1日的19261天 222:!!:19204:0:99999:7::19204:

用户管理

用户管理

-g 指定用户基本组

[root@localhost ~]# useradd -g1000 wang //创建用户并指定用户基本组为1000组 [root@localhost ~]# id wang //查看用户信息,基本组为1000组 uid=2002(wang) gid=1000(zhangsan) 组=1000(zhangsan)

用户管理

-G 指定用户附加组

[root@localhost ~]# useradd -G zhangsan 444 //创建用户并指定用户附加组为jlx组 [root@localhost ~]# id 444 //查看用户信息,附加组为jlx组 uid=2003(444) gid=2003(444) 组=2003(444),1000(zhangsan)

用户管理

-M 不建立家目录

[root@localhost ~]# useradd -M 555 //创建用户且不建立家目录 [root@localhost ~]# ls /home/ //查看/home下没有user08的目录

222 444 555 pp wang zhangsan

用户管理

-s 指定用户的登录shell

[root@localhost ~]# useradd -s /sbin/nologin apache //创建用户并指定登录shell为/sbin/nologin,该用户无法登录系统 [root@localhost ~]# tail -n1 /etc/passwd apache:x:2005:2005::/home/apache:/sbin/nologin

用户管理

修改密码 passwd

root用户可以指定用户名作为参数,对指定账号的密码进行管理。不指定用户名时,修改当前账号的密码。

普通用户只能执行单独的passwd命令修改自己的密码。

格式

passwd 用户名

选项

选项 作用 -d 清空指定用户的密码,无需使用密码直接登录 -l 锁定用户密码, 不让登录 -u 解锁用户密码 -S 查看用户账户的状态(是否被锁定)

示例:

设置或修改用户密码

[root@localhost ~]# passwd pp
更改用户 pp 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

-d 清除用户密码,使用用户名可直接登录

[root@localhost ~]# passwd -d pp //清除nancy用户的密码
清除用户的密码 pp。
passwd: 操作成功

锁定和解锁用户

[root@localhost ~]# passwd -l pp //锁定用户密码,锁定后用户无法登陆 锁定用户 pp 的密码 。 passwd: 操作成功 [root@localhost ~]# passwd -u pp //解锁用户,因pp无密码,系统提示不安全,必须使用-f才能解锁 解锁用户 pp 的密码。 passwd: 警告:未锁定的密码将是空的。 passwd: 不安全的操作(使用 -f 参数强制进行该操作) [root@localhost ~]# passwd -S pp //查看pp用户状态,仍为锁定状态 pp LK 2022-07-31 0 99999 7 -1 (密码已被锁定。)

usermod 修改已有用户的属性

格式

usermod [选项]… 用户名

选项:

选项 作用 -l 更改用户的登录名称 -L 锁定用户 -U 解锁用户 -u 指定的UID号 -d 指定家目录 -e 指定用户失效时间,可使用YYYY–MM-DD的日期格式 -g 指定基本组 -G 指定附加组 -s 指定默认的登录Shell M 不建立家目录

示例

[root@localhost ~]# usermod -l lisi pp //将pp的用户名改成lisi [root@localhost ~]# usermod -L lisi //锁定用户lisi [root@localhost ~]# passwd -S lisi //查看lisi状态,已被锁定 lisi LK 2022-07-31 0 99999 7 -1 (密码已被锁定。) [root@localhost ~]# usermod -U lisi //解锁用户lisi usermod:解锁用户密码将产生没有密码的账户。 您应该使用 usermod -p 设置密码并解锁用户密码。

删除用户 userdel

格式

userdel [-r] 用户名(-r 连家目录一起删除)

用户管理

用户管理

[root@localhost ~]# userdel -r 555 //删除用户555及其家目录

[root@localhost ~]# userdel -r 777 //删除用户777及其家目录

[root@localhost ~]# userdel -r 666 //删除用户666及其家目录
[root@localhost ~]# ls /home/ //查看/home下555 666 777的家目录不存在

222 444 apache pp wang zhangsan

用户管理

Original: https://www.cnblogs.com/fengxia6/p/16731035.html
Author: 风夏呀
Title: 用户管理

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/577768/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • python 练习题:请利用循环依次对list中的每个名字打印出Hello, xxx!

    方法一: python;gutter:true; -<em>- coding: utf-8 -</em>- 请利用循环依次对list中的每个名字打印出Hel…

    Linux 2023年6月8日
    099
  • 这几天的杂学

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月7日
    0100
  • Django基础学习笔记

    创建一个django项目:命令: django-admin startproject 项目名 进入到项目并创建一个应用:命令: python manage.py startapp …

    Linux 2023年6月6日
    093
  • Linux 文件查看命令

    文件查看命令 1、cat:从第一行开始显示文件内容 使用方式:cat 文件 或 文件路径 例如:cat ifcfg-eth0 或 cat /etc/sysconfig/networ…

    Linux 2023年6月14日
    0105
  • Postman环境变量的使用

    前言 请注意,Postman新版有ui上的改动,本文使用的Postman 版本8.4.0 for Mac, ui有调整,但是功能无改变。 Postman是一款接口调测的软件,服务端…

    Linux 2023年6月14日
    0104
  • 如何实现异步 connect

    写过网络程序的同学,应该都知道 connect 函数,在 socket 开始读写操作之前,先要进行连接,也即 TCP 的三次握手 , 这个过程就是在 connect 函数中完成的,…

    Linux 2023年6月13日
    0115
  • [ Perl ] 多线程 并发编程

    记录一些常用的 模块 / 方法 。 多线程 use 5.010; use threads; 定义一个需要并发的子函数 sub func { my $id = shift; slee…

    Linux 2023年6月7日
    092
  • Linux系统调用接口

    Linux系统调用接口 进程控制 系统调用 描述 fork 创建一个新进程 clone 按指定条件创建子进程 execve 运行可执行文件 exit 终止进程 _exit 立即终止…

    Linux 2023年6月13日
    0107
  • php微信自定义分享链接,标题,描述,缩略图配置步骤

    微信公众号开发,自定义分享链接,标题,描述,缩略图接口 1、文件目录结构 2、后台代码: wxshare.php 注意:使用此代码,只需要把wxshare.php文件下面的appi…

    Linux 2023年6月7日
    098
  • CentOS-7配置fastDFS文件服务器和安装Nginx

    配置步骤实在是很繁琐,听我慢慢道来! 主要是配置管理(tracker)和存储(storage)返回地址样式 –> 域名/组名/磁盘名/目录名/文件名 &#8211…

    Linux 2023年6月13日
    097
  • 《闲扯Redis十一》Redis 有序集合对象底层实现

    一、前言 Redis 提供了5种数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),理解每种数据类型的特点对于redis的开…

    Linux 2023年5月28日
    0104
  • python学习

    python中的字符串以双引号或者单引号表示 长度为L:第一个字节索引为0或-L 最后一个字节索引为L-1或-1 in是二元关系操作,用来判断左侧内容是否在右侧的集合中 float…

    Linux 2023年6月6日
    0104
  • 北京思特奇2023年校招笔试(Java)

    北京思特奇2023年校招笔试(Java) 1、表达式 (short)10/10.2*2 运算后结果是什么类型? 答案:double,浮点数默认是double,自动类型向上转换为浮点…

    Linux 2023年6月14日
    098
  • 【设计模式】Java设计模式-原型模式

    【设计模式】Java设计模式 – 原型模式 😄 不断学习才是王道🔥 继续踏上学习之路,学之分享笔记👊 总有一天我也能像各位大佬一样🏆原创作品,更多关注我CSDN: 一个…

    Linux 2023年6月6日
    0128
  • 国产银河麒麟Kylin V10操作系统-如何把常用文件夹加入左侧侧边栏(类似windows文件资源管理器中的收藏夹)

    国产银河麒麟Kylin V10操作系统-如何把常用文件夹加入左侧侧边栏(类似windows文件资源管理器中的收藏夹) 第一步:确保侧边栏正确显示。 打开”我的电脑&#8…

    Linux 2023年6月14日
    0162
  • 一篇文章Shell脚本快速入门

    Shell脚本基础入门 Bash注释 Bash只支持单行注释,使用 #开头的都被当作注释语句: 整行注释 echo hello world # 行尾注释 通过Bash的一些特性,可…

    Linux 2023年5月28日
    073
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球