12.19. Альтернативная загрузка Windows и Linux с использованием LILO

Проблема

Требуется организовать альтернативную загрузку Linux и Windows (или нескольких экземпляров каждой из систем).

Решение

Самый простой способ — установить все версии Windows, которые должны работать в системе. Всегда устанавливайте их по порядку, начиная с самой старой. Например, если у вас есть Windows 95, Windows 98 и Windows XP, первым устанавливается Windows 95, затем 98 и только потом XP. Это важно, так как старые версии Windows могут перезаписать загрузчик новых систем.

Сохраните четвертый первичный раздел для Linux. В системе может быть установлен только один экземпляр Windows 95/98/ME, потому что эти системы не поддерживают альтернативную загрузку. В то время как Windows NT/2000/XP поддерживают многозагрузочную среду и создают записи для каждого установленного экземпляра в своем загрузочном меню.

Установите Linux в последнюю очередь. Сделайте четвертый первичный раздел расширенным и создайте логический раздел для Linux. Во время установки Linux установите LILO в MBR (Master Boot Record). LILO автоматически создаст запись для Windows, что сделает настройку многозагрузки проще.

# Стабильное ядро 2.4
image=/boot/vmlinuz-2.4.21
label="Libranet-hd3"
root=/dev/hda5
read-only

# Windows
other = /dev/hda1
label="Windowses"
table = /dev/hda

Для Windows достаточно одной записи, потому что LILO передает управление загрузочному меню Windows. Это меню уже содержит записи для всех установленных версий Windows, что позволяет легко переключаться между ними.

Комментарий

Когда в системе установлено несколько версий Windows, загрузчик Windows всегда относится к первой из них. Таким образом, если в /dev/hda1 установлена система Windows 95, а в /dev/hda2 — Windows 2000, LILO всё равно будет использовать /dev/hda1 для запуска загрузочного меню Windows. Это связано с тем, что Windows всегда сначала загружает свою первую установленную версию.

Если вы столкнулись с необходимостью добавления новых версий Windows после установки Linux, придётся обновить конфигурацию LILO и заново установить его в MBR. Команда для этого:

# /sbin/lilo

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

См. также

Lilo(8), lilo.conf(5); /usr/doc/lilo или /usr/share/doc/lilo; Microsoft Knowledge Base Article 217210: «How to Multiple Boot Windows XP, Windows 2000, Windows NT, Windows 95, Windows 98, Windows ME, and MS-DOS» (https://support.microsoft.com/kb/217210).