文件权限

普通文件
r: 可以读取文件的内容
w: 可以修改文件的内容
x: 可以执行该文件 执行脚本(不要随便给文件加x权限)
目录文件
r: 用户可以列出目录下有哪些文件(不能查看文件的详细信息)
w: 只有w无意义。
x: 用户可以进入该目录(如果知道文件名,且有相对应的文件权限 ,可以执行对应的操作)
权限一般配合使用,不同权限配合有不同效果

rx: 用户可以进入目录,且可以长列出。

qq截图20170725095723

qq截图20170725095353

rw:等于只有r

qq截图20170725100745

qq截图20170725100645 

wx: 能进入,能创建能删除,不能列出。故用户能否删除文件与文件自身权限无关。

clipboard

clipboard

rwx: 全部权限。
—:null
权限设置
chmod ugo+rwx
            a=rwx
            a=
            u=….,g=…,o=…
X 当文件本身没有x权限时,则跳过,一般用于批量修改多个文件、目录的权限时,自动跳过没有执行权限的文件。
chmod -R a+x 所有文件目录加x
chmod a-x -R 所有文件目录减x
chmod a+X -R 只给目录加x
umask
root 的umask是022
非特权用户umask 是002
最大权限 777 666
    umask 002 002
默认权限 775 664

当umask中全部是偶数时,可以直接减,当umask中包含奇数时,对于目录直接减,对于文件,在奇数所在的位减完后加一。

clipboard

复制文件权限为什么变?
复制文件时,文件不存在就创建,存在覆盖,创建新文件基于最高权限减umask
复制文件基于原文件减umask
特殊权限
chmod u+s 4***
           g+s 2***
           o+t 1***
6 即有suig也有sgid
3 即有sgid也有sticky

5 即有suid也有sticky

7  all

特定权限
lsattr 查看特定属性
chattr
         +i 不能删除不能改
        +a 不能删除,只能追加

clipboard

ACL权限
ACL是Access Control List的缩写,主要目的是提供传统的owner、group、others的read、write、execute权限之外的权限设置。ACL可以针对单一用户、单一文件或者目录进行r、w、x的权限设置,对于需要特殊权限的使用状况非常有帮助。

qq截图20170726203650

ACL权限判断的顺序
先判断是否是文件的OWNER,如果是,则执行OWNER的权限后结束,如果不是OWNER,则判断是否是ACL的USER,如果是则执行USER权限后结束,如果不是ACL的USER, 则判断是否属于GROUP或ACL GROUP,如果是,则取最大权限。如果不属于任何GROUP,则执行OTHER。
所有人->所有组->其他人
备份和恢复ACL
主要的文件操作命令cp和mv 都支持ACL只是cp命令需要加上-p 参数。但是tar等常见的备份工具是不会保留目录和文件的ACL信息

clipboard

目录文件,备份、删除、恢复
getfaacl fstab > acl.txt 把acl权限导出 最好用相对路径
setfacl -b fstab 清除所有的acl权限
setfacl -M acl.txt fstab 把备份的文件恢复到acl权限

clipboard

原创文章,作者:jieran,如若转载,请注明出处:http://www.178linux.com/83355

(0)
jieranjieran
上一篇 2017-07-30
下一篇 2017-07-30

相关推荐

  • rpm软件包管理

    一:二进制应用程序组成部分 二进制文件(which command)、库文件(ldd `which command`)、配置文件(.conf)、帮助文件(.README)等 二:rpm包文件的组成 rpm文件、rpm元数据(如名称、依赖性关系等)、安装或卸载时运行的脚本 三:rpm包数据库: 1.组成部分(通过 ls /var/lib/rpm 来查…

    2017-08-13
  • Linux文件系统权限详解

    一、综述 在用户和组的管理中介绍了Linux系统是用户多任务的分时操作系统,这意味着同时可以有多人在同一台pc上进行不同的操作。为了能够保护每个用户的数据安全,针对不同的用户设置相应的权限是非常重要的。 Linux文件系统权限主要针对三类用户: 文件的所有者: owner,用u标识 文件的所有组:group,用g标识 其他人: other,用o标识。不包含在…

    Linux干货 2016-08-04
  • 随笔—git的基本命令

    git是一个非常优秀的版本控制系统,可以对各类大小的项目进行源代码管理,  #git的常用功能如下: 1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。 2、在本地仓库上根据不同的开发目的,创建分支,修改代码。 3、在本机上向自己创建的分支上提交代码。 4、在本机上合并分支。 5、将本地仓库代码和分支推送到服务器上的远程仓库 在官网…

    Linux干货 2016-07-04
  • test

    test

    Linux干货 2017-11-26
  • Linux文件管理类命令相关

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 1)、查看文件命令: (1)ls命令: list,列出目录下的内容 语法: ls [OPTION]… [FILE]… 常用选项: -a: 显示所有文件,包括隐藏文件; -A:显示除.和..之外的所有文件; -l: –long, 长格式列表,即显示文件的详细属性信息; -h, –huma…

    Linux干货 2016-11-06