通过 inode 连接文件

Concatenate files by inode

linux 中是否有一种方法可以通过将 2 个文件变成具有 2 个片段的 1 个文件来连接现有文件?我想通过更新第一个文件的 inode 指针来包含第二个文件块,然后删除第二个文件 inode。

这在大多数文件系统上 "physically" 是不可能的,并且没有 Linux 系统调用来完成它。

考虑将两个文件相互附加的情况,其中每个文件为 1 GB + 1 字节。简单地将两者连接起来会在文件中间留下一个 1 字节的范围;大多数文件系统无法表示这一点,因为它们仅在文件末尾使用部分范围。