带有12.04的Thinkpad W520上的外接显示器显示


11

我知道有关这些问题的材料很多,但其中很多似乎已经过时,而且似乎没有什么适合我的情况:

  • ThinkPad W520(英特尔3000和Nvidia 1000M芯片组)
  • 作业系统:Ubuntu 12.04.3。
  • BIOS显卡设置: Optimus
  • BIOS OS Optimus自动检测: disabled

我使用下面的Bumblebee Wiki来安装和设置Bumblebee:https : //wiki.ubuntu.com/Bumblebee#Installation

将图形卡的BusID设置为“ PCI:01:00.0”(请参阅​​下面的配置文件)后,我可以运行optirun firefox并且执行virtualgl测试,如optirun glxspheres64glxspheres64。因此,我相信Bumblebee的安装一切都很好,除了我无法通过VGA连接到外部显示器。有关如何执行此操作的任何想法?如Zachary Sunberg所述,W520的VGA(和DisplayPort)硬连接至Nvidia卡:

http://zachstechnotes.blogspot.com/2012/04/post-title.html

因此,我认为在尝试将VGA连接到外部显示器时,这会使操作变得有些棘手。我相信我必须使用服务器/屏幕克隆,如以下记录的尝试所述:

  1. 我尝试了以下文章来配置外部监视器,

    http://hillspcworld.com/forum/index.php?topic=2.0

    但是在步骤7之后重新启动会导致操作系统完全崩溃(引导加载程序显示“无法写入字节:管道损坏”后出现黑屏)。我相信这是由于xorg服务器以某种方式破坏了我的系统。

  2. 我在以下教程中尝试了类似的方法,但是在安装xorg-dev之后的重新引导过程中,我与(1)中的崩溃相同:

    http://sagark.org/optimal-ubuntu-graphics-setup-for-thinkpads/

截至目前,我想知道从这里去哪里。我下面有几条线索,关于问题是什么或我能做什么的任何想法?有更好的建议吗? http://zachstechnotes.blogspot.com/2012/04/post-title.html

https://github.com/Bumblebee-Project/Bumblebee/issues/77

https://github.com/Bumblebee-Project/Bumblebee/issues/522

另外,这是我的一些文件(让我知道是否有更好的配置-我所做的唯一更改是取消注释文件中的“ BusID PCI:01:00.0” xorg.conf.nvidia

lucas@lucas-ThinkPad-W520:~$ more /etc/bumblebee/xorg.conf.nvidia 
Section "ServerLayout"
    Identifier  "Layout0"
    Option      "AutoAddDevices" "false"
    Option      "AutoAddGPU" "false" EndSection

Section "Device"
    Identifier  "DiscreteNvidia"
    Driver      "nvidia"
    VendorName  "NVIDIA Corporation"

#   If the X server does not automatically detect your VGA device,
#   you can manually set it here.
#   To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
#   as you see in the commented example.
#   This Setting may be needed in some platforms with more than one
#   nvidia card, which may confuse the proprietary driver (e.g.,
#   trying to take ownership of the wrong device). Also needed on Ubuntu 13.04.
    BusID "PCI:01:00:0"

#   Setting ProbeAllGpus to false prevents the new proprietary driver
#   instance spawned to try to control the integrated graphics card,
#   which is already being managed outside bumblebee.
#   This option doesn't hurt and it is required on platforms running
#   more than one nvidia graphics card with the proprietary driver.
#   (E.g. Macbook Pro pre-2010 with nVidia 9400M + 9600M GT).
#   If this option is not set, the new Xorg may blacken the screen and
#   render it unusable (unless you have some way to run killall Xorg).
    Option "ProbeAllGpus" "false"

    Option "NoLogo" "true"
    Option "UseEDID" "false"
    Option "UseDisplayDevice" "none"

新手司机:

lucas@lucas-ThinkPad-W520:~$ more /etc/bumblebee/xorg.conf.nouveau  Section "ServerLayout"
    Identifier  "Layout0"
    Option      "AutoAddDevices" "false"
    Option      "AutoAddGPU" "false" EndSection

Section "Device"
    Identifier  "DiscreteNvidia"
    Driver      "nouveau"

#   If the X server does not automatically detect your VGA device,
#   you can manually set it here.
#   To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
#   as you see in the commented example.
#   This Setting is needed on Ubuntu 13.04.
#   BusID "PCI:01:00:0"

大黄蜂配置:

lucas@lucas-ThinkPad-W520:~$ more /etc/bumblebee/bumblebee.conf 
# Configuration file for Bumblebee. Values should **not** be put between quotes

## Server options. Any change made in this section will need a server restart
# to take effect. [bumblebeed]
# The secondary Xorg server DISPLAY number VirtualDisplay=:8
# Should the unused Xorg server be kept running? Set this to true if waiting
# for X to be ready is too long and don't need power management at all. KeepUnusedXServer=false
# The name of the Bumbleblee server group name (GID name) ServerGroup=bumblebee
# Card power state at exit. Set to false if the card shoud be ON when Bumblebee
# server exits. TurnCardOffAtExit=false
# The default behavior of '-f' option on optirun. If set to "true", '-f' will
# be ignored. NoEcoModeOverride=false
# The Driver used by Bumblebee server. If this value is not set (or empty),
# auto-detection is performed. The available drivers are nvidia and nouveau
# (See also the driver-specific sections below) Driver=
# Directory with a dummy config file to pass as a -configdir to secondary X XorgConfDir=/etc/bumblebee/xorg.conf.d

## Client options. Will take effect on the next optirun executed. [optirun]
# Acceleration/ rendering bridge, possible values are auto, virtualgl and
# primus. Bridge=auto
# The method used for VirtualGL to transport frames between X servers.
# Possible values are proxy, jpeg, rgb, xv and yuv. VGLTransport=proxy
# List of paths which are searched for the primus libGL.so.1 when using
# the primus bridge PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primu s
# Should the program run under optirun even if Bumblebee server or nvidia card
# is not available? AllowFallbackToIGC=false


# Driver-specific settings are grouped under [driver-NAME]. The sections are
# parsed if the Driver setting in [bumblebeed] is set to NAME (or if auto-
# detection resolves to NAME).
# PMMethod: method to use for saving power by disabling the nvidia card, valid
# values are: auto - automatically detect which PM method to use
#         bbswitch - new in BB 3, recommended if available
#       switcheroo - vga_switcheroo method, use at your own risk
#             none - disable PM completely
# https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods

## Section with nvidia driver specific options, only parsed if Driver=nvidia [driver-nvidia]
# Module name to load, defaults to Driver if empty or unset KernelDriver=nvidia-current PMMethod=auto
# colon-separated path to the nvidia libraries LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

## Section with nouveau driver specific options, only parsed if Driver=nouveau [driver-nouveau] KernelDriver=nouveau PMMethod=auto XorgConfFile=/etc/bumblebee/xorg.conf.nouveau

谢谢。


我不确定这是否有帮助,但是总的来说,我发现全新安装的开箱即用配置的驱动程序通常是最好的驱动程序,而切换驱动程序总是导致更多问题,而不是解决的问题。尝试在连接第二台显示器的情况下启动实时CD。如果登录后未重新配置, apt-get install arandar则打开arander并对其进行配置。如果可行,只需复制配置并安装相同的驱动程序。
virtualxtc

顺便说一句,我想你arandr不是arandar
故意的-iX3

Answers:


3

首先,我停止尝试使用12.04.3或12.04.4 LTS,而改用13.10。我相信LTS版本实际上无法跟上不断变化的图形情况-我学到了很难的方法。

以下是我采取的一般步骤:

1) Install latest intel drivers, hope that intel-virtual-output, which is the integrated version of screenclone. If it's not packaged, compile that stuff from source.
2) In your xorg.conf.nvidia ensure the option preventing external screens is disabled.
3) Xrandr as usual :)

此资源很有帮助:

http://www.unixreich.com/blog/2013/linux-nvidia-optimus-on-thinkpad-w520w530-with-external-monitor-finally-solved/

我还针对Ubuntu 14.04创建了有关此问题的博客文章:

http://blog.lukeswart.net/wordpress/

后者在从源代码编译驱动程序时也应具有帮助初学者的信息。

PS:作为Linux新手,此过程非常耗时,我只能希望这篇文章对某人有所帮助。对于运行Linux的Optimus笔记本电脑(其显示端口与Nvidia芯片进行硬连接)设置外部显示器对于新Linux用户来说是一个非常令人沮丧的过程。

作为需要在我的工作中使用Linux的用户,整个保护专有Optimus驱动程序的情况使整个技术社区感到尴尬。


您是否知道是否有其他地方可以找到您建议的链接中包含的信息?该网站现在似乎已经死了
maguirre 2014年

它可以在我的浏览器(firefox)中使用。或者只是谷歌:“ ThinkPad W520 / W530带有外部显示器的Linux NVidia Optimus –终于解决了,NVidia Optimus如何在Thinkpad W520 / W530笔记本电脑上工作”
modulitos 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.