Linux学习--第八天--acl、SetUID、SetGID、chattr、lsattr、sudo
acl权限
文件只能有一个所属组
acl就是不管用户什么组了,直接针对某个文件给他特定权限。
acl需要所在分区文件系统的支持。
df -h #查看分区
dumpe2fs -h /dev/sda3 #-h 只显示超级块中的信息,而不显示磁盘快组的详细信息。
#dump2fs命令查看分区详细文件系统信息
mount -o remount,acl / #给/分区添加acl权限,这条命令是临时生效,永久失效需要修改文件/etc/fstab
vi /etc/fstab #UUID=fadf-fds-adfaf-sdfa-fafdasdsadfsdf / ext4 defaults,acl
mount -o remount / #重新挂载文件系统,使修改生效
| setfacl选项 | 描述 |
|---|---|
| -m | 设定acl权限 |
| -x | 删除指定的acl权限 |
| -b | 删除所有的acl权限 |
| -d | 设定默认的acl权限 |
| -k | 删除默认的acl权限 |
| -R | 递归指定的acl权限 |
useradd mic
useradd leon
groupadd classroom
gpasswd -a leon classroom
gpasswd -a mic classroom
mkdir /test
chown root:classroom /test
chmod 770 /test
useradd shiting
setfacl -m u:shiting:rwx /test
group newgroup
setfacl -m g:newgroup:rwx /test
setfacl -m m:rx /test #修改最大有效权限
getfacl /test #前面设置的是特殊acl权限,最后生效的权限是由mask最大有效权限和设置的特殊acl权限用与计算过来的。
setfacl -x u:用户名 /test
setfacl -x g:组名 /test
setfacl -b /home/project #删除所有acl权限
setfacl -m u:用户名:权限 -R /test #递归设置acl权限
setfacl -m d:u:用户名:权限 #设置默认acl权限
#默认acl只针对新建的。对现有的还是递归acl。
#递归只能针对目录,不能针对文件,不会报,但没什么用。
SetUID,SetGID
查看权限如果是rwS而不是rws,说明报错了,因为该命令执行者没有x权限。
不要随便改SetUID,非常危险,为什么呢?
因为他会灵魂附体,比如给vim设置了,那么以后普通用户就可以修改passwd文件。
chattr
chattr +i /test #文件设置了i权限,不允许删除、改名、添加数据、修改数据;目录设置了i权限,只能修改目录下的文件,不能删除和建立文件
chattr -i /test
chattr =a /test #文件设置了a权限,只可以增加数据,但不能删除不能修改数据;目录:只能建立和修改文件,不允许删除
设置了a属性后,不能用vi编辑文件,只能用 echo 然后 >>
chattr 连root的权限都能限制
lsattr -a /test #显示所有文件和目录的attr权限
chattr -d /test #显示test目录的attr权限
sudo
visudo
root ALL=(ALL) ALL
#%wheel ALL=(ALL) ALL
sc 192.168.0.156= /usr/bin/useradd
Linux学习--第八天--acl、SetUID、SetGID、chattr、lsattr、sudo的更多相关文章
- linux 学习第八天
一.特殊权限 1.SUID 让命令的执行者临时获取到了所有者权限(rws) 2.SGID 让目录中新的文件的所有组,归属上级目录 3.SBIT 粘滞位 让目录内的文件只能被文件所有者删除 4.修改文件 ...
- linux学习第八天 (Linux就该这么学)
今天学了,mount 挂载,umount撤销挂载,.fdisk 命令 管理硬盘 交换分区swap,硬盘配额 xfs_quota命令 今天工作,手机看了,看的不全,回头看录播了.
- Linux文件与目录管理 cp od chattr lsattr
1:在shell脚本中,一定要使用绝对路径. 2:在根目录下,.和..是完全相同的两个目录. 3:cd - 就相当于撤销,表示回到前面状态所在的目录. 4:mkdir -m 700 test 加&qu ...
- Linux学习笔记——使用指定的用户权限执行程序——sudo
sudo可以用来以其他用户身份执行命令,sudo命令可以针对单个命令授予临时权限.sudo仅在需要时授予用户权限,减少了用户因为错误执行命令损坏系统的可能性. 1:sudo的帮助信息如下: ...
- 【linux命令】权限管理命令(chattr、lsattr、sudo)
目录 chattr lsattr sudo 一.chattr命令 chattr命令用来修改文件系统的权限属性,只有 root 用户可以使用,建立凌驾于 rwx 基础权限之上的授权. PS:chattr ...
- 五大权限:UGO权限、SetUID SetGID Sticky、ACL权限、chattr(文件系统级别的权限)、SELINUX
五大权限:UGO权限.SetUID SetGID Sticky.ACL权限.chattr(文件系统级别的权限).SELINUX ======================文件属性以及ugo权限= ...
- Linux学习之文件特殊权限详解(SetUID、SetGID、Sticky BIT)(十一)
Linux学习之文件特殊权限详解(SetUID.SetGID.Sticky BIT) 目录 SetUID SetGID Sticky BIT SetUID SetUID简介 只有可以执行的二进制程序和 ...
- Linux学习之文件属性chattr权限与sudo权限(十二)
Linux学习之文件属性chattr权限与sudo权限 文件属性chattr Linux文件的隐藏属性在保护系统文件的安全性上非常重要,是防止误操作的,对root用户也同样有效.chattr命令只能在 ...
- linux学习(八)chmod、chown、umask、lsattr、chattr
一.权限位 权限位分为两个部分,第一个部分是谁的权限,第二部分是权限是多少.其中第一个部分一般分为:用户,用户组,其他用户.第二部分分为r:读权限,w:写权限,x:执行权限.可读,可写,可执行的权限, ...
随机推荐
- 【Spark机器学习速成宝典】基础篇01Windows下spark开发环境搭建+sbt+idea(Scala版)
注意: spark用2.1.1 scala用2.11.11 材料准备 spark安装包 JDK 8 IDEA开发工具 scala 2.11.8 (注:spark2.1.0环境于scala2.11环境开 ...
- python连redis测试
python 版本 3.x执行环境需要安装redis模块: pip install redis 执行脚本前,有redis-cli中查询key值: 执行脚本: ********************* ...
- 运算 Kotlin(3)
运算Kotlin支持数字运算的标准集,运算被定义为相应的类成员(但编译器会将函数调用优化为相应的指令) . 参见运算符重载.对于位运算,没有特殊字符来表示,而只可用中缀方式调用命名函数,例如:val ...
- Cas服务器以及客户端搭建
一.搭建cas服务器 官网:http://jasig.github.io/cas/ Cas Server 下载:http://developer.jasig.org/cas/ Cas Client 下 ...
- [SQL语句的常用统计函数]
1. upper() 转化为大写 Lower() 转化为小写 SELECT UPPER(列名称) FROM 表名称 SELECT LOWER(列名称) FROM 表名称 2. Sum ...
- LDA(Latent Dirichlet Allocation)主题模型算法
原文 LDA整体流程 先定义一些字母的含义: 文档集合D,topic集合T D中每个文档d看作一个单词序列< w1,w2,...,wn >,wi表示第i个单词,设d有n个单词.(LDA里面 ...
- CNN入门讲解-为什么要有最后一层全连接?
原文地址:https://baijiahao.baidu.com/s?id=1590121601889191549&wfr=spider&for=pc 今天要说的是CNN最后一层了,C ...
- Jmeter(三)关联数组
上一篇贴子讲到了利用后置处理器中的正则表达式实现了关联, 可以获取特定的动态参数. 但是还不能实现phpwind的随机发贴. 要实现随机发贴, 我们只用做一点小小修改就可以实现了. 匹配数字: 在匹配 ...
- web开发(二) Servlet中response、request乱码问题解决
在网上看见一篇不错的文章,写的详细. 以下内容引用那篇博文.转载于<http://www.cnblogs.com/whgk/p/6412475.html>,在此仅供学习参考之用. 一.re ...
- Selenium 2自动化测试实战2(数组与字典)
一.数组与字典 1.数组 数组用方括号([])表示,里面的每一项用逗号(,)隔开 Prthon允许在数组里面任意地放置数字或字符串.需要注意的是,数组下标是从0开始的,所以,lists[0]会输出数组 ...