Prerequisites
Potential Pitfalls
Step 1 – Back Up Your System
Step 2 – Upgrade Currently Installed Packages
Step 3 – Use Ubuntu's do-release-upgrade Tool to Perform Upgrade
Conclusion
×
Sign up for our newsletter.
Get the latest tutorials on SysAdmin and open source topics.
Sign Up
Log In
Tutorials
Questions
Projects
Meetups
Main Site
DigitalOcean Community
Tutorials
Questions
Projects
Meetups
Sign Up
Log In
D3f0273e4e4eb87e1002b3653f30eb5ba32eedf8
Brennen Bearnes
Subscribe
Share
How To Upgrade to Ubuntu 16.04 LTS
How To Upgrade to Ubuntu 16.04 LTS
PostedApril 8, 2016 367k views System Tools DigitalOcean Ubuntu
Introduction
Warning: An earlier version of this guide included mention of Ubuntu 14.04 systems. While an upgrade from 14.04 may successfully complete, upgrades between LTS releases are not enabled by default until the first point release, and it is recommended to wait until the 16.04.1 point release to upgrade. On DigitalOcean systems, an upgraded Ubuntu 14.04 system will be left with an older kernel which may not be upgradeable for some time.
The Ubuntu operating system's next Long Term Support release, version 16.04 (Xenial Xerus), is due to be released on April 21, 2016.
Although it hasn't yet been released at the time of this writing, it's already possible to upgrade a 15.10 system to the development version of 16.04. This may be useful for testing both the upgrade process and the features of 16.04 itself in advance of the official release date.
This guide will explain the process for systems including (but not limited to) DigitalOcean Droplets running Ubuntu 15.10.
Warning: As with almost any upgrade between major releases of an operating system, this process carries an inherent risk of failure, data loss, or broken software configuration. Comprehensive backups and extensive testing are strongly advised.
Prerequisites
This guide assumes that you have a system running Ubuntu 15.10, configured with a non-root user with sudo privileges for administrative tasks.
Potential Pitfalls
Although many systems can be upgraded in place without incident, it is often safer and more predictable to migrate to a major new release by installing the distribution from scratch, configuring services with careful testing along the way, and migrating application or user data as a separate step.
You should never upgrade a production system without first testing all of your deployed software and services against the upgrade in a staging environment. Keep in mind that libraries, languages, and system services may have changed substantially. In Ubuntu 16.04, important changes since the preceding LTS release include a transition to the systemd init system in place of Upstart, an emphasis on Python 3 support, and PHP 7 in place of PHP 5.
Before upgrading, consider reading the Xenial Xerus Release Notes.
Step 1 – Back Up Your System
Before attempting a major upgrade on any system, you should make sure you won't lose data if the upgrade goes awry. The best way to accomplish this is to make a backup of your entire filesystem. Failing that, ensure that you have copies of user home directories, any custom configuration files, and data stored by services such as relational databases.
On a DigitalOcean Droplet, the easiest approach is to power down the system and take a snapshot (powering down ensures that the filesystem will be more consistent). See How To Use DigitalOcean Snapshots to Automatically Backup your Droplets for more details on the snapshot process. When you have verified that the update was successful, you can delete the snapshot so that you will no longer be charged for it.
For backup methods which will work on most Ubuntu systems, see How To Choose an Effective Backup Strategy for your VPS.
Step 2 – Upgrade Currently Installed Packages
Before beginning the release upgrade, it's safest to install the latest versions of all packages for the current release. Begin by updating the package list:
sudo apt-get update
Next, upgrade installed packages to their latest available versions:
sudo apt-get upgrade
You will be shown a list of upgrades, and prompted to continue. Answer y for yes and press Enter.
This process may take some time. Once it finishes, use the dist-upgrade command, which will perform upgrades involving changing dependencies, adding or removing new packages as necessary. This will handle a set of upgrades which may have been held back by apt-get upgrade:
sudo apt-get dist-upgrade
Again, answer y when prompted to continue, and wait for upgrades to finish.
Now that you have an up-to-date installation of Ubuntu 15.10, you can use do-release-upgrade to upgrade to the 16.04 release.
Step 3 – Use Ubuntu's do-release-upgrade Tool to Perform Upgrade
First, make sure you have the update-manager-core package installed:
sudo apt-get install update-manager-core
Traditionally, Debian releases have been upgradeable by changing Apt's /etc/apt/sources.list, which specifies package repositories, and using apt-get dist-upgrade to perform the upgrade itself. Ubuntu is still a Debian-derived distribution, so this process would likely still work. Instead, however, we'll use do-release-upgrade, a tool provided by the Ubuntu project, which handles checking for a new release, updating sources.list, and a range of other tasks. This is the officially recommended upgrade path for server upgrades which must be performed over a remote connection.
Start by running do-release-upgrade with no options:
sudo do-release-upgrade
If Ubuntu 16.04 has not been released yet, you should see the following:
Sample Output
Checking for a new Ubuntu release
No new release found
In order to upgrade to 16.04 before its official release, specify the -d option in order to use the development release:
sudo do-release-upgrade -d
If you're connected to your system over SSH, as is likely with a DigitalOcean Droplet, you'll be asked whether you wish to continue.
On a Droplet, it's safe to upgrade over SSH. Although do-upgrade-release has not informed us of this, you can use the console available from the DigitalOcean Control Panel to connect to your Droplet without running SSH.
For virtual machines or managed servers hosted by other providers, you should keep in mind that losing SSH connectivity is a risk, particularly if you don't have another means of remotely connecting to the system's console. For other systems under your control, remember that it's safest to perform major operating system upgrades only when you have direct physical access to the machine.
At the prompt, type y and press Enter to continue:
Reading cache
Checking package manager
Continue running under SSH?
This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.
If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?
Continue [yN] y
Next, you'll be informed that do-release-upgrade is starting a new instance of sshd on port 1022:
Starting additional sshd
To make recovery in case of failure easier, an additional sshd will
be started on port '1022'. If anything goes wrong with the running
ssh you can still connect to the additional one.
If you run a firewall, you may need to temporarily open this port. As
this is potentially dangerous it's not done automatically. You can
open the port with e.g.:
'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT'
To continue please press [ENTER]
Press Enter. Next, you may be warned that a mirror entry was not found. On DigitalOcean systems, it is safe to ignore this warning and proceed with the upgrade, since a local mirror for 16.04 is in fact available. Enter y:
Updating repository information
No valid mirror found
While scanning your repository information no mirror entry for the
upgrade was found. This can happen if you run an internal mirror or
if the mirror information is out of date.
Do you want to rewrite your 'sources.list' file anyway? If you choose
'Yes' here it will update all 'trusty' to 'xenial' entries.
If you select 'No' the upgrade will cancel.
Continue [yN] y
Once new package lists have been downloaded and changes calculated, you'll be asked if you want to start the upgrade. Again, enter y to continue:
Do you want to start the upgrade?
6 installed packages are no longer supported by Canonical. You can
still get support from the community.
9 packages are going to be removed. 104 new packages are going to be
installed. 399 packages are going to be upgraded.
You have to download a total of 232 M. This download will take about
46 seconds with your connection.
Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.
Continue [yN] Details [d]y
New packages will now be retrieved, then unpacked and installed. Even if your system is on a fast connection, this will take a while.
During the installation, you may be presented with interactive dialogs for various questions. For example, you may be asked if you want to automatically restart services when required:
In this case, it is safe to answer "Yes". In other cases, you may be asked if you wish to replace a configuration file that you have modified with the default version from the package that is being installed. This is often a judgment call, and is likely to require knowledge about specific software that is outside the scope of this tutorial.
Once new packages have finished installing, you'll be asked whether you're ready to remove obsolete packages. On a stock system with no custom configuration, it should be safe to enter y here. On a system you have modified heavily, you may wish to enter d and inspect the list of packages to be removed, in case it includes anything you'll need to reinstall later.
Remove obsolete packages?
53 packages are going to be removed.
Continue [yN] Details [d]y
Finally, assuming all has gone well, you'll be informed that the upgrade is complete and a restart is required. Enter y to continue:
System upgrade is complete.
Restart required
To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.
Continue [yN] y
On an SSH session, you'll likely see something like the following:
=== Command detached from window (Thu Apr 7 13:13:33 2016) ===
=== Command terminated normally (Thu Apr 7 13:13:43 2016) ===
You may need to press a key here to exit to your local prompt, since your SSH session will have terminated on the server end. Wait a moment for your system to reboot, and reconnect. On login, you should be greeted by a message confirming that you're now on Xenial Xerus:
Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 4.4.0-17-generic x86_64)
Conclusion
You should now have a working Ubuntu 16.04 installation. From here, you likely need to investigate necessary configuration changes to services and deployed applications. In the coming weeks, we'll begin posting DigitalOcean guides specific to Ubuntu 16.04 on a wide range of topics.
D3f0273e4e4eb87e1002b3653f30eb5ba32eedf8
Brennen Bearnes
Subscribe
Share
Spin up an SSD cloud server in under a minute.
Simple setup. Full root access. Straightforward pricing.
Deploy Server
Related Tutorials
How To Configure OpenLDAP and Perform Administrative LDAP Tasks
How To Change Account Passwords on an OpenLDAP Server
Understanding the LDAP Protocol, Data Hierarchy, and Entry Components
How To Use LDIF Files to Make Changes to an OpenLDAP System
How To Manage and Use LDAP Servers with OpenLDAP Utilities
35 Comments
Log In to Comment
TenHourGuy April 9, 2016
I wouldn't recommend anyone uses 16.04 until it has been officially added to DigitalOcean and has been out for long enough for others to stumble into issues first.
However, I will give this a go regardless!
jsamuel April 11, 2016
If you're upgrading a server managed by ServerPilot, be sure to use the instructions here:
https://serverpilot.io/community/articl ... 16.04.html
TenHourGuy April 16, 2016
Looks pretty much the same to me.
Is there any reason in particular why it needs 1GB RAM to upgrade over on SeverPilot?
jsamuel April 16, 2016
ServerPilot doesn't need it but the MySQL 5.5 -> 5.7 upgrade that happens during the Ubuntu 14.04 -> 16.04 upgrade can use more memory than is available on a 512MB server. If you run out of memory, the kernel will kill MySQL and it can corrupt your databases. You can try with less than 1GB memory, just be sure you have backups.
lewiscowles May 31, 2016
also anyone using 5.6 or higher will likely experience the same as I'm pretty sure that is when the base memory requirement increased
cannona April 18, 2016
Upgrading left me with a readonly filesystem and an old kernel (3.13.0-79)
bpb April 18, 2016
Sorry to hear that. I'm not too surprised by breakage at this stage of the game (or with any upgrade between major releases—thus all the disclaimers heading this guide), but I haven't had any problems upgrading relatively stock systems so far.
Any details you could provide about your initial configuration or errors you saw in the course of the upgrade might be helpful to others.
Edit: Regarding the kernel, for DigitalOcean Droplets starting from 14.04, it looks like it may be necessary to do some extra work. I'm investigating and will update the tutorial accordingly.
cannona April 19, 2016
Here's what I saw during the install:
https://dpaste.de/nxqE
bpb April 19, 2016
Thanks for the detail.
On further investigation, it turns out that:
Although the upgrade from 14.04 may complete successfully (more or less), it's not an officially supported upgrade path until the first point release (16.04.01). I've updated the tutorial to reflect that this isn't a recommended approach.
Since 14.04 Droplets still have externally managed kernels, any upgraded systems will need to have their kernel updated from the Control Panel once one is available there.
ross1 April 22, 2016
My root partition mounted read only too. To fix, I ran:
blkid
to get the disk's new UUID, and then updated /etc/fstab with the new value:
cp /etc/fstab /run
vim /run/fstab
mount --no-mtab --fstab /run/fstab -o remount,rw /
cp /run/fstab /etc
reboot
I also had to manually install a few bits:
apt-get install libapache2-mod-php7.0 php7.0-mysql mysql-client-core-5.7 mysql-server-5.7
and futz with config files.
I tried booting the 4.4 kernel, but networking didn't load, so I reverted to the 3.3 kernel for now.
eris MOD April 24, 2016
Which version did you upgrade from? We've seen this issue when upgrading from some of our older images in the past.
I do recommend deploying a new droplet, however, so you don't need to use the kernel dropdown menu in the control panel anymore.
ross1 April 27, 2016
14.04, but the droplet may have started out as an earlier release.
If I deploy a new droplet, is there an easy way to migrate from my original droplet?
Thanks for your help.
goldmar July 22, 2016
As "somewheremylove" explains it here:
You need to change the network interface name in
/etc/network/interfaces
from eth0 to ens3 (confirm with ip addr show)
hhhhh August 13, 2016
don't normally bother logging in, but did so to upvote this, this should really be mentioned in the article as it left me without a network connection.
and the DO console is so slow compared to ssh in to fix other things
micwallace August 30, 2016
With the 16.04.01 release my network connection kept working although the names haven't updated, strange.
yaroslavmarkin August 23, 2016
Apparently, this is still happening with the 16.04.01 release (from 14.04).
Thank you so much for the instructions.
micwallace August 30, 2016
I had this issue too, thanks so much for your help. Not sure all the step are needed but I could be wrong.
I ran blkid to get the disk uuid then updated the entry in /etc/fstab then ran:
mount -n -o remount /
Rebooted and it was as good as new.
iamkingsleyf April 20, 2016
Which is the default DATABASE server for 16.04?
iamkingsleyf April 20, 2016
found it, mysql 5.7
lewiscowles May 31, 2016
Pro-tip. Start scripting your deploys, then fix scripts, and restores on new droplets...
robert6e6460a31 June 15, 2016
As mentioned, Ubuntu 16.04 uses MySQL 5.7. Unlike earlier versions of MySQL, 5.7 is set to "strict mode" by default. Strict mode may block some of your functions. The following link shows how to disable strict mode -
https://mattstauffer.co/blog/how-to-dis ... rge-ubuntu
tom593555 June 23, 2016
The Point Release is scheduled for July 21st, 2016. That might be helpful to add to the warning at the start of the tutorial.
Ravindran July 25, 2016
16.04.1 is released. But, 'sudo do-release-upgrade' command is still giving 'No new release found' message. Am afraid to switch to development release ('-d' option).
Is it something we have to wait for digitalocean needs to enable?
memfrob July 29, 2016
do-release-upgrade uses this page to find new versions:
http://changelogs.ubuntu.com/meta-release-lts
That page gets updated 1 week after release. Meaning that it got updated yesterday, 28th. You should be able to do-release-upgrade now.
This might also be worth mentioning in the article @bpb
Ravindran July 29, 2016
Thanks. Will try the upgrade now.
rebastion August 13, 2016
No dice with the upgrade. Problem a) mysql upgrade wasnt possible as I didnt know the credentials so had to skip that b) now left with a read-only file system as well, and the website is essentially unavailable. This upgrade process is bollocks. My droplet is a straight forward, unmodified one just running wordpress, upgrading the underlying OS to a newer version shouldn't really break anything IMO
maxpolk August 16, 2016
The way VPS often works is to pull a switcheroo on you between what kernel version your system expects versus what kernel version it gets from your VPS provider upon booting.
The do-release-upgrade will often setup the system for a kernel a few versions ahead of the latest kernel supported by DigitalOcean in the droplet kernel list of choices. Even if you choose the latest supported kernel for your droplet, it won't exactly match the software packages that do-release-upgrade installed. This caused iptables rule loading and therefore networking to fail, because they are very sensitive to the kernel version mismatches.
In my case it setup the system to be ready for linux-image-4.4.0-34-generic when DigitalOcean (at the moment) only supports at most linux-image-4.4.0-28-generic. That was enough for iptables to choke.
At this point I couldn't use the packaging system to install the right kernel (in order for the system to be compatible with the droplet kernel choice in the dashboard) a few versions back, because networking doesn't work with that kernel.
Bad chicken/egg problem, so ultimately I was able to use apt-get remove on the latest kernel (because it doesn't require a network connection to remove a package), leaving behind the old kernel from Ubuntu 1410, and then going to the DigitalOcean dashboard and choosing the exact same old kernel version from the droplet kernel list. Only then would networking work. At that point I was able to use the packaging system to install the exact kernel that matched the latest droplet kernel choice, and put a "hold" on that linux-image package so it won't accidentally advance to an incompatible kernel with the droplet kernel choice.
It may be possible (untested) to, instead of saying "yes" to reboot the system at the end of do-release-upgrade, run the package manager and pick the exact matching kernel to the newer DigitalOcean kernel list choice you made, prior to rebooting.
Manual steps I had to do:
shutdown didn't work after do-release-upgrade, had to hard power off from dashboard
eth0 is ens3 (dmesg | grep eth0 to discover the rename)
Mediawiki using fast cgi required manually selecting php-mysql and php-cgi
Don't install "linux-image" virtual package, install the precise version of linux-image-x.x.x... that matches your kernel dropdown choice in the DigitalOcean dashboard
The droplet kernel doesn't autoadvance on you, so naturally you must put a "hold" on the linux-image so it doesn't "autoadvance" either during normal package updating
General things about upgrading from older Ubuntu versions to Ubuntu 1604:
Naturally "service xyz start" changes to "systemctl start xyz"
If you still use some custom /etc/init.d scripts, might want to upgrade to systemd style instead
Nginx users might wish to use /etc/nginx/fastcgi.conf instead of fastcgiparams then you can remove fastcgiparam SCRIPT_FILENAME from your sites-available/* files
Nginx SSL users should turn gzip off
https://bugs.debian.org/cgi-bin/bugrepo ... bug=773332
Nginx SSL users might want to upgrade to more modern settings (select Nginx | Modern | enter versions of server and openssl)
https://mozilla.github.io/server-side-t ... generator/
SSL users now can get a free web cert for their domain
https://letsencrypt.org
trogvar22 August 23, 2016
Hi, I try to upgrade my server
use commands:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install update-manager-core
sudo do-release-upgrade -d
but always get error
Get:1
https://deb.nodesource.com xenial/main Translation-en
Err
https://deb.nodesource.com xenial/main Translation-en
Err
https://deb.nodesource.com xenial/main Translation-en
Err
https://deb.nodesource.com xenial/main Translation-en
Err
https://deb.nodesource.com xenial/main Translation-en
Ign
https://deb.nodesource.com xenial/main Translation-en
Fetched 0 B in 6s (22.1 MB/s)
Error during update
A problem occurred during the update. This is usually some sort of
network problem, please check your network connection and retry.
W:Failed to fetch
http://ppa.launchpad.net/fkrull/deadsna ... 4/Packages
404 Not Found
, W:Failed to fetch
http://ppa.launchpad.net/fkrull/deadsna ... 6/Packages
404 Not Found
, E:Some index files failed to download. They have been ignored, or
old ones used instead.
Restoring original system state
Aborting
Reading package lists... Done
Building dependency tree
Reading state information... Done
Building data structures... Done
=== Command terminated with exit status 1 (Tue Aug 23 13:13:41 2016) ===
Could someone help me?
trogvar22 August 23, 2016
Problem was in
http://ppa.launchpad.net/fkrull/deadsna ... 4/Packages
I comment repo, befor command was run , and system has upgraded succesfuly
yuraa1 September 17, 2016
Had the same. Your suggestion helped!
sstringer August 25, 2016
Similar to (but slightly different from) @trogvar22 - I, too, run...
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo do-release-upgrade
All goes well up to the point where it opens a screen session and gets to the "Updating repository information" step. I then get a list of warnings and the, ultimately, an abort.
I've tried various methods of updating apt and I'm confident I have the latest & greatest packages 14.04 has to offer via DigitalOcean. To my knowledge, I don't have any unauthorized packages or mirrors installed. I do not have compiz-core, compiz-gnome, libxapian-dev, kwin, libkf5sysguard-dev, etc. installed, though I do have python installed.
I'm stuck with my upgrade from 14.0.4 LTS to 16.0.4 LTS. Can anyone advise?
BTW - here's the output of the errors:
Unknown Multi-Arch type 'no' for package 'compiz-core'
Unknown Multi-Arch type 'no' for package 'compiz-gnome'
Unknown Multi-Arch type 'no' for package 'libxapian-dev'
Ignoring Provides line with DepCompareOp for package python-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package python-cffi-backend-api-min
Ignoring Provides line with DepCompareOp for package python3-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package python3-cffi-backend-api-min
Unknown Multi-Arch type 'no' for package 'kwin'
Unknown Multi-Arch type 'no' for package 'kwin-dev'
Unknown Multi-Arch type 'no' for package 'kwin-wayland'
Unknown Multi-Arch type 'no' for package 'kwin-x11'
Unknown Multi-Arch type 'no' for package 'libkf5sysguard-dev'
Ignoring Provides line with DepCompareOp for package php-psr-http-message-implementation
Ignoring Provides line with DepCompareOp for package php-psr-log-implementation
Ignoring Provides line with DepCompareOp for package php-seclib
Ignoring Provides line with DepCompareOp for package php-sabre-http
Ignoring Provides line with DepCompareOp for package php-math-biginteger
Ignoring Provides line with DepCompareOp for package pypy-cffi
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-min
Unknown Multi-Arch type 'no' for package 'compiz-core'
Unknown Multi-Arch type 'no' for package 'compiz-gnome'
Unknown Multi-Arch type 'no' for package 'libxapian-dev'
Ignoring Provides line with DepCompareOp for package python-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package python-cffi-backend-api-min
Ignoring Provides line with DepCompareOp for package python3-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package python3-cffi-backend-api-min
Unknown Multi-Arch type 'no' for package 'kwin-dev'
Unknown Multi-Arch type 'no' for package 'kwin-wayland'
Unknown Multi-Arch type 'no' for package 'kwin-x11'
Unknown Multi-Arch type 'no' for package 'libkf5sysguard-dev'
Ignoring Provides line with DepCompareOp for package pypy-cffi
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-min
Unknown Multi-Arch type 'no' for package 'compiz-core'
Unknown Multi-Arch type 'no' for package 'compiz-gnome'
Ignoring Provides line with DepCompareOp for package php-math-biginteger
Ignoring Provides line with DepCompareOp for package pypy-cffi
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-min
Unknown Multi-Arch type 'no' for package 'compiz-core'
Unknown Multi-Arch type 'no' for package 'compiz-gnome'
Ignoring Provides line with DepCompareOp for package pypy-cffi
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-max
Ignoring Provides line with DepCompareOp for package pypy-cffi-backend-api-min
You may want to run apt-get update to correct these problems
Checking package manager
Reading package lists... Done
Building dependency tree
Reading state information... Done
Building data structures... Done
Calculating the changes
Calculating the changes
Could not calculate the upgrade
An unresolvable problem occurred while calculating the upgrade.
This can be caused by:
* Upgrading to a pre-release version of Ubuntu
* Running the current pre-release version of Ubuntu
* Unofficial software packages not provided by Ubuntu
If none of this applies, then please report this bug using the
command 'ubuntu-bug ubuntu-release-upgrader-core' in a terminal.
Restoring original system state
Aborting
Reading package lists... Done
Building dependency tree
Reading state information... Done
Building data structures... Done
=== Command terminated with exit status 1 (Thu Aug 25 16:07:48 2016) ===
jarnesjo September 13, 2016
Great article. But I have a problem when I tried to upgrade my local machine in VirtualBox just to try simulate so everything will work when we do it in production but. I have give it various try now without success. I follow the guide step by step but once again when the machine tries to restart after the upgrade I get the same error which stop the booting of the system:
random: nonblocking pool is initialized
The only solutions I can get a round is to restore a snapshot of the machine. Anyone know what it could be or how to fix it? Very annoying.
kswahl1 September 28, 2016
Does this install the desktop environment? If so how do you remove things like Gnome and Firefox so you only have the Ubuntu Server setup? I did this and now when I go into my Console i have to login through the Gnome interface.
kswahl1 September 28, 2016
I ran:
sudo apt-get purge libx11.* libqt.*
to remove the desktop environment and its working now without Gnome.
ddulic October 31, 2016
All was on for me, all went smooth with one exception, docker and docker-compose had to be reinstalled, and I had to move from init scripts to systemd.
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Copyright © 2017 DigitalOcean™ Inc.
Community Tutorials Questions Projects Tags Newsletter RSS
Distros & One-Click Apps Terms, Privacy, & Copyright Security Report a Bug Get Paid to Write Shop
Scroll to top