文件权限

1、普通权限

(登陆用户对文件或目录的读写执行的权限)
普通权限对管理员用户无效

文件和目录 都有4中类型的用户
u 所有者 : 文件、目录的创建者
g 所属组 : 文件、目录属于的用户组
o 其他用户: 用户既不是文件、目录的创建者,也没有在文件、目录所属的用户组里
a 所有用户:以上3类用户的总称

4 2 1 0
r w x -
文件或目录权限的类型 读、写、执行 无权限

查看文件/目录的权限

ll 文件名
ll 目录/文件名
ll -d 目录名

权限列表 链接个数 所有者 所属组 大小 日期 时间 文件名/目录

权限列表(由10个字符组成)
第一列字符 表示文件类型

 - 文本文件
d 目录
l 链接文件
s 套接字文件
b 块文件
p 管道文件
c 字符文件

剩下的9列字符 每3列为一组 分3组
第一组 表示 所有者权限
第二组 表示 所属组权限
第三组 表示 其他用户权限

每组权限里的

第一列 r 权限显示位
第二列 w 权限显示位
第三列 x 权限显示位

* 若显示位置是字符 - 表示没有此权限
权限 文件上 目录上
r读 看文件的内容 浏览目录下的文件列表
cat head tail more less ls

w写 编辑文件内容 创建或删除文件或目录
vim touch rm mkdir rmdir
cp mv

x执行 可以运行文件 可以进入目录
./文件名 cd
/testdir/a.sh

* 要想让用户对目录有写权限 要同时开放x权限
* 一旦用户对目录拥有了w权限 ,就对这个目录下的子文件拥有的完全权限

设置权限命令的语法格式 - chmod

chmod -R 权限列表 文件名/目录名

权限列表

用数字表示
ugo
字母表示
用户类型 赋值符号 权限列表
u = r w x -
g +
o -
a = 设置指定的权限
+ 在原有权限的基础上增加权限
- 在原有权限的基础上去掉权限

实例

chmod  文件名
chmod 目录名
chmod u-x 文件名/目录名/文件名
chmod u=rx,g=r,o=r 目录名/文件名
chmod a=r 目录名/文件名
chmod -R /teadir 

mkdir -m 700 目录名 //创建目录时指定目录的权限,
//若不指定权限系统设置的默认权限

查看创建文件时的默认权限

umask -S
umask
普通用户 特权用户
文件 644 644
目录 775 755

2、特殊权限

SUID 、 SGID 、 Set stikcy
字母 数字
SUID s 4
SGID s 2
Set sticky t 1

SUID 权限位只能设置在二进制文件上(通常就是系统命令)
当用户运行设置了suid权限位的文件时,会拥有文件所有者的权限
suid权限只在执行过程中有效。
用户要对文件本身有执行权限,才能使用文件的suid权限。

u x
用字母s表示,占用文件所有者的执行位显示
当s小写时,文件的所有者对文件有执行权限
当s大写时,文件的所有者对文件没有执行权限
对应的数字权限是数字 4

chmod u+s /usr/sbin/useradd
chmod u-s /usr/sbin/useradd

SGID 既可以设置在文件上,又可以设置在目录上,通常设置在目录上。
设置上文件上,当用户执行文件时,拥有文件所属组的权限
设置在目录上,在目录下创建的子文件、子目录继承父目录的所属组。

用字母s表示,占用文件、或目录的所属组的执行权限位显示
当s小写时,文件的所属组用户对目录有执行权限
当s大写时,文件的所属组用户对目录没有执行权限
对应的数字权限 是 数字2

chmod g+s /usr/sbin/useradd
chmod g-s /usr/sbin/useradd

Set stikcy 粘滞位(防删除位)
只能设置在目录上。
当给目录设置t权限位,目录下的文件只能被文件的所有者删除、
不能被其他用户移动 、改名、编辑 (但可以拷贝)
此权限对管理员用户无效。

用字母t表示,占用目录其他用户执行权限位显示
当t小写时, 其他用户对目录有执行权限
当t大写时, 其他用户对目录没有执行权限
对应的数字权限 是 数字1
suid sgid set-sticky
4 2 1
s s t
u-x g-x o-x

1755 rwxr-xr-t

7777 rwsrwsrwt

mkdir -m  /dir10
useradd u10
useradd u12
useradd u3
useradd u2

让系统用户u2对 /dir10 目录有完全权限。
只让系统用户u2对 /dir10 目录有完全权限。
只让系统用户u2、u3 对 /dir10 目录有完全权限。

3、文件访问控制列表

- facl
dumpe2fs /dev/sda2 | grep --color acl

getfacl 目录名/文件名

getfacl /dir10

在不改变本身权限的情况下,单独设置某个用户或用户组 对 某个文件或目录的访问权限。

setfacl 选项 [参数]:用户类型:权限列表 文件名/目录名

选项
-m 设置facl权限
-x 删除facl权限(一次删除一个)
-b 删除目录或文件的所有acl权限
-k 删除目录的默认acl权限
-R 递归设置
setfacl -R -m u:u100:rwx /dir10

参数
m 设置acl_mask 码的权限

acl权限mask码 : 控制acl用户的权限
默认acl_mask 值是rwx
授权用户的acl的最终权限是 授权权限与acl_mask码逻辑运算后的权

setfacl -m m:r /dir10

d 设置目录的默认acl权限
setfacl -m d:u:u1:rwx /dir6

用户类型 u 设置某个用户的访问权限
g 设置某个用户组的访问权限

权限列表 r w x

mkdir -m 755 /dir6

让系统用户u2 对 /dir6目录下的所有文件有rwx权限

4、文件的隐藏权限

查看文件的隐藏属性
lsattr 文件名

设置
chattr +-=a|i|A 文件名

i 文件的内容不能被编辑 (管理员也不可以)
a 只能以追加的方式给文件添加新内容
A 不更新文件访问时间

练习

一、基本权限和归属

,长格式显示/etc/passwd和/boot,分别说出他们相应的权限
,用字符权限形式将Desktop(包括里面的文件)权限更改成770
,用数字权限形式将Desktop(包括里面的文件)权限更改成755
,编写test.sh脚本,里面内容是 echo Hello World。设置允许执行该脚本
,查看umask值,代表什么意思
,创建一个/opt/studir目录,权限为755。将/opt/studir目录所有者改成student,所属组为users
,在将/opt/studir目录包括目录下的所有文件和子目录所有者改成stu01
,删除实验中创建的账户与组

二、附加权限控制

,长格式显示/tmp和/usr/bin/passwd,查看其权限
,创建普通账户tom,查找mkdir命令在什么地方,将其拷贝到/bin下改名为smkdir,给其设置suid权限
,tom登陆使用mkdir创建/tmp/test1目录,查看其权限
,tom登陆使用smkdir创建/tmp/test2目录,查看其权限
,删除smkdir命令
,查找cp命令在什么地方,将其拷贝到/bin下改名为gcp,给其设置sgid权限
,用tom账户登录,使用cp命令创建/tmp/file1文件。使用gcp命令创建/tmp/file2文件,查看这2个文件权限部分区别。
,删除gcp命令,tom账户
,创建user01,user02账户,group01组。/software目录,用user01在该目录下创建test01,user02在该目录下创建test02,查看其权限
,更改software目录所有者为root,所属组为group01,允许所有人对此目录有读、写、执行权限,并且在该目录下创建文件和目录都自动继承software的属组
,删除user01,user02账户,group01组,以及/software目录
,查看当前磁盘分区情况,查看根分区是否支持acl
,查看/root的acl权限,创建账户jack,jack是否可以进入/root?为什么
,使用acl权限设置jack能够进入/root
,创建/data目录,设置在/data目录下新建的文件和目录,jack都有读、写、执行权限
,清除/data的acl权限
,删除/data目录与jack账户Linux基础3(用户/组管理,rpm,yum,源码安装软件)

Linux基础3(文件权限)的更多相关文章

  1. Linux基础命令-文件与目录

    Linux基础命令-文件与目录 参考:<鸟哥linux私房菜>五-七章,17/12/5复习,18/01/15复习 文件权限 rwx421:用户,用户组,其他 umask查看默认权限:000 ...

  2. Linux命令:修改文件权限命令chmod、chgrp、chown详解

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权 限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而 ...

  3. Linux用户及文件权限管理

    Linux用户及文件权限管理

  4. linux中的文件权限chmod

    linux中的文件权限chmod ​ 还是GPU集群那点事儿,集群之间磁盘互相挂载,普通用户也可以操作/cu02_nfs./cu04_nfs文件夹,这就牵扯到权限的问题,去google发现所谓的777 ...

  5. linux 基础 文件系统 用户权限

    描述Linux系统的启动过程? 1.开机自检 BIOS 2.MBR引导 3.GRUB菜单 4.加载内核 5.运行init进程 6.从/etc/inittab读取运行级别 7.根据/etc/rc.sys ...

  6. linux基础指令以及权限管理

    基础指令 #打印字符串 echo hello linux #将file1 和 file2粘合在一起,打印到标准输出流 cat file1 file2 标准输入输出 标准输入,stdin,即键盘.鼠标输 ...

  7. Day005_Linux基础之文件权限

    test.sh  举例: [oldboy@luffy001 ~]$ ls -l test.sh -rw-r--r-- 1 oldboy ops 0 Nov 14 10:42 test.sh  该文件权 ...

  8. linux 用户及文件权限管理

    Linux 是一个可以实现多用户登陆的操作系统,比如“李雷”和“韩梅梅”都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同 ...

  9. Linux(三)__文件权限、系统的查找、文本编辑器

    一.文件权限 1.理解文件权限及其分配 2.掌握查看文件和目录的权限 3.掌握权限文字表示法和数值表示法 4.学会使用chmod命令设置权限 5.学会使用chown命令修改属主和组 linux文件能不 ...

  10. linux笔记六-------文件权限设置

    1.文件(目录)权限本身划分:读read   写write   执行execute 权限从用户的角度划分:主人权限user    同组用户权限group    其他组用户的权限other music. ...

随机推荐

  1. vue组件的配置属性

    vue组件的声明语法: Vue.component('component-name',{ template:'<p>段落{{prop1}} {{prop2}}</p>', da ...

  2. jdbc连接数据库总结

    jdbc支持多种数据库,比如说oracle, mysql, mssql,现在总结一下连接各种数据库的相关知识 1,mysql连接,代码如下 Class.forName("com.mysql. ...

  3. linux基本工具使用(二)

    1 查找某个目录下面一个所有的可执行文件,并且删除(对删除一个工程的可执行文件格外有用) find . -maxdepth 1 -file f -perm -111 | xargs rm

  4. wap页面笔记

    wap页面是自行应页面 必须在head中加入 <meta content="width=device-width, initial-scale=1.0, maximum-scale=1 ...

  5. PAT1078 Hashing

    11-散列2 Hashing   (25分) The task of this problem is simple: insert a sequence of distinct positive in ...

  6. .net程序员转行做手游开发经历(四)

    今天是大年初二,在这里先给大家拜个年,祝大家在新的一年里能事事顺心. 年前的时候更新了一版,先发了内测,没有想到过年这几天,有的小伙伴们还在玩,还给我们提了很多建议和意见,让我们觉得非常温暖,给我们很 ...

  7. mysql 根据字段重复 删除 保留一条

    delete from TableName where id not in (select minid from (select min(id) as minid from TableName gro ...

  8. hdu5481 Desiderium

    链接 Desiderium 题意 给定n条线段,从中选取若干条,共有2n种选法(因为每一条线段有两种方法:选或者不选). 每一种选法都对应一个长度,也就是所选线段的并集长度. 求这2n种选法长度之和. ...

  9. 什么是smarty?

    什么是smarty? Smarty是一个使用PHP写出来的模板PHP模板引擎,由PHP.net官方提供 ,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程 序员同美工分离,使用的程序员改 ...

  10. URL(待整合到HTTP书中哦)

    一:scheme://host.domain:port/path/filename scheme - 定义因特网服务的类型.最常见的类型是 http host - 定义域主机(http 的默认主机是 ...