LINUX.ORG.RU

Как установить из под Linux на compact flash Free Dos?


0

1

Есть USB адаптер. В него воткнута compact flash. В принципе они могут быть разными (разная геометрия). Поэтому желательно мне найти универсальный способ создания такого загрузочного диска. Нужно чтобы FreeDos грузился напрямую БЕЗ ядра linux, т.е. как обычный DOS.

Загружался с установочного диска в virtual box, но он там не видит по какой-то причине моего usb адаптера (нет в списке устройств в меню для подключения).


Ты гуглить пробовал? FreeDOS поставляется в виде ISO образа для записи на CD. Если так уж хочется flash - есть куча мануалов как сделать из ISO загрузочную флешку.
google:// freedos installation
google:// make live usb iso

Kroz ★★★★★
()
Ответ на: комментарий от Kroz

я пока не нашел не одного мануала который бы дал результат, поэтому и спрашиваю. Часто предлагается использовать syslinux.
В одном месте лежали образы freedos на ~30 мб. Я их записывал через dd на usb. Работало (толька на usb флешке). Но сейчас железо поменялось и данной способ перестал давать рабочую флешку...
Поэтому хотел бы узнать как сделать usb флешку и compact флешку с самым минимальным FreeDos.
Можете (если нет у самих вариантов) кидаться в меня ссылками я буду писать результаты. Но говорю - пока только проблемы.

NoName
() автор топика

но он там не видит по какой-то причине моего usb адаптера (нет в списке устройств в меню для подключения).

VirtualBox Extension Pack за тебя Пушкин ставить будет?
по самому созданию загрузочного тебе дали ответ в первом посте.

novitchok ★★★★★
()
Последнее исправление: novitchok (всего исправлений: 1)
Ответ на: комментарий от novitchok

Сделал чтобы virtual box теперь видел usb.
Но установщик с диска FREEDOS не грузит usb драйверы. Пока virtual box не поможет если не решить данный вопрос.

Сейчас сканирую интернет как мне подсказали, но может быть кто-нибудь знает магические команды для копирования 2-3х файлов чтобы добиться командной строки на usb flash или compact flash.

NoName
() автор топика
Ответ на: комментарий от NoName

1. ISO образ freeDOS скачал?
2. Какой софт из этого пробовал?

Первым лично пользовался, записывал Knoppix на флешку, во втором явно указана поддержка FreeDOS!

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)
Ответ на: комментарий от NoName

unetbootin делает нормально флешки двух типов, но там только установка и друг друга они не видят если вставлять одновременно (compact flash подключена через кардридер, а на железе напрямую через ide).

NoName
() автор топика
Ответ на: комментарий от Kroz

[code]google:// freedos installation[/code]
первые четыре ссылки после внимательного изучения - мимо. Иду дальше...

NoName
() автор топика
Ответ на: комментарий от NoName

Погоди, именно compact flash? Этот пункт я упустил.
Сначала выясни умеет ли FreeDOS compact flash. Для этого можешь сначала залить на болванку, загрузиться, проверить работу CF (я что-то не уверен, что он будет поддерживать).

Kroz ★★★★★
()

Может я не совсем понял что требуется, но вроде бы любой линуксовый загрузчик умеет загружать не линукс. Например: 1. Делаем раздел. 2. На раздел dd дос загрузчик. 3. Ставим lilo в mbr. Все данные шаги автоматизируются довольно легко.

Как вариант «не совсем» без ядра линукс, но, может приемлимый? syslinux+memdisk. На флешку ляжет memdisk, ldlinux и freedos.iso, на старте iso загрузится в раму и будет работать как загрузочный раздел.

elijah_sd
()
Ответ на: комментарий от elijah_sd

Нужен строго обычный DOS. Никаких наваротов типо syslinux и загрузки образов т.к. нужно кидать постоянно файлы разные.
Достаточно командной строки и никаких менеджеров памяти и драйверов ненадо. Мне кажется что это легко сделать через команды в linux и копирование нескольких файлов, но я пока еще не осознал как.

NoName
() автор топика
Последнее исправление: NoName (всего исправлений: 1)
Ответ на: комментарий от NoName

Ну, все же, полагаю, что достаточно образ загрузочной дискеты скопировать в раздел на CF и после этого прописать lilo в mbr CF.

elijah_sd
()
Ответ на: комментарий от Kroz

там в основном программы под windows, а у меня linux.

NoName
() автор топика
Ответ на: комментарий от NoName

Размер тут не важен, важно наличие загрузчика в загрузочной области, и формат дискеты (суперфлоппи, как его называют), т.е. не слепок девайса с мбр, а только одного раздела.

elijah_sd
()
Ответ на: комментарий от NoName

Ок, ждем, :-)

вот это кстати смущает:

Перезагружаемся и грузим FreeDOS с дискеты.
sys С:

дос на флешку ставится из доса с дискеты.

elijah_sd
()
Ответ на: комментарий от NoName

я делал через unetbootin установщик на compact flash который прекрасно работал. Само на себя не ставится )

Что значит само на себя?

Kroz ★★★★★
()
Ответ на: комментарий от elijah_sd

да на этапе дискеты я застопорился, нету флопика даже и нехочется лишний раз иметь с ним отношения.
Незнаю даже как это обойти.

NoName
() автор топика
Ответ на: комментарий от NoName

+ нет желания еще грузится откуда то лишний раз если все можно сделать из консоли.

NoName
() автор топика
Ответ на: комментарий от elijah_sd

FAT32 FreeDOS boot record successfully written to /dev/sdb1

Так теперь надо понять какие файлы нужны и я так понял оно заведется (поправьте).

NoName
() автор топика
Ответ на: комментарий от elijah_sd

Итак usb флэшка не грузится:
missing operating system.

Я сделал все по инструкции по ссылке http://rozik.od.ua/esses/freedos_on_usb_flash.html
кроме последних пунктов начинающихся с использования дискеты.
Далее установил ms-sys с sf.net
Далее записал FREEDOS бутсектор для fat32 (у меня такая фс на флешке).
Далее записал файлы из http://www.fdos.org/bootdisks/ OEM Bootdisk
там минимум файлов.
Результат неясен. (

NoName
() автор топика
Ответ на: комментарий от NoName

загрузка установщика с флешки не позволяет произвести установку на эту же флешку.

Скорее всего да.
1. Что мешает загрузиться не с флешки, а, скажем, с CD?
2. Что мешает загрузиться с одной флешки, а потом вставить вторую в соседний порт?
3. Если уж так нужно, AFAIK Knoppix имеет опцию, когда он полностью загружается в память, и боле не требует своего загрузочного носителя. То есть, если ты загрузился с DVD с этой опции, то потом можешь вынимать DVD, система будет нормально работать. Думаю, с флешкой то же сделать можно.

Kroz ★★★★★
()
Ответ на: комментарий от NoName

Ставите qemu, скачиваете iso образ freedos, размонтируете flash накопитель:

qemu -cdrom fd11src.iso -m 128m -hda /dev/sdX -boot d
Где /dev/sdX - имя устройства flash накопителя.

В qemu произойдёт загрузка с iso образа, выбирайте первый пункт, установка freedos.

Далее можете либо запустить fdisk создать / пересоздать разделы, либо сразу указать раздел куда вы хотите поставить freedos.

Далее следуйте пунктам установки, но стоит выбрать кроме установки базового (base) набора ещё и средства загрузки (boot).

kostik87 ★★★★★
()
Ответ на: комментарий от NoName

FAT32 FreeDOS boot record successfully written to /dev/sdb1
Так теперь надо понять какие файлы нужны и я так понял оно заведется (поправьте).

Не забудь сделать этот раздел загрузочным через fdisk! Если там такая же система, как когда-то в DOS, то все сработает.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)
Ответ на: комментарий от Kroz

Взял usb флешку.

из под root'а:

dd if=/dev/zero of=/dev/sdb1 bs=8K
cfdisk /dev/sdb1 <= primary, boot, fat16, write, quit.
dd if=mbrfat.bin of=/dev/sdb1
mkdosfs /dev/sdb1
/usr/local/bin/ms-sys -f -5 /dev/sdb1
mount /dev/sdb1 /media/tmp
cp
-rwxr-xr-x 1 andrew root 67 Фев 22 2004 AUTOEXEC.BAT
-r-xr-xr-x 1 andrew root 66090 Дек 10 2003 COMMAND.COM
-rwxr-xr-x 1 andrew root 52 Фев 22 2004 CONFIG.SYS
-r-xr-xr-x 1 andrew root 45450 Апр 7 2012 KERNEL.SYS
-rwxr-xr-x 1 andrew root 1486 Фев 22 2004 README
-rwxr-xr-x 1 andrew root 11531 Апр 7 2012 sys.com

В итоге при загрузке пишет missing operating system.

В случае compact flash просто мигает курсор после bios без очистки экрана и никто не выводит ошибок. Без нее пишет что нет ide носителя для загрузки.

NoName
() автор топика
Последнее исправление: NoName (всего исправлений: 1)
Ответ на: комментарий от NoName

dd if=mbrfat.bin of=/dev/sdb1

И этой командой ты затер все, что делал cfdisk...

Постараюсь дома попробовать сделать...

Kroz ★★★★★
()
Ответ на: комментарий от kostik87

что именно из средств загрузки boot и base нужно выбрать чтобы получить минимальный комплект?

NoName
() автор топика
Последнее исправление: NoName (всего исправлений: 1)
Ответ на: комментарий от Kroz

у меня были подобные мысли, к сожалению плохо пока понимаю процесс.

NoName
() автор топика
Ответ на: комментарий от elijah_sd

точно, а я думаю откуда 1 берется в инструкции
сейчас попробую

NoName
() автор топика
Ответ на: комментарий от NoName

Этот да - на раздел.

mbrfat.bin кстати должен быть <= 448 байт, а то таблицу разделов будет переписывать, это так, мысли.

А загрузчик доса... я с ним не сталкивался, но писать сначала загрузчик, а потом копировать файлы, можно только если загрузчик может работать с файловой системой и сможет найти нужные файлы сам.

Если загрузчик не умеет этого - сначала копируются файлы, а при записи самого загрузчика в него хардкодом вставляются адреса, откуда что с диска запускать (как это делается в уже помянутом тут мной лило).

Многа букаф, но совет - попробуй сначала скопировать файлы, а потом писать загрузчик.

elijah_sd
()
Ответ на: комментарий от elijah_sd

mbr получается 428 байт - так пишет dd.

вы имеете ввиду в последнем предложении под загрузчиком бутсектор?

NoName
() автор топика
Ответ на: комментарий от elijah_sd

root@AVRToSoft:/media# /usr/local/bin/ms-sys -5 /dev/sdf1
/dev/sdf1 does not seem to have a FAT16 file system,
use the switch -f to force writing of a FAT16 boot record
root@AVRToSoft:/media# /usr/local/bin/ms-sys -5 /dev/sdf
/dev/sdf does not seem to be a disk partition device,
use the switch -f to force writing of a FAT16 boot record

Это после записи файлов и размонитрования.

Сделал:
1. dd if=/dev/zero of=/dev/sdf bs=8K
2. cfdisk /dev/sdf <= primary, boot, fat16, write, quit.
3. dd if=mbrfat.bin of=/dev/sdf
4. mkdosfs /dev/sdf1
5. mount
6. cp
-rwxr-xr-x 1 andrew root 67 Фев 22 2004 AUTOEXEC.BAT
-r-xr-xr-x 1 andrew root 66090 Дек 10 2003 COMMAND.COM
-rwxr-xr-x 1 andrew root 52 Фев 22 2004 CONFIG.SYS
-r-xr-xr-x 1 andrew root 45450 Апр 7 2012 KERNEL.SYS
-rwxr-xr-x 1 andrew root 1486 Фев 22 2004 README
-rwxr-xr-x 1 andrew root 11531 Апр 7 2012 sys.com
7. umount
8. /usr/local/bin/ms-sys -f -5 /dev/sdf1

В результате при загрузке под qemu пишет только строку FREEDOS и больше ничего. Это usb флешка.

Вот ньюанс:
root@AVRToSoft:/media# /usr/local/bin/ms-sys -5 /dev/sdf1
/dev/sdf1 does not seem to have a FAT16 file system, use the switch -f to force writing of a FAT16 boot record
root@AVRToSoft:/media# /usr/local/bin/ms-sys -5 /dev/sdf
/dev/sdf does not seem to be a disk partition device, use the switch -f to force writing of a FAT16 boot record
root@AVRToSoft:/media# /usr/local/bin/ms-sys -f -5 /dev/sdf1
FAT16 FreeDOS boot record successfully written to /dev/sdf1

NoName
() автор топика
Последнее исправление: NoName (всего исправлений: 5)
Ответ на: комментарий от NoName

Я имел в виду код в бутсекторе.

Что интересно в мануале по ms-sys он пишет загрузчик и в мбр и на раздел:

ms-sys -5 /dev/sdf

и потом

ms-sys -5 /dev/sdf1

а файлы по мануалу копируются и правда уже после

elijah_sd
()
Ответ на: комментарий от elijah_sd

сейчас посмотрел - там com и sys пожаты upx, может быть нужно распаковать?

NoName
() автор топика
Ответ на: комментарий от elijah_sd

взял compact flash. Размонтирована.

root@Soft:/media# dd if=/dev/zero of=/dev/sdb bs=8K
dd: запись «/dev/sdb»: На устройстве кончилось место
244693+0 записей считано
244692+0 записей написано
скопировано 2004516864 байта (2,0 GB), 164,179 c, 12,2 MB/c

root@AVRToSoft:/media# cfdisk /dev/sdb

Disk has been changed.

WARNING: If you have created or modified any
DOS 6.x partitions, please see the cfdisk manual
page for additional information.
root@Soft:/media# mkdosfs /dev/sdb1
mkdosfs 3.0.13 (30 Jun 2012)
root@Soft:/media# /usr/local/bin/ms-sys -5 /dev/sdb
/dev/sdb does not seem to be a disk partition device,
use the switch -f to force writing of a FAT16 boot record
root@Soft:/media# /usr/local/bin/ms-sys -f -5 /dev/sdb
FAT16 FreeDOS boot record successfully written to /dev/sdb
root@Soft:/media# /usr/local/bin/ms-sys -f -5 /dev/sdb1
FAT16 FreeDOS boot record successfully written to /dev/sdb1

mount
cp
umount
qemu

тоже самое - строка FREEDOS и все.

NoName
() автор топика
Ответ на: комментарий от elijah_sd

распаковался только command.com - с ним все тоже самое.
kernel.sys не хочет распаковываться - якобы не запакован, хотя сигнатура upx в нем есть.

NoName
() автор топика
Ответ на: комментарий от kostik87

результат точно такой же - строка FREEDOS

NoName
() автор топика
Ответ на: комментарий от Kroz

загружаюсь с диска в ram после того как установщик видит нормальную фс
пишу format C: - отлично проходит в три этапа.
пишу SYS C: - не может найти KERNEL.

NoName
() автор топика
Ответ на: комментарий от Kroz

помогло http://derek.chezmarcotte.ca/?p=188
версия 1.1 данного образа не монтируется, а 1.0 работает.
проблема была в том что писал через dd if=image of=/dev/sdb1 вместо sdb.

Там 30 мб. Но может быть есть способ сделать нормальный раздел с тоже нормальной версией из двух файлов?

NoName
() автор топика
Ответ на: комментарий от NoName

Ну вот, установил по этому мануалу: http://en.gentoo-wiki.com/wiki/FreeDOS_Flash_Drive . Все хорошо: система на A:, все остальное на C: .

Нюансы.
- Образ качал с офф сайта, вот отсюда: http://www.freedos.org/download/ (только .img файл, а не iso); естественно в конфиге grub указывал fdboot.img .
- Пришлось поставить grub 1.99, так как с grub2 никогда не работал, а сейчас было лень разбираться.
- Флешка у меня была /dev/sdg, соответственно первая команда в grub выглядела как > device (hd6) /dev/sdg . Да, и когда выполнишь > root (hd6,0) , убедись что оно написало, что определило файловую систему как fat.
- Использовал свой любимый fdisk вместо cfdisk, но это абсолютно все равно.

Пробуй.

Kroz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.