zoukankan      html  css  js  c++  java
  • linux普通文件权限和系统目录权限的实践及结论

    测试结论: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      ==>真实文件权限

      

  • 相关阅读:
    元旦晚会
    CF906D Power Tower
    基于51单片机的多功能秒表(校赛作品)
    集训队第二次排位赛
    《史记》——五帝本纪第一,黄帝部分
    原创,让你的 "Ajax"请求华丽转身,给 "body" 或是 "Div" 加上Loading遮罩!
    Excel导出通用操作方式
    图片(img标签)的onerror事件,你有用过嘛?
    @Url.ActionLink 和 @Url.Action
    原创,自己做的一个简单实用的提示小插件,兼容性很好,基本上都兼容!
  • 原文地址:https://www.cnblogs.com/axzq/p/9605083.html
Copyright © 2011-2022 走看看