经过了入门篇的介绍,相信小伙伴们都已经了解了Linux文件权限的基础相关知识了,下面就来了解一下读写执行权限。
在Linux系统中,对于文件和目录的权限无外乎三个——读、写、执行。
(一)对于文件:
权限 | 作用 | 操作 |
r | 读取内容 | cat、more、head、tail |
w | 编辑、新增、修改文件内容 | vi、echo |
x | 可执行 |
对于读权限的常用操作:
cat(命令用于连接文件并打印到标准输出设备上,说白了就是将文件内容显示出来。)
more(类似cat命令,只不过会以一页一页的形式显示。)
head(是显示一个文件的内容的前多少行)
tail(显示文件的最后几行)
对于写权限的常用操作:
vi(使用vim编辑器对文件进行编辑)
echo(追加内容至文件末尾)
例:
echo 123 >> abc
对于文件的写权限,有一个需要特别注意的地方:
当前用户对于某一文件拥有写权限,并不代表就可以把该文件删除,还需要当前用户对该文件所处的目录拥有写权限才行。这样说可能有些读者不太明白,下面用图例来说明。
如图操作:
当前属于用户为user1,对于/home/user1目录下的目录123,只有其他人的操作权限,而下图的其他人的操作权限是,r - x 读和执行权限。
然后进入123目录以后,发现,123目录下的文件abc,对于其他人赋予了读、写权限 rw - 。
下面,进行尝试一下,删除abc,结果发现权限不够。
然后,使用root账号,对123目录其他者赋予写权限。
现在,user1对于abc目录拥有了写权限了。
现在,再来尝试删除一下123目录下的abc文件。
结果,删除成功!
总结:对于文件拥有写权限,并不能删除该文件,还必须对该文件所处目录拥有写权限,才可以删除该文件。
(二)对于目录:
权限 | 作用 | 操作 |
r | 可以查询目录下文件名 | ls |
w | 具有修改目录结构的权限。如新建文件和目录,删除目录下的文件和目录,重命名此目录下文件和目录,剪切 | touch,rm,mv,cp |
x | 可以进入目录 | cd |
总结一下:
对于文件来讲:最高权限是 x(执行权限)
对于目录来讲:最高权限是 w(写权限)
对于目录来讲:可操作的权限是 0 5(rx) 7(rwx),除此之外的权限,对目录都是无作用的,因为对于目录,如果拥有权限,必须得有读和执行权限,否则,无法操作目录。