1、linuxbootloader的作用:初始化硬件和引导操作系统
kenel的作用:存放系统有关的硬件驱动,文件系统
2、引导启动多操作系统的流程:
步骤1:加载固件
步骤2:加载系统内核
通过bootloader自动启动程序,在linux中常用的就是grub
/etc/grub.conf来实现的,但是这个配置文件是软连接,真实的文件在/boot/grub/brub.conf
在这里通过root()
kenel确定操作系统的位置及版本号
3、加载系统内核的功能:驱动硬件,启动init进程,继续引导
也是通过配置文件来实现
4、首先,判断运行级别 initdefault
其次,所有的运行级别都会执行/etc/rc.d/rc.sysinit 这段脚本开启系统基本服务,默认的字体,默认的系统时间
5、接着要执行/etc/rc.d/rc
因为我们启动级别不一样,加载的服务也不一样,根据不同的运行级别开启不同的服务,这是通过rc这个脚本来实现的,先判断默认的运行级别,再去rc.d/rcN.d这个目录执行相应的脚本
这时还要根据不同的运行级别开启不停的服务
3、引导方式
LILO:Last IN Last OUT(后进的服务,最后运行)
GRUB:(GRand Unified Bootloader)
lilo与grub的区别:
LILO是通过读取硬盘上的绝对扇区来装入操作系统,因此每次分区改变都必须重新配置LILO,如果调整了分区的大小及分区的分配,那么LILO在重新配置之前就不能引导这个分区的操作系统了。而Grub是通过文件系统直接把核心读取到内存,因此只要操作系统核心的路径没有改变,Grub就可以引导系统。
4、grub配置文件
grub.conf文件内容:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda2
# initrd /initrd-version.img
#boot=/dev/sda (说明引导程序是在硬盘上:sd代表SATA DISK )
GRUB的全局变量:(从grub.conf开始的到第一个title结束)
default=0 (默认启动的操作系统:win:1 linux:0)
timeout=5 (选择操作系统延迟的时间,单位为秒)
splashimage=(hd0,0)/grub/splash.xpm.gz (选择操作系统时的图片背景)
hd(0,0)代表:hd(hard disk)除了用hda/hdb...表示之外还可以用数字表示,
如:hd(0,0)表示:第0快硬盘的第0个分区,前面的数字表示第几块硬盘,后面的数字表示第几分区。
passwd=....
hiddenmenu
局部变量:
title Red Hat Enterprise Linux Server (2.6.18-164.el5)(title设置启动显示的标题)版本号:主版本号.次版本号.具体的内核版本(根据次版本号来选择,当次版本号为奇数,表示测试版,如果是偶数表示为正式版)
root (hd0,0) (/root)
kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.18-164.el5.img
passwd
kenel的作用:存放系统有关的硬件驱动,文件系统
2、引导启动多操作系统的流程:
步骤1:加载固件
步骤2:加载系统内核
通过bootloader自动启动程序,在linux中常用的就是grub
/etc/grub.conf来实现的,但是这个配置文件是软连接,真实的文件在/boot/grub/brub.conf
在这里通过root()
kenel确定操作系统的位置及版本号
3、加载系统内核的功能:驱动硬件,启动init进程,继续引导
也是通过配置文件来实现
4、首先,判断运行级别 initdefault
其次,所有的运行级别都会执行/etc/rc.d/rc.sysinit 这段脚本开启系统基本服务,默认的字体,默认的系统时间
5、接着要执行/etc/rc.d/rc
因为我们启动级别不一样,加载的服务也不一样,根据不同的运行级别开启不同的服务,这是通过rc这个脚本来实现的,先判断默认的运行级别,再去rc.d/rcN.d这个目录执行相应的脚本
这时还要根据不同的运行级别开启不停的服务
3、引导方式
LILO:Last IN Last OUT(后进的服务,最后运行)
GRUB:(GRand Unified Bootloader)
lilo与grub的区别:
LILO是通过读取硬盘上的绝对扇区来装入操作系统,因此每次分区改变都必须重新配置LILO,如果调整了分区的大小及分区的分配,那么LILO在重新配置之前就不能引导这个分区的操作系统了。而Grub是通过文件系统直接把核心读取到内存,因此只要操作系统核心的路径没有改变,Grub就可以引导系统。
4、grub配置文件
grub.conf文件内容:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda2
# initrd /initrd-version.img
#boot=/dev/sda (说明引导程序是在硬盘上:sd代表SATA DISK )
GRUB的全局变量:(从grub.conf开始的到第一个title结束)
default=0 (默认启动的操作系统:win:1 linux:0)
timeout=5 (选择操作系统延迟的时间,单位为秒)
splashimage=(hd0,0)/grub/splash.xpm.gz (选择操作系统时的图片背景)
hd(0,0)代表:hd(hard disk)除了用hda/hdb...表示之外还可以用数字表示,
如:hd(0,0)表示:第0快硬盘的第0个分区,前面的数字表示第几块硬盘,后面的数字表示第几分区。
passwd=....
hiddenmenu
局部变量:
title Red Hat Enterprise Linux Server (2.6.18-164.el5)(title设置启动显示的标题)版本号:主版本号.次版本号.具体的内核版本(根据次版本号来选择,当次版本号为奇数,表示测试版,如果是偶数表示为正式版)
root (hd0,0) (/root)
kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.18-164.el5.img
passwd