在 GRUB 2 中制作“About PC”引导选项

在 GRUB 2 中制作“About PC”引导选项

我怎样才能在 GRUB 启动菜单中创建一个启动选项“关于 PC”,该选项显示类似运行最新版本 GRUB i386-pc MBR 的图像中的内容,所有内容都是最新的。
对图像进行了稍微编辑以更新内核(以前是 6.5.8-arch1-1,现在是最新版本)并删除主机名和用户名。

机器的 Neofetch 和 uname -a

编辑:我需要显示的只是一个包含 neofetch 和 uname -a 输出的简单文件(如果可能的话带有颜色)。

答案1

这取决于。您精通任何编程语言吗?

坦率地说,弄清楚诸如此类的事情安装的软件包总数你的 shell 的版本在 GRUB 中很难找到。由于内核尚未加载(GRUB 可以为您提供一个内核版本菜单供您选择),因此此时可能还没有决定要运行的操作系统名称和内核版本。

因此,最简单的方法可能是制作一个在每次启动时运行的脚本,收集您想要显示的信息,并将其呈现为 GRUB 启动图像。当您安装更新并重新启动时,信息可能会稍微过时,直到下次重新启动时更新启动图像。

或者如果您愿意,您可以将启动画面更新脚本挂接到最重要的更新程序上:例如,您可以通过将启动画面更新脚本放置/链接到/etc/kernel/install.d(或者/etc/kernel/postinst.d,如果它可以在 Arch 上使用的话),使新内核的后期安装也自动更新启动画面。

如果你确实希望在启动时从实际硬件中找出信息,你应该首先熟悉GRUB命令提示符,看看它的命令可以找出什么:该set命令可以提供一些基本信息,lsmmap会描述可用的RAM,vbeinfo应列出可用的显示模式(在 i386-pc MBR 上;在 UEFI 上,请使用videoinfo)。

lspci将提供可用于识别 GPU 和芯片组等系统组件的信息...但是您需要添加某种查找表来提供人类可读的描述,而不是主要的 ID 号和通用设备类别标识。

查询 DMI 信息可能会给您提供获得有意义的主板/系统型号描述的最佳机会...但我不确定 GRUB 是否有相应的命令/模块。

曾经有一个项目开发一个可启动的硬件检测工具HDT。其网页仍然可以通过 Wayback Machine 找到。它主要设计用于 SYSLINUX 及其变体,但也可能适用于 GRUB 引导。

相关内容