1. 用户登录流程

  1. 先找寻 /etc/passwd 里面是否有你输入的账号?如果没有则跳出,如果有的话则将该账号对应的 UID 与 GID读出来,另外,该账号的家目录与 shell 配置也一并读出;
  2. 核对口令!这时 Linux 会进入 /etc/shadow 里面找出对应的账号与 UID,然后核对一下你刚刚输入的口令与里头的口令是否相符,之前所有条件OK,则可以登录系统进入shell环境。

linux 账号与系统用户管理

 

2. 账户配置文件介绍

  • /etc/passwd

7个字段:[ 账号名称:密码占位:UID:GID:用户描述:家目录:登录shell ]

提示:如果有密码则显示x,因为真正的密码在/etc/shadow,uid 0为root权限,1-499系统使用,500以后普通新增用户使用。

  • /etc/shadow

9个字段:[ 账号名称:加密密码:最近更改密码日期:禁止更改密码的天数:密码过期天数:密码过期前提前警告的天数:密码过期后失效的天数:账号失效日期:保留 ]

提示:最近更改密码日期 和 账号失效日期 这两个日期都是使用自1970-1-1直到今天某个日期的天数来表示的。计算公式:echo $(($(date --date="2020/03/06" +%s)/86400+1))

  • /etc/group 

4个字段:[ 组名:群组密码占位:GID:加入此群组的账号名称 ]

提示:使用groups命令可以查看有效群组(第一个是有效群组),这个概念主要针对建立新文件时所属组而言,可以使用newgrp切换有效群组,但是切换之后是在子shell运行,了解后忘记把。

  • /etc/gshadow

4个字段: [ 组名:密码:群组管理员账号:加入该组的账号 ]

提示:这个群组管理员是为了帮root干活用的,root太忙了找一些帮手而已,但是现在有sudo,谁还用群组管理员,了解后忘记把。

3. 用户账号管理实践

[root@www ~]# useradd [-u UID] [-g 初始群组] [-G 次要群组] [-mM]\

>  [-c 说明栏] [-d 家目录绝对路径] [-s shell] 使用者账号名

选项与参数:

-u  :后面接的是 UID ,是一组数字。直接指定一个特定的 UID 给这个账号;

-g  :后面接的那个组名就是我们上面提到的 initial group 啦~

      该群组的 GID 会被放置到 /etc/passwd 的第四个字段内。

-G  :后面接的组名则是这个账号还可以加入的群组。

      这个选项与参数会修改 /etc/group 内的相关数据喔!

-M  :强制!不要创建用户家目录!(系统账号默认值)

-m  :强制!要创建用户家目录!(一般账号默认值)

-c  :这个就是 /etc/passwd 的第五栏的说明内容啦~可以随便我们配置的啦~

-d  :指定某个目录成为家目录,而不要使用默认值。务必使用绝对路径!

-r  :创建一个系统的账号,这个账号的 UID 会有限制 (参考 /etc/login.defs)

-s  :后面接一个 shell ,若没有指定则默认是 /bin/bash 的啦~

-e  :后面接一个日期,格式为『YYYY-MM-DD』此项目可写入 shadow 第八字段,

      亦即账号失效日的配置项目啰;

-f  :后面接 shadow 的第七字段项目,指定口令是否会失效。0为立刻失效,

      -1 为永远不失效(口令只会过期而强制于登陆时重新配置而已。)
useradd命令详解(一般直接使用加用户即可)

相关文章:

  • 2022-01-07
  • 2021-12-27
  • 2022-01-01
  • 2021-08-28
  • 2021-12-24
  • 2021-10-08
  • 2021-07-05
  • 2021-10-25
猜你喜欢
  • 2022-02-12
  • 2021-11-17
  • 2022-01-01
  • 2022-01-01
  • 2021-07-29
  • 2021-05-19
  • 2021-07-26
相关资源
相似解决方案