doc/en_US.ISO8859-1/articles/hubs/article.xml
Glen Barber d905c2750c Replace rel2.current with rel1.current as a prerequisite for
a larger incoming update.

Sponsored by:	Rubicon Communications, LLC (Netgate)
2019-07-03 16:51:13 +00:00

805 lines
28 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
"http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd">
<article xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
xml:lang="en">
<info>
<title>Mirroring FreeBSD</title>
<authorgroup>
<author>
<personname>
<firstname>Jun</firstname>
<surname>Kuriyama</surname>
</personname>
<affiliation>
<address>
<email>kuriyama@FreeBSD.org</email>
</address>
</affiliation>
</author>
<author>
<personname>
<firstname>Valentino</firstname>
<surname>Vaschetto</surname>
</personname>
<affiliation>
<address>
<email>logo@FreeBSD.org</email>
</address>
</affiliation>
</author>
<author>
<personname>
<firstname>Daniel</firstname>
<surname>Lang</surname>
</personname>
<affiliation>
<address>
<email>dl@leo.org</email>
</address>
</affiliation>
</author>
<author>
<personname>
<firstname>Ken</firstname>
<surname>Smith</surname>
</personname>
<affiliation>
<address>
<email>kensmith@FreeBSD.org</email>
</address>
</affiliation>
</author>
</authorgroup>
<legalnotice xml:id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>An in-progress article on how to mirror FreeBSD, aimed at
hub administrators.</para>
</abstract>
</info>
<note>
<para>We are not accepting new mirrors at this time.</para>
</note>
<sect1 xml:id="mirror-contact">
<title>Contact Information</title>
<para>The Mirror System Coordinators can be reached through email
at <email>mirror-admin@FreeBSD.org</email>. There is also
a &a.hubs;.</para>
</sect1>
<sect1 xml:id="mirror-requirements">
<title>Requirements for FreeBSD Mirrors</title>
<sect2 xml:id="mirror-diskspace">
<title>Disk Space</title>
<para>Disk space is one of the most important requirements.
Depending on the set of releases, architectures, and degree of
completeness you want to mirror, a huge amount of disk space
may be consumed. Also keep in mind that
<emphasis>official</emphasis> mirrors are probably required to
be complete. The web pages should always be mirrored
completely. Also note that the numbers stated here are
reflecting the current state (at
&rel.current;-RELEASE/&rel1.current;-RELEASE). Further
development and releases will only increase the required
amount. Also make sure to keep some (ca. 10-20%) extra space
around just to be sure. Here are some approximate
figures:</para>
<itemizedlist>
<listitem>
<para>Full FTP Distribution: 1.4 TB</para>
</listitem>
<listitem>
<para>CTM deltas: 10 GB</para>
</listitem>
<listitem>
<para>Web pages: 1GB</para>
</listitem>
</itemizedlist>
<para>The current disk usage of FTP Distribution can be found at
<link
xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/dir.sizes">ftp://ftp.FreeBSD.org/pub/FreeBSD/dir.sizes</link>.</para>
</sect2>
<sect2 xml:id="mirror-bandwidth">
<title>Network Connection/Bandwidth</title>
<para>Of course, you need to be connected to the Internet. The
required bandwidth depends on your intended use of the mirror.
If you just want to mirror some parts of FreeBSD for local use
at your site/intranet, the demand may be much smaller than if
you want to make the files publicly available. If you intend
to become an official mirror, the bandwidth required will be
even higher. We can only give rough estimates here:</para>
<itemizedlist>
<listitem>
<para>Local site, no public access: basically no minimum,
but &lt; 2 Mbps could make syncing too
slow.</para>
</listitem>
<listitem>
<para>Unofficial public site: 34 Mbps is probably a good
start.</para>
</listitem>
<listitem>
<para>Official site: &gt; 100 Mbps is recommended, and your
host should be connected as close as possible to your
border router.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 xml:id="mirror-system">
<title>System Requirements, CPU, RAM</title>
<para>One thing this depends on the expected number of clients,
which is determined by the server's policy. It is also
affected by the types of services you want to offer. Plain
FTP or HTTP services may not require a huge amount of
resources. Watch out if you provide rsync. This can have a
huge impact on CPU and memory requirements as it is considered
a memory hog. The following are just examples to give you a
very rough hint.</para>
<para>For a moderately visited site that offers
<application>rsync</application>, you might consider a current
CPU with around 800MHz - 1 GHz, and at least 512MB RAM. This
is probably the minimum you want for an
<emphasis>official</emphasis> site.</para>
<para>For a frequently used site you definitely need more RAM
(consider 2GB as a good start) and possibly more CPU, which
could also mean that you need to go for a SMP system.</para>
<para>You also want to consider a fast disk subsystem.
Operations on the SVN repository require a fast disk subsystem
(RAID is highly advised). A SCSI controller that has a cache
of its own can also speed up things since most of these
services incur a large number of small modifications to the
disk.</para>
</sect2>
<sect2 xml:id="mirror-services">
<title>Services to Offer</title>
<para>Every mirror site is required to have a set of core
services available. In addition to these required services,
there are a number of optional services that server
administrators may choose to offer. This section explains
which services you can provide and how to go about
implementing them.</para>
<sect3 xml:id="mirror-serv-ftp">
<title>FTP (required for FTP Fileset)</title>
<para>This is one of the most basic services, and it is
required for each mirror offering public FTP distributions.
FTP access must be anonymous, and no upload/download ratios
are allowed (a ridiculous thing anyway). Upload capability
is not required (and <emphasis>must</emphasis> never be
allowed for the FreeBSD file space). Also the FreeBSD
archive should be available under the path
<filename>/pub/FreeBSD</filename>.</para>
<para>There is a lot of software available which can be set up
to allow anonymous FTP (in alphabetical order).</para>
<itemizedlist>
<listitem>
<para><command>/usr/libexec/ftpd</command>: FreeBSD's own
ftpd can be used. Be sure to read &man.ftpd.8;.</para>
</listitem>
<listitem>
<para><package>ftp/ncftpd</package>: A commercial package,
free for educational use.</para>
</listitem>
<listitem>
<para><package>ftp/oftpd</package>: An ftpd designed with
security as a main focus.</para>
</listitem>
<listitem>
<para><package>ftp/proftpd</package>: A modular and very
flexible ftpd.</para>
</listitem>
<listitem>
<para><package>ftp/pure-ftpd</package>: Another ftpd
developed with security in mind.</para>
</listitem>
<listitem>
<para><package>ftp/twoftpd</package>: As
above.</para>
</listitem>
<listitem>
<para><package>ftp/vsftpd</package>: The <quote>very
secure</quote> ftpd.</para>
</listitem>
</itemizedlist>
<para>FreeBSD's <application>ftpd</application>,
<application>proftpd</application> and maybe
<application>ncftpd</application> are among the most
commonly used FTPds. The others do not have a large
userbase among mirror sites. One thing to consider is that
you may need flexibility in limiting how many simultaneous
connections are allowed, thus limiting how much network
bandwidth and system resources are consumed.</para>
</sect3>
<sect3 xml:id="mirror-serv-rsync">
<title>Rsync (optional for FTP Fileset)</title>
<para><application>Rsync</application> is often offered for
access to the contents of the FTP area of FreeBSD, so other
mirror sites can use your system as their source. The
protocol is different from FTP in many ways. It is much
more bandwidth friendly, as only differences between files
are transferred instead of whole files when they change.
<application>Rsync</application> does require a significant
amount of memory for each instance. The size depends on the
size of the synced module in terms of the number of
directories and files. <application>Rsync</application> can
use <command>rsh</command> and <command>ssh</command> (now
default) as a transport, or use its own protocol for
stand-alone access (this is the preferred method for public
rsync servers). Authentication, connection limits, and
other restrictions may be applied. There is just one
software package available:</para>
<itemizedlist>
<listitem>
<para><package>net/rsync</package></para>
</listitem>
</itemizedlist>
</sect3>
<sect3 xml:id="mirror-serv-http">
<title>HTTP (required for Web Pages, Optional for FTP
Fileset)</title>
<para>If you want to offer the FreeBSD web pages, you will
need to install a web server. You may optionally offer the
FTP fileset via HTTP. The choice of web server software is
left up to the mirror administrator. Some of the most
popular choices are:</para>
<itemizedlist>
<listitem>
<para><package>www/apache24</package>:
<application>Apache</application> is still one of the
most widely deployed web servers on the Internet. It is
used extensively by the FreeBSD Project.</para>
</listitem>
<listitem>
<para><package>www/boa</package>:
<application>Boa</application> is a single-tasking HTTP
server. Unlike traditional web servers, it does not
fork for each incoming connection, nor does it fork many
copies of itself to handle multiple connections.
Although, it should provide considerably great
performance for purely static content.</para>
</listitem>
<listitem>
<para><package>www/cherokee</package>:
<application>>Cherokee</application> is a very fast,
flexible and easy to configure web server. It supports
the widespread technologies nowadays: FastCGI, SCGI,
PHP, CGI, SSL/TLS encrypted connections, vhosts, users
authentication, on the fly encoding and load balancing.
It also generates <application>Apache</application>
compatible log files.</para>
</listitem>
<listitem>
<para><package>www/lighttpd</package>:
<application>lighttpd</application> is a secure, fast,
compliant and very flexible web server which has been
optimized for high-performance environments. It has a
very low memory footprint compared to other web servers
and takes care of cpu-load.</para>
</listitem>
<listitem>
<para><package>www/nginx</package>:
<application>nginx</application> is a high performance
edge web server with a low memory footprint and key
features to build a modern and efficient web
infrastructure. Features include a HTTP server, HTTP
and mail reverse proxy, caching, load balancing,
compression, request throttling, connection multiplexing
and reuse, SSL offload and HTTP media streaming.</para>
</listitem>
<listitem>
<para><package>www/thttpd</package>: If you are going to
be serving a large amount of static content you may find
that using an application such as
<application>thttpd</application> is more efficient than
others. It is also optimized for excellent performance
on FreeBSD.</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
</sect1>
<sect1 xml:id="mirror-howto">
<title>How to Mirror FreeBSD</title>
<para>Ok, now you know the requirements and how to offer the
services, but not how to get it. :-) This section explains how
to actually mirror the various parts of FreeBSD, what tools to
use, and where to mirror from.</para>
<sect2 xml:id="mirror-ftp-rsync">
<title>Mirroring the FTP Site</title>
<para>The FTP area is the largest amount of data that needs to
be mirrored. It includes the <emphasis>distribution
sets</emphasis> required for network installation, the
<emphasis>branches</emphasis> which are actually snapshots of
checked-out source trees, the <emphasis>ISO Images</emphasis>
to write CD-ROMs with the installation distribution, a live
file system, and a snapshot of the ports tree. All of course
for various FreeBSD versions, and various
architectures.</para>
<para>The best way to mirror the FTP area is
<application>rsync</application>. You can install the port
<package>net/rsync</package> and then use rsync to sync with
your upstream host. <application>rsync</application> is
already mentioned in <xref linkend="mirror-serv-rsync"/>.
Since <application>rsync</application> access is not required,
your preferred upstream site may not allow it. You may need
to hunt around a little bit to find a site that allows
<application>rsync</application> access.</para>
<note>
<para>Since the number of <application>rsync</application>
clients will have a significant impact on the server
machine, most admins impose limitations on their server.
For a mirror, you should ask the site maintainer you are
syncing from about their policy, and maybe an exception for
your host (since you are a mirror).</para>
</note>
<para>A command line to mirror FreeBSD might look like:</para>
<screen>&prompt.user; <userinput>rsync -vaHz --delete rsync://ftp4.de.FreeBSD.org/FreeBSD/ /pub/FreeBSD/</userinput></screen>
<para>Consult the documentation for
<application>rsync</application>, which is also available at
<link
xlink:href="http://rsync.samba.org/">http://rsync.samba.org/</link>,
about the various options to be used with rsync. If you sync
the whole module (unlike subdirectories), be aware that the
module-directory (here "FreeBSD") will not be created, so you
cannot omit the target directory. Also you might want to set
up a script framework that calls such a command via
&man.cron.8;.</para>
</sect2>
<sect2 xml:id="mirror-www">
<title>Mirroring the WWW Pages</title>
<para>The FreeBSD website should only be mirrored via
<application>rsync</application>.</para>
<para>A command line to mirror the FreeBSD web site might look
like:</para>
<screen>&prompt.user; <userinput>rsync -vaHz --delete rsync://bit0.us-west.freebsd.org/FreeBSD-www-data/ /usr/local/www/</userinput></screen>
</sect2>
<sect2 xml:id="mirror-pkgs">
<title>Mirroring Packages</title>
<para>Due to very high requirements of bandwidth, storage and
adminstration the &os; Project has decided not to allow public
mirrors of packages. For sites with lots of machines, it
might be advantagous to run a caching HTTP proxy for the
&man.pkg.8; process. Alternatively specific packages and
their dependencies can be fetched by running something like
the following:</para>
<screen>&prompt.user; <userinput>pkg fetch -d -o <replaceable>/usr/local/mirror</replaceable> <replaceable>vim</replaceable></userinput></screen>
<para>Once those packages have been fetched, the repository
metadata must be generated by running:</para>
<screen>&prompt.user; <userinput>pkg repo <replaceable>/usr/local/mirror</replaceable></userinput></screen>
<para>Once the packages have been fetched and the metadata for
the repository has been generated, serve the packages up to
the client machines via HTTP. For additional information see
the man pages for &man.pkg.8;, specifically the
&man.pkg-repo.8; page.</para>
</sect2>
<sect2 xml:id="mirror-how-often">
<title>How Often Should I Mirror?</title>
<para>Every mirror should be updated at a minimum of once per
day. Certainly a script with locking to prevent multiple runs
happening at the same time will be needed to run from
&man.cron.8;. Since nearly every admin does this in their own
way, specific instructions cannot be provided. It could work
something like this:</para>
<procedure>
<step>
<para>Put the command to run your mirroring application in a
script. Use of a plain <command>/bin/sh</command> script
is recommended.</para>
</step>
<step>
<para>Add some output redirections so diagnostic messages
are logged to a file.</para>
</step>
<step>
<para>Test if your script works. Check the logs.</para>
</step>
<step>
<para>Use &man.crontab.1; to add the script to the
appropriate user's &man.crontab.5;. This should be a
different user than what your FTP daemon runs as so that
if file permissions inside your FTP area are not
world-readable those files cannot be accessed by anonymous
FTP. This is used to <quote>stage</quote> releases
&mdash; making sure all of the official mirror sites have
all of the necessary release files on release day.</para>
</step>
</procedure>
<para>Here are some recommended schedules:</para>
<itemizedlist>
<listitem>
<para>FTP fileset: daily</para>
</listitem>
<listitem>
<para>WWW pages: daily</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 xml:id="mirror-where">
<title>Where to Mirror From</title>
<para>This is an important issue. So this section will spend some
effort to explain the backgrounds. We will say this several
times: under no circumstances should you mirror from <systemitem
class="fqdomainname">ftp.FreeBSD.org</systemitem>.</para>
<sect2 xml:id="mirror-where-organization">
<title>A few Words About the Organization</title>
<para>Mirrors are organized by country. All official mirrors
have a DNS entry of the form <systemitem
class="fqdomainname">ftpN.CC.FreeBSD.org</systemitem>.
<emphasis>CC</emphasis> (i.e., country code) is the
<emphasis>top level domain</emphasis> (TLD) of the country
where this mirror is located. <emphasis>N</emphasis> is a
number, telling that the host would be the
<emphasis>Nth</emphasis> mirror in that country. (Same
applies to <systemitem>wwwN.CC.FreeBSD.org</systemitem>, etc.)
There are mirrors with no <emphasis>CC</emphasis> part. These
are the mirror sites that are very well connected and allow a
large number of concurrent users. <systemitem
class="fqdomainname">ftp.FreeBSD.org</systemitem> is
actually two machines, one currently located in Denmark and
the other in the United States. It is
<emphasis>NOT</emphasis> a master site and should never be
used to mirror from. Lots of online documentation leads
<quote>interactive</quote>users to <systemitem
class="fqdomainname">ftp.FreeBSD.org</systemitem> so
automated mirroring systems should find a different machine to
mirror from.</para>
<para>Additionally there exists a hierarchy of mirrors, which is
described in terms of <emphasis>tiers</emphasis>. The master
sites are not referred to but can be described as
<emphasis>Tier-0</emphasis>. Mirrors that mirror from these
sites can be considered <emphasis>Tier-1</emphasis>, mirrors
of <emphasis>Tier-1</emphasis>-mirrors, are
<emphasis>Tier-2</emphasis>, etc. Official sites are
encouraged to be of a low <emphasis>tier</emphasis>, but the
lower the tier the higher the requirements in terms as
described in <xref linkend="mirror-requirements"/>. Also
access to low-tier-mirrors may be restricted, and access to
master sites is definitely restricted. The
<emphasis>tier</emphasis>-hierarchy is not reflected by DNS
and generally not documented anywhere except for the master
sites. However, official mirrors with low numbers like 1-4,
are usually <emphasis>Tier-1</emphasis> (this is just a rough
hint, and there is no rule).</para>
</sect2>
<sect2 xml:id="mirror-where-where">
<title>Ok, but Where Should I get the Stuff Now?</title>
<para>Under no circumstances should you mirror from <systemitem
class="fqdomainname">ftp.FreeBSD.org</systemitem>. The
short answer is: from the site that is closest to you in
Internet terms, or gives you the fastest access.</para>
<sect3 xml:id="mirror-where-simple">
<title>I Just Want to Mirror from Somewhere!</title>
<para>If you have no special intentions or requirements, the
statement in <xref linkend="mirror-where-where"/> applies.
This means:</para>
<procedure>
<step>
<para>Check for those which provide fastest access (number
of hops, round-trip-times) and offer the services you
intend to use (like
<application>rsync</application>).</para>
</step>
<step>
<para>Contact the administrators of your chosen site
stating your request, and asking about their terms and
policies.</para>
</step>
<step>
<para>Set up your mirror as described above.</para>
</step>
</procedure>
</sect3>
<sect3 xml:id="mirror-where-official">
<title>I am an Official Mirror, What is the Right Rite for
Me?</title>
<para>In general the description in <xref
linkend="mirror-where-simple"/> still applies. Of course
you may want to put some weight on the fact that your
upstream should be of a low tier. There are some other
considerations about <emphasis>official</emphasis> mirrors
that are described in <xref
linkend="mirror-official"/>.</para>
</sect3>
<sect3 xml:id="mirror-where-master">
<title>I Want to Access the Master Sites!</title>
<para>If you have good reasons and good prerequisites, you may
want and get access to one of the master sites. Access to
these sites is generally restricted, and there are special
policies for access. If you are already an
<emphasis>official</emphasis> mirror, this certainly helps
you getting access. In any other case make sure your
country really needs another mirror. If it already has
three or more, ask the <quote>zone administrator</quote>
(<email>hostmaster@CC.FreeBSD.org</email>) or &a.hubs;
first.</para>
<para>Whoever helped you become, an
<emphasis>official</emphasis> should have helped you gain
access to an appropriate upstream host, either one of the
master sites or a suitable Tier-1 site. If not, you can
send email to <email>mirror-admin@FreeBSD.org</email> to
request help with that.</para>
<para>There is one master site for the FTP fileset.</para>
<sect4 xml:id="mirror-where-master-ftp">
<title>ftp-master.FreeBSD.org</title>
<para>This is the master site for the FTP fileset.</para>
<para><systemitem>ftp-master.FreeBSD.org</systemitem>
provides <application>rsync</application> access, in
addition to FTP. Refer to <xref
linkend="mirror-ftp-rsync"/>.</para>
<para>Mirrors are also encouraged to allow
<application>rsync</application> access for the FTP
contents, since they are
<emphasis>Tier-1</emphasis>-mirrors.</para>
</sect4>
</sect3>
</sect2>
</sect1>
<sect1 xml:id="mirror-official">
<title>Official Mirrors</title>
<para>Official mirrors are mirrors that</para>
<itemizedlist>
<listitem>
<para>a) have a <systemitem>FreeBSD.org</systemitem> DNS entry
(usually a CNAME).</para>
</listitem>
<listitem>
<para>b) are listed as an official mirror in the FreeBSD
documentation (like handbook).</para>
</listitem>
</itemizedlist>
<para>So far to distinguish official mirrors. Official mirrors
are not necessarily <emphasis>Tier-1</emphasis>-mirrors.
However you probably will not find a
<emphasis>Tier-1</emphasis>-mirror, that is not also
official.</para>
<sect2 xml:id="mirror-official-requirements">
<title>Special Requirements for Official (tier-1)
Mirrors</title>
<para>It is not so easy to state requirements for all official
mirrors, since the project is sort of tolerant here. It is
more easy to say, what <emphasis>official tier-1
mirrors</emphasis> are required to. All other official
mirrors can consider this a big
<emphasis>should</emphasis>.</para>
<para>Tier-1 mirrors are required to:</para>
<itemizedlist>
<listitem>
<para>carry the complete fileset</para>
</listitem>
<listitem>
<para>allow access to other mirror sites</para>
</listitem>
<listitem>
<para>provide <application>FTP</application> and
<application>rsync</application> access</para>
</listitem>
</itemizedlist>
<para>Furthermore, admins should be subscribed to the &a.hubs;.
See <link
xlink:href="https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/eresources.html#ERESOURCES-MAIL">this
link</link> for details, how to subscribe.</para>
<important>
<para>It is <emphasis>very</emphasis> important for a hub
administrator, especially Tier-1 hub admins, to check the
<link xlink:href="https://www.FreeBSD.org/releng/">release
schedule</link> for the next FreeBSD release. This is
important because it will tell you when the next release is
scheduled to come out, and thus giving you time to prepare
for the big spike of traffic which follows it.</para>
<para>It is also important that hub administrators try to keep
their mirrors as up-to-date as possible (again, even more
crucial for Tier-1 mirrors). If Mirror1 does not update for
a while, lower tier mirrors will begin to mirror old data
from Mirror1 and thus begins a downward spiral... Keep your
mirrors up to date!</para>
</important>
</sect2>
<sect2 xml:id="mirror-official-become">
<title>How to Become Official Then?</title>
<!--
<para>An interesting question, especially, since the state of
being official comes with some benefits, like a much higher
bill from your ISP as more people will be using your site.
Also it may be a key requirement to get access to a master
site.</para>
<para>Before applying, please consider (again) if another
official mirror is really needed for your region. Check first
with your zone administrator
(<email>hostmaster@CC.FreeBSD.org</email>) or, if that fails,
ask on the &a.hubs;.</para>
<para>Ok, here is how to do it:</para>
<procedure>
<step>
<para>Get the mirror running in first place (maybe not using
a master site, yet).</para>
</step>
<step>
<para><ulink
url="https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/eresources.html#ERESOURCES-MAIL">Subscribe</ulink>
to the &a.hubs;.</para>
</step>
<step>
<para>If everything works so far, contact the DNS
administrator responsible for your region/country, and ask
for a DNS entry for your site. The admin should able to be
contacted via <email>hostmaster@CC.FreeBSD.org</email>,
where <emphasis>CC</emphasis> is your country code/TLD.
Your DNS entry will be as described in <xref
linkend="mirror-where-organization"/>.</para>
<para>If there is no subdomain set up for your country yet,
you should contact
<email>mirror-admin@FreeBSD.org</email>, or you can try
the &a.hubs; first.</para>
</step>
<step>
<para>Whoever helps you get an official name should send
email to <email>mirror-admin@FreeBSD.org</email> so your
site will be added to the mirror list in the <ulink
url="https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook">FreeBSD
Handbook</ulink>.</para>
</step>
</procedure>
<para>That is it.</para>
-->
<para>We are not accepting any new mirrors at this time.</para>
</sect2>
</sect1>
<sect1 xml:id="mirror-statpages">
<title>Some Statistics from Mirror Sites</title>
<para>Here are links to the stat pages of your favorite mirrors
(aka the only ones who feel like providing stats).</para>
<sect2 xml:id="mirror-statpagesftp">
<title>FTP Site Statistics</title>
<itemizedlist>
<listitem>
<para>ftp.is.FreeBSD.org -
<email>hostmaster@is.FreeBSD.org</email> - <link
xlink:href="http://www.rhnet.is/status/draupnir/draupnir.html">
(Bandwidth)</link> <link
xlink:href="http://www.rhnet.is/status/ftp/ftp-notendur.html">(FTP
processes)</link> <link
xlink:href="http://www.rhnet.is/status/ftp/http-notendur.html">(HTTP
processes)</link></para>
</listitem>
<listitem>
<para>ftp2.ru.FreeBSD.org -
<email>mirror@macomnet.ru</email> - <link
xlink:href="http://mirror.macomnet.net/mrtg/mirror.macomnet.net_195.128.64.25.html">(Bandwidth)</link>
<link
xlink:href="http://mirror.macomnet.net/mrtg/mirror.macomnet.net_proc.html">(HTTP
and FTP users)</link></para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
</article>