link linux 跨设备,Linux中的两种link方式

Linux系统中包括两种链接方式:硬链接(hard link)和符号链接(symbolic link),其中符合链接就是所谓的软链接(soft link),那么两者之间到底有什么区别呢?

inode

在Linux系统中,内核为每一个新创建的文件分配一个inode,每个文件都有一个惟一的inode,这里将inode简单理解成一个指针,它永远指向本文件的具体存储位置同时,文件属性保存在inode里,比如owner等。在访问文件时,inode被复制到内存,从而实现文件的快速访问。系统是通过inode来定位每一个文件。

hard link

hard lin可以理解是一个指针,它指向源文件的inode,并不会产生新的inode。hard link不管有多少个,都指向的是同一个inode节点,只是新建一个hard link会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件。只要有一个存在,文件就存在(其实就是引用counter的概念)。当你修改源文件或者连接文件任何一个的时候,其他的文件都会做同步的修改。可见下图的示例。

20180110215415721376.png

symbolic link

symbolic link拥有独立的inode,是一个独立的文件,而文件的内容是源文件的路径指针,因此可以通过symbolic访问到源文件,因此删除符号链接对源文件没有影响,但是删除了源文件,符号链接文件就无法找到指向的文件。这里可以想象成Windows中的快捷方式。

对比

1. 符号链接和源文件操作权限不一样;硬链接与源文件操作权限完全一致。

2. 符号链接可以跨文件系统(分区);由于inode的限制以及文件系统的可卸载性,硬链接不容许跨文件系统。

3. 符号链接可以对一个不存在的文件名进行链接;硬链接不可以。

4. 符号链接可以对目录进行连接;硬链接不可以。

原文:http://www.cnblogs.com/jingyzzz/p/6241139.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值