Файл bootmgr для windows

Bootmgr — менеджер загрузки Windows 7

Bootmgr появился в операционной системе Windows Vista и представляет собой дальнейшее (развитие) эволюционирование хорошо известного нам по предыдущим версиям Windows загрузчика NTLDR , который был переписан с учетом некоторых нововведений, в том числе обеспечения поддержки интерфейса EFI (Extensible Firmware Interface, Расширенный интерфейс прошивки). Загрузчик сохранил совместимость и со «старой», традиционной (legacy) схемой загрузки ОС, использующей последовательность BIOS -> MBR -> PBR (VBR) -> BOOTMGR -> winload.exe -> ntoskrnl.exe -> SMSS -> Winlogon . В зависимости от метода загрузки системы и реализованной в BIOS версии спецификации UEFI, модуль менеджера загрузки может именоваться:

  • bootmgr.exe — традиционный (legacy);
  • bootmgfw.efi — UEFI;
  • bootmgr.efi — UEFI;
  • bootx64.efi — UEFI;

Представляет собой исполняемый (PE-формат) файл, располагающийся на скрытом системном разделе, и предназначающийся для решения следующих задач:

  • Подготовка среды загрузки ядра, прединициализации структур/интерфейсов: таблиц дескрипторов GDT, IDT, микрокода, модуля TPM, файловых систем, шины PCI, отладчика ядра, текстовой консоли, сетевого интерфейса и др.;
  • Поддержка (новой) базы данных конфигурации загрузки (Boot Configuration Data, BCD), включающей меню загрузки ОС (текущей/предыдущих версий), опции гибернации, восстановления, позволяющей интегрировать опции сторонних разработчиков (различные модули этапа загрузки);
  • Обеспечение опций загрузки начального этапа: устранение неполадок компьютера, безопасный режим, безопасный режим с загрузкой сетевых драйверов, безопасный режим с поддержкой командной строки, ведение журнала загрузки, включение видеорежима с низким разрешением, последняя удачная конфигурация, режим восстановления служб каталогов, режим отладки, отключить автоматическую перезагрузку при отказе системы, отключение обязательной проверки подписи драйверов, обычная загрузка Windows.
  • Нахождение/проверка/загрузка модуля следующего этапа winload.exe(.efi) .

Тут самое время задаться вопросом, зачем разработчикам вводить отдельный раздел для классической схемы загрузки (BIOS/MBR)? Ведь раньше то ничего подобного не создавалось, все прекрасно загружалось без всяких там скрытых разделов, все файлы цепочки загрузки находились на основном системном разделе, куда же проще? А ответ, как мне кажется, достаточно прост. Выше мы уже упомянули, что схема загрузки была переделана Microsoft с учетом потребностей новой технологии UEFI, у которой для размещения загрузчиков используется специальный раздел ESP . Так что же, для UEFI использовать один алгоритм загрузки, а для классической BIOS/MBR оставлять традиционный? Подобное решение влечет за собой огромное количество проблем и необходимость обновления двух веток кода, не проще ли привести все «к одному знаменателю»: традиционную и UEFI-загрузки реализовать в рамках единого алгоритма, в любом случае размещая загрузчик в специальном разделе? Собственно это и было реализовано.
Поэтому, раздел System Reserved в традиционной схеме загрузки (BIOS/MBR) предназначается для:

  • приведения иерархий разметки диска/файловой системы (используемых при традиционной (legacy) загрузке) в соответствие с аналогичной структурой стандарта UEFI: размещение на разделе (в классифицированном дереве директорий) файлов операционной системы, фигурирующих в начальном этапе загрузки ОС ( Bootmgr / BCD );
  • дополнительной защиты загрузочных файлов операционной системы от (не)преднамеренных деструктивных действий приложений/пользователя;
  • хранения загрузочных файлов BitLocker Drive Encryption в случае, если используется шифрование разделов;
Читайте также:  Поддерживаемые модели windows 10

Скрытый раздел System Reserved создается на этапе установки операционной системы и имеет типовой размер порядка 100Mb (хотя может быть уменьшен до 30Mb без потери функционала). Далее мы будем рассматривать внутреннюю структуру файла bootmgr , представляющего из себя гибрид блоков кода на языке ассемблера, и встроенного образа PE-формата (написанного на языке C) с ресурсами и дополнительными секциями, содержащими наборы рабочих данных.

Где находится bootmgr Windows 7

В операционной системе Windows 7 bootmgr имеет довольно ощутимый размер для файла загрузки (в тестовой системе = 383786 байт), поскольку, как мы сможем увидеть позже, по большей части написан на языке высокого уровня. Располагается bootmgr в корневом каталоге основного активного скрытого раздела размером в 100 мегабайт. Данный раздел размещается в начале диска, предваряя все остальные. Партиции этой не присваивается логического имени (литеры/буквы диска), поэтому в самой операционной системе она не видна для стандартных средств операционной системы. Как вы можете догадаться, таким вот незатейливым способом данная партиция защищена от деструктивных действий пользователя, могущих повлечь за собой повреждение критически важной загрузочной информации.
Для того, чтобы найти файл bootmgr в системе, необходимо сначала научиться взаимодействовать со скрытым разделом. Для этого открываем апплет Управление компьютером , щелкнув правой кнопкой мыши на иконке «Компьютер» и выбрав пункт «Управление», либо можно запустить ( Win + R ) из командной строки diskmgmt.msc . Текущий пользователь должен иметь права администратора. В ответ на это действие откроется окно следующего вида:

Чтобы содержимое скрытого раздела предстало нашему взору, нам необходимо назначить ему логический номер (букву/литеру). На рисунке (схематично) я обозначил последовательность действий, которые нам необходимо предпринять. После выбора пункта «Изменить букву диска или путь к диску» у нас появится следующее окно выбора:

После нажатия кнопки ОК логическое имя будет присвоено разделу и он станет доступен в проводнике. Содержимое его, которое нам как раз и необходимо, наконец-то можно увидеть. Но это еще не все, дело в том, что некоторые файлы и директории раздела имеют атрибут «скрытый», поэтому нам нужно включить отображение скрытых и системных файлов. Это можно сделать в свойствах папки (Параметры папок и поиска — Вид). А теперь, давайте взглянем на искомый нами файл bootmgr , который можно увидеть прямо в корне партиции:

На рисунке бывает порой сложно, а чаще и вовсе не получается наглядно отобразить всю структуру раздела, поэтому приведу его в виде текстового списка. Итак, содержимое скрытого раздела «Зарезервировано системой» выглядит следующим образом:

Исправление «BOOTMGR is missing Press Ctrl Alt Del to restart» в Windows

Одна из самых неприятных, и при этом очень распространённая ошибка, которую можно наблюдать на компьютерах с Windows 7/8/10 – «BOOTMGR is missing Press Ctrl Alt Del to restart». Означает это только одно – не найден загрузчик операционной системы. Не стоит паниковать, компьютер не сломался, просто нужно проделать кое-какие действия чтобы решить проблему.

Для общего понимания ситуации расскажу что случилось. При включении компьютера происходит поиск на жёстком диске мини-программы, которая знает как загрузить операционную систему. Вот эта мини-программа оказывается недоступной или повреждённой. Проблема может появиться по разным причинам: сбой напряжения в электросети, неправильное выключение компьютера, неграмотные манипуляции в BIOS, вирус наконец.

Читайте также:  Восстановление ключа продукта windows

Будем идти от простого к сложному. Итак, возможные пути решения:

  • Проверить, правильный ли выбран загрузочный диск в БИОСе
  • Восстановление загрузчика Windows – bootmgr в автоматическом режиме
  • Исправление ошибки BOOTMGR is missing с помощью командной строки

Проверяем настройки BIOS

Этот вариант рассматривайте если у вас установлено более одного жёсткого диска. Я имею ввиду физических жёстких диска, а не разделы C, D, E и т.п. Иначе переходите сразу к следующему пункту. Но всё-таки попробуйте вытащить из компьютера все флешки и внешние жёсткие диски и перезагрузиться.

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

Автоматическое исправление ошибки «BOOTMGR is missing»

Нам повезло, Microsoft разработали специальную среду восстановления, из которой можно порешать многие проблемы с операционкой. Чтобы её запустить в Windows 7, нужно до появления ошибки всё время нажимать кнопку «F8» пока не появится меню на чёрном фоне:

Если этого не произойдёт или у вас Windows 8.1/10, то придётся искать диск восстановления или установочный диск с вашей версией Windows (флешка с установкой тоже подойдёт). Загружаемся с этого диска или флешки. Не забудьте нажать ЛЮБУЮ кнопку если появится надпись на чёрном фоне «Press any key to boot from CD or DVD», иначе загрузка пойдёт с жёсткого диска и вы снова увидите свою ошибку. Вместо установки выбираем в самом низу «Восстановление системы»

Утилита восстановления проведёт диагностику жёсткого диска и постарается автоматически определить возможные проблемы. Нам остаётся только принять исправления и перезапуститься

Если ничего не изменилось, то придётся ещё раз загрузиться с установочного диска, выбрать «Восстановление системы» и на списке доступных операционных систем нажать «Далее»

Кликаем по «Восстановление запуска»

Если всё прошло гладко, то можете радоваться – ошибка BOOTMGR is missing исправлена!

Решение проблемы загрузчика с помощью командной строки

Это более трудоёмкий процесс, но эффективный. Вам нужно также загрузить среду восстановления, но в этот раз выбрать не «Восстановление запуска», а «Командная строка»

Тут вот в чём дело. Обычно, при установке Windows создаётся специальный скрытый раздел размером 100-300Мб и резервируется системой. При загруженной Windows он не имеет буквы, например как C, D и т.д. Но на этом разделе лежит мини-программа для загрузки операционной системы и должен быть файл bootmgr. Если он «ломается» или пропадает, то возникает эта самая ошибка «BOOTMGR is missing. Press Ctrl Alt Del to restart». Наша задача – восстановить файл, скопировав его с установочного диска.

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

Набираем в командной строке команду:

Следом за приветствием набираем вторую команду:

Смотрим на раздел объёмом 100-300Мб – ему присвоена буква «C», а CD/DVD-ROM находится под буквой «F». Под буквами «D» и «E» — диски с моими данными.

Читайте также:  Appdata local windows folder

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

1. Выходим из программы diskpart

2. Переходим на букву CD-ROM’а, в моём случае это «F»

3. Копируем файл bootmgr на диск объёмом 100Мб, в моём случае это диск «C»

Вы должны увидеть сообщение, что успешно скопирован один файл. Если пишет «Отказано в доступе» или «Access denied», то это значит что такой файл уже существует. Т.е., тогда сначала его нужно удалить командой «del», но скорей всего проблема вообще в другом.

Ещё иногда, при установке Windows на заранее разбитый на разделы диск вы не найдёте скрытого раздела размером 100Мб. В этом случае копируйте файл bootmgr прямо в корень на диски с данными. Чтобы не усложнять себе жизнь определением на каком из дисков находятся файлы операционной системы, копируем файл на все диски. В моём примере это диски D и E, т.е. это будут две команды:

Перезагружаемся и смотрим. Никак? Опять открываем командную строку и вводим одну команду:

bootsect /nt60 All

Перезагружаемся. Если ошибка «BOOTMGR is missing» не пропала, то остаётся только один вариант – не тот диск или раздел не помечен как «Активный».

Как сделать диск «Активным» из командной строки

Дело в том, что раздел с загрузчиком ОС должен не только содержать файл bootmgr, но и быть ещё помечен как «Активный», т.е. с которого возможна загрузка в принципе. Когда помечен не тот диск мы получаем печально известный результат. Решается всё также из командной строки. Итак, вводим команды:

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

select disk 0 или 1

где 0 или 1 это номер нужного диска. Далее вводим команду для получения списка разделов данного диска:

Нужно найти тот самый раздел на 100-300Мб. Данный приём работает и для Windows 8/10, в этом случае раздел нужно искать на 350Мб. Если у вас таких разделов нет, значит выбираем первый или второй раздел, смотря на какой диск C: или D: у вас была установлена операционная система соответственно. Теперь выбираем командой с номером раздела:

select partition 1 или 2

и делаем раздел активным:

Перед командой «exit» должно быть сообщение, типа «Раздел помечен как активный». Перезагружаемся.

Если ошибку так и не удалось побороть описанными здесь методами, то почитайте про решение проблемы NTLDR is missing в Windows XP. Эти ошибки очень похожи и советы оттуда могут пригодиться.

Подведём итоги

Итак, чтобы побороть ошибку «BOOTMGR is missing. Press Ctrl Alt Del to restart» нужно восстанавливать загрузчик Windows 7-10, в частности файл bootmgr. Средство восстановления от Microsoft умеет это делать в автоматическом режиме, а если ничего не получается то в нашем распоряжении есть командная строка. В других случаях, особенно когда установлено два и более жёстких диска, нужно просто проверить настройки БИОСа. В редких случаях выбран «активным» не тот диск.

Напишите пожалуйста в комментариях какая проблема была у вас и какой способ помог её решить.

Оцените статью