여기 에서 디스크 이미지 파일이 있습니다 . 해당 페이지에 QEMU와 다음 명령을 사용하여이 이미지를 부팅 할 수 있다고합니다.
$ qemu-system-x86_64 -m 4096 -ctrl-grab -no-reboot x86-64.img
메시지가 나타납니다.
WARNING: Image format was not specified for 'x86-64.img' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.
에뮬레이터가로드되지만 PilOS가 충돌하여 잘못된 것을 의미합니다.
(아마도 PilOS는 블록 0에 쓰려고하지만 할 수 없기 때문에)
raw
내가 알 수 있는 한 명령 줄 인수는 다음과 같이 전달되어야합니다.
$ qemu-system-x86_64 -drive format=raw file=x86-64.img
qemu-system-x86_64: -drive format=raw: drive with bus=0, unit=0 (index=0) exists
부팅 장치가 /dev/sda
버스 0 에 있기 때문에 실패합니다 . 따라서 다음 중 하나가 QEMU의 매뉴얼 페이지에 따라 작동해야하지만 그렇지 않습니다.
$ qemu-system-x86_64 -drive bus=9 format=raw file=x86-64.img
qemu-system-x86_64: -drive bus=9: Could not open 'format=raw': No such file or directory
$ qemu-system-x86_64 -drive format=raw file=x86-64.img bus=9
qemu-system-x86_64: -drive format=raw: drive with bus=0, unit=0 (index=0) exists
받아 들여야 하는 bus=9
인수 -drive
는 파일 이름으로 해석되거나 완전히 무시됩니다.
QEMU에서 이러한 원시 이미지를 올바르게 부팅하려면 어떻게해야합니까?
Ubuntu 15.10이며 다음을 실행합니다.
QEMU emulator version 2.3.0 (Debian 1:2.3+dfsg-5ubuntu9.3), Copyright (c) 2003-2008 Fabrice Bellard
이미지에 대한 데이터 :
$ file x86-64.img
x86-64.img: DOS/MBR boot sector; partition 1 : ID=0x83, active, start-CHS (0x0,1,1), end-CHS (0x82,246,62), startsector 62, 2006072 sectors; partition 2 : ID=0x82, start-CHS (0x83,0,1), end-CHS (0x15,246,62), startsector 2006134, 2006134 sectors
$ fdisk -lu x86-64.img
Disk x86-64.img: 670 KiB, 686080 bytes, 1340 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
x86-64.img1 * 62 2006133 2006072 979.5M 83 Linux
x86-64.img2 2006134 4012267 2006134 979.6M 82 Linux swap / Solaris
qemu-system-x86_64 -fda os.flp
경고를 제거하기 위해 다음에서 플로피 드라이브의 원시 옵션을 어떻게 지정 합니까?