linux内核的编译
2016-02-16 09:56
513 查看
适应版本:ubuntu12.04
1.首先下载需要的linux内核源代码,可以到kernel.org去下载自己想要的内核源代码。
2.下载完成后进行解压,一般内核代码是位于/usr/src目录之下的,所以可以将你的内核源代码解压到这个目录下。
3.解压完成之后,就可以看到linux内核源代码的目录了。
4.进入到内核源代码的目录之下,执行命令:
[plain] view
plain copy
make menuconfig
注意:这个命令需要在超级用户权限下执行,否则可能会报出一些莫名奇妙的错误。执行这个命令之后了,就可一看到下面的图片了:
这个界面中的一些选项是用来对编译时的linux内核进行配置的,我们可以根据需要来进行选择配置。
5.配置完成之后,选择Exit退出并保存配置就可以了。
6.接下来执行命令:
[plain] view
plain copy
make all -j4
就可以编译内核了,make all就是将内核以及模块一起编译。后面的参数-j4表示,cpu要开启四个线程来编译内核。一般来说,每个cpu可以开启两个线程来编译内核,我的电脑是有两个cpu,所以开启了4个线程。这样编译真心很快的,以前我就一个线程在编译,简直等的都无语了。
7.编译完成之后,就可以进行内核的安装了,我们将源代码目录下的arch/x86_64/boot/bzImage复制到/boot/下面,因为我下载的源代码版本为linux-2.6.30.3,所以复制的命令为:
[plain] view
plain copy
cp arch/x86_64/boot/bzImage /boot/vmlinuz-2.6.30-3
读者需要根据自己的cpu类型,如是x86架构还是amd,或者是32位或64位,在相应的目录下寻找bzImage。
8.将源代码目录下的System.map复制到/boot目录下:
[plain] view
plain copy
cp /usr/src/linux-2.6.30.3/System.map System.map-2.6.30-3
9.将源代码目录下的.config复制到/boot/目录下:
[plain] view
plain copy
cp .config /boot/config-2.6.30-3
10.安装模块:
[plain] view
plain copy
make modules_install
11.切换到/boot/grub/目录下:
[plain] view
plain copy
cd /boot/grub/
12.更新grub.cfg文件:
[plain] view
plain copy
update-grub2
之后,就可以重启电脑了,在previous version中就可以启动新编译的内核了。
1.首先下载需要的linux内核源代码,可以到kernel.org去下载自己想要的内核源代码。
2.下载完成后进行解压,一般内核代码是位于/usr/src目录之下的,所以可以将你的内核源代码解压到这个目录下。
3.解压完成之后,就可以看到linux内核源代码的目录了。
4.进入到内核源代码的目录之下,执行命令:
[plain] view
plain copy
make menuconfig
注意:这个命令需要在超级用户权限下执行,否则可能会报出一些莫名奇妙的错误。执行这个命令之后了,就可一看到下面的图片了:
这个界面中的一些选项是用来对编译时的linux内核进行配置的,我们可以根据需要来进行选择配置。
5.配置完成之后,选择Exit退出并保存配置就可以了。
6.接下来执行命令:
[plain] view
plain copy
make all -j4
就可以编译内核了,make all就是将内核以及模块一起编译。后面的参数-j4表示,cpu要开启四个线程来编译内核。一般来说,每个cpu可以开启两个线程来编译内核,我的电脑是有两个cpu,所以开启了4个线程。这样编译真心很快的,以前我就一个线程在编译,简直等的都无语了。
7.编译完成之后,就可以进行内核的安装了,我们将源代码目录下的arch/x86_64/boot/bzImage复制到/boot/下面,因为我下载的源代码版本为linux-2.6.30.3,所以复制的命令为:
[plain] view
plain copy
cp arch/x86_64/boot/bzImage /boot/vmlinuz-2.6.30-3
读者需要根据自己的cpu类型,如是x86架构还是amd,或者是32位或64位,在相应的目录下寻找bzImage。
8.将源代码目录下的System.map复制到/boot目录下:
[plain] view
plain copy
cp /usr/src/linux-2.6.30.3/System.map System.map-2.6.30-3
9.将源代码目录下的.config复制到/boot/目录下:
[plain] view
plain copy
cp .config /boot/config-2.6.30-3
10.安装模块:
[plain] view
plain copy
make modules_install
11.切换到/boot/grub/目录下:
[plain] view
plain copy
cd /boot/grub/
12.更新grub.cfg文件:
[plain] view
plain copy
update-grub2
之后,就可以重启电脑了,在previous version中就可以启动新编译的内核了。
相关文章推荐
- linux mail 命令 (收发邮件)
- Linux平台Boost的编译方法
- 基于AT91SAM9X35EK的嵌入式Linux+UBI根文件系统移植成功
- Linux中强大的top命令
- linux进程的后台运行、查看、关闭等命令
- Linux 磁盘空间操作
- linux之sed命令
- linux常用命令
- ubuntu挂载新磁盘到指定目录
- Centos 安装fastcgi详解与用例
- win7下eclipse插件连接linux下hdfs单机伪集群 hadoop 2.6
- Linux常用命令
- linux学习一天一个命令(15)[tar命令]
- linux学习一天一个命令(13)[head命令]
- linux学习一天一个命令(12)[less命令]
- 扩大VMware虚拟机中CentOS 7的硬盘空间
- linux学习一天一个命令(11)[more命令]
- 基于CentOS7开发之路 --- 第一章 : 安装 CentOS 7.2-1511
- Java 开发必会的 Linux 命令
- 更新 Ubuntu 系统,避免报错「校验和不符」