CentOS6啟動流程

CentOS 6 啟動流程 | root密碼重置 | 添加系統服務

一、CentOS 6 啟動流程:

    1)POST加電自檢

        Power-On-Self-Test,主板在接通電源后,系統首先由BIOS程序來對對CPU、主板、內存、硬盤子系統、顯示子系統、串并行接口、鍵盤、CD-ROM光驅等硬件情況的檢測。

        自檢中如發現有錯誤,將按兩種情況處理:對于嚴重故障則停機,對于非嚴重故障則給出提示或聲音報警信號,等待用戶處理。

        主板上 ROM:保存了BIOS程序    RAM:保存各項參數設定

        BIOS按設定次序查找引導設備,第一個有引導程序的設備為本次啟動設備

    2)讀取 MBR

        讀取第一個啟動設備MBR中的bootloader(前446字節),CentOS 6為grub程序,bootloader空間有限僅保存了grub第一階段stage1。

    3)引導加載程序 GRUB

        stage1:存在于MBR前446字節中,加載stage1_5,stage2,initramfs*.img

        stage1_5:在MBR之后62個扇區中,保存了必要的文件系統驅動程序等,讓stage1能識別stage2所在分區上的文件系統;

        stage2:提供菜單交互接口,讓用戶以選項方式加載內核、改變參數、修改選項,獲取grub.conf以及menu.lst等文件的內容,可提供認證保護機制。

    4)加載內核

        自身初始化:

        探測可識別到的所有硬件設備

        加載硬件驅動程序(可能借助于ramdisk加載驅動)

    內核無法識別硬盤上各驅動程序所在的設備,借助已識別的boot分區中的initramfs-VERSION-RELEASE.img文件(一個壓縮的小型根目錄,包含啟動階段必須的驅動模塊,可執行文件和啟動腳本),

將其掛載為臨時根目錄,執行啟動腳本,加載真實文件系統以掛載真正的根目錄并切換根目錄。

        以只讀方式掛載根文件系統

        運行用戶空間的第一個應用程序:/sbin/init

    5)啟動 init

        內核加載完畢,運行init程序,系統啟動的控制權移交給init進程

        init進程是所有進程的父進程,它會讀取配置文件/etc/inittab,進行以下工作:

        1.執行系統初始化腳本(/etc/rc.d/rc.sysinit),對系統進行基本的配置,以讀寫方式掛載根文件系統及其它文件系統,進行運行級別的確定及相應服務的啟動;
        2.確定啟動后進入的運行級別,共7個,默認3,5;
        3.執行/etc/rc.d/rc,定義服務啟動的順序是先K后S,具體的每個運行級別的服務狀態是放在/etc/rc.d/rc#.d(#=0~6)目錄下,所有的文件均鏈接至/etc/init.d下的相應文件。
        4.有關key sequence的設置
        5.有關UPS的腳本定義
        6.啟動虛擬終端/sbin/mingetty 
        7.在運行級別5上運行X

    系統初始化:

   POST–>BootSequence(BIOS)–>Bootloader(MBR)–>kernel(ramdisk)–>rootfs–>/sbin/init

    在rc.loacl中添加自定義開機運行腳本:

        正常級別下,最后啟動的一個服務S99local沒有鏈接至/etc/init.d下的某腳本,而是鏈接至了/etc/rc.d/rc.local (/etc/rc.local)腳本;因此,不便或不需寫為服務腳本的程序期望能開機自動運行時,可直接放置于此腳本文件中。



二、root密碼重置

    1.進入單用戶模式

        開機時鍵入 e ,進入grub菜單頁面,鍵入 a,在kernel行尾添加1,s,S,sigle任意一個,即單用戶模式,回車啟動系統

    2.直接用passwd更改密碼

        進入命令行后直接鍵入passwd即可更改密碼


三、添加系統服務

    CentOS 6中系統服務腳本都放在/etc/init.d目錄下,當用戶使用service命令對某個服務進行操作時,實際上是調用了該目錄下的腳本,所以我們也可以添加自己的服務腳本。

    1.編寫服務腳本

        前三行基本格式:vi testsrv

            #!bin/bash

            #chkconfig: 35 91 09

            #description:testsrv..

    腳本第一行為shellbang

    第二行chkconfig后跟3個數,第1個數為需啟動的級別,35表運行級別為3或5時啟動;第2個數為啟動優先級,數字越大優先級越低,越在后面啟動;第3個數為關閉優先級,數字越小優先級越高,越先關閉;

    一般后兩個數之和為100,被依賴性不高的服務可以后啟動,后啟動的先關閉;后兩位若為一位數(0-9),應寫成08格式

    第三行為描述信息,可根據需要修改。

        服務腳本應能識別基本的參數 [ start|stop|restart|status ]

        將寫好的腳本放在/etc/init.d目錄下

    2.添加為系統服務

        chkconfig –add /etc/init.d/testsrv

        該命令將腳本添加為系統服務,讓chkconfig可以管理它,并在每個運行等級啟動服務(/etc/rc.d/rc#.d)目錄下創建對應符號鏈接K/S入口,K開頭表關閉,S開頭表啟動

    3.服務操作

        chkconfig –level 35 testsrv on    修改服務的默認啟動等級

        service testsrv restart    重啟服務

作業

1、每周2, 4, 7備份/var/log/messages文件至/logs目錄中,文件名形如“messages-yyyymmdd”

* * * * * /bin/cp /var/log/messages /logs/messages-`date +\%Y\%M\%d`

2、每兩小時取出當前系統/proc/meminfo文件中以S或M開頭的信息追加至/tmp/meminfo.txt文件中

* */2 * * * grep "^[SM]" /proc/meminfo >>/testdir/meminfo.txt

原創文章,作者:Jasper,如若轉載,請注明出處:http://www.www58058.com/44573

(0)
JasperJasper
上一篇 2016-09-08
下一篇 2016-09-08

相關推薦

  • 位運算符及其應用

    一、C語言的六種位運算符: & 按位與 | 按位或 ^ 按位異或 ~ 取反 << 左移 >> 右移 1.   按位與運算 按位與運算符"&"是雙目運算符。     &nb…

    Linux干貨 2015-11-18
  • 文本查看類命令

    文本查看相關的命令:1. ?cat – 串連文件,并以標準輸出顯示語法:cat [OPTION]… [FILE]… 常用選項 選項 | 含義—— | ——-n | 在顯示文件內容時打印行號示例:~]# cat -n /etc/rc.d/init.d/functions顯示/e…

    2017-09-07
  • “拆”解RAID工作原理

    一、什么是RAID RAID:Redundant Arrays of Inexpensive(Independent)Disks,廉價(獨立)的冗余磁盤陣列。1988年由加利福尼亞大學伯克利分校提出。使用多個相對便宜的磁盤通過某種方式組合成一個“陣列”,來提供更好的性能、冗余,或兩者同時提供。 性能提高:     &n…

    Linux干貨 2016-11-22
  • 第五周學習總結–任務計劃

    寫在前面 隨著學習的不斷深入,漸漸的已經意識到不再是開始一天只知道幾個簡單的命令而已了,但是呢,命令還必須要繼續學習的,修房子哪有不用磚的,所以,要想有一棟堅實穩固的房子,還必須靜下心來繼續認識命令。 命令注解 今天要講的幾個命令是跟工作息息相關的,他們都是在以后的生活中使用率比較高的命令之一,比如馬上要講的這個,如果你的老板讓你在每天凌晨三點執行一次數據備…

    2017-12-29
  • Linux終端類型

    Linux終端類型 Linux的終端類型包括控制臺終端、虛擬終端、偽終端、串行終端、控制終端、圖形終端。   終端 要理解偽終端(Pseudo Terminal),先來看看什么是“終端”(Terminal)。 終端是一種字符型設備,它有多種類型,通常使用tty來簡稱各種類型的終端設備。 1、串行端口終端(/dev/ttySx) 串行端口終端(Ser…

    Linux干貨 2016-10-14
  • 06文本工具簡單介紹

    在Linux系統中,一個核心理念就是:一切皆文件。正確的對系統中文本的編輯配置與管理是Linux系統得以穩定運行的一個重要大前提。 因此Linux系統中的文件與管理特別重要,下面簡單說一下在對文件處理過程中經常用到的一些命令工具。 文本查看命令:cat,tac,rev,more,less cat [option]…[file]… -E…

    Linux干貨 2016-10-31

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-10 09:57

    每周2, 4, 7:表示為 * * * * */2,4,7

欧美性久久久久