Tôi có một tập tin hình ảnh đĩa từ đây ; trang đó nói rằng tôi có thể khởi động hình ảnh này bằng QEMU và lệnh sau:
$ qemu-system-x86_64 -m 4096 -ctrl-grab -no-reboot x86-64.img
Điều đó đưa ra một thông điệp:
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.
Trình giả lập tải, nhưng PilOS gặp sự cố, điều đó có nghĩa là tôi đã làm sai:
(có lẽ vì PilOS muốn viết vào khối 0 nhưng không thể)
Đối raw
số dòng lệnh, theo như tôi có thể nói, có nghĩa là được thông qua như thế này:
$ 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
Điều đó không thành công (tôi nghĩ) vì thiết bị khởi động của tôi đang bật /dev/sda
, bus 0, do đó, một trong những điều sau đây sẽ hoạt động theo trang người dùng của QEMU (nhưng không):
$ 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
Đối bus=9
số -drive
nên chấp nhận hoặc được hiểu là tên tệp hoặc hoàn toàn bị bỏ qua.
Làm thế nào để tôi khởi động đúng một hình ảnh thô như vậy trong QEMU?
Đây là Ubuntu 15.10, đang chạy:
QEMU emulator version 2.3.0 (Debian 1:2.3+dfsg-5ubuntu9.3), Copyright (c) 2003-2008 Fabrice Bellard
Dữ liệu về hình ảnh:
$ 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
để thoát khỏi cảnh báo?