前言
文件系统权限可以用‘ll’或者‘ls -l’查看
第一位表示文件类型,后面9位三三一组分别表示属主,属组,其他用户权限
其中r对文件表示可读权限,如cat,tail,more,less等
对目录表示可以使用ls命令但不包含-l选项
w对文件表示可写权限,
对目录表示可以新建,如touch,mkdir等命令操作
x对文件表示可以执行,如bash,等
对目录表示可以查看属性,进入目录,如ls -l,cd等
一,文件系统安全模型
文件的九位属性转换成八进制后对应下面关系,这样在修改文件权限的时候我们可以直接使用八进制数字来操作,每一位八进制数字分别对应三位二进制数。
---:000 0 777 rwxrwxrwx
--x:001 1 776 rwxrwxrw-
-w-:010 2 760 rwxrw----
-wx:011 3 755 rwxr-xr-x
r--:100 4 640 rw-r-----
r-x:101 5 440 r--r-----
rw-:110 6 400 r--------
rwx:111 7 401 r-------x
二,修改文件权限<change mode>
chmod [选项] 权限 文件 <-R 递归修改,包括目录,子目录>
权限修改模式:
1.属主,属组,其他全部修改,# chmod 777 FILENAME
2.修改u,g,o,中的某类;# chmod u=r--,g=w-,o=rwx,<a=ugo> FILENAME
3.只操作某类用户的某位或某些位权限,u,g,o,a
# chmod u+rw FILENAME 增加文件属主的读写权限。
# chmod g-wx FILENAME 取消属组用户的写和执行权限
三,修改文件的属主和属组权限<管理员权限>
chown [选项] 用户 文件 <-R 递归修改,包括目录,子目录>
# chown --reference=book.txt test.txt 修改文件test.txt属主与book.txt相同
# chown USERNAME test.txt 修改文件属主为USERNAME
# chown :GROUPNAME test.txt 修改文件属组为GROUPNAME
chgrp [选项] 组 文件
四,管理员和普通用户创建文件和目录的默认权限
umask:遮罩码,查看遮罩码
普通用户:002
管理员:022
创建文件:666-umask <文件默认不能具有执行权限>
创建目录:777-umask
# umask 查看umask
# umask 023 设定umask,生效范围为当前shell,重启shell后设定重置