by camry.wu

编译 linux 内核(2.6以上版本)

  1. 得到linux源文件
    ftp://ftp.kernel.org/pub/linux/kernel/v2.6 中下载
    linux-2.6.x.tar.gz 到 /usr/src

  2. 接下来

      # su
      # cd /usr/src
      # tar xzvf linux-2.6.x.tar.gz            # 解压到 linux-2.6.x 目录
      # mv linux-2.6.x linux-2.6.x-1           # 修改目录名称
      # ln -s linux-2.6.x-1 linux              # 创建链接
      # cd linux
      # vi Makefile                            # 修改内核扩展版本号
        修改 EXTRAVERSION 为 -1 (或其他的字符也可以, 和目录名对应)
      # make mrproper                          # 清除垃圾
      # make menuconfig                        # 选择内核选项
        这一步最麻烦, 有很多东西要选, 用 IBM 本本的
        同学可以在 http://www.w-m-p.com/kconfig-2.6.2-rc2-mm1.txt
        处找到一个配置文件, 找到的话(也许找不到:)), 先给拷贝到
        /usr/src/linux/ 下并改名为 .config, 然后再运行本命令细调
      # make bzImage                           # 编译内核
      # make modules                           # 编译模块
      # make modules_install                  # 安装模块
        (注意: debian 的 ibm 用户最好要安装 module-init-tools)
      # depmod -a
        (好像不用也可以)
    

  3. 修改启动(lilo 的, grub 的更简单, 看看配置文件就知道了)

      # cp /usr/src/linux/System.map /boot/System.map-2.6.x-1
      # cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.x-1
    
    使用具体的版本号区分不同的内核, 这样可以在开始时选择不同的内核启动.
    # vi /etc/lilo (增加以下内容, 将来会显示在lilo开机启动列表中)
      image=/boot/vmlinuz-2.6.x-1
        label=Linux-2.6.x-1
        read-only
        optional
    
    # lilo -v (注意: 这一步很重要!)

  4. # reboot
    可以选新的内核启动, 假如不喜欢也可以选以前的内核.

最后更新: 2004年11月13日 星期六 11点0分39秒
HTML 转换程序: TeX2page 2004-09-11
Logo

更多推荐