Как настроить мультизагрузку в GRUB?

У меня есть файлы GRUB на /dev/sda2 (fat32 1GB). При выполнении команды `ls /boot` я получил следующий список файлов: 

```
Boot                     grub                         memtest86+x64.bin            Temp 
bootmgr                  grub4dos                     memtest86+x64.efi            vmlinuz-6.8.0-41-generic 
BOOTNXT                  initrd.img-6.8.0-41-generic  Recovery 
BOOTSECT.BAK             memtest86+ia32.bin           Recovery.txt 
config-6.8.0-41-generic  memtest86+ia32.efi           System.map-6.8.0-41-generic 
```

В файле `/boot/grub/grub.cfg` содержится следующее содержимое:

```
if [ "${grub_platform}" == "pc" ]; then 
    menuentry "Microsoft Windows Vista/7/8/8.1/10 BIOS/MBR" { 
        insmod part_msdos 
        insmod ntfs 
        insmod ntldr 
        search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos3 --hint-efi=hd0,msdos3 --hint-baremetal=ahci0,msdos3 929080679080541F 
        ntldr /bootmgr 
    } 
fi 
```

Однако этот пункт меню не работает и выдает ошибку: 

```
Windows Boot Manager 
\Boot\BCD 
0xc000000f 
```

После загрузки с флешки (Windows 8.1) я использовал команды:

```
bootrec.exe /FixBoot 
bootrec.exe /RebuildBcd 
```

Но это не дало результата. 

После выполнения команды `bootrec /fixmbr`, загрузка Windows 8.1 через меню BCD заработала, но не удалось загрузиться в пункт меню Lubuntu, добавленный через EasyBCD.

Я также запускал следующие команды:

```
ms-sys --partition /dev/sda2 
ms-sys --ntfs /dev/sda 
```

Однако это не решило проблему. Затем я восстановил GRUB на MBR, загрузился с флешки (Debian) и снова выполнил:

```
grub-install /dev/sda --boot-directory=/media/C0BC-2712 
```

Я проверил пункт GRUB "Microsoft Windows Vista/7/8/8.1/10 BIOS/MBR", но он также не работает. 

Как я могу решить эту проблему с загрузкой Windows и Lubuntu через GRUB?
  • 30 ноября 2024 г. 10:03
Ответы на вопрос 2
Для решения проблемы с мультизагрузкой через GRUB, вам нужно сначала убедиться, что все необходимые компоненты для загрузки Windows и Lubuntu корректно настроены. Рассмотрим шаги для устранения ошибок:

### 1. Исправление конфигурации GRUB

Убедитесь, что вы используете правильный UUID и что файловая система доступна. Обновите конфигурацию GRUB:

1. **Запустите систему с установленным GRUB (возможно, это будет Lubuntu).**
2. Откройте терминал и выполните команду для обновления конфигурации GRUB:
   ```bash
   sudo update-grub
   ```

Эта команда автоматически обнаружит установленные операционные системы и создаст/обновит файл `/boot/grub/grub.cfg`.

### 2. Проверка загрузочного порядка

Убедитесь, что GRUB установлен в MBR и правильно настраивает загрузку. Выполните команду:
```bash
sudo grub-install /dev/sda
```
Это установит GRUB на основной загрузочный раздел (MBR).

### 3. Прямое добавление записи для Windows

Если автоматическое обновление не сработает и Windows по-прежнему не загружается, попробуйте добавить запись для Windows вручную в `/etc/grub.d/40_custom` (или прямо в файл `grub.cfg` для тестирования).

Откройте файл для редактирования:
```bash
sudo nano /etc/grub.d/40_custom
```
Добавьте следующую запись:
```bash
menuentry "Windows 8.1" {
    set root=(hd0,msdos3)
    chainloader +1
}
```
(Убедитесь, что `(hd0,msdos3)` соответствует тому разделу, где установлен Windows.)

После внесения изменений обновите GRUB:
```bash
sudo update-grub
```

### 4. Загрузка Lubuntu

Если Lubuntu не загружается, выполните аналогичные шаги:

1. Проверьте, установлен ли Linux и где находится его корневая файловая система. Обычно она будет в `/dev/sdaX`, где `X` заменяется на номер раздела.
2. Убедитесь, что ядро и `initrd` в конфигурации GRUB указаны правильно.

### 5. Проверка

После выполнения всех шагов перезагрузите компьютер и проверьте, появились ли правильные пункты в меню GRUB для загрузки обеих операционных систем.

### 6. Использование boot-repair

Если все вышеописанные шаги не помогли, вы можете попробовать использовать утилиту `boot-repair`. Она может автоматически исправить общие проблемы загрузки:

1. Установите boot-repair:
   ```bash
   sudo add-apt-repository ppa:yannubuntu/boot-repair
   sudo apt update
   sudo apt install -y boot-repair
   ```
2. Запустите boot-repair:
   ```bash
   boot-repair
   ```

Следуйте указаниям на экране, выбирая «Recommended repair».

### Заключение

Следуя этой инструкции, вы должны успешно настроить мультизагрузку в GRUB для загрузки как Windows, так и Lubuntu. Если возникнут дополнительные сложности, пожалуйста, предоставьте информацию о том, что произошло, чтобы можно было оказать более детальную помощь.
grub-update делал ?? Эта команда аккурат и отвечает за поиск осей и формирование менюшки груба
Похожие вопросы