Changer la résolution de la ligne de commande dans la boîte virtuelle

18

Dans la boîte virtuelle, comment puis-je changer la résolution d'écran à partir de la ligne de commande? (Ou s'il y en a un pour tout type d'ordinateur, cela pourrait aussi fonctionner).


la source
1
Voulez-vous le faire à partir de la ligne de commande hôte ou invité?
CarlF
2
c'est peut-être moi, mais quel est le système d'exploitation?
Jakub
Une réponse complète peut être trouvée ici sur SO: stackoverflow.com/questions/10725867/…
Cloud

Réponses:

19

Vous pouvez rapidement "suggérer" la fenêtre à une taille spécifique avec la commande suivante:

VBoxManage controlvm <uuid>|<name> setvideomodehint <xres> <yres> <bpp>

Par exemple, si vous avez un invité appelé "Windows XP Pro" et que vous souhaitez définir la résolution à 1024x600 à 32 bits par pixel (aka 32 bits), vous utiliserez la commande suivante:

VBoxManage controlvm "Windows XP Pro" setvideomodehint 1024 600 32

Il y a cependant quelques conditions préalables:

  1. Cela ne fonctionne que si vous avez lancé le SE invité à partir d'un environnement fenêtré sur le SE hôte (c.-à-d. Windows / X Windows / Mac OS Desktop).

  2. Les compléments invité doivent être installés dans le système d'exploitation invité.

Aaron Hall
la source
VirtualBox OSE 4.0.4 ne vous permet pas de changer la résolution pour une taille d'affichage supérieure à la normale avec cela.
cweiske
2
Notez également que cette commande doit être exécutée pendant que la machine virtuelle est en cours d'exécution. Mon expérience indique également qu'il est nécessaire de définir VBoxManage setextradata global GUI/MaxGuestResolution any(avant de démarrer la VM). Le redimensionnement automatique doit également être désactivé dans le menu Affichage. Si la résolution souhaitée est particulièrement élevée (surtout si elle est supérieure à la résolution de l'hôte), il peut être nécessaire d'attribuer davantage de mémoire vidéo.
Bob
Est-il possible de conserver ce paramètre d'une manière ou d'une autre?
naitsirch
3

Tout d'abord, le VM doit être allumé, vous pouvez l'allumer avec la commande:

# VBoxManage startvm "VPN" --type headless

Avant de pouvoir modifier la résolution:

# VBoxManage controlvm "VPN" setvideomodehint 1024 768 24
Roberto Góes
la source
2

Si vous souhaitez le modifier depuis le client:

Sous Windows : il existe quelques outils qui vous permettent de le faire facilement à partir de la ligne de commande, notamment Display Changer .

Sous Linux : utilisez xrandr -qpour lister les modes d'affichage disponibles, puis xrandr -s ##est le numéro du mode d'affichage que vous souhaitez utiliser. xrandr -qaffichera ces options numériques à côté de chaque option d'affichage.

John T
la source
1
la résolution 10k x 8k que j'ai essayé de définir avec le changeur d'affichage n'a eu aucun effet sur la virtualbox ose 4.0.4
cweiske
1

$ VBoxManage setextradata "WinXP" "CustomVideoMode1" "1440x900x16"
Où "WinXP" est le nom de votre machine virtuelle. Cette solution est un peu proche de la vérité :)

kolypto
la source
ne fonctionne pas ici sur VirtualBox OSE 4.0.4
cweiske
0

Regardez dans la documentation fournie avec VirtualBox. Le programme VBoxManage vous donne la possibilité de modifier des machines virtuelles à partir de la ligne de commande. Cependant, vous ne pouvez pas le faire pendant que la machine fonctionne. Pour ce faire, vous devrez trouver un moyen de scripter le changement de résolution pour le système d'exploitation que vous virtualisez.

Dan Walker
la source
veuillez noter que dans certains cas, vous devrez installer des "ajouts d'invités" afin d'utiliser correctement VBoxManage, voir peut poser des questions concernant un problème similaire: superuser.com/questions/30924/…
Uwe Honekamp
0

Le client MS Windows RDP pour Mac OSX a un paramètre de préférence que j'ai dû ajuster en plus d'ajouter les modes vidéo personnalisés (illustrés ci-dessus).

Sélectionnez Préférences dans le menu RDC, puis cliquez sur «Afficher». (J'allais publier une image d'écran, mais la fonction de prévention du spam l'a empêchée.)

En sélectionnant «Plein écran», j'ai pu faire passer le mode d'affichage en plein écran de l'ordinateur client. Dans ce cas, un MacBook avec une résolution d'écran de 1280x800.

Jerry Lumpkins
la source
1
Téléchargez l'image / le lien sans l'incorporer et quelqu'un le corrigera. De plus, "montré ci-dessus" ne le coupe pas vraiment puisque l'ordre des réponses change sur SU - vous voudrez peut-être faire explicitement référence à quelle réponse vous vous référez à l'avenir
Journeyman Geek