内核编译实际效果演示

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

    环境: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)
上一篇 2016-09-13 17:51
下一篇 2016-09-13 20:43

相关推荐

  • N26-肉肉-第一周作业

    1.描述计算机的组成及其功能CPU:运算器、控制器、寄存器、缓存存储器:内存,RAM(Random Access Memory)    IO:输入输出设备2.按系列罗列linux的发行版本,并描述不同发行版本之间的联系与区别。发行版有数百种之多,著名的主流发行版有3种Debian,Slackware,RedHatDebian:使…

    Linux干货 2017-01-03
  • 第十周

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 1.开启电源后,POST自检:检查硬件设备,通过后交给BIOS 2.BIOS加载可选择的启动设备,寻找可引导的启动设备的记录:MBR 3.MBR:硬盘的主引导记录,存在于0磁道0扇区,共512字节.其中Bootloader占用446字节,分区表占用64字节,magic nu…

    Linux干货 2016-10-17
  • 计划任务管理

        Linux系统计划任务有两种:A、一次性任务;B、定时循环任务。     一次性任务:at命令。at的安装包名字就是at,可以使用命令"yum install at"进行安装.安装完成后,启用atd服务就可以运行at命令了.运行格式为:at [opti…

    Linux干货 2016-11-27
  • 马哥教育网络班22期+第1周课程练习 忍者乱太郎喻成

    1.计算机组成:  根据冯诺依曼的计算机结构分为四大块:控制器,运算器, 存储器,输入输出设备 控制器:对其他的组件进行控制 运算器:用于处理计算工作,不控制输入和输出 储存器:用于暂时或长期存储数据 输入输出:与外界进行交互 个人延伸: 我的理解这是一个在计算机研发之前的一个理论假象, 相对现在真实的计算机体系,这个分类会比较模糊。 运算器:cp…

    Linux干货 2016-08-15
  • Linux部分命令及通配符用法

    pwd: 显示工作目录 cd -: 在上一次所在目录与当前目录之间来回切换 cd: 切换回家目录 cat:  文本查看工具 n:给显示的文本行编号 -E:显示行结束符$ passwd 修改用户的密码 which 查看系统命令所对应的路径 df 查看系统分区 runlevel 查看系统运行级别  (共有6个级别) Tty…

    2017-03-28
  • 马哥教育网络班21期+第3周作业

    马哥教育网络班21期+第3周作业 1、列出当前系统上所有已经登陆的用户的用户名 [root@ip-172-31-45-110 ec2-user]# who | awk '{print $1}' ec2-user 2、取出最后登录到当前系统的用户的相关信息 [root@ip-172-3…

    Linux干货 2016-07-22