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:执行权限.可读,可写,可执行的权限, ...
随机推荐
- halcon
读图write_imageread_image *图片路径 FilePath:='d:/pic/demo.jpg' *判断文件是否存在 file_exists ('/bin/cc', FileExis ...
- jQuery .prop()
.prop() .prop( propertyName )Returns: Anything Description: Get the value of a property for the firs ...
- gcc编译错误
使用boost的时候遇到一个链接错误 undefined reference to `boost::system::detail::generic_category_instance 出现这个问题的有 ...
- FusionCharts的属性
FusionCharts 的 XML标签属性有一下四种数据类型 * Boolean - 布尔类型,只能为1或者0.例如:<graph showNames='1′ > * Number - ...
- spring BeanUtils.copyProperties只拷贝不为null的属性
在MVC的开发模式中经常需要将model与pojo的数据绑定,apache和spring的工具包中都有BeanUtils,使用其中的copyProperties方法可以非常方便的进行这些工作,但在实际 ...
- [Flask]jinja2模板-宏的使用
定义宏: macros.html <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
- 使用zipkin2在SpringCloud2.0环境下追踪服务调用情况
1.目的: 使用zipkin2.0在Spring Cloud 2.0环境下,追踪服务调用情况. 2.所需组件: zipkin2.0,Spring Cloud 2.0,Eureka Server,Eur ...
- 通过JavaScript让页面只刷新一次
1.充分利用地址栏可带参数的选项,用脚本来取得页面间的传递参数,并不需要后台程序的支持. 2.函数名 function reurl(){ url = location.href; //把当前页面的地址 ...
- Linux从一个服务器拷贝文件到另一个服务器上
***复制文件夹到另外一个服务器scp -r tmp root@114.215.80.12:/work/temp输入密码 scp -r customer root@114.215.80.12:/hom ...
- 短信验证码api
最近遇到的项目需要个随机短信验证码实现注册用户 选用的是“云信使”,因为有15条免费的测试短信可以验证代码是否正确调用该短信api 地址 进入短信平台 一.实名认证 + 短信模板 用户认证完成后,创建 ...