一、安装好ubuntu 10.4版本,该版本linux内核为2.6.32,我们需将它升级至3.16.60
查看版本命令为: cat /proc/version
下载3.16.60的linux内核。将其解压到/usr/src目录下
教训:觉得主机直接下载比在虚拟机内下载快,于是我是先下载完顺便解压后再通过共享文件夹传送至虚拟机内。然后导致步骤四一直出现错误:make ***no rule to make target 。后来发现在主机解压完的文件夹多了一层linux-3.16.60目录。。所以make命令一直出错,因为它只有在内核源码目录下执行才不会出错。所以,建议直接把linux-3.16.60.tar.xz压缩包放入/usr/src目录下,再通过
tar xvJf **.tar.xz /usr/src 命令将其解压到/usr/src目录下
然后输入ls命令查看目录下文件
如图所示就表示成功了
二、安装编译内核时需要的工具:
输入命令apt-get install build-essential kernel-package libncurses5-dev libqt3-headers
build-essential : 提供编译程序必须用到的软件包的列表信息,当然 build-essential包安装时需要的依赖包 有些你用不上,也可以不打包安装,仅安装自己需要的即可
kernel-package :Debian 系统里生成 kernel-image 的一些配置文件和工具
libncurses5-dev :meke menuconfig要调用的
libqt3-headers :make xconfig要调用的
可能错误:如果显示couldn't find package 错误,并且大部分包都无法下载,那么可以尝试apt-get update 命令,
再重新安装工具包。如果apt-get update 也失败,并显示
(图源自网络)
apt-get的时候发现ubuntu和阿里云均已经不提供该版本的源,所以需要找到其他的替代源,命令如下
sudo gedit /etc/apt/sources.list 打开sources.list文件,修改如下:
将源地址全部改为http://old-releases.ubuntu.com
关闭该文件,重新运行apt-get update,成功。
参考链接:https://blog.csdn.net/qq_15437667/article/details/50719874
https://blog.csdn.net/xiaoxiaopengbo/article/details/56008781
三、sudo su 获得root权限
cd /usr/src/linux-3.16.60 进入linux内核文件
cp /usr/src/linux-headers-2.6.32-22-generic/.config /usr/src/linux-2.6.34
把正在使用中的内核配置文件/usr/src/linux-headers-2.6.32-22-generic/.config 拷到/usr/src/linux-2.6.34目录下
四、make menuconfig
出现的配置界面点击save,再退出即可
五、make mrproper <非必须步骤,目的为清除以前曾经编译过的旧文件>
六、make clean
七 、make
八、make modules
九、make modules_install
十、make install
十一、cd /boot (一定不能忘记哦,不然步骤十二保存路径不对)
mkinitramfs -o initrd.img-3.16.60 3.16.60
十二、sudo gedit /boot/grub/grub.cfb
然后添加linux3.16.60的引导程序(可复制文件内原有的2.6.32引导程序,然后在其后面粘贴,修改成3.16.60 如下所示)
同时将文件内的set default=“0” 修改为set default=“1”
十三、reboot 成功!
参考文档:https://blog.csdn.net/csu_yang/article/details/5960291?utm_source=blogxgwz0
https://blog.csdn.net/yeruby/article/details/44620243