|
Lines 11-17
Link Here
|
| 11 |
<article> |
11 |
<article> |
| 12 |
<articleinfo> |
12 |
<articleinfo> |
| 13 |
<title>Mirroring FreeBSD</title> |
13 |
<title>Mirroring FreeBSD</title> |
| 14 |
<pubdate>$FreeBSD: doc/en_US.ISO8859-1/articles/hubs/article.sgml,v 1.19 2002/04/16 00:48:42 keramida Exp $</pubdate> |
14 |
<pubdate>$FreeBSD: doc/en_US.ISO8859-1/articles/hubs/article.sgml,v 1.13 2002/04/01 01:45:14 keramida Exp $</pubdate> |
| 15 |
<authorgroup> |
15 |
<authorgroup> |
| 16 |
<author> |
16 |
<author> |
| 17 |
<firstname>Jun</firstname> |
17 |
<firstname>Jun</firstname> |
|
Lines 50-56
Link Here
|
| 50 |
Depending on the set of releases, architectures, |
50 |
Depending on the set of releases, architectures, |
| 51 |
and degree of completeness you want to mirror, a huge |
51 |
and degree of completeness you want to mirror, a huge |
| 52 |
amount of disk space may be consumed. Also keep in mind, |
52 |
amount of disk space may be consumed. Also keep in mind, |
| 53 |
that official mirrors are probably required to be |
53 |
that <emphasis>official</emphasis> mirrors are probably required to be |
| 54 |
complete. The CVS repository and the web pages should |
54 |
complete. The CVS repository and the web pages should |
| 55 |
always be mirrored completely. Also note, that the |
55 |
always be mirrored completely. Also note, that the |
| 56 |
numbers stated here, are reflecting the current |
56 |
numbers stated here, are reflecting the current |
|
Lines 80-87
Link Here
|
| 80 |
estimates here: |
80 |
estimates here: |
| 81 |
</para> |
81 |
</para> |
| 82 |
<itemizedlist> |
82 |
<itemizedlist> |
| 83 |
<listitem><para>Local site, no public access: basically no minimum.</para></listitem> |
83 |
<listitem><para>Local site, no public access: basically no minimum, |
| 84 |
<listitem><para>Unofficial public site: 34 Mbps is a good start.</para></listitem> |
84 |
but < 2 Mbps could make syncing a pain.</para></listitem> |
|
|
85 |
<listitem><para>Unofficial public site: 34 Mbps is probably a good start.</para></listitem> |
| 85 |
<listitem><para>Official site: > 100 Mbps is recommended, also your host |
86 |
<listitem><para>Official site: > 100 Mbps is recommended, also your host |
| 86 |
should be connected as close as possible to your border router.</para></listitem> |
87 |
should be connected as close as possible to your border router.</para></listitem> |
| 87 |
</itemizedlist> |
88 |
</itemizedlist> |
|
Lines 100-106
Link Here
|
| 100 |
indeed consume some CPU. For AnonCVS it might |
101 |
indeed consume some CPU. For AnonCVS it might |
| 101 |
be a nice idea to set up a memory resident filesystem (MFS) of at least |
102 |
be a nice idea to set up a memory resident filesystem (MFS) of at least |
| 102 |
300 MB, so you need to take this into account |
103 |
300 MB, so you need to take this into account |
| 103 |
for your memory requirements. |
104 |
for your memory requirements. The following |
|
|
105 |
are just examples to give you a very rough hint. |
| 106 |
</para> |
| 107 |
<para> |
| 108 |
For a moderately visited site, that offers |
| 109 |
<application>rsync</application>, you might |
| 110 |
consider a current CPU with around 800Mhz - 1 GHz, |
| 111 |
and at least 512MB RAM. This is probably the |
| 112 |
minimum you want for an <emphasis>official</emphasis> |
| 113 |
site. |
| 114 |
</para> |
| 115 |
<para> |
| 116 |
For a frequently used site you need definitely |
| 117 |
more RAM (consider 2GB as a good start), |
| 118 |
and possibly more CPU, which could also mean, |
| 119 |
that you need to go for a SMP system. |
| 104 |
</para> |
120 |
</para> |
| 105 |
<para> |
121 |
<para> |
| 106 |
You also want to consider a fast disk subsystem. |
122 |
You also want to consider a fast disk subsystem. |
|
Lines 120-130
Link Here
|
| 120 |
<sect2 id="mirror-services"> |
136 |
<sect2 id="mirror-services"> |
| 121 |
<title>Services to offer</title> |
137 |
<title>Services to offer</title> |
| 122 |
<para> |
138 |
<para> |
| 123 |
Every mirror site is required to have a set of core services |
139 |
Every mirror site is required to have a set of core services |
| 124 |
available. In addition to these basic services, which mirrors are |
140 |
available. In addition to these basic services, which mirrors are |
| 125 |
required to provide, there is a number of optional services that |
141 |
required to provide, there is a number of optional services that |
| 126 |
server administrators may choose to offer. This section explains |
142 |
server administrators may choose to offer. This section explains |
| 127 |
which services you can provide and how to go about implementing them. |
143 |
which services you can provide and how to go about implementing them. |
| 128 |
</para> |
144 |
</para> |
| 129 |
<sect3 id="mirror-serv-ftp"> |
145 |
<sect3 id="mirror-serv-ftp"> |
| 130 |
<title>FTP (required for FTP fileset)</title> |
146 |
<title>FTP (required for FTP fileset)</title> |
|
Lines 140-158
Link Here
|
| 140 |
the path <filename>/pub/FreeBSD</filename>. |
156 |
the path <filename>/pub/FreeBSD</filename>. |
| 141 |
</para> |
157 |
</para> |
| 142 |
<para> |
158 |
<para> |
| 143 |
There is lot of software available which |
159 |
There is a lot of software available which |
| 144 |
can be set up to allow anonymous FTP |
160 |
can be set up to allow anonymous FTP |
| 145 |
(in alphabetical order). |
161 |
(in alphabetical order). |
| 146 |
<itemizedlist> |
162 |
<itemizedlist> |
| 147 |
<listitem><para><filename>/usr/libexec/ftpd</filename>: FreeBSD's own <application>ftpd</application>, |
163 |
<listitem><para><command>/usr/libexec/ftpd</command>: FreeBSD's own ftpd |
| 148 |
can be used. Be sure to read &man.ftpd.8;.</para> |
164 |
can be used. Be sure to read &man.ftpd.8;.</para> |
| 149 |
</listitem> |
165 |
</listitem> |
| 150 |
<listitem> |
166 |
<listitem> |
| 151 |
<para><filename role="package">ftp/ncftpd</filename>: A commercial package, free for |
167 |
<para><filename role="package">ftp/ncftpd</filename>: A commercial package, |
| 152 |
educational use.</para> |
168 |
free for educational use.</para> |
| 153 |
</listitem> |
169 |
</listitem> |
| 154 |
<listitem> |
170 |
<listitem> |
| 155 |
<para><filename role="package">ftp/oftpd</filename>: an ftpd designed with |
171 |
<para><filename role="package">ftp/oftpd</filename>: An ftpd designed with |
| 156 |
security as a main focus.</para> |
172 |
security as a main focus.</para> |
| 157 |
</listitem> |
173 |
</listitem> |
| 158 |
<listitem> |
174 |
<listitem> |
|
Lines 166-194
Link Here
|
| 166 |
<listitem><para><filename role="package">ftp/vsftpd</filename>: The <quote>very secure</quote> ftpd.</para></listitem> |
182 |
<listitem><para><filename role="package">ftp/vsftpd</filename>: The <quote>very secure</quote> ftpd.</para></listitem> |
| 167 |
<listitem> |
183 |
<listitem> |
| 168 |
<para><filename role="package">ftp/wu-ftpd</filename>: The ftpd from Washington |
184 |
<para><filename role="package">ftp/wu-ftpd</filename>: The ftpd from Washington |
| 169 |
University. It has become infamous, because of the huge |
185 |
University. It has become infamous, because of the huge |
| 170 |
amount of security issues that have been found in it. |
186 |
amount of security issues that have been found in it. |
| 171 |
If you do choose to use this software be sure to |
187 |
If you do choose to use this software be sure to |
| 172 |
keep it up to date.</para> |
188 |
keep it up to date. |
|
|
189 |
</para> |
| 173 |
</listitem> |
190 |
</listitem> |
| 174 |
</itemizedlist> |
191 |
</itemizedlist> |
| 175 |
FreeBSD's ftpd, proftpd, wu-ftpd and maybe ncftpd are among the |
192 |
FreeBSD's <application>ftpd</application>, <application>proftpd</application>, |
| 176 |
most commonly ones. The others do not have a large userbase among mirror sites. |
193 |
<application>wu-ftpd</application> and maybe <application>ncftpd</application> |
|
|
194 |
are among the most commonly ones. |
| 195 |
The others do not have a large userbase among mirror sites. |
| 177 |
</para> |
196 |
</para> |
| 178 |
</sect3> |
197 |
</sect3> |
| 179 |
<sect3 id="mirror-serv-rsync"> |
198 |
<sect3 id="mirror-serv-rsync"> |
| 180 |
<title>RSYNC (optional for FTP fileset)</title> |
199 |
<title>RSYNC (optional for FTP fileset)</title> |
| 181 |
<para> |
200 |
<para> |
| 182 |
Rsync is often also offered for convenience, for the |
201 |
<application>Rsync</application> is often also offered for convenience, for the |
| 183 |
contents of the FTP area of FreeBSD. The |
202 |
contents of the FTP area of FreeBSD. The |
| 184 |
protocol is different from FTP in many ways, and |
203 |
protocol is different from FTP in many ways, and |
| 185 |
overall, it can be stated, that it is much more |
204 |
overall, it can be stated, that it is much more |
| 186 |
bandwidth friendly, as only differences between files |
205 |
bandwidth friendly, as only differences between files |
| 187 |
are transferred, not whole files. |
206 |
are transferred, not whole files. |
| 188 |
Rsync does require significant amount of memory for |
207 |
<application>Rsync</application> does require significant amount of memory for |
| 189 |
each instance. The size depends on the size of |
208 |
each instance. The size depends on the size of |
| 190 |
the synced module in terms of number of directories and |
209 |
the synced module in terms of number of directories and |
| 191 |
files. Rsync can use <command>rsh</command> and |
210 |
files. <application>Rsync</application> can use <command>rsh</command> and |
| 192 |
<command>ssh</command> (now default) as a transport, |
211 |
<command>ssh</command> (now default) as a transport, |
| 193 |
or use it's own protocol for stand-alone access |
212 |
or use it's own protocol for stand-alone access |
| 194 |
(this is the preferred method for public rsync servers). |
213 |
(this is the preferred method for public rsync servers). |
|
Lines 204-210
Link Here
|
| 204 |
<title>HTTP (required for webpages, optional for FTP fileset)</title> |
223 |
<title>HTTP (required for webpages, optional for FTP fileset)</title> |
| 205 |
<para> |
224 |
<para> |
| 206 |
If you want to offer the FreeBSD webpages, you need |
225 |
If you want to offer the FreeBSD webpages, you need |
| 207 |
to install a webserver. You may optionally offer the FTP fileset via HTTP. |
226 |
to install a webserver a.k.a <application>httpd</application>. |
|
|
227 |
You may optionally offer the FTP fileset via HTTP. |
| 208 |
The choice of Webserver software is left up to the mirror administrator. |
228 |
The choice of Webserver software is left up to the mirror administrator. |
| 209 |
Some of the most popular choices are: |
229 |
Some of the most popular choices are: |
| 210 |
|
230 |
|
|
Lines 240-258
Link Here
|
| 240 |
<sect3 id="mirror-serv-cvsup"> |
260 |
<sect3 id="mirror-serv-cvsup"> |
| 241 |
<title>CVSup (desired for CVS repository)</title> |
261 |
<title>CVSup (desired for CVS repository)</title> |
| 242 |
<para> |
262 |
<para> |
| 243 |
CVSup is a very efficient way of distributing files. |
263 |
<application>CVSup</application> is a very efficient way of distributing files. |
| 244 |
It works similar as rsync, but was specially designed for |
264 |
It works similar as rsync, but was specially designed for |
| 245 |
the use with CVS repositories. If you want to offer the |
265 |
the use with CVS repositories. If you want to offer the |
| 246 |
FreeBSD CVS repository, you really want to consider |
266 |
FreeBSD CVS repository, you really want to consider |
| 247 |
offering it via CVSup. Still it is possible to offer |
267 |
offering it via <application>CVSup</application>. Still it is possible to offer |
| 248 |
the CVS repository via AnonCVS, FTP, Rsync or HTTP, but |
268 |
the CVS repository via <application>AnonCVS</application>, FTP, |
| 249 |
people would not benefit from CVSup access. |
269 |
<application>Rsync</application> or HTTP, but |
| 250 |
CVSup was developed by &a.jdp;. |
270 |
people would benefit much more from <application>CVSup</application> access. |
|
|
271 |
<application>CVSup</application> was developed by &a.jdp;. |
| 251 |
It is a bit tricky to install on non-FreeBSD platforms, |
272 |
It is a bit tricky to install on non-FreeBSD platforms, |
| 252 |
since it is written in Modula-3 and therefore requires |
273 |
since it is written in Modula-3 and therefore requires |
| 253 |
a Modula-3 environment. John Polstra has built a |
274 |
a Modula-3 environment. John Polstra has built a |
| 254 |
stripped down version of M3, that is sufficient to |
275 |
stripped down version of M3, that is sufficient to |
| 255 |
run CVSup, and can be installed much easier. |
276 |
run <application>CVSup</application>, and can be installed much easier. |
| 256 |
See <ulink url="http://www.polstra.com/projects/freeware/ezm3/">Ezm3</ulink> |
277 |
See <ulink url="http://www.polstra.com/projects/freeware/ezm3/">Ezm3</ulink> |
| 257 |
for details. Related ports are: |
278 |
for details. Related ports are: |
| 258 |
|
279 |
|
|
Lines 285-313
Link Here
|
| 285 |
CVSup is known to eat some CPU on the server as on the |
306 |
CVSup is known to eat some CPU on the server as on the |
| 286 |
client, since it needs to compare lots of files. |
307 |
client, since it needs to compare lots of files. |
| 287 |
</para> |
308 |
</para> |
| 288 |
<note> |
|
|
| 289 |
<para> |
| 290 |
Please have look at the <application>CVSup</application> |
| 291 |
like &man.cvsup.1; and consider using the <option>-s</option> |
| 292 |
option, as it can reduce the amount of work to be done |
| 293 |
a lot. |
| 294 |
</para> |
| 295 |
</note> |
| 296 |
</sect3> |
309 |
</sect3> |
| 297 |
<sect3 id="mirror-anoncvs"> |
310 |
<sect3 id="mirror-anoncvs"> |
| 298 |
<title>AnonCVS (optional for CVS repository)</title> |
311 |
<title>AnonCVS (optional for CVS repository)</title> |
| 299 |
<para> |
312 |
<para> |
| 300 |
If you have the CVS repository, you may want to offer |
313 |
If you have the CVS repository, you may want to offer |
| 301 |
anonymous CVS access. There is not that much demand for it, |
314 |
anonymous CVS access. A short warning first: |
|
|
315 |
There is not that much demand for it, |
| 302 |
and it requires some experience and you need to know, |
316 |
and it requires some experience and you need to know, |
| 303 |
what you are doing. Generally there are two ways, how |
317 |
what you are doing. |
|
|
318 |
</para> |
| 319 |
<para> |
| 320 |
Generally there are two ways, how |
| 304 |
to access a CVS repository remotely: via |
321 |
to access a CVS repository remotely: via |
| 305 |
<emphasis>pserver</emphasis> or via <command>ssh</command> |
322 |
<emphasis>pserver</emphasis> or via <command>ssh</command> |
| 306 |
(we don't consider <command>rsh</command>). |
323 |
(we don't consider <command>rsh</command>). |
| 307 |
For anonymous access, <emphasis>pserver</emphasis> is |
324 |
For anonymous access, <emphasis>pserver</emphasis> is |
| 308 |
very well suited, but some still offer <command>ssh</command> |
325 |
very well suited, but some still offer <command>ssh</command> |
| 309 |
access as well. There is some custom crafted wrapper |
326 |
access as well. There is a custom crafted |
| 310 |
program around, to be used as a login-shell for the |
327 |
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/development/FreeBSD-CVS/anoncvs.shar">wrapper</ulink> |
|
|
328 |
in the CVS repository, to be used as a login-shell for the |
| 311 |
anonymous ssh account. It does a chroot, and therefore |
329 |
anonymous ssh account. It does a chroot, and therefore |
| 312 |
requires the CVS repository to be available under the |
330 |
requires the CVS repository to be available under the |
| 313 |
anonymous user's home-directory, which may not be possible |
331 |
anonymous user's home-directory, which may not be possible |
|
Lines 322-328
Link Here
|
| 322 |
cvspserver stream tcp nowait root /usr/bin/cvs cvs -f -l -R -T /anoncvstmp --allow-root=/home/ncvs pserver |
340 |
cvspserver stream tcp nowait root /usr/bin/cvs cvs -f -l -R -T /anoncvstmp --allow-root=/home/ncvs pserver |
| 323 |
</programlisting> |
341 |
</programlisting> |
| 324 |
See the manpage for details of the options. See also the cvs <emphasis>info</emphasis> |
342 |
See the manpage for details of the options. See also the cvs <emphasis>info</emphasis> |
| 325 |
page, about how additional ways, to make sure, access is read-only. |
343 |
page, about additional ways to make sure, access is read-only. |
| 326 |
It is advisable, that you create an unprivileged account, |
344 |
It is advisable, that you create an unprivileged account, |
| 327 |
preferably called <username>anoncvs</username>. |
345 |
preferably called <username>anoncvs</username>. |
| 328 |
Also you need to create a file <filename>passwd</filename> |
346 |
Also you need to create a file <filename>passwd</filename> |
|
Lines 383-389
Link Here
|
| 383 |
</itemizedlist> |
401 |
</itemizedlist> |
| 384 |
|
402 |
|
| 385 |
<filename role="package">ftp/mirror</filename> was very popular, but seemed |
403 |
<filename role="package">ftp/mirror</filename> was very popular, but seemed |
| 386 |
to have some drawbacks, as its written in perl, |
404 |
to have some drawbacks, as it is written in &man.perl.1;, |
| 387 |
and did have real problems on mirroring large |
405 |
and did have real problems on mirroring large |
| 388 |
directories like a FreeBSD site. There are rumors, that |
406 |
directories like a FreeBSD site. There are rumors, that |
| 389 |
the current version has fixed this, by allowing |
407 |
the current version has fixed this, by allowing |
|
Lines 406-413
Link Here
|
| 406 |
<application>rsync</application> is already mentioned |
424 |
<application>rsync</application> is already mentioned |
| 407 |
in <xref linkend="mirror-serv-rsync">. |
425 |
in <xref linkend="mirror-serv-rsync">. |
| 408 |
Since <application>rsync</application> access is not |
426 |
Since <application>rsync</application> access is not |
| 409 |
required, your preferred upstream site may not allow it, |
427 |
required, your preferred upstream site may not allow it. |
| 410 |
but it already widely used, so chances are small, that |
428 |
Since it is quite common, though, chances are small, that |
| 411 |
you cannot use it. You can always consider using an |
429 |
you cannot use it. You can always consider using an |
| 412 |
upstream server, that offers it, just for the benefits |
430 |
upstream server, that offers it, just for the benefits |
| 413 |
of rsync. |
431 |
of rsync. |
|
Lines 418-424
Link Here
|
| 418 |
machine, most admins impose limitations on their |
436 |
machine, most admins impose limitations on their |
| 419 |
server. For a mirror, you should ask the site maintainer |
437 |
server. For a mirror, you should ask the site maintainer |
| 420 |
you are syncing from, about their policy, and maybe |
438 |
you are syncing from, about their policy, and maybe |
| 421 |
an exception for your host, since you are a mirror. |
439 |
an exception for your host (since you are a mirror). |
| 422 |
</para> |
440 |
</para> |
| 423 |
</note> |
441 |
</note> |
| 424 |
A command line to mirror FreeBSD could look like that: |
442 |
A command line to mirror FreeBSD could look like that: |
|
Lines 464-469
Link Here
|
| 464 |
way to mirror the archive, in terms of efficiency, but |
482 |
way to mirror the archive, in terms of efficiency, but |
| 465 |
it is only available from few sites. In fact I just know |
483 |
it is only available from few sites. In fact I just know |
| 466 |
<hostid>ftp-master.freebsd.org</hostid> for sure. |
484 |
<hostid>ftp-master.freebsd.org</hostid> for sure. |
|
|
485 |
<note id="mirror-cvsup-s-option"> |
| 486 |
<para> |
| 487 |
Please have look at the <application>CVSup</application> documentation |
| 488 |
like &man.cvsup.1; and consider using the <option>-s</option> |
| 489 |
option, as it can reduce the amount of work to be done |
| 490 |
a lot. |
| 491 |
</para> |
| 492 |
</note> |
| 467 |
</para> |
493 |
</para> |
| 468 |
</sect3> |
494 |
</sect3> |
| 469 |
</sect2> |
495 |
</sect2> |
|
Lines 500-505
Link Here
|
| 500 |
|
526 |
|
| 501 |
You should also have a look at <filename>/usr/share/examples/cvsup</filename> |
527 |
You should also have a look at <filename>/usr/share/examples/cvsup</filename> |
| 502 |
</para> |
528 |
</para> |
|
|
529 |
<note> |
| 530 |
<para> |
| 531 |
Please don't forget to consider the hint, |
| 532 |
mentioned in <link linkend="mirror-cvsup-s-option">this note</link> |
| 533 |
above. |
| 534 |
</para> |
| 535 |
</note> |
| 503 |
</sect3> |
536 |
</sect3> |
| 504 |
<sect3 id="mirror-cvs-other"> |
537 |
<sect3 id="mirror-cvs-other"> |
| 505 |
<title>Using other methods</title> |
538 |
<title>Using other methods</title> |
|
Lines 509-515
Link Here
|
| 509 |
anyway. Since most sites offer the CVS repository as |
542 |
anyway. Since most sites offer the CVS repository as |
| 510 |
part of the FTP fileset under the path |
543 |
part of the FTP fileset under the path |
| 511 |
<filename>/pub/FreeBSD/development/FreeBSD-CVS</filename>, |
544 |
<filename>/pub/FreeBSD/development/FreeBSD-CVS</filename>, |
| 512 |
the following methods can of course be used. |
545 |
the following methods could be used. |
| 513 |
<itemizedlist> |
546 |
<itemizedlist> |
| 514 |
<listitem><para><application>FTP</application></para></listitem> |
547 |
<listitem><para><application>FTP</application></para></listitem> |
| 515 |
<listitem><para><application>RSYNC</application></para></listitem> |
548 |
<listitem><para><application>RSYNC</application></para></listitem> |
|
Lines 524-530
Link Here
|
| 524 |
|
557 |
|
| 525 |
<important> |
558 |
<important> |
| 526 |
<para> |
559 |
<para> |
| 527 |
AFAICT, you can <emphasis>NOT</emphasis> AnonCVS to |
560 |
You can <emphasis>NOT</emphasis> use AnonCVS to |
| 528 |
mirror the CVS repository, since CVS does not allow |
561 |
mirror the CVS repository, since CVS does not allow |
| 529 |
you to access the repository itself, but only checked |
562 |
you to access the repository itself, but only checked |
| 530 |
out versions of the modules. |
563 |
out versions of the modules. |
|
Lines 622-628
Link Here
|
| 622 |
<important> |
655 |
<important> |
| 623 |
<para> |
656 |
<para> |
| 624 |
The building of the documentation, as well as lots |
657 |
The building of the documentation, as well as lots |
| 625 |
of side issues is documented itself in: |
658 |
of side issues, is documented itself in: |
| 626 |
<ulink url="http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/">fdp-primer</ulink>. |
659 |
<ulink url="http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/">fdp-primer</ulink>. |
| 627 |
Please read this piece of documentation, especially if you |
660 |
Please read this piece of documentation, especially if you |
| 628 |
have problems, building the documentation. |
661 |
have problems, building the documentation. |
|
Lines 636-641
Link Here
|
| 636 |
</para> |
669 |
</para> |
| 637 |
</sect3> |
670 |
</sect3> |
| 638 |
</sect2> |
671 |
</sect2> |
|
|
672 |
<sect2 id="mirror-how-often"> |
| 673 |
<title>How often should I mirror?</title> |
| 674 |
<para> |
| 675 |
Every mirror should be updated on a regular |
| 676 |
basis. You will certainly need some script |
| 677 |
framework for it, that will be called by |
| 678 |
&man.cron.8;. Since nearly every admin |
| 679 |
does this his own way, we cannot give |
| 680 |
specific instructions. It could work |
| 681 |
like this: |
| 682 |
</para> |
| 683 |
<procedure> |
| 684 |
<step> |
| 685 |
<para> |
| 686 |
Put the command to run your mirroring application |
| 687 |
in a script. Use of a plain <command>/bin/sh</command> |
| 688 |
script is recommended. |
| 689 |
</para> |
| 690 |
</step> |
| 691 |
<step> |
| 692 |
<para> |
| 693 |
Add some output redirections, so diagnostic |
| 694 |
messages are logged to a file. |
| 695 |
</para> |
| 696 |
</step> |
| 697 |
<step> |
| 698 |
<para> |
| 699 |
Test, if your script works. Check the logs. |
| 700 |
</para> |
| 701 |
</step> |
| 702 |
<step> |
| 703 |
<para> |
| 704 |
Use &man.crontab.1; to add the script the |
| 705 |
appropriate user's &man.crontab.5;. |
| 706 |
</para> |
| 707 |
</step> |
| 708 |
</procedure> |
| 709 |
<para> |
| 710 |
Here are some recommended schedules: |
| 711 |
<itemizedlist> |
| 712 |
<listitem><para>FTP fileset: daily</para></listitem> |
| 713 |
<listitem><para>CVS repository: daily to hourly</para></listitem> |
| 714 |
<listitem><para>WWW pages: daily</para></listitem> |
| 715 |
</itemizedlist> |
| 716 |
</para> |
| 717 |
</sect2> |
| 639 |
</sect1> |
718 |
</sect1> |
| 640 |
<sect1 id="mirror-where"> |
719 |
<sect1 id="mirror-where"> |
| 641 |
<title>Where to mirror from</title> |
720 |
<title>Where to mirror from</title> |
|
Lines 648-662
Link Here
|
| 648 |
<para> |
727 |
<para> |
| 649 |
Mirrors are organized by country. All |
728 |
Mirrors are organized by country. All |
| 650 |
official mirrors have a DNS entry of the form |
729 |
official mirrors have a DNS entry of the form |
| 651 |
<hostid>ftpX.CC.freebsd.org</hostid>. Whith |
730 |
<hostid>ftpN.CC.freebsd.org</hostid>. Whith |
| 652 |
<emphasis>CC</emphasis> (i.e. country code) being the |
731 |
<emphasis>CC</emphasis> (i.e. country code) beeing the |
| 653 |
<emphasis>top level domain</emphasis> |
732 |
<emphasis>top level domain</emphasis> |
| 654 |
of the country, where this mirror is located; |
733 |
of the country, where this mirror is located; |
| 655 |
and <emphasis>X</emphasis> is a number, |
734 |
and <emphasis>N</emphasis> is a number, |
| 656 |
telling that the host would be the <emphasis>Xth</emphasis> |
735 |
telling that the host would be the <emphasis>Nth</emphasis> |
| 657 |
mirror in that country. |
736 |
mirror in that country. |
| 658 |
(Same applies to <hostid>cvsupX.CC.freebsd.org</hostid>, |
737 |
(Same applies to <hostid>cvsupN.CC.freebsd.org</hostid>, |
| 659 |
<hostid>wwwX.CC.freebsd.org</hostid>, etc.) |
738 |
<hostid>wwwN.CC.freebsd.org</hostid>, etc.) |
| 660 |
There are mirrors with no <emphasis>CC</emphasis> part. |
739 |
There are mirrors with no <emphasis>CC</emphasis> part. |
| 661 |
These are usually located in the US, but don't need to. |
740 |
These are usually located in the US, but don't need to. |
| 662 |
<hostid>ftp.freebsd.org</hostid> is currently |
741 |
<hostid>ftp.freebsd.org</hostid> is currently |
|
Lines 749-761
Link Here
|
| 749 |
for access. If you are already an <emphasis>official</emphasis> |
828 |
for access. If you are already an <emphasis>official</emphasis> |
| 750 |
mirror, this certainly helps you getting access. |
829 |
mirror, this certainly helps you getting access. |
| 751 |
In any other case make sure your country really needs another mirror. |
830 |
In any other case make sure your country really needs another mirror. |
| 752 |
If it already has three or more, ask |
831 |
If it already has three or more, ask the &a.hubs; first. |
| 753 |
the &a.hubs; first. |
|
|
| 754 |
</para> |
832 |
</para> |
| 755 |
<para> |
833 |
<para> |
| 756 |
There are just two master sites, for the FTP fileset and |
834 |
There are just two master sites, one for the FTP fileset and |
| 757 |
for the CVS repository (the webpages and docs are obtained from CVS, |
835 |
one for the CVS repository (the webpages and docs are |
| 758 |
so there is no need for it). |
836 |
obtained from CVS, so there is no need for it). |
| 759 |
</para> |
837 |
</para> |
| 760 |
<sect4 id="mirror-where-master-ftp"> |
838 |
<sect4 id="mirror-where-master-ftp"> |
| 761 |
<title>ftp-master.freebsd.org</title> |
839 |
<title>ftp-master.freebsd.org</title> |
|
Lines 800-806
Link Here
|
| 800 |
Set up the required authentication by following |
878 |
Set up the required authentication by following |
| 801 |
<ulink url="http://people.freebsd.org/~jdp/cvpasswd/">these |
879 |
<ulink url="http://people.freebsd.org/~jdp/cvpasswd/">these |
| 802 |
instructions</ulink>. Make sure you specify the server as |
880 |
instructions</ulink>. Make sure you specify the server as |
| 803 |
<hostid>freefall.freebsd.org</hostid> on the cvpasswd |
881 |
<hostid>freefall.freebsd.org</hostid> on the <command>cvpasswd</command> |
| 804 |
command line, as described in this document, |
882 |
command line, as described in this document, |
| 805 |
even when you are contacting |
883 |
even when you are contacting |
| 806 |
<hostid>cvsup-master.freebsd.org</hostid> |
884 |
<hostid>cvsup-master.freebsd.org</hostid> |
|
Lines 840-846
Link Here
|
| 840 |
official mirrors, since the project is sort of |
918 |
official mirrors, since the project is sort of |
| 841 |
tolerant here. It is more easy to say, |
919 |
tolerant here. It is more easy to say, |
| 842 |
what <emphasis>official tier-1 mirrors</emphasis> |
920 |
what <emphasis>official tier-1 mirrors</emphasis> |
| 843 |
are required to. All other official mirrors, |
921 |
are required to. All other official mirrors |
| 844 |
can consider this a big <emphasis>should</emphasis>. |
922 |
can consider this a big <emphasis>should</emphasis>. |
| 845 |
<note> |
923 |
<note> |
| 846 |
<para> |
924 |
<para> |
|
Lines 882-888
Link Here
|
| 882 |
<sect2 id="mirror-official-become"> |
960 |
<sect2 id="mirror-official-become"> |
| 883 |
<title>How to become official then?</title> |
961 |
<title>How to become official then?</title> |
| 884 |
<para> |
962 |
<para> |
| 885 |
An interesting questions, especially, since the state |
963 |
An interesting question, especially, since the state |
| 886 |
of being official comes with some benefits, like a much |
964 |
of being official comes with some benefits, like a much |
| 887 |
higher bill from your ISP, as more people will be using |
965 |
higher bill from your ISP, as more people will be using |
| 888 |
your site. Also it may be a key requirement, to get access |
966 |
your site. Also it may be a key requirement, to get access |
|
Lines 925-932
Link Here
|
| 925 |
</step> |
1003 |
</step> |
| 926 |
<step> |
1004 |
<step> |
| 927 |
<para> |
1005 |
<para> |
| 928 |
Then you can ask the &a.doc;, or the &a.hubs; to add your |
1006 |
Then you can ask the &a.doc; or the &a.hubs; |
| 929 |
mirror site to the mirror list in the |
1007 |
to add your mirror site to the mirror list in the |
| 930 |
<ulink url="http://www.freebsd.org/handbook">FreeBSD |
1008 |
<ulink url="http://www.freebsd.org/handbook">FreeBSD |
| 931 |
Handbook</ulink>. Make sure you tell them the email address, |
1009 |
Handbook</ulink>. Make sure you tell them the email address, |
| 932 |
to list as the maintainer of the site. |
1010 |
to list as the maintainer of the site. |