Grub2 编辑所需的安装与启动实现

运维 系统运维
安装ubuntu9.10时,grub默认安装在第一硬盘(hd0)的mbr,其实就是把引导文件boot.img写入硬盘的mbr,当然,用户也可以选择不写入硬盘mbr而是写入linux分区的引导扇区。

启动时根据mbr所提供信息找到启动分区后,加载分区内的grub核心文件core.img和配置文件grub.cfg,进入选择菜单画面,在菜单画面,按上下箭号选择需要系统菜单项,按Enter进入选项。

1、按e进入己选择菜单的编辑状态,在编辑状态下,由上下左右箭号来移动光标,enter键换行,ctrl+x以编辑的内容启动,ctrl+c进命令行状态,按Esc退出,回到菜单项。
在需要使用额外的内核参数启动时,比如要加上acpi=off时,把光标移动到linux这一行***,在splash后加上一空格再输入acpi=off,然后按ctrl+x启动。

按c进入命令行状态,按Tab键可查看所有可用的命令。

在命令行状态,可以根据需要加载或移除相应模块,也可用来启动在菜单没有显现的的系统。
比如,在***硬盘的***分区上装有windowsxp系统,但在菜单上没显示出来,我们可以命令行状态下输入命令启动:
grub>setroot=(hd0,1)
grub>chainloader+1
grub>boot

又比如启动第二硬盘***逻辑分区上的ubuntu系统:
 

  1. http://msnpiki.msnfanatic.com/index.php/Main_Page--> 
  2. x;margin-bottom:0px;margin-left:0px;font-family:Arial;">grub>setroot=(hd1,5)  
  3. grub>linux/boot/vmlinuz-xxx-xxxroot=/dev/sdb5  
  4. grub>initrd/boot/initrd.img-xxx-xxx  
  5. grub>boot 

其中内核vmlinuz和initrd.img的版本号可用按Tab键自动查看。

2、下面介绍下在Grub2 编辑中一些常用的命令

1)help
查看命令用法,如
helpsearch:查看search命令详细用法
2)set
设置变量值,如
setdefault=0
settimeout=5
setroot=(hd0,3)等等
需要调用变量AA的值时,使用${AA},如setroot=(hd1,1),则${root}=(hd1,1)
3)default
定义默认引导的操作系统。0表示***个操作系统,1表示第2个,依此类推
4)timeout
定义在时间内用户没有按下键盘上的某个按键,自动引导default指定的操作系统。
5)root
指定用于启动系统的分区。
6)insmod和rmmod
加载或移除某模块,如
insmodjpeg
insmodpng
insmodntfs
rmodpng

7)drivemap
drivemap兼容grub的map,主要用于只能从***硬盘(hd0)引导启动的系统如win2000xp2003,比如要添加第二硬盘***分区上的xp系统:
menuentry"WindowsXP"{
setroot=(hd1,1)
drivemap-s(hd0)${root}
chainloader+1
}
8)ls
列出当前的所有设备。如(hd0),(hd0,1),(hd0,5),(hd1),(hd1,1),(hd1,2)等
ls-l
详细列出当前的所有设备。对于分区,会显示其label及uuid。
ls/
列出当前设为root的分区下的文件
ls(hd1,1)/
列出(hd1,1)分区根目录的文件
9)search
search-f/ntldr
列出根目录里包含ntldr文件的分区,返回为分区号
search-lLINUX
搜索label是LINUX的分区。
search--set-f/ntldr
搜索根目录包含ntldr文件的分区并设为root,注意如果多个分区含有ntldr文件,

set失去作用。
>10)loopback
loopback命令可用于建立回放设备,如
loopbacklo0(hd1,1)/abc.iso
可以使用lo0设备来访问abc.iso里的内容,比如说,可以从abc.iso里的软盘映像中启动
loopbacklo0(hd1,1)/aa.iso
linux(lo0)/memdisk
initrd(lo0)/abc.img
要删除某一回放设备,可以使用-d参数:
loopback-dlo0
11)pager
分页显示。
setpager=1
显示满一页时暂停,按space继续
setpager=0
取消分页显示
12)linux
用linux命令取代grub中的kernel命令
13)chainloader
调用另一个启动器,如
chainloader(hd0,1)+1
调用***硬盘***分区引导扇区内的启动器,可以是windows或linux的启动器
14)grub2挂载软盘镜像
menuentry"BootfromDOSIMG"{
linux16/memdisk
initrd16/win98.img
}
对非标准的1.4M和2.8M的其他镜像挂载方法,需要指定CHS参数:
menuentry"BootfromIMG"{
linux16/memdiskc=*h=*s=*floppy
initrd16/xxx.img
}


详细出处参考:http://www.itqun.net/content-detail/124967_3.html

【编辑推荐】

  1. Ubuntu GRUB非常优秀的系统引导器
  2. Ubuntu GRUB開機選項修改
  3. Ubuntu grub利用安装光盘硬盘安装ISO文件
  4. Linux rescuev修复模式跨越控制台登录
  5. Linux rescue单用户模式修复模式
责任编辑:chenqingxiang 来源: itqun
相关推荐

2010-06-17 15:59:39

Grub2 编辑

2010-06-17 15:39:27

Grub2 编辑

2010-06-17 16:54:54

Grub2背景

2017-06-13 13:53:21

2011-09-09 13:44:24

win7grubUbuntu

2010-06-17 16:23:32

Grub2 配置

2011-08-30 16:03:59

UbuntuGrubCustomi

2010-06-13 10:11:46

Ubuntu Grub

2012-11-09 16:51:06

Grub2ISO

2010-06-13 13:17:51

Ubuntu9.10

2010-06-17 09:59:34

Ubuntu 10.0

2014-08-11 16:12:46

Grub2LinuxISO

2010-06-13 10:44:57

Ubuntu Grub

2022-02-15 09:19:55

Ubuntu 20.Grub2Linux

2017-03-31 15:31:07

LinuxGRUB图像

2015-12-18 11:28:34

2010-06-13 09:27:18

Grub安装Ubunt

2010-06-13 16:32:19

Linux Grub命

2010-06-17 10:13:28

Grub命令启动Ubu

2010-04-30 09:37:07

Ubuntu 10.0GRUB2
点赞
收藏

51CTO技术栈公众号