The directory /debian/upgrades contains files needed by users upgrading from Debian 0.93R6 to Debian 1.1. There are two ways to upgrade:
upgrade_manual.doc
. You will also need the files
UpGrade
, base_list
, and dpkg-*.i386.deb
.upgrade_dselect.doc
. You will also need
dpkg-*.i386.deb
.Note that the version of dpkg
in this directory has the
a.out binary format. The versions of dpkg
in the unstable
and stable trees have the ELF format.
One could simply execute an anonymous ftp call to a Debian archive, then
peruse the directories until he 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 the Debian distribution 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 an automated programs. Three different packages are available for this purpose:
mirror
. 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 filesystem are
tracked automatically by mirror
, which compares this file to
a similar file on the remote system.
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 programs provides mechanisms for excluding files whose names match user-specified strings, this program is most useful when the objective is to download whole directory trees, rather than selected packages.
The mirror program has been packaged for the Debian distribution, and is
found in the directory
Debian-1.1/binary-all/net
in the Debian FTP archive.
dftp
. This C shell script can
be used to fetch user-specified
Debian packages from a specified host. After the first time files have
been downloaded from a site, a file called "Packages.gz" is
stored on the local host. Changes to the remote filesystem are
tracked automatically by dftp
, which compares this file to
a similar file on the remote system.
The dftp program can be used to call dselect, thereby providing an integrated way to fetch and update the Debian packages on one's system.
The dftp program is available as a script in the directory
contrib/tools
in the Debian FTP archive.
dpkg-ftp
. This is a Perl script
that allows one to install
Debian packages that are stored on a remote Debian FTP archive.
For users with limited disk space and/or limited bandwidth access to the
Internet, this approach is particularly beneficial.
Alternatively, the dpkg-ftp
program 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, bring up the
dselect
program, choose option "0" ("Choose
the access method to use"), highlight the option "ftp"
then specify the remote hostname 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.
The dpkg-ftp
program is available both as a gzip-compressed tar
archive and a Debian package in the directory project/experimental in the
Debian FTP archive. dpkg-ftp
is now part of the base
Debian
distribution; it is included in the first "base"
disk used in the installation.
All of the above programs can be set up (using the cron
facility)
to be executed automatically at specific times.
No. Packages can be upgraded in place, even in running systems.
The Debian distribution has a start-stop-daemon
that is invoked to stop, then restart running process if necessary duing
a package upgrade.
No. If you've downloaded the files to your disk (which isn't absolutely
necessary (see
dpkg-ftp or
dftp),
then after you've installed the packages, you can simply rm
them from your system.
dpkg
keeps a record of the packages that have been unpacked,
configured, removed, and/or purged, but does not (currently) keep a log
of terminal activity that occured while a package was being so manipulated.
Some users overcome this simply by using tee
:
dpkg -iGROEB stable/binary non-free/binary contrib/binary | \
tee -a > /root/dpkg.log