Моя главная цель — двойная загрузка Linux Mint и Windows 10. На материнской плате установлена только устаревшая версия BIOS.
Сначала я установил Linux Mint, а затем Windows 10 на вторичный раздел.
Поскольку я забыл сделать отдельный загрузочный раздел... Я переместил все 1000 МБ вправо и создал загрузочный раздел ext4 в начале sda.
Запуск восстановления загрузки на live Ubuntu USB с параметрами:
- Отдельный раздел /boot: sda4 (первый раздел на диске)
- GRUB Legacy (я так понял, это для устаревших BIOS)
- Переустановить GRUB (по умолчанию)
- Показать меню загрузки: 10 с (по умолчанию)
Восстановление загрузки зависает наPurge kernels then reinstall last kernel sda1 (ins). This may require several minuets...
Я оставил это работать на ночь, процесс все еще работает. Я сделал перезагрузку и попробовал снова, оставил процесс работать на 3 дня. Ничего не изменилось.
Сводка информации о загрузке:http://paste.ubuntu.com/17678629/
В то же время я открыл gparted, предполагая, что это не окажет влияния.
решение1
У меня сегодня была точно такая же проблема. Покопавшись в boot-repair
журналах инструментов, я нашел эту ошибку:
gui-actions-purge.sh: line 441: ${APTTYP[$USRPART]} ${INSTALLTYP[$USRPART]} ${YESTYP[$USRPART]} linux${$KERNELTOREINST}-generic linux-headers-generic: bad substitution
Журналы хранятся в \var\log\boot-sav\log\YYYY-MM-DD__HHhMMboot-repairXX\boot-repair.log
файле.
Пакет linux${$KERNELTOREINST}-generic
не выглядит как допустимый пакет. Вероятно, он должен быть просто linux-generic
.
Поэтому я изменил \usr\share\boot-sav\gui-actions-purge.sh
, заменив строку 441
:
local COMMAND="${APTTYP[$USRPART]} ${INSTALLTYP[$USRPART]} ${YESTYP[$USRPART]} linux${$KERNELTOREINST}-generic linux-headers-generic"
с:
local COMMAND="${APTTYP[$USRPART]} ${INSTALLTYP[$USRPART]} ${YESTYP[$USRPART]} linux-generic linux-headers-generic"
и перезапустить boot-repair
из меню панели задач.
Это сработало нормально и исправило мои проблемы с загрузкой, восстановив grub на моем клонированном диске.
Краткое руководство
- Загрузитесь
Boot-Repair
как обычно, но закройте автоматически запущенныйboot-repair
инструмент - Открыть терминал из меню панели задач
- Введите
sudo su -
, чтобы получить root shell - Тип
leafpad &
- Откроется текстовый редактор. Откройте
\usr\share\boot-sav\gui-actions-purge.sh
файл с его помощью. Находить
local COMMAND="${APTTYP[$USRPART]} ${INSTALLTYP[$USRPART]} ${YESTYP[$USRPART]} linux${$KERNELTOREINST}-generic linux-headers-generic"
Заменить:
local COMMAND="${APTTYP[$USRPART]} ${INSTALLTYP[$USRPART]} ${YESTYP[$USRPART]} linux-generic linux-headers-generic"
- Сохранить файл, закрыть
Leafpad
- Оставьте root-терминал открытым, он вам понадобится позже, так как
boot-repair
вам будет предложено выполнить некоторые команды. - Запустите
boot-repair
из меню панели задач и следуйте инструкциям.
решение2
Мой общий подход к решению этих проблем — визуализировать затронутые диски, а затем просто начать все заново.
Я знаю, что это не имеет технической ценности, но тем не менее мой совет.