有没有办法将多个硬盘驱动器安装到单个安装点?假设我的空间不足/home
,决定在计算机上添加一个额外的硬盘。如何缩放安装点上的空间?如果我使用 RAID,我可以在驱动器用完时动态添加驱动器以增加空间吗?如果我对维持高水平冗余不感兴趣,是否有使用 RAID 的替代方案?
答案1
您可能对 UnionFS 感兴趣。在现有系统上设置可能比 LVM 更简单。
从 UnionFS 页面,http://www.filesystems.org/project-unionfs.html:
该项目构建了一个可堆叠的统一文件系统,它可以合并多个目录(分支)的内容,同时保持它们的物理内容分离。 Unionfs 对于统一源代码树管理、合并分割 CD-ROM 的内容、合并单独的软件包目录、数据网格等很有用。
我希望你觉得这有帮助。
答案2
您可以使用左室厚度为了这。它旨在将物理驱动器与逻辑驱动器分开。
使用lvm,您可以:
将全新的物理驱动器添加到池(在 LVM 术语中称为卷组)
pvcreate /dev/sdb my_vg
扩展逻辑卷空间
延伸...
最后在线调整文件系统的大小
e2resize /mnt/我的/路径
但请注意,这不是灵丹妙药。即使使用 LVM,减少文件系统也要困难得多。
答案3
LVM 答案是一个很好的答案,但 raid 也可以做到这一点,因此添加另一个答案。
Linux 软件 raid (mdadm) 允许将磁盘添加到已创建的阵列中。当您执行此操作时,会将数据重新平衡到新驱动器上。
如果您对冗余不感兴趣,您可以使用 raid-0,它将数据均匀地分布在所有磁盘上。
然而,raid-5 至少提供了一些冗余,而不会损失太多存储空间(牺牲一个磁盘的价值)。
但话虽如此,当所有驱动器大小相同时,raid 效果最佳。如果它们的大小不同,则驱动器的某些部分将不会被使用,因为它只会使用最小的驱动器。如果我没记错的话,LVM 条带不会有这个问题,就像驱动器大小不同一样,额外的空间不会被条带化。
答案4
有没有办法将多个硬盘驱动器安装到单个安装点?
可能不是以您想要的方式。你可以做各种有趣的事情,但这并不能解决您想要解决的问题。
假设我的 /home 空间不足,并决定向计算机添加一个额外的硬盘驱动器。如何缩放安装点上的空间?
一种方法是以下步骤:
将一个或多个新驱动器添加到您的计算机
格式化新的 LVM(可能为 ext4 或 xfs)
将其安装到临时位置(例如
/dev/tmp
:)使用或 将的内容复制
/home
到新的 lvm (/dev/tmp
)rsync
cp
执行“swaperoo”(在 处卸载旧驱动器
/home
,在 处卸载新驱动器/dev/tmp
,并在 处安装新驱动器/home
可选地扩展新的LVM使用旧驱动器
更新文件系统表以便挂载在重新启动后保持不变
上述步骤可能应该通过从实时 USB/CD 启动到操作系统来完成,例如格帕特。
如果我使用 RAID,我可以在驱动器用完时动态添加驱动器以增加空间吗?
是的你可以。 究竟如何取决于硬件(假设您将使用硬件 raid)。
如果我对维持高水平冗余不感兴趣,是否有使用 RAID 的替代方案?
“高水平冗余”是主观的,并非所有 RAID 都提供冗余。以下是 RAID 选项的高级细分:
RAID 1(镜像)完全冗余,可能不想要这个
RAID 6(2 个奇偶校验块)可以处理 2 个磁盘故障而不丢失数据,至少 4 个驱动器,可能不想要这个
RAID 5(1 个奇偶校验块)可容忍单个驱动器故障,至少 3 个磁盘,可能满足您的需求
RAID 0(条带化)没有冗余,如果单个驱动器发生故障,您将丢失所有数据(尽管它提供了出色的性能),可能适合您的需求
或者,您也可以使用ZFS这就是我要做的。从维基百科:“ZFS 具有可扩展性,包括针对数据损坏的广泛保护、对高存储容量的支持、高效数据压缩、文件系统和卷管理概念的集成、快照和写时复制克隆”。根据我的经验,ZFS 非常灵活,可以配置(和调整)来执行您想要的大多数操作。它可以处理 RAID、LVM、写时复制、快速压缩等。与 ext4 或 xfs 相比,管理起来要复杂一些,但如果您无论如何都必须搞乱 raid/lvm,那么它实际上并没有那么不同。