![ubuntu 20.04 如何设置虚拟显示器,以便我可以使用 vnc 作为第二个屏幕,并且仍然能够来回拖动窗口](https://linux22.com/image/925710/ubuntu%2020.04%20%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E8%99%9A%E6%8B%9F%E6%98%BE%E7%A4%BA%E5%99%A8%EF%BC%8C%E4%BB%A5%E4%BE%BF%E6%88%91%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%20vnc%20%E4%BD%9C%E4%B8%BA%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%B1%8F%E5%B9%95%EF%BC%8C%E5%B9%B6%E4%B8%94%E4%BB%8D%E7%84%B6%E8%83%BD%E5%A4%9F%E6%9D%A5%E5%9B%9E%E6%8B%96%E5%8A%A8%E7%AA%97%E5%8F%A3.png)
所以我想让 ubuntu 相信已经连接了第二台显示器。主要原因是:我想能够设置 vnc 来监视该屏幕并使用各种设备作为第二个屏幕。例如,设置一台平板电脑以使用 vnc 查看第二个屏幕并将其放在主屏幕旁边。
camdroid 还允许您将显示内容作为网络摄像头进行广播并从中进行录制。通过从虚拟屏幕执行此操作,我可以将窗口拖放到该显示器中以获得干净的无缝视频,而无需进行大量编辑。
我相信它类似于运行无头服务器和执行虚拟监视器,但我想在开始之前确定步骤,我不想因为缺乏经验而失去主屏幕。:)
答案1
这取决于您的硬件和驱动程序。如果您使用的是英特尔 iGPU 和英特尔驱动程序,则可以使用以下方法进行设置:
- 创造
/etc/X11/xorg.conf.d/20-intel.conf
:
Section "Device"
Identifier "intelgpu0"
Driver "intel"
Option "VirtualHeads" "1"
EndSection
- 重新启动并检查 的输出
xrandr
。您应该看到“VIRTUAL1 已断开连接”。还要检查当前输出的名称。(对我来说,它被称为 eDP1。)这是我的:
$ xrandr
Screen 0: minimum 8 x 8, current 1366 x 768, maximum 32767 x 32767
eDP1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 310mm x 170mm
1366x768 60.00*+
1280x720 59.86 60.00 59.74
1024x768 60.00
1024x576 60.00 59.90 59.82
960x540 60.00 59.63 59.82
800x600 60.32 56.25
864x486 60.00 59.92 59.57
640x480 59.94
720x405 59.51 60.00 58.99
680x384 60.00
640x360 59.84 59.32 60.00
HDMI1 disconnected (normal left inverted right x axis y axis)
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
- 使用 gtf 或 cvt 生成 modeline(将 1024 768 替换为您喜欢的分辨率)。这是我得到的结果:
$ cvt 1024 768
# 1024x768 59.92 Hz (CVT 0.79M3) hsync: 47.82 kHz; pclk: 63.50 MHz
Modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync
- 从先前的输出创建一个新的 xrandr 模式(应该省略 Modeline 关键字):
$ xrandr --newmode "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync
$ xrandr --addmode VIRTUAL1 1024x768_60.00
- 激活虚拟显示器:(用你的真实显示器替换 eDP1)
xrandr --output VIRTUAL1 --mode 1024x768_60.00 --right-of eDP1
如果您没有使用英特尔驱动程序,但有空闲的 HDMI 或 VGA 输出,您也可以使用它进行输出。只需在步骤 4 和 5 中将 VIRTUAL1 替换为空闲输出的名称即可。
参考:建筑维基