我正在使用Python多进程来生成每个进程的临时输出文件。它们可以达到几GB大小,我会生成好几十个这样的文件。需要将这些临时文件连接在一起形成所需的输出,但是这一步正在成为瓶颈(也是并行性杀手)。是否有Linux工具可以通过修改文件系统元数据而不实际复制内容来创建连接文件?只要它在任何Linux系统上都能正常工作,我就可以接受。但特定于文件系统的解决方案对我帮助不大。
我没有经过操作系统或计算机科学培训,但理论上似乎应该可以创建一个新的inode,并从我要复制的文件的inode中复制inode指针结构,然后取消链接这些inode。是否有任何实用程序可以做到这一点?鉴于UNIX实用程序很多,我完全希望有这样的实用程序,但是找不到任何东西。因此,我在SO上提出了我的问题。该文件系统位于块设备上,实际上是硬盘,如果这些信息有用的话。由于我以前从未进行过系统级编程,因此我没有信心自己编写代码,因此任何指向C / Python代码片段的指针都将非常有帮助。