Ubuntu Server Guide

Changes, errors and bugs

This is the current edition for Ubuntu 20.04 LTS, Focal Fossa. Ubuntu serverguides for previous LTS versions: 18.04 (PDF), 16.04 (PDF).

If you find any errors or have suggestions for improvements to pages, please use the link at the bottom of each topic titled: “Help improve this document in the forum.” This link will take you to the Server Discourse forum for the specific page you are viewing. There you can share your comments or let us know about bugs with each page.


Download this guide as a PDF


There are a couple of different ways that Ubuntu Server Edition is supported: commercial support and community support. The main commercial support (and development funding) is available from Canonical, Ltd. They supply reasonably- priced support contracts on a per desktop or per server basis. For more information see the Ubuntu Advantage page.

Community support is also provided by dedicated individuals and companies that wish to make Ubuntu the best distribution possible. Support is provided through multiple mailing lists, IRC channels, forums, blogs, wikis, etc. The large amount of information available can be overwhelming, but a good search engine query can usually provide an answer to your questions. See the Ubuntu Support page for more information.


Getting started








Ubuntu High Availability






Mapping table
Topic Path
Introduction /server/docs/introduction
Installation /server/docs/installation
Installation - Advanced /server/docs/installation-advanced
Installation - iSCSI /server/docs/installation-iscsi
Package Management /server/docs/package-management
Kernel Crash Dump /server/docs/kernel-crash-dump
Reporting Bugs in Ubuntu Server /server/docs/reporting-bugs
Upgrade - Introduction /server/docs/upgrade-introduction
Device Mapper Multipathing - Introduction /server/docs/device-mapper-multipathing-introduction
Device Mapper Multipathing - Configuration /server/docs/device-mapper-multipathing-configuration
Device Mapper Multipathing - Setup /server/docs/device-mapper-multipathing-setup
Device Mapper Multipathing - Usage & Debug /server/docs/device-mapper-multipathing-usage-debug
Network - Introduction /server/docs/network-introduction
Network - Configuration /server/docs/network-configuration
Network - DHCP /server/docs/network-dhcp
Network - NTP /server/docs/network-ntp
Network - DPDK /server/docs/network-dpdk
OpenVswitch-DPDK /server/docs/openvswitch-dpdk
Security - Introduction /server/docs/security-introduction
Security - Users /server/docs/security-users
Security - AppArmor /server/docs/security-apparmor
Security - Firewall /server/docs/security-firewall
Security - Certificates /server/docs/security-certificates
Security - Console /server/docs/security-console
Security - eCryptfs /server/docs/security-ecryptfs
Virtualization - Introduction /server/docs/virtualization-introduction
Virtualization - multipass /server/docs/virtualization-multipass
Virtualization - qemu /server/docs/virtualization-qemu
Virtualization - libvirt /server/docs/virtualization-libvirt
Virtualization - uvt /server/docs/virtualization-uvt
Virt Tools /server/docs/virtualization-virt-tools
Containers - lxd /server/docs/containers-lxd
Containers - lxc /server/docs/containers-lxc
Databases - Introduction /server/docs/databases-introduction
Databases - Mysql /server/docs/databases-mysql
Databases - PostgreSQL /server/docs/databases-postgresql
Samba - Active Directory /server/docs/samba-active-directory
Samba - Domain Controller /server/docs/samba-domain-controller
Samba - File Server /server/docs/samba-file-server
Samba - Introduction /server/docs/samba-introduction
Samba - Print Server /server/docs/samba-print-server
Samba - Securing /server/docs/samba-securing
Samba - OpenLDAP Backend /server/docs/samba-openldap-backend
Service - CUPS /server/docs/service-cups
Service - Domain Name Service (DNS) /server/docs/service-domain-name-service-dns
Service - FTP /server/docs/service-ftp /server/docs/service-introduction
Service - iSCSI /server/docs/service-iscsi
Service - Kerberos /server/docs/service-kerberos
Service - Kerberos with OpenLDAP backend /server/docs/service-kerberos-with-openldap-backend /server/docs/service-ldap /server/docs/service-ldap-access-control /server/docs/service-ldap-replication /server/docs/service-ldap-usage /server/docs/service-ldap-with-tls /server/docs/service-nfs /server/docs/service-openssh /server/docs/service-openvpn /server/docs/service-gitolite /server/docs/vpn-clients /server/docs/service-sssd /server/docs/chat-irc-server /server/docs/mail-dovecot /server/docs/mail-exim4 /server/docs/mail-introduction /server/docs/mail-mailman /server/docs/mail-postfix /server/docs/proxy-servers-squid /server/docs/web-servers-apache /server/docs/web-servers-apache-tomcat /server/docs/web-servers-introduction /server/docs/ubuntu-ha-introduction /server/docs/ubuntu-ha-pacemaker-resource-agents-supportability /server/docs/ubuntu-ha-pacemaker-fence-agents-supportability /server/docs/ubuntu-ha-drbd /server/docs/tools-byobu /server/docs/tools-etckeeper /server/docs/tools-munin /server/docs/tools-nagios /server/docs/pam-motd /server/docs/tools-puppet /server/docs/tools-zentyal /server/docs/monitoring-introduction /server/docs/tools-rsnapshot /server/docs/programming-php /server/docs/programming-ruby-on-rails /server/docs/backups-introduction /server/docs/backups-archive-rotation /server/docs/backups-bacula /server/docs/backups-shell-scripts /server/docs/workload-lamp /server/docs/lamp-applications /server/docs/install/general /server/docs/install/step-by-step /server/docs/install/storage /server/docs/install/autoinstall /server/docs/install/autoinstall-quickstart /server/docs/install/autoinstall-schema /server/docs/install/autoinstall-reference /server/docs/install/netboot-amd64 /server/docs/install/netboot-ppc64el /server/docs/install/autoinstall-quickstart-s390x /server/docs/install/reporting-problems /server/docs/install/ppc64el /server/docs/install/s390x-zvm /server/docs/install/s390x-lpar


Mapping table
Path Location

Now that is is being published, suggest to add a large font note at the very top saying “Preliminary and in development for 20.04, contents may have errors and omitions.” This is similar to what we have always done at the old location when we published the preliminary before the release date. The note gets removed on release day.

Done! Thanks for the suggestion

We have added a PDF download link to the introduction section of this document. This PDF is refreshed on a daily basis. If anyone would like to snapshot the guide at any stage, please download and rename the PDF for your own use.

The PDF version of the serverguide has not updated. It has been well over 24 hours since I made and edit. I want to determine is the file name for the PDF will change, because it is odd and looks machine generated. Currently it is linked from the base page where 20.04 preliminary has been added (but for some reason it didn’t publish last night, maybe tonight), but we won’t be able to do that if it changes.

I’ll add redirects to for lts and stable serverguides to the new spots tomorrow, which should publish sometime Thursday.

EDIT: O.K. I’ll make the PDF link at file name independent by using the same address as herein, instead of what it ends up as (duh).

fixed two more url mapping table entries.
I think I have tried every navigation link now, but am not certain.

Will add a navigation link back to this page, if I can figure it out.

Deleted the “Service - Introduction” topic as it was a filler page, “DNS TBD” was on there but that has an extra page now anyway. I also removed the link from the introduction to not fail on the removed page.

Some more cleanup of no more supported items around IRC and Mailman. Removed the pages and dropped the links from here. For Mailman I re-added links to the upstream setup guide with exim4/postfix on these pages.

Next I’ll re-order the index to keep introdcutions before the content. It doesn’t make sense otherwise and especially in the single-PDF that is generated it is awkward to read it in any other order.

Fixed another missing url entry in the mapping table.
This time I looked at the source code of a page (not that the actual page used matters) and searched for discourse, only finding the one expected reference. I also looked at the code manually.

I just added another page: Service - LDAP Access Control

I hope I did it correctly this time