温馨提示×

Linux如何链接文件目录

小樊
42
2026-07-15 00:04:11
栏目: 智能运维

在 Linux 中,“链接文件目录”可以理解为创建目录的链接,常见有 软链接(symbolic link) 和 **硬链接(hard link)**两种方式。下面详细说明。


一、软链接(Symbolic Link,推荐用于目录)

1️⃣ 创建目录软链接

ln -s /原目录路径 /链接目录路径

示例

ln -s /home/user/data /home/user/data_link

此时:

ls -l /home/user/

会看到:

data_link -> /home/user/data

2️⃣ 特点

  • 可以链接目录
  • ✅ 跨文件系统
  • ✅ 原目录删除后,链接失效(变成断链)
  • ✅ 类似 Windows 的“快捷方式”

二、硬链接(Hard Link,⚠️不能用于目录)

ln 源文件 链接文件

不能对目录创建硬链接(防止循环引用)

原因:

  • 硬链接共享 inode
  • 目录结构不允许破坏

只能用于普通文件


三、常用示例

1️⃣ 把当前目录链接到某个位置

ln -s $(pwd) ~/mylink

2️⃣ 覆盖已有链接

ln -sf /new/path /link/path

3️⃣ 查看链接指向

ls -l
readlink 链接名

四、删除目录链接(⚠️注意)

✅ 正确方式

rm 链接名
# 或
unlink 链接名

错误方式(危险)

rm 链接名/

可能导致误删原目录内容!


五、对比总结

类型 是否支持目录 原目录删除 跨文件系统
软链接 ✅ 支持 ❌ 失效 ✅ 支持
硬链接 ❌ 不支持 ✅ 仍可用 ❌ 不支持

六、常见使用场景

  • 软件版本切换(如 /usr/bin/python -> python3.11
  • 挂载点映射
  • Docker / 服务器目录映射
  • 避免路径过长

如果你有具体场景(比如 Docker、Nginx、挂载磁盘、多用户共享目录),可以告诉我,我可以给你更合适的示例。

0