Linux 文件和目录的属性及权限

一、权限位说明

Linux 文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件属主(Owner)的读、写、执行,用户组(Group)的读、写、执行以及(Other)其它用户的读、写、执行:

文件属主(Owner):读 read、写 write、执行 x

文件用户组(Group):读 r、写 w 、执行 x

其它用户(Other):读 r、 写 w、 执行 x

如果权限位不可读、不可写、不可执行,则用|来表示。

后面还会有特殊的权限位:t T s S X +

Linux 系统硬链接和软链接

1.【链接的概念】

在 Linux 系统中,链接可分为两种:一种为硬链接(Hard Link),另一种为软链接或符号链接(Symbolic Link)。ln命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建的链接是硬链接。

如果使用ln -s 创建链接则为软链接。

1.1【硬链接】

硬链接是指通过索引节点(Inode)来进行链接。在Linux(ext2,ext3)文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号(Inode Index)简称 Inode,即在系统中文件的编号。

在linux文件系统中,多个文件名指向同一个索引节点(Inode)是正常且允许的。这种情况的文件就称为硬链接。硬链接的作用之一是允许一个文件拥有多个有效路径名(多个入口),这样用户就可以建立硬链接到重要的文件,以防止“误删”源数据(很多硬件存储,如netapp)存储中的快照功能就应用了这个原理,增加一个快照就多了一个硬链接)。为什么一个文件建立了硬链接就会防止数据误删呢?

因为文件系统(ext2)的原理是,只要文件的索引节点(Inode Index)还有一个或一个以上的硬链接。只删除其中一个链接(即仅仅删除了该文件的链接指向)并不影响索引节点本身和其它的链接(即数据文件实体并未被删除),只有当文件的最后一个链接被删除后,此时如果有新数据要存储到硬盘上时或者系统通过类似fsck做磁盘检查的时候。被删除文件的数据块及目录的链接才会被释放,空间被新数据占用并覆盖。此时,数据就再也无法找回了。也就是说,在linux系统中,删除静态文件(目录也是文件)的条件是与之相关的所有硬链接文件均被删除。提示:硬链接就相当于文件的另外一个入口。

硬链接原理图:

硬链接示意图:

硬链接删除原理图:

1.2【软链接】

软链接也称为符号链接(Symbolic Link)。linx 里的软链接文件就类似于 Windows 系统中的快捷方式。它实际上是一个特殊的文件。在软链接的文件。在软链接中,软链接文件实际上就是一个文本文件,这个文件包含有软链接指向另一源文件的位置信息内容,因此,通过访问这个“快捷方式”就可以迅速定位到软链接所指向的源文件实体。

软链接原理图:

查看软链接的 value:

readlink Print value of a symbolic link or canonical file name

[[email protected] application]# readlink apache

/application/apache2.2.17/

[[email protected] application]# ll

总用量 8

lrwxrwxrwx. 1 root root   26 3月  13 07:43 apache -> /application/apache2.2.17/

drwxr-xr-x. 2 root root 4096 3月  13 20:17 apache2.2.17

drwxr-xr-x. 2 root root 4096 3月  13 21:45 apache2.2.18

软链接的创建:

执行命令“ln -s 源文件  软链接文件”,即可完成创建软链接。

小结:

1)软链接类似 windows 里的快捷方式,软链接里面存放的源文件的路径,并且执行源文件。

2)删除源文件,软链接文件依然存在,但是无法访问指向的路径内容了。

3)执行命令“ln -s 源文件  软链接文件”,即可完成创建软链接。

4)软链接和源文件是不同类型的文件,也是不同的文件。inode 号不同。

5)rm -f 软链接文件的删除

2.1 文件示例:

硬链接文件的连接数增加了。

2.2 目录示例

小结:ln 命令不能对目录创建硬链接,但可以对目录创建软链接,对于目录的软链接也是生产场景运维中常用的功能。

说明:oldboydir 下的两个点表示上级目录,因此,和 oldboydir 的上级目录 oldboy 具有相同的节点号。

2.3【删除示例】

[[email protected] oldboy]# echo "I am oldboy" >oldboyfile

[[email protected] oldboy]# cat oldboyfile

I am oldboy

[[email protected] oldboy]# cat oldboy_file_hard_link

I am oldboy

[[email protected] oldboy]# cat oldboy_file_soft_link

I am oldboy

结论:往源文件 oldboyfile 里面写入内容后,它的软硬链接文件都有相同的内容。

提示:内容还在,其实就是因为 oldboyfile_hard_link 硬链接存在,因此即使删除了源文件 oldboyfile,但是仍有硬链接指向着文件的 INODE 节点,所以,此时文件才不会被释放删除,当删除文件 oldboyfile 时,仅仅删除了 oldboyfile 到该文件 INODE 节点的链接而已,此时还有 oldboyfile_hard_link 硬链接在指向同一个 INODE 节点。

[[email protected] oldboy]# cat oldboyfile_hard_link

cat: oldboyfile_hard_link: 没有那个文件或目录

#由于软链接仅仅为源文件 oldboyfile 的快捷方式,所以,此时在访问软链接文件,发现无法访问了,文件不存在的错误。

小结:通过上面的测试可以看出:当删除原始文件 oldboyfile 后,其硬链接文件 oldboyfile_hard_link 不受影响,对应的数据依然存在,但是其对应的软链接文件 oldboyfile_soft_link 失效了,找不到源文件了,此时,可以删除软件连接文件重新创建,或者创建一个 oldboyfile_hard_link 的硬链接文件 oldboyfile。

3、【链接总结】

3.1【有关文件的链接小结】

一、删除软链接 oldboyfile_soft_link,对 oldboyfile,oldboyfile_hard_link 无影响;

全局结论:删除软链接文件对源文件及硬链接文件无任何影响。

二、删除硬链接 oldboyfile_hard_link,对 oldboyfile,oldboyfile_soft_link 都无影响;

  全局结论:删除硬链接文件对源文件及软链接文件无任何影响。

三、删除原文件 oldboyfile,对硬链接 oldboyfile_hard_link 没有影响,但是会导致软链接 oldboyfile_soft_link 失效;

    全局结论:删除原文件,对硬链接文件没有影响,但是会导致软链接文件失效,白字红底闪烁。

四、同时删除原文件 oldboyfile,硬链接 oldboyfile_hard_link,整个文件会真正的被删除。

五、很多硬件设备中的快照功能,就是利用了硬链接的原理。

六、源文件和硬链接文件具有相同的索引节点号,可以认为是同一个文件或一个文件的多个入口。

七、源文件和软链接文件索引节点号不同,是不同的文件,软链接相当于源文件的快捷方式,含有源文件的目录的位置指向。

时间: 2024-10-28 10:08:38

Linux 文件和目录的属性及权限的相关文章

Linux文件和目录的属性及权限

本文介绍Linux系统的文件和目录的属性及权限,比如索引节点 inode.文件类型.文件权限及属主,还对setuid.getgid及粘贴位进行相关的介绍.其中,对ln.chmod.chown.chgrp.umask等命令的用法进行详细的说明和举例. Linux中的文件 文件属性相概述 Linux系统中文件或目录的属性主要包括:文件或目录的索引节点(inode).类型.权限属性.链接数.所归属的用户和用户组.最近修改时间等内容: 看下执行 ls -lhi 命令的结果     详细解释图: 文字解释

(转)Linux 文件和目录的属性

原文:https://www.cnblogs.com/kzloser/articles/2673790.html https://www.cnblogs.com/danh/archive/2011/01/11/1932975.html 内容源于: 鸟哥的linux私房菜 链接如下: Linux 的文件权限与目录配置 Linux 磁盘与文件系统管理 Linux 文件与目录管理 目录 Linux文件属性 [文件属性解析(SUID/SGID/SBIT)][隐藏属性]修改文件属性 [chgrp][cho

linux文件和目录的属性及硬链接与软连接

1.文件属性概述 linux系统中的文件或目录的属性主要包括:索引节点(inode).文件类型.权限属性.链接数.所归属的用户和用户组.最近修改的时间等内容. 我们用ls –lhi命令查看一下结果,也可以用stat详细查看文件属性. [[email protected] ~]# ls -lhi total 92K 400420 -rw-------. 1 root root 1.1K Jun 14 05:02 anaconda-ks.cfg 400431 -rw-r--r--. 1 root r

08-Linux基础入门(六)-文件和目录的属性及权限之文件类型、文件扩展名及文件权限基础

一.Linux中的文件类型在Linux系统中,可以说一切(包括目录.普通文件.设备文件等)皆为文件.文件类型包含有普通文件.目录.字符设备文件.设备文件.符号链接文件.管道文件等等,当执行ls -l 或ls - al命令后可显示当前目录下的所有文件及文件夹: [[email protected] ~]# ls -l 总用量 40 -rw-------. 1 root root 1140 2月 5 04:28 anaconda-ks.cfg -rw-r--r--. 1 root root 2173

Linux文件或目录属性

1.文件或目录属性Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下:命令: ls -lih输出:[[email protected] test]# ls -lih总计 16K2095113 drwxr-xr-x 6 root root 4.0K 10-27 01:58 scf2095109 drwxrwxr-x 2 root root 4.0K 11-13 06:08 test32095131 drw

Linux文件与目录的权限(chown、chmod)

chown,即为change owner 如下图: hadoop-1.2.1.tar.gz原来的拥有者为hadoop用户,现将其拥有者修改为root: ======================================================================== chmod,即为change mode Linux文件或者目录共有10个属性: 首先是第一个属性,“横线”代表文件,“d”代表目录 剩余九个属性,分为三组,每组三个属性:读(r),写(w),执行(x).

linux下文件和目录的属性

linux下文件或目录的属性 [[email protected] ~]# ls -l -rw-r--r--. 1 root root      9119 Nov 13 09:29 install.log drwxr-xr-x. 2 root root      4096 Mar 17 13:50 test #列出当前所有的目录 ^d代表以d开头的类型 [[email protected] ~]# ls -l |grep '^d'     drwxr-xr-x. 2 root root     

linux文件和目录权限的设置

linux文件和目录权限的设置 修改文件权限 如果想改变文件或目录的权限,可以使用chmod命令,改变文件或目录的权限有两种方法:助记法和八进制法. ·助记法: 语法: 使用u(user).g(group).o(other).a(all)表示要设置权限的位置,使用+表示添加.使用-表示减少权限.使用=表示设置为什么样的权限,使用rwx表示权限. 例如: [email protected] tmp]# touch test.txt [[email protected] tmp]# ll total

Linux文件和目录权限详细讲解

转载请标明出处: http://www.cnblogs.com/why168888/p/5965180.html 本文出自:[Edwin博客园] Linux文件和目录权限解读 如何设置Linxu文件和目录的权限 字符表示法 1)ls -l:查看所在目录所有文件的权限 2)chmod u=r file:把file文件的当前(用户user)的权限赋值为可写模式 3)chmod g=wrx file:把file文件的当前(组gruop)的权限赋值为可写,可读,可执行模式 4)chmod g-x fil