文件权限

普通文件
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)
上一篇 2017-07-30 19:55
下一篇 2017-07-30 20:28

相关推荐

  • centos7 root密码忘记怎么修改

           对于事务繁忙或者容易忘东忘西的朋友说,想要记着一些事情总感觉比登天还要难,特别是像密码之类的。可能要记忆的密码太多,总是不经意间就把密码忘记或者把密码混淆。总之这种站的比例还是有点分量的,例如我刚刚接触Linux时 ,第一把centos7装到电脑上没有多久,就把root密码忘记了,费了好时间,也请教了很多…

    Linux干货 2017-04-03
  • CentOS 7破解密码教程

    启动时任意键暂停启动  按e键进入编辑模式  将光标移动linux16开始的行,添加内核参数rd.break  按ctrl-x启动  mount –o remount,rw /sysroot  chroot /sysroot  passwd root  touch /.autorelabe…

    Linux干货 2016-12-01
  • Tomcat

        Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的Web服务器。但…

    2017-09-05
  • 对inode的初步理解

    1.什么是inode?     inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。 2.inode中包含了什么信息? * inode 编号 * 用来识别文件类型,以及用于 …

    2017-07-18
  • 安装MariaDB

    1、安装MariaDB 安装命令 yum -y install mariadb mariadb-server安装完成MariaDB,首先启动MariaDB systemctl start mariadb设置开机启动 systemctl enable mariadb接下来进行MariaDB的相关简单配置 mysql_secure_installation首先是…

    Linux干货 2017-08-08
  • vsftpd基于mysql实现用户认证

    一、前言   ftp介绍:     ftp全程是File Transfer Protocol(文件传输协议),方便于实文件交换;但是在文件传输以及账号密码发送时都是以明文传输,因此是一个明文协议 ftp是C/S方式:   常见的客户端有:     GUI方式:browers、FileZilla-cl…

    Linux干货 2015-06-15