零、学习目标
- 掌握查看Linux文件的权限管控信息
- 掌握读、写、执行三种权限的含义
- 掌握使用chmod修改权限信息
- 掌握使用数字序号标记权限
- 掌握使用chown修改所属用户、用户组
一、查看权限控制
- 通过
ls -l
可以以列表的形式查看内容,并显示权限细节 - 序号1,表示文件、文件夹的权限控制信息 - 序号2,表示文件、文件夹所属用户 - 序号3,表示文件、文件夹所属用户组
1、权限控制信息
- 权限控制信息总共分为10个槽位
举例:drwxr-xr-x
,表示: - 这是一个文件夹,首字母
d
表示 - 所属用户(序号2)的权限是:有
r
有w
有x
,rwx
- 所属用户组(序号3)的权限是:有
r
无w
有x
,r-x
(-
表示无此权限) - 其它用户的权限是:有
r
无w
有x
,r-x
2、rwx权限解读
r
表示读权限w
表示写权限x
表示执行权限- 针对文件、文件夹的不同,
rwx
的含义有细微差别r
,针对文件可以查看文件内容;针对文件夹,可以查看文件夹内容,如ls命令w
,针对文件表示可以修改此文件;针对文件夹,可以在文件夹内:创建、删除、改名等操作x
,针对文件表示可以将文件作为程序执行;针对文件夹,表示可以更改工作目录到此文件夹,即cd进入
3、案例演示
- 执行
cd /
命令,进入根目录
可以进入根目录,则表明当前用户对根目录拥有执行权限x
- 执行
ls -l
命令,读取根目录文件夹的内容
读取成功,表明当前用户对根目录拥有读权限r
- 执行
touch test.txt
命令,创建文件
执行成功,表明当前用户对根目录拥有写权限w
二、chmod命令
- 我们可以使用chmod命令,修改文件、文件夹的权限信息。
注意,只有文件、文件夹的所属用户或root用户可以修改。
语法:chmod [-R] 权限 文件或文件夹
选项:-R
,对文件夹内的全部内容应用同样的操作
语法示例:
chmod u=rwx,g=rx,o=x hello.txt
,将文件权限修改为:rwxr-x--x
chmod -R u=rwx,g=rx,o=x test
,将文件夹test
以及文件夹内全部内容权限设置为:rwxr-x--x
其中:u
表示user
所属用户权限,g
表示group
组权限,o
表示other
其它用户权限
案例演示:
- 创建
test
文件夹
- 创建
test.txt
文件
- 查看权限信息
- 修改
test.txt
文件的权限,所属用户拥有全部权限,所属组只有读权限,其他用户只能写
可以发现test.txt
文件的权限已经被修改了 - 创建一个
1.txt
文件,将test.txt
和1.txt
文件移入test
文件夹内
- 修改
test
文件夹的权限,所属用户只能读,所属用户组只能写,其他用户只能执行
- 修改
test
文件夹及包含所有文件的权限
除此之外,还有快捷写法:chmod 751 hello.txt
将hello.txt的权限修改为751
那么问题来了,751
表示什么意思呢?
权限的数字序号
权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。
数字的细节如下:r
记为4
,w
记为2
,x
记为1
,可以有:
-
0
:无任何权限, 即---
-
1
:仅有x
权限, 即--x
-
2
:仅有w
权限,即-w-
-
3
:有w
和x
权限,即-wx
-
4
:仅有r
权限,即r--
-
5
:有r
和x
权限,即r-x
-
6
:有r
和w
权限,即rw-
-
7
:有全部权限,即rwx
所以751
表示:rwx(7) r-x(5) --x(1)
小练习: -
将
hello.txt
的权限修改为:r-x--xr-x
-
将
hello.txt
的权限修改为:-wx-w-rw-
-
将hello.txt的权限修改为:
123
三、chown命令
使用chown
命令,可以修改文件、文件夹的所属用户和用户组
普通用户无法修改所属为其它用户或组,所以此命令只适用于root
用户执行
- 语法:
chown [-R] [用户][:][用户组] 文件或文件夹
选项,-R
,同chmod
,对文件夹内全部内容应用相同规则
选项,用户,修改所属用户
选项,用户组,修改所属用户组
:
用于分隔用户和用户组
案例演示:
chown alice hello.txt
,将hello.txt
所属用户修改为alice
chown :alice hello.txt
,将hello.txt
所属用户组修改为alice
chown root:smith hello.txt
,将hello.txt
所属用户修改为root
,用户组修改为smith
chown -R alice test
,将文件夹test
的所属用户修改为root
并对文件夹内全部内容应用同样规则