How to install Ubuntu on low memory systems (Pentium III and earlier machines, with 32-192 MB RAM).
This documentation should be further reviewed for Ubuntu 10.04.
See proposed blueprint: https://blueprints.launchpad.net/ubuntu/+spec/low-memory-install
Installing Ubuntu on any system requires at least 32 MB of memory: The text-based installer included with the alternate (install) CDs needs that much space to run reliably. Smaller memory configurations run into problems, and while not impossible, it can be very difficult to complete an installation with less than the minimum RAM requirement.
Depending on the hardware requirements, you can expect a sparse Ubuntu system to boot to a graphical desktop on anywhere from 19 MB to 54 MB. That requirement will fluctuate with the system demands, and increase while the system is active. Swap space is crucial to low-memory machines, so don't be stingy when setting up your system.
There is no practical speed requirement, although of course a slower processor will take more time to finish installing. If you decide to install Ubuntu on a legacy machine, be patient. There will come times when you think the machine has stopped or is hung, when in fact it's still moving, albeit at a very slow rate. If in doubt, let it run during the night.
Disk Space Requirements
Disk space on an absolutely minimal installation can be reduced to as little as 600 MB. A fresh and clean command-line system generally takes only 450 MB, although there will be minor variations on account of hardware differences. A full system with graphic user interface takes 2-3 GB.
If you have only 64 MB of memory, you will need to reserve more disk space for swap.
Other Hardware Considerations
These instructions assume you will have a working Internet connection and access to the universe and multiverse repositories. Configuring your hardware is not included on this page.
If you do not have an internet connection, have a look at the wonderful package APTonCD to prepare your offline installation.
Install an Ubuntu command-line system
If you have a fast computer available, you may want to test the install in a virtual machine before to run the real install.
It is the right thing to do in case the other computer does not have internet access.
Have a look at VirtualBox or VMware for running a VM: configure the VM with same hardware as the target machine.
If the target PC has no internet access, you may want to prepare an AptOnCD iso before continuing.
The command-line version of Ubuntu is a sparse system, without any graphical elements. It's a text-only version of what lies underneath all the advanced graphical elements. It's also the starting point for a minimal installation.
To install a base system, boot from any Alternate CD and choose "Install a command-line system." It is exactly the same command-line system on Kubuntu/Xubuntu/Ubuntu Alternate CDs.
Follow the on-screen instructions to complete installation.
Note: the Server Install CD provides a simple command line system, but it is not the same as "install a command-line system"
only on the "server install": linux-server kernel and modules
only on the "command-line install": linux-generic kernel, modules and restricted modules + acpi, acpid and language-pack-en
The recommended install for low memory system is the command-line system.
you may wish to also try the MinimalCD as a base starting point
Tips and tricks
see bug #202959 for Ubuntu 8.04 LTS on systems with low memory (64 MB)
after installation you may want to blacklist some restricted modules: (if you want to save some memory)
DISABLED_MODULES="ath_hal fc fglrx fwlanusb ltm nv"
if you do not use hibernation, comment or delete /etc/initramfs-tools/conf.d/resume then execute sudo update-initramfs -u
if you do not have a laptop, you may consider removing acpi and acpid by executing sudo apt-get remove acpi acpid
if you do not need extra languages you may consider removing language-pack-en and language-pack-en-base
Once the server install is complete, you will probably want to edit your sources.list file.
sudo nano /etc/apt/sources.list
Uncomment all official repositories by removing # at the beginning of the line. Do not uncomment the narrative portions of that file; in other words, where you see a double hash mark (##) leave those lines alone.
If you prepared a CD-ROM with additional packages (APTonCD):
execute sudo apt-cdrom in a console
- put the CD-ROM in the disc tray
Update and Upgrade Your System
Now you should update your system. Return to the command line and type
sudo apt-get update
It's probably also a good idea to upgrade your system at this point. Use this command to upgrade your system
sudo apt-get upgrade
sudo apt-get clean
to get as much hard drive space free as possible.
Now you should be ready to install a window manager and some programs.
Ideas of packages
localepurge: to purge unneeded translations
readahead: to accelerate boot sequence
some command line utilities: htop, hwinfo, lftp
Preparing for Graphical Environment
The absolute minimum for any graphical environment is X.org
On Ubuntu Dapper (6.06), use the command:
sudo apt-get install x-window-system-core
On Ubuntu Hardy (8.04) and later releases, use the command:
sudo apt-get install xorg
This package gives you the framework for an X session, complete with a variety of drivers and configuration files. Installing xorg (or x-window-system-core) also triggers the self-configuration sequence, so when it finishes, your hardware should be ready to use, barring any errors or incompatibilities.
It's important to note that installing xorg or x-window-system-core really doesn't leave you with much. You can start X at this point with this command:
but without a window manager and some software, you probably won't get much done.
Adding a Window Manager
A window manager controls the placement and appearance of windows within a graphical user interface.
There are many lightweight window managers that will give you better access to your system through the X layer. Each one has its own way of managing the desktop, and its own way of configuring themes and menus.
Openbox is one of the lightest, fastest window managers available, but can take some time to configure and set up. It has its origins in Blackbox, but newer versions are complete rewrites of the Blackbox code.
Install Openbox with this command:
sudo apt-get install openbox obconf openbox-themes
These packages and their dependencies will allow you to build and configure an Openbox system, along with a choice of themes and some configuration options.
Entering obconf in an X terminal window should now trigger the obconf dialogue.
IceWM has a very strong following as a good, clean, fast window manager that resembles a conventional "desktop" in many ways. Among many of its perks are themes that resemble the Windows XP desktop theme -- which may be appealing to you.
Install IceWM with this command:
sudo apt-get install icewm iceconf icepref iceme icewm-themes
When finished, you will have a number of configuration and menu options. You can start IceWM with the startx command.
Fluxbox is a beautiful, highly configurable desktop system that is easy on system resources without compromising on graphical appeal. Fluxbox is the default window manager for a number of Linux distributions, probably most notable among them being Damn Small Linux.
Install Fluxbox with this command:
sudo apt-get install fluxbox fluxconf
Once installed, you can start Fluxbox with the startx command. Remember, if you enjoy working with Fluxbox, you should consider Fluxbuntu as an option.
FVWM-Crystal is a complete set of configuration scripts which sit atop of FVWM. FVWM-Crystal has support for integrated access to music players, terminal emulators and system monitors. It boasts some of the finest eye candy available to low-end machines, and is a snap to install.
For more information about building an FVWM-Crystal desktop, check out the FVWM-Crystal page.
XFCE is heavier than any of the systems mentioned so far, but has some added functions as a result. You can try XFCE alone if you like, but if you're keen on an XFCE installation, look into Xubuntu as an option.
Install XFCE alone, without Xubuntu, with this command:
sudo apt-get install xfce4
If you want the entire Xubuntu package, which includes a full suite of software and a lot of improvements, try this command:
sudo apt-get install xubuntu-desktop
That will download quite a large amount of packages; you may want to consider installing Xubuntu fresh, from the installation ISO.
Note: Xubuntu will use more system resources and may not be optimal for a low memory system with limited disk space, but it is lighter than a standard Ubuntu system.
LXDE (Lightweight X11 Desktop Environment) which as the name suggests, is a lightweight, low power desktop environment which relies on X11. It is a nice balance between good performance and beauty. More info can be found on the LXDE Ubuntu Wiki page. See also Lubuntu Ubuntu Wiki page. LXDE is available in the standard repos for Intrepid (8.10) through to Lucid (11.04).
To install the base LXDE system (which includes the basics - ideal for customisation):
sudo apt-get install lxde
The LXDE package includes everything you need for a basic desktop setup (but you need to also install x11). It includes the basic LXDE desktop, PCManFM (file manager), LXTerm (terminal), LeafPad (text editor) and some other suitable packages. Noticable omissions are a Web Browser, network manager and Login manager (note LXDM is included in Lucid repo - see below).
Now that the graphical window manager is set up, it's time to add some necessary and recommended packages. These will add additional functionality and make using the system easier. Additionally, adding a graphical package manager will provide an easy method to manage installed applications and packages.
Login managers will assist in choosing a graphical environment and will not require the user to start x.org to get into the window manager.
It's important to note that it's not necessary to use a login manager. If you're willing to log in at the command line and start X manually, you can save yourself a lot of system resources -- and the time it takes to load them. That can be a more appealing option on older machines.
GDM is the Ubuntu default for a login manager. However, GDM has a reputation of being a heavyweight, and on a system that needs as little bulk as possible, you might find it to be a burden. If you've got a decent system, install it using:
sudo apt-get install gdm
KDM is another manager, but has the same heavy reputation as GDM.
sudo apt-get install kdm
XDM is the login manager for straight X, and while less beautiful than GDM or KDM, it can perform in the same role without fuss.
sudo apt-get install xdm
SLiM is a simple login manager. It just works as expected.
sudo apt-get install slim
If the LANG environment variable is not correctly set, see bug #234474.
LXDM is a light simple login manager designed to fit with LXDE, available in repos from Lucid (10.04) onwards.
sudo apt-get install lxdm
Now that your system is up and running, it would be a good idea to add an internet browser to surf the web and get some use out of the machine!
Web browsers come in many flavors, and the most prevalent -- Firefox -- can be laggy on low-memory or slow systems. Even the GNU version of Firefox, Iceweasel can be a bit heavy on older machines. If you've got at least 128 MB of memory, Firefox should work just fine.
sudo apt-get install firefox
While not nearly as full-featured as Firefox, Dillo has the advantages of a very small footprint and few resource requirements.
sudo apt-get install dillo
sudo apt-get install epiphany-webkit
Many lightweight desktop systems use iDesk as a way of including customized, clickable icons directly on the desktop. iDesk is maintained in the Ubuntu repositories, and is installable from the command line with:
sudo apt-get install idesk
Consult the iDesk wiki for instructions on how to configure and use iDesk. For icon sets, you may wish to search the repositories, or download them from third-party customization sites, such as Gnome-Look.org and similar locations.
Lightweight systems have a number of options available for graphical file management. Thunar is the default file manager in Xubuntu and many XFCE-based systems; it is installable alone with this command:
sudo apt-get install thunar
XFE is an even lighter file manager, intended to mimic the Windows Explorer interface. It has very few dependencies and is very fast.
sudo apt-get install xfe
ROX-Filer is another file management program, which makes extensive use of drag-and-drop principles. It does appear to have a large number of dependencies however, which means installing it may entail more external packages than you wish. Install ROX-Filer with this command:
sudo apt-get install rox-filer
Nautilus is the default file manager for Ubuntu. It requires some more resources, but it has a lot of useful features. It can manage your desktop, show a wallpaper and desktop icons, which are automatically created for new devices (e.g. USB flash drives). Install Nautilus using this command:
sudo apt-get install nautilus
To use it together with a window manager, execute the following command or add it to your autostart script. For example, use $HOME/.icewm/startup for IceWM.
nautilus --no-default-window &
PCManFM is a fast and efficient file manager. Its the default file manager installed with LXDE and is available from the repos for all currently supported Ubuntu versions (except for Dapper/6.06). Install it with this command:
sudo apt-get install pcmanfm
Some other popular file managers include
and Dolphin, which is a file manager aimed at KDE and Kubuntu.
There are many others. Some are available through the repositories; others will require you to download and install them through another source. Experiment with different file managers to see which ones appeal to you.
Add a graphical package manager to install, remove and upgrade software packages and to add repositories without using the command line. Synaptic package manager is the standard and can be installed with this command:
sudo apt-get install synaptic
Another good package manager, which uses ncurses, is Aptitude. It is light and fast, with lots of features:
sudo apt-get install aptitude
You can use the package manager to add a word processor, such as Abiword, and other productivity software.
See also Low End System Support for additional packages ideas.
Install an entire lightweight system
Building on the ideas above, here are some complete graphical systems, installable through a single command line. Feel free to mix and match between these options.
Remember: If you are using Dapper, replace "xorg" with "x-window-system-core"
- IceWM as a window manager, plus GDM, Firefox, Abiword and the Synaptic package manager:
sudo apt-get install gdm xorg xterm icewm menu mozilla-firefox abiword synaptic
- XFCE and Firefox, with Synaptic package manager and KDM as the login manager:
sudo apt-get install kdm xorg xfce4 firefox synaptic
- Fluxbox with Dillo, and XDM as a login manager:
sudo apt-get install fluxbox xorg xdm dillo
- Openbox with no login manager, XFE as the file manager and xfce4-terminal as an X terminal, as well as Openbox themes and the Tango icon set:
sudo apt-get install openbox obconf openbox-themes xfe xfce4-terminal tango-icon-theme-extras xorg
Remember to check the repositories for more ideas on software and applications!
Low Configuration Option
For a minimalistic system that does not require as much configuration, you can install the alternate window managers after installing a full K/X/Ubuntu system, thus preinstalling much of the required software but keeping the speed. However, installing a full system does require more system resources.
Minimal Desktop for Ubuntu, a project to create a slim install script based on GNOME/GDM or KDE/KDM. Not necessarily the lightest install, but probably the most user-friendly. Also automatically installs the user's choice of browser, IM client, media player, e-mail client, and office suite. Support for Fluxbox is in progress.
FluxBuntu: An Ubuntu variant with Fluxbox as the default window manager. An excellent place to start for a Fluxbox-based system.
U-Lite: A project to build a stripped-down version of Ubuntu aimed at low-end machines.
Cubuntu is not a graphical system; Cubuntu is a full-featured command line system, suitable for computers that can't handle any of the above options -- such as early Pentium or perhaps even 486-grade machines with as little as 16 MB RAM. And don't be skeptical: Even without a graphic environment, a computer can perform a lot more tasks than you would expect.
Enlightenment is another window manager, but it is still in development and requires additional steps to install. However, it is very lightweight and functional.
gOS is an operating system based on Ubuntu, uses a customized version of Enlightenment as its window manager, and is able to run on some older systems.
Debian is head of the gnu&linux family that includes Ubuntu. It has a reputation for being very much lighter-weight but not as extreme as sliTaz! Their development branch might be akin to our alpha/beta releases and their stable branch similar to our LTS releases.
DistroWatch is the most fully comprehensive list of different versions of linux. However unique your set-up the chances are there is a distro to suit your requirements
Lubuntu is a faster, more lightweight and energy saving variant of Ubuntu using LXDE, the Lightweight X11 Desktop Environment. The lubuntu team aims to earn official endorsement from Canonical.