『运维备忘录』之 Ln 链接命令详解

运维人员不仅要熟悉操作系统、服务器、网络等知识,甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作,持续给大家更新运维工作所需要接触到的知识点,希望大家喜欢。

今天我们要讲的是 Ln 命令


一、简介

ln 命令用于创建文件的链接,这种链接可以分为硬连接(hard_link)和软连接(symbolic_link,也称为符号连接)两种类型。硬连接是一种特殊的文件链接,它允许数据共享但不会消耗额外的磁盘空间;而软链接则是一个指向目标的指针,但不包含任何实际的数据内容。要创建软连接,需要使用`-s`选项。

换句话说:软连接相当于Windows系统中的快捷方式文件,原始文件被移动或删除后,软连接文件也将无法使用;硬连接则是将文件的inode属性块进行了复制,因此把原始文件移动或删除后,硬链接文件依然可以使用。

1.1. 硬连接和软连接的区别

『运维备忘录』之 Ln 链接命令详解_第1张图片 硬链接
『运维备忘录』之 Ln 链接命令详解_第2张图片 软链接

1.1.1 本质区别

硬链接:本质是同一个文件
软链接:本质不是同一个文件

1.1.2. 跨设备区别

硬链接:不支持
软链接:支持

1.1.3. inode区别

硬链接:相同
软链接:不同

1.1.4. 链接数

硬链接:创建新的硬链接,链接数会增加,删除硬链接,链接数减少
软链接:创建或删除,链接数不会变化

1.1.5. 文件夹

硬链接:不支持
软链接:支持

1.1.6. 相对路径

硬链接:原始文件相对路径是相对于当前工作目录
软链接:原始文件的相对路径是相对于链接文件的相对路径

1.1.7. 删除源文件

硬链接:只是链接数减一,但链接文件的访问不受影响
软链接:链接文件将无法访问

1.1.8. 文件类型

硬链接:和原文件相同
软链接:链接文件,和原文件无关

1.1.9. 文件大小

硬链接:和原文件相同
软链接:原文件的路径的长度

二、基本用法

语法格式:

$ ln [options] FILE_NAME LINK_NAME

参数选项:

选项 描述
-s 对源文件创建软链接
-S 设置备份文件的后缀
-b 为已存在的目标文件创建备份
-d 允许管理员创建目录的硬链接
-f 强制创建链接而不询问
-i 若目标文件已存在,则需要用户二次确认
-L 若目标文件为软链接,找到其对应文件
-n 将指向目录的软链接视为普通文件
-P 若目标文件为软链接,直接链接它自身
-t 设置链接文件存放于哪个目录
-v 显示执行过程详细信息
-backup 备份已存在的文件
-help 显示帮助信息
-version 显示版本信息

三、参考示例

3.1. 为指定的源文件创建链接(默认为硬链接形式)

$ ln file1.txt file2.txt

3.2. 为指定的源文件创建链接(设定为软链接形式)

$ ln -s file1.txt file2.txt

3.3. 强制创建文件链接(会覆盖原链接)

$ ln -sf file1.txt file2.txt

3.4. 删除文件链接

$ rm file2.txt

日常中最常用的实际就是上述几个啦。

你可能感兴趣的:(运维备忘录,运维)