The Ubuntu Server distribution is designed for a system that not only doesn't need a GUI, but is headless. Though that sounds like something in a horror movie, you often find these types of servers in modern server rooms. A headless system is simply a computer without a directly attached monitor. A sysadmin connects to the computer through the network to reach its text‐based command‐line interface.
Before jumping into a Linux installation, it's wise to review what is needed to make the project successful. We're assuming that you already have your customer's requirements in hand and now need to determine what is required for an Ubuntu installation on a physical or virtualized server.
UNDERSTANDING BASIC VIRTUALIZATION TERMS
If you're unfamiliar with virtualization computer terms, it's a good idea to read through the first several pages of Chapter 22, “Exploring the Virtualization Environment.” But here are a few basic definitions to get you started:
Virtual machine (VM)—A computer system that appears and acts as a physical computer server to its users and operating system but is actually a grouping of files and programs managed by a hypervisor
Hypervisor—Software application used to create and manage virtual machines
Host machine—The physical server on which the hypervisor and its virtual machines run
In the next few sections, we'll look at the hardware requirements needed for installing the Ubuntu server distribution directly on a physical server and for installing it within a virtualized environment.
Hardware Requirements
If you plan on installing the Ubuntu Server 20.04LTS distribution directly on a headless server, your computer must support a 64‐bit processor architecture. Any of the following will work fine:
AMD amd64
ARM arm64
IBM Z s390x
Intel amd64
LinuxONE s390x
POWER8 or 9 ppc64el
Besides having the proper processor on your system, you need to have enough resources available to avoid a sluggish system. Table 2.1 shows the recommended resources to support a well‐running Ubuntu Server distro.
TABLE 2.1: Recommended Server Resources for Ubuntu Server Distribution
RESOURCE | MINIMUM | RECOMMENDED |
---|---|---|
CPU | 1 GHz | 1 or more GHz |
Memory | 1 GB | 2 or more GB |
Disk space | 2.5 GB | 10 or more GB |
Keep in mind that these recommendations are only for the operating system. Increase these resources to meet the needs of the application(s) you will run on the server.
Not everyone has access to a physical server. But you can set up a virtual environment on a laptop or some old desktop you have stuffed away in your closet. Using a virtualized system on your daily laptop provides a great deal of flexibility. You can learn about Linux while sitting in the park!
Virtual Server Requirements
If you plan on running the Ubuntu Server distribution as a virtual machine, you need to ensure that the host machine's operating system is supported by the hypervisor.
For this book, we're focusing on the Oracle VirtualBox hypervisor software. Here are a few of the operating systems on which it can run:
Windows 8.1
Windows 10
macOS High Sierra
Ubuntu 18.04LTS
This list is always evolving. It's a good idea to visit the Oracle VirtualBox manual website, virtualbox.org/manual, and view the currently supported host operating systems.
Running a virtualized environment will increased the needed resources on your system. You need to make sure that the host machine can handle not only the hypervisor but the Ubuntu Server VM as well. Table 2.2 lists the recommended host machine resources for a virtualized Ubuntu Server system.
TABLE 2.2: Recommended Host Machine Resources for an Ubuntu Server VM
RESOURCE | MINIMUM | RECOMMENDED |
---|---|---|
CPU | 2 GHz dual core | 2 GHz dual core |
Memory | 4 GB | 16 or more GB |
Free disk space | 25 GB | 30 or more GB |
These recommendations assume you are running only one VM at a time. You need more resources on your system if you plan on running multiple VMs at the same time or run a VM along with several other apps. Keep in mind that these resource recommendations are guidelines. They are not rules, so you may need a little more or a little less.
After you have your host system properly outfitted with resources, it's time to start downloading software. We'll cover those steps in the next section.
Finding the Software
After you determine that you have the appropriate resources but before you start the installation process, you need to have the proper software. You need to make sure that you get the correct version and type. For the larger software files, it's also critical to verify that no corruption has occurred when the software was downloaded. If you have a corrupt software file, you'll end up needlessly wasting your time.
Oracle VirtualBox
We recommend that you use Oracle VirtualBox as the hypervisor on your system. You can download the latest version of this software from virtualbox.org.
It is important that you get the correct platform package of VirtualBox. You'll see a list of potential host systems on the VirtualBox website, such as the following:
Windows
macOS
Linux
Make sure to select the VirtualBox package for the system on which the Ubuntu Server virtual machine will be running. Often people make