目录
- 1. 权限的基本介绍(文件 / 目录)
- 2. rwx 权限详解
- 2.1 rwx 作用到文件
- 2.2 rwx 作用到目录
- 3. 文件及目录权限实际案例
- 4. 修改权限-chmod
- 4.1 基本说明
- 4.2 第一种方式:+ 、- 、= 变更权限
- 4.3 第二种方式:通过数字变更权限
- 5. 修改文件所有者-chown
- 5.1 基本介绍
- 5.2 案例演示
- 6. 修改文件所在组-chgrp
- 6.1 基本介绍
- 6.2 案例演示
- 7. 最佳实践-警察和土匪游戏
1. 权限的基本介绍(文件 / 目录)
ls -l 中显示的内容如下:-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
1)第 0 位确定文件类型(d,-,l,c,b)
2) 第 1-3 位确定所有者 (改文件的所有者)拥有该文件的权限。---User
3)第 4-6 位确定所属组 (同用户组的)拥有该文件的权限。---Group
4)第 7-9 位确定其他用户该文件的权限。---Other
图1
2. rwx 权限详解
2.1 rwx 作用到文件
1)[r]代表可读(read):可以读取,查看
2)[w]代表可写(write):可以修改,但是不代表可以删除改文件,删除一个文件的前提是对该文件所在的目录有写权限,才能删除该文件。
3)[x]代表可执行(execute):可以被执行
2.2 rwx 作用到目录
1)[r]代表可读(read):可以读取,ls 查看目录内容
2)[w]代表可写(write):可以修改,目录内创建 + 删除 + 重命名目录
3)[x]代表可执行(execute):可以进入该目录
3. 文件及目录权限实际案例
ls -l 中显示的内容如下:(记住)-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
解释如下:
10个字符确定不同用户能对文件干什么
第一个字符代表文件类型:文件(-),目录(d),链接(l)
其余字符每 3 个一组(rwx)读(r)写(w)执行(x)
第一组rwx:文件拥有者的权限是读、写和执行
第二组rw-:与文件拥有者同一组的用户的权限是读、写但不能执行
第三组r--: 不与文件拥有者同组的其他用户的权限是读不能写和执行
可用数字表示为:r = 4,w = 2,x = 1 因此 rwx = 4 + 2 + 1 = 7
1 文件:硬链接数或 目录:子目录数
root 用户
root 组
1213 文件大小(字节),如果是文件夹,显示 4096 字节
Feb 2 09:39 最后修改日期
abc 文件名
4. 修改权限-chmod
4.1 基本说明
通过 chmod 指令,可以修改文件或目录的权限
4.2 第一种方式:+ 、- 、= 变更权限
u: 所有者 g:所有组 o:其他人 a:所有人 (u、g、o 的总和)
1)chmod u=rwx,g=rx,o=x 文件目录名
2)chmod o+w 文件目录名
3)chmod a-x 文件目录名
- 案例演示
1)给 abc 文件的所有者读写执行的权限,给所在组读执行权限,给其他组读执行权限
图2 - 2)给 abc 文件的所有者除去执行的权限,增加组写的权限
图3 - 3)给 abc 文件的所有用户添加读的权限
图4
4.3 第二种方式:通过数字变更权限
规则:r=4 w=2 x=1 ,rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件目录名
相当于 chmod 751 文件目录名
- 案例演示
要求:将 /home/abc.txt 文件的权限修改成 rwxr-xr-x,使用给数字的方式实现
rwx=4+2+1=7
r-x=4+1=5
r-x=4+1=5
指令:chmod 755 /home/abc.txt
5. 修改文件所有者-chown
5.1 基本介绍
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所在组
-R 如果是目录 则使其下所有子文件或目录递归生效
5.2 案例演示
1)请将 /home/abc.txt 文件的所有者修改成 tom
图5
2)请将 /home/kkk 目录下所有的文件和目录的所有者都修改成 tom
首选使用root操作
图6
6. 修改文件所在组-chgrp
6.1 基本介绍
chgrp newgroup file 改变文件的所有组
6.2 案例演示
1)请将 /home/abc.txt 文件的所在组修改成 bandit(土匪)
chgrp bandit /home/abc.txt
2)请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 bandit(土匪)
chgrp -R bandit /home/kkk
图7
7. 最佳实践-警察和土匪游戏
police, banlit
jack,jerry:警察
xh,xq:土匪
(1)创建组
bash>groupadd police
bash>groupadd bandit
(2)创建用户
图8
(3)jack 创建一个文件,自己可以读写,本组人可以读,其他组没有任何权限
图9
(4)jack 修改该文件,让其他组可以读,本组可以读写
图10
(5)xh 投靠警察,看看是否可以读写
先用 root 修改 xh 的组:
图11
使用 jack 给他的家目录 /home/jack 的所在组一个 rx 的权限
图12
xh 需要重新注销 再到 jack 目录就可以操作 jack 的文件
图13