CentOS RHEL 5 3 編譯核心

2021-06-21 13:18:06 字數 1718 閱讀 5011

# tar -jxvf linux-2.6.27.tar.bz2 

# cd linux-2.6.27 

# make mrproper 

# make menuconfig 

# make clean 

# make bzimage 

# make modules 

# make modules_install 

# mkinitrd /boot/initrd_2.6.27.img 2.6.27

執行mkinitrd命令時,提示」no module dm-mem-cache found for kernel 2.6.27, aborting.」時,表明該版本的mkinitrd有bug。 

解決方法,1是當使用mkinitrd時,使用」-without-dmraid」這個引數。2是在使用mkinitrd之前,先建立乙個noraid檔案。建立方法如下: 

# echo 「dmraid=no」 > /etc/sysconfig/mkinitrd/noraid 

# chmod 755 /etc/sysconfig/mkinitrd/noraid

然後再執行mkinitrd命令。

這裡我採用了第一種辦法 

# mkinitrd /boot/initrd-2.6.27.img 2.6.27 –without-dmraid

執行完mkinitrd後,就要在啟動選單中增加編譯好的核心資訊,以便啟動時可以選擇核心版本。 

# cp arch/x86/boot/bzimage /boot/vmlinuz-2.6.27 

# cp system.map /boot/system.map-2.6.27

開啟/etc/grub.conf檔案,增加以下內容到檔案結尾。

title centos (2.6.27) 

root (hd0,0) 

kernel /vmlinuz-2.6.27 ro root=label=/ 

initrd /initrd-2.6.27.img

儲存,重啟,進行grub的啟動選單中,選擇」centos(2.6.27)」,即可使用編譯好的核心。 

如果你覺得make modules_install後面的步驟太麻煩的話,就直接用下面的命令讓系統幫你做好了 

# make install

下面是執行時的提示資訊: 

sh /usr/src/linux-2.6.27/arch/x86/boot/install.sh 2.6.27 arch/x86/boot/bzimage system.map 「/boot」 

warning: no module dm-mem-cache found for kernel 2.6.27, continuing anyway 

warning: no module dm-message found for kernel 2.6.27, continuing anyway 

warning: no module dm-raid45 found for kernel 2.6.27, continuing anyway

這些只是提示,對系統沒有什麼影響,經本人查閱相關的資料。 

可能是核心和mkinitrd的bug,大家可以參考一下這篇文章 

通過給核心打dm-raid45這個補丁,可以解決掉」warning: no module dm-raid45 found for kernel 2.6.29.4, continuing anyway」這個提示 

謝謝!

CentOS RHEL 5 3 編譯核心

wget tar jxvf linux 2.6.27.tar.bz2 cd linux 2.6.27 make mrproper make menuconfig make clean make bzimage make modules make modules install mkinitrd bo...

Item 53 注意編譯警告

item 53 pay attention to compiler warnings.編譯警告在c 中很重要,因為它可能是個錯誤啊!不要隨便忽略那些警告,因為編譯器的作者比你更清楚那些 在幹什麼。所以,其實在多數專案實踐中,不僅要消除所有編譯警告,消除所有 風格檢查警告也是常見慣例。還是看乙個常見的...

安裝debian總結以及編譯linux核心

將磁碟進行壓縮操作,並且保留出乙個主分割槽的位置。然後,重新啟動系統按f12,選擇u盤啟動,進行安裝。有幾個需要注意的地方 1 事先在windows系統中,通過 計算機 管理 磁碟管理 的工具,將空閒空間較大的分割槽進行 壓縮盤 操作,我這裡壓縮出40g的空間,再分成兩個partition 乙個用於...