热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux❀系统文件权限汇总梳理

文章目录1、ls命令的使用与常见参数2、目录文件权限赋予解析3、简单别名设置4、修改文件权限5、特殊权限6、ACL-访问控制列表Linux中文件权限相关的配置整合汇总梳理结果如下&

文章目录

  • 1、ls命令的使用与常见参数
  • 2、目录/文件权限赋予解析
  • 3、简单别名设置
  • 4、修改文件权限
  • 5、特殊权限
  • 6、ACL - 访问控制列表

Linux中文件权限相关的配置整合汇总梳理结果如下,主要分为以下几点:

  • ls命令的使用与常见参数
  • 目录/文件权限赋予解析
  • 简单别名设置
  • 修改文件权限
  • 特殊权限
  • ACL-访问控制列表

1、ls命令的使用与常见参数

[root@localhost ~]# ls [目标操作目录路径,默认为当前操作目录]
anaconda-ks.cfg Documents Music Pictures Templates
Desktop Downloads original-ks.cfg Public Videos

  • -l:长列表列出当前目录下的文件信息;
  • -h:单位转换,默认单位字节;
  • -a:显示隐藏文件,隐藏文件以 . 开头,. 为当前目录信息,… 为上级目录信息;
  • -A:显示隐藏文件,不显示 . 与 … 目录信息;
  • -d:显示目录本身属性;
  • -i:显示索引节点号,一个索引节点号代表一个文件;
  • -r:逆序列出目录信息;
  • -Z:显示文件安全上下文,适用于SELinux服务-

2、目录/文件权限赋予解析

[root@localhost ~]# ll /ll = ls -l;
d rwx r-x r-x . 2 root root 6 Dec 24 19:35 Desktop

  • 文件类型
  • 所属用户权限
  • 所属组权限
  • 其他用户权限
  • ACL
  • 硬链接连接次数
  • 所属用户
  • 所属组
  • 文件大小,单位为字节
  • 文件最后一次修改时间
  • 文件名称

3、简单别名设置

[root@localhost ~]# alias lz="ls -dlZ" /关于Linux中引号的使用方法,规定双引号中夹杂单引号,若只有一处,双引号等同于单引号;
[root@localhost ~]# alias | grep lz
alias lz='ls -dlZ'
[root@localhost ~]# lz .
dr-xr-x---. 14 root root system_u:object_r:admin_home_t:s0 4096 Aug 17 19:27 .

4、修改文件权限


[root@localhost ~]# ls -l / | grep -w bin
lrwxrwxrwx. 1 root root 7 Aug 12 2018 bin -> usr/bin

权限说明

  • r:可读;
  • w:可写;
  • x:可执行;

权限与数字转换关系列表:

权限码等值权限
0000
0011–x
0102-w-
0113-wx
1004r–
1015r-x
1106rw-
1117rwx

所属用户/组

  • u:所属用户;
  • g:所属组;
  • o:其他用户;

chmod u/g/o =/+/- = chmod 000/777:修改文件的权限所属者,所属组与其他用户权限;

  • chown 所属者:所属组

[root@localhost zxc]# ll
total 0
-rw-r--r--. 1 root root 0 Aug 17 19:32 aaa.txt
[root@localhost zxc]# chown redhat:redhat aaa.txt
[root@localhost zxc]# ll
total 0
-rw-r--r--. 1 redhat redhat 0 Aug 17 19:32 aaa.txt

  • chgrp 所属组

[root@localhost zxc]# ll
total 0
-rw-r--r--. 1 redhat redhat 0 Aug 17 19:32 aaa.txt
[root@localhost zxc]# chgrp test aaa.txt
[root@localhost zxc]# ll
total 0
-rw-r--r--. 1 redhat test 0 Aug 17 19:32 aaa.txt

5、特殊权限



  • 强制位suid:set uid,使进程的属主属程序文件本身u+s;

[root@localhost zxc]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 33544 Dec 13 2019 /usr/bin/passwd

普通用户可以通过获取属主权限来达到实现修改文件的目的,从而进行的权限操作;

[root@localhost zxc]# ll /etc/shadow
----------. 1 root root 1269 Aug 17 19:34 /etc/shadow

普通用户修改其密码执行passwd命令,其实是修改shadow文件,但是shadow文件权限为000,因此普通用户即获取root用户权限进行密码修改,

  • 强制位sgid:set gid,使进程的属组为程序文件本身,在目录下创建的文件的属组为该目录的属组g+s;

  • 冒险位:只有该用户可以删除自己的文件,其他人无法删除(root用户除外) o+t;

  • umask:查看权限掩码:umask是chmod配套的,总共为4位(gid/uid、属主、组权、其它用户的权限),不过通常用到的是后3个
    默认情况下的umask值是022(可以用umask命令查看),此时Linux系统建立的文件默认权限是644(6-0,6-2,6-2),建立的目录的默认权限是755(7-0,7-2,7-2),umask是为了控制默认权限,不要使默认的文件和目录具有全权而设的;
    普通文件本身的权限:666 rw-rw-rw-(需要注意的是,系统不能直接创建文件就赋予执行权限,必须通过chmod来赋予此权限)
    目录文件本身的权限:777 rwxrwxrwx


umask中的某位文件权限目录权限
067
166
245
344
423
522
601
700

只需要记住一点即可:umask是从权限中拿走的相应的权限数值即可计算得到;

6、ACL - 访问控制列表

setfacl -m u/g:用户名/组名:权限 文件路径:设置ACL
getfacl:查看ACL;

[root@localhost ~]# setfacl -m u:redhat:rwx /tmp/test/aaa/
[root@localhost ~]# ll /tmp/test/
drwxrwxr-x+ 2 root root 60 Dec 28 00:44 aaa /存在ACL,显示为+;
-rw-r--r--. 1 root root 12 Dec 27 21:35 aaa111.txt /无ACL,显示为 . ;[root@localhost ~]# getfacl /tmp/test/ /查看ACL信息;
getfacl: Removing leading '/' from absolute path names
# file: tmp/test/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x


推荐阅读
  • 13Linux基本命令和配置服务器来电后自动开机
    本节所讲内容:Linux终端介绍Shell提示符BashShell基本语法基本命令的使用:ls、pwd、cd查看系统和BIOS硬件时间Linux如何获得 ... [详细]
  • Linux提权之suid篇
    Linux提权之suid篇不知攻,焉知防一个在安服路上摸索的大三生,记录平时学习笔记suid前言:1.只有可以执行的二进制程序文件才 ... [详细]
  • 大数据学习环境安装关于防火墙​centos7使用的是firewalld,centos之前使用的是iptablesCentOS7关闭防火墙查看防火墙状态sudosy ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • 编译原理c语言词法分析器,用C语言实现一个真正的词法分析器
    词法分析,是编译器的第一个模块,也是最简单的模块。最简单,指的是相对于编译器这种大型程序而言,与一般的代码相比还是有点复杂的 ... [详细]
  • 先下载linuxhttp:cdimage.ubuntu.comreleases14.04release我下载的是ubuntu-14.04.3-desktop-amd64mac.is ... [详细]
  • mysql相关操作_MySQL之记录相关操作
    一介绍MySQL数据操作:DML在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括使用INSERT实现数据的插 ... [详细]
  • 更多|本文_记录:如何解决MultipartFile类的transferTo()上传图片报“系统找不到指定的路径“问题亲测有效
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了记录:如何解决MultipartFile类的transferTo()上传图片报“系统找不到指定的路径“问题亲测有效相关的知识,希望对你有一定的参 ... [详细]
  • 在云服务器中搭建Jupyter Notebook环境
    目录前言二、JupyterNotebook搭建步骤1.云服务器准备2.安装Python及pip3.安装JupyterNotebook4.运行JupyterNoteboo ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • top命令使用方法及解读
    本文介绍了top命令的使用方法和解读,包括查看进程信息、系统负载、内存状态、CPU占用等内容。通过top命令可以持续观察系统上运行的进程,并了解系统负载情况,及时关闭一些进程以减轻系统负担。同时,还介绍了top命令的快捷键和安全模式启动方法。通过本文的学习,读者可以更好地使用top命令来管理系统进程。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
author-avatar
prescott1972
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有