在不使用RAID的多硬盘LVM中遇到硬盘故障时,是否会失去一切?

我在讨论如何将LVM用于媒体/文件服务器,因为我想将多个物理硬盘组合成一个卷。 我不想在我的LVM中使用任何RAID,所以我的问题是:

如果我的卷中的多个硬盘中的一个硬盘掉了,我会丢失所有数据,还是会丢失存储在单个磁盘上的数据?

而且,如果我只是丢失了单个磁盘上的数据,是否会像replace该磁盘一样简单,并从备份中恢复它的恢复?

感谢大家。

如果我的卷中的多个硬盘中的一个硬盘掉了,我会丢失所有数据,还是会丢失存储在单个磁盘上的数据?

不,你会失去存储在整个LVM上的数据

而且,如果我只是丢失了单个磁盘上的数据,是否会像replace该磁盘一样简单,并从备份中恢复它的恢复?

不,这不简单

您可以在这里阅读类似的问题LVM和灾难恢复

简单:你正在寻找mhddfs 。
它伪装成一个大文件系统,按照它们提到的顺序写入磁盘,并最终将大文件移动到另一个设备,如果第一个文件系统太满。 它实际上也可以使用磁盘上的子文件夹,允许相同的function。
各个磁盘必须先安装并保持可访问状态。 它根本不会改变文件系统,不关心哪个文件系统就位(只要文件系统正确报告可用空间)。 如果磁盘丢失,您将不得不重新挂载您的mhddfs(即时),并在该磁盘上的数据已经消失。
用法:

mhddfs /dir1,/dir2[,/path/to/dir3] /path/to/mount [-o options] 

或者在/etc/fstab

  mhddfs#/path/to/dir1,/path/to/dir2 /mnt/point fuse defaults 0 0 

复杂&强大:你想要unionfs 。
尽pipemhddfs非常好,而且非常简单,但在通过SSH授予其他人访问权时,我遇到了文件权限问题。 我找不到任何解决办法,但find了工会。
Unionfs还允许你将不同文件系统中的多个文件夹装入一个文件夹,但这对于权限来说是神奇的。 您可以将多个只读文件夹和一个可写文件夹合并在一起,因此它显示为一个文件夹。 你分享你的合并文件夹的人,然后可以写入一个只读文件夹 – 看起来像他们 – 但文件最终在一个单一的可写。 Linux启动光盘就是这样工作的,可写磁盘是一个虚拟磁盘。 人们甚至可以删除只读文件夹中的文件,这并不真正删除文件,而是在其写入目录中创build隐藏的白名单文件。 如果你抓住所有的select,基本上可以使用你的文件系统作为一个糟糕的人SVN 。
如果您使用类似SVN的选项太多,则可能会错过两次存在的数据(在您的scheme中不太可能,但可能),而您的可写文件夹填充了小型,隐藏的白名单文件。 除此之外,它保持您的磁盘清洁和单独使用。 如果一个文件对于磁盘来说太大,会发生什么,我还不知道。
用法:

  unionfs-fuse -o cow,max_files=32768 \ -o allow_other,use_ino,suid,dev,nonempty \ /path/to/dir1=rw:/path/to/dir2=ro:/dir3 /u/union/etc 

其中=rw使文件夹可读写, =ro使其成为只读文件夹,即使权限会另行声明。 在etc/fstab是这样的

 unionfs-fuse#/path/to/dir1=rw:/path/to/dir2=ro:dir3 /path/to/mount fuse cow,allow_other 0 0 

如果使用跨越所有LVM卷的一个文件系统,则整个文件系统将被损坏,因为FS不知道底层物理卷,并且不会创build与其alignment的结构。 也许可以挽救工作盘上的一些部件,但不能保证这一点。

而只是恢复损坏的磁盘的文件将无法正常工作。

如果您只是将多个设备连接在一起,则不会有任何冗余,因此您可能会丢失数据。 但是,如果您将媒体/文件服务器用于业务,则不应该因为将所有内容备份到备份服务器/磁带机而丢失任何内容。

你为什么避免RAID? RAID的重点是可用性; 如果您不想因磁盘故障而失去时间,则可以使用RAID 1configuration,这也可以加快读取速度。 它们不是太昂贵,在第一次出现磁盘故障时为自己付出代价,如果您真的要避免为卡付款,您可以将Linux设置为使用软件RAID,尽pipe在设置时需要多加小心并排除故障以确保更换正确的驱动器。

否则,你将不得不跳过一些环节,试图从剩余的磁盘上恢复你可以获得的数据。 这是可能的,但你有点儿要比你应该有更多的麻烦。 获得一个好的备份,并重新考虑RAID。

我认为一个简单得多的路线是为媒体分区configurationmdadm。 如果你没有“真正的RAID”的硬件,那么mdadm的路由将变得相当容易,而且似乎可以满足你对冗余和简单磁盘更换的要求。

 # Format your drives first # Create your MD mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2 # In the event that a drive fails do the following mdadm /dev/md1 --fail /dev/sda1 # Format the new drive mdadm --add /dev/md1 /dev/sda1 

欲了解更多信息: http : //en.wikipedia.org/wiki/Mdadm

如果我的卷中的多个硬盘中的一个硬盘掉了,我会丢失所有数据,还是会丢失存储在单个磁盘上的数据?

如果您使用mdadm和RAID 5,则可能会损失一个驱动器,并使arrays发挥function,如果您遇到性能下降的问题。

我认为重要的是要理解没有提到的文件系统中的文件不一定坐在磁盘上的一个地方。 它被分解成块,可能驻留在文件系统内的任何地方。 第一个4K,如果你的文件可能在disk1,下一个disk2等等。你可以想象如果你丢失了一大块文件系统,试图恢复任何东西的混乱。

Btrfs在这里是一个不错的select; 你可以让元数据对一个磁盘丢失有效(“raid1”块configuration文件)。 其他磁盘上的数据仍然可以访问(只要我们清楚,即可转换为缺less磁盘引用的任何文件的文件)。 这是通过使用filter运行btrfs balance来完成的:

 sudo btrfs balance start -m convert=raid1 /mnt/point