GPT,grub和mdadm。 SDA驱动器更换,RAID在恢复模式重build,但现在服务器将无法启动

这是如何分区表loooks:

(parted) print Model: ATA TOSHIBA DT01ACA2 (scsi) Disk /dev/sda: 2000GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Number Start End Size File system Name Flags 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 514MB 512MB raid 3 514MB 8706MB 8193MB raid 4 8706MB 2000GB 1992GB raid (parted) (parted) quit root@condor1958:~# parted /dev/sdb GNU Parted 2.3 Using /dev/sdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Model: ATA ST2000DM001-1CH1 (scsi) Disk /dev/sdb: 2000GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Number Start End Size File system Name Flags 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 514MB 512MB raid 3 514MB 8706MB 8193MB raid 4 8706MB 2000GB 1992GB raid 

背景:我有/ dev / sda驱动器失败并被replace,服务器被启动到恢复模式。 我从sdb到sda和md同步copt分区表,但现在服务器不想启动,当我走出恢复模式。

这是arrays在恢复模式下工作的certificate:

 root@condor1958:/mnt/2/var/log# cat /proc/mdstat Personalities : [raid1] [raid0] [raid6] [raid5] [raid4] md2 : active raid1 sda4[2] sdb4[1] 1944880960 blocks super 1.2 [2/2] [UU] md1 : active raid1 sda3[2] sdb3[1] 7996352 blocks super 1.2 [2/2] [UU] md0 : active raid1 sda2[2] sdb2[1] 499392 blocks super 1.2 [2/2] [UU] 

在恢复模式下,分区被挂载

 /dev/md0 on /mnt/0 type ext2 (rw) /dev/md2 on /mnt/2 type ext4 (rw) 

在现场模式

 /dev/md0 is a /boot /dev/md2 is a / 

为什么当我退出恢复模式时服务器不想启动?

谢谢

好像你忘了在复制分区表之后调用grub-install /dev/sda 。 作为一个简单的解决方法,您可以inputBIOS,并告诉它首先从/ dev / sdb启动(在BIOS中可见的第二个磁盘)。 我想它试图从第一个/ dev / sda启动

问题是,第一个可引导的分区不在md软件raid上(不可能,因为它在内核引导之前使用),因此在更换磁盘时也必须做好准备。 否则,它会缺less主引导程序和辅助引导程序。

后续 :似乎由于某种原因,您认为/ boot是第一个bios_grub分区,而不是。 同时,未初始化的bios_grub分区是您的服务器拒绝启动的唯一原因。