双系统机—重装win7后如何恢复ubuntu引导
我的机子装有两个系统,即双系统,一个是win7,一个是ubuntu,最近win7系统崩了,就重新安装了一个,结果再次开机的时候,没有ubuntu的启动项了,我就急了,以为ubuntu系统没有了,然后就问了一下懂这方面的同学,同学说还在,要重新引导一下grub(一个多重启动管理器,可以在多个系统并存时选择引导哪个系统),就可以了。把这个写到博客上面来,是为了以后方便查询,下面就是具体的步骤。
- 准备一张ubuntu系统安装盘;
- 将ubuntu系统安装盘放入光驱,重新启动计算机,进入BIOS,将开机启动设置为光驱(CD/ROM)启动方式;
- 然后保存设置退出,等待片刻就进入到ubuntu的安装界面,此时有两个选择
a、在该光盘上试用ubuntu系统
b、将ubuntu系统安装到计算机上
选择"在该光盘上试用ubuntu系统",进入到ubuntu系统之后,打开终端(快捷键组合是Ctrl+Alt+T);
4. 在终端下输入sudo -i (获得管理员权限)
- 在终端下输入fdisk -l (是小写的字母'L',查看盘符列表)
会出现类似下面的信息:
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x70f7ab9c
Device Boot Start End Blocks Id System
/dev/sda1 1 1627 13060096 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 1627 1639102400 7 HPFS/NTFS
Partition 2 does not end on cylinder boundary.
/dev/sda3 1639 8166 52429859 7 HPFS/NTFS
/dev/sda4 8167 38913 246975277+ 5 Extended
/dev/sda5 8167 32385 194539082+ 7 HPFS/NTFS
/dev/sda6 32386 38788 51432066 83 Linux
/dev/sda7 38789 38913 1004031 82 Linux swap / Solaris
然后找到ID为83的盘符,根据上面显示的信息可知当时装ubuntu时是装在sda6这个分区。
6. 在终端输入mount /dev/sda* /mnt
(*代表ubuntu系统所在的分区,即上一步显示结果中ID为83的分区号,如上面显示的是在sda6这个分区,
所以输入的是mount /dev/sda6 /mnt
注意:mount后面有一个空格,sda6后面也有一个空格,这两个空格千万不要漏掉,否则会报错)
7. 上一步结束之后,继续在终端中输入grub-install --root-directory=/mnt /dev/sda
等待一会儿,若出现 Installation finished,No Error Reported 则表示成功了
(注意:grub-install之间没有空格,--root前面有一个空格,--root前面是两个'-',/mnt后面有一个空格)
8. 到此,ubuntu引导基本恢复,重启电脑后,就可以看到熟悉的ubuntu引导界面了,进入ubuntu系统,打开终端输入
sudo update-grub
等待片刻显示以下信息:
Generating grub.cfg .
Found linux image: /boot/vmlinuz-2.6.31-20-generic
Found initrd image: /boot/initrd.img-2.6.31-20-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows Vista (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
done
说明已经成功了。