Debian下的内核编译
如果你装了一台linux的机器,自己没有重新编译内核,那这台机器的效率就大打折扣了,因为默认安装的机器会生成许多不需要的东西,在启动的时候也会比较慢,而你要用的有些东西可能不能工作,比如,现在都把IPV6放在里面,但我还不知道什么时候能用到IPV6呢,启动的时候老是找啊找的,心烦,而fedora里面的PPP默认是不配置的,你上来用不了拨号怎么办?所以,在Linux下编译内核是一项必要的工作,好了,现在开始吧:
如果你总是想用最新的内核,那么到kernel.org去下载最新的,如果你只是为了改更一些选项,那么建议你还是直接用apt-get 下载Debian的内核吧。
seabird-debian:/usr/src# apt-get install linux-tree-2.6.18 kernel-package fakeroot
(如果你直接用root用户,下不下fakeroot到无关紧要)
安装并不是真的会把这个kernel安装到你的系统,只是下载源文件而已,好了,进入/usr/src:
你会看到一个文件linux-source-2.6.18.tar.bz2
先把文件解压
seabird-debian:/usr/src#tar jxvf linux-source-2.6.18.tar.bz2
文件被解压后生成一个linux-source-2.6.18的目录,进入该目录:
seabird-debian:/usr/src#cd linux-source-1.6.18
seabird-debian:/usr/src/linux-source-1.6.18#
使用正在运行的配置文件:
seabird-debian:/usr/src/linux-source-1.6.18# make oldconfig
然后进行修改:
seabird-debian:/usr/src/linux-source-1.6.18# make menuconfig
生成新内核:
seabird-debian:/usr/src/linux-source-1.6.18# make-kpkg clean
seabird-debian:/usr/src/linux-source-1.6.18# make-kpkg --initrd --append-to-version=seabird --revision=1.0 kernel-image
查看如有错误,再次 make menuconfig 更改,如果顺完成,会在/usr/src下生成如下文件:
linux-image-2.6.18lilin_1.0_i386.deb
好了,安装新内核
seabird-debian:/usr/src# dpkg -i linux-image-2.6.18lilin_1.0_i386.deb
选中了曾被取消选择的软件包 linux-image-2.6.18lilin。
(正在读取数据库 ... 系统当前总共安装有 119841 个文件和目录。)
正在解压缩 linux-image-2.6.18lilin (从 linux-image-2.6.18lilin_1.0_i386.deb) ...
Done.
正在设置 linux-image-2.6.18lilin (1.0) ...
Running depmod.
Finding valid ramdisk creators.
Using mkinitramfs-kpkg to build the ramdisk.
Running postinst hook script /sbin/update-grub.
You shouldn't call /sbin/update-grub. Please call /usr/sbin/update-grub instead!
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.18lilin
Found kernel: /boot/vmlinuz-2.6.18-6-686
Found kernel: /boot/vmlinuz-2.6.18-5-686
Found kernel: /boot/vmlinuz-2.6.18-4-686
Updating /boot/grub/menu.lst ... done
seabird-debian:/usr/src#
注意红色的那一行,按提示自己运行一下
seabird-debian:/usr/src# update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.18lilin
Found kernel: /boot/vmlinuz-2.6.18-6-686
Found kernel: /boot/vmlinuz-2.6.18-5-686
Found kernel: /boot/vmlinuz-2.6.18-4-686
Updating /boot/grub/menu.lst ... done
seabird-debian:/usr/src#
好了,新的kernel已经添加到启动列表了,reboot,你就可以使用新内核了!
http://blog.sina.com.cn/s/blog_40e5d1fb0100ek92.html
最新文章
- .NET Core 2.0版本预计于2017年春季发布
- jquery 农历日历 可自适应
- 根据第三方库spire.pdf使用指定打印机打印pdf文件
- HD1580(尼姆博弈入门)
- 在SQLite中创建数据库时总是提示错误?
- 子查询注意这几点, 就可以写出好的sql语句
- .net 添加不同项目框架引用出现的问题
- 剖析touch事件在View中的传递
- CSS3中的属性介绍
- 基于ROS和beaglebone的串口通信方式,使用键盘控制移动机器人
- WPF获取当前用户控件的父级窗体
- ubuntu 安装NVIDIA驱动过程
- w3school前端教程合集
- 学号20155311 2016-2017-2 《Java程序设计》第9周学习总结
- leetcode-908-最小差值 I
- JMeter学习笔记--使用HTTP信息头管理器
- 超全面的JavaWeb笔记day18<;事务&;连接池&;DBUtils>;
- Hexo之我的桌角女友的食用方式
- LoadRunner去除事物中的程序的执行时间
- npoi导出excel_asp.net MVC
热门文章
- hibernate注解--@transient
- Jmeter中使用CSV Data Set Config
- Python 纸牌游戏
- uni-app 路由navigate
- BA-冷源系统--一次流量控制方案(转载)
- 引用内部函数绑定机制,R转义字符,C++引用,别名,模板元,宏,断言,C++多线程,C++智能指针
- ubuntu中写一个shell脚本的过程
- C# 监控Windows睡眠与恢复
- centos 下 KVM虚拟机的创建、管理与迁移
- UVA 1541 - To Bet or Not To Bet 记忆化DP概率