linux中的用户: root 用户(超级管理员) or 普通用户
windows:管理员(admin)or 普通用户
其中管理员的权限高,普通用户的权限低。例如root 可以往/user/bin目录里面添加删除内容,而普通用户没有这样的权限。
一、身份切换
用户身份切换(提降权限):
普通->超级 (需要输密码)
超级->普通(不需要输密码)
普通->普通(需要输密码)
指令
su 用户 工作目录仍然是当前目录
su -用户 工作目录会变成目标用户的工作目录。
切换到root时,su root /su 或者sudo su /sudo su root(当使用su 切换root的时候输入密码没有效果,采取sudo的形式)
添加用户
adduser 用户名
二、sudo
sudo:是用来进行短暂提权的。
不是所有的用户都能使用sudo,只有在sudo组里面才能够使用sudo,可以类比于白名单。
三、权限的本质
权限控制用户的行为,防止错误发,本质就是能不能做什么事情。
理解:权限=角色+目标属性 linux环境下一切皆文件,面对的都是文件!
权限首先限制的是角色(人)
权限要求目标必须具备某种属性。
四、角色
角色有三种:拥有者,所属组,other .
这里要注意角色与身份并不冲突,身份是一个具体的人,而角色则是泛指。
例如:张三是身份,而程序员的张三的角色
文件权限:
这里我们查看一个文件的信息.
-后面的9个字符,分别代表着拥有者,所属组,和other对于该文件hello.txt的权限.
r 可读
w 可写
x 可执行(当该文件要为可执行文件时,x才能发挥作用)
在对某个文件进行操作时首先会确认当前操作者的身份,且身份只能确认一个,例如上面的文件拥有者和所属组都是ubuntu,但是先确定的是拥有者所以ubuntu用户是该文件的拥有者,对该文件的权限是局限于拥有者的权限。
目录权限:
前面我们讲述了rwx对应文件的权限,那么对于目录而言rwx对应着目录的什么权限。
r 查看目录内容
w 在指定的目录下新建文件
x 进入目录
能否删除一个目录/文件与目录本身的属性无关,而是与是否有上一级目录的w权限有关
五、添加和删除角色对应的权限
方法一:
chmod 属性加减 文件的路径
例:chmod u-r hello.txt
拥有者
u+r / u+w / u+x / u+rw / u+rwx
u-r………………
所属组
g+r / g+w / g+x / g+rw / g+rwx
g-r………………
other
o+r / o+w / o+x / o+rw / o+rwx
o-r………………
方法二:
可以采用缺省权限来进行修改
一种角色对应三个权限,,有该权限则为1,无该权限则为0,三个比特位对应的值在000~111,也就是0~7之间,所以可以用八进制来表达。
所以修改角色的权限时,也可以采用缺省权限的方式来修改。
chmod 缺省权限 文件的路径
例:chmod 777 hello.txt
拥有者 所属组 other
000/010/011/100/101/110/111/…………767/777
例如:543对应二进制为101 100 011——>r-x r-- -wx
我们都知道,在创建文件的时候系统给我们的文件以及目录的权限是一个默认的状态,那么为什么默认的权限是我们看到的样子?
对于普通文件来讲: 起始权限为666,默认不带可执行
对于目录文件来讲: 起始权限是777,默认携带x
上面两项都是系统规定死了的,无法修改。
但是系统默认存在一个叫权限掩码umask的概念,umask默认值是2,用户可以进行修改方便设置权限,但是修改umark后重启后还是为2即(000000011)
最终的权限=起始权限&(~umask)【不可以理解成减,因为0-1 ??,这是不对的】
注意:
凡是在umark中出现的权限,都不会在最终权限出现。
特殊情况下,配置umark ,可以控制文件的默认权限,让我们的代码是可控的。
六、重点问题
1.用户能修改任何人的文件属性吗?
用户只能更改自己的文件属性,即文件的拥有者才能修改文件的属性。
ubuntu@VM-20-17-ubuntu:/$ chmod u-r root.txt
chmod: changing permissions of 'root.txt': Operation not permitted
可以看到当我们以Ubuntu的身份去修改拥有者是root的文件root.txt时,该行为不被允许。
2.没有权限会怎么样?
没有权限,系统会拒绝让我们访问。
当我的身份对应的角色并没有r读权限时,无法查看文件内容。
当我的身份对应的角色并没有w读权限时,无法对文件输入内容·。
当我的身份对应的角色并没有x读权限时,无法执行该文件。
3. 确认权限信息时,系统会先确认用户是谁?拥有者,所属组,还是other?
用户角色只确定一次,顺序是 :拥有者 所属组 other
4.root 的用户权限
root不受权限的约束。
即使给root对应的任何角色设置权限,root也不受权限的管控。
5.如何理解可执行?
可执行权限!=文件可以被执行
类似于给了机会也不一定可以被把握住,关键要看个人的能力。
标签:文件,用户,拥有者,linux,权限,root,目录 From: https://blog.csdn.net/ruyuemoliang/article/details/143649967