Как восстановить загрузчик windows после установки linux mint

Содержание статьи:

  • Восстановление Grub
    • ШАГ 1
    • ШАГ 2
    • ШАГ 3
  • Вопросы и ответы: 4

Всем доброго времени!

Эта заметка будет довольно специфична и пригодится только тем, у кого на компьютере установлено несколько версий ОС: Windows, Linux…

Так вот, при переустановке (обновлении) одной из ОС (обычно, так делает Windows) — может затереться загрузчик Grub, и при включении ПК более не будет появляться «черного» меню с предложением выбрать какую систему загружать… 👀

Разумеется, чтобы не переустанавливать ОС (и не настраивать всё заново) — лучше просто восстановить сам этот загрузчик. Как правило, для этого достаточно загрузиться с LiveCD (👉 Linux Mint, Elementary OS, Ubuntu и пр.), смонтировать корневой раздел Linux и ввести спец. команды для восстановления…

Однако, «ручная» работа через терминал имеет «тонкости» (и не всегда выполняется просто). Поэтому здесь хочу предложить гораздо более легкий вариант! 👌

*

Восстановление Grub

ШАГ 1

Для начала нам нужно подготовить загрузочную флешку (LiveCD) c одним из дистрибутивов Linux. Скорее всего она у вас должна быть!

(Если у вас одна из «разновидностей» Ubuntu — я бы порекомендовал использовать образ 👉 с Linux Mint — т.к. в нем уже предустановлена нужная утилита // Boot Repair).

На всякий случай здесь приведу несколько ссылок в помощь:

1) Как создать загрузочную флешку с Linux;

2) Как загрузиться с USB-флешки или внешнего HDD.

Будем считать, что загрузиться с подготовленной флешки у вас получилось… 👌

*

ШАГ 2

Далее (после загрузки с LiveCD с Linux) нам понадобиться установить утилиту Boot Repair (если у вас последняя версия Linux Mint — то она встроена, и чтобы ее запустить — откройте меню «Пуск / Administration / Boot Repair»).

После можно переходить к ШАГУ 3 (для тех, у кого нет встроенной Boot Repair — чуть ниже я покажу как ее установить).

Linux Mint — Boot Repair

Linux Mint — Boot Repair

Для инсталляции Boot Repair сначала проверьте, что у вас есть подключение к Интернет.

Далее необходимо открыть терминал (обычно, для этого используют сочетания Ctrl+Alt+T или Win+T) и ввести поочередно следующие три команды (после каждой нажимать Enter!).

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair

Xubuntu — устанавливаем Boot Repair

Xubuntu (для примера) — устанавливаем Boot Repair

После в меню «Пуск» должна появиться ссылка на нашу утилиту (обратите внимание, что на русском она называется как «Восстановление загрузки»… 👇). Кстати, запустить Boot Repair можно и из консоли. Команда:

boot-repair

ПУСК — восстановление загрузки (Boot Repair)

ПУСК — восстановление загрузки (Boot Repair)

*

ШАГ 3

1) В большинстве случаев утилита Boot Repair справляется с восстановлением Grub в автоматическом режиме. Поэтому порекомендую вам сразу же нажать на первый пункт «Recommended Repair». Пару скринов ниже. 👇

Boot Repair (на английском)

Boot Repair (на английском)

Рекомендуемый способ восстановления

Рекомендуемый способ восстановления (русская версия)

2) Как правило, на весь процесс требуется 1-2 мин. 👇

Процесс пошел!

Процесс пошел!

3) Если всё прошло успешно — увидите окно об успешном восстановлении Grub. Теперь можно выключить ПК (ноутбук), вынуть из USB-порта флешку с LiveCD и проверить как загружается устройство: появляется ли меню Grub?.. 👌

Загрузка успешно восстановлена

Загрузка успешно восстановлена

GNU Grub version 2.04 — все заработало!

GNU Grub version 2.04 — все заработало!

4) Кстати, иногда утилита Boot Repair может попросить вас выполнить ряд команд в терминале (сочетание клавиш для его запуска: Ctrl+Alt+T или Win+T).

Сами команды, разумеется, утилита приводит в своем окне. После их выполнения — нажмите на кнопку «Forward» (если вы не выполнили команды — утилита снова покажет текущее окно). Ничего «опасного» и удаляющего данные с домашних разделов диска —в них быть не должно!

Эти команды нужно будет ввести вручную в терминал (и нажать Enter)

Эти команды нужно будет ввести вручную в терминал (и нажать Enter)

PS

Кстати, у Boot Repair есть расширенные настройки, в которых можно вручную задать ряд параметров. Если вы слабо представляете «что, где и как…» — то лучше это меню не трогать (во избежание лишних проблем…).

*

Другие простые решения, — само собой, приветствуются!

На сим пока всё, удачи!

👋


Рейтинг 4.66/163:

0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

01.04.2019, 16:53. Показов 32451. Ответов 12


Привет возможно тема уже поднималась, но я не нашел точного сходства и не хочется запороть то что щас уже работает.
На компе был установлен windows 10 я не помню в UEFI или нет.
Рядом поставил Linux mint 19.1 с загрузочником в /boot/efi

Таблица разделов прикрепил к теме.

Подскажите как в моем случае восстановить загрузку windows 10 с возможностью выбора системы при старте.

Миниатюры

 

 



0



Андрей1224

8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

01.04.2019, 19:14

Ну Linux Вы установили не рядом, а на другой диск.
Возможны варианты решения.

1. Загрузиться с установочного диска или флешки Linux. Смонтировать раздел FAT32 например в /mnt.

Code
1
sudo mount /dev/sda1 /mnt

и посмотреть есть ли на этом разделе папка Microsoft. Если есть, то Windows вероятно установлена в UEFI режиме (вероятно потому, что папка могла остаться от предыдущих установок), если нет, то в Legacy\CSM. Размонтировать раздел

Code
1
sudo umount /dev/sda1

2. Если папка Microsoft есть, то зайти в UEFI-BIOS и в разделе Boot поискать Windows Boot Manager. Это запись для загрузки Windows, через её можно пробовать загрузить Винду (можно через Boot menu F12 или другая клавиша).
3. Если папки Microsoft нет, то в Gparted поставить флаг boot на /dev/sdb1, перезагрузиться и выбрать загрузку с диска 1 ТБ. Посмотреть загрузится ли Windows, о результатах отписаться и по результатам будут дальнейшие действия.



0



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

01.04.2019, 21:25

 [ТС]

Андрей1224,

На sdа1 папки Windows нет.

В Gparted поставил флаг boot на /dev/sdb1 перезагрузился выбирал разные варианты загрузок. Получил надпись An operating system wasn’t found ….

Добавил еще фото биоса Загружается только если там выбрать [ubuntu..

Миниатюры

 

 



0



Андрей1224

8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

02.04.2019, 09:48

kuznets,
Загрузитесь с установочного диска или флешки Win 10, на клавиатуре Shift+F10, в ком.строке введите diskpart и команды

Code
1
2
list vol -  посмотрите какую букву имеет раздел с Виндой (Win установлена на разделе 129 ГБ если правильно понимаю), буква скорей всего будет С: 
exit

Diskpart завершит работу ком.строка останется открытой, в ней выполнить

Code
1
bcdboot c:\windows /s c: /f BIOS

Если вдруг раздел с Windows будет иметь другую букву, то подставьте эту букву вместо с:. Должно будет появится сообщение, что файлы загрузки созданы. (/dev/sdb1 обязательно должен иметь флаг boot) Перезагружаетесь и выбираете загрузку с диска 1 ТБ, должна будет загрузиться 10-ка. Для загрузки Linux нужно выбрать загрузку со строки Ubuntu.

Вообще странно, не понятно, как у Вас грузилась 10-ка раньше, возможно её загрузчик был на SSD.
10-ка какой разрядности?



0



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

02.04.2019, 15:55

 [ТС]

Сообщение от Андрей1224

Вообще странно, не понятно, как у Вас грузилась 10-ка раньше, возможно её загрузчик был на SSD.
10-ка какой разрядности?

Раньше стоял Mint 19 с grub и мне вылезало окно загрузочника при старте. Но помню сначала ставил минт, а потом виндовс.
10-а х64

А виндовс загрузочный диск подойдет любая 10-а или именно та с которой устанавливалась?



0



8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

02.04.2019, 16:05

Сообщение от kuznets

А виндовс загрузочный диск подойдет любая 10-а или именно та с которой устанавливалась?

Любая Windows начиная с Win 8 и подойдёт даже Live CD\USB типа Sergei Strelec или AdminPE (в них открыть ком.строку и сделать предложенное выше), возможно такие Live CD\USB у Вас есть.

Если десятка x64, то будет шанс организовать загрузку систем через GRUB (после того, как восстановите загрузку 10-ки с жесткого диска).



0



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

02.04.2019, 17:50

 [ТС]

Все прошло хорошо, теперь виндовс загружается, но загрузку надо выбирать в БИОС.
Как теперь сделать что бы можно было выбирать систему при загрузке компьютера?



0



Андрей1224

8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

02.04.2019, 19:13

1. Загрузиться в 10-ку, открыть ком.строку от имени администратора, ввести diskpart и следующие команды

Кликните здесь для просмотра всего текста

Code
1
2
3
4
5
6
list disk
sel disk X   - где Х это номер диска на котором находится раздел EFI
list part
sel part N   - где N это номер раздела EFI. Ориентироваться по размеру и/или по файловой системе
assign letter=m      - появится сообщение, что буква назначена
exit

Diskpart завершит работу, ком.строка останется открытой, в ней ввести

Code
1
bcdboot c:\windows /s m: /l ru-ru /f UEFI

Команду можно скопировать и вставить в ком.строку (на всякий пожарный, перед ru-ru буква L). Должно будет появится сообщение, что файлы загрузки созданы.

2. Перезагрузиться, зайти в BIOS и поставить Ubuntu на первое место в загрузке.
3. Загрузиться в Ubuntu и обновить GRUB. В GRUB должна будет появиться Винда.



0



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

03.04.2019, 14:26

 [ТС]

Сообщение от Андрей1224

sel disk X — где Х это номер диска на котором находится раздел EFI

Это который помечен как Gpt? Он же диск С куда установлен windows?
Так то /boot/efi был на другом жестком диске который не видит windows.

Миниатюры

 



0



8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

03.04.2019, 15:20

Сообщение от kuznets

Это который помечен как Gpt?

Да.

Сообщение от kuznets

Он же диск С куда установлен windows?

Нет. У Вас разве Windows установлена на GPT диске?



0



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

03.04.2019, 17:15

 [ТС]

Сообщение от Андрей1224

Нет. У Вас разве Windows установлена на GPT диске?

Я видимо запутался.
list disk показывает физические диски, в данном случае disk 0 == ssd на 120gb и disk 1 == hdd на 1tb?



0



Андрей1224

8584 / 3083 / 523

Регистрация: 14.04.2011

Сообщений: 7,732

03.04.2019, 18:50

Сообщение было отмечено Marinero как решение

Решение

Ориентируясь на Ваш скрин из поста №9, конкретно в Вашем случае, команды будут такие

Кликните здесь для просмотра всего текста

Code
1
2
3
4
5
6
list disk
sel disk 0
list part
sel part 1
assign letter=m     
exit



1



0 / 0 / 0

Регистрация: 22.11.2013

Сообщений: 79

08.04.2019, 10:47

 [ТС]

Андрей1224, Спасибо все получилось



0



inter-admin

Эксперт

29715 / 6470 / 2152

Регистрация: 06.03.2009

Сообщений: 28,500

Блог

08.04.2019, 10:47

Помогаю со студенческими работами здесь

Linux Mint — после установки — нужен совет
Добрый вечер.
Установил систему, появилось несколько вопросов.
1) В браузерах (Firefox, Chrome) — видно, как в играх -…

Linux Mint не найден после установки с флешки
Успешно установил linux mint 18.3 64-bit cinnamon, написано что нужно перезагрузить,
перезагружаю с вставленной флешкой, у меня…

Не могу войти в linux mint после установки Eclipse
После установки Eclips при перезагрузке обнаружил , что невойти в linuxe mint ,появляется надпись
что MDR неможет записать в ваш…

Где найти файлы, исчезнувшие после установки Linux Mint 17
Доброе время суток господа линуксоиды. Возникла такая проблема. Стояла система Windows XP, но по надобности поставил Linux Mint 17. Вроде…

Восстановить данные с HDD после установки Linux
Добрый день!
Помогите пожалуйста: подскажите как скопировать данные с HDD ? На компьютере один винт на 500 ГБ. Два раздела: С (с виндовс…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

13

Новые блоги и статьи

Все статьи  

Все блоги / 

Реализация DI в PHP

Jason-Webb 13.05.2025

Когда я начинал писать свой первый крупный PHP-проект, моя архитектура напоминала запутаный клубок спагетти. Классы создавали другие классы внутри себя, зависимости жостко прописывались в коде, а о. . .

Обработка изображений в реальном времени на C# с OpenCV

stackOverflow 13.05.2025

Объединение библиотеки компьютерного зрения OpenCV с современным языком программирования C# создаёт симбиоз, который открывает доступ к впечатляющему набору возможностей. Ключевое преимущество этого. . .

POCO, ACE, Loki и другие продвинутые C++ библиотеки

NullReferenced 13.05.2025

В C++ разработки существует такое обилие библиотек, что порой кажется, будто ты заблудился в дремучем лесу. И среди этого многообразия POCO (Portable Components) – как маяк для тех, кто ищет. . .

Паттерны проектирования GoF на C#

UnmanagedCoder 13.05.2025

Вы наверняка сталкивались с ситуациями, когда код разрастается до неприличных размеров, а его поддержка становится настоящим испытанием. Именно в такие моменты на помощь приходят паттерны Gang of. . .

Создаем CLI приложение на Python с Prompt Toolkit

py-thonny 13.05.2025

Современные командные интерфейсы давно перестали быть черно-белыми текстовыми программами, которые многие помнят по старым операционным системам. CLI сегодня – это мощные, интуитивные и даже. . .

Конвейеры ETL с Apache Airflow и Python

AI_Generated 13.05.2025

ETL-конвейеры – это набор процессов, отвечающих за извлечение данных из различных источников (Extract), их преобразование в нужный формат (Transform) и загрузку в целевое хранилище (Load). . . .

Выполнение асинхронных задач в Python с asyncio

py-thonny 12.05.2025

Современный мир программирования похож на оживлённый мегаполис – тысячи процессов одновременно требуют внимания, ресурсов и времени. В этих джунглях операций возникают ситуации, когда программа. . .

Работа с gRPC сервисами на C#

UnmanagedCoder 12.05.2025

gRPC (Google Remote Procedure Call) — открытый высокопроизводительный RPC-фреймворк, изначально разработанный компанией Google. Он отличается от традиционых REST-сервисов как минимум тем, что. . .

CQRS (Command Query Responsibility Segregation) на Java

Javaican 12.05.2025

CQRS — Command Query Responsibility Segregation, или разделение ответственности команд и запросов. Суть этого архитектурного паттерна проста: операции чтения данных (запросы) отделяются от операций. . .

Шаблоны и приёмы реализации DDD на C#

stackOverflow 12.05.2025

Когда я впервые погрузился в мир Domain-Driven Design, мне показалось, что это очередная модная методология, которая скоро канет в лету. Однако годы практики убедили меня в обратном. DDD — не просто. . .

Наверх

System => Settings => Keyboard,

Вторая вкладка, выбираешь add или что там, добавляешь русскую клавиатуру, если ещё нет, потом выбираешь Settings на той же вкладке (под моделью), там ищешь что-нибудь в стиле combination to change keymap, выбираешь нужную. Если всё и так по русски, то Система=>Параметры=>Параметры клавиатуры=>Раскладки там Добавить, добавляешь, потом в той же вкладке Параметры, идешь туда, там — Клавиша для смены раскладки, там выбираешь.

А по теме, sudo update-grub, потом если не работает сюда вывод консоли.

lmtea
()

  • Ссылка

Восстановление GRUB

В данной статье рассматривается процесс восстановления загрузчика GRUB 2.

Причины, по которым может понадобится восстановить GRUB, могут быть разными.

Очень часто требуется восстанавливать GRUB после установки Windows. Если у вас был установлен Linux и вы установили в соседний раздел или на соседний диск Windows, то после перезагрузки компьютера загрузится Windows, как будто Linux вообще пропал. Загрузчик GRUB даже не появился. Иногда подобное происходит при обновлении существующего Windows.

Иногда требуется восстановление GRUB после установки Linux, когда неверно был выбран раздел для установки загрузчика.

Во всех случаях нужно выполнить восстановление загрузчика GRUB. Существуют разные способы восстановления. В данном руководстве рассматривается процесс использованием загрузочного Live-образа Linux. Загрузившись в Live-систему вам нужно будет ввести несколько команд, чтобы выполнить восстановление. Рассматривается способ восстановления без использования сторонних программ.

Также иногда различают процесс восстановления для систем с BIOS и с UEFI. Описанный ниже способ рассматривает оба этих случая. Я тестировал его как на компьютерах с традиционным BIOS, так и с UEFI.

Подготовка

Для восстановления GRUB потребуется загрузочный диск или флешка с дистрибутивом Linux. Если у вас его нет, то нужно скачать образ с дистрибутивом. Например, можно скачать ISO образ Ubuntu.

Для создания загрузочной флешки можно воспользоваться программой Etcher. Она работает в Linux, Windows и MacOS. Подробная инструкция: Как создать загрузочную флешку.

Загрузка в Live-режиме

Теперь нужно загрузиться с созданного диска или флешки.

Чтобы это сделать сначала нужно в BIOS выбрать приоритет загрузки с CD/DVD или с USB (если вы используете флешку).

На современных компьютерах, где используется BIOS/UEFI, для входа в BIOS нужно при включении компьютера удерживать специальную клавишу. У разных производителей клавиша может быть разной. Обычно это: F2, Del, F10, Esc, F11 или F3.

На старых компьютерах, где используется классический BIOS, чтобы войти в BIOS нужно при загрузке компьютера, в самом начале, когда появляется логотип материнской платы, нажать специальную клавишу. Для разных материнских плат клавиша может быть разной. Обычно это одна из клавиш: Del, F1, F2, F8, F10 или какая-нибудь другая, или даже сочетание клавиш. Подробности: Настройка BIOS для загрузки с CD/DVD-диска или с USB-носителя

Открываем терминал

Итак, вы загрузились в Live-режиме. Теперь нужно открыть терминал.

В Ubuntu и некоторых других дистрибутивах это можно сделать нажатием сочетания клавиш Ctrl+Alt+T. Или запустить терминал через меню программ.

Определение разделов

Теперь нужно определить раздел диска, на котором был установлен GRUB.

Выведем список разделов, для этого выполняем команду (в конце команды стоит строчная буква L):

sudo fdisk -l

Вывод fdisk для BIOS

Пример вывода команды:

Восстановление GRUB. fdisk l

В моем случае мы видим 2 диска: /dev/sda (SSD диск) и /dev/sdb (флешка, с которой сейчас загружена Live-система).

Нас интересует диск /dev/sda. На диске /dev/sda создано несколько разделов. В моем случае /dev/sda4, на котором установлен Windows, а также 4 раздела с пометкой Linux (см. последний столбец таблицы). У вас скорее всего может быть один раздел Linux (корневой раздел) или два раздела (корневой и home). На одном из этих разделов установлен GRUB.

То есть из таблицы вы должны определить какой раздел является корневым, на нем скорее всего у вас установлен GRUB. В моем случае GRUB установлен в раздел /dev/sda2. Далее по тексту я буду его использовать (вы должны будете указывать свой раздел).

Иногда бывает, что для загрузчика GRUB выделен отдельный раздел (он называется boot-раздел). Если это так, то на следующем шаге вам нужно будет примонтировать корневой раздел и раздел с загрузчиком.

Вывод fdisk для UEFI

Для новых компьютеров с UEFI вывод команды fdisk -l может быть примерно следующим:

Fdisk l для UEFI

Нам нужно определить, на каком разделе установлен Linux (корневой раздел), а также определить EFI-раздел. В моем случае это разделы: /dev/nvme0n1p5 и /dev/nvme0n1p1, которые расположены на диске /dev/nvme0n1.

Монтирование разделов

Примонтируем корневой раздел. Выполняем команду (вместо /dev/sda2 вы должны указать свой раздел):

sudo mount /dev/sda2 /mnt

Мы примонтировали раздел /dev/sda2 в директорию /mnt.

Восстановление GRUB. Монтирование корневого раздела

Если для загрузчика у вас выделен отдельный раздел, то нужно примонтировать еще и его (вместо /dev/sdX укажите ваш boot-раздел):

sudo mount /dev/sdX /mnt/boot

Теперь можно посмотреть содержимое директории /mnt, чтобы убедиться, что мы примонтировали верный раздел:

ls /mnt

Вывод команды должен быть примерно следующим. Обратите внимание есть ли в этом списке каталог /boot, так как именно в нем установлен GRUB.

Восстановление GRUB. Список файлов

Также можно проверить, что директория boot не пустая:

ls /mnt/boot

У меня вывод команды выглядит следующим образом. Обратите внимание на присутствие каталога с именем grub.

Восстановление GRUB. Список файлов в boot

Далее нужно создать ссылки на несколько директорий, к которым GRUB должен иметь доступ для обнаружения всех операционных систем. Для этого выполните команды:

sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Восстановление GRUB. mount bind dev pts proc sys

Монтирование EFI-раздела

Если у вас используется UEFI, то еще нужно примонтировать EFI-раздел в директорию /mnt/boot/efi (выше я указал пример вывода команды fdisk -l в котором показан EFI-раздел):

sudo mount /dev/nvme0n1p1 /mnt/boot/efi

Выполняем chroot на /mnt

На предыдущем шаге мы смонтировали все необходимые директории в директорию /mnt. Теперь переключимся (выполним chroot) на данную директорию. Выполняем команду:

sudo chroot /mnt

Восстановление GRUB. chroot

Генерация файла конфигурации GRUB

Данный шаг нужно выполнять не всем. Если у вас был установлен GRUB и вы уверены, что его конфигурация верная, то можно перейти к следующему шагу.

Для генерации файла конфигурации GRUB используется команда update-grub. Данная команда автоматически определяет файловые системы на вашем компьютере и генерирует новый файл конфигурации. Выполняем команду:

sudo update-grub

В выводе команды будет показано, какие операционные системы были найдены.

Восстановление GRUB. update-grub

Если вдруг утилита update-grub не определила ваш Windows (у меня такое было для UEFI), то можно будет запустить update-grub повторно уже из вашей Linux-системы, когда вы в нее загрузитесь (мне это помогло и Windows определился).

Устанавливаем GRUB

Осталось выполнить установку GRUB на диск. Мы определили раздел на котором у нас установлен GRUB на первом шаге данного руководства. В моем случае это раздел /dev/sda2, который расположен на диске /dev/sda.

Для установки GRUB используется команда grub-install, которой нужно передать в качестве параметра диск, на который будет выполняться установка (в моем случае это диск /dev/sda):

grub-install /dev/sda

Восстановление GRUB. grub-install

Перезагрузка компьютера

Выходим из окружения chroot, для этого выполняем команду:

exit

Отмонтируем все разделы, которые мы примонтировали:

sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev/pts
sudo umount /mnt/dev

Если вы монтировали boot-раздел, то его тоже нужно отмонтировать:

sudo umount /mnt/boot

Если вы монтировали EFI-раздел, отмонтируем:

sudo umount /mnt/boot/efi

Отмонтируем корневой раздел:

sudo umount /mnt

Перезагружаем компьютер. Для этого выполняем команду:

reboot

Если во время перезагрузки компьютера меню GRUB не появилось, то это еще не значит, что он не восстановился. Возможно, просто установлена нулевая задержка и меню не показывается. Чтобы показать меню GRUB нужно во время загрузки, после того, как появился логотип материнской платы:

  • удерживать клавишу Shift, если у вас классический BIOS;
  • нажать Esc, если у вас UEFI.

Если у вас, при выполнении grub-update, не определился Windows и не был добавлен в меню GRUB, то уже загрузившись в вашу систему Linux (не LiveCD), откройте терминал и выполните:

sudo grub-update

Мне это помололо на компьютере, который использует UEFI.

Шпаргалка

Мы рассмотрели процесс восстановления загрузчика GRUB 2. Для удобства привожу краткую шпаргалку по командам, которые мы выполняли. Учитывайте, что названия и имена разделов (/dev/sd…) у вас могут отличаться.

sudo fdisk -l
sudo mount /dev/sda2 /mnt
# sudo mount /dev/sdaX /mnt/boot
# sudo mount /dev/sdaY /mnt/boot/efi
sudo mount --bind /dev /mnt/dev && sudo mount --bind /dev/pts /mnt/dev/pts && sudo mount --bind /proc /mnt/proc && sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
sudo update-grub
grub-install /dev/sda

Как вернуть меню выбора ОС после установки Windows рядом с Linux? Рассказываем о двух способах восстановления загрузчика GRUB — для новичков (с утилитой boot-repair) и для продвинутых пользователей (с помощью chroot).

Поставили Windows рядом с Ubuntu, и теперь можете запустить только ОС от Майкрософт? Рассказываем, как восстановить загрузчик GRUB после установки Windows 10 или 11 — вам хватит 20 минут, даже если вы новичок в администрировании VPS.

Аренда VPS/VDS виртуального сервера от AdminVPS — это прозрачная и честная услуга с доступной ценой

Представьте: вы установили Ubuntu, настроили систему, а потом решили поставить Windows рядом. Но после перезагрузки вместо привычного меню GRUB (grand unified bootloader) вы увидите только загрузчик Windows. Это происходит потому, что Windows не дружит с альтернативными загрузчиками: при установке она перезаписывает главную загрузочную запись (MBR) или заменяет файлы в разделе EFI. И если GRUB, стандартный загрузчик для Linux, может работать с несколькими ОС, то загрузчики NTLDR (Windows 11) и Bootmgr (Windows 10) не умеют. Когда вы ставите Windows после Ubuntu, они просто «не видят» ОС, установленную первой.

Что нужно знать перед восстановлением GRUB

Прежде всего разберёмся с базовыми понятиями — это поможет избежать ошибок и сэкономит время.

UEFI или BIOS

Современные компьютеры используют два типа firmware (микропрограммы для управления железом):

  • BIOS — это устаревший стандарт, загрузчик записывается в первый сектор диска (mbr);
  • UEFI — современная замена BIOS, работает с разделом EFI (fat32), где хранятся файлы загрузчиков в формате .efi.

Чтобы проверить, какой режим на вашем компьютере, зайдите в bios/uefi (нажмите клавишу del, f2 или f12 при запуске). Если в настройках есть пункты Secure Boot, UEFI Mode — значит, у вас используется UEFI.

Или выполните в Linux:

ls /sys/firmware/efi  

Если директория существует — система загрузилась через UEFI.

Live USB с Linux

Чтобы восстановить GRUB, понадобится загрузочная флешка с любым дистрибутивом (Ubuntu, Fedora, Mint).

Как создать Live USB:

  1. Скачайте iso-образ с официального сайта ОС.
  2. Создайте Live USB с помощью специальных программ:
    • Rufus (на Windows) — выберите «GPT для UEFI» или «MBR для BIOS» в зависимости от прошивки вашего компьютера;
    • BalenaEtcher (на Linux/Mac).
  3. Проверьте целостность образа после записи (в некоторых программах есть опция «verify»).

Как восстановить GRUB из-под Windows: два способа

Восстановление через boot-repair (для новичков)

Если вы не хотите работать в терминале, воспользуйтесь утилитой boot-repair. Она автоматизирует 90 % работы.

Шаг 1. Загрузка с Live USB

  1. Вставьте флешку, перезагрузите компьютер.
  2. Нажмите клавишу выбора загрузочного устройства (обычно f12, ESC или f8).
  3. Выберите флешку в меню.

Если у вас UEFI, загружайтесь в режиме UEFI, а не в Legacy! Иначе раздел EFI не будет обнаружен.

Шаг 2. Установка boot-repair

  1. Откройте терминал в Live-системе.
  2. Добавьте репозиторий и установите утилиту (далее все команды выполняются в режиме суперпользователя):
add-apt-repository universe   # добавляйте репозиторий в Ubuntu до версии 22.04
apt update
apt install -y boot-repair  

Шаг 3. Запуск и настройка

  1. Запустите boot-repair:
boot-repair  
  1. Выберите «recommended repair».
  2. Следуйте инструкциям на экране: утилита сама определит установленные ОС, восстановит GRUB и обновит конфигурацию.

Если возникли ошибки:

  • проверьте подключение к Интернету (boot-repair иногда скачивает дополнительные пакеты);
  • убедитесь, что live-система загружена в правильном режиме (uefi/bios).

Ручное восстановление через chroot (для продвинутых пользователей)

Если первый метод не сработал или вы хотите понять процесс изнутри, восстановите GRUB вручную.

Шаг 1. Определение разделов

  1. Загрузитесь с Live USB.
  2. Откройте терминал и узнайте список дисков:
fdisk -l  

или

lsblk -f 

Команда lsblk -f показывает типы файловых систем и точки монтирования.

  1. Пример вывода lsblk:
NAME  FSTYPE LABEL   UUID  MOUNTPOINT
sda    
├─sda1 ntfs Windows ABCD-1234 
├─sda2 ext4 Ubuntu 5678-90AB 
└─ sda3 vfat  ESP CDEF-1234 

Обратите внимание на:

  • корневой раздел Linux (ext4, btrfs и т. д.) — нам нужен именно он;
  • раздел EFI (vfat) — если система на UEFI;
  • раздел подкачки (swap) — не нужен для восстановления.

Шаг 2. Монтирование разделов

  1. Создайте точку монтирования:
mkdir /mnt/Linux  
  1. Примонтируйте корневой каталог с Ubuntu:
mount /dev/sda2 /mnt/Linux  

Для UEFI примонтируйте каталог EFI:

mount /dev/sda3 /mnt/Linux/boot/efi  

Если у вас отдельный раздел /boot, монтируйте его:

mount /dev/sdaX /mnt/Linux/boot  

Шаг 3. Вход в chroot

Chroot (change root) — это команда, которая изменит видимый корневой каталог, чтобы вы вошли в систему из live-окружения.

  1. Привяжите системные директории:
mount --bind /dev /mnt/Linux/dev
mount --bind /proc /mnt/Linux/proc
mount --bind /sys /mnt/Linux/sys  
  1. Войдите в среду chroot:
chroot /mnt/Linux  

Шаг 4. Установка GRUB

  1. Если прошивка BIOS (MBR):
grub-install /dev/sda  # здесь sda — диск, а не раздел
update-grub  
  1. Если прошивка UEFI (GPT), убедитесь, что пакет grub-efi установлен:
apt install grub-efi-amd64

Перед grub-install нужно обновить загрузочный список в efibootmgr, иначе в некоторых UEFI-системах GRUB не будет загружаться:

efibootmgr -c -d /dev/sda -p 1 -L "GRUB" -l "\EFI\GRUB\grubx64.efi"

Здесь -d /dev/sda — диск, -p 1 — номер EFI-раздела (уточните их с помощью lsblk).

Установите GRUB в раздел EFI:

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
  1. Обновите конфигурацию:
update-grub  
  1. После update-grub в выводе должны появиться строки «found Windows» или «found os probe entries».

Шаг 5. Выход и перезагрузка

  1. Выйдите из chroot:
sync  # запись данных
exit 
  1. Отмонтируйте разделы:
sudo umount -R /mnt/Linux
  1. Перезагрузите компьютер.

Возможные проблемы и их решение

Даже если вы всё сделали правильно, могут возникнуть проблемы.

GRUB не видит Windows

Причина: os-prober не активирован (утилита для автоматического обнаружения установленных ОС).

Решение. В /etc/default/grub раскомментируйте строку:

GRUB_DISABLE_OS_PROBER=false  

Установите os-prober:

apt install os-prober  

Обновите загрузчик (update-grub).

Ошибка «grub-install: error: cannot find efi directory»

Причина: неправильно указан путь к разделу EFI.

Решение. Проверьте, примонтирован ли раздел EFI в /boot/efi. Проверьте тип раздела: он должен быть vfat (FAT32).

Загрузчик установился, но система не загружается

Причина: неверный порядок загрузки в uefi/bios или повреждённые файлы GRUB. Также включённый Secure Boot может блокировать работу GRUB.

Решение. Зайдите в настройки UEFI/BIOS и выберите GRUB в качестве первого загрузочного устройства. Отключите Secure Boot в UEFI. Если это не помогло — переустановите GRUB через chroot.

Как избежать проблем в будущем

  • Если планируете устанавливать две операционные системы, то сначала установите Windows, потом Linux.
  • Создайте резервную копию EFI/MBR.

Для BIOS:

dd if=/dev/sda of=backup.mbr bs=512 count=1  

Для UEFI — просто скопируйте содержимое раздела EFI в место для хранения.

  • Создайте отдельный раздел EFI для Linux. Это минимизирует конфликты с Windows.

Заключение

Восстановить загрузчик GRUB после установки Windows — задача, которая кажется сложной только на первый взгляд. Даже если вы новичок, boot-repair справится за пару кликов. Для тех, кто хочет глубже разобраться в процессе, подойдёт ручной способ через chroot.

Наши технические специалисты помогут вам определиться с конфигурацией и настроят ваш VPN-сервер под ключ, если это будет необходимо.

Читайте в блоге:

  • Как поменять TTL для раздачи Интернета: настройка Default TTL и изменение значения на 64 или 65
  • Что такое директория в Linux
  • Как сменить владельца папки и изменить права доступа в Linux

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Служба rpc windows 10 realtek high definition audio
  • Windows script host ошибка не удается найти указанный файл
  • Windows 10 lite x64 torrent
  • Кастомный интерфейс windows 10
  • Pip install pygame windows как установить