|

楼主 |
发表于 2024-5-12 07:18
|
显示全部楼层
我只对windows下面的批处理熟悉点,对于linux下面的脚本不太熟悉。
windows下面写脚本和linux下面写脚本完全不同。
如果是BIOS启动,windows下面有bootice、grubinst这样子的写引导神器,linux下面需要用bootlace这样的写引导工具。
bootlace安装 GRLDR 到硬盘 MBR:
bootlace --force-backup-mbr --boot-prevmbr-first --time-out=3 --hot-key=0x3920 --mbr-disable-floppy 0x80
这个命令会将 GRLDR 安装到硬盘的 MBR 中,同时备份原始的 MBR 到第二个扇区。--boot-prevmbr-first 表示默认启动原来的 MBR(例如 Windows XP),--time-out=3 设置等待时间为 3 秒,--hot-key=0x3920 设置热键为空格键,--mbr-disable-floppy 表示不搜索软盘上的 GRLDR。
如果是UEFI启动,windows下面可以用bootice向NVROM中添加UEFI引导序列,而linux下面似乎只有用efibootmanager,这个命令行工具似乎不太好用于脚本,需要遍历硬盘分区号,我对此没什么经验。我也不清楚efibootmanager需要什么依赖文件。
以下是一些基本的 efibootmgr 命令示例:
查看当前的启动顺序:sudo efibootmgr
添加一个新的启动项:sudo efibootmgr --create --disk /dev/sda --part 1 --label "MyOS" --loader "\EFI\MyOS\grubx64.efi"
删除一个启动项:sudo efibootmgr --delete 0001
修改启动项的顺序:sudo efibootmgr --bootorder 0001,0002,0003
sda,sdb,sdc......这样子的硬盘号有很多,我还不知道用什么好的办法遍历并与之对应。我没有linux下面脚本编写的经验。
最主要是缺乏兴趣。我是个windows用户,windows是我的主系统,linux只是我的爱好,所以我更加倾向于在windows下面写安装工具。
其实我也感觉linux下面的veket安装工具非常不好用,一个安装工具似乎要用5-6分钟才能安装完毕,实际上只要几十秒就行了,因为veket/puppy只需要搞好引导就能轻松启动。
安装工具耗时过长的主要原因好像是在于遍历iso耗费时间。
|
|