如何在另一台显示器上启动 x 服务器?

如何在另一台显示器上启动 x 服务器?

我想将外部显示器连接到我的笔记本电脑,但我无法正确管理它。我的设置是:Dell l702x 上的 Arch Linux x64 (xfce),带有 Bumblebee 和 HDMI -> DVI 适配器显示器。

我希望像普通的双显示器一样,​​具有通用的鼠标指针并能够在两个屏幕之间移动窗口。

由于我的笔记本电脑中的 HDMI 端口连接到 Nvidia 卡,因此我遵循了该帮助文件:https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup但无济于事。我找到了在第二个屏幕上获取某些内容的方法(所以它肯定有效) - 我只需要这样做echo DISPLAY=:8.0(这是默认的虚拟端口),从那时起,所有内容都将在外部屏幕上启动,但不是 X 服务器,它总是在我的尽管有任何配置更改,笔记本​​电脑的主屏幕仍然如此。

我可以共享光标synergy(效果很好),但我无法调整外部屏幕上任何内容的大小,也无法移动窗口,alt+tab 也不起作用。

我找到的所有答案都是关于在外部显示器上启动另一个 X 服务器,那么如何做到这一点呢?

不幸的是DISPLAY=:8.0 startx(或primusrun startxoptirun)只是忽略显示,它在我的笔记本电脑屏幕上启动。

我已经测试了很多xorg.conf选项(不幸的是,所有选项都被忽略了),我发现的一个很大的区别是xrandr始终只显示一个显示器,即:

$ DISPLAY=:0.0 xrandr
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
LVDS1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
   1920x1080     60.01*+  40.01  
   1400x1050     59.98  
   1280x1024     60.02  
   1280x960      60.00  
   1024x768      60.00  
   800x600       60.32    56.25  
   640x480       59.94  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

$ DISPLAY=:8.0 xrandr
Screen 0: minimum 8 x 8, current 1920 x 1200, maximum 16384 x 16384
HDMI-0 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
   1920x1200     59.95*+
   1920x1080     60.00  
   1680x1050     59.95  
   1600x1200     60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1024x768      60.00  
   800x600       60.32  
   640x480       59.94  

那么基本上我如何在外部显示器上启动 X 服务器呢?理想情况下,这将像任何常规设置一样在两个屏幕上运行,但即使这样也会比当前状态更好。

答案1

我已经解决了这个问题,我已将 xorg 配置文件放入etc/bumblebee/xorg.conf.d/找到另一个类似文件的位置,该文​​件已被解析,因为xinit当我插入语法错误时引发了适当的错误,但不知何故默认情况下设置被覆盖配置或只是被忽略。我已将新创建的10-nvidia.conf文件移至/usr/share/X11/xorg.conf.d并开始工作。

/usr/share/X11xorg.conf.d/10-nvidia.conf`:

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia" 0 0
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID  "PCI:1:0:0"
    Option          "PrimaryMonitor"            "LVDS"
    Option          "UseDisplayDevice"          "LVDS, DFP-0"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    SubSection     "Display"
        Modes      "nvidia-auto-select"
    EndSubSection
EndSection

Section "Monitor"
    Identifier  "DFP-0"
     Option "Primary" "true" 
   Option      "RightOf"    "LVDS"
  Option "DPMS"
EndSection

现在 X 服务器在外部显示器上启动。不幸的是,这还不是全部,xfce 会话没有恢复,但这可以通过简单的方式解决xfce4-session- 现在我在外部屏幕上几乎可以完全正常工作常规系统。

主要是因为它很快就出现了,GPU 加速被破坏了,即 Chromium(我将其与 GPU 加速一起使用)开始是一个大黑匣子。我必须安装lib32-nvidia-libgl它,当我安装时就被删除了bumblebee,所以再见bumblebee- 我必须将它连同它安装的几个附加软件包一起删除(特别是lib32-mesa-libgl不能与 nvidia 软件包一起安装),从那时起一切都正常。

现在我有完全可操作的外部屏幕和完全无法使用的笔记本电脑屏幕,在启动 X 服务器后显示就冻结了。

我将尝试使用 miniDisplayPort 再次测试所有内容,该端口应连接到集成在 CPU 中的英特尔卡,这样一切就可以在没有 Nvidia GeForce 的情况下正常工作。

相关内容