Я настроил Gem в Qemu следующим образом:
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial"
GRUB_CMDLINE_LINUX="..console=ttyS0"
и запустите qemu
процесс с параметром -nographic
командной строки. Это позволяет использовать текущий терминал для последовательной консоли и qemu
консоли монитора. Однако теперь, когда я нажимаю Ctrl+ Cвнутри работающей виртуальной машины, она перехватывается qemu
и останавливает процесс.
Как я должен пройти Ctrl+ Cили любое другое нажатие клавиши CTRLв Qemu?
virtual-machine
qemu
отметка
источник
источник
stty susp ^]
. Для Ctrl- \ (выйти) используйтеstty quit ^]
. С несколькими определениями для одного символа это порядок приоритета: intr quit susp.Вы можете попробовать использовать
sendkey
команду, используя-monitor stdio
. Хотя, видимо,-display none -serial mon:stdio
вариант должен пройти Ctrl+ cдо гостя.Вы также можете создать разъем для монитора , например так:
А затем подключитесь к монитору, чтобы использовать sendkey с
socat
таким образом:Теперь вы можете отправить свои ключи, например так:
источник
screen
окно и подключиться к нему черезsocat
. Вы также можете использовать-monitor stdio
для перенаправления на ваш терминал вместо этого.Удалить
-monitor
или добавить-serial mon:stdio
Начиная с QEMU 2.10.1, Ubuntu 17.10
Ctrl-C
по умолчанию передается гостю без проблем при использовании-nographic
.Однако, если вы также используете эту
-monitor
опцию, поведение изменится, иCtrl-C
вместо этого убивает QEMU.Как
-monitor
это обычно используется: Как переключиться на панель управления QEMU с помощью -nographics? | Супер пользовательЕсли вам нужно
-monitor
, вы можете вернуть Ctrl + C с помощью-serial mon:stdio
: Как запустить qemu с -nographic и -monitor, но при этом иметь возможность отправить Ctrl + C гостю и выйти с помощью Ctrl + AX? | Переполнение стекаисточник