GNU/Linux on laptops
Saturday, 13 August 2005, michuk
Although most modern laptops nowadays tend to scare people off with an ugly “Designed for Windows XP” mark, it does not mean that alternative operating systems, like GNU/Linux cannot be installed and function equally well. In this article I would like to describe a few common issues with Linux on laptops and maybe bust a few myths about using GNU/Linux on mobile computers.
Author: Borys Musielak
Which distro is good for your laptop?
First of all, my goal is not to start a distro war. Linux is Linux - you can adjust it to your goals no matter which is your free distribution of choice (I am not going to cover the commercial systems not available for free download - they have their own marketing and I don’t get paid to advertise their products). The adjustment process can be however time-consuming and not everyone is willing to spend hours to get a stable and working OS on their mobile machines. Fortunately there are a few Linux distros for non-geeks out there, which are prepared to work with mobile computers out of the box.
One of the popular distros which are known for good laptop support is openSUSE. The support for mobile devices has been improved a lot in the recent releases, especially when it comes to wireless cards support, hibernation, energy saving, and popular notebook ports like FireWire, IRDa and PCMCIA. Ubuntu Linux is another strong player on the mobile computers market. It is also one of the top Linux distros in terms of out-of-the box WiFi support. Some other laptop-friendly distros are: Mandriva, Aurox and Fedora Core. Of course it does not mean that you cannot get the most of your laptop using Debian, Slackware, Gentoo or any other “hardcore” distro. It will be just a little more painful, especially if you’re a newbie Linux user [the target of this article :)] - most of the installation and configuration tasks needs to be done manually.
Which laptops are the most Linux-compatible?
There are a few companies that manufacture special Linux certified laptops, but the majority of the market doesn’t and we have to live with it. The good news is that GNU/Linux is going to work on the majority of currently popular models. But, if you want to get the most out of your laptop, you need to be careful when selecting a computer to purchase.
Historically, the Linux-friendly brands have always been Acer, IBM (now Lenovo) or (recent history only) HP. Others like Sony, still do not seem to notice the huge potential offered by GNU/Linux. This is however generalizing. In order to be sure that your newly purchased notebook works fine under GNU/Linux, you need to check all included chipsets for Linux compatibility.
The key things you should look at are:
- Wireless card - it’s very important to check whether the model is supported in kernel
- Graphics card - Intel has the best support under GNU/Linux (open source drivers including 3D), NVIDIA and ATI still struglle to get open, but some of the models are well supported with either FOSS or proprtietary drivers - this needs to be checked
- Sound card - it’s very hard to find a sound card that is not supported at all. Still, if you are going to buy a fancy card, it’s recommended to check whether all the functions are supported
- Mainboard - situation similar to sound cards (often integrated into the mainboard) - some fancy features may (rarely) not be supported. Especially check whether software suspend does not cause problems due to broken ACPI module
- Processor - all major processors (x86, amd64, PowerPC) are well supported under GNU/Linux. Remember that you need different install CD for each processor architecture!
Cutting the long story short - it is always good to find out whether or not all the features offered by some specific notebook are well supported under Linux. Buying a computer with Linux system preinstalled is also a good option.
Common hardware issues
Overall, the key problem is still connected with hardware compatibility and availability of free (or even binary) drivers. The situation in this area has been changing rapidly recently, but the sad truth is that still not all the features of the modern laptops are supported equally well by GNU/Linux and the Default OS.
The most typical problems with Linux on laptops are:
- Wireless cards and modems support
- Software suspend support
- Proper 3D-acceleration
- Full touchpad support with all the additional multimedia keys
- Problems with energy saving (ACPI, APM) and CPU speed management
Modern distros tend to cope with those issues quite well and usually they are not even issues. And even if they don’t, most of these problems can be solved manually. Still, you have been warned - things can go wrong sometimes and you need to know how to deal with it.
What can you do when Linux installation fails?
Let’s assume we have a properly burned Linux installation CD inserted into our brand new notebook drive. We see some startup messages and suddenly the installation crashes for an unknown reason producing a kernel panic error or an infinite loop of messages. Well, first of all, we shall not panic
The problem is very likely to be solvable.
Although there may be multiple reasons for such behavior (just as many reasons as many different hardware configurations exist), it is very unlikely that a Linux system cannot be installed and used on such notebook. Most of the issues can be resolved by setting appropriate kernel boot params (aka cheat codes).
Kernel boot parameters (cheat codes)
The typical reason for a system crash during the installation process is that the Linux kernel version provided by the installer is not compatible with your notebook hardware. Passing proper parameters to kernel before the installation process starts can be a good way of solving these problems. Params are passed in order to turn on and off the default kernel settings (which usually results in loading or not loading the corresponding kernel modules).
Here is a lit of the most useful params for laptop users:
- acpi=off - deactivates ACPI support
- apm=off - deactivates APM (older way of handling power management) support
- nodma - deactivates DMA (direct memory access) for your disks - this may make the installation process a lot slower, but is useful if your chipset is not well supported by the default kernel
- noapic - deactivates APIC (Advanced Programmable Interrupt Controler) support
- pci=off - removed PCI device support
- nomce - disables Machine Check Exception, some processors will be able to check for inconsistencies or faults, and stop booting to protect data. If you use this flag, make sure everything is working first (thanks to “eg” for clarification)
- nofb - option used to disable frame buffers on some video cards/chipsets - if the graphical part of the installer won’t come up, reboot and add nofb to the command line (thanks to Maz)
If the above cheat codes do not work for you, take a look at the complete list of Knoppix cheat codes. It may be that your specific hardware requires special options.
How to pass those params? It’s very easy. For instance, if you want to start the installer without DMS and APM support, but at the same time you need to force ACPI support, type at the boot prompt something like:
linux acpi=on apm=off nodma
Warning: linux - is in this example the name of the kernel image file of the installer. In different distros the names vary, for example in Yoper 2.1 we have a choice of two kernels: yos and novesa and in this case our command would look something like: yos acpi=on apm=off nodma. Note: The kernel image name is one of the first things which appear during the installation bootup process so it is usually easy to notice.
Wireless connection
All of the modern laptops are equipped with a WiFi adapter. Only recently, forcing Linux to cooperate with standard wireless cards (usually “compatible” only with the leading OS) was a non-trivial (or even impossible) task. During last few years, the situation have changed dramatically due to ndiswrapper - the universal WiFi card driver which enables to emulate Windows drivers under GNU/Linux.
What is ndiswrapper?
In short, it is a mechanism of wrapping the incompatible Windows drivers in one standard Linux driver. Ndiswrapper uses the original drivers’ microcode and translates the communication so that the Linux kernel can understand it. Ndiswrapper is already available by default in most of the modern Linux systems, including openSUSE and Ubuntu. Probably in the nearest future it will become some kind of “standard” in the Linux world, giving Richard Stallman a huge headache. Still, the users benefit the most since they can now use their tainted WiFi cards in GNU/Linux.
Native drivers
Of course, there are native Linux drivers for many cards as well. These are usually the drivers provided or sponsored by the producer, or developed by the OSS programmers basing on the producer’s specifications. Intel is one of the pioneers in developing (or leading the development of) open-source drivers for Linux. Setting those cards up should not be an issue, since the OSS drivers are usually provided inn the installation CD and are detected automatically by the Linux installer.
Summary
The times when Linux had been a big issue on mobile computers have fortunately passed. There are still problems in special cases, but in general, Linux works on laptops equally well as the Default OS. This said, remember to always check the hardware compatibility before purchasing a laptop. Buying hardware from Linux-friendly vendors is the best way to force others to support Linux in the future.
Useful links:
- Linux on laptops
- Tuxmobil
- Hardware section on Linux.org
- Linux on laptop forum from linuxforums.org
External articles on Linux on laptops:
- Tips for putting Linux on a notebook computer from TheJemReport
- The Future of Linux on Laptops by Gundeep Hora from CoolTechZone
- Linux on A Laptop: A Tinkerer’s Journal - Ubuntu on HP dv1000 series laptop
- Advice for Buying a Linux-Compatible Laptop - LinuxJournal’2003
- Linux Laptop Tips from Mark Shuttleworth
- Laptoplogic — Linux laptop reviews
Find the best laptops for your Linux distibution with Laptop Logic’s comprehensive notebook reviews.
Subscribe to RSS feed for this article! | Trackback URI
29 Comments
- A hyperlink: <a href="polishlinux.org">GNU/Linux for everyone!</a>,
- Strong text: <strong>Strong text</strong>,
- Italic text: <em>italic text</em>,
- Strike: <strike>
strike</strike>, - Code: <code>
printf("hello world");</code>, - Block quote: <blockquote>Block quote</blockquote>











Very good and helpfull to novice article! Best of all I saw. Thaks a lot!
Nice article. Not biased to a certain distro. Thanks for mentioning and not leaving out Slackware. This distro just works!
the best distro including for laptops is PCLinuxOS. 1.Its easy
2.Its compatible
3.Its supported
4.Its perfect
Companies selling preinstalled Desktop Linux.
http://lxer.com/module/forums/t/23168/
It is always good to see articles and authors raising awareness of Linux presence in modern operating system world and I really welcome this article . But…
please read my two posts here: http://tinyurl.com/lcxec
Hopefully you’ll find some tools for yourself
nedvis
The nomce flag disables Machine Check Exception. Some processors will be able to check for inconsistencies or faults , and stop booting to protect data. If you use it, make sure everything’s working first, and not overheating, etc.
Good article!
[...] polishlinux.org » Linux on laptops [...]
Excellent article. I have a Toshiba and Compaq laptop I tried many of distros Fedora, PCLinux, Debian, Knopix etc… I have about a 100 cd’s with most distros on them the only 2 distors that worked for my laptops were Ubuntu/Kubuntu and OpenSuse 10 and Xandros worked with ndiswrapper. I picked Ubuntu one for clean look and feel two it just worked out of the box very little issue with wireless card only issue was picking the right tool to connect and three it is only one cd not 5 like Suse 10 and four there support forum is extensive and very helpful.
I like the way you explain in a simple easy to understand article…
Laptop here I go… Linux way. hehehe
My brother and I both have Dell E1505 and E1405 with the intel wifi and everything works with Suse 10.1 with little or no tweaking. I tried to do Ubuntu but it required extensive tweaking (found instructions on web) to get the monitor and wifi working that was beyond me as a noob. All I had to do on Suse was checkmark the intel drivers off the package manager.
I just installed Ubuntu Dapper 6.06 on my friends Samsung VM8000 1Ghz Piii. No issues with the installation except at the ‘Will Now Halt’ message shutting down, he has to turn it off himself. I stuck in a Belkin F5D7050 PCMCIA which was detected and fired up no problem from the built in network manager. Runs fast too.
I am running WIN XP, Ubuntu, and Debian on my
E Machines low end notebook. Everything works
on Ubuntu but had to use the ATI Video driver from
their site. Debian the Alsa drivers are too old for
the new card. Using ndiswrapper for wireless and
works ok.
I have a dell 630m laptop running ubuntu dapper and only the screen resolution is a problem (1280×800) which is easily fixable using synaptics. I run opensuse 10.1 on the laptop before also with much success, no prob whatsoever… but I like Ubuntu more, which is more of a matter of taste. I use the laptop heavily for my workload on the office and touch wood no prob whatsoever. Even the multimedia key works when I run Ubuntu dapper. Its been a joyride until now and long it may continue. (wait… I even install fedora core 5 on the laptop before and no major prob detected … except for the wifi)
I have tried alot of distros from SUSE 8, and have settled on ubuntu 6.06(dapper drake) on my laptop(IBM R50). Everything buy wifi works, but thats because its a broadcom card, and NDISwrapper works just fine. They also have great user-based support via the forums and IRC chat. If you are just jumping into linux, I would really recomend Ubuntu.
Great article. LinuxCertified laptops are pretty good. I have one - wireless, opengl, suspend etc. work flawlessly. Linux lappies have come a long way..
One more kernel option that’s sometimes required is the “nofb” option to disable frame buffers on some video cards/chipsets. If the graphical part of the installer won’t come up, reboot and add nofb to the command line.
Good effort. I have been using Suse 9.3 on my laptop for past two years, and I don’t think I will change that. Maybe next year, I might consider the openSUSE distribution, as the support gets better.
i changed the OS of my laptop
and work better, faster and cuter with xfce jajajja
sorry my english sucks =(
[...] Click here to read this great article on how to run and troubleshoot linux on your laptop [...]
I installed SuSE 10.1 on my HP Compaq nc6220 last week. Trick: Have the non-OSS add-on CD available, the ifw2200 firmware/driver are on that CD and SuSE will find and install those drivers for you. Other than that, the installation went smoothly without a glitch, and everything including suspend-to-RAM and suspend-to-disk works out of the box. Really a *huge* improvement over previous SuSE releases on older laptops.
[...] polishlinux.org » Linux on laptops (tags: guide linux laptop howto tips hardware reference install ubuntu) [...]
I settled on Thinkpads for “alternative” OS installations years ago. At first, that meant FreeBSD, but soon included Linux. I’ve watched laptop (screw the “notebook” terminology nazis!) support for F/OSS improve greatly over the years. My current (aging) laptop is an IBM T40 running Fedora Core 5. The integrated Intel 802.11B works out of the box, although getting it to do WPA requires manual tweaking of wpa_supplicant. I recently got my Windows based phone, a Verion XV6700, working as a dial up modem using the excellent instructions at http://andrewtv.org/fedora-ppc6700/ (Warning: lots of graphics!) It’s a very manual process, but well worth it if you spend lots of time at airports with expensive WiFi. Everything else Just Works, including suspend, the trackpad and thinkpad buttons. I’ve also tried various flavors of SuSE and OpenSUSE on that box, with increasing success over recent releases. I’d say the Distros I use are 90% of the way there with respect to the excellent hardware support tha Windows offers. The remaining 10% can be a killer if you don’t have the ability to sling around configuration files, but at least the need to compile your own kernel has all but disappeared. (It’s nice to know how to do that, but support tends to be much easier to get with the distro’s default kernel.)
I’ve been using Linux on laptops for about 3 years now. I had a Dell Latitude CPS/x at first with Mandrake 9 and later Fedora. I ran a Dell Inspiron 5100 with Fedora Core 3 and Fedora Core 4. I actually preferred FC3. This year I purchased a “whitebox” notebook with a Centrino 1.73 processor and 512 mb RAM and ran Ubuntu Breezy Badger and later Dapper Drake. My notebook has an Intel 2200 BG wireless card and Breezy Badger and Dapper Drake supported it right out of the box. I’m currently running Centos 4.3 on the laptop and I had to get the drivers for the wireless card from Sourceforge. I love my Linux based laptop.
[...] http://polishlinux.org/choose/laptop/ [...]
Another useful link is the Linux Laptop Wiki. This is a website I have created where people can edit the pages within and talk about their particular laptop.
[...] few common issues with Linux on laptops and maybe bust a few myths about using GNU/Linux on laptops.read more | digg [...]
Typo
but the sad true -> but the sad truth
Thanks, corrected.
laptop computers…
Your site looks very interesting and informative! I found your blog via Google while searching for laptop computers and your post regarding Apple Computers Coming Soon! ” McMaster University Library definitely captured my attention. I have seen many o…