linux系统上的特殊权限 :
特殊权限有:SUID,SGID,STICKY

安全上下文:
1、进程以其发起者的身份运行:进程对文件的访问权限,取决于发此进程的用户的权限;进程是发起些进程用户的代理,因此以此用户的身份和权限完成所有操作
2、权限匹配模型:
(1)判断进程的属主,是否为被访问的文件属主,如果是,则应用属主的权限;否则进入第2步
(2)判断进程的属主,是否为被访问的文件属组,如果是,则应用属组的权限;否则进入第3步
(3)应用other的权限

SUID:
默认情况下:用户发起的进程,进程的属主是其发起者;因此,其以发起者的身份在运行;命令本身的文件的属主,不一定跟进程的属主是一个。比如:ls文件的属主是root,当以hadoop登录shell运行ls进程时,进程是以hadoop为属主的,而不是root

SUID的功用:用户运行某程序时,如果此程序拥有SUID权限,那些程序运行为进程时,其进程的属主不是发起者,而是程序文件自己的属主

管理文件的SUID权限:
chmod u+|-s FILE ……

展示位置:属主的执行权限位
如果属主原本有执行权限,显示为小写s;否则,显示为大写S

SGID:
SGID的功用:当目录属组有写权限,且此目录有SGID权限时,那么所有属于此目录的属组,且以属组身份在此目录中新建文件或目录时,新文件或目录的属组不是该用户的基本组,而是此目录的属组

管理文件的SGID权限:
chmod g+|-s FILE ……

展示位置:属组的执行权限位
如果属组原本有执行权限,显示为小写s;否则,显示为大写S

STICKY:
STICKY的功用:对于属组或全局可写的目录,组内的所有任务或系统上的所有用户对此目录中都能创建或删除所有的已有文件;如果为此类目录设置STICKY权限,则每个用户都能创建新文件,且只能删除自己的文件;不能删除属主非自己的文件

管理文件的STICKY权限:
chmod o+|-t FILE ……

展示位置:其它用户的执行权限位
如果属主原本有执行权限,显示为小写t;否则,显示为大写T

系统上的/tmp 和/var/tmp 目录默认均有STICKY权限

管理特殊权限的另一方式:
suid sgid sticky 八进制权限
0 0 0 0
0 0 1 1
0 1 0 2
0 1 1 3
1 0 0 4
1 0 1 5
1 1 0 6
1 1 1 7

基于八进制方式赋权时,可于默认的三位八进制数字左侧再加一位八进制数字
例如:chmod 1777

facl:file access control lists
文件的额外赋权机制:
在原来的u,g,o之外,另一层让普通用户能控制赋权给另外的用户或组的赋权机制

查看某文件的facl:
getfacl FILE ...
user:USERNAME:MODE
group:GROUP:MODE
赋权给用户:
setfacl -m u:USERNAME:MODE FILE...
赋权给组:
setfacl -m g:GROUPNAME:MODE FILE...
撤销赋权:
setfacl -x u:USERNAME FILE...
setfacl -x g:GROUPNAME FILE...

有了facl后的安全上下文:
权限匹配模型:
(1)判断进程的属主,是否为被访问的文件属主,如果是,则应用属主的权限;否则进入第2步
(2)判断进程的属主,是否有文件的额外权限的属主权限,如果是,则应用额外权限的属主的权限;否则进入第3步
(3)判断进程的属主,是否为被访问的文件属组,如果是,则应用属组的权限;否则进入第4步
(4)判断进程的属主,是否有文件的额外权限的属组权限,如果是,则应用额外权限的属组的权限;否则进入第5步
(5)应用other的权限

vim文本编辑及文件查找应用4的更多相关文章

  1. vim文本编辑及文件查找应用2

    vim编辑器: vim末行模式: 内建的命令行接口 (1)地址定界 :start_pos[,end_pos] #:特定的第#行,例如5即第5行 .:当前行 .,+#:当前行,加#行的行范围 $:最后一 ...

  2. vim文本编辑及文件查找应用3

    文件查找 locate,find两个命令 在文件系统上查找符合条件的文件: 实现工具:locate,find locate命令: 依赖于事先构建好的索引库,索引库可以由下边两种方式构建 系统自动实现( ...

  3. vim文本编辑及文件查找应用1

    vim编辑器:    文本编辑器:        文本:纯文本,ASCII text;Unicode(全球通用); 文本编辑种类:        行编辑器:sed        全屏编辑器:nano, ...

  4. Linux使用vim进行多文件查找和替换的方法

    vim是Linux系统下常用的文本编辑,通过使用多种shell命令能够实现多文件的查找和替换,那么具体会使用到那些命令呢?下面小编就给大家介绍下Linux系统vim多文件查找和替换的方法. 在linu ...

  5. VIM批量文件查找和替换

    使用vim时间不长,linux命令行下常用的文本编辑工具,所以需要掌握一些基本的用法.很多不会的不是百度就谷歌,总有你想要的答案. 1. 批量文件查找内容 vimgrep 比如在当前目录下查找带有“a ...

  6. Linux的VMWare中Centos7文件查找(find-grep)和vim文本编辑器基操

    一.find文件查找 grep 匹配字段 文件名 ——筛选文件   find查找 语法参数示例 格式: find 查找范围 查找类型 参数   find / -name *.conf   按文件名查找 ...

  7. vim文本编辑工具(全)

    VIM文本编辑工具 编辑模式 i    在当前字符前插入I   在光标所在的行首插入a 在当前字符后插入A 在光标所在行尾插入o 在当前行的下一行插入新的一行O 在当前行的上一行插入新的一行 s   ...

  8. (大数据工程师学习路径)第一步 Linux 基础入门----环境变量与文件查找

    环境变量与文件查找 本节介绍环境变量的作用与用法,及几种搜索文件的方法.学会这些技巧高效地使用 Linux. 一.环境变量 1.变量 要解释环境变量,得先明白变量是什么,准确的说应该是 Shell 变 ...

  9. 12 文件查找--find命令

    之前,我们学习过grep来过滤文件内容,而这种查找找的是某一个文件内的内容:以及 less 或者 man 或者上一节提到的 vim 编辑器中的 / 与 ? 都是用来查找单个文件内的内容.而这一节,我们 ...

随机推荐

  1. Nginx sticky模块实现session粘滞

    一:下载,解压nginx sticky模块. 1 2 3 # cd /usr/local/src # wget http://nginx-sticky-module.googlecode.com/fi ...

  2. godot新手教程2[godot常用代码用法]

    Godot概念: 在godot内,使用的语言是GDScript,大部分代码风格是和python一样. 在GDScript内代码段结束是换到下一行即可,不需要也不能添加”;”号,(注意:代码段结束后不能 ...

  3. 剑指offer难题代码

    重建二叉树 题目描述 输入某二叉树的前序遍历和中序遍历的结果,前重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.假如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序 ...

  4. 差分约束算法————洛谷P4878 [USACO05DEC] 布局

    题目: 不难看出题意主要是给出ml+md个格式为xi-xj<=ak的不等式,xi-xj为i,j俩头牛的距离,要我们求x1-xn的最大值. 经过上下加减我们可以将这几个不等式化成x1-xn< ...

  5. MFC中使用ADO进行数据库操作

    参考FROM:http://hi.baidu.com/sunkanghome/item/e1fda510b3186359f1090ee2 数据库与数据库编程: 当前各种主流数据库有很多,包括Oracl ...

  6. 【ARM-Linux开发】Linux下更改目录下所有文件的所有者及其权限

    [ARM-Linux开发]Linux下更改目录下所有文件的所有者及其权限 chown 更换所有者: chmod 改变权限: 想一次修改某个目录下所有文件的权限,包括子目录中的文件权限也要修改,要使用参 ...

  7. ubuntu/debian将sh改为bash

    1.  查看现在环境 可以看到,现在的默认环境是sh.我们想把它变为bash,可以这样做: 2. 运行sudo dpkg-reconfigure dash,出现以下画面: 这里提示我们是否要用默认的s ...

  8. HanLP分词工具中的ViterbiSegment分词流程

    本篇文章将重点讲解HanLP的ViterbiSegment分词器类,而不涉及感知机和条件随机场分词器,也不涉及基于字的分词器.因为这些分词器都不是我们在实践中常用的,而且ViterbiSegment也 ...

  9. oracle分区表原理学习

    1.创建普通表 create table normal_shp(id number,day date,city_number number,note varchar2(100)) tablespace ...

  10. js唤醒手机APP

    if (navigator.userAgent.match(/android/i)) { // 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP,并自动阻止a标签的默认行为 / ...