实验环境说明:RHEL7
文件的基本权限
首先,来看一下linux中文件的权限表示
[root@study exercise]# ll hh.txt
-rw-r--r--. 1 root root 76 2月 4 15:46 hh.txt
其中开头的 - 表示类型,-表示文件,若是d表示目录,剩余的这一串(rw-r--r--)可以平分三部分,具体见如下,后面的两个root分别表示拥有者和属组,后面的日期和文件名大家就熟悉了。
- 类型(这里表示文件,若是d则表示目录)
rw- 拥有者的权限
r-- 所属组的权限
r-- 其他人的权限
root 拥有者
root 属组
其中 r表示read,表示可读;w表示write,表示可写。其中还有一个权限,那么就是x,表示可执行。查看一个可执行的脚本文件,如下:
[root@study bin]# ll install
-rwxr-xr-x. 1 root root 142880 9月 12 2015 install
对于文件而言:
r(读):可以查看,不能更改,删除
w(写): 可插入
x(执行):一般指的是脚本文件
对于目录而言:
r:读(看到目录里面有什么及内容) ls
w:建文件、删除、移动 touch mkdir rm mv cp
x:进入 cd
其实字母表示只是展现给我们看的,计算机一切都是二进制表示的,不过用一堆的01可不太好分辨,那么实际上我们是用数字来表示权限(0,1,2,3,4,5,6,7)
0 代表什么权限也没有
1 =x 可执行的
2 =w 可写的
3 = w+x wx 可执行可写
4 r 可读的
5 r+x
6 r+w
7 r+w+x
其中,我们只要记住1,2,4即可,因为其他都是由这三个加加组成,如 5(rx) = 4(r)+ 1(x)。
为什么3不是x呢,这样子就好记多了,哈哈,其实这个0,1,2....不是我们人为规定的,看完下面你就懂了。
rw- r-- r--
110 100 100 二进制
6 4 4 十进制(方便我们记忆)
这里的十进制其实只是方便我们记忆罢了,其真实的对应着的是二进制。
Q:
rwx 的值是多少?
--x 的值是多少?
rw- -wx r-x 的值是多少?
答案(刮刮可看):问题一:7 问题二:1 问题三:635
修改文件权限
chmod
作用:修改文件权限
-a 所有的权限
-u 文件所有者的权限
-g 组权限
-o 其他用户的权限
可以使用运算符来设置权限 + - =
写多无意义,看完下面几个例子你就懂了。
设置文件权限为 rw- -wx r-x。
其实这样子也很是麻烦,上面的-a,-u什么的还没有用呢?,看下面
在上面的操作之上,删除用户的写权限。
写权限就是w喽,那么很简单,只要u-w就ok,这样就减去了,增加的话使用+就ok
如果你想给所有用户可读可写可操作呢?那么只要a+rwx 即可,如下: