zoukankan      html  css  js  c++  java
  • 第十四章 权限管理

    权限管理
    1.什么是权限
    针对某些文件或者进程,对用户进行限制

    2.权限和用户的关系
    文件类型	文件属主(所属用户)权限	文件所(属组)属用户组		其他用户
    d				rwx						r-x								r-x
    
    硬链接数	文件的属主(所属用户)	文件的属组(所属用户组)	文件的大小(文件中的字节数)
    2 			root 					root  						64 
    
    文件的修改时间		文件名
    Jul  1 02:00 		bak
    
    
    
    rwxrwx--x			rlb			root   		 rlb
    
    [root@rlb ~]# useradd rlb100 -g root
    
    root			
    rlb
    rlb
    rlb100
    

    普通文件
    -
    软链接文件
    l
    socket,套接字
    s
    块设备
    c

    2.授权方式
    1)+号 -号 授权
    rw- r-x -wx
    --x -w- r--
    --x -w- r--
    rwx ---> u(user)g(group)o(other)

    [root@rlb ~]# chmod u+w rlb
    u+x
    g+w
    o+r	
    
    2)数字授权
    r:4
    w:2
    x:1
    -:0
    
    rwxr-xr-x		 bak  755
    
    3)=号授权
    [root@rlb ~]# chmod u=rwx,g=rw,o=r rlb
    

    权限对文件的作用
    读取权限(r)
    文件只有r权限: 具有读取阅读文件内容权限
    1.能使用查看类命令cat、head、tail、less、more
    2.不能复制、不能移动、不能编辑,不能删除 写入权限(w)
    如果文件只有w权限: 具有新增、修改文件内容的权限
    1.使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
    2.使用echo、cat命令重定向或追加重定向技术可以往文件内写入数据
    3.不能复制、不能移动、不能删除,(删除需要看上级目录w的权限) 执行权限(x)
    文件只有x权限,具有执行文件的权限。
    //注意: 普通用户需要有r权限,管理员不需要
    1.不能执行、查看、编辑、复制、移动、删除

    权限对目录的作用

    目录只有r权限: 具有浏览目录及子目录权限
    1.能使用ls命令浏览目录及子目录, 同时会提示权限拒绝
    2.能使用ls -l命令浏览目录及子目录, 会带问号,同时只能看到文件名
    总结: 目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限 写入权限(w)
    如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x配合)
    //注意: 如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)
    不能进入目录、不能复制目录、不能删除目录、不能移动目录 执行权限(x)
    目录只有x权限
    1.只能进入目录
    2.不能浏览、复制、移动、删除


    3.授权命令
    chmod
    1)+号 -号 授权
    rw- r-x -wx
    --x -w- r--
    --x -w- r--
    rwx ---> u(user)g(group)o(other)

    [root@rlb ~]# chmod u+w rlb
    u+x
    g+w
    o+r	
    
    2)数字授权
    r:4
    w:2
    x:1
    -:0
    
    rwxr-xr-x		 bak  755
    
    3)=号授权
    [root@rlb ~]# chmod u=rwx,g=rw,o=r zl
    
    
    chown
    
    chown username:groupname
    chown username.groupname
    

    [root@rlb250 test]# stat test.txt
    File: ‘test.txt’
    Size: 0 Blocks: 0 IO Block: 4096 regular mpty file
    Device: 803h/2051d Inode: 33656254 Links: 1
    Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ rot)
    Context: unconfined_u:object_r:default_t:s0
    Access: 2019-07-01 20:52:43.914699191 +0800
    Modify: 2019-07-01 17:03:40.133306536 +0800
    Change: 2019-07-01 18:01:00.967404840 +0800
    Birth: -
    [root@rlb250 test]# stat test.txt| sed -rn 's#.0(.)/-.*#1#gp'
    755

    stat
    相关命令:ls
    用法:stat [选项]... 文件...
    显示文件或文件系统的状态。

    -L, --dereference 跟随链接
    -f, --file-system 显示文件系统状态而非文件状态
    -c --format=格式 使用指定输出格式代替默认值,每用一次指定格式换一新行
    --printf=格式 类似 --format,但是会解释反斜杠转义符,不使用换行作
    输出结尾。如果您仍希望使用换行,可以在格式中
    加入" "
    -t, --terse 使用简洁格式输出
    --help 显示此帮助信息并退出
    --version 显示版本信息并退出

    有效的文件格式序列(不使用 --file-system):

    %a 八进制权限
    %A 用可读性较好的方式输出权限
    %b 计算已分配块数(参见%B)
    %B 以字节为单位输出%b 所报告的每个块的大小
    %C SELinux 安全环境字符串
    %d 十进制设备编号
    %D 十六进制设备编号
    %f 十六进制原始模式
    %F 文件类型
    %g 文件的属组ID
    %G 文件的属组组名
    %h 硬链接数量
    %i Inode 编号
    %m 挂载点
    %n 文件名
    %N 如果对象是一个符号链接,显示引用到的其它文件名
    %o I/O 块大小
    %s 总计大小,以字节为单位
    %t 十六进制主设备类型
    %T 十六进制子设备类型
    %u 文件的属主ID
    %U 文件的属主用户名
    %w 文件创建时间,若未知则显示"-"
    %W 从UNIX 元年起以秒计的文件创建时间,若未知则显示"-"
    %x 上次访问时间
    %X 从UNIX 元年起以秒计的上次访问时间
    %y 上次修改时间
    %Y 从UNIX 元年起以秒计的上次修改时间
    %z 上次更改时间
    %Z 从UNIX 元年起以秒计的上次更改时间

    有效的文件系统格式序列:

    %a 非超级用户可用的剩余块数
    %b 文件系统的总数据块数
    %c 文件系统中文件节点总数
    %d 文件系统中空闲文件节点数
    %f 文件系统中空闲块数
    %i 十六进制文件系统ID
    %I 允许的文件名最大长度
    %n 文件名
    %s 块大小(用于快速传输)
    %S 基本块大小(用于块计数)
    %t 十六进制类型描述
    %T 可读性较好的类型描述

    rwx对文件:只对文件内容有影响
    r:只读,不可以执行,不可以写入
    w:可以编辑,但是不能读取内容,如果vim,会覆盖原文件内容。
    x:如果是普通用户,也不可以执行,必须组合r权限,如果root用户,单独执行权限可以执行

    权限组合:
    rw:对文件 ,可读可写,不可以执行
    rx:可读,可执行
    wx:可写,普通用户可写,不可读也不可执行,root用户可以执行
    rwx:可读,可写,可执行

    rwx对目录的影响
    w:单个w没有任何作用,但是如果想要删除目录下的文件,一定要有w
    r:单独的r权限,可以看到目录下的文件名,但是看不到详细信息,不能移动文件,不能进入目录(配合x)
    x:只能进入目录

    rx:可以进入目录,可以查看目录中文件的详细信息,不可以移动,删除目录下的文件
    rw:跟单独的一个r,是一样的
    wx:可以进入目录,可以创建、删除文件,但是不能查看目录下的文件
    rwx:可以进入,可以查看,可以删除,可以移动,可以随意更改~~~~

    du -sh etcq.tgz etc查看包的大小,可以用来查看压缩率,就是将源文件的大小除以压缩后的大小=压缩率

    人的一生或多或少都在为一些事情努力着,有目标的人生是精彩的!朋友请不要在原地画圈圈,该行动了!
  • 相关阅读:
    iOS开发UI篇—xib的简单使用
    iOS开发UI篇—字典转模型
    iOS开发UI篇—九宫格坐标计算
    iOS开发UI篇—懒加载
    2020121301-01
    2020120501-01
    2020113001-梦断代码-3
    2020112801-01
    2020112401
    2020112201-1
  • 原文地址:https://www.cnblogs.com/ronglianbing/p/11734931.html
Copyright © 2011-2022 走看看