Восстановить загрузчик Linux в Rescue
Основной загрузчик операционных систем Linux — GRUB. Если загрузчик Linux был удален, поврежден или перестал работать после замены диска, вы можете восстановить загрузчик. Для этого загрузите сервер в режиме Rescue, смонтируйте основные разделы аналогично тому, как они смонтированы в основной системе, и установите загрузчик GRUB.
Разметка диска без программного RAID
Разметка диска с программным RAID
-
Загрузите сервер в режиме восстановления и диагностики Rescue.
-
Определите режим загрузки ОС:
[ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS"В ответе появится информация о режиме загрузки ОС —
BIOSилиUEFI. -
Выведите информацию о разделах на дисках:
lsblk -o +FSTYPEВ ответе появится информация о разделах на дисках. Например:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS FSTYPEsda 8:0 0 25G 0 disk├─sda1 8:1 0 1M 0 part├─sda2 8:2 0 512M 0 part vfat├─sda3 8:2 0 1G 0 part ext4└─sda4 8:3 0 23,5G 0 part ext4sdb 8:16 0 8G 0 disk├─sdb1 8:17 0 4G 0 part ext4└─sdb2 8:20 0 4G 0 part xfsЗдесь
sda1,sda2,sda3,sda4,sdb1,sdb2— разделы на дисках. В вашей ОС имена разделов могут отличаться. -
Определите разделы, которые нужно монтировать:
- корневой раздел
/— обычно это самый большой раздел на диске, в примере на шаге 3 это разделsda4; - загрузочный раздел
/boot— обычно это раздел с файловой системой ext4 и размером 512 МБ — 1 ГБ. В примере на шаге 3 это разделsda3; - раздел EFI
/boot/efi— используется при загрузке ОС в режиме UEFI. Это раздел с файловой системой vfat. В примере на шаге 3 это разделsda2.
- корневой раздел
-
Смонтируйте корневую файловую систему в директорию
/mnt:mount /dev/<system_partition> /mntУкажите
<system_partition>— корневой раздел/, который вы выбрали на шаге 4, в примере этоsda4. -
Примонтируйте загрузочный раздел:
mount /dev/<boot_partition> /mnt/bootУкажите
<boot_partition>— загрузочный раздел/bootна диске, который вы выбрали на шаге 4, в примере этоsda3. -
Если используется UEFI-загрузчик ОС, примонтируйте раздел EFI:
mount /dev/<efi_partition> /mnt/boot/efiУкажите
<efi_partition>— раздел EFI/boot/efi, который вы выбрали на шаге 4, в примере этоsda2. -
Смонтируйте служебные файловые системы:
mount --bind /sys /mnt/sysmount --bind /proc /mnt/procmount --bind /dev /mnt/devmount -t devpts devpts /mnt/dev/pts -
Подключитесь к окружению:
chroot /mnt /bin/bash -
Экспортируйте переменную PATH:
export export PATH=/usr/sbin:/usr/bin:/sbin:/bin:$PATH
-
Установите загрузчик GRUB. Команда зависит от загрузчика ОС, который вы определили на шаге 2:
- UEFI:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB- BIOS:
grub-install /dev/<disk>Укажите
<disk>— системный диск, на котором установлена ОС и расположен корневой раздел/, в примере на шаге 3 этоsda. -
Создайте файл конфигурации GRUB:
/sbin/grub-mkconfig -o /boot/grub/grub.cfg -
После завершения работ выйдите из окружения:
exit -
Размонтируйте служебные файловые системы:
umount -t devpts devpts /mnt/dev/ptsumount --bind /dev /mnt/devumount -t sysfs /sys /mnt/sysumount -t proc /proc /mnt/proc -
Размонтируйте файловую систему:
umount /dev/<system_partition> /mntУкажите
<system_partition>— корневой раздел/, который вы смонтировали на шаге 5, в примере этоsda4.