linux初学者-文件权限
lunix系统都是以文件的形式存在,自然而然的就会要求不同的用户拥有不同的权限,这也是系统能够运行的根本保证,下文将对文件的权限管理进行简要的介绍。
1、文件属性的查看
- | rw-rw-r--. | 1 | kiosk | kiosk | 0 | Jul 23 18 :26 | file
— —————— —— ———— ———— —— —————————— ————
1 2 3 4 5 6 7 8
1.1、"-":文件类型
常见的文件类型有:
- 普通文件
d 目录
c 字符设备
s 套接字
p 管道
b 块设备
l 连接 快捷方式 软连接
1.2、"rw-rw-r--":文件读写权限
rw- | rw- | r--
@ * #
@表示所有人的权限,*表示所有组的权限,#表示其他人的权限。
1.3、"1"
文件内容被系统记录的次数,即要删除时删除的次数。如果是目录,就代表目录中文件属性的字节数。
1.4、"kiosk"
表示文件所有人。
1.5、"kiosk"
表示文件所有组。
1.6、"0"
表示文件内容的大小。
1.7、"Jul 23 18:26"
表示文件最后一次被修改的时间。
1.8、"file"
表示文件的名字。
2、文件所有人所有组的管理
在对文件进行管理时,有时需要改变文件或者目录的所有人或者所有组,就需要用到"chown"命令。
命令"chown username file|directory"表示更改文件的所有人,例如将"file"文件的所有人改为"wea"。
命令"chown username.groupname file|directory"表示更改所有人所有组。例如将"file"文件的所有人和所有组改为"tom"。
命令"chgrp groupname file|directory"表示更改所有组。例如将"file"文件的所有组改为"wea"。
此外,如果在改目录所有人或者所有组的时候加入参数"-R",则表示更改目录本身及里面所有人或者所有组。
3、文件的普通权限
rw- | rw- | r--
u g o
u说明文件所有人对文件可以读写,g说明文件组成员对文件可读,o说明其他人对文件可读。文件的普通权限有wrx三种。
3.1、w
"w"对于文件来说可以更改文件内字符,对于目录来说,可以在目录中添加删除文件。
3.2、r
"r"对于文件来说可以查看文件中的字符,对于目录来说,可以查看目录中文件的信息。
3.3、x
"x"对于文件来说可以运行文件内记录的程序动作,对于目录来说,可以进入目录中。
3.4、修改该文件权限
修改文件权限的命令为"chmod <u|g|o><+|-|=><r|w|x> file|directory"。例如下图,输入"chmod u+x file"在所有人权限上添加x。
输入"chmod g+w file"在所有组权限上添加"w"。
输入"chmod u-x,g-w file"在所有人权限上去掉"x",并在所有组权限上去掉"w"。
输入"chmod ugo+x file"表示在所有人、所有组和其他人权限上添加"x"。
3.5、数字修改权限的方式
在修改权限时,上述命令用起来过于繁琐,所有可以用数字代替。在linux中,r=4、w=2、x=1。所以命令"chmod u+rwx,og-wrx file"也可以写为"chmod 700 file",明显简单了许多。
4、系统默认权限的设定
从系统存在角度来说,开放权力越大,系统存在意义越高。但是从系统安全角度来说,开放权力越少,系统安全性越高。所以系统设定新建文件或目录会去掉一些权限。
查看系统保留权限的命令是"umask",在当前的shell中可以临时修改系统保留权限,之在当前shell中有效,例如将系统保留权限设为"077",代表建立的文件权限为700。
上述修改系统保留权限只能临时生效,如果需要永久生效,则需要作以下设定。
输入命令"vim /etc/bashrc",002为普通用户默认权限,077为超级用户默认权限。
输入命令"vim /etc/profile"。
在上图的地方设置需要的umask值,但需要注意的是,以上两个文件umask设定值必须保持一致,完成之后输入"source /etc/bashrc"和"source /etc/profile"让设定立即生效。
5、文件访问(acl)的设定
5.1、acl的定义
"acl"就是"access control",是指定特殊用户对特殊文件有特殊权。输入命令"getfacl file|directory"就可以查看特殊权限列表。例如下图输入"getfacl file",查看权限列表。在结果中,"file:file"是文件名,"owner: root"是文件所有人,"group: root"是组所有人,"user:rwx"是文件拥有者权限,"group::rwx"是组权限,"other::rwx"是其他人权限,如果出现"mask::rwx"则是权限掩码,如果出现"user:username:rwx"则是特殊用户权限。
需要注意的是,当文件上有权限列表时,"ls -l"能看到的权限是假的。
5.2、设定acl列表
添加acl列表的命令是"setfacl -m <u|g>:<username|groupname>:权限 文件|目录"。如下图,添加"wea"用户为特殊用户,有特殊权限"rwx"。
删除acl列表的命令是"setfacl -x <u|g>:<username|groupname> 文件|目录"。如下图删除刚才所添加的特殊用户"wea"。
关闭acl列表可以使用命令"setfacl -b 文件|目录"。
5.3、mask值
mask是权限掩码,用来表示能够赋予用户最大权限,但是当用chmod改变文件普通权限时可能会破坏,如下图所示。
上述情况如果需要修复,则需要输入命令"setfacl -m m:7 文件名称"。
5.4、acl默认权限的设置
当我们需求某个目录对于wea用户可写,并且目录中新建的子目录也对这个用户可写,就要设定默认权限。设定默认权限的命令为"setfacl -m d:u:wea:7 test/"。如下图所示,在原目录中重新建立一个子目录后发现新建的目录对"wea"也可写。
但是,默认权限只对目录中新建立的文件或者目录生效,对已经建立的文件无效,对于目录本身也无效。
6、特殊权限
6.1、冒险位权限suid
此权限只针对二进制可执行文件,使用效果是文件内记录的程序产生的进程的所有人为文件所有人,和和进程发起人身份无关。设定方式为:"chmod u+s file"或者"chmod 4xxx file"。
例如下图,一般情况下wea用户并不能删除"/root/test",输入"chmod u+s /bin/rm"命令之后,使得删除时删除进程的所有人为root,从而删除"/root/test"。
6.2、强制位权限sgid
此权限主要应用与目录,使用效果是目录中新建的所有文件的所有组都自动归属到目录的所有组之中,和文件建立者所在的组无关。设定方式为:"chmod g+s directory"或者"chmod 2xxx directory"。
例如下图,可以看到当wea用户在"/mnt/test"目录下建立文件时,文件的所有组为"wea",但是如果输入命令"chmod g+s /mnt/test"之后,wea所建立的文件自动归属于目录的所有组"root"。
6.3、粘制位权限sticky
此权限只针对于目录,当一个目录上有t权限,那么目录中的文件只能被文件的拥有者删除。命令为:"chmod o+t direcotry"或者"chmod 1777 direcotry"。
例如下图,可以看出,在一般情况下,student用户是可以删除wea用户所建立的文件的。但是,在输入"chmod o+t /mnt/test"命令之后,student用户无法删除wea用户所建立的文件"file"。
以上就是在linux系统的操作中关于文件权限的主要内容。
linux初学者-文件权限的更多相关文章
- 全面解析Linux数字文件权限
全面解析Linux数字文件权限 来源: 时间:2013-09-04 20:35:13 阅读数:11433 分享到:0 [导读] 在刚开始接触Linux时对于文件权限的理解并不是很透彻,这里详细 ...
- [转]Linux中文件权限目录权限的意义及权限对文件目录的意义
转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...
- 第六章、Linux 的文件权限与目录配置
第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...
- linux初学者-文件管理篇
linux初学者-文件管理篇 linux系统的所有东西都是以文件的形式存储在计算机中的,所以linux系统中对文件的管理非常重要.以下介绍一些文件管理的常用方法. 1.文件的建立 文件的建立或者修改文 ...
- 【转】第六章、Linux 的文件权限与目录配置
原文网址:http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission.php 最近更新日期:2009/08/18 Linux最优秀的地方之一, ...
- Linux下文件权限的设置
文件/目录权限设置命令:chmod 这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限.该命令有两种用法: 用包含字母和操作符表达式的文字设定法 ) 其语法格式为:chmod ...
- Linux的文件权限与目录配置
用户与用户组(Linux是一个多用户多任务的系统) 文件所有者 设置适当的权限,其他人无法看到自己的文件 用户组概念 属于同一个用户组的可以看到这个团体的公共信息,每个账户都可以有多个用户组的 ...
- Linux:文件权限
使用较长格式列出文件:ls -l显示除了 '.'(当前目录),'..' 上一级目录之外的所有包含隐藏文件(Linux 下以 '.' 开头的文件为隐藏文件): ls -Al查看某一个目录的完整属性,而不 ...
- Linux的文件权限
1 文件权限的表示 (1)字母表示法 Linux中所有文件(普通文件.目录文件.字符特殊文件.块特殊文件.管道或FIFO.符号链接.套接字)都有9个权限,如下图所示: -rw-rw-r--就是文件a的 ...
随机推荐
- Qt浅谈之二十七进程间通信之QtDBus good
一.简介 DBus的出现,使得Linux进程间通信更加便捷,不仅可以和用户空间应用程序进行通信,而且还可以和内核的程序进行通信,DBus使得Linux变得更加智能,更加具有交互性. DB ...
- uva11038_How Many O's?_数位DP
问m-n之间的数中共有多少个0,过程稍稍麻烦了一些,半天的时间才搞定. 直接上码吧 /********************************************************* ...
- jmeter报告分析工具
一直以来做性能测试都是用jmeter和LR,当然还有一些自己写测试脚本,LR不用说,分析结果那个组件杠杠的!但是jmeter毕竟是开源的,所以分析查看结果不像LR那样自带图形神马的,虽然可以自己写脚本 ...
- 3017C语言_文件
第七章 文件 7.1 C语言文件的概念 7.1.1 文件的概念 在此之前,所有的输入和输出只涉及到键盘和显示器.在运行C程序时,我们通过键盘输入数据并借助显示器把程序的运算结果显示出来.但是,计算 ...
- 如何打造VUCA时代的敏捷型组织?
王明兰 --原华为.微软创新与转型教练.华为云SaaS产品总监,著名精益&敏捷转型专家 VUCA最早来源于冷战时期,在现代世界意指商业世界越来越不确定性,越来越易变,越来越不可预测,我们已经进 ...
- C盘内存杀手:IDEA缓存文件!
软件虽然装在D盘,C盘仍然还有一个文件夹 里面有两个文件夹: config 目录是 IntelliJ IDEA 个性化化配置目录,或者说是整个 IDE 设置目录.也是我个人认为最重要的目录,没有之一, ...
- git操作相关
-- 创建远程仓库 git init --bare git仓库文件夹名称 从远程仓库复制出本地仓库 git clone ./lth.git local 本地仓库和远程仓库的同步 本地仓库的配置文件co ...
- 使用jinja2模板引擎生成html文件
使用jinja2模板引擎生成html文件 jinja2是纯Python的模板引擎,是仿照Django模板的Python模板语言. 它速度快,被广泛使用,提供了可选的沙箱模板执行环境保证安全. 使用pi ...
- Jenkins+Python+GitLab持续集成
创建任务 登录Jenkins,点击左侧列表的新建选项.输入任务名称,选择构建一个自由风格的软件项目,点击确定. 配置 在任务配置界面,可以设置General标签中的丢弃旧的构建选项,设置保持构建的天数 ...
- zabbix报警信息设置
报警信息 默认标题: 服务器监控报警 告警主机:{HOST.NAME} 主机IP: {HOST.IP} 告警级别:{TRIGGER.SEVERITY} 告警信息:{TRIGGER.NAME} 问题详情 ...