用法

ln [选项] [源文件或目录] [目标文件或目录]

说明

Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。
链接分为两种:

1、硬链接

示意图:

  1. 名称1 名称2
  2. | |
  3. inode1 <---
  • 以文件副本的形式存在,但不占用实际空间,只是多个文件名对应到同一个inode号,一个inode号的关联记录
  • 不允许给目录创建硬链接,因为如果给目录创建硬链接,便需要等同于给目录下的所有文件的inode号都创建
  • 只有在同一个文件系统中才能创建,因为关联的是inode号,肯定就不能跨文件系统了
  • 硬链接在删除的时候,只有所有的名称都删除后,所对应的inode才会删除

    2、软链接

    示意图:

    1. 名称1 <- 名称2
    2. |
    3. inode1
  • 以路径的形式存在。类似于Windows操作系统中的快捷方式

  • 软链接可以跨文件系统,因为只是个路径索引
  • 软链接可以对一个不存在的文件名进行链接,因为软链接文件只是让数据的读取指向它链接的那个文件的文件名,并不关心那个文件处于什么状态
  • 软链接可以对目录进行链接,因为只是一个文件名

    选项

    | 选项 | 英文说明 | 中文说明 | | :—-: | :—-: | :—-: | | -s | make symbolic links instead of hard links | 使用符号链接(软链接)代替硬链接,也即如果不带这个参数就是硬链接 |

示例

描述 命令
创建xxx文件的硬链接xxx-hard ln xxx xxx-hard
创建xxx文件的软链接xxx-symbolic ln -s xxx xxx-symbolic