硬链接与软链接

引言:

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

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

相关推荐

  • Linux目录配置及文件名种类与扩展名

    Linux目录配置及文件名种类与扩展名 一、FHS目录配置标准 在FHS标准诞生之前,由于有很多公司为Linux开发产品,而又各自有各自的存放路径,所以导致管理困难,因此诞生了FHS标准。 FHS 依据文件系统使用的频繁与否与是否允许用户随意更改,将目录定义成四种交互作用的形态。如下图 可分享的:可以分享给其他系统挂载使用。 不可分享:自…

    Linux干货 2016-08-02
  • Linux内核编译过程详解

    前言 Linux内核是Linux操作系统的核心,也是整个Linux功能体现的核心,就如同发动机在汽车中的重要性。内核主要功能包括进程管理、内存管理、文件管理、设备管理、网络管理等。Linux内核是单内核设计,但却采用了微内核的模块化设计,支持内核线程以及动态装载内核模块的能力。 Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订…

    Linux干货 2015-04-01
  • N25_第一周_yecho

    ???

    Linux干货 2016-12-01
  • N24_jerry 第十二周作业

    1、请描述一次完整的http请求处理过程; 简介 一次完整的HTTP请求过程从TCP三次握手建立连接成功后开始,客户端按照指定的格式开始向服务端发送HTTP请求,服务端接收请求后,解析HTTP请求,处理完业务逻辑,最后返回一个HTTP的响应给客户端,HTTP的响应内容同样有标准的格式。无论是什么客户端或者是什么服务端,大家只要按照HTTP的协议标准…

    Linux干货 2017-03-22
  • CentOS 7 安装 mysql-5.7.14

    在centos7上安装 路上遇过各种坑 把在centos7正确安装mysql-5.7.14分享一下 1. CentOs7 默认的数据库为MariaDB,先卸载MariaDB,否则安装mysql,引起冲突 rpm -qa mariadb rpm -e –nodeps mariadb 2. 准备好工作环境 mkdir /application&nbs…

    Linux干货 2017-05-07
  • 如何安装CentOS 6.8 ?

    一 ,首先我要先在虚拟机的平台上搭建一下我们需要的环境。 1,选择创建一个新的虚拟机。之后选择自定义安装。点击下一步 2,选择硬件兼容性workstation12.0,(根据情况你也可以选择下面的几个版本,不过要记得选择版本之后,不能再这个版本以下打开虚拟机) 3,点击下一步选择安装程序光盘映像文件项。点击下一步。 4,之后创建一下用户信息,点击下一步。 5…

    Linux干货 2017-02-14