Linux文件权限
学习Linux系统文件权限管理记录。
基本权限UGO
文件权限设置真实的样子:赋于某个用户或组能够以何种方式访问某个文件(图片文件,视频文件,普通文件)。
权限对象
权限对象:
属主:u
属组:g
其他人:o
所有人:a(u+g+o)
权限类型
权限类型:
读:r=4
写:w=2
执行:x=1
设置权限
更改属主、属组
语法:
chown [参数] 属主:属组 文件
参数:
-R:对目前目录下所有文件和目录进行相同的变更
-c:显示所属信息变更信息
-f:若文件拥有者无法更改也不要显示错误
-h:只对于链接文件进行变更,而非真正指向的文件
[root@localhost ~]
[root@localhost ~]
用于变更文件或目录的所属群组。
语法:
chgrp [参数] 目录或文件
参数:
-c:回报更改的部分
-f:不显示错误
-h:对符号链接的文件作修改,而不更改其他任何相关文件
-R:递归处理,将指定的目录及目录下的所有文件和子目录一并进行处理
[root@localhost ~]
设置权限
chmod用于改变文件或目录权限的命令。默认只有文件的所有者和管理员可以设置文件权限,普通用户只能管理自己文件的权限属性。
设置权限时可以使用数字法,亦可使用字母表达式,
对于目录文件建议加入-R参数进行递归操作,意味着不仅对于目录本身,也对目录内的子文件/目录都进行新权限的设定。
使用符号
使用符号:u用户、g组、o其他、a所有、r读、w写、x执行
语法:
chmod [参数] 对象(u/g/o/a) 赋值符(+/-/=) 权限类型(r/w/x) 文件/目录
参数:
-c:若该文件权限确实已经更改,才显示其更改动作
-f:若该文件权限无法被更改也不显示错误讯息
-v:显示权限变更的详细资料
-R:对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
[root@localhost ~]
-rwxr-xr-x. 1 root root 0 10月 13 10:42 file.txt
[root@localhost ~]
[root@localhost ~]
使用数字
语法:
chmod [参数] 数字授权 文件/目录
[root@localhost ~]
-rwxrwxr--. 1 root root 274 10月 12 15:36 user.txt
基本权限ACL
ACL全称是access Control List(访问控制列表),它是在UGO管理的基础上为文件提供一个额外的、更加灵活的权限管理机制,作为UGO权限管理的补充,
本领如下:
1、可以针对用户来设置权限
2、可以针对用户组来设置权限
3、子文件/目录继承父目录的权限
设置ACL权限
语法:
setfacl [参数] u/g:用户名/组名:权限 文件
参数:
-m:更改文件的访问控制列表
-M:从文件中读取访问控制列表条目更改
-x:根据文件中访问控制列表移除条目
-X:从文件读取访问控制列表条目并删除
-b:删除所有扩展访问控制列表条目
-k:移除默认访问控制列表
-d:应用到默认访问控制列表的操作
-P:依照自然逻辑,不跟随符号链接
-v:显示版本并退出
-R:递归操作子目录
[root@localhost ~]
查看ACL权限
getfacl用于显示文件或目录的ACL策略。
语法:
getfacl [参数] 文件或目录
参数:
-a:显示文件的ACL
-d:显示默认的ACL
-c:不显示注释标题
-e:显示所有的有效权限
-E:显示没有的有效权限
-s:跳过文件,只具有基本条目
-R:递归到子目录
-t:使用表格输出格式
-n:显示用户的UID和组群的GID
[root@localhost ~]
user::rwx
user:user001:rwx
group::r-x
mask::rwx
other::r--
[root@localhost ~]
user::rwx
user:user001:rwx
group::r-x
mask::rwx
other::r--
特殊权限(了解)
更改文件隐藏属性
chattr命令用于更改文件隐藏属性。
语法:
chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...]
参数:
-R:递归处理,将指定目录下的所有文件及子目录一并处理。
-V:显示指令执行过程。
-v:设置文件或目录版本
+:开启文件或目录的该项属性
-:关闭文件或目录的该项属性
=:指定文件或目录的该项属性
属性:
i:无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件
a:仅允许补充(追加)内容,无法覆盖/删除内容(Append Only)
S:文件内容在变更后立即同步到硬盘(sync)
s:彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域)
A:不再修改这个文件或目录的最后访问时间(atime)
b:不再修改文件或目录的存取时间
D:检查压缩文件中的错误
d:使用dump命令备份时忽略本文件/目录
c:默认将文件或目录进行压缩
u:当删除该文件后依然保留其在硬盘中的数据,方便日后恢复
t:让文件系统支持尾部合并(tail-merging)
x:可以直接访问压缩文件中的内容
[root@localhost ~]
[root@localhost ~]
[root@localhost ~]