Realtek RTL-8139, la scheda ethernet fantasma

WiredNonostante utilizzi quasi esclusivamente il wireless, a volte mi capita di dover utilizzare la scheda ethernet per connettermi (per esempio alla LAN dell’Università).
Solitamente in Ubuntu basta attaccare il cavo e attendere l’ip in dhcp… stavolta però mi sono accorto che la mia eth0 era scomparsa: probabilmente qualche aggiornamento del kernel aveva cambiato qualcosa senza che io me ne fossi mai accorto !

Armato di pazienza ho cercato nei forum di Ubuntu ed ho trovato la soluzione. La riporto qua nel caso altri abbiano il mio stesso problema.

La scheda ethernet in questione, montata sul mio Acer Aspire 1600 ( ormai vecchiotto) è una Realtek RTL-8139 questo è il risultato completo di lspci:

Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Inspiegabilmente ho notato che i moduli necessari non erano caricati nel sistema (eppure una volta erano integrati nel kernel… bah) quindi ho provveduto a modificare il file /etc/modules inserendo:

8139cp
8139too

Al riavvio del sistema, l’interfaccia eth0 era presente!
Nonostante questo, sembrava che ancora non “vedesse” il cavo collegato. Ulteriori ricerche e passate esperienze mi hanno portato ad aggiungere un’opzione all’avvio del kernel, ovvero noapic.
In pratica ho aperto il file di grub /boot/grub/menu.lst ed ho cambiato la riga relativa al kernel principale da cosi

/boot/vmlinuz-2.6.20-16-generic root=/dev/hda2 ro splash

a cosi
/boot/vmlinuz-2.6.20-16-generic root=/dev/hda2 ro splash noapic

Dopo il riavvio del sistema, la scheda ethernet funzionava regolarmente 😉

A proposito Alessandro

Ingegnere delle Telecomunicazioni con propensione al web2.0 ed il pallino della tecnologia; toscano & casentinese, vivo a Firenze