Linux系统启动过程

上传人:小*** 文档编号:242963201 上传时间:2024-09-12 格式:PPT 页数:45 大小:1.59MB
返回 下载 相关 举报
Linux系统启动过程_第1页
第1页 / 共45页
Linux系统启动过程_第2页
第2页 / 共45页
Linux系统启动过程_第3页
第3页 / 共45页
点击查看更多>>
资源描述
,Click to edit Master title style,Click to edit Master text styles,Click to edit Master title style,Click to edit Master text styles,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Unix operating system,Unix operating system,Linux,系统启动过程,Linux,系统的启动分,5,个阶段,每个阶段都完成不同的启动任务。本章以,Linux,和,x86,平台为例,剖析从打开计算机电源到计算机屏幕出现登录欢迎界面的整个,Linux,启动过程,并重点介绍启动中涉及的主要配置文件以及管理工具。,学习大纲,Linux,系启动流程,BIOS,初始化,启动引导工具,Linux,内核,初始化内存镜像盘,(initrd,),核心初始化,系统初始化文件(,inittab,),系统运行级别(,runlevel,),系统初始化脚本(,rc.sysinit,),运行级别服务目录,用户自定义启动脚本文件,Linux,系统启动过程,由于在,Linux,系统的启动过程中会出现非常多的提示信息,而且很多启动信息都是在屏幕上一闪而过,所以对于很多,Linux,系统的初学者来说,可能会觉得,Linux,的启动过程非常神秘和复杂。其实,Linux,系统的启动过程并不是大家想象中的那么复杂,其过程可以分为,5,个阶段。,1,BIOS,加电自检,2,加载主引导加载程序(,MBR,),3,加载次引导加载程序(,GRUB,),4,Linux,内核映像,5,init,进程,1 Linux,系统启动过程简介,2 BIOS,加电自检,post,检测外围设备,检测启动设备(硬盘、光盘、网络,),如果是硬盘启动则读取与执行启动设备的第一个扇区,2,、,BIOS,初始化,硬件时钟和软件时钟设置,3,引导加载程序,GRUB,是,Linux,默认的引导加载程序,其引导过程又可以分为启动主引导加载程序和启动次引导加载程序两个阶段。本节将介绍,GRUB,在这两个阶段中的启动过程,以及介绍,GRUB,配置文件,/boot/grub/,grub.conf,中的各种选项的使用。,3.1,引导加载程序的启动,Linux,默认安装的引导加载程序是,GRUB,,是目前最常用的,Linux,引导加载程序。其引导过程分为两个阶段,第一阶段是保存在,MBR,中的主引导加载程序的加载。,MBR,中的主引导加载程序是一个,512,字节大小的映像,其中包含有机器的二进制代码和一个小分区表。主引导加载程序的任务就是查找并加载保存在硬盘分区上的次引导加载程序,它通过分区表查找活动分区,然后将活动分区的次引导加载程序从设备读入内存中并运行,进入引导加载程序的第二阶段。,3.1.1,启动流程,次引导加载程序也被称为内核加载程序,这个阶段的任务是加载,Linux,内核。一旦次引导加载程序被加载到内存中后,便会显示,GRUB,的图形界面,在该界面中用户可以通过上下方向键选择需要加载的操作系统以及它们的内核。,3.1,引导加载程序的启动,GRUB,GRUB,的配置文件为,/boot/grub/,grub.conf,#,ls,l /etc/,grub.conf,这个文件为一个软链接文件,指向,/boot/grub/,grub.conf,5.3.2 GRUB,配置,GRUB,的配置主要通过修改,/boot/grub/,目录下的,grub.conf,文件来完成,用户可以通过,VI,或者在图形界面中使用文件编辑工具打开该文件进行编辑。,#vi /etc/,grub.conf,1,default,选项:定义缺省启动系统,2,timeout,选项:定义缺省等待时间,3,splashimage,选项:定义,GRUB,界的图片,4,hiddenmenu,选项:隐藏菜单,5,title,选项:定义菜单单向,ing,称,6,root,(,hdx,y,):设置,grub,所在分区,7,kernel,选项:定义内核文件所在位置,8.,initrd,选项:定义文件加载镜像文件,grub.conf,的范例,:,timeout=10#,等待,10,秒自动进入默认操作系统,splashimage,=(hd0,0)/grub/splash.xpm.gz#,grub,启动背景画面,default=0#,默认进入第一个标题,title Red Hat Linux (2.4.20-18)#Red Hat,Linux,标题,root (hd0,0)#,根文件系统位置,kernel /vmlinuz-2.4.20-18,ro,root=LABEL=/ #,核心位置与核心加载参数,initrd,/initrd-2.4.20-18.img#,启动,initrd,ram,盘,title windows#,另一个操作系统的标题,rootnoverify,(hd0,1)#,操作系统存放在,hd0,1,上,不要在,grub,里,mount,chainloader,+1#,从,hd0,1,的第一个扇面启动,如果硬盘上的,MBR,被更动过,可以用,/,sbin,/grub-install /dev/,hda,|,sda,来重安装,grub,。,4,liunx,内核,内核工作流程,内核安装包,vmlinuz-x.x.x,4.1,内核映像,Linux,内核获得控制权后,将会按以下步骤继续引导系统。,(,1,)内核映像首先会检测系统中的硬件设备,包括内存、,CPU,、硬盘等,对这些设备进行初始化并配置。,(,2,)内核映像是经过压缩的,接下来它要对自身进行解压,同时加载必要的设备驱动。,(,3,)初始化与文件系统相关的虚拟设备,如,LVM,或者软件,RAID,等。,(,4,)装载根文件系统(,/,),把根文件系统挂载到根目录下。,(,5,)完成引导后,,Linux,内核会在其进程空间内加载,init,程序,并把控制器交,给,init,进程,由,init,进程继续完成接下来,的系统引导工作。,4.2,内核核心版本命名规则,主版本号、次版本号、补丁级数,linux,附加参数:发布号,显示当前系统的内核信息(,#uname,r,),Ls,l /boot/,vmlinuz,2.2.6.22,4.3,、,vmlinuz-x.x.x,系统引导内核文件(,vmlinuz,),是可引导的、压缩的内核。,Linux,能够使用硬盘空间作为虚拟内存,因此得名,“,vm,”,。,vmlinuz,是可执行的,Linux,内核,它的解压程序也在内核当中,。,内核文件存放,在,/boot,目录中,。,www.kernel.org,内核映像,5 init,进程,init,进程是,Linux,系统所有进程的起点,内核在完成内核引导后,便会加载,init,进程,其进程号是恒定为,1,。,init,进程启动后,会初始化操作系统,并启动特定的运行级别(,Runlevel,)下的自动运行程序。,同时,向,PID,为,0,的内核调度器(,kernel,)获得,CPU,时间。,5.1 init,进程简介,内核映像在完成引导后,便会启动,init,进程。,init,进程对应的执行文件为,/,sbin,/init,,它是系统中所有进程的发起者和控制者,所有的进程都是由它所衍生。如果,init,进程出现问题,系统中的其他进程也会随之而受影响。,1,作为所有进程的父进程参照对象,2,运行不同级别的程序,内核进程,init,查看,#,ps,-,ls,| more,inittab,Vi /etc/,inittab,5.2 init,进程的引导过程,当,init,进程获得控制权后,它首先会执行,/etc/,rc.d/rc.sysinit,脚本,根据脚本中的代码配置环境变量、配置网络、启用,Swap,、检查并挂载文件系统、执行其他系统初始化所必须的步骤等。,6,重启和关闭系统,Linux,下常用的关机,/,重启命令有,shutdown,、,root,、,halt,以及,init,,它们都可以达到重启系统的目的,但每个命令的过程过程都有所不同。在本节的内容中将会介绍这些命令的使用方法,以及它们之间的区别,希望读者经过本节的学习后可以灵活使用这些命令,完成系统的关机和重启。,6.1,shudown,命令:关闭或重启系统,使用,shutdown,命令可以安全地重启或关闭系统。当用户执行,shutdown,命令后,系统会通知所有已经登录的用户系统将要关闭,然后拒绝任何新的用户登录,同时向系统中进程发送,SIGTERM,信号,这样就可以让应用程序有足够的时间提交数据。启动或关闭系统是通过向,init,进程发送信号,要求它改变运行级别来实行的。其中,级别,0,被用来关闭系统,级别,6,为重启系统,级别,1,为单用户模式。,shutdown,命令的格式如下:,shutdown -t sec -,arkhncfFHP, time warning-message,5.6.2 halt,命令:关闭系统,halt,是关闭系统的快捷命令。执行,halt,命令其实是相当于执行带“,-h”,选项的,shutdown,命令。,halt,命令的格式如下所示。,halt -n -w -d -f -i -p -h,5.6.3 reboot,命令:重启系统,reboot,是重启系统的快捷命令。执行该命令,相当于执行带“,-r”,选项的,shutdown,命令。该命令的格式如下:,reboot -n -w -d -f -i -p -h,5.6.4 init,命令:改变运行级别,Linux,系统共有,7,个不同的运行级别:,0,、,1,、,2,、,3,、,4,、,5,、,6,,使用,init,命令,可以改变系统当前的运行级别。其命令格式如下:,init -a -s -b -z xxx 0123456Ss ,7.2,、系统运行级别(,runlevel,),init,定义了,06,这,7,个运行级别。,0,关机,1,单用户模式(文本模式,),2,多用户模式但不支持,NFS,(文本模式),3,多用户(文本模式,),4,暂无定义,5,多用户图形界面模式,6,重启计算机,运行级别可以被指定于,:,系统启动时作为核心加载参数被指定,未被指定的情况下,系统启动时从,/etc/inittab,中读取,在系统运行中,,root,用户键入,init,0-6,来切换模式,。,8,、系统初始化脚本,/etc/,rc.d/rc.sysinit,是系统启动用的脚本,从,/etc/sysctl.conf,中读取核心参数,设置系统时钟,载入,keymap,激活,swap,分区,设置主机名,检查根文件系统并挂载,加载,Raid,设备,激活磁盘限额,检查并挂载其他文件系统,清除失效锁及,PID,文件,9,、运行级别服务目录,每一个运行级别都对应一个目录,/etc/,rc.d/rcX.d,目录内存放的,即当前运行级别需要开启的服务脚本,对应,/etc/rc.d/init.d/,目录下的链接,链接文件开头是,S,,表示启动;开头是,K,,则表示关闭。,切换运行级别,,即运行这个目录里所有的脚本,用户可以通过,ntsysv,调整,当前运行级别,的开关服务,或用,chkconfig,,调整某一运行级别下的开关服务,。,10,、用户自定义启动脚本文件,/etc/,rc.d/rc.local,文件是在系统启动最后一个被读取的用户自定义启动脚本文件,。,一般系统用户将针对此台计算机的开机定制设置写入其中,而非,/etc/rc.d/rc.sysinit,。,5.6.5,通过图形界面关闭系统,要注销当前用户,可以在系统面板上选择,【,系统,】|【,注销,】,命令,打开如图,5.12,所示的对话框。单击,【,注销,】,按钮,系统将注销当前的登录用户,并退出到用户登录界面。如果要关闭该对话框并返回桌面,可单击,【,取消,】,按钮。如果用户不单击任何按钮,系统将会在,60,秒后自动注销当前的登录用户。,5.7,系统启动时常见的问题处理,Linux,救援模式是解决系统无法正常引导的最有效的解决方法,用户应该要熟练掌握进入,Linux,救援模式的方法。对于安装了多系统的环境,经常会由于重装,Windows,或者重新进行分区,导致,GRUB,被覆盖或者无法引导,Linux,,本节也会对这些问题给出具体的解决方法。,7.1,进入,Linux,救援模式,当因为某些原因导致无法通过正常引导进入系统(例如,GRUB,损坏或者误删除了某些重要的系统配置文件)或需要进行某些特殊的系统维护任务(例如忘记了,root,用户的口令需要进行重置)时,就需要使用,Linux,救援模式。,分析:进入单用户模式(类似于,windows,的安全模式)重新设置,root,密码,开机进入,GRUB,界面,按,e,进入编辑行模式,选择,kernel,行,再次按,e,键,在新的界面最后一行输入空格,1,(注意是,one,)或,s,,然后回车,则可进入单用户模式。,Passwd,root,就可以修改密码了。,5.7.2 GRUB,被,Windows,覆盖,当安装双系统环境时,如果先安装,Linux,,再安装,Windows,;或者已经安装好双系统环境后,对,Windows,进行了重装,那么保存在,MBR,中的,GRUB,就会被,Windows,系统的引导装载程序,NTLDR,所覆盖,导致,Linux,系统无法引导。,这时候可以通过以下步骤恢复,GRUB,。,(,1,)使用,5.7.1,节中所介绍的方法进入,Linux,救援模式,并执行“,chroot,/,mnt/sysimage,”,命令切换根分区到硬盘的根分区。,(,2,)在,Shell,中执行,GRUB,进入“,grub”,提示符。,(,3,)执行“,exit”,命令退出硬盘的根分区,然后再执行一次该命令重启计算机。,5.7.2 GRUB,被,Windows,覆盖,5.7.3,重新分区后,GRUB,引导失败,如果系统中已经安装了,Linux,,用户使用分区工具对分区进行更改后,可能会导致,Linux,无法正常引导。例如,系统中有两个分区,其中第一个分区安装了,Windows,(,hda1,),第二个分区安装了,Linux,(,hda5,)。,5.7.3,重新分区后,GRUB,引导失败,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!