一、基础选项说明
1. 创建硬链接
选项 功能说明 示例与场景 来源
无特殊参数 默认创建硬链接(硬链接共享 inode,不跨文件系统) ln source hardlink 创建硬链接
**-d / -F** 允许创建目录的硬链接(需 root 权限) sudo ln -d dir1 ln_dir
2. 创建符号链接(软链接)
选项 功能说明 示例与场景 来源
**-s / --symbolic** 创建符号链接(存储路径而非 inode,可跨文件系统) ln -s source symlink 创建软链接
**-f / --force** 强制覆盖已存在的链接文件 ln -sf newfile oldlink 强制更新链接
二、高级选项说明
1. 备份与交互模式
选项 功能说明 示例与场景 来源
**-b / --backup** 覆盖前备份已存在的文件(默认备份后缀为 ~) ln -b oldfile newfile 生成 newfile~ 备份
**-i / --interactive** 覆盖前提示确认 ln -i oldfile newfile 询问是否覆盖
2. 路径与解引用控制
选项 功能说明 示例与场景 来源
**-L / --logical** 解引用符号链接:目标为符号链接时,链接到其指向的实际文件 ln -L symlink target 创建指向实际文件的链接
**-P / --physical** 不解引用符号链接:直接链接到符号链接本身 ln -P symlink target 创建指向符号链接的链接
**-r / --relative** 创建相对路径符号链接(移动链接时保持有效) ln -rs /path/to/source ./relative_link
3. 输出与调试
选项 功能说明 示例与场景 来源
**-v / --verbose** 显示详细操作过程 ln -v source link 输出创建链接的详细信息
**-S / --suffix** 自定义备份文件后缀 ln -b -S .bak oldfile newfile 备份后缀为 .bak
三、特殊场景与注意事项
1. 权限与限制
硬链接限制:
仅能在同一文件系统内创建,且不能指向目录(除非使用 sudo)。
符号链接限制:
若原文件被删除,符号链接会变成“悬垂链接”(dangling symlink)。
2. 跨文件系统链接
使用符号链接(-s)可跨文件系统,而硬链接(默认)不行。
示例:
bash
ln -s /mnt/remote/file /local/link # 跨文件系统符号链接
3. 目录链接管理
硬链接目录:需 sudo,且仅限同一文件系统。
符号链接目录:可跨文件系统,但需注意路径解析。
四、典型操作示例
1. 基础链接创建
bash
#创建硬链接
ln a.txt a.txt.hard
#创建符号链接
ln -s a.txt a.txt.soft
引用来源:
2. 强制覆盖与备份
bash
#强制覆盖符号链接
ln -sf new.txt a.txt.soft
#备份并覆盖
ln -b old.txt new.txt
引用来源:
3. 相对路径符号链接
bash
#在目录中创建相对路径链接
cd /path/to/source_dir
ln -rs …/target_dir rel_link
引用来源:
五、完整选项速查表
选项分类 选项列表 来源
基础操作 -d, -f, -i, -v
路径控制 -L, -P, -r
备份与调试 -b, -S, -V
符号链接 -s
引用来源:
基础选项与示例:
路径与解引用控制:
权限与限制:
跨文件系统与目录链接: