连续复制 – 如何连续复制文件?

Jam*_*igh 9 filesystems file-copy fat32

我想将多个文件复制到闪存驱动器上,以便每个单独的文件都是连续的。它们不需要彼此相邻,并且可以按任何顺序排列。这些文件将非常大——数百兆字节到千兆字节。不应对驱动器上的其他文件进行碎片整理;这样做会浪费时间并导致闪存介质不必要的磨损。

我希望能够至少为 FAT32 执行此操作,但*nix也将不胜感激文件系统的方法。

基本上,有两种方法可以解决这个问题:

  • 复制然后对文件进行碎片整理。
  • 为每个文件碎片整理足够的连续可用空间,然后将每个文件复制到它的位置。

第二种选择通常比第一种快得多,并且可以避免对闪存介质造成不必要的磨损,因此第二种选择会非常可取。

我不介意离线工作的解决方案,但显然在线更可取。

slm*_*slm 3

我必须承认我不太明白你想做什么,但我认为这并不重要。我发现这个工具名为defragfswhich ,旨在执行您所要求的操作(如果我理解您要执行的操作)。

http://defragfs.sourceforge.net/index.html

我认为这个工具的问题在于,它会在之后进行碎片整理,我认为您希望基本上保证当您将文件写入磁盘时,它是按顺序完成的。根据标题为:how to store a file in Continuous disk block in linux 的StackOverflow Q&A ,考虑到写入完成的架构,这听起来不太可能。

为了完善这个问答,我确实找到了以下听起来可能有用的资源。