
GUI 없이 Linux에서 QEMU를 실행하고 있습니다.
QEMU로 사용자 정의 커널 시작을 실행한 후 Ctrl+C를 눌러 종료하고 호스트로 돌아갈 수 없습니다.
호스트 OS로 돌아갈 수 있는 방법이 있나요?
답변1
Ctrl-A X
그냥 입력 하려면 -nographic
:
Ctrl-A X
즉
- 먼저 누르십시오 Ctrl + A(A는 키 a가 아닌 alt키일 뿐입니다).
- 그런 다음 키를 놓습니다.
- 그 후 를 누르세요 X.
또는:
다음을 사용하여 QEMU 모니터에 들어간
Ctrl-A C
후 다음을 입력하십시오.quit
Enter를 누르세요. 또한보십시오:https://stackoverflow.com/questions/14165158/how-to-switch-to-qemu-monitor-console-when-running-with-curses
다음과 함께 QEMU 모니터( 와 동일
Ctrl-A C
) 를 사용하십시오telnet
.qemu-system-x86_64 -monitor telnet::45454,server,nowait -serial mon:stdio
호스트 터미널에서:
telnet localhost 45454
그리고
quit
거기서부터.-serial mon:stdio
Ctrl+C를 계속 작동하려면 다음이 필요합니다.https://stackoverflow.com/questions/49716931/how-to-run-qemu-with-nographic-and-monitor-but-still-be-able-to-send-ctrlc-to/49751144#49751144powerdown
가능하다면 Linux 게스트 셸의 명령을 사용하여 게스트에서 VM을 정상적으로 종료합니다 . 물론 이는 VM을 즉시 종료하는 대신 일반적인 종료 시퀀스를 거치지만 때로는 가장 간단한 접근 방식일 뿐입니다.그러나 모든 시스템에서 작동하는 것은 아닙니다.https://stackoverflow.com/questions/31990487/how-to-cleanly-exit-qemu-after-executing-bare-metal-program-without-user-interve
Ubuntu 17.10, QEMU 2.10.1에서 테스트되었습니다.
답변2
셸에서 QEMU 프로세스를 닫으려면 다음 안내를 따르세요.
ctrl+a
, 그 다음에x
답변3
답변4
ctrl-a x
이것은 작동하지만 별칭을 지정한 다른 답변에 추가되는 것입니다 . 당신이 나와 같다면 으로 ctrl-b
대체된 tmux를 사용하고 ctrl-a
있으므로 를 사용할 수 없습니다 ctrl-a x
. 이에 대한 간단한 해결책은 tmux의 유틸리티를 사용하여 qemu로 send-keys
보내는 것 입니다 ctrl-a x
.
실행 중인 tmux 창에서 키를 눌러 ctrl-a :
tmux 프롬프트를 불러온 다음 입력하면 send-keys C-a x Enter
qemu가 종료됩니다.