您的位置:首页 > 运维架构 > Linux

Ubuntu Linux内核编译步骤

2016-04-18 11:37 281 查看
Ubuntu 系统 http://www.linuxidc.com/Linux/2012-03/57303.htm

1. 准备工作

切换为管理员权限,sudo –i 输入用户密码 进入root 权限

apt-get install build-essential kernel-package libncurses5-dev libqt3-headers

build-essential (基本的编程库(gcc, make 等)

kernel-package (Debian 系统里生成 kernel-image 的一些配置文件和工具)

libncurses5-dev (meke menuconfig 要调用的)

libqt3-headers (make xconfig 要调用的)

2. 下载特定版本的内核源代码 http://www.kernel.org
我下载的是linux-3.2.12.tar.bz2 最新版2012-03-19 发行的

3. 复制源码linux-3.2.12.tar.bz2 到/usr/src 目录,解压缩

命令.假设源码存放在/home 目录下

cp /home/linux-3.2.12.tar.bz2 /usr/src

cd /usr/src

tar xvjf linux-3.2.12.tar.bz2

解压后生成 linux-3.2.12 目录

4. cd linux-3.2.12

接下来配置内核选项

make menuconfig 这一步比较复杂,内核选项很多,我们可以使用当前内核的配置选项,

但编译内核的时间会比较长,因为装系统的时候使用的配置是适应大多数系统的,非定

制选项。关于内核配置选项怎么定制,网上很多。

5. 把正在使用系统中的内核配置文件/usr/src/linux-headers-2.6.38-13-generic/.config 拷到

/usr/src/linux-3.2.12 目录下

cp /usr/src/ linux-headers-2.6.38-13-generic/.config /usr/src/ linux-3.2.12

执行:

cd /usr/src/ linux-3.2.12

make menuconfig

终端会弹出一个配置界面

注意主菜单最后有两项:

load a kernel configuration…

save a kernel configuration…

先选第一项load ….,意思是,利用当前的内核配置详单来设置将要编译的内核,然后选

save 这一项保存,最后退出配置界面

6. 开如编译安装新内核

执行:make mrproper (清除以前曾经编译过的旧文件,如果你是第一次编译,可不执行)

执行:make (编译,加-j4,必须加,双核并行编译,速度快很多,不过使用原先配置

选项,我的电脑还是要一个钟左右)

然后:make install

再:make modules (编译模块)

再:make modules_install (安装模块)

最后创建initrd 文件:

mkinitramfs -o /boot/initrd.img-linux-3.2.12

7. make install 以后,系统自动更新了启动项,可以cat /boot/grub/grub.cfg 看下.之前的启动项不能删除,如果编译内核不成功,之前的启动项又不见了,你的系统也就跪了

8. reboot
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: