本文主要是网上搜索到的信息通过屡次试验获得的结果,文末包含部分 U 盘安装工具的测试。另外,UEFI 模式下安装 deepin 时发现,deepin 15.11 对 efi 分区的要求没那么高,300 M 足够了。linux
操做系统:deepin 15.11ubuntu
宿主环境:主要为 VirtualBox 虚拟机,部分为物理机(戴尔笔记本)。windows
能够直接经过 grub2 引导 ISO 文件:api
其中 /etc/grub.d/40_custom 中添加的内容以下:工具
menuentry 'deepin installer' { set root=(hdx,y) set isofile="/deepin-15.11-amd64.iso" loopback loop $isofile linux (loop)/live/vmlinuz findiso=${isofile} boot=live components quiet splash union=overlay livecd-installer locales=zh_CN.UTF-8 initrd (loop)/live/initrd.lz }
menuentry 'deepin installer' { set root=(hdx,y) set isofile="/deepin-15.11-amd64.iso" loopback loop $isofile linux (loop)/live/vmlinuz findiso=${isofile} boot=live components memtest noapic noapm nodma nomce nolapic nomodeset nosmp nosplash vga=normal union=overlay locales=zh_CN.UTF-8 initrd (loop)/live/initrd.lz }
这里默认为 MBR 分区表,若是为 GPT,菜单项定义第一行应为 set root=(hdx,gpty)。其中 x 从 0 开始,y 从 1 开始。即第一个块硬盘第一个分区。具体的能够在重启出现 grub 菜单时按 c 键进入控制台,输入命令 ls 便可得知。oop
第二行,以第一行定义的 root 分区为根目录,为 ISO 文件位置定义了一个可复用的变量,此变量在下面两行都有引用。测试
第四行,内核启动参数参考了 deepin ISO 中 isolinux 文件夹下的 live.cfg 。ui
将 Legacy 模式下内核启动那一行中的 /live/vmlinuz 改成 /live/vmlinuz.efi 便可。操作系统
当前系统 | 测试系统 | UEFI 模式 | Legacy 模式 | 备注 |
---|---|---|---|---|
deepin | deepin | √ | √ |
其中 /etc/grub.d/40_custom 中添加的内容以下:code
menuentry "Windows Installer" --class windows --class os { insmod part_msdos insmod ntfs insmod ntldr set root=(hdx,y) ntldr /bootmgr }
menuentry "Windows Installer" --class windows --class os { insmod part_msdos insmod ntfs set root=(hdx,y) chainloader /efi/boot/bootx64.efi }
当前系统 | 测试系统 | UEFI 模式 | Legacy 模式 | 备注 |
---|---|---|---|---|
deepin | Win 7 | x | x | UEFI 到 Starting Windows 就不动了,Legacy 则 Windows Boot Manager 报错 |
deepin | Win 10 | √ | x | Legacy 模式 Windows Boot Manager 报错 |
重启后会直接进 Windows,彷佛看不到 deepin 的引导菜单。但关机后再启动仍是会进入 deepin ,终端执行 sudo update-grub,更新下引导项,就出现 Windows 的引导项了。
title deepin installer root (hdx,y) kernel /vmlinuz findiso=/deepin-15.11-amd64.iso boot=live components quiet splash union=overlay livecd-installer locales=zh_CN.UTF-8 initrd /initrd.lz
其中 x 从 0 开始,y 从 0 开始。即第一个块硬盘第一个分区。
Win 10 下若是须要其余开机启动操做,注意重启时按 Shift,不然可能没法操做。
当前系统 | 测试系统 | UEFI 模式 | Legacy 模式 | 备注 |
---|---|---|---|---|
win xp | deepin | - | √ | |
win 7 | deepin | √ | √ | |
win 10 | deepin | √ | √ | 若重启后仍是进 win 10,能够关机再启动 |
主要包括收尾工做和 grub 控制台。另外,这里也测试了 deepin 应用商店里的两款 U 盘安装工具。
最后,记得删除 /etc/grub.d/40_custom 中添加的内容,在终端执行 sudo update-grub,消除引导项。
若是添加了临时分区,记得删除并将空间合并到其余分区。
以上 grub2 菜单定义过程也能够经过进入 grub 界面后(重启电脑会看到这个节面)按 c 进入 grub 控制台,而后一句一句执行 grub 引导命令来实现,而不须要修改 /etc/grub.d/40_custom 文件。如:
insmod part_msdos insmod ntfs set root=(hdx,y) chainloader /iso/efi/boot/bootx64.efi boot
deepin 官方的 U 盘启动盘制做工具对自家的兼容性确定是不错的,不过对 Windows 的支持不太好。
当前系统 | 测试系统 | UEFI 模式 | Legacy 模式 | 备注 |
---|---|---|---|---|
- | win 8 pe | - | x | 使用的 ISO 文件未集成 UEFI 引导模式 |
- | win xp | - | x | |
- | win 7 | √ | x | |
- | win 10 | √ | x | |
- | deepin | √ | √ | |
- | ubuntu | √ | √ | |
- | fedora | x | x | 都是选择菜单后一片黑,U 盘无读写信号 |
woeusb 主要面向 Windows 系统,因此对 Windows 的支持比较好。但比较逗逼的是,制做启动 U 盘时不会自动卸载磁盘,须要手动卸载才能继续下去。
当前系统 | 测试系统 | UEFI 模式 | Legacy 模式 | 备注 |
---|---|---|---|---|
- | win 8 pe | - | √ | 使用的 ISO 文件未集成 UEFI 引导模式 |
- | win xp | - | x | |
- | win 7 | √ | √ | |
- | win 10 | √ | √ | |
- | deepin | √ | x | |
- | ubuntu | √ | x | |
- | fedora | x | x | UEFI 模式选择菜单后一片黑,U 盘无读写信号 |
UEFI 模式由于是通用的,看起来都支持得不错。