나는 팔로우하고 있다이것간단한 부트로더를 만드는 방법을 안내합니다. 파일을 생성합니다 disk.img
.
$ dd if=/dev/zero of=disk.img bs=1024 count=1440
$ dd if=vbr.bin of=disk.img count=512 conv=notrunc
$ file disk.img
disk.img: DOS/MBR boot sector
실행 qemu-system-i386
하고 부팅 qemu-system-x86_64
하면 disk.img
원하는 텍스트가 표시됩니다.
나는 내 컴퓨터를 부팅할 수 있기를 원합니다.실제PC를 이 "운영 체제"에 넣습니다. 나는 간단히 실행할 수 있다고 생각했습니다.
$ dd if=disk.img of=/dev/sdc1
...PC를 재부팅하고 Boot from USB
BIOS에서 선택했지만 다음 오류가 발생합니다.
Invalid partition table!
그러나 실행 qemu-system-i386 /dev/sdc
하고 qemu-system-x86_64 /dev/sdc
잘 작동합니다.
disk.img
실제 BIOS에서 부팅되도록 USB 스틱에 어떻게 기록합니까 ?
답변1
어떤 이유에서인지 내가 만든 단계에 disk.img
따르면 disk.img
플로피에만 올바르게 쓸 수 있습니다. 그러나 이미지 파일을 완전히 제거(USB에 직접 쓰기)하면 효과가 있었습니다( /dev/sdX
대신 을 사용하고 있는지 확인 /dev/sdXY
).
$ dd if=/dev/zero of=/dev/sdc bs=1024 count=1440
$ dd if=vbr.bin of=/dev/sdc count=512 conv=notrunc