sudo apt-get install b43-fwcutteror on the netbook:
sudo apt-get install bcmwl-kernel-sourceand the system will connected to Ubuntu's servers through the internet and will automatically download all the software it needs to configure your internet connection which lets you connect to Ubuntu's servers and ... hang on a fucking minute, I've spotted a flaw.
So how else do I solve this thorny little problem BEFORE the LiveCD gets an internet connection. There are two separate solutions - one for each machine. For the Desktop machine, I just need to load the firmware onto the running LiveCD system. The B43 driver is installed by Ubuntu as a kernel module. Using a different operating system (windows is fine for this because the USB Key is FAT32) I dump a copy of the b43 folder (which I have painstakingly explained how to get a hold of elsewhere) containing the firmware onto the USB Key. I can then run the following commands in the terminal (or ideally put them into an executable script on the USB Key).
sudo cp -r "/cdrom/b43" /lib/firmware/ sudo rmmod b43 sudo modprobe b43
What that does is copy the b43 folder from the USB Key (ubuntu mounts the LiveCD medium to /cdrom, no matter what it actually is) to the /lib/firmware directory. The next two commands remove and then reinstall the b43 module to activate the firmware. Wireless networks should now show up in Network Manager.
OK, second solution for the netbook, and a bit trickier. First of all, the above b43 based solution did work. Sometimes. Other times it would come up with error messages visible using [dmesg], and then refuse to work. It would also sometimes cause the interface to fail even when rebooting into a perfectly working installed operating system, resulting in the need to shut the whole thing down and take out its battery before trying again. So, not entirely reliable then. Lets use the proper driver.
First of all, we are going to want to build the driver from source code, so we must have the following packages built into the USB Key:
build-essential
linux-headers-generic
This means that you need to generate a custom LiveCD image. There is simply no point in following these instructions if you are using a vanilla LiveCD image.
Next we want to download the driver. I stuck the USB Key in a running version of Ubuntu and ran the following commands:
cd /media/2G wget http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_32-v5.60.48.36.tar.gz
My USB Stick is called [2G] so Ubuntu automounts it into a directory with the same name in [/media]. The next command downloads the latest version of the hybrid driver. I am not sure what a hybrid driver is, but if I had to guess I would say it is a driver AND firmware contained in the same package. Incidentally, you could just use the same URL in windows and save the file to the USB Key. You then reboot to the USB Key and run the following commands (ideally from a script):
cd /tmp cp /cdrom/hybrid-portsrc-x86_32-v5.60.48.36.tar.gz . mkdir hybrid_wl cd hybrid_wl tar -xzvf ../hybrid-portsrc-x86_32-v5.60.48.36.tar.gz make clean make sudo rmmod b43 sudo rmmod b44 sudo rmmod b43legacy sudo rmmod wl sudo rmmod ssb sudo rmmod ndiswrapper sudo rmmod lib80211 sudo modprobe lib80211 sudo insmod wl.ko
The [cp] commands [c]o[p]ys the file we downloaded into the current [.] directory, which is [/tmp] because we just moved into it.
There are lots of [r]e[m]ove [mod]ules commands, because there are so many modules which potentially interfere with the [wl] driver. Again, once this script has finished, the interface should be up and running. This one will take a little longer to run because it is building the module from source code each time.
No comments:
Post a Comment