用户、组权限基础之二:权限机制;用户、组权限基础之三:权限扩展;
用户、组的基本概念;创建管理用户、组;
操作系统通过用户、组概念来管理使用计算机的人(使用者)
用户代表一个使用计算机的使用者,操作系统通过用户概念限制一个使用者能够访问的资源
一个进程也需要一个用户的身份运行,用户限制使用者或进程可以使用、不可以使用哪些资源。
组 用来组织管理组织用户
用户具有以下概念:
- 每个用户有一个家目录,用来保存用户私有数据,root用户的家目录为/root,普通用户家目录为/home下与用户名相同的目录
- 每个可登陆用户拥有一个指定的shell(一般默认的指/bin/bash,可以查看/etc/passwd)
- 每个用户可以属于一个主组,可以属于一个或多个附属组(最多可拥有31个附属组)
- 每个组拥有一个GroupID
- 每个进程以一个使用者用户的身份运行,并受该使用者用户的可访问资源的限制
- 每个用户有一个user name和一个user ID(UID),user ID是OS真正用来管理标识用户的,
- UID为32位长,从0开始,最大一般到60000(2的32次方)。
- 用户分为3种:
root用户(uid为0)
系统用户(uid为 1~499):最大的特点是没有Shell,为某些服务(web、ftp、打印等)创建的,仅仅作为服务或进程使用,不需要登陆(nologon),可以查看/etc/passwd
普通用户(uid 500+以上)
使用id命令可以显示当前用户的信息,一个用户最多可以属于31个附属组
使用passwd命令可以修改当前用户密码
命令id用以显示当前用户的信息,命令passwd用以修改当前用户的密码
以下命令用以显示登陆用户信息:
whoami 显示当前用户
who 显示登陆的用户的信息
w 显示登陆的用户的详细信息
相关文件:用户、组信息保存在以下三个文件中:
/etc/passwd 用户信息
/etc/shadow 用户密码
/etc/group 组信息
命令useradd用以添加一个用户:
useradd 用户名
-d 指定用户家目录
-s 指定用户登陆shell
-u 指定用户uid
-g 指定用户所属主组
-G 指定用户所属附属组
命令usermod用以修改一个用户的信息:
usermod 参数 用户名
-l 修改用户名
-u 修改uid
-g 修改用户主组
-G 修改用户附属组
-L 锁定用户
-U 解锁用户
命令userdel用以删除一个用户:
userdel 用户名
userdel -r 用户名 删除用户的同时删除该用户家目录
命令groupadd用以创建一个组:
groupadd 组名
命令groupmod用以修改一个组信息:
groupmod -n 新组名 旧组名
groupmod -g 新组ID 旧组ID
命令groupde用以删除一个组