读写执行权限对文件和目录的影响

权限的作用

对于linux运维工作来说,熟练掌握文件管理技能是非常重要的,所谓“一切皆文件”,控制住文件的权限,可以说也就控制住了linux系统。而且,运维的工作要和成千上万的文件打交道,对于文件属性的熟识程度对于工作的顺利开展有着深远的影响。综上,了解文件,熟悉文件,掌握文件,是我们运维的一个重要的课程。

不同权限对文件和目录的影响

首先,我们现对权限进行一个简单的了解,请看:

读写执行权限对文件和目录的影响

左边的rwx就代表着文件的权限,r代表着读权限,w代表着写权限,x代表着执行权限。那么对于文件和目录来说,这些权限分别代表着什么呢?

对于文件来说:

  1. r读权限代表着能否看到其文件类型和文件内容。
  2. w写权限代表着能否编辑其中的内容(修改、添加、复制、移动、删除等操作)。
  3. x执行权限代表该文件是否能够执行。(前提该文件为二进制可执行文件,而且该权限对root也有约束能力)。

对于目录来说:

  1. r读权限代表能否查看模模内文件列表(如果知道文件名,而且对该文件有读权限,可以利用命令查看其内容,俗称“翻墙”)。
  2. w写权限代表能够在目录内新建、删除文件(前提具有执行权限)。
  3. x执行权限代表能够进入到目录中、能够查看文件列表和原数据。

总结:

  1. 就算是文件的所有者,没有权限仍然不可以进行操作,但可以为自己增加权限。
  2. 如果所有人都没有执行权限,root也不会有;但任何一个人(ugo)具有执行权限,root就会具有该项权限。但读写权限没有这个特性。
  3. 对于目录来说,执行权限是其最基本的权限,所以创建新目录时,一般默认具有执行和读权限。
  4. 对于目录内文件的删除,时根据是否具有该目录的写权限决定的。这事因为目录也是一个特殊的文件,而目录内的文件列表就是目录这个文件的内容,因此想对目录这个文件的内容增删需要具有该目录的写权限。

UMASK值

所谓umask值一般是指用户在初始创建一个目录或者文件的时影响其默认权限的一种值。

umask值=文件目录默认权限值+原权限值(目录777,文件666)

由上面的公式可以看出,umask值的设置可以方便我们在创建新文件和目录时获取所需的权限。

如何计算unmsk值:

如果枯燥的进行理论描述,我们可能很难理解这些概念,下面我们用小例子来解释一下

用二进制方式计算

文件元权限: 110 110 110 umask值:000 101 111 那么文件的默认权限就是110 010 000

用十进制方式计算

对于目录默认权限:直接用元权限减去umask值
对于文件默认权限:元权限减去umask值,得到偶数保留,得到奇数+1。

如何设置umask值:

对于umask值的设置我们按照影响的失效不同,分为两种

临时生效:

umask=xxx (十进制数)

永久生效

对当前生效:

读写执行权限对文件和目录的影响

对全局生效:

读写执行权限对文件和目录的影响

PS:linux小白,敬请指导

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

(1)
OscaoChaserOscaoChaser
上一篇 2017-07-30
下一篇 2017-07-30

相关推荐

  • rsyslog同步history日志

    前言   由于公司业务是由公司内部开人员及外包团队共同开发,所以需要使用rsyslog对history日志做收集、审计。虽然搭建及配置非常简单,但是在日常运维工作中很实用,所以记录下,方便日后快速搭建。如果有错误,望大神指正。 syslog简介 syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/sysl…

    Linux干货 2015-04-03
  • Linux磁盘管理 and 文件系统管理

     磁盘管理     主要有以下几部分:        磁盘结构        分区类型        管理分区        管理文件系统     &…

    Linux干货 2016-09-01
  • Linux 文 本 处 理 工 具

    Linux 文 本 处 理 工 具 一.学习大纲: ◎各种文本工具来查看、分析、统计文本文件 文件内容查看工具:cat, tac,rev,more,less 文件截取:head和tail 按列抽取:cut,paste 分析文本的工具:wc , sort , uniq,diff和patch 命令使用练习题 ◎文本过滤与处理工具: grep与正则表达式…

    Linux干货 2016-08-05
  • 用vsftpd来搭建网络yum源

    1、分别在CentOS6和CentOS7分别搭建网络yum源 a、CentOS 7中 首先安装并启用vsftpd服务 [root@node1 ~]# mount /dev/cdrom /mnt/yum/ [root@node1 ~]# vim /etc/yum.repos.d/local.repo [local] name=local baseurl=fil…

    2015-10-03
  • 网卡别名及多网卡配置

    网卡别名 对于要在不同网段环境中使用的设备有很大的帮助。     要使用网卡别名首先要关闭NetworkManager这个服务,防止在后续操作中引起不必要的冲突。 [root@laodeng6 ~]# chkconfig NetworkManager off [root@laod…

    Linux干货 2016-09-06
  • 马哥教育网络班21期-第三周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who|cut -d" " -f1|uniq -c|awk '{print $2}' 2、取出最后登录到当前系统的用户的相关信息。 last |awk 'NR==1{print $0}' last |sed -n &…

    Linux干货 2016-07-29