文件与目录的默认权限与隐藏权限
除了基本r, w, x权限外,在Linux的Ext2/Ext3文件系统下,我们还可以配置其他的系统隐藏属性, 这部份可使用 chattr来配置,而以 lsattr 来查看。
文件默认权限:umask
umask 就是指定目前使用者在创建文件或目录时候的权限默认值。
# umask
0022 <==与一般权限有关的是后面三个数字!
# umask -S
u=rwx,g=rx,o=rx
查阅的方式有两种,一种可以直接输入 umask ,就可以看到数字型态的权限配置分数,一种则是加入 -S (Symbolic) 这个选项,就会以符号类型的方式来显示出权限了。
在默认权限的属性上,目录与文件是不一样的。默认的情况如下:
若使用者创建为文件,则默认没有可运行( x )权限,亦即只有 rw 这两个项目,也就是最大为 666 分,默认权限如下:
-rw-rw-rw-
若使用者创建为目录,则由于 x 与是否可以进入此目录有关,因此默认为所有权限均开放,亦即为 777 分,默认权限如下:
drwxrwxrwx
要注意的是,umask 的分数指的是该默认值需要减掉的权限。
如果以上面的例子来说明的话,因为 umask 为 022 ,所以 user 并没有被拿掉任何权限,不过 group 与 others 的权限被拿掉了 2 (也就是 w 这个权限),那么当使用者:
创建文件时:(-rw-rw-rw-)- (-----w--w-) ==> -rw-r--r--
创建目录时:(drwxrwxrwx)- (d----w--w-) ==> drwxr-xr-x
文件隐藏属性:
chattr (配置文件隐藏属性)
要先强调的是,底下的chattr命令只能在Ext2/Ext3的文件系统上面生效, 其他的文件系统可能就无法支持这个命令了。
# chattr [+-=][ASacdistu]文件或目录名称
选项与参数:
+ :添加某一个特殊参数,其他原本存在参数则不动。
- :移除某一个特殊参数,其他原本存在参数则不动。
= :配置一定,且仅有后面接的参数A :当配置了 A 这个属性时,若你有存取此文件(或目录)时,他的存取时间 atime将不会被修改,可避免I/O较慢的机器过度的存取磁碟。这对速度较慢的计算机有帮助
S :一般文件是非同步写入磁碟的,如果加上 S 这个属性时,当你进行任何文件的修改,该更动会同步写入磁碟中。
a :当配置 a 之后,这个文件将只能添加数据,而不能删除也不能修改数据,只有root才能配置这个属性。
c :这个属性配置之后,将会自动的将此文件压缩,在读取的时候将会自动解压缩,但是在储存的时候,将会先进行压缩后再储存
d :当 dump 程序被运行的时候,配置 d 属性将可使该文件(或目录)不会被 dump 备份
i :他可以让一个文件不能被删除、改名、配置连结也无法写入或新增数据!』对於系统安全性有相当大的助益。只有 root 能配置此属性
s :当文件配置了 s 属性时,如果这个文件被删除,他将会被完全的移除出这个硬盘空间,所以如果误删了,完全无法救回来了
u :与 s 相反的,当使用 u 来配置文件时,如果该文件被删除了,则数据内容其实还存在磁碟中,可以使用来救援该文件
将该文件的 i 属性取消
# chattr -i attrtest
lsattr (显示文件隐藏属性)
# lsattr [-adR] 文件或目录
选项与参数:
-a :将隐藏档的属性也秀出来;
-d :如果接的是目录,仅列出目录本身的属性而非目录内的档名;
-R :连同子目录的数据也一并列出来
# chattr +aij attrtest
# lsattr attrtest
----ia---j--- attrtest
使用 chattr 配置后,可以利用 lsattr 来查阅隐藏的属性。不过, 这两个命令在使用上必须要特别小心,否则会造成很大的困扰。
文件特殊权限: SUID,SGID, SBIT
# ls -ld /tmp ; ls -l /usr/bin/passwd
drwxrwxrwt 7 root root 4096 Sep 27 18:23/tmp
-rwsr-xr-x 1 root root 22984 Jan 7 2007/usr/bin/passwd
Set UID
当 s 这个标志出现在文件拥有者的 x 权限上时,例如刚刚提到的 /usr/bin/passwd 这个文件的权限状态:『-rwsr-xr-x』,此时就被称为 Set UID,简称为 SUID 的特殊权限。基本上SUID有这样的限制与功能:
SUID 权限仅对二进位程序(binary program)有效;
运行者对于该程序需要具有 x的可运行权限;
本权限仅在运行该程序的过程中有效 (run-time);
运行者将具有该程序拥有者(owner) 的权限。
SUID程序运行的过程示意图
另外,SUID 仅可用在binary program 上, 不能够用在 shell script 上面。这是因为 shell script 只是将很多的 binary 运行文件叫进来运行而已。所以 SUID 的权限部分,还是得要看shell script 呼叫进来的程序的配置, 而不是 shell script 本身。当然,SUID 对于目录也是无效的。
Set GID
当 s 标志在文件拥有者的 x 项目为 SUID,那 s 在群组的 x 时则称为 Set GID。
SGID 对二进位程序有用;与 SUID 不同的是,SGID 可以针对文件或目录来配置。如果是对文件来说, SGID 有如下的功能:
程序运行者对于该程序来说,需具备 x 的权限;
运行者在运行的过程中将会获得该程序群组的支持。
使用者若对于此目录具有 r 与 x 的权限时,该使用者能够进入此目录;
使用者在此目录下的有效群组(effectivegroup)将会变成该目录的群组;
用途:若使用者在此目录下具有w 的权限(可以新建文件),则使用者所创建的新文件,该新文件的群组与此目录的群组相同。
Sticky Bit
这个 Sticky Bit,SBIT 目前只针对目录有效,对文件已经没有效果了。 SBIT 对目录的作用是:
当使用者对於此目录具有 w,x 权限,亦即具有写入的权限时;
当使用者在该目录下创建文件或目录时,仅有自己与 root 才有权力删除该文件
换句话说:当甲这个使用者于A目录是具有群组或其他人的身份,并且拥有该目录 w 的权限, 这表示甲使用者对该目录内任何人创建的目录或文件均可进行 "删除/更名/搬移" 等动作。不过,如果将 A 目录加上了 SBIT 的权限项目时, 则甲只能够针对自己创建的文件或目录进行删除/更名/移动等动作,而无法删除他人的文件。
SUID/SGID/SBIT 权限配置
数字型态更改权限的方式为三个数字的组合, 那么在这三个数字之前再加上一个数字的话,最前面的那个数字就代表这几个权限了。
4 为 SUID
2 为 SGID
1 为 SBIT
假设要将一个文件权限改为-rwsr-xr-x时,由于s 在使用者权限中,所以是 SUID ,因此, 在原先的 755 之前还要加上 4 ,也就是: chmod 4755 filename 来配置。
观察文件类型:file
如果你想要知道某个文件的基本数据,就可以利用 file 这个命令来查看。
# file ~/.bashrc
/root/.bashrc: ASCII text <==告诉我们是 ASCII 的纯文字档
文件与目录的默认权限与隐藏权限相关推荐
- linux如何建立隐藏目录,【Linux】文件与目录的默认权限与隐藏权限
01. 文件默认权限:umask 文件的权限可以使用chmod来改变,但是我们默认创建文件的权限是什么?那就是与umask这个有关了.下来我们学习这个指令 1.1 简单使用umask [root@iZ ...
- Linux文件与目录的默认权限与隐藏权限(chattr,lsattr)
文章目录 Linux文件与目录的默认权限与隐藏权限 文件默认权限:umask 文件隐藏属性 chattr(配置文件隐藏属性) 使用案例 lsattr(显示文件隐藏属性) 使用案例 文件特殊权限:SUI ...
- linux 文件隐藏权限,linux文件基本权限、默认权限、隐藏权限和ACL权限
基本权限 文件属性rwx 每个文件当用ls -l查看时,都会显示文件的详细属性信息,其中在排在首位的共有10位字符信息 例如 -rw-r–rw-. 1 root root --.. 共有10位,第一位 ...
- umask 和 新建文件、目录的默认权限
umask (8进制数值) umask的值决定了用户创建的文件和目录的默认权限 umask的值是和用户相关的 root用户默认的umask值是 0022 普通用户的默认的umask的值是 0002 [ ...
- Linux 删除权限 umask,linux中的umask控制文件或目录的默认权限
umask命令可以控制着创建文件或目录时指定给文件或目录的默认权限.它使用八进制表示法表示从文件模式属性中删除一个位掩码.使用不带任何参数的umask命令,查看当前掩码值.一般都是0002或0022. ...
- linux 权限管理命令chown、chgrp、umask、linux新建文件或目录的默认权限755
chown /bin/chown chown [用户] [文件或目录] 改变文件或目录的所有者 只有root可以改变文件或目录的所有者 root用户: mkdir /tmp touch /tmp/te ...
- Linux中的默认权限与隐藏权限(文件、目录)
一个文件(或目录)拥有若干个属性,包括(r/w/x)等基本属性,以及是否为目录(d)与文件(-)或连接文件(l)等属性.此外,Linux还可以设置其他系统安全属性,使用chattr来设置,以lsatt ...
- Linux目录文件的权限,默认权限,隐藏权限
Linux系统的文件权限,规定了拥有者(owner),所属组成员(group )以及其他成员(others) 三种身份群体的权限--读(r)写(w)执行(x) Linux权限 文件和目录的权限 文件属 ...
- 用户身份与文件的权限(普通权限、特殊权限、隐藏权限和文件控制列表ACL)
用户身份 root用户是存在于所有类UNIX操作系统中的超级用户,它拥有最高的系统所有权.root用户的用户身份号码UID为0,UID相当于用户的身份证号码一样,具有唯一性.管理员用户(超级用户)UI ...
最新文章
- 《预训练周刊》第14期:World-GAN:Minecraft 世界的生成模型、CMU博士论文探究可控文本生成...
- C++高精度运算类bign (重载操作符)
- 树莓派4烧录系统后黑屏_树莓派4B初次使用--系统安装|配置
- linux ssh基本
- 【OOP】零钱通项目
- C# 快捷键/hotkey简单例子
- Django项目部署在Centos7
- codeblocks安装后提示找不到编译器
- Spring JDBC 示例
- myeclipse 10激活,本人已测试过可行
- docker创建mysql实例_使用docker创建mysql实例
- pythonwin1064位_在Windows 10 64位中安装Matplotlib
- Python编程实践之Choose
- 硬盘播出系统_昌吉广播电视台中型多功能演播室系统概述
- 免费小说阅读小程序,仿番茄小说源码;微信小说小程序源码
- 历届试题 九宫重排 (bfs 八数码问题)
- “1只老母鸡”估值180亿!老乡鸡发展20年,都做对了什么?
- 区块链修仙小说走红,刘慈欣的《三体》是其先驱?
- dsl mysql_极简Querydsl入门
- saas平台架构分为哪几部分
热门文章
- bzoj 2440: [中山市选2011]完全平方数(二分+莫比乌斯函数)
- js系列教程10-canvas绘图全解
- pip is configured with locations that require TLS/SSL
- 解决Vmware虚拟机中没有网络连接Ubuntu无法上网
- mssql sqlserver 优化注意事项:
- Educational Round 26 C. Two Seals
- FastReport.Net使用:[17]线(Line)控件使用
- android (java) 网络发送get/post请求参数设置
- 使用Pack200压缩你的代码
- 基于dsp_builder的算法在FPGA上的实现