How to get 4GB in Ubuntu 32 bit

In case you added 4Gb or more of memory to your ubuntu 32 bit OS, you will notice that "free -m" only reports the OS using around 3.3Gb. This is behavior is related to technical hardware issue of old 32 Bit systems.

The 64 bit version of Ubuntu does not have this problem, it will detect the full memory.
But if you running 32 bit version, there is a work around to make all 4Gb available to the OS.

- Install the PAE enabled Kernel

sudo apt-get update
sudo sudo apt-get install linux-headers-server linux-image-server linux-server

- Reboot

sudo reboot


  1. Strangely, this did not work for me in Jaunty. Yes, the BIOS shows 4GB. FREE shows 3003052 total using the 'server' kernel. I think that is a little less than it showed with the regular kernel.

    The HWINFO --memory command shows that it thinks there is: Memory Size: 2 GB + 768 MB

    Still digging on the problem.

  2. run "uname"
    $ uname -a
    Linux lafa-t61p 2.6.28-11-server #42-Ubuntu SMP Fri Apr 17 02:48:10 UTC 2009 i686 GNU/Linux

    You should see server in the name of the kernel.

    $ "free" should display 4GB
    total used free shared buffers cached
    Mem: 4052856 3753792 299064 0 361160 1476888
    -/+ buffers/cache: 1915744 2137112
    Swap: 6225176 130556 6094620


Post a Comment