linux下文件、目录、用户、用户组的管理详解从0到精通

权限的种类

在linux下,我们把权限分为以下三个:读、写、执行。

用户用户组 是否可以读取该 文件目录

用户用户组 是否可以对该 文件目录 写入数据

执行
加在文件上时: 用户用户组 是否可以执行该 文件
加在目录上时: 用户用户组 是否可以进入该 目录

权限的两个书写方式

上面是linux下三个权限的中文名,但在实际工作中并不会写中文,而是用英文或者数字来表示,以下列出了三个权限的两个表示方法。

中文英文数字
r4
w2
执行x1

可以看到读、写、执行 三个权限英文在linux中分别表示为r、w、x
他们的完整写法分别是:read, write, execute
可以发现 r 和 w 都是取首字母,但 x 是取中间的字母。死记就行了,linux就这么规定的。

那么接下来的 数字 表示方法也是很简单,如果记不住可以倒过来看。
执行,写,读分别是 1,2,4
可以发现最开始是从 1 开始的,后面依次 x2

英文 和 数字 的加粗样式写法都要记住,这在后面的学习中会频繁用到。

查看权限

通常会使用linux自带的命令 ls -l 来来查看当前目录下的 文件和目录 的权限

ls -l

在这里插入图片描述
终端会输出一大堆内容,看起来很复杂,也许我不说只能看懂有 文件和目录 的名字还有日期。

那么以下是对于输出内容的大致图解:
在这里插入图片描述

权限详解

在上图的红色区域就是显示了该 文件/目录所有权限

看起来有很多,其实里面分为 4 块:
在这里插入图片描述

我们所要关注的就是 权限位,所属用户,所属用户组,至于链接数不重要。

简单说下链接数吧,不想看可以跳过:

对于文件来说:
链接数指的是在磁盘中指向该文件的个数。而该文件被创建时,就已经给它了一个索引,用于找到该文件。所以对于文件来说,它的链接数至少有一个。我们也可以通过创建 软链接 的方式 添加该文件的索引数量(链接数),如下:

在这里插入图片描述

对于目录来说:
链接数指的是该目录下 第一层 的所有目录数量,包括 . 和 .. ,所以一个目录下至少存在 2 个链接数,可以通过在该目录的 第一层 创建目录来增加链接数,如下:

在这里插入图片描述

权限位

在这里插入图片描述

在权限位中看起来有很多看不懂的字母,但是我们可以看到之前所熟悉的,比如r,w,x这三个
不妨把他们拆开来看,以第一行为例:

drwxr-xr-x

我们把它拆成4个部分来看:
在这里插入图片描述

这些权限应该结合后面 所属用户 和 所属用户组 来看

就像这样:
在这里插入图片描述

那么这一行输出内容的权限信息换成人话就是:

目录Desktop的所属的用户是cancerai所属的用户组是cancerai
用户cancerai 对目录Desktop所拥有的权限有 读,写,执行
用户组cancerai 对目录Desktop所拥有的权限有 读,执行
其他用户 对目录Desktop所拥有的权限有 读,执行

注:在权限为里显示 - 表示没有该权限,权限位每组的权限都是按照读,写,执行的顺序显示的。

读,写,执行 权限详解


读:
对于文件
可以读取该文件里面的所有内容

对于目录
可以看到该目录,注意是可以在当前目录内看到该目录,而不是能进入该目录内,如果需要进入该目录需要执行权限,举个例子(目录test没有执行权限,但有读权限):

在这里插入图片描述
可以发现,会显示Permission denied(权限不足),当我们再加上执行权限就可以进入了:

在这里插入图片描述

那么还有一种情况,当一个目录没有读权限,只有执行权限呢?

在这里插入图片描述

会发现,虽然可以进入test目录,但是不能访问test目录下的内容。

因此我们得到一个结论:
当一个目录同时有读,执行权限时,可以进入并访问该目录下的内容
当一个目录只有读,但没有执行权限时,可以进入并访问该目录下的内容
当一个目录没有读,但有执行权限时,可以进入但不能访问该目录下的内容


写:
对于文件
可以对该文件进行写入操作

对于目录
可以在该目录里写入(创建)文件或目录
注: 当一个目录没有写权限,但是这个目录里的文件有写权限,那么这个文件也是可以被写入数据的。如下:

在这里插入图片描述

执行:
对于文件
在linux下一个文件能不能执行不是取决于后缀名,而是取决于权限中是否有 执行 权限
举个例子,下面有个名为demo.sh的文件,里面是正确的shell代码,但没有执行权限:

在这里插入图片描述

可以看到,虽然后缀名是sh,但是没有给执行权限还是显示Permission denied(权限不足)
当我们给它权限后就可以成功执行了:

在这里插入图片描述

总的来说:
在linux下不像windows中关注扩展名,在linux中关注的是权限,要有执行权限才能是该文件执行起来。


对于目录:
关于目录执行权限的,之前在读权限已经讲过了,没注意看的可以再返回去看看。

修改权限

前面已经说过了每个权限对于文件和目录的一些知识点,细心的会发现,在我上面演示的文件和目录中,权限经常在变。这就需要讲到文件/目录权限的修改,基本命令很简单,语法如下:

chmod 权限码 文件/目录名

其中文件/目录名很好理解,那么权限码是什么?
还记得最开始让你们记的权限的数字表达形式吗,没错就和那个有关

中文英文数字
r4
w2
执行x1

英文那一列就不用管了,主要看中文和数字的对照表
举个例子来说吧:

chmod 553 file

553分别代表了用户,用户组,其他用户的权限,对照者上面的表格就能发现553的由来:
5 = 4(读) + 1(执行)
5 = 4(读) + 1(执行)
3 = 2(写) + 1(执行)

翻译成人话就是:
该文件所属的用户对该文件所拥有的权限有 读 和 执行
该文件所属的用户组对该文件所拥有的权限有 读 和 执行
其他用户对该文件所拥有的权限有 写 和 执行

这下应该能恍然大悟了
总结来说就是:每一组的权限位都是每种权限对应的数字之和。
注:当权限位显示 - 时,用0表示

举个例子:
使用 ls -l 输出以下内容:

drwxr-xr-x 1 cancerai cancerai 1 Jan 16 15:58 file

那么把权限用英文转换为数字
先看用户权限:
r(4) + w(2) + x(1) = 7
接着用户组权限:
r(4) + 0 + x(1) = 5
最后其他用户权限:
r(4) + 0 + x(1) = 5
最后得到 rwxr-xr-x 转换为权限码就是 755


以下是修改权限的一些案例,自己可以跟着练习下:

test 文件的权限改成
用户可读,可写,可执行
用户组可读,可写,不可执行
其他用户可读,不可写,不可执行

答案:

chmod 764 test

还是比较简单的。
注:之前一直都在说文件的权限修改,目录的权限修改也是一模一样的,没有任何区别。
在修改目录的权限中有一个常用的参数,-R,语法如下:

chmod -R 权限码 文件/目录名

它可以遍历该目录下所有的文件和目录(包括所有子目录),把他们的权限都改成指定的权限,例如以下:

在这里插入图片描述


修改所属用户/用户组

修改用户或用户组就简单多了,不用管权限什么的,直接放语法:

#修改所属用户
#chown全名change owner,译为修改拥有者
chown 用户名.用户组 文件/目录名


#修改所属用户组
#chgrp全名change group,译为修改组
chgrp 用户组 文件/目录名

这时候会发现,chown不仅可以修改用户还能修改用户组,没错哈
不仅chown可以修改这两个,还能只修改用户组,或者只修改用户:

#只修改用户
chown 用户 文件/目录名

#只修改用户组
chown .用户组 文件/目录名

你没看错,只用chown修改用户组,但和chgrp不同的是,在chown中修改用户组需要在前面加个点 “ . ”,用哪个都是一样的。

以下是关于这两个命令的示例用法:

用chown只修改用户,因为我这边是修改成root,所以需要root权限才行,前面加个sudo

在这里插入图片描述

用chown只修改用户组

在这里插入图片描述

用chown只修改 用户 和 用户组

在这里插入图片描述

用chgrp修改用户组

在这里插入图片描述


总结

那么到这里所有的关于linux下管理权限常用的命令全部讲解完,如有不对的可以在评论区指出,欢迎大家提出错误
喜欢我的文章就点个赞+收藏+关注吧

  • 27
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CxA-小爱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值