【Linux】权限及其读写执行管理

本文详细介绍了Linux中的权限概念,包括用户分类(超级用户和普通用户)、文件属性的识别、权限的表示方法以及chmod、chown、chgrp等命令在设置文件和目录权限上的应用。特别强调了目录访问权限与文件权限的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么是权限

在我们日常的生活中

我们所接触的权限有,如:杰伦的歌曲大多需要vip才能听,普通用户却看不了,再如我们去看电影,要电影票才能进去观看,用来做区别事物的某种属性和人规则的方法就是权限。

权限的更深理解

  • 如果想要对某些文件具备某些权限,对应的事物需要具备对应的属性。
  • 如果一个事物天然不具备某种属性,那么这种属性的权限也便无异议。
  • 对不同事物A的权限,不能转向事物B,相同平行权限不能相互访问。

如:你本身是QQ音乐的vip用户,但是你想在爱奇艺看一部会员电影,这是QQ音乐连看会员电影的功能都没有还怎么谈权限?,你只有QQ音乐的会员,没有爱奇艺的会员,你怎么有权限看会员电影?

权限总结

  • 约束人的(对人进行分类)
  • 需要对应的事物具有特定的属性
  • 人和事物权限需要一一对应

有一个简单认识就够了~


2.权限管理

2.1 Linux的用户分类

Linux下有两种用户:超级用户(root)、普通用户(user)

  • 超级用户:可以再linux系统下做任何事情,不受限制。
  • 普通用户:在linux下做有限的事情。

超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。

其中超级用户root,其权限是最高的,它可以为所欲为,他可以下载一些程序为所有子用户使用,但是其他子用户却不行,子用户想切到root账号,必须输入密码,root切到子用户是直接进的。同时还可以以子用户的身份对其文件操作,神不知鬼不觉间实现偷鸡换蛋,而且root无视子用户的所有权限


2.2 Liunx文件的属性:

Linux系统不是以文件名 “ 后缀 ” 区分文件类型的,而是通过ll指令显示的 “ 第一个字符 ” 区分文件类型的。

比如一个test.c文件,我们在Linux下可以改成test,还是可以运行,在win就报错,这也是两个系统的区别

注意:

  • Linux不以文件后缀区分文件,并不代表gcc这样的编译器不做要求,系统关系后缀,但是在系统上跑的工具需要后缀。
  • Linux不以后缀区分文件类型,也可以成Linux并不排斥以后缀作为文件类型。

在这里插入图片描述
连接数
连接数对于目录文件,表示它的第一级子目录的个数。每个目录的默认连接数是2,因为每个目录下都有两个隐藏目录 . 和. . 分别表示当前目录和上一级目录,父目录里创建一个子目录,父目录的链接数增加1。对于其他文件,表示指向它的链接文件的个数。


2.3 Liunx文件的分类:

ll输出的七个字段中,第一个字段由10个字符组成的。其中第一个字符所代表的就是该文件的文件类型。不同的字符代表不同的文件类型

d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件 通过ll指令可以查看文件或目录的具体信息


2.4 Liunx文件的权限:

权限就是一件事情是否能被特定的人做。
ll输出的七个字段中,第一个字段的剩余9个字符三三为一组代表文件拥有者,所属组,其他用户的权限
在这里插入图片描述

从文件访问者角度来讲,可以分成三类:

  1. 文件和文件目录的所有者(文件拥有者user)。
  2. 文件拥有者所在的组的用户(文件所属组group)。
  3. 其他用户(other)。

从文件的权限属性,也可以分成三类:

  1. r(read - 可读):表示可读取此文件中的实际内容,例如,可以对文件执行 cat、more、less、head、tail 等文件查看命令。
  2. w(write - 可写):表示可以编辑、新增或者修改文件中的内容,例如,可以对文件执行 vim、echo 等修改文件数据的命令。
  3. x(execute - 可执行):表示该文件具有被系统执行的权限。在 Linux 系统中,文件是否能被执行,是通过看此文件是否具有 x 权限来决定的,只要文件拥有 x 权限,则此文件就是可执行文件。比如gcc编译后的可执行文件如果没有x的权限,那它就无法被执行。

高度的概念:权限 = 人 + 事物属性

所以权限的概念以及操作,都是围绕着人和文件属性展开的!

描述文件权限的时候,既要涉及到人,又要涉及到这个文件的属性。


2.5 Liunx文件权限的表示方法:

  1. 字符表示
    上面ll显示的rwx就是这种表示方式
    在这里插入图片描述

  2. 8进制表示
    rwx中三个字符的位置是固定的,要么为真,要么为假,因此可以将这三个字符换为三个二进制位,进而换为一个八进制位进行表示。
    在这里插入图片描述


2.6 文件访问权限的相关设置方法:

chmod对文件权限的修改
chmod:

功能: 设置文件的访问权限
格式: chmod [参数] 权限 文件名

用户表示符+/-=权限字符:

+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限

用户符号:

u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

下面写一共例子,这种就是多敲的,和早期学C语言一样
在这里插入图片描述
在这里插入图片描述


chown:
功能: 修改文件的拥有者
格式: chown [参数] 用户名 文件名

在这里插入图片描述
在上面我们可以看出,在修改文件的拥有者需要sudo提权。不过我们可以通过超级用户root,它可以直接强制将文件给任何人。

chgrp:
功能: 修改文件或目录的所属组
格式: chgrp [参数] 用户组名 文件名
在这里插入图片描述
修改所属组,同样也是也提权!


2.7 目录访问权限:

目录的可读可写可执行代表的含义与文件是不同的:

  1. 读权限(r)表示具有读取目录结构列表的权限,可以看到目录中有哪些文件和子目录。一旦对目录拥有读权限,就可以在此目录下执行 ls 命令,查看目录中的内容。
  2. 写权限(w)对于目录来说,w 权限是最高权限。对目录拥有 w 权限,表示可以对目录做以下操作:
  • 在此目录中建立新的文件或子目录;
  • 删除已存在的文件和目录(无论子文件或子目录的权限是怎样的);
  • 对已存在的文件或目录做更名操作;
  • 移动此目录下的文件和目录的位置。

对目录拥有 w 权限,就可以在目录下执行 touch、rm、cp、mv 等命令。

  1. 执行权限(x)目录是不能直接运行的,对目录赋予 x 权限,代表用户可以进入目录,也就是说,赋予 x 权限的用户或群组可以使用 cd 命令。
### 回答1: Linux读写执行权限命令包括: 1. chmod命令:用于修改文件或目录的权限,常用的参数有u、g、o、a、+、-、=等。 2. chown命令:用于修改文件或目录的所有者和所属组,常用的参数有-R、-c、-v等。 3. chgrp命令:用于修改文件或目录的所属组,常用的参数有-R、-c、-v等。 4. umask命令:用于设置新建文件或目录的默认权限掩码。 以上是常用的Linux读写执行权限命令,可以通过它们来管理文件或目录的权限和所有者。 ### 回答2: Linux系统中,文件有读(r)、写(w)、执行(x)三种权限,对应于三个用户组:文件的所有者、同组用户、其他用户。在Linux命令行中,可以使用chmod命令更改文件的读写执行权限。 chmod命令的语法如下: chmod [who] [operator] [permission] file 其中,who表示用户组,operator表示操作符,permission表示权限设置,file表示文件名或目录名。 用户组可以是u(文件的所有者)、g(同组用户)和o(其他用户),也可以是a(所有用户)。 操作符可以是+(添加权限)、-(减少权限)和=(仅设置指定权限)。 权限设置可以是r(读)、w(写)和x(执行),也可以是数字0-7,其中0表示没有权限,1表示执行权限,2表示写权限,3表示写和执行权限,4表示读权限,5表示读和执行权限,6表示读和写权限,7表示读、写和执行权限。 例如,要将file.txt文件的所有者的写权限和其他用户的读取权限添加进去,可以使用这个命令: chmod u+w,o+r file.txt 为了确保只有所有者能够读取、写入和执行文件,可以使用下面的命令: chmod u=rwx,go= file.txt 如果要将目录/dir的权限设置为所有用户都可以读取、写入和执行,可以使用下面的命令: chmod a=rwx /dir 在Linux中,正确管理文件和目录的读写执行权限非常重要,可以确保文件系统的安全性和可靠性。 ### 回答3: Linux系统中,文件和目录都有读、写、执行三种权限,这些权限可以通过命令进行设置和修改。 1. 读权限权限用r表示,有读取文件或目录内部内容的权限。 1.1 给文件添加读权限 可以使用chmod命令,其语法为chmod +r 文件名,或者chmod 644 文件名。其中,数字6表示拥有者具有读写权限,组用户和其他用户具有只读权限。 1.2 给目录添加读权限 可以使用chmod命令,其语法为chmod +r 目录名,或者chmod 755 目录名。其中,数字7表示拥有者、组用户和其他用户都具有读、写、执行权限。 2. 写权限权限用w表示,有修改文件或目录内部内容的权限。 2.1 给文件添加写权限 可以使用chmod命令,其语法为chmod +w 文件名,或者chmod 666 文件名。其中,数字6表示拥有者具有读写权限,组用户和其他用户具有读写权限。 2.2 给目录添加写权限 可以使用chmod命令,其语法为chmod +w 目录名,或者chmod 777 目录名。其中,数字7表示拥有者、组用户和其他用户都具有读、写、执行权限。 3. 执行权限 执行权限用x表示,有执行文件或目录的权限。 3.1 给文件添加执行权限 可以使用chmod命令,其语法为chmod +x 文件名,或者chmod 755 文件名。其中,数字7表示拥有者、组用户和其他用户都具有读、写、执行权限。 3.2 给目录添加执行权限 可以使用chmod命令,其语法为chmod +x 目录名,或者chmod 711 目录名。其中,数字7表示拥有者、组用户和其他用户都具有读、写、执行权限。 在实际应用中,还可以使用同时设置多个权限的方法,比如chmod 777 文件名,表示拥有者、组用户和其他用户都具有读、写、执行权限。 总之,正确设置文件和目录的权限能够保证Linux系统的安全性和稳定性,防止未授权用户或程序的访问和修改文件内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值