一天一点学习Linux之文件与目录权限的基本概念【对工作目录(即

我们前面几节内容全讲的是用户和用户组,今天我们来一个与用户和用户组有着密切关系的内容,那就是文件权限。很多时候我们看到Permission deny这样的提示,一般都是权限导致的,而且这个权限对于学习好Linux也是非常重要的。下面我们就来看看文件权限的基本概念。

文件权限的概念

想要看到文件的权限,就要先来了解一个命令ls,这个就相当于在DOS系统下的dir,列出目录内容。这里面的参数很多哦,知道如何来学习这个命令吗?那就是man,不要忘记这个很好的帮助哦!

ls -l详解

我们以RHEL6系统的root用户的家目录为例来讲解。 [root@yufei ~]# ls -l

上图我分了7栏,我们来看看他们是什么意思。

命令下面第一行total 84

这个表示的是“所查询目录里面全部文件所分配的块大小总和(不包括下层目录里面的内容),以K为单位”这个可以通过-s参数来查询到。请记住,不是全部文件块大小的总和,而只针对当前目录里面的文件和目录。

第一栏表示的是文件的属性

这一栏的11个字符表示的意思如下 第一个字符表示的是文件的性质(文件、目录、连接文件等等),如: .表示的是隐藏文件 d表示目录 -表示文件 l是一个连接文件(相当于快捷方式(文件)) b是块设备文件(block)。一般放在/dev目录下,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件。没有文件大小,只有一个主设备号和一个辅设备号。一次传输数据为一整块的被称为块设备,如硬盘、光盘等。最小数据传输单位为一个数据块(通常一个数据块的大小为512字节)。c是字符设备文件(character)。一般放在/dev目录下,一次传输一个字节的设备被称为字符设备,如键盘、字符终端等,传输数据的最小单位为一个字节。 p是命令管道文件 s是sock文件

第二到第十个字符表示的是权限 他们三个为一组,共分三组 第一组表示的是文件的所有者的权限 第二组表示的是文件的所属组的权限 第一组表示的是其他人的权限

我们再来看看文件具体权限表示的意思 r 可读 可以查看文件内容 w 可写 可以修改文件内容 x 可执行 可以执行(运行(可执行))文件 注:rwx这三个的位置不能改变,没有就用-代替。

最后一个字符点(.)表示的是具有SELinux的安全上下文。请参考:RHEL6中,文件权限后面一个点的含义

第二栏表示的是有多少文件连接到inode(索引节点)

如果是一个文件,此时这一字段表示这个文件所具有的硬链接数, 如果是一个目录,则此字段表示该目录所含子目录的个数。 如果你不明白,没有关系,我们后面在再到文件系统的时候,还会讲到这个inode,这个可以先了解。

第三栏表示的是文件的所有者第四栏表示的是文件的所属组第五栏表示的是文件的大小(以字节为单位)第六栏表示的是文件的创建日期或修改日期第七栏表示的是文件名

我们来举个例子 [root@yufei ~]# ls -l install.log -rw-r–r–. 1 root root 31537 Dec 15 22:43 install.log

-就表示install.log是一个普通文件 rw-表示root用户对install.log这个文件有读写权限 r–表示root用户组对install.log这个文件有读权限 r–表示其他人对install.log这个文件有读权限 这个文件就一个硬链接数 这个文件是属于root用户和root用户组的 文件的大小为31537字节 创建或修改的日期是12月15号22:43 文件名为install.log

目录权限的概念

其实目录的权限和文件的权限是差不多的,也是rwx,下面我们就来看看这rwx对目录而言是什么意思。

r(read contents in directory):读取目录里面的内容。 所以当你具有读取(r)一个目录的权限时,表示你可以查询该目录下的文件。所以我们就可以利用ls这个指令将该目录的内容列表显示出来。

w(modify contents of directory):编辑目录里面的内容。 主要包括 1、创建新的文件与目录 2、删除目录下面的文件与目录(无论该文件的权限是什么,这一点很重要) 3、对目录里面的文件与目录重命名 4、移动目录里面的文件与目录的位置

x(access directory):代表的是用户能否进入该目录(即用cd命令能否进入某个目录)【能进入的目录就可以成为工作目录】。

注释:

对工作目录(即当前目录)的说明

当前目录这个概念是对一个进程来说的。下图中的路径C:\Users\jdktel>就是cmd.exe进程的当前目录。cmd.exe进程的当前目录对cmd.exe进程来说的一个作用,就是在下图中的窗口里执行命令如sqlplus / as sysdba时,cmd.exe进程就会先从cmd.exe进程的当前目录即路径C:\Users\jdktel>里搜索有没sqlplus.exe这个程序,没有才会去搜索环境变量PATH里的路径。再比如,对于在下图中的窗口里执行命令如exp ‘ / as sysdba’ file=tm.dmp tables=tt时,tm.dmp和默认日志都是放在exp.exe进程的当前目录C:\Users\jdktel>下。

我们来对比一下文件与目录的RWX权限

代表字符权限对文件的含义对目录的含义r读可以查看文件内容可以列出目录里面的内容w写可以修改文件内容可以在目录里面建立或删除文件或目录x执行可以执行(运行(可执行))文件 可以进入目录(即用cd命令能否进入某个目录)

这七个栏位的意义我们已经说的很明白了,请大家一定要清楚的知道各个栏位所代表的意义,特别是第一栏的的文件属性(11个字符),那是整个Linux文件权限的重点之一。虽然这个rwx非常容易理解,但在实际使用中,常常会出现这样或那样的问题,对文件来说,可能大家不会有太多的问题,但对目录来说,可能问题就很多,关键一点,是要理解加实践,实践促进消化。只有这样,才能真正的把这个权限的概念搞清楚,才能为后面的学习打下一个坚实的基础。

本文关键字:一天一点,学习Linux,RHEL6,文件权限,目录权限,ls -l

ls -lRHEL6一天一点学习Linux文件权限目录权限版权声明:本站原创文章,由羽飞发表在Linux基础分类下,于2011年01月18日最后更新一天一点学习Linux之文件与目录权限的基本概念 | 羽飞博客 +复制链接当爱丽思丢失了通往仙境的钥匙,

一天一点学习Linux之文件与目录权限的基本概念【对工作目录(即

相关文章:

你感兴趣的文章:

标签云: