当前位置:首页>Linux>linux文件权限

linux文件权限

  • 2026-10-11 07:46:36
linux文件权限

linux文件权限

无规矩不成方圆

前期网络中,各种数据的传递、协议的交互都存在规矩。

操作系统内,对文件的操作权限同样有着井然有序的规矩。

linux系统内,root 拥有操作系统层面的最高控制权。

一、普通文件权限

二、目录/文件夹权限

三、linux内文件权限表示方法

四、权限的十进制表示方法

五、实战

六、实战翻车

在linux里,读-r 写-w 执行-x 是针对普通文件和目录的三种不同权限。

一、普通文件权限

1)读 (r - Read)

含义:允许你查看文件的内容。

能做什么:你可以用 cat、less、more 等命令查看,或者用编辑器打开读取。

不能做什么:你不能修改它,也不能运行它(除非也有执行权限)。

2)写 (w - Write)

含义:允许你修改、删除文件的内容。

能做什么:你可以用编辑器(如 vim)修改并保存,或者用 echo "内容" > 文件 覆盖内容,也可以用 rm 删除该文件。(像windows用txt文本工具编辑文件)

注意:只要拥有写权限,哪怕文件里没有内容,你也可以把它清空。

3)执行 (x - Execute)

含义:允许你把该文件当作一个程序或脚本来运行。

能做什么:如果是一个脚本(如 .sh)或二进制程序(如 .exe 的 Linux 对应版),你可以直接在终端输入路径来运行它(例如 ./script.sh)。

注意:对于普通的文本文档(如 .txt),给执行权限通常没有实际意义。

误区一:能写一定能读

linux有个工具echo,可将内容直接写入到普通文件内,而不需要打开文件,不需要知道里边的内容。

误区二:能执行一定能读

个人理解,文件的各种权限都是针对使用者(系统内的用户),而不是针对底层的各种硬件。

像windows的system内很多文件,随系统运行,但我们无权查看文件内的数据或代码。

linux内同理,可运用各种工具把可执行文件加载到内容供cpu执行,但我们不知道它执行的啥代码。

事实上,能执行的基本都能读,毕竟linux是开源的。不能读的反而出了问题(见-六、实战翻车)

二、目录/文件夹权限

上次讲过,目录本身其实也是一个文件,只是文件内又含其他文件。

1)读 (r - Read)

含义:允许你查看目录里有哪些文件(即列出目录清单)。

能做什么:你可以使用 ls 命令看到目录下的文件名列表。

限制:如果你只有 r 而没有 x,你只能看到文件名,但无法进入该目录,也无法查看文件的详细信息(如文件大小、权限等)。

2)写 (w - Write)

含义:允许你在该目录下创建、删除、重命名文件。

能做什么:你可以使用 touch 新建文件,mkdir 新建文件夹,rm 删除里面的文件,mv 重命名文件。

关键点:只要你对目录有写权限,哪怕你对目录里的某个文件没有写权限,你依然可以删除那个文件!(因为删除文件是修改了目录的结构,而不是修改文件本身的内容)。

依赖:通常需要配合 x 权限才能生效。

3)执行 (x - Execute)

含义:允许你进入该目录(也叫搜索权限)。

能做什么:你可以使用 cd 命令进入该目录。更重要的是,它是你访问目录下具体文件信息的“通行证”。

限制:如果你只有 x 而没有 r,你可以 cd 进去,也可以访问里面已知名字的文件(比如 cat /dir/file.txt),但你无法使用 ls 列出里面到底有哪些文件(因为你不知道名字)。

三、linux内文件权限表示方法

①文件类型。-普通文件,d目录,l链接文件,b、c设备文件

②所有者权限

③所属组权限

④other其他人权限

⑤链接数。普通文件表示硬链接数量,目录表示子目录个数

⑥所有者

⑦所属组

⑧目录文件本身占用大小,通常4096

⑨最后一次修改时间

⑩文件名&目录名

四、权限的十进制表示方法

为了省略一连串的r、w、x,方便表示,通常用十进制数字代替表示用户权限。

如果一个文件对应的用户只有读r和执行x的权限,那么可以简写“5”(4+1的结果)。

十进制数字相互加的结果只能有 7、6、5、4、3、2、1、0。权限对同一文件只能赋予一次,结果相互之间也不会有重复。(没有任何权限用0表示)

对应到第三节示例中第一行,所有者权限、所属组权限、other其他人权限可以表示成775。

第二行可以表示成700。

700这个权限,反映出了文件权限匹配的流程。

(类似网络ACL中,当一条流量同时符合多条规则时,系统会优先选择 IP 掩码最长(最精确)的那条规则来执行)。

linux检查权限时,是按照 “用户(User) -> 用户组(Group) -> 其他人(Others)” 的顺序。

通常,文件所有者拥有绝对权限,所有者所属的用户组却没有任何权限。

五、实战

实践是检验真理的唯一标准

①用户有读、写权限,没有执行权限。默认用文本编辑器打开。

②用户有读、写权限,有执行权限。

(有读,没有写,有执行,也可以作为程序正常运行)

右键>>作为程序运行

六、实战翻车

只有执行权限,没有读写,却无法执行,为什么呢?

AI也是明显的胡说八道……

学习嘛,就是要不断发现问题和探索未知…………

最新文章

随机文章