微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

centos 7 kernel编译

目的:制作一个和原版一样的centos 7,这里不是在谈更新内核

编译主机:centos 7.0 x86_64

目标:x86_64环境

编译方法

概括

1 获得源码

2 编译bzImage 参考【3】

3 编译initrd

4 安装程序验证

5 引导程序验证

编译步骤:

1 下载源码 请按照参考 I need the kernel source的方法进行,下面列出主要步骤

echo '%_topdir %(echo $HOME)/rpmbuild' > ~/.rpmmacros

[user@host]$ rpm -i http://vault.centos.org/5.11/updates/SRPMS/kernel-2.6.18-417.el5.src.rpm 2>&1 | grep -v exist

[user@host]$ cd ~/rpmbuild/Specs
[user@host Specs]$ rpmbuild -bp --target=$(uname -m) kernel.spec

从官网下载,并整理为源码。

这个步骤比参考2的简单方便,动作标准。

研究kernel.spec 发现该步骤完成下面几个内容

(a) 为源代码打补丁

(b) 为源代码配置好config文件(即跳过make menuconfig)

因而本步骤出来的源码可以直接进入make

2 编译

对步骤1解压出来的kernel源代码进行编译

make bzImage可以得到bzImage System.map

当然也可以make all得到vmlinuz FIXME

完整编译使用

make可得到initrd

(to be continued)

参考

1

2


http://www.centoscn.com/CentOS/Intermediate/2015/0205/4636.html


3 bzImage和vmlinuz,vmlinux,zImage可认为是一个东西,就是内核。


4

http://www.lifelinux.com/how-to-compile-install-new-kernel-3-13-6-in-centos-6-5/?utm_source=tuicool&utm_medium=referral

原文地址:https://www.jb51.cc/centos/379249.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。