news 2026/4/15 22:20:48

飞凌嵌入式ElfBoard-软连接(符号链接)与硬连接

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
飞凌嵌入式ElfBoard-软连接(符号链接)与硬连接

Linux系统中,有软连接和硬连接两种不同的文件链接方式。

硬连接是对文件的另一个目录项,所有硬连接都指向相同的inode,就好比一块存储数据的内存有着多个名字,每增加一个硬连接,连接数就会加一。当连接数为0时,相对应的内存就会被彻底删除。

软连接就好比Windows系统中的快捷方式,最终指向的是源文件,一旦源文件删除,则软连接失效,而且软连接和源文件有这个不同的inode号。

下面介绍ln命令基本用法,方便后面做演示。

硬连接: ln 源文件 连接文件

软连接: ln -s 源文件 连接文件

大家自行找位置创建测试文件,我这里使用的是/home/elf/work/test,分别创建hard.txt、soft.txt、source.txt文件,最后使用stat命令查看最终结果。

$ stat ./*

File: ./hard.txt

Size: 0 Blocks: 0 IO Block: 4096 regular empty file

Device: 803h/2051d Inode: 5279891 Links: 2

Access: (0644/-rw-r--r--) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)

Access: 2024-11-06 21:31:37.948957601 +0800

Modify: 2024-11-06 21:31:37.948957601 +0800

Change: 2024-11-06 21:34:43.967331843 +0800

Birth: 2024-11-06 21:31:37.948957601 +0800

File: ./soft.txt -> source.txt

Size: 10 Blocks: 0 IO Block: 4096 symbolic link

Device: 803h/2051d Inode: 5279903 Links: 1

Access: (0777/lrwxrwxrwx) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)

Access: 2024-11-06 21:34:45.739296928 +0800

Modify: 2024-11-06 21:32:30.477947367 +0800

Change: 2024-11-06 21:32:30.477947367 +0800

Birth: 2024-11-06 21:32:30.477947367 +0800

File: ./source.txt

Size: 0 Blocks: 0 IO Block: 4096 regular empty file

Device: 803h/2051d Inode: 5279891 Links: 2

Access: (0644/-rw-r--r--) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)

Access: 2024-11-06 21:31:37.948957601 +0800

Modify: 2024-11-06 21:31:37.948957601 +0800

Change: 2024-11-06 21:34:43.967331843 +0800

Birth: 2024-11-06 21:31:37.948957601 +0800

上图中source.txt是源文件,hard.txt是硬连接文件,soft.txt是软连接文件。其中硬连接和源文件的inode号和连接数(Links)是一样的,这里因存在源文件和硬连接文件所以links数为2。软连接的inode数和link数与源文件都不一致,正好验证了前面的理论。

下面来说说硬连接和软连接的特点:

软连接:可以跨文件系统创建,并可以链接到目录。但删除源文件会导致符号链接失效(变成悬链接)。

硬连接:不能跨越文件系统创建,也不能链接到目录。但删除一个硬连接不影响其他硬连接或者源文件数据,直到最后一个硬连接被删除时,文件数据才会被清除。

创建软连接可以使用symlink()函数,创建硬连接文件可以使用link() 函数,下面就来介绍一下这两个函数。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 5:35:03

跨平台字体终极指南:Web字体兼容性实战手册

在现代Web开发中,跨平台字体兼容性已成为前端工程师必须掌握的核心技能。PingFangSC字体包通过精心设计的双格式解决方案,彻底解决了不同操作系统下字体渲染不一致的痛点问题。无论用户使用Windows、macOS还是Linux系统,都能获得一致的专业视…

作者头像 李华
网站建设 2026/4/12 15:25:43

PaddlePaddle平台如何评估生成模型的质量?

PaddlePaddle平台如何评估生成模型的质量? 在人工智能技术不断渗透各行各业的今天,生成式AI正以前所未有的速度改变着内容创作、人机交互和自动化系统的边界。从智能写作到图像合成,从语音播报到文档识别,生成模型的应用场景越来越…

作者头像 李华
网站建设 2026/4/15 14:08:00

SmartTube大屏观影革命:告别广告干扰的智能电视YouTube解决方案

SmartTube大屏观影革命:告别广告干扰的智能电视YouTube解决方案 【免费下载链接】SmartTube SmartTube - an advanced player for set-top boxes and tv running Android OS 项目地址: https://gitcode.com/GitHub_Trending/smar/SmartTube 还记得那些被广告…

作者头像 李华
网站建设 2026/4/15 16:51:56

Qwen-Edit-2509多角度控制技术:用中文指令重塑图像编辑体验

Qwen-Edit-2509多角度控制技术:用中文指令重塑图像编辑体验 【免费下载链接】Qwen-Edit-2509-Multiple-angles 项目地址: https://ai.gitcode.com/hf_mirrors/dx8152/Qwen-Edit-2509-Multiple-angles 在当今数字内容创作领域,图像视角的精确调控…

作者头像 李华
网站建设 2026/4/14 8:16:26

使用Java Stream,将集合转换为一对一Map

在日常的开发工作中,我们经常使用到Java Stream,特别是Stream API中提供的Collectors.toList()收集器, 但有些场景下,我们需要将集合转换为Map,这时候就需要使用到Stream API中提供的另一个收集器: Collect…

作者头像 李华
网站建设 2026/4/13 15:54:18

AI缺陷检测判定系统:给产品装个“智能火眼金睛”

在工厂生产线末端,传统质检靠人工目视排查,既耗力又易漏检微小缺陷。而AI缺陷检测判定系统,就像一位永不疲倦的“智能质检员”,能精准捕捉产品表面划痕、内部裂纹等问题。作为产品经理,拆解其技术流程,就能…

作者头像 李华