GRUB 入门
grub 使用手册
grub 使用手册以下是一个简单的 GRUB 使用手册:一、概述GRUB(Grand Unified Bootloader)是一个用于引导操作系统的启动引导程序。
它允许用户在多个操作系统之间进行选择,并提供了一些配置和诊断工具。
二、使用方法1. 进入 GRUB 菜单在计算机启动时,按下特定的键(通常是 Esc、F1、F2、F10 或 Del)进入GRUB 菜单。
这个菜单会显示可用的操作系统和启动项。
2. 选择操作系统使用上下箭头键选择要启动的操作系统,然后按 Enter 键。
如果您选择了一个带有操作系统的设备(例如硬盘上的某个分区),则会启动该操作系统。
3. 配置 GRUB您可以通过 GRUB 配置文件来定制 GRUB 的行为。
配置文件通常位于`/etc/default/grub` 或 `/etc//` 目录下。
使用文本编辑器打开配置文件,并进行所需的更改。
更改后,运行以下命令以更新 GRUB:```bashsudo update-grub```4. 修复 GRUB如果 GRUB 损坏或无法正常工作,您可以尝试使用以下命令修复它:```bashsudo grub-install /dev/sda```其中 `/dev/sda` 是您的硬盘设备名称。
这将重新安装 GRUB 到硬盘的MBR(主引导记录)中。
5. 退出 GRUB在 GRUB 菜单中,按下 Esc 键或按下任意键即可退出 GRUB 并返回到操作系统或启动菜单。
三、常见问题与解决方法1. 如何解决 GRUB 无法正常引导的问题?如果 GRUB 无法正常引导操作系统,您可以尝试使用系统恢复模式或启动盘来修复引导记录。
在恢复模式下,您可以使用命令行工具来修复 GRUB。
如果您有启动盘,可以使用它来启动计算机并运行修复工具。
一些常见的修复工具有 Boot-Repair、EasyBCD 等。
2. 如何添加新的操作系统到 GRUB?要添加新的操作系统到 GRUB,您需要编辑 GRUB 的配置文件。
grub 使用手册
grub 使用手册Grub,全称为 GRand Unified Bootloader,是一款功能强大的引导管理程序。
它主要用于在计算机启动时选择操作系统,并加载相应的内核。
Grub 的灵活性和可配置性使其成为了许多操作系统的首选引导程序。
本文将为您详细介绍 Grub 的使用方法和配置选项,以帮助您更好地理解和应用这一工具。
一、Grub 安装和基础配置1. 安装 GrubGrub 可以通过命令行工具或者图形界面进行安装。
在大多数Linux 系统中,您可以通过包管理器来安装 Grub。
例如,在 Ubuntu 系统上,您可以使用以下命令安装 Grub:```sudo apt-get install grub```2. Grub 配置文件Grub 的配置文件位于 /etc/grub.d/ 目录中,主要文件为 grub.cfg。
您可以使用任意文本编辑器来修改这个文件。
其中,每个菜单项对应着一个操作系统或者启动项。
二、Grub 引导菜单的创建和编辑1. 创建新菜单项您可以通过编辑 grub.cfg 文件来创建新的菜单项。
每个菜单项包含以下几个关键部分:- 标题(title):菜单项的名称,用于在引导菜单中显示。
- 根目录(root):操作系统所在的分区或者磁盘。
- 内核(kernel):要启动的操作系统内核的路径。
- 参数(options):传递给内核的参数,如运行级别或者启动参数。
2. 编辑现有菜单项如果您需要编辑已有的菜单项,可以通过修改 grub.cfg 文件中的对应部分来实现。
注意,修改配置文件需要具备一定的技巧和知识,确保文件的完整性和正确性。
三、Grub 引导程序的高级配置1. 高级引导选项Grub 提供了一些高级的引导选项,用于调整引导过程中的行为。
例如:- 设置默认启动项:您可以修改配置文件中的默认启动项,以自动选择在引导菜单中的排序顺序或者指定一个特定的菜单项。
- 自定义启动画面:Grub 允许您更改引导菜单的外观,例如更换背景图片或者调整菜单字体的颜色。
grub简要教程
GRUB简要教程GNU GRUB 是一个多重操作系统启动管理器。
用来引导不同系统,如windows ,Linux。
一、了解一下x86的引导过程由硬盘启动时,BIOS通常是转向第一块硬盘最初的几个扇区,即主引导记录。
装载GRUB和操作系统的过程,包括以下几个操作步骤:1、装载主引导记录。
基本引导装载程序所做的唯一的事情就是装载第二引导装载程序。
2、装载Grub。
这第二引导装载程序实际上是引出更高级的功能,以允许用户装载入一个特定的操作系统。
3、装载在一个特定分区上的操作系统,如Linux内核。
GRUB把机器的控制权移交给操作系统。
不同的是,微软操作系统都是使用一种称为链式装载的引导方法来启动的,主引导记录仅仅是简单地指向操作系统所在分区的第一个扇区。
二、grub下的设备名称硬盘都是用hd开始,软盘用fd开头,命名和Linux不大一样,是从0算起。
(hd0,0)表示C 盘。
(hd0,4)表示D 盘。
系统的第一个硬盘驱动器表示成(hd0),其上的第一个分区表示为(hd0,0),也就是说对于硬盘,采用(hdx,y)的形式来表示,x、y都是从0开始计数的,x表示硬盘号,y表示分区号。
由于主分区只能有四个,所以第一硬盘的四个主分区分别用(hd0,0)~(hd0,3)来表示;逻辑分区则从(hd0,4)开始算,即第一逻辑分区用(hd0,4),第二逻辑分区用(hd0,5)来表示,依次类推。
一般机器的硬盘都是一个主分区,其余是逻辑分区,因此C盘用(hd0,0),D盘用(hd0,4)来表示,光盘用(cd)表示,第一软驱用(fd0)表示。
文件的表示为( , ) /path/to/file三、GRUB的根文件系统一些用户常困惑于GRUB中根文件系统(root filesystem)这一术语的用法。
GRUB的根文件系统与Linux的根文件系统是没有关系的。
四.grub 的接口当GRUB环境开始载入第二步引导装载程序时,它寻找自己的配置文件(menu.lst)。
GRUB简体汉化版使用——基本概念及界面说明
A.基本概念1. GRUB 里的设备命名法则它使用了UNIX对设备的命名方法.比如我们拥有两块硬盘,那么采用这种形式(hdx,y), 这里,x,y, 都是从0开始计数的.所以两块硬盘是 (hd0,y),(hd1,y). 他们位于第一个IDE 接口上. 对 hd0 来说, 请看下图:(注, C: 为第一主分区, 其他分区是扩展分区.由于主分区只能有四个,即 0,1,2,3, 所以第一个扩展分区的编号从 4 开始.)这是硬盘,那么光驱哪? 对,采用 (cd) 就可以了. 网络设备使用 (nd). 我估计,以后支持usb以后,可以使用 (ud). ;-) 欢迎你的参与,我们的开发还在继续.那么,这里就要提及 GRUB 里的一个很首要的概念了, 即 "根(/)", 或者 root. 其实,它就是一个源一样的东西,与草木的"根"相类似. 在GRUB中,其它的文件对象都域于此. 所以,一旦你指定了一个根,后续的操作除非显示地说明,否则都是对"根"而言的.其实在某种意义上来说,和相对/绝对路径有点关联性. ;-) 正如,你所猜到的那样, GRUB 使用 root 命令来指定根设备(通常都是文件系统).B. 命令和参数在古老的 dos 时代,这两个东东是很平常的. 可以认为,命令是程序的名称,参数是告诉程序如何作和怎么作.比如在 Grub 的控制台里:GRUB>help scdrom那么, help 就是命令, 而 scdrom 就是参数了. 它的意思是"给出 scdrom 命令的帮助信息."C. 界面说明首先,引导程序应该简单易用,菜单加鼠标是不错的主意.是的, GRUB 支持自定义的菜单选择功能项;但当前来说,它还不能支持鼠标的点选. 另外,为了更灵活, GRUB 还可以动态地编辑菜单项,这就是它的控制台功能(在控制台里,你可以使用 `ESC`键返回到主选菜单界面).以下三图可供参考:(主菜单)(编辑菜单项)(命令行模式)D. 关于菜单脚本文件与 Windows NT 类似, GRUB 也提供了一个菜单生成文件,我们常称之以脚本.通常情况下,我们把 GRUB 要用到地文件都放到 /boot/grub/ (这里我们省略了对根设备的指定, 所以完整的表示可能是 (hd0,0)/boot/grub ). 而菜单文件的默认名称是menu.lst. 这里有一个样本实例,>> 请点击 <<这里应该说明的是, 菜单文件里的注释是以"#"开头的, 而每一项菜单都必须指定一个标题(title),否则不但不能被显示出来,反而还作为了上一项的命令了.。
认识GRUB
GRUB/GRUB2简介及常用操作一、什么是GRUB/GRUB2?答:GRUB(Grand Unified Boot Loader)是强大的启动引导器,不仅可以对各种发行版本的Linux进行引导,也能够正常引导PC机上的其他常见的操作系统。
GRUB提供了真正的命令行交互界面,能够使用户以最大灵活性使用各种参数引导操作系统和收集系统信息。
注意:目前 GRUB 分成 GRUB legacy 和 GRUB 2。
版本号是 0.9x 以及之前的版本都称为 GRUB Legacy ,从 1.x 开始的就称为 GRUB 2。
Grub 2 是新一代的Grub,它实现了一些Grub中所没有的功能:1、模块化设计不同于Grub的单一内核结构,Grub 2 的功能分布在很多的小模块中,并且能在运行时动态装载和卸除。
2、支持多体系结构Grub 2可支持PC(i386), MAC(powerpc)等不同的体系机构,而且支持最新的EFI架构。
3、国际化的支持Grub 2 可以支持非英语的语言。
4、内存管理Grub 2 有真正的内存管理系统。
5、脚本语言Grub 2 可以支持脚本语言,例如条件,循环,变量,函数等。
二、如何对GRUB2进行加锁和解锁?答:password 口令字用于为GRUB的启动菜单和菜单项设置口令,但不适用grub2,在grub2加锁操作如下:i.在GNOME桌面打开终端输入grub-mkpasswd-pbkdf2回车:Figure 1 利用grub-mkpasswd-pbkdf2工具得到密文ii.两次填入加密口令确认得到加密后的密文:Figure 2 两次确认口令Figure 3 得到密文iii.之后用VI打开/etc/grub.d/00_header文件,添加如下内容:cat << EOFset superusers="su"password_pbkdf2 suEOF其中su为用户名.之后以ROOT身份运行update-grub即可.3、用户密码遗忘,如何修改GRUB2进行登录?答:如下所示:i.在虚拟机启动时安装shift键停留到启动项选择页面:Figure 4 grub2启动菜单i.输入e进入菜单编辑Figure 5 按E键进入编辑ii.将光标移动到有字符串 $vt_handoff 后空格并键入 rw init=/bin/bash,之后按ctrl+X进入bash命令行:Figure 6 进入命令行iii.输入:passwd 用户名进行密码修改:Figure 7 两次密码确认iv.两次确认后出现:password update successfully表明密码修改成功,重启用修改后的密码登陆即可.Figure 8 修改密码成功。
GRUB图文教程
GRUB图文教程GRUB图文教程一、忘记root用户密码相信,很多的朋友都遇到过这种情况,长时间的未使用,而导致忘记密码,没有了root 密码,对于LINUX来说,绝对是一种悲剧!。
那么接起来,小枫就来告诉大家忘了密码也是有法的,那就是进入单用户模式,修改GRUB配置文件,在此单用户模式下是不需要用户密码的,它此刻就属你个人所有,自己玩自己还需要密码么,答案当然是否定的!来吧,跟我一起做步骤:1、重启LINUX,在进入系统登录界面前,当你看到一个倒计时时,按任意键,将它停下来,就会出来如下图所示的界面,因为LINUX的版本不同,内容大同小异,但不重要2、看到上面这个界面后,如果你装了几个系统,这儿会出来多个,这儿就像windows 装了多系统一样,按'e' 进入编辑模式,3、这儿咱们用方向键选择第二项,即高亮显示的一项,修改引导文件GRUB,按'e' 进入编辑模式,出现以下界面,并在其光标所在位置加上空格1或空格s或空格single,这三个都可让我们进入单用户模式,我这儿输入的是singin,回车之后,按b进入引导4、在经过短暂的等待以后,不会提醒我们输入用户名以及密码的情况下就已经进入root用户,如图,只要进来了就好办了,设置root用户的密码输入passwd 并回车,输入你的新密码,到此就结束了。
,5、可能很多朋友看到这儿的时候都会发现,既然这么轻易就能免密码登录,那我设置的密码还有何用,那别人岂不是能轻易的进入我的系统,那么小枫接下来告诉大家怎么来设置我们的GRUB密码。
往下面看二、GRUB密码设置描述:设置GRUB可以在两处设置密码,一个是进入GRUB界面时的设置秘密,二一个是进入选择系统界面时设置秘密;1、输入:vi /boot/grub/grub.conf 打开GRUB的配置文件如图注:其中有一项为hiddenmenu隐藏菜单,将其注释后启动时不会有界面,只有一个倒计时;其中有一项为timeout=5设置的为停留时间5秒,修改以下几项:-找到title开头的这一行,在其前面设置password 你的密码,换行lock这是第一把锁(即进入GRUB菜单前),第二把锁,在title下面换行,输入passwd 你的密码换行,这是第二把锁(即进入系统前),你可以选择其中一项,也可两个都设置,2、设置好后,如下,我两个地方都设置了密码保存退出,当你重启后再想进入GRUB菜单中或进入你选择的系统时就需要密码了,这样就不用担心别人能随便进入你的GRUB菜单或系统了,3、玩到这里,我想大家不得不再考虑一个新的问题,我们虽然设置了密码,但是这个文件中的密码黑底白字的写着咱们保密的,开关,等于把咱们家保险箱的钥匙放在了电视机上,太不保险了,因此,引发了一个加密的问题;三、密码加密描述:把咱们的密码通过算法让它变成一串字符,LINUX中常用的是md5的方式加密(温馨提示:我们会在下面会用到“复制”这项功能,如果没有装,那么就在终端中执行或桌面方面中去执行)1、输入:grub加车,如图2、这儿我们可以输入help查看帮助,其中我们会看到有一项md5crypt,输入它并回车. Linux会要求我们输入密码,此密码就是我们要加密的字符串,输入要加密的字符串,回车后,它会帮我们计算出加密后的密码,复制这一段。
GRUB使用方法
GRUB使用方法目录1、GRUB 基础2、命名习惯3、安装 GRUB4、GRUB 接口5、GRUB 常用命令6、保护 GRUB 设置7、GRUB 和 stage 文件8、GRUB 常见错误信息9、制作 GRUB 引导软盘10、使用 GRUB 通过网络引导操作系统11、把配置文件嵌入到 GRUB 中12、总结13、个人建议一、GRUB 基础1.1 GRUB 简介“boot loader”是计算机启动后第一个运行的软件。
它负责加载一个操作系统的内核,并把控制权交给内核。
内核则负责剩下的初始过程。
GRUB 一个很重要的特色就是灵活性;GRUB 可以识别文件系统和二进制格式的内核,所以你可以加载任何操作系统,而不需要记录内核在磁盘上的物理位置。
1.2 GRUB 的现状我不打算介绍 GRUB 的发展历史,有兴趣的朋友可以自己到官方站点或者执行 info grub 自行获取信息。
我们着眼于 GRUB 当前的现状。
目前 GRUB 分成 GRUB legacy 和 GRUB 2。
版本号是 0.9x 以及之前的版本都称为 GRUB Legacy ,从 1.x 开始的就称为 GRUB 2。
目前GRUB Legacy 已经停止开发了,只是出于一个 bug fix 的状态,不再增加新的功能了,所有的开发都转移到 GURB 2 之上了。
1.3 GRUB Legacy 和 GRUB 2GRUB 2 是源自于一个名为 PUPA 的项目,目的是建立下一代的 boot loader。
GRUB 2 几乎是从零开始开始开发的,它和 GRUB Legacy 不同的地方有很多,例如支持 scripts、国际化语言、动态加载模块、带有 resuce 模式等等,这些都是 GRUB Legacy 所没有的。
下面是GRUB2 新特性的介绍:(原文请参/software/grub/grub-2.en.html )a)支持脚本语言,例如条件判断,循环、变量和函数b)图形接口c)在运行时动态加载需要的模块,而不是在 biuld 的时候指定加入那些模块(静态)d)可以移植到不同的架构上e)国际化语言。
GRUB入门
一、什么是多重操作系统引导管理器,什么是GRUB1、什么是多重操作系统引导管理器及工作原理系统启动引导管理器,是在计算机启动后运行的第一个程序,他是用来负责加载、传输控制到操作系统的内核,一旦把内核挂载,系统引导管理器的任务就算完成退出,系统引导的其它部份,比如系统的初始化及启动过程则完全由内核来控制完成;Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).在X86 架构的机器中,Linux、BSD 或其它Unix类的操作系统中GRUB、LILO 是大家最为常用,应该说是主流;Windows也有类似的工具NTLOADER;比如我们在机器中安装了Windows 98后,我们再安装一个Windows XP ,在机器启动的会有一个菜单让我们选择进入是进入Windows 98 还是进入Windows XP。
NTLOADER就是一个多系统启动引导管理器,NTLOADER 同样也能引导Linux,只是极为麻烦罢了;在Powerpc 架构的机器中,如果安装了Linux的Powerpc 版本,大多是用yaboot 多重引导管理器,比如Apple机目前用的是IBM Powerpc处理器,所以在如果想在Apple机上,安装Macos和Linux Powerpc版本,大多是用yaboot来引导多个操作系统;因为目前X86架构的机器仍是主流,所以目前GRUB和LILO仍然是我们最常用的多重操作系统引导管理器;2、什么是GRUB;为什么我要选择GRUB1)什么是GRUBGNU GRUB 是一个多重操作系统启动管理器。
GURB快速入门
Gurb快速入门Grub4dos安装和启动从MBR中启动把GRUB4DOS启动代码安装到MBR后,开机后便能直接进入GRUB4DOS。
<br>安装到MBR需要用到工具bootlace或grubinst,bootlace可运行在DOS,Windows95/98/Me和Linux下,而grubinst可运行在Windows NT/2000/XP/2003/Vista,Linux和FreeBSD下。
<br>在DOS,Windows95/98/Me下,用bootlace把启动代码安装到第一只硬盘的MBR:<pre>bootlace0x80</pre>在Linux下,用bootlace把启动代码安装到IDE0上主设备的MBR:<pre>bootlace/dev/hda</pre>在Windows NT/2000/XP/2003/Vista下,用grubinst把启动代码安装到第一只硬盘的MBR:<pre>grubinst(hd0)</pre>在Linux/FreeBSD下,用grubinst把启动代码安装到IDE0上主设备的MBR:<pre>grubinst"(hd0)"</pre>注意:grubinst有图形界面grubinst_gui,利用它可以更简单地把启动代码安装到MBR/启动扇区里。
<br>安装启动代码到MBR后,还需要把grldr和menu.lst拷贝到硬盘上任意一个FAT16/FAT32/NTFS/EXT2分区的根目录里。
该方案的优点:•不依赖于操作系统•能够自动搜索硬盘上各个分区的grldr文件从分区启动扇区中启动GRUB4DOS的启动代码也可以安装到某一FAT16/FAT32/NTFS/EXT2分区的启动扇区中。
当从该分区启动时,会引导GRUB4DOS。
grub命令及使用详解
一.全部命令索引:设置图形模式下的背景色。
输出文件的块清单标记。
引导已加载的操作系统或扇区链式加载器。
通过BOOTP初试化网络设备。
显示指定文件的内容。
加载扇区链式加载器。
清屏幕。
比较两个文件, 并且报告两者之间的不同的信息。
改变菜单的颜色。
将指定文件作为配置文件予以加载。
打开/关闭除错模式。
把NUM 项菜单设为缺省值。
声明BIOS驱动器对应的实际物理设备。
通过DHCP初试化网络设备。
显示APM BIOS 的相关信息。
显示GRUB 所判断到的当前系统的内存分布,包括所有物理内存区域。
显示诸多文件的内容。
如果设备是个驱动器, 则将Stage 1.5嵌入到主引导扇区之后。
如果调用当前的菜单项时出现错误,则转移到NUM 项后重试在所有分区上查找文件名, 并显示包含该文件的设备。
如果设置了参数--set-root,则在找到第一个匹配后马上停止,并且把该设备设为根。
指定中文字体文件,并切换到简体中文显示方式。
设置图形模式下的前景色。
切换文件系统的试验模式。
输出驱动器的相关信息。
使用FILE 中的图形菜单。
关闭系统。
显示内部命令的帮助信息。
隐藏菜单。
通过在分区类型上置隐藏标志,隐藏指定分区。
指定IP 地址, 子网掩码, 网关和服务器地址。
不带参数时,将显示当前的网络配置。
通过一些循环操作,侦测出符合Intel 多处理器规范 1.1/1.4的CPUs,以便于发挥其更好的效能。
加载Linux格式的初始化虚拟盘, 并设置必要的参数。
安装STAGE1到指定设备上,安装加载STAGE2需要的块列表到STAGE2上。
侦测指定设备的I/O 端口号。
尝试载入主引导影像文件。
如果用户未被认证,则终止命令的执行。
将root 设备置为活动分区。
对设备进行映射。
产生一个MD5 格式的密码。
对多重启动影像, 加载启动模块文件(不处理该文件的内容,用户必须自己确定核心的要求)。
与'module' 类似, 但是自动禁用了解压缩。
关于grub的学习 20160605121342
关于grub的学习Grub,的出现经常在linux启动出现问题时,会有一个界面grub#,后面可以采用一些命令重新引导系统启动。
Grub有三种,其中学习和使用的时frub for dis(grub4dos)是一个以gnu grub为基础的功能强的引导器,可以在dos和linux下运行,也可以通过其他引导器来运行,还可以作为mbr 运行,grub4dos内置了功能完善的bios级别磁盘仿真。
下面就是使用grub4dos为基础进行说明,gun grub与grub4dos的不同之处,可以在百度中寻找;1.如何安装grub4dos?下载grub4dos后,解压缩后就可以使用了,核心文件有grldr,grldr.mbr,和grub.exe,及menu.lst。
如果需要中文就用chinese子目录中的文件;安装方法4种:将grldr文件复制到c:\,去掉boot.ini的只读属性,然后修改c:\boot.ini文件,在boot.ini 的最后一行加入:C:\grldr=“start grub4dos”并将boot.ini的timeout值设置为大于0的数字,如:timeout=5然后保存并改回只读属性。
编辑boot.ini之前,可以在cmd下输入:Attrib –s –r –h c:\boot.ini解除boot.ini的只读属性,编辑完成后输入Attrib +s +r +h c:\boot.ini恢复boot.ini的原有属性这样,编辑完重启计算机,在nt的启动菜单出现start grub4dos这一个选项,,然后进入即可;此方法的优点是,不行也要修改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。
系统引导管理器GRUB为初学者指南
二、GRUB软件包版本选择和安装;1、GRUB的版本选择,Linux版本的GRUB及Windows版本的GRUB的说明;GRUB不但有Linux版本,也有Windows版本;现我们一一介绍;如前面所说,目前在在Unix类的操作系统中,大多是都有GRUB;GRUB几乎能引导所有X86架构的操作系统;功能之强,使用简单是GRUB最大的卖点;由于Windows 操作系统的先入为主的优势,使得大家对Windows的NTLOADER了解的比较多,而对开源社区的GRUB显得有点寞生,由此而带来使用上的“心理恐惧”;究其初学者对GRUB“恐惧”的主要原因还是对GRUB没有太多的了解和深入;无论是WINGRUB还是Linux版本的GRUB,最方便的还是对GRUB命令行的操作;一谈到命令行(Command)的操作,可能初学者对此恐惧;其实没有什么难的,象北南这样低级的写手,还能操作得起来,您也应该能行;2、GRUB的Windows版本WINGRUB;请参考:《以WINGRUB 引导安装Fedora 4.0 为例,详述用WINGRUB来引导Linux 的安装》3、GRUB的Linux版本软件包的安装;其实对于Linux的GRUB,几乎所有的Linux主流发行版都有打包,如果您安装了Linux,并且在开机后出现GRUB字样的,证明您已经安装了GRUB;而无需再次安装;Linux的GRUB软件包安装部份并不是本文的重点;如果您的Linux系统没有安装GRUB,或者采用的是LILO,而您想用GRUB,可以用系统安装盘自带GRUB软件包来安装,或者到相关发行版本的软件仓库下载后安装;GRUB 的Linux版本目前在各大发行版中都有打包;比如Fedora/Redhat/Centos/Mandrive/Mandriva/SuSE等以RPM包管理机制的系统,可以通过如下的命令来安装;请参考《Fedora / Redhat 软件包管理指南》[root@localhost ~]# rpm -ivh grub*.rpm如果是Slackware 您可以用如下的办法来安装;[root@localhost ~]# installpkg grub*.tgz其它的发行版本请用其自己特色的软件包管理工具来安装;当然您也可以通过源码包,在任何Linux的发行版上安装;至于源码包的安装方法;请参考:《如何编译安装源码包软件》[root@localhost ~]#tar zxvf grub*.tar.gz[root@localhost ~]#cd grub-xxx[root@localhost ~]#./configure;make;make install确认您是否成功安装了GRUB,您可以测试是否有如下两个命令;[root@localhost ~]# grub[root@localhost ~]# grub-install如果您不能找到这两个命令,可能您的可执行程序的路径没有设置;请参考:《设置可执行程序路径》,当然您可以用绝对路径;比如下面的;[root@localhost ~]# /usr/sbin/grub[root@localhost ~]# /usr/sbin/grub-install如果您还是找不到GRUB软件包安装在哪了;您可以用下面的命令来解决和查找;[root@localhost ~]# updatedb 注:这个要花很长时间;是索引slocate 的库,然后再通过locate来查找;[root@localhost ~]# locate grub比如找到的是有类似如下的;[root@localhost ~]# locate grub/sbin/grub-md5-crypt/sbin/grub/sbin/grub-install/sbin/grub-terminfo在一般情况下,在路径中带有bin或sbin中字样的,这些路径下都是可执行程序;sbin 是超级权限用户才能使用的管理命令;要使用这些命令一般的情况下得切换到root用户下才能使用;比如[beinan@localhost ~]$ su - 注:切换到root用户,并且切换到其家目录;Password:[root@localhost ~]#/sbin/grub 注:用绝对路径来运行grub命令;三、在Linux中,GRUB的配置中的安装和写入硬盘的MBR;1、在Linux中,GRUB配置过程中的安装grub-install;grub-install 命令有何用呢?其实就是把我们前面已经安装的软件包中的一些文件复制到/boot/grub中;对于新安装GRUB软件包后,也是一个必经的过程;我们前面所说的GRUB 软件包的安装;而现在我们说的是GRUB配置的过程中的安装;虽然在洋文中都是install ,但表达的意思是不一样的;我们首先要运行fdisk -l 来确认到底是硬盘的标识;这个过程主要是确认硬盘的标识是哪个调备,到底是/dev/hda还是/dev/hdb 还是其它的;[root@localhost ~]# fdisk -lDisk /dev/hda: 80.0 GB, 80026361856 bytes255 heads, 63 sectors/track, 9729 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/hda1 * 1 970 7791493+ 7 HPFS/NTFS/dev/hda2 971 9729 70356667+ 5 Extended/dev/hda5 971 2915 15623181 b W95 FAT32/dev/hda6 2916 4131 9767488+ 83 Linux/dev/hda7 4132 5590 11719386 83 Linux/dev/hda8 5591 6806 9767488+ 83 Linux/dev/hda9 6807 9657 22900626 83 Linux/dev/hda10 9658 9729 578308+ 82 Linux swap / Solaris如果通过fdisk -l 出现有/dev/hda字样的,我们就要用下面的命令来安装;[root@localhost ~]# grub-install /dev/hdaInstallation finished. No error reported.This is the contents of the device map /boot/grub/device.map.Check if this is correct or not. If any of the lines is incorrect,fix it and re-run the script `grub-install'.(fd0) /dev/fd0(hd0) /dev/hda如果是您fdisk -l 出现的有/dev/hdb呢,那就如下运行;[root@localhost ~]# grub-install /dev/hdb如果既有/dev/hda和/dev/hdb 就安装到/dev/hda中;[root@localhost ~]# grub-install /dev/hda值得注意的是如果您有一个/boot分区,应该用如下的办法来安装;[root@localhost ~]#grub-install --root-directory=/boot /dev/hda[root@localhost ~]#grub-install --root-directory=/boot /dev/hdb注解:具体是/dev/hda还是/dev/hdb,请以fdisk -l 为准;如果两个都有,就看您把/boot 分区是放在第一块硬盘还是第二块硬盘上了,以实际情况为准;2、设定GRUB的/boot分区并写入MBR;;在Linux中,GRUB软件包的安装,及在配置过程中安装grub到/boot中还是不够的,还要把GRUB,写入MBR才行;有时我们重新安装了Windows,Windows会把MBR 重写,这样GRUB就消失了;如果您出现这样的情况,就要进行这个过程;[root@localhost ~]# grub会出现grub>提示符,这是grub命令行模式,如果能在开机中出现提示符,没有引导不起来的系统,除非您的系统破坏的极为严重。
GRUB启动引导器完全教程
GRUB启动引导器完全教程GRUB(GNU GRand Unified Bootloader)是一种开源的引导程序,常用于启动多个操作系统的选择菜单。
使用GRUB启动引导器可以实现多操作系统之间的切换,提高系统的灵活性。
下面是一个完整的GRUB启动引导器教程,包括安装、配置和使用指南。
一.安装GRUB1. 首先,确保已经安装了GRUB的依赖项。
在大多数Linux发行版中,可以使用以下命令来安装依赖项:`sudo apt-get install grub``sudo dnf install grub``sudo yum install grub`2. 安装GRUB到硬盘的主引导记录(Master Boot Record,MBR)。
在大多数Linux发行版中,可以使用以下命令:`sudo grub-install /dev/sda`上述命令会将GRUB安装到硬盘的MBR,并在启动时加载它。
二.配置GRUB`sudo nano /etc/default/grub`2.修改配置文件以满足您的需求。
例如,您可以更改默认选择的操作系统、超时时间、背景图像等。
确保在修改文件后保存更改。
3. 更新GRUB的配置文件。
在大多数Linux发行版中,可以使用以下命令:`sudo update-grub`注意:根据不同的发行版,可能需要使用不同的命令来更新GRUB的配置文件。
请查阅您所使用发行版的文档以获取准确的命令。
三.使用GRUB1.重新启动计算机。
在启动时,您将看到GRUB菜单,其中列出了可用的操作系统。
您可以使用上下方向键选择要启动的操作系统。
2. 如果想要强制进入GRUB菜单,可以按住Shift键(在大多数系统中)或Esc键(在一些系统中)。
4.如果您希望更改GRUB菜单的外观,可以更改配置文件中的背景图片、文本颜色等。
您可以在互联网上找到许多可用的GRUB主题,并按照其说明进行安装和配置。
总结:GRUB启动引导器是一种强大的工具,可以让您轻松地选择并启动不同的操作系统。
grub教程
一. GRUB的技术特点:1. 支持多可执行文件格式GRUB支持各种a.out格式和ELF格式。
2. 支持不符合Multiboot标准的内核GRUB能够直接支持多种并不符合Multiboot标准的自由操作系统内核(主要是FreeBSD,NetBSD,OpenBSD和linux)。
也能通过chainload间接引导非开放的其他操作系统。
3. 支持操作系统模块装载。
4. 提供文本格式可手工修改的配置文件。
5. 菜单界面6. 灵活的命令行界面7. 多文件系统识别能够透明地识别多种文件系统,现在能够识别的文件系统有BSD FFS,DOS FA T16,FA T32和Linux ext2fs.这个范围仍然在扩展。
8. 支持压缩文件的解压缩。
能够解压缩被gzip压缩的文件,并且这个识别和解压过程是自动的和对用户透明的,这个功能大大地减少了文件的大小,减少了load的时间,这个功能对于软盘上的系统尤其有用。
可能有些内核模块在装载时要求是压缩状态,这时解压此模块可能会画蛇添足,所以GRUB提供了另一不进行解压缩的模块装载命令。
9. 可以读取任何已安装的设备上的数据支持读取软盘,硬盘上的数据,不依赖于根设备上任何的设置。
10. 和磁盘定位的表示方法无关。
11. 能够使用BIOS所检测到的所有RAM.GRUB通常能够找到PC兼容机上的全部RAM,它采用一种先进的BIOS查询技术来找到所有的内存空间。
12. 支持硬盘的LBA模式GRUB通过支持LBA模式,突破1024柱面的限制,能够访问8GB以外的全部硬盘空间。
13. 支持网络虽然GRUB是一个基于磁盘的引导程序,但是它也支持网络功能,你可以通过TFTP 协议从网络上得到操作系统映象文件并引导。
GRUB的后继版本可能会包括一个内置的可编程语言来支持各种内核的引导参数,这还只是一个操作系统引导器吗?;),并且计划加入对非PC体系结构的支持。
下载并安装GRUB下载GRUB包你可以到<ftp:///gnu/grub/grub-0.5.94.tar.gz>;得到GRUB,然后:zcat grub-0.5.94.tar.gz | tar xvf -会生成一个目录grub-0.5.94,再:cd grub-0.5.94./configuremake install这样GRUB就安装好了,下面你需要在你的硬盘或者软盘引导区上安装GRUB引导代码。
GRUB使用说明(一)
赛迪网编者按:文章中涉及的内容有些陈旧,不过原理方面阐述的还算清晰,希望大家能够温故而知新,从中学到实用的东西】从Red Hat Linux 7.2起,GRUB(GRand Unified Bootloader)取代LILO成为了默认的启动装载程序。
相信LILO对于大家来说都是很熟悉的。
这次Red Hat Linux用GRUB代替LILO,可见GRUB大有过人之处。
不过,相对于LILO来说,大家对GRUB还是要陌生一些。
本文将对GRUB的基本情况、术语、接口、命令以及配置文件做个介绍,希望对大家有所帮助。
一、GRUB的概述在Red Hat linux装载一个系统前,它必须由一个引导装载程序(boot loader,启动管理程序)中的特定指令告诉它去引导系统。
这个程序一般是位于系统的主硬盘驱动器或是其他知道如何去开始linux内核的媒介驱动器上。
如果说一个x86系统只安装了Red Hat Linux而且只有一个版本的linux内核,那么通过引导装载程序开始Red Hat Linux的特定过程就不重要了。
Red Hat Linux安装程序允许用户快速方便地配置引导装载程序存放在主硬盘驱动的主引导记录中来引导操作系统。
然而,为了能从多个linux内核或其他操作系统引导,那么就很有必要了解Red hat linux用于提供必要的引导选项的方法,以及理解引导的过程与如何去改变。
本文是讨论GRUB,它是Red Hat Linux用来在x86系统上装载操作系统的默认方法。
同时,本文也将详细介绍用于控制引导过程的各种命令和配置选项。
GRUB的定义GNU GRUB(GRand Unified Bootloader)是一个将引导装载程序安装到主引导记录的程序,主引导记录是位于一个硬盘开始的扇区。
它允许位于主引导记录区中特定的指令来装载一个GRUB菜单或是GRUB的命令环境。
这使得用户能够开始操作系统的选择,在内核引导时传递特定指令给内核,或是在内核引导前确定一些系统参数(如可用的RAM大小)。
GRUB入门
GRUB入门教程==============================目录:1. 教程提示2. GRUB 基础3. 安装GRUB4. 使用GRUB5. GRUB 内幕6. 总结==============================第一章教程提示我应该学习这门教程吗?本教程向您显示如何安装和使用GRUB (Grand Unified Boot Loader)。
就像LILO 一样,GRUB 允许引导Linux 系统,它负责装入和引导内核。
但与LILO 不同,GRUB 的功能非常多,更易于使用,更可靠和灵活,而且非常小巧。
如果已经有些熟悉LILO,并了解了磁盘分区的基本知识,那么您就掌握了学习本教程应具备的预备知识。
通过学习本教程和安装GRUB 之后,您将改进Linux 系统的可靠性和可用性。
如果只是想尝试GRUB,可以学习本教程的前半部分,并制作GRUB 引导盘,然后练习使用它来引导系统。
这样做以后,您将学会在紧急情况下如何使用GRUB 来引导系统。
但是,如果想更深入地体验GRUB,可以学完整个教程,它将为您演示如何将GRUB 设置成缺省引导装入器。
第二章GRUB 基础什么是GRUB?GRUB 是引导装入器-- 它负责装入内核并引导Linux 系统。
GRUB 还可以引导其它操作系统,如FreeBSD、NetBSD、OpenBSD、GNU HURD 和DOS,以及Windows 95、98、NT 和2000。
尽管引导操作系统看上去是件平凡且琐碎的任务,但它实际上很重要。
如果引导装入器不能很好地完成工作或者不具有弹性,那么就可能锁住系统,而无法引导计算机。
另外,好的引导装入器可以给您灵活性,让您可以在计算机上安装多个操作系统,而不必处理不必要的麻烦。
GRUB 很棒幸好,GRUB 是一个很棒的引导装入器。
它有许多功能,可以使引导过程变得非常可靠。
例如,它可以直接从FAT、minix、FFS、ext2 或ReiserFS 分区读取Linux 内核。
grub 命令
grub 命令GRUB 命令GRUB(GNU GRand Unified Bootloader)是一种开源的多操作系统引导程序,广泛用于多操作系统环境下的引导过程。
GRUB 允许用户选择要启动的操作系统,以及在启动期间执行各种系统管理任务。
本文将介绍一些常用的 GRUB 命令,以便用户更好地理解和使用这个强大的引导程序。
1. 基本语法GRUB 命令的基本语法如下:```command [option(s)] [argument(s)]```其中,command 是要执行的GRUB 命令,option 是可选的选项,argument 是命令的参数。
2. 常用命令2.1 boot这个命令用于启动选定的操作系统。
它的基本语法如下:```boot```使用该命令会启动默认操作系统,即 GRUB 配置文件中设置的默认操作系统。
如果想要启动其他操作系统,可以使用下面的方式:```boot <menu_entry>```其中,`<menu_entry>` 是 GRUB 菜单中操作系统的编号或标签。
2.2 findfind 命令可以在文件系统中搜索指定文件。
它的基本语法如下:```find <filename>```这个命令会在 GRUB 的文件系统中搜索指定的文件名,并返回文件路径。
例如,要查找名为 vmlinuz 的文件,可以输入以下命令:```find vmlinuz```2.3 rootroot 命令用于设置根文件系统。
它的基本语法如下:```root <partition>```其中,`<partition>` 是指向操作系统根目录的分区路径。
例如,假设 GRUB 的设备为 (hd0,1),要设置根文件系统为该设备上的第一个分区,可以执行以下命令:```root (hd0,1)```2.4 kernelkernel 命令用于指定要加载的内核文件。
教你如何学习GRUB[转]Unix系统 电脑资料
教你如何学习GRUB[转]Unix系统电脑资料:blog.chinaunix./article.php?articleId=34406blogId=7635 前天恢复我的RH8,一年多了,没时间管她,:blog.chinaunix./article.php?articleId=34406&blogId=7635 前天恢复我的RH8,一年多了,没时间管她。
心血来潮想好好学习一下。
结果,终于让我用SIR上介结的法子把我的MBR给弄挂了。
搜集了几年的好东东就在几条命令后牺牲了。
痛定思痛,是该好好学习的时候了。
---BY SHELL:.linuxdiyf./forumdisplay.php?fid=3&page=11 首先要了解的几个概念1.1 启动器1.2 什么是GRUB?grub 是一个多重启动管理器。
grub是clearcase/"target="blank" >9999">GRand Unified Bootloader的缩写,它可以在多个操作系统共存时选择引导哪个系统。
它可以引导的操作系统包括:Linux,FreeBSD,Solaris,NetBSD,BeOSi,OS/2,Windows95/98,Window s NT,Windows2000,WinXP。
它可以载入操作系统的内核和初始化操作系统(如Linux,FreeBSD),或者把引导权交给操作系统(如Windows 98)来完成引导。
1.3 GRUB的特点特别适用于linux与其它操作系统共存情况。
支持大硬盘现在大多数Linux发行版本的lilo都有同样的一个问题:根分区(/boot分区)不能分在超过1024柱面的地方,一般是在8.4G左右的地方,否那么lilo不能安装,或者安装后不能正确引导系统。
而grub就不会出现这种情况,只要安装时你的大硬盘是在LBA模式下,grub就可以引导根分区在8G以外的操作系统。
第6讲GRUB启动管理器
命令格式:#password 口令字 //为GRUB 旳开启菜单和菜单项设置口令
设置全局口令(设置GRUB旳全局口令为12345) password12345
GRUB开启引导器
GRUB简介 安装GRUB Grub旳操作界面 GRUB旳配置文件grub.conf GRUB旳安全设置 GRUB旳配置使用技巧
GRUB简介
1、grub与开启引导器
开启引导器是计算机开启过程中运营旳第一种真正旳软件,一般计算机 开启时在经过BIOS自检后读取并运营硬盘旳主引导扇中旳开启引导器程 序,开启引导器再负责加载开启硬盘分区中旳操作系统。
b:开启目前旳菜单项 e:编辑目前选中旳行 c:进入GRUB旳命令行方式 o:在目前行背面插入一行 O:在目前行前面插入一行 d:删除目前行 Esc:返回GRUB开启菜单界面,取消对目前开启菜单项所做旳任何修改:
GRUB旳操作界面
3、GRUB命令行界面 Guub命令行界面提供了以便友好旳命令行交互方式,其 特点涉及:
在开启菜单项间移动 Enter:开启目前旳菜单项 e:编辑目前旳开启菜单项 a:添加内核旳开启参数 c:单项编辑界面 在此模式下能够对GRUB配置文件中已经存在旳开启项做进 一步旳调整. 例如:对既有行进行编辑、添加删除命令行。
GRUB开启菜单编辑界面按键: 选择菜单项中旳行
能从非活动分区开启) chainloader:使用chainloader命令调用windows分区旳
开启引导器引导windows系统
GRUB旳安全设置
主要功能: 能够针对开启菜单设置全局口令 可对某菜单项使用全局口令 可对某菜单项设置独立口令 对全部旳口令都能够使用MD5进行加密
grub2基础教程
按e进入己选择菜单的编辑状态,在编辑状态下,由上下左右箭号来移动光标,enter键换行,ctrl+x以编辑的内容启动,ctrl+c进命令行状态,按Esc退出,回到菜单项。
在需要使用额外的内核参数启动时,比如要加上acpi=off时,把光标移动到linux这一行最后,在splash后加上一空格再输入acpi=off,然后按ctrl+x启动。
按c进入命令行状态,按Tab键可查看所有可用的命令。
在命令行状态,可以根据需要加载或移除相应模块,也可用来启动在菜单没有显现的的系统。
比如,在第一硬盘的第一分区上装有windows xp系统,但在菜单上没显示出来,我们可以命令行状态下输入命令启动:grub>set root=(hd0,1)grub>chainloader +1grub>boot又比如启动第二硬盘第一逻辑分区上的ubuntu系统:grub>set root=(hd1,5)grub>linux /boot/vmlinuz-xxx-xxx root=/dev/sdb5grub>initrd /boot/initrd.img-xxx-xxxgrub>boot其中内核vmlinuz和initrd.img的版本号可用按Tab键自动查看。
2、下面介绍下在grub2中一些常用的命令1)help查看命令用法,如help search:查看search命令详细用法2)set设置变量值,如set default=0set timeout=5set root=(hd0,3)等等需要调用变量AA的值时,使用${AA},如set root=(hd1,1),则${root}=(hd1,1)3)default定义默认引导的操作系统。
0表示第一个操作系统,1表示第2个,依此类推4)timeout定义在时间内用户没有按下键盘上的某个按键,自动引导default指定的操作系统。
5)root指定用于启动系统的分区。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用 GRUB 引导系统之前,需要知道一些信息。首先,应知道哪个分区保存了 Linux 内核,以及 root 文件系统的分区名称。然后,应查看现有 LILO 配置来寻找需要传递给内核的变量,如 "mem=128M"。一旦获取了这些信息,就可以开始了。 启动 GRUB 要启动 GRUB,需要关闭系统并退出引导盘。如果由于某些原因而不能立即关闭系统(比如上班时在部门的服务器上测试 GRUB),那么只要在提示中输入 "grub" 并继续操作。所有程序的运行情况都不会改变,只是您不能执行引导(因为 Linux 正在运行)。 首次接触 装入引导盘时,在屏幕顶部将出现一条消息,告诉您正在装入第一阶段和第二阶段。几秒后,将会出现一个熟悉的屏幕,显示如下: GRUB version 0.5.96.1 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> 可以看到,这些内容与在 Linux 中以驻留方式运行 GRUB 时出现的消息完全相同 -- 只不过现在我们是使用 GRUB 来引导 Linux。 "root" 在 Linux 中,当谈到 "root" 文件系统时,通常是指主 Linux 分区。但是,GRUB 有它自己的 root 分区定义。GRUB 的 root 分区是保存 Linux 内核的分区。这可能是您的正式 root 文件系统,也可能不是。例如,在 Gentoo Linux 中,有一个单独的小分区专用于保存 Linux 内核与引导信息。大多数情况下,我们不安装这个分区,这样在系统意外崩溃或重新引导时,就不会把它弄乱。 这些,我们讨论的是 GRUB,需要指定 GRUB 的 root 分区。进入 root 分区时,GRUB 将把这个分区安装成只读型,这样就可以从该分区中装入 Linux 内核。GRUB 的一个很"酷"的功能是它可以读取本机的 FAT、FFS、minix、ext2 和 ReiserFS 分区,我们很快就会讨论这个功能。但现在,让我们输入 root 分区。在提示中输入 root,但不要按 Enter 键: grub> root ( 现在,按一次 Tab 键。如果系统中有多个硬盘,GRUB 将显示可能完成的列表,从 "hd0" 开始。如果只有一个硬盘,GRUB 将插入 "hd0,"。如果有多个硬盘,继续进行,在 ("hd2") 中输入名称并在名称后紧跟着输入逗号,但不要按 Enter 键。部分完成的 root 命令看起来如下: grub> root (hd0, 现在,继续操作,再按一次 Tab 键。GRUB 将显示特定硬盘上所有分区的列表,以及它们的文件系统类型。在我的系统中,按 Tab 键时得到以下列表: grub> root (hd0, (tab) Possible partitions are: Partition num: 0, Filesystem type is ext2fs, partition type 0x83 Partition num: 1, Filesystem type unknown, partition type 0x82 Partition num: 2, Filesystem type unknown, partition type 0x7 Partition num: 4, Filesystem type is reiserfs, partition type 0x83 Partition num: 5, Filesystem type is reiserfs, partition type 0x83 如您所见,GRUB 的交互式硬盘和分区名称实现功能非常有条理。这些,只需要好好理解 GRUB 新奇的硬盘和分区命名语法,然后就可以继续操作了。 GRUB 命名约定 到目前为止,您可能会感到一点困惑,因为 GRUB 所使用的硬盘/分区命名约定与 Linux 使用的命名约定不同。在 Linux 中,第一个硬盘的第五个分区称作 "hda5"。而 GRUB 把这个分区称作 "(hd0,4)"。GRUB 对硬盘和分区的编号都是从 0 开始计算。另外,硬盘和分区都用逗号分隔,整个表达式用括号括起。现在,回来看一下 GRUB 提示,可以发现如果要引导 Linux 硬盘 hda5,应输入 "root (hd0,4)"。如果已经明白了 GRUB 硬盘/分区命名,您也许要调整当前 root 命令行,以使它指向保存 Linux 内核的分区。按以下格式输完命令,然后按 Enter 键: grub> root (hd0,4) (hit enter) Filesystem type is reiserfs, partition type 0x83 装入内核 现在已安装了 root 文件系统,到装入内核的时候了。在 GRUB 提示中,依次输入 "kernel"、空格、到内核的路径、空格、内核参数,如 root 参数(GRUB 将自动插入适当的 "mem=" 参数)。我在我的系统中输入: grub> kernel /boot/bz2.4 root=/dev/hda5 [Linux-bzImage, setup=0x1200, size=0xe1a30] 请留意 "root=" 内核参数,它非常重要。它应该指向保存 root 文件系统的 Linux 分区。您也许要写下到目前为止输入的命令,这样在教程后面讲述如何创建 GRUB 引导菜单时,就可以迅速找到它们。 Root,内核,引导! 您已经安装了 root 文件系统并装入了内核。现在,可以引导了。只要输入 "boot",Linux 引导过程就将开始。
第三章 安装 GRUB
下载 GRUB 要开始探究 GRUB 的精妙之处,首先需要下载、编译和安装它。但不要害怕 -- 根本不会修改您的引导记录 -- 我们只是要编译和安装 GRUB,就像其它程序一样,在此过程中我们可以创建 GRUB 引导盘。请不要担心;在修改引导过程之前,我会告诉您。 现在开始。访问 ftp:///gnu/grub/ 并下载可以找到的最新版本的 GRUB tar 压缩包。我编写本教程时,最新的 tar 压缩包是 grub-0.5.96.1.tar.gz。下载了最新版本后,就可以安装了。 安装期 这里是从 tar 压缩包安装 GRUB 所需输入的命令。我将在 /tmp 中编译源文件,并将所有部分都安装到硬盘的 /usr 目录下。从 root 用户,输入以下命令: # cd /tmp # tar xzvf /path/to/archive/here/grub-0.5.96.1.tar.gz # cd grub-0.5.96.1 # ./configure --prefix=/usr # make # make install 现在已经安装了 GRUB,准备开始使用它。 制作引导盘 要制作引导盘,需执行一些简单的步骤。首先,在新的软盘上创建 ext2 文件系统。然后,将其安装,并将一些 GRUB 文件复制到该文件系统,最后运行 "grub" 程序,它将负责设置软盘的引导扇区。准备好了吗? 好,将一张空盘插入 1.44MB 软驱,输入: # mke2fs /dev/fd0 创建了 ext2 文件系统后,需要安装该文件系统: # mount /dev/fd0 /mnt/floppy 现在,需要创建一些目录,并将一些关键文件(原先安装 GRUB 时已安装了这些文件)复制到软盘: # mkdir /mnt/floppy/boot # mkdir /mnt/floppy/boot/grub # cp /usr/share/grub/i386-pc/stage1 /mnt/floppy/boot/grub # cp /usr/share/grub/i386-pc/stage2 /mnt/floppy/boot/grub 只需要再有一个步骤,就能得到用的引导盘。 解压、编译和安装 GRUB 源 tar压缩包时,会将程序 grub 放到 /usr/sbin 中。该程序非常有趣并值得注意,因为它实际上是 GRUB 引导装入器的半功能性版本。是的,尽管 Linux 已经启动并正在运行,您仍可以运行 GRUB 并执行某些任务,而且其界面与使用 GRUB 引导盘或将 GRUB 安装到硬盘 MBR 时看到的界面完全相同。 这是有趣的设计策略,现在该使用驻留版本的 GRUB 来设置引导盘的引导扇区了。从 root 用户,输入 "grub"。GRUB 控制台将启动,显示如下: GRUB version 0.5.96.1 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> 欢迎使用 GRUB 控制台。现在,研究命令。 在 grub> 提示符处,输入: grub> root (fd0) grub> setup (fd0) grub> quit 现在,引导盘完成了。在继续下一步骤之前,在看一下刚才输入的命令。第一个 "root" 命令告诉 GRUB 到哪里查找辅助文件 stage1 和 stage2。缺省情况下,GRUB 会在指定的分区或磁盘上的 /boot/grub 目录中进行查找。在安装引导盘时,也就是几分钟以前,我们已将这些文件复制到正确的位置。接着,输入了 setup 命令,它告诉 GRUB 将引导装入器安装到软盘的引导记录上;我们将在以后详细讨论这一过程。然后退出。现在,已经制作好引导盘,可以开始使用 GRUB 了。