Linux基础(14)Linux的特殊权限

Linux下除了r,w,x的权限之外,还有SUID SGID SBIT三种特殊权限

  1. SUID

如果某个文件具有SUID权限的时候,运行某程序时,执行者暂时拥有文件所有者的权限;只能作用在二进制程序文件上

对于shell脚本是无效的。

chmod u+s FILE  #注意,必须添加文件的所有者身上。

chmod u-s FILE

如果FILE本身原来就有执行权限,则SUID显示为s;否则显示S;

对于passwd文件,它具有SUID权限,当一个非root用户试图执行passwd修改自己密码时候,启动的进程的属主是root,而非这个用户,由于passwd是通过修改/etc/shadow下的文件来修改自己密码的,因此尽管该用户对/etc/shadow文件没有读写权限,他还是可以修改文件的,因为进程的属主是root.

2.SGID:

SGID表现为在文件的用户组执行权限上为s

SGID既可以作用于文件上,也可以作用在目录上。

作用于文件时,仅对二进制程序有效,用户在执行程序的时候具有改程序用户组的支持。

作于与目录时(常见),用户在此目录下的基本组变为此目录的用户组,即用户在这个目录下创建的文件的属组与该目录的属组相同,而不是用户的基本组。这个特性常用在项目开发上的权限配置上。

修改方式

chmod g+s DIR|FILE

chmod g-s DIR|FILE

3.SBIT: 如果某个目录具有SBIT权限,那么用户在这个目录下,只能删除,移动,重命名自己创建的文件,而不能删除其他人的文件。

修改方式

chmod o+t DIR

chmod o-t DIR

========================================================

下面我们来进行一个小实验,来巩固一下SGID,SBIT.

情景:假设存在一个项目目录test,该目录的属组是develop,要使tom和joe两个用户可以在test下面创建文件,并且可以彼此查看,修改对方的文件,但是不允许删除对方的文件,对于其他人来说,对于test目录没有权限。要如何配置?

很简单,只需要将tom和joe的附加组设置为develop,并且将为test目录添加SGID,SBIT权限即可。

具体步骤如下

groupadd develop

cd /tmp

mkdir test

chmod 770 test

chown root.develop test

chmod g+s test

chmod o+t test

useradd -G develop joe

useradd -G develop tom

时间: 2024-08-02 11:02:25

Linux基础(14)Linux的特殊权限的相关文章

Linux基础概念-----Linux权限

权限对象: 属主:u 属组:g 其他人: o 所有人:a Linux基本权限 读:read 标识为:r 八进制标识为:4 写:write 标识为:w 八进制标识:2 执行:execution 标识为:x 八进制标识:1 特殊权限 setuid:仅对文件(可执行的二进制程序)有效,以文件的所有者身份执行 八进制表现为:4 [[email protected] tmp]# ls -l /usr/bin/passwd -rwsr-xr-x. 1 root root 30768 Feb 22  2012

Linux基础篇--linux基础和帮助用法

Linux基础篇--linux基础和帮助用法 本章概要 用户登录 终端 Shell介绍 执行命令 简单命令 Tab键补全 命令行历史 bash快捷键 使用gnome-terminal whatis command--help manandinfo 本地帮助文档/usr/share/doc/ 官网在线文档 其它网站和搜索 用户登录 root用户   一个特殊的管理帐户   也被称为超级用户   root已接近完整的系统控制   对系统损害几乎有无限的能力   除非必要,不要登录为root 普通用户

Linux基础概念-----Linux I/O重定向 ,管道

标准输入:键盘 标准输出:显示器 错误输出:显示器 FD:文件描述符:让程序可以文件交互,并且便于内核识别文件,打开的每一个文件都有一个描述符 程序在和文件交互式,通过文件描述符来进行交互,而非文件名,文件名是方便用户分别文件. Linux一切皆文件,所以标准输入,标准输出都有各自的文件描述符 标准输入描述符:0 标准输出描述符:1 标准错误输出描述符:2 将其默认数据流改为其他设备:IO重定向 输出重定向 > 覆盖重定向 >> 追加重定向 /dev/null  黑洞 只针对当前Shel

Linux基础知识--Linux的文件系统和bash的基础特性

Linux基础知识--linux的文件系统和bash的基础特性 一.Linux文件系统: Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中 linux文件系统遵循FHS(Filesystem Hierarchy Standard,文件系统目录标准),多数Linux版本采用这种文件组织形式.FHS采用了树行组织文件. FHS定义了两层规范,第一层是,/目录下面的各个目录应该要

Linux 基础入门----用户及文件权限管理

用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李雷”和“韩梅梅”都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理 和 权限机制 ,不同用户不可以轻易地查看.修改彼此的文件. 下面我们就来学

Linux基础之linux的历史(针对韩立刚老师的linux教学视频编写的笔记)

#  Linux操作系统历史 1969年美国贝尔实验实研发Unix操作系统,Unix系统特点:多用户:多任务:支持多种处理器架构:Shell大部分使用C语言开发. 1973年美国国防部研发出TCP/IP协议,这个协议让各个Unix系统之间达到互联,这是最初的intelnet的模型.迄今为止互联网使用的还是TCP/IP协议. 1983年Richard Stallman提出自由软件运动,特点:自由获取,自由改变,自由分发,自由使用.提出GNU计划,目标:创建一套完全自由的操作系统. GNU计划的协定

【Linux基础】Linux简史

混沌初开?那是在一九九一年,令人痛苦难耐的冷战渐渐走到了尽头.和平安详的空气开始升起在地平线.在计算科学领域,随着强大硬件的推出,计算机的极限能力已超出了我们的想象,一个辉煌的未来似乎已渐露端倪. 但,还是缺了点儿什么?在操作系统领域,存在着一大片空白. 一方面,DOS还统治着庞大的个人电脑王国. 比尔盖茨花$50,000从一个西雅图***手中买来DOS.之后,靠着聪明的市场策略,这个简陋的操作系统悄悄***到了世界的每一个角落. PC用户没有其它的选择.苹果机虽好,但它的天价没人能承受得起.它

Linux基础之Linux简介

Linux(英语发音:/?l?n?ks/ lin-?ks)是一种自由和开放源代码的类UNIX操作系统. Linux简介 Linux(英语发音:/?l?n?ks/ lin-?ks)是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布.在加上用户空间的应用程序之后,成为Linux操作系统.Linux也是自由软件和开放源代码软件发展中最著名的例子.只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修

linux[基础]-20-用户与文件权限-[su命令和sudo服务]-[03]

su命令和sudo服务 su命令用于切换用户(切换登陆者) 格式:su [-] 用户名 [-]:表示使用新用户的环境变量 使用[-]作用: [[email protected] test1]# echo $PATH   #查看root的环境变量 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin [[email protected] test1]# su - linuxs Last login: Sun S

Linux基础(三)——文件权限管理&光盘、镜像挂载

Linux文件权限管理 更改文档归属 ls -ld 文档... 查看文件归属 chown -R(目录) 属主 文档... chown -R :属组 文档... chown -R 属主:属组 文档... 同时修改属主.属组 访问权限 读取 -read 写入 -write 可执行 -excute '如果用户对一个文件有 r.w.x权限:' r,查看文件内容(cat.vim看.less.--) w,修改文件内容(vim) x,能够运行程序文件 '如果用户对一个目录有 r.w.x权限:' r,查看目录内