J'utilise QEMU sous Linux sans interface graphique.
Après avoir démarré mon noyau personnalisé avec QEMU, je ne peux pas tuer et revenir à l'hôte en appuyant sur Ctrl+C.
Existe-t-il un moyen de revenir au système d'exploitation hôte ?
J'utilise QEMU sous Linux sans interface graphique.
Après avoir démarré mon noyau personnalisé avec QEMU, je ne peux pas tuer et revenir à l'hôte en appuyant sur Ctrl+C.
Existe-t-il un moyen de revenir au système d'exploitation hôte ?
Ctrl-A X
Para -nographic
il suffit d'entrer :
Ctrl-A X
ce qui signifie
Alternativement :
entrer dans le moniteur QEMU avec Ctrl-A C
puis tapez :
quit
et appuyez sur la touche Entrée. Voir aussi : https://stackoverflow.com/questions/14165158/how-to-switch-to-qemu-monitor-console-when-running-with-curses
utiliser le moniteur QEMU (identique à Ctral-A C
) avec telnet
:
qemu-system-x86_64 -monitor telnet::45454,server,nowait -serial mon:stdio
et sur un terminal hôte :
telnet localhost 45454
et ensuite quit
à partir de là.
-serial mon:stdio
est nécessaire pour que Ctrl+C fonctionne : https://stackoverflow.com/questions/49716931/how-to-run-qemu-with-nographic-and-monitor-but-still-be-able-to-send-ctrlc-to/49751144#49751144
arrêter la VM à partir de l'invité normalement, par exemple à l'aide d'une commande powerdown
à partir d'un invité Linux Shell si vous en avez la possibilité. Bien entendu, cette commande passe par la séquence d'arrêt normale au lieu de tuer immédiatement la VM, mais c'est parfois l'approche la plus simple.
Il ne fonctionne cependant pas sur toutes les machines : https://stackoverflow.com/questions/31990487/how-to-cleanly-exit-qemu-after-executing-bare-metal-program-without-user-interve
Testé sous Ubuntu 17.10, QEMU 2.10.1.
Ceci s'ajoute à d'autres réponses, où ctrl-a x
fonctionne, mais vous l'avez remplacé par un alias. Si vous êtes comme moi, vous utilisez tmux avec ctrl-b
remplacé par ctrl-a
C'est pourquoi vous ne pouvez pas utiliser ctrl-a x
. Une solution simple consiste à utiliser la fonction send-keys
pour envoyer des ctrl-a x
à qemu.
Dans une fenêtre tmux en cours d'exécution, appuyez sur ctrl-a :
pour faire apparaître l'invite tmux, puis tapez send-keys C-a x Enter
et qemu s'arrêtera.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.