Linux之文件权限

最易懂最详细的文件权限

1.chgrp: 改变档案所属群组

2.chown: 改变档案拥有者

3.chmod: 改变档案的权限,SUID,SGID,SBIT等等特性

在开始讲解之前新手一定要去弄清楚路径!路径!路径!没有在当前路径打开相应的文件会出现各种错误,大家可以自己去体会。

一.chgrp

1.chgrp就是 change group的缩写,顾名思义就是改变档案所在的群组。仅有超级用户才能拥有chgrp命令的权利。

⚠️:将一个文件的群组名更改成其他群组名,其他群组名必须要在/etc/group中存在才能够作更改,因为所有的群组名放在 /etc/group中。

?举一个例子
在这里插入图片描述
我们先创建普通用户user1和普通用户user2,在/home路径下用 ls -la 查看他们所在的群组。可以看到我的 home目录下有 user1 和user2,图片里左边圈起来的第一个user1表示此档案的拥有者,第二个user2则表示此档案所在的群组名。

默认下user1的群组名是user1,user2的群组名是user2。 现在我们给出命令,把user1的群组名由user1变成user2。

命令格式:chgrp [选项] [组] [文件]

在这里插入图片描述
以下列出一些常用的选项
-c 当发生改变时输出调试信息
-f 不显示错误信息
-R 处理指定目录以及其子目录下的所有文件(进行递归)
-v 运行时显示详细的处理信息
–dereference 作用于符号链接的指向,而不是符号链接本身
–no-dereference 作用于符号链接本身
选择参数:

–reference=<文件或者目录>
–help 显示帮助信息
–version 显示版本信息

群组的作用:同一个群组下的多个用户对于某个文件的使用在这个群组中权限为开放的话,是可以执行的。具体看下面的例子。

在user2的用户的 /home/user2/test的目录下,创建了helloword.txt的文件,内容为I love china
在这里插入图片描述
我们查看一下helloword.txt 。输入ls -la,查看文件的权限
在这里插入图片描述helloword.txt文件在群组的权限为rwx。所以在群组名为user2的这个群组中的其他用户都可以执行查看改写helloword。我们测试一下,我们现在在user1的用户下,helloword文件在user2的用户下。输入cat helloword,我们查看到了 i love china。⚠️:我们要在test的路径下,才能相对路径查看hellowrod.txt这个文件。在这里插入图片描述

如果我们更改helloword.txt文件的权限为r–,则无法执行。

2.chown

我们可以把chown理解为:change own。

命令格式:chown [选项]… [用户][:[组]] 文件…
命令参数:

必要参数:

-c 显示更改的部分的信息

-f 忽略错误信息

-h 修复符号链接

-R 处理指定目录以及其子目录下的所有文件

-v 显示详细的处理信息

-deference 作用于符号链接的指向,而不是链接文件本身

选择参数:

–reference=<目录或文件> 把指定的目录/文件作为参考,把操作的文件/目录设置成参考文件/目录相同拥有者和群组

–from=<当前用户:当前群组> 只有当前用户和群组跟指定的用户和群组相同时才进行改变

–help 显示帮助信息

–version 显示版本信息

我们举个例子来简单学习一下。在这里插入图片描述

在上图我们想更改helloword文件的使用者为user1,但是提示操作不被允许,说明此命令只能由超级用户来操作。我们切换到root
在这里插入图片描述

此时可以看到 helloword.txt的文件拥有者为user1。

3.chmod

命令语法: chmod [-R] 权限 文件或目录
对于chmod 不详细讲解,此处只给出一个例子。对于helloword,如果user1和user2不在一个组里面,我们通过给出的others权限来看能不能访问:答案是可以的

我们先更改user1和user2不在一个组里,把user1的群组重新由user2改回user1
在这里插入图片描述
我们把helloword.txt的拥有者改回到了user2方便测试
在这里插入图片描述
⚠️:为什么我们在下图中,user2对于others的权限为—,但在user1中查看到了user2中的helloword文件呢?因为在上一步我通过超级用户切换到user1的时候路径停留在test,一旦离开了那个路径,user1和user2根本不在一个群组,根本无法访问到helloword文件。
在这里插入图片描述

但如果我们修改user2对于others的权限,修改为 r-x,则可以通过user1去访问user2中的helloword文件,看下图?

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值