`
ancin
  • 浏览: 52824 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

编译Linux内核

阅读更多
=======来自archlinux.org.cn=======

你可以用/usr/src(本文内容)方法来编译内核,也可以用ABS:Kernel compilation with ABS。少数Arch使用者更乐意使用/usr/src这个方法,不过使用ABS在自动配置某些方面很好用。这个取决于你自己,并不是说某个方法就一定比 较好。

下面的内容对生成Arch内核很有帮助。编译内核的常用方法对所有发行版都大同小异。想了解关于这方面的详细内容,请到http://www.digitalhermit.com/linux/...uild-HOWTO.html

1.改下默认内核名字后缀,这样等于做了个备份,比把它们删除要好很多。
# cd /usr/src
# mv linux-2.x.x linux-2.x.x.arch
# mv /lib/modules/linux-2.x.x /lib/modules/linux-2.x.x.arch
# mv /boot/vmlinuz2x vmlinuz-2.x.x.arch
# mv /boot/System.map2x System.map-2.x.x.arch
# mv /boot/kconfig2x /boot/kconfig-2.x.x.arch

这是个好办法,再修改你的grub/lilo配置来确保可以引导系统。有相关的内容。

2.从ftp.xx.kernel.org/pub/linux/kernel/下载源代码,这里xx指的是你所在国家的标识, (例如 'us', 'de', 'uk', ... - 到 http://www.kernel.org有镜象列表 )。如果你没有图形界面的ftp工具,你可以用wget。举个例子,我们要下载编译kernel2.6.6;你只需要改变一下版本号就可以得到不同的内 核。

代码:

# wget ftp://ftp.de.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2

3.把内核移动/复制到/usr/src

4.解压缩
# tar --bzip2 -xvf linux-2.6.6.tar.bz2

5.(可选) 拷贝旧的.config文件,如果你要修改Arch的默认设置。
# cp /usr/src/linux-2.x.x.arch/.config /usr/src/linux-2.6.6/

6.进入到该目录配置内核,如果你要用devfs记得要激活它(除非你使用udev).下面说明了具体操作。
# rm /usr/src/linux
# ln -s /usr/src/linux-2.66 /usr/src/linux
# cd /usr/src/linux
# make menuconfig

你也可以使用make xconfig(依赖Qt)或者make gconfig(依赖GTK).

7.保存设置。最好做个备份,因为你很可能要重复多次才全部搞定。

8.编译。警告:不要运行make all命令,如果你使用grub引导同时还安装有lilo.编译过程最后会去配置lilo,你的系统很可能再也起不来了。
# make -s clean bzImage modules modules_install

9.拷贝内核
# cp -v /usr/src/linux-2.6.6/arch/i386/boot/bzImage /boot/vmlinuz-2.6.6-revision1
# cp -v /usr/src/linux-2.6.6/arch/i386/Kconfig /boot/Kconfig-2.6.6-revision1
# cp -v /usr/src/linux-2.6.6/System.map /boot/System.map-2.6.6-revision1

要是你用lilo,那就让安装脚本自己去拷贝配置它。你完全可以随便更改kernel,Kconfig,和System.map这些文件的名称。名 字-版本-修订版 这种命名方法很简明,在你编译了多个内核时候非常有用。你也可以给名字加上日期和时间,你愿意的话也可以用更简单的命名方法。
# cd /usr/src/linux-2.6.5/arch/i386/boot/
# sh ./install.sh

10.配置Grub或者LiLo,如果你还没去配置好。你是用lilo的话记得输入lilo命令来升级它。
分享到:
评论

相关推荐

    编译Linux内核及调试内核模块

    编译Linux内核及调试内核模块 本篇文章主要讲述了编译Linux内核及调试内核模块的过程,以帮助读者掌握编译内核调试内核模块的基本方法。下面是文章中所涉及的知识点: 1. 获取内核源码:文章中讲述了如何从网上...

    编译Linux内核的错误汇总

    "编译Linux内核的错误汇总" 在编译Linux内核的过程中,可能会遇到各种错误,这些错误可能会导致编译失败。为了帮助大家更好地编译Linux内核,本文档总结了一些常见的错误和解决方法。 错误一:编译2.6.21内核时...

    自己动手编译Linux内核

    自己动手编译Linux内核是一项对系统有深入了解的高级任务,它可以帮助你定制内核以适应特定的需求,去除不必要的功能,提升系统效率,或者添加新的硬件支持。以下是一些关于如何编译Linux内核的关键步骤和注意事项:...

    linux内核下载,【转载】菜鸟编译Linux内核参考.pdf

    Linux 内核下载和编译指南 Linux 内核下载是获取 Linux 内核源码的第一步,在这个过程中,我们可以从官方网站或其他镜像站点下载最新的 Linux 内核版本。下载完成后,我们可以开始编译内核,编译过程需要注意一些...

    操作系统实验报告-编译linux内核

    本实验报告详细记录了在Fedora 10系统上编译Linux内核2.6.27.5的过程,旨在让学生理解内核构建流程,并深入学习Linux内核与发行版的关系。 实验的第一步是准备环境,这包括安装Fedora 10和必要的开发工具,如GCC和...

    linux内核编译实验报告

    - **编译Linux内核**: 执行`make bzImage`命令编译内核映像文件`bzImage`,并使用`make modules`和`make modules_install`命令编译并安装内核模块。 - **修改Grub配置**: 修改Grub配置文件以支持新编译的内核,确保...

    windows下面编译linux-0.11内核

    为了编译Linux内核,你需要安装MinGW32的完整版,包括gcc、make以及其他必要的库和工具。确保你的MinGW32安装了g++编译器,因为内核源码主要是用C++编写的。 接下来,我们需要**Linux 0.11** 的源代码。在解压提供...

    编译Linux内核的方法

    以下是对“编译Linux内核”这一主题的详细解释: 一、编译Linux内核的原因 1. 针对特定硬件优化:不同的硬件配置可能需要特定的内核选项或驱动程序,编译自定义内核可以确保最佳性能。 2. 添加或移除功能:用户可以...

    linux下编译linux内核_内核_linux内核_怎样编译内核_

    总之,编译Linux内核需要对操作系统有深入的理解,并且需要耐心和细心。尽管过程中可能会遇到挑战,但这也是提升技能和解决问题能力的好机会。遵循正确的步骤,解决遇到的问题,你将能成功编译出适合你需求的定制化...

    OMAPL138编译Linux内核方法

    ### OMAPL138编译Linux内核方法详解 #### 1. 编译内核 根据提供的文档信息,本文将详细介绍如何针对OMAPL138平台编译Linux内核的方法。OMAPL138是一款高性能的嵌入式处理器,支持多种内核版本。本文档将涵盖Linux ...

    编译linux内核实验报告(含内核资源链接)

    实验目的:学习重新编译Linux内核,理解、掌握Linux内核和发行版本的区别。实验内容:在Fedora10的Linux系统里,下载并重新编译其内核源代码(版本号2.6.27.5);然后,配置GNU的启动引导工具grub,成功运行重新编译...

    Linux内核编译实验

    4. **了解Linux内核的编译过程**:学会如何编译Linux内核,理解编译过程中的关键步骤及其背后的原理。 5. **掌握如何将自定义代码加入Linux内核结构**:学会如何将自己的代码整合进内核,使其成为内核的一部分。 ##...

    交叉编译Linux内核

    交叉编译Linux内核,是嵌入式设计的基本实验。

    linux内核编译原理

    linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核...

    linux内核下载,【转载】菜鸟编译Linux内核[借鉴].pdf

    编译Linux内核是一项基础且重要的任务,尤其对于开发者和系统管理员来说,它允许定制内核以满足特定需求,优化性能,或者支持新的硬件设备。 在本文中,我们将探讨如何作为菜鸟编译Linux内核,主要步骤如下: 1. *...

Global site tag (gtag.js) - Google Analytics