多用户操作系统
可以允许多个用户同时操作,例如:linux,Windows server
单用户操作系统
同一时间只允许一个用户操作,例如:windows xp, win7。win7系统用户在操作时,另一个用户远程连接后,之前用户会被登出。
用户和组
场景:学校中一台电脑,学生、老师、辅导员都可以访问,其中学生在电脑上放置作业,老师在电脑上放置PPT,辅导员在电脑上放置工作日志。
上图中用户登录过程:
zhangsan登录后,首先确认zhangsan用户是否存在,再校验密码正确,查看用户属于哪个组,则可以登录,登录后用户有个身份/令牌(用户名为zhangsan,组是:teacher)。访问文件和文件夹时,会校验用户的身份/令牌,有权限的用户才能正确操作。
若zhangsan登录后,此时将此用户添加到manager组,该用户访问工作日志,是无法访问的,因为用户的身份/令牌是在登录时确定的,此时是没有manager权限的,若zhangsan想访问工作日志,可退出登录后重新登录才生效。
注意:
- Linux用户的权限是在登录时确定的
- Linux中创建用户,系统给用户分配一个uid,创建一个组,系统会给组分配一个gid。用户登录后,令牌中就有uid及gid,计算机中识别一个组是根据gid,因为组的名称是可变的,gid不变。
如何查看Linux令牌
```bash查看当前用户的身份
[root@kedacom ~]# id uid=0(root) gid=0(root) 组=0(root)
创建用户willow
[root@kedacom ~]# useradd willow
查看指定用户(willow)的身份
[root@kedacom ~]# id willow uid=1006(willow) gid=1006(willow) 组=1006(willow)
创建组test
[root@kedacom ~]# groupadd test
将willow用户添加到test组
[root@kedacom ~]# usermod -a -G test willow
再次查看willow的身份,组有变化
[root@kedacom ~]# id willow uid=1006(willow) gid=1006(willow) 组=1006(willow),1007(test)
su切换到willow用户
[root@kedacom ~]# su willow
id查看当前用户身份,当前用户为willow
[willow@kedacom root]$ id uid=1006(willow) gid=1006(willow) 组=1006(willow),1007(test)
退出willow用户登录
[willow@kedacom root]$ exit exit [root@kedacom ~]# id uid=0(root) gid=0(root) 组=0(root)
```
