Installing a server is not always the same process as installing a desktop. In this guide, I hope to cover all the basic steps for complete beginners, with some helpful hints and tips along the way. This guide is also available as a freely downloadable ebook (coming soon!)
Let’s get started!
Please note: This article is still a work in progress. I still need to provide disk layouts :) Thank you for reading.
About this release:
Ubuntu 12.04 LTS Server edition is the latest Long-Term Support release from the Ubuntu Community. What this means is bug and security updates should be available for a longer period than standard Ubuntu releases, which are released every 6 months. This makes 12.04 LTS especially well suited for deployment as a server, because servers in a production environment are generally long-life, and require bug and security fixes as new exploits are found.
Please note, this guide is written based on the x86_64 release.
The installer is simple and clean, but lacks some of the functionality that Ananconda (Fedora, Red Hat, CentOS, Scientific Linux) offers, such as the graphical installation option. I find the text-only graphic installation of Ubuntu Server to be adequate, but it’s not as inviting as other distros.
Time To Install:
This will vary depending on your particular hardware or virtual setup, but should clock in at well under 1 hour.
Everything looks and feels like your standard headless server. System boot is very snappy in my virtual machine.
Disk footprint is as follows for a basic system after minimal (default) install: / 1.1G /boot 46M
Memory footprint after minimal install: 218mb.
Firewall: iptables is installed, however no default rules are set. This is in common with Debian, but differs from Red Hat. Also, Ubuntu seems to be pushing it’s own brand of firewall called “Uncomplicated FireWall” or ufw, which is a service/program that can be called with the same acronym, but is not enabled by default. Ubuntu Uncomplicated Firewall
Once your’re finished, head on over to Ubuntu 12.04 Web Server to check out how to setup a basic web server.
Insert the installation media (typically a DVD) and boot your system.
Ensure that you elect to boot from the DVD. This can be achieved by selecting the appropriate key-combination during system boot up, or choosing dvd/cd drive as the primary bootable device in your system’s BIOS. These selections will vary depending on your hardware manufacturer.
Choose your language.
Select “Install Ubuntu Server”
Select your language again, your Country / Territory, and keyboard layout. The simplest choice for each is the default option.
Network settings. After a minute or two, all the necessary components to continue installation will have been loaded. By default, network settings will be detected automatically using DHCP. Otherwise, you will have to enter the appropriate network settings based on your network.
Enter your hostname.
In many production environments, hostnames are comprised of the following items: Organization Name, Application/Role, Location, and an identifying number. If this is your Web server, located in LA, you might try something like: la-web01.mysite.com
Full name for the new user. This step is self explanatory, however you can put whatever you like in this field. In a large environment, this can be important for helping to manage user and administrative accounts. I typically just put the username in this field for my test systems.
Select whether or not you want to encrypt your home directory.
This selection is useful for laptops or other portable computing devices, but should not be necessary if your server is located in a secure datacenter.
Configure the timezone. If your system has a network connection, this should be set up automatically; if not, enter the correct timezone information.
This step is very critical if you have existing data on this drive, and you are attempting to dual boot your system. This guide does not account for such a scenario, and assumes that you’re installing Ubuntu to a brand new hard drive or system.
Partitioning the disks. It is important to plan ahead here; in 1 or 2 years, what do you think your disk usage will look like? Please see my suggested layouts below. If you feel completely lost here, feel free to select one of the Guided options, as all of my recommendations will use the manual layout without encryption.
Step 10a: Basic Server –
Our basic server is something that won’t be facing the public internet. Typically, this server is only going to be accessed by privileged users and administrators to perform maintenance tasks. Some examples would be: A small internal DNS server, a bastion server, intranet website serving mostly static content, a testing server for application development.
Step 10b: Web Server –
Our Web Server is facing the internet. We want to do a lot of logging, serve a lot of dynamic content, but restrict which persons may actually log into this server.
Step 10c: DB Server -
Our DB server will have minimal connections, moderate logging, and very restricted user access.
Step 10d: File Server –
Trusted users and administrators store and access files here. Logging is moderate, there is no connection to the internet, and file storage is our top priority.
The system will begin the installation process. During this process, the system will now ask for network proxy information. If you are using a proxy server, enter the information here, otherwise, leave it blank and press enter to continue.
Next, the system will prompt you if you want to enable automatic updates. I suggest selecting “No automatic updates.”
This will allow you to update your system on your own schedule, but does require you to monitor important security release so you can apply your updates in a timely fashion. Applying updates may have unintended consequences and break existing applications, thus full system backups are recommended before applying any updates, if possible.
Package / Software selection. If you’re installing just for fun, feel free to select any and all applications that suite your needs.
I am a server-minimalist, and only believing in installing what is absolutely necessary. If this is going to be a production server, I recommend installing no additional packages, and installing only those packages you specifically need for your application using the apt-get command at a later date.
You are next prompted with the option to install the GRUB bootloader onto the hard disk. Specifically, “Install the GRUB boot loader to the master boot record?” Select “YES.”
The master boot record, or MBR, is the first 512 bytes of the of a system’s primary hard disk, and instructs the system’s BIOS how to load the operating system.
GRUB will finish installing, and you will be prompted to finish the installation. At this point, everything is already written to the disk, so you might as well select yes!
If everything went well, you should be at the login screen. Congratulations! Check out this page to set up a basic web server.
You can skip to the end and leave a response. Pinging is currently not allowed.