计算机的存储器分为硬盘(海量存储器)和内存(主存储器),内存又分ROM和RAM两部分。
ROM内有两个程序:boot 和 BIOS
1. 开机时,系统加载BIOS,并透过BIOS加载CMOS,由CMOS内的设定取得主机的各硬件信息,然后BIOS进行自检
2. BIOS通过硬件的INT 13中端功能来读取MBR,由MBR加载bootloader。
bootloader的主要功能:(bootloader可以安装在文件系统的根分区和磁盘的MBR上面)
a. 提供选项:用于多重引导; b. 载入系统内核; c. 转交其他的bootloader
3. bootloader加载内核,内核被解压缩在内存当中,并借由内核的功能来驱动各硬件设备。
kernel的主要工作:
a. 硬件探测; b. 驱动程序初始化; c. 以只读方式加载根文件系统; d.启动init进程
kernel启动时候的所有信息在/var/log/demesg
boot所在的位置不能是lvm,也不能是raid(软),最多是raid1,MBR的前446字节没有多余的地方加载其他的
驱动程序,否则内核就无法被加载。
4. 启动init进程,init读取/etc/inittab配置文件,并且根据配置文件的内容来完成一系列的任务。
5. 执行/etc/rc.d/rc.local,这里面主要是用户自定义开机启动程序的放置位置。
开机过程中用到的配置文件
/etc/modprobe.conf
/etc/sysconfig/*
这里面主要的配置文件有:
authconfig:提供身份认证机制,是否使用/etc/passwd,/etc/shadow来提供身份认证,
/etc/shadow采用何种加密算法(默认MD5),是否还有其他的身份认证方式NIS,LDAP等
clock:设定系统的时区
i18n:设定使用的语系
network:设定网络信息
关于MBR
MBR(Main Boot Record 主引导记录区) 位于整个硬盘的0磁道0柱面1扇区,其内包含最基本的引导加载程序
(Bootloader),这个Bootloader的目的是在加载内核文件。在总共512字节的主引导扇区中,MBR占用了446个
字节,另外的64个字节交给了DPT(Disk Partition Table硬盘分区表),最后两个字节“55,AA”是分区的结束标
志。这个整体构成了硬盘的主引导扇区。主引导记录在硬盘上找到可引导分区,将其分区引导记录装入内存,并将
控制权交给分区引导记录,由分区引导记录定位根目录,然后装入操作系统。
BIOS 和 MBR都是硬件本身会支持的功能。
关于bootloader
由于MBR只有512字节,分区表占去64个字节,还有两个字节的校验位,只剩下446个字节,这446个字节能够存
放下bootloader吗?其实bootloader
加载需要两个阶段
第一阶段:加载bootloader的最小主程序
第二阶段:加载bootloader的配置文件
[root@server30 ~]# ls -l /boot/grub/
total 234
-rw-r--r-- 1 root root 63 Aug 6 17:04 device.map grub的装置对应文件
-rw-r--r-- 1 root root 7584 Aug 6 17:04 e2fs_stage1_5 ext2/ext3文件系统支持
-rw-r--r-- 1 root root 7456 Aug 6 17:04 fat_stage1_5 fat支持
-rw-r--r-- 1 root root 6720 Aug 6 17:04 ffs_stage1_5 ffs支持
-rw------- 1 root root 812 Aug 6 09:07 grub.conf grub配置文件
-rw-r--r-- 1 root root 6720 Aug 6 17:04 iso9660_stage1_5 光盘支持
-rw-r--r-- 1 root root 8192 Aug 6 17:04 jfs_stage1_5 jfs支持
lrwxrwxrwx 1 root root 11 Aug 6 17:04 menu.lst -> ./grub.conf
-rw-r--r-- 1 root root 6880 Aug 6 17:04 minix_stage1_5 mini文件系统支持
-rw-r--r-- 1 root root 9248 Aug 6 17:04 reiserfs_stage1_5 reiserfs文件系统支持
-rw-r--r-- 1 root root 32428 Jan 5 2007 splash.xpm.gz 开机图片
-rw-r--r-- 1 root root 512 Aug 6 17:04 stage1 第一阶段说明
-rw-r--r-- 1 root root 104988 Aug 6 17:04 stage2 第二阶段说明
-rw-r--r-- 1 root root 7072 Aug 6 17:04 ufs2_stage1_5 ufs文件系统支持
-rw-r--r-- 1 root root 6272 Aug 6 17:04 vstafs_stage1_5 vstafs支持
-rw-r--r-- 1 root root 8904 Aug 6 17:04 xfs_stage1_5 xfs支持
关于GRUB,grub.conf
default=0 开机使用哪个title,默认第一个
timeout=5 5s延迟后不选择title的话默认使用第一个title进系统
splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz 开机图片,(640*480 14bit色,要保存为xpm并且用gzip压缩一下)
hiddenmenu 隐藏titile
title Red Hat Enterprise Linux Server (2.6.18-164.el5) title名称
root (hd0,0) 这里是第一块磁盘的第一个分区,grub认为所有的磁盘都是hd设备,并且磁盘号和分区号都从0开始
kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/vol0/root rhgb quiet 内核名称以及放置位置,root指定根目录,
rhgb显示为彩色
quiet,对kernel侦测到的信息不显示输出
initrd /initrd-2.6.18-164.el5.img initrd的名称以及放置位置
grub加密grub-md5-crypt
在hiddenmenu下面写入
password --md5 密文
误操作grub损坏
1,进入grub命令模式root(hd0,0);setup (hd0);quite
2,grub-install --root-directory=/(此处的目录为boot的父目录)/dev/sda
dd if=/dev/sda of=/backup/mbr bs=512 count=1 备份MRB
dd if=/dev/zero of=/dev/sda bs=512 count=1 销毁MBR,会删除磁盘上面的所有分区信息以及bootloader