ubuntu 12.04内核升级到3.13.1

1、背景:今天上午连接Android调试之后,突然又出现了无法识别usb的问题。具体表现为:除usb无线网卡有效外,其他usb设备包括usb鼠标、u盘、android手机插上后都没反应。dmesg一直报:hub 5-0:1.0: unable to enumerate USB device on port 1。各种折腾未果,看到有个帖子提到升级内核能够解决,引出了这篇帖子的主题。

 

2、步骤:升级的过程主要是参照这篇《ubuntu 12.04内核编译步骤》,写的详细而且清晰,照着做就行了。这里我再把自己做的过程列一遍:

 1 cd ~/Downloads

 2 su // 改变当前用户,以root执行后续命令

 3 wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.13.1.tar.xz // 下载最新的稳定版

 4 tar xvf linux-3.13.1.tar.xz -C /usr/src/    // 我理解可以随便放

 5 

 6 // 安装ncurses,不然make menuconfig时会报说找不到这个

 7 wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz

 8 tar xvf ncurses-5.9.tar.gz

 9 cd ncurses-5.9

10 ./configuration

11 make

12 make install

13 

14 // OK,下面正式开始编译!

15 cd /usr/src/linux-3.13.1

16 make menuconfig   // 会出现一个配置界面,全用默认的就好,make dep/clean都不用执行

17 make bzImage   // 这一步我用了半小时

18 make modules   // 这一步我用了2.5小时,相信你的机器肯定比我的破本本跑的快!接下去的命令就快了

19 make modules_install   // mkinitramfs -o /boot/initrd.img-3.13.1这一步可以不做,下面会自动做的

20 make install

21 cat /boot/grub/grub.cfg   //  grub.cfg也不用手工改了,可以看到都自动做好了

 

3、清理:执行完上面的过程,重启,uname -r看到3.13.1,呵呵,说明升级成功了。然后就可以把以前的内核版本都清理掉了。

1 sudo apt-get remove linux-image-3.2.*

2 sudo apt-get remove linux-headers-3.2.*

3 sudo apt-get autoremove

清理前,我的系统里有 378492 个文件和目录,清理后只剩下110928,世界顿时清爽了!

 

4、题外话:最后不得不悲摧的提一下,升级之后,usb无效的问题仍然没有解决。如果搞定了,会再小结另外一个帖子。

 

你可能感兴趣的:(ubuntu 12.04)