Имя qemu-doc - документация пользователя QEMU Синтаксис использование: qemu [options] [disk_image] Описание В QEMU симулируется работа следующих периферийных устройств: * PCI-мост i440FX и мост PCI-ISA PIIX3 * VGA-карта Cirrus CLGD 5446 PCI или dummy VGA-карта с расширениями VESA от Bochs (на аппаратном уровне, включая все нестандартные режимы) .br * Мышь и клавиатура PS/2 * 2 IDE-интерфейса с поддержкой жёсткого диска и CD-ROM'а * Floppy-диск * Сетевые адаптеры PCI/ISA PCI * Последовательные порты * Звуковая карта Creative SoundBlaster 16 * Звуковая карта ENSONIQ AudioPCI ES1370 * Adlib(OPL2) чип совместимый с Yamaha YM3812 * Контроллер PCI UHCI USB и виртуальный USB-хаб. Поддерживается многопроцессорность; до 255 процессоров. Следует иметь в виду, что adlib доступен только в случае, когда QEMU был собран с ключом -enable-adlib В QEMU используется PC BIOS из проекта Bochs и VGA BIOS из проекта Plex86/Bochs, распространяющаяся по LGPL. В QEMU используется эмуляция YM3812 от Tatsuyuki Satoh. Опции Параметр disk_image это образ жёсткого диска для жёсткого диска 0 с интерфейсом IDE. Общие опции -M machine Выбрать эмулируемую машину ("-M ?" покажет список) -fda file -fdb file Использовать образ для флоппи-диска 0/1. Можно использовать флоппи-дисковод хост-системы, если указать .RS /dev/fd0 в качестве имени файла. -hda file -hdb file -hdc file -hdd file Использовать file как образ жёсткого диска 0, 1, 2 или 3. -cdrom file Использовать файл как образ CD-ROM (нельзя использовать -hdc и -cdrom одновременно). Для того чтобы использовать CD-ROM хост-системы, нужно указать в качестве имени файл .RS /dev/cdrom -drive option[,option[,option[,...]]] Описать новый диск. Допустимые опции: file=file Опция определяет, какой образ использовать для какого диска. if=interface Опция указывает через интерфейс какого типа подключён диск. Доступные типы: ide, scsi, sd, mtd, floppy, pflash. .RE bus=bus,unit=unit Опция указывает куда именно подключён диск, к какой шине (bus) и под каким номером (unit). index=index Опция указывает куда подключен диск при помощи номера в списке доступных коннекторов интерфейса заданного типа. .RE media=media Опция определяет тип носителя: disk или cdrom. cyls=c,heads=h,secs=s[,trans=t] У этих опций такой же смысл, как при использовании с -hdachs snapshot=snapshot snapshot включен ("on") или выключен ("off"), позволяет включить создание снапшотов для заданных дисков (см. .RS -snapshot ). cache=cache кэш включен или выключен ("on" или "off"), что указывает нужно ли использовать кэш хост-системы при доступе к данным. format=format Указать явным образ формат дисков и не использовать автоопределение. Может использоваться для того чтобы указать .RS format=raw , чтобы не интерпретировать заголовок формата, когда в нём нет уверенности. Вместо -cdrom можно использовать: qemu -drive file=file,index=2,media=cdrom Вместо -hda , -hdb , -hdc , -hdd можно использовать: qemu -drive file=file,index=0,media=disk qemu -drive file=file,index=1,media=disk qemu -drive file=file,index=2,media=disk qemu -drive file=file,index=3,media=disk CDROM можно подключать как slave на ide0: qemu -drive file=file,if=ide,index=1,media=cdrom Если аргумент "file=" не указывается, привод считается пустым: qemu -drive if=ide,index=1,media=cdrom Можно подсоединить SCSI-диск с ID 6 на шине #0: qemu -drive file=file,if=scsi,bus=0,unit=6 Вместо -fda , -fdb можно использовать: qemu -drive file=file,index=0,if=floppy qemu -drive file=file,index=1,if=floppy По умолчанию используется интерфейс IDE, а индекс автоматически увеличивается: qemu -drive file=a -drive file=b" интерпретируется как: qemu -hda a -hdb b -boot [a|c|d|n] Загружаться с floppy (a), жёсткого диска (c), CD-ROM (d) или Etherboot (n). По умолчанию загрузка выполняется с жёсткого диска. .RE -snapshot Выполнять запись во временные файлы вместо фалов образа диска. В этом случае на используемый образ диска запись не выполняется. Запись можно выполнить принудительно нажатием C-a s. .RE -no-fd-bootchk Отключает в Bochs BIOS проверку загрузочной записи для floppy-дисков. Может потребоваться для загрузки со старых floppy-дисков. -m megs Задаёт объём виртуальной памяти равным megs мегабайтов. По умолчанию 128 MiB. -smp n Симулирует многопроцессорную систему с n процессорами. Для PC поддерживается до 255 процессоров; для Sparc32 Linux ограничивает количество процессоров, которые можно использовать, четырьмя. .RE -audio-help Показывает справку по аудио-подсистеме: список драйверов и настраиваемых параметров. -soundhw card1[,card2,...] or -soundhw all Включить поддержку выбранного звукового устройства. Для того чтобы посмотреть список всех доступных устройств, используйте ? .RE qemu -soundhw sb16,adlib hda qemu -soundhw es1370 hda qemu -soundhw all hda qemu -soundhw ? -localtime Установить часы реального времени (real time clock) по локальному времени (по умолчанию устанавливается в UTC). Опция необходима для того, чтобы время шло правильно в системах MS-DOS и Windows. .RE -startdate date Установить начальное значение для часов реального времени (real time clock). Допустимые форматы даты: "now" или "2006-06-17T16:01:21", или "2006-06-17". Значение по умолчанию: "now". .RE -pidfile file Сохранить PID процесса QEMU в файле file. Полезно при запуске QEMU из скрипта. -daemonize Демонизировать процесс QEMU после инициализации. QEMU не будет отключаться от стандартных потоков, до тех пор пока не будет готов к соединениям через другие устройства. Опция полезна в случаях, когда QEMU запускается другими процессами, которые не хотят заниматься устранением гонок в ходе инициализации. .RE -win2k-hack Используется при инсталляции Windows 2000, для того чтобы обойти баг с переполнением диска (disk full bug). После того как инсталляция завершена, эту опцию можно не использовать (при её использовании передача данных по IDE замедляется). -option-rom file Загружает содержимое файла как опциональный ROM. Опция может быть полезной для загрузки таких вещей как EtherBoot. .RE -name name Задать имя гостевой системы. Имя будет отображаться в заголовке окна SDL. Имя также используется для VNC-сервера. .RE Опции визуализации -nographic В нормальном режиме QEMU использует SDL для VGA-вывода. Используя эту опцию, можно вообще отключить графический вывод как таковой, так чтобы QEMU стало обычным консольным приложением. Эмулируемый последовательный порт перенаправляется на консоль. Следовательно, QEMU в этом режиме можно использовать для отладки ядра Linux через последовательную консоль. -curses В нормально режим QEMU использует SDL для визуализации. С этой опцией QEMU будет выводить VGA-вывод в текстовом режиме, используя интерфейс curses/ncurses. В графическом режиме ничего не выводится. -no-frame Не делать декоративное оформление вокруг SDL-окон. Использовать доступное пространство по максимуму. Это делает использование QEMU в выделенном окружении более удобным. -full-screen Запустить в полноэкранном режиме. -vnc display[,option[,option[,...]]] По умолчанию, QEMU использует SDL для VGA-вывода. Используя эту опцию, можно заставить QEMU работать как VNC-сервер для экрана display и перенаправлять на этот сервер VGA-экран. Особенно полезно в этом режиме включить USB-планшет (опция -usbdevice tablet). При использовании VNC-дисплея нужно использовать ключ -k, для того чтобы указать какая раскладка клавиатуры используется (при условии, что это не en-us). Допустимый синтаксис параметра .RS display такой: interface:d Будут разрешены только TCP-соединения через интерфейс interface к экрану d По соглашению используется TCP-порт с номером 5900+d. Интерфейс можно не указывать, тогда сервер привязывается ко всем интерфейсам. .RE unix:path Разрешаются соединения через доменные гнёзда UNIX, где path указывает местоположение соответствующего файла, через который прослушиваются соединения. none VNC инициализируется, но не запускается. VNC-сервер можно будет запустить позже при помощи команды монитора change. После значения display могут указываться опциональные флаги, разделённые запятыми. Допустимые опции такие: password Требует обязательной парольной аутентификации для клиентских соединений. Пароль устанавливается отдельно с помощью команды change в pcsys_monitor. tls Требует чтобы клиент при взаимодействии с VNC-сервером использовал TLS. В этом случае используются анонимные TLS-credentials, поэтому сеанс уязвим для man-in-the-middle-атак. Рекомендуется сочетать эту опцию с опциями x509 или x509verify. x509=/path/to/certificate/dir Может использоваться только в сочетании с опцией tls Обозначает, что при установке TLS-сеанса необходимо использовать x509-credentials. Сервер отправит свой x509-сертификат клиенту. Рекомендуется чтобы на VNC-сервере был установлен пароль, который будет вводиться клиентом при подключении. Путь, который идёт за опцией, указывает откуда должны загружаться x509-сертификаты. Подробнее о том, как генерируются сертификаты описано в разделе "vnc_security". .RE x509verify=/path/to/certificate/dir Может использоваться только в сочетании с опцией tls Обозначает, что при установке TLS-сеанса необходимо использовать x509-credentials. Сервер отправит свой x509-сертификат клиенту и попросит чтобы клиент прислал свой сертификат. Сервер проверит подлинность сертификата по сертификату CA, и если проверка не пройдёт, откажет клиенту. Если к CA есть доверие, то этого механизма аутентификации достаточно. В качестве дополнительного уровня аутентификации можно использовать пароль. Путь, идущий за опцией, указывает откуда должны загружаться сертфикаты. Подробнее о том, как генерируются сертификаты описано в разделе "vnc_security". .RE -k language Использовать раскладку клавиатуры language (например, "fr" для французской). Эта опция нужна только в тех случаях, когда не удаётся получить сырые коды клавиш (raw keycodes), например, на маке с некоторыми X-серверами или на VNC. Обычно в Linux и Windows этот ключ не используется. Доступные раскладки: ar de-ch es fo fr-ca hu ja mk no pt-br sv da en-gb et fr fr-ch is lt nl pl ru th de en-us fi fr-be hr it lv nl-be pt sl tr По умолчанию "en-us". Опции USB -usb Включить USB (скоро будет включено по умолчанию) -usbdevice devname Добавить USB-устройство devname. mouse Виртуальная мышь. Перекрывает эмуляции мыши PS/2. tablet Устройство позиционирования, имеющее абсолютные координаты (как тачскрин). Это означает, что qemu сможет показывать правильные координаты мыши без её захвата. Перекрывает эмуляцию мыши PS/2. .RE disk:file Устройства хранения (Mass storage device), основанные на файле file host:bus.addr Пробросить внутрь устройство, имеющее в хост-системе идентификатор bus.addr (только для Linux). .RE host:vendor_id:product_id Пробросить внутрь устройство, имеющее в хост-системе идентификатор vendor_id:product_id (только для Linux). serial:[vendorid=vendor_id][,productid=product_id]:dev serial-конвертер в символьное устройство хост-системы. О том какие устройства можно конвертировать см. в .RS -serial braille Устройство Брайля. Использует BrlAPI для вывода на настоящее или подложное устройство Брайля. .RE Опции сети -net nic[,vlan=n][,macaddr=addr][,model=type] Создать новую сетевую карту и подсоединить её к VLAN n (n = 0 по умолчанию). По умолчанию на PC в качестве сетевой карты используется ne2k_pci. MAC-адрес сетевой карты можно поменять при помощи .RS macaddr Если опция -net не задана, создаётся одна карта. Qemu может эмулировать несколько различных моделей сетевых карт. Допустимые значения для type: "i82551", "i82557b", "i82559er", "ne2k_pci", "ne2k_isa", "pcnet", "rtl8139", "smc91c111", "lance" и "mcf_fec". Не все устройства поддерживаются на всех платформах. Просмотреть список поддерживаемых устройств можно при помощи .RS -net nic,model=? -net user[,vlan=n][,hostname=name] Использовать пользовательский (user mode) сетевой стек, которому для работы не требуются привилегии администратора. Можно использовать опцию hostname=name, которая укажет встроенному DHCP-серверу, какое имя отправить клиенту. -net tap[,vlan=n][,fd=h][,ifname=name][,script=file] Подключить TAP-интерфейс хост-системы к заданному VLAN n и настроить его с помощью сетевого скрипта. По умолчанию используется сетевой скрипт .RS /etc/qemu-ifup Чтобы отключить исполнение скрипта, нужно указать script=no. Если имя не задано, оно автоматически задаётся при помощи операционной системы. Для того чтобы подключиться к уже открытому интерфейсу, используется fd=h, который указывает его дескриптор (handle). Пример: qemu linux.img -net nic -net tap Более сложный пример (две сетевые карты, каждая подключена к TAP-устройству) qemu linux.img -net nic,vlan=0 -net tap,vlan=0,ifname=tap0 \ -net nic,vlan=1 -net tap,vlan=1,ifname=tap1 -net socket[,vlan=n][,fd=h][,listen=[host]:port][,connect=host:port] Соединяет VLAN n с VLAN другой виртуальной машины QEMU. Если задана опция listen, QEMU будет ждать входящего соединения на порту port (поле host опционально). Опция connect указывает, что нужно подсоединиться к другому QEMU, который использует опцию listen. Опция fd=h задаёт уже открытый TCP-сокет. Пример: # launch a first QEMU instance qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ -net socket,listen=:1234 # connect the VLAN 0 of this instance to the VLAN 0 # of the first instance qemu linux.img -net nic,macaddr=52:54:00:12:34:57 \ -net socket,connect=127.0.0.1:1234 -net socket[,vlan=n][,fd=h][,mcast=maddr:port] Создаёт VLAN n, разделяемый с другими QEMU через сокет многоадресной рассылки. Получается общая шина для всех QEMU, которые используют один и тот же адрес и maddr и порт port. ЗАМЕЧАНИЯ: 1. Можно запустить несколько QEMU на разных хостах, и сделать чтобы все они использовали общую шину (только для этого нужно выполнить настройку многоадресной рассылки, multicast, для этих хостов). .RE 2. Поддержка mcast совместима с User Mode Linux (аргумент ethN=mcast), подробнее: http://user-mode-linux.sf.net 3. Для того чтобы указать уже открытый multicast-сокет UDP используется fd=h Пример: # launch one QEMU instance qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ -net socket,mcast=230.0.0.1:1234 # launch another QEMU instance on same "bus" qemu linux.img -net nic,macaddr=52:54:00:12:34:57 \ -net socket,mcast=230.0.0.1:1234 # launch yet another QEMU instance on same "bus" qemu linux.img -net nic,macaddr=52:54:00:12:34:58 \ -net socket,mcast=230.0.0.1:1234 Пример (совместим с User Mode Linux): # launch QEMU instance (note mcast address selected # is UML's default) qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ -net socket,mcast=239.192.168.1:1102 # launch UML /path/to/linux ubd0=/path/to/root_fs eth0=mcast -net none Указывает, что сетевые устройства конфигурироваться не должны. Используется чтобы перекрыть настройки по умолчанию (-net nic -net user), активирующиеся, если опцию -net не указывать вообще. -tftp dir При использовании пользовательского сетевого стека (user mode network stack), активировать встроенный TFTP-сервер. Файлы в каталоге .RS dir/ будут представлены в корне сервера. TFTP-клиент в гостевой системе должен быть настроен на бинарный режим (используется команда "bin" TFTP-клиента Unix). IP-адрес гостевой системы, как и обычно, 10.0.2.2. -bootp file При использовании пользовательского сетевого стека (user mode network stack), передавать файл как имя файла для BOOTP. В сочетании с -tftp, опция может использоваться для сетевой загрузки гостевой системы из локального каталога. Пример (с использованием pxelinux): qemu -hda linux.img -boot n -tftp /path/to/tftp/files -bootp /pxelinux.0 -smb dir При использовании пользовательского сетевого стека (user mode network stack), активировать встроенный SMB-сервер, так чтобы Windows внутри гостевой системы могла прозрачно обращаться к файлам хост-системы. В гостевой Windows-системе строку 10.0.2.4 smbserver нужно добавить в файл C:\WINDOWS\LMHOSTS (для Windows 9x/Me) или C:\WINNT\SYSTEM32\DRIVERS\ETC\LMHOSTS (Windows NT/2000). .RE Каталог доступен как \\smbserver\qemu Обратите внимание, что SAMBA-сервер должен быть установлен в хост-системе в /usr/sbin/smbd QEMU тестировался с smbd версии 2.2.7a из Red Hat 9 и с smbd версии 3.0.10-1.fc3 из Fedora Core 3. .RE -redir [tcp|udp]:host-port:[guest-host]:guest-port При использовании пользовательского сетевого стека (user mode network stack), перенаправлять входящие на хост и порт host-port обращения TCP и UDP на гостевые хост guest-host и порт guest-port Если guest-host не задан, его значение принимается равным 10.0.2.15 (адресу, который по умолчанию выдаётся встроенным DHCP-сервером). Например, для того чтобы перенаправить соединение X11 с экрана 1 на гостевой экран 0, нужно использовать такие опции: .RE # on the host qemu -redir tcp:6001::6000 [...] # this host xterm should open in the guest X11 server xterm -display :1 Для того чтобы перенаправить telnet-соединения с порта 5555 хоста на telnet-порт на гостевой системе, используйте опции: .RE # on the host qemu -redir tcp:5555::23 [...] telnet localhost 5555 Теперь, когда на хост-системе вы даёте "telnet localhost 5555", вы попадаете на telnet-сервер гостевой системы. .RE Для Linux: При указании этой опции можно использовать заданное ядро Linux без его инсталляции на диск. Это удобно для тестирования разных ядер Linux. .RE -kernel bzImage Использовать bzImage в качестве ядра. -append cmdline Использовать cmdline как командную строку ядра -initrd file Использовать file как initrd (начальный виртуальный диск). Отладочные опции (для экспертов) -serial dev Перенаправить виртуальный последовательный порт на символьное устройство в хост-системе .RS dev По умолчанию используется "vc" в графическом режиме и "stdio" в не графическом. Опцию можно указывать несколько раз. Можно симулировать до 4 последовательных портов. Для того чтобы отключить все порты, используется " -serial none ". Доступные символьные устройства: vc[:WxH] Виртуальная консоль. Опционально, ширина и высота могут задаваться в символах: vc:800x600 Ширину и высоту можно также задавать в символах: vc:80Cx24C pty [Только для Linux] Псевдотерминал (автоматически выделяется новый PTY) none Устройство не выделяется. null пустое (void) устройство /dev/XXX [Только для Linux] Использовать tty хост-системы, например, /dev/ttyS0 Параметры последовательного порта хост-системы устанавливаются в соответствии с параметрами эмулируемого порта. /dev/parportN [Только для Linux, только для параллельного порта] Использовать параллельный порт N хост-системы. Можно использовать возможности SPP и EPP параллельных портов. .RE file:filename Записывать вывод в filename. Чтение невозможно. stdio [только для Unix] стандартный ввод/вывод. pipe:filename использовать канал (pipe) filename. COMn [Только для Windows] Использовать последовательный порт n хоста udp:[remote_host]:remote_port[@[src_ip]:src_port] Сетевая консоль UDP (UDP Net Console). Если не указать remote_host или src_ip, принимается значение 0.0.0.0. Если не задать src_port, выбирается случайный порт. .RE Если вам нужна простая readonly-консоль, можно использовать netcat или nc, нужно запустить qemu с ключами .RS -serial udp::4555 и nc с ключами nc -u -l -p 4555 Как только QEMU выводит что-то на этот порт, оно появляется в сеансе netconsole. Если вы хотите отправлять символы обратно через netconsole или хотите много раз запускать и останавливать qemu, надо сделать чтобы он использовать один и тот же порт-источник при каждом вызове. Для этого указать опцию "-serial udp::4555@4556" to qemu. Второй способ такой: использовать пропатченную версию netcat, которая может прослушивать TCP-порт и отправлять и получать данные по UDP. Если у вас есть такая версия netcat (which activates telnet remote echo and single char transfer), можете использовать его, для того чтобы можно было telnet'ом на порт 5555 получить доступ к порту QEMU. "Опции QEMU:" -serial udp::4555@4556 "Опции netcat:" -u -P 4555 -L 0.0.0.0:4556 -t -p 5555 -I -T "Опции telnet:" localhost 5555 "tcp:[host]:port[,server][,nowait][,nodelay]" У сетевой консоли TCP (TCP Net Console) есть два режима работы. Она может отправлять ввод/вывод в определённую точку, а может ждать подключения из определённой точки. По умолчанию сетевая консоль отправляет на определённый порт хоста. Если указана опция server , QEMU будет ожидать клиентского подключения, и только когда оно произойдёт, продолжит работать, за исключение случая, когда указана опция "nowait". Опция "nodelay" отключает алгоритм Нагеля. Если host не задан, подразумевается 0.0.0.0. Допускается не более одного TCP-соединения одновременно. К соответствующему символьному устройству устройству можно подключаться через telnet. "Пример, как отправить TCP-консоль на 192.168.0.2 порт 4444" -serial tcp:192.168.0.2:4444 "Пример, как слушать соединение на порту 4444" -serial tcp::4444,server "Пример, как запустить сервер в режиме nowait на 192.168.0.100 порт 4444" -serial tcp:192.168.0.100:4444,server,nowait "telnet:host:port[,server][,nowait][,nodelay]" Использовать протокол Telnet вместо простых TCP-сокетов. Опция работает также как в случае, когда указана опция -serial tcp The difference is that the port acts like a telnet server or client using telnet option negotiation. This will also allow you to send the MAGIC_SYSRQ sequence if you use a telnet that supports sending the break sequence. Typically in unix telnet you do it with Control-] and then type "send break" followed by pressing the enter key. unix:path[,server][,nowait] Использовать доменное гнездо Unix вместо TCP-сокета. Опция работает также как -serial tcp , за исключением того, что для соединения используется сокет path "mon:dev_string" При помощи этой опции monitor можно вывести на другой последовательный порт. Доступ к монитору осуществляется при нажатии комбинации клавиш Ctrl-a, а потом c. Подробнее о доступе к монитору смотрите в разделе .RS pcsys_keys в описании ключа -nographic В качестве строки dev_string должно быть указано одно из последовательных устройств, описанных выше. Пример, как можно переключить монитор на telnet-сервер, слушающий на порту 4444: .RE "-serial mon:telnet::4444,server,nowait" braille Устройство Брайля. Для вывода Брайля будет использоваться BrlAPI. -parallel dev Перенаправить вииртуальный параллельный порт на устройство хост-системы dev (те же устройства, что и для последовательного порта). На Linux можно использовать .RS /dev/parportN , который указывает на устройство, подключенное к соответствующему параллельному порту. Опцию можно задавать до трёх раз, для того чтобы эмулировать до трёх параллельных портов. .RE Для того чтобы выключить параллельные порты используется "-parallel none". -monitor dev Перенаправить монитор на устройство dev в хост-системе (те же устройства, что и при выборе последовательного порта). По умолчанию используется "vc" в графическом режиме и "stdio" в не графическом. -echr numeric_ascii_value Указать какой escape-символ будет переключать на монитор, когда монитор и последовательная консоль используют работают совместно. По умолчанию при использовании опции .RS -nographic используется значение 0x01. 0x01 эквивалентно нажатию "Control-a". Можно выбрать любые другие символы из управляющих символов ascii, где числа от 1 до 26 отображаются на клавиши от Control-a до Control-z. Например, можно использовать любой из нижеприведённых вариантов для того чтобы повесить escape-символ на ctrl-t. "-echr 0x14" "-echr 20" -s Ожидать соединения gdb на порту 1234. -p port Изменить порт соединения с gdb. Параметр port может быть или десятичным числом, указывающим TCP-порт, или файлом-устройством в хост-системе (те же устройства, что и для последовательного порта). -S Не запускать CPU сразу (для запуска нужно нажать "c" в мониторе). -d Выводить журнал (log) в /tmp/qemu.log -hdachs c,h,s,[,t] Задать физическую геометрию для жёсткого диска 0 (1 <= c <= 16383, 1 <= h <= 16, 1 <= s <= 63) и, опционально, режим трансляции BIOS (t=none, lba или auto). Обычно QEMU может сам предположить значение этих параметров. Опция используется для образов старых дисков MS-DOS. -L path Использовать заданный каталог path для BIOS, VGA BIOS и keymaps. -std-vga Эмулировать стандартный VGA-адаптер с расширениями Bochs VBE (по умолчанию Cirrus Logic GD5446 PCI VGA). Если гостевая операционная система поддерживает VBE-расширения VESA 2.0 (например, Windows XP), и вы хотите использовать большие разрешения (>= 1280x1024x16), нужно включить эту опцию. -no-acpi Отключить поддержку ACPI (Advanced Configuration and Power Interface). Нужно использовать только если у гостевых систем проблемы с ACPI (только при эмуляции PC). -no-reboot Завершиться вместо перезагрузки. -loadvm file Начать с сохранённого ранее состояния ("loadvm" в мониторе) -semihosting Включить эмуляцию semihosting syscall (только для ARM и M68K). На ARM это реализует интерфейс "Angel". На M68K через libgloss реализуется "ColdFire GDB". .RE Обратите внимание, что это позволяет гостевым системам напрямую обращаться к файловой системе хоста, поэтому такой метод можно использовать только с операционными системами, которым вы доверяете. .RE В ходе графической эмуляции можно использовать такие комбинации клавиш: Ctrl-Alt-f Переключиться в полноэкранный режим Ctrl-Alt-n Переключиться на виртуальную консоль n. Стандартная привязка консолей такая: 1 Дисплей эмулируемой системы 2 Монитор QEMU 3 Последовательный порт Ctrl-Alt Включить/выключить захват мыши и клавиатуры. В виртуальных консолях, для того чтобы просмотреть более ранние записи, нужно использовать Ctrl-Up, Ctrl-Down, Ctrl-PageUp и Ctrl-PageDown. В ходе эмуляции, если используется опция -nographic , список терминальных команд можно получить при помощи Ctrl-a h: Ctrl-a h Показать эту справку Ctrl-a x Завершить эмулятор Ctrl-a s Сохранить данные диска в файл (если -snapshot) Ctrl-a t включить/выключить временные пометки при записи в консоли (console timestamps) Ctrl-a b Отправить break (magic sysrq в Linux) Ctrl-a c Переключиться между монитором и консолью Ctrl-a Ctrl-a Отправить Ctrl-a Эти опции специфичны для эмуляции PowerPC: -g WxH[xDEPTH] Установить начальный VGA-режиме. По умолчанию 800x600x15. Эти опции относятся только к эмуляции Sparc32: -g WxHx[xDEPTH] Установить начальный графический режим TCX. По умолчанию 1024x768x8, сейчас единственно возможный другой режим 1024x768x24. -prom-env string Установить в NVRAM переменные OpenBIOS, например: qemu-system-sparc -prom-env 'auto-boot?=false' \ -prom-env 'boot-device=sd(0,2,0):d' -prom-env 'boot-args=linux single' -M [SS-5|SS-10|SS-20|SS-600MP|SS-2|SS-1000|SS-2000] Установить тип эмулируемой машины. По умолчанию SS-5. См.также В документации по QEMU в формате HTML можно найти более полную и детальную информацию. Автор Фабрис Беллар (Fabrice Bellard) Перевод * Игорь Чубин