[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ next ]
A Debian goal is to provide a consistent upgrade path and a secure upgrade process. We always do our best to make upgrading to new releases a smooth procedure. In case there's some important note to add to the upgrade process, the packages will alert the user, and often provide a solution to a possible problem.
You should also read the Release Notes document that describes the details of
specific upgrades. It is shipped on all Debian CDs and available on the WWW at
http://www.debian.org/releases/stable/releasenotes
.
One could simply execute an anonymous ftp call to a Debian archive, then peruse the directories until one finds the desired file, and then fetch it, and finally install it using dpkg. Note that dpkg will install upgrade files in place, even on a running system. Sometimes, a revised package will require the installation of a newly revised version of another package, in which case the installation will fail until/unless the other package is installed.
Many people find this approach much too time-consuming, since Debian evolves so quickly -- typically, a dozen or more new packages are uploaded every week. This number is larger just before a new major release. To deal with this avalanche, many people prefer to use a more automated method. Several different packages are available for this purpose:
APT is an advanced interface to the Debian packaging system. It features complete installation ordering, multiple source capability and several other unique features, see the User's Guide in /usr/share/doc/apt-doc/guide.html/index.html (you will have to install the apt-doc package).
aptitude
is the recommended package manager for Debian GNU/Linux
systems. It is a text-based interface to APT using the curses library, and can
be used to perform management tasks in a fast and easy way.
Before you can use aptitude
, you'll have to edit the
/etc/apt/sources.list file to set it up. If you wish to upgrade
to the latest stable version of Debian, you'll probably want to use a source
like this one:
http://ftp.us.debian.org/debian stable main contrib non-free
You can replace ftp.us.debian.org with the name of a faster Debian mirror near
you. See the mirror list at http://www.debian.org/mirror/list
for more information.
More details on this can be found in the sources.list(8)
manual
page.
To update your system, run
aptitude update
followed by
aptitude dist-upgrade
Answer any questions that might come up, and your system will be upgraded. See also aptitude, Section 8.1.3.
apt-get
is an APT-based command-line tool for handling packages,
and the APT dselect method is an interface to APT through dselect
.
Both of these provide a simple, safe way to install and upgrade packages.
To use apt-get
, install the apt
package, and edit the
/etc/apt/sources.list file to set it up, just as for aptitude, Section 9.1.1.
Then run
apt-get update
followed by
apt-get dist-upgrade
Answer any questions that might come up, and your system will be upgraded. See
also the apt-get(8)
manual page, as well as APT, Section 8.1.2.
To use APT with dselect
, choose the APT access method in dselect's
method selection screen (option 0) and then specify the sources that should be
used. The configuration file is /etc/apt/sources.list
. See also
dselect, Section 8.1.5.
If you want to use CDs to install packages, you can use apt-cdrom
.
For details, please see the Release Notes, section "Setting up for an
upgrade from a local mirror".
Please note that when you get and install the packages, you'll still have them
kept in your /var directory hierarchy. To keep your partition from
overflowing, remember to delete extra files using apt-get clean
and apt-get autoclean, or to move them someplace else (hint: use
apt-move
).
aptitude
is a text-based interface to the Debian package system.
It allows the user to view the list of packages and to perform package
management tasks such as installing, upgrading, and removing packages (see aptitude, Section 8.1.3). Actions
may be performed from a visual interface or from the command-line.
In command line, the actions are similar to that of APT, so to upgrade your system run
aptitude update
followed by
aptitude dist-upgrade
To upgrade from a preview release, aptitude
is the tool
recommended. Read the Release Notes at http://www.debian.org/releases/stable/releasenotes
.
For details, see the manual page aptitude(8)
, and the file
/usr/share/aptitude/README
This is an older access method for dselect
. It can be invoked
from within dselect
, thereby allowing a user the ability to
download files and install them directly in one step. To do this, select the
ftp access method in dselect
(option 0) and specify
the remote host name and directory. dpkg-ftp
will then
automatically download the files that are selected (either in this session of
dselect
or earlier ones).
Note that, unlike the mirror
program, dpkg-ftp
does
not grab everything at a mirror site. Rather, it downloads only those files
which you have selected (when first starting up dpkg-ftp
), and
which need to be updated.
dpkg-ftp
is somewhat obsolete. You should use the APT access
method with ftp:// URLs in sources.list
instead.
This Perl script, and its (optional) manager program called
mirror-master
, can be used to fetch user-specified parts of a
directory tree from a specified host via anonymous FTP.
mirror
is particularly useful for downloading large volumes of
software. After the first time files have been downloaded from a site, a file
called .mirrorinfo is stored on the local host. Changes to the
remote file system are tracked automatically by mirror
, which
compares this file to a similar file on the remote system and downloads only
changed files.
The mirror
program is generally useful for updating local copies
of remote directory trees. The files fetched need not be Debian files. (Since
mirror
is a Perl script, it can also run on non-Unix systems.)
Though the mirror
program provides mechanisms for excluding files
names of which match user-specified strings, this program is most useful when
the objective is to download whole directory trees, rather than selected
packages.
dpkg-mountable adds an access method called `mountable' to dselect's list, which allows you to install from any file system specified in /etc/fstab. For example, the archive could be a normal hard disk partition or an NFS server, which it will automatically mount and umount for you if necessary.
It also has some extra features not found in the standard dselect methods, such as provision for a local file tree (either parallel to the main distribution or totally separate), and only getting packages which are required, rather than the time-consuming recursive directory scan, as well as logging of all dpkg actions in the install method.
No. Packages can be upgraded in place, even in running systems. Debian has a start-stop-daemon program that is invoked to stop, then restart running process if necessary during a package upgrade.
No. If you have downloaded the files to your disk (which is not absolutely necessary, see above for the description of dpkg-ftp), then after you have installed the packages, you can remove them from your system.
Passing the --log-option to dpkg
makes
dpkg
log status change updates and actions. It logs both the
dpkg
-invokation (e.g.
2005-12-30 18:10:33 install hello 1.3.18 2.1.1-4
) and the results (e.g.
2005-12-30 18:10:35 status installed hello 2.1.1-4
) If you'd like to log all your dpkg
invokations (even those done
using frontends like aptitude
), you could add
log /var/log/dpkg.log
to your /etc/dpkg/dpkg.cfg
. Be sure the created logfile gets
rotated periodically. If you're using logrotate
, this can be
achieved by creating a file /etc/logrotate.d/dpkg
with contents
/var/log/dpkg { missingok notifempty }
More details on dpkg
logging can be found in the
dpkg(1)
manual page.
aptitude
logs the package installations, removals, and upgrades
that it intends to perform to /var/log/aptitude
. Note that the
results of those actions are not recorded in this file!
Another way to record your actions is to run your package management session
within the script(1)
program.
Yes. You can use cron-apt
, this tool updates the system at
regular interval by using a cron job. By default it just updates the package
list and download new packages without installing.
Note: Automatic upgrade of packages is NOT recommended in testing or unstable systems as this might bring unexpected behaviour and remove packages without notice. Also, Debian versions previous to Debian 4.0 (etch) had no automatic feature to test for downloaded packages' integrity, enabling these feature could expose the system to compromise through the compromise of the package repository they updated from (or through man-in-the-middle or other attacks).
If you have more than one Debian machine on your network, it is useful to use
apt-proxy
to keep all of your Debian systems up-to-date.
apt-proxy
reduces the bandwidth requirements of Debian mirrors by
restricting the frequency of Packages, Releases and Sources file updates from
the back end and only doing a single fetch for any file, independently of the
actual request it from the proxy. apt-proxy
automatically builds
a Debian HTTP mirror based on requests which pass through the proxy.
For more details, see the apt-proxy homepage at http://apt-proxy.sourceforge.net/
Of course, you can get the same benefit if you are already using a standard caching proxy and all your systems are configured to use it.
[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ next ]
The Debian GNU/Linux FAQ