Je viens d'installer 14.04 sur mon modèle de macbook mi-2012 la nuit dernière et j'adore ça. Sauf que j'ai passé les dernières 24 heures à essayer de faire fonctionner mon réseau wifi.
Voici quelques informations:
02:00.0 Network controller: Broadcom Corporation BCM4331 802.11a/b/g/n (rev 02)
J'ai tout essayé sur ce site, sauf:
Désinstallez le package
bcmwl-kernel-source
en exécutant la commande suivante sur un terminal:Sudo apt-get remove bcmwl-kernel-source
Assurez-vous que les packages
firmware-b43-installer
etb43-fwcutter
sont installés (vous aurez bien entendu besoin d’Internet par d’autres moyens):Sudo apt-get install firmware-b43-installer b43-fwcutter
Tapez dans le terminal:
cat /etc/modprobe.d/* | egrep 'bcm'
(vous pouvez copier ceci) et voir si le terme 'blacklist bcm43xx' est là. Si c'est le cas, tapez:
cd /etc/modprobe.d/
puis
Sudo gedit blacklist.conf
placez un
#
devant la ligne:blacklist bcm43xx
, puis enregistrez le fichier (le message d'erreur indiquant que le terminal ne pouvait pas être enregistré, mais que l'enregistrement a été correctement effectué).redémarrer
Est-ce que ça va marcher? Si non, quelqu'un peut-il s'il vous plaît suggérer une solution?
Je viens de copier les informations de pilote à partir de la commande lspci et de les rechercher sur ce site. J'ai trouvé la réponse dans Le Wi-Fi fonctionne sur Macbook Pro 8.2 sur Ubuntu 12.04.
J'ai dû changer quelques petites choses pour que ça marche pour moi. Voici ce que j'ai fait:
Exécutez ce qui suit dans le terminal:
Sudo apt-get install b43-fwcutter firmware-b43-installer
Sudo dpkg-reconfigure firmware-b43-installer
Et beaucoup d'extraction se produira.
Puis entrez:
dmesg | tail -2
Vous obtiendrez une réponse comme celle-ci:
[ 5866.172626] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 5870.282827] applesmc: FS! : read arg fail
Première mise à jour d'apt-get:
apt-get update
Puis mettez à jour Linux Image, les en-têtes Linux (ce code déterminera votre en-têtes nécessaires des systèmes) et installez Broadcom DKMS:
apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
Supprimez tous les pilotes actifs possibles pour l'adaptateur WiFi Broadcom:
modprobe -r b44 b43 b43legacy ssb brcmsmac bcma
Activez le pilote wl pour l’adaptateur WiFi Broadcom:
modprobe wl
Il est toujours préférable de redémarrer votre système après des choses comme celle-ci:
reboot
Mon script:
#!/bin/sh
#
# install_bcm43xx_firmware
#
# This script tries to download and install the firmware needed to run
# WLAN cards using Broadcom's bcm43xx chips.
# firmware for b43
URL1=http://www.lwfinger.com/b43-firmware
FILE1=broadcom-wl-5.100.138.tar.bz2
FIRMWARE1=broadcom-wl-5.100.138/linux/wl_apsta.o
# firmware for b43legacy
URL2=http://downloads.openwrt.org/sources
FILE2=wl_apsta-3.130.20.0.o
test -z "$( type -p curl)" && { echo "'curl' is not installed, aborting. Please install 'curl' and try again."; exit 1; }
test -z "$( type -p b43-fwcutter)" && { echo "'b43-fwcutter' is not installed, aborting. Please install 'b43-fwcutter' and try again."; exit 1; }
test -d /lib/firmware || mkdir -p /lib/firmware
TMPDIR=$(mktemp -d /var/tmp/bcm.XXXXXX) || exit 1
pushd $TMPDIR >/dev/null
echo "Downloading b43 firmware"
curl -# -f -o $FILE1 $URL1/$FILE1
if [ $? -eq 0 ];then
echo "Extracting b43 firmware"
tar xjf $FILE1
b43-fwcutter -w /lib/firmware $FIRMWARE1
else
echo "Could not download b43 firmware. Please look at /usr/share/doc/packages/b43-fwcutter/README."
fi
echo
echo "Downloading b43legacy firmware"
curl -# -f -o $FILE2 $URL2/$FILE2
if [ $? -eq 0 ];then
echo "Extracting b43legacy firmware"
b43-fwcutter -w /lib/firmware $FILE2
else
echo "Could not download b43legacy firmware. Please look at /usr/share/doc/packages/b43-fwcutter/README."
fi
echo
if [ -d /lib/firmware/b43 ] ; then
echo "b43 firmware successfully installed."
sync && sync
/sbin/modprobe -r b43
/sbin/modprobe b43
else
echo "b43 firmware installation failed."
fi
if [ -d /lib/firmware/b43legacy ] ; then
echo "b43legacy firmware successfully installed."
sync && sync
/sbin/modprobe -r b43legacy
/sbin/modprobe b43legacy
else
echo "b43legacy firmware installation failed."
fi
popd >/dev/null
rm -rf $TMPDIR
exit 0
Pour l'utiliser, copiez le contenu dans un fichier local portant ce nom:
install_bcm4331.sh
Puis rendre le fichier exécutable
chmod +x install_bcm4332.sh
Puis lancez le script
Sudo ./install_bcm4332.sh
Si vous souhaitez exécuter le script lorsque vous démarrez le système, copiez le fichier dans le répertoire /etc/rc.d/init.d/.