编译前需了解
实验环境
- 操作系统 CentOS 6.5
- 内核版本 2.6.32-431.el6.x86_64
- 升级使用的 linux内核源码包版本号 3.10.104
linux内核版本号说明
- 使用 uname命令,带上 -r 参数即可显示当前系统使用内核版本
[root@2w3i-Cs ~]# uname -r
2.6.32-431.el6.x86_64
[root@2w3i-Cs ~]#
- 内核版本 2.6.32-431.el6.x86_64 各字段说明
- 2.6.32
- 表示 使用的 linux源码包版本号
- 2:为主版本号
- 6:为次版本号,其中偶数为稳定版,奇数为开发版
- 32:为修订版本号
- 431.el6.x86_64
- 表示发行版本号
- 432:为发行版本的release号
- e16:为RHEL 6.x 系列版本,EL = Enterprise Linux
- x86_64:为64位架构
- 2.6.32
内核编译的步骤
- 准备好开发环境
- 获取目标主机上硬件设备的相关信息
- 获取到目标主机系统功能的相关信息 - 例如要启用的文件系统
- 获取内核源代码包
准备开发环境
- 使用 yum groupinstall 安装以下两个包组,用于满足内核编译时所需要的包和工具
- Server Platform Development
- Development Tools
- Server Platform Development
了解硬件设备相关信息
CPU
- cat /proc/cpuinfo
PCI设备
lspci
- -v 详细信息
- -vv 全面详细信息
lsusb
- -v 详细信息
- -vv 全面详细信息
lsblk
…
全部硬件相关设备信息
- hal-device
等等
内核编译尝试
简单依据模板文件的方式编译
1.解压下载好的 linux 3.10.104 源码包 到 /usr/src 目录
[root@2w3i-Cs tmp]# tar -xf linux-3.10.104.tar.xz -C /usr/src/
[root@2w3i-Cs tmp]