Linux命令——建立软链接和硬链接

本文深入讲解了Linux系统中软链接和硬链接的概念及创建方法。软链接类似Windows的快捷方式,便于快速访问目标文件或目录;硬链接通过inode实现文件名的新增而非新文件的创建,揭示了Linux文件系统的底层机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux 系统中有软链接和硬链接两种特殊的“文件”。

软链接可以看作是Windows中的快捷方式,可以让你快速链接到目标档案或目录。

硬链接则透过文件系统的inode来产生新档名,而不是产生新档案。

创建方法:

#软链接
ln -s source targe
#硬链接
ln source target

转载于:https://www.cnblogs.com/meng9688/p/10216524.html

### 硬链接软链接的区别 #### 文件系统层面的不同 在Linux文件系统中,硬链接软链接代表不同类型的指针机制。对于同一个inode(索引节点),可以存在多个名称,即所谓的硬链接;这意味着每一个硬链接都直接指向磁盘上的同一物理数据块[^1]。 相比之下,软链接是一种特殊的文件形式,它存储的是目标路径名而不是直接的数据地址。因此即使原始文件被删除,只要其所在分区未被覆盖写入新数据,则仍可通过其他途径恢复该文件的内容。然而,在这种情况下,任何尝试访问已损坏的符号链接都会失败并返回错误消息[^2]。 #### 行为差异展示 为了更好地理解两者的行为差异,考虑如下场景: 假设当前目录下有两个名为`a-file.txt` `b-file.txt` 的文件,它们实际上是相同文件内容的不同入口点——也就是两个不同的名字对应着相同的 inode 号码。此时如果执行命令来创建一个新的软连接到其中一个文件上: ```bash ln -s a-file.txt c-link.txt ``` 那么当修改任意一个实际存在的副本(`a-file.txt`, `b-file.txt`)时,另一个也会相应更新显示最新的更改状态。但是,一旦移除了源文件之一(比如删掉了`a-file.txt`),尽管可以通过剩余的那个真实文件继续读取原有信息,但新建的软链(c-link.txt)将会变成断开的状态无法再正常工作了[^4]。 相反地,如果是通过硬链接方式建立关联的话,即便原文件消失不见,所有现存的硬链接仍然能够保持完好无损地存取共同拥有的那份资料副本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值