J'ai un serveur Ubuntu 14.04 qui n'a pas de moniteur externe connecté. J'utilise NoMachine pour contrôler à distance la machine. Lorsque je le fais, l'interface Unity/Gnome ne voit aucun moniteur connecté, je ne peux donc utiliser que 800x600 lors d'une connexion avec NoMachine. Si je connecte un moniteur, je peux régler la résolution à la taille de la fenêtre NoMachine sur l'ordinateur distant.
Existe-t-il un moyen de créer un "faux" périphérique moniteur sur Ubuntu afin que je puisse définir une résolution de bureau sur Unity/Gnome?
J'ai trouvé un moyen de le faire sans avoir besoin d'un plug factice: http://blog.mediafederation.com/andy-hawkins/ubuntu-headless-vnc-vesa-800x600-fix/
Fondamentalement, installez un pilote factice:
Sudo apt-get install xserver-xorg-video-dummy
Puis écrivez-le dans le fichier /usr/share/X11/xorg.conf.d/xorg.conf
(créez-en un, s'il n'existe pas):
Section "Device"
Identifier "Configured Video Device"
Driver "dummy"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
HorizSync 31.5-48.5
VertRefresh 50-70
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x800"
EndSubSection
EndSection
Puis redémarrez l'ordinateur.
Spécifiez la résolution sur un bureau Ubuntu 14.04 sans qu'un moniteur ne soit connecté:
À partir de la page de manuel xrandr:
--fb widthxheight
Reconfigures the screen to the specified size. All configured
monitors must fit within this size. When this option is not
provided, xrandr computes the smallest screen size that will
hold the set of configured outputs; this option provides a
way to override that behaviour.
Par conséquent, utilisez la commande après la connexion:
xrandr --fb 1280x1024
Ceci est une solution matérielle/solution de contournement qui peut fonctionner pour certains matériels/pilotes graphiques.
Soit vous achetez une fiche factice VGA (ou analogique DVI), soit certains appellent cela une clé factice.
Ou utilisez simplement 3 résistances d’environ 75 Ohm à la sortie VGA: 1 → 6, 2 → 7, 3 → 8.
+/- 10 Ohm peut fonctionner sans problème. Certaines cartes fonctionnent avec une seule résistance. (Comme mon Intel, 2 → 7 ou 3 → 8, sera détecté en tant que moniteur)
Référence: Comment créer des plugs factices pour vos cartes graphiques .
Je suis sur Ubuntu 18.04, voici comment je l'ai résolu:
J'ai créé l'affichage virtuel en utilisant la réponse à cette question: https://unix.stackexchange.com/questions/378373/add-virtual-output-to-xorg
Créez un fichier 20-intel.conf:
Sudo vi /usr/share/X11/xorg.conf.d/20-intel.conf
Ajoutez les informations de configuration suivantes dans le fichier:
Section "Device" Identifier "intelgpu0" Driver "intel" Option "VirtualHeads" "2" EndSection
Cela indique au processeur graphique Intel de créer 2 écrans virtuels. Vous pouvez modifier le nombre de VirtualHeads en fonction de vos besoins.
Ensuite, j'ai créé un script Shell (n'oubliez pas de définir l'exécutable) et je l'ai mis dans les applications de démarrage:
#! /bin/bash
/usr/bin/xrandr -d :0 --output VIRTUAL1 --primary --auto
/usr/bin/xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900$
/usr/bin/xrandr --addmode VIRTUAL1 "1600x900_60.00"
/usr/bin/xrandr
De cette façon, VIRTUAL1 est défini comme sortie et connecté. Au démarrage, un nouveau mode (trouvé avec "cvt 1600 900") est en cours de création et nommé dans VIRTUAL1.
Le seul problème avec ceci est: le dock est manquant au redémarrage ... Je ne l'ai pas encore résolu.
Considérez Xvfb qui est probablement le moins susceptible de gâcher l'affichage lorsque vous branchez un moniteur réel