Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0

参考链接:

https://linuxhint.com/how-to-upgrade-kernel-of-debian-9-stretch-from-source/

https://blog.csdn.net/weixin_39465823/article/details/84138135

本文主要介绍:从下载内核源码到在Debian 9 stretch完成编译升级内核全过程

1.检查本机安装内核版本

$:uname -r

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第1张图片

2.去linux内核官网下载内核源代码

https://www.kernel.org 

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第2张图片

选择保存文件

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第3张图片

3.安装编译内核的必要工具

更改软件源

$:su
#:gedit /etc/apt/sources.list

注释掉cdrom,添加如下内容

deb http://mirrors.163.com/debian/ stretch main
deb http://mirrors.163.com/debian/ stretch-updates main non-free contrib
deb-src http://mirrors.163.com/debian/ stretch-updates main non-free contrib
deb http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib

如下图所示:

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第4张图片

运行如下命令,升级apt

#:apt-get update
#:apt-get upgrade

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第5张图片

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第6张图片

运行如下命令,安装sudo

#:apt-get install sudo

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第7张图片

将当前用户添加进sudo中

#:gedit /etc/sudoers/
user ALL=(ALL) ALL

如下图所示Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第8张图片

4.配置内核编译环境

运行如下命令,配置编译环境

#:sudo apt-get install build-essential libncurses5-dev gcc libssl-dev bc

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第9张图片

5.编译内核

编译内核,确保你的磁盘有20GB左右剩余空间

进入下载文件夹,可以查看到下载的文件,运行如下命令,解压rar.xz 的压缩文件

#:cd Downloads/
#:tar xvf linux-5.1.tar.xz

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第10张图片

运行如下命令,进入解压后的文件

#:ls
#:cd linux-5.1

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第11张图片

复制本机原先的配置文件,这样做的原因是,对于一个正常工作的系统,需要弄明白哪些内核模块需要打开,哪些需要禁止,使用原机配置,我们就不需要弄明白这些了

#:ls /boot/

config-4.9.0-9amd64 ,这个就是我们需要的配置文件

使用如下命令复制配置文件

#:cp -v /boot/config-4.9.0-9-amd64 .config

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第12张图片

新内核有许多旧内核没有的功能,使用如下命令,可以手动配置新的配置文件

#:make menuconfig

报错,缺少flex跟bison,安装

#:sudo apt-get install flex
#:sudo apt-get install bison

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第13张图片

 

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第14张图片

再次执行如下命令

#:make menuconfig

显示如下,这里不知道怎么配置,故直接退出,进行下一步

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第15张图片

6.运行如下命令,进行内核编译进程

内核正常编译如下图,注意:下面两个命令区别

1.#:make deb-pkg:这个过程需要花费很长时间,我的机器编译花费了10小时

2.#:make -j 8 deb-pkg :这个命令花费时间较短,我的机器编译花费了4小时

#:make -j 8 deb-pkg

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第16张图片

出现报错信息,缺少libelf-dev

执行如下命令,安装

 

#:sudo apt-get install libelf-dev

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第17张图片

再次执行如下命令

#:make -j 8 deb-pkg

内核正常编译如下图,这个过程需要花费很长时间,我的机器编译花费了4小时

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第18张图片

编译完成,会在源文件外生成四个deb包

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第19张图片

执行如下命令升级内核

#:sudo dpkg -i ../linux-*.deb

更新grub

#:sudo update-grub

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第20张图片

重启,检查,内核升级完毕

Debian 9 下载内核源码,手动编译安装,从4.9.0-9内核升级到5.1.0_第21张图片

经验总结:

内核版本不要升级太大,有可能造成不开机

编译的时候,使用#make -j 8 deb-pkg 明显的节省时间

 

你可能感兴趣的:(Linux)