登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

kevin

 
 
 

日志

 
 

u盘安装中文grub,实现多引导,直接引导iso文件,实现u盘安装win7  

2012-07-07 13:41:21|  分类: 电脑相关 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
软件准备:
grubinst:下载地址(当然,你可以google之,下载之~)
grub4dos:grub4dos-0.4.4-2009-06-20.zip(同上)
firadisk.img:用于不解开直接加载iso。(文章结尾网盘地址下载)
grub中文字库:使用有两个条件:
           1.使用 grub4dos 里面,chinese 文件夹下的文件(grldr或grub.exe),那是中文版用的。
           2.menu.lst 使用asci编码,就是windows记事本默认编码。(文章结尾同样有网盘下载地址)

下面开始操作:
 
1、grub4dos的安装
打开grubinst_gui.exe(是grubinst里面的图形化文件),在磁盘一栏选自己的u盘,看清楚容量,注意不要选到本地磁盘。然后点击一下分区列表右边的刷新,然后在下拉菜单选整个磁盘(mbr)。然后点安装。安装成功。
u盘安装中文grub,实现多引导 - kevinoctober -        kevin
u盘安装中文grub,实现多引导 - kevinoctober -        kevin
  
2、在u盘根目录新建一个用英文命名的文件夹,名字根据自己喜欢,我新建了一个叫boot的文件夹。然后把cmos.img、winPE.iso、CDlinux、beini、xiaopan等放进去。所有文件都必须用英文或者数字命名,不能出现中文。(这些都是我自己平时用的东西,可以自行添加)
 
3、把grub4dos的grldr和menu.lst复制到u盘根目录(若果要使用中文菜单,要用grub4dos下chinese文件夹里的grldr和menu.lst)。这里建议用grub4dos内置菜单编辑器编辑grldr的内置menu.lst,从而可以直接使用grldr内置的menu.lst作为启动目录,但这样以后若果要添加或删除一些我们不需要的工具,修改menu.lst就稍微麻烦一点。当然,也可以使用grldr再指向外部的menu.lst来引导我们的系统。这里我是修改了grldr内置的menu.lst指向boot文件夹里的menu.lst,因为为了简洁,我把menu.lst也放在boot文件夹里,而不是u盘根目录里。u盘目录结构如下:
u盘:
 |
 |--boot 文件夹
 |   |
 |   |--CDlinux、beini等
 |
 |--grldr
u盘安装中文grub,实现多引导 - kevinoctober -        kevin
 u盘安装中文grub,实现多引导 - kevinoctober -        kevin
 
整个u盘结构比较简洁,看着舒服。当然,如果你不修改grldr里面的内置菜单,menu.lst就放在u盘根目录。其实也可以放在其他地方,这里就不展开讲了。
 
4、下面我们来编辑menu.lst来实现启动我们需要的工具。首先,我们要让我们的grub支持中文,menu.lst如下:

fontfile /boot/fonts
timeout 5
default 0

第一行命令是指向中文字库文件fonts,这个可以下载。第二行是等待时间。第三行是默认选择第几项,这里是从0开始的。
 
5、引导cmos.img等img格式的工具,(适合平时电脑的维护等操作,若平时不使用,可略过)菜单如下:

title bios密码清除工具
find --set-root --ignore-floppies /boot/cmos.img
map --mem /boot/cmos.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

把路径改为自己的就可以了,title后面也改成自己的。
 
6、直接引导引导winPE.iso。
 利用Grub4dos强大的磁盘仿真map --mem功能,可以从各种不同的介质启动WINPE,不解开ISO就可以直接启动PE
对于引导winPE.iso,倘若引导不成功,通常可能的原因有:
(1)光盘镜像的CD-ROM文件系统是Joliet CD格式,GRUB4DOS不支持这种格式。你需要通过工具转换一下镜像文件的文件系统格式。
(2)BIOS中激活了SATA的AHCI模式。GRUB4DOS可能无法兼容AHCI模式,应在BIOS中将SATA模式设置为IDE。
后来的试验表明了,我把一个不能成功引导的winpe的iso文件,用UltraISO工具转为标准的iso文件,果然成功得以引导。
最新的grub4dos已经能够兼容AHCI模式了,这在我的机器上得到了证明。所以如果iso文件不能成功引导,问题基本上出在这个iso文件的文件系统格式不为grub4dos支持,用UltraISO把它转为标准的iso文件即可。如果PE内置了firadisk或者winvblock驱动就不用再把这两个驱动镜像到软盘,如果PE没有集成这两个驱动之一,就可以在map --mem /boot/winpe.iso (0xff)之前加上一句map --mem /boot/firadisk.img (fd0)把他们镜像到软盘,就可以保证外置程序正常加载。最后,菜单如下:

title 启动winPE
fallback 6
find --set-root /boot/pe.iso
map --mem /boot/firadisk.img (fd0)
map --mem /boot/pe.iso (0xff)
map --hook
chainloader (0xff)
savedefault --wait=2

 
7、启动CDlinux。
这里不可以直接引导iso文件,一般来说,加载iso镜像,都是通过内存map的方式来加载的,也就是说,在内存中使用一部分空间作为iso的存储,然后再模拟引导。不同的iso由于体积大小不同,均会导致引导是否成功。一般,linux iso引导,只能引导内核,引导内核后便不能引导了。因为会清空内存数据,所以原来内存中的iso便消失了,只能进入内核命令模式。 如果想引导,可以采取对U盘分区的方式。将ISO写入到另一分区中,然后使用grub引导内核并启动。
这里,只给出解压后的引导方法,上菜单:

title CDlinux_0.9.6.1
kernel /boot/CDlinux/bzImage quiet CDL_LANG=zh_CN.UTF-8
initrd /boot/CDlinux/initrd

 
8、u盘安装win7
首先要下载好win7的安装包iso文件,把iso解压后,只需要把boot文件夹、efi文件夹、sources文件夹和bootmgr文件放在u盘里。menu.lst菜单如下:

title 安装Windows7 英文版
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
boot


9、最好加上重启和关机的命令,菜单:

title 重启
reboot

title 关机
halt

到这里,功能强大的u盘启动盘就做好了。

最后,附上我的menu.lst:

fontfile /boot/grub_fonts
timeout 5
default 0

title 从硬盘启动Win7
find --set-root --ignore-floppies /bootmgr
chainloader /bootmgr
boot

title 从硬盘启动xp
find --set-root --ignore-floppies /ntldr
chainloader /ntldr
boot

title 启动Diskgenius v3.80
find --set-root --ignore-floppies /boot/dg.img
map --mem /boot/dg.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 安装Windows7 旗舰版
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
boot

title 启动CDlinux_0.9.6.1
kernel /boot/CDlinux/bzImage quiet CDL_LANG=zh_CN.UTF-8
initrd /boot/CDlinux/initrd

title 启动WinPE
fallback 6
find --set-root /boot/WinPE.iso
map --mem /boot/firadisk.img (fd0)
map --mem /boot/WinPE.iso (0xff)
map --hook
chainloader (0xff)
savedefault --wait=2

title 用户密码清除工具
find --set-root --ignore-floppies /boot/password.img
map --mem /boot/password.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title bios密码清除工具
find --set-root --ignore-floppies /boot/cmos.img
map --mem /boot/cmos.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 重启
reboot

title 关机
halt

注:
 如果你使用的是beini或其他内核是tinycore的linux系统,要把tce文件夹放在根目录,否则容易无法挂载tce文件夹,导致启动后只有内核,没有应用程序。而boot文件夹可以放在tce内,可使目录结构简洁。
 
 
  评论这张
 
阅读(16255)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018