2.1. Supported Hardware

Ubuntu does not impose hardware requirements beyond the requirements of the Linux kernel and the GNU tool-sets. Therefore, any architecture or platform to which the Linux kernel, libc, gcc, etc. have been ported, and for which an Ubuntu port exists, can run Ubuntu.

Rather than attempting to describe all the different hardware configurations which are supported for 64-bit PC, this section contains general information and pointers to where additional information can be found.

2.1.1. Supported Architectures

Ubuntu 20.04 supports six major architectures and several variations of each architecture known as flavors. One other architecture (IBM/Motorola PowerPC) has an unofficial port.

Architecture Ubuntu Designation Subarchitecture Flavor
Intel x86-based i386    
AMD64 & Intel 64 amd64    
ARM with hardware FPU armhf multiplatform generic
multiplatform for LPAE-capable systems generic-lpae
64bit ARM arm64    
IBM POWER Systems ppc64el IBM POWER8 and newer machines  
IBM z/Architecture amd64 IBM Z and IBM LinuxONE, no s390 (31-bit mode) support zEC12 and newer machines

2.1.2. CPU Support

Both AMD64 and Intel 64 processors are supported.

2.1.3. Laptops

From a technical point of view, laptops are normal PCs, so all information regarding PC systems applies to laptops as well. Installations on laptops nowadays usually work out of the box, including things like automatically suspending the system on closing the lid and laptop specfic hardware buttons like those for disabling the wifi interfaces (airplane mode). Nonetheless sometimes the hardware vendors use specialized or proprietary hardware for some laptop-specific functions which might not be supported. To see if your particular laptop works well with GNU/Linux, see for example the Linux Laptop pages.

2.1.4. Multiple Processors

Multiprocessor support — also called symmetric multiprocessing or SMP — is available for this architecture. The standard Ubuntu 20.04 kernel image has been compiled with SMP-alternatives support. This means that the kernel will detect the number of processors (or processor cores) and will automatically deactivate SMP on uniprocessor systems.

Having multiple processors in a computer was originally only an issue for high-end server systems but has become common in recent years nearly everywhere with the introduction of so called multi-core processors. These contain two or more processor units, called cores, in one physical chip.

2.1.5. Graphics Hardware Support

Ubuntu's support for graphical interfaces is determined by the underlying support found in X.Org's X11 system, and the kernel. Basic framebuffer graphics is provided by the kernel, whilst desktop environments use X11. Whether advanced graphics card features such as 3D-hardware acceleration or hardware-accelerated video are available, depends on the actual graphics hardware used in the system and in some cases on the installation of additional firmware images (see Section 2.2, “Devices Requiring Firmware”).

On modern PCs, having a graphical display usually works out of the box. In very few cases there have been reports about hardware on which installation of additional graphics card firmware was required even for basic graphics support, but these have been rare exceptions. For quite a lot of hardware, 3D acceleration also works well out of the box, but there is still some hardware that needs binary blobs to work well.

Details on supported graphics hardware and pointing devices can be found at http://xorg.freedesktop.org/. Ubuntu 20.04 ships with X.Org version 7.7.

2.1.6. Network Connectivity Hardware

Almost any network interface card (NIC) supported by the Linux kernel should also be supported by the installation system; drivers should normally be loaded automatically. This includes most PCI/PCI-Express cards as well as PCMCIA/Express Cards on laptops.

ISDN is supported, but not during the installation.

2.1.6.1. Wireless Network Cards

Wireless networking is in general supported as well and a growing number of wireless adapters are supported by the official Linux kernel, although many of them do require firmware to be loaded.

If firmware is needed, the installer will prompt you to load firmware. See Section 6.4, “Loading Missing Firmware” for detailed information on how to load firmware during the installation.

Wireless NICs that are not supported by the official Linux kernel can generally be made to work under Ubuntu, but are not supported during the installation.

If there is a problem with wireless and there is no other NIC you can use during the installation, it is still possible to install Ubuntu using a full CD-ROM or DVD image. Select the option to not configure a network and install using only the packages available from the CD/DVD. You can then install the driver and firmware you need after the installation is completed (after the reboot) and configure your network manually.

In some cases the driver you need may not be available as an Ubuntu package. You will then have to look if there is source code available in the internet and compile the driver yourself. How to do this is outside the scope of this manual. If no Linux driver is available, your last resort is to use the ndiswrapper package, which allows you to use a Windows driver.

2.1.7. Braille Displays

Support for braille displays is determined by the underlying support found in brltty. Most displays work under brltty, connected via either a serial port, USB or bluetooth. Details on supported braille devices can be found on the brltty website. Ubuntu 20.04 ships with brltty version 5.3.1.

2.1.8. Hardware Speech Synthesis

Support for hardware speech synthesis devices is determined by the underlying support found in speakup. speakup only supports integrated boards and external devices connected to a serial port (no USB, serial-to-USB or PCI adapters are supported). Details on supported hardware speech synthesis devices can be found on the speakup website. Ubuntu 20.04 ships with speakup version 3.1.6.

2.1.9. Peripherals and Other Hardware

Linux supports a large variety of hardware devices such as mice, printers, scanners, PCMCIA/CardBus/ExpressCard and USB devices. However, most of these devices are not required while installing the system.

USB hardware generally works fine. On some very old PC systems some USB keyboards may require additional configuration (see Section 3.7.5, “Hardware Issues to Watch Out For”). On modern PCs, USB keyboards and mice work without requiring any specific configuration.