软链接和硬链接

一、硬链接

1. 硬链接:(hard link)相当于给文件起别名,链接指向同一个inode,修改其中一个文件其他硬链接的文件也被修改。让文件名同时能够修改同一个文件。

ln 原文件 目标文件

注意:inode

要解释清楚两者的区别和联系需要先说清楚 linux 文件系统中的 inode 这个东西。当划分磁盘分区并格式化的时候,整个分区会被划分为两个部分,即inode区和data block(实际数据放置在数据区域中)这个inode即是(目录、档案)文件在一个文件系统中的唯一标识,需要访问这个文件的时候必须先找到并读取这个文件的 inode。 Inode 里面存储了文件的很多重要参数,其中唯一标识称作 Inumber, 其他信息还有创建时间(ctime)、修改时间(mtime) 、文件大小、属主、归属的用户组、读写权限、数据所在block号等信息。

 

2. 硬链接文件可以同一目录,也可不同目录下的文件,但不能对目录创建硬链接,而且不能跨卷,即在同一个文件系统中的文件才能创建链接。

注意:Linux下目录也是文件,只不过目录是一个用来存放文件的特殊的文件

3. 硬链接可以相当于指向同一个inode的指针,删除一个指针原文件不会删除。

目录的硬链接数目就该目录下的目录的数目。其中 . .. 就是两个目录当前目录和上层目录

 

文件的硬链接数目就是链接该文件的数目

二、软链接

1. 软链接:soft links 软链接又叫符号链接,这个文件包含了另一个文件的路径名。解决了硬链接不能跨文件系统链接的缺点。

ln -s原文件目标文件

  1. 可以是任意文件或目录,可以跨卷,可以链接不同文件系统的文件。

3.软链接相当于Windows下面的快捷方式,链接可以n级链接,相当于n级指针,不占内存。

缺点删除原文件,所有链接文件失效。

 

三、硬软链接的区别:

区别:

1.硬链接原文件/链接文件公用一个inode号,说明他们是同一个文件,而软链接原文件/链接文件拥有不同的inode号,表明他们是两个不同的文件;

2.在文件属性上软链接明确写出了是链接文件,而硬链接没有写出来,因为在本质上硬链接文件和原文件是完全平等关系;

3.链接数目是不一样的,软链接的链接数目不会增加;

4.文件大小是不一样的,硬链接文件显示的大小是跟原文件是一样的。而这里软链接显示的大小与原文件就不同了,BBB大小是95B,而BBBsoft是3B。因为BBB共有3个字符

 

5.软链接没有任何文件系统的限制,任何用户可以创建指向目录的符号链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值