編譯安裝Linux內核

實驗前準備:在https://www.kernel.org/下載內核

這里我們下載的是:linux-4.14.10.tar.xz

du -sh /app/linux.tar/ 此命令可查看內核文件大小

編譯完成后/lib/modules下會生成4.14.10版的內核

微信截圖_20180103195506

1,tar xvf linux-4.14.10.tar.xz -C /app/
解壓縮準備好的內核壓縮文件到/app下生成一個linux.tar文件

微信截圖_20180103200214

可以對比下原壓縮文件與生成文件的大小,也就是相差10倍,所以編譯之前還是要先考慮下自己的磁盤是否夠用

微信截圖_20180103200349微信截圖_20180103200933

2,cp /boot/config-3.10.0-514.el7.x86_64 .config
我們這里直接復制config-3.10.0-514.el7.x86_64到解壓縮內核文件目錄下linux-4.14.10中改名為config即可,這個文件就是定義了哪些功能要啟用哪些功能不啟用,是打到核心里還是還是放到獨立模塊中,因為硬件太多我們不選用一個一個設置了,因此我們就復制過來這個文件中稍作修改即可 ?,可作為我們編譯選擇各個功能啟用禁用的一個模板,我們接下來就是通過菜單make menuconfig來對他進行編輯,要實現這個功能我們首先要安裝一些開發包組。
3,yum groupinstall Development tools

yum install gcc

yum install ncurses-devel 或者rpm -ivh /misc/cd/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm
安裝這三個軟件即可,ncurses就是字符界面下的一個窗口庫

微信截圖_20180103202340

微信截圖_20180103202600

. . .
4,make menuconfig
進入字符界面下內核編譯菜單

微信截圖_20180103202916

general ?setup —->Local version – append yo kernel release(追加到內核版本之后)

微信截圖_20180103203746

4.14.10-之后就是自定義的內容也就是上面一步定義的
微信截圖_20180103204126

配置完畢后選擇exit退出即可
5,yum install elfutils-libelf-devel

微信截圖_20180103204658

執行編譯命令出現此提示,表示要編譯這些功能但是沒有庫,所以就需要安裝

微信截圖_20180103204931
6,make -j 4 && for i in {1..10};do sleep 0.3; echo -e “\a”;done
安裝編譯

微信截圖_20180103205047
7,sudo yum install openssl-devel
編譯過程中如果出現錯誤就安裝這個包
8,make modules_install
安裝模塊在/lib/modules下生成一個新的文件目錄 4.14.10-1.0.liulinux
9,make install
安裝內核,生成新的內核文件,生成過程中會報錯不用理會

此時編譯完畢。

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90821

(0)
liuyongweiliuyongwei
上一篇 2018-01-03 18:00
下一篇 2018-01-03 21:08

相關推薦

  • 馬哥教育網絡19期+第十七周課程練習

    1、結合圖形描述LVS的工作原理;     LVS (Linux Virtual Server)是一種集群(Cluster)技術,采用IP負載均衡技術和基于內容請求分發技術。調度器具有很好的吞吐率,將請求均衡地轉移到不同的服務器上執行,且調度器自動屏蔽掉服務器的故障,從而將一組服務器構成一個高性能的、高可用的虛擬服務器。整個服務器集群的結…

    Linux干貨 2016-09-05
  • 走向了一條不歸路 – – 開始

    前言:很高興在這里認識大家,跟大家一起學習一起進步。  基礎知識 1.計算機系統的組成 2.計算機的體系結構 3.存儲網絡 DAS–直接連接存儲   (數據塊)   存儲設備與主機的緊密相連       1.管理成本較低,實施簡單   &…

    2017-07-16
  • 圖解Man

    個人淺見 歡迎指正

    Linux干貨 2016-10-18
  • PHP字符串的編碼問題

        大家都知道,不同字符編碼,其在內存占用的字節數不一樣。如ASCII編碼字符占用1個字節,UTF-8編碼的中文字符是3字節,GBK為2個字節。     PHP 也自帶幾種字符串截取函數,其中常用到的就是 substr 和 mb_substr。     使用substr截取中…

    Linux干貨 2015-10-22
  • N26-第一周作業

    1.    計算機由以下幾個部分組成:         a. CPU:中央處理器;主要由運算器和控制器組成            …

    Linux干貨 2017-01-07
  • Linux基礎之shell腳本編程(三)

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現;   1 #!/bin/bash   2 #author:BaoZhang   3 #  …

    Linux干貨 2016-11-20
欧美性久久久久