linux 切换内核版本,内核版本更换

之前的内核版本为:3.5.0

更新后的内核版本为:3.8.2

第一步:

安装必须软件:

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要调用的)

其他工具在升级过程中可以按提示安装

第二步:

下载3.8.2内核源码:

www.kernel.org

下载文件为 linux-3.8.2.tar.bz2

假设下载在root目录,然后解压到/usr/src/linux-3.8.2目录里

cd /usr/src

tar jxvf /root/linux-3.8.2.tar.gz

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

第三步:

配置, 把正在使用中的内核配置文件/usr/src/linux-headers-3.5.0-17-generic/.config 拷到/usr/src/linux-3.8.2目录下

cp /usr/src/linux-headers-3.5.0-17-generic/.config /usr/src/linux-3.8.2

执行:

cd /usr/src/linux-3.8.2

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-3.8.2

第五步:更新配置GRUB引导列表(貌似没有弄、自动更新的)

sudo gedit /boot/grub/grub.cfg

最后可能不会成功就执行下面:

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

sudo su (保证获得root权限,否则会提示权限不够,不能成功完成任务哦)

cd /boot

cp initrd.img-3.8.2 initrd-3.8.2.old (先做一个备份以防万一,哈哈)

depmod -a

update-initramfs -k 3.8.2 -c

cd /tmp

gzip -dc /boot/initrd.img-3.8.2| cpio -id

touch lib/modules/2.6.34/modules.dep

find ./ | cpio -H newc -o > /boot/initrd.img-3.8.2.new

gzip /boot/initrd.img-3.8.2.new

cd /boot

mv initrd.img-2.6.34.new.gz initrd.img-3.8.2

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

最后reboot now

成功!!