Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

The hardware:

  • motherboard with one IDE slot(2 drives)
  • PCI card with 2 slots(4 drives)
  • hard drive with CentOS installed
  • hard drive with an old Fedora installed

The normal situation:
I boot into grub(CentOS splashscreen) and that boots CentOS installed on the CentOS drive(hda).

The situation as it is now:
I hook up the Fedora drive(to either the master or slave on the primary channel on the PCI card, hdc or hdd) and boot. The CentOS grub boots, uses the CentOS kernel, and everything else is from Fedora. Modules, software versions, etc, almost like it's recognized the Fedora drive as hda. However, if I were to mount hda as /mnt/hda, I get the CentOS drive. If I mount hdd or hdc as /mnt/hdc or /mnt/hdd, I get the Fedora drive as expect. But the mounted hda outside of any other paths(/usr for example), I get the Fedora files.

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

Of particular note here are the drives mounted(from /dev) and their filesystem sizes.

Has anyone seen this before? How do I go about starting the 6.5GB drive as an OS?

Update: The grub entry is:

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 devices.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
share|improve this question
    
can you post the relevant boot entry from your grub.conf file? (on some distros this is /boot/grub/menu.lst, on others /etc/grub.conf.) in particular, the kernel and root lines. also your grub install's device.map file might be useful to look at. –  quack quixote Dec 18 '09 at 5:18
    
Additionally, fdisk -l would also be nice to see (maybe even with comments what is what). –  Bobby Dec 18 '09 at 12:28

1 Answer 1

up vote 2 down vote accepted

Relabel the Fedora root partition. The bootloader is getting confused. Something like e2label /dev/hda3 /centos, then modify your GRUB entry (and possibly /etc/fstab) to point at that as the label.

Alternatively, you could relabel the Fedora root. Or take the easy way and point /etc/fstab and the root= directive in your menu.lst at /dev/hda3 rather than a filesystem label.

share|improve this answer
    
OP probably set up his/her bootloader before adding the second drive, right? Yes, it would definitely get confused in this case, especially if the mobo is wonky and that changes what "hd0" means to GRUB –  Broam Dec 18 '09 at 15:25
1  
tune2fs -L newlabel /dev/hdXN also works... –  quack quixote Dec 18 '09 at 15:59
    
This fixed it. I thought that the "root=" directive was defining where I want my root(i.e. /boot or so). Exact syntax was what quack posted, in case anyone from Google etc is wondering. –  Kevin M Dec 18 '09 at 20:10

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.