For some people it is not straightforward what each command does when they update their Linux Distribution. This brief blog post provides some information on the different commands being used for updating a distribution using the apt-get command.
apt-get update
update downloads the package lists from the repositories and "updates" them to get
information on the newest versions of packages and their dependencies (for all
repositories and PPAs). It is used to re-synchronize the package index files
from their sources from the location(s) specified in /etc/apt/sources.list. An update
should always be performed before any upgrade.
apt-get upgrade
upgrade is used to install the newest versions of all packages currently installed on the
system from the sources enumerated in
/etc/apt/sources.list. Packages currently
installed with new versions available are retrieved and upgraded; under no
circumstances are currently installed packages removed, or packages not already
installed retrieved and installed. New versions of
currently installed packages that
cannot be upgraded without changing the install status of another package will be left
at their current version. An update must be performed first so that apt-get knows that
new versions of packages are available.
apt-get dist-upgrade
dist-upgrade in addition to performing the function of upgrade, also intelligently
handles changing dependencies with new versions
of packages; apt-get has a "smart"
conflict resolution system, and it will attempt to upgrade the most important packages
at the expense of less important ones if necessary. So, dist-upgrade command may remove
some packages. The /etc/apt/sources.list file contains a list of locations from which
to retrieve desired package files. See also apt_preferences(5) for a mechanism for
overriding
the general settings for individual packages.
apt-get full-upgrade
full-upgrade performs the function of upgrade but may also remove installed packages if
that is required in order to resolve a
package conflict.