Using Loadable Ethernet Drivers

Early versions of Linux used a so-called monolithic kernel. At that time, Linux distributions typically included several kernels, offering support for a variety of devices that might be needed to boot and install a Linux system. Devices not needed to boot and install a system—so-called special devices—had second-class status. To access special devices, users had to compile customized kernels that included support for those devices. When a user added a device to a system, it was often necessary to compile a new kernel, which was something of an inconvenience.

More recent versions of Linux feature a modular kernel, which allows drivers to be dynamically loaded on command. This makes it much easier than before to configure your Linux system to support Ethernet cards and other special devices. Red Hat Linux is generally able to configure your primary Ethernet card automatically, by probing for it during installation of Linux.

However, the autoprobe doesn’t always succeed. Moreover, if you have more than one Ethernet card, the installation program setups up only the first card it finds. To set up additional cards, you need to know a bit about Linux’s loadable modules.

Dynamically Loading a Modular Driver

To dynamically load a modular driver, you issue the following command:

insmod driver

Where driver specifies the module to be loaded. Table 4.8 lists modular Ethernet drivers and the cards they support. As an example, the command:

insmod ne2k-pci

loads the modular ...

Get Learning Red Hat Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.