Booting from HDD/ru

From KolibriOS wiki
Revision as of 07:27, 7 April 2012 by XVilka (talk | contribs) (На основе http://board.kolibrios.org/viewtopic.php?f=8&t=1771&start=52)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Загрузчик из папки USB_Boot, несмотря на название, умеет загружать систему с любого FAT32-тома, и ему безразлично, на флешке этот том или на жёстком диске.

"Как загрузить Колибри с жёсткого диска с помощью загрузчика Колибри (без использования сторонних загрузчиков), и чтобы при этом Колибри видела жёсткий диск после загрузки как /hdX ?" - надо начать с жёсткого диска, который Колибри видит после загрузки как /hdX, отформатировать там один раздел под FAT32 - это придётся делать средствами другой ОС - записать в бутсектор загрузчик из BOOT_F32.BIN, скопировать файлы MTLD_F32 и kolibri.img, и сделать раздел загрузочным.

Пример создания образа жёсткого диска для Bochs/qemu:

# создаём FAT32-том с загрузчиком BOOT_F32.BIN размером 40M минус 32 сектора
dd if=/dev/zero of=test2.img bs=512 count=$((40*1024*2-32))
mformat -i test2.img -t 159 -h 16 -n 32 -H 32 -c 1 -F -B BOOT_F32.BIN ::
# копируем на этот том нужные файлы
mcopy -i test2.img MTLD_F32 ::
mcopy -i test2.img kolibri.img ::
# создаём образ жёсткого диска из 32 секторов плюс ранее созданный том
dd if=/dev/zero of=test.img bs=512 count=32
dd if=test2.img of=test.img bs=512 seek=32
# создаём таблицу разделов из одного раздела
parted test.img mktable msdos
parted test.img unit s mkpart primary fat32 32 $((40*1024*2-1))
# делаем его загрузочным
parted test.img set 1 boot on

Получается образ жёсткого диска, на котором нет другого кода, кроме кода проекта Колибри, и который успешно грузится в bochs/qemu.