一、文件系统部分

- 普通文件(文本文件,二进制文件,压缩文件,电影,图片。。。)
d 目录文件(蓝色)
b 设备文件(块设备)存储设备硬盘,U盘 /dev/sda, /dev/sda1
c 设备文件(字符设备)打印机,终端 /dev/tty1
l 链接文件(淡蓝色)
s 套接字文件
p 管道文件

二、文件权限部分

1、基本权限UGO

  1. [root@localhost ~]# chmod file7(默认文件权限为644,无执行权限)
  2. [root@localhost ~]# ll -d /root/file7
  3. -rwsrwsrwt. root root 7 : /root/file7
  4.  
  5. [root@localhost tmp]# chmod a=rwx file1 //所有人等于读写执行
  6. [root@localhost tmp]# chmod a=- file1 //所有人没有权限
  7. [root@localhost tmp]# chmod ug=rw,o=r file1 //属主属组等于读写,其他人只读
  8. [root@localhost tmp]# ll file1 //以长模式方式查看文件权限
  9. -rw-rw-r-- alice it - : file1 //显示的结果
  10.  
  11. [root@localhost tmp]# chmod a=rwx file1 //所有人等于读写执行
  12. [root@localhost tmp]# chmod a=- file1 //所有人没有权限
  13. [root@localhost tmp]# chmod ug=rw,o=r file1 //属主属组等于读写,其他人只读
  14. [root@localhost tmp]# ll file1 //以长模式方式查看文件权限
  15. -rw-rw-r-- alice it - : file1 //显示的结果

-      //表普通文件

rwx  //读、写、执行(数字表示4、2、1)

a所有人,= 表覆盖

s是此处含有x权限,当去除x权限则为S。

s分为suid和sgid,suid可以为普通用户提权,sgid可以让组属性得以继承。

如下:

  1. [root@localhost ~]#chmod -x file7
  2. [root@localhost ~]# ll -d /root/file7
  3. -rwSrwSrwT. root root 7 : /root/file7
  4.  
  5. [root@tianyun ~]# chmod u+s /usr/bin/cat
  6.  
  7. [alice@tianyun ~]$ cat /root/file1.txt(没有提权的普通用户是不允许进入/root

t类似s,有x权限时为小写,当去除x权限则为T

t为特殊权限sticky,设置t后,即使是777权限的文件夹(root创),不同普通用户在里面创的文件,互相之间不允许删除他人所创文件。

2、基本权限 ACL

acl权限的理解:假如有一个test.txt文件,只有属主和属组有rwx权限,其他用户没权限。有一个用户既不在该用户属组也不是属主,想要访问test.txt文件,就得通过acl权限

。即acl权限可以针对单个用户。

设置:

  1. [root@tianyun ~]# touch /home/test.txt
  2. [root@tianyun ~]# ll /home/test.txt
  3. -rw-r--r-- root root - : /home/test.txt
  4. [root@tianyun ~]# setfacl -m u:alice:rw /home/test.txt //增加用户alice权限
  5. [root@tianyun ~]# setfacl -m u:jack:- /home/test.txt //增加用户jack权限
  6. [root@tianyun ~]# setfacl -m o::rw /home/test.txt

查看:

  1. [root@tianyun ~]# getfacl /home/test.txt//查看文件有哪些ACL权限。
  2.  
  3. 如何删除一条acl,如何删除所有acl呢?
  4. [root@tianyun ~]# ll /home/test.txt
  5. [root@tianyun ~]# getfacl /home/test.txt
  6. -rw-rw-r--+ root root - : /home/test.txt(+表示有acl权限)
  7. [root@tianyun ~]# setfacl -m g:hr:r /home/test.txt
  8. [root@tianyun ~]# setfacl -x g:hr /home/test.txt //删除组hr的acl权限
  9. [root@tianyun ~]# setfacl -b /home/test.txt //删除所有acl权限
  10.  
  11. [root@tianyun ~]# getfacl file1 |setfacl --set-file=- file2 //复制file1的ACL权限给file2

3、mask权限

acl权限中有个"mask"的选项,它就是ACL权限的最大权限,现在是rwx,当你设置某个用户或组的ACL权限时,要跟mask的权限“相与”之后产生的权限才是该用户的最终权限,也就是加入mask的最大权限是rx,但是你给st用户设置的是rwx权限,此时st用户它的权限只有rx的权限,因为与最大权限“相与”得出的结果就是rx。

4、特殊权限chattr:常用于锁定某个文件,拒绝修改。

设置:

  1. [root@tianyun ~]# man chattr
  2. [root@tianyun ~]# chattr +a file100 //只能追加
  3. [root@tianyun ~]# chattr +i file200 //不能更改,重命名,删除
  4. [root@tianyun ~]# chattr +A file300 //不能更改访问时间。

查看:

  1. [root@tianyun ~]# lsattr file100 file200 file300
  2. -----a-------e- file100
  3. ----i--------e- file200
  4. -------A-----e- file300

还原:

  1. [root@tianyun ~]# chattr -a file100
  2. [root@tianyun ~]# chattr -i file200
  3. [root@tianyun ~]# chattr -A file300

注意:chattr设置文件属性(权限),针对所有用户,包括root。

三、sudo提权

  1. root授予wang账号权限
  2.  
  3. [root@node1 ~]# chmod /var/log/messages
  4. [root@node1 ~]# ll /var/log/messages
  5. -rwx------ root root Oct : /var/log/messages
  6.  
  7. [root@node1 ~]# vim /etc/sudoers
  8.  
  9. root ALL=(ALL) ALL
  10. wang 192.168.40.132=(root) /bin/cat /var/log/messages*,! /bin/cat /var/log/messages* *
  11. (注意cat的路径,“,”和“!” !表示禁止)
  12.  
  13. [root@node1 ~]# cd /etc/sudoers.d/ (检查子配置文件,可能冲突)
  14. [root@node1 sudoers.d]# ls
  15. [root@node1 sudoers.d]#
  16.  
  17. [root@node1 ~]#su - wang
  18.  
  19. [wang@node1 ~]$ sudo cat /var/log/messages
  20. [sudo] password for wang:
  21.  
  22. ......

linux中文件权限的字母含义的更多相关文章

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

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

  2. Linux中文件权限查看和修改

    权限定义 linux文件权限分为:r读权限(4).w写权限(2).x执行权限(1) linux权限对象分为:拥有者.组用户.其他用户 权限修改: chown user:group /usr/local ...

  3. linux中文件权限格式与chmod命令以及用户和用户组的管理

    简单了解一下linux中的文件权限格式与chmod命令 chmod命令:改变文件或者目录的权限 格式:chmod [参数] [<权限范围><符号><权限代码>] - ...

  4. linux 中文件权限和磁盘管理、linux服务器项目如何部署

    chmod chmod 421 xx.txt //4=r,2=w,1=x df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k ...

  5. linux中文件颜色,蓝色,白色等各自代表的含义

    linux中文件颜色,蓝色,白色等各自代表的含义 绿色文件---------- 可执行文件,可执行的程序 红色文件-----------压缩文件或者包文件 蓝色文件----------目录 白色文件- ...

  6. 全面解析Linux数字文件权限

    全面解析Linux数字文件权限 来源:   时间:2013-09-04 20:35:13   阅读数:11433 分享到:0 [导读] 在刚开始接触Linux时对于文件权限的理解并不是很透彻,这里详细 ...

  7. linux中文件IO

    一. linux常用文件IO接口 1.1. 文件描述符 1.1.1. 文件描述符的本质是一个数字,这个数字本质上是进程表中文件描述符表的一个表项,进程通过文件描述符作为index去索引查表得到文件表指 ...

  8. <实训|第十三天>linux中ACL权限控制以及磁盘配额,附编译属于自己的linux内核

    [root@localhost~]#序言 首先讲讲昨天关于缩容失败,开不机的解决方法:ACL权限也算是一个很重要的知识点,不难,但是很实用:磁盘配额一般不需要自己弄,但是要懂得原理.剩下的就是编译属于 ...

  9. <实训|第九天>掌握linux中普通的权限控制和三种特殊的权限(sst),做合格的运维工程师

    linux中,权限的学习是必不可少的,不论是作为一名运维工程师或者是单一的管理者,学习好linux中的权限控制,你就可以保护好自己的隐私同时规划好你所管理的一切. 权限的学习是很多的,不要认为自己已经 ...

随机推荐

  1. vs调试 iis发布之后的项目

    方法一 启动vs  访问iis地址 即可调试 方法二 点击调试, 选择附加到进程 选择所有用户进程,  选择w3wp.exe  ,附加 , 即可调试

  2. WCF学习笔记二

    客户端调用WCF服务出现以下错误: “/”应用程序中的服务器错误. 远程服务器返回错误: (415) Unsupported Media Type. 说明: 执行当前 Web 请求期间,出现未经处理的 ...

  3. Verilog Tricks

    1,可用generate产生512*FIFO 2,Vivado的warning也要全部排除 3,小module测完再往大module加 4,复位和IDLE处的置零操作一定要写全了 5,设计通信接收机时 ...

  4. [Luogu P4145] 上帝造题的七分钟2 / 花神游历各国

    题目链接 题目简要:我们需要一个能支持区间内每一个数开方以及区间求和的数据结构. 解题思路:说道区间修改区间查询,第一个想到的当然就是分块线段树.数据范围要用long long.本来我是看到区间这两个 ...

  5. E:only-child

    E:only-child 语法: E:only-child { sRules } 说明: 匹配父元素仅有的一个子元素E.大理石机械构件维修 要使该属性生效,E元素必须是某个元素的子元素,E的父元素最高 ...

  6. border-width

    border-width 语法: border-width:<line-width>{1,4} <line-width> = <length> | thin | m ...

  7. Activiti服务类- HistoryService服务类

    转自:https://www.cnblogs.com/liuqing576598117/p/11164027.html 一共个方法15个方法 用于查询历史工作流信息1.创建查询(7个方法)//创建一个 ...

  8. C/C++应用--Window下获取硬件信息(CPU, 硬盘,网卡等)

    一.头文件如下: #include <Windows.h> #include <string> #include <iostream> #include <w ...

  9. iOS测试-如何指标量化app耗电量和性能XCTest Metrics

    对于app端的专项测试,Android端我们可以用adb或者一些三方工具进行(例如itest)进行实时的性能监控,iOS端的话也可以用用一些三方的工具,但是需要嵌入到我们的项目当中,今天来介绍下Xco ...

  10. NSString的创建

    create #progma mark  create NSString void stringCreate(){ //char *s="A String";->c NSSt ...