Linux系统启动过程详解.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux系统启动过程详解 2010-03-14 11:21 BIOS自检2)启动Grub/Lilo3)加载内核4)执行init进程5)通过/etc/inittab文件进行初始化6)登陆Linux 1)BIOS自检 ?? a)POST(Power On Self Test),对硬件进行检测 ????? 计算机在通电后首先由BIOS进行自检,即所谓的POST(Power On Self Test),对硬件进行检测 ?? 依据BIOS内设置的引导顺序从硬盘、软盘或CDROM中读入引导块。 ????? 在PC中,Linux是从BIOS中的地址0xFFFF0处开始的。 ????? BIOS的第一个步骤是加电自检(POST),对硬件进行检测。 ????? 第二个步骤是进行本地设备的枚举和初始化。 ????? BIOS由两部分组成: POST代码和运行时服务。 ????? 当POST完成后,它从内存中清理出来,但BIOS运行时服务依然保留在内存中,目标操作系统可以使用这些服务。 ????? 要引导一个操作系统,BIOS运行时会按照CMOS的设置的顺序来搜索处于活动状态并可引导的设备:软盘、CD-ROM、硬盘上的分区、网络上的某个设备、USB(通常Linux是从硬盘引导的。 ????? 主引导记录MBR中包含主引导加载程序。MBR是一个512字节大小的扇区,位于磁盘上的第一个扇区中(0道0柱面1扇区))当MBR被加载到RAM中之后,BIOS会把控制权交给MBR。 ?? b)提取MBR的信息 ?? 要看MBR的内容,请使用下面的命令: ?? #从/dev/sda上读取前512个字节的内容,并将其写入mbr.bin文件中 ?? [root@localhost pam.d]# dd if=/dev/sda of=mbr.bin bs=512 count=1 ?? #以十六进制和ASCII码格式打印这个二进制文件的内容 ?? [root@localhost pam.d]# od -xa mbr.bin 0000000 48eb 0090 d08e 00bc fb7c d88e b9fc 0080 ?????????? k??? H dle nul?? so??? P??? 2)启动GRUB/Lilo ?? GRUB和LILO都是引导加载程序,它们会引导操作系统。当机器引导它的操作系统时,BIOS会读取引导介质上最前面的512字节(即MBR: master boot record)。 3)加载内核 ?? 当内核映像被加载到内存后,内核阶段就加开始了。 ?? 内核映像并不是一个可执行的内核,而是一个压缩过的内核映像。通常它是一个zImage(压缩映像,小于512KB)或bzImage(较大的压缩映像,大于512KB),它是提前使用zlib进行压缩的。 ?? 在这个内核映像前面是一个例程,它实现少量硬件设置,并对内核映像中包含的内核进行解压,然后将其放入高端内存中,如果有初始RAM磁盘映像,就会将它移动到内存中,并标明以后使用,然后此例程会调用内核,并开始启动内核引导的过程。 ?? 在GRUB命令中,我们可以使用initrd映像引导一个特定的内核,方法如下: ?? grub kernel /bzImage-2.6.14.2 ?? [Linux-bzImage, setup=0x1400, size=0x29672e] ?? grubinitrd /initrd-2.6.14.2.img ?? [Linux-initrd @ 0x5f13000, 0xcc199 bytes] ?? grub boot ?? Uncompressing Linux... Ok, booting the kernel. ?? 如果不知道要引导的内核的名称,只需使用/然后按下Tab键,就会显示内核和initrd映像列表 ?? 对grub命令行进行加密?? a)使用命令/sbin/grub-md5-crypt来产生grub使用的密码?? [root@localhost pam.d]# /sbin/grub-md5-crypt??? Password:??? Retype password:??? $1$3YbPF$zFVRY6J8VxNR9Ok4fXRkr1?? b)修改/etc/grub.conf加入password --md5 $1$3YbPF$zFVRY6J8VxNR9Ok4fXRkr1 一定要放在title之前。?? 这样重启系统时在grub的启动grub菜单时,想再按e命令进行编辑时,必须先按p键后输入密码才成功。 4)执行init进程 ?? init进程是所有进程的起点,内核在完成内核

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档