GNU GRUB 和GRUB是GRand Unified Bootloader的缩写,它是一个多重操作系统启动管理器。用来引导不同系统,如windows,linux。
在X86架构的机器中,Linux、BSD 或其它Unix类的操作系统中GRUB、LILO 是大家最为常用,应该说是主流。
在PowerPC 架构的机器中,如果安装了Linux的Powerpc 版本,大多是用yaboot 多重引导管理器,比如Apple机用的是IBM PowerPC处理器,所以在如果想在Apple机上,安装Macos 和Linux Powerpc 版本,大多是用yaboot来引导多个操作系统。
因为X86架构的机器仍是主流, 所以目前GRUB和LILO 仍然是我们最常用的多重操作系统引导管理器。
安装grub
GRUB的一个重要的特性是安装它不需依附一个操作系统;但是,这种安装需要一个Linux副本。由于单独工作,GRUB实质上是一个微型系统,通过链式启动的方式,它可以启动所有安装的主流操作系统。
与LILO不同,修改GRUB的配置文件后,不必把GRUB重新安装到MBR或者某个分区中。
在Linux中,“grub-install”命令是用来把GRUB的步骤1安装到MBR或者分区中的。GRUB的配置文件、步骤2以及其它文件必须安装到某个可用的分区中。如果这些文件或者分区不可用,步骤1将把用户留在命令行界面。
GRUB配置文件的文件名和位置随系统的不同而不同;如在Debian和OpenSUSE中,这个文件为/boot/grub/menu.lst, 而在Fedora和Gentoo中为/boot/grub/grub.conf。Fedora提供了一个从/etc/grub.conf到/boot/grub/grub.conf的符号链接。
除了硬盘外,GRUB也可安装到光盘、软盘和闪存盘等移动介质中,这样就可以带起一台无法从硬盘启动的系统。
设备名称
IDE硬盘用hd开始,SCSI硬盘用sd开头。软盘用fd开头。命名和linux不大一样。是从0算起。
(hd0,0)。表示C盘。
(hd0,4)。表示D盘。当然这里指的是(第一个逻辑分区,如果D盘也是主分区,应该写成hd0,1)
系统的第一个硬盘驱动器表示成(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
在Linux系统中,如ubuntu,(hdx,y)中的y是从1开始计数的。第一逻辑分区用(hd0,5),第二逻辑分区用(hd0,6)来表示
命令接口
以下是几个常用命令:
boot - 引导先前已经被指定并载入的操作系统或链式装载程序。
chainloader - 将指定的文件作为一个链式装载程序载入。为了获取在一个指定分区第一 扇区内的文件,使用+1作为文件名。
displaymem - 显示当前内存的使用情况,这个信息是基于BIOS的。这个命令有助于确定系统在引导前有多少内存。
initrd - 使用户能够指定一个在引导时可用的初始RAM盘。当内核为了完全引导而需要某些模块时,这是必需的。
install p - 安装GRUB到系统的主引导记录。这个命令允许系统重启时出现GRUB接口。
(警告:install命令将覆盖主引导扇区中的其他信息。如果命令被执行,那么除了GRUB信息之外的其他用于引导其他操作系统的信息都将丢失。在执行这条命令前,确定你对它有正确的了解。)
kernel - 当使用直接载入方式引导操作系统时,kernel命令指定内核从GRUB的根文件系统中载入 。
比如 kernel /vmlinuz root=/dev/hda5
Vmlinuz是内核。。它从GRUB的根文件系统载入的,如(hd0,0)。同时,后面一个选项被传给内核。它指出当Linux内核载入时,内核的根文件系统应该是位于hda5,第一个IDE硬盘的第五个分区。
color - 设定在菜单中使用的颜色,
一种是作为前景色,一种作为背景色。可以简单地使用颜色名称,如red/black。比如:
color red/black green/blue
default - 默认项目的标题名称。如果菜单接口超时,那它将被载入。
fallback - 当这个命令被使用时,如果第一次尝试失败,那么这个项目的标题名称将被使用。
hiddenmenu - 这个命令被使用时,它不显示GRUB菜单接口,在超时时间过期后载入默认项。用户通过按[Esc]键,可以看到标准的GRUB菜单。
timeout - 这个命令设定了在GRUB载入由default命令指定的项目的时间间隔,以秒为单位。
splashimage - 它指定在GRUB引导时所使用的屏幕图像的位置。
title - 设定用来装载一个操作系统的一组特定命令的标题。
字符#用来在菜单配置文件放置注释。
有时候grub出现问题,不能通过启动选项启动目标操作系统,以启动一个linux为例
按c键切换到命令行模式
grub> root (hd0,0) 设置根目录为第一硬盘的第一个分区
grub> kernel /boot/vmlinuz 设置内核文件,有的linux发行版会有一个名为wmlinuz的软连接指 向真正的内核文件
grub> initrd /boot/initrd 设置initrd文件,也有可能用软连接代替真正的文件名
grub> boot (hd0,0) 从硬盘启动
以上命令可以用tab键补全 根据实际情况有所不同
1.本文章来自:奇秀网 作者:信息歌 ID:1553
2.奇秀网(www.51818.net)、奇秀云以不刊登或爆料任何新闻内容,所有内容均为转载,版权归发布者(或发布单位)所有
3.如果涉及侵权请尽快告知,我们将会在第一时间删除。
4.文章观点不代表本网站立场,如需处理请联系客服。本站内容未经允许不得转载,或转载时需注明出处:奇秀网
THE END.
上一个文章:GRUB4DOS常命令的详细介绍
GRUB4DOS是一个优秀的双(多)系统引导软件,是 GNU GRUB 的一个分支,作为GNU GRUB启动引导程序的扩充,grub4dos将焦点放在兼容性上。这体现在这几个方面上
下一个文章:2017微信数据报告:月线下支付次数较去年增长280%
刚刚,微信在腾讯全球合作伙伴大会上发布了《2017 微信数据报告》。一起来看看,在即将过去的 2017 年里,你的微信生活是什么样的?