1.环境准备
1)准备linux源码和补丁
可在官网(http://www.kernel.org)下载
下载镜像命令
选择阿里的镜像更为迅速
wget http://mirrors.aliyun.com/linux-kernel/v4.x/linux-4.5.tar.xz
wget http://mirrors.aliyun.com/linux-kernel/v4.x/patch-4.5.xz
2)准备安装环境
首先执行apt update来更新软件源,然后安装需要的环境
apt install kernel-package build-essential libncurses5-dev fakeroot
3)解压缩内核
第一层解压
xz -d linux-4.10.tar.xz
解压后得到linux.4.10.tar
第二层解压
tar –xvf linux-4.10.tar
解压后得到linux.4.10
然后将内核目录linux-4.10复制到/usr/src,然后进入/usr/src
sudo cp -r linux-4.10 /usr/src
cd /usr/src
2.准备编译
1.编译配置
看以前的内核版本号,将里面的.config文件复制到linux-4.10文件夹中:
通过ls可以发现。我的内核文件夹是linux-headers-4.8-39-generic,我们应当将这个文件夹中的.config文件复制到4.10文件夹中
cp linux-headers-4.8.0-39-generic/.config linux-4.10/
cd linux-4.10
然后执行make menuconfig打开可视化菜单
选择load→OK→Save→OK→EXIT→EXIT
3.编译内核
1.编译启动映像
make bzImage -jN
这里的N是你的CPU核数×2,比如我是双核,则执行j4
如果嫌麻烦也可以直接运行make bzImage。
这里可能会出现两个错误:
fatal error: openssl/opensslv.h: No such file or directory
这是因为没有安装openssl的,需要先安装openssl: apt-get install libssl-dev
bc: not found。需要安装bc:apt-get install bc
安装对应依赖后再运行。
2.编译模块
make modules - jN
此处也与上面一样
4.安装内核
先安装模块
make modules_install
再安装内核
make install
5.更改启动grub
grub就是系统启动的一个程序,若要运行编译好的内核,则需要修改相对应的grub,
mkiniramfs 4.10.0 -o /boot/inird.img-4.10
update-grub2
该命令会帮助我们自动修改grub
修改之后,可以查看内核版本
uname -a