<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    Linux操作系統啟動流程

    發布時間:2014-4-2 14:53    發布者:edu11814
    關鍵詞: Linux
    啟動流程
            上電開機-- BOIS實現硬件自檢初始化-- 找到啟動設備的編號 -- 找到MBR(主引導記錄,在硬盤的0磁道的0扇區) -- 啟動grub程序 -- 通過grub設置找到vmlinuz并加裁到內存里運行 -- 啟動內核會加載initrd(隨機內存盤,小型文件系統,作用:能夠讓內核認出系統所在的哪個設備上,臨時驅動) -- 運行產生第一個進程init -- init進程會讀取/etc/inittab根據配置文件,判斷系統進去運行在哪個級別并進入相對應級別啟動相應服務 -- /etc/rc.sysinit 系統環境初始化,獲取主機網絡環境,測試或者載入設備,設置時間... -- /etc/rc.local開機后要運行的腳本

            /etc/inittab

                0               關機
                1               單用戶模式
                2               沒有網絡的文本模式
                3               有網絡的文本模式
                4               保留
                5               圖形模式
                6               重啟

                id:5:initdefault:           默認開機后進入的系統級別

                l0:0:wait:/etc/rc.d/rc 0
                .......
                l6:6:wait:/etc/rc.d/rc 6    定義六個級別啟動的服務腳本

                ca::ctrlaltdel:/sbin/shutdown -t3 -r now    定義ctrl+alt+del三鍵重啟功能,在tty模式有效,在圖形模式下無效,這個還會受到內核參數的影響

                1:2345:respawn:/sbin/mingetty tty1
                .....
                6:2345:respawn:/sbin/mingetty tty6      定義了6個虛擬終端

                x:5:respawn:/etc/X11/prefdm -nodaemon   啟動圖形


                x:5nce:/bin/su root -l -c "/bin/bash --login -c startx >& /dev/null"  自動用root登錄圖形

                respawn     代表什么時候終止都重新啟動命令
                once        代表運行這個命令一次


            /etc/rc.local   linux啟動最后階段,系統會執行/etc/rc.local腳本

            /etc/X11/xinit/xinitrc.d/   此目錄里可以放置圖形界面開啟自動運行的腳本

    ===============================================================================
    三、GRUB啟動加載器

        cd /boot/grub

            stage1              MBR中的bootloader備份文件

            stage2              grub的核心文件

            device.map          grub與linux的硬盤符號映射表

            splash.xmp.gz       grub的背景圖片

            grub.conf           grub的配置

    -------------------------------------------------------------------------------

        vim /boot/grub/grub.conf        配置文件

            default=0               默認啟動的操作系統(0代表第一個title....)

            timeout=5               5秒后自動啟動default操作系統

            splashimage=            指定背景圖片的路徑

            hiddenmenu              隱藏開機選項

            password --md5          設置啟動參數密碼,grub-md5-crypt產生

            title                   操作系統名稱

                password --md5      設置啟動操作系統密碼

                root                指定kernel和initrd所在的分區,(hd0,0),表示第一塊硬盤,第一個分區

                kernel              指定kernel路徑,內核啟動參數

                initrd              指定initrd路徑

                rootnoverify        指定其它操作系統(windows)

                chainloader +1      鏈接加載到第一扇區(windows)



    --------------------------------------------------------------------------------

         grub背景圖片制作

                convert 源圖片 -resize 640x480! -colors 14 test.xpm     修改顏色數和分辯率

                convert沒有此命令:

                    imagemagick 找此關鍵字安裝


    -------------------------------------------------------------------------------

        grub命令

            help                    列出命令

            quit                    退出

            root(hd0,1)             指定第一個硬盤第二個分區為grub文件所在的分區

            setup(hd0)              安裝grub到第一個硬盤上

                把grub安裝到硬盤第一扇區: grub-install /dev/sda

            boot                    啟動系統

            grub.conf中title下的命令都一樣

    -------------------------------------------------------------------------------

        kernel 啟動參數

            ro                      以只讀的方式加載內核,默認rw

            root=LABEL=/            指定卷標是/的分區為根分區,也可以直接指定設備文件

            rhgb                    圖形啟動時以圖形方式顯示啟動信息

            quiet                   啟動時不顯示檢查硬件的信息

            [0-6]                   1啟動單用戶模式....

            vga=792                 指定終端的分辯率為1024x768

            panic=n                 內核崩潰n秒后重新啟動

            iso-scan/filename=/0.91.iso 指定根分區為iso鏡像

            boot=casper             啟動iso默認訪問的文件夾

    -------------------------------------------------------------------------------

        initrd作用

            Kernel網啟動沒有任何文件系統的目錄,這時會先以initrd提供的目錄當作kernel的暫時目錄,該文件系統主要提供內核啟動時需要的驅動,ext3文件系統驅動,如果沒有該驅動就不能掛載根分區,沒有掛載根分區就不能讀取根分區中的ext3驅動,所以要有一個臨時的initrd提供驅動

    -------------------------------------------------------------------------------

        打開initrd

            file initrd-*           檢查到該文件為gzip文件,不要相信擴展名

            mv initrd initrd.gz     改變擴展名

            gzip -d initrd.gz       解壓gz文件

            file initrd             檢查到該文件為cpio文件

            cpio -im < initrd       解壓cpio文件


        打包initrd

            find | cpio -co | gzip -9 > initrd-new.img


    -------------------------------------------------------------------------------

    grub   排錯引導例子

    如果grub丟失,或者grub寫的有錯誤等情況,進系統時有可能會直接到一個grub>的界面(也就是黑屏幕上就一個grub >的提示符)

    grub> root (hd0,0) --進入到/boot分區

    grub> kernel /vmlinuz-xxxxxx     ro   root=LABEL=/  --根分區可以用label,也可以用/dev/sdax來代替

    grub> initrd /initrd-xxxxxx

    grub> boot  --boot代表啟動


    如果能啟動,就修改好你的grub

    如果啟動出現kernel panic 的錯誤,表示是上面寫錯了,再試試,不行就用linux rescue去修復
    本文地址:http://www.portaltwn.com/thread-128377-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • EtherCAT®和Microchip LAN925x從站控制器介紹培訓教程
    • MPLAB®模擬設計器——在線電源解決方案,加速設計
    • 讓您的模擬設計靈感,化為觸手可及的現實
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 貿澤電子(Mouser)專區

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷