随笔- 65  文章- 1  评论- 5  阅读- 11万 

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无效的问题仍然没有解决。如果搞定了,会再小结另外一个帖子。

 

 posted on   AlexanderYao  阅读(813)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示