Grub2 MBR против Windows MBR

У меня есть система HP, которая поставляется с установленной Vista, а также скрытый раздел восстановления. Впоследствии я был обновлен до Win7 (32 бит) Ultimate, а оттуда в Win7 Pro. Теперь жесткий диск не работает. Мне удалось использовать partimage, чтобы захватить раздел восстановления (без ошибок), прежде чем положить его на лед в рамках подготовки к восстановлению раздела Win7 на основе замораживания.

На другом диске я создал 3 первичных раздела и один расширенный раздел:

  1. Раздел восстановления (NTFS)
  2. Раздел Win7 (NTFS)
  3. Корень Ubuntu (ext4)
  4. Ubuntu swap (ext4) (логический раздел)

Затем я установил Ubuntu 10.4 и разрешил grub2 установить MBR. Затем я использовал partimage для заполнения раздела восстановления изображением, которое я снял с диска с ошибкой. Теперь, прежде чем я попытаюсь восстановить раздел Win7, я хочу быть уверенным, что могу получить доступ к существующему разделу восстановления. И я не могу. Я могу видеть файлы, но я не могу загрузить его. Grub видит это как часть Windows и перечисляет ее в меню. Но когда я пытаюсь загрузить его, я просто смотрю на пустой экран с мигающим курсором. Я попытался обойти grub, используя gparted, чтобы сделать раздел восстановления активным и загрузиться непосредственно к нему, а не grub, но я все еще загружаюсь в grub.

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

  1. Насколько я понимаю, стандартный код MBR IBM / WIndows выглядит в таблице разделов для первого первичного раздела с установленным активным / загрузочным флагом, а затем передает управление коду, который он находит в начале этого раздела, или «загрузка раздела Запись "(PBR). Затем PBR находит NTLDR / BOOTMGR / grub / etc и загружает его. Правильно ли я понимаю?
  2. Где в процессе загрузки находится ключ прерывания (f11 в случае HP) для загрузки в раздел восстановления? MBR? PBR? Менеджер загрузки / загрузчик?
  3. Когда grub пишет MBR, он также, кажется, использует остальную часть дорожки 0, а код MBR выполняет этот код, прежде чем переходить к загрузке остальной части кода grub в любой раздел, в который он загружен (в моем случае раздел 3). В этом смысле он игнорирует активный / загрузочный флаг в таблице разделов. Правильно ли я это понял?

Я, очевидно, пропустил некоторые части здесь, потому что я не могу загрузить мой раздел восстановления. Я бы подумал, что команда grub «chainloader» (почему +1?) Просто выполнит код PBR. Если это так, то что-то в моем разделе восстановления будет заблокировано.

3 Solutions collect form web for “Grub2 MBR против Windows MBR”

В системах с таким разделом восстановления обычно активным разделом является раздел восстановления. Раздел восстановления отображает сообщение «Нажмите F11», а если не нажимается, переходите к основному разделу ОС.

MBR существенно тупой; Все, что он делает, – это выбрать один из разделов и перейти к VBR этого раздела.

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

Я не буду тратить время на раздел восстановления – вы можете получить все драйверы с веб-сайта HP, и если у вас уже есть 7 на коробке, я думаю, мы оба согласны с тем, что хотим вернуться к Vista, маловероятно.

Итак, к вашим конкретным вопросам.

  1. Да, ваше понимание верно
  2. Ответил выше
  3. Не определенно, что GRUB делает при установке в MBR. Насколько я понимаю, на самом деле это не привело к бизнес-логике, но я мог ошибаться.

Надеюсь, это поможет 🙂

Вопрос 3: Да, grub делает некоторые из себя в треке 0. Я лично никогда не кладу grub в mbr, я всегда использую «нормальный» mbr и устанавливаю grub в первичный раздел.

Независимо от того, будет ли использоваться часть диска, которая не помечена как используемая, будет зависеть проблема. Я считаю, что разделяющий диск в Windows Vista и 7 ведет себя по-другому с предыдущей версией, но я не знаю, использует ли он запасные части трека 0.

Недавно я слышал о людях, у которых проблемы, потому что пробная версия программы (что-то? Adobe) записывает в эту область диска, перезаписывая некоторые из grub (чтобы иметь возможность остановить повторное подключение к повторной попытке снова и снова, я полагаю). (Прослушайте недавний эпизод подкаста Ubuntu UK для подробностей). Мое мнение таково, что, если вы пишете в те области, которые не принадлежат вам, вы не можете жаловаться на то, что другие люди делают то же самое.

МБР-бит grub записывает адрес физического диска следующего этапа в свой собственный код и вообще не замечает никаких разделов, активных или нет.

MBR (1 сектор, 512 байт) содержит загрузочный код и таблицу разделов. «MBR-код по умолчанию» находит активный основной раздел, и цепочка загружает его. (В языке GRUB, +1 означает первый сектор, загрузочный сектор этого раздела.)

Когда вы устанавливаете GRUB в MBR, он заменяет MBR по умолчанию (сохраняя таблицу разделов, конечно) и вместо этого загружает остальную часть основного изображения GRUB, которая установлена ​​в «пробеле MBR» – предположительно неиспользуемой части Первый «трек», который появляется после сектора MBR. Если вы установите GRUB в раздел, он устанавливает его как загрузочный сектор; Стандартная кодовая цепочка MBR загружает загрузочный сектор GRUB.

Вот почему вы всегда используете GRUB – это то, что изменил код в MBR. Вы можете восстановить MBR-код по умолчанию с некоторым изменением fixmbr .

Но в лучшем случае это только докажет, что ваш образ раздела восстановления хорош, и вы можете получить к нему доступ через варильный MBR. На самом деле, если вы докажете, что ваш образ раздела восстановления плох, возможно, именно поэтому он не работал через GRUB, и если бы это было хорошо, это сработало бы. Так что может быть лучше, если вы можете сделать хорошую копию.

Возможно, раздел восстановления не загрузится через GRUB, по какой-то причудливой причине. Возможно, на фабричном оригинальном MBR был особый соус, который был предварительным условием для раздела восстановления. Я избегал систем, которые имели их, поэтому я не могу предложить там много проницательности.

  • Рабочий стол Karmic Koala показывает только обои, ничего больше
  • Есть ли AutoHotKey для Ubuntu?
  • В Google Chrome на Linux, где есть flv, если нет в / tmp?
  • Является ли мой Ubuntu установленным 32 или 64-битным?
  • Как перенаправить субдомены без указания домена?
  • Установлен / обновлен UEFI Windows 8 после Ubuntu - Восстановить GRUB
  • Доступ к реестру Windows из Ubuntu
  • Установка Windows 7 на машине с двойной загрузкой
  • Перезагрузка правил udev не выполняется
  • Размер шрифта emacs в ubuntu
  • Как настроить предпочтительные приложения в Nautilus по расширению файла, а не типом mime?
  • Interesting Posts

    Как захватить событие «виртуальная клавиатура show / hide» в Android?

    Вопрос о прекращении streamа в .NET.

    Возможны ли мелкомасштабные распределенные вычисления по домашней сети?

    OpenVPN заставляет WLAN / WiFi отключиться в Linux?

    Почему мои моноширинные шрифты ведут себя беспорядочно?

    Не удается установить Windows Server 2003

    Когда следует использовать шаблон дизайна посетителя?

    Могу ли я использовать разъемы CAT5e с кабелем CAT6?

    Android: удалить уведомление из панели уведомлений

    Как обмениваться данными с двумя (2) classами SwingWorker в Java

    Локальное программное обеспечение резервного копирования?

    Не удалось найти допустимый путь сертификации для запрошенной целевой ошибки даже после импорта сертификата

    Установка ядер процессора не зависит от всех потоков, не указанных (предпочтительно в Windows 7)

    Почему Class.newInstance () «злой»?

    Как запустить эмулятор Android из командной строки?

    Давайте будем гением компьютера.