CentOS 6.x的安装过程详解

CentOS 6.x安装过程这个很多人觉得能安装即可,没必要去理解是怎么安装的,但是本人之前由于吃过这个亏(面试的时候),所以还是写下来,万一大家碰到了,可以有个参考。

我们首先看一下CentOS安装光盘的目录:

我们解释一下这些目录的作用(文件没有什么作用,都是一些KEY文件,GPL信息等等)

EFI #关于EFI引导使用的一些文件

images #安装镜像install.img和一些关于pxe启动的文件

isolinux #引导文件的目录,包括vmlinuz,initrd.img,isolinux.bin等等

Packages #常用的rpm包

repodata #yum的索引源,还有一些说明文件

我们这里主要关心images和isolinux目录,EFI目录仅仅是作于EFI引导,所以没什么好深究的,其他两目录也都是附加的。

1.images目录的内容:

pxeboot目录:

install.img文件,安装程序所在的镜像,系统安装就是靠这个镜像中的anaconda程序安装的。

vmlinuz是压缩内核,引导程序启动后第一件事就是将内核启动;

initrd.img则是为内核提供了一些额外的驱动程序和一个模拟的文件系统环境。

efi的还是关于efi引导的,忽略即可。

2.isolinux目录:

这个目录的文件比较多,我们只需要关心下面的几个即可:

isolinux.bin #引导程序(可以理解为bootloader),BIOS加电自检后就会启动这个程序

isolinux.cfg #引导程序的配置文件

vmlinuz #压缩的内核,isolinux.bin启动后就会启动vmlinuz和initrd.img

initrd.img #提供驱动程序以及为内核提供基本的系统环境,里面就是一个小文件系统,其中有一个init程序供内核调用,用来启动anaconda

grub.conf #提供grub的样例配置文件,安装的时候没有启动grub所以用不到

大家发现了,pxeboot和isolinux目录中都包含有vmlinuz和initrd.img,这两个目录中的文件其实是一模一样的。

抛去重复的,我们真正需要关心的其实只有下面这几个:

①isolinux.bin

②isolinux.cfg

③vmlinuz

④initrd.img

⑤install.img

大致的安装流程是这样的:

插入光盘并开机后,计算机首先会自检(POST),自检没有问题后,就会启动BIOS,BIOS根据启动顺序找到光盘并查找BOOTLoader,此时的BOOTLoader就是isolinux.bin,isolinux.bin根据isolinux.cfg提供一个菜单界面(启动vesamenu.c32这个程序)让用户选择操作,看一下isolinux.cfg文件

default vesamenu.c32 #提供菜单程序功能,如果不需要交互模式的话可以略过#prompt 1 #是否进入交互模式,1是,0否timeout 600 #超时时长display boot.msg #显示boot.msg文件,没啥用,可以忽略menu background splash.jpg #这个显示一个背景文件,isolinux目录中可以看见splash.jpgmenu title Welcome to CentOS 6.5! #打出一个Welcome to CentOS 6.5!menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000menu color title 0 #ffffffff #00000000menu color tabmsg 0 #ffffffff #00000000menu color unsel 0 #ffffffff #00000000menu color hotsel 0 #ff000000 #ffffffffmenu color hotkey 7 #ffffffff #ff000000menu color scrollbar 0 #ffffffff #00000000 这些都是颜色配置label linux #这个是启动标签 menu label ^Install or upgrade an existing system #安装或升级系统 menu default #默认启动标签 kernel vmlinuz #启动内核 append initrd=initrd.img #启动initrdlabel vesa menu label Install system with ^basic video driver #安装基本的设备 kernel vmlinuz #启动内核 append initrd=initrd.img xdriver=vesa nomodeset #启动initrd并且安装基本设备参数label rescue menu label ^Rescue installed system #救援模式 kernel vmlinuz append initrd=initrd.img rescue #救援模式启动label local menu label Boot from ^local drive localboot 0xfffflabel memtest86 menu label ^Memory test kernel memtest append –

大家可以将上面的menu label行对比一下下面的安装图以及splash.jpg图:

安装图:

背景图(splash.jpg):

我们可以看出来,其实isolinux.bin读取isolinux.cfg文件并启动vesamenu.c32,将背景图加载,然后把提供选项菜单。用户选择安装菜单后,isolinux根据选择的信息(我们这里是第一项):

label linux #是启动标签 menu label ^Install or upgrade an existing system #安装或升级系统 menu default #默认启动标签 kernel vmlinuz #启动内核 append initrd=initrd.img #启动initrd

启动内核和initrd(initrd可以追加参数),并告诉内核要执行安装操作。initrd的作用就是虚拟成为一个基本的文件系统,里面含有一些命令和驱动程序等等,内核根据initrd中的程序查找install.img,install.img启动anaconda程序,与用户交互完成安装操作系统(anaconda可以根据配置文件自动安装系统,需要提供kickstart文件)。

文本方式安装CentOS图文详细教程 http://www.68idc.cn/Linux/2010-10/29071.htm

VMware下安装CentOS 6图文安装教程 http://www.68idc.cn/Linux/2012-04/58438.htm

CentOS服务器的安装和配置详细步骤 http://www.68idc.cn/Linux/2013-08/88598.htm

U盘安装CentOS 7.0图文详解教程 http://www.68idc.cn/Linux/2014-10/108014.htm

更多CentOS相关信息见CentOS 专题页面 http://www.68idc.cn/topicnews.aspx?tid=14

生活若剥去理想、梦想、幻想,那生命便只是一堆空架子

CentOS 6.x的安装过程详解

相关文章:

你感兴趣的文章:

标签云: