Stablebit DrivePool:将多个硬盘合并为一个虚拟硬盘,不更改文件系统

将多个物理硬盘合并为一个虚拟硬盘,不更改文件系统
软件模拟了大部分NTFS文件系统行为,带来了相当好的性能和兼容性,如果有SSD,可以使用SSD加速虚拟硬盘性能。
(但不支持everything)
支持文件多重副本备份,支持按照规则调整各个硬盘的占用率。
支持在发现smart故障时自动转移文件到其他物理硬盘
支持使用.net写文件分配规则插件
主界面:

文件分配规则

官方网站

https://stablebit.com/DrivePool/Overview

使用感受

使用了三月余,感受是比较好的。我的使用环境是Windows11,主机上插了40T+的硬盘,但硬盘容量比较分散,文件分类及管理很难受。
之前作为松鼠党,不得不在各个硬盘上建立下载文件夹,然后下载文件时手动按照剩余容量进行分配。使用drivepool后,我将所有盘上的下载文件夹都移动到虚拟硬盘里,然后将下载软件的路径指向它,之后硬盘容量管理可以按照调好的规则进行自动移动。我还买了个4T的SSD加到硬盘池,并且设定为加速使用。这样白天下载时系统速度较快,晚上闲时会自动转移到机械盘上。
软件和游戏下载到虚拟盘后,手动安装到SSD分区,这样不会被转移到虚拟盘上,可以正常使用。

缺点

我的电脑使用习惯非常依赖everything,而该软件的虚拟盘不支持USN Journal,强行索引会导致软件反应缓慢,因此我手动屏蔽了虚拟盘分区。使用搜索时,我需要先通过everything定位文件在池中的硬盘下的路径,再手动打开虚拟硬盘对应文件夹。
另外,根据官方论坛上的一些讨论,使用onedrive或类似同步工具,可能在极端情况下导致文件总是全量备份,这是由于软件并没有完全模拟NTFS文件系统行为,而该情况出现与不完全模拟的部分有关。

总结

这软件感觉晚发现10年,太亏了

3 Likes

不考虑整个NAS吗? :rofl:

1 Like

还有个开源方案是 mergerfs, 不支持 windows

mergerfs 可以与 snapraid 搭配实现冗余, 这两在 openmediavault 都有插件, 还是挺好使的

主要考虑后期增加硬盘的扩展性,因为现在已经快存满了。。。
NAS的3~4盘位就已经很贵了,但是我规划应该是要8~10盘 :rofl:

如果把目标从Windows上移开,就有一些很强大而灵活的工具。可惜对于Windows来说,这样的软件确实比较少,近年来有更新的还有drive bender,但也已经于2022年停止更新了

WIndows 跨区卷: :thinking: :thinking: :thinking:

最终落到物理磁盘上的文件是怎么样的,不用这软件还能读取吗?

在磁盘根目录的一个名为diskpart-{uuid}的隐藏文件夹里,可以直接访问

跨区卷等同于r0,一个盘坏了就全寄了:joy:

不等于
随便搜一下:

跨区卷相当于JBOD,和RAID0相类似的是条带卷。

简单来说,如果你存放的文件是{A,B,C,D},JBOD可能是磁盘1存放{A,B},磁盘2存放{C,D}。而RAID0则是磁盘1存放{A1,B1,C1,D1},磁盘2存放{A2,B2,C2,D2},其中A1、A2组成文件A,文件B、C、D类似。

性能上的区别,当你读写A的时候,RAID0两个磁盘同时工作,JBOD只有磁盘1在工作。

作者:木头龙
链接:https://www.zhihu.com/question/54825952/answer/360058961
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

1 Like

啊,我记错成动态分区了:joy:

Windows10的储存池已经支持JBOD和多种raid了,能无缝和系统嵌合,支持自动恢复,唯一缺点是JBOD创建的时候必须全盘清空
另外,稳定性待测

我去了解了一下:
跨区卷:跨区卷必须建立在动态磁盘上,是一种和简单卷结构相似的动态卷。跨区卷将来自多个磁盘的未分配空间合并到一个逻辑卷中,这样您可以更有效地使用多个磁盘系统上的所有空间和所有驱动器号。跨区卷是先将一个磁盘上为卷分配的空间充满,然后从下一个磁盘开始,再将该磁盘上为卷分配的空间充满。

这个是windows内置的功能,我认为优点在于:
1、兼容性好,应该是能够兼容everything的索引方式
2、不用花钱买license

缺点在于:
1、难以迁移,由于采用了动态磁盘,在别的设备上无法即插即用。
2、写入方式是写满一个盘再写另一个,对于机械盘的性能来说不是很有利。

对于stablebit drivepool来说,可以自动平衡硬盘占用和使用ssd加速,我觉得对我来说更合适

diy弄点4u24盘狠狠放

不过40T其实算不上多大了,HDD后期做数据迁移就是折磨;思路要打开,不看看P5336 61.44TB吗?一个盘抵好几块HDD了 :face_with_hand_over_mouth:

:rofl: :rofl: :rofl:富哥v点

NAS主要也得折腾 :thinking:
不过现在想加盘也得整硬盘笼了,电脑上的插槽已经满了,等一波年底看看硬盘价格有没有波动,到时候买个笼子再加一块20T的。

省钱可以买大船盘,我电脑里6个U2盘,3个15.36T的,3个7.68T的,都是大船盘,HDD是再也回不去了

这种是怎么买的,单价比hdd贵吗

同松鼠党,but小白
所以是否可以这么理解:

题主的这个软件方案,

  1. 可以方便管理多个磁盘空间,但是只能以整个硬盘为单位。所以使用前必须腾空合并对象的硬盘?

  2. 如果发现问题删除该软件,也不会导致数据损失?正常访问硬盘一样可以看得到;甚至不会打乱文件目录树结构?

  3. 说的更极端一点,这个软件本身不会搞乱数据?相关硬盘如果关机后在其他没装这个软件的电脑乃至android手机上读取,也不会有问题?

  4. 性能没大影响。因为类似做了多个symbolic link外加一些自动调节机制?

  5. 系统兼容性是windows10以上需要装。net就可以,所以今后windows可兼容性应该没问题?

如果以上回答都是yes,everything不能用我觉得完全可以忍啊。

性能肯定有影响的,所有请求都要经过这个软件处理一遍,楼主可以跑个CDM测试对比裸盘看看

不知道别家松鼠怎么样,本鼠主要装知识库,电影,图片,电子书。
性能不重要,游戏会单开。

所以关键是数据安全性了

不是以硬盘为单位,而是以分区为单位。不用腾空文件,因为它不需要对文件系统做出改动

不会导致损失数据损失,硬盘插到其他电脑上可以读取,文件目录树结构可能会变乱,我举例说明一下:
假设在虚拟硬盘V:\有一个文件夹folder1,文件夹下有两个文件file1和file2,那么结构是这样的

V:\folder1
file1
file2

假设你有两个硬盘加入了pool,那么会在硬盘上生成poolpart文件夹,文件结构是这样的:

硬盘1:\poolpart-uuid1\folder1
硬盘2:\poolpart-uuid2\folder1

那么由于软件的空间分配机制,可能会导致该文件夹在实际文件系统上是这样的:

硬盘1:\poolpart-uuid1\folder1
file1
file2

或:

硬盘1:\poolpart-uuid1\folder1
file1
硬盘2:\poolpart-uuid2\folder1
file2

不过软件还支持Per Folder Balancing,支持一定的规则,可以保持想要的文件夹架构不变。可以参考管网的balancing样例:

balancing

https://stablebit.com/Content/Images/screenshots/DrivePoolWin/Folder-Placement-Rules.png
https://stablebit.com/Content/Images/screenshots/DrivePoolWin/Add-File-Placement-Rule.png

性能影响不大,但与symbolic link有些差别:

StableBit DrivePool features CoveFS, an optimized file system specifically designed for disk pooling.
It has a virtually unlimited pool size (many Petabytes).
It's compatible with existing applications, and is designed to function like NTFS. *
It's a 100% kernel mode implementation.

而且如果你加入了SSD当缓存盘,那么写入还能比HDD快

Windows 11
Windows 10
Windows Server 2022
Windows Server 2019
Windows Server 2016 Essentials
Windows Server 2016
1 Like