Мультизагрузка (multiboot system) - Windows, Linux и все все все


Spacer

Избранные статьи

Сайт недорого!
Контент-маркетинг
Реклама в Интернет
Двойная загрузка Ubuntu и Windows 8
Как сделать двойную загрузку Ubuntu 14.04 и Windows 8 ...
Установка программ на Андроид
Установка новых программ на Андроид вполне проста. Есть два способа ...
Как раздать Интернет по WiFi на Windows 7
... инструкция как раздать WiFi с Windows 7 ...
Точка доступа WiFi на Андроид
... инструкция как раздать WiFi с Андроида ...
Точка доступа WiFi на Windows 8.1
... инструкция как раздать WiFi с Windows 8.1 ...
USB модем Билайн, Мегафон, МТС
не работает, не подключается - что делать?
Раздача интернета по сети
Как расшарить интернет по сети Linux и Windows...
Точка доступа на Ubuntu 12.04
...Создание WiFi точки доступа на Ubuntu 12.04...
Настроить WiFi на Windows 7
...в этой статье будет описан процесс настройки шаг за шагом с иллюстрациями...
DSL, FTTx - настройка интернета МТС, Ростелеком
Настройка pppoe соединения в Windows 7...
Инструкция по Андроид
...Обзор и описание графического интерфейса Андроид (Android)...
Как расшарить файлы и папки Linux
... сетевой доступ без пароля на Linux...
Настройка Ubuntu 14.04
... скорость и удобство работы Ubuntu 14.04 ...
Как выбрать SSD?
... характеристики SSD ... функции SSD...
Как выбрать монитор?
... характеристики монитора ... функции монитора...
Как выбрать планшет?
... характеристики планшета ... функции планшета...
Как выбрать фотоаппарат
... будет описано устройство фотоаппарата ... перечислены виды фотоаппаратов...
Установка Windows 7 c USB-флешки
Используя USB Flash можно установить Windows 7...
Установка Ubuntu 12.04 LTS ...
простая инструкция как установить Linux Ubuntu 12.04 поверх Windows 7 ...
Установка Windows XP/7 на нетбук
Сложность установки Windows XP на нетбуки заключается в том, что эти компьютеры не имеют CD-DVD приводов ...
Загрузочная установочная USB-флешка Windows 7 или 8
...Как сделать установочную USB-Flash Windows 7 или 8...
Как записывать диски ...
... Теория и практика записи CD и DVD дисков ...
Как записать MP3 ...
Запись диска с mp3 треками, который может быть прочитан в бытовых mp3 плеерах ...
Флешка CD-ROM
как создать USB CD-ROM из флеш-диска Apacer ...
Записываемые CD и DVD диски ...
На сегодняшний день (начало 2005 года) существует три базовых типа (формата) записываемых дисков DVD ...
 
По мере того как увеличивается количество операционных систем для сегмента настольных компьютеров все более интересным и актуальным становится вопрос двойной, тройной и так далее загрузки. То есть возможности запускать на одном компьютере более одной операционной системы.

Ubuntu Linux поверх Windows XP или Vista, Windows XP вместе с Vista, FreeBSD и Windows - можно придумать и гораздо больше комбинаций. Ничто не мешает, не только придумывать, но и реализовывать самые замысловатые комбинации операционных систем. Причем это можно делать не только на одном компьютере, но и на одном диске - емкость современных жестких дисков (они же HDD, они же винты, они же винчестеры) позволяет "впихнуть" на один такой диск хоть 20 различных операционных систем.

Немного теории

Процесс загрузки компьютера, относящегося к семейству IBM PC выглядит следующим образом:

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

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

  1. Обнаружить на определенной файловой системе определенный программный файл (или файлы)
  2. Загрузить этот файл (или файлы) в оперативную память и передать им управление.

Такие программы-загрузчики бывают двух типов:

  • "Абстрактные" - созданные для загрузки различных операционных систем.
  • "Семейные" - программы, которые умеют загружать лишь одну операционную систему или несколько ОС одного семейства, но разных версий.

Из первых самый популярный загрузчик под названием GRUB. Он умеет загружать более десяти типов операционных систем. Самый распространенный среди "семейных" это ntldr - загрузчик ОС Windows 2k, XP, 2k3 и его новейшая версия bootmgr загружающий Windows Vista и Windows 7. Кроме этих двух существует еще десятка два различных загрузчиков.

Почему так много? Причина проста - пока еще не существует универсального загрузчика, пригодного на все случаи жизни.

К примеру, GRUB, самый мощный на сегодняшний день, не может загружать образы дисков в формате ISO, но это умеет делать syslinux.

Однако недостатки, существующие в каждом из загрузчиков не накладывают ограничений на возможные варианты загрузок благодаря тому, что из одного загрузчика можно запустить другой.

Например, через один из "примитивных" загрузчиков ntldr можно при помощи простого трюка запустить любое количество других загрузчиков, а это дает возможность реализовать самые изощренные фантазии по мультизагрузке.

От старта одной лишь MS Windows, до запуска всех версий Windows, плюс десяток версий Linux, плюс BSD, плюс Apple, плюс десяток файлов-образов дисков и дискет, плюс …

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

Наличие большого количества загрузчиков и возможность их запуска друг из друга дают еще и вариативность при решении одной и той же задачи. Например, двойную загрузку Windows XP плюс Linux можно реализовать как минимум двумя путями - либо использованием одного загрузчика GRUB для обеих ОС, либо комбинацией загрузчиков ntldr + GRUB.

Еще немного теории

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

Та часть парадигмы компьютеров семейства IBM PC, которая относится к использованию дисков, определяет, что так называемое "сырое" дисковое пространство должно быть поделено на разделы, затем на этих разделах должны быть созданы файловые системы и только после этого, уже на эти файловые системы можно записывать программы и данные, в том числе операционные системы.

В рамках парадигмы IBM PC допускается деление "сырого" адресного пространства жесткого диска (HDD), на четыре первичных раздела. То есть, упрощенно говоря, применительно к нашей теме, на одном жестком диске можно разместить четыре операционные системы. Это очень мало. Однако не все так грустно. Уже давно эта проблема решена при помощи расширенных разделов. Расширенный раздел это первичный раздел диска, который можно поделить еще на 255 разделов.

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

От теории к практике

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

  1. Разделение диска на разделы
  2. Создание на разделах файловых систем
  3. Выбор основного загрузчика или комбинации загрузчиков
  4. Установка операционных систем

Вроде все коротко и просто. Но только на первый взгляд. Дело в том, что на каждом из этапов возможны различные варианты и итоге получается столько различных способов создания мультизагрузочной системы, что я даже не буду пытаться их рассмотреть.

Мы пойдем другим путем.

Просто ответим на вопросы:

  1. Как наилучшим образом разделить диск на разделы?
  2. Какие файловые системы выбрать?
  3. Какой загрузчик выбрать?

После многих лет работы и экспериментов на первый вопрос у меня ответ такой:

Первичный раздел относительно небольшого размера. На нем размещается основной загрузчик и возможно одна из операционных систем.

Второй раздел расширенный. Он занимает основную часть диска и содержит столько логических разделов, сколько необходимо для установки всех операционных систем, которые хочется установить - 5, 10 или 20.

В чем преимущество такого подхода?

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

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

Вопрос второй - файловая система и размер первичного загрузочного раздела.

Если изначально планируется установка более чем двух или трех ОС, а также их регулярная переустановка, то лучше всего делать размер первичного раздела совсем небольшим 1-2 Гб, а файловую систему для этого раздела использовать FAT или FAT32. Никакую серьезную ОС на этот раздел не ставить, разве что-нибудь легкое типа MS DOS.

Какой-нибудь знаток тут может сказать, что FAT это каменный век, да и FAT32 тоже древность изрядная и что у них куча недостатков. Это так, но у этих файловых систем есть достоинство очень важное в контексте мультизагрузочной системы. Практически, пожалуй, нет ОС или прикладной программы, которая бы не умела работать с этими файловыми системами. И это очень большое преимущество - если в процессе установки какой-нибудь очередной ОС или очередного загрузчика, возникнет проблема, то можно будет легко получить доступ к разделу и к файлам загрузчиков при помощи даже самых примитивных средств. Кроме того, использование файловых систем FAT или FAT32 расширяет количество загрузчиков, которые можно будет установить на этот раздел. К примеру, загрузчик syslinux можно установить только на файловую систему FAT или FAT32.

В более распространенном случае - когда устанавливается только две-три ОС, размер первичного раздела лучше выбрать таким, чтобы на него можно было установить ОС Windows с базовым набором программ, то есть не менее 10 - 15 Гб. Соответственно файловую систему в этом случае выбирать NTFS.

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

И, наконец, какой загрузчик использовать в качестве первичного.

Я уже давно остановил свой выбор на ntldr. Хотя он вполне "тупой", кроме Windows ничего больше не умеет загружать, но есть в нем одна интересная особенность - он может загружать файловые образы дисковых секторов (физические сектора диска, записанные в файл). А это означает, что ему можно скормить файл с головой любого другого загрузчика. То есть из ntldr можно загрузить любое количество других загрузчиков, достаточно сделать файлы с их головами и по списку скармливать их ntldr.
Примечание. "Голова" загрузчика это сектор MBR или Boot. Это может быть и более одного сектора, например голова GRUBа - 16 секторов начиная с MBR.

Примечание. В том случае если голова загрузчика более одного сектора, копировать в файл для ntldr нужно только первый сектор (MBR сектор), поскольку ntldr может загружать только односекторные файлы. Это накладывает ограничение на количество одновременно установленных загрузчиков с "длинной", головой. То есть в схеме с ntldr нельзя использовать два GRUBа.

Итак.

Схема мультизагрузочной системы выглядит следующим образом:

Для редких случаев - маленький первичный раздел с файловой системой FAT или FAT32 и без ОС, только загрузчик. При этом все ОС устанавливаются в логические разделы расширенного раздела.

Для более распространенных случаев - небольшой первичный раздел с файловой системой NTFS, куда устанавливается ОС Windows и загрузчик. Остальные пара-тройка ОС в логические разделы расширенного раздела.

Все очень просто.

Примечания

Если вариант мультизагрузки совсем уж простой, что-то типа Linux поверх Windows, когда Linux устанавливается на компьютер где уже есть Windows, то можно не заморачиваться с ntldr. При установке любого современного, популярного дистрибутива Linux есть возможность автоматически установить загрузчик GRUB, а он умеет загружать обе эти ОС.

Установить загрузчик ntldr можно вручную, отдельно от ОС Windows. Однако установить его можно только на раздел с файловыми системами FAT, FAT32 или NTFS. При установке ntldr нужно помнить, что его голова записывается в Boot сектор, а потому для его старта нужен еще и стандартный предзагрузчик типа MS DOS в MBR секторе (то есть выполняющий "прыжок" на Boot сектор). Если в MBR была записана голова другого загрузчика (например, GRUBа), то помимо установки ntldr нужно еще записать предзагрузчик Microsoft в MBR. Один из способов сделать это команда fdisk /mbr. Естественно, что fdisk в данном случае от компании Microsoft (из MS DOS).

Хотя при установке любой современной ОС, можно создавать разделы и файловые системы непосредственно в процессе установки, тем не менее, я советую делать это отдельно. Сначала при помощи программы типа fdisk или Partition Magic создаете нужные разделы, а уже затем запускаете установку ОС и в процессе указываете раздел, куда нужно ставить систему.

При установке любой ОС на мультизагрузочную систему нужно быть очень внимательным на этапе выбора типа разметки диска и выбора раздела. Некоторые установщики, например c диска Ubuntu Live, по умолчанию предлагают опции типа "установка на весь диск" или "автоматическая разметка диска". Если пропустить эти опции, то ваша мультизагрузочная система будет уничтожена. Также нужно быть аккуратным, когда вручную указываешь установщику раздел для установки - по невнимательности можно записать новую ОС в используемый раздел и тогда все, что на нем было ранее, будет уничтожено.

Прежде чем устанавливать новую ОС или новый загрузчик заранее приготовьте "ремкомплект" - набор данных и программ, который позволит вам восстановить загрузку системы в ее текущем состоянии. Может, получиться так, что после установки новой ОС или нового загрузчика, часть старых ОС не будет загружаться.

Мультизагрузка с флеш-диска, по своей организации, ничем не отличается от описанной здесь загрузки с HDD. С той лишь поправкой, что на флеш-диске нецелесообразно устанавливать файловые системы иные, чем FAT / FAT32. Если используется USB HDD, то с ним можно работать так же как с обычным HDD.

Однако загрузиться с флеш или USB диска можно не на каждом компьютере. Будьте готовы к тому, что на каком-либо компьютере вы не сможете это сделать. Чаще всего такие проблемы возникают с компьютерами, на которых используются BIOS Award или чипсеты nVidia, SiS, Amd. Реже всего проблема загрузки возникает, если на материнской плате BIOS AMI и чипсет Intel.

Разные загрузчики записывают свои головы в разные сектора. Загрузчики ntldr и bootmgr в boot сектор первичного загрузочного раздела, и только туда. Syslinux так же в boot сектор. Готова GRUBа может быть записана как в сектора первичного раздела (16 начиная с MBR), так и в сектора логического раздела (в этом случае запись начинается с boot сектора раздела).

Частные случаи систем с мультизагрузкой описаны в статьях

Иван Сухов, 2010 г.

Поделитесь этим сайтом с друзьями!

Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь - поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354. Или на телефон +7 918-16-26-331.

Или другими способами (с карты, с тедефона), через сервис безопасных платежей Яндекс.

Даже небольшая сумма может помочь написанию новых статей :)

Или разместите где-нибудь ссылку на эту статью.

 

  Copyright digital.workshop 1999 - 2017.  
Это произведение доступно по лицензии Creative Commons Attribution-NoDerivs 3.0.
Developed by digital.workshop