不存储多台显示器的设置

不存储多台显示器的设置

我在联想 Thinkpad T400 上运行 Ubuntu 12.04。我连接了一个外接显示器作为第二个显示器。笔记本电脑位于外接屏幕下方。笔记本电脑的原始分辨率为 1440x900(16:10),外接显示器的原始分辨率为 1280x1024(5:4)。有两个图形适配器:一个内部英特尔 GMA 4500 MHD以及离散的ATI卡。目前,集成英特尔已启用。

我用显示器应用程序来安排监视器的位置,使其看起来像这样:

所需的显示配置

问题:
每当我重新启动计算机时,配置就会丢失。首先,显示器镜像代替延长。我必须按两次Fn+才能切换到F7延长模式。其次,显示器设置仍然如下所示:

重启后显示配置

我知道这个在我运行 Ubuntu 10.10 时曾经起作用。我不知道从什么时候开始它就不起作用了。你知道我如何永久保存设置吗?


有时当我启动 Ubuntu 并按下Fn+时F7,什么也没有发生。当我打开显示器我把外部屏幕放在上面,然后按下“应用”按钮,什么也没发生。然后,一分钟左右后,设置突然应用。你知道是否有一个日志文件可以帮助分析行为吗?

答案1

你可以采取两种基本方法。第一种是利用兰德尔这将允许您创建一个大型虚拟显示器,您可以在其中放置显示器。第二种方法是利用辛纳拉玛这样您就可以拥有 2 个独立的 X 屏幕,它们将作为一个大显示器运行。我将在这里介绍这两种方法,您可以决定哪种方法更适合您的需求。


兰德- 调整大小和旋转

您可以使用以下方式动态启用双头瑞安

xrandr --output foo --above bar

还有一个名为阿兰德它位于 12.04 存储库中,但您似乎想要一个更静态的配置。

它可以像创建一样简单/etc/X11/xorg.conf.d/10-monitor.conf内容如下:

Section "Monitor"
  Identifier     "Monitor0"
EndSection

Section "Monitor"
  Identifier     "Monitor1"
  Option         "Above" "Monitor0" 
EndSection

该方法意味着兰德尔设置。如果使用兰德不同分辨率的显示器可能会造成窗口位置不正确、某个屏幕上可能存在黑色区域等。

当你跑步时兰德无需命令行选项,你就可以找出标识符你需要在你的10-监视器.conf.然后重新启动Ubuntu查看设置是否已加载。



新内拉玛 要启用 xinerama,您需要修改/etc/X11/xorg.conf

Section "ServerFlags"
  Option    "Xinerama" "true"
EndSection

这可能就是这么简单,因为 X 非常擅长根据硬件检测自动配置事物。但是,如果只是打开辛纳拉玛扩展不提供您想要的功能,您可以选择完全配置 X 以使用辛纳拉玛有几种方法可以配置 X。您可以在/etc/X11/xorg.conf.d/一些用于显示器,一些用于设备等。我将介绍如何拥有一个xorg配置文件该文件包含使用我当前设置的修改版本的所有设置。

Section "ServerLayout"
    Identifier     "DualHead"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" Above "Screen0"
    Option         "Xinerama" "1"                # You can specify xinerama here
EndSection

Section "Device"
    Identifier     "Device0"                     # A Device section for each monitor
    Driver         "nvidia"                      # Specify the driver to use
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
    BusID          "PCI:1:0:0"                   # Use lspci | grep VGA to find BusID
    Screen          0                            # Do note the screen number
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
    BusID          "PCI:1:0:0"
    Screen          1                            # Do note the screen number
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Gateway HX2000"
    HorizSync       31.0 - 83.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DELL 1907FPV"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
EndSection

显然,您需要对其进行修改以适合您的硬件,但是基本骨架已经准备好了。

请注意,我最近读到英特尔可能有问题辛纳拉玛。您可能会发现自己需要使用独立显卡。

答案2

我不确定这是否有效,但值得一试:禁用英特尔;启用 ati;安装专有 ati/amd 驱动程序;按您的需要配置双显示器桌面;验证 amd catalyst 软件(管理员)中的配置;检查您的设置现在是否持久。我有一台桌面,但使用 catalyst 工具是我能够保持双显示器设置持久的唯一方法。

答案3

您可以在 ~/.xprofile 中手动设置多显示器设置。例如,要将额外的显示器永久地设置在主显示器的左侧,我在 ~/.xprofile 中输入以下内容:

xrandr --output VGA1 --left-of LVDS1

所有信息均来自此处的 Ubuntu wiki: https://wiki.ubuntu.com/X/Config/Resolution

相关内容