可通过五种方法调整uos双系统grub启动顺序:一、重命名/etc/grub.d/30_os-prober为08_os-prober并更新配置;二、启用os-prober探测并刷新grub;三、用grub_default指定完整menuentry名称设默认项;四、在uefi中将uos磁盘设为第一启动设备;五、用grub-customizer图形化拖拽重排菜单。

如果您在统信UOS系统中安装了多个操作系统(如Windows与UOS共存),但开机时GRUB菜单未按预期顺序显示启动项,或默认启动项不符合使用习惯,则需调整多系统引导菜单的启动顺序。以下是符合UOS GRUB2机制的多种修改方法:
一、重排/etc/grub.d/脚本执行优先级以控制菜单顺序
该方法通过调整生成启动项的脚本文件名前缀数字,改变其在grub-mkconfig执行过程中的解析顺序,从而决定各系统条目在GRUB菜单中的排列位置。数字越小,对应条目越靠前显示。
1、确认当前os-prober脚本名称及位置:sudo ls -l /etc/grub.d/ | grep os-prober
2、将30_os-prober重命名为08_os-prober:sudo mv /etc/grub.d/30_os-prober /etc/grub.d/08_os-prober
3、确保该脚本具有可执行权限:sudo chmod +x /etc/grub.d/08_os-prober
4、运行更新命令生成新配置:sudo grub-mkconfig -o /boot/grub/grub.cfg
二、启用并强制刷新os-prober探测结果
该方法确保GRUB在生成菜单时主动扫描所有已安装的操作系统,并将探测到的Windows Boot Manager等条目纳入菜单,避免因探测失败导致条目缺失或顺序错乱。
1、安装os-prober工具(如未安装):sudo apt install os-prober
2、编辑主配置文件:sudo vim /etc/default/grub
3、添加或修改以下两行:GRUB_DISABLE_OS_PROBER=false与GRUB_ENABLE_BLSCFG=false
4、保存退出后执行探测与刷新:sudo os-prober && sudo grub-mkconfig -o /boot/grub/grub.cfg
三、通过GRUB_DEFAULT指定精确启动项名称
该方法绕过索引编号依赖,直接以menuentry完整名称作为默认启动目标,避免因内核更新、条目增删导致索引偏移而失效,适用于对稳定性要求较高的双系统环境。
1、查看当前所有启动项名称及对应行号:grep "menuentry" /boot/grub/grub.cfg | cat -n
2、识别目标项全称,例如:menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)'
3、编辑配置文件:sudo vim /etc/default/grub
4、将GRUB_DEFAULT行替换为该全称,格式为:GRUB_DEFAULT="Windows Boot Manager (on /dev/nvme0n1p1)"
5、执行更新命令:sudo grub-mkconfig -o /boot/grub/grub.cfg
四、在UEFI固件中调整硬盘启动优先级
该方法不修改GRUB配置,而是通过BIOS/UEFI设置将包含UOS引导分区的磁盘设为第一启动设备,使GRUB获得控制权;再配合GRUB内部排序,实现最终可见菜单顺序可控。
1、重启系统,在启动过程中反复按F2/F10/DEL键进入UEFI设置界面
2、导航至Boot或Startup选项卡,查找“Boot Order”或“Boot Priority”列表
3、将标有“UEFI: [硬盘型号]”或“统信UOS”的启动项拖拽至顶部
4、保存设置并退出(通常为F10),系统自动重启
五、使用grub-customizer图形化拖拽重排菜单项
该方法提供可视化界面,允许用户直接拖动启动项调整顺序,无需记忆索引或编辑脚本,适合不熟悉命令行操作的用户进行安全、直观的菜单管理。
1、安装图形工具:sudo apt install grub-customizer
2、以管理员权限启动应用:sudo grub-customizer
3、在左侧列表中选中某启动项,按住鼠标左键拖拽至目标位置
4、点击右上角“保存”按钮,工具将自动执行grub-mkconfig更新配置










