KVM-Qemu : Différence entre versions

De TechWik
Aller à : navigation, rechercher
m
m (ajout copier/coller VM Windows)
 
Ligne 62 : Ligne 62 :
  
 
Ensuite pour démonter l'image:  
 
Ensuite pour démonter l'image:  
 +
 +
= KVM/qemu: copier/coller vers/depuis une VM Windows =
 +
 +
Sur la machine virtuelle Windows, télécharger et installer spice-guest-tools depuis https://www.spice-space.org/download.html.
 +
 +
Vérifier avec virt-manager que :
 +
 +
* le mode "Video QXL" de la VM est bien positionné à QXL
 +
* un canal spice existe, de type "spicevmc" et ayant pour cible "com.redhat.spice.0"
 +
 +
Arrêter et redémarrer la VM. En principe, ça fonctionne.
 +
 +
Voir aussi: https://blogs.nologin.es/rickyepoderi/index.php?/archives/87-Copy-n-Paste-in-KVM.html
  
 
[[Category:Linux]]
 
[[Category:Linux]]
 
[[Category:KVM]]
 
[[Category:KVM]]
 
[[Category:Virtualisation]]
 
[[Category:Virtualisation]]

Version actuelle datée du 10 mai 2020 à 17:20

KVM/qemu, libvirt

Config réseau: redirection de port sur réseau NATé

Voir la section "Forwarding Incoming Connections" de la page https://wiki.libvirt.org/page/Networking

Conversion de VMs

Import VMDK (VMware)

Récupérer l'image disque VMDK (cas fichier unique)

 # qemu-img info vmdisk1.vmdk
   image: vmdisk1.vmdk
   file format: vmdk
   virtual size: 13G (13958643712 bytes)
   disk size: 5.3G
 # qemu-img convert -O qcow2 vmdisk1.vmdk <VM-images-store>/newvm.img
 # cd /etc/libvirt/qemu
Créer une nouvelle VM avec ce disque.

A voir: avec image splitée: comment fait-on?

Import avec virt-v2v

Voir : https://www.redhat.com/fr/blog/importing-vms-kvm-virt-v2v

Utilisation

virsh: commandes utiles

Attacher/détacher une image iso au CD d'une VM

Attacher une image iso au cdrom :

 # virsh attach-disk myVMdomain mypath.iso hdc --type cdrom --mode readonly

Détacher:

 # virsh change-media myVMdomain hdc --eject
ou pour modif sur VM éteinte:
 # virsh change-media VM30-prodrh6-64 hdc --eject --config

Executer virt-manager, virt-viewer par un utilisateur non-root sans mot de passe

première possibilité: utiliser sudo.

deuxième option sans sudo

  • sous fedora-20 ou Centos 7, libvirt implémente policy-kit (voir sur le wiki fedora: [1]). On peut alors autoriser l'accès en se basant par exemple sur un groupe particulier de l'utilisateur. Pour autoriser les utilisateurs locaux et connectés du groupe wheel, créer le fichier /etc/polkit-1/rules.d/80-libvirt.rules avec le contenu:
 polkit.addRule(function(action, subject) {                                                                                                    
   if (action.id == "org.libvirt.unix.manage" && subject.local && subject.active && subject.isInGroup("wheel")) {
     return polkit.Result.YES;
   }
 });
  • sous fedora-21: il suffit d'ajouter le group libvirt à l'utilisateur.

guestfish / guestmount : manipuler des images disque

guestfish - the guest filesystem shell

 Permet de monter une image ou des images en read-only ou read-write (sur image stoppée, sinon risque élevé de corruption)
 $ sudo guestfish --ro -a /shared/VMimages/debian7.qcow2
 Welcome to guestfish, the guest filesystem shell for
 editing virtual machine filesystems and disk images.
 ><fs> run
 ><fs> list-filesystems
 /dev/sda1: ext2
 /dev/sda2: unknown
 /dev/deb7-vg/root: ext4
 /dev/deb7-vg/swap_1: swap
 ><fs> mount /dev/deb7-vg/root /
 ><fs> cat /etc/fstab
 ... 
   et pour quitter: 
 ><fs> exit

guestmount - Mount a guest filesystem on the host using FUSE and libguestfs

Permet de monter une image en read-only ou read-write (sur image stoppée, sinon risque élevé de corruption)

 $ sudo guestmount --ro -a /shared/VMimages/debian7.qcow2 -m /dev/kali2-vg/root /mnt/tmp
 $ sudo cat /mnt/tmp/etc/fstab
 ... 

Ensuite pour démonter l'image:

KVM/qemu: copier/coller vers/depuis une VM Windows

Sur la machine virtuelle Windows, télécharger et installer spice-guest-tools depuis https://www.spice-space.org/download.html.

Vérifier avec virt-manager que :

  • le mode "Video QXL" de la VM est bien positionné à QXL
  • un canal spice existe, de type "spicevmc" et ayant pour cible "com.redhat.spice.0"

Arrêter et redémarrer la VM. En principe, ça fonctionne.

Voir aussi: https://blogs.nologin.es/rickyepoderi/index.php?/archives/87-Copy-n-Paste-in-KVM.html