PAE, Physical Address Extension
2013-5-2: The page is in writing. Please don't edit now
A guide for getting computers with older Pentium M processors to work with the latest Lubuntu.
Physical Address Extension (PAE) is a feature found on almost all 32 bit processors produced after Pentium Pro, ie. younger than around 1995. Because PAE is close to being ubiquitous it is now a requirement for Buntu: During installation the processor is prompted for the PAE flag, and only if present the process will carry on.
Buntu offered a PAE and a non-PAE release up to and including 12.04, but from 12.10 only the PAE release is maintained.
A number of older Pentium M processors produced around 2003-4 (the ones with 400 MHz front side bus) do not display the PAE flag, and hence a standard installation fails. However, these processors are in fact able to run the latest and hence PAE-demanding kernels if only the installation process is modified a little.
In spite of their age many of the affected computers (IBM Thinkpads, for example) are suitable for today's use if given a light distro like Xubuntu or Lubuntu; among other advantages they have a low power consumption. This guide describes a workaround for installing the latest Lubuntu and bringing them back to life.
The process might take some time but is not difficult. Everybody can manage, and if you are unfamiliar with giving commands at the command line, fear not! Just write the commands exactly as they appear here, keeping in mind that upper- and lowercase are different.
Before proceeding: If the installation is failing, are you sure the problem is related to PAE? A lot of misunderstandings flourish, and lack of PAE support is often blamed as the reason for a failed installation when in fact
As a first step please try installing a regular 13.04 Xubuntu or Lubuntu ISO (including the alternate Lubuntu). Only if you get the error kernel requires features not present on the CPU: PAE this guide comes into play.
Now we know that the problem is in fact related to the PAE flag. This gives several options:
* Install Xubuntu 12.04, which is supported through april 2015. Lubuntu 12.04 is only supported through october 2013.
* Install the 12.04 non-PAE kernel and follow a certain upgrade path, as decribed in the following text.
* Install a modified Lubuntu 13.04 which supports non-PAE processors.
* Use another distro like Puppy Retro.
The guide is focusing on option 2: We are going to add a fake PAE flag to the output of cpuinfo, and after that we are able to upgrade to 12.10 and 13.04. The idea comes from a thread posted by 7bit.
An upgrade is always a risky process, and in general a fresh install is preferred. In order to minimise the risk of something going wrong we keep the installation as small as possible during upgrade. Only when the system has reached the latest version the full selection of packages is applied.
1
Make an install USB stick using the non-PAE version of the 12.04 mini.iso. If your machine does not support boot from USB you have to burn a CD in stead.
Install using the USB stick mentioned above. Remember to have wired internet access during the entire process.
When the installation is finished reboot the computer.
The command
cat /proc/cpuinfo
does not show pae in the flags line for the processor. This is what we would like to change.
2
Run
sudo apt-get install python-software-properties
and after that
sudo apt-add-repository ppa:prof7bit/fake-pae
You will see a screen explaining about the PPA you are about to add. Just accept the text.
Now
sudo apt-get update
and
sudo apt-get install fake-pae
installs the fake-pae package.
Verify that
cat /proc/cpuinfo
now shows the pae flag.
In order to clean up unneeded files and save (a little) space run
sudo apt-get clean
3
If one now tries to run
sudo do-release-upgrade
in order to upgrade to 12.10 nothing happens, as 12.04 is a long term support release, and by default it only allows upgrades to another long term support release (regardless of PAE/non-PAE support). This must be changed before proceeding.
Executing
cd /etc/update-manager/
and
less release-upgrades
shows Prompt=lts at the bottom of release-upgrades. This must be changed to Prompt=normal.
After taking a back up with
sudo cp release-upgrades release-upgrades.backup
and executing
sudo sed -i s/Prompt=lts/Prompt=normal/ release-upgrades
the file is changed, as can be seen with another
less release-upgrades
4
Now
sudo do-release-upgrade
performs the upgrade to 12.10. You might be informed that sources.list will be changed, which is all right.
After the upgrade is completed reboot the computer and run
uname -a
which shows that the kernel is now 3.5.x
5
A second
sudo apt-get clean sudo apt-get update sudo do-release-upgrade
brings the system to 13.04. You might see a number of apparent errors during the upgrade, but wait a moment before considering it a failure.
After a reboot you could be greeted by a message saying that 13.04 is available, though you have just upgraded to 13.04. It's only a minor bug - when in doubt, as always try
uname -a
A kernel of 3.8.x indicates a succesful upgrade to 13.04.
cat /proc/cpuinfo
and similar tools still show the fake pae flag.
6
Now the desktop environment can be installed. The command
sudo apt-get install lubuntu-desktop
gives the full installation, but often it's better to begin with the smallest selection of packages like
sudo apt-get install --no-install-recommends lubuntu-core
as described here.
After a reboot one can install extra packages according to own taste and needs. Synaptic, chromium-browser, gedit, vlc, libreoffice, gimp, lxkeymap, alsamixergui, file-roller, gparted and gpicview are a good beginning (for 12.10 eog should be installed in stead of gpicview).
When this has worked well through a couple of reboots it's time to focus on the wireless connection and other hardware which might need closed-source drivers.
Have fun with your reborn Pentium M-equipped computer!