如何添加 GRUB2 菜单项以启动多个 Linux 操作系统?

如何添加 GRUB2 菜单项以启动多个 Linux 操作系统?

我的硬盘上已经有 RHEL 7(只有一个),现在又安装了 Ubuntu 14.04。我无法创建 Grub2 条目以便同时使用两个操作系统,目前我只能使用 Ubuntu。

#fdisk -l 的结果是:

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 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: 0x00098227

 Device    Boot   Start       End         Blocks    Id  System
/dev/sda1   *   314574848   524290046   104857599+  83  Linux
/dev/sda2       524292094   976771071   226239489    f  W95 Ext'd (LBA)
/dev/sda5       524292096   874369023   175038464    7  HPFS/NTFS/exFAT
/dev/sda6       875397120   976771071    50686976   8e  Linux LVM 

Disk /dev/mapper/rhel-swap: 4043 MB, 4043309056 bytes
255 heads, 63 sectors/track, 491 cylinders, total 7897088 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: 0x00000000

磁盘 /dev/mapper/rhel-swap 不包含有效的分区表

Disk /dev/mapper/rhel-root: 47.9 GB, 47857008640 bytes
255 heads, 63 sectors/track, 5818 cylinders, total 93470720 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: 0x00000000

磁盘 /dev/mapper/rhel-root 不包含有效的分区表

答案1

通常,Red Hat 和相关发行版使用 LVM 配置,其中有一个 LVM 分区(您有),至少有几个逻辑卷(您有)和一个单独的/boot分区(您似乎没有)。如果没有该/boot分区,您将无法启动 RHEL,因为您的系统没有内核,而内核对于启动绝对必不可少。我怀疑您/boot在安装 Ubuntu 时意外删除了 RHEL 分区,我怀疑它存在于您的 上/dev/sda1。但我不能 100% 肯定这个诊断。

有一线希望:您的/dev/sda1起始扇区为 314,574,848,这意味着磁盘起始处有大约 150 GiB 的未分配空间。如果最初/boot位于该空间中,则可能可以使用以下方法恢复它测试磁盘。您可能想研究一下这种可能性:

警告:如果我没记错的话,更改磁盘的分区布局可能会产生新问题或使当前问题变得更糟。对整个磁盘进行低级备份是明智的预防措施。你可以这样做:

sudo dd if=/dev/sda of=/path/to/lots/of/space/sda-backup/img

此命令可能需要几个小时才能完成。您需要另一个至少比当前磁盘稍大的磁盘/dev/sda,并将其安装在某个位置,以便该/path/to/lots/of/space磁盘驻留在更大的磁盘上。

相关内容