Linux操作系统中硬连接和软连接的区别

坦白说,Linux 链接有两种类型:硬链接和软链接,但软链接类似于 Windows 快捷方式,硬链接才是“指向路径”真正的兄弟。

硬链接与文件的索引节点号(Inode)直接相关。
这与同一数据块上有多个标签相同。
我们去年运行的系统有一个硬链接核心日志的备份策略。
删除备份文件并没有影响主线。
直到删除所有备份后才发布。
但是,请记住,硬链接只能存在于同一文件系统中,不能跨分区工作。
还有一点是不能直接在根目录下创建指向其他分区的硬链接。
系统直接拒绝。
不管怎样,一开始我以为可以随便贴个标签,结果发现这是一个陷阱。

软链接是一个包含目标文件实际路径的文本文件。
例如,在测试环境中,软链接指向生产服务器文件。
删除生产文件后,软链接仍然有效,但指向无效路径。
去年,在一个3 000级的项目中,我使用软链接来管理配置文件,但忘记定期清理无效链接。
当我检查日志时,我认为可能是生产环境出现故障。
说实话,我很困惑。
软链接的“幽灵”特性很容易迷惑人们。
等等,还有别的事。
如果软链接指向不存在的文件,它将成为孤立的空文件,但硬链接则不会。
这也是需要区别对待的。

下次,我们建议使用软链接来管理分区之间的引用,并使用硬链接来进行本地冗余备份。
不要混合。
您认为在软链接中存储绝对路径还是相对路径更安全?

Linux中硬链接和软链接的区别与联系!

硬链接和软链接是Linux系统中两种不同的文件链接方式。
它们的主要区别和联系如下
硬链接 1 . 概念 硬链接可以充当文件的多个别名。
硬链接和原始文件共享相同的索引节点号,这意味着它们指向同一个数据块。
2 . 特点
硬链接目录项与原始文件目录项具有相同的 inode 号。

删除其中一个硬链接不会删除原始文件。
在删除所有硬链接之前,不会重新使用原始文件。

无法在文件系统上创建强链接,也无法创建目录的强链接。
3 . 示例
在源文件hard_link_name中创建硬链接
如果存在文件file1 和硬链接link1 ,删除link1 不会影响file1
软链接 1 . 概念 软链接类似于Windows系统中的快捷方式。
软链接和主文件具有独立的inode号,主文件的路径存储在软链接数据块中。
2 . 特点
软链接目录项与主文件的索引节点号不同。

如果原文件被删除,软链接就变成无效链接。

可以跨文件系统或目录创建软链接。
3 . 示例
创建软链接:ln -s 源文件软链接名称
如果存在文件file2 和软链接link2 ,删除file2 后link2 将无法访问。
区别与联系 不同的概念
硬链接:多个别名、共享相同的inode、数据阻塞。

软链接:快捷方式、独立inode、存储路径。


特殊用途
硬链接:非常适合备份同一文件系统,以防止删除后进行访问。

软链接:非常适合类似于文件系统或目录的引用。


语法格式
硬链接:ln 源文件硬链接名称
对于软链接:ln -s 源文件软链接名称

创建软链接时,源文件路径最好是绝对路径,否则可能会报错。

删除硬链接不会删除原始文件,直到所有硬链接都被删除。

如果软链接指向的文件被删除,则该链接将失效。
忘了它。

Linux操作系统文件链接问题

哎呀,刚刚看完这篇文章,我终于明白Linux中的链接了。
记得有一次,我在公司服务器上玩,想做个备份,却不小心删除了一个重要文件。
我当时的心是很难过的。
后来我才知道Linux中有一个强大的链接可以防止这种悲剧的发生。

那年我在北京的一家公司做运维。
公司有个大哥教我如何使用ln命令创建硬链接。
他当时说:“你看,文件f1 很重要,我们把它备份一份,命名为f2 ,这样,即使f1 被误删,f2 还在,数据也不会丢失。
”我跟着它,使用命令行输入了一系列代码,然后出现了f2 ,就像f1 一样。

后来,我在网上看到一个教程,演示了可以使用ln命令创建超链接。
我尝试在另一台机器上获取 f3 ,这是到 f1 的简化链接。
结果我发现删除f3 不会影响f1 和f2 ,但是删除f2 会影响f1 这个区别让我明白了软链接和硬链接的区别。

当时不太明白,就问大哥:“为什么软链接和硬链接有这么大的区别?”他告诉我:“因为软链接实际上是一个指针,指向f1 的路径;硬链接直接链接到f1 的索引节点。
因此,删除软链接不会影响f1 ,但删除硬链接会影响。

这次研究让我深刻认识到研究问题必须深入,才能真正理解其原理。
我打算明天亲自尝试一下,看看效果如何。
对了,我也看了你提到的教程,看起来很实用。
例如,我将尝试如何在Linux上安装和配置MariaDB数据库以及如何设置启动密码。
哈哈,学无止境!