学习Grub

今天尝试着在我的Ubuntu上安装Cacti。通过源码安装比较麻烦,有非常多的依赖库,装依赖库它居然还依赖别的库。安装过程中,又遇到许多configure通不过的情况。后来不知道出了什么错,ubuntu系统挂掉了,重启之后也进不了系统。索性我重装系统吧!

先说明一下,我的电脑本来是双系统,windowsXP+Ubuntu。我决定安装centos,在选择安装分区的时候,选定“选择linux分区安装默认的结构”。装好之后重启发现,之前的双系统选择界面没了。windows进不去了。。。window分区没删,把引导改回来,应该就没问题了。

Grub是一套多重开机管理软件,绝大多数linux都已经安装了。

 

Grub与开机顺序的关系

  1. BIOS将控制权交给硬盘的主引导区,MBR
  2. MBR中的Bootloader通过内置的地址加载stage1.5
  3. bootloader通过stage1.5内容,将分区中的stage2加载
  4. stage2此时就可以在文件系统中奖grub.conf设置文件加载,让用户看到选项画面。

所以,我能直接影响开机流程的只有最后一步,修改grub.conf文件。grub.conf文件在/boot/grub/grub.conf。

下面我列出来grub中常用到的参数及其意义。

hiddenmenu  该参数可以将选择画面隐藏起来,只让用户看到倒数秒数的部分。

Default   该参数设定操作系统的默认开机选项,0表示第一个选项,1表示第二个选项。。。

Timeout  该参数设定开机画面要停多久,单位是秒

splashimage   该参数设定开机画面的背景图片

 

开机选项:

title   该参数是选项名,就是在开机选定要进入哪个操作系统时,操作系统的名字

root   定义该操作系统所使用的kernel及initrd文件时存放在哪一块硬盘中,(hd0,0),表示第一块硬盘的第一个分区

kernel   加载kernel的位置

initrd   加载initrd的位置

 

我发现文件的最末端有这样一段信息:

title Other

        rootnoverify (hd0, 0)

        chainloader +1

 

原来Grub指派的操作分为两种方式:

  1. 直接加载。对于原本就是支持多种开机的操作系统,如linux,freebsd,unix,Grub在开机时直接加载其kernel
  2. 链接加载。当遇到不支持多种开机的操作系统时,这里主要是windows。可以将开机的指针直接指到该分区的boot sector,使其激活。

 

看来这个Other就是我电脑上安装在C盘的window系统了,给它改回原来的名字,将Other改掉就行。

为嘛一开始没有选择画面呢?现在可以回过头看看列出的所有参数了,发现hiddenmenu在作祟,将它注释掉。

然后重启,又可以看见熟悉的开机画面了,进入windows,没问题。哈哈

Grub先研究到此,以后再慢慢研究

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值