我问这个问题我已经尝试过了
dd if=kernel.sys of=/dev/fd0 bs=512 seek=1
将此文件写入软盘。这是一个内核 shell,必须写入磁盘引导扇区后面的扇区才能启动 PC。无论我怎么尝试,出于某种原因,kernel.sys
都无法写入软盘。我知道正在写入和执行引导加载程序。但是,它找不到内核来加载 shell。
你知道我做错了什么吗?我的意思是,将这个文件写入软盘真的那么困难吗?
OpenSUSE 11.2
答案1
为了将引导加载程序和内核放入软盘,我们必须使用库姆查看 FAT 磁盘映像部分,我们编写了一个 shell 脚本:
# first create a raw empty floppy image
dd if=/dev/zero of=bootimage.img bs=512 count=2880
# our bootstrap contains the MBR for the floppy (i.e. it actually formats it to our specs, in this case FAT12)
dd if=bootup.bin of=bootimage.img bs=512 count=1 conv=notrunc
# mount into 'media/floppy'
losetup /dev/loop0 bootimage.img
mount -o loop bootimage.img /media/floppy
# we can actually list all files that we need to copy to disk here
cp bootsys.sys /media/floppy
# make sure we unmount, otherwise nothing gets written !!
umount /media/floppy
losetup -d /dev/loop0
# run QEmu
qemu -fda bootimage.img
我相信,如果您没有物理软盘驱动器,您可以通过替代来模拟/media/floppy
软盘/mnt/floppy
。