Day09 红帽Linux — 2控制对文件的访问
红帽Linux — 2控制对文件的访问
文章目录
- 红帽Linux — 2控制对文件的访问
- 一、Linux文件系统权限
- 权限类型
- 权限的表示
- 二、管理文件系统权限
- 修改文件权限
- chmod指令结构
- 赋予权限
- 小测验
- 修改文件的所有者和所属组
- 三、管理特殊权限和默认权限
- 执行文件时的特殊权限
- 默认权限
- umask概念
- 临时修改umask
- 永久性的更改 umask 两种方法
- 1、改两个文件
- 2、新建个脚本文件
- sh代码中整数比较大小
一、Linux文件系统权限
权限类型
文件的权限有三种用户类别:文件所有者、所属组、其他人
每类用户对文件的权限又可分为三种:读、写、执行
权限 | 对文件的影响 | 对目录的影响 |
---|---|---|
r | 可以读取文件内容 | 可以列出目录的内容(文件名) |
w | 可以更改文件内容 | 可以创建、删除目录中的任一文件 |
x | 可以作为命令执行文件 | 可以进入访问目录(查看文件详细信息等) |
权限的表示
drwxrw-r--
文件类型、所有者、所属组、其他人
数字加权:764
r=4,w=2,x=1
文件类型有:-(常规文件)、d(目录)、l(软链接)、其它字符(b、c:硬件设备,p、s:特殊用途文件)
例子
- 例1:用户对目录有 r-x 权限,可以列出和查看目录下文件的信息。如果只有 r 权限,就只能列出文件,而无法查看到文件的详细信息。
- 例2:用户对目录有 x 权限,将可以进入目录,但没法列出文件。若用户同时对文件有 r 权限,则 可以通过具体文件的指向来查看这个文件,但是无法编辑文件。
- 例3:用户对目录有 rw 权限,对文件有 r 权限,用户不能编辑文件,但有时候乱配一通后发现可以保存,这是为什么呢?(可能在vim中编辑保存时用了:w!,相对于借用root权限)
- 例4:tom 是 1.txt 的所有者,具有 r-- 权限。tom 的补充组是 ken,对 1.txt 具有 r-x 权限,那 tom 的权限是?(r-x)
ls -ld /home
ls 中的-d
可以显示目录本身,而不是其内容
二、管理文件系统权限
修改文件权限
chmod指令结构
chmod <who> <what> <which> <file|directory>
- who:u、g、o、a user、group、others、all
- what:+、-、= 增加权限、减少权限
- which:r、w、x(X) 读、写、执行
赋予权限
+x:赋予文件可被执行的权力
chmod +x <file>
,或赋予某对象执行该文件的权力chmod a+x <file>
,赋予一个目录下所有文件可执行的权限需要-R,chmod g+x -R <dir>
+X:当文件是个目录或是被设定为某用户可执行的文件时,+X等价于+x,否则不改变其可否被执行的权力
chmod a+X <file>
例子
例1、修改 1.txt 的所有者权限为完全控
chmod u=rwx 1.txt #直接指定某对象的权限
例2:修改 2.txt 的权限为所有用户完全控制
chmod 777 1.txt #可以使用数字加权的方法设定所有用户的权限
例3:要求其他用户对 1.txt 具有执行权限(例如:脚本)
chmod o+x 1.txt #不考虑原来的权限,直接添加或减少某个权限
例4:将 test 目录及子目录子文件的权限都设置为 rwx
chmod -R a=rwX test #使用 -R 选项实现递归设置
注:在递归设置权限时,设计执行权限,可用大写X,若文件原本可被某一用户执行或是目录,则按设置的指令更改其被其他用户执行的权力,否则不改变其执行权限
小测验
练习
1.C 2.A × => B √ 3.D
4.A 5.C 6.D
答案
修改文件的所有者和所属组
chown <user> <file|dir> #命令的参数(执行对象)通常是在末尾
chgrp <group> <file|dir>
例1:修改 1.txt 所有者为 tom,所属组改为 group1
chown tom 1.txt chgrp group1 1.txt 或 chown tom:group1 1.txt #同事修改文件的所有者和所属组
注:只有root用户可以修改文件的所有者;而所有者可以修改文件的所属组。
三、管理特殊权限和默认权限
执行文件时的特殊权限
权限 | 权值 | 操作符 | 对文件的影响 | 对目录的影响 |
---|---|---|---|---|
SUID | 4 | u+s或S | 执行文件时,以文件所有者身份运行文件 | - |
SGID | 2 | g+s或S | 以所有组身份运行文件 |
在具有 sgid 权限的目录下创建子项目时, 继承上级的所属组 |
SBIT | 1 | o+t或T | - |
具有 t 权限的目录,目录下的文件和子目录 只能被所有者或 root 用户删除 |
- 在权限属性中,特殊权限会占用执行权限的位置
- 此时小写表示原位置有x权限,大写表示无x权限
- 其加权数值为四位,第一位记录特殊权限的权值
例子
-r-sr-Sr--
6544
-rwsrw-rw-
4766
默认权限
系统中默认权限:目录是0777,文档是0666(所有文件都无执行权限)
umask概念
umask:在默认权限的基础上减去 umask 就是新建目录/文件的权限。
配置文件: /etc/bashrc
默认值:0002
分配规则:若UID为200或以上,且用户名与组名相同则分配值为002的umask,否则分配022。新建用户的umask为0002
umask通常还会设置为:
0:其他人将具有对目录和文件的执行权限
027:其他人将没有任何权限,可以确保只有所有者和所属组具有权限。
临时修改umask
umask #查看当前umask
umask XXXX #设置临时umask,重启后失效
永久性的更改 umask 两种方法
1、改两个文件
用户的系统默认umask值在 /etc/profile
和 /etc/bashrc
文件中,用户可以在其主目录的 .bash_profile
和 .bashrc
文件中覆盖系统默认值。
2、新建个脚本文件
新建个脚本文件 /etc/profile.d/local-umask.sh
修改不同UID范围的,UID与GID是否相等的,账户的umask值
if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; thenumask 007
elseumask 022
fi
改完后reboot
重启生效
sh代码中整数比较大小
指令 | 英文 | 含义 |
---|---|---|
-eq | equal to | 等于 |
-ne | not equal to | 不等于 |
-gt | greater than | 大于 |
-ge | greater than or equal to | 大于等于 |
-lt | less than | 小于 |
-le | less than or equal to | 小于等于 |
参考资料:Red Hat Training and Certification
Day09 红帽Linux — 2控制对文件的访问相关推荐
- linux下生成源程序控制流图,Linux下控制(统计)文件的生成的C代码实现
本文分享了Linux下控制(统计)文件的生成的C代码实现案例,供大家参考,具体内容如下 一.需求描述不定时地在Linux机器下的某目录中放入文件,文件内容中包含了用户号码.起止时间等字段,现要求编写一 ...
- 2-2. 控制对文件的访问
##控制对文件的访问## ##学习目标: *读取文件权限 *设定权限列表 *设备权限列表加载 1.权限列表的读取 [kiosk@foundation0 Desktop]$ getfacl file # ...
- Day09 红帽Linux — 1管理本地用户和组
红帽Linux - 1管理本地用户和组 文章目录 红帽Linux - 1管理本地用户和组 一.组的概念 组类型 使用 id 命令可以查看用户的主要组和补充组 组信息 /etc/group /etc/g ...
- 第二课unit2 控制对文件的访问
1.权限列表的读取 命令:getfacl file # file: file ##文件名称 # owner: root ##文件所有人 # group: root ##文件所有组 use ...
- 红帽Linux系统管理员学习哪些内容?
开源技术现在越来越火,无论是从事DBA.网络运维还是开发.云计算.人工智能等岗位,都需要具备些Linux基础知识,本文主要介绍Redhat Linux系统管理员一般学习哪些内容. Redhat Li ...
- linux把u盘只读文件,完美解决linux下U盘文件只读的问题
完美解决linux下U盘文件只读的问题 1. 在终端运行如下命令 tail -f /var/log/syslog 2. 插入有只读文件系统故障的U盘 3. 观察命令行输出 输出局部如下: Jul 8 ...
- 红帽linux怎么装文件夹,红帽linux怎么安装第三方字体?
许多用过 Windows 再去使用红帽 linux 的朋友一定会有这样的感受,就是红帽 linux 的字体相比之下实在是相形见绌.当然,要想红帽 linux 看起来更美观一些,最好的办法莫过于将自己喜 ...
- 红帽linux编程结束编辑,红帽文件相关操作
红帽操作(三)文件 mkdir 这个是创建一条路径 可以一次一次的创建. 也可以直接加-p mkdir -p 删除目录 rmdir 必须从最底层删除 rm -rf 安装 yum install -y ...
- Red Hat6 Linux镜像文件,如何下载红帽企业版Linux的ISO镜像文件,如何开始安装红帽企业版Linux?...
发行版本:红帽企业版 Linux,所有版本 问题: 如何下载红帽企业版 Linux 的 ISO 镜像文件,以便从光盘安装红帽企业版 Linux? 备注:如果您想下载红帽企业版Linux的评估版,需要首 ...
最新文章
- SAP S4HANA里委外加工采购功能的变化
- 成立 5 周年:一文览尽 Facebook 人工智能研究院历年重要成果
- [原创]Silverlight与PostgreSQL数据库的互操作(CURD完全解析)
- 请概述可视化卷积神经网络的中间输出的基本思想。_卷积神经网络为什么能称霸计算机视觉领域?...
- Linux centos 下apache(httpd)编译安装
- sql跨表查询_跨表查询经常有,何为跨表更新?
- 控件与应用程序许可授权的100%托管的先进控件IntelliLock
- Android官方开发文档Training系列课程中文版:键盘输入处理之控制输入法的显示方式
- python pca降维_机器学习之sklearn中的降维算法
- LG电子计划到2010年实现利润翻番
- 动态规划——最长回文子串(Leetcode 5)
- 快手2021年营收810亿元 经调整净亏损188亿元
- css3 动画 vs js 动画
- Lua中local变量和非local变量的区别
- Eclipse中文汉化包安装教程
- java中面向对象的例子_java面向对象九个经典例子程序
- Markdown标记语言知识梳理
- soul服务器不稳定,soul聊天状态异常 消息发送失败
- 漫反射与Lambert模型
- android id如何修改密码,小编教你忘记Apple ID密码怎么办?以及如何修改密码