设置 sw RAID1 以便任一驱动器启动的正确方法是什么?

设置 sw RAID1 以便任一驱动器启动的正确方法是什么?

我设置了一个非 UEFI CentOS 6.6“空白”安装,每个安装/boot/一个单独的 RAID 1 中(3 个驱动器/1 个备用驱动器)。我删除了一个驱动器,重新启动,然后让它同步到备用驱动器。当我看到这已完成时,我添加了第三个驱动器,让它同步,然后删除了另一个驱动器。这次,我只看到一个闪烁的光标从其余两个驱动器中的任何一个启动。我是否需要将 MBR 复制到所有三个驱动器,或者其他什么?提前致谢。

编辑:在最初的问题中,我在删除驱动器后遇到内核恐慌,但我没有给两个 RAID 卷同步足够的时间。我已经更新了问题。

/etc/fstab、/etc/mdadm.conf、/boot/grub/grub.conf:

[root@localhost ~]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Thu Mar  5 08:30:44 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=875d9c47-8f70-4545-8d11-16264e0dfe01 /                       ext4    defaults                   1 1
UUID=a41ea1b5-6155-46b5-baac-395d5f9f06bc /boot                   ext4    defaults        1 2
UUID=67724b5c-3bf7-43c2-af68-d165a72c7919 swap                    swap    defaults        0 0
UUID=6803812c-7478-4586-91bf-aca1d93b117a swap                    swap    defaults        0 0
UUID=2f7c37b5-8e2a-4acb-9310-8f1841338383 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=BACKUP        /backup         xfs defaults    0 0
[root@localhost ~]# cat /etc/mdadm.conf
# mdadm.conf written out by anaconda
MAILADDR root
AUTO +imsm +1.x -all
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=abd0217f:a277c9ed:fe406fe9:fda616f3
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=e8bb6fca:e7b00a8d:1b9331b8:9dde9ce4
[root@localhost ~]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/md1
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0 
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-504.8.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-504.8.1.el6.x86_64 ro root=UUID=875d9c47-8f70-4545-8d11-16264e0dfe01 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_MD_UUID=e8bb6fca:e7b00a8d:1b9331b8:9dde9ce4 SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-504.8.1.el6.x86_64.img
title CentOS 6 (2.6.32-504.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=875d9c47-8f70-4545-8d11-16264e0dfe01 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_MD_UUID=e8bb6fca:e7b00a8d:1b9331b8:9dde9ce4 SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-504.el6.x86_64.img

答案1

您需要使用 来将 grub 安装到所有 3 个驱动器上grub-install

答案2

@psusi 是正确的,您需要将 grub 安装到所有 3 个驱动器,但您还需要检查如果第一个驱动器丢失/失败,系统是否将从第二个或第三个驱动器启动。

我还注意到您有 3 个交换分区,大概每个驱动器上有 1 个。所以你的备用并不是真正的备用,因为它用于交换。因此,如果驱动器发生故障,系统是否会继续运行尚不清楚。很可能,如果会立即出现恐慌并重新启动 - 可能不是您想要的!

通常的做法是将交换分区配置为 RAID1 阵列,因为这样系统将继续使用降级的阵列,同时重建到(现在处于活动状态)备用阵列。

顺便说一句,我假设您只是测试重建功能,因为,如果系统在任何时候都使用一个驱动器作为备用驱动器运行,那么一旦其中一个活动驱动器发生故障,“备用”驱动器将完全重新同步。 d.

相关内容