权限概述

权限针对文件 权限针对目录
读r 表示可以查看文件内容;cat 表示可以(ls)查看目录中存在的文件名称
写w 表示可以更改文件的内容;vim 修改,保存退出 表示是否可以删除目录中的子文件或者新建子目录(rm/touch/mkdir)
执行x 表示是否可以开启文件当中记录的程序,一般指二进制文件(.sh) => 绿色 表示是否可以进入目录中(cd)

注:一般给予目录读权限时,也将会给其执行权限,属于“套餐”组合

可读权限 read => r(简写),可写权限 write => w(简写),可执行权限 excute => x(简写)

文件的拥有者:默认情况下,谁创建了这个文件谁就是文件的拥有者。文件的拥有者可以进行更改并不是一成不变的。

在Linux系统中,三大类用户也可以拥有简写形式user(u)、group(g)、other(o)

普通权限管理

1、ls -l命令查看文件权限

ls -l

ll
备注:ll命令是红帽以及CentOS系统特有的一个命令,在其他操作系统中可能并不支持

2、文件类型+权限解析


Linux一共有7种文件类型,分别如下:
-:普通文件
d:目录文件
l: 软链接(类似Windows的快捷方式)

(下面四种是特殊文件)
b:block,块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如猫(上网猫)等串口设备)
s:套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件)

3、文件或文件夹权限设置(字母)

基本语法:ch = change mod简单理解权限chmod [选项] 权限设置 文件或目录的名称
选项说明:
-R :递归设置,针对文件夹(目录)给readme.txt文件的拥有者,增加一个可执行权限
chmod u+x readme.txt把readme.txt文件的拥有者的可执行权限去除
chmod u-x readme.txt为readme.txt中的所属组内用户赋予rw权限
chmod g=rw readme.txt给shop目录及其内部的文件统一添加w可写权限
chmod -R ugo+w shop
或
chomd -R a+w shop给shop目录设置权限,要求拥有者rwx,组内用户r-x,其他用户r-x
chmod -R u=rwx,g=r-x,o=r-x shop

4、文件或文件夹权限设置(数字)

常会在技术网站上看到类似于# chmod 777 a.txt 这样的命令,这种形式称之为数字形式权限。

权限 对应数字 意义
r 4 可读
w 2 可写
x 1 可执行
- 0 没有权限
777 :

第一个数字7,代表文件拥有者权限

第二个数字7,代表文件所属组内用户权限

第三个数字7,代表其他用户权限

rwx = 4 + 2 + 1 = 7

rw = 4 + 2 = 6

rx = 4 + 1 = 5

5、特殊权限说明

在Linux 中,如果要删除一个文件,不是看文件有没有对应的权限,而是看文件所在的目录是否有写权限,如果有才可以删除(同时必须具备执行权限)。

文件拥有者以及文件所属组设置

文件拥有者:属主

文件所属组:属组

1、什么是属主与属组

属主:所属的用户,文档所有者,这是一个账户,这是一个人

属组:所属的用户组,这是一个组

2、文件拥有者与所属组的查看

3、文件拥有者设置

基本语法:ch = change ,own = owner
chown [选项] 新文件拥有者名称 文件名称
-R :代表递归修改,主要针对文件夹

4、文件所属组的设置

基本语法: ch = change , group,chgrp
chgrp [选项] 新文件所属组名称 文件名称
选项说明:
-R : 代表递归修改,主要针对文件夹

5、chown同时修改属主与属组

chown [选项] 文件拥有者名称:文件所属组名称 文件名称
或
chown [选项] 文件拥有者名称.文件所属组名称 文件名称
选项说明:
-R : 代表递归修改,主要针对文件夹

特殊权限

1、设置位S(针对二进制文件)

作用:为了让一般使用者临时具有该文件所属主/组的执行权限。

主要针对二进制文件(命令)

例如:/usr/bin/passwd在执行它的时候需要去修改/etc/passwd和/etc/shadow等文件,这些文件除了root外,其他用户都没有写权限,但是又为了能让普通用户修改自己的密码,该怎么办呢?

whereis命令,主要功能就是查询某个命令所在的路径,基本语法 => whereis passwd

itheima普通账号 => 执行/usr/bin/passwd => 修改/etc/shadow文件(存放用户的密码)

/etc/shadow文件比较特殊,其权限为— — —(000),除root外,其他人都没有权限

① 冒险位(u + s)

  • 冒险位,指文件操作者(用户)临时拥有文件拥有者的权限
  • 冒险位,一般针对的是命令或者脚本文件
  • 冒险位,用字母表示是s或S;数字表示是4
  • 冒险位的设置:chmod u+s 文件名或者chmod 4xxx 文件名

主要针对可执行的二进制文件,如/usr/bin/passwd文件
☆ 添加S位权限

chmod u+s /usr/bin/passwd
或者
chmod 4755 /usr/bin/passwd

② 强制位(g + s)

  • 强制位,一般针对的是目录

    如果一个目录拥有强制位,那么任何用户在该目录里所创建的任何文件的属组都会继承该目录的属组。

  • 强制位,用字母表示是s或S;数字表示是2

  • 强制位的设置:chmod g+s 文件名或者chmod 2xxx 文件名

主要针对目录进行设置,比如shop目录,文件拥有者root,所属组itheima,g+s

这样以后我们在shop目录下创建的所有文件的所属组都会继承shop文件夹的itheima

☆ 去除S位权限

chmod u-s /usr/bin/passwd
或者
chmod 0755 /usr/bin/passwd

2、沾滞位T(针对文件夹)

主要功能:只允许文件的创建者和root用户删除文件(防止误删除权限位)
基本语法:

☆ 移除粘滞位

chmod -R o-t /tmp

chmod -R 0777 /tmp

☆ 添加粘滞位

chmod -R o+t /tmp
chmod -R 1777 /tmp

ACL访问控制

ACL,是 Access Control List(访问控制列表)的缩写,在 Linux 系统中, ACL 可实现对单一用户设定访问文件的权限。
ACL权限可以针对某个用户,也可以针对某个组。ACL优势就是让权限控制更加的精准。

获取某个文件的ACL权限

getfacl 文件或目录名称

给某个文件设置ACL权限

setfacl [选项] 文件或目录名称
选项说明:
-常用选项:
-m 修改或者设置ACL策略
-R 递归授权,对目录下已存在的目录或文件有acl策略,但新建的文件没有
-x 去掉某个用户或者某个组的权限
-b 删除所有的acl策略
-d 默认ACL策略,只针对目录,该目录下新建的目录和文件都会继承acl策略
mask: 定义除其他人和所有者外的最大权限针对readme.txt文件给linuxuser设置一个权限=>可读
setfacl -m u:linuxuser:r readme.txt =>  针对某个用户开通ACL权限针对shop文件夹给itheima组设置一个权限=>可读可写权限rw
setfacl -R -m g:itheima:rw shop =>  针对某个用户组开通ACL权限把linuxuser用户权限从readme.txt中移除掉
setfacl -x u:linuxuser readme.txt把itheima用户组权限从shop中移除掉
setfacl -x -R g:itheima shop把readme.txt文件中的所有ACL权限全部移除
setfacl -b readme.txt

umask

什么是umask

umask表示创建文件时的默认权限(即创建文件时不需要设置而天生的权限)

root用户下,touch a ,文件a的默认权限是644

普通用户下,touch b ,文件b的默认权限是664

644和664我们并没有设置,其中的关键因素就是umask

实际上我们创建一个普通文件最高权限666。而创建一个文件夹其最高权限777
实际文件权限 = 最高权限 - umask的值

获取用户的umask值

umask
0022
注:0022中第一位0代表特殊权限位,可以不设置。
umask的默认值,在root和普通用户下是不一样的,分别是022和002

修改umask值(不要修改)

☆ 临时修改(重启后失效)

umask 002
777 - 002 = 775

☆ 永久设置umask值(写入系统配置)

配置文件说明:

全局配置文件(针对所有用户所有进程) =>  针对所有用户有效
/etc/profile
系统和用户的环境变量信息,当用户第一次登录时,该文件被读取
/etc/bashrc
每个运行的bash信息(系统别名、函数及默认权限的定义),当bash被打开时,该文件被读取局部配置文件(针对某个特定用户以及用户的所有进程)   =>  针对当前用户有效
~/.bashrc
当前用户的bash信息,当用户登录和每次打开新的shell时该文件被读取
~/.bash_profile
当前用户的环境变量,当用户登录时,该文件被读取
~/.bash_history
保存当前用户历史命令的文件
~/.bash_logout
当用户退出bash或者终端时,会首先执行该文件里的代码,然后再退出

案例:更改umask值,针对所有用户有效,umask值设置为0002

vim /etc/bashrc
...
umask 0002source /etc/bashrc   =>   让umask值立即生效

案例:更改umask值,只针对itheima用户有效,umask值设置为0002

su - itheima
[itheima@localhost ~] # vim ~/.bashrc
...
umask 0002

【linux】权限管理操作相关推荐

  1. linux权限管理操作(权限设置)

    权限设置 语法:#chmod 选项 权限模式 文档 注意事项: 常用事项: -r:递归设置权限(文档类型为文件夹的时候) 权限模式:就是该文档需要设置的权限信息 文档:可以是文件,也可以是文件夹,可以 ...

  2. 运维基本功(七): Linux的权限管理操作

    本文是在课程课件基础上修改的学习笔记 课程原地址:https://www.bilibili.com/video/BV1nW411L7xm 如有侵删 运维基本功(一):Linux系统安装 运维基本功(二 ...

  3. Linux基础知识之用户和用户组以及 Linux 权限管理

    已经开始接触Linux用户管理,用户组管理,以及权限管理这几个逼格满满的关键字.这几个关键字对于前端程序猿的我来说真的是很高大上有木有,以前尝试学 Linux 的时候看到这些名词总是下意识的跳过不敢看 ...

  4. 13. Linux权限管理命令

    Linux基础学习-Linux权限管理命令 第十七节 Linux权限管理命令学习6 重要 17.1权限分类 17.2 ugo权限 17.2.1查看ugo权限 17.2.2.ugo权限字符 17.2.3 ...

  5. linux查询默认权限命令,Linux权限管理之基本权限

    Linux权限管理之基本权限 1.文件权限: -rw-r--r-- :         r 读   w 写     x 执行 -:   文件类型(- 文件  d 目录  l软链接文件)rw- r-- ...

  6. Linux 权限管理 day6

    1.Linux权限管理 1.1 权限的介绍 .权限时用来约束用户能对系统所做的操作. .进程能够以什么方式去访问一个文件目录,取决于进程所运行的用户对该文件有什么样的权限. 1.2 权限与用户的关系 ...

  7. 3、Linux权限管理

    3.Linux权限管理 文章目录 3.Linux权限管理 3.1.Linux chgrp命令:修改文件和目录的所属组 3.2.Linux chown命令:修改文件和目录的所有者和所属组 3.3.Lin ...

  8. o在linux是什么权限,Linux权限管理基本知识大全

    Linux权限管理基本知识大全 Linux系统有什么基本权限,权限管理命令是什么?下面跟yjbys小编一起来看看吧! 一.基本权限 linux权限机制采用UGO模式.其中 u(user)表示所属用户. ...

  9. Linux 权限管理_sudo授权 学习总结(三)

    Linux sudo授权 学习总结 一.前言: 前面已经总结了基本权限.umask默认权限.ACL权限,想要了解的朋友可以直接拉到最底,通过传送门浏览查看. 本篇将要介绍sudo授权,sudo授权是在 ...

  10. 【Linux权限】Shell命令及运行原理 | Linux权限管理 | 粘滞位

    文章目录 一.shell命令以及运行原理 二.Linux权限的概念 三.Linux权限管理

最新文章

  1. js算法入门(2)--哈希表
  2. 動態語句的使用方法(exec/sp_executesql)
  3. English trip M1 - PC9 Where am I Teacher:Jade
  4. MyBatis中resuleMap一对一和一对多属性字段映射
  5. Emacs+Lisp环境搭建
  6. win8需要计算机管理员权限才能删除,win8系统使用管理员权限无法删除部分文件怎么办...
  7. 【NLP】文献翻译2——英语单词语义相似性的Word2Vec模型分析
  8. 深圳租房你必须知道的问题有哪些?
  9. 027. 从从门槛和可复制性聊聊生意模式
  10. 【Paper-Attack】Graph Universal Adversarial Attacks: A Few Bad Actors Ruin Graph Learning Models
  11. 【研究生论文写作】 思政相关题目选择题
  12. HTML新特性-网页排版
  13. Hbase跨集群数据同步验证
  14. Pancake的IFO解读
  15. 2021 CCF大数据与计算智能大赛!
  16. Flink standalone配置(血汗注意事项,哭唧唧)
  17. Bussiness 2.0:IT行业新近出现的五大新职业
  18. 正负数在计算机中的表示(原码反码补码)及位运算
  19. 浅谈 BI 与数据分析的可视化
  20. 【计量经济学导论】12. 格兰杰因果关系检验

热门文章

  1. ERROR 1552 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : 问题的解决
  2. Java将数据写入Excel
  3. H5跳转小程序,uniapp跳转小程序
  4. matlab下载安装及永久激活教程(解决安装失败并不断提示激活问题)
  5. 第一次OpenCV小作业-使用鼠标左键画圆画矩形
  6. 【支持向量机SVM系列教程1】线性SVM
  7. linux进入src目录的命令,cd命令
  8. Office-DOC加载宏-上线CS
  9. 手拉手-富春山居千人微商群星峰会 到场人数爆棚
  10. 英特尔® 傲腾™(Optane™)技术