你是否好奇过?每次开机时屏幕上旋转的Logo动画,其实并非桌面壁纸,而是由Plymouth启动画面系统负责运行的——它在内核加载完成后、图形界面尚未启动之前,便接管了整个屏幕。如果你希望替换银河麒麟系统默认的开机动画,改为自己设计的品牌画面或自定义帧率,就必须直接与这个底层系统交互,命令行是唯一的操作途径,图形界面中无法完成。

简单来说,整个过程分为四个步骤:首先确认当前使用的主题并备份原始文件,避免操作失误;接着准备一套符合规范的PNG序列帧;然后将其部署到指定目录并编写描述文件;最后激活新主题、刷新GRUB和initramfs,完成测试后才能生效。每一步都存在潜在风险,尤其是备份环节,如果跳过,一旦新动画导致黑屏,将无法恢复。
确认当前Plymouth状态并备份原始主题
打开终端,输入以下命令查看当前使用的主题:sudo plymouth-set-default-theme -l。在输出的列表中,带有 * 号的那一行即为当前激活的主题,例如 ubuntukylin-logo 或 spinfinity。请务必记下这个名称,后续所有操作都将以此为基础。
备份步骤绝不可省略。执行命令:sudo cp -r /usr/share/plymouth/themes/ubuntukylin-logo /usr/share/plymouth/themes/ubuntukylin-logo-backup。请注意将 ubuntukylin-logo 替换为实际看到的主题名称。如果路径错误导致备份失败,新动画出现问题时将无法回退到原始状态。
准备并部署自定义PNG序列动画
银河麒麟系统中,最稳定的Plymouth自定义方式是利用PNG序列帧——无需修改脚本,兼容性最佳。首先创建一个新的主题目录:sudo mkdir -p /usr/share/plymouth/themes/my-logo。
将制作好的动画帧放入该目录。需注意以下硬性要求:分辨率为1920×1080,文件命名格式必须为 1.png、2.png……直至 73.png,共73帧,每帧文件大小控制在300KB以内。复制命令示例:sudo cp ~/my-frames/*.png /usr/share/plymouth/themes/my-logo/。
接着在目录里创建一个关键描述文件:sudo nano /usr/share/plymouth/themes/my-logo/my-logo.plymouth,填入以下内容:
[Plymouth Theme]
Name=My Custom Logo
Description=Custom boot animation with PNG sequence
ModuleName=script
保存并退出。如果跳过此步骤,系统将无法识别新定义的主题,动画自然无法加载。
启用新主题并强制刷新启动环境
现在来把新主题激活并推送到启动流程里。分五步走:
第一步:执行 sudo plymouth-set-default-theme my-logo,将自定义主题设为默认。
第二步:更新GRUB配置,确保 quiet splash 参数正确。首先执行 sudo sed -i 's/quiet splash/quiet splash/g' /etc/default/grub(该命令用于验证字符串一致性,若需修改请手动编辑),随后执行 sudo update-grub。
第三步:重建initramfs镜像,将动画资源打包到早期用户空间:sudo update-initramfs -u。该过程耗时较长,请耐心等待。
第四步:在不重启的情况下测试效果,查看首帧是否正常显示。运行命令:sudo plymouthd --debug && sudo plymouth --show-splash && sleep 3 && sudo plymouth --quit。如果屏幕正确显示第一帧画面,意味着资源加载成功,后续流程基本无风险。
第五步:执行完整重启进行验证:sudo reboot。重启时观察开机动画是否已替换为您设计的新序列。若一切正常,恭喜您,定制启动画面已成功生效。
