首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
系统相关
> 详细
linux系统权限大全
时间:
2017-07-21 21:57:45
阅读:
258
评论:
0
收藏:
0
[点我收藏+]
标签:
linux
系统权限
linux系统权限大全
一、 文件的归属:
文件所有者(owner)、用户组(group)、其它人(others)
二、查看 linux文件权限以及归属
ls 命令 ls -al 查看文件详细权限和属性
权限 r w x
三、设置文件目录的权限
1、 修改权限的命令
有 chmod chown chgrp
四、默认权限
1 、查看默认权限 umask umask -s
2 、更改默认权限 umask xxx 直接接数字
五、文件或目录的隐藏属性
1、 设置文件的隐藏属性:
chattr [-R] [+-=] [a、i] file
-R
递归更改目录的隐藏属性
a
增加这个参数后,可以追加的方式增加数据,不能修改数据,
i
不能修改删除增加数据,相当于写保护
2、显示文件的隐藏属性:
lsattr [-Rda] file
-R
将子目录的属性也显示出来
-d
接的是目录那就只显示目录
-a
将隐藏文件的属性也显示出来
六、文件的特殊权限
1、
SetUID
--- 前提必须是
二进制可执行文件
,执行者对这个文件具有二进制可执行权限,执行者将暂时
具有该文件所有者的权限
,相当于执行者对此文件有root用户的权限,使得任意使用者在执行该 文件时,都绑 定了文件拥有者的权限。 全能的root用户当然可以任意setUid和setGid,普通用户只能给属于自己的文件配置 setUid或setGid
2、
SetGID
---前提必须是二进制可执行文件,执行者对这个文件具有二进制可执行权限,执行者将暂时
具有该文件用户组的权限,使得任意使用者在执行该文件时,都绑定了文件所有组的权限
3、
Sticky bit
----粘滞位权限,
主要针对目录生效
,当目录sticky位被设置以后,只有root或者文件属主
才能删除或 移动它
setuid,setgid,sticky的八进制位分别是4, 2, 1,助记法表示为u+s,g+s,o+t,(删除标记位是u-s,g-s,o-t)
SetUID
的设置:
chmod u+s test.sh 或者 chmod 4755 test.sh #增加setuid权限
chmod u-s test.sh 或者 chmod 755 test.sh #删除setuid权限,目录需用
u-s
拥有setuid权限的二进制可执行文件背景色为
红色
SetGID
的设置:
chmod g+s test.sh 或者 chmod 2755 test.sh
chmod g-s test.sh 或者 chmod 755 test.sh
拥有setgid权限的二进制可执行文件背景色为
黄色
同时设置setuid和setgid
,就是把setuid和setgid两个八进位的值相加 (4000+2000=6000),即 6755
chmod 6755 test.sh 或者 chmod u+s,g+s test.sh #同时增加setuid和setgid权限
chmod 755 test.sh 或者
chmod u-s,g-s test.sh
#同时删除setuid和setgid权限,目录需用后者
文件的属主和属组位的执行权限都为s
如果文件所归属的属主没有执行权限,则这个权限显示为
大S
, setgid同理
setuid实例:
普通用户之所以可以修改自己的密码是因为passwd命令设置了setuid权限:
#su命令也一样。
让普通用户可以删除root目录下的文件(非常危险,只做测试)
chmod u+s /bin/rm #给rm这个命令加上setuid权限即可。
Sticky bit
粘滞位权限设置:
chmod o+t stdir/ 或者 chmod 1755 stdir/ #增加
Sticky bit
权限
chmod o-t stdir/ 或者 chmod 755 stdir/ #删除
Sticky bit
权限
具有
Sticky bit
权限的目录颜色为蓝色,其它者位的执行权限x则为
t
实例
:在Linux下,/tmp是一个存放临时文件的目录,要求是对所有用户可写,
但每个用户都只能删除自己拥有的文件。这种情况下,就可以把目录加一个粘滞位。
rwt===可以进入该目录,可以列出该目录中的文件,可以在该目录中增加文件,但不能删除
其他用户的文件,自己的文件可以删除。
七、ACL
((Access Control List 访问控制列表)
在linux系统中,我们将访问文件的用户分为三类,user,group,other。如果系统中某个用户想对某个文件有写入的权限,但是该用户是属于other,如果是这样,就只能够开放other的权限。但是一旦开放other的权限,那么所有人就对该文件有写入的权限了。文件的ACL权限就很好的解决了这个问题,它可以设置一个特定文件的特定权限给一个用户或者组
ACL的分类:
存取型 : 可以用于文件和目录
预设型 : 只用于目录,其子目录都继承主目录的ACL权限,
ACL的设置命令:
setfacl
选项 规则 file
选项:
-m 增加或修改ACL中的规则
-d 设置默认的ACL设置信息(只对目录有效)
-x 移除一个扩展的ACL设置信息
-b 删除所有的扩展的ACL设置信息
规则:
u:用户名或用户ID:权限 给一个用户设置权限
g:用户组或组ID:权限 给一个用户组设置权限
other::权限 指定其他所有者的权限
mask::权限 设定有效的权限屏蔽
getfacl
选项 file
选项:
-e 查看文件的mask有效权限
存储型 ACL权限设置:
设置规范:
setfacl -m u:用户名或用户ID:权限 给一个用户设置权限
setfacl -m g:用户组或组ID:权限 给一个用户组设置权限
设置实例:
setfacl -m u:feng:rwx ting/ #设置允许用户feng对ting这个目录有rwx权限
setfacl -m g:feng:rwx ting/ #设置允许用户组feng对ting这个目录有rwx权限
setfacl -x u:feng ting/ #删除用户feng对ting这个目录的rwx权限
注意:权限书写必须是rwx 不能是数字,不然报错无效的操作.
设置了ACL的目录或文件,在属性的最后一位会出现一个
“+”
号,如下图:
预设型ACL权限设置:
设置规范:
setfacl -d -m [ug]:列表:[rwx] 目录 (注意:-d参数必须放在最前面。)
setfacl -d --set [ug]:列表:[rwx] 目录 (注意:-d参数必须放在最前面。)
setfac l -m d:[ug]:列表:[rwx] 目录
设置实例:
setfacl -d -m u:feng:rwx acldir/
setfacl -d --set u:feng:rwx acldir/
setfacl -m d:u:feng:rwx acldir/
setfacl -m d:g:feng:rwx acldir/ #设置用户组feng对acldir目录有读写权限
setfacl -b acldir/ #删除所有关于acldir目录下的扩展权限。
getfacl -e acldir/ #查看权限
注意:设置了
预设型ACL权限
的目录,设定权限之前的文件不会继承 acl权限,只有设定之后
再创建的文件才会继承acl权限。
针对有效权限mask的设定
这是一个权限掩码。用来控制你所设置的扩展ACL权限。你所设置的权限必须存于mask规定的范围内才会生效,也就是所谓的“有效权限(effective permission),设定的最终权限由mask控制,你所设置的权限必须在mask内,否则相对mask多出来的权限也是无效的,可以用 getfacl -e 命令查看有效权限:
注意:若用户帐号不填的时候就默认为文件的 所有者。用户组不填时就默认为文件的所属用户组
注意:如果setfacl命令不指定操作用户,那么就是对默认属主用户权限的操作(例如acl_test/目录,owner:root,group:root),这时候的setfacl命令功能上和传统的chmod相同。例如setfacl u::rwx,g::rwx,o::rwx acl_test/ 等价于chmod 777 acl_test/ 。就是把缺省设置信息全部设置为rwx的权限了。
linux系统权限大全
标签:
linux
系统权限
原文地址:http://lzp5896.blog.51cto.com/6163095/1949776
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
gitlab 在linux安装环境下存储地址
2021-07-29
当 Mac 未检测到外部显示器时如何修复它
2021-07-29
Ubuntu18.04安装qemu遇到问题-qemu : Depends: qemu-system (>= 1:2.11+dfsg-1ubuntu7)
2021-07-28
[Linux]Shell编程【待续】
2021-07-28
Linux系统资源查看
2021-07-27
Archlinux爬坑指南
2021-07-27
[Linux]Linux发展历程
2021-07-27
非桌面系统 (ubuntu)安装google-chrome
2021-07-27
在Ubuntu18.04系统中源码安装 gcc7.3.0
2021-07-23
Linux快捷键杂记
2021-07-22
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!