Ubuntu 升级内核后不能正常引导的问题
这不是个新问题了。前两月开始,自从我的一台 Ubuntu 机器某次更新内核到 2.6.28-13 后,就无法正确引导。而只能引导旧的 2.6.28-11 。
这两天内核又升级到 2.6.28-14 问题依旧。
启动时显示:
Error 13 : Invalid or unsupported executable format
我觉得不能将就了,就花了点时间研究解决了一下。
我的这台出问题的机器上装有 freeBSD Ubuntu 和 Windows 三个系统。最早装的 freeBSD ,然后分出一个区装的 Windows ,再然后从 Windows 分区上又划出了一部分装 Ubuntu 。
出问题前,我尝试过升级文件系统。从 Ext3 到 Ext4 。感觉问题可能来源于这里。
无论如何,跟 grub 有关系。
根据一些搜索来的信息,重新 grub-install 了一下就好了。
sudo grub-install /dev/sda
做这个步骤时,我曾经不小心弄错了。用的 sudo grub-install /dev/sda4 (因为我的 Linux 分区在那里)
导致悲剧了。系统不能启动。只好刻了张 Ubuntu 的 LiveCD 修复 grub 。
sudo grub
root (hd0,4)
setup (hd0)
quit
关于问题的原因,我的揣测是因为 grub 特殊的工作方式引起的。硬件引导的时候,可以加载的代码有限。所以并不能完整处理复杂的文件系统。
这也是为什么,早期的 dos 必须把引导文件放在磁盘的最开头的缘故。
由于我把 ext3 过渡到 ext4 的缘故,导致了 grub 工作失常,不能正确的引导后来复制到文件系统中的内核文件。新的 grub 当然对 ext4 有支持,只是可能是对这种过渡情况支持的不好吧。重新安装 grub 后也就正常了。
ps. 其实当初就应该把 /boot 保留为 ext3 的,害的我原来刻的 Ubuntu 8.10 的盘不能用,又重新下了个 9.04 的 ISO 刻盘。感觉又污染了环境,每次刻盘都有罪恶感。
Comments
看来我落伍了。
Posted by: 福利工口姬 | (12) April 16, 2014 04:04 PM
/boot在ext4 GRUB legacy是不支持的,GRUB2支持,这个大家现在应该都知道了^^
风云兄竟然还刻盘装Linux。其实可以用一个很方便的傻瓜式工具UNetBootin来快速制作Live USB。我还专门写过一篇文章,让大伙儿不要申请免费的Ubuntu CD,基本没用,拿来垫桌脚都嫌麻烦。还是把资源留给需要的人;-)
Posted by: Terry | (11) March 31, 2010 06:53 AM
grub能认出ext3 已经很不错了. Knoppix等liveCD 丢到USB里,ext2 都找不到镜像
Posted by: Icat | (10) September 1, 2009 12:09 PM
其实现在基本是在Windows用一键还原自带的那个grub for dos来安装所有的iso,免去了刻碟,觉得这个方式安装系统很不错,并且两个grub不会发生冲突……
Posted by: zay | (9) August 9, 2009 10:49 PM
ubuntu就是apt-get安装程序时,现的显示排列不爽,非常不爽,其它还好;
Posted by: Anonymous | (8) August 9, 2009 09:29 PM
用了ubuntu好一段时间,现在又改用fedora了,因为更喜欢yum。
Posted by: chinainvent | (7) August 9, 2009 08:22 PM
我也来凑个热闹。
Posted by: 华尔街 | (6) August 9, 2009 05:41 PM
刻系统盘还是买个可擦写的dvd+rw盘好 京东上有卖 sony的也就8块左右
Posted by: xun | (5) August 9, 2009 02:22 PM
看来我落伍了,还在使用FreeBSD 7.0
Posted by: Anonymous | (4) August 9, 2009 09:53 AM
不需要再刻盘,把livecd装在U盘上启动。或者用grub-install把grub安装在U盘上。即可修复。
一般的发行版都提供支持U盘启动的kernel,更别说Ubuntu。
Posted by: momo | (3) August 9, 2009 07:00 AM
我也使用ubuntu server,但一直是使用7.04版本,之前有升级过8.04,升级后造成系统很慢,没来得及查原因就换回来了。。
能不能share一下你的系统参数配置经验?就是net.ipv4.tcp_syncookies那些,在应付门户web网站的情况下应该何配置?
谢谢 :)
Posted by: anno | (2) August 9, 2009 02:16 AM
云风也用Ubuntu啊,呵呵
Posted by: annixhong | (1) August 9, 2009 12:43 AM