美文网首页Linux基础学习教程Linux系统
Linux 基础教程 12-基本命令ln

Linux 基础教程 12-基本命令ln

作者: Surpassme | 来源:发表于2017-04-17 22:00 被阅读20次

ln(link)命令用于在文件或目录之间创建同步链接。当我们需要在多个目录中,使用到相同的文件时,通常我们会选择在这些不同的目录中将需要用到的文件都复制一份,这种做法会带来两个问题:

  • 当原始文件被更改后,需要再次为每个目录重新复制一份,否则会造成同一文件存在多个版本
  • 同一个文件被复制多份,会占用额外的磁盘空间

针对这种情况,我们引用Linux中一个非常重要的命令ln

链接分类

在Linux中,链接可分为两类:硬链接(Hard Link)符号链接(Symbolic Link),亦称软链接。默认的类型为硬链接。

硬链接(Hard Link)

硬链接就像一个文件有多个文件名,以文件副本的形式存在。硬链接主要的特性如下:

  • 不能在不同的文件系统之间创建硬链接,即链接文件和被链接文件必须在同一文件系统中
  • 硬链接无法引用目录
  • 只能对已经存在的文件夹进行创建
  • 删除硬链接文件并不影响被链接的文件

符号链接(Symbolic Link)

符号链接是为了克服硬链接的局限性而创建的。通过创建一个特殊的文件,该文件指向另一个文件的位置,所有的读写文件内容的命令被用于符号链接时,将沿着链接方向前进访问实际文件。类似于Windows中的快捷方式。

  • 符号链接可以跨文件系统
  • 符号链接可以对文件或目录创建
  • 可对不存在的文件或目录创建链接
  • 删除符号链接并不影响被指向的文件,但若被指向的原文件被删除,则相关的符号链接会成为死链接,若被指向的路径文件被重新创建,则死链接可以恢复为正常的链接

两者联系与区别

  • 1.ln命令会保持每一处链接文件的同步性,即无论更改哪一个位置,其它的文件都会发生相同的变化
  • 2.两者都是一种映射,硬链接映射到inode,符号链接仅是链接到一个路径。

简单的说,符号链接就像是快捷方式,而硬链接就像是备份。符号链接可以做跨分区的链接,而硬链接由于inode的缘故,只能是本分区中做链接,因此符号链接使用的频率要高一些。

基本语法

ln [参数] [源文件/目录] [目标文件/目录]

详细参数解释如下所示:

参数 功能
-f 如果在目标位置存在与链接名相同的文件,则删除该文件
-s 符号链接
-d 允许系统管理员创建目录的硬链接
-b 对在链接时会被覆盖或删除的文件进行备份

示例

  • 1、新建硬链接,并将原文件删除,再查看结果,示例如下:


    12- ln示例-1_c2i.jpg

从示例中可以看到,使用硬链接会产生一个内容相同的文件firstbak.txt,效果相当于复制。因此当删除first.txt时,并不会影响到firstbak.txt

  • 2、新建符号链接,并将原文件删除,再查看结果,示例如下:


    12-2 ln示例-2_c2i.jpg

从示例中可以看到,使用符号链接仅产生一个指向来源文件的链接文件,当原文件被删除后,链接文件也跟着失败,是不是觉得跟Windows快捷方式很像?

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:

MyQRCode.jpg

相关文章

  • Linux 基础教程 12-基本命令ln

    ln(link)命令用于在文件或目录之间创建同步链接。当我们需要在多个目录中,使用到相同的文件时,通常我们会选择在...

  • ln -s 软链接

    linux 创建连接命令 ln -s 软链接linux-ln -s(链接)、mount(挂载 软连接和硬连接 硬链...

  • Linux 中的 ln 命令

    Linux ln 命令 Intro Linux 中的文件分为 Hard Link 和 Symbolic Link ...

  • linux命令 - ln

    功能 make links

  • linux ln 命令

    ln: 功能:为某一个文件在另外一个位置建立一个链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 ...

  • Linux ln 命令

    Linux 中的文件分为 Hard Link 和 Symbolic Link 两种。Hard Link 文件又被称...

  • Linux ln 命令

    Linux 中的文件分为 Hard Link 和 Symbolic Link 两种。Hard Link 文件又被称...

  • Linux ln命令

    ln命令: 在很多情况下都会用到 ln 命令,作用在于基于原来的文件,创建一个链接,无论是软链接还是硬链接。 1....

  • linux命令-ln

    ln 原单词 link(链接)ln 命令可以为某一个文件在另外一个位置建立一个同步的链接。不会重复的占用磁盘空间。...

  • ln 命令 为文件创建链接

    参考文章: 简明Linux命令行笔记:ln 为文件建立链接 ln [options] existing-file ...

网友评论

    本文标题:Linux 基础教程 12-基本命令ln

    本文链接:https://www.haomeiwen.com/subject/wnjxzttx.html