L'article présente une méthode pour inspecter la mémoire vive d'une machine virtuelle QEMU en utilisant son moniteur. Le problème initial réside dans le fait que le numéro du périphérique de démarrage est codé en dur, ce qui empêche de démarrer depuis une disquette ou un disque dur de manière interchangeable.
La solution proposée consiste à sauvegarder dynamiquement le numéro du périphérique de démarrage, fourni par le BIOS dans le registre DL avant le passage de contrôle au secteur de démarrage, dans une zone réservée de la RAM (ici, à l'adresse 0x500). Ce numéro peut ensuite être lu directement depuis la mémoire par le programme pour s'adapter au périphérique de boot utilisé.
L'article détaille ensuite l'utilisation du moniteur QEMU, notamment la commande x/ pour examiner le contenu de la mémoire. Cet outil permet de vérifier la valeur sauvegardée à l'adresse 0x500, confirmant ainsi le bon fonctionnement de la modification, et d'explorer d'autres zones mémoire comme celle contenant le message affiché par le système.
vm-curator est un outil en Rust avec une interface TUI pour gérer des machines virtuelles QEMU/KVM sous Linux, sans dépendre de libvirt. Il permet de découvrir, créer, organiser, lancer et gérer des VMs avec une interface intuitive. Parmi ses fonctionnalités, on trouve un assistant de création de VMs, la gestion de snapshots, un éditeur de scripts de lancement, et le passthrough USB. Il prend en charge l'accélération 3D para-virtualisée pour les GPU NVIDIA, testée avec un RTX-4090 sous Arch Linux. Le projet est open source sous licence MIT.
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
En résumé :
- Customize
$ sudo virt-customize -a /var/lib/libvirt/images/imagetest1.qcow2 --hostname vm01.test.lab --root-password password:rootpw --ssh-inject 'root:file:labkey.pub' --uninstall cloud-init --selinux-relabel - Import and install
$ sudo virt-install --name vm01 --memory 1024 --vcpus 1 --disk /var/lib/libvirt/images/image.qcow2 --import --os-type linux --os-variant generic --noautoconsole - Access
$ sudo virsh domifaddr vmlab01$ ssh -i labkey root@192.168.122.76
Ça peut dépanner