VNC-Server als virtueller X11-Monitor zur Bildschirmerweiterung Problem

VNC-Server als virtueller X11-Monitor zur Bildschirmerweiterung Problem

Ich habe versucht zu folgenDas So erstellen Sie einen virtuellen Bildschirm auf meinem Display, damit ich ihn mit einem VNC-Client auf einem Remote-Monitor anzeigen kann

aber wenn ich versuche, meinen Modus hinzuzufügen, xrandr --addmode VIRTUAL1wird xrandr mir sagen, dass ich keine solche Ausgabe habe

hier ist meine aktuelle Ausgabe fürxrandr -q

Screen 0: minimum 8 x 8, current 4224 x 1080, maximum 16384 x 16384                                               
VGA-0 connected 1024x768+0+312 (normal left inverted right x axis y axis) 304mm x 228mm                           
   1024x768      60.00*+  75.03    70.07                                                                          
   800x600       75.00    72.19    60.32    56.25                                                                 
   640x480       75.00    72.81    59.94                                                                          
   640x350       70.07                                                                                            
DVI-D-0 connected 1280x1024+2944+56 (normal left inverted right x axis y axis) 376mm x 301mm                      
   1280x1024     60.02*+                                                                                          
   1024x768      75.03    75.03    70.07    60.00                                                                 
   800x600       75.00    72.19    60.32    56.25  
   640x480       75.00    72.81    59.94  
HDMI-0 connected primary 1920x1080+1024+0 (normal left inverted right x axis y axis) 531mm x 298mm
   1920x1080     60.00*+  59.94    50.00    60.05    60.00    50.04  
   1680x1050     59.95  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1280x800      59.81  
   1280x720      60.00    59.94    50.00  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    59.94    59.93 

nach einigem Lesen konnte ich keine Möglichkeit finden, eine virtuelle Ausgabe für meinen erweiterten virtuellen Desktop-Bildschirm zu erstellen.

Wie kann ich einen neuen „virtuellen Bildschirm“ hinzufügen, damit ich ihn mit VNC auf einen Remote-Monitor streamen kann?

Ich konnte ein neues Display erstellen und mich per VNC damit verbinden, aber ich kann dieses Display nicht auf das Display erweitern, das ich bereits verwende

Antwort1

Bei der Verwendung von Fedora 26 hatte ich das gleiche Problem, da VIRTUAL1 vom xrandr-Befehl nicht angezeigt wurde.

Dann folgte ichdiese Anleitung, um einen leeren Ausgang wie HDMI-2 wiederzuverwenden, und es hat ganz gut funktioniert, aber:

  • Gnome (und xrandr) erkennt den leeren Ausgang nicht als verbunden und zeigt den virtuellen Monitor nicht an, um die Position im erweiterten Desktop oder Klon anzuordnen. Jedes Mal, wenn ein neuer physischer Monitor an einen anderen Ausgang angeschlossen wird, besteht eine hohe Wahrscheinlichkeit, dass er kaputtgeht.

  • Das Schlimmste ist, dass Gnome-Shell (und das darunterliegende Muttern) den neuen virtuellen Monitor nicht als Teil des sichtbaren Bereichs im zusammengesetzten Framebuffer betrachtet, er nicht richtig neu gezeichnet wird und Fenster beim Verschieben reißen und eine permanente animierte Spur hinterlassen, die selbst nach dem Schließen des Fensters oder einem Neustart von x11vnc noch da ist.

Dann folgte ich dem Führer indieser Link, und nach kurzem Herumprobieren mit dem Dummy-Treiber habe ich festgestellt, dass dies nicht erforderlich ist und es ausreicht, die „Intel“-Treiberinformationen zu einer Datei im Verzeichnis /etc/X11/xorg.conf.d hinzuzufügen, um die VIRTUAL1- und VIRTUAL2-Ausgaben zu aktivieren und sie von der Gnome-Shell als gültige Ausgaben erkennen zu lassen. (Mir ist auch aufgefallen, dass sich die Ausgabenamen leicht geändert haben, z. B. von „eDP-1“ zu „eDP1“) Zusätzlich habe ich die Option „TearLess“ auf „true“ gesetzt, damit der Treiber neu gezeichnet wird, wenn der Composite Manager dies nicht tut.

~# vi /etc/X11/xorg.conf.d/01-dummy-monitor.conf
Section "Device"
        Identifier      "Configured Video Device"
    Driver "intel"         #CHANGE THIS
    Option "TearLess"   "1"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
EndSection

Nach dem Neustart der GDM-Sitzung durch Auswahl der Option „Gnome auf Xorg“ in der Dropdown-Anmeldeliste können die empfohlenen xrandr-Befehle über die VIRTUAL1-Ausgabe ausgeführt werden, und x11vnc kann problemlos daran angehängt werden. Anschließend kann die VIRTUAL1-Ausgabe in den Gnome-Bildschirmeinstellungen verwaltet werden: Auflösung ändern, verschieben, um die Geometrie des Desktop-Monitors anzuordnen, Klonen oder Erweitern auswählen. Und alles funktioniert, während x11vnc ausgeführt wird und Ihr bevorzugter VNC-Viewer verbunden ist.

Definieren Sie Modi für die Bildschirmauflösung Ihres Geräts und fügen Sie sie dem VIRTUAL1-Ausgang hinzu:

## For Samsung Galaxy Tab 10.1
~$ cvt 1280 752
# 1280x752 59.83 Hz (CVT) hsync: 46.72 kHz; pclk: 77.75 MHz
Modeline "1280x752_60.00"   77.75  1280 1344 1472 1664  752 755 765 781 -hsync +vsync
~$ xrandr --newmode "1280x752_60.00"   77.75  1280 1344 1472 1664  752 755 765 781 -hsync +vsync
~$ xrandr --addmode VIRTUAL1 1280x752_60.00

## For monitor HD 1920x1080
~$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
~$ xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
~$ xrandr --addmode VIRTUAL1 1920x1080_60.00

Das Ergebnis ist in den Bildschirmeinstellungen von xrandr und Gnome sichtbar:

~$ xrandr
Screen 0: minimum 8 x 8, current 3200 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 310mm x 170mm
   1920x1080     60.00*+
   1400x1050     59.98
   1600x900      60.00
   1280x1024     60.02
   1280x960      60.00
   1368x768      60.00
   1280x720      60.00
   1024x768      60.00
   1024x576      60.00
   960x540       60.00
   800x600       60.32    56.25
   864x486       60.00
   640x480       59.94
   720x405       60.00
   640x360       60.00
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP2-1 disconnected (normal left inverted right x axis y axis)
DP2-2 disconnected (normal left inverted right x axis y axis)
DP2-3 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 connected 1280x752+1920+330 (normal left inverted right x axis y axis) 0mm x 0mm
   1280x752_60.00  59.83*
   1920x1080_60.00  59.96
VIRTUAL2 disconnected (normal left inverted right x axis y axis)

Jetzt können Sie x11vnc ganz einfach an den virtuellen Monitor anschließen:

  • wenn Sie ein VNC-Passwort verwenden:

    ~$ x11vnc -display :0 -clip xinerama1 -usepw -xrandr -forever -nonc -noxdamage -repeat

  • wenn Sie die GDM/XDM-Authentifizierung verwenden möchten:

    ~$ x11vnc -display :0 -clip xinerama1 -xauth /var/lib/gdb/:0.Xauth -xrandr -forever -nonc -noxdamage -repeat

Stellen Sie von Ihrem VNC-Client eine Verbindung her und genießen Sie Ihren neuen Monitor!!

verwandte Informationen