zoukankan      html  css  js  c++  java
  • 内核编译-4.12

    author:JevonWei
    版权声明:原创作品


    第一步 我们首先应该下载kernel的软件包,可以点击https://www.kernel.org/进行下载

    第二步 然后解压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多线程同时编译
    

    第八步 根据错误提示安装软件包,如下图

    image
    提示安装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文件
    
    报错信息如下   
    

    image

    yum -y install elfutils-libelf-devel  安装elfutils-libelf-devel包
    make install  继续执行
    

    第十三步 查看/boot目录下已生成vmlinuz-4.12.0-danran内核文件和grub.cfg或grub.conf文件是否改变

    /boot/vmlinuz-4.12.0-danran  
    cat /boot/grub2/grub.cfg 查看grub配置文件,里面多了一个新内核菜单  
    

    image

    第十四步 reboot 重启系统选择新内核启动

    清理内核编译产生的文件

    cd linux-4.12
    make clean:清理大多数编译生成的文件,但会保留config文件等;
    make mrproper:清理所有编译生成的文件、config及某些备份文件
    make distclen:mrproper、patches以及编辑器备份文件  
    

    内核编译操作流程如下

    1. 下载linux*相应软件包

    2. tar xvf linux-4.12.tar.xz 解压内核到当前目录

    3. cd linux-4.12

    4. cp /boot/config-3.10.0-514.el7.x86_6 .config 复制系统本身的功能配置文件到内核解压目录下并命名为.config

    5. ls .config

    6. yum -y groupinstall "Development Tools" 安装Development Tools开发包组

    7. make menuconfig 打开图形功能配置界面
      image

    8. 如果上一步骤报错,则按照报错提示安装相应的软件包,eg ncurses-devel软件包

    9. 修改内核的版本号为danran
      image
      image
      image
      image

    10. 添加内核的支持ntfs功能
      image
      image
      image

    11. vim .config 查看配置文件,确认ntfs功能是否开启,内核版本号是否改变

    12. lscpu 查看cpu信息,和cpu核数

    13. make -j 2 编辑内核

    14. 根据编译报错提示安装相应的软件包
      image
      上图所示,提示安装openssl-devel软件包

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

    16. yum -y install elfutils-libelf-devel

    17. make -j 2 继续编译,编译时间有点长,请耐心等待,请勿终止

    18. updatedb 更新数据库

    19. locate ntfs.ko 查看我们编译进内核的ntfs模块是否存在于内核中
      image

    20. make modules_install 安装复制模块文件,请耐心等待复制过程
      image

    21. cd /lib/modules

    22. find 4.12..danran/ -name ".ko" 查看新编译内核中的所有ko模块文件

    23. cd /root/linux-4.12

    24. make install 将内核拷贝到/boot目录下并修改grub文件,make执行报错,根据提示安装相应软件包
      image

    25. yum -y install elfutils-libelf-devel 安装elfutils-libelf-devel包

    26. ll /boot/vmlinuz-4.12.0-danran 查看/boot目录下已生成vmlinuz-4.12.0-danran内核文件

    27. cat /boot/grub2/grub.cfg 查看grub配置文件,里面多了一个新内核菜单
      image

    28. reboot 重启系统选择新内核启动

    29. 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中
      image
    danran
  • 相关阅读:
    来自风湿病研究院RA患者队列研究显示, RA日常诊治时特别是早期RA患者成功维持新ACR/EULAR缓解标准能获
    系列超声发现脊柱关节炎附着点处新骨形成
    超声(PDUS)能否容易检出侵蚀?比较PDUS与microCT对正常人群和RA患者小关节生理和皮质断裂的评价
    根据ACR/EULAR 2010 标准定义RA放射学侵蚀病变
    比较依那西普和柳氮磺胺吡碇治疗早期中轴脊柱关节炎1年后的停药缓解率和缓解时间-ESTHER试验的2年数据
    Matlab Computer Vision and Pattern Recognition toolbox
    vi/vim 命令手册(初级篇)
    GCC设定include和库路径(转载)
    linux 下查找文件或者内容常有命令
    svn命令在linux下的使用
  • 原文地址:https://www.cnblogs.com/JevonWei/p/7156666.html
Copyright © 2011-2022 走看看