以前的用U盘装系统都是用ultraISO 直接制作启动盘,有的时候一连着好几天都得捣鼓着装系统,今天是windows,明天是ubuntu,后天就可能是其它linux发行版了,很不方便,所以就想利用一个U盘做一个多系统的启动盘,经过N天不断的实践,不断的尝试,终于让我成功了。
制作的前准备:
1) 1个4G容量以上U盘,
2) 网上自行搜索winpe的iso镜像,很多的,像那种 老毛桃,电脑店的winpe是不行的,因为他们不是iso镜像。
3)下载以下几个文件:
BOOTICE :运行于windows系统,用于向U盘写入grub2 ,这个也可以上网上自行搜索下载。。
Boot.7z :grub启动文件
memdisk :用于引导WinPE的启动。。直接引导windows安装镜像貌似不行。。
归纳总结后的制作方法:(向U盘写入grub—>复制boot文件夹到U盘—>复制memdisk到Boot文件夹内—>修改grub.cfg 文件,)只有这4步,当然iso镜像得放到U盘,下面详细解释一下。
1、用BOOTICE向U盘写入grub。
2、把 boot目录 复制到U盘根目录下。
3、把memdisk复制到boot目录里面,memdisk用于引导winpe。
最终目录结构如下:
4、修改配置boot/grub/grub.cfg 文件。(说明:我上传的boot文档里面有一个grub.cfg,你们可以看一看学习一下,这里是我现在正在用的grub.cfg文件。)
--------------------------------------------------------------------------------------------------------------------------------------------------------
解释一下grub.cfg文件
//挂载linux系统
menuentry ‘try and install ubuntu-14.04-desktop-amd64 ‘ { ----------------显示标题,可以自己任意设置
set isofile=‘/iso/ubuntu-14.04-desktop-amd64.iso‘ ------------------制定要安装的系统镜像为 : /iso ,iso是我在U盘建的文件夹
search --set -f $isofile
loopback loop $isofile ------------------加载镜像
gfxpayload=keep
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile ro locale=zh_CN.UTF-8 -------------这句 locale=zh_CN.UTF-8是设置中文,否则会乱码,前面的(loop)应该是循环加载,就行递归似的,晚上有些资料没有加,我尝试的不行。
initrd (loop)/casper/initrd.lz
}
//挂载winpe系统
menuentry ‘Boot 1 Windows 8 PE Full Tools‘{
set root=‘(hd0,msdos1)‘
echo ‘Loading Memdisk...‘ -----显示文本,给人看的
insmod memdisk
linux16 /boot/memdisk iso raw ----用到了memdisk工具,它在U盘的/boot目录下。
echo ‘Loading ISO...‘
echo ‘Made By 梁作祥!!!‘
initrd16 /iso/Win8PE.iso -------Win8PE.iso是我的PE镜像。。 加载PE镜像。。
}
顺便引导自己的系统:
1)如果你只有windows系统,那么就不用那么那么麻烦了,我们做的U盘启动盘本来就能自动搜索已安装的windows系统。下图中的数据在grub.cfg 里面有。
如果你的系统现在已经是多系统了,并且是grub引导,为了防止玩坏了启动项,而进不了系统,可以把电脑里面grub的引导数据直接改写到U盘的grub.cfg。
我的现在U盘启动盘如下:
由于这个图的重启电脑用手机拍照,没法截图,so 稍后上传。。
多系统U盘启动盘的制作,成功启动win8PE,ubuntu,deepin2013,deepin2014,以及通过U盘启动电脑已装系统。