The build-host kernel does not appear to have loop device support

I'm trying to update my kernel using Genkernel, but get the following error:

sotus ~ # genkernel --bootsplash --no-install --no-clean --menuconfig all
* Gentoo Linux Genkernel; Version 3.4.6
* Running with options: --bootsplash --no-install --no-clean --menuconfig all
* Linux Kernel 2.6.19-gentoo-r5 for x86...
* The build-host kernel does not appear to have loop device support.
* Please load loop support before running genkernel!
* ERROR: Load loop support!

I understand (I think) that I need to enable loopback device support in the running kernel, but I don't know how to do it.  I tried 'modprobe loop' but that didn't work.

My system is:

Linux sotus 2.6.15-gentoo-r1 #4 SMP PREEMPT Fri Apr 21 11:36:05 GMT 2006 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GenuineIntel GNU/Linux

Can anyone offer any advice please?

Many thanks,
Steve
LVL 9
sda100Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

mzalfresCommented:
Steve,

you should have compiled module for 'loop device'. List your /dev/ to see, if you have something like /dev/loopxx. Probably not.

If you have compiled module, try:

modprobe -l | grep -l loop

If there will be something like /lib/modules (...)/loop.ko then module is compiled, and modprobe will take it.
Just use modprobe <modulename> (without '.ko' at the end).
If it dumps errors or if grep found nothing, you probably have loop spport turned off in your kernel.

Try

 zcat /proc/config.gz | grep CONFIG_BLK_DEV_LOOP

Your case is probably 'n'.

You need to run 'normal' kernel compilation, eg. go to /usr/src/
then cd to your kernel source directory. Now you need to copy your current config to
.config file in this directory. Run:

zcat /proc/config.gz > .config

then

 make menuconfig

then go to:
 Device Drivers  --->
   Block devices  --->

and mark <*> Loopback device support                

exit completely from menuconfig GUI and run:
 make

Wait till your kernel is compiled. It will be in arch/i386/boot directory under kernel sources dir.
You need to install it according to boot loader used. Follow either grub or lilo manual or let me know
which one you use, so I can help you.

I hope it is not too complicated - English is not my native :)

Regards,

Marek ZJ
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
sda100Author Commented:
Thanks Marek,

I did actually figure it out, but not nearly as easily as you've listed here - so I've accepted your solution as it is the correct answer.

Steve :)
PS. Your English is perfect!
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Linux

From novice to tech pro — start learning today.