亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 在Linux系統上開啟Initrd文件系統的方法

在Linux系統上開啟Initrd文件系統的方法

熱門標簽:滴滴洗衣店地圖標注 慶陽便宜外呼系統報價 辦理400電話怎么申請 天地圖標注線 大眾點評公寓式酒店地圖標注 靈圖uu電子服務區地圖標注 如何在地圖標注多個位置 高德地圖標注技術 微信地圖標注在哪

initial RAM disk

Linux初始RAM磁盤(initrd)是在系統引導過程中掛載的一個臨時根文件系統,用來支持兩階段的引導過程。initrd文件中包含了各種可執行程序和驅動程序,它們可以用來掛載實際的根文件系統,然后再將這個 initrd RAM磁盤卸載,并釋放內存。在很多嵌入式Linux系統中,initrd 就是最終的根文件系統。本文將探索 Linux 2.6 的初始 RAM磁盤,包括如何創建以及如何在Linux內核中使用。
什么是初始 RAM 磁盤

初始RAM磁盤(initrd)是在實際根文件系統可用之前掛載到系統中的一個初始根文件系統。initrd與內核綁定在一起,并作為內核引導過程的一部分進行加載。內核然后會將這個 initrd文件作為其兩階段引導過程的一部分來加載模塊,這樣才能稍后使用真正的文件系統,并掛載實際的根文件系統。
initrd 中包含了實現這個目標所需要的目錄和可執行程序的最小集合,例如將內核模塊加載到內核中所使用的 insmod 工具。
在桌面或服務器Linux 系統中,initrd 是一個臨時的文件系統。其生存周期很短,只會用作到真實文件系統的一個橋梁。在沒有存儲設備的嵌入式系統中,initrd 是永久的根文件系統。本文將對這兩種情況進行探索。

Initrd開啟步驟

下面來看下如何打開initrd,這里我使用的是debian5操作系統

1.創建一個目錄,將/boot/initrd.img-2.6.18-6-amd64 復制到該目錄下.

復制代碼
代碼如下:

root@192.168.30.68:tmp# mkdir initrd
root@192.168.30.68:tmp# cd initrd/
root@192.168.30.68:initrd# ls
root@192.168.30.68:initrd# cp /boot/initrd.img-2.6.18-6-amd64 .
root@192.168.30.68:initrd# ls
initrd.img-2.6.18-6-amd64

2.將initrd文件名改為.gz文件,將其解壓縮.

復制代碼
代碼如下:

root@192.168.30.68:initrd# file initrd.img-2.6.18-6-amd64 #發現該文件是一個gzip壓縮過的文件
initrd.img-2.6.18-6-amd64: gzip compressed data, from Unix, last modified: Thu Sep 24 18:21:40 2009
root@192.168.30.68:initrd# mv initrd.img-2.6.18-6-amd64 initrd.img-2.6.18-6-amd64.gz
root@192.168.30.68:initrd# file initrd.img-2.6.18-6-amd64.gz
initrd.img-2.6.18-6-amd64.gz: gzip compressed data, from Unix, last modified: Thu Sep 24 18:21:40 2009
root@192.168.30.68:initrd# gunzip initrd.img-2.6.18-6-amd64.gz

3.使用file發現解壓縮過后的文件是一個cpid格式,是一種備份格式,使用cpio,參數'i' 代表解包 與'd' 代表在需要時自動建立第一層目錄.

復制代碼
代碼如下:

root@192.168.30.68:initrd# file initrd.img-2.6.18-6-amd64
initrd.img-2.6.18-6-amd64: ASCII cpio archive (SVR4 with no CRC)
root@192.168.30.68:initrd# cpio -id initrd.img-2.6.18-6-amd64
32912 blocks
root@192.168.30.68:initrd# ls
bin conf etc init initrd.img-2.6.18-6-amd64 lib lib64 sbin scripts
root@192.168.30.68:initrd# rm initrd.img-2.6.18-6-amd64
rm: remove regular file `initrd.img-2.6.18-6-amd64'? y
root@192.168.30.68:initrd# ls
bin conf etc init lib lib64 sbin scripts

也可以直接通過zcat讀取gzip格式的文件,再將讀出來的結果由pipeline交給cpio解開

復制代碼
代碼如下:

root@192.168.30.68:initrd# zcat initrd.img-2.6.18-6-amd64 | cpio -id
32912 blocks
root@192.168.30.68:initrd# ls
bin conf etc init initrd.img-2.6.18-6-amd64 lib lib64 sbin scripts

以上就是initrd文件打開后的目錄架構,當kernel啟動加載initrd時,并沒有任何系統的目錄架構,這時會先以initrd所提供的目錄當做是系統的暫時目錄.

其中有個lib目錄:里面存放著許多的模塊,即現在系統所有的模塊,這代表目錄中所存放的模塊都是開機所必須加載的模塊.例如當kernel加載Initrd之后,initrd將會加相應的網絡模塊驅動,以便讓我們進入操作系統能夠識別到網卡.

復制代碼
代碼如下:

root@192.168.30.68:initrd# lsmod | grep bnx2 #本機網絡驅動
bnx2 183048 0
root@192.168.30.68:initrd# find . -name 'bnx2*' #initrd里bnx2對應的模塊
./lib/modules/2.6.18-6-amd64/kernel/drivers/net/bnx2.ko
./lib/firmware/bnx2-09-4.0.5.fw
./lib/firmware/bnx2-06-4.0.5.fw

假如臨時又添加了一塊最新的網卡,希望在開機時加載,這時只要修改initrd文件的內容在打個包就可以了,比起重新編譯kernel或者安裝操作系統要方便多了.


下面介紹如何讓將修改后的initrd文件再重新打包起來.

1.在修改后的文件目錄下,使用find將所有的文件列出來,再通過pipeline,把所有清單交給cpio指令.cpio用到的參數'c'代表用新的SVR4可移植格式.'o'代表建立文件.最后用gzip以最佳的壓縮效率'-9'壓縮(默認是-6),使用'>'導出.

復制代碼
代碼如下:

root@192.168.30.68:initrd# ls
bin conf etc init lib lib64 sbin scripts
root@192.168.30.68:initrd# find | cpio -co | gzip -9 > initrd.img-2.6.18-6-amd64
32884 blocks
root@192.168.30.68:initrd# ls
bin conf etc init initrd.img-2.6.18-6-amd64 lib lib64 sbin scripts
root@192.168.30.68:initrd# file initrd.img-2.6.18-6-amd64
initrd.img-2.6.18-6-amd64: gzip compressed data, from Unix, last modified: Tue May 14 13:50:26 2013, max compression

2.將該文件copy到/boot/下.重啟機器生效.

此外在initrd被kernel加載后的開機流程,是依照initrd文件中的一個init文件,由它所提供的腳本一步一步往下做,包括實體硬盤加載實際的操作系統也是由這個文件提供的.

復制代碼
代碼如下:

root@192.168.30.68:initrd# ls
bin conf etc init lib lib64 sbin scripts
root@192.168.30.68:initrd# cat init
#!/bin/sh


復制代碼
代碼如下:

echo "Loading, please wait..."


復制代碼
代碼如下:

[ -d /dev ] || mkdir -m 0755 /dev
[ -d /root ] || mkdir -m 0700 /root
[ -d /sys ] || mkdir /sys
[ -d /proc ] || mkdir /proc
[ -d /tmp ] || mkdir /tmp
mkdir -p /var/lock
mount -t sysfs -o nodev,noexec,nosuid none /sys
mount -t proc -o nodev,noexec,nosuid none /proc


復制代碼
代碼如下:

# Note that this only becomes /dev on the real filesystem if udev's scripts
# are used; which they will be, but it's worth pointing out
tmpfs_size="10M"
if [ -e /etc/udev/udev.conf ]; then
. /etc/udev/udev.conf
fi
mount -t tmpfs -o size=$tmpfs_size,mode=0755 udev /dev
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1
[ -e /dev/null ] || mknod /dev/null c 1 3
> /dev/.initramfs-tools
mkdir /dev/.initramfs


復制代碼
代碼如下:

# Export the dpkg architecture
export DPKG_ARCH=
. /conf/arch.conf


復制代碼
代碼如下:

# Set modprobe env
export MODPROBE_OPTIONS="-qb"


復制代碼
代碼如下:

# Export relevant variables
export ROOT=
export ROOTDELAY=
export ROOTFLAGS=
export ROOTFSTYPE=
export break=
export init=/sbin/init
export quiet=n
export readonly=y
.....

標簽:優質穩定 孝感 臺州 昌都 海東 哈密 九江 玉樹

巨人網絡通訊聲明:本文標題《在Linux系統上開啟Initrd文件系統的方法》,本文關鍵詞  在,Linux,系統,上,開啟,Initrd,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《在Linux系統上開啟Initrd文件系統的方法》相關的同類信息!
  • 本頁收集關于在Linux系統上開啟Initrd文件系統的方法的相關信息資訊供網民參考!
  • 推薦文章
    日本免费看视频| 亚洲不卡一区二区三区在线| 中文字幕97| 国产伦精品一区三区视频| 成人免费观看视频| 日日爽天天| 国产网站免费在线观看| 国产一区精品| 色综合久久天天综线观看| 国产一区二区精品久久| 欧美爱爱动态| 精品久久久久久中文字幕2017| 久久精品欧美一区二区| 国产视频一区二区在线播放| 日韩在线观看网站| 国产精品免费精品自在线观看| 99色视频在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 欧美一区二区三区性| 国产麻豆精品视频| 国产麻豆精品视频| 黄视频网站在线免费观看| 尤物视频网站在线| 精品国产亚洲一区二区三区| 国产a一级| 亚洲不卡一区二区三区在线| 日韩中文字幕一区| 国产a视频| 四虎影视库| 日日爽天天| 日韩av片免费播放| 精品国产一级毛片| 国产不卡精品一区二区三区| 午夜在线亚洲| 成人影院久久久久久影院| 一级毛片视频播放| 欧美大片aaaa一级毛片| 天天做人人爱夜夜爽2020| 亚欧成人乱码一区二区| 欧美大片a一级毛片视频| 国产成人精品综合在线| 四虎影视久久久| 亚洲 国产精品 日韩| 精品视频在线观看一区二区| 国产原创视频在线| 尤物视频网站在线| 免费的黄视频| 黄色福利片| 久草免费资源| 日韩字幕在线| 韩国三级视频网站| 一本高清在线| 可以免费看毛片的网站| 成人免费网站视频ww| 日韩在线观看视频网站| 久久99中文字幕| 国产精品自拍亚洲| 国产成人精品综合在线| 美女被草网站| 999精品视频在线| 国产网站免费视频| 韩国毛片免费大片| 久久久久久久男人的天堂| 国产伦精品一区二区三区无广告 | 精品国产香蕉伊思人在线又爽又黄| 精品国产一区二区三区国产馆| 高清一级片| 国产高清在线精品一区二区| 日本特黄一级| 香蕉视频久久| 九九精品影院| a级精品九九九大片免费看| 午夜激情视频在线观看| 成人免费福利片在线观看| 高清一级毛片一本到免费观看| 日韩在线观看网站| 高清一级毛片一本到免费观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 精品在线观看一区| 亚飞与亚基在线观看| 国产成人啪精品视频免费软件| 久草免费资源| 青青青草影院| 国产一区二区精品| 日韩专区一区| 成人影院久久久久久影院| 国产视频一区二区在线观看| 精品国产一区二区三区久久久蜜臀 | 亚飞与亚基在线观看| 黄视频网站在线免费观看| 九九久久国产精品| 亚洲爆爽| 久草免费在线色站| 国产麻豆精品高清在线播放| 精品国产香蕉在线播出| 国产原创中文字幕| 国产不卡在线看| 午夜家庭影院| 国产视频一区二区在线播放| 九九久久99| 99色视频| 日本特黄特色aaa大片免费| 午夜激情视频在线观看| 欧美国产日韩精品| 四虎影视久久久免费| 国产伦精品一区二区三区无广告| 欧美激情一区二区三区视频| 欧美电影免费| 色综合久久天天综合观看| 99久久视频| 国产一区二区福利久久| 国产欧美精品| 九九久久99| 精品国产一区二区三区国产馆| 欧美一区二区三区性| 国产伦精品一区二区三区无广告| 中文字幕一区二区三区 精品| 可以在线看黄的网站| 一级女性全黄久久生活片| 免费国产一级特黄aa大片在线| 高清一级毛片一本到免费观看| 一级女人毛片人一女人| 成人a大片在线观看| 日韩免费在线| 久久精品免视看国产成人2021| a级毛片免费全部播放| 国产高清视频免费观看| 九九九国产| 黄视频网站免费观看| 精品视频在线看 | 国产不卡在线观看| 二级片在线观看| 高清一级做a爱过程不卡视频| 国产视频一区二区在线播放| 精品国产一区二区三区久久久狼| 美女免费毛片| 青青青草视频在线观看| 精品视频在线观看免费| 亚洲精品久久久中文字| 日韩在线观看免费| 免费的黄视频| 国产成a人片在线观看视频| 成人影院一区二区三区| 欧美激情一区二区三区视频高清 | 欧美激情一区二区三区在线| 成人免费网站视频ww| 九九干| 国产精品自拍亚洲| 国产91丝袜在线播放0| 精品视频一区二区三区免费| 日本在线不卡视频| 欧美一级视| 欧美国产日韩在线| 日韩免费片| 色综合久久天天综合观看| 黄视频网站在线观看| 99久久网站| 国产91精品一区| 欧美大片aaaa一级毛片| 国产亚洲免费观看| 韩国毛片| 亚飞与亚基在线观看| 国产a毛片| 日本伦理网站| 精品久久久久久中文| 一本高清在线| 韩国三级视频网站| 国产欧美精品午夜在线播放| 国产伦久视频免费观看视频| 高清一级毛片一本到免费观看| 99久久精品国产片| 亚洲精品永久一区| 韩国毛片免费大片| 欧美一区二区三区在线观看| 香蕉视频一级| 韩国三级视频网站| 免费一级片在线| 日韩中文字幕一区| 999精品影视在线观看| 欧美18性精品| 欧美另类videosbestsex| 可以免费看毛片的网站| 成人a大片在线观看| 亚洲 国产精品 日韩| 高清一级淫片a级中文字幕| 精品久久久久久免费影院| 天天做日日爱夜夜爽| 黄色短视频网站| 精品视频在线看| 午夜家庭影院| 久久福利影视| 成人高清护士在线播放| 国产国产人免费视频成69堂| 色综合久久久久综合体桃花网| 久久久久久久久综合影视网| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 亚欧成人毛片一区二区三区四区| 日韩中文字幕在线观看视频| 国产不卡高清在线观看视频| 日韩在线观看视频黄|