• ubuntu 10.04 编译安装最新版本linux2.6.34内核


    这是我见到的讲解最详细的安装内核的文章,保存以备份。虽然过程中有些异常弹出,单最终在ubuntu11.04上成功更新内核到2.6.39.1。

    http://news.csdn.net/a/20110621/300167.html

    第一步:准备工作

    打开终端获得root权限:

    sudo su

    然后安装编译内核时需要的工具:

    apt-get install build-essential kernel-package libncurses5-dev libqt3-headers

    build-essential (基本的编程库(gcc, make等)
    kernel-package (Debian 系统里生成 kernel-image 的一些配置文件和工具)
    libncurses5-dev (meke menuconfig要调用的)
    libqt3-headers (make xconfig要调用的)
    其他工具在升级过程中可以按提示安装

    第二步:下载内核源代码linux-2.6.34.tar.gz

    请到www.kernel.org官网下载最新版本linux-2.6.34.tar.gz内核
    假设下载在root目录,然后解压到/usr/src/linux-2.6.34目录里
    cd /usr/src
    tar zxvf /root/linux-2.6.34.tar.gz

    解压后会在/usr/src生成新文件夹linux-2.6.34

    第三步:配置

    把正在使用中的内核配置文件/usr/src/linux-headers-2.6.32-22-generic/.config 拷到/usr/src/linux-2.6.34目录下
    cp /usr/src/linux-headers-2.6.32-22-generic/.config /usr/src/linux-2.6.34
    执行:
    cd /usr/src/linux-2.6.34
    make menuconfig

    终端会弹出一个配置界面
    注意主菜单最后有两项:load a kernel configuration…
    save a kernel configuration…
    先选第一项load ….,意思是,利用当前的内核配置详单来设置将要编译的内核,然后选save这一项保存,最后退出配置界面。

    第四步:开如编译安装新内核

    执行:sudo make mrproper (清除以前曾经编译过的旧文件,如果你是第一次编译,可不执行)
    执行:sudo make (编译,可以加-j4,如果你CPU是双核心,够牛的话,因为可以提高速度)
    然后:sudo make install
    再:sudo make modules (编译模块)
    再:sudo make modules_install (安装模块)
    最后创建initrd文件:
    mkinitramfs -o /boot/initrd.img-2.6.34

    第五步:更新配置GRUB引导列表

    sudo gedit /boot/grub/grub.cfg

    我的grub.cfg添加如下:
    menuentry ‘Ubuntu 10.04,Linux 2.6.34′ –class ubuntu –class gnu-linux –class gnu –class os {
    recordfail
    insmod ext2
    set root=’(hd1,9)’
    search –no-floppy –fs-uuid –set 501d3a42-1d52-4438-99bf-e679da605867
    linux /vmlinuz-2.6.34 root=UUID=33883099-83a5-49f3-9c12-ee6a4d90da9e ro quiet splash
    initrd /initrd.img-2.6.34
    }
    #以下是原2.6.32内核启动项
    menuentry ‘Ubuntu,Linux 2.6.32-22-generic’ –class ubuntu –class gnu-linux –class gnu –class os {
    recordfail
    insmod ext2
    set root=’(hd1,9)’
    search –no-floppy –fs-uuid –set 501d3a42-1d52-4438-99bf-e679da605867
    linux /vmlinuz-2.6.32-22-generic root=UUID=33883099-83a5-49f3-9c12-ee6a4d90da9e ro quiet splash
    initrd /initrd.img-2.6.32-22-generic
    }

    到此为止,整个内核的编译就全部完成啦。
    不过也许你重启系统时,虽然启动菜单中增加了新内核2.6.34的启动项,但极可能会启动失败,出现以下提示:

    warning:can’t open directory /lib/modules/2.6.34/modules.dep,no such files or directory

    此时不应气馁,玩LINUX要有敢食螃蟹的勇气和毅力,哈哈。静下心,选择从旧内核启动登录系统,然后执行以下命令(为了避免输入错误,最好复制下面的命令)修改后就能成功启动新内核了。

    ######################################
    sudo su (保证获得root权限,否则会提示权限不够,不能成功完成任务哦)
    cd /boot
    cp initrd.img-2.6.34 initrd-2.6.34.old (先做一个备份以防万一,哈哈)
    depmod -a
    update-initramfs -k 2.6.34 -c
    cd /tmp
    gzip -dc /boot/initrd.img-2.6.34| cpio -id
    touch lib/modules/2.6.34/modules.dep
    find ./ | cpio -H newc -o > /boot/initrd.img-2.6.34.new
    gzip /boot/initrd.img-2.6.34.new
    cd /boot
    mv initrd.img-2.6.34.new.gz initrd.img-2.6.34

    ######################################

    完成上述操作后,重启系统,选新内核启动,会弹出一个小英文窗口,先选择grub update grub …….(因为无法截图,记不清了,大概有这些字样)这一项来更新GRUB,然后再选最上面的一项,好象是resum字样的,不知道有没有记错,哈哈,请细心点吧。完成后重新启动电脑,GRUB菜单会更新成有好多启动项了,就象刚安装完UB10.04时一样,不过你可以登录系统后再修改/boot/grub/grub.cfg来简洁它。到此编译安装工作圆满成功,谢谢各位看官的支持!!!

  • 相关阅读:
    mybatis配置
    mybatis 多表查询 与配置
    Maven中资源导出问题解决方案--pom.xml配置
    【macOS】Mac App Store 无法 更新/下载
    【macOS】删除 Mac 上的 Office 许可证文件
    【前端】JavaScript学习笔记(一)——快速入门
    【前端】CSS3学习笔记(五)——定位
    【前端】CSS3学习笔记(四)——浮动
    【前端】CSS3学习笔记(三)——盒子模型
    【macOS】清除Finder 「前往」(⌘
  • 原文地址:https://www.cnblogs.com/leino11121/p/2381900.html
Copyright © 2020-2023  润新知