符号链接和硬链接的文件大小有什么区别?

符号链接和硬链接的文件大小有什么区别?

我计划将所有电影保存在一个巨大的文件夹中,然后为该类型创建其他文件夹,同时为该类型文件夹中的所有电影创建链接。这样我就可以将电影组织成多种类型,而无需进行不必要的复制。

我一直计划在这项工作中使用硬链接,以便创建一个更强大的系统,在该系统中我可以在不破坏链接的情况下移动文件。但是,我想知道硬链接是否会比符号链接占用更多的存储空间并使我的机器膨胀。我创建了文件的软链接和硬链接来测试这一点,但是当我在 Thunar 的首选项下查看文件大小时,它们都显示原始文件大小。

哪个文件占用更多的硬盘空间,符号链接还是硬链接?

在半不相关的旁注中,xbmc / kodi 是否将视频链接识别为实际视频?

答案1

符号链接文件占用更多空间。硬链接文件共享相同的内容inode;但符号文件是pointer原始文件(地点)。

尽管如此,硬链接有两个注意事项:

  • 并非所有文件系统都支持硬链接。
  • 硬链接不能应用于文件夹。

我想你不需要考虑存储问题,因为在大多数情况下它们都是微不足道的。此外,可能有一些工具可以帮助你虚拟地组织流派(它们可能利用虚拟文件系统)。

答案2

差异可以忽略不计并且无关紧要。创建硬链接或符号链接仅占用几个字节。硬链接消耗一个目录条目:在目录中存储名称和索引节点号的空间。符号链接还需要一个目录条目,以及存储有关符号链接的一些元数据的空间;根据文件系统,此信息可以存储在目录条目中或需要单独的索引节点。符号链接使用更多字节,大约 100 个字节左右,可以忽略不计 — 不到您存储的文件的 1/1000。

如果您的文件非常小,并且每个目标有如此多的文件和如此多的链接,以至于每个目标添加数百个字节是相关的,那么适当的数据库将更适合存储您的数据。但仅仅为了对文件进行分类而建立链接是无关紧要的。

磁盘使用工具不会告诉您额外的硬链接或符号链接消耗的大小,因为它们仅显示文件内容的大小,而不是元数据的大小,并且符号链接是所有元数据,就像指向某个文件的额外硬链接一样。现有文件。 (从技术上讲,“硬链接的大小”是文件的大小。毕竟,每个有名称的文件都有一个硬链接,并且无论有一个还是多个硬链接,内容都是相同的。 )请注意,一些不成熟的工具如果从不同的路径看到文件,可能会两次计算文件的大小;du大多数图形文件管理器只对文件进行一次计数。

通常符号链接更容易操作。它们可以让您清楚地识别哪个是原始的,哪个是目标,而对于硬链接,所有名称都是等效的。关于符号链接的另一点是,如果编辑原始版本,符号链接不会受到影响,而编辑具有多个硬链接的文件可能会破坏链接,具体取决于编辑器的工作方式(使用新版本覆盖与写入)一个新文件并将其移动到位)。

如果您希望能够在主要分类中移动文件,那么您需要使用硬链接,因为符号链接是纯文本的,它们不会跟随目标。

相关内容