测试结论:linux普通文件的读、写、执行权限说明

1、可读r:表示具有读取\阅读文件内容的权限

2、可写w:表示具有新增、修改文件内容的权限

1)如果没有r配合,那么vi编辑文件会提示无法编辑(但可强制编辑,echo可以重定向或追加)

2)特别提示:删除文件(修改文件名等)的权限是受父目录的权限控制,和文件本身权限无关

3、可执行x:表示具有执行文件的权限

1)文件本身要能够执行

2)普通用户同时还需要具备r的权限才能

3)root只要有x的权限就能执行

4、修改和删除文件名都是在操作文件的上级目录的block,修改或删除的是文件名和inode的关联数据,因此,和上级目录权限关联

企业面试案例:请从linux文件系统的角度详细描述读取/tmp/boyfile文件的过程

范例:实操体会目录权限

开启两个窗口通过两个用户演示上面的权限。一个是root,一个是boy用户,一个是girl用户,一个是test用户

1)分别测试目录的rwx

特别是文件的删除!

总结测试结论:linux目录的读、写、执行权限说明:

1、可读r:表示具有浏览目录下面文件及子目录的权限,即ls  dir

1)如果没有x权限,不能进到目录里,即无法cd  dir

2)如果没有x权限,ls列表时可以看到所有文件名。但是会提示无权访问目录下文件

3)如果ls  -l列表,所有的属性会带有问号,也会提示无权访问目录下文件。但是可以看到所有文件名

2、可写w:表示具有增加、删除或修改目录内文件名(一般指文件名)的权限(需要x权限配合)

3、可执行x:表示具有进入目录的权限:例如,cd  dir。但是没有r无法列表文件及目录,没有w无法新建和删除

5、如果我们想改变的仅仅是打开目录的权限,使用chmod命令时不用加任何参数。如果想把目录以下的所有文件或子目录也同时改变,需要使用-R参数

6、当想改变一个目录下的所有.file权限,并且想保留该目录的原有权限时,请不要用.*通配符。可用下面的匹配:

[root@redhat~]#  chmod  -R  644  ett_dir/.[a-z]*

上面的例子chmod会匹配所有以.a到.z开头的文件

7、权限增减字符

+:添加某个权限

-:取消某个权限

=:取消其它所有权限赋予给定的权限

示例:

chmod  u-x  test,sh

chmod  g+w  test.sh

chmod  u-x,g+w,o-rwx  test.sh

chmod  ugo=rw  test.sh

chmod  a=rw  test.sh

企业场景:网站目录安全权限深度讲解及引出umask知识

web     apache     nginx

站点目录的文件和目录给什么权限:

默认权限是安全权限的临界点,工作中尽量给这个临界点,或者小于临界点,不要大于临界点权限

说明:超级用户创建目录默认是755,文件是644而不是其他的值呢?

操作系统还是网站站点目录安全权限临界点:

1)目录755,文件644是相对安全的权限

2)并且用户为root以及用户组root

在linux下文件的默认权限是由umask值决定的。

umask是通过八进制的数值来定义用户创建文件或目录的默认权限的。

umask对应数值表示的是禁止的权限。具体的细节,文件和目录略有不同。

文件权限计算小结论:

创建文件默认最大权限为666(-rw-rw-rw-),默认创建的文件一般没有可执行权限x位。

对于文件来说,umask的设置是在假定文件拥有八进制666的权限上进行的,文件的权限就是666减去umask的掩码数值;如果umask的部分位或全部位为奇数,那么,在对应为奇数的文件权限位计算结果分别再加1才是最终文件权限值。

创建目录默认最大权限777(-rwx-rwx-rwx),默认创建的目录属主是有x权限,允许用户进入。

对于目录来说,umask的设置是在假定文件拥有八进制777的权限上进行,目录八进制权限777减去umask的掩码数值。

范例:

文件权限的一般计算方法

1)假设umask值为:022(所有的位为偶数)

666      ==>文件的起始权限值

022-     ==>umask的值

-------

644

2)假设umask值为:045(所有为奇数的位要加1)

666      ==>文件的起始权限值

045-     ==>umask的值

-------

621      ==>计算出来的权限。由于umask的最后一位数字是5,所以,在其他用户组位再加1

001+

-------

622      ==>真实文件权限

linux普通文件权限和系统目录权限的实践及结论的更多相关文章

  1. Linux系统对文件及目录的权限管理(chmod、chown)

    本文命令: 4 5 6 ls -l chmod chown 1.身份介绍 在linux系统中,对文件或目录来说访问者的身份有三种: ①.属主用户,拥有者(owner)文件的创建者 ②.属组用户,和文件 ...

  2. Linux - 对文件和目录的权限管理

    对文件的权限管理 ls -l,也可以用 ll 命令查看文件权限的相关信息 第一列“-rw-r--r--.”为权限信息,权限信息的最后一个点表示为在安全环境下创建的 第二列“1”为硬链接数,第三列“ro ...

  3. linux的文件与目录的权限设置

    @font-face { font-family: 宋体 } @font-face { font-family: "Cambria Math" } @font-face { fon ...

  4. 如何设置linux的文件和目录的权限

    1 字符表示法 1)chmod [-R] 权限(mode)file   注:[-R]会将目录下所有权限都设置成指定的 who operator permission u(owner) +增加权限 r( ...

  5. Linux:文件和用目录权限基础

    首先,用ls -i 查看文件的信息: 红框框起来的部分:-rw-r--r-- 一共是10位,第一位表示文件类型,-表示文件,d表示文件夹/目录:后面9位则表示权限 其中前三位是该文件/目录所属者的权限 ...

  6. Linux 修改文件夹的用户组权限

    将ubsadm文件夹所属用户修改为userschown -R ubsadm:users /home/ubsadm 此命令将用户123的用户组改为rootusermod -g 123 root

  7. Linux 服务器如何设置文件和文件夹的读写权限

    修改文件可读写属性的方法 例如:把index.htm 文件修改为可写可读可执行: chmod 777 index.htm 要修改目录下所有文件属性可写可读可执行: chmod 777 *.* 该命令中 ...

  8. [转]Linux中文件权限目录权限的意义及权限对文件目录的意义

    转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...

  9. Linux基础知识之文件和目录的权限机制

    Linux中的用户 Linux中的用户有三类,分别是: 所有者(u) 同组用户(g) 其他人(o) 如下图所示,假设存在两个组:groupA和groupB,rachel和ross属于组groupA,m ...

随机推荐

  1. @Import @bean,@Conditional @ConfigurationProperties @EnableConfigurationProperties 注解使用

    一分钟学会spring注解之@Import注解http://blog.51cto.com/4247649/2118354 @Autowired与@Resource 注解的使用 https://www. ...

  2. urlScan 配置阻止sql注入

    工具 urlscan_v31_x64 urlscan_v31_x86 URLScan是一个IIS下的ISAPI 筛选器,它能够限制服务器将要处理的HTTP请求的类型.通过阻止特定的 HTTP 请求,U ...

  3. UiAutomator新建工程

    新建工程步骤: 1.打开Eclipse 2.新建一个java工程UiAutomatorDemo1,然后新建一个包com.hhb 3.选中java工程,右击新建文件夹,命名为libs,在D:\Andro ...

  4. Spark Mllib里的协调过滤的概念和实现步骤、LS、ALS的原理、ALS算法优化过程的推导、隐式反馈和ALS-WR算法

    不多说,直接上干货! 常见的推荐算法 1.基于关系规则的推荐 2.基于内容的推荐 3.人口统计式的推荐 4.协调过滤式的推荐 (广泛采用) 协调过滤的概念 在现今的推荐技术和算法中,最被大家广泛认可和 ...

  5. .Net core使用XRPC创建远程接口的Actor对象

    Actor是一种高并发处理模型,每个Actor都有着自己的状态有序消息处理机制,所以在业务处理的情况并不需要制定锁的机制,从而达到更高效的处理能性.XRPC是一个基于远程接口调用的RPC组件,它可以简 ...

  6. SpringBoot | 第九章:Mybatis-plus的集成和使用

    前言 本章节开始介绍数据访问方面的相关知识点.对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的.目前,绝大部分公司都选择MyBatis框架作为底层数据库持久化框 ...

  7. win8.1x64下完美运行IE6

    IE6我相信是所有前端人员永远都绕不过去的坎,操作的版本越来越高,离xp越来越远,难道你还在win8下安装个虚拟机来运行IE6吗?这样即消耗系统资源,来回的切换也麻烦,关键是只为了一个测试哦,没必要这 ...

  8. 12.Visual Studio 2013中的默认快捷键

    这篇大致是IDE的使用技巧,常用的也就那么几个. 我自己用的最多的是注释.取消注释.格式调整.运行测试.开始调试.断开调试.重新开始调试.删除行ctrl+L.保存.全部保存.打开资源管理器.搜索等几个 ...

  9. JavaSE_2_关键字

    1.介绍一下Syncronized锁,如果用这个关键字修饰一个静态方法,锁住了什么?如果修饰成员方法,锁住了什么? synchronized是Java中的关键字,是一种同步锁.它修饰的对象有以下四种: ...

  10. hibernate课程 初探单表映射2-7 hbm配置文件常用设置

    本节主要简介hbm配置文件以下内容: 1 mapping标签 2 class标签 3 id标签 1 hibbernate-mapping标签 schema 模式名称 catalog 目录名称 defa ...