Linux如何创建符号链接和硬链接

当我第一次学习Linux时,这对我来说是一个问题。
让我告诉你我的经历。

当时我刚刚接手公司服务器,爷爷就辞职了,留给我很多不懂的东西。
我有一个非常大的项目目录,其中包含很多旧代码。
我认为发布链接是个好主意,这样我就不必每次都复制并粘贴它。

符号链接(软链接)
场景:在 2 02 0 年公司服务器上,您希望将项目目录 /var/www/old_project 链接到 /var/www/links/old_project_link。

我犯了一个错误。
最初我使用相对路径 ln -s ../old_project links/old_project_link。
结果,/var/www/ 层被删除,链接崩溃,不再有整齐的链接。
我当时就纳闷了,这是怎么回事?经过一番研究,我发现如果删除原始文件,符号链接将变得无法使用。

这是正确的答案。
我立即将绝对路径更改为 ln -s /var/www/old_project /var/www/links/old_project_link。
目前局势已稳定。
然后我删除了整个 old_project 目录,然后删除了链接 old_project_link。
系统显示一条消息,说无法删除,因为它仍然指向某个东西。
最后,我不得不在删除目录之前删除链接。
这是它的特点。
如果原始文件消失,链接将被暂停。

验证:我习惯使用ls -l。
首先是 -l 后面跟着一堆字符,最后当我看到 -> /var/www/old_project 时我知道这是一个符号链接。

硬链接
场景:2 02 1 年,您有一个重要的日志文件 /var/log/system.log。
我想创建一个硬链接,因为我不希望它在备份时占用空间。

操作:/var/log/system.log 直接写入/var/log/system_backup.log。
如您所知,硬链接是指向同一 inode 的“名称”的直接副本。
然后我删除了/var/log/system.log。
结果,system_backup.log 仍然很好,我能够看到所有日志。
这让我很震惊,我想如果我删除它,它就会消失。

注意:后来才知道硬链接不能遍历文件系统。
例如,如果您在 / 分区上创建它,则无法在 /mnt/usb 分区上创建该硬链接。
目录不能硬链接。
我尝试过一次,但是系统不允许。
请记住这一点。

验证:使用 ls -i。
验证 system.log 和 system_backup.log 是否具有相同的 inode 号。
这是一个硬链接,本质上是同一个文件。

概述
符号链接:它们的优点是灵活性和分区之间的分离性,但如果原始文件丢失,它们就毫无用处。
适合在狭小的空间内临时放置或悬挂大型目录。
硬链接:它稳定,与原始文件没有变化,但不能跨分区或链接目录。
适合备份或多个名称指向同一文件。

经历了这些场景,我渐渐明白了这一点,但一开始却有很多陷阱。
换句话说,无论讲多少理论,最好还是亲自尝试一下。
碰过很多墙,自然就明白了。

linux创建链接文件是什么-ln 命令使用与实例

Linux软连接如何创建

Linux给文件或目录创建软链接或硬链接的方法

上周 我的那个朋友 使用Linux 创建链接
2 02 3 1 0月2 6 日 上海软链接 ln-s /home/fei/workspace/var/www 链接名称
硬链接 因 /home/fei/workspace/var/www 我不确定链接名称的
部分。
软硬的区别
算了