Linux中文件和目录的权限关系

最近一直在学习linux,对文件和目录的权限有了新的认识,感觉想要理清楚还是需要花点心思的。

注意:1.以下的情况只针对文件或目录的所有者(u)来说;2.只针对ext4文件系统

在了解之前先说一下新建、删除、修改文件在系统底层是如何运行的。磁盘分两部分来存放文件的,其中一部分存放的是文件的属性(元数据)比如:文件大小、修改日期、权限等,另一部分才是数据内容。当新建一个文件时会对应创建它的元数据,还会给文件分配一个节点号(inode)。当要查找这个文件时,是先找到对应的节点号,再通过节点表去数据存储区域找到数据反馈给用户。当执行删除文件时,其实是把数据块放到空闲列表中,数据不会马上被删除,但当另一个文件使用数据块时将被覆盖。

首先来说一下文件权限,相对来说比较简单易懂。

r:读权限,指文件的具体内容,比如说文本文件里面写了些什么。这里“读”的内容不包括文件的属性,比如大小、修改日期、权限等,也就是上面提到的元数据。因为那不属于文件内容。

w:写权限,编辑,修改或者新增文件的内容,但是不含删除该文件。(由父目录的w权限决定)

x:执行权限。但拥有了文件的执行权限并不意味着一定可以执行文件,还得看是否拥有父目录的x权限。

总之,对于文件的r、w、x来说,主要都是针对“文件的内容”,与文件名的存在与否没有关系。因为文件记录的是实际的数据(相对于目录)。

目录的权限:(目录也就是文件夹,也是一种特殊的文件)相对于文件来说记录的是实际数据,目录主要记录的内容是文件名列表。

r:读取目录结构列表。比如ls。可查看文件名,文件的属性就不一定可以看了,要想看文件属性还得文件的父目录有x权限。

w:修改目录结构列表的权限(而且无视列表文件的权限)。包括:新建文件、目录,删除文件、目录,重命名文件、目录,移动文件、目录。比如一个普通用户拥有一个目录的w权限(同时也要拥有目录的x权限),即便是该目录下有root的文件,也可以照删不误。

x:意为用户是否可以进入该目录,比如cd。以此目录作为工作目录。如果不具有某一目录的x权限,就无法切换到该目录下,该目录下的任何文件也不能被查看、修改、执行、删除。(最多只能看到文件名,前提是有父目录的r权限)。

原文地址:http://blog.51cto.com/12630492/2151797

时间: 2024-08-06 15:19:21

Linux中文件和目录的权限关系的相关文章

umask值与Linux中文件和目录权限的关系

umask值与文件和目录的权限 1.1 -R参数设置目录权限(chmod) 1.2 权限字母说明 1.3umask说明 1.umask的值决定着文件和目录的权限,创建文件默认最大权限为666(-rw-rw-rw-),默认创建的文件没有可执行权限x位. 2.对于文件来说,umask的设置是在假定文件拥有八进制666的权限上进行的,文件的权限就是666减去umask(umask的各个位数字也不能大于6,如,077就不符合条件)的掩码数值:重点在接下来的内容,如果umask的部分位或全部位为奇数,那么

Linux - 对文件和目录的权限管理

对文件的权限管理 ls -l,也可以用 ll 命令查看文件权限的相关信息 第一列"-rw-r--r--."为权限信息,权限信息的最后一个点表示为在安全环境下创建的 第二列"1"为硬链接数,第三列"root"为属主,第四列"root"为属组,第五列"18"为文件大小 第六.七.八列"Aug 6 00:22"为文件创建的时间,为 8 月 6 日 00:22 第九列"123.txt&

linux中文件与目录的特殊权限

time:18.03.26 以以下2个典型的文件及目录来分析: ll /usr/bin/passwd -rwsr-xr-x. 1 root root 27832 Jan 29 2014 /usr/bin/passwd ll -d /tmp drwxrwxrwt. 23 root root 4096 Mar 25 23:53 /tmp SUID 当s出现在文件拥有者的x权限上时,如我们上面看到的/usr/bin/passwd这个文件的权限时-rwsr-xr-x,此时就被称为SET UID简称SUI

linux中文件和目录的默认,隐藏,特殊权限

一 umask 默认权限umask: root下是0022,一般用户下默认为0002.可用umask修改 用户建立文件默认为最大666用户建立目录默认为最大777 相减为奇数则加1:相减为偶数则不变二 隐藏属性 1.文件隐藏属性chattr(配置隐藏属性)-a:只能增加数据,不能删除也不能修改数据,只有root才能设置此属性-i: 只读 ,root设置 lsattr(显示隐藏属性)-a:将隐藏文件的属性也显示出来-d:仅列出目录本身的属性-R:连同子目录的数据一并列出三 文件特殊权限 1.SUI

linux的文件与目录的权限设置

p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 10.5pt; font-family: "Calibri", "sans-serif" } .MsoChpDefault { font-family: "Calibri", "sans-serif" } di

Linux的文件与目录权限解析

在Linux中,万事万物皆文件,普通文件是文件,目录是文件,硬件设备也是文件,因此学习了解Linux中的文件非常重要. Linux中有三种文件类型: (1) 普通文件:又分为文本文件和二进制文件 (2) 目录文件:目录文件存储了一组相关文件的位置.大小等与文件有关的信息. (3) 设备文件:I/O设备在Linux中也被看成文件,与普通文件一样处理,这样使文件与设备的操作尽可能统一. 一.Linux文件属性 Linux的文件有很多属性,要查看文件的属性可以用ls -l命令,为了后续的讲解中有操作的

linux 文件或目录的权限和属性

1.windows 和linux文件类型的区别 windows 里是通过扩展名来区分文件类型的:linux里文件扩展名和文件类型没有关系,为了容易区分和箭筒用户使用的windows的习惯,我们也会用扩展名来表示linux文件类型,linux 系统中,一切皆文件. 2.linux系统查看文件类型 [[email protected] ~]# ls  -l 总用量 72556 -rw-------. 1 root root     1104 7月   6 00:51 anaconda-ks.cfg

Linux中文件描述符和打开文件之间的关系

Linux中文件描述符和打开文件之间的关系 文件描述符: 在形式上是一个非负整数.实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表. Linux中的文件类型 Linux系统中把一切都看做文件,包括普通文件-.目录文件d.字符设备文件c.块设备文件b.符号链接文件l.文件描述符是内核为了高效管理已被打开的文件所创建的索引(一个非负整数),用于指代已被打开的文件,Linux下所有的的I/O操作的系统调用都是通过文件描述符执行.例如0表示标准输入.1表示标准输出.3表示标准错

[添加用户]解决useradd 用户后没有添加用户Home目录的情况,Linux改变文件或目录的访问权限命令,linux修改用户密码,usermod的ysuum安装包。飞

usermod的yum安装包: shadow-utils 将nobody用户添加到nogroup 组: usermod -g nogroup nobody cat /etc/passwd|grep nobody nobody:x:65534:65534:nobody:/var/lib/nobody:/bin/bash 第3个字段是65534:意思就是,UID(用户的ID)是500. 第4个字段是65534:意思就是.GID(用户的组ID)的500. 使用usermod -g nogroup no