今天尝试着在我的Ubuntu上安装Cacti。通过源码安装比较麻烦,有非常多的依赖库,装依赖库它居然还依赖别的库。安装过程中,又遇到许多configure通不过的情况。后来不知道出了什么错,ubuntu系统挂掉了,重启之后也进不了系统。索性我重装系统吧!
先说明一下,我的电脑本来是双系统,windowsXP+Ubuntu。我决定安装centos,在选择安装分区的时候,选定“选择linux分区安装默认的结构”。装好之后重启发现,之前的双系统选择界面没了。windows进不去了。。。window分区没删,把引导改回来,应该就没问题了。
Grub是一套多重开机管理软件,绝大多数linux都已经安装了。
Grub与开机顺序的关系
- BIOS将控制权交给硬盘的主引导区,MBR
- MBR中的Bootloader通过内置的地址加载stage1.5
- bootloader通过stage1.5内容,将分区中的stage2加载
- 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指派的操作分为两种方式:
- 直接加载。对于原本就是支持多种开机的操作系统,如linux,freebsd,unix,Grub在开机时直接加载其kernel
- 链接加载。当遇到不支持多种开机的操作系统时,这里主要是windows。可以将开机的指针直接指到该分区的boot sector,使其激活。
看来这个Other就是我电脑上安装在C盘的window系统了,给它改回原来的名字,将Other改掉就行。
为嘛一开始没有选择画面呢?现在可以回过头看看列出的所有参数了,发现hiddenmenu在作祟,将它注释掉。
然后重启,又可以看见熟悉的开机画面了,进入windows,没问题。哈哈
Grub先研究到此,以后再慢慢研究