1、我们先了解一下Linux数据是如何保存和查询的

对于操作系统来说,数据分为两种: 1. User data(用户数据) 2. (元数据)。 用户数据是保存和记录的文件的内容。 例如,一个1M的ppt文件和一个500K的txt文件。 这是所有用户数据。 这个文件总是有属性,比如大小、修改时间、访问时间、创建时间、存储位置(文件所在的inode)、文件创建者等信息。 这种属性信息可以理解为汇总信息,我们称之为元数据。 总之,用户数据是文件的实际内容,而元数据是摘要信息。

在Linux中,元数据中的inode号(inode号即索引节点号)是文件的唯一标识符而不是文件名。 文件名只是为了方便人们记忆和使用。 系统或程序使用索引节点号来查找正确的文件数据块。

2、查看文件对应的inode号

[root@zcwyou ~]# ls -i latest.tar.gz

.tar.gz

Linux检查文件对应的inode号

可以看出.tar.gz文件的inode号是。 Linux在搜索、读取和写入文件时,将inode号视为标识符,而不是文件名。 文件名类似于网站的域名,只是为了方便人类记忆。

即有一个硬链接,即.tar.gz。

3.根据inode号找到对应的文件

那么sf123,问题就出现了,系统上是否还有第二个文件及其索引节点号。

使用 find 来查找它:

[root@zcwyou ~]# find / -inum 134474678

搜索结果如下:

/root/.tar.gz

/root/.tar.gz

Linux根据inode号找到对应的文件

硬盘上确实有第二个文件,它的索引节点号也是如此。 在这种情况下,我们认为有两个硬链接。 当然,这是本文作者提前准备好的。

为了解决文件共享的问题,Linux系统引入了两种类型的链接:硬链接和软链接(也称为符号链接、软链接或链接)。 链接解决了Linux系统的文件共享问题,同时也带来了隐藏文件路径、增加权限安全、节省存储等好处。

4.确认硬链接数量

查看文件 .tar.gz

[root@zcwyou ~]# ll latest.tar.gz

输出如下:

-rwxr-xr-x。 2 root root Oct 11 15:00 .tar.gz

请注意输出结果中的数字2,表示该文件有2个硬链接。

一般情况下,一个inode只有一个链接,如下例

[root@zcwyou ~]# ll abc.txt 

输出结果:

-rw-r--r--。 1 root root 9 十一月 21 11:39 abc.txt

请注意输出结果中的数字1,表示该文件只有一个硬链接。 默认情况下,该文件只有一个硬链接。

5.查看软链接

我们看另一个文件

[root@zcwyou ~]# ll /dev/stdout

。 1 root root 15 Sep 26 15:57 /dev/ -> /proc/self/fd/1

查看linux中的软链接

我们发现/dev/实际上指向了另一个文件/proc/self/fd/1,这是一个软链接。 类似于系统上的快捷方式。

6、软链接和硬链接的区别

6.1 软链接的特点

6.2 硬链接的特点

ln链接器的原理如下:

Linux ln链接器示意图

7. 创建文件链接

Linux ln命令是一个非常重要且常用的命令,它用于创建文件或目录的链接。

7.1 创建软链接

创建一个演示软链接的文件。

[root@zcwyou ~]# touch soft.txt

创建软链接示例:

[root@zcwyou ~]# ln -sf soft.txt soft123.txt 

测试结果:

[root@zcwyou ~]# ll soft123.txt 

输出文件属性

。 1 root root 8 十一月 26 17:48 .txt -> soft.txt

linux 创建软链接

可以看到这个文件指向当前目录soft.txt,配置成功。 7.2 创建硬链接

创建一个演示硬链接的文件。

[root@zcwyou ~]# touch hard.txt

不使用选项创建硬链接

[root@zcwyou ~]# ln hard.txt hard123.txt 

测试结果:

[root@zcwyou ~]# ll hard123.txt 

输出文件属性:

-rw-r--r--。 2 root root 0 十一月 26 17:47 .txt

linux 创建硬链接

请注意上面输出中的数字 2,表示该文件有 2 个副本。

八、总结

ln 命令可以创建文件的副本,也可以创建软链接。

未经允许不得转载! 作者:admin,转载或复制请以超链接形式并注明出处天心神途传奇手游发布网

原文地址:《sf123 Linux软链接和硬链接区别详解:ln命令》发布于:2024-04-03

发表评论

表情:
验证码
评论列表 (暂无评论,39人围观)

还没有评论,来说两句吧...