Linux学习笔记——文件权限的修改

Linux chmod (英文全拼:change mode) 命令是控制用户对文件的权限的命令。

Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。


在学习文件权限修改之前先补充两个知识点:

  1. 我们可以使用 whoami 命令查看当前登录用户:
  2. 可以使用 ls -l 命令查看文件的权限:

文件权限的修改主要使用 chmod 命令,并且分为文字设定法与数字设定法。


文字设定法

其语法规则如下:

chmod [who][+|-|=][mode]

这里的 who 有四个选项:

  • 文件所有者:u
  • 文件所属组:g
  • 其他人:o
  • 所有人:a

这里的 +|-|= 为如下的含义:

  • +:添加权限
  • -:减少权限
  • =:覆盖原来的权限

这里的 mode 有如下的含义:

  • r:读
  • w:写
  • x:执行

下面以几个例子进行说明:

1. 给hello.c的其他人增加写权限

2.让所有人对hello.c只有读权限


数字设定法

chmod命令可以使用八进制数来指定权限。文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行。历史上,文件权限被放在一个比特掩码中,掩码中指定的比特位设为1,用来说明一个类具有相应的优先级。


例如, 765 将这样解释:

  • 所有者的权限用数字表达:属主的那三个权限位的数字加起来的总和。如 rwx ,也就是 4+2+1 ,应该是 7。
  • 用户组的权限用数字表达:属组的那个权限位数字的相加的总和。如 rw- ,也就是 4+2+0 ,应该是 6。
  • 其它用户的权限数字表达:其它用户权限位的数字相加的总和。如 r-x ,也就是 4+0+1 ,应该是 5。

下面以几个例子进行说明:

让hello.c文件的所有者拥有所有权限,用户组以及其他用户只有读和执行文件

让hello.c文件的其他用户失去执行权限

这里需要注意的是目录需要有执行权限,如果没有执行权限则无法进入目录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值