编译内核

博客介绍了Linux内核准备与编译过程。先查看本机内核版本,从官网下载相应版本内核源代码压缩包,拷贝解压后进入内核根目录。编译时,若遇错误需安装对应依赖。使用make -j参数并行编译可提高速度,一般以CPU核心数两倍为宜。最后安装内核模块,修改配置文件并重启。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内核准备

  1. 查看本机内核版本
    uname -r uname -a
  2. 内核下载:下载相应级别的Linux内核源代码压缩包:
    https://www.kernel.org/pub/linux/kernel
    这里我下载的是 4.4.30版本
  3. 解压
    先拷贝至 /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/

内核编译

  1. make menuconfig //设置编译选项
    保存退出即可。
    如果执行这个命令时有提示错误:
    Install ncurses (ncurses-devel) and try again.
    则需要安装:apt-get install libncurses5-dev
    如果遇到下面这个问题
    在这里插入图片描述
    则执行apt-get install libssl-dev
  2. 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的核心数目的两倍为宜。
  3. make modules_install
    make modules_Install命令的作用是:将编译好的内核模块从内核源代码目录copy到/lib/modules下。
  4. make install
    然后修改 /boot/grub/grub.cfg ,把timeout值改为10,这样启动时按ESC可以选择使用哪个内核

然后重启就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值