mirror-tutorial mirror-tutorial-en.xml,1.11,1.12
Paul W. Frields (pfrields)
fedora-docs-commits at redhat.com
Sat Oct 15 15:54:59 UTC 2005
Author: pfrields
Update of /cvs/docs/mirror-tutorial
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv22393
Modified Files:
mirror-tutorial-en.xml
Log Message:
Some style and content changes, bump to 0.33
Index: mirror-tutorial-en.xml
===================================================================
RCS file: /cvs/docs/mirror-tutorial/mirror-tutorial-en.xml,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- mirror-tutorial-en.xml 12 Oct 2005 22:41:50 -0000 1.11
+++ mirror-tutorial-en.xml 15 Oct 2005 15:54:57 -0000 1.12
@@ -6,8 +6,8 @@
%FEDORA-ENTITIES-EN;
<!ENTITY BOOKNAME "mirror-tutorial">
-<!ENTITY BOOKVERSION "0.32">
-<!ENTITY BOOKDATE "2005-10-12">
+<!ENTITY BOOKVERSION "0.33">
+<!ENTITY BOOKDATE "2005-10-15">
<!ENTITY BOOKID "&BOOKNAME;-&BOOKVERSION; (&BOOKDATE;)"> <!-- change version of manual and date here -->
<!ENTITY BUG-NUM "130125">
@@ -171,6 +171,16 @@
</para>
</revdescription>
</revision>
+ <revision>
+ <revnumber>0.33</revnumber>
+ <date>2005-10-15</date>
+ <authorinitials>PaulWFrields</authorinitials>
+ <revdescription>
+ <para>
+ Some style changes and more indexing
+ </para>
+ </revdescription>
+ </revision>
</revhistory>
</articleinfo>
@@ -180,11 +190,12 @@
<title>Purpose</title>
<para>
This tutorial presents a number of related topics that allow an
- administrator to seamlessly integrate mirroring and update services for
- &FC;. You can use these services to provision a classroom, laboratory,
- or office. These service provisions also increase ease of use and
- enhance user experience, adding to the perceived value of
- non-proprietary operating systems and software.
+ administrator to seamlessly integrate mirroring and update
+ services for &FC;. Use these services to provision a classroom,
+ laboratory, or office. These service provisions also increase
+ ease of use and enhance user experience. They also add to the
+ perceived value of non-proprietary operating systems and
+ software.
</para>
&BUG-REPORTING;
</section>
@@ -192,18 +203,18 @@
<title>Audience</title>
<para>
You will find this tutorial more useful if you are a system
- administrator, or a &FC; <quote>power user</quote> familiar with the
- following topics:
+ administrator, or a &FC; <quote>power user</quote> familiar with
+ the following topics:
</para>
<itemizedlist>
<listitem>
<para>
- &FC; system installation
+ &FC; system installation and administration
</para>
</listitem>
<listitem>
<para>
- Basic Internet protocols (HTTP/Web, FTP)
+ Basic Internet protocols (HTTP/Web)
</para>
</listitem>
<listitem>
@@ -217,43 +228,45 @@
<title>About Mirrors</title>
<para>
A <emphasis>mirror</emphasis>
- <indexterm><primary>mirror</primary></indexterm> is a server that
- provides a copy of one or more collections of files. Mirroring a site
- reduces traffic to the original source site, thus spreading the stress
- and bandwidth costs of many users across many sites. Side benefits of
- running a local mirror include very fast access through the local
- network, providing custom services to local users, and increasing your
- skills in managing Internet services.
- </para>
- <para>
- The site from which you retrieve files to build your mirror is called an
- <emphasis>upstream mirror</emphasis><indexterm>
- <primary>mirror</primary> <secondary>upstream</secondary>
- </indexterm>. If possible, choose an upstream mirror that is located
- close to you geographically. This reduces unnecessary traffic across
- transcontinental sections of the Internet, where bandwidth is limited
- and expensive. Use only upstream mirrors that are intended for public
- access, unless you have permission from the upstream mirror site
- administrator.
+ <indexterm><primary>mirror</primary></indexterm> is a server
+ that provides a copy of one or more collections of files.
+ Mirroring a site reduces traffic to the original source site,
+ thus spreading the stress and bandwidth costs of many users
+ across many sites. Side benefits of running a local mirror
+ include very fast access through the local network, providing
+ custom services to local users, and increasing your skills in
+ managing Internet services.
+ </para>
+ <para>
+ The site from which you retrieve files to build your mirror is
+ called an <emphasis>upstream mirror</emphasis><indexterm>
+ <primary>mirror</primary> <secondary>upstream</secondary>
+ </indexterm>. If possible, choose an upstream mirror that is
+ located close to you geographically. This reduces unnecessary
+ traffic across transcontinental sections of the Internet, where
+ bandwidth is limited and expensive. Use only upstream mirrors
+ that are intended for public access, unless you have permission
+ from the upstream mirror site administrator.
</para>
</section>
<section id="sn-additional-resources">
<title>Additional Resources</title>
<para>
For more information on installing &FC; see the &FC; &IG; at
- &IG-URL;. For more information on basic Internet protocols, see <ulink
- url="http://library.albany.edu/internet/internet.html">http://library.albany.edu/internet/internet.html</ulink>,
+ &IG-URL;. For more information on basic Internet protocols, see
+ <ulink
+ url="http://library.albany.edu/internet/internet.html">http://library.albany.edu/internet/internet.html</ulink>,
or search Google at <ulink
- url="http://www.google.com/">http://www.google.com/</ulink>. For more
- general information about mirrors, see <ulink
- url="http://en.wikipedia.org/wiki/Mirror_(computing)">http://en.wikipedia.org/wiki/Mirror_(computing)</ulink>.
+ url="http://www.google.com/">http://www.google.com/</ulink>.
+ For more general information about mirrors, see <ulink
+ url="http://en.wikipedia.org/wiki/Mirror_(computing)">http://en.wikipedia.org/wiki/Mirror_(computing)</ulink>.
</para>
</section>
<section id="sn-acknowledgements">
<title>Acknowledgements</title>
<para>
- Karsten Wade provided editorial services, keeping the style crisp and
- consistent.
+ Karsten Wade provided editorial services and kept the style
+ crisp and consistent.
</para>
</section>
</section>
@@ -265,13 +278,15 @@
<title>The Distribution Structure</title>
<para>
The &FED; <emphasis>distribution</emphasis><indexterm>
- <primary>distribution</primary>
- </indexterm>, which is the collection of all &FED;-related files, uses
- the directory tree in <xref linkend="ex-fedora-dir-tree"/>. It may
- include multiple versions of &FC;. The tree design makes "trimming" of
- unnecessary or undesired files easier. When setting up a mirror,
- duplicate this tree exactly, or as closely as possible. Doing so makes
- automating nightly updates easier.
+ <primary>distribution</primary>
+ </indexterm>, which is the collection of all &FED;-related
+ files, uses the directory tree in <xref
+ linkend="ex-fedora-dir-tree"/>. It may include multiple
+ versions of &FC;. The tree design makes it easier to "trim"
+ unnecessary or undesired files. When you set up a mirror,
+ duplicate this tree exactly, or as closely as possible. If you
+ duplicate the tree, it will be easier to automate nightly
+ updates.
</para>
<example id="ex-fedora-dir-tree">
@@ -318,13 +333,13 @@
<title>Naming conventions</title>
<para>
Throughout the rest of the document,
- <filename>/var/www/mirror</filename> represents the folder where
- all your mirrored files are stored. You may substitute a different
- location. This location simplifies sharing your mirror, due to the
- shipping configuration of &FC;. See <xref linkend="sn-server-config"/>
- for more information. The site name
- <computeroutput>mirror.example.com</computeroutput> represents the
- upstream mirror.
+ <filename>/var/www/mirror</filename> represents the folder
+ where all your mirrored files are stored. You may substitute a
+ different location. This location simplifies sharing your
+ mirror, due to the shipping configuration of &FC;. See <xref
+ linkend="sn-server-config"/> for more information. The site
+ name <computeroutput>mirror.example.com</computeroutput>
+ represents the upstream mirror.
</para>
</note>
<para>
@@ -348,7 +363,7 @@
<firstterm>RPM</firstterm><indexterm> <primary>RPM</primary>
</indexterm>, originally the Red Hat Package Manager and now
the RPM Package Manager, is not just a file format. RPM is
- also a system which tracks and interconnects software and
+ also a system that tracks and interconnects software and
version information. The RPM system is quite popular, and many
other Linux distributions use RPM as well. Read more
information on RPM at <ulink
@@ -356,16 +371,18 @@
</para>
</note>
<para>
- The <filename>SRPMS</filename> folders under architecture-specific
- branches are links which point to the main <filename>SRPMS</filename>
- folder for that distribution. For example,
- <filename>fedora/linux/core/2/i386/os/SRPMS</filename> is a link which
- points to <filename>fedora/linux/core/2/SRPMS</filename>.
+ The <filename>SRPMS</filename> folders under
+ architecture-specific branches are links that point to the main
+ <filename>SRPMS</filename> folder for that distribution. For
+ example, <filename>fedora/linux/core/2/i386/os/SRPMS</filename>
+ is a link that points to
+ <filename>fedora/linux/core/2/SRPMS</filename>.
</para>
<para>
A &FED; mirror consists of at least the original ISO images
- <emphasis>or</emphasis> the distribution files. If possible, include
- both, provided you have sufficient disk space and/or bandwidth.
+ <emphasis>or</emphasis> the distribution files. If possible,
+ include both, provided you have sufficient disk space and/or
+ bandwidth.
</para>
</section>
@@ -373,21 +390,21 @@
<title>Copying the Original Distribution</title>
<para>
If you already have reliable CD-ROM installation discs of a
- distribution, reduce your initial bandwidth and time spent mirroring by
- copying the files from the discs to your server. Copy all files from
- Installation Disc 1 into the
+ distribution, reduce your initial bandwidth and time spent
+ mirroring by copying the files from the discs to your server.
+ Copy all files from Installation Disc 1 into the
<filename>fedora/linux/core/&FCVER;/<replaceable>arch</replaceable>/os</filename>
- folder. Then copy all files from the <filename>&FED;</filename> folder
- of each of the remaining Installation discs into the
+ folder. Then copy all files from the <filename>&FED;</filename>
+ folder of each of the remaining Installation discs into the
<filename>fedora/linux/core/&FCVER;/<replaceable>arch</replaceable>/os/&FED;</filename>
folder on the server.
</para>
<para>
- Copy all the files from the <filename>SRPMS</filename> folder on each of
- the <quote>Sources</quote> discs to the
- <filename>fedora/linux/core/&FCVER;/SRPMS</filename> folder on the
- server. Make a link in the <filename>os</filename> folder that occurs
- under each architecture. Follow this example:
+ Copy all the files from the <filename>SRPMS</filename> folder on
+ each of the <quote>Sources</quote> discs to the
+ <filename>fedora/linux/core/&FCVER;/SRPMS</filename> folder on
+ the server. Make a link in the <filename>os</filename> folder
+ that occurs under each architecture. Follow this example:
</para>
<screen>
@@ -422,11 +439,12 @@
</screen>
<para>
- The <application>anaconda</application> application automatically
- detects these folders and uses them properly. In addition, system
- configuration tools such as
- <application>system-config-packages</application> also continue to work
- properly when pointed at the parent of the ISO image mount points.
+ The <application>anaconda</application> installer application
+ automatically detects these folders and uses them properly. In
+ addition, system configuration tools such as
+ <application>system-config-packages</application> also continue
+ to work properly when pointed at the parent of the ISO image
+ mount points.
</para>
<para>
There are drawbacks to using CD ISO images in this fashion. For
@@ -543,33 +561,35 @@
</varlistentry>
</variablelist>
<para>
- Unless your site closely manages workstation configuration, you should
- probably not trim any of the <filename>updates</filename> branches for
- the distributions you support. These locations contain packages handling
- bug fixes, security patches, and errata updates which your users
- probably want.
+ Unless your site closely manages workstation configuration, you
+ should probably not trim any of the <filename>updates</filename>
+ branches for the distributions you support. These locations
+ contain packages with bug fixes, security patches, and errata
+ updates that your users probably want.
</para>
</section>
<section id="sn-download-files">
<title>Downloading the Files</title>
<para>
- Locate a public mirror site for &FC; by referring to the main project
- site's mirror page, &FDP-URL;. Once you have selected a nearby mirror
- site, note what services it offers (FTP, HTTP, and/or rsync). A mirror
- is usually servicing a large number of users. Choose off-peak hours,
- when possible, to download a large set of files. Be aware of any
- timezone differences when estimating off-peak hours.
+ Locate a public mirror site for &FC; by referring to the main
+ project site's mirror page, &FDP-URL;. Once you have selected a
+ nearby mirror site, note what services it offers (FTP, HTTP,
+ and/or rsync). A mirror is usually servicing a large number of
+ users. Choose off-peak hours, when possible, to download a large
+ set of files. Be aware of any timezone differences when
+ estimating off-peak hours.
</para>
<section id="sn-http-and-ftp-download">
<title>Download Using HTTP or FTP</title>
<para>
- To download via HTTP or FTP, use the <command>wget</command> command.
- <command>wget</command> recurses subdirectories automatically and
- pulls down entire trees of data with a single command. If you are not
- careful, however, it is possible to pull down much more data than you
- intended. The following commands mirror the entire current &FC;
+ To download via HTTP or FTP, use the <command>wget</command>
+ command. <command>wget</command> recurses subdirectories
+ automatically and pulls down entire trees of data with a
+ single command. If you are not careful, however, it is
+ possible to pull down much more data than you intended. The
+ following commands mirror the entire current &FC;
distribution:
</para>
@@ -584,60 +604,64 @@
<itemizedlist>
<listitem>
<para>
- <command>--mirror</command> turns on recursion (descends into all
- subdirectories), and duplicates file timestamps;
+ <command>--mirror</command> turns on recursion (descends
+ into all subdirectories), and duplicates file timestamps;
</para>
</listitem>
<listitem>
<para>
- <command>-np</command> prevents <command>wget</command> from
- ascending into the parent directory;
+ <command>-np</command> prevents <command>wget</command>
+ from ascending into the parent directory;
</para>
</listitem>
<listitem>
<para>
- <command>-nH</command> prevents <command>wget</command> from
- writing a directory named after the host (in this case,
+ <command>-nH</command> prevents <command>wget</command>
+ from writing a directory named after the host (in this
+ case,
<filename><replaceable>mirror.example.com</replaceable></filename>);
</para>
</listitem>
<listitem>
<para>
<command>--cut-dirs=<replaceable>n</replaceable></command>
- truncates the first <replaceable>n</replaceable> directories in
- the path. In the example above, <command>--cut-dirs=2</command>
- prevents <command>wget</command> from writing the
+ truncates the first <replaceable>n</replaceable>
+ directories in the path. In the example above,
+ <command>--cut-dirs=2</command> prevents
+ <command>wget</command> from writing the
<filename><replaceable>/pub/mirror</replaceable></filename>
portion of the path into your mirror.
</para>
</listitem>
</itemizedlist>
<para>
- The same syntax works for both HTTP and FTP mirrors. It is possible
- that you may download some extraneous files if the HTTP site formats
- its pages for browser viewing. These files can be safely deleted, but
- return each time the mirror updates unless you exclude them using
- special options. See the <command>wget</command> man pages for more
- information.
+ The same syntax works for both HTTP and FTP mirrors. It is
+ possible that you may download some extraneous files if the
+ HTTP site formats its pages for browser viewing. These files
+ can be safely deleted, but return each time the mirror updates
+ unless you exclude them using special options. See the
+ <command>wget</command> man pages for more information.
</para>
</section>
<section id="sn-rsync">
<title>The <command>rsync</command> Command</title>
<para>
- Use the <command>rsync</command> command to synchronize a set of files
- and/or directories with a remote host. It operates in much the same
- way as <command>rcp</command>, but it is usually faster. One reason
- for the speed is that <command>rsync</command> has a special protocol
- that evaluates and skips files (or portions of files) that are already
+ Use the <command>rsync</command> command to synchronize a set
+ of files and/or directories with a remote host. It operates in
+ much the same way as <command>rcp</command>, but it is usually
+ faster. One reason for the speed is that
+ <command>rsync</command> has a special protocol that evaluates
+ and skips files (or portions of files) that are already
downloaded.
</para>
<para>
- Begin by identifying the modules available on the upstream mirror site
- you have chosen. Note that the double colon <quote>::</quote> is
- always used after the host name to separate it from the rest of the
- <command>rsync</command> path. The following command generates a list
- of <quote>modules</quote> on the upstream mirror.
+ Begin by identifying the modules available on the upstream
+ mirror site you have chosen. Note that the double colon
+ <quote>::</quote> is always used after the host name to
+ separate it from the rest of the <command>rsync</command>
+ path. The following command generates a list of
+ <quote>modules</quote> on the upstream mirror.
</para>
<screen>
@@ -645,16 +669,18 @@
</screen>
<para>
- These modules are roughly equivalent to top-level directories, and
- they follow the same rules. To list any subdirectory of the upstream
- mirror, add the directory path to the command above. For example, on
- many mirrors, the <filename>fedora-linux-core</filename> module is
- equivalent to the <filename>fedora/linux/core</filename> path found at
- the &FP; main download server. To list the contents of the &FC;
+ These modules are roughly equivalent to top-level directories,
+ and they follow the same rules. To list any subdirectory of
+ the upstream mirror, add the directory path to the command
+ above. For example, on many mirrors, the
+ <filename>fedora-linux-core</filename> module is equivalent to
+ the <filename>fedora/linux/core</filename> path found at the
+ &FP; main download server. To list the contents of the &FC;
&FCVER; distribution folder on the upstream server, issue the
- following command. Do not forget the trailing slash <quote>/</quote>.
- Without it, you only receive a listing of a folder name that matches
- the last component of the remote path.
+ following command. Do not forget the trailing slash
+ <quote>/</quote>. Without it, you only receive a listing of a
+ folder name that matches the last component of the remote
+ path.
</para>
<screen>
@@ -666,12 +692,13 @@
<section id="sn-rsync-download">
<title>Downloading Using <command>rsync</command></title>
<para>
- To download via <command>rsync</command>, add a destination path on
- your system to the end of the command line. The resulting tree of
- files from the listing you perform are downloaded to the local path
- you specify. Remember, if you leave off the trailing slash on the
- remote path, then the last component of that path is created as a
- folder, and its contents are copied.
+ To download via <command>rsync</command>, add a destination
+ path on your system to the end of the command line. The
+ resulting tree of files from the listing you perform are
+ downloaded to the local path you specify. Remember, if you
+ leave off the trailing slash on the remote path, then the last
+ component of that path is created as a folder, and its
+ contents are copied.
</para>
<screen>
@@ -1000,8 +1027,8 @@
Alias /mirror /var/www/mirror
# Share options for the installation tree.
-# Only allow connections from the local host and machines
-# whose IP addresses start with 192.168.1
+# Only allow connections from localhost and
+# IP addresses which start with 192.168.1
<Directory /var/www/mirror>
AllowOverride None
@@ -1040,185 +1067,191 @@
</section>
- <section id="sn-solving-dependencies">
- <title>Solving Dependencies</title>
- <para>
- Every RPM package has a <emphasis>header</emphasis> that contains
- all the vital information about that package. This information
- includes name, version and release, contents, the capabilities
- provided by the package, and any prerequisites. These
- prerequisites may include
- <emphasis>dependencies</emphasis><indexterm>
- <primary>dependencies</primary> </indexterm>. A dependency is a
- requirement for one or more additional packages.
- </para>
- <para>
- Packages installed without satisfying their dependencies may not
- work correctly. Dependencies may create a problem for users who
- are trying to install a single package. Manually determining and
- resolving dependencies is difficult. &FC; provides the
- <command>yum</command> utility for solving these dependencies
- automatically, providing an improved user experience.
- </para>
+ <section id="sn-solving-dependencies">
+ <title>Solving Dependencies</title>
+ <para>
+ Every RPM package has a <indexterm> <primary>RPM</primary>
+ <secondary>header</secondary>
+ </indexterm><firstterm>header</firstterm> that contains all
+ the vital information about that package. This information
+ includes name, version and release, contents, the capabilities
+ provided by the package, and any prerequisites. These
+ prerequisites may include
+ <emphasis>dependencies</emphasis><indexterm>
+ <primary>RPM</primary>
+ <secondary>dependencies</secondary>
+ </indexterm>. A dependency is a requirement for one or more
+ additional packages.
+ </para>
+ <para>
+ Packages installed without satisfying their dependencies may not
+ work correctly. Dependencies may create a problem for users who
+ are trying to install a single package. Manually determining and
+ resolving dependencies is difficult. &FC; provides the
+ <command>yum</command> utility for solving these dependencies
+ automatically, providing an improved user experience.
+ </para>
- <para>
+ <para>
The Yellow Dog Updater Modified, or
- <emphasis>yum</emphasis><indexterm> <primary>yum</primary>
+ <emphasis>yum</emphasis><indexterm> <primary>yum</primary>
</indexterm>, is a Python-based system for computing and solving
- RPM dependencies. A <command>yum</command> client retrieves a
- cache of headers from its repository server, as well as a list of
- available RPM packages and their exact locations on the server. It
- can do this via HTTP or FTP, as well as using standard file system
- calls (either local or remote via NFS). The client computes
- solutions to any package dependencies using the downloaded header
- information, and simply requests all necessary RPM packages once
- it has finished. The <command>yum</command> command relies on
- <command>rpm</command> functions to perform many of the
- computations involved in the process.
- </para>
- <para>
- A drawback to <command>yum</command> is that the first time it is
- run, it must download a header for every package installed on the
- system in order to determine available updates. However, running a
- local mirror nullifies this drawback. The <command>yum</command>
- command can download many megabytes of headers almost instantly on
- a standard Ethernet LAN. The <command>yum</command> utility is the
- most popular update method for &FC;.
- </para>
- <para>
- For more information about using <command>yum</command>, refer to
- <ulink url="http://fedora.redhat.com/docs/yum/"/>.
- </para>
+ RPM dependencies. A <command>yum</command> client retrieves a
+ cache of headers from its repository server, as well as a list
+ of available RPM packages and their exact locations on the
+ server. It can do this via HTTP or FTP, as well as using
+ standard file system calls (either local or remote via NFS). The
+ client computes solutions to any package dependencies using the
+ downloaded header information, and simply requests all necessary
+ RPM packages once it has finished. The <command>yum</command>
+ command relies on <command>rpm</command> functions to perform
+ many of the computations involved in the process.
+ </para>
+ <para>
+ A drawback to <command>yum</command> is that the first time it
+ is run, it must download a header for every package installed on
+ the system in order to determine available updates. However,
+ running a local mirror nullifies this drawback. The
+ <command>yum</command> command can download many megabytes of
+ headers almost instantly on a standard Ethernet LAN. The
+ <command>yum</command> utility is the most popular update method
+ for &FC;.
+ </para>
+ <para>
+ For more information about using <command>yum</command>, refer
+ to <ulink url="http://fedora.redhat.com/docs/yum/"/>.
+ </para>
- </section>
+ </section>
- <section id="sn-repositories">
- <title>Configuring Repositories</title>
- <para>
+ <section id="sn-repositories">
+ <title>Configuring Repositories</title>
+ <para>
A <command>yum</command>
- <emphasis>repository</emphasis><indexterm>
- <primary>repository</primary> <secondary>yum</secondary>
- </indexterm> is a collection of packages on a server which
- supports <command>yum</command> clients. Repositories can serve
- both types of clients if desired.
- </para>
+ <emphasis>repository</emphasis><indexterm>
+ <primary>repository</primary>
+ </indexterm> is a collection of packages on a server which
+ supports <command>yum</command> clients. Repositories can serve
+ both types of clients if desired.
+ </para>
- <para>
- To set up a <command>yum</command> repository, you must write a
- directory that contains information which the clients require to
- resolve RPM dependencies. The directory's name depends on the
- version of <command>yum</command> it supports. It is permissible
- to have both kinds of repository information in a single
- repository.
- </para>
- <para>
- To support older <command>yum</command> clients, use the
- <command>yum-arch</command> command. To support current
- <command>yum</command> clients, use the
- <command>createrepo</command> command.
- </para>
- <important>
- <title>Supporting &FC; 3 and beyond</title>
<para>
- &FC; 3 ships with a newer version of <command>yum</command>. To
- support &FC; 3 <command>yum</command> clients, you
- <emphasis>must</emphasis> use <command>createrepo</command> on
- your server's repositories.
- </para>
- </important>
-
- <section id="sn-yum-arch">
- <title><command>yum-arch</command></title>
- <para>
- A directory which supports older versions of
- <command>yum</command> (before 2.2) is named
- <filename>headers</filename>. It is created by using the command
- <command>yum-arch</command>, which is run against the directory
- <emphasis>under which</emphasis> you want the
- <filename>headers</filename> directory to appear. The
- <command>yum-arch</command> program searches recursively through
- that directory and any subdirectories for RPM packages, and
- includes them in the header data.
+ To set up a <command>yum</command> repository, you must write a
+ directory that contains information which the clients require to
+ resolve RPM dependencies. The directory's name depends on the
+ version of <command>yum</command> it supports. It is permissible
+ to have both kinds of repository information in a single
+ repository.
+ </para>
+ <para>
+ To support older <command>yum</command> clients, use the
+ <command>yum-arch</command> command. To support current
+ <command>yum</command> clients, use the
+ <command>createrepo</command> command.
</para>
+ <important>
+ <title>Supporting &FC; 3 and beyond</title>
+ <para>
+ &FC; 3 ships with a newer version of <command>yum</command>.
+ To support &FC; 3 <command>yum</command> clients, you
+ <emphasis>must</emphasis> use <command>createrepo</command> on
+ your server's repositories.
+ </para>
+ </important>
+
+ <section id="sn-yum-arch">
+ <title><command>yum-arch</command></title>
+ <para>
+ A directory which supports older versions of
+ <command>yum</command> (before 2.2) is named
+ <filename>headers</filename>. It is created by using the
+ command <command>yum-arch</command>, which is run against the
+ directory <emphasis>under which</emphasis> you want the
+ <filename>headers</filename> directory to appear. The
+ <command>yum-arch</command> program searches recursively
+ through that directory and any subdirectories for RPM
+ packages, and includes them in the header data.
+ </para>
<screen>
<userinput>yum-arch -l -s /var/www/mirror/fedora/linux/core/&FCVER;/i386/os</userinput>
</screen>
- <para>
- The <command>-l</command> switch follows symbolic links. The
- <command>-s</command> switch includes SRPMS (source RPM
- packages) in the header list. The command above creates the
- <command>yum</command> header cache in the directory
- <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/headers</filename>.
- </para>
- </section>
+ <para>
+ The <command>-l</command> switch follows symbolic links. The
+ <command>-s</command> switch includes SRPMS (source RPM
+ packages) in the header list. The command above creates the
+ <command>yum</command> header cache in the directory
+ <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/headers</filename>.
+ </para>
+ </section>
- <section id="sn-createrepo">
- <title><command>createrepo</command></title>
- <para>
- The <command>createrepo</command> command creates repository
- information to support newer versions of <command>yum</command>
- (and possibly other repository client programs). The
- <command>createrepo</command> command stores this data in a
- folder named <filename>repodata</filename>. Just as with
- <command>yum-arch</command>, run <command>createrepo</command>
- against the directory <emphasis>under which</emphasis> you want
- the <filename>repodata</filename> directory to appear. The
- <command>createrepo</command> program also searches recursively
- for RPM packages to include in the repository data.
- </para>
- <para>
- The following command creates the repository data in the
- directory
- <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/repodata</filename>.
- </para>
+ <section id="sn-createrepo">
+ <title><command>createrepo</command></title>
+ <para>
+ The <command>createrepo</command> command creates repository
+ information to support newer versions of
+ <command>yum</command> (and possibly other repository client
+ programs). The <command>createrepo</command> command stores
+ this data in a folder named <filename>repodata</filename>.
+ Just as with <command>yum-arch</command>, run
+ <command>createrepo</command> against the directory
+ <emphasis>under which</emphasis> you want the
+ <filename>repodata</filename> directory to appear. The
+ <command>createrepo</command> program also searches
+ recursively for RPM packages to include in the repository
+ data.
+ </para>
+ <para>
+ The following command creates the repository data in the
+ directory
+ <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/repodata</filename>.
+ </para>
<screen>
<userinput>createrepo /var/www/mirror/fedora/linux/core/&FCVER;/i386/os</userinput>
</screen>
- <para>
- You may not be able to foresee all the possible uses for your
- server's repositories. You may have certain clients who update
- their version of <command>yum</command> in a non-prescribed way.
- To minimize problems for your clients, create both kinds of
- repository data for any repositories. The extra repository
- information is relatively small and will not affect your
- mirror's proper function.
- </para>
+ <para>
+ You may have certain clients who update their version of
+ <command>yum</command> in a non-prescribed way. To minimize
+ problems for your clients, create both kinds of repository
+ data for any repositories. The extra repository information
+ is relatively small and will not affect your mirror's proper
+ function.
+ </para>
- </section>
+ </section>
- <section id="sn-repository-locations">
- <title>Repository Locations</title>
- <para>
- Typically <command>yum-arch</command> or
- <command>createrepo</command> is run against at least the
- following locations:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The stock distribution; for example,
- <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/</filename>.
- For <command>yum-arch</command> use the
- <command>-l</command> and <command>-s</command> options to
- follow the linked directory <filename>SRPMS</filename> and
- include the source packages therein.
- </para>
- </listitem>
- <listitem>
- <para>
- Official updates to the distribution; for example,
- <filename>/var/mirror/fedora/linux/core/updates/&FCVER;/</filename>.
- Once again, for <command>yum-arch</command> use
- <command>-l</command> and/or <command>-s</command> if
- appropriate.
- </para>
- </listitem>
- </itemizedlist>
- </section>
+ <section id="sn-repository-locations">
+ <title>Repository Locations</title>
+ <para>
+ Typically you will run <command>yum-arch</command> or
+ <command>createrepo</command> against at least the following
+ locations:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The stock distribution; for example,
+ <filename>/var/www/mirror/fedora/linux/core/&FCVER;/i386/os/</filename>.
+ For <command>yum-arch</command>, use the
+ <command>-l</command> and <command>-s</command> options to
+ follow the linked directory <filename>SRPMS</filename> and
+ include the source packages therein.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Official updates to the distribution; for example,
+ <filename>/var/mirror/fedora/linux/core/updates/&FCVER;/</filename>.
+ Once again, for <command>yum-arch</command> use
+ <command>-l</command> and/or <command>-s</command> if
+ appropriate.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </section>
</section>
More information about the Fedora-docs-commits
mailing list