Linux日记本_10:文件/目录的权限说明

简介: 权限的意义虽然Windows系统也号称多任务系统,但是它所做的只是给每个用户建立单独的文件夹,在文件权限的控制方面很弱,基本上可以随便删除其他用户的文件。

权限的意义

虽然Windows系统也号称多任务系统,但是它所做的只是给每个用户建立单独的文件夹,在文件权限的控制方面很弱,基本上可以随便删除其他用户的文件。而Linux系统是一个典型的多用户系统,不同的用户不但有不同的私有文件夹,而且为了保护系统的安全性,Linux系统对不同用户访问同一文件的权限做了不同的规定。

对于每一个具体的Linux系统中的文件来说,它的权限可以分为4种:读的权限、写的权限、执行的权限和无权限,分别用r、w、x和-表示,具体来说,分别是(r)ead,(w)rite,e(x)ecute和-的简写。不同的用户具有不同的读、写和执行的权限。

需要注意的是,并没有无权限是最低的、执行权限则是最高的这样的概念,它们是平行的。比如可以设定一个文件可以写但是不可以读。虽然从理论上来说,这样的设置毫无意义。

每一个文件都有一个特定的所有者,叫作owner,也就是对文件具有所有权的用户。

同时,由于在Linux系统中每个用户都会隶属于一个或者多个组,所以文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。因此,Linux系统按文件所有者、文件所有者同组用户和其他用户3类规定不同的文件访问权限Linux文件系统安全模型是通过给系统中的文件赋予两个属性来起作用的。赋予每个文件的这两个属性称为所有者(Ownership)和访问权限(Access Rights),Linux下的每一个文件必须严格地属于一个用户和一个组。

img_d88d13e2b0d6c6f5c9248283cd62ecfd.png
文件权限

rw-r--r--
这些符号用来描述文件的访问权限类别,长度一般为10位,其格式遵循下列规则:

第1个字符表示文件的类型。字符为“d”表示该文件是一个目录;“b”表示该文件是一个系统设备,使用块输入/输出与外界交互,通常为一个磁盘;“c”表示该文件是一个系统设备,使用连续的字符输入/输出与外界交互,如串口和声音设备:“.”表示该文件是一个普通文件,没有特殊属性;“-”表示为文件。
第2-4个字符用来确定文件的用户(owner)权限;第5~7个字符用来确定与owner相同的组(group)成员的权限;第8-10个字符用来确定文件的其他用户(other user,既不是文件所有者,也不是组成员的用户)的权限。其中,第2、5、8个字符是用来控制文件的读权限的,该位字符为r表示允许用户、组成员或其他人从该文件中读取数据,短线"-"则表示不允许该成员读取数据。与此类似,3、6、9位的字符控制文件的写权限,该位若为w表示允许写,若为"-"表示不允许写:4、7、10位的字符用来控制文件的创建权限,该位若为x表示允许执行,若为"-"表示不允许执行。记住,每一位只有两个选择:"-"或者该属性的缩写字母,表示是否具备相应的权限。

举个例子

drwxr-xr-x
1位上的字符是d,表示此文件是一个目录。
2~4位上的属性是rwx,表示用户root拥有权限列表显示此目录中所有的文件、创建新文件或者删除此目录中现有的文件,或者将此目录作为当前工作目录。
5~7位上的权限是r-x,表示root组的成员只拥有读和执行的权限。
8~10位上的权限是r-x,表示不是root的用户及不属于root组的成员同root组的其他成员拥有一样的权限。

目录
相关文章
|
2天前
|
算法 Linux Windows
Linux|如何查找和删除重复文件
Linux|如何查找和删除重复文件
8 1
|
1天前
|
Linux 数据处理
探索Linux下的readelf命令:深入了解ELF文件
`readelf`是Linux下分析ELF文件的命令行工具,用于查看文件头、节区、符号表等信息。支持可执行文件、共享库等多种类型。常用选项有`-h`(文件头)、`-l`(程序头)、`-S`(节区)、`-s`(符号表)、`-r`(重定位)和`-d`(动态节区)。结合其他工具如`objdump`,能深入理解二进制文件,助力开发和调试。
|
2天前
|
Web App开发 运维 监控
深入探索Linux命令pwdx:揭秘进程工作目录的秘密
`pwdx`命令在Linux中用于显示指定进程的工作目录,基于`/proc`文件系统获取实时信息。简单易用,如`pwdx 1234`显示PID为1234的进程目录。结合`ps`和`pgrep`等命令可扩展使用,如查看所有进程或特定进程(如Firefox)的目录。使用时注意权限、进程ID的有效性和与其他命令的配合。查阅`man pwdx`获取更多帮助。
|
2天前
|
Linux
linux不同场景下修改文件名的五种方法
linux不同场景下修改文件名的五种方法
6 1
|
4天前
|
存储 Linux 程序员
tar命令详解:linux文件打包神器
tar命令详解:linux文件打包神器
|
5天前
|
监控 Linux BI
【linux服务器系统盘爆满】/www/server/total/logs/目录内容过多导致服务器系统盘爆满,/www/server/total/logs/ 里是什么内容?是否可以删除?
【linux服务器系统盘爆满】/www/server/total/logs/目录内容过多导致服务器系统盘爆满,/www/server/total/logs/ 里是什么内容?是否可以删除?
10 1
|
6天前
|
存储 Linux 数据安全/隐私保护
linux解压zip文件命令
linux解压zip文件命令
|
7天前
|
Linux Go
【Linux基础】 文件基本属性
Linux文件基本属性是指文件或目录在Linux系统中具有的一系列特性和信息。这些属性提供了关于文件或目录的详细信息,包括其类型、权限、大小、创建和修改时间等。本篇文章带你详细了解Linux属性概念,以及怎样更改文件属性。
13 0
【Linux基础】 文件基本属性
|
2天前
|
Linux 数据处理 vr&ar
Linux下的ranlib命令:静态库文件的索引生成器
`ranlib`是Linux用于加速静态库(.a文件)链接的工具,它生成索引以优化查找目标文件。当链接器处理静态库时,索引能快速定位目标,提升效率。命令如`ranlib libexample.a`创建索引。注意,新工具链可能已自动包含此功能,使用前应确保库文件未含索引,避免重复生成。
|
2天前
|
关系型数据库 MySQL Shell
深入了解Linux /etc/passwd文件
深入了解Linux /etc/passwd文件
8 0