內核編譯實際效果演示

內核編譯實際操作效果演示

    環境:CentOS7.2,自帶內核版本為3.10.0-327.el7.x86_64,下載3.18.41版本進行編譯

    步驟1:確保開發工具包組已安裝

    [root@localhost ~]# yum grouplist    
    已加載插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    已安裝環境分組:
       GNOME 桌面
    可用的環境分組:
       最小安裝
       基礎設施服務器
       計算節點
       文件及打印服務器
       基本網頁服務器
       虛擬化主機
       帶 GUI 的服務器
       KDE Plasma Workspaces
       開發及生成工作站
    已安裝的組:
       開發工具
    可用組:
       傳統 UNIX 兼容性
       兼容性程序庫
       圖形管理工具
       安全性工具
       控制臺互聯網工具
       智能卡支持
       科學記數法支持
       系統管理
       系統管理工具
    完成
    [root@localhost ~]#

    步驟2:下載內核源碼包,解壓到某個路徑下

    [root@localhost ~]# ls    
    anaconda-ks.cfg  initial-setup-ks.cfg  linux-3.18.41.tar.xz
    [root@localhost ~]# tar xf linux-3.18.41.tar.xz -C /usr/src/
    [root@localhost ~]# ls /usr/src/
    debug  kernels  linux-3.18.41
    [root@localhost ~]# cd /usr/src/linux-3.18.41/
    [root@localhost linux-3.18.41]# ls
    arch   COPYING  crypto         drivers   fs       init  Kbuild   kernel  MAINTAINERS  mm   README          samples  security  tools  virt
    block  CREDITS  Documentation  firmware  include  ipc   Kconfig  lib     Makefile     net  REPORTING-BUGS  scripts  sound     usr
    [root@localhost linux-3.18.41]#

    步驟3:提供一個config配置文件(本實驗中以當前系統的安裝時內核的模塊選項進行進一步的選擇,然后編譯),在此文件基礎上進行進一步的選擇內核的功能模塊,安裝ncurses工具,該工具能幫助我們使用make menuconfig基于圖形化窗口的界面,完成內核模塊的選擇

    [root@localhost linux-3.18.41]# yum install ncurses    
    已加載插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    軟件包 ncurses-5.9-13.20130511.el7.x86_64 已安裝并且是最新版本
    無須任何處理
    [root@localhost linux-3.18.41]# yum list all|grep ncurses
    ncurses.x86_64                             5.9-13.20130511.el7         @anaconda
    ncurses-base.noarch                        5.9-13.20130511.el7         @anaconda
    ncurses-libs.x86_64                        5.9-13.20130511.el7         @anaconda
    ncurses-devel.i686                         5.9-13.20130511.el7         cdrepo   
    ncurses-devel.x86_64                       5.9-13.20130511.el7         cdrepo   
    ncurses-libs.i686                          5.9-13.20130511.el7         cdrepo   
    ncurses-static.i686                        5.9-13.20130511.el7         cdrepo   
    ncurses-static.x86_64                      5.9-13.20130511.el7         cdrepo   
    ncurses-term.noarch                        5.9-13.20130511.el7         cdrepo   
    [root@localhost linux-3.18.41]# yum install "ncurses-devel.x86_64"
    已加載插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    正在解決依賴關系
    --> 正在檢查事務
    ---> 軟件包 ncurses-devel.x86_64.0.5.9-13.20130511.el7 將被 安裝
    --> 解決依賴關系完成
    
    依賴關系解決
    
    =============================================================================================================================================================
     Package                                架構                            版本                                           源                               大小
    =============================================================================================================================================================
    正在安裝:
     ncurses-devel                          x86_64                          5.9-13.20130511.el7                            cdrepo                          713 k
    
    事務概要
    =============================================================================================================================================================
    安裝  1 軟件包
    
    總下載量:713 k
    安裝大?。?.1 M
    Is this ok [y/d/N]: y
    Downloading packages:
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      正在安裝    : ncurses-devel-5.9-13.20130511.el7.x86_64                                                                                                 1/1 
      驗證中      : ncurses-devel-5.9-13.20130511.el7.x86_64                                                                                                 1/1 
    
    已安裝:
      ncurses-devel.x86_64 0:5.9-13.20130511.el7                                                                                                                 
    
    完畢!
    [root@localhost linux-3.18.41]# 
    [root@localhost linux-3.18.41]# cp /boot/config-3.10.0-327.el7.x86_64 /usr/src/linux-3.18.41/.config
    [root@localhost linux-3.18.41]# make menuconfig   
    //注意make動作都需要cd到源碼包的解壓目錄

    blob.png

    步驟4:選擇好相應的模塊后,進行make,可用-j指定用多少線程同時進行編譯

    2.png

    步驟5:安裝模塊

    5.png

    步驟6:make install

    6.png

    步驟7:驗證是否成功

    7.png

    8.png

    9.png

原創文章,作者:M20-1倪文超,如若轉載,請注明出處:http://www.www58058.com/46139

(0)
M20-1倪文超M20-1倪文超
上一篇 2016-09-13 17:51
下一篇 2016-09-13 20:43

相關推薦

  • smb

    練習: 創建一個共享ftp,路徑為/var/ftp/pub;要求僅centos和gentoo用戶能上傳;此路徑對其它用戶不可見; [root@node1 ~]# yum -y install samba [root@node1 ~]# vim /etc/samba/smb.con…

    Linux干貨 2016-10-23
  • 程序包編譯安裝

    一、幾個概念     1、開放源碼         程序代碼,人類可能讀懂的程序語言,但是計算機不能識別和執行;     2、編譯程序      &n…

    Linux干貨 2015-05-11
  • linux計算機基礎理論

    1. 計算機的組成及其功能 從基本結構上來講,計算機可以分為五大部分: 運算器、存儲器、控制器、輸入設備、輸出設備。 運算器的功能:實現算術運算和邏輯運算(與控制器組成CPU) 存儲器功能:將輸入設備接受到的信息以二進制的數據形式存到存儲器中。 控制器的功能:將指令逐條從存儲中取出,經譯碼分析后向全機發出相應的操作控制信號作用于其他部件,使各部件有條不紊地協…

    Linux干貨 2018-03-04
  • N25-第九周作業

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別統計這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash     echo “可登錄類型有有$(awk -F: ‘/[^\<nologin\>…

    Linux干貨 2017-03-11
  • gawk基礎

     一、gawk 是什么 在了解gawk之前,先了解一下文本三工具      文本過濾工具:grep|egrep|fgrep   其中fgrep不支持正則表達式 1.行編輯器:sed      sed 有兩種空間   模式空間    保持空間 2. 文…

    Linux干貨 2016-06-24
  • 接51CTO:13 用戶組和權限管理3

    用戶組和權限管理3 一、雜項知識整理 1、硬鏈接:寫源文件可以是相對地址,相對于鏈接文件。例如 [root@localhost testdir]# ln ../etc/fstab aaa ln: 無法創建硬鏈接"aaa" => "../etc/fstab…

    Linux干貨 2016-08-04
欧美性久久久久