简单内核编译

编译 2.6.38.8 内核
$ apt-get install build-enssential libncureses5-dev
$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.38.8.tar.bz2
$ tar -jxvf linux-2.6.38.8.tar.bz2 -C /usr/src
$ cd /usr/src/linux-2.6.38.8/
$ sudo make menuconfig
$ sudo make oldconfig
$ sudo make
$ sudo make modules_install install

在 /boot/ 下多出下面四个文件:

config-2.6.38.8
initrd.img-2.6.38.8
System.map-2.6.38.8
vmlinuz-2.6.38.8

如果没有 initrd.img-2.6.28.8,尝试升级现有的 initrd:

$ sudo update-initramfs -u -k 2.6.38.8

如果还是没有,重新生成一个:

$ sudo update-initramfs -c -k 2.6.38.8

在 grub.cfg 下面添加相应的启动项,或者使用下面的工具直接生成新的 grub2:

$ sudo update-grub

  • http://www.freemindworld.com Li Fanxi

    $ sudo make menuconfig
    $ sudo make oldconfig
    这两步连续做好像没有什么意义。
    make menuconfig是用来手工配置内核参数,make oldconfig是为了把当前源代码目录下的.config文件更新到与当前版本内核匹配,通常用于参考一个已经有的内核配置去生成新配置。比如:
    $ cp /boot/config-`uname -r` ./.config
    $ make oldconfig

    • jaseywang

      对的,前者只是象征性的~