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

权限的作用

对于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

相关推荐