在 Linux 中,软连接(符号链接,Symbolic Link,常称为 symlink) 是一种特殊的文件,它指向另一个文件或目录的路径。可以理解为 Windows 中的“快捷方式”,但功能更强大、更底层。
可以把深层级或难记路径的文件,链接到一个易访问的位置。
ln -s /opt/app/v2.3/config.conf ~/config.conf
之后直接 ~/config.conf 就能访问。
常用于软件多版本切换。
ln -s /usr/java/jdk-17 /usr/java/default
程序中只使用 /usr/java/default,升级时只需改软连接指向。
软连接本身只占极小的空间(存的是路径),不复制文件内容。
✅ 对比硬链接:
例如:
/data/logsln -s /data/logs/app1 /var/log/app1
通过是否存在软连接来控制功能开关。
例如 systemd、init.d、bash 补全脚本常用这种方式。
系统升级后路径变化,可用软链接保持旧路径可用。
ln -s /new/path /old/path
ls -l 中显示 -> 目标lrwxrwxrwx 1 user user 10 Jun 1 10:00 link -> target.txt
# 创建软链接
ln -s 源文件 链接名
# 查看
ls -l
# 查看真实路径
readlink 链接名
| 场景 | 示例 |
|---|---|
| 软件版本切换 | /usr/bin/python -> python3 |
| 配置集中管理 | 配置文件软链到 home |
| 日志归集 | 多服务日志统一目录 |
| 容器 / 挂载 | 路径抽象 |
| 系统兼容 | 保留旧路径 |
如果你愿意,我也可以: