一、权限
1. 什么是权限
其实生活中处处都有权限,例如:
场景一:腾讯视频中非会员用户不可以观看会员内容;普通学生不能进入校长办公室;l1bo无法进入l2bo家中。
- 如果我买了腾讯会员,我就可以看腾讯视频中的会员内容,那么是因为我是l1bo我能看会员内容,还是因为我是腾讯视频会员我才能看视频内容?
答:能看会员内容,根本原因是因为你是会员,不是因为你是l1bo。 - 校长光头强可以进入办公室,是因为他是光头强,还是因为他是校长?
答:光头强能进校长办公室,根本原因是因为他是校长,不是因为他是光头强。 - l1bo无法进入l2bo的家里,是因为我是l1bo,还是因为我没有钥匙?
答:l1bo不能进入l2bo的家,不是因为我是l1bo,根本原因是因为我没有钥匙。
场景二:我无法在爱奇艺里打CS2,我无法在CS2里看电影。
这是因为,爱奇艺压根就不能打CS2,CS2压根就不能看电影。
综上所述:
- 权限是限制身份角色的。(人 = 真实的人 + 身份角色)
- 目标事物的属性也会影响权限。
权限 = 身份角色 + 事物属性
其实简单说就是,能,还是不能,做一件事情。
2. 用户分类
在 Linux 中用户分为两大类,普通用户和超级管理员(也就是root)
root:几乎不受权限的约束。
普通用户:受权限约束。
补充知识1:su 指令
作用:切换用户
如果登录的是普通用户,输入su root / su(root可以省略)
指令,输入密码后,直接切换到root,按 ctrl + D / 输入exit
可以退出刚刚切换到的用户。
如果登录的是root,输入su 用户名
,无需输入密码,切换到指定用户
su -
重新登录超级管理员
补充知识2:sudo 指令
有时普通用户想执行一些高权限的操作,并且不想或者不能切换身份到root,这时就需要指令提权。
例如:安装软件,以root身份安装,未来任何人都可以用,软件只需要安装一次
sudo 指令
作用:指令提权,以root身份执行一条命令
使用sudo
指令的前提,需要通过root用户将指定普通用户添加到sudoers file
中,类似一个“白名单”。
3. 文件属性
可以先简单认识一下下面的内容
最左边d
表示目录,-
表示普通文件,这是之前讲过的,其实还有一些其他的,只做了解即可:
c
字符设备,例如:显示器键盘;b
块设备文件,例如:磁盘;p
管道文件,l
链接文件
Linux一切皆文件,所以所有的权限问题在Linux中一定是基于文件的,谈权限,谈的一定是文件的权限,权限 = 角色 + 事物属性。
Linux中的角色分三类:
拥有者,所属组,other
右面的部分我们已经讲过了,现在来讲一下左边的10个字符,第一个字符也了解过了,现在着重看其余9个字符
把他们9个分为三三一组,分别表示:拥有者权限,所属组权限,other权限。
第一个位置,表示是否可读;第二个位置,表示是否可写;第三个位置,表示是否可执行。