软链接和硬链接详解

软链接和硬链接详解

导读 Linux下的链接文件有点类似于Windows的快捷方式,但又不完全一样。链接文件有两种:一种是硬链接,另一种是符号链接(又称软链接)。下面我给大家说说它们两者之间的区别。

硬链接

硬链接是通过索引节点进行的链接。在Linux中,多个文件指向同一个索引节点是允许的,像这样的链接就是硬链接。硬链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。如果删除硬链接对应的源文件,则硬链接文件仍然存在,而且保存了原有的内容,这样可以起到防止因为误操作而错误删除文件的作用。由于硬链接是有着相同 inode 号仅文件名不同的文件,因此,删除一个硬链接文件并不影响其他有相同 inode 号的文件。

硬链接可由命令 link 或 ln 创建,如:

link oldfile newfile
ln oldfile newfile

符号链接

软链接(也叫符号链接)与硬链接不同,文件用户数据块中存放的内容是另一文件的路径名的指向。软链接就是一个普通文件,只是数据块内容有点特殊。软链接可对文件或目录创建。

软链接主要应用于以下两个方面:一是方便管理,例如可以把一个复杂路径下的文件链接到一个简单路径下方便用户访问;另一方面就是解决文件系统磁盘空间不足的情况。例如某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中,这样就可以很好的解决空间不足问题。删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接就变成了死链接。

使用-s选项的ln命令即可创建符号链接,命令如下:

ln -s old.file soft.link
ln -s old.dir soft.link.dir

拓展

inode叫做索引节点号,这是Linux文件系统管理文件的方式。在建立文件系统时,会建立一个索引节点表,里面包含一定数量的索引节点。每当建立一个文件时,就会为他分配一个索引节点号,相当于文件的地址。

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/

时间: 2024-12-25 17:15:01

软链接和硬链接详解的相关文章

12、Linux软链接和硬链接详解

软连接和硬链接图解 硬链接 符号链接 软链接和硬链接详解 软链接和硬链接详解 Linux下的链接文件有点类似于Windows的快捷方式,但又不完全一样.链接文件有两种:一种是硬链接,另一种是符号链接(又称软链接). UNIX文件系统提供了一种将不同文件链接至同一个文件的机制,我们称这种机制为链接.它可以使得单个程序对同一文件使用不同的名字.这样的好处是文件系统只存在一个文件的副本,系统简单地通过在目录中建立一个新的登记项来实现这种连接. 软连接和硬链接图解 硬链接 硬链接是通过索引节点进行的链接

ln 软链接,硬链接 详解

这里说一下 ln ,这个是 linux  下创建链接的命令 链接分为两种 : 硬链接 , 符号链接(也叫 软链接) 硬链接 : 指向同一个 inode 的不同路径 软链接 : 指向另一个的链接(存的是字符个数,也就是大小为对应目录字符个数),所以软链接 权限不影响 硬链接 : 用法 :  ln  源文件  生成的链接文件 用 ls -l 可以看出来一个文件被硬链接的次数,ls -l 的结果在 username 前面的数值 用 ls -il  可以看出来 硬链接文件都是指向同一个 inode 节点

linux命令大全之ln命令详解(创建软链接和硬链接)

ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接,分为软链接.硬链接.软链接相当于windows的快捷方式,下面是使用方法和示例 ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间. 1.命令格式: 

详解软链接和硬链接

区分软链接和硬链接前先来学习下i节点和block数据块 一块分区要想使用需要做2步操作: ?1.将分区分成等大小的block块,一般为4k,用来记录文件的数据 ?2.在分区起始位置建一个i节点表,里面包含文件元数据(-rw-r--r--. 1 root root 0 May 19 14:53 f1 文件类型.权限.所属着.创建时间等)和inode节点号,在同一个分区中i节点是唯一的,每一个文件都有不同的i节点. 访问一个文件需要先查找i节点表,然后寻找数据块.假设有一个dir文件夹,下面有fil

inode探究及inode与软链接与硬链接关系

一.文件系统相关知识 superblock:记录此文件系统的整体属性,包括inode/block的总量,使用量,剩余量,以及文件系统的格式及相关信息 block:记录文件的内容,若文件太大,占用多个block inode:记录文件的属性,一个文件占用一个inode 文件系统一般分为多个块组(block group),每个块组有superblock,文件系统描述,块对应表,inode对应表,inodetable,dateblock组成 1. (1)block的大小在格式化后就不再改变了,除非重新格

理解inode 以及 软链接和硬链接概念区分

inode简单理解 本文来源自网络文章,并针对文章内容加以批注和修改.希望能帮到你! 一. 磁盘设备 说到inode,首先必须要提及下<操作系统>中磁盘存储器的管理一节.磁盘设备是一种相当复杂的机电设备(比较详细的介绍可以参考blog硬盘内部硬件结构和工作原理详解 ). 磁盘设备可以包括一个或多个物理盘片,每个磁盘片分一个或两个存储面(如图(a)所示).每个磁盘面被组织成若干个同心环,这种环称为磁道track,各磁道之间留有必要的间隙.每条磁道又被逻辑上划分成若干个扇区sectors.在不同扇

Linux下的软链接与硬链接

首先聊聊Linux中使用哪个命令创建链接文件,然后咱们在聊聊软链接和硬链接的区别. 使用ln命令可以创建某个文件的链接文件 用法:ln [-s -v] src dest 创建一个硬连接文件:ln 原文件 硬连接文件 硬链接与源文件的inode号相同,使用stat命令可以查看文件的元数据信息. 创建一个软连接文件:ln -s 原文件 软连接文件 加-s表示创建软连接(符号链接) 注意:创建连接文件时,指定源文件时, "原文件的路径"可以是绝对路径也可以是相对路径,但是要注意,如果&quo

linux软链接与硬链接的区别

Linux 文件系统最重要的特点之一是它的文件链接.链接是对文件的引用,这样可以让文件在文件系统中多处被看到.不过,在 Linux 中,链接可以如同原始文件一样来对待.链接可以与普通的文件一样被执行.编辑和访问.对系统中的其他应用程序而言,链接就是它所对应的原始文件.当您通过链接对文件进行编辑时,您编辑的实际上是原始文件.链接不是副本,linux有两种类型的链接:硬链接和符号链接(软链接). 硬链接(hard link)只能引用同一文件系统中的文件.它引用的是文件在文件系统中的物理索引(也称为

软链接和硬链接

软链接文件和硬链接文件 链接文件分为两种,硬链接(hard link)和软链接(symbolic link). 两种链接的本质区别关键点在于inode. 硬链接: 当系统要读一个文件时,就会先去读inode table,一个文件对应一个inode,然后再去根据inode中的信息到块区域去将数据取出来. 而硬链接是直接使用了和源文件相同的inode,硬链接文件直接链接到文件放置的块区域. 也就是说,进行硬链接的时候实际上该文件内容没有任何变化,只是指定了相同的inode. 硬链接有两个限制: (1