根据您提供的图片内容,以下是关于Linux软链接(Symbolic Link)的用法详解和示例:
一、软链接核心概念
|
特性 |
说明 |
|
本质 |
保存源文件路径的指针文件(非实际数据) |
|
依赖性 |
依赖源文件存在(删除源文件则软链接失效) |
|
inode变化 |
软链接与源文件有不同inode号,源文件链接数不变 |
|
跨分区/目录 |
✅ 支持跨分区链接,✅ 可链接目录 |
|
空间占用 |
仅消耗少量inode空间(约4KB) |
二、完整用法示例
1. 创建软链接
# 基本语法
ln -s [源文件/目录] [软链接名称]
# 示例:创建文件软链接如图1所示
ln -s jf1.txt jf2.txt # jf2.txt -> jf1.txt

图1
# 示例:创建目录软链接如图2所示
ln -s /home/user/docs mydocs # mydocs -> /home/user/docs

图2
2. 查看软链接
ls -li # 显示inode信息(关键验证点)如图3所示
# 输出示例:
33576596 lrwxrwxrwx 1 root root 7 7月 23 22:19 jf2.txt -> jf1.txt
# ↑ 注意:
# - 首字母"l"表明链接文件
# -> 符号指向源文件
# inode 33576596 ≠ 源文件inode(如5)

图3
3. 源文件删除后的表现如图4所示
rm -rf jf1.txt # 删除源文件
ls -li jf2.txt # 查看软链接状态

图4
4. 修复失效软链接如图5所示
touch jf1.txt # 新建同名源文件
cat jf2.txt # 自动恢复指向新文件

图5
三、实用技巧扩展
# 1. 创建绝对路径软链接(避免移动失效)
ln -s $(pwd)/source.txt ~/links/abs_link
# 2. 批量创建软链接(常用于软件版本管理)
ln -s /opt/app-1.2 /opt/current # 指向最新版本
# 3. 检测软链接有效性
file mylink # 输出"symbolic link to..."
readlink mylink # 显示真实指向路径
四、与硬链接的对比总结
|
特性 |
软链接 (Symbolic Link) |
硬链接 (Hard Link) |
|
inode |
独立新inode |
共享源文件inode |
|
跨分区 |
✅ 支持 |
❌ 不支持 |
|
链接目标 |
文件/目录路径 |
仅限普通文件 |
|
源文件删除 |
链接失效 |
仍可访问数据 |
|
链接数变化 |
源文件链接数不变 |
源文件链接数增加 |
关键原理:软链接是文件系统级别的”快捷方式”,而硬链接是同一个文件的多个目录入口。当需要跨磁盘或链接目录时,软链接是唯一选择。
通过以上示例和对比,您可快速掌握Linux软链接的核心操作场景和底层逻辑。在实际使用中,提议优先用ls -li验证inode关系,避免链接失效问题。
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END















- 最新
- 最热
只看作者