Wednesday, February 21, 2007

[Howto] Wireless networking on Linux

As I said before, a lack of wireless support is one of the biggest disadvantages of Linux. Today we're going to take a look at some ways to get your Wifi card working if your distribution doesn't detect it automatically.


The least technical way: try a different distribution
Not all Linux distributions have equal wireless support. For example, both openSUSE and Fedora Core weren't able to detect my wireless card so I had to install the driver manually using my Windows driver (see further). On the other hand: Ubuntu and Kubuntu immediately detected it without me having to deal with the command line. You should always check the list supported wireless cards for your distribution first (if any, but most distros have such a list). Is your card not listed? Don't panic! Perhaps it hasn't been tested yet so maybe you should. Make sure that you add your card to the list if you get it to work.


The most effective way: using your Windows driver under Linux
This method should work for most people, but requires you to do some commandline stuff. First of all, you'll need to download ndiswrapper. Sometimes this package is installed by default, sometimes it can be installed from your distribution's installation CD/DVD and sometimes you'll just have to download it yourself.

Secondly, you'll have to find the Windows driver for your Wifi card. You can download it from the website of your card manufacturer. If your driver's a .exe file, extract it with 7-Zip (Windows/Linux) or a different program that can extract .exe files. When done, open the folder with the contents of the .exe file and search for a folder that contains both a .inf and a .cat file. When you find that folder, copy all its contents some place you can access under Linux. Boot Linux and install the ndiswrapper package if you haven't done so already.

Open a terminal window and go to the directory where the .inf file - along with the other driver files - is stored. For example:
cd /home/pdedecker/Desktop/WirelessDriver
Of course you'll need to replace /home/pdedecker/Desktop/WirelessDriver with the path to the directory. Put quotes before and after the path if it contains spaces.
Then, enter:
sudo ndiswrapper -i myDRIVER.inf
Replace myDRIVER.inf with the name of your driver's .inf file. After entering the root password, you should get the message "Installing myDRIVER..." (where myDRIVER is the name of your driver). We only need to enter two more commands:
sudo ndiswrapper -m
sudo modprobe ndiswrapper
To see if your card got installed correctly, do:
iwconfig
If you see a device called wlan0 (or something similar), you've successfully installed the driver. Use the wireless configuration tool that comes with your distro to configure your card.


The old-skool way: search Google
Still no luck? Search Google; you might just find what you need. However, these drivers may be hard to install since you usually have to compile them yourself. If you're lucky, they offer a .deb (for Debian, Ubuntu and related distros) or a .rpm file (for distros such as Fedora Core and openSUSE). They can be handled by your distribution's software management system, which makes it a lot easier to install. Always check first if the driver you're downloading requires additional packages to avoid having to switch between Windows and Linux multiple times to download all packages.


Plan D: check the website of your card manufacturer
If Linux wasn't able to detect your card automatically, you should check the site of your card manufacturer. In some cases, you'll find a Linux driver for your card there. Again: usually you have to compile these things yourself. Also keep in mind that most of these drivers haven't been tested as much as the Windows version so it might not work as desired.


Some final remarks
Unofficial wireless drivers for Linux are unsupported by your card manufacturer (Linux communities may be able to provide you the support you need though). These drivers may or may not work and come with no warranties whatsoever. In the worst case, they mess up your system. Speaking of warranty: I advise you to check your card's warranty before trying any of these drivers. Some manufacturers may not want you to use unofficial drivers.

Labels: , , , , ,

Wednesday, February 14, 2007

[Basics] All you need to know before trying Linux

(Updated 02/21/07) - Many books have been written about Linux. Some of them are good, but - judging based on what I've read - most of them talk about things that you could have figured out by yourself such as "how to use a web browser on Linux". They also fail to mention some stuff that I think is essential. Are you considering trying out Linux? This is what you need to know.


Distributions
Since the source code of Linux is available for everyone to copy, correct, modify and reproduce, there are many flavors of Linux. They are called distributions. As you can see on the pictures above, they can look very different but keep in mind that that's not always the case. There's no distribution that's considered to be "the best one available"; this is a personal matter. If you have no idea what distribution to pick, you can do a free online test to see which one's right for you.

Downloading Linux
If you download a Linux distribution, it is most likely that the file you're downloading has a .iso extension. If you're not familiar with these files: it's like a CD/DVD template. If you import such files into your CD burner, the program will know exactly what to burn on your CD/DVD. This eliminates the need to download and burn every single file on the CD manually. Don't have a CD burner that supports ISOs? No problem, there are plenty of freeware applications that can do this for you. Personally, I prefer CDBurnerXP Pro.

Installing Linux
Hopefully, you've been able to burn the ISO you just downloaded. Now you'll have to reboot your PC and boot from the CD/DVD you just burned. If you're lucky, your BIOS has a boot menu where you can choose from what drive the system should try to boot. More information about booting CDs can be found in your BIOS manual.


Window managers
KDE and GNOME are what we call "window managers". Depending on which one you use, your desktop, task bar and windows will look and function different. Most graphical Linux distributions come with a customized version of either KDE (screenshot 1) or GNOME (screenshot 2). They can also be installed at the same time as they don't conflict with each other. Again, this is a personal thing; some people prefer KDE, some prefer GNOME. If you like eyecandy and flexibility, I advise you to try KDE. If you'd rather keep it simple, try GNOME instead.


Software management
Compare this with the Software applet in the Control Panel on Windows. While Windows only maintains a database of what software is installed on your computer, a majority of Linux systems has developed a complete software management system. Imagine: you've just downloaded a new application (on Linux, we call them "packages") When installing a package, your computer unpacks the files, puts them in the right place and - in most cases - creates shortcuts to your newly installed application. But here's the cool part: once there's a new version available for one of your installed applications, your Linux system can download and install it without bothering you at all! Removing a package is also a fully automated process that doesn't require interaction.

Administrators
There are a few things you should know about this:

  • On Linux, administrator accounts are known as superusers.
  • While you might be able to install certain programs on Windows without administrator rights, normal Linux accounts have less priviledges. That's why Linux is so secure.
  • The primary superuser on Linux is called root.
  • Every time you try to do something normal users aren't allowed to do, you will be asked for the root password.
  • Never use the root account is your primary account.



The downside: wireless support
If there's one thing that Linux can't do very well, is detecting wireless cards. I've been looking around for years for a way to get wireless access on Linux. This is not Linux' fault. Most wireless card manufacturers simply don't supply Linux drivers with their products so people have to make them by theirselfs. But things are changing. Some time ago, I installed a new version of Ubuntu on my PC that detected my wireless card without any difficulties at all. If you're using LAN cables to connect to the internet, you're lucky since most of these devices are supported.

Stuck? Don't know how to do something?
You're not alone. There are many communities that help hundreds of people every day with their Linux problems. Not every single one of them is as big as that, but you should get a reply to you question within a day on most (popular) forums. Here are some links to communities that might be able to help you with your problem: General Linux, [U/Ku/Edu/Xu]buntu, openSUSE, Fedora Core.

Labels: , , , , , , , , , , , , , ,

Friday, February 02, 2007

[Linux] Your personalized home office on a USB drive

Imagine having your personal home office with your settings, programs and files available no matter what computer your working on*. Does that sound impossible? Well, it isn't. Pen Drive Linux has some tutorials on how to install Linux on your USB drive. Whenever you need access to your home office, just plug it into a nearby computer and boot the computer from the USB drive.


You don't need much disk space to do this. 256MB is enough to install SLAX with a graphical KDE environment on your USB drive and if you don't mind having less eye candy, Linux will require as low as 64MB of disk space (using Damn Small Linux)! If you have a bigger drive (more than 1GB), you can consider choosing Knoppix, which comes with even more fun stuff.

Websites: Pen Drive Linux, Knoppix, SLAX, Damn Small Linux

* Unfortunately, some older PCs can't boot from a USB drive. Almost every PC that's less than two years old has this functionality.

Labels: , , , , , , , , , , ,