Linux文件链接

一、Linux链接文件

Linux有两种链接文件:符号链接(软链接)和硬链接,符号链接类似Windows下的快捷方式。硬链接通过文件系统的inode连接来产生新文件名,而不是产生新文件。

软链接和硬链接的区别在于:

软链接(Symbolic Link)是一个特殊的文件,它只包含了原始文件的路径信息,原始文件和链接文件是两个不同的实体。软链接可以跨越文件系统边界,并且可以链接到目录。

符号连接类似Windows下的快捷方式,符号链接也叫做软链接,软链接要用的多。符号链接相当于创建了一个独立的文件,这个文件会让数据读取指向它连接的哪个文件的文件名。软链接的特点:

①、可以链接到目录。

②、可以跨文件系统。

③、删除源文件以后,软连接文件也就"打不开了"。

④、符号链接文件通过->来指示具体的链接文件。

⑤、符号链接要使用绝对路径,否则链接出问题。

硬链接(Hard Link)是指多个文件共享同一个索引节点,它们共享相同的文件内容和文件属性,只是文件名和索引节点号不同。硬链接只能链接到文件,不能链接到目录,且只能链接到同一个文件系统上的文件。

inode:记录文件属性,一个文件一个inode。inode相当于文件ID,查找文件的时候要先找到inode,然后才能读出文件的内容。

硬链接是多个文件都指向同一个inode,硬链接:

①、具有相同inode的多个文件互为硬链接文件,创建硬链接相当于文件实体多了入口。

②、对于硬链接文件,只有删除了源文件以及对应的所有硬连接文件,文件实体才会被删除。

③、根据硬链接文件的特点,我们可以通过给文件创建硬连接的方式来防止文件误删除。

④、不论修改源文件还是连接文件,另一个文件的数据都会被改变。

⑤、硬链接不能跨文件系统。

⑥、硬链接不能连接到目录。

二、 创建链接ln命令

ln命令是Linux命令中的一种,用于创建软链接或硬链接。它的基本语法是:

ln [选项] [原始文件或目录] [链接文件或目录]

常用选项有:

-s:创建软链接(符号链接)

-f:强制创建连接文件,如果链接文件已存在,则先删除再创建

-v:显示详细的输出信息

创建软链接的命令形式为:

ln -s [原始文件或目录] [链接文件或目录]

创建硬链接的命令形式为:

ln [原始文件或目录] [链接文件或目录]

ln命令的作用是创建链接文件或目录,使之与原始文件或目录关联起来。这样,当操作链接文件或目录时,实际上就是操作原始文件或目录。

需要注意的是,ln命令创建的链接文件或目录,无论是软链接还是硬链接,都不占用原始文件或目录所在磁盘空间。

相关推荐
爱写代码的小朋友2 分钟前
基于多约束遗传算法的中小学排座位优化模型研究
linux·人工智能·算法
ccice0125 分钟前
硬核实战:调用Gemini多模态管道,直击办公中的图表解析、发票识别与自动化脚本生成(国内镜像免费方案)
运维·自动化
爱喝水的鱼丶27 分钟前
SAP-ABAP:数据类型与数据对象(8篇) 第七篇:进阶优化篇——基于类型与对象特征的性能优化技巧
运维·数据库·学习·性能优化·sap·abap·开发交流
程序员榴莲30 分钟前
网络编程入门 Python Socket 实现一个简单的用户认证系统
服务器·网络·python
ZStack开发者社区37 分钟前
全球化2.0 | ZStack亮相印尼云计算与数据中心大会 以新一代云底座助力数字印尼建设
服务器·云计算·gpu算力
DFT计算杂谈42 分钟前
VASP新手入门: IVDW 色散修正参数
linux·运维·服务器·python·算法
楼兰公子1 小时前
《深入理解Linux网络技术内幕》配套学习大纲 + 源码Demo + 进阶实战实例
linux·arm开发·学习
programhelp_1 小时前
Google 2026 New Grad SDE VO 三轮面试详解 | 含Behavioral、Coding、Design
java·服务器·数据库
qq_366032781 小时前
Claude API中转怎么选?简易api下的国内接入与兼容 OpenAI 接口实践
大数据·运维·人工智能
Donk_671 小时前
HAProxy实验搭建
运维·负载均衡