Howto use more than 4 GB RAM on Debian etch

Nowadays, many servers are running with 2-4 gigabytes of RAM, and their owners are discovering a problem: When they run 32-bit debian Linux distribution, their extra RAM is not being used. Fortunately, correcting the problem is only a matter of installing or building a kernel with a few specific parameters enabled or disabled.

In Debian, use the apt-cache search command to locate a recent linux-image package for a kernel for a 686 processor if you want support for up to 4 gigabytes. If you want support for up to 64 gigabytes, look for a kernel that ends with 686-bigmem. These kernels will enable support for 64GB. Unfortunately, a generic kernel for only 4GB does not exist.

aptitude install linux-image-2.6-686-bigmem

That’s it now you need to reboot your system and you will be able to install up to 64GB of RAM to your system.

6 thoughts on “Howto use more than 4 GB RAM on Debian etch

  1. Hey, nice post, but you should to explain what’s that option in the kernel to change the memory support! 😉
    I know, but I think there are a lot of Debian’s admin that don’t.

  2. @Gullit

    Make sure that CONFIG_NOHIGHMEM is not set.

    Set either CONFIG_HIGHMEM4G or CONFIG_HIGHMEM64G to yes, using whichever one is appropriate for the RAM in your system. If you have Note that you should use the 4 gigabyte parameter for less than 4 gigabytes of RAM, and the 64 gigabyte parameter for 4 or more gigabytes (4 gigabytes of RAM, remember is actually slightly more than that).

    Set CONFIG_HIGHMEM to yes.

    Optionally, set CONFIG_DEBUG_HIGHMEM to yes if you want to log error messages. Since many generic kernels turn this option off, you can probably do without it, especially if you do not delete other kernels from your boot manager’s menu, so that you can still start your computer if your newly compiled kernel is unusable.

  3. Alternatively, if you have a CPU with support for 64 bit addressing (any AMD CPU with AMD64 or Intel with EMT64 support), you can install the 64 bit amd64 kernel. This should work on almost any new desktop CPU.

  4. Once i installed linux-image-2.6-686-bigmem .
    It stop showing my network card. ifup eth0 says no device found .
    what should i do to make it work .
    My kernel version is Debian GNU/Linux, kernel 2.6.18-4-686

Leave a comment

Your email address will not be published. Required fields are marked *