Linux文件权限

一、Linux用户概念

Linux中把用户分为文件所有者用户、所属组用户和其他用户。因此Linux文件的权限也就对应这三个用户身份。文件所有者是指创建文件的用户,只有自己才能读写文件,其他人不能读写文件。所属组用户就是把若干用户划分为一个群组,群组内的成员都有权限来读写文件。其他用户就是不属于前两种身份的用户。

二、文件权限

我们已经知道每个文件都有三种身份的权限限制,比如我们查看一个目录下的所有文件,如下图:

image.png

可以看见所有文件的开头都是一串描述文件权限的编码。它其实分为四个部分,比如已上图oh-my-zsh为例:
image.png

  • 文件类型有:
    image.png

  • 权限说明

    每组用户有3个字符分别表示读、写和执行权限,比如rwx表示有读写和执行权限。

    image.png

    每个权限都可以用二进制表示:

    1表示有该权限,0表示无该权限

    因此,一个用户的权限rwx也可以用111表示,也就是八进制的7。

三、修改权限

修改权限的指令是chmod,修改方式有两种。

1、使用符号修改权限

使用方式:[ugoa][±=][rwxXstugo]。

  • 第一部分表示修改的用户:
    image.png

  • 第二部分表示增加删减或修改权限

image.png

  • 第三部分表示要添加的权限
    image.png

下面是一些例子:

代码块

// 给文件所有者添加或删除执行权限
chmod u+x filename
chmod u-x filename
// 给所属组成员添加或删除读写权限
chmod g+rw filename
chmod g-rw filename
// 修改所属组成员属性
chmod g=r filename

2、使用八进制修改权限

上面提到过每项权限都可以用一位二进制数表示。对于每个身份的用户权限用3位二进制表示,比如rwx => 111,r-- => 100 ···
image.png
将每个身份的二进制转换为八进制,就能表示对每个身份用户的权限修改,比如:

// 赋予所有人读写和执行权限
chmod 777 filename
// 赋予用户所有者所有权限,所属组成员执行权限,其他用户执行权限
chmod 711 filename
// 赋予用户所有者读权限,所属组成员和其他用户无权限
chmod 400 filename
···
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值