zoukankan      html  css  js  c++  java
  • #Linux学习# 用户和用户组管理

    用户配置文件

    在Linux中主要是通过用户配置文件来查看和修改用户信息。

    初始组和附加组:初始组——就是指用户一登录就立刻拥有这个用户组的相关权限,每个用户的初始组只能有一个,一般就是和这个用户的用户名相同的组名作为这个用户的初始组;附加组——指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。

    用户信息文件/etc/passwd

    第1字段:用户名称

    第2字段:密码标志

    第3字段:UID(用户ID),0——超级用户,1~499——超级用户(伪用户,不能用于登陆),500~65535——普通用户

    第4字段:GID(用户初始组ID)

    第5字段:用户说明

    第6字段:家目录,普通用户——/home/用户名,超级用户:/root/

    第7字段:登录之后的Shell

    用户信息文件/etc/shadow

    第1字段:用户名

    第2字段:加密密码,如果密码位是“!!”或“*”代表没有密码,不能登录

    第3字段:密码最后一次修改日期,使用1970年1月1日作为标准时间,每过一天时间戳加1

    第4字段:两次密码的修改间隔时间(和第3字段相比)

    第5字段:密码有效期(和第3字段相比)

    第6字段:密码修改到期前的警告天数(和第5字段相比)

    第7字段:密码过期后的宽限天数(和第5字段相比),0代表密码过期后立即失效,-1则代表密码永远不会失效

    第8字段:账号失效时间,要用时间戳表示

    第9字段:保留

    时间戳换算:

    把时间戳换算为日期:

    date    -d    “1970-01-01 16066 days”

    把日期换算为时间戳:

    echo    $(($(date –date=”2014/01/06”+%s)/86400+1))

    组信息文件/etc/group

    第1字段:组名

    第2字段:组密码标志

    第3字段:GID

    第4字段:组中附加用户

    组密码文件/etc/gshadow

    第1字段:组名

    第2字段:组密码

    第3字段:组管理员用户名

    第4字段:组中附加用户

    用户管理相关文件

    用户家目录

    普通用户:/home/用户名/,所有者和所属组都是此用户,权限是700;超级用户:/root/,所有者和所属组都是 root用户,权限是550。

    用户的邮箱

    /var/spool/mail/用户名/

    用户模板目录

    /etc/skel/

    用户管理命令(附加)

    用户默认值文件

    /etc/default/useradd

    GRUOP=100                                               #用户默认组

    HOME=/home                                             #用户家目录

    INACTIVE=-1                                              #密码过期宽限天数(7)

    EXPIRE=                                                     #密码失效时间(8)

    SHELL=/bin/bash                                        #默认shell

    SKEL=/etc/skel                                            #模板目录

    GREATE_MAIL_SPOOL=yes                     #是否建立邮箱

    /etc/login.defs

    PASS_MAX_DAYS    99999                        #密码有效期(5)

    PASS_MIN_DAYS    0                                 #密码修改间隔(4)

    PASS_MIN_LEN    5                                    #密码最小5位(PAM)

    PASS_WARN_AGE    7                               #密码到期警告(6)

    UID_MIN    500                                             #最小和最大UID范围

    GID_MAX    60000

    ENCRYPT_METHOD    SHA512                  #加密模式

    usermod

    选项与参数:

    usermod    [-cdegGlsuLU]    username

    -c:后面接账号的说明,即/etc/passwd第五栏的说明栏,可以加一些账号的说明

    -d:后接账号的家目录,即修改/etc/passwd的第六栏

    -e:后面接日期,格式是YYYY-MM-DD也就是在/etc/shadow内的第八个栏位的内容

    -f:后面接天数,为shadow的第七栏位

    -g:后面接初始用户组,修改/etc/passwd的第四个栏位,亦即是GID的栏位

    -G:后面接次要用户组,修改这个使用者能够支持的用户组,修改的是/etc/group

    -a:与-G合用,可增加次要用户组的支持,而非设置

    -l:后面接账户名称,亦即是修改账号的名称,/etc/passwd的第一栏

    -s:后面接shell的实际文件,例如/bin/bash或/bin/csh等

    -u:后面接UID数字,即/etc/passwd第三栏的数据

    -L:暂时将使用者的密码冻结,让它无法登陆,其实仅改/etc/shadow的密码栏

    -U:将/etc/shadow密码栏的感叹号(!)拿掉,解锁账号

    chage

    选项与参数:

    chage    [-ldmMWIE]    用户名

    -l:列出用户的详细密码状态

    -d:接日期,修改密码最后一次更改日期(shadow 3字段)

    -m:接天数,两次密码修改间隔(4字段)

    -M:接天数,密码有效期(5字段)

    -W:接天数,密码过期前警告天数(6字段)

    -I:接天数,密码过后宽限天数(7字段)

    -E:接日期,账号失效时间(8字段)

    chage    -d    0    username

    这个命令其实是把密码修改日期归0,这样用户一登录就要修改密码

    su

    选项与参数:

    su    [-lm]    [-c    命令]    username

    -:代表使用login-shell的变量文件读取方式来登陆系统,若使用者名称没有加上去,则代表切换为root的身份。不使用-的话,很多环境变量不会切换。

    -l:与-类似,但后面需要加欲切换的使用者账号,也是login-shell的方式

    -m:-m和-p是一样的,表示使用目前的环境设置,而不读取新使用者的配置文件

    -c:仅进行一次命令,所以-c后面可以加上命令

  • 相关阅读:
    获取所有部门中当前员工薪水最高的相关信息,给出dept_no, emp_no以及其对应的salary
    获取所有员工当前的manager,如果当前的manager是自己的话结果不显示
    String笔记02
    String笔记
    ArrayList笔记
    猜数字小游戏
    标准类
    封装
    面向对象
    方法
  • 原文地址:https://www.cnblogs.com/zhuifeng17/p/12969569.html
Copyright © 2011-2022 走看看