Linux上天之路(九)之文件和文件夹的权限
主要内容
-
linux 基本权限
-
linux特殊权限
-
linux隐藏权限
-
linux file ACL 权限
1. Linux的基本权限
使用ls -l filename 命令查看文件或文件夹详细权限 ls -l -rw-r--rw- 1 root root 22 Jan 6 15:42 abc - --- --- --- - 文件类型 --- 文件所有者的权限 root rw- r 读 w 写 x 执行 --- 文件所属的组中的成员对其权限 root r-- --- 其他人 rw- 22 文件或文件夹的大小 Jan 6 15:42 创建日期 abc 文件名
- chmod
chmod - 改变文件的访问权限 命令语法 chmod [options] mode file... 命令选项 -R 递归设置权限,针对目录有效 mode 谁给什么权限 u(所有者) g(所属组) o(其他人) a(所有人) + - = 权限 r 读 w 写 x 执行 数字权限 r 读 4 w 写 2 x 执行 1 chmod 760 abc
- chown
chown 修改文件或文件夹所有者命令 命令语法 chown [options] user [:group] file... 命令选项 -R 递归设置,针对文件夹 chown 新所有者 文件名 chown 新的所有者.新的所属组 文件名 -R 递归修改
- chgrp
chgrp 改变所属的组 命令语法 chgrp [选项] 组文件... 命令选项 -R 递归设置权限,针对目录有效 chgrp 新所有组 文件名 chown .新的所属组 文件名
2. Linux的特殊权限
linux特殊权限 7 777 suid 4 当一个二进制文件拥有SUID权限后,当其他用户执行该二进制文件的时候,该二进制文件就会以他所有者的权限去执行 sgid 2 要求文件夹下的新建的子文件夹或者子文件继承父文件夹的属组 sticky bit 1 如果给文件夹 赋予粘连位 则该文件夹下的文件或文件夹只能由所有者及ROOT删除
3. Linux的隐藏权限
- chattr
chattr [+-=][ASacdistu] 文件或文件名 命令选项: + : 增加某个特殊参数,其他原本存在的参数不动。 - : 删除某个特殊参数,其他原本存在的参数不动。 = : 设置一定,且仅有后面接的参数 A : 当设置了A属性时,这个文件(或目录)的存取时间atime(access)将不可被修改,可避免例如手提电脑有磁盘I/O错误的情况发生。 S : 这个功能有点类似sync。就是将数据同步写入磁盘中。可以有效地避免数据流失。 a : 设置a之后,这个文件将只能增加数据,而不能删除,只有root才能设置这个属性。 c : 这个属性设置之后,将会自动将此文件“压缩”,在读取的时候将会自动解压缩,但在存储的时候,将会先进行压缩后再存储(对于大文件有用)。 d : 当执行dump(备份)程序的时候,设置d属性将可使该文件(或目录)具有转储功效。 i : i的作用很大。它可以让一个文件“不能被删除、改名、设置连接,也无法写入或新增数据”。对于系统安全性有相当大的帮助。 j : 当使用ext3文件系统格式时,设置j属性将会使文件在写入时先记录在journal中。但是,当文件系统设置参数为data=journalled时,由于已经设置日志了,所以这个属性无效。 s : 当文件设置了s参数时,它将会从这个硬盘空间完全删除。 u : 与s相反,当使用u来设置文件时,则数据内容其实还存在磁盘中,可以用来还原删除. 注意:这个属性设置上,比较常见的是a与i的设置值,而且很多设置值必须要root才能设置。
- lsattr
lsattr 文件或文件名 查看文件或文件夹的隐藏权限
4. Linux的ACL权限
给指定的用户指定目录分配指定的权限,也就是 ACL 权限分配
- setfact命令
setfacl - set file access control lists 命令语法 setfacl [选项] file... 命令选项 -m 修改acl -x 删除acl -b 删除所有acl -k 删除默认的acl -R 递归 练习 setfacl -m g:groupname:--- haha setfacl -m u:username:rw haha setfacl -x u:username haha setfacl -b haha setfacl --set u::rw,g::---,o::--- haha·
- getfact
getfacl 查看文件权限 命令语法 getfacl file...