LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Debian (https://www.linuxquestions.org/questions/debian-26/)
-   -   Problem booting with kernel 2.6.9 (https://www.linuxquestions.org/questions/debian-26/problem-booting-with-kernel-2-6-9-a-251290/)

codezion 11-04-2004 07:21 PM

Problem booting with kernel 2.6.9
 
I just compiled and installed a new 2.6.9 kernel and I am having a strange problem when booting. Every time I boot I get this message on the screen:

"Kernel panic: VFS: Unable to mount root fs on unknown-block(3,3)"

Actually originally I used to get (3,1) instead of (3,3) in the error message. I have done quite a bit of reading on this and I found that most people were able to get around this problem by adding "append="root=nnnn"" where the nnnn represents your root partition. My root partition is /dev/hda1 and so I got the nnnn by doing ls -l /dev/hda1. The result I got from that was 3, 1 and so I added 0301 in lilo.conf. However, once I added that in lilo, now I get (3,3). The funny thing is that /dev/hda3 is the 0303 partition and that is not the root but my swap partition. So now I am stuck again.

I have changed quite a bit of options in the kernel config after reading several posts on different sites. My root partition is ext3 and so I have made sure that it is compiled into the kernel and not as module. I have my /vmlinuz and /initrd symlinks setup properly. All the basic stuff seems to be OK.

Also, the way I compiled my kernel is by using this command:
make-kpkg clean
fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image
dpkg -i kernel-image-2.6.9_custom.1.0_i386.deb

I didn't have to do "mkinitrd -o initrd.img-2.6.9 2.6.9" since the dpkg -i created the initrd for me.

Do you think I would've been better off just using make modules-install, install instead of the above? Would that have created the initrd and all the other crap that goes with it?

Can you guys think of anything for me? Let me know what other stuff I can post here.

Thanks.

-- Ankur

TLV 11-05-2004 02:30 AM

It could be that Lilo is not config'd properly for you. Unfortunately I cannot help you there since I use Grub.

It could also be that you haven't compiled enough into the kernel yet to be able to live without initrd.img. In addition to the filesystem, you also need the modules for the hardddisk hardware, e.g., IDE. There has been a couple of threads in this forum the last 3-4 weeks about this topic, for example this thread. Search for the others.

Good luck,
/TLV

powadha 11-05-2004 05:26 AM

After you install a kernel in Debian you still have to use the command 'lilo' in a console so it updates the correct boot parameters.
btw using --append-to-version=-051104 will give you a different kernel with it's own module tree. Revision only changes the name of the .deb, not the actual kernel! Creating a second )or third) kernel can be very usefull for testing the new one before switching to it. You can always boot your old kernel.

A good howto and more info can be found here:

Debian kernel (re)compile

Not sure why you use lilo, I find Grub much easier to work with. You might consider uninstalling lilo and install grub. It's a simple move....

codezion 11-05-2004 09:27 AM

I finally figured it out.

I don't know exactly why but the instructions I had called to create an initrd image for the new kernel. I removed it from /boot and lilo.conf and then rebuilt lilo and everything worked.

In addition to that, thanks for the resources you guys provided. I will still read over all that to learn some more.

-- Ankur


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