二Linux权限(文件权限umask粘滞位与普通用户sudo权限)

Posted yumoz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二Linux权限(文件权限umask粘滞位与普通用户sudo权限)相关的知识,希望对你有一定的参考价值。

目录速查

介绍概念

Linux下有两种用户,其一是超级用户root、其二是普通用户。

  • 超级用户:可以完成任何操作,不受限制, 命令行提示符为 “#”;
  • 普通用户:权限有所收到限制,命令行提示符 “$”

切换用户

root 到 普通用户: su 普通用户名;
普通用户切换到root:su -> 输入root密码;

Linux权限管理

先上一张图:

文件类型

  1. d:文件夹
  2. -:普通文件
  3. l:软链接(快捷方式)
  4. s:套接字
  5. c:字符设备文件
  6. p:管道文件
  7. b:块设备文件

文件权限表示及修改

chmod修改文件权限总结一:r,w,x方式


chmod修改权限,8进制形式:

chown & chgrp简介:

权限分析

读权限:

  1. 对普通文件来说,读取文件内容;
  2. 对目录来说:具有浏览该目录信息的权限;

写权限:

  1. 对于普通文件而言,具有修改文件内容权限;
  2. 对于目录来说,具有删除,或移动目录目录内文件权限;

执行权限:

  1. 对于可执行文件来说,具有可执行的权限;
  2. 对于目录来说,具有进入目录的权限;

总结权限

目录的可执行权限表示的是你能否在目录下执行命令,是否可以进入目录。
即使目录有读权限,就算有可执行权限,也不能进入目录。
目录没有读权限,就没有ls列出目录下文档。

umask

功能:查看或修改文件掩码;
新建文件夹默认权限:0666
新建目录默认权限: 0777
但是,实际上我们再新建文件及文件夹时发现,其权限值并不是默认的值。原因就在这个umask上;
注意:默认umask为0002;

实际创建出来文件权限:mask(上文中默认权限0666,0777)& ~umask

普通用户添加sudo权限

问题:如何给普通用户添加sudo权限;
解决:XXX is not in the sudoers file.This incident will be reported.???
解决办法:

  1. 修改方式:打开 vim /etc/sudoers (备注,在root权限下完成),进入100行左右修改文件;
  2. 添加一行代码:

粘滞位

先看一种现象:

  1. 进入root,创建文件夹
  2. 修改文件夹权限,并创建文件
  3. 切回普通用户,删除文件

现象分析:在特定目录下,普通用户会受到普通权限约束,但是竟然可以删除别人的文件,甚至可以删除root的用户的文件。这种现场很不好,于是就有了粘滞位这个概念。下面介绍粘滞位:

粘滞位:Linux系统权限的一个标志。百度百科给出:粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标。最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件。如果不为目录设置粘滞位,任何具有该目录写和执行权限的用户都可以删除和移动其中的文件。实际应用中,粘滞位一般用于/tmp目录,以防止普通用户删除或移动其他用户的文件。

作用:对于普通文件,粘滞位会被系统所自动忽略,对于目录文件,粘滞位表示这个目录中的文件只能被所属者和root用户删除或移动。
如何设置粘滞位:切换到root用户,给文件夹dir2添加权限t,chmod o+t dir2

注意(粘滞位测试)

在一般做粘滞位测试时,由于疏忽会导致许多错误发生。下面给出几点注意:

  1. 创建目录时,我们必须在root目录下。
  2. 如果目录属于用户本身,不属于root,粘滞位不起作用。
  3. 添加粘滞位时,我们需要给其他用户设置如chown o+t dir (root下给目录dir设置粘滞位)

总结:
当一个目录被设置为粘滞位,则该目录下的文件只能被:

  • 超级管理员删除
  • 该目录的所有者删除
  • 改文件的所有者删除
    (普通用户不能删除,移动root用户的文件)。

运行环境:centos7
如果看了之后对你有帮助,建议一键三连、

以上是关于二Linux权限(文件权限umask粘滞位与普通用户sudo权限)的主要内容,如果未能解决你的问题,请参考以下文章

Linux权限Shell命令及运行原理 | Linux权限管理 | 粘滞位

Linux权限Shell命令及运行原理 | Linux权限管理 | 粘滞位

LinuxLinux权限管理————shell运行原理 | Linux权限管理 | 粘滞位 | 权限掩码umask

详细刨析Linux权限。包含权限的概念权限的修改粘滞位等等。

详细刨析Linux权限。包含权限的概念权限的修改粘滞位等等。

详细刨析Linux权限。包含权限的概念权限的修改粘滞位等等。