引导管理器介绍
NTLOADER是Windows系统的启动引导管理器,Windows安装时,系统会自动安装该引导管理器,好像用户没有办法选择不安装。Grub是目前多数Linux系统所采用的启动引导管理器,系统安装时会提示用户选择安装该引导管理器 MBR(主引导记录)上,或是安装在系统的boot区上,或者是不安装。NTLOADER和Grub除了可以各自引导相应的系统启动外,两者之间还可以互相引导,这就使得了两种不同的系统通过合理地引导而共存于同一机器上,也就是我们所说的安装多个系统。
NELOADER和Grub可以互相引导,我们就可以合理安装两种引导管理器,以达到符合个人自己的习惯。习惯于Linux的用户通常都会把Grub安装于MBR上,通过Grub->NTLOADER->Windows的方式进入Windows系统。习惯于windows的用户,还是觉得原来的Windows开机画面用起来称手,在该画面上选择相应的Linux菜单进入Linux系统会感到自然些,也就是NTLOADER->Grub->Linux方式进入Linux系统。
Grub介绍
GRUB(GRand Unified Bootloader)是一个默认安装的功能强大的引导装载程序。引导装载程序是计算机启动时所运行的第一个软件,它的责任是载入操作系统内核软件并把控制转交给它,然后,内核软件再初始化剩余的操作系统。GRUB能够通过连锁载入另一个引导装载程序来载入多种操作系统,包括DOS,Windows和Linux等。
GRUB支持直接和链式装载的引导方法。GRUB能用于几乎所有操作系统,绝大多数流行的文件系统,以及几乎所有的系统BIOS所能识别的硬盘。
grub的作用:完成多系统的引导配置,测试引用新的linux内核,只需在grub中添加对新内核的引导项即可等
关于root
在 Linux 中,当谈到 "root" 文件系统时,通常是指主 Linux 分区。但是,GRUB的根文件系统与Linux的根文件系统是没有关系的,GRUB 有它自己的 root 分区定义。GRUB 的 root 分区是保存 Linux 内核的分区。
GRUB的根文件系统是用于一个特定设备的根分区。GRUB使用这个信息来挂入(mount)这个设备并从它上面载入文件。在Red Hat Linux中,一旦GRUB载入它自己的包含Linux内核的根分区,那么kernel命令就可以将内核文件的位置作为一个选项来执行。一旦Linux内核引导,它就设定自己的根文件系统,此时的根文件系统Linux系统的根分区了。最初的GRUB根文件系统以及它的挂入都被去掉,它们仅存在 于用来引导内核文件。
grub>root(hdx,0) 指定boot所在分区 , 硬盘和分区均可用tab 补全 ,其设备和分区的编号都是从0开始, 相对于linux 系统命名减1
grub>kernel /boot/.. root=/dev/hda1
grub>boot
grub 与linux 磁盘设备命名方式
grub 命名
grub 命令方式参照 bios 的命令方式,所有的硬盘都是用hd开始。软盘用fd开头,后跟数字(以0开始标识第一个设备)
grub 对设备的引用
e.g. hd0,指第一个硬盘驱动器
(hd0,0)指第一个硬盘驱动器的第一个分区
(hd1,4) 第二个硬盘驱动器上的第5个分区(第一个逻辑分区)
grub绝对文件名引用文件:(hd0,0)/path/to/file
Linux设备命名
硬盘设备以hd(IDE 接口)和sd(scsi 接口)开头,其后跟字符以标识多个设备(以a开始标识第一个设备,对一个硬盘的不同分区则用数字编号进行分区,4个主分区用1,2,3,4标识。逻辑分区始终从5开始依次编号。
e.g. sda1:第一sd硬盘的第一个主分区
sda7 ,第一个sd硬盘的编号为7的分区(编号大于4的是逻辑分区)
grub的模式
安全模式提供引导选项
输入密码即可切换到基本模式,基本模式又包含以下三种模式:
编辑模式:对现有配置 编辑
附加模式:创建新的菜单项
命令模式:进入grub shell命令交互模式
Grub 安装
grub 配置/boot/grub/grub.conf
grub 可安装 在MBR或是分区之中:grub >setup (hd0)
获取grub 包
默认安装:rpm -ivh grub*.rpm
安装至硬盘MBR:/sbin/grub-install /dev/sda (执行重新安装可以恢复grub)
也可以安装至指定分区:/sbin/grub-install /dev/had1
安装至/boot 分区:grub-install --root-directory=/boot /dev/hda
winxp下安装grub
boot.ini中添加引导项安装grub,复制grub相关文件()至C盘
C:\grldr="Grub4dos"
trouble shooting
grub手动引导进入 windows
Grub>rootnoverify (hd0,0)
Grub>makactive
Grub>chainloader +1
Grub>boot
Linux 光盘引导修复
boot: linux rescue 进入rescue 模式,
chroot /mnt/sysp_w_picpath
vi /boot/grub/grub.conf
安装windows和linux后,grub 引导修复
window 引导 进入grub4dos
find /grub/stage1 #找到grub的安装分区
root (hdx,y) #指定grub安装分区为root
setup (hd0) #安装grub至MBR ,也可安装到指定分区
修改menu.lst的引导菜单,引导又系统
可以进入grub 时的引导修复
直接由RHEL 6.1 中进入grub 引导
或者安装grub4dos 引导进入RHEL6 安装, Grub 写入MBR
手动RHEL 6安装引导
kernel (hd0,0)/vmlinuz*
initrd (hd0,0)/initrd*
boot
添加winxp 引导
title winxp
rootnoverify (hd0,0)
chainloader +1
window下用grub4dos引导安装linux
用grub引导镜像
C:\grub
menu.lst
#install Linux Option
title install Linux
kernel (hd0,)/
initrd (hd0,)/
设置grub 引导,修改root 密码
忘记root密码,从单用户模式进入修改root 密码
grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
修改成
grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 single quiet
启动
用passwd 修改前sentenforce 0 关闭selinux
或者echo "redhat" |passwd root --stdin
MBR中的Grub被覆盖或是清除后的恢复
grub> find /boot/grub/stage1
(hd0,6)
grub>root (hd0,6) 注:设定grub root 分区 , 这是/boot所在的分区 ;
grub>setup (hd0) 注:把GRUB写到MBR上;
grub.conf 文件丢失后的完全重写
用fdisk -l ;df -lh ;more /etc/fstab来确认分区情况;
查看内核vmlinuz的和initrd文件名的全称
ls -lh /boot/vmlinuz*
ls -lh /boot/initrd*
则menu.lst的文件内容可以写为
default=0
timeout=5
title FC4
root (hd0,6)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ (或者root=/dev/hda7)
initrd /boot/initrd-2.6.11-1.1369_FC4.img
相关资源下载