web-dev-qa-db-ja.com

画面の問題を拡大する仮想X11モニターとしてのVNCサーバー

フォローしようとしました this ディスプレイに仮想画面を作成して、vncクライアントのリモートモニターに表示できるようにします

しかし、モードを追加しようとすると、xrandr --addmode VIRTUAL1 xrandrから、そのような出力がないことがわかります

これがxrandr -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 

少し読んだ後、仮想デスクトップ拡張画面の仮想出力を作成する方法が見つかりませんでした。

新しい「仮想画面」を追加して、vncでリモートモニターにストリーミングするにはどうすればよいですか?

新しいディスプレイを作成してvncでそれに接続できましたが、このディスプレイをすでに使用しているディスプレイに拡張することはできません。

5
jNull

Fedora 26を使用して、VIRTUAL1がxrandrコマンドで表示されないという同じ問題に直面しました。

次に、私は この手順 に従って、HDMI-2のような空の出力を再利用しました。

  • Gnome(およびxrandr)は、空の出力が接続されていると認識せず、拡張デスクトップまたはクローンの位置を調整するための仮想モニターを表示しません。新しい物理モニターが他の出力に接続されるたびに、壊れる可能性が高くなります。

  • さらに悪いのは、gnome-Shell(およびその下のつぶやき)が新しい仮想モニターを複合フレームバッファーの表示可能領域の一部と見なさないため、ウィンドウが適切に再描画されず、ウィンドウが移動したときに裂けて、永続的なアニメーションの軌跡がその後ろに残っていることです。ウィンドウを閉じた後、x11vncを再起動した後でも、まだ残っています。

次に、私は このリンク のガイドに従って、ダミードライバーでの短い試行錯誤の後に、それが必要ではなく、/ etcの下のファイルに「インテル」ドライバー情報を追加するだけで十分であることがわかりました/X11/xorg.conf.dディレクトリ。VIRTUAL1およびVIRTUAL2出力をアクティブ化し、gnome-Shellにそれらを有効な出力として認識させます。 (また、出力名がわずかに変更されていることに気付きました。たとえば、「eDP-1」から「eDP1」に変わります)さらに、「TearLess」オプションをtrueに設定して、コンポジットマネージャーがそうでない場合にドライバーを再描画するようにしました。

~# 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

ドロップダウンログインリストで[Gnome on Xorg]オプションを選択してGDMセッションを再起動すると、推奨されるxrandrコマンドをVIRTUAL1出力で実行でき、x11vncを簡単に接続できます。次に、VIRTUAL1出力をGnome画面設定内で管理できます:解像度の変更、デスクトップモニタージオメトリの配置への移動、クローンの選択または拡張。そして、すべてがx11vncの実行中に動作し、お気に入りのVNCビューアが接続されています。

デバイスの画面解像度のモードを定義し、それらをVIRTUAL1出力に接続します。

## 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

結果はxrandrおよびGnomeの画面設定に表示されます。

~$ 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)

これで、x11vncを仮想モニターに簡単に接続できます。

  • vNCパスワードを使用する場合:

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

  • gDM/XDM認証を使用する場合:

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

VNCクライアントから接続して、新しいモニターをお楽しみください!!