Linux用户及权限基础 1---- Linux用户基础
1 用户和组
1 当我们使用Linux的时候我们都需要以用户的身份登录,一个进程也需要用户的身份运行
2 我们使用用户的目的就是为了限制使用者或者进程哪些资源可以使用或者不可以使用
3 组的相关信息
1 每个用户拥有一个UserID,操作系统使用的实际上是UserID,而不是用户名
2 每一个用户属于一个主组,还可以属于一个或者多个附属组
3 每一个组拥有一个GroupID
4 每一个进程必须要以用户的身份运行,并受该用户的权限影响使用资源
5 每个可登录的用户都有一个可用的shell
4 用户
1 每一个用户id为32位的整数,从0开始,但是为了和老式的系统分开,我们一般把用户的id限制在60000以下
2 用户分为三种
1 root,root用户的id为0,无伦什么Linux中root的id都为0
2 系统用户,系统用户是为了使用某个服务而开的,id一般是1~499
3 普通用户,就是我们平时登录系统所用的用户,id一般是大于等于500
3 系统中的文件都有一个所属的用户和组
4 我们可以使用id命令来显示当前的用户信息,以及使用passwad命令来更改密码
5 相关文件
1 /etc/passwad 保存的是用户的信息
2 /etc/shadow 保存用户的密码
3 /etc/group 保存组的信息
2 查看登录的用户
1 命令whoami是显示当前登录用户
2 who是显示哪些用户已经登录系统
3 w显示哪些用户已经登录和正在干什么
3 创建一个用户
1 用户useradd用户创建一个新的用户
useradd 用户名
2 执行useradd命令会做以下的操作
1 在/etc/passwd添加用户的信息
2 如果使用passwd来创建密码,则把密码保存在/etc/shadow文件
3 为用户创建一个新的家目录 /etc/home/test (在ubuntu里面没办法自动的添加家目录)
4 将/etc/skel中的文件复制到家目录下
5 建立一个和用户用户名相同的组,默认的情况下新建用户属于这个同名组
3 命令useradd支持以下的参数
-d 指定用户家目录
-s 指定用户登陆shell
-u 指定用户uid
-g 指定用户所属主组
-G 指定用户所属附属组
4 修改用户的信息
1 usermod来修改用户的信息 usermod 参数 username
2 usermod支持一下的参数
-l 修改用户名
-u 修改uid
-g 修改用户主组
-G 修改用户附属组
-L 锁定用户
-U 解锁用户
5 删除用户
1 userdel 用户名,是用来删除有一个用户,但是会保留家目录
2 userdel -r 用户名是直接把家目录也给删除了
6 组
1 几乎所有的操作系统都有组的概念,通过组我们可以用来方便的管理用户
2 每一个组都有一个组的id
3 所有的组的信息都是保存在/etc/group中
4 每个用户都有一个主组,但是最多可以有31个的附属组
5 利用groupadd创建一个组
groupadd 组名
6 命令groupmod用以修改一个组信息:
groupmod -n 新组名 旧组名
groupmod -g 新组ID 旧组ID
7 命令groupde用以删除一个组