Centos5,Centos6啓動流程

博文參考:

http://www.178linux.com/44483
http://os.51cto.com/art/201407/446819.htm
http://ch666.blog.51cto.com/10870222/1757134
http://www.mamicode.com/info-detail-1165638.html

圖片描述

系統啓動流程

綜述:POST –> Boot Sequence(BIOS) –> Boot Loader –> Kernel(ramdisk) –> rootfs–> switchroot–> /sbin/init–>(/etc/inittab, /etc/init/*.conf) –> 設定默認運行級別–> 系統初始化腳本rc.sysinit–> 關閉或啓動對應級別的服務–> 啓動終端html

加電自檢POST

clipboard.png

clipboard.png

Blos啓動引導階段

自檢經過;按照次序查找引導設備Blos,按F2或Del鍵進入Blos,能夠調整硬盤的啓動順序。Blos在找到硬盤上的MBR,讀取其中的Bootloader

GRUB引導階段

stage1:即寫入mbr中存儲的bootloader程序。它的任務就是將stage1_5(此時並不能算是磁盤分區/boot/grub/下的stage1_5,由於stage1沒法識別文件系統)載入內存執行。
clipboard.pnglinux

stage1_5:位於mbr以後的扇區,經過提供基本文件系統驅動讓stage1中的bootloader程序能識別磁盤分區/boot/grub/上的stage2文件並載入內存執行。shell

clipboard.png

配置 /boot分區

clipboard.png

stage2:這個程序主要給用戶提供一個比較友好的啓動菜單,然後去加載位於同一個磁盤分區/boot/的內核文件( vmlinuz-2.6.32-573.el6.x86_64)bash

clipboard.png

clipboard.png

clipboard.png

clipboard.png

2 grub的編輯命令

        b:boot,啓動

        e:edit,編輯選中的項

        o:在選中行的下一行新加一行

        O:在選中行的上一行添加一行

        d:刪除選中行

        ESC:能夠退出編輯界面進入主界面

加載內核階段

clipboard.png

啓動進程/sbin/init

clipboard.png

clipboard.png

clipboard.png

詳解腳本 /etc/rc.d/rc.sysinit網絡

clipboard.png

sysinit腳本執行完成,系統還須要啓動各類服務,這樣主機才能夠提供相關的網絡和主機功能,所以要根據相應的運行級別,運行相應的系統服務。ide

系統服務

詳解目錄/etc/rc.d/rc3.dspa

clipboard.png

執行/etc/rc.d/rc腳本。該文件定義了服務啓動的順序是先K後S,而具體的每一個運行級別的服務狀態是放在/etc/rc.d/rc*.d(*=0~6)目錄下,全部的文件均是指向/etc/init.d下相應文件的符號連接。rc.sysinit經過分析/etc/inittab文件來肯定系統的啓動級別,而後纔去執行/etc/rc.d/rcN.d下的文件。
以rc3.d爲例:
          /etc/rc.d/rc3.d目錄,該目錄下的內容所有都是以 S 或 K 開頭的連接文件,都連接到"/etc/rc.d/init.d"目錄下的各類shell腳本。S表示的是啓動時須要start的服務內容,K表示關機時須要關閉的服務內容,後面的數字表明優先次序。

clipboard.png

clipboard.png

等待用戶登陸

完成了系統服務的啓動後,linux會啓動終端或X-Window來等待用戶登陸,會執行"/sbin/mingetty",並且執行了6個,因此linux會有6個純文本終端(tty1,tty2…),mingetty就是啓動終端的命令。至此,系統就啓動完畢了!3d

clipboard.png

系統服務管理

根據上面說明,咱們能夠知道,系統在啓動後會根據想要的運行級別,運行相應的服務腳本,而這些系統服務的管理,能夠用chkconfig來進行管理使用,這些服務腳本放置於/etc/rc.d/init.d中rest

chkconfig:跟新和確認系統服務信息

語法:chkconfig [–list] [–type type][name]:查看全部的服務列表詳細信息

 chkconfig –add name :添加服務到系統服務

 chkconfig –del name:刪除系統服務

 chkconfig –override name

 chkconfig [–level levels] [–type type] name <on|off|reset|resetpriorities>

 chkconfig [–level levels] [–type type] name

clipboard.png

手動配置系統啓動服務

一、系統服務腳本特色:基本均可以提供start|stop|restart|status這幾個狀態值的接收code

二、服務腳本存放位置

由上面的介紹可知,全部的系統服務腳本都放在/etc/rc.d/init.d文件夾中

clipboard.png

三、服務腳本的編寫格式

clipboard.png

其中,有三行格式是必需要寫上的#!/bin/bash,#/chkconfig,#description

chkconfig: runlevels SS KK【SS:表示開始運行的次序,KK:表示關閉程序的次序,-表示都不啓動】

所以能夠手動編寫系統服務:

(1)把服務腳本放置/etc/init.d目錄下

   (2)使用chkconfig –add 添加到系統服務

   (3)重啓系統讓服務生效

系統服務的運行

  • service httpd start 啓動服務

  • service httpd status 服務運行狀態

  • service httpd stop 中止服務

  • service httpd restart 重啓服務

相關文章
相關標籤/搜索