![普利茅斯为何起步这么晚?](https://linux22.com/image/1076306/%E6%99%AE%E5%88%A9%E8%8C%85%E6%96%AF%E4%B8%BA%E4%BD%95%E8%B5%B7%E6%AD%A5%E8%BF%99%E4%B9%88%E6%99%9A%EF%BC%9F.png)
看来从 11.04 开始,Plymouth 在启动过程中启动得非常晚。有时我只有一瞬间的时间看到它,然后它就会转换到登录屏幕。11.10 也是如此。
与 10.04 和 10.10 相比,Plymouth 仅在 Grub 启动后几秒钟左右启动,并且在整个启动过程中非常明显。
有什么办法可以让 Plymouth 更早运行吗?我在 3 台不同的机器上都遇到过这种情况,其中 2 台机器从 10.04 版开始就一直在运行 Ubuntu。所以这不仅仅是我的笔记本硬件造成的。
*附言一下,启动过程是现代 Linux 最丑陋的部分之一。Ubuntu 也不例外。经过近十年(我忘了,但 bootsplash 是第一个吗?),这个问题仍然只是部分解决。关机时仍会看到几秒钟丑陋的文本。在几次情况下,退出会话时也会看到相同的丑陋文本。它从来都不像你希望的那样顺畅。
Splash 主题很棒,别误会我的意思。只是过渡效果有点不协调,你只能瞥见下面的内容。我已经习惯了,但对于那些刚接触 Ubuntu 并且来自 Windows 的人来说。这很令人反感。*请原谅我的抱怨。:)
答案1
内核通过以下方式很好地支持现代显卡内核模式设置- 这是内核在启动序列早期设置显示分辨率的能力,以允许 plymouth 正确显示。
但是,有些显卡与 KMS 不兼容 - 或者 KMS 本身不能直接识别显卡。
在这种情况下,你可以强制普利茅斯使用帧缓冲区- 直接访问图形视频内存(帧)的旧技术
帧缓冲区(framebuffer)这个词的意思是视频内存中包含当前视频帧的一部分,而Linux帧缓冲区(framebuffer)的意思是“Linux内核下对帧缓冲区的访问方法”,而不依赖于系统特定的库,例如SVGALib或其他用户空间软件。(维基百科)
在帧缓冲区中运行普利茅斯
在终端中复制并粘贴以下内容:
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u