在Linux系统中,使用 ls-al
命令查看文件的时候,通常会看到这排东西
这个东西就代表了该文件的权限
首先,文件权限的表示是三个位一个单位,总共三部分
从左到右数
-rwxrwxr-x. 1 root root 11 Dec 20 14:21 e.sh
前三个 rwx
代表了该文件的拥有者的权限,中间的 rwx
则代表该组的权限,最后三个 r-x
则表示其他人对这个文件的权限
如何查看该文件谁是拥有者,哪个对应的组呢
我先拿普通用户 elapse
创建一个文件 test.sh
其中,第一个 elapse
的位置,写着的是该文件所有者的名字,后一个 elapse
记的是所有组的名字,除了这个人和这个组外的,文件权限管理中就属于 other
,其他人(当然root用户在这个系统是为所欲为的)
那么解释一下 rwx
分别是什么意思
r的意思是 read
,也就是可读取
我现在有一个文件,对其他人的权限是只读 r--
(因为在图中w和x的位置是-,所以代表没有该权限),那么非root用户,非root组的人就只能用cat来查看文件内容,而不能修改、执行
尝试:
w呢,就是 write
,也就是文件写入的操作,如果没有此权限,则无法对文件内容进行修改
x就是执行,在Linux系统中,如果该可执行文件,如 .sh
文件等,没有对应的x权限,则无法使用,使用的时候会提示权限不足
那么问题来了
如果说,我有x权限,但是没有rw权限咋整,答案是执行失败,如果想执行程序,至少得有r-x(可读可执行)这两个权限
那么看完了“单词版”的权限,现在说一说“数字版”的权限
在Linux系统中,权限是用数字来表达的,最高权限为 777
那么如何通过数字来看是什么权限呢
首先说一下每一个权限对应的数字是多少
r=4 w=2 x=1
那么一个文件可读可写可执行,则为
r + w + x =7
4 + 2 + 1 =7
常见的数字有
7(rwx 可读可写可执行)
6(rw- 可读可写不可执行)
5(r-x 可读不可写可执行)
4(r-- 可读不可写不可执行)
3(-wx 不可读可写可执行) |并不可以执行,也不可以写,因为不能读取
2(-w- 不可读可写不可执行) |并不可以写
1(--x 不可读不可写可执行) |并不可以执行
然后三个数字,777,分别对应的是
7 7 7
所有者 所有组 其他人
所有者 所有组 其他人
https://www.cnblogs.com/huchong/p/9075201.html#lab22_0