ls -l? 文件名称

上面的命令以长格式显示文件与目录,每一行都是一个文件或目录的属性数据,每个文件或子目录的属性数据又以7个字段显示,各个字段的说明如下:

(1)文件类型与权限:该字段共有10个字符,第一个字符表示文件的类型,剩下的9个字符表示文件的权限状态。

文件类型:

  • - ?
    ?#普通文件
  • d ?
    ?#目录
  • s ?
    ?#socket套接子
  • l ?
    ?#软链接
  • p ?
    ?#管道
  • c ?
    ?#字符设备
  • b ?
    ?#块设备

权限状态:

rw-|rw-|r--
?@ $
*
?@ ?
?#文件拥有者对文件能做的动作

?$ ?
?#文件所在组的组成员能对文件做的动作

* ?
?#其他人对与文件能做的动作

(2)连接数:表示该文件所建立的连接的数量

(3)文件拥有者:表示拥有该文件的用户账号

(4)文件所属组:表示拥有该文件的组账号

(5)文件的容量:默认以byte为单位进行计算,表示文件的大小

(6)创建时间:创建这个文件的日期

(7)文件名:文件的名称

监控命令?
watch -n 1 ls -lR
hello

初始状态如下:

chown
username file|dir ##更改文件的所有人


chgrp
groupname file|dir ##更改文件的所有组


chown
username.groupname file|dir ##更改所有人所有组


chown -R
username dir ##更改目录本身及里面所有内容的所有人


chgrp -R
groupname dir ##更改目录本身及里面所有内容的所有组

实验之后整体的效果如下:


rw- | r-- |
r--

用户权限(u) 组成员权限(g)
其他用户权限(o)

u优先匹配,g次优先,o当u,g不匹配时匹配

权限针对目录或文件有不同的种类

r权限针对文件,表示可以查看文件内容

r权限针对目录,表示可以ls 查看目录中存在的文件名称

w权限针对文件,表示可以更改文件的内容

w权限针对目录,表示是否可以删除目录中的子文件或者子目录

x权限对于文件,表示是否可以开启文件当中记录的程序

x权限对于目录,表示是否可以进入目录中

字符方式修改文件的权限:chmod [-R] <u|g|o><+|-|=><r|w|x>
file|dir

举例如下:


对象和权限的组合方式多样,不再赘述

数字方式修改文件的权限:

各个权限对应的数值: r=4? w=2? x=1
-=0

u=rwx=7
?|g=rwx=7| o=rwx=7设定方式

umask
##查看系统保留权限,默认为022

umask 077
##修改该系统保留权限为077,此设定为临时设定,只在当前shell中生效


永久设定方式

vim /etc/bashrc
##shell配置文件

修改之前的配置:


修改之后的配置:


vim /etc/profile
##系统配置文件

修改之前的配置:


修改之后的配置:


两个修改的umask值必须一致!

然后再进行下面两行命令:

source
/etc/profile

source /etc/bashrc

重新读取,让设定立即生效

acl ?##
指定特定的用户对特定的文件拥有特殊权力

-rw-rwx---+ 1 root root 0 Mar 28 02:39
file

+表示权限列表开启

设定acl列表

setfacl -m u:username:rwx file ?
?#设定用户对file文件可以读写执行

setfacl -m g:group:rwx? file ?#设定组对文件可以读写执行

setfacl -x u:username? file ?
?#在权限列表中删除用户的信息

setfacl -x g:group ? file
?#在权限列表中删除student组的信息

setfacl -b file ? ?
?#关闭权限列表那么,"+"消失


这个文件的普通权限也在权限列表中识别,ls -l 看到的权限是不准确的

这时就要用到命令 getfacl
来查看权限列表的相关内容

getfacl file

#内容如下:

file:file ? ?#文件名称

# owner: root ?
?#文件的拥有者

# group: root ?
?#文件的组

user::rw- ?
?#文件拥有者的权限

user:westos:rw- ?
?#特殊指定用户的权限

group::--- ?
?#文件组的权限

group:student:rwx
?#特殊指定组的权限

mask::rwx ? ?#权限最大值

other::--- ?
?#其他人的权限


mask值

mask值是能够赋予用户权限的最大值

当设定acl列表后,如果用chmod命令缩小文件的权限,那么mask值会被更改

修改之前:

修改之后:

setfacl -m
m:rwx file?? ? ?#用此命令可以恢复mask的值

acl列表的默认权限

当我们需求某个目录对于某个用户可写,并且目录中新建的子目录对也可写就要设定默认默认权限

setfacl -m
d:u:username:rwx? dir


新建文件对xupter用户有rwx权限
对已经存在的文件无效
对目录本身无效

文件权限的管理以及acl权限列表的更多相关文章

  1. Linux系列教程(十六)——Linux权限管理之ACL权限

    通过前面的两篇博客我们介绍了Linux系统的用户管理,Linux用户和用户组管理之相关配置文件 讲解了用户管理的相关配置文件,包括用户信息文件/etc/passwd,用户密码文件/etc/shadow ...

  2. Linux权限管理之ACL权限

    注:转载自:https://www.cnblogs.com/ysocean/p/7801329.html 目录 1.什么是 ACL 权限? 2.查看分区 ACL 权限是否开启:dump2fs ①.查看 ...

  3. Linux 账号管理与 ACL 权限配置

    要登陆 Linux 系统一定要有账号与口令才行,否则怎么登陆,您说是吧?不过, 不同的使用者应该要拥有不同的权限才行吧?我们还可以透过 user/group 的特殊权限配置, 来规范出不同的群组开发项 ...

  4. Linux权限管理:ACL 权限

    1.ACL 是什么 ACL的全称是 Access Control List (访问控制列表) ,一个针对文件/目录的访问控制列表.它在UGO权限管理的基础上为文件系统提供一个额外的.更灵活的权限管理机 ...

  5. 第14章 Linux账号管理与ACL权限设置

    Linux的账号与用户组 用户标识符:UID与GID 每一个文件都有一个所有者ID和用户组ID,当我们需要查看文件属性时,系统会根据/etc/passwd和/etc/group的内容,找到对应UID和 ...

  6. Linux 账号管理及ACL权限设置,PAM模块简介

    有效群组与初始群组: groups:有效与支持群组的观察 newgrp:有效群组的切换,后面接群组名称 在passwd文件中记录的GID就是默认的GID,就是初始群组 /etc/passwd文件结构 ...

  7. Linux中权限管理之ACL权限

    1.简介: a.作用: 是为了防止权限不够用的情况,一般的权限有所有者.所属组.其他人这三种,当这三种满足不了我们的需求的时候就可以使用ACL权限 b.故事背景: 一个老师,给一个班的学员上课,他在l ...

  8. 第十四章、Linux 账号管理与 ACL 权限配置

    1. Linux 的账号与群组 1.1 使用者标识符: UID 与 GID 1.2 使用者账号:/etc/passwd 文件结构, /etc/shadow 文件结构 1.3 关于群组: /etc/gr ...

  9. linux备忘录-账号管理与ACL权限设定

    知识 账号管理中的一些文件结构 /etc/passwd 每一行的内容都为下面结构 账号名称:密码:UID:GID:用户信息说明:家目录:shell ---- UID ---- -- 0 -> 代 ...

随机推荐

  1. java内存模型——重排序

    线程安全问题概括来说表现为三个方面:原子性,可见性和有序性. 在多核处理器的环境下:编译器可能改变两个操作的先后顺序:处理器可能不是完全依照程序的目标代码所指定的顺序执行命令:一个处理器执行的多个操作 ...

  2. jvm源码解读--20 结合jvm源码理解 java 设计模式 模板方法

    write by 张艳涛 前言: 在学习jvm之前,看过设计模式的书,知道模板方法的设计模式,今天在看java并发编程的艺术里面关于AbstractQueuedSynchronizer 用法,这个就使 ...

  3. Thinkphp 分页应用

    $Table = M('Table'); $count = $Table ->where()->count();        $Page = new \Think\Page($count ...

  4. 电脑桌面与群晖NAS双向实时同步-20210105

      电脑桌面与群晖NAS双向实时同步 2021年1月15日星期五   一.购买群晖DS920+网络存储服务器.NEC超轻笔记本电脑(重量小于800克).小米10至尊版安卓智能手机和intel i9 1 ...

  5. 每个程序员的必经之路:Hello,world!

    每个程序员的必经之路:Hello,world! Java 源程序 也称源代码,是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令. 在现代程序语言中,源代码可以是以 ...

  6. Centos8 Nginx 开机自启配

    第一步:创建 service文件 vim /lib/systemd/system/nginx.service /lib 与 /usr/lib 我这里配置时是一样的,在那个文件夹配置都可以 第二步:编写 ...

  7. C 购买商品的游戏

    1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 /* 5 *模拟实现道具店购物 ...

  8. 又一开源项目爆火于GitHub,Android高级插件化强化实战

    一.插件化起源 插件化技术最初源于免安装运行 Apk的想法,这个免安装的 Apk 就可以理解为插件,而支持插件的 app 我们一般叫 宿主. 想必大家都知道,在 Android 系统中,应用是以 Ap ...

  9. SpringMVC学习01(什么是SpringMVC)

    1.什么是SpringMVC 1.1 回顾MVC 1.1.1 什么是MVC MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范. 是将业务逻辑.数据 ...

  10. Python语言系列-05-模块和包

    自定义模块 #!/usr/bin/env python3 # author:Alnk(李成果) # 为什么要有模块?(内置函数不够用) # 和操作系统打交道 # 和python解释器打交道 # 和时间 ...