要让Ubuntu显示内核启动日志,需同时删除/etc/default/grub中的quiet splash和/etc/grub.d/10_linux中的gfxmode $linux_gfx_mode行,并执行sudo update-grub;仅改前者无效,因后者强制启用图形模式屏蔽文本输出。

Ubuntu默认不显示开机自检进度图(即内核启动日志),而是用紫色背景+进度条掩盖真实输出。要让它像Debian那样逐行打印 dmesg 级别的启动信息,关键不是“加图”,而是**关掉图形遮罩、暴露文本流**——这本质上是禁用 GRUB 的图形模式和内核静默参数。
为什么删掉 quiet splash 还是黑屏或紫屏?
常见错误是只改了 /etc/default/grub 里的 GRUB_CMDLINE_LINUX_DEFAULT,却忽略了 GRUB 自身的图形模式控制逻辑。Ubuntu 在生成启动项时会自动插入 gfxmode $linux_gfx_mode,它强制启用 framebuffer 图形输出,把内核文本日志直接吞掉。
-
quiet:让内核不打印启动消息 -
splash:加载 Plymouth 启动画面(覆盖终端) -
gfxmode(在/etc/grub.d/10_linux中):强制切换到图形分辨率,屏蔽文本模式
必须同时修改两个文件才能生效
只动 /etc/default/grub 不够,/etc/grub.d/10_linux 是实际生成菜单项的模板,它会在每个 linux 行后面追加 gfxmode。不删它,update-grub 后依然无效。
- 编辑
/etc/default/grub,把GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"改成空值或删除整行 - 编辑
/etc/grub.d/10_linux,找到含gfxmode $linux_gfx_mode的段落(通常在if ! ${recovery} ; then块里),整行删掉 - 运行
sudo update-grub,重启后就能看到滚动的内核初始化日志(如Starting kernel...、usb 1-1: new high-speed USB device...)
注意:这不是“进度图”,而是原始文本日志
Ubuntu 没有类似 Windows 的可视化启动进度条。所谓“详细开机信息”就是传统 Linux 的串口式文本输出,每行代表一个驱动加载、设备探测或服务启动事件。如果你真需要图形化进度(比如带百分比的 bar),那得自己写 Plymouth 插件——但几乎没人这么做,因为既难维护又无实际调试价值。真正有用的,是能看懂 Failed to start XXX 或 Timeout waiting for device /dev/sda1 这类报错。


















