一、Grub简介
Grub是GNU的多重启动引导程序,被广泛用于各类操作系统尤其是Linux。[1]
二、背景
由于使用Windows安装盘修复了系统,导致Fedora的引导丢失。
三、工具
Fedora Live USB/DVD或者其他使用Grub2引导的Linux LiveCD/Rescure CD
四、步骤
首先使用LiveCD/RescueCD启动到一个可用的Linux系统。
然后查看下系统的分区表,找到自己的/boot所在分区
sudo fdisk -l
然后可用看到类似下面的一张分区表
磁盘 /dev/sda:320.1 GB, 320072933376 字节,625142448 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x4f4197ec
设备 Boot Start End Blocks Id System
/dev/sda1 * 63 104872319 52436128+ 7 HPFS/NTFS/exFAT
/dev/sda2 104872320 541251264 218189472+ f W95 Ext'd (LBA)
/dev/sda3 541251584 624123903 41436160 8e Linux LVM
/dev/sda4 624125250 625137344 506047+ 83 Linux
/dev/sda5 104872383 281062524 88095071 7 HPFS/NTFS/exFAT
/dev/sda6 281063424 364945407 41940992 7 HPFS/NTFS/exFAT
/dev/sda7 364948668 541251264 88151298+ 7 HPFS/NTFS/exFAT
磁盘 /dev/mapper/vg_fedora-lv_root:21.0 GB, 20971520000 字节,40960000 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/vg_fedora-home:21.5 GB, 21458059264 字节,41910272 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
这里我的/boot在/dev/sda4
记住这个数字4,后面在安装grub的时候会用到
然后挂载该分区
mount /dev/sda4 /mnt
完成后可以查看目录中的结构
ls /mnt
此时可用看到grub2目录,说明我们找对了。
然后我直接
sudo grub2-install --boot-directory=/mnt/dev/sda
这时候拔掉光盘/U盘重启。启动时会卡在grub界面。
在grub>提示符下输入ls,可以看到一些类似(hd0,msdos1)类似的表示方式。
而我们需要的就是(hd0,msdos4)
然后输入 ls (hd0,4) /
4就是上面我们找到的那个盘符的序号。
这时你会发现在/下有grub2/
输入
set root=(hd0,4)
set prefix=(hd0,4)/grub2/
insmod normal
normal
就能看到以前的grub了。
这时候还没有完,先用这个菜单启动系统,进入Fedora19
启动完成后执行
sudo grub2-install /dev/sda
稍等片刻,就更新了本地硬盘的grub。重启系统验证,整个恢复就完成了。