文件访问者的分类(人)
- 文件和文件目录的所有者:u – user
- 文件和文件目录的所有者所在的组的用户 : g-- Group
- 其他用户: o – other
文件针对不同的访问者有不容的权限
举例: 类似一群人吃饭 u 就是盘子的所有者 g表示和u坐同一个桌子的人
o表示其他桌子上的人
文件类型和访问权限(事物属性)
文件类型
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
基本权限
- r 可读
- w 可写
- x 可执行
文件权限值的表示方法
用二进制的三个位来表示 权限 分别对应 读 写 执行
例:
100 表示 r 111 表示 rwx
将二进制转化为八进制则可以用三个数来表示文件对不同用户类型的权限
如 777 表示三中类型的用户对文件都有 读写执行的权限
文件的访问权限的相关设置方法
只有文件的拥有者和root用户可以修改文件的权限
chmod 功能: 设置文件的访问权限
格式 chmod 参数 权限 文件名
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
例如:
chmod +x text.c 给所有类型加 可执行权限
chmod u-r text.c
chmod o+x text.c
三位8进制数字
chmod 777 text.c 直接给三中用户类似赋予777的权限
改变文件的拥有者和文件的所属组
chown 改变文件的拥有者
chgrp 改变文件的所属组
umask 掩码
新建文件默认权限 = 0666
新建目录默认权限 = 0777
实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask 实际创建出来的文件权限是 mask &(~umask),普通用户的umask 为0002 超级用户的默认为0022
掩码可以自己设定
file指令
功能:辨识文件类型
- -c显示指令执行过程
- -z 尝试去解读压缩文件的内容
目录的权限
- 可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.
- 可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.
- 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.
粘滞位
作用:让文件或目录只能被所有者或root用户删除,其他用户不能进行删除操作
基本格式:chmod 用户+t 文件名