第一部分 grub的配置文件详解
/boot/grub/menu.lst是grub的配置文件,要修改它需要root权限。
#是注释,这一部分,我不作解释(其实是英文太差,解释不了)。去掉所有注释部分后,这个文件编成了这个样子:
代码: 全选
default 0
timeout 10
title Ubuntu, kernel 2.6.12-10-386
root (hd1,0)
kernel /vmlinuz-2.6.12-10-386 root=/dev/sda12 ro quiet vga=791
initrd /initrd.img-2.6.12-10-386
savedefault
boot
title Ubuntu, kernel 2.6.12-10-386 (recovery mode)
root (hd1,0)
kernel /vmlinuz-2.6.12-10-386 root=/dev/sda12 ro single
initrd /initrd.img-2.6.12-10-386
boot
~~~~~
代码: 全选
default 0 表示在下面这些系统里,默认引导哪个。
代码: 全选
timeout 10 表示在没有用户操作的情况下,等待几秒自动引导。
代码: 全选
title Ubuntu, kernel 2.6.12-10-386 表示可以引导的操作系统在引导菜单上的标题。
代码: 全选
root (hd1,0) 这个表示你的/boot分区之所在。
代码: 全选
kernel /vmlinuz-2.6.12-10-386 root=/dev/sda12 ro quiet vga=791 指定内核并输入内核参数。
代码: 全选
initrd /initrd.img-2.6.12-10-386 表示初试化。
代码: 全选
savedefault 意义不明,查了半天没看出来。
代码: 全选
boot 起动命令,根据上面的信息进行引导。
代码: 全选
hiddenmenu 不会产生起动菜单,会使用默认选项起动,然后可以按esc看到菜单。
代码: 全选
color cyan/blue white/blue 颜色效果,可以随自己喜欢。
代码: 全选
splashimage=(hd0,0)/boot/grub/splash.xpm.gz 这个是加载一个背景,因为有危险性,希望大家最好使用网上作好的背景图片。
为了避免,某些原因,导致我安装win(因为目前我硬盘没有win)使引导丢失,我作了以下的措施。
首先在安装ubuntu的时候,采用默认的选项,把grub安装在MBR上,
然后我在装好系统后,再一次的把它安装在了/boot分区上,具体作法如下:
代码: 全选
sudo grub-install /dev/sda1
代码: 全选
dd if=/dev/sda1 of=~/boot count=1 bs=512
代码: 全选
c:\boot="give me linux"
第三部分 制作一个grub起动盘
即使是有上面的安全措施,也难以保证有没有三长两短,所以作一个起动盘防身,必然大有补益。
制作需求对于breezy来说只需要一张3.5寸磁盘而已,软件方面breezy已经装备全面了。那么制作之前,当然先把只读开关推到上侧关闭,然后执行以下命令:
代码: 全选
sudo mke2fs /dev/fd0
代码: 全选
sudo mkdir /mnt/floppy/boot
sudo mkdir /mnt/floppy/boot/grub
sudo cp /boot/grub/stage1 /mnt/floppy/boot/grub
sudo cp /boot/grub/stage2 /mnt/floppy/boot/grub
代码: 全选
sudo grub
代码: 全选
root (fd0)
setup (fd0)
quit
过程基本同上面一样:
代码: 全选
root (hd1,0) 这里写你的/boot分区
setup(hda) 你想装哪,就写哪。
第四部分 grub的密码功能
刚才没有介绍,还有一个password参数,配合一个lock参数一起使用。
password加在default下面,用法如下:
代码: 全选
password=123456
那么在这样作后,直接起动会报错,我们按p然后输入密码,才能正常起动。
但是这样其实有个问题,我们可以在grub里面压c进入命令模式,然后输入:
代码: 全选
cat (hd1,0)/grub/menu.lst
代码: 全选
sudo grub-md5-crypt
代码: 全选
$1$U5aWH1$RTw1hWeygGuwTeBX98z/91
代码: 全选
password -–md5 $1$U5aWH1$RTw1hWeygGuwTeBX98z/91
第五部分 结语
关于grub的使用是需要注意的,对它的误操作是非常头痛的,在我不会恢复它的时候,不得不重新安装linux来解决这个问题,现在我把这方面的使用方法简单的说明,它适用于breezy,当然其他linux也基本一样。