课时16 Linux扩展权限(默认权限和特殊权限)
来源:互联网 发布:mac下载工具推荐 编辑:程序博客网 时间:2024/06/08 04:33
Linux课程学习笔记来源于网易云课堂:Linux 入门基础
1 linux 默认权限
新建文件默认权限:-rw-rw-r--
新建文件夹默认权限: -rwxrwxr-x
l 每一个终端都拥有一个umask属性,来确定新建文件、文件夹的默认权限
l umask 使用数字权限方式表示,如:022
l 目录的默认权限:777-umask
l 文件的默认权限:666-umask
l 一般,对于普通用户默认的umask是002,root用户的默认是022
l 即对于普通用户来说:
新建文件的权限是:666-002=664
新建目录的权限是:777-002=775
一般普通用户的umask是002,root用户是022
命令umask用来查看、设置默认的umask值:
umask022
2 特殊权限
除普通权限外,还有三个特殊权限:(root不受文件权限的限制,权限无穷大)
权限 对文件的影响 对目录的影响
l suid 以文件的所属组用户身份执行,而非执行文件的用户 无
eg:例如,修改用户的密码,/usr/bin/passwd文件在passwd指令运行时,不是以执行文件的用户(普通用户),而是以文件的所属用户(root用户)进行执行的
l sgid 以文件所属组身份执行 在该目录中创建的任意新文件的所属组与该目录的所属组相同
eg:例如,对新建一个文件夹后,有一个默认所属组,对其所属组修改后,在该文件夹创建新的文件后,文件的所属组还是原来的默认所属组,并不是新修改后的所属组。在这种情况下,该命令可以解决该问题。
l sticky 无 对目录拥有写入权限的用户仅可以删除其拥有其拥有的文件,无法删除其他用户的文件
eg:例如,两个用户共用一个目录,都可以对该目录进行读写,但是一般情况下,一个用户进入该目录,可以读取另外一个用户的文件,同时可以删除该文件。从实际来讲,一个用户的文件应当仅可以由该用户删除,其他用户无法删除的。在此情况下,需要使用到该命令。
3 设置特殊权限
l 设置suid:(都是设置给可执行文件的,会用高亮显示)
chmod u+s dirtemp
l 设置sgid:
chmod g+s filetemp (将group的权限的x位替换为s)
l 设置sticky:
chmod o+t filetemp (将others的权限的x位替换为t)
l 与普通权限一样,特殊权限也可以使用数字方式表示
- SUID = 4
- SGID = 2
- Sticky = 1
所以可以通过以下命令设置:
chmod 4755 filename
4 练习
[root@localhost liqianzhong]# groupadd testgrp[root@localhost liqianzhong]# useradd -G testgrp user1[root@localhost liqianzhong]# useradd -G testgrp user2[root@localhost liqianzhong]# mkdir /tmp/test[root@localhost test]# cd /tmp[root@localhost tmp]# chgrp testgrp test[root@localhost tmp]# chmod g+rwx test[root@localhost tmp]# su - user1[user1@localhost ~]$ cd /tmp/test[user1@localhost test]$ touch user1[user1@localhost test]$ lsuser1[user1@localhost test]$ exitlogout[root@localhost tmp]# su - user2[user2@localhost ~]$ cd /tmp/test[user2@localhost test]$ ls[user2@localhost test]$ exitlogout[root@localhost tmp]# chmod o+t test[root@localhost tmp]# ls -ld testdrwxrwxr-t. 2 root testgrp 4096 Aug 3 11:12 test[root@localhost tmp]# su - user1[user1@localhost ~]$ cd /tmp/test[user1@localhost test]$ ls[user1@localhost test]$ touch user1[user1@localhost test]$ lsuser1[user1@localhost test]$ exitlogoutuser1[user2@localhost test]$ rm -rf user1[user2@localhost test]$ ls[root@localhost tmp]# su - user2[user2@localhost ~]$ cd /tmp/test[user2@localhost test]$ lsuser1[user2@localhost test]$ rm -rf user1rm: cannot remove `user1': Operation not permitted[user2@localhost test]$ cat user1[user2@localhost test]$
- 课时16 Linux扩展权限(默认权限和特殊权限)
- Linux默认权限、特殊权限
- linux 文件的默认权限,隐藏权限和特殊权限
- Linux——Linux默认权限、特殊权限
- Linux学习第十一篇--默认权限和特殊属性
- 【Linux 学习】文件普通、默认和特殊权限
- 16-Linux-权限扩展
- 课时15 Linux权限机制
- Linux 文件属性和默认权限
- Linux权限管理(基本权限、默认权限)
- Linux权限管理(基本权限、默认权限、
- Linux权限管理(基本权限、默认权限、
- Linux文件默认权限(umask)的修改/特殊权限/细部权限规划(ACL)
- linux 特殊权限
- Linux的特殊权限
- Linux特殊文件权限
- linux中的特殊权限
- Linux文件特殊权限
- 优秀的Android图表开源控件
- 2017日照夏令营 day6 t3 exist
- 柯里化再谈
- Hibernate学习之---Hibernate的关联映射
- redis事务
- 课时16 Linux扩展权限(默认权限和特殊权限)
- 一段奇怪的代码:
- uva 12938
- hdu6073 Matching In Multiplication
- 组件化及组件间通信
- 洛谷P2015 二叉苹果树
- Java基础07 包
- 网页设计中常见的兼容性问题
- 常见的几种排序算法