Linux基础(五)——文件的权限设定

1、文件权限的读取

命令 功能
ls -l filename 查看文件的属性
ll filename 查看文件的属性
ls -ld dirname 查看目录的属性
ll -d dirname 查看目录的属性
ls -lR 查询目录下的文件和子目录下的文件
ls -li filename 查看文件的属性和进程号

Linux基础(五)——文件的权限设定_第1张图片

2、文件权限的获取

我们执行ls -l filename 命令后能够读取filename文件的权限信息,总共有八个权限,不同权限有不同的意义。
在这里插入图片描述
Linux基础(五)——文件的权限设定_第2张图片

  • 【1】、文件类型
符号 代表的含义
- 空文件或者文本
l 软链接等同于快捷方式
d 目录
s 套接字
b 块设备
c 字符设备

注意:套接字可以理解为一个接口,其作用就是作为进入其他软件的接口

  • 【2】、文件权限
    在【2】中表示的部分,三个符号为一组,第一组表示 拥有者(u)的权限,第二组表示组成员(g)的权限 ,第三组表示其他用户(o)的权限 ,这三者都有四种权限分别为 - r w x
权限 作用
- 表示无任何操作权限(对文件和目录都一样)
r 读取权限:1)对于文件来说即能否查看文件的内容;2)对于目录来说即能否查看目录中有什么子文件
w 书写权限;1)对于文件来说即能否对文件内容进行更改;2)对于目录来说即能否在此目录中创建或删除文件
x 执行权限:1)对于文件来说即能否用文件的绝对路径的名称来调用文件内记录的命令;2)对于目录来说即能否进入该目录中

注意:当一个other用户对于一个文件开通写的权限后,不可以删除,原因是:未开通该文件目录的写权限。文件的权限也叫原数据,属于所在目录的本身
Linux基础(五)——文件的权限设定_第3张图片
Linux基础(五)——文件的权限设定_第4张图片

  • 【3】、文件的硬链接数:也即文件被系统记录的次数
  • 【4】、文件的拥有者(uid)
  • 【5】、文件的组拥有者(gid)
  • 【6】、文件的大小
  • 【7】、文件最后一次被修改的时间
  • 【8】、文件名

注意:**以上八个权限中可更改的权限为【2】、【4】、【5】、【8】

3、更改文件和目录的所有人和所有组

chgrp groupname file/dir ##更改文件或目录的所有组##
chown username file/dir ##更改文件或目录的所有人##
chown username.groupname file/dir ##同时修改文件或目录的所有人和所有组##
Linux基础(五)——文件的权限设定_第5张图片
chown -R username.groupname dir ##递归修改文件夹以及文件夹中包含的文件的所有人和所有组##

4、更改文件和文件夹的读、写、执行权限

  • 首先按照八进制的技术方法,我们可以记:

    • ---:000
    • r--:4
    • -w-:2
    • --x:1
      例如:r---w---x:421
      rwxrwxrwx:777
      chmod 数字 file/dir ##修改用户、用户组、其他用户的文件权限##
  • 命令如下:

    • chmod 【u|g|o】【+、-、=】【r、w、x】
    • chmod u+x file ##增加文件用户执行的权限##
    • chmod g+w file ##增加文件用户组的书写权限##
    • chmod o+x file ##增加其他用户的执行权限##
      Linux基础(五)——文件的权限设定_第6张图片
      chmod a+rwx file/dir就等于chmod 777 file/dir ##同时开通用户和用户组以及其他用户的读取、书写、执行三个权限##

chmod -R u+r dir ##表示递归更改权限,给目录增加其用户读写的权限,而目录下的子文件也会增加其用户读写的权限##
Linux基础(五)——文件的权限设定_第7张图片
chmod --reference file1 file2 ##将文件file1的权限复制到file2文件上##
Linux基础(五)——文件的权限设定_第8张图片

5、umask

系统建立文件时默认保留的权

umask ##查看当前的umask值##
在这里插入图片描述
系统默认回收 : umask 满权限是777
注意:这种修改只是在当前打开的shell中修改了,当关闭了当前shell则umask的值会变为系统默认值0022
若想永久修改系统默认的umask值,则需要进入/etc/bashrc文件和/etc/profile文件中修改关于umask的参数,这样才能永久修改。
Linux基础(五)——文件的权限设定_第9张图片
注意:修改完后需要执行 source /etc/profile和source /etc/bashrc 这两个命令后,修改的umask值才能生效
** /etc/bashrc :shell配置文件 /etc/profile :系统配置文件 **

6、特殊权限

  • (1)、作用:让特定用户对特定文件有特定权限

  • (2)、sticky :粘制位
    只针对目录起作用,功能即当一个目录上有sticky权限时,在这个目录中的文件只能被文件的所有者删除。
    设定方式: chmod o+t dir 或者 chmod 1XXX dir
    Linux基础(五)——文件的权限设定_第10张图片

  • (3)、sgid :强制位

    • 针对目录:当目录上有sigd权限时任何人在此目录中建立的文件都属于目录的所有组
    • 设定方法:chmod g+s dir 或者 chmod 2XXX dir
      Linux基础(五)——文件的权限设定_第11张图片
      针对文件:只对二进制可执行文件起作用,当文件上有sgid权限时,任何人执行此文件产生的进程都属于文件组
      设定方法: chmod g+s file 或者 chmod 2XXX file在这里插入图片描述
      Linux基础(五)——文件的权限设定_第12张图片
      在这里插入图片描述
      Linux基础(五)——文件的权限设定_第13张图片
      Linux基础(五)——文件的权限设定_第14张图片
      Linux基础(五)——文件的权限设定_第15张图片
      在这里插入图片描述
      Linux基础(五)——文件的权限设定_第16张图片
  • (4)、suid :冒险位
    只针对二进制可执行文件起作用,当文件上有suid权限时,任何人执行执行这个文件中记的程序产生的进程都属于文件的所有人
    设定方式: chmod u+s file 或者 chmod 4XXX file
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    Linux基础(五)——文件的权限设定_第17张图片

7、acl权限

  • (1)、标志:当查看文件属性时,有"+"出现,标志着acl列表已经开启
    Linux基础(五)——文件的权限设定_第18张图片
  • (2)、acl列表的查看以及各部分的所代表的意义
    在这里插入图片描述
getfacl file         ##查看acl开启的文件的权限##
执行了如上的命令会出现下列信息

file:file           ##文件名称##
owner:root           ##文件拥有者##
group:root          ##文件拥有组##
user::rw--         ##文件拥有人的权限##
group::r--         ##文件拥有组的权力##
other::r--         ##其他人的权限##

8、acl列表的设定

getfacl file
setfacl -m u:username:rwx file ##设定username对file拥有rwx权限##
Linux基础(五)——文件的权限设定_第19张图片
setfacl -m g:group;rwx file ##设定group组成员对file拥有rwx权限##
Linux基础(五)——文件的权限设定_第20张图片
setfacl -x u:username file ##从acl列表中删除username##
Linux基础(五)——文件的权限设定_第21张图片
setfacl -b file ##关闭file上的acl列表##

在权限列表中mask标示能生效的权力值,当用chmod减小开启acl的文件权限时mask值会发生改变
Linux基础(五)——文件的权限设定_第22张图片
Linux基础(五)——文件的权限设定_第23张图片

setfacl -m m:r file ##恢复mask值 ##
Linux基础(五)——文件的权限设定_第24张图片
注意:不是所有的权限更改都是增大权限,也可以缩小权限

i权限:只能看,不能建立不能删除
a权限:用于系统审计,只能建立,不能删除
chatter   ##设定权限##
lsatter    ##查看权限##

Linux基础(五)——文件的权限设定_第25张图片
如上图所示,用chatter命令设定了文件夹只有读的权限,故就算是超级用户也无权限在此文件夹下删除或者创建文件

文件系统

Linux基础(五)——文件的权限设定_第26张图片

你可能感兴趣的:(Linux基础)