Linux权限

Linux下有两种用户:超级用户(root)、普通用户
超级用户:可以在linux系统下做任何事情,不受限制
普通用户:在linux行动受限制

超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
 

文件访问者的分类(角色)
 

拥有者:文件/文件目录的所有者

所属组:文件/文件目录拥有者所在的组的用户

other:其他用户

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

Linux权限_第1张图片

 r:可读(对于文件,则可以读取文件内容,对于目录,则可以浏览此目录的文件列表)

w:可写(对于文件,则可以修改文件内容,对于目录,则可以创建/删除文件)

x:可执行(对于文件,具有执行文件的权限,对于目录,则可以进入目录)

“—”表示不具有该项权限
 

文件类型
 

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

文件权限值的表示方法


 1 字符表示

Linux权限_第2张图片 2 八进制表示

Linux权限_第3张图片

 文件访问权限的相关设置方法

chmod


功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名
常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限


格式1:用户表示符+/-=权限字符

+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

Linux权限_第4张图片

格式2 三位8进制数字
 Linux权限_第5张图片

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

chgrp

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

umask
功能:
查看或修改文件掩码
新建文件默认权限(起始权限)=0666
新建目录默认权限(起始权限)=0777

超级用户默认掩码值为0022,普通用
户默认为0002
 

但实际上新创建的文件和目录,看到的权限往往不是上面这个值,因为还要受到umask的影响

假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask

即,最终权限=起始权限-权限掩码中出现的权限

权限掩码002--> 000 000 010

新建文件的起始权限是666--> 110 110 110

新建文件的最终权限: 110 110 100 即 664(rw- rw- r--)

 

粘滞位

一个文件一定属于一个目录,文件能否被新建和删除不由它本身决定,而与目录的权限有关

若是当张三和李四共处同一个目录下,由于当前目录的other有w权限,那么张三就可新建自己的文件,张三也可以删除自己建立的文件,但是李四也可以删除张三建立的文件,这就有点小bug了,那么粘滞位的出现,即可解决以上问题

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由
超级管理员删除及目录的拥有者删除

[root@localhost ~]# chmod +t /home/ # 加上粘滞位
[root@localhost ~]# ls -ld /home/
drwxrwxrwt. 3 root root 4096 9月 19 16:00 /home/
[root@localhost ~]# su - litao
[litao@localhost ~]$ rm /home/abc.c #litao不能删除别人的文件
rm:是否删除有写保护的普通空文件 "/home/abc.c"?y
rm: 无法删除"/home/abc.c": 不允许的操作

你可能感兴趣的:(Linux,linux)