我正在尝试让 X 在具有 nvidia ion 芯片组的系统上启动,但无论我做什么,它都会失败。nvidia
该设备与 ubuntu Karmic 驱动程序配合使用,所以我不确定它为什么会失败。
(II) LoadModule: "nvidia"
(II) Loading /usr/lib/xorg/extra-modules/nvidia_drv.so
(II) Module nvidia: vendor="NVIDIA Corporation"
compiled for 4.0.2, module version = 1.0.0
Module class: X.Org Video Driver
(EE) NVIDIA: Failed to load the NVIDIA kernel module. Please check your
(EE) NVIDIA: system's kernel log for additional error messages.
(II) UnloadModule: "nvidia"
(II) Unloading /usr/lib/xorg/extra-modules/nvidia_drv.so
(EE) Failed to load module "nvidia" (module-specific error, 0)
(EE) No drivers available.
Fatal server error:
no screens found
dmesg
没有相关有用信息。
我已经安装了以下软件包:
# dpkg -l *nvidia* | grep ^ii
ii nvidia-173 173.14.22-0ubuntu11 NVIDIA binary Xorg driver, kernel module and VDPAU library
ii nvidia-173-modaliases 173.14.22-0ubuntu11 Modaliases for the NVIDIA binary X.Org driver
ii nvidia-180-modaliases 185.18.36-0ubuntu9 Transitional package for nvidia-185-modaliases
ii nvidia-185-kernel-source 195.36.24-0ubuntu1~10.04 Transitional package for nvidia-glx-185-kernel-source
ii nvidia-185-libvdpau 195.36.24-0ubuntu1~10.04 Transitional package for nvidia-185-libvdpau
ii nvidia-185-modaliases 195.36.24-0ubuntu1~10.04 Transitional package for nvidia-185-modaliases
ii nvidia-96 96.43.17-0ubuntu1 NVIDIA binary Xorg driver, kernel module and VDPAU library
ii nvidia-96-modaliases 96.43.17-0ubuntu1 Modaliases for the NVIDIA binary X.Org driver
ii nvidia-common 0.2.23 Find obsolete NVIDIA drivers
ii nvidia-current 195.36.24-0ubuntu1~10.04 NVIDIA binary Xorg driver, kernel module and VDPAU library
ii nvidia-current-modaliases 195.36.24-0ubuntu1~10.04 Modaliases for the NVIDIA binary X.Org driver
ii nvidia-glx-173 173.14.22-0ubuntu11 Transitional package for nvidia-glx-173
ii nvidia-glx-180 185.18.36-0ubuntu9 Transitional package for nvidia-glx-185
ii nvidia-glx-185 195.36.24-0ubuntu1~10.04 Transitional package for nvidia-glx-185
ii nvidia-glx-96 96.43.17-0ubuntu1 Transitional package for nvidia-glx-96
ii nvidia-settings 195.36.08-0ubuntu2 Tool of configuring the NVIDIA graphics driver
xinit /usr/bin/lxsession -session NO_WM -- /usr/bin/Xorg :0.0 -dpms -s 0 -v -allowMouseOpenFail -br
我正在用(该会话是自定义的,但其他会话也失败了。)启动 X。
这是我的 xorg.conf
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "nVidia Corporation"
BoardName "Unknown Board"
BusID "PCI:2:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
如果我使用 nvidia-xconfig,它会生成一个带有驱动程序的配置文件vesa
,这对于此盒子的用途来说是不可接受的。我不知道如何继续。
通过谷歌搜索,我发现建议添加一些 modprobe 黑名单,我添加了这些黑名单,但它们没有帮助。
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
lspci
据称,该设备02:00.0 VGA compatible controller: nVidia Corporation Device 0874 (rev b1)
直接加载模块失败:
# modprobe nvidia
FATAL: Module nvidia not found.
# modprobe nvidia-current
FATAL: Module nvidia_current not found.
dkms status
说我有它;
# dkms status
nvidia-96, 96.43.17: added
nvidia-current, 195.36.24, 2.6.32-32-generic, i686: installed
nvidia-173, 173.14.22: added
这是已加载的模块。
# lsmod
Module Size Used by
snd_hda_codec_nvhdmi 3840 1
snd_hda_codec_realtek 203376 1
binfmt_misc 6587 1
ppdev 5259 0
snd_hda_intel 22069 0
snd_hda_codec 74201 3 snd_hda_codec_nvhdmi,snd_hda_codec_realtek,snd_hda_intel
snd_hwdep 5412 1 snd_hda_codec
snd_pcm_oss 35308 0
snd_mixer_oss 13746 1 snd_pcm_oss
snd_pcm 70694 3 snd_hda_intel,snd_hda_codec,snd_pcm_oss
snd_seq_dummy 1338 0
snd_seq_oss 26722 0
snd_seq_midi 4557 0
snd_rawmidi 19056 1 snd_seq_midi
snd_seq_midi_event 6003 2 snd_seq_oss,snd_seq_midi
snd_seq 47263 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer 19098 2 snd_pcm,snd_seq
snd_seq_device 5700 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
video 17375 0
output 1871 1 video
snd 54244 12 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
lp 7028 0
psmouse 63677 0
serio_raw 3978 0
shpchp 28835 0
i2c_nforce2 5199 0
soundcore 6620 1 snd
snd_page_alloc 7076 2 snd_hda_intel,snd_pcm
parport 32635 2 ppdev,lp
usbhid 36110 0
hid 67288 1 usbhid
r8169 34140 0
mii 4381 1 r8169
ahci 32360 2
答案1
看起来 Xorg 无法加载内核 nvidia 驱动程序。您可以尝试手动加载它:
sudo modprobe nvidia-current
如果失败并出现错误消息,表明找不到模块,请确保您已nvidia-current
在以下位置列出该模块:
dkms status
否则,请在您的问题详细信息中包含lsmod
该命令的输出和/或输出modprobe
。
答案2
如果这是一台配备 Nvidia Optimus 的混合显卡笔记本电脑,您可能想尝试一下大黄蜂:
http://launchpad.net/~hybrid-graphics-linux
b)尝试使用 bumblebee 同时使用英特尔和 nvidia 卡:
sudo apt-get install git
# type password
git clone http://github.com/MrMEEE/bumblebee.git
cd bumblebee/
sudo ./install.sh
optirun glxgears
optirun glxspheres
检查速度并与不使用 optirun 的情况下的运行速度进行比较:
optirun glxgears
optirun glxspheres
# close window
glxgears
glxspheres
对于 WebGL 基准测试,请安装 google-chrome 或使用支持 WebGL 的浏览器,并可以尝试使用/不使用 optirun,并在邮件列表中报告 FPS 值:
optirun google-chrome http://webglsamples.googlecode.com/hg/aquarium/aquarium.html
# close window
google-chrome http://webglsamples.googlecode.com/hg/aquarium/aquarium.html
答案3
据我所知,nVidia ION 是一款使用 Optimus 的混合显卡(在笔记本电脑上)。nvidia 驱动程序和 nouveau 驱动程序都不支持 Optimus。
无论如何,如果您想使用该nvidia
驱动程序,请确保该nouveau
驱动程序已被卸载:
sudo rmmod nouveau
为了避免下次启动时加载,请将其列入黑名单:
echo blacklist nouveau | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
如果这没有帮助,请检查您的/var/log/kern.log
文件是否有任何有用的消息。
Ubuntu 在自动配置 X 服务器方面做得很好,通常不需要使用自己的 xorg.conf 文件。尝试删除或重命名该文件以让 Ubuntu 自动配置 X。
nvidia-current
使用 dkms 构建内核模块。为此,必须安装与正在运行的内核匹配的内核头文件。最新的linux-generic
软件包是版本 2.6.32-33 (2.6.32.33.39)。最新的内核头文件由软件包提供linux-headers-generic
。如果您不想升级内核,请至少安装当前的核心:
sudo apt-get install linux-headers-$(uname -r)
此后,nvidia-current 模块应该会自动构建。如果没有,请运行sudo dpkg-reconfigure nvidia-current
。
答案4
我无法让 nvidia 驱动程序运行,但 nouveau 驱动程序似乎表现得还不错。