硬链接与软链接

引言:

链接一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。

Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(Symbolic link)。

Inode译成中文就是索引节点,它用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等。

Block:存放档案内容数据的地方。

 

1.命令:

硬:ln 源文件 链接名

软:ln -s 源文件 链接名

 

2.原理:

硬链接:

透过A或者B的inode指定的block找到两个不同的档名,不管使用哪个都可以指定读取最终数据。

每增加一个文件名,inode节点上的链接数增加一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inode节点和对应的数据块被回收。

注:rm A删除的只是A这个文件名,而A对应的数据块(文件)只有在inode节点链接数减少为0的时候才会被系统回收。

硬链接.png


软链接:

A的inode读取到俩接档的内容档名,根据档名链接到正确的目录取得目标档inode,最后访问正确的数据,如果目标档案删除,就无法透过链接档读取数据。

 软链接.png

3.使用限制:

   硬链接:Hard Link(实体链接)

a.创建硬链接会增加额外的记录项以引用文件

b.对应于同一文件系统系统上一个物理文件

c.每个目录引用相同的inode号

d.创建时连接数递增

e.不能跨Filesystem

f.不能link目录

注:删除文件时:

rm命令递减计数的链接

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

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

软链接:Symbolic Link(符号链接,快捷方式)

a.一个符号链接的内容是它引用文件的名称

b.可以对目录进行

c.可以跨分区

d.指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数

 

原创文章,作者:Gaoning,如若转载,请注明出处:http://www.178linux.com/53252

(0)
GaoningGaoning
上一篇 2016-10-20 21:21
下一篇 2016-10-20 21:41

相关推荐

  • N26-博客作业-week6

    vim:Vi IMprove 基本模式:编辑模式,命令模式输入模式末行模式 打开文件: vim [option] [file…] +#:打开文件后,直接让光标处于第#行的行首+/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首 模式转换:编辑模式:默认模式编辑模式 –> 输入模式:i:insert…

    Linux干货 2017-03-12
  • Linux哲学思想

    一切皆文件(硬件设备亦如此); 由众多目的单一的小程序组成,一个程序只做一件事,并且要好; 组合小程序完成复杂任务; 尽可能避免跟用户交互; 使用文本文件保存配置信息; 提供机制,而非策略。 Linux作为自由软件(GNU),同时也遵循自由软件的思想: 自由使用 自由学习和修改 自由分发 自由创建衍生版

    Linux干货 2016-10-31
  • Linux命令语法及其帮助信息

    一、Linux命令语法 1、通用格式:command options argument 2、Command: 3、Options: 4、Argument: 二、Linux命令帮助信息获取途径 1、help命令 && –help选项 2、manual (1)章节 (2)语法 (3)man命令输出详解   &nbs…

    Linux干货 2016-09-19
  • 马哥教育网络班22期+第七周课程练习

    1、创建一个10G分区,并格式为ext4文件系统(1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl(2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 # fdisk /dev/sdb <<EOF> n> p> 1> &g…

    Linux干货 2016-11-28
  • 数据流重导向

    数据流重导向(redirect):就是将某个指令执行后应该要出现在屏幕上的数据,传输到其他的位置。 standard output:标准输出是指指令执行回传正确的讯息。 standard error output : 指令执行失败后,所回传的错误讯息。 1标准输入(stdin):代码为0,使用< <<2标准输出(stdout),代码为1,使…

    Linux干货 2016-08-08