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.
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 |
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.
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.
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.
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.
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.
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.
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.
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.