您好,登录后才能下订单哦!
本篇内容主要讲解“Linux文件与目录的默认权限与隐藏权限”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux文件与目录的默认权限与隐藏权限”吧!
文件的权限可以使用chmod来改变,但是我们默认创建文件的权限是什么?那就是与umask这个有关了。下来我们学习这个指令
1.1 简单使用umask
[root@iZbp13q6hd8z3xaagcmz6gZ /]# umask0022[root@iZbp13q6hd8z3xaagcmz6gZ /]# umask -Su=rwx,g=rx,o=rx[root@iZbp13q6hd8z3xaagcmz6gZ /]#
查阅的方式有俩种,一种是直接输入umask,就可以看到数字体态的权限设置分数。一种则是加上-S这个选项,就会以符号类型的方式来显示出权限了。
1.2 解释为什么会有四组数字
我们的文件权限会有十个字符,第一字符代表文件类型,剩余九个字符分为三组,分别为拥有者(owner),群组(group),其他人(others)
但是在这里第一组是特殊权限用的,后边的三组才是我们的需要学习的权限。
1.3 文件和目录的默认权限
在默认权限的属性上,目录和文件是不一样的,因为X权限对于目录是非常重要的!没有X权限就代表无法进入这个目录工作。但是文件则不需要这个权限,因为文件通常是用在于数据的记录,所以就不需要。
文件的默认权限:-rw-rw-rw-
目录的默认权限:drwxrwxrwx
1.4 解释umask数字的含义
umask的分数指的是该默认值需要减掉的权限,r,w,x分别是4,2,1分。
在1.1中我们知道umask为0022,第一个值我们暂时不管,第二个值为0,也就是user并没减去任何权限,不过group和others的权限都减去了2(也就是w这个权限)那么当这个用户创建文件和目录的权限分别就是
文件:(-rw-rw-rw-)- (-----w--w-)= -rw-r--r--
目录:(drwxrwxrwx)- (d----w--w-)= drwxr-xr-x
1.5 实战检测1.4 推测的准确性
实战的检测证明了我们的推理是正确的
[root@iZbp13q6hd8z3xaagcmz6gZ learn]# umask0022[root@iZbp13q6hd8z3xaagcmz6gZ learn]# ll -d test*-rw-r--r-- 1 root kaka 0 Aug 15 11:19 test1drwxr-xr-x 2 root kaka 4096 Aug 15 11:19 test2[root@iZbp13q6hd8z3xaagcmz6gZ learn]#
1.6 umask的利用与重要性
想象一个状况那就是你跟你的工作伙伴在一个目录下工作,然后你创建的文件你的工作伙伴只有读的权限,没有写的权限。那是不是你创建一个文件,你就得修改一下文件的权限。在不知道umask这个指令之前或许是,但是现在可以一键设置,哈哈
处理这个问题很简单的啦!那就是说只要保证我们的文件权限为664就可以了呗!
那么我们的umask的数值就应该是002了,而不是022.
1.7 如何设置umask
umask后边直接跟上数值就可以了
[root@iZbp13q6hd8z3xaagcmz6gZ learn]# umask 002[root@iZbp13q6hd8z3xaagcmz6gZ learn]# touch test;ll test-rw-rw-r-- 1 root kaka 0 Aug 16 10:49 test[root@iZbp13q6hd8z3xaagcmz6gZ learn]#
1.8 umask默认值的注意点
为了安全考虑root用户为022,其他用户为002
文件:(-rw-rw-rw)- (--------wx) = -rw-rw-r--
目录:(drwxrwxrwx)- (d-------wx) = drwxrwxr--
文件除了有那三个权限之外,还有隐藏的属性,下面看一下
2.1 chattr设置文件隐藏属性
:+ 增加某一个特殊参数,其他原本存在参数则不动。
:- 移除某一个特殊参数,其他原本存在参数则不动。
:= 设置一定,且仅有后面接的参数
参数:
a :当设置 a 之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root 才能设置这属性
i :这个 i 可就很厉害了!他可以让一个文件“不能被删除、改名
[root@iZbp13q6hd8z3xaagcmz6gZ learn]# chattr +a kaka.php[root@iZbp13q6hd8z3xaagcmz6gZ learn]# lsattr kaka.php-----a-------e-- kaka.php
2.2 查看文件的隐藏属性
lsattr 文件名
2.3 注意点
只要设置了隐藏属性,不管任何用户都无法逃脱这个属性的作用。root用户也是
文件权限重要的有三个,那就是rwx这三个权限,但是在测试目录的时候会发现,我们有的目录跟文件的权限是有点怪怪的,下面我们来看一下
[root@iZbp13q6hd8z3xaagcmz6gZ /]# ls -ld tmpdrwxrwxrwt. 13 root root 4096 Aug 16 03:38 tmp[root@iZbp13q6hd8z3xaagcmz6gZ /]# ls -l /usr/bin/passwd-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /usr/bin/passwd
文件权限不应该只有rwx,这里怎么会有特殊权限,t跟s
SUID
当s这个标志出现在文件拥有者的x权限上时,例如passwd这个文件的权限状态--rwsr-xr-x,此时就被称为set uid,简称为SUID的特殊权限
SUID权限仅对二进制程序有效
执行者对于该程序需要具有x的可执行权限
本权限仅在执行该程序的过程中有效
执行者将具有该程序拥有者的权限
白话文简单的说一下,在linux中所有账号的密码都记录在/etc/shadow这个文件中,这个文件的权限为---------- 1 root root 866 Aug 13 15:28 /etc/shadow,意思是这个文件仅有root可读,且仅有root可以强制写入,既然这个文件只有root可以修改,那么另外一个用户是否可以修改呢!我们使用另一个用户输入passwd这个指令,一般的使用者当然可以修改自己的密码了
这里是不是有点矛盾了,明明/etc/shadow就不能让其他用户去存取,为什么其他用户可以修改,这就是SUID的功能了
dmtsai 对于 /usr/bin/passwd 这个程序来说是具有 x 权限的,表示 dmtsai 能执行
passwd;
passwd 的拥有者是 root 这个帐号;
dmtsai 执行 passwd 的过程中,会“暂时”获得 root 的权限;
/etc/shadow 就可以被 dmtsai 所执行的 passwd 所修改。
但如果 dmtsai 使用 cat 去读取 /etc/shadow 时,他能够读取吗?因为 cat 不具有 SUID 的权
限,所以 dmtsai 执行 “cat /etc/shadow” 时,是不能读取 /etc/shadow 的。
注意点:SUID对于目录来说是无效的
SGID
SBIT
由于这里的的几个特权会在后边进行详细介绍,这里就先暂时只写这一个,后边在返回来补充
到此,相信大家对“Linux文件与目录的默认权限与隐藏权限”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。