用户和用户组
用户和用户组
1.文件
用户和用户组文件保存在/etc/passwd中,密码文件单独保存在/etc/shadow中
用户和用户组文件/etc/passwd
用户帐号 用户密码(密码单独保存用x占位) 用户ID 用户组ID 用户名全称 用户主目录 用户所使用的shell
比如:
oot:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
密码文件/etc/shadow
密码文件仅root用户能访问
[:]来进行分割
1、账户名称(密码需要与账户对应的嘛)
2、加密后的密码(如果这一栏的第一个字符为!或者*的话,说明这是一个不能登录的账户,从上面可以看出,ubuntu默认的就不启用root账户。
3、最近改动密码的日期(从1970年1月1日算起的总的天数)
4、密码不可被变更的天数:设置了这个值,则表示从变更密码的日期算起,多少天内无法再次修改密码,如果是0的话,则没有限制
5、密码需要重新变更的天数:密码经常更换才能保证安全,为了提醒某些经常不更换密码的用户,可以设置一个天数,强制让用户更换密码,也就是说该用户的密码会在多少天后过期,如果为99999则没有限制
6、密码过期预警天数:如果在5中设置了密码需要重新变更的天数,则会在密码过期的前多少天进行提醒,提示用户其密码将在多少天后过期
7、密码过期的宽恕时间:如果在5中设置的日期过后,用户仍然没有修改密码,则该用户还可以继续使用的天数
8、账号失效日期,过了这个日期账号就不能用了
9、保留的
比如:
root:*:17945:0:99999:7:::
daemon:*:17379:0:99999:7:::
bin:*:17379:0:99999:7:::
sys:*:17379:0:99999:7:::
sync:*:17379:0:99999:7:::
用户组文件/etc/group
用户组名称 密码占位符x 用户组ID
root:x:0:
daemon:x:1:
bin:x:2:
2.命令
用户命令:useradd,usermod ,userdel,passwd
用法:useradd/usermod -[option] username和userdel -r(可选)username
username:
参数 | 用法 | 详细解释 |
---|---|---|
-c | 注释 | 用户设置对账户的注释说明文字 |
-d | 主目录 | 指定用来取代默认的/home/username的主目录 |
-m | 若主目录不存在,则创建它。-r与-m相结合,可为系统账户创建主目录 | |
-M | 不创建主目录 | |
-e | date | 指定账户过期的日期。日期格式为MM/DD/YY |
-f | days | 帐号过期几日后永久停权。若指定为-,则立即被停权,若为-1,则关闭此功能 |
-g | 用户组 | 指定将用户加入到哪个用户组,该用户组必须存在 |
-G | 用户组列表 | 指定用户同时加入的用户组列表,各组用逗分隔 |
-n | 不为用户创建私有用户组 | |
-s | shell | 指定用户登录时使用的shell,默认为/bin/bash |
-r | 创建一个用户ID小于500的系统账户,默认不创建对应的主目录 | |
-u | 用户ID | 手动指定新用户的ID值,该值必须唯一,且大于499 |
-p | password | 为新建用户指定登录密码。此处的password是对应登录密码经MD5加密后所得到的密码值,不实真实密码原文,通常单独使用passwd命令来为用户设置登录密码 |
usermod
参数 | 含义 | 详解 |
---|---|---|
-l | 改变用户账户名 | usermod -l 新用户名 原用户名 |
-L | 锁定用户 | usermod -L 用户名,linux锁定用户,是通过在密码文件shadow的密码字段前加“!”来标识该用户被锁定 |
-U | 解锁用户 |
userdel
参数 | 含义 | 解释 |
---|---|---|
-r | 删除用户 | -r可选是否一并删除该账户对应的用户目录 |
passwd
参数 | 含义 | 解释 |
---|---|---|
空(不带参数) | 设置账户密码 | 只有root用户才有权设置指定账户的密码。一般用户只能设置或修改自己账户的密码 |
-l | 锁定密码 | 密码被锁定后将无法登陆 |
-u | 解锁 | |
-S | passwd -S uername 查看密码状态 | LK:被锁定,PS:正常 |
-d | 删除密码 | 密码被删除后将无法登陆系统除非重新设置密码,该命令只用root账户有权执行,不像windows密码为空就是没有密码 |
用户组命令:groupadd, groupmod, groupdel,gpasswd
groupadd
参数 | 含义 | 解释 |
---|---|---|
-r | 是否创建系统用户组 | 带有-r参数,则创建系统用户组,该类用户组的GID值小于500;若没有-r参数,则创建普通用户组,其GID值大于或等于500 |
groupmod
参数 | 含义 | 解释 |
---|---|---|
-n | 修改组名 | groupmod -n 新用户组名 原用户组名,此命令不会改变GID的值 |
-g | 修改GID | groupmod -g new_GID 用户组名称 |
groupdel
参数 | 含义 | 解释 |
---|---|---|
空 | 删除用户组 | groupdel 用户组名,注意在删除用户组时,被删除的用户组不能是某个账户的私有用户组,否则将无法删除,若要删除,则应先删除引用该私有用户的账户,然后再删除用户组。 |
gpasswd
参数 | 含义 | 解释 |
---|---|---|
-a | 添加账户到指定账户组 | gpasswd -a 用户账户 用户组名 |
-d | 从账户组删除指定账户 | gpasswd -d 用户账户 用户组名 |
-A | 将指定用户添加为管理员 | gpasswd -a 用户账户 用户组名 |
su username和su -username
su username:用户和操作环境都改变
su -username:只切换用户不切换操作环境及环境变量不变。还可用于退出超级权限
本博客为Swagger-Ranger的笔记分享,文中源码地址: https://github.com/Swagger-Ranger
欢迎交流指正,如有侵权请联系作者确认删除: liufei32@outlook.com
posted on 2019-04-08 16:14 Swagger-Ranger 阅读(636) 评论(0) 编辑 收藏 举报