LinuxQuestions.org
Support LQ: Use code LQ3 and save $3 on Domain Registration
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Debian
User Name
Password
Debian This forum is for the discussion of Debian Linux.

Notices

Reply
 
Search this Thread
Old 09-18-2005, 09:51 AM   #1
Optimistic
Member
 
Registered: Jun 2004
Location: Germany
Distribution: Debian (testing)
Posts: 276

Rep: Reputation: 31
Kernel Trouble: VFS: Cannot open root device


I'm having trouble compiling a new kernel.

Here is my system:
Debian Testing (fresh install--downloaded the Testing netinstall CD on friday), Kernel 2.6.12

I'm trying to complie a new kernel so that I can have the cx8800 driver for my TV Card, but I keep getting this:

Quote:
VFS: Cannot open root device "hda1" or unknow-block(0,0)
Please append a correct "root=" boot option
Kernel panic --- not syncing: VFS: Unable to mount root fs on unknown-block (0,0)
I've compiled my own Debian kernels before, so I don't know why this isn't working.

From what I gather from my own looking into this problem this message might be related to the root file system being a module, but that is not the case with me---I complied it into the kernel.

Here is the relevant section from grub/menu.lst
Quote:
title Debian GNU/Linux, kernel 2.6.12.666
root (hd0,0)
kernel /boot/vmlinuz-2.6.12.666 root=/dev/hda1 ro
savedefault
boot

title Debian GNU/Linux, kernel 2.6.12.666 (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12.666 root=/dev/hda1 ro single
savedefault
boot

title Debian GNU/Linux, kernel 2.6.12-1-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-1-386 root=/dev/hda1 ro
initrd /boot/initrd.img-2.6.12-1-386
savedefault
boot

title Debian GNU/Linux, kernel 2.6.12-1-386 (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-1-386 root=/dev/hda1 ro single
initrd /boot/initrd.img-2.6.12-1-386
savedefault
boot
The stock kernel 2.6.12-1-386 works just fine, and I even copied over its configuration file to start my own config and the only things I did differently was make the Conextant cx8800 module a module in the Video for Linux section and tell it that the processor was a P4.

The compile goes fine and I get a deb file that installs okay, but always the same error. I've combiled 5 kernels over the past two days trying varius things, but all for nought.

So, any ideas?

OR

Is there a good way to get a module built and inserted into a stock kernel without a complete recompile?
 
Old 09-18-2005, 10:38 AM   #2
McCloud
Member
 
Registered: Sep 2004
Distribution: Debian Etch
Posts: 179

Rep: Reputation: 30
To me, it looks like an essential part of the kernel (root filesystem or maybe something else) is not present in the compiled kernel, but as a module. The original kernel probably has put this into the initrd (initial ramdisk), which is loaded at boot time to provide those necessary modules at boot. Your new kernel doesn't have an initrd, so it probably can't access those modules at boot and that's why it hangs.

You can't put modules into a compiled kernel as far as I know, you'll not a completely recompile the kernel. What you can do is create your own initrd based on your new kernel. I have done this in the past, but I don't recall how I did it. You need to look on Google how to create an initrd in Debian and especially how you specify which modules need to be present in the initrd.

Another thing you can do is to recompile your kernel and compile those necessary modules into the kernel (so not as modules). This way you don't need an initrd.

Good luck.
 
Old 09-19-2005, 02:41 PM   #3
hades11
LQ Newbie
 
Registered: Sep 2005
Posts: 2

Rep: Reputation: 0
Thanks Maccloud compiled everything into the kernel 2.6.13.2 and yes it works better no more kernel panic with VFS. Problem is now that i have problems with devfs.
i saw that devfs is no longer supported for the kernel 2.6.13.2 and udev should do the job.

What do i need to do for udev in grub? i tried devfs=nomount at the kernel line

title Debian GNU/Linux, kernel 2.6.13.2
root (hd1,0)
kernel /boot/vmlinuz-2.6.13.2 root=/dev/sdb1 ro devfs=nomount
initrd /boot/initrd.img-2.6.13.2

Keep getting error 432!

Any suggestions?

Tim
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
VFS: Cannot open root device antony.booth Linux - General 2 05-25-2005 04:20 AM
New kernel - VFS: Cannot open root device "301" or unknown block(3,1) j0y Debian 2 04-30-2005 09:14 PM
Kernel Panic - VFS unable to open root device JcB Slackware 17 10-30-2004 11:27 AM
Kernel Panic:VFS: Cannot open root device "hda3" or 00:10 shivendnrab Linux - General 1 07-01-2004 03:08 AM
VFS: Cannot open root device Mamour Linux - Software 8 04-20-2004 01:21 PM


All times are GMT -5. The time now is 12:40 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration