Ajouter un faux affichage quand aucun moniteur n'est branché

47

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 de la 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?

John Chapman
la source

Réponses:

55

Vous avez 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 /usr/share/X11/xorg.conf.d/xorg.conffichier (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.

John Chapman
la source
1
Veuillez éditer la réponse, le paquet est en cours de mise à jour. Essayez sudo apt-cache search video-dummy.
octobre
1
En créant le fichier /usr/share/X11/xorg.conf.d/xorg.confavec ce contenu, ou celui de xpra.org/xorg.conf , mon Ubuntu ne démarre plus (il reste bloqué devant l’écran du logo Ubuntu avant l’écran de connexion). Quel peut être le problème?
David Portabella
2
Le lien dans la réponse semble être brisé.
Rsethc
4
Également cassé mon os. N'a pas démarré. Sa télécommande et maintenant je dois monter dans une voiture et conduire 1h. Des choses risquées :-)
Derek
1
Cela fonctionne pour moi! Cependant, il y a un problème: si j'attache un moniteur réel, c'est toujours un écran noir
Soulmachine
20

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
Eric Leschinski
la source
Cool, c'est du travail!
Burtsevyg
2
Pour moi, il est dit:Can't open display
ar2015
2
@ ar2015 Exécutez la commande en tant quexrandr --fb 1280x1024 -display :0
Terrance
@Terrance je reçoisNo protocol specified Can't open display :0
Rufus
@Woofas Êtes-vous connecté au système de Wayland? Pour autant que je sache, xrandrfonctionne uniquement avec X.Org. Je viens juste de relancer ma commande sur un système 18.04 et cela fonctionne bien, mais j'utilise Xubuntu qui est paramétré par défaut sur X.Org.
Terrance
8

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 .

utilisateur.dz
la source
1
Cela semble être une idée intéressante. Je vais tenter le coup.
John Chapman
2
Honnêtement, c’est le chemin le plus simple. Il existe de nombreux tutoriels sur les solutions de contournement, mais cela fonctionne et vous permettra de gagner beaucoup de temps. L'option de bricolage semble solide, mais les prises factices sur Amazon coûtent 20 $. Assurez-vous d’en obtenir un bon pour appuyer votre résolution.
Jason Capriotti
3

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.

Stefan Lemmens
la source
3

Pensez à Xvfb, qui est probablement le moins susceptible de gâcher l'affichage lorsque vous branchez un vrai moniteur.

Les commandes suivantes vont lancer lightdm sur un faux écran avec ID 1et résolution1024x76

export DISPLAY=:1
Xvfb :1 -screen 0 1024x768x16 &
sleep 1

#exec gnome-session & # use gnome-session instead of lightdm
exec lightdm-session &
Rufus
la source
Merci, cela m'a aidé à exécuter chrome sur Debian sans affichage.
Deda
0

Pour moi, aucune des solutions ci-dessus ne fonctionne. Pour ajouter un nouveau périphérique / écran VIRTUAL1, voici ce qui a fonctionné pour moi:

  • Installer le paquet xserver-xorg-video-dummy
  • Mettre à jour xorg.conf

Tous les détails sont ici: Ajouter un faux affichage lorsqu'un moniteur n'est pas branché

Info : pour moi, cela fonctionne dans l'édition de /etc/X11/xorg.conf au lieu de /usr/share/X11/xorg.conf.d/xorg.conf

sangorys
la source