Για να εντοπίσουμε πιο chipset έχουμε στην ασύρματη κάρτα μας εκτελούμε
lspci
Εάν η κάρτα μας δεν υποστηρίζεται εγγενώς από το linux (όπως π.χ. οι atheros κτλ) μπορούμε ακόμα να την χρησιμοποιήσουμε με τους drivers των windows που μας παρέχονται χρησιμοποιώντας το project ndiswrapper.
Πριν καταλήξουμε εκεί όμως καλό είναι να ψάξουμε σε μια μηχανή αναζήτησης για : linux support + <chipset model>
Θα εγκαταστήσουμε το απαραίτητο λογισμικό που θα μας βοηθήσει να ελέγξουμε την εγκατάσταση των οδηγών αλλά και να κάνουμε τις ρυθμίσεις του ασύρματου δικτύου μας
Εγκατάσταση wireless-tools
apt-get install wireless-tools
Έλεγχος εγκατάστασης wireless-tools με
iwconfig
Για να πάρουμε ip διεύθυνση μέσω dhcp θα χρειαστούμε και το dhclient
aptitude install dhclient
Επίσης θα εγκαταστήσουμε το modconf που θα μας χρειαστεί ώστε να ελέγξουμε ότι κάποια απαιτούμε modules είναι ενεργοποιημένα
aptitude install modconf
Εάν εγκαταστήσουμε το ndiswrapper θα χρειαστούμε επίσης και το module-assistant
aptitude install module-assistant
βλ. http://forums.debian.net/viewtopic.php?t=7949
Τα atheros chipsets υποστηρίζονται εγγενώς στον kernel σε εκδόσεις από 2.6.17 και πάνω.
Για να ελέγξουμε ότι το module του πυρήνα είναι ενεργοποιημένο εκτελούμε
modconf
Πηγαίνουμε στο kernel/drivers/net/wireless/bcm43 και ενεργοποιούμε αν δεν είναι ήδη
Θα πρέπει όμως να εγκαταστήσουμε και το firmware για την ασύρματη κάρτα μας.
aptitude install bcm43xx-fwcutter
Το μόνο που πρέπει να κάνουμε είναι να μετακινήσουμε το firmware στην σωστή τοποθεσία (αφού ίσως το bcm43xx-fwcutter το αποθηκεύσει σε λανθασμένη)
mkdir -p /lib/hotplug/firmware cp /lib/firmware/*.fw /lib/hotplug/firmware
Βεβαίως η συσκευή μας ίσως δεν αναγνωριστεί ή ανιχνευθεί λάθως από το bcm43xx-fwcutter.
Στην περίπτωση αυτή από το cd του κατασκευαστεί βρίσκουμε το αρχείο οδηγών bcmwl5.sys. Μπορούμε να το αντιγράψουμε σε έναν φάκελο όπως π.χ. /opt/drivers/bcm4318
mkdir /opt/drivers/bcm4318 cp -r /media/cdrom/Driver/WinXP/ /opt/drivers/bcm4318/
Τώρα θα εξάγουμε το firmware από το αρχείο bcmwl5.sys και θα το αποθηκεύσουμε στον φάκελο /lib/hotplug/firmware/ και /lib/firmware
cd /opt/drivers/bcm4318/WinXP/ bcm43xx-fwcutter -w /lib/hotplug/firmware/ bcmwl5.sys bcm43xx-fwcutter -w /lib/firmware/ bcmwl5.sys
Καλό είναι να επαναφορτώσουμε το module
rmmod bcm43xx modprobe bcm43xx
Από το iwconfig μπορούμε να δούμε σε πιο interface αναγνωρίστηκε η ασύρματη κάρτα μας (π.χ. eth1)
iwconfig
Βλ. (Firmware καρτών δικτύου)
Για τις ασύρματες κάρτες που δεν υποστηρίζονται εγγενώς από τον πυρήνα του linux θα χρησιμοποιήσουμε το project ndiswrapper. Το μειονέκτημα εδώ (που ισχύει και στους επίσημους drivers της nvidia) είναι ότι κάθε φορά που θα επανεγκαθιστούμε τον πυρήνα θα χρειάζεται να ξανακάνουμε την μεταγλώττιση των modules.
Παρακάτω είναι χρήσιμα links
Αρχικά θα πρέπει οπωσδήποτε να εγκαταστήσουμε την τελευταία έκδοση του πυρήνα, καθώς θα χρειαστούμε και τα headers που για τον παλιό πυρήνα μας ίσως δεν υπάρχουν πλέον στα αποθετήρια του apt Εκτελούμε π.χ.
aptitude install linux-image-2.6-686 update-grub
Επανεκκινούμε με τον νέο πυρήνα
Εγκαθιστούμε το ndiswrapper
module-assistant auto-install ndiswrapper
Ελέγχουμε την εγκατάσταση του ndiswrapper με
ndiswrapper -l
Θα πρέπει να μας εμφανίσει το παρακάτω μήνυμα
no drivers installed
Εάν έχουμε κάποιο cd θα πρέπει να πάρουμε από εκεί τους οδηγούς. Χρειαζόμαστε τα αρχεία .inf, .sys and .bin. Θα τα αποθηκεύσουμε σε έναν τοπικό φάκελο μαζί και στην συνέχεια από το .inf αρχείο θα κάνουμε την εγκατάσταση.
Για παράδειγμα δημιουργούμε τον παρακάτω φάκελο.
mkdir -p /opt/drivers/wireless cp -r /media/cdrom1/DRIVER/WinXP/ /opt/drivers/wireless/
cd /opt/drivers/wireless/WinXP/
Το εγκαθιστούμε με ndiswrapper -i <file.inf>. Π.χ.
ndiswrapper -i Mrv8000c.INF
Στην συνέχεια ενεργοποιούμε το ndiswrapper module για να εφαρμοστούν οι αλλαγές
modprobe ndiswrapper
Εάν δεν βρούμε κάποιο οδηγό στο cd μπορούμε ίσως να βρούμε κάποιον εδώ : http://ndiswrapper.sourceforge.net/mediawiki/index.php/List Θα πρέπει πρώτα να εντοπίσουμε το chipset που έχουμε
lspci
Για παράδειγμα εδώ είναι το 88w8335
00:09.0 Ethernet controller: Marvell Technology Group Ltd. 88w8335 [Libertas] 802.11b/g Wireless (rev 03)
Ψάχνουμε στον παραπάνω σύνδεσμο για να βρούμε τους οδηγούς για το chipset (88w8335) ή ψάχνουμε για όλη τη γραμμή (χωρίς το 00:09.0) Ελέγχουμε επίσης εάν έχουμε το ίδιο pciid
lspci -n
Π.χ. εδώ είναι 11ab:1faa
00:09.0 0200: 11ab:1faa (rev 03)
Εάν όλα πήγαν καλά θα έχει δημιουργηθεί ένα νέο interface wlan0. Εκτελούμε την παρακάτω εντολή για να δούμε ότι όντως έχει δημιουργηθεί
iwconfig
Για την δοκιμή μας αρχικά θα απενεργοποιήσουμε την ασφάλεια (WEP ή WPA) από τον ασύρματο router μας, θα βεβαιωθούμε ότι είναι ενεργοποιημένος ο dhcp server και θα δοκιμάσουμε να συνδεθούμε Ανάλογα σε ποιo interface έχει αναγνωριστεί η ασύρματη κάρτα μας (eth1, wlan0 κτλ) θα εκτελέσουμε τον dhcp client.
Π.χ. εάν την έχουμε ρυθμίσει με ndiswrapper θα έχει αναγνωριστεί στο interface wlan0. Έτσι εκτελούμε
dhclient wlan0