权限的基本介绍
执⾏cd ~进⼊主⽬录之后,再执⾏ls -l,显示出的内容如下:
每个⽂件或⽂件夹前⾯的0-9位,都是⼀些符号和字⺟。⽐如hello.py⽂件的前⾯有:-rw-rw-r–,那
么这些字符代表什么意思呢?
1.第0位确定⽂件类型(d, -, l, c, b)。
l是链接,相当于windows的快捷⽅式。
d是⽬录,相当于windows的⽂件夹。
c是字符设备⽂件,⽐如:⿏标,键盘。
b是块设备,⽐如:硬盘。
-是⽂件。
2.第1-3位确定所有者(该⽂件的所有者)拥有该⽂件的权限。
3.第4-6位确定所在组,同⽤户组的成员,拥有该⽂件的权限。
4.第7-9位确定其他⽤户拥有该⽂件的权限。
rwx权限介绍
rwx作⽤到⽂件:
- [ r ]代表可读(read):可以读取,查看。
⽐如:现在⽤jing⽤户创建了⼀个hello.py⽂件。jing⽤户对该⽂件有r的权限,也就是可以读
那我们要如何证明jing⽤户可以读取hello.py⽂件中的信息呢?
我们可以使⽤cat指令。执⾏完cat hello.py后,发现没报错,说明jing⽤户可以读取hello.py中的信息。
但是什么都没有输出,这是因为hello.py⽂件本身就是空的
- [ w ]代表可写(write):可以修改。但是不代表可以删除该⽂件,删除⼀个⽂件的前提条件是对该⽂件
所在的⽬录有写权限,才能删除该⽂件。
修改⽂件,这个我们已经很熟悉了,直接使⽤vim hello.py。如下图所示,在⽂件中编辑:print(“hello
world~”)。然后再保存。
- [ x ]代表可执⾏(execute):可以被执⾏。
对于hello.py⽂件,jing⽤户并没有执⾏权限。
这是因为python3是⼀个解释器,只需要有读的权限,就可以执⾏hello.py。
如果不使⽤python3解释器,要如何才能执⾏hello.py呢?
简单来说,需要两步:1.编辑hello.py⽂件,并在开头加上#!/usr/bin/python3;2.执⾏./hello.py。执
⾏后,会出现报错,权限不够。这是因为che⽤户并没有执⾏权限