Linux:什么是链接

时间:2015-02-08 01:11:25

标签: linux ubuntu

我是 Linux 的新手我之前只使用 windwos GUI但我有一个问题: > Linux的?我知道它有两种类型,但我不知道它们通常在 windows 中有什么优势,如果中的 LINK ,则从差异路径引用应用程序的快捷方式Linux 具有与拖曳类型相同的功能吗?

谢谢你回答。

3 个答案:

答案 0 :(得分:2)

有两种类型,因为它以这种方式发展 - 并且它们的实现方式不同:

  • 首先是硬链接。每个文件都通过名称和inode值在目录文件中表示。将inode视为磁盘地址或块编号。硬链接文件的inode位于多个目录文件中(或者在给定目录文件中使用不同的文件名多次),并且每个目录条目都是“相同”文件(当然,名称不同)。
  • 后来出现了符号链接。它们是目录文件中的特殊条目,其中包含另一个文件的名称而不是inode值。

符号链接与其指向的实际文件之间有明显的区别:如果删除该文件,则链接断开。这与硬链接不同 - 删除一个名称不会损坏其他名称。

答案 1 :(得分:2)

首先你应该知道什么是Inode?了解链接类型的优势让我

inode是inodetable中的一个条目,包含有关常规文件和目录的信息(元数据)。 inode是传统Linux文件系统(如ext3或ext4)上的数据结构。 Inode编号也称为索引编号,它包含以下属性。

  • 文件类型(可执行,块特殊等)
  • 权限(读,写等)
  • UID(所有者)
  • GID(集团)
  • 文件大小
  • 时间戳,包括上次访问,最后修改和最后一次 inode号码改变。
  • 文件删除时间
  • 链接数量(软/硬)
  • 文件在硬盘上的位置。
  • 关于文件的其他一些元数据。

显示Inode使用此命令+ flags

ls –il

什么是链接?

链接只是一种引用文件内容的方式。

链接类型:

  1. Hardlink(磁盘中文件/ inode的另一个名称)
  2. 软链接/符号链接(指向文件位置的指针)
  3. 如何在linux中创建链接?

    1. 硬链接ln existingfile newfile

      注意:目录

    2. 不允许使用硬链接
    3. 软链接ln –s existingfile newfile

    4. 软链接将具有与源文件不同的Inode编号,源文件将具有指向源文件的指针,但硬链接将使用与源文件相同的Inode编号。 软链接就像是Windows中的快捷方式。它不包含有关目标文件或文件内容的任何信息,而是包含指向目标文件位置的指针。 软链接您可以为文件创建链接&文件夹&你可以在不同的分区上创建链接(快捷方式)&从原来得到不同的inode号码。 如果删除了真实副本,则链接将不起作用。 硬链接 仅限文件&你不能在不同的分区上创建(它应该在同一个分区上)&获得与原始相同的inode数量 如果删除了alalcopy,则链接将起作用(因为它充当原始文件)

答案 2 :(得分:0)

链接是创建原始目录快捷方式的一种非常方便的方法。链接在许多实例中使用:有时创建一个方便的路径到深埋在文件层次结构中的目录;链接的其他用途包括:

  1. 链接库

  2. 确保文件位于固定位置(无需移动原件)

  3. 在多个位置保留单个文件的“副本”。

  4. 在Linux中有两种不同类型的链接:

    1. 硬链接

    2. 符号链接

      两者之间的差异很大。使用硬链接,您只能链接到文件(而不是目录);您不能在不同的磁盘或卷上引用文件,并且它们引用与原始源相同的inode。即使删除了原始文件,硬链接仍将继续保持可用状态。 另一方面,符号链接可以链接到目录,引用不同磁盘或卷上的文件/文件夹,如果原始位置被删除,将作为损坏(不可用)链接存在,引用抽象文件名和目录(相对于物理位置),并给予他们自己独特的inode。