Saturday, February 24, 2007

ubuntu紧急恢复

下午在xp下面把本本的一个fat32分区删掉了,希望扩大ubuntu的硬盘空间;结果grub启动时报error code 22
恢复步骤如下:
  1. 从ubuntu 6.06 cd启动
  2. 在mnt目录下创建目录root,再把/dev/hdan这个原来的根设备mount起来
  3. sudo -s
  4. grub-install --root-directory=/mnt/root /dev/hda
  5. reboot
重启后正常
问题的原因很可能是因为删除了一个分区后引发/dev/hdan的n序号混乱(我的原根分区设备hda8现在就变成hda7),导致grub找不到根目录设备和内核;但是奇怪的是,我的fstab配置文件还是调整前的样子,系统mount后却没有什么问题,至少根目录mount的正确,没有发现像grub那样的惨剧!
另外 ,Sisyphus建议了更简单的方法,当然是在grub的shell下
解决方法:使用grub的命令,首先 root (hdX,Y),然后 setup (hdX),hdX指的是grub安装的磁盘,一般是hd0,Y表示linux分区的位置,如你安装在hda5,那么Y=4.你还可以通过"cat (hdX,Y)/路径"查看磁盘上的文件.比如"cat (hd0,5)/boot/grub/menu.lst",查看启动配置.

0 comments: