Android with root Git for version control Lircd with Raspberry Pi for IR receiver and sender Tips for Windows Depolying your own password management tool -- KeeWeb Depoly your flask app into Heroku Fix shit IE code manually ISBN to Book Category by Scraping DangDang A Generic Makefile for C/C++ Program Configure Raspberry pi Remove watermark with PyPDF2 tips for docker Anaconda+TensorFlow+CUDA Snippets Configure Remote Mathematica Kernel Build your own ngrok server Access Array SSL VPN 使用Rstudio制作html5幻灯片 tips for Mac OS X system Tips for ipython notebook 配置Ubuntu server + Openbox (Obuntu) tips for Vimperator tips for Vim 安装CUDA My First Jekyll Blog rsync常见选项 在Linux中读取Ipod touch的文件 tip for texmacs 在VPS上建站的一些tip Gnuplot绘图札记 Samba系统和autofs自动挂载 Linux中alsamixer声卡无法录音 搭建自己的RSS订阅器——Tiny Tiny RSS Grub2引导安装Ubuntu awk tips 将Ubuntu系统装入U盘 The Great Rtorrent 编译GCC 再这样剁手!!!该死的libgd 使用ulimit进行资源限制 使用SSH代理上IPV6 使用RCurl抓取网页数据 修复Ubuntu Grub记 openbox中的文件关联 在Ubuntu 12.04下编译qtiplot 处理BCM4312网卡驱动纪实 配置我的Ubuntu Server记 Cygwin杂记 Linux 使普通用户具有以超级权限执行脚本 让firefox自定义地处理文件类型 WordPress优秀主题及插件 在phpcloud上搭建wordpress UBUNTU下用pptpd做VPN server ubuntu升级内核过后的一些问题 安装telnet服务 kubuntu札记 64位kubuntu札记 统计软件R Virtualbox stardict星际译王 Ubuntu重装windows系统后的grub引导修复 SSH服务及花生壳域名解析 采用cbp2make工具由code::blocks工程创建makefile文件 UBUNTU 札记

ubuntu升级内核过后的一些问题

2012年08月22日

Ubuntu 最麻烦的就是升级了系统内核过后容易引起各种问题,诸如显卡驱动不能正常工作而不能进入X界面,又如电源管理不能正常工作,以及下面将要谈到的丢失内核等一系列问题。

一、闭源显卡驱动fglrx不工作

如若显卡驱动不能正常工作(一般出现在ati的显卡上),需要卸载显卡驱动,重新安装上开源驱动。

#首先卸载
sudo sh /usr/share/ati/fglrx-uninstall.sh
sudo apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*
sudo apt-get remove --purge xorg-driver-fglrx xserver-xorg-video-ati xserver-xorg-video-radeon
#重新安装开源驱动mesa
sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
sudo rm -rf /etc/ati
#配置
sudo dpkg-reconfigure xserver-xorg
#安装好后可能3D效果还是没有,或者virtualbox不能工作,提示少了libGL.so等问题,应该是少了某些包,重新安装上
sudo apt-get install libgl1-mesa-glx xserver-xorg-video-ati

注:上面的VBOX问题,只要找到libGL.so文件复制过去就行,因为乎只缺少这个文件,可以采用ldd命令查看某个可执行的 二进制 档案依赖什么动态函数库(.so文件)。 可以上http://packages.ubuntu.com/搜索软件包以及含有某个文件的软件包。

二、丢失内核

升级内核过后,grub可能没有更新或者干脆丢失了内核。于是启动到grub的时候就不能显示系统内核项,而只有memtest项。

1、仅丢失grub更新

如果你是ubuntu单系统或者设置了grub显示时间为0,那么系统启动后将直接进入memtest,看不到grub的出现。此时,在打开电源开始启动时按住 shift 键不动直到grub出现即可。

为命令提示符):

grub> search -f /etc/fstab                        #查找硬盘,确定boot分区或者根分区的盘符位置
grub> set root=hd0,1                              #存放 vmlinuz和initrd.lz(这两个在boot目录下)的分区号,hd0硬盘上的第1个分区
grub> linux /vmlinuz root=/dev/sda1       #设置根分区位置,注意如果把boot分区和根分区分开放了,这里分区数字可能和上面不一样
grub> initrd /initrd.lz
grub> boot

进入系统后重新安装内核,再更新grub

sudo update-grub

2、丢失内核

这个就有点麻烦了,需要先冲光驱或者iso内拷过来内核。 以U盘或光驱启动,然后挂载含有boot目录的分区。

mkdir /disk
mount /dev/sda1   /disk    #如果挂载其他格式的磁盘需加上参数-t ,如mount /dev/sda1   /disk -t  ntfs
cp /cdrom/capser/vmlinuz   /disk/boot/vmlinuz
cp /cdrom/capser/initrd.lz   /disk/boot/initrd.lz

做完过后重启按照仅丢失grub的方法做即可。