old-www/HOWTO/RedHat-CD-HOWTO/redhat-ftp-site.html

793 lines
19 KiB
HTML

<HTML
><HEAD
><TITLE
>Anatomy of the Red Hat FTP site</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE=" Burning a RedHat CD HOWTO
"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="Introduction"
HREF="introduction.html"><LINK
REL="NEXT"
TITLE="RPM packages"
HREF="rpm-packages.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Burning a RedHat CD HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="introduction.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="rpm-packages.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="REDHAT-FTP-SITE"
></A
>2. Anatomy of the Red Hat FTP site</H1
><P
> In the spirit of the Linux community, Red Hat Software has made available
their Linux distributions for several platforms on their FTP site. These
are all available from the top distribution directory
(<A
HREF="ftp://ftp.redhat.com/pub/redhat/linux/"
TARGET="_top"
>pub/redhat/linux/</A
>).
Let's have a look at the distribution tree.
</P
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="REDHAT-MAIN-TREE"
></A
>2.1. Redhat 9 directories organization</H2
><P
> The latest distribution is, as of this writing, available only for the
i386 platform. The toplevel directory appears a bit shallow, given the
presence of a single architecture. (<A
HREF="ftp://ftp.redhat.com/pub/redhat/linux/9/en/os/"
TARGET="_top"
>pub/redhat/linux/9/en/os/
</A
>).
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
i386/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> Otherwise, the toplevel directory, for releases slightly older than 9, contains
distributions for the different platforms. For example, the corresponding
directory for release 7.1 of Redhat Linux, is structured this way:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
alpha/ i386/ ia64/ ppc/ s390x/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> The root of the i386 directory in a Redhat 9 distribution looks like this:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
-rwxr-xr-x 2 root root 248 Mar 14 2003 autorun
drwxr-xr-x 7 root root 4096 Mar 14 2003 dosutils
-rw-r--r-- 3 root root 6192 Mar 14 2003 EULA
-rw-r--r-- 3 root root 18385 Mar 14 2003 GPL
drwxr-xr-x 3 root root 2048 Mar 14 2003 images
drwxr-xr-x 2 root root 2048 Mar 14 2003 isolinux
-rw-r--r-- 3 root root 6127 Mar 14 2003 README
-rw-r--r-- 2 root root 13052 Mar 14 2003 README-Accessibility
-rw-r--r-- 2 root root 6686 Mar 14 2003 README.de
-rw-r--r-- 2 root root 6990 Mar 14 2003 README.es
-rw-r--r-- 2 root root 6492 Mar 14 2003 README.fr
-rw-r--r-- 2 root root 6805 Mar 14 2003 README.it
-rw-r--r-- 2 root root 7995 Mar 14 2003 README.ja
-rw-r--r-- 2 root root 7312 Mar 14 2003 README.ko
-rw-r--r-- 2 root root 5070 Mar 14 2003 README.pt
-rw-r--r-- 2 root root 6613 Mar 14 2003 README.pt_BR
-rw-r--r-- 2 root root 5879 Mar 14 2003 README.zh_CN
-rw-r--r-- 2 root root 5892 Mar 14 2003 README.zh_TW
drwxr-xr-x 4 root root 2048 Mar 14 2003 RedHat
-rw-r--r-- 2 root root 25824 Mar 14 2003 RELEASE-NOTES
-rw-r--r-- 2 root root 29902 Mar 14 2003 RELEASE-NOTES-de.html
-rw-r--r-- 2 root root 30409 Mar 14 2003 RELEASE-NOTES-es.html
-rw-r--r-- 2 root root 32354 Mar 14 2003 RELEASE-NOTES-fr.html
-rw-r--r-- 2 root root 30064 Mar 14 2003 RELEASE-NOTES.html
-rw-r--r-- 2 root root 29925 Mar 14 2003 RELEASE-NOTES-it.html
-rw-r--r-- 2 root root 34666 Mar 14 2003 RELEASE-NOTES-ja.html
-rw-r--r-- 2 root root 33520 Mar 14 2003 RELEASE-NOTES-ko.html
-rw-r--r-- 2 root root 29496 Mar 14 2003 RELEASE-NOTES-pt_BR.html
-rw-r--r-- 2 root root 22747 Mar 14 2003 RELEASE-NOTES-pt.html
-rw-r--r-- 2 root root 25217 Mar 14 2003 RELEASE-NOTES-zh_CN.html
-rw-r--r-- 2 root root 26645 Mar 14 2003 RELEASE-NOTES-zh_TW.html
-rw-r--r-- 3 root root 1910 Mar 14 2003 RPM-GPG-KEY
-r--r--r-- 1 root root 1823 Mar 14 2003 TRANS.TBL
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> The <TT
CLASS="FILENAME"
>SRPMS</TT
> directory contains the RPMS
packages in source form.
</P
><P
> The <TT
CLASS="FILENAME"
>images</TT
> directory contains boot
and drivers floppy images that can be copied to a diskette if needed. In the
9 release, there is only one boot disk image available. This boot image is named
<TT
CLASS="FILENAME"
>bootdisk.img</TT
>. A secondary driver disk is required beside
this one if the installation is not performed directly from a CD-ROM or HD. A
<TT
CLASS="FILENAME"
>boot.iso</TT
> file has now been added to boot a machine from
the cdrom drive and start (network) installations more easily (i.e. without messing up
with too many floppies). See section <A
HREF="installation.html"
>Installation</A
> and references
therein for details and consult the README file in the directory for a more detailed
explanation of the various files.
</P
><P
> The <TT
CLASS="FILENAME"
>isolinux</TT
> directory contains
the files needed to boot from the CD (and to rebuild bootable CDs which work the
same way). This process was moved from floppy emulation to no emulation. This
helps avoiding space constraints and compatibility problems.
</P
><P
> The <TT
CLASS="FILENAME"
>dosutils</TT
> directory contains various
programs for some other operating systems which are sometimes useful to support the
installation process. An explanatory README file is included also in this case.
</P
><P
> The listing is completed by a lot of files and the
<TT
CLASS="FILENAME"
>RedHat</TT
> directory. The latter is the
subject of the next sections while the formers have contents which will appear
straightforward by simply reading their names (perhaps apart from the EULA,
or End User License Agreement).
</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="REDHAT-DIR"
></A
>2.2. The "RedHat" directory -- the core of the distribution</H2
><P
>
The most important part of the directory tree is rooted in the
<TT
CLASS="FILENAME"
>RedHat</TT
> directory:
</P
><P
> <TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
drwxr-xr-x 2 root root 53248 Jun 14 03:15 RPMS
drwxr-xr-x 2 root root 4096 Jun 14 04:15 base
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> The <TT
CLASS="FILENAME"
>RPMS</TT
> directory contains the major
part of the Red Hat distribution consisting of a set of RPM (Redhat Package
Manager) files. An RPM package typically contains binary executables, along
with relevant configuration files and documentation. See the section
<A
HREF="rpm-packages.html"
>RPM packages</A
> for more information.
</P
><P
>&#13; The <TT
CLASS="FILENAME"
>base</TT
> directory holds different
files needed during the installation process, like the
<TT
CLASS="FILENAME"
>comps.xml</TT
> file, which defines the <EM
>components</EM
>
(groups of packages) used during the "Choose packages to install" phase.
See section <A
HREF="comps-file.html"
>The comps file</A
> for more information on this file, and how
to use it.
</P
><P
> Two other important files in the <TT
CLASS="FILENAME"
>base</TT
>
directory are <TT
CLASS="FILENAME"
>hdlist</TT
> and <TT
CLASS="FILENAME"
>hdlist2</TT
>
containing most of the header fields from all the RPMs in the
<TT
CLASS="FILENAME"
>RPMS</TT
> directory. This means that all
the interdependencies among RPM packages can be determined just by reading
these files without having to read all the RPM packages which is quite
convenient especially during FTP installs. Another use of these files is
mapping package names to file names (eg. <EM
>perl</EM
> to
<EM
>perl-5.004-6.i386.rpm</EM
>). This means that if you want
to incorporate updates from RedHat (see section <A
HREF="include-updates.html"
>Including the updates</A
>)
or add your own packages to the <TT
CLASS="FILENAME"
>RPMS</TT
>
directory, you need to update <TT
CLASS="FILENAME"
>hdlist</TT
> and
<TT
CLASS="FILENAME"
>hdlist2</TT
>. This is described later in
<A
HREF="include-updates.html#INSTALLER-REBUILD"
>Rebuilding the installer</A
>. Besides these files, the images from which
the installation environment (i.e. kernel, python interpreter, anaconda, etc.)
is loaded are found.
</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="UPDATES-DIR"
></A
>2.3. The "updates" directory</H2
><P
> The <TT
CLASS="FILENAME"
>/pub/redhat/linux/updates</TT
> directory has updates for all
releases of RedHat's distribution since version 3.0.3. This is the place
to find software packages that have been updated for some reason or other.
You should especially be aware of security updates. These are publicised on
RedHat's errata page whenever a fix is available. The most important files
found in the <TT
CLASS="FILENAME"
>updates</TT
> directory are:
</P
><P
> <TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
drwxrwsr-x 3 root root 4096 Jul 13 10:13 5.2
drwxrwsr-x 3 root root 4096 Jul 13 10:13 6.0
drwxrwsr-x 3 root root 4096 Jul 13 10:13 6.1
drwxrwsr-x 4 root root 4096 Jul 13 10:14 6.2
drwxrwsr-x 4 root root 4096 Jul 13 10:14 7.0
drwxrwsr-x 4 root root 4096 Jul 13 10:14 7.1
drwxrwsr-x 4 root root 4096 Jul 13 10:13 7.2
drwxrwsr-x 3 root root 4096 Jul 13 10:14 7.3
drwxrwsr-x 3 root root 4096 Jul 13 10:14 8.0
drwxrwsr-x 3 root root 4096 Jul 13 10:14 9
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> The structure of each of these directories is similar to that described in
the section <A
HREF="redhat-ftp-site.html#REDHAT-MAIN-TREE"
>The Redhat 9 tree</A
>. So you will find for each version,
in the subdirectory <TT
CLASS="FILENAME"
>en/os/</TT
> a series of
subdirectories representing the various architectures and a
<TT
CLASS="FILENAME"
>noarch</TT
> and <TT
CLASS="FILENAME"
> SRPMS</TT
> subdirectories, for packages which work on every architecture
or are in source form respectively.
</P
><P
> <TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>
drwxrwsr-x 2 root root 4096 Sep 23 05:28 SRPMS
drwxrwsr-x 2 root root 4096 Aug 28 18:25 athlon
drwxrwsr-x 2 root root 8192 Sep 23 05:28 i386
drwxrwsr-x 2 root root 4096 Jul 13 10:14 i486
drwxrwsr-x 2 root root 4096 Aug 28 18:26 i586
drwxrwsr-x 2 root root 4096 Aug 28 18:26 i686
drwxrwsr-x 2 root root 4096 Jul 13 10:14 noarch
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN154"
></A
>2.4. Differences for the 8.0 tree</H2
><P
> The 8.0 distribution layout is almost identical to the one just described. The only
major differences, in this respect, can be found in the images directory.
</P
><P
> The <TT
CLASS="FILENAME"
>images</TT
> directory contains boot
and drivers floppy images that can be copied to a diskette if needed. In the
8.0 release, there are three boot disk images available. The first boot
image is called <TT
CLASS="FILENAME"
>boot.img</TT
>, and is required when installation
is performed directly from a CD-ROM. If installing from a NFS mounted disk or FTP
is required, the <TT
CLASS="FILENAME"
>bootnet.img</TT
> disk image is needed.
Installs through PCMCIA adapters need the <TT
CLASS="FILENAME"
>pcmcia.img</TT
>
floppy. See section <A
HREF="installation.html"
>Installation</A
> and references therein for
details and consult the README file in the directory for a more detailed explanation
of the various files.
</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN163"
></A
>2.5. Differences for the 7.x tree</H2
><P
> The two distributions are fairly similar in this respect. The only changes which
are of some interest to us (and easy to notice with a simple inspection of the main
distribution tree) are represented by a missing
<TT
CLASS="FILENAME"
>isolinux</TT
> directory and some changes in the
<TT
CLASS="FILENAME"
>RedHat/base</TT
> directory. The first one is due
to the way the installation CDs are made bootable in releases prior to 8.0
(<SPAN
CLASS="QUOTE"
>"floppy emulation"</SPAN
> has been superseded by <SPAN
CLASS="QUOTE"
>"no emulation"</SPAN
>
in release 8.0), while the second is an effect of the migration of
the <TT
CLASS="FILENAME"
>comps</TT
> file format to <EM
>XML</EM
> in Redhat
releases after 8.0 (that's why it was renamed <TT
CLASS="FILENAME"
>comps.xml</TT
>).
The <TT
CLASS="FILENAME"
>Redhat/base/comps</TT
> file is, in fact, a simple textual file
with a quite inflexible syntax in releases prior to and including Redhat 7.3.
</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN174"
></A
>2.6. Differences for the 6.x tree</H2
><P
> For release 6.2 (<A
HREF="ftp://ftp.redhat.com/pub/redhat/linux/6.2/en/os/"
TARGET="_top"
> pub/redhat/linux/6.2/en/os/</A
>), the last of the 6 series, the organization
is the following (the previous releases are mostly similar if not really equal, in
this respect):
</P
><P
> <TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
> alpha/ i386/ sparc/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> While the root of the i386 directory looks like this:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
> -rw-r--r-- 1 root root 18385 Sep 7 1999 COPYING
-rw-r--r-- 1 root root 3400 Mar 8 2000 README
-rw-r--r-- 1 root root 16300 Mar 8 2000 RELEASE-NOTES
-rw-r--r-- 1 root root 1908 Sep 25 1999 RPM-GPG-KEY
drwxr-xr-x 1 root root 512 Sep 27 15:22 RedHat
drwxr-xr-x 1 root root 17408 Sep 27 15:22 SRPMS
-rwxr-xr-x 1 root root 538 Sep 26 1999 autorun
-rwxr--r-- 1 root root 2048 Mar 9 2000 boot.cat
drwxr-xr-x 1 root root 512 Sep 27 15:22 doc
drwxr-xr-x 1 root root 512 Sep 27 15:22 dosutils
drwxr-xr-x 1 root root 512 Sep 27 15:22 images
drwxr-xr-x 1 root root 512 Sep 27 15:22 misc
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> In the following paragraphs I will only list differences from the newest
releases, what is not explicitly mentioned is (or is believed to be) unchanged.
</P
><P
> The <TT
CLASS="FILENAME"
>doc</TT
> directory contains an
abundance of information. Most importantly, the RedHat installation manual
can be found in HTML format in the directory or on the Redhat website
(<A
HREF="http://www.redhat.com/docs/manuals/linux/RHL-6.2-Manual/install-guide/"
TARGET="_top"
> Redhat 6.2 Installation guide</A
>). Next, there are the reference guide
and the getting started guide. The documentation for the 7.x/8.0/9 releases is on
a separate CD (in a different tree, on the ftp site).
</P
><P
> The <TT
CLASS="FILENAME"
>images</TT
> directory contains boot floppy
images that can be copied to a diskette if needed, like for 8.0, 7.3 and 9. See
section <A
HREF="installation.html"
>Installation</A
> and references therein for details. The
<TT
CLASS="FILENAME"
>misc</TT
> directory contains source and
executables of a number of programs needed for the installation.
</P
><P
>
The most important part of the directory tree is (again) rooted in
the <TT
CLASS="FILENAME"
>RedHat</TT
> directory:
</P
><P
> <TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
> drwxr-xr-x 2 root root 28672 Oct 26 09:01 RPMS
drwxr-xr-x 2 root root 4096 Oct 26 09:01 base
-rw-r--r-- 1 root root 0 Jan 19 1999 i386
drwxr-xr-x 6 root root 4096 Oct 26 09:01 instimage
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
> The <TT
CLASS="FILENAME"
>RPMS</TT
> directory should be
already known to you. See the section <A
HREF="rpm-packages.html"
>RPM packages</A
> for more
informations. The <TT
CLASS="FILENAME"
>base</TT
> directory
holds different book-keeping files needed during the installation process,
like for releases 7.3, 8.0 and 9. The only noticeable differences being represented
by a single <TT
CLASS="FILENAME"
>hdlist</TT
> file and a missing
<TT
CLASS="FILENAME"
>stage2.img</TT
> file whose functionalities should be provided
by the files included in the <TT
CLASS="FILENAME"
>instimage</TT
>
directory. This contains, in fact, a bare-bones live file system with a number
of programs and shared libraries needed during the installation procedure.
</P
><P
> The <TT
CLASS="FILENAME"
>updates</TT
> directory is really similar
to the one described for release 9 with the only difference of having more
architecture related directories.
</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="introduction.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="rpm-packages.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Introduction</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>RPM packages</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>