关于grub的学习 0605121342.docx
- 文档编号:3886766
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:12
- 大小:355.37KB
关于grub的学习 0605121342.docx
《关于grub的学习 0605121342.docx》由会员分享,可在线阅读,更多相关《关于grub的学习 0605121342.docx(12页珍藏版)》请在冰豆网上搜索。
关于grub的学习0605121342
关于grub的学习
Grub,的出现经常在linux启动出现问题时,会有一个界面grub#,后面可以采用一些命令重新引导系统启动。
Grub有三种,其中学习和使用的时frubfordis(grub4dos)是一个以gnugrub为基础的功能强的引导器,可以在dos和linux下运行,也可以通过其他引导器来运行,还可以作为mbr运行,grub4dos内置了功能完善的bios级别磁盘仿真。
下面就是使用grub4dos为基础进行说明,gungrub与grub4dos的不同之处,可以在XX中寻找;
1.如何安装grub4dos?
下载grub4dos后,解压缩后就可以使用了,核心文件有grldr,grldr.mbr,和grub.exe,及menu.lst。
如果需要中文就用chinese子目录中的文件;
安装方法4种:
将grldr文件复制到c:
\,去掉boot.ini的只读属性,然后修改c:
\boot.ini文件,在boot.ini的最后一行加入:
C:
\grldr=“startgrub4dos”
并将boot.ini的timeout值设置为大于0的数字,如:
timeout=5然后保存并改回只读属性。
编辑boot.ini之前,可以在cmd下输入:
Attrib–s–r–hc:
\boot.ini
解除boot.ini的只读属性,编辑完成后输入
Attrib+s+r+hc:
\boot.ini
恢复boot.ini的原有属性
这样,编辑完重启计算机,在nt的启动菜单出现startgrub4dos这一个选项,,然后进入即可;
此方法的优点是,不行也要修改mbr
初学者使用grub一般都需要grub菜单,把贮备好的额menu.lst文件放到c:
\下(也可以放到其他分区根目录货其它目录)。
Menu.lst的编写方法可参考readme.txt或者别人提供的menu.lst。
2.通过dos启动grub
将机器通过如何可能的方式,软盘,光盘,u盘等启动到dos环境,最好是纯dos环境,既不加载任何驱动程序和tsr程序的dos环境,然后在dos下或者atuoexec.bat中运行grub.exe,即可进入grub4dos。
也可在dos/windows98的config.sys中使用下列任一方式启动grub:
DEVICE=GRUB.EXE
INSTALL=GRUB.EXE
SHELL=GRUB.EXE
此方法的有点事,不需要修改MBR,可根据需要在脚本或者其他DOS程序中启动GRUB4DOS.
菜单文件MENU.LST可保存在grub文件所在的目录或其他指定路径;
这里我需要强调一下,我经常把,。
号搞错,因为在打字的时候根本就不看键盘,这样就有个问题如何快速的找到我要的符号,而不产生停顿,不打断思考的序列,这是不道德的,因为从新进入我们的思路可是非常难得,尤其时候打英文混中文,我特意根据以上打字过程中需要调整了,tab键盘,我的左手小指可以轻松的勾到,这样我就可以很方便的打英文,而不必要去看键盘,打断思路了。
学习速度和打字速度也成为进步的先决条件,我以前可能根本没有意识到,每一点的进步都是非常困难,也是提高效率。
错误的减少就是减少时间的浪费,效率更高,更好。
比如,LOVEYOU,TODAY,IFINDTHESTORYGIVEMENEWTHINGS,THANKYOU.
去帮菲菲把文件放进柜子里,完成这些琐碎的事情,安心做一些可以持续性的工作。
3.通过MBR启动grub
通过软件包里的,可以运行在dos和win98中,安装grldr引导记录到硬盘或者硬盘映像文件的主引导记录,或者安装到软盘或者软盘映像的引导扇区,电脑启动时,通过击热键或者默认的空格键,可自定义,来启动grub。
比如
在dos下安装grldr代码到主引导记录
B0x80
在dos下安装grldr代码到软盘:
B--floppy–chs00x0
在dos下安装grldr代码到软盘映像:
B--floppy--chsfloppy.img
我所使用的命令为:
Bootlace--force-backup-mbr--boot-Prevmbr-first--time-out=3--hot-key=0x3920--mbr-disable-floppy0x80
表示安装grldr代码到mbr时,备份原mbr(--force-backu-mbr),默认启动原mbr,即启动原windowsxp系统(--boot-prevmbr-first),等待时间3秒(--time-out=3),热键为空格键(--hot-key=0x3920),不搜索软盘上的grldr(--mbr-disable-floppy)。
也就是说启动时等待3秒,3秒内不击热键的话,启动windowsxp,否则启动grub4
Dos。
Bootlace的其他参数即自定义热键用法可参看readme.TXT
装入mbr后,在将grldr和menu.lst文件复制到某分区的根目录,现在支持文件系统时fat12,fat16,fat32,ntfS,ext2,ext3的分区,对于windows用户,最好的fat分区,menu.lst也可保存到其他指定的位置。
此方法的优点时,不依赖于操作系统,能够自动搜索硬盘上个个分区的grldr文件。
另外,2000、xp、2003、vista环境下可用另一软件grubinst来把grldr引导记录安装到硬盘的mbr。
Grubinst具有图形界面和命令行两种工作模式供选择,并附有比较详细的使用说明,很易于使用。
4.如何安装grub4dos?
用批处理自动把grub4dos装入vista启动项,非mr。
把GRUB4DOS装入VISTA启动项,比装入mbr相对来说要安全。
对于vista系统,不能通过fdisk/MBR来恢复mbr,这样会造成vista无法启动
关于手动把grub4dos装入vista启动项的方法,网上有一些介绍,比起winxp修改boot.ini来,操作要麻烦不少。
主要是操作过程中要产生一个id号,如b88a2da4-0a4e-11dc-813a-00e04c75ef95,需要手动输入3次,实在麻烦。
下面的批处理自动完成整个装入操作。
说明:
1.批处理与grldr.mbr在同一目录时,自动复制grldr.mbr文件到系统根目录,否则需自行复制。
2.启动项目里添加上grub4dos项后,需把准备好的menu.lst和grldr文件复制到c:
\下,也可以放到其他分区的根目录。
3.安装批处理:
@echooff
Rembylianjiang
Cls
Echo.
Echo请以管理员身份运行。
Echo.
Pause
Setgname=grubfordos
Setvid=
Settimeout=5
Bcdedit>bcdtemp.txt
Typebcdtemp.txt|find“/grldr.mbr”>nul&&echo.&&echobcd启动项中已有grub4dos的项目,无需再安装。
&&pause&&gotoexit
Bcdedit/export“bcd_backup”>nul
Bcdedit/create/d“%gname%”/applicationbootsector>vid.ini
For,/f“tokens=2delims={“,%%i,in(vid.ini)do(
Setvida=%%i
)
For,/f,”tokens=1delims=}”,%%i,in(”vida”)do(setvid={%%i})
Echo%vid%>vid.ini
Bcdedit/set%vid%devicepartition=%systemdrive%>nul
Bcdedit/set%vid%path\grldr.mbr>nul
Bcdedit/displayorder%vid%/addlast>nul
Bcdedit/timeout%timeout%>nul
Ifexistgrldr.mbrcopygrldr.mbr%systemdrive%\/y&&gotoexit
Echo.
Echo稍后请自行吧grldr.mbr拷贝到%systemdrive%\根目录
Echo.
Pause
:
exit
Delbcdtemp.txt>nul
卸载批处理
@echooff
Rembylianjiang
Cls
Echo.
Echo要求存在用安装批处理安装时自动保存的临时文件
Echo.
Echo请以管理员身份运行
Echo.
Pause
Setvid=
Settimeout=5
Ifexistbcd_backupbcdedit/import“bcd_backup”>nul&&goro1
Ifnotexistvid.ini(
Echo.
Echo因相关文件被删,不能自动删除启动项项目,只能手动删除。
Echo.
Pause
Gotoexit
)
For,/f,“tokens=1”,&&I,in(vid.ini)do(setvid=&&i)
Bcdedit/delete%vid%/cleanup>nul
Bcdedit/timeout%timeout%>nul
:
1
Delvid.ini>nul
Ifexist%systemdrive%\grldr.mbr(
Attrib–h–s–r%systemdrive%\grldr.mbr>nul
Del%systemdrive%\grldr.mbr>nul
)
:
exit
此法的优点是:
不需要修改mbr
4.如何使用grub4dos
对于多数没有或很少接触过linux的windows用户来说,刚开始使用grub时离不开菜单。
也就是说,使用grub前,我们要准备menu.lst文件。
下面时一个menu.lst的例子,以#开头行,表示注释,不执行
#默认延迟时间
Timeout=3
#第一项为默认值
Default0
#设置图形背景文件
Splashimag(hd0,0)/boot/grub/xp2008.gz
#设置中文支持的字体文件
fontfile(hd0,0)/boot/grub/fonts
title使用map启动本地硬盘上的瑞星杀毒软盘镜像文件
map(hd0,0)/boot/grub/rav.img(fd0)
map--hook
chainloader(fd0)+1
rootnoverify(fd0)
title使用memdisk启动本地win98软盘镜像文件
kernel(hd0,0)/boot/grub/memdisk.gz
initrd(hd0,0)/boot/grub/win98.img
title使用memdisk启动本地硬盘上的瑞星杀毒软盘压缩镜像文件
root(hd0,0)
kernel/boot/grub/memdisk.gzc=80h=12s=36floppy
initrd/boot/rav.zip
title启动第一主分区(hd0,0)上的操作系统
rootnoverify(hd0,0)
makeactive
chainloader+1
title启动第二分区(hd0,1)
rootnoverify(hd0,1)
makeactive
chainloader+1
title重启
reboot
title关机
halt
此菜单文件的运行效果
参考这个例子,我们就可以根据自己需要对菜单进行修改
比如从网上下载了效率源的镜像文件,文件名为xly.img。
我们只需要把
Title使用mendisk启动本地win98软盘镜像文件
Kernel(hd0,0)/boot/grub/memdisk.gz
Initrd(hd0,0)/boot/grub/win98.img
改成
Title硬盘检测修复工具效率源(memdisk)
Kernel(hd0,0)/boot/grub/memdisk.gz
Initrd(hd0,0)/boot/grub/xly.img
或者改成
Title硬盘检测修复工具效率源(map)
Map(hd0,0)/boot/grub/xly.img(fd0)
Map–hook
Chainloader(fd0)+1
Rootnoverify(fd0)
同时把xly.img文件保存到第一主分区,一般时c的boot\grub目录下。
当然也可以保存到其他路径。
比如xly.img文件保存到c:
\boot下,则menu.lst文件相应改为:
Map(hd0,0)/boot/xly.img(fd0)
又如xly.img文件保存到d:
\test下,则menu.lst文件相应改为:
Map(hd0,0)/test/xly.img(fd0)
从上面的例子可以看出,启动软盘镜像,有两种方法,即用memdisk和map
用memdisk时,img文件可以压缩;在img文件大小为非1.44mb或者2.88mb标准镜像时,需要指定chs参数。
Img文件的chs参数可用winimage获得
提示,参数h,s时关键参数,必须准确无误,参数此设定错了,也不影响引导
即例子中的:
Title使用mendisk启动本地硬盘山的瑞星杀毒软盘压缩镜像文件
Root(hd0,0)
Kernel/boot/grub/memdisk.gzc=80h=12s=36floppy
Initrd/boot/rav.zip
另外,菜单文件中的文件路径可用相对路径(如:
/boot/rav.zip)或绝对路径(如:
(hd0,0)/boot/grub/xly.zip)表示。
Map方式对软盘映像大小没有限制,但要求必须连续存放。
Map--mem则无此限制,但要求有足够的内存(使用超大映像文件时要注意这点)。
此映像将被拷贝到一个内存区域,映像本身可以时非连续的,甚至可以是被压缩的。
比如:
map--mem/boot/xxx.ima(fd0)
map--hook
Chainloader(fd0)+1
Rootnoverify(fd0)
官方文档“grub4dos高级功能”中对map和mendisk的去呗进行了说明;
1.map是grub4dos内置的功能,而memdisk是一个外部的程序
2.Map可以直接映射磁盘上的文件,而memdisk必须要把文件装载到内存内。
3.Map可以把映像文件映射为第二只硬盘,而memdisk只能映射为第一只硬盘。
4.Map有自动生成mbr的功能,而memdisk没有。
因此memdisk只能使用磁盘影像,不能使用文件系统影像。
几点提示:
A.菜单文件中所使用的memdisk.gz文件,不包括在grub4dos的发行包里,需自行准备。
可从syslinux软件包或从其它基于grub的工具(如gghost一键恢复)中获取。
B.菜单中所使用的其它文件如xp2008.gz(背景文件)、fonts(中文字体文件)及各种镜像文件等,均需拷贝到文件中指定路径。
Fontfile命令不可单独使用,需与splashimage一起使用。
C.菜单文件中的命令全部使用小写。
D.初学者使用绝对路径时要注意grub对设备的命名方法。
系统的第一各硬盘驱动器表示成hd0,其上的第一个分区表示为(hd0,0),也就是说对于硬盘,采用(hdx,y)的形成来表示,x、y都是从0开始计数的,x表示硬盘号,也表示分区号。
E.由于主分区只能有四个,所以第一硬盘的四个主分区分别用(hd0,0)--(hd0,3)来表示;逻辑分区则从(hd0,4)开始算,即第一逻辑分区用(hd0,4),第二逻辑分区用(hd0,5)来表示,以此类推。
F.一般机子的硬盘是一个主分区,其余是逻辑分区。
因此c盘用(hd0,0),d盘用(hd0,4)来表示。
光盘用(cd)表示,第一软驱用(fd0)表示。
G.如我的硬盘有两个主分区,其余为逻辑分区。
用(hdx,y)的方法表示如下图:
下面是我的gghost一键恢复中使用的菜单效果图及menu.lst文件:
Colorwhite/greenyellow/green
timeout3
find--set-root/ggho/grub/gghost.img
Password--md5$1$5$jsGtVo0c88ndMdo6JZfrJ0
Default/ggho/grub/default
Title0.GGhost2008[Ghostv11](map-mem)
Find--set-root/ggho/grub/gghost.img
Map--mem/ggho/grub/gghost.img(fd0)
Map--hook
Chainloader(fd0)+1
Rootnoverify(fd0)
Savedefault
Title1.Gghost2008[ghostv11](memdisk)
Find--set-root/ggho/grub/gghost.img
Kernel/ggho/grub/memdisk.gzc=280h=2s=36floppy
Initrd/ggho/grub/gghost.imgc=280h=2s=36floppy
Savedefault
Title2.Boot/ggho/grub/mytools.img
Find--set-root/ggho/grub/mytools.img
Map--mem/ggho/grub/mytools.img(fd0)
Map--hook
Chainloader(fd0)+1
Rootnoverify(fd0)
Title3.Boot/ggho/grub/myiso.iso
Find--set-root/ggho/grub/myiso.iso
Map--mem/ggho/grub/myiso.iso(0xff)
Map--hook
Chainloader(0xff)
Title4.Microwindowsxpe
Find--set-root--ignore-floppies/setupldr.bin
Map--in-situ+1(hd0)
Chainloader/setupldr.bin
title5.BootNT/2000/XP/2003
find--set-root/ntldr
chainloader/ntldr
title6.BootVista
find--set-root/bootmgr
chainloader/bootmgr
title7.BootfromHardDrive(hd0,0)
root(hd0,0)
chainloader+1
title8.BootfromFirstCDROM
cdrom--init
map--hook
chainloader(cd0)
boot
title9.Reboot
reboot
title10.Shutdown
halt
结束语:
Grub4dos的功能非常强大,上面介绍的只是grub4dos的一些最基本的用法,更多的用法可在掌握基本用法基础上,自己查阅资料了解。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于grub的学习 0605121342 关于 grub 学习