Välkommen till linuxportalen.se!

Linuxportalen.se är Sveriges största och aktivaste webbplats för användare av öppen- och fri programvara.

Du besöker Linuxportalen.se som gäst vilket begränsar din möjlighet att använda webbplatsens alla funktioner. Genom att registera dig som medlem får du inte bara möjlighet att söka bland webbplatsens innehåll, skapa nya och delta i befintliga diskussioner, skapa din egen blogg, kommunicera med andra medlemmar genom privata meddelanden och delta i omröstningar. Du får också tillgång till Veckans Kadavro - en seriestrip unikt skapad för Linuxportalen.se!

Registeringen sker snabbt och är helt kostnadsfri - tveka inte, bli medlem idag!

Netgear WNA3100 och Ndiswrapper

Ibland kan man behöva ta till lite omständiga metoder för att få igång sitt nätverkskort i Linux om det inte existerar en fungerande drivrutin till Linux. Som mycket i Linux kan man lösa problemen, men det kan vara svårt och tidskrävande, så tänkte med den här guiden demonstrera ett exempel på hur man kan få igång sitt nätverkskort i Linux. Har försökt skriva guiden så att även nybörjare förstår hur varje instruktion utförs. Kom gärna med förslag på ändringar för att göra guiden bättre.

Programmet Ndiswrapper låter användaren installera drivrutinerna som skickas med från tillverkaren av hårdvaran. Själv köpte jag en Netgear WNA3100 WIFI USB-nätverkskort som, till min besvikelse, inte hade stöd för Linux. Borde så klart ha tagit reda på det här innan, men så kan det bli ibland. Har nu använt enheten i över 6 månader och installerat på Fedora, Ubuntu och Crunchbang Linux utan större omständigheter. Enheten fungerar någorlunda bra och har en signal på ca 75%, men med skype och videosamtal så blir det kortslutning av någon anledning som jag inte lyckats få svar på än?

För att ndiswrapper ska installeras utan problem behövs följande:

Fedora 14: su -c 'yum install make gcc kernel-headers kernel-devel'

I mitt fall behövde jag även installera

kmod-ndiswrapper

efter att jag kompilerat ndiswrapper. Men då installerades även ndiswrapper 1.56 från Fedora 14 fusion programföråd och konstigt nog fungerade allt som det skulle? Någon som har bra förklaring på det?

Ubuntu: Allt som behövs är installerat från början.

Crunchbang Statler 10: sudo apt-get install make gcc linux-headers-`uname -r`

Börja med att ladda ner senaste versionen av ndiswrapper

Packa upp filen, gå in i mappen /ndiswrapper/drivers/ och lägg till följande information i slutet av filen

ntoskernal_io.c

wstdcall NTSTATUS WIN_FUNC(IoUnregisterPlugPlayNotification,1)
(void *tag)
{
TRACE2("%p", tag);
TODO(); /* Probably Not, legacy function abandoned in Windows 7 */
IOEXIT(return STATUS_SUCCESS); /* Linux doesn't use it either */
}

Ladda ner den här patchen för att ndiswrapper ska kompileras utan felmeddelanden. Fungerar för kernel 2.6.35 och senare! Patchen ska inte placeras i samma mapp som ndiswrapper utan vara placerad en mapp innan. Installera programet patch och öppna sedan terminalen, gå till mappen ndiswrapper (tex. cd Downloads/ndiswrapper) och skriv följande:

patch -Np0 < ../ndiswrapper-1.56-2.6.35.patch

Skriv sedan

make

Om processen slutförs utan problem så skriv kommandot

make install

med rootbehörighet:

Fedora

su
make install

Ubuntu och Crunchbang

sudo make install

Ladda ner drivrutinerna till WNA3100 här, extrahera paketet och gå till mappen bcmwlhigh5 via terminalen som jag beskrev innan. Installera med kommandot

ndiswrapper -i bcmwlhigh5.inf

Kontrollera att allt blivit installerat som det ska med kommandot

ndiswrapper -v

Du borde få något liknande meddelande som

module details:
filename:       /lib/modules/2.6.35.12-88.fc14.i686/extra/ndiswrapper/ndiswrapper.ko
version:        1.56
vermagic:       2.6.35.12-88.fc14.i686 SMP mod_unload 686

Följande kommandon gör så att ndiswrapper startar vid uppstart och Netgear WNA3100 borde nu även få kontakt med din trådlösa accesspunkt.

ndiswrapper -ma
modprobe ndiswrapper

Får du något felmeddelande om att modprobe inte kan hitta ndiswrapper.ko så beror det på att den är placerad i fel kernel mapp. Du får då kopiera filen från dess aktuella mapp som du kunde se med komandot ndiswrapper -v och placera ndiswrapper.ko i "/lib/modules/uname -r/extra/"

uname -r är ett kommando för att ta reda på den aktuella kärnan du använder i din Linux distribution.

Jag kunde har gjort den här guiden betydligt kortare, men ville förklara steg för steg hur du ska gå tillväga för att kompilera ndiswrapper och installera nödvändiga drivrutiner.

Min blog: http://linuxbloggen.blogger.com