<menu id="4oq46"><strong id="4oq46"></strong></menu>
  • <menu id="4oq46"><menu id="4oq46"></menu></menu><input id="4oq46"><tt id="4oq46"></tt></input>
  • <tt id="4oq46"><strong id="4oq46"></strong></tt>
    <menu id="4oq46"><strong id="4oq46"></strong></menu>
      免費注冊 查看新帖 |

    Chinaunix

      平臺 論壇 博客 文庫
    最近訪問板塊 發新帖
    查看: 90464 | 回復: 4
    打印 上一主題 下一主題

    [學習分享] 圖解CentOS系統啟動流程 [復制鏈接]

    論壇徽章:
    0
    跳轉到指定樓層
    1 [收藏(0)] [報告]
    發表于 2018-12-12 15:51 |只看該作者 |倒序瀏覽
    當我們按下開機鍵后,系統背后的秘密我們是否了解呢?這里,我帶大家探索一下linux系統開機背后的秘密。


    1.加電自檢

    主板在接通電源后,系統首先由POST程序來對內部各個設備進行檢查,自檢中如發現有錯誤,將按兩種情況處理:對于嚴重故障(致命性故障)則停機,此時由于各種初始化操作還沒完成,不能給出任何提示或信號;對于非嚴重故障則給出提示或聲音報警信號,等待用戶處理。
    2.BIOS啟動引導階段

    自檢通過之后,按次序查找各引導設備,第一個有引導程序的設備即為本次啟動要用到的設備。一般電腦是按"F2"或"Del"鍵等等進入BIOS,在里面我們可以調整硬盤的啟動順序。

    找到第一個有引導程序的設備后,BIOS會找到設備中的MBR,讀取其中的Bootloader。
    3.GRUP引導階段

    這時候就可以看到我們的Centos系統了,但是一般都不需要操作,會自動啟動系統。其實我們也可以自己手動啟動系統的。
    3.1 手動在grub命令行接口啟動系統:
    grub> root (hd#,#)
    grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE
    grub> initrd /initramfs-VERSION-RELEASE.img
    grub> boot
    3.2 grub的命令行接口:
    e: 編輯模式,用于編輯菜單;
    c: 命令模式,交互式接口;
    help: 獲取幫助列表
    help KEYWORD: 詳細幫助信息
    find (hd#,#)/PATH/TO/SOMEFILE:
    root (hd#,#) 設定grup的根設備
    kernel /PATH/TO/KERNEL_FILE: 設定本次啟動時用到的內核文件;額外還可以添加許多內核支持使用的cmdline參數;
    例如:init=/path/to/init, selinux=0
    initrd /PATH/TO/INITRAMFS_FILE: 設定為選定的內核提供額外文件的ramdisk;
    boot: 引導啟動選定的內核;
    3.3 配置文件:/boot/grub/grub.conf
    配置項:
    default=#: 設定默認啟動的菜單項;落單項(title)編號從0開始;
    timeout=#:指定菜單項等待選項選擇的時長;
    splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜單背景圖片文件路徑;
    hiddenmenu:隱藏菜單;
    password [--md5] STRING: 菜單編輯認證;
    title TITLE:定義菜單項“標題”, 可出現多次;用來引導多個內核或者操作系統
    root (hd#,#):grub查找stage2及kernel文件所在設備分區;為grub的“根”;
    kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內核
    initrd /PATH/TO/INITRAMFS_FILE: 內核匹配的ramfs文件;
    password [--md5] STRING: 啟動選定的內核或操作系統時進行認證
    4.加載內核階段

    內核會自身初始化:
    探測可識別到的所有硬件設備;
    加載硬件驅動程序;(有可能會借助于ramdisk加載驅動)
    以只讀方式掛載根文件系統;
    運行用戶空間的第一個應用程序:/sbin/init
    5.init初始化階段

    內核加載完畢,會運行init程序,init進程起來后,系統啟動的控制權移交給init進程
    /sbin/init進程是所有進程的父進程,當init起來之后,它首先會讀取配置文件/etc/inittab,進行以下工作:

    1.執行系統初始化腳本(/etc/rc.d/rc.sysinit),對系統進行基本的配置,以讀寫方式掛載根文件系統及其它文件系統,到此系統基本算運行起來了,后面需要進行運行級別的確定及相應服務的啟動;

    2.確定啟動后進入的運行級別;

    3.執行/etc/rc.d/rc,該文件定義了服務啟動的順序是先K后S,而具體的每個運行級別的服務狀態是放在/etc/rc.d/rcn.d(n=0~6)目錄下,所有的文件均鏈接至/etc/init.d下的相應文件。

    4.有關key sequence的設置
    5.有關UPS的腳本定義
    6.啟動虛擬終端/sbin/mingetty
    7.在運行級別5上運行X
    配置文件:/etc/inittab
    每行定義一種action以及與之對應的process
    id:runlevels:action:process
    id:一個任務的標識符;
    runlevels:在哪些級別啟動此任務;#,###,可以為空,表示所有級別;
    action:在什么條件下啟動此任務;
    process:任務;(腳本或程序)
    action:
    wait:等待切換至此任務所在的級別時執行一次;
    respawn:一旦此任務終止,就自動重新啟動之;
    initdefault:設定默認運行級別;此時,process省略;
    sysinit:設定系統初始化方式,此處一般為指定/etc/rc.d/rc.sysinit腳本;
    K*:要停止的服務;K##*,優先級,數字越小,越是優先關閉;依賴的服務先關閉,而后關閉被依賴的;
    S*:要啟動的服務;S##*,優先級,數字越小,越是優先啟動;被依賴的服務先啟動,而依賴的服務后啟動;
    chkconfig命令:管控/etc/init.d/每個服務腳本在各級別下的啟動或關閉狀態;
    查看:chkconfig --list [name]
    添加:chkconfig --add name
    刪除:chkconfig --del name
    修改指定的鏈接類型:
    chkconfig [--level LEVELS] name <on|off|reset>
    --level LEVELS:指定要控制的級別;默認為2345;
    init命令:
    級別切換:init #
    級別查看:who -r
    注:
    正常級別下,最后啟動的一個服務S99local沒有鏈接至/etc/init.d下的某腳本,而是鏈接至了/etc/rc.d/rc.local (/etc/rc.local)腳本;因此,不便或不需寫為服務腳本的程序期望能開機自動運行時,直接放置于此腳本文件中即可。


    論壇徽章:
    1
    2015年迎新春徽章
日期:2015-03-04 09:50:28
    2 [報告]
    發表于 2018-12-16 17:47 |只看該作者
    圖呢?

    論壇徽章:
    0
    3 [報告]
    發表于 2019-02-17 23:27 |只看該作者
    不是圖解嗎?

    論壇徽章:
    0
    4 [報告]
    發表于 2019-04-18 16:04 |只看該作者
    沒看到圖片

    論壇徽章:
    40
    水瓶座
日期:2013-08-15 11:26:422015年辭舊歲徽章
日期:2015-03-03 16:54:152015年亞洲杯之烏茲別克斯坦
日期:2015-03-27 14:01:172015年亞洲杯之約旦
日期:2015-03-31 15:06:442015亞冠之首爾
日期:2015-06-16 23:24:37IT運維版塊每日發帖之星
日期:2015-07-01 22:20:002015亞冠之德黑蘭石油
日期:2015-07-08 09:32:07IT運維版塊每日發帖之星
日期:2015-08-29 06:20:00IT運維版塊每日發帖之星
日期:2015-08-29 06:20:00IT運維版塊每日發帖之星
日期:2015-10-10 06:20:00IT運維版塊每日發帖之星
日期:2015-10-11 06:20:00IT運維版塊每日發帖之星
日期:2015-11-10 06:20:00
    5 [報告]
    發表于 2019-08-01 17:02 |只看該作者
    不貼下來源么
    您需要登錄后才可以回帖 登錄 | 注冊

    本版積分規則 發表回復

      

    北京盛拓優訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網監中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年舉報專區
    中國互聯網協會會員  聯系我們:huangweiwei@itpub.net
    感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP
       日韩综合区视频第一页导航,无码JK粉嫩小泬在线观看,午夜精品A片一区二区三区,日日躁夜夜躁狠狠躁麻豆,大胆国模,免费观看无遮挡www的网站