zoukankan      html  css  js  c++  java
  • day 15权限的概述

    1权限的基本概述

    什么是权限 系统对用户所能执行的功能的限制 为什么要有权限
    为了保护每个用户的自己的工作环境和隐私

    # 权限跟用户有什么关系
    属主    User        u
    属组	Group       g
    其他人   others      o
    所有                  a
    
    对应了三个基础权限
    r		可读       readable		4
    w		可写	  writable		2
    x		可执行	  executable		1
    -		没有权限  权限位占位符  		0
    
    -               rw-     r--     r--     644
    文件的类型       属主     属组     匿名 
    每三个为一组
    第一个对应 可读  r
    第二个对应  可写 w
    第三个对应  可执行 x
    没有此权限则用-代替 
    
    为什么要设置权限,如何设置权限 
    设置某个用户对于系统的某个资源拥有什么样管理权力 
    为什么要设置权限,如何设置权限 
    设置某个用户对于系统的某个资源拥有什么样管理权力 
    chmod		#设置权限的命令 
    
    选项:	
    	-R	#针对目录设置权限  赋予目录及目录以下所有文件的权限 
    只有root管理员才可以修改任何人的权限  普通用户只能修改自己的权限  
    

    权限的设置案例

     -rwxrw-r--	 test01     dev                      file.txt
                    test01      user01属于dev组          qls01属于qls01组
    三个用户分别对这个文件拥有什么权限 
    test01是文件的所有者    可读  可写 可执行权限 
    user01属于dev组,dev组所拥有的权限,user01同样拥有   可读 可写 权限 
    qls01不属于dev组,对于此文件来说,就是一个陌生人  拥有匿名用户的权限  可读
    
    判断一个用户对一个文件拥有什么权限 
    1. 系统会判断该用户是否为所有者,如果是,则按照属主的权限进行访问
    2. 如果不是所有者,则判断该用户是否为所属组,如果是,则按照所属组的权限进行访问 
    3. 如果此用户不是所有者,也不是所属组,则按照匿名用户进行访问
    
    # 修改权限的两种方法:
    字母进行修改
    u       属主   
    g	属组
    o	匿名用户
    a	所有用户
    
    权限字母
    r		可读
    w		可写
    x		可执行
    -		没有权限
    
    赋予的方式
    +		# 添加权限
    -		# 收回某个权限
    =		# 覆盖之前的权限 
    

    实例
    字母添加权限(+)

     # 对所有人添加可执行权限 没有指定默认所有
    [root@mpd ~]# chmod +x test.py 
    
    # 对其他人添加可读权限
    [root@mpd ~]# chmod o+w test.py 
    
    # 添加多个权限用逗号隔开
    [root@mpd ~]# chmod g+w,u+r test.py 
    

    收回权限(-)

    # 对属主收回权限x
    chmod u-x test.txt  
    
    # 对所有人收回权限w
    chmod a-w test.txt
    

    覆盖之前的所有权限(=)

    # 对所有用户重新赋值权限rw
    chmod a+rw test.txt
    
    # 清空所有人权限
    chmod a=- test.py
    

    根据数字进行修改 会把原来的权限覆盖掉

    r=4     w=2       x=1
    选项:
          -R # 给目录的权限及目录以下的所有文件或者子目录都设置统一权限
    
    # 赋值权限(644)u可读写 g可写 o可写
    chmod 644 test.txt   
    

    权限设置案例

    /opt/test   针对于此目录    
    属主为root  属组为dev     dev01  dev02  
    属主拥有所有权限      # 7
    属组拥有可读 可写权限 # 6
    其他人没有任何权限    # 0
    chmod 760 /opt/test
    

    权限对文件或者目录的影响

    权限对文件或者目录的影响
    权限		文件					 目录
    r		可以查看文件内容  cat head tail            浏览目录及子目录的列表  ls tree			
    w		可以新增,修改文件内容的权利 vim echo > >>	  可以新建或者删除,移动目录中的文件的权利
    x	        可以执行文件的权利 脚本                     可以进入目录   cd  
    

    文件权限设置案例

    r  权限
    PS:文件只有r权限时,是可以正常查看文件内容的,不可以修改或者执行文件的权限
    
    w 权限
    PS:只有w权限时, 无法查看和执行文件的权限  使用vim编辑文件文件时,无法查看里面的内容,
    可以进行编辑,但是需要强制保存,但是保存之后,原来的内容被覆盖了  可以使用echo命令进行追加或者重定向内容进去
    
    x 权限
    PS: 文件只有x权限  什么都干不了 
    
    rw 权限 
    PS:经过测试,文件w权限需要r权限的配合  才能正常的修改文件内容 
    
    rx 权限
    PS:经过测试,文件的x权限需要r权限的配合 
    
    wx权限   没有什么用处 
    rwx权限  权限太大
    Permission denied	# 权限不足 没有权限 
    

    目录权限设置

    权限对目录的影响 
    r 权限   具有可以浏览目录及其子目录下的列表  属性信息
    # 目录只有r权限,使用ls -l命令查看目录下的列表,会出现一堆的权限不足,但是文件名和文件类型显示出来了,
    其他的属性信息都是问号   不能对此目录下的文件进行新建或者删除及其移动的操作    也不能切换到这个目录 
    
    w 权限
    # 只有w权限时,目录什么都做不了
    # 目录只有x权限时,可以切换到目录中,无法查看目录列表信息  也无法进行删除、新建、移动等操作   可以进行复制操作 
    
    rw 权限
    #  rw权限 跟只有r权限作用是一样的  
    #  目录拥有rx权限时,可以正常的查看目录列表信息,属性信息,也可以进入目录,可以复制文件到其他目录,
    但是不能执行新建、删除、移动等操作 
    
    wx 权限
    # 目录拥有wx权限时,可以进入目录,可以新建,删除、移动文件的权利  
    但是查看不了目录的列表及属性信息 
    
    总结: 权限对目录的影响 
    对目录设置权限时,不能离开x权限 
    对文件设置权限时,不能离开r权限
    

    文件目录权限总结

    Linux权限总结与注意事项
    
    文件r权限, 只给用户查看,无其他操作
    文件rw权限, 可以查看和编辑文件内容
    文件rx权限, 允许查看和执行文件、但不能修改文件----->PASS
    文件rwx权限, 能读,能写,能执行,但不能删除,因为删除需要看上级目录的权限有没有w----->PASS
    目录rx权限, 允许浏览目录内文件以及子目录、并允许在目录内新建文件, 不允许创建、删除文件和目录
    目录wx权限, 能进入目录,能删除内容,能写入内容,但就是无法使用ls cat这样的命令----->PASS
    目录rw权限, 能看,能写,但无法进入目录----->PASS
    文件的x权限小心给予,目录的w权限也要小心给予。
    文件通常设定的权限是644,目录设定的权限是755
    控制目录权限755, 如果有普通用户需要操作目录里面的文件,在来看文件的权限
    
    
    

    属主属组设置

    chgrp  # 设置属组  
    chown  # 设置属主属组  只有root管理员才可以进行设置
    选项:
        -R # 递归设置 设置目录及其目录以下的所有文件
    
    chown qls01   /opt/file.txt # 默认设置的是属主 
    [root@qls ~]# chown  .qls01  /opt/file.txt 		#设置属组 
    [root@qls ~]# chown  root.root  /opt/file.txt 	#同时设置属主属组 
    [root@qls ~]# chown  qls01.qls01  /opt/test/		# 只设置目录
    [root@qls ~]# chown -R  qls01.qls01  /opt/test/		#递归设置 
    

    Umask控制权限

    系统中为什么新创建的目录的权限为755,文件的权限为644
    都是由系统的控制权限所控制的
    umask		#控制权限的命令 
    umask   333     #设置权限值
    [root@qls ~]# umask
    0022
    系统中是如何计算权限 
    系统新创建的目录的权限由最大权限777减去umask控制权限022得到的就是755,
    所以说新创建的目录的权限为755,新创建文件的权限由文件最大权限666减去umask控制权限022,
    得到644权限,所以说新创建的文件的权限为644,当文件权限遇到奇数时,在奇数为加一  
    
    
  • 相关阅读:
    图片加载框架之Glide和Picasso
    图片加载框架之fresco
    图片加载框架之ImageLoader
    依赖注入框架之androidannotations
    依赖注入框架之butterknife
    Android依赖注入框架之Dagger2
    EvenBus源码分析
    时间总线框架之EvenBus
    数据库开源框架之litepal
    数据库开源框架之sqlcipher加密数据库
  • 原文地址:https://www.cnblogs.com/xiaolang666/p/13366878.html
Copyright © 2011-2022 走看看