美文网首页
linux 权限学习(待续)

linux 权限学习(待续)

作者: 草鞋弟 | 来源:发表于2019-05-11 20:39 被阅读0次

    简介

    • Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。
    • Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。
    • Linux下权限的粒度有 拥有者 、群组 、其它组 三种。每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。通常情况下,一个文件只能归属于一个用户和组, 如果其它的用户想有这个文件的权限,则可以将该用户加入具备权限的群组,一个用户可以同时归属于多个组。
    • Linux上通常使用chmod命令对文件的权限进行设置和更改

    用户身份和群组的记录文件

    1. 系统所有的账号和一般身份使用者,还有root的相关信息都记录在 /etc/passwd
    2. 个人密码记录在 /etc/shadow 目录中
    3. linux 的所有组名 记录在 /etc/group目录中

    如何更改文件的属性和权限

    • chgrp: 改变文件所属群组
    • chown: 改变文件所属用户
    • chmod: 改变文件的权限,SUID等特性

    数字权限使用格式

    在这种使用方式中,首先我们需要了解数字如何表示权限。 首先,我们规定 数字 4 、2 和 1表示读、写、执行权限,即 r=4,w=2,x=1 。此时其他的权限组合也可以用其他的八进制数字表示出来,如: rwx = 4 + 2 + 1 = 7 rw = 4 + 2 = 6 rx = 4 +1 = 5
    其中 0 表示无任何权限

    若要同时设置 rwx (可读写运行) 权限则将该权限位 设置 为 4 + 2 + 1 = 7 若要同时设置 rw- (可读写不可运行)权限则将该权限位 设置 为 4 + 2 = 6 若要同时设置 r-x (可读可运行不可写)权限则将该权限位 设置 为 4 +1 = 5

    上面我们提到,每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。即我们可以用用三个8进制数字分别表示 拥有者 、群组 、其它组( u、 g 、o)的权限详情,并用chmod直接加三个8进制数字的方式直接改变文件权限。

    • 775
      当前用户,当前用户所属群组可读写运行其他组 可读写不可运行
    • 777
      所有人都可读写运行
    • 600
      仅当前用户可读写运行

    符号类型改变权限

    三种身份分别可用 u(user) g(group) o(other) a(all)
    注意: a 所有身份

    权限符号

    • '+' 表示 加入权限
    • '-' 表示 除去权限
    • '=' 表示 设定权限

    用 chmod 命令进行权限的设定(符号类型权限设定),如下:

    # 修改 所属用户有读写执行权限 所属组有读写执行权限 其他组无任何权限
    sudo chmod -R u=rwx,g=rwx,o=--- ceshi
    

    Q&A

    能否读取到某个文件内容,跟该文件所在的目录权限也有关系 (目录至少需要有 x 的权限)

    相关文章

      网友评论

          本文标题:linux 权限学习(待续)

          本文链接:https://www.haomeiwen.com/subject/bkyfaqtx.html