【几个重要前情提要】
(1)root是超级用户,拥有最高权限。
(2)用户组:代表一个组别,类似一个团队,可进行协同工作。
(3)每个用户都有自己归属的组别,每个用户可以归属于一个或多个组别。在新建用户时,若使用默认方式,则组别新建,自己属于一个组。
【几个常用的命令】
① 查看目前用户在建立文件和目录时候的权限默 umask
语法:
(1) umask ==》直接输入umask
就可以看到数字类型的权限设置值,第一位数字表示特殊权限,后三位数字表示一般权限
(2)umask -S ==》以符号类型的方式进行显示权限默认权限:
文件:文件默认没有可执行权限,即只有rw这两个项目,最大八进制数表示为666; -rw-rw-rw-
目录:则由于x与是否可以进入此目录有关,默认所有权限开放,最大八进制数表示为777 ;drwxrwxrwx
【注意】:umask的数字指的是该默认值要减掉的权限,r,w,x 分别代表4,2,1。删掉了什么权限,umask的数字就显示对应数字。
② 修改文件属性与权限
(1)修改文件所属用户组 chgrp 更改一个文件的归属用户组。【常用】
【前提】:该用户组的组名必须在/etc/group中存在,否则会报错。
【语法】:chgrp [选项] 目标用户组名 文件名/文件夹名
【常用选项列举】:
-R :进行递归修改,亦即连同子目录下的所有文件、目录都更新为指定的目标用户组。
(2)修改文件拥有者 chown
===》 更改文件的拥有者。
【前提】:该用户必须是已经存在系统中的账号,即在/etc/passwd这个文件中存在,否则会报错。
【语法】:
chown [选项] 目标账号名称 文件或目录
chown [选项] 目标账号名称 :用户组名称 文件或目录
(同时修改拥有者和用户组)
【常用选项列举】:
-R :进行递归修改,亦即连同子目录下的所有文件、目录都更新为指定的目标用户组。
(3)修改文件权限 chmod 【常用】
权限的设置方式有2种,分别为使用8进制数和符号进行权限的修改。
Linux文件的基本权限为9个,分别为拥有者、所属群组、其他人三种身份,每种身份都有读、写、执行三种权限。文件的权限字符为:【-rwxrwxrwx】
这9个权限三个三个一组法一、8进制数表示
【计算方法】 :rwx 分别为8,4,1
【注意】:rwx的顺序不可更改,权限对应位置计算8进制数,然后求和 ====》 一个身份的权限数字表示,其他2个身份(2组)一样方式计算,最后按照拥有者、所属群组、其他人的顺序摆放(顺序不可改变),即得最终的权限数。
【语法】: chomd [选项] xyz 文件或目录
【常用选项列举】:
-R :进行递归修改,亦即连同子目录下的所有文件、目录都更新为指定的目标用户组。
xyz :数字类型的权限属性,为rwx八进制数之和的顺序拼接。法二、符号类型表示进行权限修改
用u、g、o来表示三种身份的权限,a代表all,表示全部的身份,读、写、执行的权限就表示为r、w、x
【语法】: 下方表格
| chmod | u /g /o /a | +/-/= | r w x | 文件或目录 |
|---|
例如:
chmod u=rwx,g=rx,o=r filename chmod a+r filename
【补充】
权限的意义:
(1)r:
对文件:读权限,表示可读取此文件的实际内容。
对目录:当读取一个目录的权限时,可以利用ls命令将该目录下的内容列表显示出来,查询该目录下的文件名数据。
(2) w:
对文件:写权限,表示可以写入、编辑、新增或是修改该文件的内容(但不含删除该文件),不具备删除该文件的权限。
对目录:允许改动该目录结构列表的权限
- 建立新的文件或目录
- 删除已经存在的文件与目录(不论该文件的权限是什么)
- 将已存在的文件或目录进行更名
- 移动该目录内的文件、目录位置
(3)x:
对文件:执行权限,表示该文件具有可以被系统执行的权限。
对目录:表示用户能否进入该目录成为工作目录 执行cd的权限 若未开放权限(x),则当前用户无法进入该目录。
【注意】:要开放目录给任何人进行浏览时,至少要基于r及x的权限,但w的权限不可随便给。



