ETJava Beta | Java    注册   登录
  • 搜索:
  • Linux_权限理解(详细PLUS)

    发表于      阅读(1)     博客类别:Crawler     转自:https://www.cnblogs.com/sunnyhengheng-cn/p/18445607
    如有侵权 请联系我们删除  (页面底部联系我们)  

    1.用户

    Linux下有两种用户:超级用户(root)和普通用户;

    超级用户:可以再linux系统下做任何事情,不受限制
    普通用户:在linux下做有限的事情
    超级用户的命令提示符是"#",普通用户的命令提示符是"$"
    

    超级用户:

    普通用户:

    2.用户切换

    用户间切换:

    su + 用户名 //可用exit回退到原用户
    

    1)普通用户切换超级用户(需要输入root用户密码)

    2)超级用户切换到普通用户(不需要输入普通用户密码)

    image

    普通用户切换超级用户:

    su - //也可用exit回退到原用户
    

    3.创建和删除普通用户

    创建普通用户

    useradd+用户名(创建)
    passwd+用户名(设置密码)
    

    image

    删除普通用户

    userdel -r +用户名
    

    image

    查看家目录下的用户

    ls /home
    

    image

    4.权限管理

    什么是权限

    权限=用户+事物属性(rwx)
    r:可读  w:可写  x:可执行
    

    文件访问者类型(用户):

    文件和文件目录的所有者:u---User(拥有者)
    文件和文件目录的所有者所在的组的用户:g---Group(所属组)
    其它用户:o---Others (其他)
    

    文件类型和访问权限(事物属性):

    image

    文件类型:

    d:文件夹
    -:普通文件
    l:软链接(类似Windows的快捷方式)
    b:块设备文件(例如硬盘、光驱等)
    p:管道文件
    c:字符设备文件(例如屏幕等串口设备)
    s:套接口文件
    

    基本权限:

    读(r):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
    写(w):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
    执行(x):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
    “-”表示不具有该项权限
    

    5.文件权限的设置方法

    1)chmod

    功能:修改用户对某一文件的权限

    (1)chmod 角色 +/- 权限 文件
    

    image

    (2)chmod 8进制(u) 8进制(g) 8进制(o) file
    

    rwx:111(二进制) -->7(八进制)
    rw-:110(二进制) -->6(八进制)
    r--:100(二进制) -->4(八进制)
    ---:000(二进制) -->0(八进制)

    image

    2)chown

    功能:修改文件的拥有者
    格式:chown [参数] 用户名 文件名
    

    image

    3)chgrp

    功能:修改文件或目录的所属组
    格式:chgrp [参数] 用户组名 文件名
    

    image

    6.权限掩码

    对于新建的文件和目录我们会发现:目录的默认权限是775,文件的默认权限的664,为什么呢?

    image

    起始时,目录默认权限的777,文件默认权限的666,由于存在权限掩码,使得最终权限和起始不同

    最终权限=起始权限 &(~权限掩码)
    

    image

    权限掩码的查看:umask

    image

    修改权限掩码为0000:umask 0000

    image

    此时我们再次创建新的目录和文件

    image

    通过上图我们可以看到新目录和文件的权限发生了改变

    7.粘滞位

    思考一下接下来的代码

    image

    我们可以看到,这个文件的拥有者和所属组均是root,而用户qz属于others,只有读权限,我们只能读取文件而不能修改文件内容,但是我们却可以将该文件给删掉,这是为什么呢?

    这是因为这个文件所处的文件夹的权限本身就属于我们,有w权限,即可以删除

    image

    这里就要引出一个概念:粘滞位 (chmod o+t file)

    当一个目录被设置为粘滞位,则该目录只能由

    1、超级管理员删除
    2、该目录的所有者删除
    3、该文件夹的所有者删除