Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've got a root server with 1and1 and I'm upgrading to a newer kernel... building it myself. I figured that, as long as I'm going to be compiling it myself, to save compile time and runtime memory usage, I'd like to make the kernel and modules as minimal as possible.

So, the question becomes: Which modules/drivers do I need?

I could look to the current kernel, but it's got a bunch of stuff (not just compiled, but loaded) that I'm pretty convinced isn't really on the hardware (like Dell battery monitor... AND the ASUS battery monitor... parallel port driver, etc.). So, I hesitate to just compile in all of the stuff I see in the output of lsmod.

The motherboard does seem to be nForce-based, so I've got the nVidia SATA stuff all loaded, and the RAID1 driver, so the kernel boots, sees the drives and the network card and seems to be running okay. But now I want to see if there's anything I'm missing.

Anybody have any tips on things to run (lsusb? lspci? Some other pnp querying tools?) and how to interpret them to know what other drivers to compile?

share|improve this question
You should do this on a local system - building the kernel is process that, though not complicated, requires a certain level of finesse in order to be minimalist. Plus, its easier to reboot a local system than a remote system when you forget a module. – new123456 Nov 6 '11 at 5:15

It's a good question.
You need to list exactly the hardware you have.
Yes: lspi and lsusb is the good way, lsmod also.
You can parse the syslog file to find additional informations.
However: which is loaded have a good reason to be loaded, perhaps about services not used.
Building its home kernel have risks: you need to be prepared to forget something, and you need to be prepared to non-boot system !
Habitualy, we compile kernel because it was modified by patchs.
Have fun !

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .