linux内核升级

来源:互联网 发布:魔幻手机特效软件下载 编辑:程序博客网 时间:2024/06/11 10:32

linux内核升级

升级步骤:

  1. 下载内核
  2. 解压内核源码压缩文件
  3. 进入内核目录,执行清理工作
  4. 配置内核
  5. 编译内核模块
  6. 安装内核模块
  7. 制作initrd
  8. 拷贝内核镜像bzImage和initrd到/boot
  9. 修改grub配置文件,添加新的启动项
  10. 保存该配置文件后重启计算机

以下以fedora17内核升级到linux-3.4.5为例:

1. 下载内核

到Linux官方网站下载内核,网址为 http://www.kernel.org/。下载linux-3.4.5.tar.bz2

2. 解压内核源码压缩文件

 $ su

 # cd /usr/src/

 # tar jxvf linux-3.4.5.tar.bz2

3. 进入内核目录,执行清理工作

 # cd linux-3.4.5
 # make distclean

4. 配置内核

linux配置内核有很多种方式,有直接copy当前内核的配置、make menuconfig、make oldconfig等。关于make menuconfig以后会做详细解释。以下选择make oldconfig:

 # make oldconfig

5. 编译内核模块

 # make bzImage

6. 安装内核模块

 # make modules_install

7. 制作initrd

# cd ..          //先切换到linux-3.4.5的上一级目录

# mkinitrd initrd-3.4.5 3.4.5

8. 拷贝内核镜像bzImage和initrd到/boot

 # cp initrd-3.4.5 /boot
 # cp linux-3.4.5/arch/x86/boot/bzImage /boot/vmlinuz-3.4.5

9. 修改grub配置文件,添加新的启动项

 # cd /boot/grub2
 #  vim grub.cfg

复制该配置文件中的以下内容

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora Linux' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-be4afe20-898e-4a0b-a91a-68dd0089f171' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos9'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 --hint='hd0,msdos9'  de1def79-dc4e-420b-88f7-9df0c9808e3f
        else
          search --no-floppy --fs-uuid --set=root de1def79-dc4e-420b-88f7-9df0c9808e3f
        fi
        echo    'Loading Linux 3.3.4-5.fc17.i686.PAE ...'
        linux   /vmlinuz-3.3.4-5.fc17.i686.PAE root=/dev/mapper/vg-lv_root ro SYSFONT=False rd.dm=0 rd.md=0  KEYTABLE=us LANG=zh_CN.UTF-8 rd.luks=0 rd.lvm.lv=vg/lv_root rd.lvm.lv=vg/lv_swap rhgb quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initramfs-3.3.4-5.fc17.i686.PAE.img
}

将以上内容作以下修改(grub选项名称、引导时的显示文字、内核镜像、初始化RAM磁盘)

  • 粘贴以上内容到该文件的相应位置,并在其后加上:
    ### END /etc/grub.d/10_linux ###   //其中前后的10_linux作相应修改
  • menuentry 'Fedora Linux' 改为
    menuentry 'Fedora Linux (linux-3.4.5)'
  • Loading Linux 3.3.4-5.fc17.i686.PAE 改为
    Loading Linux 3.4.5
  • linux /vmlinuz-3.3.4-5.fc17.i686.PAE 改为
    linux /vmlinuz-3.4.5
  • initrd /initramfs-3.3.4-5.fc17.i686.PAE.img 改为
    initrd /initrd-3.4.5

10. 保存该配置文件后重启计算机,即可看到新的启动项

# reboot