编译Linux内核方法
2013-09-17 16:12
405 查看
1.下载内核
下载地址:www.kernel.org
例如下载的内核源码为: linux -3.10.12.tar.xz
2.解压
把linux-3.10-12.tar.xz解压到/usr/src目录
3.配置内核参数
首先需要安装ncurses,这时字符版配置工具多依赖的。
因为新版本配置工具会自动寻找当前系统环境的配置信息(比如/boot/config-xxx文件),所以接下来可以直接运行字符版配置工具:
这里的配置比较复杂,可以搜索相关资料。也可以选择默认,直接save退出,配置工具会生成一个.config文件。
4.开始编译
编译可能会需要一两个小时,视计算机速度而定。如果视四核的,make后加"-j4"选项,让编译程序同时使用四核编译,会节省时间。
如果编译中途出现以外,然后想重新开始编译,需要执行下面命令清理一下编译现场,然后从新编译。
5.安装编译好的模块
上面的命令会把编译好的modules复制到/ib/modules/3.10.12/文件夹下。其中3.10.12是内核版本号,在/lib/modules/目录下,你还会看到其他版本的文件夹。
6.安装编译好的内核镜像文件
这个命令会把编译文件夹里面的 “arc/x86/boot/bzimage”文件复制到"/boot",同时会复制config 和Ssytem.map文件,最终会在“/boot”中多处如下4个文件:
config-3.10.12
System.map-3.10.12
vimlinuz-3.10.12
initrd.img-3.10.12
7.修改grub启动菜单,增加新内核的启动选项
8.重新启动
然后就从新编译的内核启动了~
转自:http://archboy.org/2011/08/19/simple-compile-linux-3-0-kernel/ (自己做了一些修改)
下载地址:www.kernel.org
例如下载的内核源码为: linux -3.10.12.tar.xz
2.解压
把linux-3.10-12.tar.xz解压到/usr/src目录
$sudo tar -xvf linux-3.10.12.tar.xz -C /usr/src/
3.配置内核参数
首先需要安装ncurses,这时字符版配置工具多依赖的。
$sudo apt-get install libncurses5 libncurses5-dev (ubuntu下) $sudo yum install ncurses ncurses-devel (centos下)
因为新版本配置工具会自动寻找当前系统环境的配置信息(比如/boot/config-xxx文件),所以接下来可以直接运行字符版配置工具:
$sudo make menuconfig
这里的配置比较复杂,可以搜索相关资料。也可以选择默认,直接save退出,配置工具会生成一个.config文件。
4.开始编译
$sudo make
编译可能会需要一两个小时,视计算机速度而定。如果视四核的,make后加"-j4"选项,让编译程序同时使用四核编译,会节省时间。
如果编译中途出现以外,然后想重新开始编译,需要执行下面命令清理一下编译现场,然后从新编译。
$sudo make mrproper
5.安装编译好的模块
$sudo make modules_install
上面的命令会把编译好的modules复制到/ib/modules/3.10.12/文件夹下。其中3.10.12是内核版本号,在/lib/modules/目录下,你还会看到其他版本的文件夹。
6.安装编译好的内核镜像文件
$ sudo make install
这个命令会把编译文件夹里面的 “arc/x86/boot/bzimage”文件复制到"/boot",同时会复制config 和Ssytem.map文件,最终会在“/boot”中多处如下4个文件:
config-3.10.12
System.map-3.10.12
vimlinuz-3.10.12
initrd.img-3.10.12
7.修改grub启动菜单,增加新内核的启动选项
$sudo update-grub2 (ubuntu下) $sudo grub2-mkconfig (fedora下)
8.重新启动
$sudo reboot
然后就从新编译的内核启动了~
转自:http://archboy.org/2011/08/19/simple-compile-linux-3-0-kernel/ (自己做了一些修改)
相关文章推荐
- Ubuntu从9.10升级到14.10(64位)后编译Linux内核遇到的系列问题解决方法
- 后台编译linux内核代码的方法
- 在linux内核文件中添加自己的驱动,添加自己的linux驱动,编译自己的linux驱动程序方法和例子图文
- 【翻译】Ubuntu中编译Linux内核的简略方法
- Linux内核笔记 - 内核编译错误及解决方法记录
- debian下编译升级新的linux内核方法【转】
- Linux内核编译静态库的方法
- 加快编译linux内核速度的四种方法
- 重编译LINUX内核调整SCTP参数的方法
- Linux内核驱动将多个C文件编译成一个ko文件的方法——每一个C文件中都有module_init与module_exit
- linux内核调试方法,交叉编译程序出现Illegal instruction的调试方法
- linux内核编译linux 内核编译常见错误及解决方法
- 精简LINUX内核配置及快速编译的方法
- 编译Linux内核的方法
- Linux内核驱动将多个C文件编译成一个ko文件的方法——每个C文件里都有module_init与module_exit
- 【翻译】Ubuntu中编译Linux内核的简略方法
- 精简LINUX内核配置及快速编译的方法汇总
- 7-OMAPL138编译Linux内核方法
- Ubuntu14.04下编译linux内核时无法生成uImage的处理方法