我想将home
目录中的一个大文件 (300GB) 拆分dev/sdb1
为两个 (或更多) 不同的部分,并将它们移动到两个不同的磁盘驱动器中。但是,我希望我的系统将该文件视为一个文件。
具体来说,我想将文件拆分成两个 150GB 的部分(或三个 100GB 的部分,等等),然后将这些部分移动到我拥有的不同 SSD 中。但是,这个文件是作为研究项目的输入,我希望系统将其视为一个文件。此外,我需要在另一个文件(.prototxt
我在其中指定程序的所有输入的文件)中指定它的路径,这就是为什么我希望有一个路径,系统可以在该路径下识别该(拆分的)文件。不幸的是,SSD 不够大,无法容纳整个文件。
此外,当我运行时,df -h
SSD 显示为:
Filesystem Mounted on
cluster-name-1-int:/var/tmp/local /import/cluster-name-1-int
cluster-name-2-int:/var/tmp/local /import/cluster-name-2-int
我的系统位于集群中,但我不认为这会产生任何区别,因为我可以从机器访问cluster-name-1
其他机器上的 SSD。最后,我没有 root 访问权限,所以请告诉我您的解决方案是否需要 root 权限,以便我知道并找到实现该解决方案的方法。
编辑:我提供了尽可能多的我认为有用的信息。使用任何你认为可能有助于解决问题的信息,欢迎任何建议。
答案1
这可能是一个完全错误的答案,也可能是一个绝对精彩的答案。我还没有决定。
创建 3 个 101GB(100 + 1 以留出一些额外的空间)磁盘映像文件,并将磁盘映像文件放在相应的驱动器上。然后将这些磁盘映像放入 RAID 中。您应该能够将“/media/[drive]/image1.img”视为 RAID 配置中的 /dev/sda1。也就是说,创建以下映像文件:
/media/SSD1/image1.img
/media/SSD2/image2.img
/media/SSD3/image3.img
或者您需要使用的任何图像格式。例如“.iso”或“.dmg”等。
然后使用 /media/SSD1/image1.img 而不是 /dev/sda1、使用 /media/SSD2/image2.img 而不是 /dev/sdb1 等创建 RAID 阵列。
您应该能够根据需要对任意数量的图像文件执行此操作。只需确保在格式化后添加一些额外的空间即可。