安装相关依赖包

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日

Debian 64位内核升级步骤的更多相关文章

  1. 64位内核注冊tty设备

    在64位系统中,注冊tty设备须要注意的是,Android跑在EL0而且在32位模式下,kernel跑在EL1而且在64位模式下,不但内核须要打开CONFIG_COMPAT选项,非常多android上 ...

  2. Windows10下安装Oracle 11g 64位的详细步骤

    直接附上我整理后的Word版<Windows10下安装Oracle 11g 64位的详细步骤>下载地址,提取码:9vak. 参考文献: 1.Win10 64位系统下安装Oracle11g详 ...

  3. Win7 64位系统,IE11,如何让IE的Tab强制运行64位内核?

    有些人在使用TerraExplorer Pro 7版本进行web二次开发的时候,常会遇到下面截图中这样的问题, 这个问题主要是因为安装的TerraExplorer Pro 7 版本是64位的,而模型运 ...

  4. 64位内核第三讲,Windbg的使用.以及命令

    目录 一丶驱动的调试. 1.线程 2.断点 3.内存查看命令 4.修改内存命令 5.栈相关操作命令 6.进程线程命令(内核命令) 一丶驱动的调试. 编写驱动免不了调试.所以这里介绍一下WinDbg的常 ...

  5. Tomcat9 配置在Windows7 64位 上安装步骤

    安装 Tomcat 之前先安装java JDK . 本人在安装Tomcat之前,java的jdk安装的是jdk 11版本.安装java 网上教程一大把,我这里不再阐述. 百度直接搜 Tomcat,如下 ...

  6. Linux 内核升级步骤

    1.解压内核文件包#xz -d linux-3.2.63.tar.xz #tar xvf linux-3.2.63.tar 2.拷贝解压文件到/usr/src#cp -r linux-3.2.63 / ...

  7. 64位内核开发第十二讲,进程监视,ring3跟ring0事件同步.

    一丶同步与互斥详解,以及实现一个进程监视软件. 1.用于线程同步的 KEVENT 事件很简单分别分为 事件状态. 以及事件类别. 事件状态: 有信号 Signaled 无信号 Non-signaled ...

  8. 64位内核开发第四讲,查看SSDT表与showSSDT表

    目录 SSDt表与ShadowSSDT表的查看. 一丶SSDT表 1.什么是SSDT表 2.查看步骤 二丶ShadowSSDT表 1.什么是ShadowSSDT表 2.如何查看. 三丶工具介绍 SSD ...

  9. 64位内核开发第二讲.内核编程注意事项,以及UNICODE_STRING

    目录 一丶驱动是如何运行的 1.服务注册驱动 二丶Ring3跟Ring0通讯的几种方式 1.IOCTRL_CODE 控制代码的几种IO 2.非控制 缓冲区的三种方式. 三丶Ring3跟Ring0开发区 ...

随机推荐

  1. 【数论】HDU 4143 A Simple Problem

    题目内容 给出一个正整数\(n\),找到最小的正整数\(x\),使之能找到一个整数\(y\),满足\(y^2=n+x^2\). 输入格式 第一行是数据组数\(T\),每组数据有一个整数\(n\). 输 ...

  2. dubbo配置加载优先级

    优先级从高到低: JVM 启动 -D 参数优先,这样可以使用户在部署和启动时进行参数重写,比如在启动时需改变协议的端口: XML 次之,如果在 XML 中有配置,则 dubbo.properties ...

  3. FFmpeg 将大量图片合成为视频 video

    1.基本格式终端输入: ffmpeg -f image2 -i /home/ttwang/images/image%d.jpg tt.mp4其中/home/ttwang/images/images%d ...

  4. SpringBoot第三集:热部署与单元测试(2020最新最易懂)

    SpringBoot第三集:热部署与单元测试(2020最新最易懂) 有兴趣的可以先参考附录简单了解SpringBoot自动装配流程. 一.SpringBoot开发热部署 项目开发中,你是否也遇到更新配 ...

  5. confluence 4.2 升级至 6.10.x 记录

    confluence 4.2 升级至 6.10.x 记录 首先将线上环境中的 confluence 安装目录.数据目录以及数据库进行备份,相关信息如下: 安装目录:/opt/atlassian/con ...

  6. Elasticsearch启动报错:future versions of Elasticsearch will require Java 11

    1 future versions of Elasticsearch will require Java 11; your Java version from [C 2 :\Program Files ...

  7. Reverse for ‘password_reset_complete‘ not found. ‘password_reset_complete‘ is not a valid view funct

    关注公众号"轻松学编程"了解更多 原因 在使用xadmin与django 2版本以上修改密码时会报这个错,这是由于django修改密码成功后使用的是success_url参数,而x ...

  8. 我用 Python 撸了一个 plist 图集拆图工具!附上github源码

    这些年,我一直在使用 JavaScript .CocosCreator 做开发,只要是他们不能解决的,我都不太愿意去弄,或者说是不太情愿去做.真的是手中有把锤子,看什么都是钉子,越是熟悉一样东西,越容 ...

  9. windows 查看内存

    MEMORYSTATUSEX statex; statex.dwLength = sizeof (statex); GlobalMemoryStatusEx (&statex); _tprin ...

  10. 【Kata Daily 190916】String end with?(字母结尾)

    题目: Complete the solution so that it returns true if the first argument(string) passed in ends with ...