<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦>學習電腦>操作系統>Linux教程>

        什么是initrd

        時間: 若木635 分享

          什么是initrd

          initrd 的英文含義是 boot loader initialized RAM disk,就是由 boot loader 初始化的內存盤。

          在 linux內核啟動前, boot loader 會將存儲介質中的 initrd 文件加載到內存,內核啟動時會在訪問真正的根文件系統前先訪問該內存中的 initrd 文件系統。

          在 boot loader 配置了 initrd 的情況下,內核啟動被分成了兩個階段,第一階段先執行 initrd 文件系統中的"某個文件",完成加載驅動模塊等任務,第二階段才會執行真正的根文件系統中的 /sbin/init 進程。

          這里提到的"某個文件",Linux2.6 內核會同以前版本內核的不同,所以這里暫時使用了"某個文件"這個稱呼,后面會詳細講到。

          第一階段啟動的目的是為第二階段的啟動掃清一切障愛,最主要的是 加載根文件系統存儲介質的驅動模塊。

          initrd產生原因

          要想明白initrd產生的原因,帶要從linux啟動說起。其實裝入本地linux系統時可以不用initrd,只要在kernel參數中加入root參數就可以了。

          在boot loader如grub等裝入kernel后, kernel需要執行系統中的/sbin/init, 讀取這個文件就必須先mount根文件系統。 早期是通過啟動時的root=參數告訴內核根文件系統在哪個設備上。

          隨著硬件和技術的發展,現在根文件系統可能位于一個網絡存儲如NFS上, 可能由于RAID而散布于多個設備上, 可能位于一個加密設備上需要提供用戶名和密碼,這時root=參數就顯得不夠了。

          為了應付這種局面, 先后出現兩種機制來作為boot loader裝載kernel到真正的/sbin/init執行這個啟動過程的橋梁:initrd和initramfs。

          兩者有類似的地方,比如都是由內核執行其上的某個程序(initrd是/linuxrc, initramfs是/init),由這個程序決定加載什么驅動以及如何裝載根文件系統。

          例如,把linux裝入U盤中時,就要用到initrd。這里不是指把系統做成initrd直接加載成內存式linux,而是像本地硬盤上那樣是非鏡像型的linux系統。

          為什么必須要用initrd?我們可以從啟動過程來看。首先,由如GRUB的引導加載器加載內核,這時可以識別U盤,如果你是從U盤啟動的,那么U盤為hd0。這一切都是GRUB可以識別U盤的存在。

          當內核加載后情況就不一樣了,內核之中一般是沒有U盤驅動的,那它就 找不到U盤,更不用說U盤中的系統了。所以就要用initrd來加載U盤驅動,并執行系統中的/sbin/init。

          initrd 的用途

          1. linux 發行版的必備部件

          linux 發行版必須適應各種不同的硬件架構,將所有的驅動編譯進內核是不現實的,initrd 技術是解決該問題的關鍵技術。Linux 發行版在內核中只編譯了基本的硬件驅動,在安裝過程中通過檢測系統硬件,生成包含安裝系統硬件驅動的 initrd,無非是一種即可行又靈活的解決方案。

          2. livecd 的必備部件

          同 linux 發行版相比,livecd 可能會面對更加復雜的硬件環境,所以也必須使用 initrd。

          3. 制作 Linux usb 啟動盤必須使用 initrd

          usb 設備是啟動比較慢的設備,從驅動加載到設備真正可用大概需要幾秒鐘時間。如果將 usb 驅動編譯進內核,內核通常不能成功訪問 usb 設備中的文件系統。因為在內核訪問 usb 設備時, usb 設備通常沒有初始化完畢。所以常規的做法是,在 initrd 中加載 usb 驅動,然后休眠幾秒中,等待 usb設備初始化完畢后再掛載 usb 設備中的文件系統。

          4. 在 linuxrc 腳本中可以很方便地啟用個性化 bootsplash。

        75351 主站蜘蛛池模板: 少妇高潮喷水久久久久久久久 | 久久青青草原精品国产app| 在线看高清中文字幕一区| 国产女人喷潮视频免费| 婷婷无套内射影院| 内射一区二区三区四区| 国产综合色产在线视频欧美| 精品综合一区二区三区四区| 97人妻免费碰视频碰免| 日韩中文字幕高清有码| 四虎成人精品永久网站| 99久久精品国产毛片| 樱花草视频www日本韩国| 国产亚洲精品久久久久久无| 日韩人妻不卡一区二区三区| 人妻少妇久久久久久97人妻 | 欧洲精品色在线观看| 人妻人人做人碰人人添| 无码AV无码免费一区二区| 国产免费午夜福利757| 亚洲人成人一区二区三区| 国产视频最新| 国产一区二区三区精品片| 六十路老熟妇乱子伦视频| 国产亚洲av手机在线观看| 日韩有码中文字幕av| 免费大黄网站在线观看| 午夜毛片精彩毛片| 精品一区二区成人精品| 国产一区二区不卡在线| 国产高清在线精品二区| 无套内射视频囯产| 大地资源免费视频观看| 啊轻点灬大JI巴太粗太长了在线| 中文人成影院| 亚洲av二区三区在线| 久久综合色之久久综合色| 绝顶丰满少妇av无码| 国产一区二区内射最近更新| 中文字幕在线日韩| 日本久久精品一区二区三区|