如何重新安装grub

在我的计算机中,我有2个Windows 7分区(经典C:和D :),Ubuntu Gnome(我需要编码时标准使用)和一些旧的Fedora分区,我不再使用了,而且我打算删除。

我想调整我的2 W7分区的大小,为C:提供更多空间。 但是,当我想重新启动计算机时,我遇到了“grub rescue”问题。

所以我使用了一个可启动的USB密钥(Ubuntu 14.04)并尝试了几种我可以在网上找到的解决方案,例如我如何修复grub? (如何在安装Windows后恢复Ubuntu?) ,我尝试使用启动修复…但每次我被同样的错误停止:数据包“grub-pc”,“grub-common”,“grub “…根据apt-get,没有任何可以安装的版本。

我唯一能做到没有错误的是

sudo grub-install --boot-directory=/media/sda5 /dev/sda 

当我重新启动时,它所做的是将我的错误更改为“支持最小的BASH类线路编辑”。

我知道这是一个广泛讨论的问题,但我无法纠正我的计算机上的问题。 我甚至觉得我让它变得更糟。

我的sudo fdisk -l的一小部分:

 Disk /dev/sda: 750.2 GB, 750156374016 bytes 255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0xbf16e21c Device Boot Start End Blocks Id System /dev/sda1 2048 52430847 26214400 1c Hidden W95 FAT32 (LBA) /dev/sda2 * 52430848 979963903 463766528 7 HPFS/NTFS/exFAT /dev/sda3 979963904 1054484479 37260288 7 HPFS/NTFS/exFAT /dev/sda4 1054484479 1465147391 205331456+ f W95 Ext'd (LBA) Partition 4 does not start on physical sector boundary. /dev/sda5 1054484480 1380587519 163051520 83 Linux /dev/sda6 1380589568 1413945343 16677888 82 Linux swap / Solaris /dev/sda7 1413947392 1414971391 512000 83 Linux /dev/sda8 1414973440 1465147391 25086976 8e Linux LVM Disk /dev/mapper/fedora-swap: 8371 MB, 8371830784 bytes 255 heads, 63 sectors/track, 1017 cylinders, total 16351232 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x00000000 Disk /dev/mapper/fedora-swap doesn't contain a valid partition table Disk /dev/mapper/fedora-root: 17.3 GB, 17314086912 bytes 255 heads, 63 sectors/track, 2104 cylinders, total 33816576 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x00000000 Disk /dev/mapper/fedora-root doesn't contain a valid partition table Disk /dev/sdb: 4009 MB, 4009754624 bytes 145 heads, 48 sectors/track, 1125 cylinders, total 7831552 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xc3072e18 Device Boot Start End Blocks Id System /dev/sdb1 * 48 7831551 3915752 b W95 FAT32 

编辑:我不知道它是否相关,但是我第一次尝试启动修复时,我清除了sda5上的grub(如所问,我刚刚复制了所要求的内容),然后我的“没有版本” “问题。 现在,当我启动它时,它只是说“grub2 purge取消”。

lvs:

  LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert root fedora -wi-a---- 16,12g swap fedora -wi-a---- 7,80g 

试试这个

 mkdir /mnt/root mount /dev/sda7 /mnt/root mount /dev/sda5 /mnt/root/boot mount --bind /dev /mnt/root/dev mount --bind /proc /mnt/root/proc mount --bind /sys /mnt/root/sys 

这将创建一个chroot环境,现在您需要运行chroot并为grub创建配置文件

 chroot /mnt/root /usr/sbin/update-grub2 reboot 

现在它应该工作

首先从实时Ubuntu CD或Live Ubuntu闪存驱动器启动并连接到Internet。 然后按Ctrl + Alt + T转到终端,只需使用下面的命令,

 sudo add-apt-repository ppa:yannubuntu/boot-repair sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list sudo apt-get update sudo apt-get install -y boot-repair && (boot-repair &) 

这实际上解决了启动时的任何问题。 如果它仍然不适合您,只需将错误报告留在添加评论部分。 你会发现我附上了一个链接,它有截图和明确的说明。 如果您还不清楚某些事情,请转到链接。 玩得开心。

参考链接: 在Ubuntu中安装Boot-Repair