[vox-tech] Kernel upgrade from Sarge (fresh install) 2.4.25 ->
2.6.3 or 5
Jonathan Stickel
vox-tech@lists.lugod.org
Sat, 01 May 2004 21:35:56 -0700
me@heyjay.com wrote:
>>>VFS - Cannot open root device "hda1" or unknown-block(0,0)
>>>Please append correct "Root=" boot option
>>>Kernel panic: VFS: unable to mount root fs on unknown-block(0,0)
>>
>>well, this pretty much tells it all. the kernel panics because it
>>doesn't know where to find the root of your filesystem.
>
>
> I sorta got that, I'm just not sure why it can't find the filesystem
>
>
I've found, by personal experience, 3 things that cause the root
filesystem not to be found or mounted.
1) incorrect "root=/dev/hdxx" entry in your boot loader, as others have
pointed out
2) incorrect line in /etc/fstab
3) The necessary parts for your filesystem (e.g. ext3, reiserfs, or even
your harddrive drivers) are not properly compiled in your kernel.
The first 2 are obvious, but I'll talk more about the last one. Unless
you are using an initrd, you MUST compile support for your harddrive and
its filesystem into the kernel directly, i.e. not as modules. This is
what I do, and it works. Supposedly, modules are OK when using an
initrd, but I haven't taught myself that yet, and it seems unnecessary.
Modules are OK, and recommended, for things that come after mounting
your root partition, but not before (e.g. usb stuff).
<snip>
>>>cp /boot/config-2.4.25-1-386 .config
>>>make menuconfig # didn't really do much here except make the processor
>
> type
>
>>>AMD
>>
>>whoa there. you're kidding, right?
>>
>>you can't just use old .config files like that. read the kernel
>>compiling howto and do a search on oldconfig.
>
>
> I've tried make oldconfig, I've tried using all the defaults, I don't know
> what all the options mean (even after reading the help) nor if they apply to
> me
>
> Anyway, I tried using the prebuilt 2.6.5-k7 image and that installed and
> booted fine, so I'll use it's config as a starting point, and try again
>
Yep, all those options can be really confusing and intimidating. But
you have the right idea: start by working with a config that is known
to work. Good luck! There is something satisfying about compiling your
own kernel.
Jonathan