启用 Nvidia 驱动程序会导致启动画面混乱

启用 Nvidia 驱动程序会导致启动画面混乱

当您从 Live CD 启动时,或者在安装 Ubuntu 后进行第一次启动时,启动画面看起来很棒。但是,只要您启用使用 apt-get 安装的 nvidia-current 驱动程序,启动画面就会变得非常混乱。

我说的疯狂是指分辨率非常低,字体(我认为)非常奇怪,而且一切看起来都像是坏了一样。

这在 10.04 中发生过,现在在 10.10 中又发生了。

启用 nvidia 驱动程序后如何修复启动画面?

答案1

这很简单。首先:

sudo apt-get install v86d hwinfo
sudo hwinfo --framebuffer

这将显示您支持的分辨率。做记录

然后:

gksudo gedit /etc/default/grub

搜索 - GRUB_GFXMODE=

在下面你需要输入: GRUB_GFXPAYLOAD_LINUX=1024x768 <- 你的决心在这里

保存文件然后:

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-grub2
sudo update-initramfs -u

答案2

上述解决方案可能不适合您。例如,在我的情况下,hwinfo 没有显示支持的分辨率。但是,您可以直接从 grub 获取此信息。

C进入 grub 控制台,然后输入insmod video_allvideoinfo获取支持的分辨率。如果您的原始分辨率受支持,请使用它。也可以直接使用它(例如 1680x1050x32,因此包括颜色深度)。按ESC键

当您拥有支持的分辨率时,编辑 /etc/default/grub 和文件以包含以下两行:

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1680x1050x32
GRUB_GFXPAYLOAD_LINUX=keep

现在运行以下几行以使启动画面更早显示,并实际将更改提交给 grub。

echo "FRAMEBUFFER=y" | sudo tee -a /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u -k all
sudo update-grub

希望这可以帮助。

答案3

这是一个修复此问题的简单脚本:http://www.webupd8.org/2010/10/script-to-fix-ubuntu-plymouth-for.html

我不知道这是否也会改变你的 alt+F2 问题


我认为问题在于,Nvidia GPU 需要专有驱动程序,而这些驱动程序无法内置到内核中,因此它们在启动阶段很晚才加载。所以如果我没记错的话,这个脚本会让你的电脑加载一个通用的 vesa 驱动程序来显示启动画面。这实际上会让你的电脑启动时间更长(但我不知道我们说的是几秒还是几毫秒)。

我个人不会为了视觉效果而改变系统的核心部分,但只要它能正常工作,那它就很好了。

答案4

上述修复对我不起作用,它们还不够彻底。我已经用 13.04 测试过,但作者在他的博客上将其用于较低的 ubuntu 版本。来自此博客的原始信息:http://jechem.blogspot.be/2011/04/fix-plymouth-splash-screen-in-ubuntu-on.html

首先通过运行以下命令安装 hwinfo:

sudo apt-get install v86d hwinfo

安装后运行以下命令并记下最高分辨率:

sudo hwinfo --framebuffer

对我来说这是模式 0x0361:1280x800 (+5120),24 位,接下来编辑以下文件:

gksu gedit /etc/default/grub

这将打开 GRUB 配置文件,我们现在查找GRUB_CMDLINE_LINUX_DEFAULT="安静的启动"并用以下内容进行更改,用我的更改你的分辨率并添加颜色深度(对我来说 24 可能是 16 或 32)。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1280x800-24,mtrr=3,scroll=ywrap"

然后找到以下行(如果需要,取消注释)并再次更改分辨率,请注意不包括颜色深度:

GRUB_GFXMODE=1280x800

保存并退出,接下来编辑以下文件:

gksu gedit /etc/initramfs-tools/modules

滚动到文件末尾并添加以下行,再次像之前一样添加分辨率和色彩深度:

uvesafb mode_option=1280x800-24 mtrr=3 scroll=ywrap

然后在终端中输入以下命令,然后重新启动:

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-grub
sudo update-initramfs -u

对我来说,这解决了这个问题,我尝试了所有其他建议和脚本,但都没有用,只有这个有用,祝你好运!

相关内容