I have a cluster of machines running on Ubuntu 10.04 LTS that are equipped with two graphic cards, a NVidia GeForce GT 240 (secondary) and a Matrox one (primary). Because it just seems to ignore the Matrox graphics card, nvidia-xconfig does not deem necessary to add a BusID field in my /etc/X11/XF86Config file, and I need to add it manually. Given that the BusID field changes from machine to machine, I'd be happy that nvidia-xconfig does the job automatically.

Is that possible to force nvidia-xconfig to specify the proper BusID in that particular case? Note that using the option --enable-all-gpus does not work!

  • Could you please provide your xorg.conf? This would really help me configuring my two cards.
    – Nowaker
    Mar 9 '11 at 22:20
  • @Damian: here you go!
    – Greg
    Mar 11 '11 at 9:16
  • Looks like that's an answer you've posted in your question? Edit it out and pop it as an answer then accept it!
    – Pricey
    Jul 14 '11 at 15:24

What I came up with as a fix is to use nvidia-xconfig --query-gpu-info to obtain the BusID, and then feed it again to nvidia-xconfig to update the XF86Config file. Here is the script line that does that:

nvidia-xconfig --connected-monitor="CRT" --busid=`nvidia-xconfig --query-gpu-info | grep BusID | sed 's/PCI BusID : PCI:/PCI:/'`

Finally, my XF86Config file looks like this:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"

Section "Files"

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Option         "DPMS"

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 240"
    BusID          "  PCI:5:0:0"

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "ConnectedMonitor" "CRT"
    SubSection     "Display"
        Depth       24
  • If your Nvidia card is connected via the DVI port which is more typical since the VGA should be connected to the motherboard's VGA port in order to see boot messages, then you need something like nvidia-xconfig --connected-monitor="DFP" --busid="$(nvidia-xconfig --query-gpu-info | grep BusID | sed 's/PCI BusID : PCI:/PCI:/')" instead.
    – hendry
    Jul 26 '12 at 9:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.