用户和组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户和组相关的知识,希望对你有一定的参考价值。
一、用户:
是用来操作系统中不同功能的身份.
(1)Linux系统中用户的分类
1)超级用户: root uid=0
2)系统用户:不需要登录系统,服务于应用程序,维护系统的运行
bin nobody uid=1-499
3)普通用户:可以登录的用户uid>=500
UID:用户标识
(2)系统文件:
/etc/passwd:用户信息
/etc/shadow:用户密码相关的信息
(3)相关命令
①查看用户 id
id //默认查看的是当前用户的信
#whoami //查看当前用户是谁
id lp //查看指定用户的信息
说明:
uid:用户标识
gid:组标识,用户的主组
groups:用户所属组信息
②添加用户useradd
注意:添加用户的操作只有root能操作
添加用户时,如果不指定用户的组,那么默认会创建一个与用户名同名的组作为用户的主要组。
会在/etc/passwd添加一行
会在/etc/group添加一行
会在/etc/shadow添加一行
会在/etc/gshadow添加一行
会在/home目录下建立一个与用户同名的目录作为家目录,同时会从/etc/skel目录中复制出所有的隐藏文件到该目录
1)添加用户时指定选项 man useradd
默认情况下:
root的家目录是/root
普通用户的家目录是/home
head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码:uid:gid:注释性描述:用户的家目录:用户的登录shell
2)参数:
-c:注释性的描述信息
-d:指定用户的家目录
-g:指定用户的主要组,前提:组是必须存在的
-G:指定用户的附加组(附属组),前提:组是必须存在的
-s:指定用户的登录shell
-u:指定用户的uid
-M 不建立家目录
-e 指定用户过期时间,日期
-f 指定用户过期时间,天数
③删除用户userdel//删除的时候不会删除用户的家目录和邮箱
-r:可以干净的删除一个用户
④给用户设置密码
passwd:
/etc/shadow:存放用户密码信息的文件
超级用户:既可以修改自己的密码,又可以修改别人的密码,并且不需要提供当前密码
普通用户:只能修改自己的密码,要求严格,并且需要提供当前密码
#passwd // 默认修改当前用户的密码
#passwd 用户名 //修改指定用户的密码
/etc/shadow:存放用户密码信息的文件
1)参数
-l 锁定用户
-u 解锁用户
-n 密码最小使用期限天数
-x 密码最大使用期限天数
-w 密码过期前几天提醒天数
⑤修改用户:
usermod: //modify:修改
-G:修改用户的附属组,不管用户原来的附属组如何,直接覆盖
-g:修改用户的主要组
-a:一般和-G联合使用,追加附属组
-u:修改用户的uid
-d:修改用户的家目录
-s:修改用户的shell
(3)其他命令
查看当前用户的ID:id username
查看当前用户的名字:whoami
设置用户密码:passwd username (普通用户只能通过passwd修改自己本身密码)
删除一个用户:userdel username (-r 选项会连同创建的家目录一同删除)
创建组:groupaddgroupname
删除组:groupdelgroupname (用户的主要组不可以删除)
修改用户信息:usermod -[u,g,G等] username
修改组的信息:groupmodgroupname
为组添加一个管理员:gpasswd -A username groupname
用组管理员为组添加一个用户成员:gpasswd -a usrnamegroupname
删除一个组成员:gpasswd -d username group
为组设定一个密码:gpasswdgroupname
以上是关于用户和组的主要内容,如果未能解决你的问题,请参考以下文章