内核编译实际效果演示

内核编译实际操作效果演示

    环境: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
    安装大小:2.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.178linux.com/46139

(0)
M20-1倪文超M20-1倪文超
上一篇 2016-09-13
下一篇 2016-09-13

相关推荐

  • 磁盘配额、软RAID使用、LVM管理

    一.磁盘配额的相关知识 (1)工作原理及方式         *以文件系统为单位启动         *以特定的用户或组为对象       …

    Linux干货 2016-09-06
  • shuc之学习目标

    1,每天学习二小时 2,半年熟悉数据中心LINUX技术

    Linux干货 2016-10-23
  • 正则表达式基础知识及grep、egrep详解

    什么是正则表达式     在计算机科学中,正则表达式是这样解释的:它是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。对于系统管理员来讲,正则表达式贯穿在我们…

    Linux干货 2016-08-08
  • 作业-第二周

    1、linux常用文件管理命令 ls rm chmod touch mv cp 2、echo $? 如果返回0则成功,其他失败 3、 mkdir /tmp/{a,b}_{c,d} mkdir -p /tmp/mylinux/bin /tmp/mylinux/boot/ /tmp/mylinux/boot/grup /tmp/mylinux/dev \ /tm…

    Linux干货 2016-06-23
  • 文本查找相关命令简单介绍

    文件查找命 在文件系统上查找符合条件的文件 非实时查找:基于索引查找 locate 实时查找:find locate介绍 依赖于事先构建的索引:索引的构建是在系统较为空闲时自动进行(周期性任务):手动更新数据库(updatedb) 索引构建过程需要遍历整个根文件系统,极消耗资源,生产中尽量避免手动更新。 语法: locate KEYWORD -i:忽略大小写…

    Linux干货 2017-04-10
  • Linux启动之GRUB详解

    GRUB 在BIOS读取先关信息之后,接下来就是去第一个可以启动的设备当中的MBR中读取Boot loader信息,bootloader具有菜单功能、直接加载内核信息,以及相关控制权限转交功能。所以说系统的启动必须有bootloader,然后才能去加载内核 grub:GRand Unified Bootloader  …

    Linux干货 2016-09-15