GRUB在安全启动时无法加载自定义的字体

这个一样的情况,安装了主题以后其他都正常,就字体非常小。关了安全启动以后win11进不了。问ai告诉我要自制grub镜像或给字体签名…

可以用grub-mkfont -v --output=主题字体.pf2 --size=25(你想要的大小) /usr/share/fonts/truetype/wqy/wqy-microhei.ttc(原字体文件)
替换主题指定的字体。然后update-grub,重启即可

我之前在默认界面尝试过,就用系统的unifont制作字体,发现没用,后来才考虑主题是否能解决,结果还是没用

可是界面里没有中文啊

说明文字是中文的。如果用英文也可以。不过我个人喜欢用中文的。

呃,换了grub2-theme,还是字小

可以用我说的方法调整

能详细讲一下吗 :folded_hands:

找到主题文件里面的配置文件,在里面找到font=XXX.pf2字段,记住位置。
然后用grub-mkfont命令生成新的字体,并替换原来的。然后update-grub更新配置,重启即可。

具体命令和操作方法,看之前发给你的链接。

是/boot/grub/themes/…/theme.txt吗,那里面好像没有font=XXX.pf2,只有font = "Roboto Regular 52"这种

是一样的。那个名称是grub-mkfont生成的时候会显示的名字。

之前我遇到过系统默认的pf2地址会覆盖主题配置,导致修改后的主题配置文件不生效的问题。

你可能理解错我的意思了,就是我之前没有安装任何主题时,用grub-mkfont制作过一个unifont字体,但是没用。刚刚我又试了一下dejavu-sans-mono(禁用了所有主题),也不行

然后其实我这个不是debian(呃呃),是kubuntu26.04

说句题外话,个人感觉最简单的方法是用 systemd-boot 换掉 GRUB。

systemd-boot 的配置非常简单,在菜单界面,按 r 键就可以调整分辨率。如果不需要菜单,还可以按 t 键,把等待时间设为 0,直接隐藏菜单。

安装 systemd-boot 也很简单。直接安装 systemd-boot 这个软件包即可,然后系统就会自动安装 systemd-boot 启动器,并把它设为默认启动管理器。

其他配置技巧可参考本文:

ubuntu默认的字体文件是/boot/grub/fonts/UbuntuMono16.pf2
只要把你的字体文件替换UbuntuMono16.pf2,然后update-grub,即可