本章主要讲解Linux权限的知识
Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel) “ ,但我们一般不能直接使用kernel,而是通过kernel的“外壳”程序(shell),来与kernel沟通
Shell是命令行解释器的统称,而bash的具体的一种命令行解释器
注:超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
文件和文件目录的所有者: u—User 文件和文件目录的所有者所在的组的用户: g—Group 其它用户: o—Others 注:group的意义是在保证文件安全的前提下,进行组内协同
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
读(r): Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
写(w): Write对文件而言,具有修改文件内容的权限;对目录来说,具有删除移动目录内文件的权限
执行(x): execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
“—”:表示不具有该项权限
chmod [参数] 权限 文件名
功能:
设置文件的访问权限
R -> 递归修改目录文件的权限
注:只有文件的拥有者和root才可以改变文件的权限
用户表示符+/-=权限字符:
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
chmod 三位8进制数字
chown [参数] 用户名 文件名
修改文件的拥有者
R -> 递归修改目录文件的权所有者
chgrp [参数] 用户组名 文件名
修改文件或目录的所属组
-R 递归修改文件或目录的所属组
功能:
查看或修改文件掩码
file [选项] 文件或目录…
辨识文件类型
-c 详细显示指令执行过程,便于排错或分析程序执行的情形
-z 尝试去解读压缩文件的内容
可执行权限: 如果目录没有可执行权限, 则无法cd到目录中 可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件 注:只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写 权限
chmod +t 目录
当一个目录被设置为"粘滞位"(用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": 不允许的操作