I am new to Linux so bear with me.

I have installed Red Hat 9 and it won't boot up, what I get is:

"kmod: failed to exec /sbin/modprobe -s -k block-major-8, errno =2
VFS: Cannot open root device "sdb5" or 08:15
Please append a correct "root=" boot option
Kernel Panic: VFS: Unable to mount root fs on 08:15"

I created a boot disk at installation and that is what I am trying to boot with.
Aso I am using Grub as a boot loader.

If it is needed to be known, I put the "/" and "swap" partitions on an external usb Maxtor hard drive. Also, when I went to install Red Hat, it only recognized the external drive and it didn't recognize the drive that came with the computer.
I have no problems booting to windows xp, it is just Linux that won't start.

If this is an unfixable thing, is there some kind of way I can boot into Linux another way?

Dani AI

Generated

Brief diagnosis and a practical recovery plan.

The boot panic you report is the classic result when the kernel cannot see the disk that holds / early in boot — most often because the USB mass‑storage stack (and the host‑controller drivers) are not available at the moment the kernel tries to mount /. The kernel then asks for a module loader but cannot run it from the tiny early environment. This is exactly what an initramfs/initrd is for: supply the userspace and kernel modules needed to reach the real root device. (wiki.archlinux.org)

What to do (summary, then exact commands you can try):

  1. Boot a rescue/live system (Red Hat install CD in rescue mode, Knoppix, or any live CD) so you can access the installed system and the external disk. Use the rescue shell and chroot into your installation. (access.redhat.com)

  2. From the rescue shell identify the correct device node (fdisk -l, dmesg | tail) and check the installed kernel version in /lib/modules or /boot.

  3. Inspect the current initrd and rebuild it so it contains the USB host controller modules plus the usb-storage module and the module tools. Example workflow (run as root from the rescue environment):

# identify devices
fdisk -l
dmesg | grep -i 'sd'

# mount and chroot
mkdir /mnt/sysimage
mount /dev/sdXY /mnt/sysimage            # put the real root device here
mount --bind /dev /mnt/sysimage/dev
mount --bind /proc /mnt/sysimage/proc
chroot /mnt/sysimage /bin/bash

# find kernel version, then rebuild initrd (example)
ls /lib/modules
mkinitrd --with=usb-storage --with=ehci-hcd --with=ohci-hcd --with=uhci-hcd /boot/initrd-<kernel-version>.img <kernel-version>

If you want to inspect whether /sbin/modprobe and the needed modules are already in the initrd before rebuilding:

mkdir /tmp/initrd && cd /tmp/initrd
zcat /boot/initrd-<kernel-version>.img | cpio -idmv
ls -l sbin/modprobe  lib/modules

The important part is ensuring usb‑storage and the appropriate host controller modules are present in the initrd (or compiled into the kernel). Many Red Hat/boot problems with external drives are fixed this way. (manpages.org)

Quick debugging / fallbacks: edit the GRUB entry at boot (press E in legacy GRUB) to temporarily try different root=/dev/sd..? values or add a rootdelay=10 kernel parameter to give the USB stack a few seconds to initialize. Putting the kernel and its initrd on an internal /boot (or compiling USB storage into the kernel) avoids the race entirely. 's suggestion to edit GRUB is a good diagnostic step. (peter.korsgaard.com)

Cautions: work from a rescue/live system, back up any important data before changing boot settings, and avoid guessing module names — use dmesg and ls /lib/modules to confirm which host controller driver(s) (uhci/ohci/ehci/xhci) your hardware needs.

Just shooting in the dark here but...
Are you dual booting...
Is Windows on the internal hard drive of the pc?

Have you tried going into cmos and disabling the internal hard drive to try and force it to boot to the usb drive with or without the boot disks

I assume that on power up it takes you into windows fine
I would think editing the grub menu to look at the usb drive is what is needed.

I am on a Lilo boot right now...
Look at the floppies you have and see if you can find a grub.lst or something like that

When you get to the grub menu you can enter E for edit and E again to edit each line of the grub menu.

If you could post those others here might be able to see where the problem is..


The Grub.lst should be a simple text file...

Sorry I cant be more help,

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.