Ubuntu上编译Linux内核的过程笔记

总结一下在Ubuntu上编译Linux内核的过程

1.首先要获得root权限,方法有二,均验证过:

a.sudopasswd root

******(输入原先的root口令)

******(输入新的root口令,可以保持原样。我就保持的原样)

******(再次输入新的root口令)

su root

输入一遍设定的密码

之后就可以在终端中使用root权限了!

b. sudo -s –H

*********(输入设定的密码)即可获得root权限

2. 安装编译程序

必须:#(sudo) apt-getinstall build-essential kernel-package libncurses5-dev fakeroot

这一步安装了编译内核必须的程序,是必须安的

3.cd到内核下载后放置的目录进行解压缩,一般有两种情况:

a. 如果是bz2格式的话使用 tar -jxvf linux-2.6.33.tar.bz2 或tar xjvf linux-2.6.33.tar.bz2(参考网上和老师ppt,自己未验证)

b.如果是gz格式的话则root@jb-laptop:/home/jb#tar -zxvf linux-2.6.33.tar.gz

4. 复制源码到目录/usr/src/下

root@jb-laptop:/home/jb# mv linux-2.6.38.8 /usr/src/

然后cd到 /usr/src/linux-2.6.33文件夹下进行下面的操作(cd到想要的文件夹下有的需要加/有的则不需要,(?)cd直接返回上级文件夹)

5. makemrproper (其实这一步可以省略,因为是刚下载好的源码,一定是干净的;如果使用的是已经编译过的code,则需要做这一步)

6.配置Kernel选项:make menuconfig (这一步很重要,它决定了你可以个人定制化你的Kernel。当你使用menuconfig时,会有一些选择列出来) 具体东西有些复杂,下面提供不需要手动配置的方法:cp /boot/config-`uname -r` ./.config(用你现在的内核配置设置新内核)然后make menuconfig,进入一个界面然后先最底下的load……然后save……然后exit

7. makebzImage 编译内核.(大约15分钟)

8. makemodules 编译模块.(1小时或更久)

9.makemodules_install 安装模块

此时/lib/modules/下应该新生成一个KERNEL_VERSION文件.

10.生成新内核make install

把编译好的内核放入/boot中,会把vmlinuz和System.map复制到/boot目录下,并建立相关的链接

11.完成最后的工作

首先是生成initrd.img。

mkinitramfs2.6.38.8 -o /boot/initrd.img-2.6.38.8

如果系统提示没有安装mkinitramfs,那就apt-get install mkinitramfs

接着修改引导程序文件grub.cfg

update-grub

尽量不要手动去修改grub.cfg文件,搞不好连电脑都启动不了

12.重启电脑

reboot

然后在grub引导界面上选择你的新内核

啰嗦了这么多总算是完成了简单的内核编译,写得有些琐碎,但是每一步都很明确也经过了验证。其实这还算是比较偷懒的方式,关于内核选项的配置和把内核映象以及System.map拷贝到/boot/下,还有给自己的linux内核改名字都省略了,至于用到的命令也没有过多的解释,需要再查资料加深理解。

Linux Kernel 的详细介绍请点这里
Linux Kernel 的下载地址请点这里

相关阅读

Linux内核将用nftables替代iptables

Linux 3.12代号Suicidal Squirrel

怎样在 Ubuntu 上安装 Linux 3.11 内核

Ubuntu 13.10 (Saucy Salamander) 内核已升级至 Linux Kernel 3.10 RC5

Linux Kernel 3.4.62 LTS 现已经提供下载

如何在Ubuntu 13.10上安装Linux内核 3.12

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/8fae6a499acbcd4a57b71fdc124960c2.html