码迷,mamicode.com
首页 > 其他好文 > 详细

inode 索引节点和软硬链接

时间:2016-08-01 23:20:33      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:inode索引节点.软硬链接

Inode 索引节点

 

inodeindex node)表中包含文件系统所有文件列表

一个节点(索引节点)是在一个表项,包含有关文件的信息(元数据),包括:

文件类型,权限,UIDGID

链接数(指向这个文件名路径名称个数)

该文件的大小和不同的时间戳

指向磁盘上文件的数据块指针

有关文件的其他数据

inode表结构

技术分享 

技术分享 

ls -i 可以查看节点编码

技术分享技术分享

Inode table 节点表 是存放元数据的,每一个分区都有一个节点表。

在一个分区里一个文件只有一个节点号,就像人的身份证号

 

技术分享硬链接:

命令是ln 源文件 目录/链接文件名

理论知识:

连接数=文件名字的数量。

同一个文件在同一分区起多个名字,一个节点对应多个名字就相当于与名片。

不能跨分区创建,不能针对目录创建

rm命令递减计数的链接

文件要存在,至少有一个链接数

当链接数为零时,该文件被删除

实验

技术分享 

下面的命令可以对比一下我创建了3个链接,290,节点号。3,表示几个链接。

连接数再多,它在硬盘的数据也不会增加,只是在目录里多加了几个记录而已。

技术分享 

 

软连接:

命令是ln -s 源文件 链接文件名

理论:

软连接通俗说就是快捷方式。

一个文件对应多个名字

可以跨分区创建,可以针对目录进行。

源文件一但删除快捷方式就失效了。

连接数不会增长

 

实验:

技术分享 

下图是跨分区创建

技术分享 

ln -s 原始文件的相对/绝对路径,(相对于软连接文件的路径) 软连接文件

下图所示;

技术分享 

 

rm命令:

链接数递减,从而释放的inode号可以被重用

把数据块放在空闲列表中

删除目录项

数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖。

 

如果mv命令的目标和源在相同的文件系统,作为mv命令

用新的文件名创建对应新的目录项

删除旧目录条目对应的旧的文件名

不影响inode表(除时间戳)或磁盘上的数据位置:没有数据被移动

CP的命令:

分配一个空闲的inode号,在inode表中生成新条目

在目录中创建一个目录项,将名称与inode编号关联

拷贝数据生成新的文件


inode 索引节点和软硬链接

标签:inode索引节点.软硬链接

原文地址:http://11871086.blog.51cto.com/11861086/1833064

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!