Nvidia 驱动程序和内核更新问题 (nomodeset)

Nvidia 驱动程序和内核更新问题 (nomodeset)

我遇到了一个问题,我安装了(Ubuntu 12.05)Nvidia CUDA 驱动程序 285.05.33,一切正常

但通过更新管理器更新内核后

uname -v 
**Linux zfmgpu 3.2.0-24-generic #38-Ubuntu SMP Tue May 1 16:18:50 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux**

我遇到的问题是,启动时我只看到损坏的图形。我尝试重新安装驱动程序(构建内核模块),效果不错,但是 -> 我只能启动新内核,并且光调制通过在 GRUB 菜单中设置即可完美启动"nomodeset"。如果没有这个,我会看到损坏的图形输出,并且无法启动。

我该怎么做才能纠正这个问题?我不是专业人士!我有点不知道我能做什么

有人可以解释一下为什么我需要这个"nomodeset",它以前也没有在 grub 菜单中吗...

加载的模块包括:

Module                  Size  Used by
vesafb                 13844  1 
snd_hda_codec_hdmi     32474  4 
ip6table_filter        12815  0 
ip6_tables             27864  1 ip6table_filter
iptable_filter         12810  0                                                                                                                       
ip_tables              27473  1 iptable_filter                                                                                                        
x_tables               29846  4 ip6table_filter,ip6_tables,iptable_filter,ip_tables                                                                   
snd_hda_codec_analog    97987  1 
rfcomm                 47604  0 
bnep                   18281  2 
nvidia              11936165  40 
bluetooth             180104  10 rfcomm,bnep
parport_pc             32866  0 
ppdev                  17113  0 
snd_hda_intel          33773  4 
snd_hda_codec         127706  3 snd_hda_codec_hdmi,snd_hda_codec_analog,snd_hda_intel
snd_seq_midi           13324  0 
snd_rawmidi            30748  1 snd_seq_midi
snd_hwdep              13668  1 snd_hda_codec
snd_pcm                97188  3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
nouveau               774571  0 
snd_seq_midi_event     14899  1 snd_seq_midi
snd_seq                61896  2 snd_seq_midi,snd_seq_midi_event
snd_timer              29990  2 snd_pcm,snd_seq
snd_seq_device         14540  3 snd_seq_midi,snd_rawmidi,snd_seq
ttm                    76949  1 nouveau
snd                    78855  18 snd_hda_codec_hdmi,snd_hda_codec_analog,snd_hda_intel,snd_hda_codec,snd_rawmidi,snd_hwdep,snd_pcm,snd_seq,snd_timer,snd_seq_device
drm_kms_helper         46978  1 nouveau
drm                   242038  3 nouveau,ttm,drm_kms_helper
soundcore              15091  1 snd
i2c_algo_bit           13423  1 nouveau
i7core_edac            28102  0 
snd_page_alloc         18529  2 snd_hda_intel,snd_pcm
mxm_wmi                12979  1 nouveau
edac_core              53746  1 i7core_edac
video                  19596  1 nouveau
asus_atk0110           18078  0 
mac_hid                13253  0 
wmi                    19256  1 mxm_wmi
lp                     17799  0 
parport                46562  3 parport_pc,ppdev,lp
firewire_ohci          41000  0 
firewire_core          63558  1 firewire_ohci
usbhid                 47199  0 
crc_itu_t              12707  1 firewire_core
r8169                  62099  0 
hid                    99559  1 usbhid

也许这对某些人有帮助!什么是 nouveau?

答案1

Nouveau 试图替换 NVIDIA 模糊驱动程序并将其放入内核。Nomodeset 会告诉内核不要尝试设置屏幕模式。Nouveau 必须这样做。但是,我使用 NVIDIA 690 的经验是,nouveau 开始对我的卡感到恐慌,启动系统挂起。对我来说,这表明 nouveau 还不成熟,因为 690 已经存在一段时间了。

关于驱动程序:nouveau 是一个内核组件,您无法通过“附加驱动程序/受限驱动程序”停用它,因为这些驱动程序是您用于 X windows 的驱动程序。

我所做的就是将 NOMODESET 永久添加到 grub 的内核参数列表中。系统启动时内核会检查此设置并做出相应反应。

对于 Ubuntu 12.04,设置存储在 /etc/default/grub 中。您可以将其添加到标题为 GRUB_CMDLINE_LINUX_DEFAULT 的行中。如果该行显示:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

你可以将其更改为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

在这一行中添加 NOMODESET 后,您应该运行sudo update-grub以允许 grub2 在下次启动时看到它。

答案2

新派是 Nvidia 显卡的开源驱动程序。

模式设置告诉内核不要启动它计划在启动过程早期使用的任何图形内核驱动程序。

你说你重新安装了驱动程序,我认为你指的是 Nvidia 驱动程序。

我猜,不用具体说明模式设置,一个内核模块设置为运行您的视频,然后当您启动 X 时加载另一个驱动程序,它们争夺谁来运行您的图形硬件。

如果您直接下载了驱动程序,最好将其删除并从 Ubuntu 受限存储库安装 Nvidia 驱动程序(如果可能)。

相关内容