美文网首页
linux用户与用户组相关指令与文件个人笔记

linux用户与用户组相关指令与文件个人笔记

作者: X_Mingest | 来源:发表于2018-10-29 18:59 被阅读0次

    指令

    # 将用户的密码设置为过期,下一次登陆时将直接创建新的密码
    chage -d 0 ${user}
    
    # 设置用户全名
    chfn ${user}
    usermod -c "${full_name}" ${user}
    
    # 修改用户shell
    chsh ${user}
    usermod -s ${new_shell} ${user}
    
    # 将用户加入用户组
    gpasswd -a ${user} ${group}
    usermod -aG ${group} ${user} 
    
    # 从用户组里删除用户
    gpasswd -d ${user} ${group}
    
    # 创建组
    groupadd ${group}
    
    # 删除组
    groupdel ${group}
    
    # 修改组名
    groupmod -n ${new_name} ${old_name}
    
    # 显示用户所属的组
    groups ${user}
    id ${user}
    
    # 删除用户及其家目录
    userdel -r ${user}
    
    # 创建用户并且创建用户的家目录,同时设置默认的shell
    useradd -m -s ${shell} ${user}
    
    # 修改用户的家目录并且移动用户家目录下的文件
    usermod -d ${home} -m ${user}
    
    # 修改用户的登录名
    usermod -l ${new_name} ${old_name}
    
    # 设置用户密码
    passwd ${user}
    

    文件

    /etc/passwd

    字段 备注
    用户名
    密码 参数为x*
    用户ID 0为root用户,系统预留一部分,之后为普通用户
    用户组ID 用户所属的用户组的ID
    用户名全称 可以不设置,但是某些发行版需要设置,而且不允许全称与用户名相同
    家目录 通常为/home/${USER}/
    root用户家目录为/root/
    可以用~代指
    可以通过cd切换至该目录下
    shell程序 比如/bin/bash/bin/zsh,大多时候可以通过chsh修改

    例如

    test:x:1000:1000::/home/test:/bin/bash
    

    /etc/shadow

    字段 备注
    用户名
    密码 通常为DES加密后的密文,盐为/^\$[^$]*\$[^$]*\$/
    *表示该用户不能登录
    (空格)或者!表示空密码
    !!表示密码过期
    上次修改时间 为1970-1-1起到最近一次修改的天数
    最小修改间隔 天数,为0表示禁用此功能,表示用户至少间隔一定时间才能修改密码
    最大修改间隔 天数,超过天数密码过期
    过期提前警告 在最大修改间隔前一定的天数,会在用户登录时显示提示
    禁用延迟 密码过期后一定的天数,会彻底禁用用户
    禁用时间 为1970-1-1起到用户被禁用的天数
    保留字段 暂时没什么用

    例如

    test:$1$tTqQgGnx$cgmFAQdVMHOrtQlU5u5fFYy7whzua7ngU5Xxwkg4aA4/Xx30HKkIF3pP3Kk3yUuWwxsq3MmfFsSKBGtTdhHN33:17833:0:99999:7:::
    

    /etc/group

    字段 备注
    组名
    组密码 参数为x(空格)表示没有设置组密码
    用户组ID 实际包含的用户是在/etc/passwd中用户组ID为本用户组ID的用户与在本文件最后一个字段列表中的用户
    用户列表 ,分隔

    例如

    root:x:0:root,admin
    

    /etc/gshadow

    /etc/group的加密文件

    字段 备注
    组名
    组密码 组密码为!(空格)表示没有设置组密码,设置了之后,此处将会显示一段密码加密后的密文
    管理员 ,分隔
    成员 ,分隔
    • 组密码并不常用,但需要临时令一个用户切换至它并不从属的用户组时,该用户组必须已经设置了组密码,然后使用newgrp命令切换
    • 如果用户从属要切换的用户组,使用newgrp并不需要组密码

    例如

    admin:!:root,admin:user1,user2
    

    /etc/login.defs

    用户登录相关的默认值,下面记录一些CentOS上该文件里一些参数

    参数 含义
    PASS_MAX_DAYS 最大修改间隔 99999
    PASS_MIN_DAYS 最小修改间隔 0
    PASS_MIN_LEN 最小密码长度 5
    PASS_WARN_AGE 过期提前警告 7
    UID_MIN 普通用户ID的最小值 1000
    UID_MAX 普通用户ID的最大值 60000
    UMASK 用户权限 077

    参考

    1. Users and groups - ArchWiki
    2. linux用户和组管理,/etc/passwd 、/etc/shadow和/etc/group 文件内容解释

    相关文章

      网友评论

          本文标题:linux用户与用户组相关指令与文件个人笔记

          本文链接:https://www.haomeiwen.com/subject/jinbtqtx.html