系统的初始化过程:
PC的加电自检(硬件的健康状态检测)-->BIOS(boot sequence,启动次序)-->MBR(boot loader,446位的磁盘引导加载器,加载grub)-->kernel(加载内核模块)-->内核加载init(/etc/inittab)。
Linux界面有两种:LILO(LInux LOader)和GRUB(GRand Unified Bootloader)。前者不支持大于2G的大硬盘系统;而后者可以引导多种操作系统,如Linux,Windows等功能强大,支持在命令行界面编辑图形界面的内容。(Grub 不能支持大于2T的硬盘)
grub分2个阶段引导:
stage1:MBR,负责加载第2 阶段;
stage1.5:(此阶段本来是不存在的,在这里好叙述)识别驱动格式,加载驱动;
stage2:加载/boot/grub的一些执行程序,如grub.conf。
grub.conf的内容:
default=0:默认启动第一个Title后的系统和内核
tomeout=0:菜单显示的超时时间,超时后会默认启动第一个Title后的系统或内核。
splashimage= 系统启动时的图片所在的位置。
hidemenu:隐藏菜单。
Title: My Linux :简要介绍,系统自动读取为标题的ASCII码。
root (hd0,0):grub所使用的根,并将此分区设为起始点
kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/vol0/root rhgp quiet 内核的所在位置及读取方式
initrd /initrd-2.6.18-164.el5.img 内核的压缩位置
password:写在不同的位置有不同的用法,格式是用MD5加密后的内容(grub-md5-crypt)。
grub的2 种安装方式:
(1)在/mnt下创建一个boot目录,将磁盘设备下的要安装grub的分区挂载到此目录下。如命令为 : mount /dev/sdb1 /mnt/boot.
然后 grub-install --root-directory=/mnt(只能是/mnt,因为/mnt是grub安装的根目录)。
则,完整的命令是 grub-install --root-directory=/mnt /dev/sdb。可以切换至/mnt目录下查看是否已经创建好了/grub文件。
(2)当MBR的446位boot loader 遭到损坏时,可使用手动安装grub。
grub下的所有文件都在/usr/share/grub/i386-redhat/目录下,手动安装步骤如下:
先挂载: mount /dev/sdb1 /mnt/boot.
创建目录: mkdir /mnt/boot/grub.
拷贝文件到已创建的目录:cp /usr/share/grub/i386-redhat/* /mnt/boot/grub.