当前位置: 首页 > news >正文

linux中如何修改文件的权限和拥有者所属组

目录标题

  • chmod指令
  • 八进制形式权限修改
  • 文件拥有者所属组的修改
  • umask有关内容

chmod指令

chmod指令可以用来修改人员的权限其形式如下:
在这里插入图片描述
u代表的是拥有者,g代表的是所属组,o代表的是其他人,a表示所有人,如果你想增加权限的话就使用+,如果你想删除权限的话就使用-,对应的权限就是r w x,当然这里的权限可以是一个组合比如说rwx,rx,wx等等,最后再加上你想要修改的文件,那么这里的操作就如下:
在这里插入图片描述
一开始所有人对test1文件的权限都是没有的,我要是想让test1文件的拥有者有读权限就可以使用下面的指令:
在这里插入图片描述
如果我想让test1文件的所属组拥有读和执行的权限的话就可以使用下面的操作:
在这里插入图片描述
如果我想让test1文件的其他人拥有读写执行权限的话就可以使用下面的指令:
在这里插入图片描述
如果我想让test1文件的所有人都没有任何权限的话就可以使用下面的指令:
在这里插入图片描述
当然这里的修改还可以连续的将多人进行修改,比如说我想让拥有者的权限变为rx让其他人的权限都变成rwx的话就可以执行下面的操作:
在这里插入图片描述

八进制形式权限修改

文件的权限用rwx来表示,如果哪个权限没有的话对应位置上的内容就变成了-,那么这里我们就可以把 - 当成0,把r w x 都看成1比如说rwx就是1 1 1,r - x 就是101 ,r - -就是000,那么这里我们就可以根据这个逻辑列出一个表出来
在这里插入图片描述

一个人的权限可以由三个二进制数字来表示,而3个二进制数字可以合成一个8进制数字,一个文件有3类人,所以就有三个不同的权限来进行表示,所以一个文件就应该有三个八进制数字来表示权限,比如说一个文件的权限分别为:rwx rw- r-x那么这个文件的权限就可以用765来进行表示,如果一个文件的权限为 - - - -w- r-x的话,那么就可以使用数字025来表示文件的权限,既然一个文件的权限可以使用数字来表示的话,那么这里我们也可以用数字来修改一个文件的权限,那么修改的形式就是如下:
在这里插入图片描述
比如说一个文件的开始权限为000,我们要想将这个权限修改成rwx rwx rwx的话就可以这样进行修改:
在这里插入图片描述
如果我们想把这个文件的权限改成r-x rw- r- -的话就可以使用下面的指令:
在这里插入图片描述
那么这就是八进制权限修改法,希望大家能够理解。

文件拥有者所属组的修改

使用chown指令可以修改文件的拥有者,使用chgrp指令可以修改文件的所属组,这两个指令的用法如下:
在这里插入图片描述
这里我将用户改成了root,如果是普通用户要使用这个指令的话得用sudo进行提权,那么这里的操作如下:
在这里插入图片描述
如果是普通用户不用sudo提权的话,是无法修改这里的人的:
在这里插入图片描述
这里的chown可以连续修改拥有者和所属组,其用法如下:
在这里插入图片描述
那么这就是chown和chgrp的用法,希望大家可以理解。

umask有关内容

我们首先来看看下面的操作:
在这里插入图片描述
创建了一个文件夹和一个普通文件,我们通过ll可以看到这里文件的起始权限是rw- rw- r- -,而文件夹的起始权限为rwx rwx r-x那这是为什么呢?答案是跟umask的值有关,往命令行中输入umask就可以看到umask的值:
在这里插入图片描述
umask值为0002第一个0表示后面的三个数字都是八进制,我们将三个八进制数字展开成二进制就变成了这样:000 000 010,这里得将这些数字看成权限,所以这里umask的权限就变成了- - - - - - -w-,而umask的概念是权限掩码就是凡事在umask中出现的权限在文件或者目录中都得去掉,linux规定:目录的起始权限为777也就是rwx rwx rwx 普通文件的起始权限是666也就是rw- rw- rw-,而umask中的other有写权限,所以目录和文件在创建的时候就得将other中的写权限去掉,所以目录在创建的时候权限就变为了rwx rwx r-x,文件的权限就变成了rw- rw- r–,那这里我们可以验证一下上面讲的内容是否是对的:
在这里插入图片描述
我们讲umask的值进行修改,改成了777然后再创建文件或者目录的话就可以发现这里的起始权限都没有了:
在这里插入图片描述
我们还可以讲umask的值设置为444这样我们创建文件或者目录的话就都没有读权限:
在这里插入图片描述
这里大家注意的一就是umask不是单独的减法,而是通过下面的公式来算出的最终权限:
在这里插入图片描述
umask要去掉的权限位是1,要保留的权限位是0,使用~反转权限后就变成~umask要去掉的权限是0,要保留的权限是1,最后再使用&操作可以让起始权限中与~umask对应的位置为0的数字都变成0,就是~umask为0的位置起始权限也变成了0,最终达到权限删除的作用。

相关文章:

  • Web纯前端实现在线打开编辑保存PPT幻灯片
  • 第四章:ESP32零基础教学 - 4.2继电器、舵机与L298N电机
  • web客户端存储,IndexDB相关讲解
  • 【实战指南】用MongoDB存储文档和图片等大文件(Java实现)
  • 破解内存瓶颈:如何通过内存池优化资源利用
  • 【算法day18】有效的括号——给定一个只包括 ‘(‘,‘)‘,‘{‘,‘}‘,‘[‘,‘]‘ 的字符串 s ,判断字符串是否有效。
  • 【第14届蓝桥杯C/C++B组省赛】01串的熵
  • PCA Jittering 图像增强
  • 【通过Groovy去热修复线上逻辑】1.执行线上数据修复 2.写工具
  • 仿函数 VS 函数指针实现回调
  • RAG现有技术方案
  • 【Golang】defer与recover的组合使用
  • PyCharm中使用pip安装PyTorch(从0开始仅需两步)
  • 设计和布局硬件电路是嵌入式系统开发的重要环节
  • 3.22日西南竞篮,NBA勇士VS老鹰,赛前数据前瞻
  • LeetCode 2643.一最多的行:模拟(更新答案)
  • Wispr Flow,AI语言转文字工具
  • 鸿蒙NEXT开发案例:程序员计算器
  • 使用若依AI生成springBoot的前后端分离版本
  • 为WordPress自定义一个留言板
  • 解放日报头版头条:“五个中心”蹄疾步稳谱新篇
  • 马上评|演唱会云集,上海如何把“流量”变“留量”
  • 政治局会议深读|首提“持续巩固房地产市场稳定态势”,楼市政策还有哪些优化空间
  • 去年立案侦办侵权假冒案件3.7万起,公安部公布13起案例
  • 已有17个国家和国际组织、50多个国际科研机构加入国际月球科研站合作
  • 供应商已“陷入困境”,美汽车行业致信特朗普政府