Восстанавливаем загрузчик UEFI в Windows.
Восстанавливаем загрузчик UEFI в Windows.
В операционных системах выше windows 7, это версии 8 и выше, как правило для загрузки системы используется так называемый загрузчик UEFI.
Если система перестала загружаться и выдает например такое сообщение:
File :\EFI\Microsoft\Boot\BCD
Error code: 0xc000014CГ
Необходимо восстановить файлы загрузочной области UEFI.
Самый надежный способ, может показаться очень сложным для простого пользователя, но если все делать по пунктам как будет описано ниже, то все получится даже у простого пользователя.
Для восстановления загрузчика нам понадобится загрузочная флешка или диск с любым Windows не ниже версии 8. Но теоретически возможно и с windows 7 (не проверялось).
Внимание! Вначале внимательно читайте, осознайте, что вы делаете, прочитайте несколько раз, а потом делайте.
Если проявите терпение и внимание то у вас все получится.
Итак начнем:
Вставляем диск в привод или подключаем флешку и загружаемся с него. Как загрузиться с носителя описано в начале этой статьи.
Здесь нажимаем далее
Здесь выбираем Восстановление системы
Затем выбираем по очереди: Диагностика — Дополнительные параметры — командная строка
После того как откроется командная строка набираем команду для запуска утилиты Diskpart:
diskpart
Посмотрим список дисков в системе
list disk
Выберем свой жесткий диск, если он один то это как правило disk 0.
sel disk 0
Посмотрим какие разделы есть на выбранном диске
list vol
после этой команды откроется такой список ваших разделов на выбранном диске
Раздел который нам нужен содержит загрузочный раздел размером 100мб, файловую систему Fat32.
(если его нет и у вас несколько дисков, то возможно вы выбрали не тот диск).
В моем случае это диск 3 (Том 3) — выделен красной рамкой на картинке выше.
Выбираем его
select volume 3
Чтоб работать с ним дальше, присвоим этому разделу свободную букву диска. Например K
assign letter K:
Выходим из утилиты Diskpart
exit
Переходим в директорию самого загрузчика (K— буква которую мы присвоили ранее)
cd /d K:\efi\microsoft\boot\
Перезапишем загрузочный сектор на диске:
bootrec /fixboot
На всякий случай переименуем старую конфигурацию загрузчика
ren BCD BCD.bak
Теперь последний шаг, создадим новую конфигурацию загрузчика
bcdboot C:\Windows /s K: /l ru-ru /f ALL
Пояснение: C:\Windows — путь где установлена ваша windows, если установлена на другом диске то смените букву диска.
K — буква раздела на который копируются файлы загрузки операционной системы (мы ее присваивали ранее)
/l ru-ru — определяет принадлежность языка вашей операционной системы, в данном случае русский. По умолчанию используется английский.
/f ALL -в сочетании с командой /s это указывает тип встроенного ПО целевого системного раздела. («UEFI», «BIOS» или «ALL»).
Теперь набираем несколько раз exit , нажимаем enter, пока не закроется окно командной строки.
Перезагружаем компьютер, и радуемся.
На этом все. Удачи!
Восстановление загрузчика windows 7 — пошаговая инструкция
Здравствуйте, дорогие читатели.
Иногда в результате различных действий может произойти так, что компьютер отказывается входить в операционную систему. И в некоторых случаях подобное связано с нарушением работы важного инструмента. Решением является восстановление загрузчика Windows 7.
Содержание статьи
Симптомы( к содержанию ↑ )
Существует несколько основных признаков, указывающих на необходимость «возвращения к жизни» соответствующего элемента операционки:
Появляется небольшое окно, в котором написано: «Bootmgr is missing».
Сообщение также может гласить: «Non system disk or disk error
».Блокировка устройства и до начала загрузки ОС высвечивается окно с требованием внести определенную сумму на телефонный номер.
Bootrec( к содержанию ↑ )
Чтобы вернуть в рабочее состояние свой компьютер, необходимо выполнить ряд действий. Кроме того, для процедуры нам понадобятся установочные файлы Windows. Так что без диска с соответствующими данными нам не справиться. Проделываем следующее:
Перезапускаем устройство.
Нажимаем «Del» и через БИОС выставляем запуск с DVD-привода или с флешки (в зависимости от того, на каком носителе находится дистрибутив). Это делается в меню «Boot».
Вставляем переносную память в привод или специальный разъем. Нажимаем на клавиатуре «F10». Подтверждаем действия.
Теперь появится черный экран, с надписью о нажатии кнопки для запуска с подключаемого устройства. Выполняем.
Теперь в предлагаемом списке выбираем операционную систему, которую нужно «вернуть к жизни», а затем «Далее».
Откроется небольшое окно «Параметры…». Нам необходимо проделать все движения через «Командную строку»
Появится окно с черным фоном. Вводим «bootrec.exe» и нажимаем «Enter».
Данная команда покажет все возможные параметры, с которыми она работает.
Описание ключей Bootrec( к содержанию ↑ )
Команды в среде cmd.exe могут запускаться в стандартном варианте, либо со специальными дополнениями. Так, например, если прописать «bootrec.exe /FixMbr», программа заносит в главный раздел загрузочную запись. При этом последняя совместима с Windows 7 и Vista. Это поможет вернуть работоспособность устройства. Кроме того, к данному трюку можно прибегнуть если есть необходимость убрать нестандартный код в соответствующем сегменте. При этом имеющаяся таблица разделов остается прежней.
В случае использования ключа «/FixBoot», программа заносит новый загрузочный сектор. Он также совместим с вышеуказанными операционными системами от Microsoft. Эта опция используется в нескольких случаях:
Загрузочный файл заменен на нестандартный.
Он поврежден.
После седьмой версии или Vista была размещена предыдущая сборка. Так, например, после установки XP используется загрузчик Windows NT.
Интересно знать! Такого же эффекта можно добиться за счет использования программы «bootsect.exe». Она также находится на диске. Для этого прописываем «bootsect /NT60 SYS
». Появится загрузочный сектор, который совместим с «Bootmgr». Для подробной информации нужно запустить утилиту с ключом «/help». При написании «bootrec.exe /ScanOs», приложение сканирует все имеющиеся диски на наличие OS 7 и Vista. В результате пользователи получают список всех найденных систем, даже не прописанных в хранилище данных, касающихся загрузки.
Использование ключа «/RebuildBcd» запустит сканирование всех дисков на предмет размещения установленных операционок. Составляется список, из которого их можно добавить в хранилище. Кроме того, данная команда позволит перестроить базу. Правда перед этим обязательно нужно удалить прошлые данные.
Вышеуказанная утилита имеет широкий функционал. Но при этом она не поможет, если файл запуска системы отсутствует. В этом случае необходимо прибегнуть к другому инструменту.
Стоит отметить, что работает bootmgr в автоматическом режиме. То есть пользователям нужно только добраться до определенных инструментов, прописать команду и все выполнится самостоятельно – нет необходимости во время самого процесса что-то делать.
BCDboot( к содержанию ↑ )
Это средство предназначено для создания или восстановления загрузчика, находящегося в главном разделе. Программа позволяет также переносить файлы между жесткими дисками. Даже если на последних не видно систему.
Для начала работы достаточно прописать «bcdboot.exe C:\windows». Операция восстанавливает поврежденные данные, включая файлы хранилища.
Процесс обладает несколькими параметрами:
Источник – расположение директории, в которой находится дистрибутив Windows. В нашем случае это пластиковый диск или USB флешка. Данный параметр является обязательным. Остальные указываются по необходимости.
«/I» — задает язык среды. Если не менять, используется английский.
«/s» — указывает букву диска, куда будут размещены нужные файлы. По умолчанию это место, которое задается БИОСом или новой системой — UEFI.
«/v» — запускается режим подробного учета работы.
«/m» — объединение параметров имеющейся записи и только созданной. Все это записывается в новую загрузочную область.
Возвращение после использования Linux( к содержанию ↑ )
Стоит представить ситуацию, когда у вас ранее стояла операционка от Microsoft. И после установки Linux вдруг перестала запускаться первая. Это произошло в результате каких-то ошибок.
Если у вас после установки Ubuntu не работает Windows, не стоит сразу паниковать. Проблему можно решить просто.
Итак, для начала стоит сохранить загрузочный раздел Ubuntu, чтобы в случае чего его можно было бы использовать. Для этого нужно запустить терминал и указать следующее:
dd if=/dev/sda2 of=/linux.boot bs=512 count=1
Код выше позволяет скопировать сектор загрузки из раздела «sda2» в linux.boot.
Стоит отметить, что в данной операционной системе за запуск отвечает корневой элемент «/». Если в лично вашей ситуации не так, для начала нужно узнать, какая из существующих областей загрузочная.
Запись была скопирована в папку пользователя. Поэтому отправляемся в соответствующую директорию и переносим файл на раздел, где уже установлена Windows.
Далее проделываем все, что описано в списке в разделе «Bootrec» — с 1 по 7 пункты включительно. Стоит сразу сказать, что это должно помочь даже после GRUB – специального программного обеспечения.
В результате появится «Командная строка», в которой прописываем всего две строки и после каждой нажимаем «Enter»:
Bootrec.exe /FixMbr
Bootrec.exe /FixBoot
После этого перезапускаем устройство и видим, как в нашей ОС все работает.
При этом нередко случаются ситуации, в которых пользователям нужно пользоваться и Ubuntu тоже. Для этого существует специальная программа EasyBCD. Она работает не только после активации, но и просто так. Достаточно выполнить несколько простых действий:
Устанавливаем и запускаем ПО.
Появится новое окно, в левой части которого выбираем «Add new entry».
Далее на вкладке «Linux/BSD» устанавливаем Type: GRUB 2.
Указываем имя и нажимаем «Add entry».
Если же программа не работает, нам как раз поможет файл, который мы сохранили ранее. Для этого делаем несколько движений:
В Windows заходим в «Пуск», а потом в «Стандартные».
Находим «Командную строку», вызываем на ней контекстное меню. Нас интересует «Запустить от имени администратора».
Появится черное окно, в котором прописываем: «bcdedit /create /d “Lin” /application bootsector». Мы увидим сообщение, в котором указывается ID раздела. Номер выглядит в виде набора чисел, букв и тире.
Далее вводим «bcdedit /set {ID раздела} device partition=C:».
Теперь указываем сразу несколько команд:
bcdedit /set {ID раздела} path \linux.boot (о файле я рассказывал вначале этого подзаголовка)
bcdedit /displayorder {ID раздела} /addlist
bcdedit /timeout 10
Теперь вы сможете во время запуска компьютера выбирать подходящую для себя операционку и времени будет 10 секунд.
Надеюсь, статья поможет справиться с проблемой, ведь недуг встречается довольно часто. Особенно, когда возникают какие-то ошибки во время установки дополнительной ОС.
Подписывайтесь на блог, и вы сможете каждый день открывать для себя что-то новое в компьютерном мире.
Материалы по теме
Установка Windows Vista/7 с флешки на ПК с UEFI Начну немного с предисловия. Понадобилось мне, значит, переустановить ОС на новеньком ноутбуке. Установщик запустился, да не дал продолжить — не буду, мол, ставиться на GPT-разметку, т.к. загружен в режиме MBR. При попытке загрузиться в режиме UEFI (тыканием в устройство с припиской UEFI в меню загрузки) ничего не происходило. Почесал я репу и понял, что надо это дело довести до конца. Погуглив, столкнулся тем, что информации по этой теме чрезвычайно мало (особенно в рунете), но кое-какой материал, который меня натолкнул на дальнейшую работу, нашелся. Ну что же, постараюсь привести собранную и полученную информацию в более-менее понятную и удобную инструкцию, дабы другие не наступали на те же грабли. Из семейства Windows Vista и 7 на UEFI можно поставить только 64-битную редакцию. В 32-битной версии просто-напросто отсутствуют необходимые для загрузки файлы. Попытки взять их от x64-версии ни к чему, кроме ошибок загрузчика, не привели, что логично. Учитывая то, что современные UEFI-устройства оснащаются обычно 4 и более гигабайтами ОЗУ, проблем здесь не должно быть. Работает данный метод, понятное дело, только для 64-битных версий EFI (все современные устройства на рынке). Не пытайтесь грузить 32-битный boot.wim, это бесполезно, он просто не запустится. В Windows 8 появилась поддержка UEFI32, таких устройств на рынке мало, в основном это планшеты с 1-2гб озу. UEFI32 и UEFI64 между собой несовместимы, поэтому и файлы разные применяются — BOOTX86.EFI и BOOTX64.EFI соответственно. Данный материал применим ко всем редакциям Windows Vista SP2 и Windows 7 RTM/SP1, а также их серверных собратьев — Windows Server 2008/2008 R2, вне зависимости от локализации. В Windows 8 и выше все аналогично, кроме того, что там появилась поддержка UEFI32. Что нам понадобится: 1.По умолчанию, на диске отсутствует самый главный файл, которому UEFI должно передать управление — \EFI\BOOT\BOOTX64.EFI. Поэтому, нам надо выковырять его из дистрибутива. Лежит он в install.wim по адресу Windows\Boot\EFI\bootmgfw.efi. Просто копируем его в \EFI\BOOT и переименовываем в BOOTX64.EFI. Естественно, надо создать папку \EFI\BOOT. 2.Убедитесь, что в папке \EFI\MICROSOFT\BOOT есть необходимые для загрузки файлы (при необходимости, их можно взять с дистрибутива Windows Vista/7 x64 на DVD): Код fonts\ (папка со шрифтами) 3.При необходимости, мы можем поправить загрузочное меню, если у вас вдруг несколько boot.wim и 64-битный \source\boot.wim лежит в другом месте, иначе данный шаг можно пропустить. Тут все просто. Код bcdedit /store efi\microsoft\boot\bcd /set {default} device ramdisk=[boot]\sources64\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f} Вместо \source64\boot.wim укажите свои пути, и убедитесь, что GUID образа совпадает (я использовал дистрибутив Windows 7 Enterprise x64 SP1, в случае с Windows Vista, GUID могут отличаться), иначе получите BSOD 0x7B сразу после загрузки образа. Узнать это можно командой Код bcdedit /store efi\microsoft\boot\bcd /enum Командная строка во всех примерах была запущена из корня дистрибутива (где лежат папки sources и efi), для удобства. Загрузочное меню до правки: И после: 4.Ну вот и все. Втыкаем флешку в UEFI-устройство, вызываем загрузочное меню, тыкаем на UEFI USB Device и радуемся загрузке. Работоспособность проверена на ASUS K45A и VMware 9 (в последнем случае, установщик Windows не видел USB-хард и не мог продолжить установку, по всей видимости, это связано с кривой реализацией EFI, в VirtualBox даже bootmgr не запускался). На Apple MacBook Pro Sandy Bridge загрузка происходит, но какой-то глюк с видеорежимом, видно что установщик запускается, но все сжато в полоску, отображаемую поверх меню загрузки EFI. Отключение графической загрузки в bootmgr не помогло. Если вдруг выкинуло в EFI Shell и загрузка не пошла, не отчаивайтесь. Обычно, в таком случае, высвечивается список доступных устройств и дисков (первые идут как blk, вторые как fs). Просто находим нужный нам диск (в моем случае — fs1:, т.к. он Removable USB), убеждаемся, что это точно наш диск (делам ls /EFI/BOOT/BOOTX64.EFI) и запускаем установщик — /EFI/BOOT/BOOTX64.EFI. И, напоследок, небольшой комментарий. Если нет острой необходимости в UEFI и GPT-разметке (а в настоящее время это, пожалуй, только загрузка ОС с жесткого диска больших объемов, то бишь >2.2 ТБ, для эксплуатации этого жесткого диска как второго/третьего/и так далее, т.е. не системного, UEFI не является необходимым!), лучше использовать Compatibility Support Mode (CSM)/Legacy Boot/эмуляцию BIOS. Иначе просто наживете себе, на пустом месте, лишние проблемы, не получив ничего существенного взамен. В режиме UEFI сейчас работают только ОС от Microsoft (начиная с NT 6.x), Mac OS X, ну и линуксы (обычно на базе GRUBv2, однако, Fedora долго время использовала GRUB 0.97 с костылями, это было в 16-17 версии, сейчас не скажу). Все досы, хайрены, мемтесты, 32-битные WinPE, 64-битные WinPE (основанные на WinXP x64), ранние версии Windows — включая XP и Server 2003, прочее реанимационное добро, просто-напросто не запустится. В моем случае, причиной не ставить Windows 7 в MBR-режиме послужила необходимость сохранить восстановительный раздел. А Windows 7 на GPT-разметку ставится только в UEFI режиме. |
Восстановление загрузчика windows 7 с флешки
Порой бывает, что слетает загрузчик операционной системы. В большинстве случаев помогает обычное Восстановление запуска Windows 7, однако не всегда. Также можно попробовать . Если и это не помогло, тогда читайте ниже подробную инструкцию, как восстановить загрузчик Windows 7 .
Запомните: устанавливать операционную систему старшего класса после младшего нельзя, то есть если Вы установите Windows XP, то Windows 7 не загрузится, так как главная загрузочная запись (MBR) перепишется старой системой.
Чтобы восстановить загрузчик Windows 7, мы воспользуемся средой восстановления, где нам понадобится командная строка. Все команды я напишу и опишу ниже. Но сперва давайте разберем, что же такое MBR. MBR (главная загрузочная запись) – самый первый сектор на диске, в котором содержится таблица разделов, а также небольшая утилита загрузчик, которая указывает, с какой части диска будет осуществляться загрузка операционной системы. В то м случае если в MBR содержится неверная информация о расположении ОС, то при этом Windows 7 не запуститься и скорее всего выбьет похожую ошибку: «BOOTMGR is missing press CTR-Alt-Del for restart».
Чтобы исправить загрузчик операционной системы нам понадобится установочный диск Windows 7, на котором будет находиться необходимая нам утилита Bootrec.exe, или диск восстановления. Данная утилита пропишет новый загрузочный сектор с помощью определенных команд.
Ну что ж приступим. Загружаемся с установочного диска с Windows 7 или с диска восстановления, выскочит надпись «Press any key to boot from CD…» и сразу же нажимаем любую клавишу на компьютере, иначе загрузка с диска не произойдет
В этом окне нужно выбрать Восстановление системы
В большинстве случаев, проблемы находятся автоматически, после чего Вам предложат устранить их в автоматическом режиме. Для этого просто нажмите на кнопочку Исправить и перезапустить, после чего система перезагрузится и Windows 7 загрузится без ошибок.
Однако, если проблемы остались те же или система не предложит исправить ошибки автоматически, то в этом же окне необходимо выбрать ОС, которую нужно восстановить (обычно она одна). Нажимаем Далее
Здесь жмем Восстановление запуска
Ждем пока средство восстановление не устранит ошибки запуска операционной системы. Если вдруг и этот способ не поможет, то выбираем в средстве восстановления командную строку
Откроется Командная строка, в которой необходимо ввести команду Bootrec и нажать клавишу Ввод
Перед Вами появится информация о возможностях данной программы. Вводим команду Bootrec.exe /FixMbr — выбор основной загрузочной записи
Нам высветит в окне, что операция завершена. Это говорит о том, что в первый сектор загрузочного раздела жесткого диска записана
Напишите свой собственный загрузчик X86
Что, если вы хотите создать очень компактную машину и обойтись без какой-либо операционной системы? Или, может быть, вы хотите попробовать написать свою собственную ОС, даже просто ради испытания или развлечения? Может быть, вы читали о крутой архитектуре ОС и подумали: «Я могу написать это!». Что ж, прежде чем погрузиться в свой код, вам нужно сначала написать что-то, что называется загрузчиком.
Загрузчик — это код, который запускается на ранней стадии в последовательности загрузки ПК, Mac, Raspberry Pi или микроконтроллера, прежде чем что-либо вроде операционной системы запускается.Часто его работа состоит в том, чтобы установить минимальное оборудование, такое как ОЗУ, а затем загрузить ОС или ваш встроенный код.
[Алекс Паркер] написал серию четких сообщений в блоге, состоящую из трех частей, которые упрощают написание части загрузчика, по крайней мере, для машин x86. И что приятно, для начала вам не понадобится x86. Он делает это на Mac, используя эмулятор процессора QEMU, хотя он также говорит о том, что делать это в Windows и Linux.
В первой части серии загрузчик оставляет вас в реальном режиме x86 с 16-битными инструкциями и доступом к одному мегабайту памяти — вспомните дни до 80286 или 1982 для тех из нас, кто тогда занимался вычислениями.Чтобы доказать, что это работает, он использует вызовы BIOS для отображения «Hello world!». Это также показывает, что через BIOS у вас есть набор периферийных устройств, с которыми вы можете работать.
Во второй части он показывает, как настроить 32-битный защищенный режим и глобальную таблицу дескрипторов, что упрощает доступ к большому объему памяти.
В первых двух частях код написан на ассемблере, поэтому в третьей части он завершает серию, показывая, как загрузить код C ++ в память и выполнить его. Этот код C ++, конечно же, будет вашим приложением, которое мы оставим вашему воображению.
Достаточно редко можно написать код загрузчика для настольного компьютера — тем более для микроконтроллеров. Например, [Дмитрий Гринберг] написал свой собственный загрузчик, чтобы он мог зашифровывать образы ROM для своего AVR на USB. И мы говорили о руководстве [леди Ады] по записи загрузчиков Arduino. Но если вы хотите перейти к «голому железу» на своем x86, начните с загрузчика. И это не так уж и плохо.
Как восстановить загрузчик EFI на жестком диске GPT для Windows 7, 8, 8.1 и 10 — NovaStor Support
В этой статье содержится информация о том, как решить проблему с загрузчиком EFI, который не загружается правильно на жестком диске GPT для ряда операционных систем Windows.
Содержание:
- Введение
- Как восстановить загрузчик EFI
- Как восстановить MBR (главную загрузочную запись) — устаревшие машины
- Что делать, если вам по-прежнему не удается загрузиться в Windows
Введение
Большинство людей, у которых возникают проблемы с загрузкой в операционных системах (ОС) Windows, предпочтут переустановить ОС, а не пытаться исправить саму проблему с загрузкой.
В этой конкретной статье рассматривается запуск восстановления загрузчика EFI (расширяемый интерфейс микропрограмм) на жестком диске GPT (таблица разделов GUID (глобальные уникальные идентификаторы)).
Это будет работать только для тех ОС, которые установлены в UEFI (Unified Extensible Firmware Interface) BIOS (Basic Input / Output System).
Примечание : Замените любой <здесь текст>
соответствующими значениями, найденными на вашем компьютере, не оставляйте <>
<наверх>
Как восстановить загрузчик EFI
Windows 7, 8 и 8.1 можно было установить в устаревшей версии BIOS с использованием MBR. Однако Windows 8, 8.1 и 10 были разработаны для установки в UEFI BIOS с использованием загрузчика EFI и GPT.
Примечание : Любой ремонт, выполненный в корневом каталоге жесткого диска, может привести к ошибке. Это означает, что вы потеряете все данные на диске, для которых ранее не было выполнено резервное копирование. Best Practice — всегда выполнять полное резервное копирование диска, прежде чем вы начнете работать с ним или его операционной системой.
Структура GPT решает множество проблем, которые команда Bootsect была разработана для решения в MBR.Однако, если вам нужно восстановить загрузчик EFI, вы можете выполнить следующие инструкции:
<наверх>
Управление загрузчиками EFI для Linux: восстановление восстановления загрузки
Управление загрузчиками EFI для Linux: восстановление восстановления загрузкиПервоначально написано: 27.04.2013; последнее обновление: 29.07.2013; архивная записка: 13.06.2015
Эта веб-страница предоставляется бесплатно и не раздражает внешняя реклама; однако я потратил время на его подготовку, а веб-хостинг стоят денег.Если вы найдете эту веб-страницу полезной, рассмотрите возможность создания небольшое пожертвование, чтобы помочь этому сайту работать. Благодаря!
Пожертвовать $ 1,00 | Пожертвовать $ 2,50 | Пожертвовать $ 5.00 | Пожертвовать $ 10.00 | Пожертвовать другое значение |
Архивное примечание: Эта страница в значительной степени устарела из-за изменений в параметрах восстановления загрузки по умолчанию.В частности, Boot Repair больше не выполняет автоматически операцию «Резервное копирование и переименование файлов EFI», описанную далее на этой странице. Тем не менее, я оставляю эту страницу на месте и как предупреждение не использовать эту опцию, если вы не уверены в ее необходимости, и как предостережение, чтобы быть осторожным с чрезмерным применением исправлений, которые необходимы лишь в нескольких случаях.
Эта страница является частью моего раздела Управление загрузчиками EFI для Linux документ. Если поиск в Интернете привел вас на эту страницу, вы может захотеть начать с самого начала.
Инструмент восстановления загрузки Ubuntu — это удобная программа с графическим пользовательским интерфейсом, предназначенная для исправления большого количества проблем с загрузкой. Хотя он часто работает, его пользовательский интерфейс намеренно очень прост, и поэтому он часто делает больше, чем необходимо. В контексте EFI это может создать новые проблемы, особенно если вы не хотите использовать версию GRUB 2 для Ubuntu. Эта страница поможет вам преодолеть эти проблемы.
Что не так при восстановлении загрузки?
Boot Repair предоставляет простой пользовательский интерфейс для чрезвычайно сложного инструмента.
Boot Repair представляет собой простой пользовательский интерфейс с несколькими параметрами в главном окне, как показано справа. Большинство пользователей, столкнувшихся с компьютером, на котором не загружается одна или несколько операционных систем, естественно нажимают кнопку с надписью Recommended Repair. Эксперты могут щелкнуть Дополнительные параметры , чтобы увидеть, что еще доступно, но в результате появится диалоговое окно с множеством параметров, которые могут быть немного непонятными даже для эксперта.
Чтобы понять, что делает Boot Repair (а в некоторых случаях делает неправильно), я предварительно провел эксперимент.Я начал с новой установки Ubuntu 13.04 в среде VirtualBox. Затем я установил две копии rEFInd на виртуальный компьютер: одну в качестве резервного загрузчика и вторую копию в качестве замены загрузчика Windows. Результатом были следующие файлы загрузчика в системном разделе EFI (ESP):
EFI / BOOT / bootx64.efi EFI / Microsoft / загрузки / bootmgfw.efi EFI / ubuntu / grubx64.efi
Копия grubx64.efi была установлена установщиком Ubuntu и работала; однако из-за особенностей VirtualBox его (виртуальные) записи в NVRAM, как правило, забываются, поэтому мне пришлось выбрать grubx64.efi, используя пользовательский интерфейс VirtualBox EFI для первой загрузки Ubuntu. После этого я установил rEFInd как EFI / BOOT / bootx64.efi; он стал загрузчиком виртуальной машины. Я также установил копию rEFInd как EFI / Microsoft / Boot / bootmgfw.efi, только для этой демонстрации, поскольку она показывает, что произойдет с компьютером, который выполняет двойную загрузку с Windows.
Установив эту систему, я запустил восстановление загрузки. Количество загрузчиков на ESP увеличилось вдвое:
EFI / BOOT / bkpbootx64.efi EFI / BOOT / bootx64.эфи EFI / Microsoft / Boot / bkpbootmgfw.efi EFI / Microsoft / загрузки / bootmgfw.efi EFI / Microsoft / загрузки / bootx64.efi EFI / ubuntu / grubx64.efi
По умолчанию Boot Repair заменяет EFI / BOOT / bootx64.efi и EFI / Microsoft / Boot / bootmgfw.efi копией GRUB, переименовывая исходные файлы, чтобы к ним можно было получить доступ или восстановить. Он также помещает копию GRUB как EFI / Microsoft / Boot / bootx64.efi. Таким образом, после запуска Boot Repair количество копий GRUB на ESP увеличилось в четыре раза — с одной до четырех! Причина размещения GRUB в этих дополнительных местах состоит в том, чтобы обойти проблемы с несколькими ошибочными реализациями прошивки, которые игнорируют или забывают свои записи в NVRAM.Фактически, VirtualBox квалифицируется как одна из этих реализаций, поэтому, если бы я запустил Boot Repair в системе до того, как установил rEFInd, Boot Repair сделал бы правильные вещи.
Основная проблема этого подхода в том, что он слепой. Многие проблемы с загрузкой EFI — это , а не , вызванные ошибочной прошивкой, которая не может запомнить настройки NVRAM. В таких случаях добавление трех дополнительных файлов загрузчика в ESP просто добавляет беспорядка, из-за которого человеку становится сложнее понять, что происходит.Другие менеджеры загрузки, такие как rEFIt, rEFInd и даже копии GRUB из других дистрибутивов, также могут иметь меню, загроможденные дополнительными параметрами загрузки. Более того, загрузочные записи не всегда работают. Когда я перезагрузил свою машину VirtualBox, GRUB представил следующие параметры:
Ubuntu Расширенные параметры для Ubuntu Windows UEFI bkpbootmgfw.efi EFI / загрузки / bkpbootx64.efi EFI / загрузки / drivers_x64 / ext4_x64.efi
К сожалению, параметры резервных копий rEFInd (bkpbootmgfw.efi и bkpbootx64.efi работали ненадежно — когда я выбирал любой из вариантов, я обычно видел, как строка текста появлялась на экране слишком быстро, чтобы ее можно было прочитать, а затем возвращалось меню GRUB. Однако, пытаясь прочесть текст, я неоднократно пробовал эти варианты, и после десяти или пятнадцати попыток появился rEFInd! Судя по сообщениям, которые я видел на веб-форумах, загрузчик Windows часто работает не лучше — многие пользователи сообщают, что не могут запустить Windows из GRUB после запуска Boot Repair. Запись GRUB для ext4_x64.efi при выборе загружает драйвер ext4fs от rEFInd, но этот драйвер бесполезен для GRUB.
Если вы запустите восстановление загрузки и впоследствии установите другой диспетчер загрузки (например, gummiboot или rEFIt) или даже переконфигурируете свою систему для загрузки версии GRUB, которая не знает об изменениях восстановления загрузки, результатом, вероятно, будет невозможность запустите загрузчик Windows — большинство менеджеров загрузки не ищут файл EFI / Microsoft / Boot / bkpbootmgfw.efi и поэтому не добавят его в свои меню. rEFInd — частичное исключение из этого правила; начиная с версии 0.7.1, rEFInd сканирует это имя файла. Но даже тогда в результате появляются дополнительные загрузочные записи.
Еще одна проблема, связанная с манипуляциями с загрузочными файлами EFI, заслуживает упоминания: Windows может отменить это. Я видел сообщения о том, что Windows отменит эти изменения при загрузке, что делает усилия Boot Repair спорными. Если вы столкнетесь с такими проблемами, вам, вероятно, следует использовать один из альтернативных методов регистрации загрузчика с EFI, упомянутого на моей странице по установке загрузчиков EFI. Согласно сообщениям, которые я видел на форумах в Интернете, использование собственной программы Windows bcdedit в таких случаях кажется особенно эффективным.Безусловно, эта проблема не всегда возникает, но она возникает с достаточной регулярностью, так что это настоящая проблема.
Конечно, Boot Repair делает больше, чем просто манипулирует файлами EFI: он полностью переустанавливает GRUB и генерирует новый файл grub.cfg. Меню «Дополнительные параметры» позволяет добавлять параметры ядра, включать или отключать поддержку безопасной загрузки и многое другое. Эти возможности могут оказаться полезными.
Фактически, если вы проверите вкладку Main в меню Advanced Options, вы увидите настройку, которая управляет созданием этих файлов резервных копий, как показано здесь:
Параметр «Резервное копирование и переименование файлов EFI» установлен по умолчанию, и он является виновником чрезмерного переименования файлов.Если у вас возникли проблемы с конфигурацией GRUB, но у не возникли проблемы с запуском GRUB, я настоятельно рекомендую вам снять этот флажок, прежде чем позволить Boot Repair сделать свое дело.
Я не могу дать никаких советов по устранению проблем с запуском Windows или другого загрузчика из версии GRUB, которая была настроена с помощью Boot Repair, кроме как попробовать другой менеджер загрузки. Если вы читали мою страницу о GRUB 2, вы можете сказать, что я не большой поклонник GRUB 2. По моему опыту, другие загрузчики были гораздо более надежными.
Использование Boot-Repair для устранения собственных проблем
Если вы завершили работу с резервными файлами загрузчика, описанными на этой странице, и хотите вернуться к исходной настройке, Boot Repair предлагает вариант для этого: это параметр «Восстановить резервные копии EFI» на вкладке «Основные параметры» Меню дополнительных параметров (показано ранее). Установите этот флажок (Резервное копирование и переименование файлов EFI автоматически снимет флажок) и нажмите Применить. Это заставит Boot Repair восстановить файлы, которые были изначально.Это может помочь вам, если Boot Repair, как в моей демонстрации, захватил диспетчер загрузки или загрузчик, который вы действительно хотели запустить первым. Это также может помочь, если вы установили rEFIt или rEFInd и хотите обрезать параметры загрузки в меню этого загрузчика.
Устранение проблем с восстановлением загрузки вручную
Можно, конечно, сделать аналогичный ремонт вручную. Пока я пишу, Boot Repair переименовывает файлы, так что к именам оригиналов добавляется bkp. Однако в предыдущих версиях утилиты использовались другие соглашения об именах, такие как добавление вторичного.bkp расширение. Возможно, вам придется просмотреть свои файлы и сделать обоснованное предположение о том, как они были переименованы. В случае сомнений переместите или переименуйте файлы bootx64.efi и bootmgfw.efi, чтобы вы могли легко восстановить их в случае необходимости. Затем вы можете переименовать файлы резервных копий в их исходные имена. Также обратите внимание, что у вас может не быть файлов bootx64.efi и bootmgfw.efi; один или другой (или даже оба) могут отсутствовать на вашем компьютере.
После того, как вы перевернули файлы, чтобы восстановить их до того состояния, которое, как вы надеетесь, будет правильным, вам может потребоваться ввести sudo update-grub или sudo grub-mkconfig -o / boot / grub / grub.cfg, чтобы воссоздать файл конфигурации GRUB. Причина, по которой это может быть необходимо, заключается в том, что файл конфигурации GRUB, созданный с помощью Boot Repair, включает ссылки на файлы резервных копий, которые вы, вероятно, захотите удалить. Это должно сделать повторное создание файла конфигурации с использованием собственных скриптов GRUB.
Дополнительные шаги ремонта
Если у вас остались проблемы с загрузкой после отмены нежелательных модификаций восстановления загрузки, я рекомендую вам начать с изучения процесса загрузки EFI. Эта страница является частью набора, который может помочь.Вы можете просмотреть оглавление и обратить особое внимание на страницы, посвященные принципам загрузки EFI и установке загрузчика EFI. Понимание процесса загрузки и установки загрузчика поможет вам решить любую проблему, которая вас беспокоит; вы сможете применить свой человеческий интеллект к решению рассматриваемой проблемы, а не полагаться на утилиту, слепо применяющую набор широких «исправлений», которые иногда вызывают больше проблем, чем решают.
Мой собственный менеджер загрузки, rEFInd, часто работает лучше, чем GRUB, если у вас возникают проблемы с загрузкой Windows; GRUB, кажется, особенно привередлив к запуску других загрузчиков EFI (включая загрузчик Windows), тогда как rEFInd обычно успешен.Однако, если вы установите rEFInd до исправления чрезмерного переименования файлов при восстановлении загрузки, у вас будет слишком много загрузочных записей, и вместо этого запись для Windows, вероятно, загрузит GRUB. Таким образом, отменить эти изменения перед установкой rEFInd необходимо.
Перейти к «CSM: Хороший, Плохой и Уродливый»
Вернуться на главную страницу «Управление загрузчиками EFI для Linux»
, авторское право © 2013–2015 Родерик В. Смит
Если у вас есть проблемы или комментарии по поводу этой веб-страницы, пожалуйста, напишите мне на rodsmith @ rodsbooks.com. Благодарю.
Вернуться на мою главную веб-страницу.
.