首頁  >  文章  >  運維  >  核心編譯步驟

核心編譯步驟

巴扎黑
巴扎黑原創
2017-07-21 09:18:422122瀏覽

第一步我們首先應該下載kernel的軟體包,可以點選進行下載

第二步驟然後解壓縮linux*對應版本的軟體包到目前目錄,目前本人所在目錄為使用者家目錄

tar xvf linux-4.12.tar.xz

第三步cd切換進解壓縮後的目錄中,如cd linux-4.12,並之後的編譯安裝等操作都只能在此目錄下執行
第四步複製系統本身的核心模組功能文字設定檔並重新命名為.config

cp /boot/config-$(uname -r) .config

第五步驟安裝開發包組

yum -y groupinstall "Development Tools"

第六步執行編譯,使用選單設定核心選項,若編譯報錯,則根據報錯提示安裝對應的軟體包

 make menuconfig

第七步編譯內核,編譯過程有點長,請耐心等待,請勿終止操作

make -j 2   使用2个CPU多线程同时编译

第八步根據錯誤提示安裝軟體包,如下圖

核心編譯步驟
提示安裝openssl-devel軟體包

yum -y install openssl-devel  根据错误提示安装相应的软件开发包

第九步然後繼續編譯make -j 2
第十步在編譯完成之後,更新資料庫,然後就可以查看我們編譯進內核的模組是否成功

updatedb   更新数据库
locate ntfs.ko  查看我们编译进内核的ntfs模块是否存在于内核中

第十一步安裝複製模組文件,安裝過程有點長,請耐心等待

make modules_install

第十二步驟將核心拷貝到/boot目錄下並修改grub檔案,make執行報錯,若報錯,則根據提示安裝對應的軟體包

make install 将内核拷贝到/boot目录下并修改grub文件

报错信息如下

核心編譯步驟

核心編譯步驟

  1. yum -y install elfutils-libelf-devel  安装elfutils-libelf-devel包
    make install  继续执行
  2. 第十三步驟檢視/boot目錄下已產生vmlinuz-4.12.0-danran核心檔案和grub.cfg或grub.conf檔案是否改變
  3. /boot/vmlinuz-4.12.0-danran  
    cat /boot/grub2/grub.cfg 查看grub配置文件,里面多了一个新内核菜单

  4. #第十四步reboot 重啟系統選擇新核心啟動
  5. 清理核心編譯產生的檔案

    cd linux-4.12
    make clean:清理大多数编译生成的文件,但会保留config文件等;
    make mrproper:清理所有编译生成的文件、config及某些备份文件
    make distclen:mrproper、patches以及编辑器备份文件
    核心編譯作業流程如下
  6. 下載linux*對應軟體包

  7. tar xvf linux-4.12.tar.xz 解壓縮核心到目前目錄核心編譯步驟

  8. cd linux-4.12

  9. cp /boot/config-3.10.0-514.el7.x86_6 .config 複製系統本身的功能設定檔到核心解壓縮目錄下並命名為.config


    核心編譯步驟
    ls .config核心編譯步驟
    核心編譯步驟
    yum -y groupinstall "Development Tools" 安裝Development Tools開發套件群組核心編譯步驟

  10. #make menuconfig 開啟圖形功能設定介面

  11. 核心編譯步驟
    核心編譯步驟#如果上一步驟報錯,則依照報錯提示安裝對應的軟體包,eg ncurses-devel軟體包
    核心編譯步驟

    修改核心的版本號碼為danran

  12. 新增核心的支援ntfs功能

  13. 核心編譯步驟

  14. vim .config查看設定文件,確認ntfs功能是否開啟,核心版本號是否改變

  15. lscpu 查看cpu訊息,和cpu核數

  16. make - j 2 編輯核心

  17. 根據編譯報錯提示安裝對應的軟體包
  18. 上圖所示,提示安裝openssl-devel軟體包
    核心編譯步驟

    yum -y install openssl-devel 根據錯誤提示安裝對應的軟體開發套件

  19. yum -y install elfutils-libelf-devel核心編譯步驟

  20. make -j 2 繼續編譯,編譯時間有點長,請耐心等待,請勿終止

  21. updatedb 更新資料庫

    locate ntfs.ko 查看我們編譯進核心的ntfs模組是否存在於核心中
  22. #########make modules_install 安裝複製模組文件,請耐心等待複製過程######################cd /lib/modules###########find 4.12. ###.danran/ -name "###.ko" 查看新編譯核心中的所有ko模組檔案#############cd /root/linux-4.12###
  23. make install 將核心拷貝到/boot目錄下並修改grub檔案,make執行報錯,根據提示安裝對應軟體包
    核心編譯步驟

  24. yum -y install elfutils-libelf-devel 安裝elfutils-libelf-devel套件

  25. ##ll /boot/vmlinuz-4.12.0-danran 檢視/boot目錄下已產生vmlinuz-4.12.0-danran核心檔案

  26. cat /boot/grub2/grub.cfg 查看grub設定文件,裡面多了一個新核心選單


    核心編譯步驟

  27. reboot 重新啟動系統選擇新核心啟動

  28. #ls linux-4.12/fs/ntfs/ntfs.ko 檢視ntfs模組是否已安裝

單獨編譯ntfs.ko模組檔案

  1. #cd linux-4.12 進入核心目錄

  2. make fs/ntfs/ntfs.ko 重新編譯ntfs.ko模組檔案

  3. ll fs/ntfs/ntfs.ko 查看ntfs.ko模組檔案是否編譯產生

  4. #cp fs/ntfs/ntfs.ko /lib/modules 單獨拷貝模組檔案到/lib/modules中


    核心編譯步驟

  5. ##核心的相關知識點請點選連結

以上是核心編譯步驟的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn