使用 xfreerdp 和 Xvfb 的多個監視器
我正在嘗試在單個 Xvfb 上啟動具有多個螢幕的 X 伺服器,如下所示:
Xvfb :50 -screen 0 1792x1120x24 -screen 1 1792x1120x24
並啟動將使用這兩個螢幕的 RDP 連接:
DISPLAY=:50; xfreerdp /w:1792 /h:1120 /monitors:0,1 /multimon /u:... /p... /v:...
這樣不行,xfreerdp 程序崩潰了。我嘗試了一些組合
/span
和監控數字/multimon:force
,但沒有任何效果。當我在一台顯示器和一台 Xvfb 螢幕上嘗試相同的操作時,它可以工作。我也不明白如何在 xfreerdp 中設置每個螢幕/監視器的解析度,因為我只有 /w 和 /h 中的一個。
xfreerdp /monitor-list
在用一兩個螢幕啟動 Xvfb 後也嘗試過。用一個螢幕啟動 Xvfb 後,監視器列表正確列印了它。但是有兩個 xvfb 螢幕,監視器列表什麼也沒列印。感謝您的任何答案甚至提示!
我已經設法
xfreerdp
通過使用Xvnc
伺服器(的一部分tigervnc-server
)而xrandr
不是Xvfb
:Xvnc :50 -screen 0 1600x600x24 & DISPLAY=:50 xrandr --setmonitor screen0 800/400x600/300+0+0 VNC-0 xrandr --setmonitor screen1 800/400x600/300+800+0 none xfreerdp /multimon:force /monitors:0,1 /u:... /p... /v:...
啟動將使用這兩個螢幕的 RDP 連接…
DISPLAY=:50
X 螢幕不是監視器。您通常有一個帶有多個監視器的 X 螢幕(通過在不同的監視器上顯示單個幀緩衝區的不同部分)。顯示器相對較新(它們帶有
xrandr
擴展程序),而螢幕相當舊,今天很少使用。螢幕總是有不同的幀緩衝區,但可以共享一個 X 伺服器連接。但基本上沒有 X 應用程序是以實際使用不同螢幕的方式編寫的。您的第一個 Xvfb 螢幕位於
:50.0
,您的第二個螢幕位於:50.1
,並且:50
是 的縮寫:50.0
,因此xfreerdp
以所述方式開始只會使用第一個螢幕。所以你需要
xfreerdp
在客戶端機器上使用多個螢幕,我不知道是否xfreerdp
能做到這一點。至少我沒有看到任何用於配置它的選項。什麼
/multimon
是查看與單個顯示器/螢幕相關聯的監視器(即,你得到什麼xrandr
)。但Xvfb -screen
不是這樣設置的。