美文网首页
Ubuntu 18.04内核编译

Ubuntu 18.04内核编译

作者: iDeskAngel | 来源:发表于2020-05-07 12:58 被阅读0次

    虽然是在 Ubuntu 18.04 上的实验,但是其他版本应该也适用。

    安装环境

    安装 linux 和 linux image 依赖

    sudo apt-get build-dep linux linux-image-$(uname -r)

    在能成功运行上面的命令之前,可能需要编辑/etc/apt/sources.list,把其中deb-src的行的注释都去掉,然后

    sudo apt-get update
    

    继续安装

    sudo apt-get install linux-source kernel-package
    sudo apt-get install libncurses-dev
    

    准备代码

    • 进入 /usr/src/linux-source-4.15.0目录,其中,linux-source-4.15.0 也是当前 Ubuntu 18.04 默认使用的内核版本,这可以通过 uname -r 来进行确认。

    • 解压缩文件linux-source-4.15.0.tar.bz2:

    sudo tar jvcf linux-source-4.15.0.tar.bz2
    
    • 复制当前的配置文件到源码目录
    sudo cp /boot/config-4.15.0-99-generic .config
    
    • 把上面复制的旧的配置文件应用到内核代码中
    sudo make oldconfig
    
    
    • 配置内核
    make menuconfig
    

    编译内核

    运行下面的命令开始编译代码。其中,deb-pkg 参数会在/usr/src/下生成几个 deb 安装包,之后可以通过 dpkg -i linux-*.deb 来安装内核。

    sudo make clean
    sudo make -j2 deb-pkg LOCALVERSION=-custom
    

    -custom参数可以自己设定,会在内核版本后面添加该字符串,也就是运行uname -r看到的 generic 这样的字符串。

    如果需要编译模块,可以运行:

    sudo make modules
    sudo make modules_install
    

    make modules_install是模块编译完成后进行安装到对应目录。

    安装内核

    编译好的内核文件默认放在上一级目录,共有4个 deb 文件。安装命令入下:

    cd ..
    sudo dpkg -i linux-*.deb
    

    安装后,新的内核文件会出现在/boot目录下,同时/boot/grub/menu.lst中还会添加新的内核启动入口,在系统启动的时候按住shift键可以选择使用哪个内核,默认使用新内核。

    参考

    相关文章

      网友评论

          本文标题:Ubuntu 18.04内核编译

          本文链接:https://www.haomeiwen.com/subject/xkaoghtx.html