Не запускается grub после установки windows

Если вы используете на своем компьютере две операционные системы, Windows и Linux, и обновили свою Windows из 7, 8 или 8.1 до самой новой Windows 10, могут возникнуть проблемы с загрузчиком Grub при использовании защищенной загрузки UEFI.  Во время обновления Windows 10 просто затрет загрузчик Grub и запишет туда свой.

Вы, как обычно, перезагружаете систему и ожидаете увидеть меню выбора операционной системы Grub, но вместо этого загружается новая Windows 10. Вам может показаться, что нет никакого способа получить доступ к Ubuntu или что не может работать Ubuntu рядом с Windows 10. Но это не так.

Многие советуют установить Ubuntu на другой диск, но есть более простое и прекрасно работающие решение, чтобы восстановить grub после установки windows 10. Кончено, всегда можно восстановить grub2 стандартным способом, с помощью LiveCD диска, но если вы используете UEFI, есть более легкое решение, мы сделаем все с помощью Windows 10.

Хотя за основу в этой статье берется Ubuntu, но это также будет работать и для других дистрибутивов. Просто папка, в которой находятся файлы загрузчика будет немного отличатся.

Шаг 1. Запуск cmd

Кликните по иконке поиск в Windows, наберите там cmd и найдите Командную строку Windows. Кликните по ней правой кнопкой и выберите Запустить от имени администратора:

Шаг 2. Подключение раздела EFI

Далее вы можете попытаться угадать как называется файл загрузчика Grub на разделе EFI, но можно поступить по другому и просто посмотреть. Чтобы подключить раздел EFI запустите diskpart. Для этого выполните:

diskpart

Затем выведите список доступных дисков:

list disk

Выберите в качестве активного диск, на который установлена Windows 10 и на котором сейчас находится раздел EFI:

sel disk 0

Далее выведите список разделов на диске:

list vol

Найдите раздел EFI, он обычно отформатирован в файловую систему FAT и занимает около 100 мегабайт места. В данном случае это том 2:

Этому разделу надо присвоить букву. Для этого выполните:

sel vol 2
assign letter=I:

Шаг 3. Поиск загрузчика

Далее надо найти файл загрузчика на разделе EFI. Но открыть этот раздел в проводнике вы не сможете, надо использовать только командную строку. Закройте DiskPart и выполните:

cd /d I:

Затем с помощью команды dir найдите загрузчик Grub. Например:

dir EFI\Ubuntu

Здесь есть файл grubx64.efi. Это он. Загрузчик может называться по другому в других дистрибутивах, именно поэтому я рассказал как всё посмотреть.

Шаг 4. Восстановление Grub

Скопируйте и выполните эту команду:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

Вам не нужно будет вводить пароль, у вас уже есть права администратора и программа должна отработать нормально. Эта команда обратно запишет вместо загрузчика Windows 10 загрузчик Grub.

Если команда вернула ошибку, вы можете откатить изменения с помощью следующих команд:

bcdedit /deletevalue {bootmgr} path \EFI\ubuntu\grubx64.efi

bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi

Выводы

Восстановление Grub после Windows 10 завершено. Перезапустите компьютер и вы увидите на экране знакомый Grub. Надеюсь, эта краткая инструкция помогла вам выполнить восстановление Grub после установки Windows 10.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

Если вы пользуетесь на компьютере двумя операционными системами, Windows и Linux, и обновили свою Windows из 7, 8 или 8.1 до самой новой Windows 10, могут возникнуть проблемы с загрузчиком Grub при использовании защищенной загрузки UEFI. В ходе обновления системы Windows 10 просто затрет загрузчик Grub и запишет туда свой.

Дальше после перезагрузки системы пользователь ожидает увидеть меню выбора операционной системы Grub, но вместо этого загружается новая Windows 10. Может показаться, что нет никакого способа получить доступ к Ubuntu или что не может работать Ubuntu рядом с Windows 10. Но это не так.

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

Часто специалисты советуют установить Ubuntu на другой диск, но есть простое решение. Всегда можно воспользоваться стандартным способом, например, с помощью LiveCD диска. Но если вы используете UEFI, есть решение с помощью Windows 10.

ЗАПУСК CMD

Для начала кликните по иконке поиск в Windows, наберите там cmd и найдите Командную строку Windows. Кликните по ней правой кнопкой и выберите Запустить от имени администратора:

Cmd запуск

ПОДКЛЮЧЕНИЕ РАЗДЕЛА EFI

Далее вы можете попытаться угадать как называется файл загрузчика Grub на разделе EFI, но можно поступить по другому и просто посмотреть. Чтобы подключить раздел EFI запустите diskpart. Для этого выполните:

$ diskpart

Затем выведите список доступных дисков:

$ list disk

Выберите в качестве активного диск, на который установлена Windows 10 и на котором сейчас находится раздел EFI:

$ sel disk 0

Как восстановить Grub после установки Windows

Выведите список разделов на диске:

$ list vol

Найдите раздел EFI, он обычно отформатирован в файловую систему FAT и занимает около 100 мегабайт места. В данном случае это том 2:

Как восстановить Grub после установки Windows

Этому разделу надо присвоить букву. Для этого выполните:

$ sel vol 2
$ assign letter=I:

Как восстановить Grub после установки Windows

ПОИСК ЗАГРУЗЧИКА

Теперь необходимо найти файл загрузчика на разделе EFI. Но открыть этот раздел в проводникель нельзя, надо использовать только командную строку. Закройте DiskPart и выполните:

$ cd /d I:

Затем с помощью команды dir найдите загрузчик Grub. Например:

$ dir EFIUbuntu

Как восстановить Grub после установки Windows

Здесь есть файл grubx64.efi. Это он. Загрузчик может называться по другому в других дистрибутивах, именно поэтому я рассказал как всё посмотреть.

ВОССТАНОВЛЕНИЕ GRUB

Теперь скопируйте и выполните эту команду:

bcdedit /set {bootmgr} path EFIubuntugrubx64.efi

Не придется вводить пароль, если есть права администратора и программа должна отработать нормально. Эта команда обратно запишет вместо загрузчика Windows 10 загрузчик Grub.

Если команда вернула ошибку, вы можете откатить изменения такой командой:

$ bcdedit /deletevalue {bootmgr} path EFIubuntugrubx64.efi

Затем можно включить загрузчку загузчика Windows 10:

$ bcdedit /set {bootmgr} path EFIMicrosoftBootootmgfw.efi

Перезапустите компьютер и вы увидите на экране знакомый Grub. На этом процесс восстановиления Grub завершен.

Если на вашем ПК установлено несколько операционных систем и вы пользуетесь мульти-загрузчиком для их выбора и запуска (к примеру GRUB), может случиться такая неприятность, что после очередного обновления Windows (в особенности Windows 11) вы лишитесь возможности мультизагрузки. Windows сама решит за вас, никак не оповестив вашу персону, что «чужой» загрузчик это зло, и просто снесёт его, заменив на свой монопольный. Зачем вам несколько ОС, если у вас есть Windows (сарказм).

Конечно, такое поведение сервиса обновления Windows мягко говоря неожидаемо и бесцеремонно (особенно при условии, что вы не можете его выключить), но надо как-то с этим жить, благо, что мы можем восстановить наш GRUB загрузчик. Об этом и поговорим, на примере восстановления мультизагрузчика для Linux Mint с UEFI.

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

Восстанавливаем GRUB загрузчик

Шаг 1: Подготавливаем и грузимся с LiveUSB/DVD

Как подготовить загрузочный носитель можно прочитать непосредственно у первоисточника: Создание загрузочного носителя. После подготовки загружаемся в ОС Linux Mint.

ВАЖНО! На этом моменте, после загрузки Live версии ОС, у вас есть возможность подмонтировать раздел Linux с вашими данными и выполнить их резервное копирование, если в этом есть необходимость. Далее, мы будем работать с разделами диска, и некорректные действия с ними могут повредить ваши данные.

Шаг 2: Определяем, где у нас находится раздел (efi), а где раздел системы (ext4)

Запускаем утилиту fdisk, чтобы посмотреть все разделы на дисках:


sudo fdisk -l

Получаем к примеру вот такой вывод:

Результат вывода fidsk с одним диском

В моём примере используется ПК с одним SSD диском на NVMe интерфейсе и в системе он именуется как /dev/nvme0n1. У вас может быть несколько дисков, и fdisk выдаст данные по каждому из них, здесь придётся определиться какой из них загрузочный, на нём будет стоять звёздочка (*) в колонке Boot. И именно он нам интересен. Кроме того, он может оказаться SSD или HDD диском на SATA интерфейсе, тогда система поименует его как /dev/sdа (или /dev/sdb и т.д.). В качестве примера, может быть вот такой вывод:

Результат вывода fidsk с несколькими дисками

Возвращаемся к первому примеру вывода. Здесь нам важно понять, что раздел EFI имеет тип EFI (подчёркнуто красным в колонке Type) и он именуется как /dev/nvme0n1p1 (так-же подчеркнуто красным). А раздел системы имеет тип Linux filesystem и именуется как /dev/nvme0n1p5 (так-же всё подчёркнуто красным). С разделами определились, двигаемся дальше.

Шаг 3: Монтируем найденные разделы


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

Шаг 4: Инсталируем GRUB из подготовленных директорий


sudo grub-install --boot-directory=/mnt/boot --bootloader-id=ubuntu --target=x86_64-efi --efi-directory=/mnt/boot/efi

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


sudo grub-update

image

Часа в 2 ночи мне написала подруга с просьбой одолжить ей нетбук на пару дней. Я,

конечно

, согласился, после чего она попросила меня поставить на него Windows с определенным софтом. Недолго думая, я накатил винду, совершенно забыв, что на нетбуке стояла Ubuntu 13.04. И все бы ничего, да вдруг вспомнил, что забыл на разделе убунты пару нужных мне файлов. Тут все и началось.

Предыстория

Ни для кого не секрет, что Windows при установке ставит свой загрузчик, не видя рядом стоящих систем. Когда я об этом вспомнил, на меня уже смотрел чистый рабочий стол Windows. Здесь был логичный выход из положения-скачать образ любого Linux-дистрибутива и запустить его в liveUSB, после чего обновить GRUB, но мне было слишком лень качать образ и записывать его на флешку. Поэтому я пошел более трудным путем. При установке Ubuntu диск был абсолютно чистым. Предвидя, что Windows рано или поздно вернется на нетбук я оставил часть диска неразмеченной. Обычно, я всегда создавал один раздел для » / » (hd0,0 в будущем) и swap (hd0,2), но в этот раз я решил поэкспериментировать и создал еще один раздел для » /home » (hd0,1).Спустя некоторое время была установлена Windows (hd0,3)

Запуск ядра

Я вспомнил, что есть программа EasyBCD, позволяющая создать свое меню загрузки. Получив некоммерческую копию программы я сделал свое меню и перезагрузился в надежде, что тут же вернусь в Ubuntu, но, как говорится, «не тут-то было». Какие бы параметры для раздела (hd0,0) я не ставил, он либо зависал, либо «падал» в grub4dos. Он-то мне и помог. Тщетно я пытался набирать

root (hd0,0)

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

hd(0,0)

перепрыгнул в раздел как в папку. Так как я еще новичок в общении с Linux, мне пришлось поискать, что нужно для запуска ядра, после чего набрал

kernel /vmlinuz
initrd /initrd
boot

и

как по волшебству

ядро запустилось. Но и тут не все так просто.

Initramfs

При запуске меня встретил не GDM Login Manager, а (initramfs) и предложение что-нибудь ввести.

Попытка ввести exit закончилась kernel panic’ом.

Первым делом я попытался примонтировать разделы, после чего сразу выполнил chroot

mkdir /mnt
busybox mount /dev/sda1 /mnt
busybox mount /dev/sda2 /mnt/home
chroot /mnt

«Ура! Осталось просто запустить update-grub!»,-подумал я, но обновление GRUB’а выдало ошибку, он попросту не увидел дисков. Выйдя из chroot, и еще немного поискав решения, я нашел такой флаг команды mount, как bind, который позволяет привязать физические устройства в систему, запущенную из-под chroot.

mkdir /mnt/dev
mount —bind /dev /mnt/dev
chroot /mnt
# update-grub
# exit
reboot

После перезагрузки меня уже ждал GRUB. Загрузившись в убунту еще раз прописал

sudo update-grub

и получил возможность загружаться в Windows.

P.S. Предположу, что местные обитатели смогут и сами выкрутиться из подобной ситуации, поэтому статья ориентирована на тех, кто не особо дружит с Linux, но хочет подружиться, либо на тех, у кого нет второй машины или свободных флешек под рукой.

Использование Windows 10 и Linux на одном компьютере болезненно. Иногда безопасная загрузка UEFI нарушает работу GRUB, а иногда GRUB не может просто загрузить Windows 10. Недавно я обновил Ubuntu до 19.10 Beta с Ubuntu 19.04. Теперь Ubuntu 19.10 поставляется с новой версией GRUB 2.04, в котором, как сообщается, много ошибок. В моем случае GRUB каким-то образом испортил расположение Windows MBR, и теперь я не могу загрузиться в Windows 10. Чтобы исправить ситуацию, я выполнил пару шагов, и вот подробное руководство о том, как исправить Windows 10, не загружающуюся в Linux.

Если вы используете Ubuntu 19.10 Beta, в GRUB 2.04 много ошибок. Было бы лучше перейти на Ubuntu 19.04 или полностью перейти на Windows. Перейдите к этому шагу, чтобы проверить способы изменения загрузчика по умолчанию на Windows NT.

1. Восстановите GRUB.

Иногда GRUB не может найти MBR-файл Windows на ваших дисках. Первым шагом будет проверка того, может ли Windows 10 обнаруживаться Linux. Для этого выполните следующую команду.
sudo os-prober
Вышеупомянутая команда будет искать другие операционные системы, установленные на ваших дисках. Если Windows обнаружена, вы получите результат, как показано ниже.

Команда os prober определяет операционную систему Windows

Если указанная выше команда может найти операционную систему Windows 10, мы можем перестроить файл конфигурации GRUB. Для этого используйте следующую команду.
sudo update-grub
команда для восстановления файла конфигурации grub

Приведенная выше команда запускает сканирование всех разделов на вашем локальном диске и ищет различные установленные операционные системы. Если он обнаружит Windows 10, вы должны получить результат, аналогичный приведенному ниже. Команда также автоматически создаст запись Windows в файле конфигурации.
диспетчер загрузки Windows EFI обнаружен в команде обновления grub

2. Восстановление загрузки

Если командная строка вам не по душе, вы также можете попробовать графический инструмент восстановления загрузки. Иногда файл GRUB не работает. Инструмент восстановления загрузки автоматически ищет другие операционные системы на вашем диске. Он также восстанавливает и перестраивает файл конфигурации GRUB. Это похоже на запуск os-prober вручную и перестройку файла конфигурации GRUB.

Для начала используйте следующие команды, чтобы добавить требуемый репозиторий и установить Boot Repair.
sudo apt-add-repository ppa: yannubuntu / boot-repair && sudo apt-get update sudo apt-get install -y boot-repair
Затем запустите средство восстановления загрузки. Сканирование всех дисков и разделов займет минуту или две. После этого нажмите «Рекомендуемый ремонт». Эта опция удалит предыдущий файл GRUB и восстановит его с нуля.

выберите рекомендуемый ремонт загрузки в графическом инструменте восстановления загрузки

На следующем экране вам будет представлен набор команд, которые вы должны скопировать и вставить в терминал. Просто следуйте инструкциям на экране, предоставляемым инструментом восстановления загрузки, и он восстановит файл GRUB за вас.

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

Восстановление загрузки выдаст неожиданную ошибку, если вы используете бета-версию дистрибутива Linux.

Если этот метод не работает для вас, скорее всего, файл диспетчера загрузки Windows не может быть обнаружен GRUB. Следовательно, нам нужно будет создать запись для него в файле конфигурации GRUB.

3. Используйте инструмент настройки GRUB.

В общем, я бы не рекомендовал вручную обновлять что-либо в файле конфигурации GRUB. Мы будем использовать инструмент с открытым исходным кодом под названием Grub Customizer. Выполните следующие команды, чтобы загрузить и установить инструмент.
sudo add-apt-repository ppa: danielrichter2007 / grub-customizer && sudo apt-get update sudo apt install grub-customizer
команда для установки настройщика grub

Далее нам нужно расположение загрузчика Windows 10. Чтобы найти его, выполните следующую команду в терминале.
lsblk
Найдите раздел с точкой монтирования «/ boot / efi». Это раздел, в котором установлен диспетчер загрузки Windows. Нам нужно имя устройства конкретного раздела. В моем случае это sda1, следовательно, расположение загрузочного файла – «/ dev / sda1».

lsblk-command-displaying-windows-efi-файл-расположение

Кроме того, вы также можете установить gnome-disk-utility, которая представляет собой графический инструмент для отображения дисков и разделов. В меню вы можете найти системный раздел EFI. Описание раздела должно выглядеть примерно так.

утилита gnome disks, отображающая диски и разделы

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

Во всплывающем окне редактора записей выберите тип «Chainloader» и раздел как «/ dev / sda1». Вы также можете указать подходящее имя для записи. Опубликуйте это, нажмите Enter.

добавление записи Windows 10 на sda1 в настройщике grubТеперь вы сможете увидеть запись, которую вы создали, в меню настройщика Grub. Однако вам нужно нажать кнопку «Сохранить», чтобы синхронизировать изменения с исходным файлом конфигурации GRUB.

сохранить запись Windows из настройщика grub в файл конфигурации

Наконец, выполните перезагрузку, и теперь вы сможете загрузиться в Windows 10. Если вы не можете этого сделать, скорее всего, Windows MBR является посредником или загрузочные файлы повреждены.

4. Восстановление при запуске

Если GRUB не может загрузить Windows MBR, скорее всего, файл поврежден. Мы можем восстановить его, используя ISO-файл Windows и флешку. Вы можете использовать любое загрузочное программное обеспечение USB для Linux. Я бы посоветовал ГореUSB поскольку он прост и быстро выполняет свою работу. Когда USB-накопитель будет готов, загрузитесь с него. Нажмите «Далее» на первом экране, а затем нажмите «Восстановить компьютер» на следующем экране.

вариант восстановления компьютера на экране установки Windows 10

На следующей странице нажмите «Параметры устранения неполадок» и, наконец, нажмите «Восстановление при загрузке». На исправление загрузочных файлов и MBR потребуется время.

восстановление при запуске на странице дополнительных параметров

В большинстве случаев восстановление при запуске исправляет загрузочный файл Windows. В случае успеха перезагрузите компьютер, и GRUB сможет загрузить Windows. Если проблема не исчезнет, ​​нам нужно будет снова переключить загрузчик на Windows NT.

5. Сменить загрузчик по умолчанию

Если вы уверены, что загрузочный файл Windows не поврежден, и вы не стерли данные с диска C по ошибке, мы можем снова изменить загрузчик на Windows NT. Для этого загрузитесь с USB-накопителя Windows, нажмите «Далее» на первом экране. Затем нажмите «Восстановить компьютер», а затем «Устранение неполадок».

параметр устранения неполадок на экране установки Windows

На странице «Дополнительные параметры» нажмите «Командная строка».

параметр командной строки на странице дополнительных параметров загрузочной страницы Windows

В командной строке выполните следующую команду.
bcdedit / set {bootmgr} путь WINDOWS system32 winload.efi
Команда bcdedit для смены загрузчика на Windows NT

Вышеупомянутая команда изменит загрузчик с GRUB на Windows NT. Теперь, когда вы перезагружаете свою систему, она должна загружаться прямо в Windows. Если вы переходите с Ubuntu 19.10, вам нужно будет вернуться к стабильной версии Ubuntu 19.04, поскольку в GRUB 2.04 есть много ошибок.

6. Свежая установка Windows 10

Если ни один из вышеперечисленных способов вам не подходит, скорее всего, вы случайно стерли данные с Windows. Последнее средство – выполнить новую установку Windows 10. Хорошо, что вам нужно будет только отформатировать диск C, и данные на других дисках не будут потеряны. Но, тем не менее, вы потеряете файлы на рабочем столе, в папке «Загрузки» и «Документы».

Заключительные слова

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

Также читайте: Как заставить Windows и Mac использовать мультитач-жесты в Ubuntu

  • Не запускается malwarebytes windows 10
  • Не запускается genshin impact на windows 10
  • Не запускается lhl 14 на windows 10
  • Не запускается forza horizon 3 by xatab на пк windows 10
  • Не запускается mafia 1 steam на windows 10