I'm very new to Linux, being mainly a Windows 7 user, so I may not understand Linux-specific commands without explanation.

I've decided to build a NAS running some form of Linux (probably FreeBSD or even FreeNAS) with SnapRAID for redundancy.

I currently have about ten 1TB and 2TB external drives, which I intend to take out of their enclosures and mount as normal HDDs via SATA. Most of these drives contain a large amount of data.

My question is this: Is it possible to "combine" the drives such that they appear to the OS and all programs to be a single logical drive (of around 13-14TB) without deleting the data? I assume this would be completed with LVM, but before I go spending a lot of money on NAS hardware I want to make sure this will work.


I figured it out myself! I discovered mhddfs and it seems to do exactly what I want.

I'm about to test with a VirtualBox, but I believe I will be using SnapRAID with mhddfs (probably all running on Lubuntu) and it solves my problem.

  • I tried it under ubuntu and it seems to work perfectly as well. Thank you! – CBenni Oct 10 '16 at 19:56
  • @CBenni Glad to hear! We used it for many months without issue before we eventually decided to switch to Windows for other reasons (mostly compatibility with game servers and the like). On Windows we paid for Drive Bender, which does basically the same thing. Slightly dodgy interface but has worked perfectly for the past year or so. – Clonkex Oct 11 '16 at 0:24

There is a high risk of data loss but it should work if you have enough free space to work around segments of data first.

First format a empty drive, add it to a new LVM array, and then move over the data from disk two to the new lvm aray of one disk. Format and add the second disk, then move data from disk 3 to the LVM array (that now is disks 1 and 2). Repeat till all the disks are in the array.

Or use something like unionFS to emulate that effect. Or just use normal mount points.

It depends a lot on what kind of data your trying to store and how it is split up.

For example if your trying to store 10G of Videos and the videos are broken into categories that are not larger then 500M you could just user 10 1G hard drives and normal mount points. If you have 10 G of video and its in two categories but no single video is larger then 1G you could use 10 1G hard drives and unionFS.

LVM is nice but you will have to format and partition the physical disks. That should not cause an issue of you are willing to go slow and build the array 1 disk at a time till you have moved all data and all disks into the LVM array seperatly.

MAKE A BACKUP in fact make two. If you have a backup this really wouldn't be an issue. Setup the arrays and such then restore the backup.

  • The issue is that we have no backups (hence this attempt to combine the drives with software RAID, to give us some redundancy) and no space to move data (well - maybe we can manage that, but if possible we'd prefer not to). I read something about logical volume groups - would that achieve what I need? – Clonkex Sep 30 '14 at 4:07
  • Mount points (as you say) are always an option, but also something we'd prefer to avoid if possible. – Clonkex Sep 30 '14 at 4:10
  • I'm looking into UnionFS right now, so I'll get back to you with that. To clarify, what we need to be able to do is have large files split across the drives if they can't fit in the remaining space on the physical drive. – Clonkex Sep 30 '14 at 4:12
  • As far as I can tell, UnionFS doesn't do what we want. Yes it virtually merges the directory structures, but it doesn't combine the drives. Unless someone can provide a better answer, formatting and partitioning the disks one at a time is looking more and more necessary (*sadface*). – Clonkex Sep 30 '14 at 5:24

If I understand you right, you want to make one virtual HDD out for more HDD's of different size. Then it is a JBOD, not a RAID-0! So you can not use the stripe set settings, like you would with two disks of the same size. Say, gstripe. Instead you use a concatenated disk driver. Available under http://en.wikipedia.org/wiki/Vinum_volume_manager in Freebsd. Also described here: http://www.ige.unicamp.br/manuais/FreeBSD-HB/vinum-objects.html

  • Yes, that is correct, I wanted to combine the physical drives into one giant virtual drive, but... I've already achieved this, and I never said anything about RAID-0. I suppose your answer may help others at some point, though... – Clonkex Oct 12 '14 at 7:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.