パーティションテーブルは次のようになります。
(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ドライブに障害が発生して交換され、サーバーがリカバリモードで起動されました。 sdbからsdaにパーティションテーブルを選択し、mdを同期しましたが、リカバリモードの外に出たときにサーバーが起動したくありません。
これは、アレイがリカバリモードで機能していることの証明です。
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
を呼び出すのを忘れたようです。簡単な回避策として、BIOSを入力し、/ dev/sdb(BIOSに表示される2番目のディスク)から最初に起動するように指示できます。最初から起動しようとしていると思います/ dev/sda。
重要なのは、最初の起動可能なパーティションがmdソフトウェアRAID上にないため(カーネルの起動前に使用されているため、起動できないため)、ディスクを交換するときにも準備する必要があります。それ以外の場合は、プライマリおよびセカンダリブートローダーがありません。
フォローアップ:何らかの理由で/ bootが最初だと思うようです)bios_grubパーティションですが、そうではありません。同時に、初期化されていないbios_grubパーティションが、サーバーが起動を拒否する唯一の理由です。