当前位置: 首页 > news >正文

Linux系统中的软连接和硬连接

软连接概述

软连接类似Windows中的快捷方式,本身是一个独立文件,有自己的inode,内容只是指向另一个文件的路径字符串。
其特点如下:

  • 可以跨文件系统、跨分区、跨磁盘
  • 可以链接目录
  • 源文件删除后,软链接变成死链接(失效)
  • 软链接大小 = 指向路径的字符串长度
  • 支持相对路径、绝对路径创建软连接

创建方式

ln -s 源文件 目标链接

示例:

# 相对路径创建软连接
root@master:/data00/tmp# ln -s sort.txt sort.txt.ln
# 查看
root@master:/data00/tmp# ll -i | grep sort
28573733 -rw-r--r-- 1 root root 77 Apr 14 10:56 sort.txt
28573734 lrwxrwxrwx 1 root root 8 Apr 14 11:05 sort.txt.ln -> sort.txt
# 通过上面可以看到,其inode不相同,文件大小不相同

当修改链接文件后,源文件会产生什么变化呢?

会发现两个文件都会同时修改

root@master:/data00/tmp# echo haha > sort.txt.ln
root@master:/data00/tmp# cat sort.txt.ln
haha
root@master:/data00/tmp# cat sort.txt
haha

当我们删除链接文件时,源文件会删除吗?

源文件不会删除,删除链接文件对源文件不会产生任何影响

root@master:/data00/tmp# rm -rf sort.txt.ln
root@master:/data00/tmp# ll | grep sort.txt
-rw-r--r-- 1 root root 5 Apr 14 11:11 sort.txt
root@master:/data00/tmp# cat sort.txt
haha

当删除源文件,会对链接文件产生什么影响呢?

发现链接文件失效

# 创建软连接
root@master:/data00/tmp# ln -s sort.txt sort.txt.ln
root@master:/data00/tmp# ll | grep sort.txt
-rw-r--r-- 1 root root 5 Apr 14 11:11 sort.txt
lrwxrwxrwx 1 root root 8 Apr 14 11:15 sort.txt.ln -> sort.txt
# 删除源文件
root@master:/data00/tmp# rm -rf sort.txt
root@master:/data00/tmp# ll | grep sort.txt.ln
lrwxrwxrwx 1 root root 8 Apr 14 11:15 sort.txt.ln -> sort.txt
# 查看源文件内容
root@master:/data00/tmp# cat sort.txt.ln
cat: sort.txt.ln: No such file or directory

回到顶部

硬连接概述

在同一个磁盘分区中inode号码相同的文件,互为硬链接。
其特点如下:

  • 多个文件名直接指向同一个 inode
  • 所有硬链接地位完全平等,没有主次之分
  • 删除其中一个,文件本体不会消失,直到所有链接都被删除
  • 不能跨文件系统(不能跨分区、跨磁盘)
  • 不能链接目录(系统禁止,防止循环引用)
  • 不占用额外空间(只多一个目录项)
  • 源文件移动 / 改名后,链接依然有效
  • 只有链接数 link count 变为 0,文件才真正删除
  • 文件大小一致

创建方式

ln 源文件 目标链接

示例:

# 创建硬连接
root@master:/data00/tmp# ln uniq.txt uniq.txt.ln
# 可以看到inode完全一样,文件大小一样
root@master:/data00/tmp# ll -i | grep uniq.txt
28573736 -rw-r--r-- 2 root root 96 Apr 14 10:58 uniq.txt
28573736 -rw-r--r-- 2 root root 96 Apr 14 10:58 uniq.txt.ln

当修改硬连接文件后,源文件会修改吗?

会同时修改

root@master:/data00/tmp# echo hahaha > uniq.txt.ln
root@master:/data00/tmp# cat uniq.txt
hahaha
root@master:/data00/tmp# cat uniq.txt.ln
hahaha

删除源文件,硬连接会失效吗?

不会失效

root@master:/data00/tmp# rm -rf uniq.txt
root@master:/data00/tmp# cat uniq.txt.ln
hahaha
root@master:/data00/tmp# ll -i | grep uniq.txt.ln
28573736 -rw-r--r-- 1 root root 7 Apr 14 11:39 uniq.txt.ln

回到顶部

软连接和硬连接区别

对比项硬链接软链接
本质同一文件的多个名字指向路径的快捷方式
是否有独立 inode否,共用是,独立
能否跨分区不能
能否链接目录不能
源文件删除后依然可用失效(红底闪烁)
占用空间几乎不占占少量(存路径)
支持相对 / 绝对不关心支持
适用场景防误删、多路径访问软件版本管理、快捷入口

回到顶部

常见使用场景

硬链接

  • 防止文件被误删(多入口备份)
  • 同一文件在多个目录使用,不占双倍空间

软链接

  • 软件版本切换:
ln -s python3.10 python
  • 目录快捷访问
  • 跨目录共享程序 / 配置
http://www.jsqmd.com/news/1106697/

相关文章:

  • Multica:让 AI 编程助手像同事一样干活
  • 量子优化算法GM-QAOA:高阶二进制优化新突破
  • 2026年3000元左右的投影仪哪款更好?深度用户懂当贝D7X Pro有多爽
  • 企业级 AI Agent 本地化部署实战:从环境搭建到上线全流程
  • 市面上有实力的海泡石工厂有哪些
  • 迁移学习实战:从预训练到工业部署的全流程解析
  • 广州小程序开发实力榜前十:2026年谁更适合不同项目路线
  • 酷狗音乐API签名失效排查与修复实战
  • 卡帕塞替尼所致皮肤不良反应(斑丘疹/瘙痒):发生率、识别与全程护理要点
  • 基于单片机智能电饭煲 电饭锅设计保温 温度控制预约定时加热煮饭31(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_
  • KMS激活工具终极指南:5分钟彻底解决Windows和Office激活难题
  • 电压暂降治理设备怎么选?DVR、UPS、APF、SVG功能对比
  • ML生产化核心:韧性推理、确定性特征与主动监控
  • 机器学习模型生产化落地:从Notebook到高韧性推理服务
  • Mysql窗口函数学习
  • Lemos智能图谱知识库核心对比
  • 我把 Conch 上传到 GitCode:用 Rust + Flutter 做一个 AI 原生的 SSH/ADB 运维工作台
  • 零壹教育:跨语言信息检索中的语义距离测量与优化策略
  • 国家中小学智慧教育平台电子课本下载完整教程:三步获取PDF教材的终极方案
  • 矩阵正交化处理:提升循环模型噪声关联回忆性能,小改进带来大提升!
  • 【热学】基于FVM实现一维稳态热传导与内部热产生的数值求解附Matlab代码
  • Node.js cookie-parser安全指南:防御CSRF与XSS攻击的实战策略
  • iPhone 18 Pro Max银灰色版本采用了一体化同色设计
  • 亚马逊云代理商:AWS S3 怎么上传下载文件?
  • 必读!登报公告一般要几天?如何办理登报公告?
  • 2026口碑好的十大瓷砖品牌盘点
  • javascript】函数中的this的四种绑定形式 — 大家准备好瓜子,我要讲故事啦~~
  • 第二章验证清单:源码逐条验证报告
  • 明略科技开源 Octo:给Agent 一个工位
  • 【无人机动态避障】基于哈里斯鹰优化算法HHO融合动态窗口法DWA的无人机三维动态避障方法研究MATLAB代码