Linux_权限理解(详细PLUS)

1.用户

Linux下有两种用户:超级用户(root)和普通用户;

超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情 超级用户的命令提示符是"#",普通用户的命令提示符是"$" 

超级用户:

Linux_权限理解(详细PLUS)

普通用户:

Linux_权限理解(详细PLUS)

2.用户切换

用户间切换:

su + 用户名 //可用exit回退到原用户 

1)普通用户切换超级用户(需要输入root用户密码)

Linux_权限理解(详细PLUS)

2)超级用户切换到普通用户(不需要输入普通用户密码)

Linux_权限理解(详细PLUS)

普通用户切换超级用户:

su - //也可用exit回退到原用户 

Linux_权限理解(详细PLUS)

3.创建和删除普通用户

创建普通用户

useradd+用户名(创建) passwd+用户名(设置密码) 

Linux_权限理解(详细PLUS)

删除普通用户

userdel -r +用户名 

Linux_权限理解(详细PLUS)

查看家目录下的用户

ls /home 

Linux_权限理解(详细PLUS)

4.权限管理

什么是权限

权限=用户+事物属性(rwx) r:可读  w:可写  x:可执行 

文件访问者类型(用户):

文件和文件目录的所有者:u---User(拥有者) 文件和文件目录的所有者所在的组的用户:g---Group(所属组) 其它用户:o---Others (其他) 

文件类型和访问权限(事物属性):

Linux_权限理解(详细PLUS)

文件类型:

d:文件夹 -:普通文件 l:软链接(类似Windows的快捷方式) b:块设备文件(例如硬盘、光驱等) p:管道文件 c:字符设备文件(例如屏幕等串口设备) s:套接口文件 

基本权限:

读(r):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限 写(w):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限 执行(x):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限 “-”表示不具有该项权限 

5.文件权限的设置方法

1)chmod

功能:修改用户对某一文件的权限

(1)chmod 角色 +/- 权限 文件 

Linux_权限理解(详细PLUS)

(2)chmod 8进制(u) 8进制(g) 8进制(o) file 

rwx:111(二进制) -->7(八进制)
rw-:110(二进制) -->6(八进制)
r--:100(二进制) -->4(八进制)
---:000(二进制) -->0(八进制)

Linux_权限理解(详细PLUS)

2)chown

功能:修改文件的拥有者 格式:chown [参数] 用户名 文件名 

Linux_权限理解(详细PLUS)

3)chgrp

功能:修改文件或目录的所属组 格式:chgrp [参数] 用户组名 文件名 

Linux_权限理解(详细PLUS)

6.权限掩码

对于新建的文件和目录我们会发现:目录的默认权限是775,文件的默认权限的664,为什么呢?

Linux_权限理解(详细PLUS)

起始时,目录默认权限的777,文件默认权限的666,由于存在权限掩码,使得最终权限和起始不同

最终权限=起始权限 &(~权限掩码) 

Linux_权限理解(详细PLUS)

权限掩码的查看:umask

Linux_权限理解(详细PLUS)

修改权限掩码为0000:umask 0000

Linux_权限理解(详细PLUS)

此时我们再次创建新的目录和文件

Linux_权限理解(详细PLUS)

通过上图我们可以看到新目录和文件的权限发生了改变

7.粘滞位

思考一下接下来的代码

Linux_权限理解(详细PLUS)

我们可以看到,这个文件的拥有者和所属组均是root,而用户qz属于others,只有读权限,我们只能读取文件而不能修改文件内容,但是我们却可以将该文件给删掉,这是为什么呢?

这是因为这个文件所处的文件夹的权限本身就属于我们,有w权限,即可以删除

Linux_权限理解(详细PLUS)

这里就要引出一个概念:粘滞位 (chmod o+t file)

当一个目录被设置为粘滞位,则该目录只能由

1、超级管理员删除 2、该目录的所有者删除 3、该文件夹的所有者删除 

发表评论

相关文章