ДЛЯ НАЧАЛА: ЖИВЫЕ

- Knoppix -
Линукс за пять минут
- Puppy Linux -
Хороший друг


ДЛЯ ДЕЛА: ПРОФИ

- Debian -
Он такой один
- Linux Mint -
С родинкой на щеке!
- CentOS -
Копейка рубль бережёт!
- Fedora -
По следам Red Hat
- Ubuntu Linux -
Мы одной крови!
- Mageia -
Красота и удобства
- openSUSE -
Настоящее немецкое качество
- Slackware -
Линукс из кубиков
- ALT Linux -
Что русскому хорошо





ДЛЯ ДЕЛА: РОЛЛЫ

- ArchLinux -
Гениальное - просто!
- PCLinuxOS -
Просто линукс
- Aptosid -
Почувствуй силу!


ДЛЯ ДЕЛА: СОБЕРИ САМ

- Gentoo -
Каждому своё
- LinuxFromScratch -
Линукс с нуля


ДЛЯ ДЕЛА: ЛЁГКИЕ

- DeLiCate -
Старость в радость!
- SLAX -
Тысяча и один модуль


ЗАЩИТА

- OpenWall -
Не стучите, закрыто!
- Kali -
Вам, хакеры!


ПРИЛОЖЕНИЯ

- Planet CCRMA -
Работа со звуком
- VegaStrike -
Каждому по планете!


ЭКСПЕРИМЕНТ

- коЛинуксы -
Не выходя из Виндоус
- GoboLinux -
Очевидно и вероятно
- ReactOS -
Освободите Виндоус!


РОДНЯ

- BSD-семейство -
На плечах гигантов
- OpenIndiana -
До звёзд рукой подать


АРХИВ (2003-2016)
ФОРУМ




НАШИ ПРОЕКТЫ

MATRIX GL
ПОЛЕЗНЫЕ СОВЕТЫ
ПИНГВИН В КАРМАНЕ
ЗАКЛАДКИ
СТАТЬИ
КОНТАКТЫ


ПОМОЧЬ






Личный архив ЕЗ

Загрузка Linux из загрузочного меню NT/2K/XP

X-Stranger, Компьютерная газета

Зачем нужна статья о Linux и загрузочном меню NT'шных ОС? Ведь существуют специальные руководства с пошаговыми инструкциями. Да, но, к сожалению, поток читательских писем говорит о том, что здесь еще не все ясно и очевидно. Эта заметка призвана решить данную задачку раз и навсегда.

Итак, вы решили, что было бы неплохо иметь один-единственный загрузчик, который бы загружал все, вместо того чтобы пользоваться двумя: LILO и NT boot manager. Сразу встает дилемма: какой из них выбрать? Остановимся на NT boot manager, потому что, когда мы устанавливаем LILO и выбираем в нем при загрузке NT, все равно появляется меню NT, что чертовски раздражает: дважды отвечать на вопрос о том, что загружать, — это уже слишком. Итак, мы выбираем следующую стратегию: удаляем LILO и используем NT boot loader для загрузки всех операционных систем, которые есть. Хорошо, но как это сделать? Итак, читаем HOWTO. Руководство HOWTO NT OS Loader + Linux mini-HOWTO дает общее представление о процессе, но, как правило, этого мало, и ваша первая попытка заканчивается тем, что система отказывается загружаться вообще. Тогда будем делать так:

NT Boot Loader. NT Boot Loader загружает образ операционной системы, читая информацию из файла инициализации boot.ini. Взгляните на него. Он выглядит примерно так:

[boot loader]

timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)WINDOWS=”Windows”

multi(0)disk(0)rdisk(0)partition(1)WINDOWS=”Windows [VGA mode]” /basevideo /sos

Эта строка говорит о том, какую операционную систему с какого раздела загружать. То есть берутся первые 512 байтов информации, необходимой для загрузки соответствующей операционной системы. И как использовать вот это для загрузки “Линукса”? Очень просто! Просто в файле boot.ini нужно указать NT boot manager'у те заветные 512 байтов загрузочного сектора “Линукса”. Нужно добавить в конец файла следующую строку:

C:boot.lnx=” Linux”

В этой строке boot.lnx является тем файлом, который содержит в себе те необходимые 512 байтов. Но ведь нужно где-то достать эти 512 байтов. Каким образом? В уже упомянутом HOWTO есть хороший пример того, как это можно сделать. Итак, нам нужны первые 512 байтов загрузочного раздела “Линукса”, которые сказали бы NT, что нужно загружать именно “Линукс”. Для этого мы создаем обучающий lilo.conf, даем его LILO и говорим LILO установить загрузочный сектор в начало Linux-раздела. Затем вычленяем оттуда первые 512 байт, сохраняем в файл и даем его NT. Потом устанавливаем LILO в главную загрузочную запись и устанавливаем WinNT (или Linux) как ОС, загружаемую по умолчанию. Мы создаем lilo.conf, где указываем NT как загружаемую по умолчанию и затем устанавливаем этот файл.

Приступим к делу. Устанавливая Linux, вы наверняка приняли опции, назначенные по умолчанию. Установщик установил LILO в главную загрузочную запись и модифицировал его в соответствии с параметрами системы (то есть учитывая то, какие другие операционные системы были установлены). В данном случае, если у вас была только NT-подобная ОС, то после перезагрузки после инсталляции LILO предложит на выбор две опции: Linux и Windows. Итак, что же мы пытаемся сделать? Мы хотим, чтобы LILO загружал по умолчанию NT boot manager, а в меню последнего нам нужна возможность выбора “Линукса”.

Начинаем. Сначала загрузим “Линукс”. Создаем настроечный lilo.conf, например, таким способом: скопируйте lilo.conf в lilo.opt, затем отредактируйте lilo.opt. В результате должно получиться примерно следующее:

boot = /dev/hdaX

# на вашей машине “Линукс” находится на /dev/hdaX

# сделайте соответствующие изменения (в зависимости от вашей конфигурации)

timeout=0 # приравниваем время ожидания к нулю

vga = normal

read-only

default=linux

image = /boot/vmlinuz

label = linux

oot = /dev/hdaX

Затем запускаем LILO, используя lilo.opt как аргумент. Это установит загрузочный сектор “Линукс” на /dev/hdaX

sbin/lilo -C lilo.opt

Вычленяем первые 512 байтов:

dd if=/dev/hdaX of=boot.lnx bs=512 count=1

Затем копируем файл boot.lnx на диск C:. Если диск C: смонтирован как /win/c, тогда копируем это так:

cp boot.lnx /win/c

или же монтируем C: и затем копируем:

mount /dev/hda1 /win/c

cp boot.lnx /win/c

Потом изменяем boot.ini, как уже было сказано выше.

Установка LILO в MBR (главную загрузочную запись). Просто измените файл lilo.conf так, чтобы Windows загружалась по умолчанию без задержки, и установите LILO в MBR.

boot = /dev/hda # устанавливаем в MBR

timeout=0

vga = normal

read-only

default=win # NT — по умолчанию

image = /boot/vmlinuz

# эту секцию можно удалить, так как теперь мы не пользуемся LILO для загрузки “Линукса”

label = linux

root = /dev/hdaX

other = /dev/hda1

abel = win

Затем снова перезaпустите LILO. Перед перезагрузкой убедитесь, что у вас есть загрузочный диск. Можно использовать установочный диск. Также прочитайте в конце данной статьи о ловушках (там есть информация о том, как использовать загрузочный диск). Или вы можете сами создать загрузочный диск командой

mkbootdisk

Теперь перезагружайтесь и смотрите на то, какие чудеса происходят.

Вам этого мало? Я знаю, что не дает вам покоя: вы хотите удалить LILO полностью. Так сделайте это! Раздобудьте DOS-дискету, на которой есть fdisk, и загрузитесь с этой дискеты. Затем запустите fdisk /mbr, чтобы перезаписать главную загрузочную запись...

Ловушки 1. Запомните, что после каждого изменения ядра или файла lilo.conf вам придется повторить весь процесс сначала, сделать новую копию boot.lnx и “поделиться” ею с NT.

2. Если вы допустили какую-то ошибку и не можете загрузить “Линукс”, тогда загрузитесь с загрузочного диска и переустановите LILO. (Можно использовать установочный диск в качестве загрузочного. При появлении меню установки введите rescue и нажмите Enter — для RedHat-подобных дистрибутивов).

Загрузитесь с загрузочного диска

Примонтируйте Linux-партицию: mount /dev/hdaX /mnt

Измените корневой каталог: chroot /mnt

Измените lilo.conf:

boot = /dev/hda

timeout=500

prompt

vga = normal

read-only

default=linux

image = /boot/vmlinuz

label = linux

root = /dev/hda3

other = /dev/hda1

label = win

Установите LILO: /sbin/lilo

Осуществите синхронизацию: sync

Отмонтируйте /dev/hdaX: umount /mnt

Перезагрузите систему: /sbin/reboot


При частичной или полной перепечатке, переводе, переработке материалов сайта ссылка на Knoppix.ru обязательна.
(c) Knoppix.ru 2003 - 2016