1

I have an old laptop. The newer kernels that ship with the latest versions of the most popular Linux distributions crash from time to time. I want to use a new Linux distribution to get the latest packages and therefore I think that I need an old kernel. (correct me if there is some other solution please)

How can I find the most suitable Linux kernel that doesn't break on my machine? Is there an alternative to try kernels one by one? Maybe some guidance or basic rules somewhere, a software that do this for you?

I'm searching for a general answer if possible, not specific instructions. Anyway specific answers can be useful to somebody else so they are also welcomed.

  • What hardware configuration ? – schaiba Jun 4 '14 at 17:30
  • 2
    Check this link. kmuto.jp/debian/hcl – Ramesh Jun 4 '14 at 17:35
  • Sorry, I should have said that I'm searching for a general answer (so this would be useful for more people), not instructions to solve my specific problem. – aleixrocks Jun 4 '14 at 17:36
  • 2
    Oh, at first I thought you tried a kernel and it broke. In 15 years I have never seen a a kernel crash "from time to time" because it's new - so I find your premiss speculative. What you require is simply a compatibility analysis - and for that you need to study your hardware and figure out if there are drivers for it and try it out... My advice is install the stable version of a distro and debug it if need be. – user44370 Jun 4 '14 at 20:19
1

Bios

To maximize you chances, make sure you have the latest BIOS installed for your system(always do such updating with AC properly secured and being motionless). Compare the settings with the defaults(which you should have done if you reloaded setup defaults after flashing - take notes of your settings prior settings beforehand!) and make sure you have no exotic setup before installing.

Quick lspci inquiry with the HCL site

For a supported architecture, I would presume Linux is going to work unless there is a real showstopper and not the opposite. Linux works and developers think about legacy too. The Hardware compatibility List link provided in the comments is a very simple way to make a partial inquiry into any major issue. I have this older PC circa 2009. Let's see(if you don't have access to the site, just issue lspci and do specific research based on the output):

PCI ID  Works?  Vendor  Device  Driver  Kernel
808629e0    Yes Intel Corporation   82X38/X48 Express DRAM Controller   x38_edac    v2.6.29-
808629e9        Intel Corporation   82X38/X48 Express Host-Secondary PCI Express Bridge     
80862937        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #4     
80862938        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #5     
80862939        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #6     
8086293c        Intel Corporation   82801I (ICH9 Family) USB2 EHCI Controller #2        
8086293e    Yes Intel Corporation   82801I (ICH9 Family) HD Audio Controller    snd-hda-intel   v3.1.0-
80862940        Intel Corporation   82801I (ICH9 Family) PCI Express Port 1     
80862944        Intel Corporation   82801I (ICH9 Family) PCI Express Port 3     
80862934        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #1     
80862935        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #2     
80862936        Intel Corporation   82801I (ICH9 Family) USB UHCI Controller #3     
8086293a        Intel Corporation   82801I (ICH9 Family) USB2 EHCI Controller #1        
8086244e    Yes Intel Corporation   82801 PCI Bridge    i810_rng    
80862916    Yes Intel Corporation   82801IR (ICH9R) LPC Interface Controller    iTCO_wdt    v2.6.25-
80862922    Yes Intel Corporation   82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode]  ahci    v2.6.25-
80862930    Yes Intel Corporation   82801I (ICH9 Family) SMBus Controller   i2c-i801    v2.6.25-
10de104a        NVIDIA Corporation  GF119 [GeForce GT 610]      
10de0e08        NVIDIA Corporation  GF119 HDMI Audio Controller     
11ab4364    Yes Marvell Technology Group Ltd.   88E8056 PCI-E Gigabit Ethernet Controller   sky2    v2.6.25-

In a connected world most of the time you'll want to identify the make and model of your ethernet/wifi component(s) and the presence or absence of a driver(acknowledging the limitations of the tool detailed on the site). A second common consideration is the graphics adapter. If there are any red flags about the hardware, it is essential to look at the documentation from the distribution itself on the distribution's site or its official wiki.

Current, stable

If you can't rapidly identify a documented issue, why not just install the stable version of the distribution you like and see if you actually have any issue with it. The maintainers strive to release a stable packaged version of the kernel according to their philosophy and the rules pertaining to their distribution model. And needless to say lots of work has gone into the Linux kernel itself and more so every day. I take this means that there are more features and compatibility is certainly a feature. In my opinion laptop OEMs have always been unoriginal and their hardware is no rocket science. It has never occured to me to install anything but the latest stable kernel from the distribution I'm using whatever the hardware may be and so far so good.

  • I will keep the idea that the latest stable Linux kernel should just work and if this don't work the better solution to avoid future errors is to try to fix the latest stable Linux kernel for my machine! – aleixrocks Jun 11 '14 at 18:50
1

Depends on what distro you are using. In Ubuntu you can go find the .deb package and install it.

wget http://launchpadlibrarian.net/19976056/linux-image-2.6.27-9-generic_2.6.27-9.19_i386.deb
wget http://launchpadlibrarian.net/19976058/linux-headers-2.6.27-9-generic_2.6.27-9.19_i386.deb
wget http://launchpadlibrarian.net/19976059/linux-headers-2.6.27-9_2.6.27-9.19_all.deb

Install the downloaded .deb files with dpkg:

sudo dpkg -i linux-*

Reboot

The same should apply with RHEL but I think you should be able to pull those from yum:

yum install kernel-2.6.32-131.21.1.el6
  • Thanks, this seems useful, but I'm searching for a more general answer. Anyway, this is what I have been done and this is why I'm asking if there is an alternative to try a kernel one by one. – aleixrocks Jun 4 '14 at 17:38
  • 2
    There is not. You will need to keep trying different kernels until you find one that doesn't crash with your setup. I would further recommend getting kernel crash dump logs and determine why exactly it is crashing in the first place. It's not normal for people to have issues with a Kernel and especially not multiple different Kernel versions. – Jeight Jun 4 '14 at 21:32
1

Long term support and more "stable" distros like CentOS should have older kernels that may work. But with older kernels some software will be held back as well. Your best bet is probably to find a distro you like and investigate on their forums to try and figure out why it's crashing on your hardware, and hopefully find a solution.

If you're dead set on switching kernels find out what piece of hardware may be causing the crash and search around for people with similar problems. There's almost always a post on the distros forums along the lines of "Upgrade to kernel X.xx from Y.yy caused my wireless/video/etc to stop working." in that case Y.yy is what you'll want.

1

This is a good question. I generally would

  1. check the year of your old laptop.
  2. take a Linux distro of the same year, or of a year older where a stable Kernel is included.

Because you don't give more information i.e. how old, which CPU how much RAM and so on. The answer would always depend on your hardware. There are often issues with newer soft like ACPI and so on.

  • I disagree. Older versions of distros will have unpatched, buggy and insecure software included. When improvements are made to an OS, it is very rare that support for older hardware is removed. – ghoti Jun 6 '14 at 14:54
  • very rare? you must be kidding. older hardware is very often not supported. – user55518 Jun 8 '14 at 22:35
0

Have a look at the Linux Kernel Archive. Choose a version, then follow the instructions for your distribution to install it. If there is no package for your distribution for the version you need, you'll need to compile it manually.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.