Linux中的权限发布啦!

一、Linux中的权限

在linux中,我们可以将文件的访问者分为三类,针对这三类访问者我们可以对他们设置不同的权限。

1、文件访问者的分类

文件和文件目录的所有者:u(User)。
文件和文件目录的所有者所在的组中的用户:g(Group)。
其他用户:o(Others)。

2、文件的基本权限

读(r):具有读取文件内容的权限;对目录来说,具有浏览目录信息的权限。
写(w):具有修改文件的权限;对目录来说,具有删除移动目录内文件的权限。
执行(x):具有执行文件的权限,前提是文件必须可执行;对目录来说,具有进入目录的权限。
Linux中的权限发布啦!Linux中的权限发布啦!

3、修改文件的权限

3.1、修改文件访问权限
命令:chmod [参数] 权限 文件名
参数:R表示递归的修改目录中所有文件的权限
v表示显示整个修改过程

chmod命令有两种修改文件权限的方法:
第一种:针对某一类访问者设定权限,
命令格式:chmod 用户表示符 +/-/= 文件权限 文件名
+表示为用户增加文件权限,-表示取消用户的权限,=表示赋予用户这个权限。
用户符号:u表示所有者,g表示所有者所在的组,o表示其他人,a表示所有人。
Linux中的权限发布啦!Linux中的权限发布啦!
第二种方法就是使用三位数的八进制:
命令格式: chmod xxx(权限) 文件名
其中从左向右,第一个x表示属主的权限,取值是0~7,0就表示”—”,7表示”rwx”。
第二个x表示属组的权限,第三个x表示其他人的权限。
Linux中的权限发布啦!Linux中的权限发布啦!
3.2、更改文件所有者
命令:chown [参数] 用户名 文件名
参数:R表示递归的修改目录中所有文件的所有者
v表示显示整个修改过程
例1:
Linux中的权限发布啦!Linux中的权限发布啦!
例2:
Linux中的权限发布啦!Linux中的权限发布啦!
3.3、更改文件所有者所在的组
命令:chgrp [参数] 用户名 文件名
参数:R表示递归的修改目录中所有文件的所有者
v表示显示整个修改过程
例1:
Linux中的权限发布啦!Linux中的权限发布啦!
例2:
Linux中的权限发布啦!Linux中的权限发布啦!

4、查看或修改文件掩码

有没有想过,当我们新创建一个文件或者目录的时候,它的默认权限是什么?我们可不可以按照自己的意愿来设置呢?
linux中提供了umask这个命令来设置默认权限。除此之外,umask还可以查看文件掩码。文件掩码就跟子网掩码是一样的道理。
预设权限=存取权限-文件掩码
超级用户默认掩码是0022,也就是生成文件后文件权限是:rwx r-x r-x。
普通用户默认掩码是0002,也就是生成文件后文件权限是:rwx rwx r-x。
命令格式:umask 权限值
例:设置文件掩码0000,则新创建文件或目录后的权限是rwxrwxrwx。
Linux中的权限发布啦!Linux中的权限发布啦!
Linux中的权限发布啦!Linux中的权限发布啦!
注意,不是上面的例子错了,而是因为test文件是普通文件,不具备可执行的权限,所以在创建新文件的时候应该是:

Linux中的权限发布啦!Linux中的权限发布啦!
例2:
Linux中的权限发布啦!Linux中的权限发布啦!

二、权限粘滞位

1、为什么要有权限粘滞位

目录的可执行权限:
目录的可执行权限表示你是否可以在这个目录下执行命令。如果目录没有x权限,则就无法对目录执行任何命令,甚至无法cd进入目录,即使你仍然对目录有r权限。目录的rw权限表示的是你可以对目录里面的文件进行读写,因此对于任何访问者而言,只要他对一个目录有w权限,那么他就能删除这个目录里面的文件。
这样的的话,那文件的权限是不是就成摆设了,只要对一个目录有w权限的话,任何用户都可以随意删除目录里面的文件,针对linux这种多用户的操作系统而言,这是我们绝对不允许的。因此linux里面通过权限粘滞位来解决这种情况。

2、什么是权限粘滞位

权限粘滞位是针对目录而言的,当目录被设置了权限粘滞位之后,即便用户对该目录有写入权限,也不能删除这个目录中其他用户的文件数据。而是只有该文件的所有者和root用户才有权删除。设置了权限粘滞位之后,就保持了一种平衡,允许各用户在目录中任意的写入删除数据,但是不能删除其他用户的数据。
设置了权限粘滞位的目录,它的属性中其他用户的可执行权限x将会变成t。

3、怎么设置权限粘滞位

命令:chmod o+t 目录名
例:
Linux中的权限发布啦!Linux中的权限发布啦!

原文来自:http://blog.csdn.net/lf_2016/article/details/53933024

本文地址:http://www.linuxprobe.com/linux-permissions.html

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

FLV文件格式

1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  

Django中Admin中的一些参数配置

设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable