Linux 特殊权限 set_gid

特殊权限set_gid

set_gid特殊权限 , 是作用在用户组权限位的 , 也是用一个s来表示 .

作用在文件上的时候 , 和set_uid功能一样 , 就是确保组外的普通用户 , 在使用该文件时, 能临时拥有用户组的身份 .

另外 , set_gid特殊权限 , 还可以作用在目录上 . 其作用就是 , 不管当前登陆的是哪个用户 , 只要该目录设置了set_gid权限 , 那么该目录下新建的子目录和子文件的所属组都跟该目录的所属组保持一致 . ps : 在Linux系统中 , 默认情况下, 登陆那个用户 , 新建的文件和目录(子文件,子目录)都属于该用户所在的用户组.

1. 作用在文件上

[[email protected] ~]# ls -l /usr/bin/ls-rwsr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls
[[email protected] ~]# chmod u-s /usr/bin/ls[[email protected] ~]# !lsls -l /usr/bin/ls
-rwxr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls
[[email protected] ~]# chmod g+s /usr/bin/ls[[email protected] ~]# !lsls -l /usr/bin/ls
-rwxr-sr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls
[[email protected] ~]#

2. 作用在目录上

1. 目录没有设置set_gid权限的情况> 哪个用户登陆 , 新建的文件/目录(子文件/子目录)就属于该用户的所属组> 栗子1: 登陆普通用户allin
[[email protected] tmp]$ mkdir 234/
[[email protected] tmp]$ ls -ld 234/
drwxrwxr-x. 2 allin1 allin1 6 6月   9 10:52 234/
[[email protected] tmp]$ mkdir 234/123/
[[email protected] tmp]$ ls -ld 234/123/
drwxrwxr-x. 2 allin1 allin1 6 6月   9 10:53 234/123/
[[email protected] tmp]$ touch 234/1[[email protected] tmp]$ ls -l 234/1-rw-rw-r--. 1 allin1 allin1 0 6月   9 10:53 234/1[[email protected] tmp]$

> 栗子2 : 登陆root用户
[[email protected] ~]# cd /tmp/[[email protected] tmp]# ls111  1.txt  222  234  allin2  allinlinux  systemd-private-0f4b60569c224727b1ec0153a8598630-vmtoolsd.service-qCx2Tt  tmp
[[email protected] tmp]# mkdir 345/[[email protected] tmp]# ls -ld 345/drwxr-xr-x. 2 root root 6 6月   9 10:56 345/
[[email protected] tmp]# mkdir 345/123/[[email protected] tmp]# ls -ld 345/123/drwxr-xr-x. 2 root root 6 6月   9 10:56 345/123/
[[email protected] tmp]# touch 345/1[[email protected] tmp]# ls -l 345/1-rw-r--r--. 1 root root 0 6月   9 10:56 345/1[[email protected] tmp]#

2. 目录设置set_gid权限的情况

> 无论哪个用户登陆 , 在设置了set_gid权限的目录下,新建的子文件/子目录 , 其所属组会和该目录保持一致 , 不受登陆用户影响 . 

> 预设场景 : 在/tmp/目录下, 新建一个目录/666/ , 并把它的所属组更改成user1 ,然后为该目录设置set_uidquanxian , 最后使用root用户进行操作 . 观察结果:
[[email protected] tmp]# ls -l 总用量 4drwxrwxr--. 4 root   root   45 6月   8 21:20 111-rw-rw-r--. 1 root   root   65 6月   8 21:16 1.txt
drwxr-xr-x. 2 root   root    6 6月   8 20:11 222drwxrwxr-x. 3 allin1 allin1 26 6月   9 10:53 234drwxr-xr-x. 3 root   root   26 6月   9 10:56 345drwxr-xr-x. 4 root   root   40 6月   6 21:32 allin2
drwxrwxrwx. 2 allin1 user1  19 6月   8 14:58 allinlinux
drwx------. 3 root   root   17 6月   8 14:15 systemd-private-0f4b60569c224727b1ec0153a8598630-vmtoolsd.service-qCx2Tt
drwxr-xr-x. 4 root   root   28 6月   6 17:16 tmp
[[email protected] tmp]# mkdir 666/[[email protected] tmp]# ls -ld 666/drwxr-xr-x. 2 root root 6 6月   9 11:01 666/
[[email protected] tmp]# chown :user1 666/[[email protected] tmp]# ls -ld 666/drwxr-xr-x. 2 root user1 6 6月   9 11:01 666/
[[email protected] tmp]# chmod g+s 666/[[email protected] tmp]# ls -ld 666/drwxr-sr-x. 2 root user1 6 6月   9 11:08 666/

[[email protected] tmp]#

> 栗子1 : 登陆超级用户root
[[email protected] tmp]# mkdir 666/111/[[email protected] tmp]# ls -ld 666/111/drwxr-sr-x. 2 root user1 6 6月   9 11:10 666/111/
[[email protected] tmp]# touch 666/1[[email protected] tmp]# ls -l 666/1-rw-r--r--. 1 root user1 0 6月   9 11:10 666/1[[email protected] tmp]#

时间: 2024-10-11 22:59:26

Linux 特殊权限 set_gid的相关文章

Linux -特殊权限-set_uid、set_gid、stick_bit

Linux -特殊权限-set_uid:s权限:set_uid 红色的为S权限.针对普通用户.set_uid作用:保证普通用户临时拥有该命令所有者的身份.root用户有任何权限,普通用户则有权限限制.普通用户无修改密码权限. 给一个文件上设置,set_uid,前提是,一个可执行的二进制文件.二进制文件:像ls passwd命令都是二进制文件.如果给1.txt文件给set_uid权限,则无意义. 授权set_uid权限.chmod u+s /usr/bin/ls 赋予set_uid权限.取消set

Linux 文件权限总结

在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就直接取自于 UNIX 文件权限(www.lampbrother.net). 但不要以为理解文件权限需要长时间的学习.事实上会很简单,让我们一起来看看你需要了解哪些内容以及如何使用它们. 基础概念 你要明白的第一件事是文件权限可以用来干什么.当你设置一个分组的权限时发生了什么?让我们将其展开来说,这个

【CentOS】Linux sudo权限集中管理案例

目的 使得公司的Linux系统权限管理更规范,让每个用户拥有自己所该有的权限,防止因为某些用户的权限过大后的一些误操作,导致服务器的不正常运行. 操作 1.编辑Linux系统中的sudoers文件 [[email protected] ~]# vim /etc/sudoers #Edit by root User_Alias NETMAN = net01, net02 #用户别名 User_Alias ADMIN = admin01, admin02 User_Alias SA = %sa #定

2.18 特殊权限set_uid 2.19 特殊权限set_gid 2.20 特殊权限stick_bit 2.21 软链接文件 2.22 硬连接文件

2.18 特殊权限set_uid 2.19 特殊权限set_gid 2.20 特殊权限stick_bit 2.21 软链接文件 2.22 硬连接文件 2.18 特殊权限set_uid passwd 有setuid 权限 s 是set_uid的权限 更改密码的文件 即使是000权限,root 也可以更改这个文件 passwd 有setuid 权限  当普通用户执行该命令的时候,就会临时拥有root用户的身份 给用户设置uid 前提是 这个文件是 二进制文件 ,而且是一个可执行文件 怎么给一个文件

linux特殊权限SUID、SGID、SBIT

linux特殊权限SUID.SGID.SBIT 一.SUID 我们先来看一个文件,如下: [[email protected] ~]# ll /usr/bin/passwd -rwsr-xr-x. 1 root root 25980 2月  22 2012 /usr/bin/passwd 可以看到/usr/bin/passwd这个文件状态是"-rwsr-xr-x",而不是我们平时所熟悉的"-rwxr-xr-x",那么当s出现在文件拥有者的x权限上时,此时就被称为SE

linux的权限管理

linux的权限管理命令主要有chown,chgrp,chmod. linux权限 linux的权限有:r,w,x. 对于文件而言:r表示可读,即可以用cat等命令查看:w表示可写,可以编辑或者删除此文件:x,表示可执行,可以再命令提示符下提交给内核执行(linux创建文件默认是不具有执行权限的). 对于目录而言:r表示可对此目录执行ls列出 内部的所有文件:w表示可以在此目录创建文件:x,表示可以cd到此目录,并且使用ls -l列出详细信息(linux目录一般都有x). linux的特殊权限有

Linux文件权限表示

属主,属组,其他用户 Linux下一个文件的权限包含属主.群组和其他人的权限,并且各个用户对该文件具有单独设置的权限,这是 Linux 权限模型的核心. 那么什么是属主,属组,其他用户呢? 属主: 属主即一个文件的拥有者,一般为这个文件的创建者 属组: Linux下的每个用户都会属于一个组别.那么这个组别就叫做属组 其他用户: 其他用户即为属主和属主所在属组以外的所有人, 例如:有个用户A,用户名是 A,他的属组名称也是 A ,还有一个用户B,用户名是B 他的属组名称也是B 这个时候用户A 创建

linux 用户权限设置

# useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假设当前用户是sam,则下面的命令修改该用户自己的口令: # passwd Old password:****** New password:******* Re-enter new password:******* 如果是超级用户,可以用下列形式指定任何用户的口令: # passwd sam New

Linux之权限

基础权限 文件权限修改工具(chmod) chmod 修改文件权限位 chmod [OPTIONS] MODE[,MODE] FILES OPTIONS: -R 递归更新 --reference=RFILE 引用指定文件的权限位 MODE表示方法: 字母表示法 rwxrwxrwx 数字表示法 777 作用对象: 属主,使用'u'表示 属组,使用'g'表示 其他人,使用'o'表示 所有人,使用'a'表示 操作符号: + 添加权限位 - 删除权限位 = 左侧作用对象,右侧指定MODE(两侧留空为00