Intel Little Falls a problém se síťovou kartou RTL8101E
Před nedávnem jsem upgradoval motherboard ve svém domácím serveru. Původní desku Intel Little Valley 2 s procesorem Intel Celeron 220 a chipsetem SiS 662 jsem nyní nahradil za technologickou novinku s procesorem Intel Atom 230 a léty prověřenou čipovou sadou Intel 945GC. Nová deska je opět od Intelu a jmenuje se podobně - Intel Little Falls. Protože na tomto počítači běží GNU/Linux, konrétně Ubuntu server 8.04 LTS (Hardy Heron), stačilo pouze vyměnit desku a systém s jádrem 2.6.24-19 bez problému naběhl. Přesto jsem musel řešit problém se síťovou kartou, která něchtěla komunikovat.
Problém mi pomohl vyřešit až Alessio Treglia, který napsal patch pro pokažený (nejde zkompilovat) ovladač síťové karty RTL8101E, jenž dodává samotný Realtek. Inspiroval jsem se tedy jeho návodem, který mi, v té době pouze v italštině, ne úplně fungoval. Následovala proto osobní komunikace a po pár minutách jsem mohl slavit.
Problém je dalekosáhlejšího rázu, protože se týká nejen této síťové karty, ale všech, které používají nefungující ovladač r8169. Podle Alessia by však měly používat jeden z následujících:
| ovladač | síťová karta |
|---|---|
| r8168 | RTL8111B, RTL8168B, RTL8111, RTL8168 a RTL8111C |
| r8101 | RTL8100E, RTL8101E a RTL8102E-GR |
Pokud tedy máte ve svém počítači některou ze síťových karet uvedených výše a trpíte stejným problémem, můžete pokračovat ve čtení. Postup je následující:
- zjištění, jakou kartu používáte
- stažení ovladačů ze stránek Realteku
- aplikace patche Alessio Treglia
- kompilace ovladače
- zakázání ovladače r8169 a přidání ovladače r8101 nebo r8168 do seznamu nahrávaných modulů po startu
Jakou kartu používám?
V terminálu napište příkaz
lspci | grep RTL
Mně se na výstupu objeví toto:
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 02)
Podle tabulky výše jsem zjistil, že potřebuji ovladač r8101. Takže jdeme stahovat.
Stažení ovladačů
Ovladače pro r8168 nebo r8101 stáhněte do vámi oblíbeného adresáře. Jedná se o ovladač označený jako Linux driver for kernel 2.6.X and 2.4.X (Support x86 and x64).
Nyní ovladač rozbalte pomocí následujícího příkazu, změňte samozřejmě název souboru dle libosti.
tar -xvf r8101-1.007.00.tar.bz2
Aplikace patche Alessio Treglia
Stáhněte patch pro r8168 nebo pro r8101 a aplikujte ho pomocí následujícího příkazu. Opět změňte název a cestu souboru v případě, že pracujete s ovladačem r8168.
cd r8101-1.007.00/src
patch < ~/r8101-1.007.00.hardy.diff.txt
Kompilace ovladače
Nyní už můžeme zahájit kompilaci bez chyb:
cd ..
make clean modules
sudo make install
sudo depmod -a
Nahrávání modulů po startu
Je potřeba zakázat nahrávání modulu r8169. To lze udělat pomocí vytvoření (pokud ještě neexistuje) patřičného souboru...
sudo nano /etc/modprobe.d/blacklist-network
... a zapsáním do něj kouzelné formulky:
blacklist r8169
Nevím, jestli je to nutné, ale do souboru /etc/modules jsem ještě na konec připsal:
r8101
Tím zaručíte nahrávání ovladače při startu systému. Pokud kompilujete ovladač r8168, musíte tento zápis samozřejmě pozměnit.
Závěrečný příkaz updatuje initial ramdisk (ví někdo, co to je?)
sudo update-initramfs -u
Po restartu systému byste měli vidět nějaký pěkný výpis příkazu:
sudo lshw -C network
a karta by měla konečně fungovat.
Mé díky patří Alessiovi, doufám, že i vám jeho patch a náš návod pomůže.


Komentáře
Poslat nový komentář