校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 關于Linux內核編譯失敗的一些解決方案

關于Linux內核編譯失敗的一些解決方案

熱門標簽:中山防封卡電銷卡辦理 拉薩銷售外呼系統軟件 江蘇小型外呼系統軟件 百度地圖標注未成功 電話機器人服務器部署 電銷語音機器人哪個好 地圖上標注點位的圖標 常熟外呼系統 文山外呼營銷系統

相信有無數的人,有編譯內核失敗的記錄, 99% 的原因就是和文件系統,硬件驅動有關,比如沒有找到 SCSI 卡.但對這些問題大家都無從下手,都是亂測試.
因為我管理公司所有的服務器的內核定制,優化和升級。下面我要教大家一些技巧,來幫助大家少失敗些.來編譯一個自己可以用的全新的內核。

內核常識

我們先要了解一點.一個內核有哪些東西.

比如我們:


復制代碼
代碼如下:
rpm -ql kernel

可以見到如下的信息


復制代碼
代碼如下:
/boot/System.map-2.6.24.4
/boot/config-2.6.24.4
/boot/vmlinuz-2.6.24.4
/lib/modules/lib/modules/2.6.24.4
/lib/modules/2.6.24.4/build
/lib/modules/2.6.24.4/kernel

見到沒,其實沒有什么東西,主要就上面幾個在 boot 下的文件 ,和在 /lib/modules 下的模塊文件.
System.map 內核符號映射表,顧名思義就是將內核中的符號(也就是內核中的函數)和它的地址能聯系起來的一個列表。
config 內核編譯的配置文件,make oldconfig 就需要使用這個文件.
vmlinuz 這就是真實的可引導的、壓縮的內核。

好了,由上面我們知道,這個和系統其它東西沒有關系了,所以刪除一個內核也就是刪除這幾文件.

大家可以參考一下前些日子我寫的[Linux]編譯一個 RHEL 定制的內核 rpm 包 .

Initrd 的了解和檢查

我今天要講的是最影響啟動的東西 initrd .大家會想,這是什么,內核中都沒有,其它這個是內核包安裝完后根據每個不同的硬件生成的.硬件不一樣這個不一樣.下面這個是很官方的介紹:
initrd是“initial ramdisk”的簡寫。initrd一般被用來臨時的引導硬件到實際內核vmlinuz能夠接管并繼續引導的狀態。圖中的initrd- 2.4.7-10.img主要是用于加載ext3等文件系統及scsi設備的驅動。

比 如,使用的是scsi硬盤,而內核vmlinuz中并沒有這個scsi硬件的驅動,那么在裝入scsi模塊之前,內核不能加載根文件系統,但scsi模塊 存儲在根文件系統的/lib/modules下。為了解決這個問題,可以引導一個能夠讀實際內核的initrd內核并用initrd修正scsi引導問 題。initrd-2.4.7-10.img是用gzip壓縮的文件,initrd實現加載一些模塊和安裝文件系統等功能。

所以我們現在知道了,如果是一個奇怪的硬件,但是不能正常使用,就是 initrd 默認沒有加載,要不就是內核沒有加進去.

下面根據導致失敗的原因進行一下分類處理

新內核啟動失敗后: 在原有老系統中使用 modprobe 和 lsmod 來確認需要加載的模塊

我們知道了 initrd 影響啟動,那我們要怎么樣來確認是不是加載全了硬件啦. initrd 很大程度上是靠 lsmod 出來的模塊,還有 /etc/modprobe 的指示來做的.當然 也可以用 lspci 之類來確認.
如下


復制代碼
代碼如下:
cat /etc/modprobe.conf
alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptscsi
alias scsi_hostadapter2 mptspi
alias scsi_hostadapter3 mptsas
alias scsi_hostadapter4 mptscsih
alias scsi_hostadapter5 ata_piix/p> p># lsmod
Module Size Used by
iptable_filter 7300 1
ip_tables 18132 1 iptable_filter
xt_tcpudp 7680 1
x_tables 19204 2 ip_tables,xt_tcpudp
ipv6 245092 32

我們發現,這臺機器有一些別的機器上沒有的硬件,就是 mpt 的相關內容.如果在上面重新編譯內核,沒有加載這幾個模塊,就一定會啟動失敗.

使用原因老系統中可以正常啟動的 initrd 來確認新內核需要加載的模塊

好了.上面還是我們看得見的,要是我們看不見,但啟動失敗怎么辦
我們可以解開 initrd.img 來看原始加載那些模塊.


復制代碼
代碼如下:
cd /boot/
mkdir tmp
cp initrd*****.img tmp
cd /tmp
zcat intrd**img | cpio -id
cat init

好了,我們主要注意下面這些內容


復制代碼
代碼如下:
echo "Loading scsi_mod.ko module"
insmod /lib/scsi_mod.ko
echo "Loading sd_mod.ko module"
insmod /lib/sd_mod.ko
echo "Loading mptbase.ko module"
insmod /lib/mptbase.ko
echo "Loading mptscsi.ko module"
insmod /lib/mptscsi.ko
echo "Loading mptspi.ko module"
insmod /lib/mptspi.ko
echo "Loading mptsas.ko module"
insmod /lib/mptsas.ko
echo "Loading mptscsih.ko module"
insmod /lib/mptscsih.ko
echo "Loading jbd.ko module"
insmod /lib/jbd.ko
echo "Loading ext3.ko module"
insmod /lib/ext3.ko

根據上面這些,和你原來的,看看你是不是沒有這些信息中提到的模塊.沒有,就快點加上吧,用這些方法處理后,99% 是能啟動的,在不能啟動我也幫不到你了

重新修改 initrd 的內核


復制代碼
代碼如下:
gzip -cd initrd-2.6.34.2.img | cpio -imd --quiet find . | cpio -co | gzip -9 > /tmp/initrd-2.6.34.2.img

編譯內核你可以知道的東西

為新核心重命名
我 們在編譯內核之前, 可以先修改Makefile中的版本信息,打開/usr/src/Linux/Makefile。在開始部分有一個變量EXTRAVERSION可以自行 定義。修改這個變量,比如改成 “EXTRAVERSION=-ChinaCache”后,編譯出的核心版本號就會顯示成2.6.24-ChinaCache。
但實際上, 從2.6.8的版本起可在內核版本號后面添加個性化字符串. 所以也就沒有必要修改Makefile了: () Local version – append to kernel release
如果你即修改了Makefile中的EXTRAVERSION, 又在配置時定義了local version. 那么local version所定義的字符串將位于末尾, 緊跟在EXTRAVERSION的值之后.

depmod
功能:分析可加載模塊的依賴性,生成modules.dep文件和映射文件。
用法:

復制代碼
代碼如下:
depmod [-b basedir] [-e] [-F System.map] [-n] [-v] [version] [-A]
depmod [-e] [-F System.map] [-n] [-v] [version] [filename...]

描述:
Linux內核模塊可以為其它模塊提供提供服務(在代碼中使用EXPORT_SYMBOL),這種服務被稱作"symbols"。若第二個模塊使用了這個symbol,則該模塊很明顯依賴于第一個模塊。這些依賴關系是非常繁雜的。

depmod 讀取在/lib/modules/version 目錄下的所有模塊,并檢查每個模塊導出的symbol和需要的symbol,然后創建一個依賴關系列表。默認地,該列表寫入到/lib/moudules /version目錄下的modules.dep文件中。若命令中的filename有指定的話,則僅檢查這些指定的模塊(不是很有用)。

若命令中提供了version參數,則會使用version所指定的目錄生成依賴,而不是當前內核的版本(uname -r 返回的)。

mkinitrd 命令的使用
功能:建立要載入ramdisk的映像文件。
用法:mkinitrd [-fv][--omit-scsi-modules][--version][--preload=模塊名稱>][--with= lt;模塊名稱>][映像文件][Kernel 版本]

描述:mkinitrd可建立映像文件,以供Linux開機時載入ramdisk。

參數:
-f 若指定的映像問家名稱與現有文件重復,則覆蓋現有的文件。
-v  執行時顯示詳細的信息。
–omit-scsi-modules 不要載入SCSI模塊。
–preload=模塊名稱> 指定要載入的模塊。
–with=模塊名稱> 指定要載入的模塊。
–version 顯示版本信息

標簽:石家莊 淮安 湖南 法律問答 馬鞍山 和田 開封 和田

巨人網絡通訊聲明:本文標題《關于Linux內核編譯失敗的一些解決方案》,本文關鍵詞  關于,Linux,內核,編譯,失,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《關于Linux內核編譯失敗的一些解決方案》相關的同類信息!
  • 本頁收集關于關于Linux內核編譯失敗的一些解決方案的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    337p日本欧洲亚洲大胆精品 | 国v精品久久久网| 青草av.久久免费一区| 激情五月激情综合网| 91免费看片在线观看| 久久精品视频一区二区三区| 亚洲激情欧美激情| 91在线国产观看| 欧美一区二区免费观在线| 欧美极品另类videosde| 日韩中文字幕91| 成人福利视频在线看| 日韩一区二区三区视频在线| 亚洲欧美另类久久久精品| 美女视频黄 久久| 欧美视频日韩视频| 亚洲欧美日韩国产一区二区三区| 久久久久久免费| 国产成人av资源| 成人激情小说网站| 日韩精品中文字幕一区| 亚洲人亚洲人成电影网站色| 国产真实乱对白精彩久久| 欧美日韩一区二区三区在线看| 中文字幕国产精品一区二区| 精品一区二区在线看| 欧美精品乱码久久久久久按摩| 亚洲欧洲中文日韩久久av乱码| 国产高清一区日本| 久久综合色8888| 久久精品国产99国产精品| 在线综合视频播放| 青青草97国产精品免费观看| 欧美精品九九99久久| 亚洲国产一区二区三区| 欧美色偷偷大香| 亚洲综合另类小说| 欧美又粗又大又爽| 亚洲国产精品精华液网站| 欧美三级视频在线观看| 天天综合天天做天天综合| 7777精品久久久大香线蕉| 亚洲欧美国产高清| 日韩一区二区三区精品视频| 国产蜜臀97一区二区三区| 欧美日韩视频在线一区二区| 精品视频一区二区三区免费| 国产精品久久久久久久久免费相片| 一区二区三区精品在线观看| 裸体一区二区三区| 7777精品伊人久久久大香线蕉经典版下载| 国产日本一区二区| 国产精品三级在线观看| 中文字幕制服丝袜成人av| 国内久久精品视频| 国产剧情一区二区| 美女国产一区二区三区| 午夜不卡在线视频| 在线一区二区观看| 欧美在线观看你懂的| 欧美综合一区二区| 日韩一区二区电影网| 国产亚洲女人久久久久毛片| 亚洲免费在线观看视频| 国产精品 欧美精品| 欧美大片国产精品| 日韩av一区二区在线影视| eeuss国产一区二区三区| 久久这里只有精品6| 久久超级碰视频| 欧美精品乱人伦久久久久久| 亚洲色图视频网站| 色悠久久久久综合欧美99| 国产精品短视频| 成人av电影在线| 国产精品成人免费在线| 成人aaaa免费全部观看| 亚洲视频一区在线| 欧美亚洲综合另类| 亚洲免费毛片网站| 色先锋资源久久综合| 欧美激情一区二区三区蜜桃视频 | 国产精品高潮久久久久无| 在线观看www91| 波多野结衣中文一区| 日韩欧美黄色影院| 欧美国产精品一区| 日本韩国一区二区| 中文字幕电影一区| 日韩和欧美一区二区| 蜜桃久久久久久久| 91九色02白丝porn| 欧美女孩性生活视频| 色噜噜久久综合| 日本精品视频一区二区三区| 精品88久久久久88久久久| 蜜臀久久99精品久久久画质超高清| 91麻豆swag| 美女一区二区视频| 国产欧美一区二区精品仙草咪| 丁香六月久久综合狠狠色| 成人欧美一区二区三区白人| 欧美色网一区二区| 日本美女一区二区三区视频| 日韩欧美国产一二三区| 国产盗摄一区二区| 欧美国产在线观看| 久久夜色精品国产欧美乱极品| 成人精品gif动图一区| 亚洲国产aⅴ天堂久久| 99久久婷婷国产| 久久99久久久久| 中文字幕亚洲视频| 日韩欧美成人激情| 色悠久久久久综合欧美99| 国精品**一区二区三区在线蜜桃| 亚洲欧洲综合另类| 国产精品视频麻豆| 欧美va亚洲va国产综合| 日韩欧美色综合| 欧美日韩一区二区三区视频| 国产另类ts人妖一区二区| 欧美猛男gaygay网站| 蜜桃av一区二区| 免费在线欧美视频| 日韩精品每日更新| 国产欧美日韩亚州综合| 中文字幕国产一区| 久久先锋影音av鲁色资源| 精品三级在线看| 久久亚洲一级片| 久久久www成人免费无遮挡大片| 日韩精品一区二区三区四区| 欧美日韩日日摸| 日韩限制级电影在线观看| 欧美美女直播网站| 欧美日韩国产另类一区| 欧美激情一区二区三区四区| 成人欧美一区二区三区1314| 亚洲综合色丁香婷婷六月图片| 欧美高清在线精品一区| 亚洲国产三级在线| 精品在线免费视频| 成人在线视频一区二区| 色婷婷国产精品久久包臀| 欧美日韩一二区| 精品国产乱码久久久久久夜甘婷婷 | 91婷婷韩国欧美一区二区| 欧美三级电影精品| 精品少妇一区二区三区| 亚洲丝袜自拍清纯另类| 亚洲欧洲日韩女同| 蜜桃视频第一区免费观看| 国产精品一卡二卡| 欧美精品免费视频| 中文字幕在线视频一区| 日日摸夜夜添夜夜添精品视频| 亚洲自拍偷拍欧美| 成人午夜在线视频| 精品精品国产高清a毛片牛牛| 亚洲欧美日韩国产成人精品影院| 一区二区不卡在线播放 | 欧美成人艳星乳罩| 亚洲免费毛片网站| 99精品黄色片免费大全| 精品精品欲导航| 理论片日本一区| 这里只有精品电影| 日本一二三不卡| 男女男精品视频网| 欧美性猛交xxxxxxxx| 久久久国产精品麻豆| 蜜臀av一区二区三区| 福利电影一区二区三区| 欧美三区免费完整视频在线观看| 欧美午夜在线一二页| 一区二区三区高清在线| 欧美日韩一区精品| 亚洲va欧美va人人爽午夜| 欧美肥妇free| 日韩高清在线电影| 久久久综合视频| 成人在线视频一区| 亚洲欧洲一区二区三区| 在线观看视频一区二区欧美日韩| 亚洲图片欧美综合| 精品国产免费久久| 91蜜桃网址入口| 国产日产欧美一区二区视频| 成人性色生活片| 日韩电影免费在线观看网站| 欧美男男青年gay1069videost | 欧美日韩免费在线视频| 蜜臀精品一区二区三区在线观看 | 欧美一区二区三区视频免费| 久久99国产精品免费| 亚洲欧美日韩电影| 国产女人18毛片水真多成人如厕| 色综合久久中文综合久久牛| 美女视频黄 久久|