Table des matières

, , , , ,

Installation du pilote pour carte wifi basée sur le chipset Ralink RT2860

Compatibilité

Sur Ubuntu 10.04, il semblerait que l'installation du paquet linux-backports-modules-wireless-2.6.38-lucid-generic suffise à faire marcher correctement ce pilote évitant la procédure relativement complexe qui suit. Cette méthode a en plus l'avantage d'utiliser l'installation par paquet et ne nécessite pas une recompilation à chaque mise à jour du noyau ; elle permet de plus d'avoir accès aux pilotes les plus récents pour son matériel wifi.

Pré-requis

Installation

Sur le site de Ralink cliquez sur Software>Linux, puis sélectionnez le pilote RT2860PCI/mPCI/CB/PCIe(RT2760/RT2790/RT2860/RT2890), actuellement en version 2.4.0.0 datée du 16/07/2010. Vous aurez besoin de fournir un nom, une adresse mail (mais vous pouvez aussi tapez n'importe quoi dans les champs “Nom” et “Adresse email” - avec un @ dedans) et d'accepter les termes de la licence GPL. Téléchargez le fichier dans votre répertoire personnel.

au 30/08/2010 la dernière version était 2.4.0.0 mais pensez à modifier les commandes ci-dessous si nécessaire. Par ailleurs, bien que ce fichier apparaisse sur le site en tar.bz2, ce n'est pas une archive bzip. Il faut l'extraire sans lui passer l'option -j

Ouvrez un terminal, extrayez l'archive dans votre répertoire personnel avec la commande

tar xvf 2010_07_16_RT2860_Linux_STA_v2.4.0.0.tar.bz2

Vérifiez que le nom n'a pas changé et adaptez la commande si besoin est. Placez vous dans le dossier nouvellement créer :

cd 2010*

Ensuite, il faut modifier le fichier ./os/linux/config.mk. Toujours dans le terminal :

gedit ./os/linux/config.mk

N'oubliez pas le point, qui sert à indiquer que ce chemin part de là où vous vous trouvez, c'est à dire dans le dossier du driver Ralink, sinon la commande ira chercher le fichier sur votre système !

Au début de ce fichier devraient se trouver ces deux lignes :

# Support Wpa_Supplicant
HAS_WPA_SUPPLICANT=n

# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n

Remplacez les “n” par des “y” pour obtenir ceci :

# Support Wpa_Supplicant
HAS_WPA_SUPPLICANT=y

# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

Enregistrez et fermez.

modifiez le fichier ./common/cmm_wpa.c

gedit ./common/cmm_wpa.c

Si vous avez un message de problème d'encodage, choisissez “western” ou “occidental” et appuyez sur “réessayer”. Recherchez la ligne (Ctrl+F dans Gedit) MIX_CIPHER_NOTUSE. Elle devrait ressembler à ça :

WPA_MIX_PAIR_CIPHER		FlexibleCipher = MIX_CIPHER_NOTUSE;

Remplacez là entièrement par :

WPA_MIX_PAIR_CIPHER FlexibleCipher = WPA_TKIPAES_WPA2_TKIPAES;

N'oubliez pas le point virgule à la fin.

Il faut maintenant compiler. Pour ce faire, installez les outils de compilation

sudo apt-get update && sudo apt-get install gcc build-essential linux-headers-`uname -r`

Exécutez ces commandes une à une

sudo make
sudo make install
sudo ifconfig wlan0 down
sudo rmmod rt2860sta

Renommez l'ancien pilote rt2860sta.ko en rt2860sta_old.ko en vous plaçant d'abord dans le bon dossier

cd /lib/modules/$(uname -r)/kernel/drivers/staging/rt2860

puis

sudo mv rt2860sta.ko rt2860sta_old.ko

Mettez à jour la liste des modules et chargez le nouveau module avec :

sudo depmod -a
sudo modprobe rt2860sta

Vous devriez voir l'icône de notification réseau essayer de se connecter. Remplissez la clé WPA qu'il vous demande et au bout de quelques secondes, il doit se connecter. Si toutefois rien ne se passe, entrez cette commande pour réveiller la connection wifi :

sudo ifconfig wlan0 up

À ce stade vous devriez être en train de surfer. Mais au prochain redémarrage, vous vous retrouverez sans wifi. Remédions à cela. Pour cela placez vous dans le bon dossier et copiez le fichier en remplaçant celui de votre système

cd ~/2010*/os/linux/
sudo cp rt2860sta.ko /lib/modules/$(uname -r)/kernel/drivers/staging/rt2860/ 

Mettez à jour votre fichier de démarrage des modules en modifiant le fichier /etc/modules :

gksudo gedit /etc/modules

Ajoutez “rt2860sta”, sans les guillemets, à la dernière ligne, pour obtenir quelque chose qui ressemble à ça :

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
rt2860sta

Redémarrez et vérifiez que vous êtes maintenant automatiquement connecté à votre réseau sans fil.

Après l'installation d'un nouveau noyau

Quand vous faites une mise à jour et que vous installez un nouveau noyau (donc seulement quand vous avez “linux-header-2.6.xx-xx”, vous devez recompiler, c'est-à-dire réinstaller le driver dans le nouveau noyau. Pour cela, placez-vous dans le dossier du driver :

cd ~/2010*

Nettoyer en tapant:

sudo make clean

Puis éditer le fichier de configuration:

sudo gedit ./os/linux/config.mk

Vous avez:

# Support Wpa_Supplicant
HAS_WPA_SUPPLICANT=n

# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n

Remplacez les “n” par des “y” pour obtenir ceci:

# Support Wpa_Supplicant
HAS_WPA_SUPPLICANT=y

# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

Puis recompilez:

sudo make

Et:

sudo make install

Chargez le module manuellement:

sudo modprobe rt2860sta

Si nécessaire, relancez la connexion réseau en tapant:

sudo ifconfig wlan0 up

Et:

sudo /etc/init.d/networking restart

Voilà, ça fonctionne avec votre nouveau noyau!

Voir aussi