制作UEFI(64位)下的WinPE + Ubuntu + Acronis多启动U盘

最近研究了一下如何制作一个多启动U盘,其中想包含的功能是WinPE(这里选择WEPE),Ubuntu 18.04,Acronis True Image 2018的ISO恢复盘。这里分享一下制作的经验和踩过的坑

准备工作

必备的硬件

1个USB,我用的大小是16GB,其实8G甚至4G应该也能够完成。因为WinPE的安装加上Arconis的安装大概是400MB,Ubuntu 18.04大概是2.1GB

必备的软件

软件方面,因为我用的分区软件是Windows 10自带的(就是右键我的电脑->管理->磁盘管理),所以略过分区软件

  1. grub-2.02-for-windows,这个可以到aioboot下载
  2. 微PE工具箱V2.0,地址是http://www.wepe.com.cn/download.html
  3. Acronis True Image 2018的ISO文件,请大家自行到网上找相应的ISO文件,或者联系我来找相应的文件
  4. Ubuntu 18.04,网上到处都有下载,我是从清华的开源镜像库找的

制作流程

USB分区

USB分区分成两个区就好了,注意分区位置不要颠倒了。

  1. 第一个分区(hd0,msdos1):格式:NTFS,大小:USB的整个大小减掉1GB,作用:存放Ubuntu镜像文件
  2. 第二个分区(hd0,msods2):格式:FAT32,大小:1GB,作用:UEFI启动时要求的ESP分区(也就是EFI文件夹应该放的分区)

安装Grub2

这一步本来没什么想说的,但是后续如果不注意会使得grub产生error: Unknown filesystem这个错误,所以大致讲一下。首先,管理员身份运行CMD,进入grub2解压以后的文件夹,在CMD里面输入以下命令:

grub-install.exe --boot-directory=第二个分区的USB盘符:\ --efi-directory=第二个分区的USB盘符: --removable --target=x86_64-efi

注意:这个命令的boot-directory参数指定以后会在指定的目录下安装一个grub文件夹,里面可以进行各种配置,并且会生成一个相应的EFI文件夹。所以,如果你想让你的grub安装到其他目录,那么,需要更改这个参数后面的文件夹路径。比如,可以用F:\boot这个路径,这样的话,安装完grub2会产生一个F:\boot\grub的文件夹路径。

最后,在新生成的grub文件夹下面新建一个grub.cfg空文件。并且添加下面的一些模块加载选项:

insmod loopback
insmod iso9660
insmod ntfs
insmod all_video

安装WePE

首先,用WePE工具箱生成一个ISO文件,具体方法就是打开下载好的文件,然后点击最右下角的光盘图标根据提示制作。制作好以后,用解压软件解压光盘文件的WEPE文件夹到USB的第二个分区(hd0,msdos2)的根目录。光盘文件的EFI文件夹暂时解压到电脑的硬盘中。

然后,把解压的EFI\Microsoft文件夹直接复制到USB的第二个分区(hd0,msdos2)的EFI文件夹下。现在,把解压的EFI\BOOT文件夹下面的bootx64.efi提取出来,这个就是后面WePE的引导文件,可以把这个文件放到USB的第二个分区(hd0,msdos2)的EFI文件夹下面的任意位置,但是需要grub.cfg的chainloader选项能够准确定位。(我放到了我的USB盘符:\EFI\MICROSOFT\BOOT\wepe

最后,在grub.cfg添加下面的WePE启动项:

menuentry "Windows PE" {
    chainloader /EFI/microsoft/boot/wepe/bootx64.efi
}

安装Ubuntu 18.04

这一步其实还是蛮简单的,首先,把镜像解压到USB的第一个分区(hd0,msdos1)下面的任意文件夹。然后,解压提取出来iso文件的casper文件夹,在这个文件夹里面只留下vmlinuz和initrd就可以了,其他的都可以删除掉。(我把镜像和这个casper文件夹放到了我的USB盘符:\linux\ubuntu\)。最后,在grub.cfg添加下面的Ubuntu启动项:

menuentry "Ubuntu 18.04" {
    set isofile="/linux/ubuntu/ubuntu-18.04.4-desktop-amd64.iso"
    loopback loop (hd0,msdos1)$isofile
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile nomodeset noprompt noeject quiet splash --
    initrd (loop)/casper/initrd
}

安装Acronis True Image 2018

对于Acronis True Image,其实就只需要ISO文件里面的dat10.dat,dat11.dat,dat12.dat三个文件。我把这三个文件解压到了第二个分区(hd0,msdos2)的Acronis文件夹下面,然后直接在grub.cfg添加下面的启动项:

menuentry "Acronis True Image 2018" {
    set quiet=1
    set gfxpayload=1024x768x32,1024x768
    set mbrcrcs=on
    linux (hd0,msdos2)/Acronis/dat10.dat lang=1 quiet force_modules=usbhid
    initrd (hd0,msdos2)/Acronis/dat11.dat (hd0,msdos2)/Acronis/dat12.dat
}

到此,所有制作已经完毕,其实没有想象中那么难,但是网上想找到一个比较完整的步骤还不太容易。走过很多弯路,包括分区方案怎么制作,如何添加WinPE的引导,如何添加Acronis的引导。

有问题的话,各位可以在下面留言,我会不定时解答(虽然不一定能解答:-()

猜你喜欢

转载自www.cnblogs.com/alexanderzjs/p/12389079.html