GRUB - GRand мира загрузчиков



             

Каким образом? - часть 2


Тип "таблица дефектных блоков Xenix" используется для "маскировки" разделов, а зачем такая "маскировка" нужна, станет ясно чуть позднее;
  • прибавление 0x10 к идентификатору типа раздела делает его "скрытым" (hidden). Правда, на эту "скрытость" MicroSoft перестала обращать внимание, начиная от win'2000.
  • исполняемый код MBR, в отличие от таблицы разделов, не стандартизирован и разные ОС относятся к нему по разному: некоторые при инсталляции переспрашивают, можно ли перезаписать MBR, а некоторые - нет. Младшие MS Windows - нет. Спасибо, хоть таблицу разделов не затирают. Отсюда вывод: MBR нужно уметь сохранять, восстанавливать, а лучше - формировать заново;
  • и, наконец, схема загрузки, исповедуемая MicroSoft. Порядок изложения - "обратный". То есть, от загрузки собственно ОС до операций BIOS, выполняемых по включению компьютера:
    • ОС загружается начальным загрузчиком, записанным в нулевой блок первичного раздела, в который инсталлировалась ОС (в отличие от MBR, он уже не "master", а просто "boot record"). Начальный загрузчик записывается ОС при инсталляции;
    • начальный загрузчик, в свою очередь, загружается главным загрузчиком (тем, что записан в MBR);
    • код главного загрузчика, записываемый в MBR ОС MicroSoft, бесхитростен: найти в таблице разделов первый из загружаемых первичных, считать в память его начальный загрузчик и передать на него управление;
    • ну, а главный загрузчик, если помните, считывается в память самим BIOS.
    В случае с NT в результате описанных выше действий запускается не ОС, а NTLoader - собственный мультизагрузчик NT.
    Действия над MBR, выполняемые ОС при инсталляции (в том случае, если MBR всё-таки переписывается, разумеется), таковы:
    • переписать исполняемый код MBR;
    • установить бит загружаемости (активности) раздела, в котором инсталлируется ОС, сбросив его при этом у всех остальных первичных разделов.
  • В принципе, из вышеизложенного уже можно догадаться, что нужно сделать для достижения поставленной задачи:

    • инсталлировать первую систему, не занимая ею всё дисковое пространство, разумеется;
    • "маскировать" первую систему;
    • инсталлировать вторую систему;
    • при желании: таким же образом - третью;
    • "демаскировать" все установленные системы;
    • инсталлировать мультизагрузчик.



    Содержание  Назад  Вперед