1.故障现象和原因
笔记本的Ubutnu14.04突然发现卡死在启动画面了,Ctrl+Alt+F1也没反应,只能长按电源键.启动菜单选择"高级"模式进入,用"recover->resume”之后能看到登陆界面,Ctrl+Alt+F1可用,但是一旦输入密码登陆系统再次黑屏卡死。
经过调试,发现故障是由Nvidia-352驱动(由cuda7.5安装包安装)导致的.但是此驱动我使用已经有一个多月,回忆了近期对系统的修改,怀疑是更新Ubuntu核心组件出的问题.这才反应过来启动菜单的高级选项里出现了"3.13.0-66"、"3.13.0-65"、"3.13.0-61"三个kernel版本.推定问题是由新kernel与nvidia-352不兼容导致的。
2.解决方法
利用启动菜单"高级模式"->"Recovery Mode"->”Resume”,等系统到登陆界面,不要登陆(前面说过,登陆进去就会黑屏卡死),注意此时网络也应该是可用的.按下”Ctrl+Alt+F1”,输入用户名密码登陆后,进行以下操作:
1)删除Nvidia驱动
sudo apt-get purge nvidia-352
sudo apt-get purge nvidia*
2)删除新安装的Linux Kernel
sudo apt-get remove 3.13.0-66
sudo apt-get remove 3.13.0-65
版本号可以在启动菜单的高级选项里,或者/etc/boot/grub/grub.cfg文件中找到。
3)重新安装Nivida驱动
sudo apt-get install nvidia-352
注意此步骤可能需要联网才能执行成功.如果网络不可用也没关系,因为直接重启已经可以进入系统了.进入系统连网再安装Nvidia驱动也可以。
4)重新启动系统
sudo reboot
下面是恢复正常的系统版本号(3.13.0-61):
tomheaven@tomheaven-mac:~$ uname -a
Linux tomheaven-mac 3.13.0-61-generic #100-Ubuntu SMP x86_64 x86_64 x86_64 GNU/Linux
以下是Nvidia驱动恢复后X Server Settings正常工作的截图:
3.需要注意的问题
需要注意的是直接在桌面环境中安装Nvidia驱动可能失败:安装过程虽然没有报错,但是重启之后发现依然是Nouveau驱动在工作。这时可以尝试重启,不要登陆,用Ctrl+Alt+F1进入命令行重装驱动,这样一次就能成功。
另一个经验就是不要随便更新Linux的内核(Ubuntu Updater推送更新时注意不要勾选“Ubuntu核心组件”)。在本人看来如果你的系统本身正常工作更新Kernel并没有什么用,但是显卡驱动不兼容的风险可能让系统直接跪了。