Home
» LINUX
»
Probleem oplossen waarbij de schermresolutie vastzit op 1024x768 op een Pardus KVM-gast.
Probleem oplossen waarbij de schermresolutie vastzit op 1024x768 op een Pardus KVM-gast.
Waarom een Pardus KVM-gast vast kan lopen op 1024x768
Een Pardus virtuele machine die nooit een resolutie hoger dan 1024x768 biedt, heeft meestal geen probleem met een simpele bureaubladinstelling. De belangrijke vraag is of de virtuele machine daadwerkelijk een grotere virtuele weergavemodus van KVM/QEMU ontvangt en of de bureaubladsessie kan reageren op wijzigingen in de schermgrootte.
Het gewenste resultaat is eenvoudig: na het vergroten of verkleinen van het weergavevenster of het selecteren van een grotere modus, moet Pardus resoluties zoals 1366x768, 1600x900 of 1920x1080 weergeven in plaats van 1024x768 als maximale resolutie te rapporteren. Integratie met het klembord en een soepele muisaanwijzer zijn nuttige secundaire indicatoren wanneer SPICE wordt gebruikt, maar de resolutie is de belangrijkste test.
Deze handleiding is met name van toepassing op Pardus-desktopomgevingen die draaien onder KVM/QEMU met libvirt en een SPICE- of grafische console. Pardus 25.0 werd uitgebracht in november 2025 en de officiële Pardus-downloadrepository bevat ook Pardus 25.1-images van maart 2026. De exacte desktopmenu's kunnen verschillen tussen de XFCE- en GNOME-edities, dus de onderstaande controles maken gebruik van commando's en virtualisatie-instellingen die niet sterk afhankelijk zijn van één specifieke desktopomgeving. Raadpleeg de officiële Pardus 25-downloadrepository voor actuele installatie-images.
1. Controleer of 1024x768 daadwerkelijk de maximale resolutie van de gast is.
Begin in Pardus. Open een terminal en identificeer het sessietype en de virtuele beeldschermhardware:
Als de sessie X11 is, voer dan ook het volgende uit:
xrandr --current
Let op twee dingen. Ten eerste, controleer of de virtuele GPU een QXL, Virtio GPU, een generieke VGA-adapter of iets anders is. Ten tweede, controleer de lijst met modi. Als 1920x1080 al wordt weergegeven, is de virtualisatiestack waarschijnlijk geschikt voor de hogere resolutie en ligt het probleem waarschijnlijk bij de bureaubladconfiguratie of een probleem met het wijzigen van de resolutie. Als xrandrer staat dat de maximale resolutie 1024x768 is, zal het wijzigen van de bureaubladresolutie alleen waarschijnlijk niet helpen.
In een Wayland-sessie xrandris dit geen gezaghebbend configuratieprogramma voor de compositor, dus gebruik het alleen als aanvullende informatie. Het sessietype is van belang omdat QXL van oudsher geassocieerd wordt met X.Org/SPICE-workflows, terwijl Virtio GPU het modernere paravirtualiseerde grafische apparaat in QEMU is.
Controleer of Pardus alleen is ingesteld op 1024x768 of dat de gast 1024x768 rapporteert als de maximale virtuele schermgrootte.
2. Controleer de video- en beeldschermapparaten van de VM op de KVM-host.
Sluit de virtuele machine volledig af voordat u de virtuele videohardware wijzigt. Open in Virtual Machine Manager de hardwaregegevens van de VM en controleer zowel het beeldscherm als het videoapparaat. Een veelvoorkomende SPICE-configuratie gebruikt een SPICE-beeldscherm in combinatie met QXL- of Virtio-video.
Libvirt documenteert verschillende ondersteunde videomodeltypen, waaronder qxlen virtio. QEMU beschrijft Virtio GPU als een geparavirtualiseerde GPU/beeldschermcontroller voor Linux-gasten en raadt VirtIO-apparaten over het algemeen aan wanneer er geen vereiste is om specifieke fysieke hardware te emuleren. U kunt de documentatie van libvirt over videoapparaten en de QEMU VirtIO GPU-documentatie raadplegen .
Als de VM al QXL en SPICE gebruikt, verander dan niet alles in één keer. Laat die configuratie intact en installeer eerst de SPICE-gastagent. Dit geeft je een schone test: als dynamische resolutie werkt, is er geen reden om de virtuele GPU te wijzigen.
Als de virtuele machine een oud, generiek VGA- of Cirrus-model gebruikt, is overstappen naar QXL of Virtio meestal geschikter voor een moderne Linux-desktop. Als u later voor Virtio kiest, begin dan zonder 3D-acceleratie te forceren. De documentatie van QEMU vermeldt dat versnelde Virtio GPU-modi extra vereisten stellen aan de host, kernel, Mesa en renderer. Een basisconfiguratie met een 2D Virtio GPU is daarom een veiliger uitgangspunt voor het oplossen van problemen.
Controleer de beeldscherm- en videoapparaten van de VM op de host voordat u pakketten in Pardus wijzigt.
3. Installeer de SPICE-gastagent in Pardus
Als de virtuele machine een SPICE-scherm gebruikt, is de meest nuttige en risicoarme oplossing ervoor te zorgen dat SPICE spice-vdagentin het gastbesturingssysteem is geïnstalleerd.
sudo apt update
sudo apt install spice-vdagent
Log vervolgens uit en weer in, of herstart de virtuele machine. De Debian-pakketbeschrijving spice-vdagentvermeldt specifiek de automatische aanpassing van de X-sessieresolutie aan de clientresolutie als een van de functies. Pardus is gebaseerd op Debian, dus dit pakket is beschikbaar in het Debian-pakketecosysteem dat door de huidige Pardus-releases wordt gebruikt. Debian stable bevat momenteel versie spice-vdagent0.22.1-4.1. Zie de Debian spice-vdagent-pakketpagina .
Controleer na de installatie de daemon en de processen aan de gebruikerszijde:
systemctl status spice-vdagentd.service --no-pager
pgrep -a spice-vdagent
Een actieve systeemdaemon is nuttig, maar de component van de gebruikerssessie is ook belangrijk. De pakketdocumentatie van Debian vermeldt dat de automatische resolutie afhankelijk is van een actieve grafische sessie waarin het agentproces draait.
Als de virtuele machine QXL onder X.Org gebruikt en het grafische stuurprogramma ontbreekt, controleer dan of het QXL X.Org-stuurprogrammapakket is geïnstalleerd:
Doe dit alleen als de virtuele machine daadwerkelijk QXL gebruikt. Het pakket is specifiek bedoeld voor QXL-apparaten in SPICE-compatibele KVM/QEMU-omgevingen; het is niet nodig alleen omdat de VM toevallig onder KVM draait. Debian stable bevat momenteel versie xserver-xorg-video-qxl0.1.6-1.1, zoals gedocumenteerd op de Debian QXL-stuurprogrammapagina .
Installeer eerst de SPICE-gastagent wanneer de virtuele machine een SPICE-console gebruikt; deze is verantwoordelijk voor de integratie aan de gastzijde, inclusief het afhandelen van het wijzigen van de schermgrootte.
4. Test het dynamisch formaat wijzigen opnieuw voordat u de virtuele GPU wijzigt.
Nadat u opnieuw bent ingelogd, opent u de grafische console en past u de grootte van het venster aan. Als uw viewer een optie biedt om het venster aan te passen of automatisch te vergroten of verkleinen, schakelt u de optie in die het gastvenster verkleint in plaats van alleen het weergegeven beeld uit te rekken.
Voor X11 kunt u het programma xrandr --currentopnieuw uitvoeren. Een succesvol resultaat zou een grotere maximale resolutie en extra modi moeten tonen, of de huidige modus zou automatisch moeten veranderen wanneer de grootte van het weergavevenster verandert. U kunt ook de Pardus-weergave-instellingen openen en controleren of grotere, native-achtige resoluties selecteerbaar zijn.
Beoordeel succes niet alleen op basis van of het consolevenster groter lijkt. Een viewer kan een framebuffer van 1024x768 pixels schalen om een groot venster te vullen, wat een groter beeld oplevert zonder de resolutie van het gastbesturingssysteem te verhogen. Betrouwbare indicatoren zijn de modus die door het gastbesturingssysteem wordt gerapporteerd en de hoeveelheid daadwerkelijk beschikbare bureaubladruimte.
Een goede eindtoestand is een echt grotere gastmodus, bijvoorbeeld 1920x1080, met meerdere beschikbare resoluties in plaats van een vaste bovengrens van 1024x768.
Als QXL nog steeds stopt bij 1024x768, schakel dan over naar Virtio video.
Als de SPICE-agent is geïnstalleerd en actief, maar het virtuele apparaat nog steeds een resolutie van slechts 1024x768 weergeeft, wijzig dan één laag tegelijk. Schakel de VM uit, open de video-hardware-instellingen en wijzig het videomodel van QXL of legacy VGA naar Virtio. Behoud de SPICE-weergave, tenzij u een specifieke reden hebt om ook het externe weergaveprotocol te wijzigen.
Start Pardus op en herhaal de hardware- en moduscontroles:
Voer in een X11-sessie ook het volgende commando uit xrandr --current: . QEMU geeft aan dat Virtio GPU ondersteuning voor de Linux-gastkernel vereist CONFIG_DRM_VIRTIO_GPU; gangbare distributiekernels bieden dit normaal gesproken, maar aangepaste kernels mogelijk niet. Als de gast na de wijziging opstart met een zwart scherm, schakel deze dan uit via de host en herstel het videomodel in plaats van blindelings door te gaan met het aanpassen van de gast.
Wanneer xrandr kan helpen en wanneer het de verkeerde oplossing is.
Als xrandrde gewenste resolutie al in de lijst staat, kan het selecteren ervan een nuttige diagnostische stap zijn:
xrandr --output Virtual-1 --mode 1920x1080
Vervang dit Virtual-1door de daadwerkelijke uitvoernaam die wordt weergegeven door xrandr. Deze opdracht is alleen van toepassing op X11 en alleen wanneer die modus al beschikbaar is voor de uitvoer.
Als de gewenste modus ontbreekt en de maximale framebuffergrootte nog steeds 1024x768 is, pakt het handmatig injecteren van een modeline meestal alleen het symptoom aan in plaats van de oorzaak. In een KVM-gast zou de virtuele GPU- en beeldschermintegratie normaal gesproken bruikbare modi moeten adverteren. Los dat probleem eerst op. De X.Org RandR-documentatie is de belangrijkste referentie voor dynamische X11-beeldschermconfiguratie.
Hoe bepaal je of de reparatie voltooid is?
Rekening
Goed resultaat
Als het dan nog steeds mislukt
Gastmoduslijst
Modi boven 1024x768 verschijnen
Controleer het videomodel en de grafische driver van de gast-VM opnieuw.
Venstergrootte wijzigen
De resolutie van de gastweergave volgt de afmetingen van de SPICE-viewer.
Verifiëren spice-vdagenten het bijbehorende sessieproces
Weergave-instellingen
Hogere resoluties kunnen worden geselecteerd zonder aangepaste modelines.
Probeer Virtio-video na het uitschakelen van de VM.
Opnieuw opstarten
Hogere modi blijven beschikbaar na herstart.
Controleer of de juiste virtuele GPU nog steeds is gekoppeld en of de agent normaal opstart.
Beeldkwaliteit
De tekst is scherp bij de geselecteerde schermresolutie.
Schakel het uitrekken aan de kijkerzijde uit en gebruik in plaats daarvan de functie voor het aanpassen van de grootte door de gastgebruiker.
Nuttige commando's voor probleemoplossing
Als het resultaat nog steeds inconsistent is, verzamel dan deze opdrachten voordat u een volgende wijziging aanbrengt:
Deze controles onderscheiden vier verschillende foutcategorieën: de host gebruikt het verkeerde virtuele videoapparaat, Pardus mist de relevante gastintegratie, de agent is geïnstalleerd maar draait niet in de grafische sessie, of de desktopsessie gebruikt een displaystack die niet reageert op het verwachte mechanisme voor het wijzigen van de schermgrootte.
Beperkingen van deze oplossing
Er bestaat geen eenduidige QXL- of Virtio-keuze die voor elke KVM-installatie de beste is. De QEMU/libvirt-versie van de host, de consoleclient, de desktopsessie, de kernel en of 3D-acceleratie is ingeschakeld, hebben allemaal invloed op het resultaat. De bovenstaande stappen beginnen bewust met de minst ingrijpende wijziging en gebruiken de door de gast gerapporteerde resolutie als succescriterium.
Als de virtuele machine via een ander weergavepad wordt benaderd, zoals via VNC, GPU-passthrough, RDP naar de gast-VM of een cloudconsole, zijn de SPICE-specifieke stappen mogelijk niet van toepassing. Evenzo kan een aangepaste kernel zonder het relevante DRM-stuurprogramma kernelconfiguratie vereisen in plaats van een desktoppakket.
Het praktische eindpunt is bereikt wanneer Pardus de gewenste hogere modi beschikbaar stelt, de viewer het formaat kan aanpassen zonder simpelweg een framebuffer van 1024x768 te schalen, en het resultaat na een herstart behouden blijft. Als aan deze voorwaarden is voldaan, zijn extra modelines, X.Org-configuratiebestanden of wijzigingen in 3D-acceleratie niet nodig.