Опции загрузки


Grub4dos использует два различных метода загрузки операционных систем - которые можно применять из командной строки или из конфигурационного файла. Оба метода связаны с использованием команды chainloader, один для загрузки устройства, другой для загрузки ядра ОС или загрузочных файлов. Последовательной загрузкой (chainloading) устройства Grub4dos может загружать даже неподдерживаемые устройства, если эти устройства загружаются из MBR и/или загрузочный сектор раздела является частью механизма загрузки. Последовательная загрузка возможна для устройств, относящихся к следующим разделам:

Последовательная загрузка файлов ОС, более перспективна, чем загрузка устройства, Например загрузка флоппи диска (или образа флоппи диска) с повреждённым загрузочным сектором, будет успешна, пока файловая система в порядке.

ПРИМЕЧАНИЕ - Все следующие примеры, это примеры пунктов загрузки конфигурационного файла, однако они могут быть легко изменены, для запуска из командной строки. Чтобы запустить эти пункты из командной строки, удалите из них всю сторку title. Затем введя команды, потребуется их загрузить командой boot command (чего не требуется в конфигурационном файле).
Внизу пример menu.lst:

title Boot MBR of First Hard Disk
chainloader (hd0)+1
rootnoverify (hd0)

А в переводе на командную строку будем вводить: chainloader (hd0)+1 [enter], rootnoverify (hd0) [enter], boot [enter].


МБР (Master Boot Record)

Главная загрузочная запись (кратко MBR) это первый сектор жёсткого диска (sector 1). Она содержит таблицу разделов, в каторой отмечено, какой из разделов активный (активный раздел, он же загрузочный раздел). Загрузить MBR жёсткого диска как раз можно командой chainloader. Чтобы загрузить MBR первого жёсткого диска, мы воспользуемся вот этим примером:

title Boot MBR of First Hard Disk
chainloader (hd0)+1
rootnoverify (hd0)

Где (hd0) целый первый жёсткий диск, (hd1) - это выбор загрузки второго жёсткого диска и.т.д... Символ "+" используется для блок списка - в этом случае +1 это первый сектор устройства (hd0). Блок список используется для указания файла, который не фигурирует в файловой системе, как chainloader.


Загрузочный сектор раздела

В ходе установки Windows загрузочный сектор прописывается впервый сектор раздела на который ставится ОС (больше чем один загрузочный сектор может быть использован на файловой системе NTFS). Обычно, загрузочный сектор раздела (PBS),определяет, какой файл будет использоваться как часть загрузочного процесса - Когда загружается например Windows XP то PBS загружает NT загрузчик ntldr. Имя файла "ntldr" забито в PBS, и может быть просмотрено в hex редакторе. GRUB и Linux загрузчики, могут быть только записаны в PBS. Чтобы загрузить первый раздел первого устройства смотрите пример:

title Boot Partition Boot Sector - First Hard Disk, First Partition
root (hd0,0)
chainloader (hd0,0)+1

Читайте предыдущий пункт "МБР (Master Boot Record)" для подробностей по "+1" (блок списки).


Boot Загрузочный Floppy диск (или образ дискеты)

Чтобы грузиться с первого флоппи дисковода (fd0) пишите команду:

title Boot Floppy Disk
chainloader (fd0)+1
rootnoverify (fd0)

Чтобы замапить образ дискеты win98.ima на устройстве (hd0,0) в виде виртуального флоппи дисковода (fd0), делаем следующим образом:

title Boot Disk Image
map (hd0,0)/win98.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1

Обратитесь к разделу "Маппинг" Здесь для более детального объяснения вышелседующего примера.

Как альтернатива - memdisk (часть пакета Syslinux) можно использовать для загрузки образов дисков. Следующий пример использует memdisk для загрузки образа диска win98.ima (на устройстве (hd0,0)):

title Boot Disk Image – (memdisk)
root (hd0,0)
kernel /memdisk
initrd /win98.ima

Загрузка с CD-ROM

Загружаемся с CD/DVD:

title Boot CD-ROM - (cd)
chainloader (cd)
rootnoverify (cd)

Если устройство (cd) не найдено, или верхний пример не работает, пробуем:

title Boot CD-ROM - (cd0)
cdrom --init
map --hook
chainloader (cd0)
rootnoverify (cd0)

Если CD всё равно не загружается и вы возвращаетесь в меню (или командную строку), привод будет продолжать работать. Чтобы остановить cdrom введите команду,
map --unhook [enter], cdrom --stop [enter].

Для загрузки CD каторый Grub4dos не смог загрузить, попробуйте BCDL (Bootable CD Loader) - Взять можно Здесь (или Здесь).
Программа выглядит как образ флоппи диска, каторый грузится командой "map", Например:

title Boot CD Loader
find --set-root /bcdl201a.ima
map --mem /bcdl201a.ima (fd0)
map --hook
root (fd0)
chainloader (fd0)+1

Или используйте задавленный gzip-ом образ, Например:

title Boot CD Loader
find --set-root /bcdl201a.ima.gz
map --mem /bcdl201a.ima.gz (fd0)
map --hook
root (fd0)
chainloader (fd0)+1

ПРИМЕЧАНИЕ - Новая версия BCDL (2.01a) работала на тестах, а (стабильная) версия 1.50z, нет.


Загрузка Windows NT/2K/XP

Чтобы последовательно загрузить NT загрузчик ntldr (установленный на первый раздел первого жёсткого диска) используем команду:

title Boot Windows NT on (hd0,0)
root (hd0,0)
chainloader /ntldr

Если установлена только одна Windows, следующая команда тоже может быть полезной (если ОС Windows больше одной штуки, то загружена будет первая найденная):

title Boot Windows NT
find --set-root /ntldr
chainloader /ntldr

ПРИМЕЧАНИЕ - NT-система, должна быть установлена на вервый жёсткий диск - попытка загрузиться со второго жёсткого диска не удастся. Можно загрузить Windows с устройства (hd1) Ремапингом (hd0) – Смотрим Сюда.


Загрузка Консоли восстановления (cmdcons)

Для загрузки Windows NT/2000/XP Recovery Console, делаем следующим образом:

title Windows NT/2K/XP Recovery Console
find --set-root /cmldr
chainloader /cmldr
########################################################
# write string "cmdcons" to memory 0000:7C03 in 2 steps:
########################################################
# step 1. Write 4 chars "cmdc" at 0000:7C03
write 0x7C03 0x63646D63
# step 2. Write 3 chars "ons" and an ending null at 0000:7C07
write 0x7C07 0x00736E6F

или,

title Windows NT/2K/XP Recovery Console
find --set-root /cmdcons/setupldr.bin
chainloader /cmdcons/setupldr.bin
########################################################
# write string "cmdcons" to memory 0000:7C03 in 2 steps:
########################################################
# step 1. Write 4 chars "cmdc" at 0000:7C03
write 0x7C03 0x63646D63
# step 2. Write 3 chars "ons" and an ending null at 0000:7C07
write 0x7C07 0x00736E6F

Загрузка Windows Vista

Процесс загрузки Vista-систем похож на загрузку NT-систем и файлы ОС должны быть на первом жёстком диске (или заремапленом диске).
Для загрузки Vista последовательно загружаем загрузочный сектор раздела/MBR, или последовательно загружаем загрузчик Висты bootmgr.
Для загрузки bootmgr с первого раздела первого жёсткого диска (device (hd0,0)):

title Boot Windows Vista on (hd0,0)
root (hd0,0)
chainloader /bootmgr

Загрузка Linux

Чтобы загрузить Linux мы должны использовать команды kernel и initrd – с путями до требуемых файлов.
Например: Для загрузки Puppy Linux (файл ядра vmlinuz и initrd файл initrd.gz) с флешки (определяемой в BIOS-е как второй жёсткий диск с одним разделом) используем команду:

title Linux Puppy
root (hd1,0)
kernel /vmlinuz PMEDIA=usbflash
initrd /initrd.gz

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


Загрузка Windows9x/ME/DOS/FreeDOS

Для загрузки MS DOS (или DOS-подобныс ОС, таких как Windows 9x/ME) можно последовательно (chainloader) загрузить загрузочный сектор раздела или напрямую, последовательно загрузить файл io.sys. Например: Если файлы ДОС находятся на втором разделе первого жёсткого диска:

title Boot MS-DOS
root (hd0,1)
chainloader /io.sys

Аналогично и FreeDOS, можно последовательно (chainloader) загрузить загрузочный сектор раздела или напрямую, последовательно загрузить файл kernel.sys:

title Boot FreeDOS
root (hd0,0)
chainloader /kernel.sys

    Оглавление    Предыдущая    Следующая    Проект GreenFlash    Форум

Copyright GreenFlash (c) 2007-2008