文章目录
- Grub2 引导 WIM / Slax Linux (BIOS & UEFI)
-
- 安装Grub2到U盘 / 硬盘
-
- 1. 准备分区格式
- 2.安装Grub2
- 3.复制Grub2 配置文件和主题
- 4. 目录结构
- 5. 测试引导
- WIM引导说明
-
- 1. Legacy BIOS模式下引导大致原理
- 2. 如何自定义bootmgr的BCD文件位置
- 3.如何修改BCD文件配置
- 4. UEFI引导大致原理
- 配置文件下载
- 参考
Grub2 引导 WIM / Slax Linux (BIOS & UEFI)
安装Grub2到U盘 / 硬盘
1. 准备分区格式
- 主分区1(FAT32) (UEFI引导需要)
- 主分区2(NTFS)
2.安装Grub2
sudo -s
# 安装依赖库
apt install grub2-common grub-pc grub-efi-amd64
# 挂载要安装的硬盘或者U盘,根据实际的设备修改(以下类似)
mount /dev/sda1 /mnt
grub-install --target=i386-pc --boot-directory=/mnt/boot /dev/sda
grub-install --target=x86_64-efi --efi-directory=/mnt --boot-directory=/mnt/boot --removable
结果如下
3.复制Grub2 配置文件和主题
以下主题是从该项目中生成
https://github.com/vinceliuice/grub2-themes
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#### BEGIN /etc/grub.d/00_header ###set default="0"if [ x"${feature_menuentry_id}" = xy ]; thenmenuentry_id_option="--id"
elsemenuentry_id_option=""
fi
export menuentry_id_optionfunction load_video {if [ x$feature_all_video_module = xy ]; theninsmod all_videoelseinsmod efi_gopinsmod efi_ugainsmod ieee1275_fbinsmod vbeinsmod vgainsmod video_bochsinsmod video_cirrusfi
}font=unicode
if loadfont $font ; thenset gfxmode=1024x768x32,1024x768x24,1024x768x16,1024x768,autoset gfxpayload=keepload_videoinsmod gfxtermterminal_output gfxterm
fi
insmod part_msdos
insmod ntfsinsmod gfxmenu
loadfont $prefix/themes/Tela/unifont-regular-16.pf2
insmod jpeg
insmod png
set theme=$prefix/themes/Tela/theme.txt
export theme
set timeout=15### BEGIN /etc/grub.d/05_debian_theme ###
# set menu_color_normal=white/black
# set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###menuentry "微PE X64" --class windows {if [ x$grub_platform == xpc ] ; theninsmod ntldrif search --file --set /WEPE/WEPE64.WIM ; thenntldr /WEPE/WEPEMGRfielif [ x$grub_platform == xefi ] ; thenif search --file --set /WEPE/WEPE64.WIM ; thenchainloader /WEPE/bootmgfw.efififi
}# 从Slax光盘复制slax文件夹到硬盘/U盘即可
# 虚拟机下硬盘类型选择为IDE模式,否则slax可能无法引导
menuentry "Slax Linux" --class debian {search --file --set /slax/boot/vmlinuzlinux /slax/boot/vmlinuz vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 slax.flags=toraminitrd /slax/boot/initrfs.img
}menuentry '引导本地硬盘Window' --class cancel {if [ 'pc' == $grub_platform ] ; thenif search --file --hint-bios=hd1,msdos1 --set /bootmgr ; thenchainloader +1elif search --file --hint-bios=hd1,msdos1 --set /ntldr ; thenchainloader +1fielif [ 'efi' == $grub_platform ] ; thenif search --file --hint-efi=hd1,msdos1 --set /EFI/Microsoft/Boot/bootmgfw.efi ; thenchainloader /EFI/Microsoft/Boot/bootmgfw.efififi
}menuentry '关闭计算机' --class shutdown {halt
}menuentry '重启计算机' --class restart {reboot
}
4. 目录结构
5. 测试引导
WIM引导说明
1. Legacy BIOS模式下引导大致原理
2. 如何自定义bootmgr的BCD文件位置
bootmgr 默认是寻找
\boot\bcd
, 可以使用工具修改位置,本例中修改到\WEPE\B64
使用工具BMplus
3.如何修改BCD文件配置
从PE光盘镜像中提取样本BCD(传统模式和UEFI模式模板有可能同,分别单独提取编辑)文件,修改
wim
和boot.sdi
路径即可
使用工具BOOTICE
Legacy BIOS
B64
UEFI模式bcd保持原名,
bootmgfw.efi
会寻找同目录该文件
4. UEFI引导大致原理
配置文件下载
-
链接:
https://pan.baidu.com/s/13f3DAsvB7a4NQLEnLTgjIg
-
提取码:
tszu
参考
- https://www.aioboot.com/en/install-grub2-from-windows/
- http://www.jinbuguo.com/linux/grub.cfg.html
- http://www.wepe.com.cn/download.html
- ······