Liunx学习总结(四)--文件的权限管理
文件和目录的权限
每个文件都有其所有者(u:user)、所属组(g:group)和其他人(o:other)对它的操作权限,a:all则同时代表这3者。权限包括读(r:read)、写(w:write)、执行(x:execute)。在不同类型的文件上读、写、执行权限的体现有所不同,所以目录权限和普通文件权限要区分开来。
普通文件
- r:可读,可以使用类似 cat 等命令查看文件内容;读是文件的最基本权限,没有读权限,普通文件的一切操作行为都被限制。
 - w:可写,可以编辑此文件;
 - x:可执行,表示文件可由特定的解释器解释并运行。可以理解为 windows 中的可执行程序或批处理脚本,双击就能运行起来的文件。
 
目录
- r:可以对目录执行ls以列出目录内的所有文件;读是文件的最基本权限,没有读权限,目录的一切操作行为都被限制。
 - w:可以在此目录创建或删除文件/子目录;
 - x:可进入此目录,可使用ls -l查看文件的详细信息。可以理解为windows中双击就进入目录的动作。
 
如果目录没有 x 权限,其他人将无法查看目录内文件属性(只能查看到文件类型和文件名),所以一般目录都要有 x 权限。而如果只有执行却没有读权限,则权限拒绝。
一般来说,普通文件的默认权限是 644 (没有执行权限),目录的默认权限是 755(必须有执行权限,否则进不去),链接文件的权限是 777。当然,默认文件的权限设置方法是可以通过 umask 值来改变的。
权限的表示方式
权限的模式有两种体现
- 数字体现方式
 - 字符体现方式
 
权限的数字表示:"-"代表没有权限,用 0 表示。
- r-----4
 - w-----2
 - x-----1
 
例如:rwx rw- r--对应的数字权限是 764,732 代表的权限数值表示为 rwx -wx -w-。
权限解读实例
我们来获取下文件列表:
-rw-r--r--   1 root root   218 Aug  1 15:16 a.txt
lrwxrwxrwx.  1 root root     7 Jan  9  2018 bin -> usr/bin
dr-xr-xr-x.  5 root root  4096 May  9 15:32 boot
一般来说权限格式如下:
- 第一个字符表示文件类型
 - 第一组(每三个字符)表示是所有者权限
 - 第二组表示所在组权限
 - 第三组表示其他人的权限
 - 最后一个是ACL类型,(.)点是ACL_T_SELINUX_ONLY, (+)加是ACL_T_YES,空白是没有ACL。
 
常用的文件类型为以下三种:
* d :目录 directory
* - :二进制文件 binary
* l :软链接文件 link
dr-xr-xr-x. 表示这是一个目录文件,它的所有者可以对它读和执行,不能写 、所属组可以对它读和执行,不可以写,其他人可以读和执行,不能写,并且是 ACL 类型。
ACL 权限
在计算机相关领域,所有的 ACL(access control list)都表示访问控制列表。
文件的 owner/group/others的权限就是一种 ACL,它们是基本的ACL。很多时候,只通过这3个权限位是无法完全合理设置权限问题的,例如如何仅设置某单个用户具有什么权限。这时候需要使用扩展ACL。
扩展ACL是一种特殊权限,它是文件系统上功能,用于解决所有者、所属组和其他这三个权限位无法合理设置单个用户权限的问题。所以,扩展ACL可以针对单一使用者,单一档案或目录里的默认权限进行r,w,x的权限规范。
需要明确的是,扩展ACL是文件系统上的功能,且工作在内核,默认在ext4/xfs上都已开启。
修改权限
能够修改权限的必须是管理员或者文件所有者。
语法格式
chmod(选项)(参数)
选项:
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
-v或——verbose:显示指令执行过程;
--reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
<权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置;
<权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置;
<权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;
参数:
权限模式:指定文件的权限模式;
文件:要改变权限的文件。
实例
实例1:使用数值方式修改权限
chmod 755 /tmp/a.txt
实例2:使用字符方式修改权限
由于权限属性附在文件所有者、所属组和其它上,它们三者都有独立的权限位,所有者使用字母"u"表示,所属组使用"g"来表示,其他使用"o"来表示,而字母"a"同时表示它们三者。所以使用字符方式修改权限时,需要指定操作谁的权限。
chmod [ugoa][+ - =] [权限字符] 文件/目录名
"+"是加上权限,"-"是减去权限,"="是直接设置权限
chmod a+x test                # 对文件test的 u,g,o 都设置可执行属性
更改文件和目录的所属组
更改文件和目录的所属组,要求组已经存在。注意,对于链接文件而言,修改组的作用对象是链接的源文件,而非链接文件本身。
语法格式
chgrp (选项) (参数)
选项:
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不是该其他任何相关文件;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
-v或——verbose:显示指令执行过程;
--reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
参数:
组:指定新工作名称;
文件:指定要改变所属组的文件列表。多个文件或者目录之间使用空格隔开。
实例
将/usr/meng及其子目录下的所有文件的用户组改为 marklogzhu
chgrp -R marklogzhu /usr/meng
更改文件所有者和所属组
chown 命令改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户 D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。
只有文件主和超级用户才可以便用该命令。
语法
chown (选项) (参数)
选项:
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quite或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不更改其他任何相关文件;
-R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-v或——version:显示指令执行过程;
--dereference:效果和“-h”参数相同;
--help:在线帮助;
--reference=<参考文件或目录>:把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同;
--version:显示版本信息。
参数:
用户:组:指定所有者和所属工作组。当省略“:组”,仅改变文件所有者;
文件:指定要改变所有者和工作组的文件列表。支持多个文件和目标,支持shell通配符。
实例
将目录/usr/meng及其下面的所有文件、子目录的文件主改成 marklogzhu:
chown -R marklogzhu /usr/meng
												
											Liunx学习总结(四)--文件的权限管理的更多相关文章
- Liunx学习笔记(三) 文件权限
		
一.文件权限 1.查看文件权限 (1)文件权限 在 Linux 中对于文件有四种访问权限,列举如下: 可读取:r,Readable 可写入:w,Writable 可执行:x,Execute 无权限:- ...
 - 我的MYSQL学习心得(十三) 权限管理
		
我的MYSQL学习心得(十三) 权限管理 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...
 - CentOS学习笔记--基本命令--文件与目录管理
		
Linux基本命令--文件与目录管理 本节节选自鸟哥的 Linux 私房菜 -- 基础学习篇目录 第七章.Linux 文件与目录管理 ls(文件与目录的检视) ls命令就是list的缩写,ls可以 ...
 - 鸟哥的linux私房菜——第六章学习(Linux文件与目录管理)
		
******************第六章学习****************** 1.[文件与目录管理] 在所有目录下面都会存在的两个目录,分别是 "." 与 "..& ...
 - 《鸟哥的Linux私房菜》学习笔记(5)——权限管理
		
一.权限的基本概念 权限:访问计算机资源或服务的访问能力. Linux中,每一个资源或者服务的权限, ...
 - linux初级学习笔记八:linux权限管理及权限管理命令详解!(视频序号:04_2)
		
本节学习的命令:chown,chgrp,chmod,openssl,umask 本节学习的技能: 文件权限详解及对其的操作 生成随机密码命令 用遮罩码对用户权限进行修改 站在用户登陆的角度来说SHEL ...
 - Mysql学习笔记(十三)权限管理
		
学习内容: 1.权限管理: 关于mysql的权限简单的理解就是mysql允许你做你权利以内的事情,不可以越界.比如只允许你执行select操作,那么你就不能执行update操作.只允许你从某台机器上连 ...
 - 【Hive学习之七】Hive 运行方式&权限管理
		
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...
 - shell学习(7)- linux权限管理及修改权限命令chmod
		
文件系统权限基本介绍 1.文件基本权限 总共10个字符,可以分为四组, 第一组,就一个字符-,代表是文件类型,是一个常规文件,还有其他的类型如下所示 d--目录 l--符号链接,软连接 c--字符专门 ...
 
随机推荐
- JS+Jquery自定义格式导出HTML为Word(下列插件同样可以用于Excel导出)
			
这里的word导出主要采用了jquery.wordexport.js.FileSaver.js,做功能之前我也是找了很多网上的资料,里面涉及到js导出word的用的都是这个插件,只是在自定义样式这一块 ...
 - Docker 工作原理及容器化简易指南
			
Docker 非常棒! 它使软件开发者无需担心配置和依赖性,在任何地方打包,发送和运行他们的应用程序.而在与 Kubernetes 相结合后,它使应用集群部署和管理变得更方便.这使得 Docker 深 ...
 - 【MySQL】(五)索引与算法
			
本篇文章的主旨是对InnoDB存储引擎支持的索引做一个概述,并对索引内部的机制做一个深入的解析,通过了解索引内部构造来了解哪里可以使用索引. 1.InnoDB存储引擎支持以下几种常见的索引: B+树索 ...
 - 【MySQL】(四)表
			
本篇文章将从InnoDB存储引擎表的逻辑存储及实现开始进行介绍,然后将重点分析表的物理存储特征,即数据在表中是如何组织存放的.简单来说,表就是关于特定实体的数据集合,这也是关系型数据库模型的核心. 1 ...
 - ld: library not found for -
			
这几天在做微信登录,总是遇到这个问题,详细如下: ld: library not found for -lWeChatSDK clang: error: linker command failed w ...
 - Downgrade extraction on phones running Android 7/8/9
			
Now it's more and more difficult for forensic tools to extract evidence from smartphone running Andr ...
 - 有容云-PPT | 当微服务遇见容器
			
编者注: 本文为10月29日有容云高级技术顾问龙淼在Docker Live时代线下系列-广州站中演讲的PPT,本次线下沙龙为有容云倾力打造Docker Live时代系列主题线下沙龙,每月一期畅聊容器技 ...
 - Java equal()  和 == 详细分析
			
1 == 返回值是true/false; (1) 基本数据类型比较的就是值(2)引用型数据类型就是地址值 public class Test1 { public static void main(S ...
 - HTML 第5章CSS3美化网页元素
			
<span>标签: <span>标签是用来组合HTML文档中的行内元素,它没有固定的格式表示. 字体样式: 属性名 ...
 - 3、大型项目的接口自动化实践记录----开放API练习
			
开始做实际项目前,先拿个网上的简单API练下手 一.API说明: 接口信息 接口名:京东获取单个商品价格 地址:http://p.3.cn/prices/mgets 入参:skuids=J_商品ID& ...