新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 如何編譯安裝Linux內(nèi)核

如何編譯安裝Linux內(nèi)核

作者: 時(shí)間:2007-04-24 來源:網(wǎng)絡(luò) 收藏

 硬件配置
  
    下列步驟需在一個(gè)下列配置的計(jì)算機(jī)系統(tǒng)中演示:Compaq Presatio 4010 Series cinorter system,15.5GB硬盤,96 MB內(nèi)存,400 MHz Intel Celeron Processorm ,Red Hat Linux 7.0(內(nèi)核版本為2.2.16-22)
  
    目標(biāo)
  
    我們的目標(biāo)是在進(jìn)行完下列步驟后得到一個(gè)完全運(yùn)行的定制過的內(nèi)核,例如,我有一個(gè) 定制過的內(nèi)核2.2.16-22ghosh在我的系統(tǒng)中運(yùn)行(我的名字叫Subhasish Ghosh,你也可以命名為其它名稱,事實(shí)上在系統(tǒng)中有兩個(gè)內(nèi)核是同時(shí)運(yùn)行的)下面,搜索并編譯Linux內(nèi)核。
  
    編譯、配置并安裝一個(gè)定制的RedHat Linux內(nèi)核的步驟:
  
    整個(gè)步驟如下:
  
    步驟1:以“root身份登錄,然后執(zhí)行下列步驟
  
    步驟2:在命令提示中鍵入 rpm-q kernel-headers kernel-source make dev86
  
    步驟3:如果這些rpm包已經(jīng)裝好,直接進(jìn)入步驟4。否則,掛載上RedHat Linux 7.0 光盤并執(zhí)行rpm-Uvh以便安裝這些必須的rpm包。
  
    步驟4:如果你已有一個(gè)完全運(yùn)行的X window System,那么在命令提示中鍵入“startx”。如果沒有配置X window System,那么在命令提示中鍵入“make config”或者“make menuconfig”。
  
    步驟5:進(jìn)入GNOME環(huán)境,打開GNOME終端并鍵入“cd /usr/src/linux”然后回車。
  
    步驟6:在/usr/src/linux 目錄下,鍵入“make xconfig”。
  
    步驟7:屏幕上將出現(xiàn)GUI版本的“make config,它將提供給你不同選項(xiàng)使你獲得一個(gè)定制的內(nèi)核。
  
    步驟8:現(xiàn)在,我建議你盡量使用缺省設(shè)置。請(qǐng)注意不要輕易改變選項(xiàng),因?yàn)樵S多選項(xiàng)非常敏感,需要專業(yè)處理,你僅需要做以下改動(dòng):
  
    1.處理器型號(hào)和特征:選擇正確的處理器取決于你是否使用Pentium Ⅱ或者Pentium Ⅲ,或像我一樣使用Intel Celeron.例如,我操作如下:
  
  Processor Family:PPro/686MX
  Maximum Physical Memory:1 GB
  Math Emulation:Yes
  MTRR:Yes
  SMP:Yes
  
    2.打開文件系統(tǒng)對(duì)話框并做以下改動(dòng)
  
    例如我是如下選擇的:
  
  DOS FAT fs support:Yes(y)
  MSDOD fs support:Yes(y)
  UMSDOS:m
  VFAT(Window 95) support:Yes(y)
  NTFS filesystem support (read-only):Yes(y)
  NTFS read-write support(DANGEROUS):NO(n)
  
    完成以上選擇后,請(qǐng)確認(rèn)你沒有改變其它選項(xiàng)。以上所有改動(dòng)是無害的, 不會(huì)對(duì)你的Linux內(nèi)核產(chǎn)生壞作用。
  
    3.保存并從主對(duì)話框中退出
  
    步驟9:在/usr/src/Linux目錄下執(zhí)行l(wèi)s -al.
  
    步驟10:你將看到一個(gè)名為Makefile的文件,它對(duì)整個(gè)編譯過程非常重要。因此,一定要先使用“cp Makefile Makefile.bak”命令對(duì)該文件進(jìn)行備份。

本文引用地址:http://butianyuan.cn/article/258218.htm

步驟11:在usr/src/linux 中執(zhí)行vi Makefile。
  
    步驟12:找到EXTRAVERSION并改變它.例如:我將EXTRAVERSION=-22改為EXTRAVERSION=-22grosh.當(dāng)然,你完全可以任意命名它。
  
    步驟13:保存并退出文件。
  
    步驟14:下列步驟在/usr/src/Linux 目錄下執(zhí)行。鍵入“make dep clean”回車。
  
    步驟15:鍵入:“make bzImage modules”。這需要花費(fèi)一些時(shí)間。你可以在這段時(shí)間休息一會(huì)。
  
    步驟16:以上步驟完成后,在/usr/src/Linux/arch/i386/boot目錄下將產(chǎn)生一個(gè)“bzlmage”文件。找到這個(gè)目錄并檢查“bzlmage”文件是否已經(jīng)產(chǎn)生.如果上述 步驟得到了正確的執(zhí)行并且在“make xconfig”中的所有選項(xiàng)都選擇正確的話,你一定會(huì)看到這個(gè)文件。如果沒有這個(gè)文件,那么很遺憾,你得從頭開始。
  
    步驟17:在/usr/src/linux目錄下鍵入“cp ./arch/i386/boot/bzlmage /boot/vmlinuz-2.2.16.22ghosh”并回車。
  
    步驟18:鍵入:“cp System.map /boot/System.map-2.2.16-22ghosh”。
  
    步驟19:鍵入:“make modules install”,回車。你將看見所有的模塊將在一個(gè)新的指定目錄下被安裝。
  
    步驟20:鍵入:“mkinitrd /boot/initrd-2.2.16-22ghosh.img2.2.16-22ghosh”。
  
    步驟21:鍵入:“vi /etc/lilo.conf”且隨后加入以下條目
  
  image=/boot/vmlinuz-2.2.16-22ghosh
  label=GhoshKernel
  initrd=/boot/initrd-2/2/16-22ghosh.img
  root=/dev/hdc5
  read-only
  
    步驟22:保存并退出。請(qǐng)注意:在lilo.conf文件中已經(jīng)按你的要求改變了相應(yīng)的條目,但重要的一點(diǎn)是根目錄必須是你的系統(tǒng)的根目錄。例如:在我的系統(tǒng)中是在/dev/hde5中。插入你的系統(tǒng)的有關(guān)信息。
  
    步驟23:鍵入:“/sbin/lilo -v -v”。
  
    步驟24:閱讀屏幕上的所有信息。假如沒有顯示錯(cuò)誤,那么所有的工作就已完成了。Congratulations!
  
    步驟25:鍵入:“/sbin/reboot”或“/sbin/shutdowm-r now”重新開機(jī)。
  
    步驟26:在啟動(dòng)屏中,按Tab鍵(如果你使用的是LILO啟動(dòng)屏,可按 ctrl-X 鍵),你可以看見與其它選項(xiàng)一同出現(xiàn)的“GhoshKernel”選項(xiàng)。
  
    步驟27:鍵入:GhoshKernel,回車。完全運(yùn)行的定制內(nèi)核就被引導(dǎo)裝入系統(tǒng)中了。
  
    終曲
  
    以“root”身份登錄,鍵入“uname -r”然后回車。你會(huì)在屏幕上看到2.2.16-22ghosh條目,它表示你正在運(yùn)行定制過的內(nèi)核,而不是2.2.16-22的內(nèi)核版本。記住你可以在一個(gè)計(jì)算機(jī)中運(yùn)行多個(gè)不同版本的內(nèi)核。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉