Haiku Volume Manager?

Is it possible for Haiku to use a Volume Manager similar to LVM? I have two 500 gigabyte hard drives on my main machine, with a total storage capacity of 1TB! In Haiku, they would be two separate volumes. Instead, I would like Haiku to see the two separate disks as a single volume with a capacity of 1TB. Is this possible, or can it be with Haiku’s current state of maturity?

Any ideas and suggestions are welcome!

I am presently developing a driver that will do what you want to do. Would you be interested in acting as a beta-tester for me? If yes, I can have the code ready for testing this coming weekend.

Progress has been slow because I understood no-one else was interested in such a driver so I have been taking my time developing the code.

LVM seems to reside quite deep in the kernel (he said, from a position of complete ignorance). Wouldn’t a port of UnisonFS serve as a quick-and-dirty solution? It worked quite well on the Acer netbook I had a while ago.

I am not talking about LVM, instead I have a driver that is a simple driver to spread the reads/writes across multiple drives.

So with your new driver, /Haiku would be across many volumes? Could I add hard disks to increase the capacity of /Haiku? If so, I would be interested in beta-testing it!

Note: This driver is not for the booting of Haiku as it developed from the code of a RAMDISK driver. It adds another virtual drive to the system. That virtual drive can then spread to read/writes across multiple physical drives by creating individual files where each file contains the contents of one data-track (virtual cylinder).

The original code would put all these files in the /home directory, but it was easy to modify so for example so all odd numbered data_tracks are written to one directory/drive and all even numbered data_tracks are handled on another directory/drive. Of-course using the mod() function it is possible to split it to even more drives. And with careful use of percentage it is possible to use different sized drives even.

As presently coded, all the drives that the virtual drive wants to write must be present already, if instead you want to it operate on only one drive and only use a second or further drive when the first drive is filled up it will take a rewrite to make that happen.

I can see how I could make it work, but it would increase it’s memory foot-print (something I have spent the last couple of months making smaller.

What exactly are you looking for in multi-drive support?

Well Earl, I am looking to be able to expand the /boot directory capacity by adding new hard drives to my system! In LVM, you can add drives to the system and LVM mounts them as one volume and filesystem. In Haiku, I would like /boot on one main volume and /home and /apps in one expandable LVM like volume.

So if I fill the virtual volume full (/apps and /home), I can just add a hard drive to the system and run a script and the virtual volume expands to the capacity of the new hard drive! So I could have a 20 gig hard drive for /boot (except /apps and /home) and a 500 gig hard drive for /apps and /home. If I use all that capacity, I could add a new 500 gig hard drive and run the script and have a virtual volume of 1 TB

Or if it would be simpler, just expand the / directory by the new capacity of the new drive. Either way, I want to be able to expand my volume by adding new drives in the style of LVM. I hope I haven’t confused or frustrated anyone! Your thoughts are welcome.

What you are asking to do would be easy to do if we were running AmigaDOS, for Haiku however I don’t think I have the needed skills.

The driver would create a separate /virtual_drive, I have even figured out how to expand it across multiple drives that are added later, but with BFS you would need to first format/partition it for the max size you ever expect to expand it to, so even if all you have was single 80GB physical drive, you could format/partition it as a 8TB drive, but after you start filling up the first drive and add more storage it would never address more that 8TBytes without reformatting.

Messing with the /boot partition drive is beyond my skills - sorry.