• Linux 权限



    什么是权限

    在Linux下有两种用户,分别是超级用户(root)和普通用户。超级用户可以在Linux下做任何事情,几乎不受限制,而普通用户一般只能在自己的工作目录下(/home/xxx)工作,以及在系统上做有限的工作。
    换句话来说,所有的权限的概念都是用来限制普通用户的,而超级用户几乎不受限制。

    超级用户的命令提示符是“#”
    普通用户的命令提示符事“$”

    通过 su -用户名 可以进行用户之间的切换

    注意:
    1)从普通账号切换为root账号时,指令当中的root可省略,因为root账号只有一个。
    2)该指令也可以从一个普通用户切换为另一个普通用户,输入待切换用户的账号密码即可。
    3)切换用户后,若想切回上次的用户,可通过Ctrl+D实现

    linux下文件属性--权限属性

    文件类型

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

    基本权限

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


    linux下用户角色

    文件访问者的分类(人)
    文件和文件目录的所有者:u---User
    文件和文件目录的所有者所在的组的用户:g---Group
    其它用户:o---Others 

    1)对于某一文件而言,其拥有者、所属组和other就是由超级用户(root)和普通用户所扮演。
    2)在Linux当中,所有用户都要隶属于某一个组,哪怕这个组只有你一个人(此时该组就以你的用户名为组名)。

    3)除了所有者和组用户以外的用户都是others


    linux下权限的操作

    针对rwx--文件属性


    字符选项的方式

    若是具有可读属性,则第一个位置的字符为r;若是具有可写属性,则第二个位置的字符为w;

    若是具有可执行属性,则第三个位置的字符为x。若某一位置为字符 - ,则说明不具有对应位置的属性


    八进制方案


    文件访问权限的相关设置方法

    a)chmod
    功能设置文件的访问权限
    格式chmod [参数] 权限 文件名
    常用选项R -> 递归修改目录文件的权限
    说明只有文件的拥有者和root才可以改变文件的权限

    格式:

    符号功能用户符号  
    +向权限范围增加权限代号所表示的权限u拥有者
    -向权限范围取消权限代号所表示的权限g拥有者同组用户
    =向权限范围赋予权限代号所表示的权限o其它用户
    a所有用户

    1)加 rwx符号

    1. chmod u+w /home/abc.txt
    2. chmod o-x /home/abc.txt

    2)三位8进制数字

    1. chmod 664 /home/abc.txt
    2. chmod 640 /home/abc.txt
    b)chowm
    功能修改文件的拥有者
    格式chown [参数] 用户名 文件名

    实例:

    1. chown user1 f1
    2. chown -R user1 filegroup1比
    c)chgrp
    功能修改文件或目录的所属组
    格式chgrp [参数] 用户组名 文件名
    常用选项-R 递归修改文件或目录的所属组

    实例:

    sudo chgrp root data.txt

    注意: 修改文件的所属组也需要进行权限提升。

    umask--默认权限

    功能:

    1)查看或修改文件掩码
    2)新建文件夹默认权限=0666
    2)新建目录默认权限=0777
    但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权是:mask&~umask

    格式umask 权限值
    说明将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

    粘滞位

    大家共享一个目录,通常是root的,开放了所有的权限


    目录权限

    可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.

    可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.

    可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.

    所以==>

    就是只要用户具有目录的写权限 , 用户就可以删除目录中的文件 , 而不论这个用户是否有这个文件的写权限.???这样好像不太安全的样子。所以我们设置出来粘滞位来解决这一问题

    给目录设置粘滞位 -- chmod+t

    添加粘滞位后,文件夹只能由以下三种人删除
    (1)超级管理员删除 (2)该目录的所有者删除(3)该文件的所有者删除

    注意: 虽然目录被加上了粘滞位,但如果用户有该目录的可写权限,则不影响其在该目录下创建文件

  • 相关阅读:
    K8s 集群高可用master节点ETCD挂掉如何恢复?
    【代码随想录】算法训练计划21、22
    Spring | Bean自动装配详解
    idea dubge 详细
    硬件基础 -- D/A数字模拟信号
    数据备份一般有哪些方式,如何进行数据备份
    【一】1D测量 Measuring——gen_measure_rectangle2()算子
    安卓讲课笔记5.11 菜单
    win10 hosts文件修改不生效
    如何保护客户数据并降低合规风险
  • 原文地址:https://blog.csdn.net/qq_59293418/article/details/132621676