内核准备
- 查看本机内核版本
uname -r uname -a
- 内核下载:下载相应级别的Linux内核源代码压缩包:
https://www.kernel.org/pub/linux/kernel
这里我下载的是 4.4.30版本 - 解压
先拷贝至 /usr/src 目录,再解压,然后进入内核根目录
cp linux-4.4.30.tar.gz /usr/src // copy
tar -zxvf linux-4.4.30.tar.gz // 解
cd linux-4.4.30/
内核编译
make menuconfig //设置编译选项
保存退出即可。
如果执行这个命令时有提示错误:
Install ncurses (ncurses-devel) and try again.
则需要安装:apt-get install libncurses5-dev
如果遇到下面这个问题
则执行apt-get install libssl-dev
make -j8
• make -j
make既然IO不是瓶颈,那CPU就应该是一个影响编译速度的重要因素了。
用make -j带一个参数,可以把项目在进行并行编译,比如在一台双核的机器上,完全可以用make -j4,让make最多允许4个编译命令同时执行,这样可以更有效的利用CPU资源。
还是用Kernel来测试:
用make: 40分16秒
用make -j4:23分16秒
用make -j8:22分59秒
由此看来,在多核CPU上,适当的进行并行编译还是可以明显提高编译速度的。但并行的任务不宜太多,一般是以CPU的核心数目的两倍为宜。make modules_install
make modules_Install命令的作用是:将编译好的内核模块从内核源代码目录copy到/lib/modules下。make install
然后修改 /boot/grub/grub.cfg ,把timeout值改为10,这样启动时按ESC可以选择使用哪个内核
然后重启就可以了