Загрузите жесткий диск, извлеченный из ПК, как виртуальную машину.

Загрузите жесткий диск, извлеченный из ПК, как виртуальную машину.

Я хочу использовать qemu-x86_64to boot /dev/sdb, который является диском, на котором есть ОС с загрузчиком. Но я не могу заставить это работать.

$ qemu-x86_64 /dev/sdb
Error while loading /dev/sdb: Permission denied
$ sudo su
# qemu-x86_64 /dev/sdb
Error while loading /dev/sdb: Permission denied
# exit
$ qemu-x86_64 -hdb /dev/sdb
qemu: unknown option 'hdb'
$ qemu-x86_64 --disk /dev/sdb
qemu: unknown option 'disk'
$ qemu-x86_64 -drive file=/dev/sdb
qemu: unknown option 'drive'
$ qemu-x86_64 -usb -usbdevice disk:/dev/sdb
qemu: unknown option 'usb'
$ qemu-x86_64 -device usb disk:/dev/sdb
qemu: unknown option 'device'
$ qemu-x86_64 -device usb-storage,drive=/dev/sdb
qemu: unknown option 'device'

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

Я вообще не понимаю страницу руководства. man qemuКажется, это -hdbдолжно просто... работать? Но это не так.

решение1

Исполняемый файл, который вы запускаете, qemu-x86_64предназначен для работы на платформе x86-64.исполняемые файлы, а не системные образы. Он пытается динамически перекомпилировать заданный исполняемый файл для запуска на вашей платформе. Если у вас был образ ARM Ubuntu и вы запускали исполняемый файл x86-64, то это то, для чего эта конкретная программа.

Вам нужно использовать qemu-system-x86_64, который должен выполнить работу, необходимую для настройкисистемавключая периферийные устройства.

В теории:

qemu-system-x86_64 -drive file=/dev/sdb

Для получения более подробной информации см.QEMUСистемаИнструкция по началу работы.

Связанный контент