我想在一台用于备份的计算机上使用 Ubuntu Server。如果将来需要,我希望能够添加额外的磁盘空间。基本上,我喜欢 Drobo 的功能,但我不喜欢它使用专有文件系统。这意味着如果它坏了,我完全依赖它们。
因此,我研究了 RAID 5 + LVM 的 mdadm。但是,如果新磁盘大于旧磁盘,则不会使用所有磁盘空间。(快照的 LVM)我认为 ZFS 可以解决问题,但是 Linux 不支持。BtrFS 有点太年轻,不能信任我的文件,毕竟这是我的备份,我希望东西在那里是安全的。
我想要一台 ubuntu 机器而不是 NAS 的另一个原因是,我还想在其上运行其他东西,例如 Django、mythtv 后端和邮件服务器。
那么,如果我想以冗余的方式存储我的文件并且还能够对这些备份进行快照,我有哪些选择呢?
我仍处于研究阶段,因此我愿意接受建议。:)
答案1
您可以在顶部使用 RAID 1 + LVM。当需要更多空间时 - 添加另外 2 个磁盘,使用它们创建另一个 RAID 1,并将其添加到现有的 LVM
LVM 还支持快照
答案2
MD 有一种container
模式,即“RAID 的 RAID”。随着您添加更多磁盘,您可以创建一个新的 RAID 并将其添加到容器中(具体取决于它们是否适合现有 RAID 集)。我敢打赌 drobo 也会做同样的事情。
来自手册页。
CONTAINER is different again. A CONTAINER is a collection of devices
that are managed as a set. This is similar to the set of devices con‐
nected to a hardware RAID controller. The set of devices may contain a
number of different RAID arrays each utilising some (or all) of the
blocks from a number of the devices in the set. For example, two
devices in a 5-device set might form a RAID1 using the whole devices.
The remaining three might have a RAID5 over the first half of each
device, and a RAID0 over the second half.
With a CONTAINER, there is one set of metadata that describes all of
the arrays in the container. So when mdadm creates a CONTAINER device,
the device just represents the metadata. Other normal arrays (RAID1
etc) can be created inside the container.
您还可以将 RAID 1 MD 阵列转换为 RAID 5。请参见
http://blog.serverhorror.com/2011/01/27/migrating-raid-levels-in-linux-with-mdadm/
尝试一下并让我们知道结果如何。