linux中的9个权限位

您所在的位置:网站首页 linux文件一共10为长度 linux中的9个权限位

linux中的9个权限位

2024-02-12 23:54| 来源: 网络整理| 查看: 265

首先,我们通过linux的ls命令操作获得每个文件的权限,如下图:

1 表示连接的文件数

admin 表示用户

admin表示用户所在的组

5572 表示文件大小(字节)

Feb 20 11:43 表示最后修改日期

2-20 表示文件名

由上图可以看出:最左边由十个字母或者短杠组成,其中:

第一位表示Linux的文件类型:

文件的类型可以分为以下几类:

1.普通文件(regular file)第一个字符为[ - ] 

包括:①纯文本档(ASCII):这是Linux系统中最多的一种文件类 型,称为纯文本档。是因为内容为我们⼈人类可以直接读到的数据, 例如数字、字母等等。

            ②二进制文件(binary): 你的Linux中的 可执行文件(scripts, 文字型批处理文件不算)就是这种格式的。

            ③数据格式文件(data):有些程序在运作的过程当中会读取某些特 定格式的档案,那些特定格式的档案可以被称为数据⽂文件 (data file)。一般用cat看到的都是乱码。 

2.目录(directory): 第一个字符为[ d ]  

3.连接文件(link)第⼀一个字符为[ l ] 

4.设备和设备文件  

包括:①块设备文件,即一些存储文件,如硬盘、软盘等,第一个字符为 [ b ] 

            ②字符设备文件,即一些串行端口的接口文件,如键盘、鼠标等, 第一个字符为[ c ] 

5.套接字(sockets)第一个字符为[ s ]  。还被称为数据接口文件,这种类型的文件通常被用在网络上的数 据连接。我们可以启动一个程序来监听客户端的请求,而客户端就 可以通过数据接口文件来进行数据通信。

 6.管道(FIFO,pipe)第一个字符为[ p ]  

剩余的九位可以分为三组:

三位为一组:

综上所述,可以将上述分为三组,分别是第一组:rwx或者rw-,第二组:rwx或者rw-,第三组:r-x或者r--。

在linux中,第一组称为拥有者,第二组称为所属组,第三组称为其他用户。即就是:

文件访问者的分类(人)
 a)文件和文件目录的所有者:u---User


一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者

用ls ‐ahl命令可以看到文件的所有者

也可以使用chown 用户名 文件名来修改文件的所有者

     b)文件和文件目录的所有者所在的组的用户:g---Group

· 当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

用ls ‐ahl命令可以看到文件的所有组

也可以使用chgrp 组名 文件名来修改文件所在的组

       c)其它用户:o---Others 

除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

 

每个权限部分可选字符选项如下:

r: read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。 w:write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限。 S:set如果在所有者权限部分,表示该文件不能被执行和设置为set-user-ID模式。如果在组权限部分,表示该文件不能被执行和设置为set-group-ID模式。 s:如果该字符在所有者权限部分,表示该文件可执行和设置为set-user-ID模式。如果设置在组权限部分,表示该文件可执行和设置为set-group-ID模式。 x:execute对⽂文件⽽而⾔言,具有执⾏行⽂文件的权限; 对⺫⽬目录来说,具有进⼊入⺫⽬目录的权限 -:无某(读,写,执行,setuid等)权限

以下两个字符只能用在第三部分其他人权限部分:

T  沾滞位设置(1000模式),但不能执行或者搜索。 t  沾滞位设置(1000模式),并可以执行或搜索。(该字符较常见一般用于授予目录,作用为任何人可以在该目录中创建文件,但是该文件只有创建者可删除。见/tmp目录权限)

文件访问权限的相关设置方法
 :

a)chmod
  

功能:设置文件的访问权限
  

格式:chmod [参数] 权限文件名
 

 参数:R -> 递归修改目录文件的权限 

     V -> 显示指令执行过程、
 

             reference=:把指定文件或目录的权限全部设成与参考文件或目录的权限相同。 

说明:只有文件的拥有者和root才可以改变文件的权限


chmod命令权限值的格式
:① 用户表示符+/-=权限字符
      

 +   向权限范围增加权限代号所表⽰示的权限
      

-     向权限范围取消权限代号所表⽰示的权限
    

=    向权限范围赋予权限代号所表⽰示的权限
    

用户符号:u     拥有者
       g     拥有者同组用户       o     其它⽤用户
       a    所有用户
    

 实例: 

$ chmod  u+x  file.c

$ chmod  o-r   file.c

$ chmod  g+x  file.c

    ②三位8进制数字

实例: 

$ chmod  157  file.c

$ chmod  346  file.c

$ chmod  732  file.c

b)chown 
 

功能:修改文件的拥有者
 

格式:chown [参数]  用户名  文件名
 

实例: chown root file.c

c)chgrp
 

功能:修改文件或目录的所属组
 

格式:chgrp    [参数]   用户组名  文件名 
 

参数:-R 递归修改文件或目录的所属组
 

实例: # chgrp root file.c

d)umask
 

功能:查看或修改文件掩码 

新建文件夹默认权限=0666-权限掩码 

新建目录默认权限=0777-权限掩码
 

格式:umask    权限值
 

说明:
    将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。
   

 超级用户默认掩码值为0022,普通用户默认为0002。
 

实例:   # umask 755

       # umask   //查看 

       # umask 044//设置
 

s位的说明:         一般来说,一个运行中的程序为运行这个程序的用户所拥有。但如果该程序是suid/guid程序,则运行的程序则为文件所有者拥有,运行中的程序在程序运行期间拥有文件所有者的全部权限。 如果一个普通用户运行了一个属于根用户的带s标志的程序,那么,该程序将不考虑用户权限,而是自动拥有在系统中读/写任何文件及目录的特权。      这样做,有一定的好处,但一般我们不建议采用s位,要严格设置这种权限,避免破坏性。  t位的说明:      程序的t属性表示粘滞位,即告诉系统在程序完成后在内存中保存一份运行程序的备份,如该程序常用,可为系统 节省点时间,不用每次从磁盘加载到内存。由本人注明:是保存在虚拟内存中,而不是物理内存中。     目录的t属性,设置了目录的T属性后1000,由只有该目录的所有者及root才能删除该目录,  




【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3