硬件变化使相同的 grub 启动到不同的操作系统

硬件变化使相同的 grub 启动到不同的操作系统

硬件:

  • 带有一个 IDE 插槽的主板(2 个驱动器)
  • 带 2 个插槽的 PCI 卡(4 个驱动器)
  • 安装了 CentOS 的硬盘
  • 安装了旧 Fedora 的硬盘

正常情况:
我启动到 grub(CentOS 启动画面),然后启动安装在 CentOS 驱动器(hda)上的 CentOS。

现在的情况是:
我连接 Fedora 驱动器(连接到 PCI 卡主通道上的主驱动器或从驱动器,hdc 或 hdd)并启动。CentOS grub 启动,使用 CentOS 内核,其他一切都来自 Fedora。模块、软件版本等,几乎就像它将 Fedora 驱动器识别为 hda 一样。但是,如果我将 hda 安装为/mnt/hda,我会得到 CentOS 驱动器。如果我将 hdd 或 hdc 安装为/mnt/hdc/mnt/hdd,我会得到预期的 Fedora 驱动器。但是在任何其他路径之外安装的 hda(/usr例如),我会得到 Fedora 文件。

Filesystem            Size  Used Avail Use% Mounted on
/dev/hda3             9.5G  7.5G  1.6G  83% /
/dev/hdd5             9.5G  7.5G  1.6G  83% /mnt/hdd5
/dev/hda3             6.4G  3.3G  2.8G  54% /mnt/hda3

这里特别值得注意的是安装的驱动器(来自/dev)及其文件系统大小。

有人见过这种情况吗?我该如何将 6.5GB 驱动器作为操作系统启动?

更新: grub 条目为:

title CentOS (2.6.18-128.4.1.el5.centos.plus)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-128.4.1.el5.centos.plus ro root=LABEL=/ rhgb quiet
    initrd /initrd-2.6.18-128.4.1.el5.centos.plus.img

cat 设备.map

# this device map was generated by anaconda
(hd0)     /dev/hda

fdisk -l(Fedora)

Disk /dev/hdd: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot      Start         End      Blocks   Id  System
/dev/hdd1               1        1275    10241406    7  HPFS/NTFS
/dev/hdd2            1276        4864    28828642+   f  W95 Ext'd (LBA)
/dev/hdd3            4865        4865        8032+  82  Linux swap / Solaris
/dev/hdd5            1276        2550    10241406   83  Linux
/dev/hdd6            2551        4864    18587173+   b  W95 FAT32

fdisk -l(CentOS):

Disk /dev/hda: 20.0 GB, 20020396032 bytes
255 heads, 63 sectors/track, 2434 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1          10       80293+  83  Linux
/dev/hda2              11         402     3148740   82  Linux swap / Solaris
/dev/hda3             403        1258     6875820   83  Linux
/dev/hda4            1259        2434     9446220    5  Extended
/dev/hda5            1259        1911     5245191   83  Linux
/dev/hda6            1912        2433     4192933+  83  Linux

答案1

重新标记 Fedora 根分区。引导加载程序变得混乱。类似于e2label /dev/hda3 /centos,然后修改您的 GRUB 条目(可能还有 /etc/fstab)以将其指向为标签。

或者,您可以重新标记 Fedora 根目录。或者采取简单的方法,将 /etc/fstab 和root=menu.lst 中的指令指向 /dev/hda3,而不是文件系统标签。

相关内容