Centos7 权限

众所周知:linux一切皆文件

一、文件权限之基本权限

  1、基本权限介绍

    基本权限类型:

      r = 可读 4

      w = 可写 2

      x = 可执行 1

    权限的归属:

      u = 属主

      g = 属组

      o = 其他人

 

 

   2、设置权限

    修改属主、属组

      chown 属主.属组 目标文件

      -R  递归修改

 

     修改u、g、o对应的权限

      chmod

      -R    递归

      加减法

        chmod u+rw,g+rw,o+rw mm.txt      为mm.txt文件的属主添加rw权限,属组添加rw权限,其他人添加rw权限

      赋值

        chmod u=rx,g=rx,o=r mm.txt      为mm.txt文件设置属主权限为rx,属组权限为rx,其他人权限为r

      数字

        chmod 660 mm.txt

 

   3、权限对文件/目录的意义

    文件:ls -l 文件名

    r    可以读取文件内容(cat)

    w    可以修改文件

    x    可以执行文件代码,(若文件的代码时编译好的结果,则只需要x权限即可执行,但如果该文件的代码是

一个解释型分脚本程序,则需要r权限的配合才行(将文件的代码读取出来,由解释器解释成二进制文件,才能执行))

 

    目录: ls -dl 文件名

    r    可以浏览目录下的内容(ls命令,查看子文件)

    w    可以在目录下创建新文件

    x    1、可以执行目录下的程序(除了对目录由执行权限,还要对目标文件有相应的权限)

        2、可以正常切换到该目录下

        3、涉及到多层目录,如/aa/bb/cc,需要对每一级目录都有x权限才能正常走到下一级目录

 

 

二、文件权限管理之特殊权限

  众所周知,每运行一个程序,就是启动了一个进程,而每个进程都需要有用户。linux系统是根据uid来区分用户的,但是在启动进程时,还有一个行为:系统会将uid转换为euid,通过euid来启动进程,而通常情况下euid与uid是相同的。

  1、SUID

      chmod u+s 文件

    1、SUID权限仅对二进制可执行文件有效

    2、如果执行者对于该二进制文件具有x权限,执行者具有该文件的所有者权限

    3、本权限仅在执行该二进制可执行文件的过程中有效

 

   2、SGID

      chmod g+s 文件

    1、当SGID仅作用于普通文件时,和SUID类似,在执行该文件时,获得该文件所属组的权限

    2、当SGID作用于目录时:

      当一个用户对某一目录有wx权限时,该用户就能在目录下建立文件

      如果该目录被设置SGID,则该用户在该目录下创建的文件都属于这个目录的属组

 

   3、SBIT(sticky)

      chmod o+t 文件

    SBIT与SUID、SGID关系不大,SBIT只对目录有效,用来阻止非文件的所有者删除文件

 

 

  PS:为文件添加特殊权限也可以使用数字

      chmod 7777  ->  rws rws rwt

      chmod 6777  ->  rws rws rwx

      chmod 5777  ->  rws rwx rwt

      ...

 

 

 

 

 

三、文件权限管理之umask

  新建文件、目录的默认权限是由umask决定的

  1、uid>199且属主与属组相同的用户,umask = 0002

    文件:664

    目录:775

  2、除1之外的其他用户,比如root用户,umask:0022

    文件:644

    目录:755

 

  linux系统中文件的默认权限为666,目录的默认权限为777,在umask的影响下

 

     临时设置umask:

      umask 000    临时设置umask为000

    永久设置umask:

      vim /etc/profile

 

posted @ 2020-10-29 19:32  大胡萝卜没有须  阅读(170)  评论(0)    收藏  举报