您尚未登录。

#1 2022-11-14 16:55:07

huangsijun17
会员
注册时间: 2022-10-16
帖子: 13

适用于掌机、平板等的双系统/多系统快捷切换方法

众所周知,GRUB2在内的众多UEFI引导加载器都不支持触摸屏、摇杆等设备,唯一支持触摸屏的WBM却又不能引导非Windows。而且,大多数该类设备的BIOS也不支持触摸屏、摇杆等进行操作。这也就意味着,此类设备想要切换系统,大多需要外接USB键盘+USB HUB。相较于此类便携设备,为了切系统的外设比设备本体还要大,颇为不便。
由于X86掌机的流行,我也为此所困,故特此制作了在系统内的快捷“重启换系统”。

重启换系统分Linux和Windows侧,核心代码如下:

Win2Lin:
bcdedit /set {fwbootmgr} DEFAULT {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} | shutdown -r -t 0
Lin2Win:
efibootmgr | grep "Windows Boot Manager" | tail -n 1 | head -c 8 | tail -c 4 | xargs sudo efibootmgr -n ; sleep 1s ; sudo systemctl reboot

注意事项:
1. Win2Lin中的{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}需要替换为您Linux系统启动器的固件应用程序标识符。标识符需要使用管理员权限运行命令bcdedit /enum firmware获取:

……

固件应用程序(101fffff)
-------------------------------
标识符                  {00001111-2222-3333-cccc-ddddeeeeffff}
device                  partition=X:
path                    \EFI\Boot\Bootx64.efi
description             Linux

……

2. Lin2Win只会自动启动第一个名为“Windows Boot Manager”的固件应用程序。

为便于使用,我也写了.bat&.sh的安装脚本,Win2Lin的快捷方式中的标识符同样需要修改。
https://huangsijun17.lanzouw.com/ipY9W0fwe3fa


倒腾HoloISO中。

Linux的发行版Arch-Linux的衍生发行版SteamOS的提取版steamos-jupiter-mesa等的衍生发行版HoloISO

离线

页脚