二、权限管理
(一)权限相关基本概念
(1)引言
我们可以使用ls –l命令查看一个文件来认识权限在Linux中的体现
# ls -l /etc/passwd
-rw-r--r--. 1 root root 2093 12月 16 17:36 /etc/passwd
注意看前面共有十位,第一位是文件类型,而剩余9位即为权限位,每三位为一组,分别表示文件属主、属组和其他用户的权限。
(2)进程对文件的访问权限应用模型:
检查进程的属主与文件的属主是否相同;若相同,则应用属主权限;否则,就检查进程的
属主是否属于文件的属组;如果是,则应用属组权限否则,就只能应用other权限;
(3)权限分类:
r、w、x(读 read、写 write、执行 excute)
权限用八进制来表示 如下图
(4)权限管理命令
chmod
使用格式:
chmod[OPTION]... MODE[,MODE]... FILE...
chmod[OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE...
三类用户
u:属主
g:属组
o:其他
a:所有
① chmod [OPTION]... MODE[,MODE]... FILE...
MODE表示法:
赋权表示法:灵活组合使用,一次直接操作一类用户的所有权限位
u=MODE,g=MODE,o=MODE,a=MODE,亦可以ug=MODE
授权表示法:直接操作一类用户的一个权限位和多位,精细到一位
u+,u-
g+,g-
o+,o-
a+,a-
注意:+w 全局写很危险,所以此命令只对属主有效
② chmod [OPTION]... OCTAL-MODE FILE...
八进制权限位要给全(至少三位八进制)
注意: 若为三位以下,则右位有效,其结果很有可能并不是你期望的
结果
③ chmod [OPTION]... --reference=RFILE FILE...
引用性修改,根据某个参照文件来修改文件权限
选项:
-R,--recursive:递归修改
注意:此操作慎用(尤为注意执行权限的给出,给了目录中的文件会很危
险!!!)
# 给file1的属主和属组加上写权限
# chmod u+w,g+w file1
# chmod ug+w file1
# 给file1的属主和属组仅赋予写权限
# chmod 220 file1
注:此文是根据CentOS 7为例进行说明。如有错误及不足之处,欢迎指正。