前言
Linux系统中的每个文件和目录都有访问许可权限,用以确定谁可以通过何种方式对文件和目录进行访问和操作。要想流畅的使用Linux系统,掌握文件权限管理必不可少。今天给大家介绍这方面的知识,希望能帮助大家更好的入门Linux。
查看文件或文件夹权限信息
随便进入一个目录,输入如下命令列出目录下文件的详细信息
ls -l
可以看到每一行都是一个文件或文件夹的信息,一共包括七列:
其中第一列的文件权限信息是非常重要的,它由十个字符组成:
改变文件或目录的权限
我们可以使用 chmod 命令来改变文件或目录的权限,有2种用法:
一种是数字权限命名,这种方法把 rwx 对应一个二进制数字,如 101 就代表拥有读取和执行的权限,而转为十进制的话,r 就代表 4,w 就代表 2,x 就代表 1,然后三个数字加起来就和二进制数字对应起来了。如 7=4+2+1,这就对应着 rwx;5=4+1,这就对应着 r-x。所以,相应地 777 就代表了 rwxrwxrwx,即所有者、所属用户组、其他用户对该文件都拥有读取、写入、执行的权限,这是相当危险的!例如我要为一个 species.txt 赋予 777 权限,就写成:
chmod 777 species.txt
结果如下图
现在我们想把权限改为和原来一样的,通过之前截图可以知道权限为 -rw-rw-r-- 对应数字权限是664,因此可以使用如下命令来恢复
chmod 664 species.txt
另一种方法使用代号来赋予权限,代号有 u、g、o、a 四种,分别代表所有者权限,用户组权限,其他用户权限和所有用户权限,这些代号后面通过 + 和 - 符号来控制权限的添加和移除,运算符号后面跟上权限类型就好,例如给所有者移除 w 权限,也就是写入权限,使用如下命令:
chmod u-w species.txt
结果如下所示,可以看到文件所有者的w权限已经被移除
如果想让文件所有者恢复w权限,则可以使用如下命令:
chmod u+w species.txt
结果如下图,可以看到文件所有者的w权限已经恢复了
总结
Linux下文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限表示允许将该文件作为一个程序执行。另外,文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。用户也可根据需要把访问权限设置为需要的任何组合。