-   Linux - Software (
-   -   Unable to mount root fs on 03:01, after init. (

xconspirisist 06-02-2004 09:49 AM

Unable to mount root fs on 03:01, after init.
using syslinux as the bootloader. 1gb fat16 partition.


boot : bzImage init=initrd.gz root=/dev/hda1
init does its stuff. then spews this out at me, just before it would dump me to the console.


VFS: Cannot open root device 03:01
Kernel panic: VFS: Unable to mount root fs on 03:01

I guess it it reading the hdd partition okey - otherwise it wouldent be able to open initrd.gz ...

xconspirisist 06-03-2004 10:15 AM


any help on this ?

MS3FGX 06-03-2004 10:58 AM

Linux cannot run on FAT. The root partition needs to be one of the *nix supported file systems (Ext2/3, Reiser, XFS, etc).

xconspirisist 06-03-2004 05:20 PM

shit. thanks then.

MS3FGX 06-03-2004 06:10 PM

You could change the boot line to "root=/dev/ram" which would load Linux into a RAMDRIVE (assuming the kernel has RAM drive support compiled in, anyway).

What exactly are you trying to do?

xconspirisist 06-04-2004 01:06 PM

trying to *make* a distribution without all of the crap. trying to understand the way linux works.

I think I got it :D :D

I made the kernel load itself into the ram - and it all appears to be working. Thanks guys.

Is there any disadvantage of this ?

MS3FGX 06-04-2004 05:04 PM

Well, running out of RAM makes it a "live" distro. It doesn't need a hard disk to run.

xconspirisist 06-04-2004 07:40 PM

What exactly is initrd.gz ? :confused:

TheOneAndOnlySM 06-04-2004 08:36 PM

it is a ramdisk that provides modules for the kernel before the root partition can be mounted

for example, if you compile ext3 support as a module, and your root partition is in ext3, the kernel doesn't know how to read your filesystem in order to load the module.... so initrd just puts the module in ram

*edit: .gz means it is gzipped

xconspirisist 06-05-2004 04:15 AM

I am all overthe place with this project, so thanks for the help. thanks for baring with my rude language too, i was shatterd yestorday.

1) Am I correct that syslinux can only boot from fat partitions ?

2) To change initrd.gz, can I quite literally unzip it ?

3) If my kernel is on an ext3 partition, and syslinux boots that kernel, does that mean the kernel has ext3 support?

TheOneAndOnlySM 06-05-2004 01:24 PM

syslinux is a boot loader correct? did you install it separately or did it come with your distro?
i don't know anything about syslinux... if it can only be installed on fat32 partitions (like powerquest's bootmagic) then it is probably only able to boot from fat32 partitions; in that case, you will probably want to look into using a lilo or grub boot loader

initrd doesn't need to be "changed" but should be rebuilt every time you compile a kernel; you can gunzip it and mount it in a ramdisk if you want to see its contents, but its contents are already going to be in /lib/modules/kernel-version/

to build a new initrd, i believe you simply have to do make initrd after doing make modules && make modules_install

if your kernel can mount your ext3 root partition, then it only means it has some way of understanding the ext3 format; to find out if ext3 is a module or kernel driver (builtin to the kernel), check lsmod or just go into your kernel source and do make menuconfig

Sovin Nai 06-15-2004 02:44 AM

I am a semi newbie. I have been using redhat 9 and then fedora core for a year, but never delved into the actual operations of linux or console based operations. I am buying a laptop for college and so am experimenting with distros now on my desktop to decide what to put on the laptop. Here is my problem:

I am trying to install slackware 9.1 but get this same message. I used fdisk to partition and then slackware's setup formatting and installation of lilo. I made hda1 bootable in fdisk. I used the reiserfs(?) format, and am at a loss. I suppose I will try with ext3.


All times are GMT -5. The time now is 01:04 AM.