我正在运行带有mdadm
RAID 1 的 Debian 9。以前两个硬盘都可以启动到操作系统,现在只有一个可以。
我最近有一个需要更换的故障磁盘,所以我更换了它。
首先,我跑了
mdadm --add /dev/md0 /dev/sda
效果很好。在那之后我跑了
grub-install /dev/sda
这给了我以下输出:
Installing for i386-pc platform.
grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
grub-install: error: unable to identify a filesystem in hd0; safety check can't be performed.
这是我的输出lsblk
:
sda 8:0 0 447.1G 0 disk
└─md0 9:0 0 232.8G 0 raid1
├─md0p1 259:0 0 14.9G 0 md [SWAP]
├─md0p2 259:1 0 1K 0 md
├─md0p3 259:2 0 216G 0 md /
└─md0p5 259:3 0 1.9G 0 md /boot
sdb 8:16 0 5.5T 0 disk
├─sdb1 8:17 0 5.5T 0 part
└─sdb9 8:25 0 8M 0 part
sdc 8:32 0 5.5T 0 disk
├─sdc1 8:33 0 5.5T 0 part
└─sdc9 8:41 0 8M 0 part
sdd 8:48 0 232.9G 0 disk
└─sdd1 8:49 0 232.9G 0 part
└─md0 9:0 0 232.8G 0 raid1
├─md0p1 259:0 0 14.9G 0 md [SWAP]
├─md0p2 259:1 0 1K 0 md
├─md0p3 259:2 0 216G 0 md /
└─md0p5 259:3 0 1.9G 0 md /boot
这是来自的输出mdadm --detail /dev/md0
:
/dev/md0:
Version : 1.2
Creation Time : Wed Dec 12 15:26:35 2018
Raid Level : raid1
Array Size : 244066304 (232.76 GiB 249.92 GB)
Used Dev Size : 244066304 (232.76 GiB 249.92 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Thu May 28 18:59:51 2020
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : localserver:0 (local to host localserver)
UUID : 83d5a386:66110e10:e5f3c600:734423a8
Events : 5339803
Number Major Minor RaidDevice State
2 8 0 0 active sync /dev/sda
1 8 49 1 active sync /dev/sdd1
我试过用 just 引导/dev/sda
,但无济于事。我也尝试过 running blockdev --flushbufs /dev/sda
,正如一些人推荐的那样,但无济于事。
运行GParted时,我可以看到有boot和raid/dev/sdd1
标志,而没有标志。我还看到' 的第一个扇区从 0 开始,而' 的第一个扇区从 2048 开始。/dev/sda
/dev/sda
/dev/sdd1
谁能建议我可以解决这个问题的方法?
我不介意分离“奇怪”的硬盘驱动器,格式化它,然后重新连接它。
好的 - 这就是我解决它的方法。
/dev/sdd
有一个称为分区/dev/sdd1
并且该扇区从 2048 开始的事实非常有帮助。Arch Wiki 上的这篇wikiarticle 也有很大帮助。关键是要以完全相同的方式对两个 rives 进行分区。
sfdisk
,让我们保存工作磁盘的分区信息,然后对有问题的磁盘进行重新分区:瞧!
mdadm --add /dev/md0 /dev/sda1
grub-install /dev/sda