!本文基于Fedora
1.首先下载新内核源文件 下载地址:kernel.org
2.之后进行解压,解压位置随意,最好放到无关紧要的目录,或者自己的home,这样方便操作。
3. 进入解压后的目录,
开始配置内核,如果之前配置过,请先执行$ make mrproper #清理旧的二进制文件
之后使用一下三者之一:
$ make config
$ make menuconfig
$ make xconfig
字符界面下还是用menuconfig比较好些,图形界面可以用xconfig。
如果想在已有的.config上做配置,可以执行
make oldconfig;
按照提示和需要对新增特性进行配置。如果还需要进一步修改和配置,则可以再次运行
make menuconfig,配置后保存。
4. $ make clean
,当然这一步不是必须的。如果之前做过make mrproper,那么这一步可以不做make clean
5. 编译:
通常执行$ make bzImage && make modules
就可以了
6. 安装模块# make modules_install
(此命令需要root权限)
7. 把当前目录下的.config、System.map文件,以及子目录中的文件 ./arch/i386/boot/bzImage 复制到/boot下,并重命名,命名规则可以参考/boot下已有的文件
具体为:
# cp .config /boot/config-version.number
# cp ./arch/i386/boot/bzImage /boot/vmlinuz-version.number
# cp System.map /boot/System.map-version.number
8. 生成initramfs.img文件
目前fedora下使用dracut命令
# dracut /boot/initramfs-version.number.img version.number
注:以上命令中的version.number需要替换为当前编译内核的版本号
9. 修改引导器,# vi /boot/grub/grub.conf
以grub为例:
修改grub.conf,按照已有启动参数格式添加新参数。
10. $reboot
最后重新启动,选择新内核进行测试
以上是Linux内核配置、编译和安装的基本步骤,写的比较简单。欢迎各位指教。