如何编译Linux内核2.6.26

编译定制版内核有它自己的优点和缺点。但是,新的Linux用户和管理员会发现编译Linux内核比较困难。编译内核需要理解很少的东西并且然后输入几行命令。这个一步步的如何编译Linux内核涉及了在Debian GNU Linux下编译2.6XX版本的Linux内核。但是,指令对除了apt-get命令外的任何其他发行版本仍然一样。

第一步 获取最新的Linux内核

访问http://kernel.org/并下载最新的源代码。文件名可能是linux-x.y.z.tar.bz2,x.y.z实际上是版本号。例如linux-2.6.25.tar.bz2代表2.6.25内核版本。使用wget命令来下载内核源代码:

<span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:12px;">$ cd /tmp
$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-x.y.z.tar.bz2</span></span></span>

注意:把x.y.z用实际的版本号来替换

第二步 提取tar(.tar.bz3)文件

输入如下代码:

<span style="font-size:14px;"><span style="font-size:14px;"># tar -xjvf linux-2.6.25.tar.bz2 -C /usr/src
# cd /usr/src</span></span>

第三步 配置内核

在你配置内核之前要确保你有开发工具(gcc编译器和相关工具)被安装到你的系统上。如果gcc编译器和工具没有被安装,那就在Debian Linux下使用apt-get命令来安装开发工具。

<span style="font-size:14px;"># apt-get install gcc</span>
现在你可以通过输入以下任何一个命令来开始内核配置:

$ make menuconfig - 基于文本的颜色菜单,单选列表和对话框。如果你想远程编译内核的话,这个选项在远程服务器上还是很有用的。

$ make xconfig - 基于X窗口(Qt)的配置工具,在KDE桌面下工作得最好。

$ make gconfig - 基于X窗口(Gtk)的配置工具,在Gnome桌面下工作最好。

例如,可以使用如下命令来启动菜单配置:

<span style="font-size:14px;"><span style="font-size:14px;">$ make menuconfig</span></span>
你必须根据你的需要来选择不同的选项。每个配置选项都有相关的帮助按钮,所以可以选择帮助按钮来获取帮助。
第四步 编译内核

开始编译,首先创建一个压缩的内核镜像,输入:

<span style="font-size:14px;">$ make</span>

开始编译内核模块:

<span style="font-size:14px;"><span style="font-size:14px;">$ make modules</span></span>


安装内核模块(使用su命令称为根用户):
<span style="font-size:14px;"><span style="font-size:14px;">$ su -
# make modules_install</span></span>

第五步 安装内核

到目前为止,我们已经编译了内核并安装了内核模块。是时候来安装内核本身了。

<span style="font-size:14px;"><span style="font-size:14px;"># make install</span></span>

它会在/boot目录里安装三个文件并对你的内核grub配置文件进行修改:

  • System.map-2.6.26
  • config-2.6.26
  • vmlinuz-2.6.26
第六步 创建一个initrd镜像
在shell提示符后输入如下命令:
<span style="font-size:14px;"># cd /boot
# mkinitrd -o initrd.img-2.6.26 2.6.26</span>
initrd镜像包含了后来被用于加载操作系统剩下部分的设备驱动。并不是所有的计算机都需要initrd,但是为了安全起见还是创建一个。
第七步 修改Grub配置文件 - /boot/grub/menu.lst
使用vi文本编辑器来打开文件:
<span style="font-size:14px;"><span style="font-size:14px;"># vi /boot/grub/menu.lst</span></span>

<span style="font-size:14px;"><span style="font-size:14px;">title           Debian GNU/Linux, kernel 2.6.25 Default
root            (hd0,0)
kernel          /boot/vmlinuz root=/dev/hdb1 ro
initrd          /boot/initrd.img-2.6.25
savedefault
boot</span></span>
记得要设置正确的root=/dev/hdXX设备。保存并关闭该文件。如果你认为用手编辑并写所有代码行对你来说太多的话,试试update-grub命令来更新/boot/grub/menu.lst中的每个内核的代码行。只需输入如下命令:
<span style="font-size:14px;"># update-grub</span>

嘿,是不是很简洁?
第八步 重启计算机并引导进你的新内核
只用输入重启命令:
<span style="font-size:14px;"><span style="font-size:14px;"># reboot</span></span>






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值