Linux 的 link 命令

Linux 中的 link 命令用于创建硬链接(hard link),这是 Linux/Unix 文件系统中的一种特殊文件连接方式。与符号链接(symbolic link)不同,硬链接直接指向文件的 inode,而不是通过路径名引用。

命令语法

bash 复制代码
link filename1 filename2
  • filename1:已存在的源文件
  • filename2:要创建的硬链接名称

硬链接特性

  1. inode 共享:硬链接与原文件共享相同的 inode 编号和数据块
  2. 等同性:创建后,硬链接与原文件完全等同,没有主从之分
  3. 跨文件系统限制:硬链接不能跨不同的文件系统创建
  4. 目录限制:普通用户不能为目录创建硬链接(超级用户可以使用特殊方法)

实际应用示例

创建硬链接

bash 复制代码
$ touch original.txt
$ link original.txt hardlink.txt
$ ls -li
12345 -rw-r--r-- 2 user group 0 Jan 1 10:00 hardlink.txt
12345 -rw-r--r-- 2 user group 0 Jan 1 10:00 original.txt

验证硬链接

bash 复制代码
$ stat original.txt hardlink.txt
# 会显示相同的 inode 编号

与 ln 命令的比较

link 命令功能上等同于 ln 命令不带 -s 选项时的用法:

bash 复制代码
$ ln original.txt another_hardlink.txt

注意事项

  1. 删除原文件后,硬链接仍然可以访问文件内容
  2. 所有硬链接(包括原文件)必须全部删除才会真正释放磁盘空间
  3. 使用 ls -l 查看时,第二列的数字表示该 inode 的链接计数

使用场景

  1. 需要在不同位置访问同一文件内容时
  2. 作为文件备份的轻量级方案
  3. 某些应用程序需要特定路径下的文件时

系统限制

大多数 Linux 系统对单个文件的硬链接数量有限制(通常为 65535),这是由文件系统决定的。

相关推荐
呱呱巨基12 分钟前
Linux 查找命令
linux·笔记·学习·查找命令
路由侠内网穿透14 分钟前
本地部署企业级快速开发平台芋道管理后台并实现外部访问
运维·服务器·网络·网络协议
basketball61622 分钟前
软考中级网络工程师 第4章 无线通信网 备考总结
linux·服务器·网络·网络工程师·软考
yunlaodacom41 分钟前
阿里云国际站注册:性能损耗 < 1%!基于 eBPF 的服务器异常预测实战与调优指南
大数据·服务器·阿里云
好评1241 小时前
【Linux】进程信号
linux·运维·服务器
zhangrelay1 小时前
ROS 2 Lyrical 第4章 URDF机器人建模与Gazebo Garden仿真
linux·笔记·学习·ubuntu·机器人·ros2
wuminyu1 小时前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
cakeism8251 小时前
Gitee DevOps 平台定位、核心能力与选型指南
运维·gitee·devops
xianyuCcCcCCCcc1 小时前
Nginx 深度解析:从基础架构到反向代理与负载均衡实战全解
linux·运维·nginx·bash·负载均衡
qq_25294131682 小时前
列车车轮缺陷智能检测数据集:800张图像、4大类别,助力铁路安全运维
运维·人工智能·安全·yolo·目标检测·计算机视觉·视觉检测