Vor einigen Wochen spukte eine SSD in einem meiner physischen Servern. Ich entschied mich, eine neue SSD zu kaufen, den kompletten Inhalt der alten SSD auf die neue SSD zu klonen, und dann die neue SSD als neue Festplatte in den Server einzubauen (die alte SSD wanderte ins Archiv).
Als ich gestern das Debian GNU/Linux auf diesem Server aktualisierte, bemerkte Debian, dass es auf einer neuen SSD lief, und fragte mich, wo ich den GRUB Bootloader überall installieren wollte (/dev/sda, das heisst auf der Festplatte selber, plus /dev/sda1, auf der ersten (Boot-)Partition).
GRUB war natürlich bereits installiert, sonst hätte der Server nach dem SSD-Wechsel nicht gebootet — aber vermutlich war in der GRUB-Konfiguration noch die Referenz auf die alte SSD enthalten und nicht auf die neue.
Überfordert entschied ich mich wie im Dialog angeregt, den Bootloader sowohl auf /dev/sda als auch /dev/sda1 zu installieren. Das sei die sicherste Methode.
Später dann fand ich nach einer mehrminütigen Internetsuche heraus, wie ich bei einem „baugleichen“ Server hätte nachschauen können, wo der Bootloader alles installiert ist:
# debconf-show grub-pc grub2/kfreebsd_cmdline: grub2/device_map_regenerated: * grub2/linux_cmdline_default: quiet grub-pc/timeout: 5 * grub2/linux_cmdline: grub-pc/partition_description: grub2/kfreebsd_cmdline_default: quiet * grub-pc/install_devices_disks_changed: /dev/disk/by-id/ata-SanDisk_SDSSDA120G_XXXXXXXXXXXX grub-pc/install_devices_failed_upgrade: true grub2/force_efi_extra_removable: false grub-pc/disk_description: * grub-pc/install_devices: /dev/disk/by-id/ata-SanDisk_SDSSDA120G_XXXXXXXXXXXX grub-pc/kopt_extracted: false grub-pc/chainload_from_menu.lst: true grub-pc/postrm_purge_boot_grub: false grub2/update_nvram: true grub-pc/install_devices_failed: false grub-pc/install_devices_empty: false grub-pc/mixed_legacy_and_grub2: true grub-pc/hidden_timeout: false
Sprich: Nur auf /dev/sda.
Auf dem Server mit der ausgewechselten SSD schaut es nun halt leider so aus:
# debconf-show grub-pc * grub-pc/install_devices: /dev/disk/by-id/ata-KINGSTON_SA400S37480G_XXXXXXXXXXXXXXXX, /dev/disk/by-id/ata-KINGSTON_SA400S37480G_XXXXXXXXXXXXXXXX-part1 grub-pc/install_devices_empty: false grub2/force_efi_extra_removable: false grub-pc/install_devices_failed: false grub-pc/install_devices_failed_upgrade: true * grub2/linux_cmdline: grub-pc/postrm_purge_boot_grub: false grub-pc/mixed_legacy_and_grub2: true * grub-pc/install_devices_disks_changed: /dev/disk/by-id/ata-KINGSTON_SA400S37480G_XXXXXXXXXXXXXXXX, /dev/disk/by-id/ata-KINGSTON_SA400S37480G_XXXXXXXXXXXXXXXX-part1 grub-pc/timeout: 5 grub2/kfreebsd_cmdline: grub-pc/chainload_from_menu.lst: true grub2/update_nvram: true grub-pc/disk_description: grub-pc/hidden_timeout: false grub-pc/kopt_extracted: false * grub2/linux_cmdline_default: consoleblank=60 grub2/kfreebsd_cmdline_default: quiet grub-pc/partition_description:
Sprich: Man sieht, dass der Bootloader sowohl auf die Festplatte, als auch die erste Partition („part1“) installiert wird.