576 lines
16 KiB
HTML
576 lines
16 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
|
|
|
|
<title>The Debian GNU/Linux FAQ - The Debian FTP archives</title>
|
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<p><a name="ch-ftparchives"></a></p>
|
|
<hr>
|
|
|
|
<p>
|
|
[ <a href="ch-software.en.html">previous</a> ]
|
|
[ <a href="index.en.html#contents">Contents</a> ]
|
|
[ <a href="ch-basic_defs.en.html">1</a> ]
|
|
[ <a href="ch-getting.en.html">2</a> ]
|
|
[ <a href="ch-compat.en.html">3</a> ]
|
|
[ <a href="ch-software.en.html">4</a> ]
|
|
[ 5 ]
|
|
[ <a href="ch-pkg_basics.en.html">6</a> ]
|
|
[ <a href="ch-pkgtools.en.html">7</a> ]
|
|
[ <a href="ch-uptodate.en.html">8</a> ]
|
|
[ <a href="ch-kernel.en.html">9</a> ]
|
|
[ <a href="ch-customizing.en.html">10</a> ]
|
|
[ <a href="ch-support.en.html">11</a> ]
|
|
[ <a href="ch-contributing.en.html">12</a> ]
|
|
[ <a href="ch-redistrib.en.html">13</a> ]
|
|
[ <a href="ch-nexttime.en.html">14</a> ]
|
|
[ <a href="ch-faqinfo.en.html">15</a> ]
|
|
[ <a href="ch-pkg_basics.en.html">next</a> ]
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h1>
|
|
The Debian GNU/Linux FAQ
|
|
<br>Chapter 5 - The Debian FTP archives
|
|
</h1>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-dirtree"></a>5.1 What are all those directories at the Debian FTP archives?</h2>
|
|
|
|
<p>
|
|
The software that has been packaged for Debian GNU/Linux is available in one of
|
|
several directory trees on each Debian mirror site.
|
|
</p>
|
|
|
|
<p>
|
|
The <samp>dists</samp> directory is short for "distributions", and it
|
|
is the canonical way to access the currently available Debian releases (and
|
|
pre-releases).
|
|
</p>
|
|
|
|
<p>
|
|
The <samp>pool</samp> directory contains the actual packages, see <a
|
|
href="#s-pools">What's in the <samp>pool</samp> directory?, Section 5.10</a>.
|
|
</p>
|
|
|
|
<p>
|
|
There are the following supplementary directories:
|
|
</p>
|
|
<dl>
|
|
<dt><em>/tools/</em>:</dt>
|
|
<dd>
|
|
<p>
|
|
DOS utilities for creating boot disks, partitioning your disk drive,
|
|
compressing/decompressing files, and booting Linux.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
<dl>
|
|
<dt><em>/doc/</em>:</dt>
|
|
<dd>
|
|
<p>
|
|
The basic Debian documentation, such as the FAQ, the bug reporting system
|
|
instructions, etc.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
<dl>
|
|
<dt><em>/indices/</em>:</dt>
|
|
<dd>
|
|
<p>
|
|
The Maintainers file and the override files.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
<dl>
|
|
<dt><em>/project/</em>:</dt>
|
|
<dd>
|
|
<p>
|
|
mostly developer-only materials, such as:
|
|
</p>
|
|
<dl>
|
|
<dt><em>project/experimental/</em>:</dt>
|
|
<dd>
|
|
<p>
|
|
This directory contains packages and tools which are still being developed, and
|
|
are still in the alpha testing stage. Users shouldn't be using packages from
|
|
here, because they can be dangerous and harmful even for the most experienced
|
|
people.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-dists"></a>5.2 How many Debian distributions are there in the <samp>dists</samp> directory?</h2>
|
|
|
|
<p>
|
|
There are three distributions, the "stable" distribution, the
|
|
"testing" distribution, and the "unstable" distribution.
|
|
The "testing" distribution is sometimes `frozen' (see <a
|
|
href="#s-frozen">What about "testing"? How is it `frozen'?, Section
|
|
5.6.1</a>).
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-codenames"></a>5.3 What are all those names like slink, potato, etc.?</h2>
|
|
|
|
<p>
|
|
They are just "codenames". When a Debian distribution is in the
|
|
development stage, it has no version number but a codename. The purpose of
|
|
these codenames is to make easier the mirroring of the Debian distributions (if
|
|
a real directory like <samp>unstable</samp> suddenly changed its name to
|
|
<samp>stable</samp>, a lot of stuff would have to be needlessly downloaded
|
|
again).
|
|
</p>
|
|
|
|
<p>
|
|
Currently, <samp>stable</samp> is a symbolic link to <samp>etch</samp> (i.e.
|
|
Debian GNU/Linux 4.0) and <samp>testing</samp> is a symbolic link to
|
|
<samp>lenny</samp>. This means that <samp>etch</samp> is the current stable
|
|
distribution and <samp>lenny</samp> is the current testing distribution.
|
|
</p>
|
|
|
|
<p>
|
|
<samp>unstable</samp> is a permanent symbolic link to <samp>sid</samp>, as
|
|
<samp>sid</samp> is always the unstable distribution (see <a href="#s-sid">What
|
|
about "sid"?, Section 5.4</a>).
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h3><a name="s-oldcodenames"></a>5.3.1 Which other codenames have been used in the past?</h3>
|
|
|
|
<p>
|
|
Other codenames that have been already used are: <samp>buzz</samp> for release
|
|
1.1, <samp>rex</samp> for release 1.2, <samp>bo</samp> for releases 1.3.x,
|
|
<samp>hamm</samp> for release 2.0, <samp>slink</samp> for release 2.1,
|
|
<samp>potato</samp> for release 2.2, <samp>woody</samp> for release 3.0 and
|
|
<samp>sarge</samp> for release 3.1.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h3><a name="s-sourceforcodenames"></a>5.3.2 Where do these codenames come from?</h3>
|
|
|
|
<p>
|
|
So far they have been characters taken from the movie "Toy Story" by
|
|
Pixar.
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>buzz</em> (Buzz Lightyear) was the spaceman,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>rex</em> was the tyrannosaurus,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>bo</em> (Bo Peep) was the girl who took care of the sheep,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>hamm</em> was the piggy bank,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>slink</em> (Slinky Dog (R)) was the toy dog,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>potato</em> was, of course, Mr. Potato (R),
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>woody</em> was the cowboy,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>sarge</em> was the sergeant of the Green Plastic Army Men,
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>etch</em> was the toy blackboard (Etch-a-Sketch (R)),
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>lenny</em> was the binoculars.
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
<em>sid</em> was the boy next door who destroyed toys.
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-sid"></a>5.4 What about "sid"?</h2>
|
|
|
|
<p>
|
|
<em>sid</em> or <em>unstable</em> is the place where most of the packages are
|
|
initially uploaded. It will never be released directly, because packages which
|
|
are to be released will first have to be included in <em>testing</em>, in order
|
|
to be released in <em>stable</em> later on. sid contains packages for both
|
|
released and unreleased architectures.
|
|
</p>
|
|
|
|
<p>
|
|
The name "sid" also comes from the "Toy Story" animated
|
|
motion picture: Sid was the boy next door who destroyed toys :-)
|
|
</p>
|
|
|
|
<p>
|
|
[<a href="footnotes.en.html#f1" name="fr1">1</a>]
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-stable"></a>5.5 What does the stable directory contain?</h2>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
stable/main/: This directory contains the packages which formally constitute
|
|
the most recent release of the Debian GNU/Linux system.
|
|
</p>
|
|
|
|
<p>
|
|
These packages all comply with the <code><a
|
|
href="http://www.debian.org/social_contract#guidelines">Debian Free Software
|
|
Guidelines</a></code>, and are all freely usable and distributable.
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
stable/non-free/: This directory contains packages distribution of which is
|
|
restricted in a way that requires that distributors take careful account of the
|
|
specified copyright requirements.
|
|
</p>
|
|
|
|
<p>
|
|
For example, some packages have licenses which prohibit commercial
|
|
distribution. Others can be redistributed but are in fact shareware and not
|
|
freeware. The licenses of each of these packages must be studied, and possibly
|
|
negotiated, before the packages are included in any redistribution (e.g., in a
|
|
CD-ROM).
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
stable/contrib/: This directory contains packages which are DFSG-free and
|
|
<em>freely distributable</em> themselves, but somehow depend on a package that
|
|
is <em>not</em> freely distributable and thus available only in the non-free
|
|
section.
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-testing"></a>5.6 What does the testing directory contain?</h2>
|
|
|
|
<p>
|
|
Packages are installed into the `testing' directory after they have undergone
|
|
some degree of testing in <a href="#s-unstable">unstable</a>.
|
|
</p>
|
|
|
|
<p>
|
|
They must be in sync on all architectures where they have been built and
|
|
mustn't have dependencies that make them uninstallable; they also have to have
|
|
fewer release-critical bugs than the versions currently in testing. This way,
|
|
we hope that `testing' is always close to being a release candidate.
|
|
</p>
|
|
|
|
<p>
|
|
More information about the status of "testing" in general and the
|
|
individual packages is available at <code><a
|
|
href="http://www.debian.org/devel/testing">http://www.debian.org/devel/testing</a></code>
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h3><a name="s-frozen"></a>5.6.1 What about "testing"? How is it `frozen'?</h3>
|
|
|
|
<p>
|
|
When the "testing" distribution is mature enough, the release manager
|
|
starts `freezing' it. The normal propagation delays are increased to ensure
|
|
that as little as possible new bugs from "unstable" enter
|
|
"testing".
|
|
</p>
|
|
|
|
<p>
|
|
After a while, the "testing" distribution becomes truly `frozen'.
|
|
This means that all new packages that are to propagate to the
|
|
"testing" are held back, unless they include release-critical bug
|
|
fixes. The "testing" distribution can also remain in such a deep
|
|
freeze during the so-called `test cycles', when the release is imminent.
|
|
</p>
|
|
|
|
<p>
|
|
We keep a record of bugs in the "testing" distribution that can hold
|
|
off a package from being released, or bugs that can hold back the whole
|
|
release. For details, please see <code><a
|
|
href="http://www.debian.org/releases/testing/">current testing release
|
|
information</a></code>.
|
|
</p>
|
|
|
|
<p>
|
|
Once that bug count lowers to maximum acceptable values, the frozen
|
|
"testing" distribution is declared "stable" and released
|
|
with a version number.
|
|
</p>
|
|
|
|
<p>
|
|
With each new release, the previous "stable" distribution becomes
|
|
obsolete and moves to the archive. For more information please see <code><a
|
|
href="http://www.debian.org/distrib/archive">Debian archive</a></code>.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-unstable"></a>5.7 What does the unstable directory contain?</h2>
|
|
|
|
<p>
|
|
The `unstable' directory contains a snapshot of the current development system.
|
|
Users are welcome to use and test these packages, but are warned about their
|
|
state of readiness. The advantage of using the unstable distribution is that
|
|
you are always up-to-date with the latest in GNU/Linux software industry, but
|
|
if it breaks: you get to keep both parts :-)
|
|
</p>
|
|
|
|
<p>
|
|
There are also main, contrib and non-free subdirectories in `unstable',
|
|
separated on the same criteria as in `stable'.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-archsections"></a>5.8 What are all those directories inside <samp>dists/stable/main</samp>?</h2>
|
|
|
|
<p>
|
|
Within each of the major directory trees[<a href="footnotes.en.html#f2"
|
|
name="fr2">2</a>], there are three sets of subdirectories containing index
|
|
files.
|
|
</p>
|
|
|
|
<p>
|
|
There's one set of <samp>binary-<var>something</var></samp> subdirectories
|
|
which contain index files for binary packages of each available computer
|
|
architecture, for example <samp>binary-i386</samp> for packages which execute
|
|
on Intel x86 PC machines or <samp>binary-sparc</samp> for packages which
|
|
execute on Sun SPARCStations.
|
|
</p>
|
|
|
|
<p>
|
|
The complete list of available architectures for each release is available at
|
|
<code><a href="http://www.debian.org/releases/">the release's web
|
|
page</a></code>. For the current release, please see <a
|
|
href="ch-compat.en.html#s-arches">On what hardware architectures/systems does
|
|
Debian GNU/Linux run?, Section 3.1</a>.
|
|
</p>
|
|
|
|
<p>
|
|
The index files in binary-* are called Packages(.gz) and they include a summary
|
|
of each binary package that is included in that distribution. The actual
|
|
binary packages (for <em>woody</em> and subsequent releases) reside in the top
|
|
level <a href="#s-pools"><samp>pool</samp> directory</a>.
|
|
</p>
|
|
|
|
<p>
|
|
Furthermore, there's a subdirectory called source/ which contains index files
|
|
for source packages included in the distribution. The index file is called
|
|
Sources(.gz).
|
|
</p>
|
|
|
|
<p>
|
|
Last but not least, there's a set of subdirectories meant for the installation
|
|
system index files. In the <em>woody</em> release, these are named
|
|
<samp>disks-<var>architecture</var></samp>; in <em>sarge</em>, they are at
|
|
<samp>debian-installer/binary-<var>architecture</var></samp>.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-source"></a>5.9 Where is the source code?</h2>
|
|
|
|
<p>
|
|
Source code is included for everything in the Debian system. Moreover, the
|
|
license terms of most programs in the system <em>require</em> that source code
|
|
be distributed along with the programs, or that an offer to provide the source
|
|
code accompany the programs.
|
|
</p>
|
|
|
|
<p>
|
|
The source code is distributed in the <samp>pool</samp> directory (see <a
|
|
href="#s-pools">What's in the <samp>pool</samp> directory?, Section 5.10</a>)
|
|
together with all the architecture-specific binary directories. To retrieve
|
|
the source code without having to be familiar with the structure of the FTP
|
|
archive, try a command like <samp>apt-get source mypackagename</samp>.
|
|
</p>
|
|
|
|
<p>
|
|
Some packages are only distributed as source code due to the restrictions in
|
|
their licenses. Notably, one such package is <samp>pine</samp>, see <a
|
|
href="ch-software.en.html#s-pine">Where is pine?, Section 4.10</a> for more
|
|
information.
|
|
</p>
|
|
|
|
<p>
|
|
Source code may or may not be available for packages in the "contrib"
|
|
and "non-free" directories, which are not formally part of the Debian
|
|
system.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-pools"></a>5.10 What's in the <samp>pool</samp> directory?</h2>
|
|
|
|
<p>
|
|
Packages are kept in a large `pool', structured according to the name of the
|
|
source package. To make this manageable, the pool is subdivided by section
|
|
(`main', `contrib' and `non-free') and by the first letter of the source
|
|
package name. These directories contain several files: the binary packages for
|
|
each architecture, and the source packages from which the binary packages were
|
|
generated.
|
|
</p>
|
|
|
|
<p>
|
|
You can find out where each package is placed by executing a command like
|
|
<samp>apt-cache showsrc mypackagename</samp> and looking at the `Directory:'
|
|
line. For example, the <samp>apache</samp> packages are stored in
|
|
<samp>pool/main/a/apache/</samp>.
|
|
</p>
|
|
|
|
<p>
|
|
Additionally, since there are so many <samp>lib*</samp> packages, these are
|
|
treated specially: for instance, libpaper packages are stored in
|
|
<samp>pool/main/libp/libpaper/</samp>.
|
|
</p>
|
|
|
|
<p>
|
|
[<a href="footnotes.en.html#f3" name="fr3">3</a>]
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-incoming"></a>5.11 What is "incoming"?</h2>
|
|
|
|
<p>
|
|
After a developer uploads a package, it stays for a short while in the
|
|
"incoming" directory before it is checked that it's genuine and
|
|
allowed into the archive.
|
|
</p>
|
|
|
|
<p>
|
|
Usually nobody should install things from this place. However, in some rare
|
|
cases of emergency, the incoming directory is available at <code><a
|
|
href="http://incoming.debian.org/">http://incoming.debian.org/</a></code>. You
|
|
can manually fetch packages, check the GPG signature and MD5sums in the
|
|
.changes and .dsc files, and then install them.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<h2><a name="s-ownrepository"></a>5.12 How do I set up my own apt-able repository?</h2>
|
|
|
|
<p>
|
|
If you have built some private Debian packages which you'd like to install
|
|
using the standard Debian package management tools, you can set up your own
|
|
apt-able package archive. This is also useful if you'd like to share your
|
|
Debian packages while these are not distributed by the Debian project.
|
|
Instructions on how to do this are given in the <code><a
|
|
href="http://www.debian.org/doc/manuals/repository-howto/repository-howto">Debian
|
|
Repository HOWTO</a></code>.
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<p>
|
|
[ <a href="ch-software.en.html">previous</a> ]
|
|
[ <a href="index.en.html#contents">Contents</a> ]
|
|
[ <a href="ch-basic_defs.en.html">1</a> ]
|
|
[ <a href="ch-getting.en.html">2</a> ]
|
|
[ <a href="ch-compat.en.html">3</a> ]
|
|
[ <a href="ch-software.en.html">4</a> ]
|
|
[ 5 ]
|
|
[ <a href="ch-pkg_basics.en.html">6</a> ]
|
|
[ <a href="ch-pkgtools.en.html">7</a> ]
|
|
[ <a href="ch-uptodate.en.html">8</a> ]
|
|
[ <a href="ch-kernel.en.html">9</a> ]
|
|
[ <a href="ch-customizing.en.html">10</a> ]
|
|
[ <a href="ch-support.en.html">11</a> ]
|
|
[ <a href="ch-contributing.en.html">12</a> ]
|
|
[ <a href="ch-redistrib.en.html">13</a> ]
|
|
[ <a href="ch-nexttime.en.html">14</a> ]
|
|
[ <a href="ch-faqinfo.en.html">15</a> ]
|
|
[ <a href="ch-pkg_basics.en.html">next</a> ]
|
|
</p>
|
|
|
|
<hr>
|
|
|
|
<p>
|
|
The Debian GNU/Linux FAQ
|
|
</p>
|
|
|
|
<address>
|
|
version 3.1.5, 17 January 2007<br>
|
|
<br>
|
|
Authors are listed at <a href="ch-faqinfo.en.html#s-authors">Debian FAQ Authors</a><br>
|
|
<br>
|
|
</address>
|
|
<hr>
|
|
|
|
</body>
|
|
|
|
</html>
|
|
|