Comment augmenter la résolution d'écran visualisée sur QEMU / KVM?


21

J'ai une station de travail Ubuntu 9.10 64 bits avec deux OS invités virtualisés utilisant KVM / QEMU. Aussi les deux 64 bits. L'un est Fedora 12, l'autre est la version bêta d'Ubuntu 10.04.

Le problème est que je voudrais utiliser un écran de plus grande taille configuré par défaut. Les deux systèmes d'exploitation invités ont une résolution d'écran maximale de 1024x768. Je voudrais augmenter cela à quelque chose comme 1280x900 ou 1440x900. La résolution du système hôte est de 1920x1080.

Cette configuration semble être le résultat de l'installation détectant la résolution signalée par l'écran virtuel lors de l'installation.

Les seules informations que j'ai trouvées sur le sujet suggèrent de modifier le fichier xorg.conf dans le répertoire / etc / X11. Aucun des systèmes invités ne possède ce fichier.

J'ai essayé d'en créer un à la main dans le système Fedora et j'ai réussi à le rendre complètement inutilisable. Pas un gros problème car il est récemment installé et peut être réinstallé facilement.

Est-ce que je veux faire? Si oui, comment puis-je y parvenir?


1
+1 C'est quelque chose que j'aimerais aussi vraiment savoir. Ma résolution native HostOS est de 1920x1080 et mon GuestOS (Windows 7) est également bloqué à 1024x768. Je suis à peu près sûr (d'après ce que j'ai lu en ligne jusqu'à présent) que qemu gère la virtualisation matérielle mais je n'ai aucune idée de comment le configurer pour qu'il fonctionne avec la carte graphique physique.
Evan Plaice

1
J'ai compris, voyez ma réponse.
Evan Plaice

Voir également la taille d'affichage VNC sur la liste de diffusion libvirt de RedHat.
Jww

1
@CiroSantilli 新疆 改造 中心 六四 事件 法轮功 mauvais lien je suppose.
Ray

Réponses:


4

Ajoutez l'indicateur '-vga std' à la ligne de commande

Fondamentalement, la machine virtuelle charge son propre pilote virtuel. La virtualisation matérielle est nécessaire car les images de disque virtuel sont souvent copiées sur de nombreux systèmes différents avec des architectures diverses. En faisant abstraction du matériel, les images vm sont capables de le faire.

En utilisant l'indicateur '-vga std', vous faites charger le GuestOS un périphérique VGA standard qui devrait pouvoir prendre en charge une résolution égale ou supérieure à celle que votre carte physique peut gérer.

Pour plus d'informations, consultez cet article.

Remarque: Si vous utilisez une ancienne version de kvm / qemu, vous devrez peut-être utiliser le drapeau '-std-vga' à la place.

Si vous ne parvenez pas à atteindre des résolutions supérieures à 1600x1200, notez qu'il existe toujours des problèmes avec cette option.


1
J'ai -vga stdet peux accéder à des résultats élevés à partir des invités Windows, mais mon invité Ubuntu est bloqué en 1024x768. Ces messages liés sont assez anciens (2008 et 2010 respectivement).
Matt Connolly

1
Lorsque vous dites "Ajouter l'indicateur '-vga std' à la ligne de commande" , où l'avez-vous ajouté? Lancez-vous l'invité avec virsh start <machine> -vga std? Ou as-tu fait autre chose?
Jww

@jww Au premier démarrage, il peut être défini temporairement à partir de la console grub. Ajoutez-le comme indicateur de noyau. Après, le système est démarré, il peut être ajouté de manière permanente de grub.confla même manière qu'il a été ajouté via la console grub. N'oubliez pas sudo update-grubde verrouiller les paramètres après avoir modifié la configuration de grub.
Evan Plaice

1
@MattConnolly -vga virtiom'a permis de monter jusqu'à 4096 x 2160: superuser.com/a/1331924/128124
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

Dans cette réponse, je reçois un lien pour «cet article». Essayez l'archive: web.archive.org/web/20160126004059/http://www.linux-kvm.com:80/…
Ray Woodcock

15

Utilisez la vmvgacarte vidéo

J'utilise virt-manager(car je suis un noob complet pour kvm et libvirt).

J'ai pu obtenir des résolutions plus élevées sur un invité Windows 7 en changeant la carte vidéo de vgaen vmvgadans la fenêtre des paramètres de la machine virtuelle.


Moi aussi ... mais ça ne change pas (toujours 1024x768)!

Je remonte dans ma mémoire ici, mais je pense que j'ai pu changer la résolution d'écran dans le système d'exploitation invité une fois qu'il a démarré à l'aide de la carte vmvga.
diffalot

vmvgane semble plus exister, mais vgasemble bien fonctionner, ainsi queqxl
Avindra Goolcharan

6

-vga virtio

L'utilisation de cette option me permet d'aller jusqu'à 4096 x 2160.

Bien sûr, cela est inutile car mon écran ne monte que jusqu'à 1080p, j'ai donc réglé 1080p.

Ensuite, vous pouvez basculer en plein écran avec Ctrl + Alt + Fou en passant -full-screen.

Comment je l'ai deviné: virtiosignifie en général: simuler une machine virtuelle générique pratique sans restrictions matérielles normales.

Testé avec cette configuration exacte: /ubuntu/884534/how-to-run-ubuntu-16-04-desktop-on-qemu/1046792#1046792


5

Depuis 2014, si vous souhaitez obtenir une résolution supérieure à la résolution 1024x768 offerte par le Cirrus vGPU et que vous exécutez KVM en tant qu'hyperviseur sur une plate-forme hostOS x86_64, vous devriez envisager d'utiliser le pilote QXL vGPU dans le guestOS, couplé avec le affichage du serveur d'épices. Cela peut être configuré à partir de vos paramètres GUI virt-manager (ou bien sûr à partir des arguments CLI).

Dans mon cas, j'ai créé la machine virtuelle à l'aide de virt-install, mis le système d'exploitation sur le vHDD en utilisant le contrôle de style vnc normal et le cirrus-vGPU normal. Une fois que tout fonctionnait et que toutes les mises à jour du logiciel guestOS (et hostOS) avaient été appliquées, j'ai utilisé virt-manager pour passer de l'affichage vnc à des graphiques d'épices, et de cirrus-vidéo à QXL-vidéo. Cela aide également à ajouter le «canal» à votre machine virtuelle pour spice-vdagent [d] s'exécutant à l'intérieur de l'invité, ce qui vous permet de couper-coller des données entre les applications guestOS et les applications hostOS de manière décente.

En plus d'offrir des résolutions élevées, la configuration QXL / spice a été une grande amélioration par rapport à la configuration Cirrus / VNC lors de la visualisation de vidéos dans le guestOS - j'ai en fait reçu des avertissements de déclenchement thermique du CPU lorsque j'essayais de regarder des vidéos en plein écran en 1024x768 Cirrus / VNC , mais l'ordinateur portable fonctionnait bien et les fans étaient silencieux lorsqu'ils faisaient de la vidéo plein écran 1920 x 1080 avec l'option QXL / épices plus efficace. Il existe des limitations sur le type d'installations prises en charge par QXL / spice, mais si votre ou vos systèmes peuvent les utiliser, elles sont recommandées pour une lecture 2D et vidéo améliorée. http://www.linux-kvm.org/page/SPICE, faites défiler jusqu'à "Activation de SPICE à l'aide de virt-manager". Je n'ai pas été invité à ajouter la chaîne, comme le prétend la page, mais il n'a pas été difficile de l'ajouter manuellement. Si vous travaillez avec windows-guestOSes, ou rencontrez des problèmes avec les brèves instructions sur le site linux-kvm.org, voir ici - http://www.spice-space.org/page/Documentation (mais méfiez-vous à la fois du wiki et le site principal sont VRAIMENT obsolètes avec de nombreuses pages de 2009 à 2012, alors soyez prudent). Le projet est activement développé, mais peu documenté.

QXL / spice n'est pas particulièrement simple pour le moment, et peut ne pas fonctionner dans votre environnement logiciel / matériel souhaité. Pourtant, avec un peu d'huile de coude, cela peut fonctionner, et l'avantage est important (surtout si l'autonomie de la batterie et / ou le bruit du ventilateur sont des problèmes). Vous n'obtiendrez pas de graphiques vraiment hautes performances - étudiez les passerelles VFIO et VT-d / IOMMU pour cette possibilité si vous avez le matériel CPU + GPU spécialisé nécessaire et beaucoup de temps pour essayer de le faire fonctionner. QXL / spice offre cependant une vitesse de lecture 2D et vidéo décente.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.