Booting from HDD/ru
Загрузчик из папки 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.