Что такое загрузчик операционной системы
Загрузчик: определение, характеристики, типы и принцип работы на ПК
Чтобы иметь возможность выполнять заказы и заявки, ЦП ПК всегда использует Оперативная память память, поскольку именно там хранятся информация и вычисления, которые процессор должен постоянно использовать для выполнения своих задач.
Что такое загрузчик?
Загрузочный носитель получает информацию о том, где находится загрузчик, через микропрограмму компьютера, такую как, например, BIOS, и именно по этой причине в BIOS мы можем настраивать загрузочные устройства.
Выбирая последовательность загрузки в BIOS, мы буквально сообщаем компьютеру, где искать загрузчик, поскольку без него компьютер не сможет загрузиться и запустить операционную систему.
Как работает загрузчик на ПК
При обнаружении носителя с загрузчиком он загружается автоматически, но если список устройств, настроенных в BIOS, заканчивается и ни одно не найдено, система отобразит сообщение об ошибке и не загрузится. Загрузчик, как вы поймете после прочтения этого документа, необходим для работы компьютера.
Где именно хранится?
Первый вариант является наиболее распространенным, поскольку он тесно связан с принципом работы MBR, которая не только содержит необходимую ссылку для прошивки, чтобы найти загрузчик, но также содержит само загрузочное программное обеспечение, которое позволяет операционной системе Загружать».
Во втором варианте, менее используемом, поскольку он требует, чтобы пользователь специально настроил его таким образом по какой-либо причине (хотя это также выглядит так на OEM-ПК от производителей), операционная система использует определенный раздел в качестве места хранения для загрузчик, созданный на накопителе.
В качестве дополнительной информации вы должны знать, что загрузчики также могут быть разделены на несколько уровней в конфигурации, называемой многоступенчатый и что он может охватывать до трех разных уровней, выполняемых один за другим. Это используется, когда загрузчик слишком велик, чтобы поместиться на нулевой дорожке диска.
Его обязанности?
Какие есть загрузчики?
До сих пор мы рассказали вам, что такое загрузчик, каковы его функции и для чего он нужен, но вы также должны знать, что существуют разные загрузчики в зависимости от использования и операционной системы. Мы собрали наиболее важные из них в следующей таблице:
Что такое загрузчик в Android и как его разблокировать
Раньше многие владельцы Android-смартфонов занимались разблокировкой «загрузчика» (или Bootloader) — зачастую без этого было нельзя обновить устройство на более новую версию операционной системы. Сейчас простому пользователю работать с загрузчиком не придется (хотя кто его знает, может и настанет такой момент), но знать о его существовании полезно. Разберемся, почему «загрузчик» бывает открытым или закрытым, и для чего он вообще нужен.
Что такое загрузчик в Android
Bootloader — это программа. Почти такая же, как любое из установленных на вашем телефоне приложений. Отличие в том, что она запускается каждый раз, как только вы включаете смартфон. «Загрузчик» отвечает за запуск нужной операционной системы: другими словами, Bootloader запускается еще до того, как будет загружен Android, и вы увидите перед собой рабочий стол с приложениями. Именно эта программа позволяет запустить Android или активировать режим восстановления, к примеру.
Почему загрузчик заблокирован
Действительно, производители часто блокируют доступ к загрузчику на своих устройствах. Таким образом они запрещают пользователям запускать какую-либо другую операционную систему на устройстве, кроме предусмотренной производителем. Желающие установить кастомную прошивку прибегают к разблокировке загрузчика, хотя есть производители, которые выпускают устройства с разблокированным загрузчиком.
Bootloader устанавливается производителем смартфонов. В случае, если он заблокирован, он позволит запустить только авторизованную версию операционной системы с соответствующей электронной подписью.
Как разблокировать загрузчик
Загрузчик на Google Pixel
Способы обхода загрузчика разнятся в зависимости от производителя смартфона и, как правило, требуют root-доступ. На нашем сайте и в нашем Телеграм-чате можно найти множество инструкций для конкретного смартфона. Если хоть раз имели дело с загрузчиком, пройдите опрос ниже — посмотрим, сколько среди нас гиков.
Иногда производители сами позволяют разблокировать загрузчик (а зачем тогда блокировали, спрашивается?). Например, Sony недавно опубликовала инструкцию, где настоятельно рекомендуют воспользоваться для этих целей специальной утилитой, которая возьмет всю черновую работу на себя. От владельца потребуется лишь IMEI и действующий адрес электронной почты. После того как программа проверит введенные данные, вам будет предоставлен уникальный код, введя который в специальном поле, устройство будет разблокировано.
А Huawei в прошлом году запретила разблокировку загрузчика фирменных устройств, чтобы… потом снова разрешить ее. Правда, обратиться за разблокировкой могут только активные участники сообщества разработчиков, представленные на площадке XDA.
Стоит отметить, что неосторожные действия пользователей порой приводят к повреждению программы-загрузчика. Это одна из причин, по которой не стоит отсоединять кабель от смартфона во время прошивки или выключать электричество. Восстановление Bootloader – это очень непростая процедура, которая не имеет ничего общего с восстановлением прошивки смартфона или обновлением версии Android.
Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
Загрузчик (Операционные Системы)
Содержание
История
На сегодня в мире существует много различных способов какой-либо загрузки программы в компьютер. Эти методы распространяются от простого физического ввода до носителей, с которые могут содержать более сложные программы и с которых можно загружать эти более сложные программы.
Первые примеры
Первые компьютеры, которые появились в 1940-х и 1950-х годах были единственными в своем роде инженерными усилиями, на программирование которых могли уйти недели, а загрузка программ была одной из многих проблем, которые нужно было решить. В раннем компьютере ENIAC не было «программы», хранящейся в памяти, но он был настроен для каждой проблемы с помощью конфигурации соединительных кабелей.
Первые коммерческие компьютеры
IBM System / 360 и преемники
Описание
Функции
Загрузчик операционной системы выполняет следующие функции:
Виды загрузчиков
Загрузчик Syslinux
— в каталоге будет размещён файл-загрузчик «ldlinux.sys»
— и раздел z: помечен как активный
— для организации меню должен быть создан файл (см. рисунок 1).
Загрузчики Windows
Конечно, основное внимание будет уделено загрузчикам для Windows. Загрузчик NTLDR использовался до появления операционной системы Windows Vista. В процессе начальной загрузки, программный код загрузочного сектора раздела (PBR — Partition Boot Sector) обеспечивал поиск, считывание в память и передачу управления файлу ntldr, который размещался в корневом разделе загрузочного диска. Конфигурирование загрузчика ntldr выполнялось с помощью простого текстового файла boot.ini, содержимое которого задавало список загружаемых операционных систем, их параметры загрузки, размещение системных файлов и т.п. В операционных системах Windows Vista /Server 2008 и более поздних, загрузчик ntldr не используется, и заменен диспетчером загрузки BOOTMGR. Соответственно, изменился и программный код загрузочного сектора раздела, обеспечивающий передачу управления файлу bootmgr. Новый диспетчер загрузки использует собственные данные конфигурации загрузки (Boot Configuration Data — BCD) и может выполнять, при определенных настройках, загрузку любых операционных систем семейства Windows. Загрузчик ntldr не поддерживает возможность загрузки Windows Vista и старше. Также, хочу отметить, что все современные Windows PE любых версий также используют загрузчик bootmgr. Цепочка стадий загрузки MBR — PBR — BOOTMGR — это минимально необходимое условие для того, чтобы загрузка операционной системы могла начаться. Дальнейший же ее ход, определяется диспетчером загрузки BOOTMGR, который считывает данные конфигурации загрузки из файла \BOOT\BCD активного раздела и выполняет загрузку в соответствии с их содержимым.
Для Windows 7 он запускает файл (см. рисунок 2).
Диспетчер загрузки bootmgr позволяет выполнить загрузку как с обычного системного диска, так и из загрузочных образов, виртуальных дисков, загрузку с использованием загрузчиков других операционных систем. Это позволяет использовать bootmgr для загрузки Windows PE. В соответствии с конфигурацией загрузки, диспетчер BOOTMGR может выполнить загрузку ядра Windows или, например, Linux, обеспечить выход из режима гибернации, загрузить диагностические программы, выполнить загрузку ядра с измененными параметрами и т.п. Обычно файл bootmgr имеет атрибуты «скрытый» и «системный». По типу структуры, файл \Boot\BCD является кустом реестра и отображается в редакторе реестра Windows как раздел HKEY_LOCAL_MACHINE\BCD00000000. Обычно именно конфигурация BCD становится наибольшим камнем преткновения. [Источник 3]
Загрузчик GRUB
Загрузчик операционных систем GRUB – это очень мощный загрузчик, который может загружать разнообразные операционные системы, такие как Windows, DOS, Linux, GNU Hurd, *BSD и другие. В данное время LILO является самым популярным загрузчиком, используемым почти всеми c мультизагрузочными системами. С GRUB можно “видеть” содержимое файловой системы без загрузки операционной системы. Например, если нужно посмотреть дату и время, записанные в файле, но не имеете времени для загрузки операционной системы, то можете использовать командную строку GRUB (“grub>”) и написать:
Пользователь получит полное содержимое файла, включая дату и время. Самая большая польза загрузчика GRUB в том, что он может загрузить любое ядро из любого раздела диска. Например, если пользователь забыл добавить недавно откомпилированное ядро в список, компьютер должен нормально загрузиться, добавить его в список и перезагрузиться, чтобы его использовать. Но пользователь может легко использовать командную строку загрузчика GRUB и загрузить нужное ядро. Три главных шага для использования GRUB: компиляция, инсталляция и конфигурация.
Загрузите исходные тексты
Для начала процесса компиляции, наберите:
Для инсталляции всех файлов наберите:
Программный пакет GRUB установлен, теперь можно приступать к установке загрузчика GRUB в загрузочный сектор. Хорошей идеей является хранить все файлы загрузчика, относящиеся к загрузке в директории /boot/grub. Для того, чтобы сделать это, следуйте следующему примеру: По умолчанию все файлы загрузчика проинсталлированы в /use/share/i386-pc или в /use/local/share/grub/i386-pc в зависимости от того, как определены переменные среды. Создайте каталог /boot/grub. Затем нужно скопировать следующие файлы в папку: stage1 stage2
Инсталляцию непосредственно загрузчика можно разделить на три этапа:
Необходимо начать инсталляцию со следующих команд:
Эта команда опрашивает устройства и выводит сообщения. Следует считать, что Linux установлен на первом дополнительном разделе первого жесткого диска или на /dev/hda5.
В этой секции рассмотрим, как загружать разные операционные системы. Необходимо начать с процедуры загрузки, поддерживаемой GRUB. Загрузка может быть выполнена двумя путями: 1) Передача управления ядру ОC 2) Передача управления другому загрузчику : Указать корневое устройство или корневую файловую систему. Указать GRUB место нахождения ядра системы и параметры. Перезагрузить компьютер. [Источник 4]
BootX (Apple)
BootX-то программный загрузчик, разработанный и разработанный Apple Inc для использования на линейке компьютеров Macintosh. BootX используется для подготовки компьютера к использованию, загрузив все необходимые драйверы устройств и затем запустив Mac OS X, загрузив ядро на всех PowerPC. Макинтоши, работающие под управлением операционной системы Mac OS X 102 или более поздних версий. Используя BootROM, компьютерную микросхему ПЗУ с постоянной памятью, содержащую OpenFirmware,графическая загрузочная заставка кратко показана на всех совместимых компьютерах Macintosh в виде серого логотипа Apple с вращающимся курсором, который появляется во время последовательности запуска. Программа свободно доступна как часть операционной системы Darwin под лицензией открытого источника Apple Public License License5. BootX был заменен еще один почти идентичный загрузчик с именем bootefi и расширяемым ПЗУ интерфейса встроенного ПО при выпуске Mac4 на базе Intel. [Источник 5]
Загрузчики операционых систем
Admin
Администратор
или что требуется знать по минимуму для того чтобы сделать выбор
Определим так сказать ОПРЕДЕЛЕНИЯ:
1. Операцио́нная систе́ма, сокр. ОС (англ. operating system, OS) — комплекс взаимосвязанных программ, предназначенных для управления ресурсами компьютера и организации взаимодействия с пользователем.см.ВИКИ ну или что там вам нравится смотреть.
Я бы ещё добавил кроме пользователя и ПРИКЛАДНОЕ ПО.
2. Загрузчик операционной системы — системное программное обеспечение, обеспечивающее загрузку операционной системы непосредственно после включения компьютера.
Загрузчиков на сегодняшний момент существует величайшее множество, кто не верит, может удостоверится например здесь или здесь.
), что не может не наводить на мысли о целесообразности использования подобных продуктов.
GRUB4DOS универсальный загрузчик на основе GNU GRUB. Он может управляться в режиме командной строки или с помощью конфигурационного файла. Возможности:
Admin
Администратор
Другой, менее распространённый но не менее интересный загрузчик:
PLoP Boot Manager
Возможности:
Справедливости ради нужно заметить, что USB работает далеко не на всех матплатах или связках контроллер USB — чип устройства. Так что вам может и не повезти.
Итак, основные игроки представлены. Ознакомится со сравнительной таблицей и сделать соответствующие выводы можно здесь.
Также при помощи MultiBoot можно:
— создать конфигурацию с двойной загрузкой как до, так и после установки Windows XP;
— указать операционную систему, загружаемую по умолчанию;
— редактировать записи любой операционной системы в диспетчере загрузки и определить их положение в меню загрузки;
— установить таймаут для меню с выбором загрузки операционных систем;
— экспортировать и импортировать данные конфигурации загрузки;
— отобразить подробные сведения о хранилище загрузки, о загрузочных файлах, раскладе по дискам и разделам, а также сохранить их в текстовый файл;
— запустить командную строку для выполнения команд вручную;
— указать параметры файла boot.ini rdisk и partition при ошибках загрузки в Windows XP.
Характерный отзыв: Блин, Неделю форумы читал. чё тока ни делал, а тут на кнопку нажал и всё, с первого раза запустилась 7. Храни господь автора.
Boot-Loaders это обычные загрузчики, как и для BIOS — загружают ядро в оперативку и прыгают на какой-то адрес. В случае с EFI, Boot-Loaders не используют функции UEFI, из-за чего невозможна совместная работа с Secure Boot (т.е. подпись ядра просто не будет проверяться, и Secure Boot игнорируется). Такие загрузчики умеют загружать, в общем-то, даже ядра без EFISTUB, с любого раздела, с любой ФС и даже с рейда.
Boot Managers это EFI-приложения, которые используют функции EFI для загрузки ядра. По сути, это обычная менюшка, только и всего. Они могут загружать только то, что загружает EFI, и только с тех ФС, которые поддерживает EFI (хотя могут и свои драйверы в EFI загружать).
rEFInd
Refind сам находит установленные ОС и определяет параметры их загрузки. стоит в специальном boot разделе с типом efi. Так же если вставлена загрузочная флешка или диск они тоже появляются в списке.
В отличие от GRUB — rEFInd не является бутлоадером, а является efi-бутменеджером. И по сути представляет собой efi программу лежащую на первом загрузочном разделе в GUIDPT, которая стартует автоматически до загрузки любого бутлоадера.
В общем, чем дальше в лес, тем злее дятлы. Изучайте и выбирайте.
Все, что вы хотели знать про загрузку Windows, загрузчики и восстановление загрузки ОС
В этой статье я не планирую подробно рассказывать обо всех типах загрузчиков, но хочу свести воедино всю необходимую информацию, которую нужно знать для создания загрузочных дисков, флэшек, а также для восстановления загрузчиков.
Принципы загрузки операционных систем
При включении компьютера управление процессором получает BIOS, и если он настроен на загрузку (boot) с винчестера, то он подгружает в оперативную память компьютера первый сектор диска (MBR) и передает управление ему. Если у вас несколько жестких дисков, то каждый из них содержит свою MBR. В этом случае можно или менять порядок загрузки дисков в BIOS, или же прописать все операционные системы с разных дисков в один PBR загрузчик, об этом ниже.
Сразу оговоримся, что если у BIOS у вас включен режим загрузки UEFI, то структура разделов диска у вас должна быть не MBR, а GPT. GPT имеет не только другую структуру разделов, но и другую структуру загрузочной области. Там в первый сектор записывается «заглушка» для BIOS (Protective MBR), которая служит для того, чтобы старый Legacy BIOS мог загрузиться с GPT диска в режиме совместимости, если ОС была установлена на GPT (часто в BIOS его называют CSM – Compatibility Support Module). Однако, вы никогда не сможете загрузить ОС с MBR диска, если в BIOS выставлена загрузка в режиме UEFI.
При загрузке операционной системы, сначала считывается первый сектор с устройства загрузки, представляющий собой главную загрузочную запись (Master Boot Record — MBR). Стандартно, в качестве MBR выступает первый сектор загрузочного диска. MBR содержит список разделов, признак активного раздела (раздела, с которого будет выполняться загрузка ОС), некоторые служебные данные, а также программный код для считывания в память загрузочного сектора активного раздела (Partition Boot Record — PBR) и передачи ему управления.
Размер сектора на жестком диске — 512 байт. В секторе MBR хранятся данные, которые должны заканчиваться специальной сигнатурой. Этим словом называется специальная, строго установленная, последовательность из 2 байт с шестнадцатеричными значениями 55h AAh, которая записывается в последние 2 байта сектора и соответственно имеет смещение от начала сектора 1FEh. Если хотя бы один из двух последних байтов отличается по значению, считается, что первый сектор не является MBR и не содержит осмысленной информации. Если компьютер при старте, прочитав первый сектор, не обнаружит правильной сигнатуры, он не будет передавать управление располагающемуся там коду, даже если он правильный, а выдаст сообщение о том, что главная загрузочная запись не найдена.
Общая структура MBR может быть представлена следующей таблицей:
Смещение Длина Описание
000h 446 Код загрузчика
1BEh 64 Таблица разделов
1FEh 2 Сигнатура (55h AAh)
Длина указана в байтах.
Как видно, MBR может содержать информацию максимум о 4 разделах. Каждый 16-байтовый блок, содержащий информацию о разделах, в своем начале содержит признак активности раздела — т.е. признак того, что операционную систему следует загружать именно из этого раздела — может иметь значения 80h (раздел активен) и 00h (раздел не активен). Количество активных разделов должно быть не более одного.
Шестнадцатеричный однобайтовый код далее указывает на тип (ID) раздела. Например, 07h – раздел типа NTFS, 0Bh – FAT32, 17h – скрытый NTFS раздел, 27h – системный скрытый NTFS раздел для восстановления системы.
Типы MBR
Выше мы увидели, что в сектор MBR записывается код загрузчика. Что же это? Дело в том, что в MBR может быть записан как «стандартный» загрузчик, так и альтернативные загрузчики.
Существуют следующие распространенные типы MBR:
Конечно, с учетом многообразия ОС, существует масса других MBR, но они не так популярны.
Операционные системы дружат только с определёнными типа загрузчиков, однако это не значит, что их нельзя модифицировать для поддержки других ОС. Так, в Windows MBR можно добавить информацию о Linux разделе, но этого недостаточно, чтобы Linux стал грузиться. Для этого также потребуется редактировать и PBR. Однако линуксовый LDLINUX.SYS требует наличия своего микрокода в MBR, чтобы обращаться к нему в процессе загрузки, то есть если у вас загрузочная запись Windows NT MBR, а загрузчик GRUB, то такая схема работать не будет. Виндовсовые загрузчики могут обойтись без наличия соответствующего микрокода в MBR, поэтому они могут грузиться и через GRUB MBR.
Главное, что вам нужно понять, что MBR содержит микрокод, инструкции для процессора, а не файлы. PBR же указывает на загрузчик, который является файлом.
Разнообразие PBR
Мы с вами выяснили, что MBR передает управление на активный раздел с PBR. PBR (Partition Boot Record), так же называют volume boot record (VBR) – это микрокод в начальном секторе раздела диска (часто это сектор 63), который содержит информацию, какой же загрузчик искать.
Существуют следующие загрузчики:
Тип MBR — NT 5.x/6.x, 1 сектор
Тип MBR — Grub4DOS, 18 секторов
Тип MBR — LILO/GRUB и др. линуксовые (к-во секторов зависит от версии и количества файлов)
Как я сказал выше, загрузчик является не загрузочной областью, а бинарным файлом.
Например, типичные пример создания мультизагрузочной флэшки – Multiboot USB 2k10, создаваемые уважаемыми conty9 & korsak7. Мультизагрузочный диск системного администратора с возможностью загрузки c CD/DVD, флешки, USB-HDD и обычного HDD и состоящий из нескольких Windows PE-сборок, а также DOS версий продуктов компании Acronis – например Acronis True Image (выполнены на Linux-ядре). Именно из-за этого смешанного зоопарка систем и приходится использовать загрузчик Syslinux (хотя можно и Grub4DOS).
В своем арсенале вам необходимо обязательно иметь утилиту BootICE. Уникальная в своём роде утилита для изменения или бэкапа/восстановления MBR (Master Boot Record) или PBR (Partition Boot Record). С BOOTICE, вы можете легко изменять тип MBR/PBR. Поддерживается загрузочные записи: Grub4DOS, SysLinux, PLoP, MS NT52/60… Например, с помощью этой утилиты, вы можете установить Grub4DOS вашим MBR или PBR, установить NTLDR или BOOTMGR к вашему PBR, установить SYSLINUX на PBR, и так далее.
Редактирование и установка MBR
Редактирование и установка загрузчика
Установка MBR GRUB4DOS
Помимо работы с MBR и PBR, BootICE позволяет редактировать разделы диска, выполнять ручное разбиение и форматирование, модифицировать тип раздела, сохранять и восстанавливать из бэкапа таблицу разделов.
Работа с таблицей разделов в BootICE
Кратко о загрузчике Syslinux
Итак, Syslinux состоит из файла загрузчика и файла конфигурации меню syslinux.cfg. Файл меню может вызывать графическое меню через подгрузку файла vesamenu.c32.
Установка Syslinux под Windows на другой диск выполняется достаточно просто: используется файл «[bios/]win32/syslinux.exe» для 32-х битных систем и «[bios/]win64/syslinux64.exe» для 64-х битных систем.
syslinux.exe —install a: — установка на флоппи-диск
syslinux.exe —mbr —active —directory /boot/syslinux/ —install z: — установка на диск z:, например флешку, где
— в качестве разделителей должны быть использованы именно /, а не \
— в каталоге z:\boot\syslinux\ будет размещён файл-загрузчик «ldlinux.sys»
— и раздел z: помечен как активный
— для организации меню должен быть создан файл z:\boot\syslinux\syslinux.cfg
Установка загрузчика Syslinux
Через BootICE вы также можете установить загрузчик Syslinux, указав в опциях альернативное местоположение файлов ldlinux.sys и и файла меню syslinux.cfg.
Загрузчики Windows
Конечно, основное внимание мы уделим загрузчикам для Windows.
Загрузчик NTLDR использовался до появления операционной системы Windows Vista. В процессе начальной загрузки, программный код загрузочного сектора раздела (PBR — Partition Boot Sector) обеспечивал поиск, считывание в память и передачу управления файлу ntldr, который размещался в корневом разделе загрузочного диска. Конфигурирование загрузчика ntldr выполнялось с помощью простого текстового файла boot.ini, содержимое которого задавало список загружаемых операционных систем, их параметры загрузки, размещение системных файлов и т.п. В операционных системах Windows Vista /Server 2008 и более поздних, загрузчик ntldr не используется, и заменен диспетчером загрузки BOOTMGR. Соответственно, изменился и программный код загрузочного сектора раздела, обеспечивающий передачу управления файлу bootmgr. Новый диспетчер загрузки использует собственные данные конфигурации загрузки (Boot Configuration Data — BCD) и может выполнять, при определенных настройках, загрузку любых операционных систем семейства Windows. Загрузчик ntldr не поддерживает возможность загрузки Windows Vista и старше.
Также, хочу отметить, что все современные Windows PE любых версий также используют загрузчик bootmgr. Цепочка стадий загрузки MBR — PBR — BOOTMGR — это минимально необходимое условие для того, чтобы загрузка операционной системы могла начаться. Дальнейший же ее ход, определяется диспетчером загрузки BOOTMGR, который считывает данные конфигурации загрузки из файла \BOOT\BCD активного раздела и выполняет загрузку в соответствии с их содержимым.
Для Windows 7 он запускает файл \WINDOWS\system32\winload.exe
Загрузка WINDOWS\system32\winload.exe
Диспетчер загрузки bootmgr позволяет выполнить загрузку как с обычного системного диска, так и из загрузочных образов, виртуальных дисков, загрузку с использованием загрузчиков других операционных систем. Это позволяет использовать bootmgr для загрузки Windows PE. В соответствии с конфигурацией загрузки, диспетчер BOOTMGR может выполнить загрузку ядра Windows или, например, Linux, обеспечить выход из режима гибернации, загрузить диагностические программы, выполнить загрузку ядра с измененными параметрами и т.п.
Обычно файл bootmgr имеет атрибуты «скрытый» и «системный». По типу структуры, файл \Boot\BCD является кустом реестра и отображается в редакторе реестра Windows как раздел
Обычно именно конфигурация BCD становится наибольшим камнем преткновения.
Конфигурирование BOOTMGR и BCD
Для работы с загрузчиком Windows вам понадобятся системные утилиты:
Команда BCDEDIT применяется в операционных системах Windows Vista и старше для редактирования BCD. Подробную инструкцию по использованию этой утилиты можно найти здесь.
Однако, я вам крайне рекомендую использовать очень удобную программу EasyBCD для редактирования BCD. Например, с помощью нее вы легко можете добавить Linux раздел в меню загрузки. Вот статья о том, как добавить в BCD конфигурацию Windows 7 пункт загрузки Linux Ubuntu.
При запуске EasyBCD в окне View Settings можно посмотреть текущую конфигурацию BCD. На скриншоте видно, что в текущий момент на диске установлена одна Windows 7, GUID которой <9079c27c-fa49-11e5-8c8e-3417ebc2574d>и вручную добавленный пункт меню для запуска установки Windows из WIM файла:
BCD menu для загрузки Windows и установки из WIM файла
А вот BCD меню загрузочной флэшки, на которой присутствуют инсталляторы Windows 7 x86 и x64, а также две среды MSDaRT x86 + x64:
BCD меню загрузочной флэшки, overview
BCD menu — установка Windows из WIM файла x86 и x64
Запуск среды восстановления Windows RE с загрузочной флэшки
Утилита BOOTSECT.EXE позволяет изменить программный код загрузчика Windows для переключения между двумя вариантами диспетчера загрузки — BOOTMGR или NTLDR – или восстановить поврежденный загрузчик!
Команда bootsect /nt60 E: /mbr /force – создает на диске E: (например, флэшке) записи MBR и PBR и устанавливает загрузчик bootmgr.
Ну и третья, крайне важная утилита — BootRec входит в состав средств среды восстановления Windows (Windows Recovery Environment) и применяется для восстановления загрузки операционной системы. Найди ее вы можете, загрузившись с установочного диска Windows и выбрав вместо установки опцию «Восстановление системы». Появится окно MSDaRT, откуда можно запустить командную строку и набрать там BootRec.exe. MSDaRT также можно скачать отдельно (это бесплатный продукт Microsoft) и сделать загрузочную флэшку/диск с ним.
Команда Bootrec /FixMbr – записывает основную загрузочную запись (MBR) системного раздела, совместимую с Windows. При этом существующая таблица разделов не перезаписывается.
Bootrec /FixBoot – записывает в системный раздел новый загрузочный сектор, совместимый с Windows.
bootrec /RebuildBCD – перестроить хранилище конфигурации загрузки на данном компьютере. Удобно использовать для изменения конфигурации BCD при добавлении нового диска с установленной Windows, или для внесения изменений в существующую конфигурацию загрузки новых или ранее не использовавшихся ОС.
Загрузчик GRUB4DOS
Это один из наиболее универсальных загрузчиков, способных загружать почти любую операционную систему с любого носителя. Пользователям Linux установка GRUB очевидна, для Windows все не так просто. GRUB имеет смысл использовать, например, одним из загрузчиков мультизагрузочной флэшки, ведь он поддерживает chainloader — передачу управления на другой загрузчик по цепочке. Таким образом, на флэшке можно установить GRUB MBR, который будет обращаться к загрузчику grldr, который в свою очередь через меню позволяет перенаправить запросы на bootmgr, например, для установки Windows.
Загрузчик состоит из следующих файлов:
Файл grldr.mbr нужен для установки GRUB в качестве MBR. Итак, GRUB можно установить руками под Windows или же воспользоваться различными утилитами.
Установка GRUB загрузчика под Windows
Представим, что у вас уже есть Windows с загрузчиком bootmgr. Вам необходимо будет добавить в BCD записи о новом загрузчике, чтобы не лишаться существующего. Порядок действий:
Вот и все, не так и сложно.
Сложнее отредактировать меню menu.lst. Вот список основных команд консоли GRUB (их можно исполнять как вручную из командной строки, так и из файла меню):
Приведу примеру рабочих кусков кода из файла меню:
title Alkid Live CD root (hd0,0) chainloader (hd0,0)/minint/setuplns.bin
Если вам совсем не хочется, существует программа GRUB4DOS Installer, и даже удобный русский инсталятор для нее, но этот вариант вам не позволит сделать комбинированный загрузчик. Он задаст вопрос, куда распаковать файлы и куда установить загрузчик, после чего сделает все сам: отформатирует, установить MBR, скопирует файлы. Но я лично против такой «автоматизации».
Также, для любителей конфигурировать загрузчик из-под Windows, существует утилитка WinGRUB, которая устанавливает GRUB без форматирования флэшки.
Если все-таки вам не хватило нервов и сил разобраться в написании меню, то есть программки, которые сделают меню загрузки и установят загрузчик за вас, вам нужно только выбрать ISO файлы дистрибутивов, которые надо добавить:
Для желающих создать подобные флэшки рекомендую также почитать профильные сайты: greenflash.su, flashboot.ru и usbtor.ru.
Выводы
Итак, чтобы была возможность загрузить ОС, необходимо, чтобы был установлен корректный загрузчик MBR, который заканчивается валидной сигнатурой, должна быть таблица разделов, и хотя бы один раздел должен быть помечен как активный. А в самом разделе, куда MBR передаст управление, должна быть валидная загрузочная запись, которая укажет, какой системный файл необходимо загрузить в память для начала загрузки самой ОС. Кроме того, должно быть загрузочное меню, которое укажет на местоположение загрузочных файлов ОС.