权限位

rwxrwrwx
左三位:定义user(owner)的权限,属主权限
中三位:定义group的权限,属组权限
有三位:定义other的权限,其他的权限

进程对文件的访问权限应用模型:
进程的属主与文件的属主是否相同。如果相同,则应用属主权限;否则去检查金证的属于是否属于文件的属组;如果是,则应用属组权限,否则,就只能引用other权限。

权限:
r:readable,可读
w:writable,可写
x:executble,可执行

  • 文件

    • r:可获取文件的数据
    • w:可修改文件的数据
    • x:可将此文件运行为进程
  • 目录
    • r:可使用ls命令获取旗下的所有文件列表
    • w:可修改次目录下的文件列表,即创建或删除文件
    • x:可cd值此目录中,且可使用ll来获取到所有文件详细属性信息

权限组合机制:

  • ---:二进制000,十进制0
  • --x:二进制001,十进制1
  • -w-:二进制010,十进制2
  • -wx:二进制011,十进制3
  • r--:二进制100,十进制4
  • r-x:二进制101,十进制5
  • rw-:二进制110,十进制6
  • rwx:二进制111,十进制7

文件权限管理命令

chmod的三种用法:

chmod [OPTION]… MODE[,MODE]… FILE…
chmod [OPTION]… OCTAL-MODE FILE…
chmod [OPTION]… –reference=RFILE FILE…

三类用户:

  • u:属主
  • g:属组
  • o;其他
  • a:所有

(1)MODE表示法:chmod [OPTION]... MODE[,MODE]... FILE...

    • 赋值表示法:直接操作一类用户的所有权限位:

      • u=
      • g=
      • o=
      • a=
    • 授权表示法:直接操作一类用户的一个或多个权限位:
      • u+u-
      • g+g-
      • o+o-
      • a+a-

(2)八进制表示法:chmod [OPTION]… OCTAL-MODE FILE…

(3)参考某个文件的权限:chmod [OPTION]… –reference=RFILE FILE…

(4)chmod选项

  • -R :recursive ,递归修改

从属关系管理命令

主要有两个命令chownchgrp

chown更改文件的的属主(属组也能更改)

  • -R:递归修改

用法:
chown -R USERNAME[:FILENAME] FILENAME

例如:
chown -R oracle:oinstall /u01

chgrp更改文件的属组

  • -R:递归修改

用法:
chgrp -R GROUPNAME FILENAME
用到很少,chown可以修改属组,这个命令就被打入冷宫了,很少用。


新建文件和目录的默认权限(umask)

新建的文件和文件夹都有一个默认权限,那么是如何实现的呢?就是用umask实现的。

umask原理:

  • 针对新建文件:666-umask后的权限就是新建文件的权限
  • 针对新建目录:777-umask后的权限就是新建目录的权限。

我们可以看/etc/bashrc里面的umask规则:

![]/images/1496043520606.png)

看代码,即UID 大于199,umask为002,否则umask为022

普通用户UID在CentOS 6下大于500,CentOS7下大于1000,所以umask值为002,默认创建的文件文件夹权限分别为666-002=664777-002=775

而root用户,UID为0,umask值为022,默认创建的文件文件夹权限分别为666-022=644777-022=755


练习题

1、当用户xiaoming/testdir 目录无执行权限时,意味着无 法做哪些操作?

无法cd到这个目录,无法删除、移动这个文件。

2、当用户xiaoqiang/testdir 目录无读权限时,意味着无 法做哪些操作?

无法查看这个目录,也无法ls查看这个目录里面内容。

3、当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件file1是否可修改和删除?

不可以修改和删除。

4、当用户wangcai 对/testdir 目录有写和执行权限时,该目 录下的只读文件file1是否可修改和删除?

可以修改和删除,但是没有读权限的话,只能盲找。

5、复制/etc/fstab文件到/var/tmp下,设置文件所有者为 wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限

6、误删除了用户wangcai的家目录,请重建并恢复该用户家目录及相应的权限属性

权限和ACL访问控制 -01-权限的更多相关文章

  1. 权限和ACL访问控制-02-特殊权限

    X(大写) X:给目录x权限,不给文件x权限(当文件本来就有x权限的话会重新赋予x权限) 例如: chmod -R +X dir2 SUID SUID属性一般运用在可执行文件上,当用户执行该执行文件时 ...

  2. linux的用户扩充权限管理acl和用户使用系统资源的限制

    用户扩充权限管理 acl 1.扩充权限的方式 文件扩充权限 ACL 磁盘配额 2.文件扩充权限 1.安全位 安全位   ---set位    SUID  SGID   set仅可以加给 u.g, 如: ...

  3. linux用户权限 -> ACL访问控制

    UGO设置基本权限: 只能一个用户,一个组和其他人 ACL设置基本权限: r.w.x 设定acl只能是root管理员用户. 相关命令: getfacl , setfacl facl权限 简介 facl ...

  4. Linux文件权限;ACL;Setuid、Setgid、Stick bit特殊权限;sudo提权

    相关学习资料 http://blog.sina.com.cn/s/blog_4e2e6d6a0100g47o.html http://blog.csdn.net/aegoose/article/det ...

  5. Linux权限管理 ACL权限

    ACL权限简介 在普通权限中,用户对文件只有三种身份ugo,分别为属主(u).属组(g)和其他人(o):每种用户身份拥有读(read).写(write)和执行(execute)三种权限.但是在实际工作 ...

  6. 用户和组的权限管理/特殊权限和ACL(个人笔记)

    个人学习笔记总结 内容包括解释Linux的安全模型解释用户帐号和组群帐号的目的用户和组管理命令理解并设置文件权限默认权限特殊权限ACL介绍安全3A资源分派:Authentication:认证Auth ...

  7. Linux特殊权限及ACL权限

    一.SetUID与SGID 只能用于二进制程序,脚本不能设置 执行者需要有该二进制程序的x权限 执行具有SUID权限的二进制程序,那么执行者将具有该二进制程序所有者的权限. 举例来说,/etc/pas ...

  8. Linux中权限控制ACL命令

    很多小伙伴觉得,Linux的权限管理命令不就是chown和chmod命令吗,什么时候有了ACL了? 什么是ACLACL是访问控制列表(Access Control List)的缩写,主要的目的是在提供 ...

  9. linux特殊权限(acl)

    建立用户目录       创建目录/oldboy/tech./oldboy/edu,分别用于不同项目组添加组账号       添加组账号tech.edu,GID分别设置为1001.1002      ...

随机推荐

  1. React Native中ref的用法(通过组件的ref属性,来获取真实的组件)

    ref是什么? ref是组件的特殊属性,组件被渲染后,指向组件的一个引用.可以通过组件的ref属性,来获取真实的组件.因为,组件并不是真正的DOM节点,而是存在于内存中的一种数据结构,称为虚拟的DOM ...

  2. C语言&*符号使用及大端法小端法测试

    工具:Microsoft Visual C++ 6.0 例子: int a = 1; int* b = &a; C语言规定a表示存储单元中的数据,&a表示存储单元的地址,b存储的就是a ...

  3. java执行bat代码

    java执行bat代码.txt public static void runbat(String path,String filename) { String cmd = "cmd /c s ...

  4. The Party and Sweets CodeForces - 1159C (拓排)

    优化连边然后拓排. #include <iostream> #include <sstream> #include <algorithm> #include < ...

  5. python的Email提醒

    目的意义 使用Email自动发送,有利于实时获取爬取信息,更方便的掌握要闻. 导入相关库 MINEText库定义了发送信息, Header定义了发送的主题 formate定义了收件人和发件人的格式信息 ...

  6. Collection接口的子接口——Deque接口

    https://docs.oracle.com/javase/8/docs/api/java/util/Deque.html public interface Deque<E> exten ...

  7. java 给定一个日期期间 返回形如Mar 2015 3/20-3/31的数据

    最近一个项目中有个前台对于表头要求: 给定一个日期期间返回形如 Mar 2015 3/20-3/31Apr 2015 4/1-4/30 这样的月年数据,简单的写了下代码,暂时没想到更好的办法 例如传进 ...

  8. Git提交代码的小知识

    1.需要切换到项目目录下并创建一个Repository用于提交代码到这个仓库里 cd /g/....//cd后面有空格,用于进入某个项目文件夹 git init//用于创建Repository 2.添 ...

  9. 099、如何访问Service (Swarm06)

    参考https://www.cnblogs.com/CloudMan6/p/7909136.html   前面已经学习了如何部署Service吗,也验证了swarm的failover特性,下面我们要学 ...

  10. wpf ActualWidth为0解决方法

    LocalNewsControl() { var descriptor = DependencyPropertyDescriptor.FromProperty(ActualWidthProperty, ...