系统出问题了,在进入grub界面之前直接重启,难道这就是传说中的硬盘逻辑锁吗?
问题判断: 这应该是mbr被修改了,修复一下。但问题是我这是双系统,修复之后两个系统都要正常引导才可以,最好的解决方法是有一张ubuntu的安装光盘,但是我只有一张xp的ghost盘,没办法,只好迂回一下了。
1. 用xp的ghost盘修复mbr,这样可以进入xp,但是grub没有恢复。
2. 安装grub4dos,用ubuntu的安装镜像从硬盘启动ubuntu
3.进入磁盘镜像中的ubuntu后,修复grub
下面就分别说一下。
第1步:没有什么技术含量,光盘启动ghost的xp,进入diskgen,点菜单中的修复mbr就可以了。这样会把以前坏的mbr覆盖,当然双系统的grub也没有了,所以启动时只能时入xp。
第2步:说明一下ubuntu的两种镜像:desktop和alternate, 这两种镜像在硬盘安装时有区别,desktop硬盘安装时直接解压出iso中的vmlinuz和initrd.gz文件就可以引导,alternate硬盘安装时需要另行下载vmlinz和initrd.gz文件。
不管是解压出来的还是网上下载的vmlinz initrd.gz 还有ubuntu的镜像一律放在C盘根目录中。
2.1 安装grub4dos, 网上下载grub4dos0.4.4(不要下太老的版本),解压出grldr放到C盘根目录,然后boot.ini文件最后添加一行 c:\grldr="Ubuntu 10.10"
2.2 解压出ubuntu-10.10-desktop-i386.iso中的casper中的vmlinuz和initrd.lz,放在C盘根目录,最后把ubuntu-10.10-desktop-i386.iso也放在C盘根目录
2.3 在C盘根目录,建立menu.lst,内容如下。
title Install Ubuntu 10.10(10.10)
root (hd0,0)
kernel /vmlinuz boot=casper iso-scan/filename=/ubuntu-10.10-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
initrd /initrd.lz
boot
这样在重启时就可以进入ubuntu的光盘镜像了。
第3步:挂载ubuntu的各种分区,即重建原先在磁盘上的文件系统目录结构,建好之后,chroot过去,并用update-grub和grub-install将grub安装到mbr,使之可以多重引导。
3.1 从LiveCD的Desktop进入ubuntu,打开一个terminal。
3.2
[url=mailto:root@ubuntu:/]root@ubuntu:/[/url]# sudo su
[url=mailto:root@ubuntu:/]root@ubuntu:/[/url]# mkdir –pv /mnt/test
[url=mailto:root@ubuntu:/]root@ubuntu:/[/url]# mount /dev/sda5 /mnt/test/
root@ubuntu:/# mount --bind /sys/ /mnt/test/sys/
root@ubuntu:/# mount --bind /dev/ /mnt/test/dev/
root@ubuntu:/# mount --bind /proc/ /mnt/test/proc/
root@ubuntu:/# chroot /mnt/test/
root@ubuntu:/# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.35-22-generic
Found initrd image: /boot/initrd.img-2.6.35-22-generic
Found memtest86+ image: /boot/memtest86+.bin
done
root@ubuntu:/# grub-install /dev/sda
Installation finished. No error reported.
如果出现下面的错误,说明目录结构没有挂载正确,要重新挂载: "no /boot/grub/grub.cfg or it’s not correct, create one usingupdate-grub“
3.3 这下grub修复之后,windows又没有了,进入ubuntu
root@ubuntu:~# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.35-22-generic
Found initrd image: /boot/initrd.img-2.6.35-22-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda1
done
这下两个都有了。