如何在所有Ubuntu版本中修复Plymouth(启动画面)!

如何在Ubuntu安装NVIDIA专有驱动程序后修复黑屏或损坏的Plymouth(启动画面)?这通常发生在所有Ubuntu版本中。无论我安装哪个版本的NVIDIA驱动程序,问题都会一直存在。

在我的情况下,GeForce 7300 LE工作正常,但我不得不将颜色深度降低到16位 - 即1280x1024x16而不是1280x1024x24,因为后者给了普利茅斯屏幕一个较差的分辨率。 - gdesilva
太棒了。它与英特尔完美兼容。谢谢。 - user284336
可能是启用Nvidia驱动程序会破坏启动画面的重复问题。 - Waldir Leoncio
不,您提供的主题中包含过时的信息或不需要安装的软件包。 - Nolt
3个回答

这里有一个解决方案,用于解决在安装了nVidia专有驱动程序后,在Ubuntu中没有plymouth(启动画面)的问题。无论你使用哪个版本的Ubuntu,它都应该能够正常工作。
打开终端并输入:
sudo apt-get install v86d

那么

sudo -H gedit /etc/default/grub

找到这行
#GRUB_GFXMODE=640x480

并更换为这个(当然选择您的分辨率
GRUB_GFXMODE=1440x900
GRUB_GFXPAYLOAD_LINUX=keep

注意:您可以尝试 GRUB_GFXMODE=1440x900x24,但要小心指定颜色深度。您必须指定一个受支持的值。如果不起作用,则最好删除它。更多信息请参阅手册

还要注意:旧版Nvidia图形卡需要以<width>x<height>-<depth>格式(例如1920x1200-24,而不是1920x1200x24)指定GRUB_GFXMODE属性。

保存文件,并在终端中输入

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

它在所有的Ubuntu版本中都对我有效。 试一试吧 :)

这对于AMD显卡仍然有效吗? - João André
很遗憾,我没有AMD显卡,所以你需要自己测试。 - Nolt
已经测试过了,它可以正常工作 :) - João André
这个解决方案对我在Ubuntu GNOME 15.04上只有部分效果。我有一个1600x900的显示器,和一块Nvidia Geforce GT 620显卡。按照这里的步骤进行后,启动画面只会显示几秒钟,然后屏幕变黑,只有动画点显示,然后又变黑了。 - Alex Dueppen
你能添加一些解释或者提供你获取这个信息的链接吗? - Sam Brightman
@A. Dueppen 这也发生在我身上(Ubuntu 15.10)。你找到解决办法了吗? - janoChen
1@janoChen 这个解决方案仍然只部分有效,但我对此感到满意。我听说这是因为我的显卡性能较低,所以没有得到足够的驱动支持。 - Alex Dueppen
这对我来说很有效。Ubuntu Gnome 16.04 - renevillegasr
在Ubuntu Cinnamon 16.04.1上也适用于我,我只是使用了GRUB_GFXMODE=1440x900 GRUB_GFXPAYLOAD_LINUX=keep,并且执行了echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash sudo update-initramfs -u sudo update-grub。 - daniel
我应该说,通过这个解决方案,它也修复了我的显示器在负载期间进入节能模式/超出范围的问题。确实非常感谢 :) - daniel
我正在使用Ubuntu 16.04和Nvidia驱动程序375.39。这个步骤对我没有起作用。有人知道为什么吗? - Sun Bear
在Ubuntu GNOME 16.04.2上使用NVidia 381时出现问题,无法正常工作。 - Xiaodong Qi
这个解决方案在我的Ubuntu 18.04上有效,使用的是nvidia-driver-418驱动,1080ti显卡,分辨率为2560x1440。非常感谢。 - Maxim Egorushkin

如果上述解决方案不起作用,请检查/boot/grub/grub.cfg文件中是否使用了$vt_handoff。
在该文件中,搜索以“:”开头的行。
linux   /boot/vmlinuz ...

在引导菜单的适当部分(例如,如果您想为第一个grub菜单引导选项恢复闪屏界面,则是此行的第一次出现),确保此行以

结尾。
... quiet splash $vt_handoff

这是我的案例中的示例(注释行被第二行替换),将xxxx替换为引导分区的现有UUID:
#   linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=xxxx ro   nmi_watchdog=0
    linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=xxxx ro   quiet splash $vt_handoff

Nvidia专有驱动程序直到最近才开始支持KMS。KMS是plymouth(启动画面)所必需的。这是一个Nvidia的问题(而不是Ubuntu Canonical的问题)。我建议保持现状(它不会影响您的日常使用),等待Ubuntu软件源中的nvidia 364.12或更新版本。使用nvidia 364.12,plymouth可以正常工作。
如果您不耐烦,您可以使用以下方法:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-364

此答案适用于新的Ubuntu用户。 - john9983
由于某种原因,我一安装这个驱动程序就无法在Blender中使用GPU渲染(CUDA)。 - ByteHamster
尝试使用更新的驱动程序 nvidia-367 - john9983
1@ByteHamster 如果我没记错的话,你需要安装这个包 nvidia-cuda-dev 来使用CUDA。 - Michal Przybylowicz
我不确定,但我认为cuda包已经安装了。无论如何,后来我因为其他原因(没有Plymouth了)转换到了一个完全不同的发行版。不管怎样,还是谢谢你的建议! - ByteHamster