site  contact  subhomenews

Busybox depmod works

July 03, 2009 — BarryK
I reported recently that the 'depmod' utility in the 'module-init-tools' package is a resource hog:

It does not work in a PC with 64MB or less of RAM and no swap file/partition, in the situation where there is also a tmpfs requiring some of that RAM. Even big apps like Xorg and SeaMonkey can run in that much RAM, but not depmod.

Anyway, I'm starting to grumble again, so moving on. I found a solution. I downloaded Busybox 1.14.2, which has the 'depmod' applet.

I tested on my 64MB IBM Aptiva, and it works. No need for any workaround that I had previously implemented. It just works.

So, I have implemented a permanent solution for all Woof builds. This Busybox 'depmod' applet now replaces that "full" depmod in all future Woof builds. Hey, this makes a change, I'm usually going the other way!

Note, I tested 'modprobe' and 'modinfo' from module-init-tools and they are happy with the 'modules.*' files that the Busybox 'depmod' has created.

You might wonder why not go all the way and use 'modprobe', 'modinfo' and 'insmod' from Busybox. Well, on previous tests, the Busybox modprobe did not work properly -- does not handle aliases as the passed parameter -- but then, the last I tested was Busybox 1.8.2.



Re: Tinycore
Username: BarryK
"Puppy is the size it is for very good reasons. Of course you can take things out until you get down to a similar size to TinyCore. In the case of dialup, TinyCore would be missing lots of kernel drivers for the software modems. Like the Intel 536/537 and the Conexant HSF that I have in the latest 415/416 builds -- together they occupy about 3.5MB uncompressed. The others would add up to quite a bit, and some have firmware tarballs, also included in Puppy. I could go on. You will find the same story with multimedia, printing, networking, etc., etc. In the case of Busybox, Puppy has a long history of refinement, originally using Busybox almost exclusively, gradually replacing with the "full" utilities where it was necessary. Today there is a blend that is optimum. Going back to "all Busybox" would be a very bad move. Ditto, I gave up on uClib a long time ago. There were some early puppies built with uClibc. There were also a lot of packages that wouldn't compile, which as far as I'm aware is still the case. So, you can fire up TinyCore and admire it's small size, but any assessment would be superficial until you have used it very heavily, on a wide range of hardware, and for a long time and encountered all of the issues that I have mentioned above.

Tiny Core vs Puppy
Username: dogone
"Understood and agreed. My interest in Tiny Core 2.1 is driven less by it's size than by it's package management. Packages are .tgz and mounted on loop devices at boot with little delay (TC boots here in ten seconds). "Extensions" are maintained in a single external directory and can be either loaded at boot or afterwards (../optional). Un-install involves simply deleting the .tgz. I am especially impressed with TC's terrific "Application Browser". So no, let's not strip Puppy down to 11MB. Let's do take heed of TC's clever design. It does somethings differently and very well. "Why did they do it that way?"

Problems with initrd modules using depmod applet
Username: clarf
"Hi Barry, ttuuxxx made a new build for Puppy 4.3.2 using latest Woof (date sept4,2010). This build has problems loading initramfs modules using modprobe, seems like the modprobe applet used by rc.sysinit script donīt append these initrd modules to the dependency files. The modules are loaded by initrd at boot but after the switch_root process, the initiramfs files copied to main system canīt be used by modprobe. The depmode-FULL do the work-. More info here: Hope this report can be useful. clarf

busybox depmods
Username: technosaurus
"there are 2 versions of depmod in busybox: the small non-compatible one is the default - even with allyesconfig you then have to configure busybox to use the compatible versions of modutils if you use busybox depmod (small version) and then use the full modutils stuff it will see the pre-included modules.dep and ignore the this should be fixed if you: a) replace the modutils version with a symlink to busybox or b) run the modutils version of depmod

Tags: woof