假设我使用通过RAID控制器连接到Linux机箱的RAID-0(只是条带化)设置了2个磁盘。所以基本上我看到一个大分区。当我写一个包含两个块(A | B)的文件时,磁盘1将存储A,磁盘2将存储B.
现在,假设我想实现RAID-1(镜像),以便在这两个磁盘上玩游戏。我可以使用FUSE吗?我想象的方法如下:假设我的fuse实现获得了一个要写入的三个块(A | B)的文件,我现在将改写(A | A | B | B),以便A在磁盘1上写入两次和B在磁盘2上写两次。
我想玩一些纠删码和RAID方案,我想控制我写入磁盘的内容。我不想修改软件RAID,所以这看起来更容易。
这是否会奏效,我应该对此有所了解吗?请注意,可以假设我将知道块大小,并且我将在适当时进行零填充。
答案 0 :(得分:3)
FUSE实际上并不是一种合适的方法。它的目的是用来实现一个文件系统,这不是你在这里想要做的事情--FUSE会传递你的事件,比如“把我所有的文件放在这个目录中”,这比你的级别要高得多之后。 (你可能更喜欢像“读取这个块”这样的简单事件。)
有一个项目允许在用户空间(BUSE)中实现块设备,但这是非常初步的。我不确定这对它有多好。