语法

ln [参数] [源文件或目录] [目标文件或目录]

参数

  • -i 交互模式,文件存在则提示用户是否覆盖。
  • -b 删除,覆盖以前建立的链接
  • -d 允许超级用户制作目录的硬链接
  • -f 强制执行
  • -i 交互模式,文件存在则提示用户是否覆盖
  • -n 把符号链接视为一般目录
  • -s 软链接(符号链接)
  • -v 显示详细的处理过程

Hard Link

实体链接,又称硬链接,通过文件系统的inode链接来产生新文件名,以文件副本的形式存在

创建实体链接

# ln /etc/crontab /root/crontab

如下图所示,1和2的inode指向两个不同的文件名,和包含着数据(real)的inode,最终都可以读取到数据。

这种模式有益于文件的安全,可以在任何一方进行数据更改,删除任何一方数据都依旧存在。

限制:

  1. 不能跨 Filesystem
  2. 不能链接目录
  3. 不能链接不存在的文件

Symbolic Link

符号链接,又称软链接,相当于windows上的快捷文件,相对于硬链接来说没有上面的限制,以存放目标文件的路径形式存在

创建符号链接

# ln -s /etc/crontab /root/crontab

如下图所示,1读取到的inode指向只有自己本身文件名(/root/crontab)和目标文件(/etc/crontab)的inode,最后经过2才能得到数据(real)的inode。

这种模式的目标文件 (/etc/crontab) 被删除了,链接文件 (/root/crontab) 也会无法读取到数据。