zoukankan      html  css  js  c++  java
  • Debian 64位内核升级步骤 武汉

    安装相关依赖包

    apt-get install bzip2 libncurses5-dev kernel-package zlib1g-dev gcc make kernel-package wget module-init-tools procps libncurses5-dev
    

    下载源码

    cd /usr/src
    wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.9.tar.bz2
    tar -xvjf linux-2.6.35.9.tar.bz2
    cp /boot/config-`uname -r` /usr/src/linux-2.6.35.9/.config
    Then we must configure the new kernel:
    cd linux-2.6.35.9
    make menuconfig
    

    裁剪不需要的东西

    我们在内核配置里面至少有几个地方要修改。如下所示:

    >File systems -> Btrfs filesystem (EXPERIMENTAL) Unstable disk format
    在"Btrfs filesystem"之前标上<*>
    Processor type and features -> Processor Family -> "our processor"
    删除Dell laptop support、Toshiba Laptop support。
    裁减sound card support。
    裁减Bluetooth subsystem support。
    裁减Wireless。
    裁减Kernel hacking 。
    多次点击“ESC”退出,保存
    make-kpkg linux-image linux-headers --initrd
    编译成功后执行
    
    cd ..
    dpkg -i linux-image-2.6.29_2.6.35.9-10.00.Custom_i386.deb
    dpkg -i linux-headers-2.6.29_2.6.35.9-10.00.Custom_i386.deb
    

    重启,用 uname-a 查看内核版本

    错误处理

    编译完成后生成linux deb 包,先dpkg -i装image,再装headers

    安装完成以后再update-grub 进入/boot/grub/menu.lst 中选择启动的内核项 默认的第一项为0

    在编译完成内核后开机可能出现 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)的错误 在/boot/grub/menu.lst中可以发现新加的内核可能是没有 initrd /initrd.img-2.6.37.6 未生成的原因不明 可以手动生成
    执行命令

    mkinitramfs -o /boot/initrd.img-2.6.34.10 2.6.34.10 
    

    /boot/initrd.img-2.6.34.10是这个启动加载文件的生成路径
    2.6.34.10是 /lib/modules/2.6.34.10

    然后update-grub 再启动新内核就没有问题了
    卸载一个已经安装的内核包
    debian卸载旧内核要先看看有哪些旧的内核,用命令

    dpkg --get-selections |grep linux
    

    如果你的内核是以kernel开头的就把上面的linux改成kernel,之后再用

    dpkg --purge --force-remove-essential linux-image-XXX
    

    更新历史

    why when
    创建 2011年12月16日
    更新 2019年12月7日
  • 相关阅读:
    Java 开发者不容错过的 12 种高效工具
    10个基于 Ruby on Rails 构建的顶级站点
    当 ITOA 遇上 OneAlert,企业可以至少每年节省 3600 小时!
    年度十佳 DevOps 博客文章(前篇)
    如何使用 Java8 实现观察者模式?(下)
    企业处理事件风暴的 2 种最佳管理方法
    移动开发:初学 iOS-UIViewController 心得
    如何使用 Java8 实现观察者模式?(上)
    世界级的安卓测试开发流!
    PHP全栈学习笔记19
  • 原文地址:https://www.cnblogs.com/zphj1987/p/13575236.html
Copyright © 2011-2022 走看看