<!-- The FreeBSD Documentation Project The FreeBSD German Documentation Project $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/mirrors/chapter.sgml,v 1.115 2006/05/13 17:35:26 jkois Exp $ basiert auf: 1.418 --> <appendix id="mirrors"> <title>Bezugsquellen für FreeBSD</title> <sect1 id="mirrors-cdrom"> <title>CD-ROM und DVD Verleger</title> <sect2> <title>FreeBSD-Pakete</title> <para>FreeBSD-Pakete (FreeBSD-CDs, zusätzliche Software und gedruckte Dokumentation) erhalten Sie von mehreren Händlern:</para> <itemizedlist> <listitem> <address> <otheraddr>CompUSA</otheraddr> WWW: <otheraddr><ulink url="http://www.compusa.com/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Frys Electronics</otheraddr> WWW: <otheraddr><ulink url="http://www.frys.com/"></ulink></otheraddr> </address> </listitem> </itemizedlist> </sect2> <sect2> <title>FreeBSD-CDs und -DVDs</title> <para>Die FreeBSD-CDs und -DVDs werden von vielen Online-Händlern angeboten:</para> <itemizedlist> <listitem> <address> <otheraddr>BSD Mall by Daemon News</otheraddr> <street>PO Box 161</street> <city>Nauvoo</city>, <state>IL</state> <postcode>62354</postcode> <country>USA</country> Telefon: <phone>+1 866 273-6255</phone> Fax: <fax>+1 217 453-9956</fax> E-Mail: <email>sales@bsdmall.com</email> WWW: <otheraddr><ulink url="http://www.bsdmall.com/freebsd1.html"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>BSD-Systems</otheraddr> E-Mail: <email>info@bsd-systems.co.uk</email> WWW: <otheraddr><ulink url="http://www.bsd-systems.co.uk"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>FreeBSD Mall, Inc.</otheraddr> <street>3623 Sanford Street</street> <city>Concord</city>, <state>CA</state> <postcode>94520-1405</postcode> <country>USA</country> Telefon: <phone>+1 925 674-0783</phone> Fax: <fax>+1 925 674-0821</fax> E-Mail: <email>info@freebsdmall.com</email> WWW: <otheraddr><ulink url="http://www.freebsdmall.com/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Hinner EDV</otheraddr> <street>St. Augustinus-Str. 10</street> <postcode>D-81825</postcode> <city>München</city> <country>Germany</country> Telefon: <phone>(089) 428 419</phone> WWW: <otheraddr><ulink url="http://www.hinner.de/linux/freebsd.html"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Ikarios</otheraddr> <street>22-24 rue Voltaire</street> <postcode>92000</postcode> <city>Nanterre</city> <country>France</country> WWW: <otheraddr><ulink url="http://ikarios.com/form/#freebsd"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>JMC Software</otheraddr> <country>Ireland</country> Telefon: <phone>353 1 6291282</phone> WWW: <otheraddr><ulink url="http://www.thelinuxmall.com"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Linux CD Mall</otheraddr> <street>Private Bag MBE N348</street> <city>Auckland 1030</city> <country>New Zealand</country> Telefon: <phone>+64 21 866529</phone> WWW: <otheraddr><ulink url="http://www.linuxcdmall.co.nz/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>The Linux Emporium</otheraddr> <street>Hilliard House, Lester Way</street> <city>Wallingford</city> <postcode>OX10 9TA</postcode> <country>United Kingdom</country> Telefon: <phone>+44 1491 837010</phone> Fax: <fax>+44 1491 837016</fax> WWW: <otheraddr><ulink url="http://www.linuxemporium.co.uk/products/freebsd"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Linux+ DVD Magazine</otheraddr> <street>Lewartowskiego 6</street> <city>Warsaw</city> <postcode>00-190</postcode> <country>Poland</country> Telefon: <phone>+48 22 860 18 18</phone> E-Mail: <email>editors@lpmagazine.org</email> WWW: <otheraddr><ulink url="http://www.lpmagazine.org/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Linux System Labs Australia</otheraddr> <street>21 Ray Drive</street> <city>Balwyn North</city> <postcode>VIC - 3104</postcode> <country>Australia</country> Telefon: <phone>+61 3 9857 5918</phone> Fax: <fax>+61 3 9857 8974</fax> WWW: <otheraddr><ulink url="http://www.lsl.com.au/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>LinuxCenter.Ru</otheraddr> <street>Galernaya Street, 55</street> <city>Saint-Petersburg</city> <postcode>190000</postcode> <country>Russia</country> Telefon: <phone>+7-812-3125208</phone> E-Mail: <email>info@linuxcenter.ru</email> WWW: <otheraddr><ulink url="http://linuxcenter.ru/freebsd"></ulink></otheraddr> </address> </listitem> </itemizedlist> </sect2> <sect2> <title>Lieferanten</title> <para>Wenn Sie FreeBSD-CD-ROM-Produkte weiterverkaufen möchten, kontaktieren Sie einen der folgenden Lieferanten:</para> <itemizedlist> <listitem> <address> <otheraddr>Cylogistics</otheraddr> <street>809B Cuesta Dr., #2149</street> <city>Mountain View</city>, <state>CA</state> <postcode>94040</postcode> <country>USA</country> Telefon: <phone>+1 650 694-4949</phone> Fax: <fax>+1 650 694-4953</fax> E-Mail: <email>sales@cylogistics.com</email> WWW: <otheraddr><ulink url="http://www.cylogistics.com/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Ingram Micro</otheraddr> <street>1600 E. St. Andrew Place</street> <city>Santa Ana</city>, <state>CA</state> <postcode>92705-4926</postcode> <country>USA</country> Telefon: <phone>1 (800) 456-8000</phone> WWW: <otheraddr><ulink url="http://www.ingrammicro.com/"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Kudzu, LLC</otheraddr> <street>7375 Washington Ave. S.</street> <city>Edina</city>, <state>MN</state> <postcode>55439</postcode> <country>USA</country> Telefon: <phone>+1 952 947-0822</phone> Fax: <fax>+1 952 947-0876</fax> E-Mail: <email>sales@kudzuenterprises.com</email> </address> </listitem> <listitem> <address> <otheraddr>LinuxCenter.Ru</otheraddr> <street>Galernaya Street, 55</street> <city>Saint-Petersburg</city> <postcode>190000</postcode> <country>Russia</country> Telefon: <phone>+7-812-3125208</phone> E-Mail: <email>info@linuxcenter.ru</email> WWW: <otheraddr> <ulink url="http://linuxcenter.ru/freebsd"></ulink></otheraddr> </address> </listitem> <listitem> <address> <otheraddr>Navarre Corp</otheraddr> <street>7400 49th Ave South</street> <city>New Hope</city>, <state>MN</state> <postcode>55428</postcode> <country>USA</country> Telefon: <phone>+1 763 535-8333</phone> Fax: <fax>+1 763 535-0341</fax> WWW: <otheraddr><ulink url="http://www.navarre.com/"></ulink></otheraddr> </address> </listitem> </itemizedlist> </sect2> </sect1> <sect1 id="mirrors-ftp"> <title>FTP-Server</title> <para>Die offiziellen Quellen von FreeBSD sind mit anonymous FTP über ein weltweites Netz von FTP-Spiegeln erhältlich. Obwohl <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/"></ulink> über eine gute Anbindung verfügt, sollten Sie einen Spiegel in Ihrer Nähe verwenden (insbesondere, wenn Sie selber einen Spiegel einrichten wollen).</para> <para>Die <ulink url="http://mirrorlist.FreeBSD.org/">Datenbank der FreeBSD-Spiegel</ulink> ist aktueller als die folgende Liste, da sie im Gegensatz zu einer statischen Liste die Informationen aus dem DNS erhält.</para> <para>Sie können FreeBSD auch über anonymous FTP von den folgenden Spiegeln beziehen. Wenn Sie FreeBSD über anonymous FTP beziehen wollen, wählen Sie bitte einen Spiegel in Ihrer Nähe. Die unter <quote>Haupt-Spiegel</quote> aufgeführten Spiegel stellen normalerweise das komplette FreeBSD-Archiv (alle momentan erhältlichen Versionen für jede unterstützte Architektur) zur Verfügung. Wahrscheinlich geht es aber schneller, wenn Sie einen Spiegel in Ihrer Nähe benutzen. Die Länder-Spiegel stellen die neusten Versionen für die beliebtesten Architekturen bereit, sie stellen aber unter Umständen nicht das komplette FreeBSD-Archiv bereit. Auf alle Server kann mit anonymous FTP zugegriffen werden, einige Server bieten auch andere Zugriffsmethoden an. Die zur Verfügung stehenden Zugriffsmethoden sind bei jedem Server in Klammern angegeben.</para> &chap.mirrors.ftp.inc; </sect1> <sect1 id="anoncvs"> <title>Anonymous CVS</title> <sect2> <title><anchor id="anoncvs-intro">Einführung</title> <indexterm> <primary>CVS</primary> <secondary>anonymous</secondary> </indexterm> <para>Anonymous CVS (oder <emphasis>anoncvs</emphasis>) dient zum Synchronisieren mit entfernten Repositories und steht mit den <application>CVS</application> Werkzeugen, die im FreeBSD Basissystem enthalten sind, zur Verfügung. Benutzer von FreeBSD können damit unter anderem lesende Operationen auf den <application>Anoncvs</application> Servern des FreeBSD-Projekts durchführen, ohne über besondere Berechtigungen zu verfügen. Um es zu benutzen, setzen Sie einfach die <envar>CVSROOT</envar> Umgebungsvariable auf einen <application>Anoncvs</application> Server und geben beim Login mit <command>cvs login</command> das Passwort <literal>anoncvs</literal> an. Danach können Sie mit &man.cvs.1; wie auf jedes lokale Repository (allerdings nur lesend) zugreifen.</para> <note> <para><command>cvs login</command> speichert Passwörter zur Authentifizierung an einem CVS Server in der Datei <filename>.cvspass</filename> in Ihrem <envar>HOME</envar>-Verzeichnis. Wenn diese Datei beim ersten Benutzen von <command>cvs login</command> nicht existiert, erhalten Sie vielleicht eine Fehlermeldung. In diesem Fall legen Sie einfach eine leere <filename>.cvspass</filename> Datei an und melden sich erneut an.</para> </note> <para><link linkend="cvsup">CVSup</link> und <application>Anoncvs</application> bieten dieselbe Funktionalität, die folgenden Kriterien helfen Ihnen zu entscheiden, welche Methode Sie benutzen sollen. <application>CVSup</application> geht wesentlich effizienter mit Netzwerk-Ressourcen um und ist auch technisch ausgereifter. Allerdings müssen Sie zuerst einen speziellen Client installieren und konfigurieren, bevor Sie <application>CVSup</application> benutzen können. Weiterhin können Sie mit <application>CVSup</application> nur relativ große Teile der Quellen, die <emphasis>Sammlungen</emphasis> genannt werden, synchronisieren.</para> <para>Im Gegensatz dazu können Sie mit <application>Anoncvs</application> jede beliebige Datei oder indem Sie einfach den <application>CVS</application> Namen des Moduls angeben, ein beliebiges Programm, wie <command>ls</command> oder <command>grep</command>, bearbeiten. Natürlich können Sie mit <application>Anoncvs</application> nur lesend auf ein <application>CVS</application> Repository zugreifen. Wenn Sie lokal mit dem FreeBSD-Repository entwickeln wollen, dann ist <application>CVSup</application> die einzige Wahl.</para> </sect2> <sect2> <title><anchor id="anoncvs-usage">Benutzen von Anonymous CVS</title> <para>Setzen Sie einfach die <envar>CVSROOT</envar> Umgebungsvariable, um &man.cvs.1; das <application>CVS</application> Repository eines FreeBSD <application>Anoncvs</application>-Servers bekannt zu geben. Zurzeit stehen folgende Server zur Verfügung:</para> <itemizedlist> <listitem> <para><emphasis>Deutschland</emphasis>: :pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs (Benutzen Sie <command>cvs login</command> und das Passwort <literal>anoncvs</literal>.)</para> </listitem> <listitem> <para><emphasis>Deutschland</emphasis>: :pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs (rsh, pserver, ssh, ssh/2022)</para> </listitem> <listitem> <para><emphasis>Frankreich</emphasis>: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (Das Passwort für pserver ist <literal>anoncvs</literal>, ssh-Zugriffe verwenden kein Passwort.)</para> </listitem> <listitem> <para><emphasis>Japan</emphasis>: :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Benutzen Sie <command>cvs login</command> und das Passwort <literal>anoncvs</literal>.)</para> </listitem> <listitem> <para><emphasis>Österreich</emphasis>: :pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs Benutzen Sie <command>cvs login</command> und ein beliebiges Passwort.</para> </listitem> <listitem> <para><emphasis>USA</emphasis>: freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (nur ssh ohne Passwort).</para> <programlisting>SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub</programlisting> </listitem> <listitem> <para><emphasis>USA</emphasis>: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (nur ssh ohne Passwort).</para> <programlisting>SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub</programlisting> </listitem> </itemizedlist> <para>Mit <application>CVS</application> können Sie praktisch jede Version von FreeBSD, die schon einmal existiert hat (oder in manchen Fällen existieren wird) auschecken. Sie sollten daher damit vertraut sein, wie Sie mit Tags unter &man.cvs.1; arbeiten (die <option>-r</option> Option). Zudem müssen Sie die Namen der Tags im FreeBSD-Repository kennen.</para> <para>Es gibt zwei verschiedene Tags<footnote><para>Tags sind symbolische Namen, die im Repository vergeben werden. </para></footnote>: Tags, die Revisionen bezeichnen und Tags, die Zweige bezeichnen. Die Ersten sind statisch und fest an eine Revision gebunden. Ein Tag, das einen Zweig bezeichnet, bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf die aktuellste Revision. Da ein Tag eines Zweiges nicht an eine bestimmte Revision gebunden ist, kann sich dessen Bedeutung von heute auf morgen ändern.</para> <para>In <xref linkend="cvs-tags"> finden Sie eine Liste der gültigen Tags. Beachten Sie bitte, dass keines der Tags auf die Ports-Sammlung anwendbar ist, da diese nicht über Zweige verfügt.</para> <para>Wenn Sie ein Tag eines Zweiges verwenden, erhalten Sie die aktuellsten Dateien dieses Entwicklungszweiges. Wenn Sie eine frühere Revision erhalten möchten, können Sie zum Beispiel einen Zeitpunkt mit der <option>-D</option> Option angeben. Weitere Informationen dazu entnehmen Sie bitte &man.cvs.1;.</para> </sect2> <sect2> <title>Beispiele</title> <para>Im Folgenden finden Sie einige Beispiele für den Umgang mit <application>Anonymous CVS</application>. Sie sollten sich aber die Manualpage von &man.cvs.1; sorgfältig durchlesen, bevor Sie anfangen.</para> <example> <title>&man.ls.1; von -CURRENT auschecken</title> <screen>&prompt.user; <userinput>setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs</userinput> &prompt.user; <userinput>cvs login</userinput> <emphasis>Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort</emphasis> <quote>anoncvs</quote>. &prompt.user; <userinput>cvs co ls</userinput> </screen> </example> <example> <title>Den <filename>src/</filename>-Baum über SSH auschecken</title> <screen>&prompt.user; <userinput>cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src</userinput> The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be establiestablished. DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65. Are you sure you want to continue connecting (yes/no)? <userinput>yes</userinput> Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.</screen> </example> <example> <title>&man.ls.1; aus dem 6-STABLE-Zweig auschecken</title> <screen>&prompt.user; <userinput>setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs</userinput> &prompt.user; <userinput>cvs login</userinput> <emphasis>Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort</emphasis> <quote>anoncvs</quote>. &prompt.user; <userinput>cvs co -rRELENG_6 ls</userinput> </screen> </example> <example> <title>Änderungen in &man.ls.1; zwischen 5.3 RELEASE und 5.4 RELEASE (als unified diff)</title> <screen>&prompt.user; <userinput>setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs</userinput> &prompt.user; <userinput>cvs login</userinput> <emphasis>Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort</emphasis> <quote>anoncvs</quote>. &prompt.user; <userinput>cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls</userinput> </screen> </example> <example> <title>Gültige Modulnamen herausfinden</title> <screen>&prompt.user; <userinput>setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs</userinput> &prompt.user; <userinput>cvs login</userinput> <emphasis>Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort</emphasis> <quote>anoncvs</quote>. &prompt.user; <userinput>cvs co modules</userinput> &prompt.user; <userinput>more modules/modules</userinput> </screen> </example> </sect2> <sect2> <title>Weitere Ressourcen</title> <para>Die folgenden Ressourcen sind nützlich, um den Umgang mit <application>CVS</application> zu lernen:</para> <itemizedlist> <listitem> <para><ulink url="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">CVS Tutorial</ulink> von Cal Poly.</para> </listitem> <listitem> <para><ulink url="http://ximbiot.com/cvs/wiki/">CVS Home</ulink>, die Homepage des <application>CVS</application>-Projekts.</para> </listitem> <listitem> <para><ulink url="http://www.FreeBSD.org/cgi/cvsweb.cgi">CVSweb</ulink> das Web Interface zu <application>CVS</application> des FreeBSD Projekts.</para> </listitem> </itemizedlist> </sect2> </sect1> <sect1 id="ctm"> <title>CTM</title> <indexterm> <primary>CTM</primary> </indexterm> <para>Mit <application>CTM</application><footnote><para> Abkürzung für <quote>CVS Through eMail</quote> </para></footnote> können Sie einen entfernten Verzeichnisbaum mit einem zentralen Baum synchronisieren. Es wurde extra zum Synchronisieren der FreeBSD Quellen entwickelt, obwohl es mit der Zeit vielleicht auch andere Anwendungen geben wird. Zurzeit existiert leider so gut wie keine Dokumentation zum Erstellen der Deltas. Wenn Sie Hilfe benötigen oder <application>CTM</application> für andere Zwecke einsetzen wollen, wenden Sie sich bitte an die Mailingliste &a.ctm-users.name;.</para> <sect2> <title>Warum soll ich <application>CTM</application> benutzen?</title> <para>Mit <application>CTM</application> erhalten Sie eine lokale Kopie des FreeBSD-Quellbaums, den es in mehreren <quote>Varianten</quote> gibt. Sie können das ganze Repository oder nur einen Zweig spiegeln. Wenn Sie ein aktiver FreeBSD-Entwickler mit einer schlechten oder gar keiner TCP/IP Verbindung sind, oder die Änderungen einfach automatisch zugesandt bekommen wollen, dann ist <application>CTM</application> das Richtige für Sie. Für die Zweige mit der meisten Aktivität müssen Sie sich täglich bis zu drei Deltas beschaffen, Sie sollten allerdings erwägen, die Deltas automatisch über E-Mail zu beziehen. Die Größe der Updates wird so klein wie möglich gehalten. Normalerweise sind sie kleiner als 5 kB, manchmal sind sie 10-50 kB groß (etwa jedes 10. Update) und ab und an werden Sie auch einmal ein Update mit 100 kB oder mehr erhalten.</para> <para>Sie sollten sich über die Vorbehalte gegen die Verwendung der Quellen anstelle eines offiziellen Releases bewusst sein. Das trifft besonders auf &os.current; zu, lesen Sie dazu bitte den Abschnitt <link linkend="current">&os.current;</link>.</para> </sect2> <sect2> <title>Was brauche ich, um <application>CTM</application> zu benutzen?</title> <para>Zwei Sachen: Das <application>CTM</application> Programm und die initialen Deltas, von denen aus Sie auf die <quote>aktuellen</quote> Stände kommen.</para> <para><application>CTM</application> ist schon seit der Version 2.0 Teil des FreeBSD-Basissystems. Sie finden es in <filename>/usr/src/usr.sbin/ctm</filename>, wenn Sie eine Kopie der Quellen besitzen.</para> <para>Die Deltas, die <application>CTM</application> verarbeitet, können Sie über FTP oder E-Mail beziehen. Wenn Sie über einen FTP Zugang zum Internet verfügen, erhalten Sie die Deltas unter der folgenden URL:</para> <para> <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/"></ulink> </para> <para>Die Deltas werden auch von <link linkend="mirrors-ctm">CTM Spiegeln</link> bereitgehalten.</para> <para>Wechseln Sie in das passende Verzeichnisse zum Beispiel <filename>src-cur</filename> für &os.current; und laden Sie sich von dort die Deltas herunter.</para> <para>Sie können die Deltas auch über E-Mail beziehen.</para> <para>Abonnieren Sie dazu eine der <application>CTM</application>-Verteilerlisten. Über &a.ctm-cvs-cur.name; erhalten Sie den kompletten <application>CVS</application>-Baum, über &a.ctm-src-cur.name; erhalten Sie &os.current; und über &a.ctm-src-4.name; erhalten Sie den FreeBSD 4.X-Zweig. Wenn Sie nicht wissen, wie Sie eine der Mailinglisten abonnieren, folgen Sie einem der Verweise von oben oder besuchen Sie die Seite &a.mailman.lists.link;. Weitere Informationen erhalten Sie, wenn Sie dort auf die gewünschte Liste klicken.</para> <para>Benutzen Sie <command>ctm_rmail</command>, um die <application>CTM</application> Updates, die Sie per E-Mail empfangen, auszupacken und anzuwenden. Wenn Sie diesen Prozess automatisiert ablaufen lassen möchten, können Sie dazu einen Eintrag in <filename>/etc/aliases</filename> verwenden. Genauere Informationen finden Sie in der Manualpage von <command>ctm_rmail</command>.</para> <note> <para>Sie sollten die Mailingliste &a.ctm-announce.name; abonnieren, egal wie Sie die <application>CTM</application>-Deltas erhalten. Ankündigungen, die den Betrieb des <application>CTM</application>-Systems betreffen, werden nur auf dieser Liste bekannt gegeben. Klicken Sie auf den Namen der Liste oder besuchen Sie die Seite &a.mailman.lists.link;, um diese Liste zu abonnieren.</para> </note> </sect2> <sect2> <title>Initialisieren von <application>CTM</application></title> <para>Bevor Sie die <application>CTM</application> Deltas benutzen können, brauchen Sie einen Startpunkt, auf den die nachfolgenden Deltas angewendet werden.</para> <para>Sie können natürlich mit einem leeren Verzeichnis beginnen. In diesem Fall benötigen Sie ein <filename>XEmpty</filename>-Delta, mit dem Sie den <application>CTM</application>-Verzeichnisbaum initialisieren. Wenn Sie Glück haben, finden Sie ein <filename>XEmpty</filename>-Delta, mit dem sie beginnen können, auf einer der CDs Ihrer Distribution.</para> <para>Da die Verzeichnisbäume mehrere Megabyte groß sind, sollten Sie nach Möglichkeit etwas schon vorhandenes benutzen. Wenn Sie eine -RELEASE CD besitzen, können Sie die Quellen von dieser CD benutzen. Sie ersparen sich damit das Übertragen großer Datenmengen.</para> <para>Die Deltas, mit denen Sie beginnen können, enthalten ein <literal>X</literal> in ihrem Namen, wie in <filename>src-cur.3210XEmpty.gz</filename>. Hinter dem <literal>X</literal> wird der Startpunkt der Deltas angegeben, in diesem Fall steht <literal>Empty</literal> für ein leeres Verzeichnis. Nach etwa 100 Deltas wird ein neues <filename>XEmpty</filename>-Delta erstellt. Mit ungefähr 75 Megabyte komprimierter Daten sind diese <filename>XEmpty</filename>-Deltas übrigens sehr groß.</para> <para>Nachdem Sie Ihren Startpunkt festgelegt haben, benötigen Sie alle Deltas mit einer höheren Nummer.</para> </sect2> <sect2> <title>Benutzen von <application>CTM</application></title> <para>Um ein Delta einzuspielen, benutzen Sie das folgende Kommando:</para> <screen>&prompt.root; <userinput>cd <replaceable>/Pfad/zu/den/Quellen</replaceable></userinput> &prompt.root; <userinput>ctm -v -v <replaceable>/Pfad/zu/den/Deltas/</replaceable>src-<replaceable>xxx</replaceable>.*</userinput></screen> <para><application>CTM</application> kann mit Deltas arbeiten, die mit <command>gzip</command> komprimiert wurden. Sie brauchen die Deltas vorher nicht mit <command>gunzip</command> zu dekomprimieren und sparen damit Plattenplatz.</para> <para>Ihr Quellbaum wird erst dann verändert, wenn <application>CTM</application> die Deltas sauber verarbeiten kann. Die Integrität der Deltas und ihre Anwendbarkeit auf den Quellbaum lassen sich durch die Angabe des Schalters <command>-c</command> überprüfen, <application>CTM</application> ändert in diesem Fall Ihren Quellbaum nicht.</para> <para><application>CTM</application> verfügt über weitere Kommandozeilenoptionen, Informationen dazu finden Sie in der Manualpage oder dem Quellcode.</para> <para>Das war schon alles. Um Ihre Quellen aktuell zu halten, verwenden Sie <application>CTM</application> jedes Mal, wenn Sie neue Deltas bekommen.</para> <para>Löschen Sie die Deltas nicht, wenn Sie diese nur schwer wieder beschaffen können. Behalten Sie sie für den Fall, das etwas passiert. Auch wenn Sie nur Disketten besitzen, sollten Sie erwägen, die Deltas mit <command>fdwrite</command> zu sichern.</para> </sect2> <sect2> <title>Umgang mit lokalen Änderungen</title> <para>Entwickler wollen mit den Dateien im Quellbaum experimentieren und diese verändern. In beschränkter Weise werden lokale Änderungen von <application>CTM</application> unterstützt. Wenn <application>CTM</application> die Datei <filename>foo</filename> bearbeiten will, überprüft es zuerst ob die Datei <filename>foo.ctm</filename> existiert. Wenn diese Datei existiert, werden Änderungen in ihr anstatt in <filename>foo</filename> vorgenommen.</para> <para>Mit diesem Verfahren ist eine leichte Handhabung lokaler Änderungen möglich. Kopieren Sie die Dateien, die Sie ändern möchten, in Dateien, die das Suffix <filename>.ctm</filename> tragen. Sie können dann ungestört mit dem Quellcode arbeiten, während <filename>CTM</filename> die <filename>.ctm</filename> Dateien aktualisiert.</para> </sect2> <sect2> <title>Weitere <application>CTM</application>-Optionen</title> <sect3> <title>Was wird aktualisiert?</title> <para>Eine Liste der Änderungen, die <application>CTM</application> an Ihrem Quellbaum vornehmen wird, erhalten Sie, wenn Sie die Option <option>-l</option> angeben.</para> <para>Das ist nützlich, wenn Sie Logs über die Änderungen führen wollen, geänderte Dateien vor- oder nachbearbeiten wollen, oder einfach ein bisschen paranoid sind.</para> </sect3> <sect3> <title>Sicherungen vor einer Aktualisierung erstellen</title> <para>Sie wollen vielleicht die Dateien, die durch eine <application>CTM</application> Aktualisierung verändert werden, sichern.</para> <para>Mit <option>-B <replaceable>backup-file</replaceable></option> weisen Sie <application>CTM</application> an, alle Dateien, die durch ein <application>CTM</application> Delta verändert würden, nach <filename>backup-file</filename> zu sichern.</para> </sect3> <sect3> <title>Dateien ausschließen</title> <para>Manchmal wollen Sie nur bestimmte Teile aktualisieren oder nur bestimmte Dateien aus einer Folge von Deltas extrahieren.</para> <para>Sie können die Liste der Dateien, mit denen <application>CTM</application> arbeitet, einschränken, indem Sie reguläre Ausdrücke mit den Optionen <option>-e</option> und <option>-x</option> angeben.</para> <para>Wenn Sie eine aktuelle Kopie von <filename>lib/libc/Makefile</filename> aus den gesicherten <application>CTM</application> Deltas erhalten wollen, setzen Sie das folgende Kommando ab:</para> <screen>&prompt.root; <userinput>cd /wo/Sie/es/auspacken/wollen/</userinput> &prompt.root; <userinput>ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*</userinput></screen> <para>Die Optionen <option>-e</option> und <option>-x</option> werden in der Reihenfolge angewandt, in der sie auf der Kommandozeile angegeben wurden. Eine Datei wird nur dann von <application>CTM</application> verarbeitet, wenn dies nach der Anwendung der Optionen <option>-e</option> und <option>-x</option> noch erlaubt ist.</para> </sect3> </sect2> <sect2> <title>Pläne für <application>CTM</application></title> <para>Mehrere:</para> <itemizedlist> <listitem> <para>Hinzufügen eines Authentifizierungsmechanismus, damit gefälschte <application>CTM</application>-Deltas erkannt werden können.</para> </listitem> <listitem> <para>Aufräumen der <application>CTM</application>-Optionen, die mit der Zeit unübersichtlich und irreführend wurden.</para> </listitem> </itemizedlist> </sect2> <sect2> <title>Verschiedenes</title> <para>Es gibt Deltas für die Ports-Sammlung, die aber nicht intensiv genutzt werden.</para> </sect2> <sect2 id="mirrors-ctm"> <title>CTM-Spiegel</title> <para>Die CTM-Deltas können Sie mit anonymous FTP von den folgenden Spiegeln beziehen. Versuchen Sie bitte einen Spiegel in Ihrer Nähe zu benutzen.</para> <para>Bei Problemen wenden Sie sich bitte an die Mailingliste &a.ctm-users.name;.</para> <variablelist> <varlistentry> <term>Kalifornien, Bay Area, Offizieller Server</term> <listitem> <itemizedlist> <listitem> <para><ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CTM/"></ulink></para> </listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term>Südafrika, Backup-Server für alte Deltas</term> <listitem> <itemizedlist> <listitem> <para><ulink url="ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/"></ulink></para> </listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term>Taiwan/R.O.C.</term> <listitem> <itemizedlist> <listitem> <para><ulink url="ftp://ctm.tw.FreeBSD.org/pub/FreeBSD/development/CTM/"></ulink></para> </listitem> <listitem> <para><ulink url="ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/development/CTM/"></ulink></para> </listitem> <listitem> <para><ulink url="ftp://ctm3.tw.FreeBSD.org/pub/FreeBSD/development/CTM/"></ulink></para> </listitem> </itemizedlist> </listitem> </varlistentry> </variablelist> <para>Wenn die Liste keinen Spiegel in Ihrer Nähe enthält oder Sie Probleme mit dem ausgewählten Spiegel haben, versuchen Sie einen Spiegel mit einer Suchmaschine, wie <ulink url="http://www.alltheweb.com/">alltheweb</ulink>, zu finden.</para> </sect2></sect1> <sect1 id="cvsup"> <title>Benutzen von CVSup</title> <sect2 id="cvsup-intro"> <title>Einführung</title> <para><application>CVSup</application> ist eine Anwendung, die Verzeichnisbäume von einem entfernten <application>CVS</application>-Server bereitstellt und aktualisiert. Die Quellen von FreeBSD werden in einem <application>CVS</application>-Repository auf einer Entwicklungsmaschine in Kalifornien gepflegt. Mit <application>CVSup</application> können sich FreeBSD-Benutzer den eigenen Quellbaum auf aktuellem Stand halten.</para> <para>Zum Aktualisieren benutzt <application>CVSup</application> die Pull-Methode, bei der die Aktualisierungen vom Client angefragt werden. Der Server wartet dabei passiv auf Anfragen von Clients, das heißt er verschickt nicht unaufgefordert Aktualisierungen. Somit gehen alle Anfragen vom Client aus und die Benutzer müssen <application>CVSup</application> entweder manuell starten oder einen <command>cron</command> Job einrichten, um regelmäßig Aktualisierungen zu erhalten.</para> <para><application>CVSup</application> in genau dieser Schreibweise bezeichnet die Anwendung, die aus dem Client <command>cvsup</command> und dem Server <command>cvsupd</command> besteht. <command>cvsup</command> läuft auf den Maschinen der Benutzer, <command>cvsupd</command> läuft auf jedem der FreeBSD-Spiegel.</para> <para>Wenn Sie die FreeBSD-Dokumentation und die Mailinglisten lesen, werden Sie oft auf <application>Sup</application>, dem Vorgänger von <application>CVSup</application> stoßen. <application>CVSup</application> wird in gleicher Weise wie <application>Sup</application> benutzt und verfügt sogar über Konfigurationsdateien, die kompatibel zu denen von <application>Sup</application> sind. Da <application>CVSup</application> schneller und flexibler als <application>Sup</application> ist, wird <application>Sup</application> vom FreeBSD-Projekt nicht mehr benutzt.</para> </sect2> <sect2 id="cvsup-install"> <title>Installation von <application>CVSup</application></title> <para><application>CVSup</application> können Sie leicht installieren, wenn Sie das vorkompilierte Paket <filename role="package">net/cvsup</filename> aus der <link linkend="ports">Ports-Sammlung</link> benutzen. Alternativ können Sie <filename role="package">net/cvsup</filename> auch ausgehend von den Quellen bauen, doch seien Sie gewarnt: <filename role="package">net/cvsup</filename> hängt vom <application>Modula-3</application> System ab, das viel Zeit und Platz zum Herunterladen und Bauen braucht.</para> <note> <para>Wenn Sie <application>CVSup</application> auf einer Maschine ohne <application>&xfree86;</application> oder <application>&xorg;</application>, beispielsweise einem Server, benutzen, stellen Sie sicher, dass Sie den Port ohne das <application>CVSup</application>-<acronym>GUI</acronym>, <filename role="package">net/cvsup-without-gui</filename> verwenden.</para> </note> </sect2> <sect2 id="cvsup-config"> <title>Konfiguration von CVSup</title> <para>Das Verhalten von <application>CVSup</application> wird mit einer Konfigurationsdatei gesteuert, die <filename>supfile</filename> genannt wird. Beispiele für Konfigurationsdateien finden Sie in dem Verzeichnis <ulink type="html" url="file://localhost/usr/share/examples/cvsup/"></ulink>.</para> <para>Ein <filename>supfile</filename> enthält die folgenden Informationen:</para> <itemizedlist> <listitem> <para><link linkend="cvsup-config-files">Welche Dateien Sie erhalten wollen.</link></para> </listitem> <listitem> <para><link linkend="cvsup-config-vers">Welche Versionen der Dateien Sie benötigen.</link></para> </listitem> <listitem> <para><link linkend="cvsup-config-where">Woher Sie die Dateien beziehen wollen.</link></para> </listitem> <listitem> <para><link linkend="cvsup-config-dest">Wo Sie die erhaltenen Dateien speichern.</link></para> </listitem> <listitem> <para><link linkend="cvsup-config-status">Wo Sie die Status-Dateien aufbewahren wollen.</link></para> </listitem> </itemizedlist> <para>In den folgenden Abschnitten erstellen wir ein typisches <filename>supfile</filename> indem wir nach und nach diese Punkte klären. Zuerst beschreiben wir aber den Aufbau dieser Konfigurationsdatei.</para> <para>Ein <filename>supfile</filename> ist eine Textdatei. Kommentare beginnen mit einem <literal>#</literal> und gelten bis zum Zeilenende. Leerzeilen und Zeilen, die nur Kommentare enthalten, werden ignoriert.</para> <para>Die anderen Zeilen legen die Dateien fest, die ein Benutzer erhalten will. Der Server organisiert verschiedene Dateien in einer <quote>Sammlung</quote>, deren Name auf einer Zeile angegeben wird. Nach dem Namen der Sammlung können mehrere durch Leerzeichen getrennte Felder folgen, die die oben angesprochenen Informationen festlegen. Es gibt zwei Arten von Feldern: Felder, die Optionen festlegen und Felder mit Parametern. Optionen bestehen aus einem Schlüsselwort, wie <option>delete</option> oder <option>compress</option> und stehen alleine. Ein Parameterfeld beginnt mit einem Schlüsselwort, dem <literal>=</literal> und ein Parameter, wie in <option>release=cvs</option>, folgt. Dieses Feld darf keine Leerzeichen enthalten.</para> <para>In einem <filename>supfile</filename> werden normalerweise mehrere Sammlungen angefordert. Die erforderlichen Felder können explizit für jede Sammlung angegeben werden, dann werden jedoch die Zeilen ziemlich lang. Außerdem ist dieses Vorgehen sehr unhandlich, da die meisten Felder für alle Sammlungen gleich sind. <application>CVSup</application> bietet die Möglichkeit, Vorgaben für die Felder der Sammlungen festzulegen. Zeilen, die mit der Pseudo-Sammlung <literal>*default</literal> beginnen, legen Optionen und Parameter für nachfolgende Sammlungen im <filename>supfile</filename> fest. Der Vorgabewert kann in der Zeile einer bestimmten Sammlung überschrieben werden. Durch Hinzufügen weiterer <literal>*default</literal> Zeilen können die Vorgaben auch mitten im <filename>supfile</filename> überschrieben oder erweitert werden.</para> <para>Mit diesem Wissen können wir nun ein <filename>supfile</filename> erstellen, das den Quellbaum von <link linkend="current">FreeBSD-CURRENT</link> anfordert und aktualisiert.</para> <itemizedlist> <listitem> <para><anchor id="cvsup-config-files">Welche Dateien wollen Sie empfangen?</para> <para>Dateien werden von <application>CVSup</application> in <quote>Sammlungen</quote> organisiert. Die erhältlichen Sammlungen werden <link linkend="cvsup-collec">später</link> beschrieben. Wir wollen den Quellbaum von FreeBSD empfangen, der in der Sammlung <literal>src-all</literal> enthalten ist. Das <filename>supfile</filename> enthält pro Zeile eine Sammlung, in diesem Fall also nur eine einzige Zeile:</para> <programlisting>src-all</programlisting> </listitem> <listitem> <para><anchor id="cvsup-config-vers">Welche Versionen der Dateien werden benötigt?</para> <para>Mit <application>CVSup</application> können Sie jede Version der Quellen bekommen, da der <application>cvsupd</application>-Server seine Daten direkt aus dem <application>CVS</application>-Repository bezieht. Sie können die benötigten Versionen in den Parameterfeldern <literal>tag=</literal> und <option>date=</option> angeben.</para> <warning> <para>Achten Sie darauf, dass Sie das richtige <literal>tag=</literal>-Feld angeben. Einige Tags sind nur für spezielle Sammlungen gültig. Wenn Sie ein falsches Tag angeben oder sich verschreiben, wird <application>CVSup</application> Dateien löschen, die Sie wahrscheinlich gar nicht löschen wollten. Achten Sie insbesondere bei den <literal>ports-*</literal>-Sammlungen darauf, <emphasis>ausschließlich</emphasis> <literal>tag=.</literal> zu verwenden.</para> </warning> <para>Mit <literal>tag=</literal> wird ein symbolischer Name aus dem Repository angegeben. Es gibt zwei verschiedene Tags: Tags, die Revisionen bezeichnen und Tags, die Zweige bezeichnen. Die ersteren sind statisch und fest an eine Revision gebunden. Ein Tag, das einen Zweig bezeichnet, bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf die aktuellste Revision. Da ein Tag eines Zweiges nicht an eine bestimmte Revision gebunden ist, kann sich dessen Bedeutung von heute auf morgen ändern.</para> <para><xref linkend="cvs-tags"> zählt für Benutzer relevante Tags auf. Wenn Sie in der Konfigurationsdatei ein Tag, wie <literal>RELENG_4</literal>, angeben, müssen Sie diesem <literal>tag=</literal> vorstellen: <literal>tag=RELENG_4</literal>. Denken Sie daran, dass es für die Ports-Sammlung nur <literal>tag=.</literal> gibt.</para> <warning> <para>Achten Sie darauf, dass Sie den Namen eines Tags richtig angeben. <application>CVSup</application> kann nicht zwischen richtigen und falschen Tags unterscheiden. Wenn Sie sich bei der Angabe eines Tags vertippen, nimmt <application>CVSup</application> an, Sie hätten ein gültiges Tag angegeben, dem nur keine Dateien zugeordnet sind. Die Folge davon ist, dass Ihre vorhandenen Quellen gelöscht werden.</para> </warning> <para>Wenn Sie ein Tag angeben, das sich auf einen Zweig bezieht, erhalten Sie die aktuellsten Revisionen der Dateien auf diesem Zweig. Wenn Sie eine frühere Revision erhalten möchten, können Sie diese im <option>date=</option> Feld angeben. Einzelheiten dazu finden Sie in der Manualpage von <command>cvsup</command>.</para> <para>Wir möchten gerne FreeBSD-CURRENT beziehen und fügen die folgende Zeile <emphasis>am Anfang</emphasis> der Konfigurationsdatei ein:</para> <programlisting>*default tag=.</programlisting> <para>Eine wichtige Ausnahme ist wenn Sie weder ein <literal>tag=</literal>-Feld noch ein <literal>date=</literal>-Feld angeben. In diesem Fall erhalten Sie anstelle einer speziellen Revision die wirklichen RCS-Dateien aus dem CVS-Repository des Servers. Diese Vorgehensweise wird von Entwicklern bevorzugt, da sie mit einem eigenen Repository leicht die Entwicklungsgeschichte und Veränderungen von Dateien verfolgen können. Dieser Vorteil muss allerdings mit sehr viel Plattenplatz bezahlt werden.</para> </listitem> <listitem> <para><anchor id="cvsup-config-where">Woher sollen die Dateien bezogen werden?</para> <para>Im <literal>host=</literal>-Feld wird angegeben, woher <command>cvsup</command> die Dateien holen soll. Sie können hier jeden der <link linkend="cvsup-mirrors">CVSup-Spiegel</link> angeben, doch sollten Sie einen Server in Ihrer Nähe auswählen. Für dieses Beispiel wollen wir den erfundenen Server <hostid role="fqdn">cvsup99.FreeBSD.org</hostid> verwenden:</para> <programlisting>*default host=cvsup99.FreeBSD.org</programlisting> <para>Bevor Sie <application>CVSup</application> laufen lassen, sollten Sie hier einen existierenden Server einsetzen. Den zu verwendenden Server können Sie auf der Kommandozeile mit <option>-h <replaceable>hostname</replaceable></option> überschreiben.</para> </listitem> <listitem> <para><anchor id="cvsup-config-dest">Wo sollen die Dateien gespeichert werden?</para> <para>Im <literal>prefix=</literal>-Feld teilen Sie <command>cvsup</command> mit, wo die Dateien gespeichert werden sollen. In diesem Beispiel werden wir die Quelldateien direkt im Verzeichnisbaum für Quellen <filename>/usr/src</filename> ablegen. Das Verzeichnis <filename>src</filename> ist schon in der Sammlung, die wir beziehen enthalten, so dass wir die folgende Zeile angeben:</para> <programlisting>*default prefix=/usr</programlisting> </listitem> <listitem> <para><anchor id="cvsup-config-status">Wo sollen die Statusinformationen von <command>cvsup</command> gespeichert werden?</para> <para><command>cvsup</command> legt in einem Verzeichnis Statusinformationen ab, die festhalten, welche Versionen schon empfangen wurden. Wir verwenden das Verzeichnis <filename class="directory">/var/db</filename>:</para> <programlisting>*default base=/var/db</programlisting> <para>Wenn das Verzeichnis für die Statusinformationen nicht existiert, sollten Sie es jetzt anlegen, da <command>cvsup</command> ohne dieses Verzeichnis nicht startet.</para> </listitem> <listitem> <para>Verschiedene Einstellungen:</para> <para>Eine weitere Zeile sollte normalerweise in jedem <filename>supfile</filename> sein:</para> <programlisting>*default release=cvs delete use-rel-suffix compress</programlisting> <para>Mit <literal>release=cvs</literal> wird angegeben, dass der Server das FreeBSD-Haupt-Repository abfragen soll, was praktisch immer der Fall ist (die Ausnahmen werden in diesem Text nicht diskutiert).</para> <para><literal>delete</literal> erlaubt es <application>CVSup</application>, Dateien zu löschen. Diese Option sollten Sie immer angeben, damit <application>CVSup</application> Ihren Quellbaum auch wirklich aktuell halten kann. <application>CVSup</application> löscht nur Dateien für die es auch verantwortlich ist. Andere Dateien, die sich in einem Baum unter Kontrolle von <application>CVSup</application> befinden, werden nicht verändert.</para> <para>Wenn Sie wirklich etwas über das obskure <literal>use-rel-suffix</literal> erfahren wollen, lesen Sie bitte in der Manualpage nach, ansonsten geben Sie es einfach an und vergessen es.</para> <para>Wenn Sie <literal>compress</literal> angeben, werden Daten auf dem Kommunikationskanal komprimiert. Wenn Sie über eine T1-Leitung oder eine schnellere Netzanbindung verfügen, brauchen Sie diese Option vielleicht nicht. In allen anderen Fällen beschleunigt sie aber den Ablauf.</para> </listitem> <listitem> <para>Zusammenfassung:</para> <para>Das vollständige <filename>supfile</filename> unseres Beispiels sieht nun so aus:</para> <programlisting>*default tag=. *default host=cvsup99.FreeBSD.org *default prefix=/usr *default base=/var/db *default release=cvs delete use-rel-suffix compress src-all</programlisting> </listitem> </itemizedlist> <sect3 id="cvsup-refuse-file"> <title>Die <filename>refuse</filename> Datei</title> <para><application>CVSup</application> benutzt die Pull-Methode, das heißt wenn sich ein Client mit einem Server verbindet, erhält er eine Liste der verfügbaren Sammlungen und wählt aus diesen die herunterzuladenden Dateien aus. In der Voreinstellung wählt der Client alle Dateien aus, die zu einer gegebenen Sammlung und zu einem gegebenen Tag passen. Dieses Verhalten ist aber nicht immer erwünscht, besonders wenn Sie die <filename>doc</filename>, <filename>ports</filename> oder <filename>www</filename> Verzeichnisbäume synchronisieren. Die wenigsten Leute beherrschen vier oder fünf Sprachen und benötigen Dateien mit speziellen Anpassungen für eine Sprache. Wenn Sie die Ports-Sammlung synchronisieren, können Sie anstelle von <literal>ports-all</literal> einzelne Ports, wie <literal>ports-astrology</literal> oder <literal>ports-biology</literal> angeben. Die <filename>doc</filename> und <filename>www</filename> Verzeichnisbäume verfügen aber nicht über Sammlungen für spezielle Sprachen. In diesem Fall müssen Sie eines der vielen eleganten Merkmale von <application>CVSup</application> benutzen: Die <filename>refuse</filename> Datei.</para> <para>Mit einer <filename>refuse</filename> Datei können Sie bestimmte Dateien einer Sammlung von der Übertragung ausschließen. Der Ort der <filename>refuse</filename> ist <filename><replaceable>base</replaceable>/sup/refuse</filename>, wobei <replaceable>base</replaceable> in Ihrem <filename>supfile</filename> festgelegt wurde. Wir verwenden das Verzeichnis <filename class="directory">/var/db</filename>, der Ort der <filename>refuse</filename> Datei ist daher <filename>/var/db/sup/refuse</filename>.</para> <para>Das Format der <filename>refuse</filename> Datei ist einfach: Sie enthält eine Liste der Dateien und Verzeichnisse, die Sie nicht herunterladen wollen. Wenn Sie zum Beispiel die Dokumentation nicht in anderen Sprachen als Englisch lesen wollen, könnte Ihre <filename>refuse</filename>-Datei wie folgt aussehen:</para> <screen>doc/bn_* doc/da_* doc/de_* doc/el_* doc/es_* doc/fr_* doc/it_* doc/ja_* doc/nl_* doc/no_* doc/pl_* doc/pt_* doc/ru_* doc/sr_* doc/tr_* doc/zh_*</screen> <para>Die Aufzählung setzt sich für andere Sprachen fort. Eine vollständige Liste finden Sie im <ulink url="http://www.FreeBSD.org/cgi/cvsweb.cgi/">FreeBSD CVS Repository</ulink>.</para> <para>Die <filename>refuse</filename> Datei spart Anwendern von <application>CVSup</application>, die über eine langsame Internetanbindung verfügen oder deren Internetverbindung zeitlich abgerechnet wird, wertvolle Zeit, da sie Dateien, die sie nicht benötigen, nicht mehr herunterladen müssen. Weitere Informationen zu <filename>refuse</filename> Dateien und anderen Eigenschaften von <application>CVSup</application> entnehmen Sie bitte der Manualpage.</para> </sect3> </sect2> <sect2> <title>Ausführen von <application>CVSup</application></title> <para>Wir können nun eine Aktualisierung mit der folgenden Kommandozeile starten:</para> <screen>&prompt.root; <userinput>cvsup <replaceable>supfile</replaceable></userinput></screen> <para><filename><replaceable>supfile</replaceable></filename> gibt dabei das eben erstelle <filename>supfile</filename> an. Wenn Sie <application>X11</application> benutzen, wird <command>cvsup</command> ein <acronym>GUI</acronym> starten. Drücken Sie <guibutton>go</guibutton> und schauen Sie zu.</para> <para>Das Beispiel aktualisiert die Dateien im Verzeichnisbaum <filename>/usr/src</filename>. Sie müssen <command>cvsup</command> als <username>root</username> starten, damit Sie die nötigen Rechte haben, die Dateien zu aktualisieren. Sie sind vielleicht ein bisschen nervös weil Sie das Programm zum ersten Mal anwenden und möchten zuerst einmal einen Testlauf durchführen. Legen Sie dazu ein temporäres Verzeichnis an und übergeben es auf der Kommandozeile von <command>cvsup</command>:</para> <screen>&prompt.root; <userinput>mkdir /var/tmp/dest</userinput> &prompt.root; <userinput>cvsup supfile /var/tmp/dest</userinput></screen> <para>Aktualisierungen werden dann nur in dem angegebenen Verzeichnis vorgenommen. <application>CVSup</application> untersucht die Dateien in <filename>/usr/src</filename>, wird aber keine dieser Dateien verändern. Die veränderten Dateien finden Sie stattdessen in <filename>/var/tmp/dest/usr/src</filename>. Die Statusdateien von <application>CVSup</application> werden ebenfalls nicht geändert, sondern in dem angegebenen Verzeichnis abgelegt. Wenn Sie Leseberechtigung in <filename>/usr/src</filename> haben, brauchen Sie das Programm noch nicht einmal unter <username>root</username> laufen zu lassen.</para> <para>Wenn Sie <application>X11</application> nicht benutzen wollen oder keine <acronym>GUI</acronym>s mögen, sollten Sie <command>cvsup</command> wie folgt aufrufen:</para> <screen>&prompt.root; <userinput>cvsup -g -L 2 <replaceable>supfile</replaceable></userinput></screen> <para><option>-g</option> verhindert den Start des <acronym>GUI</acronym>s. Wenn Sie kein <application>X11</application> laufen haben, passiert das automatisch, ansonsten müssen Sie diesen Schalter angeben.</para> <para>Mit <option>-L 2</option> gibt <application>CVSup</application> Einzelheiten zu jeder Aktualisierung aus. Die Wortfülle der Meldungen können Sie von <option>-L 0</option> bis <option>-L 2</option> einstellen. In der Voreinstellung <option>-L 0</option> werden nur Fehlermeldungen ausgegeben.</para> <para>Eine Zusammenfassung der Optionen von <application>CVSup</application> erhalten Sie mit <command>cvsup -H</command>. Genauere Informationen finden Sie in der Manualpage von <application>CVSup</application>.</para> <para>Wenn Sie mit dem Ablauf der Aktualisierung zufrieden sind, können Sie <application>CVSup</application> regelmäßig aus &man.cron.8; ausführen. In diesem Fall sollten Sie natürlich nicht das <acronym>GUI</acronym> benutzen.</para> </sect2> <sect2 id="cvsup-collec"> <title><application>CVSup</application> Sammlungen</title> <para>Die <application>CVSup</application> Sammlungen sind hierarchisch organisiert. Es gibt wenige große Sammlungen, die in kleinere Teilsammlungen unterteilt sind. Wenn Sie eine große Sammlung beziehen, entspricht das dem Beziehen aller Teilsammlungen. Der Hierarchie der Sammlung wird in der folgenden Aufzählung durch Einrückungen dargestellt.</para> <para>Die am häufigsten benutzen Sammlungen sind <literal>src-all</literal> und <literal>ports-all</literal>. Die anderen Sammlungen werden von wenigen Leuten zu speziellen Zwecken benutzt und es kann sein, dass diese nicht auf allen Spiegeln zur Verfügung stehen.</para> <variablelist> <varlistentry> <term><literal>cvs-all release=cvs</literal></term> <listitem> <para>Das FreeBSD-Haupt-Repository einschließlich der Kryptographie-Module.</para> <variablelist> <varlistentry> <term><literal>distrib release=cvs</literal></term> <listitem> <para>Dateien, die zum Verteilen und Spiegeln von FreeBSD benötigt werden.</para> </listitem> </varlistentry> <varlistentry> <term><literal>doc-all release=cvs</literal></term> <listitem> <para>Quellen des FreeBSD-Handbuchs und weiterer Dokumentation. Diese Sammlung enthält nicht die FreeBSD-Webseite.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-all release=cvs</literal></term> <listitem> <para>Die FreeBSD-Ports-Sammlung.</para> <important id="cvsup-collec-pbase-warn"> <para>Wenn Sie nicht die gesamte Ports-Sammlung (<literal>ports-all</literal>) aktualisieren wollen, sondern nur eine der nachstehend aufgeführten Teilsammlungen, aktualisieren Sie <emphasis>immer</emphasis> die Teilsammlung <literal>ports-base</literal>. Diese Teilsammlung enthält das Bausystem der Ports. Immer wenn <literal>ports-base</literal> geändert wird, ist es so gut wie sicher, dass diese Änderung auch tatsächlich von einem Port benutzt wird. Der Bau eines Ports, der auf Änderungen im Bausystem angewiesen wird, wird fehlschlagen, wenn das Bausystem noch auf einem alten Stand ist. Aktualisieren Sie vor allen Dingen <literal>ports-base</literal>, wenn Sie bei einem Bau merkwürdige Fehlermeldungen erhalten und kein aktuelles Bausystem benutzen.</para> </important> <important id="cvsup-collec-index-warn"> <para>Wenn Sie die Datei <filename>ports/INDEX</filename> selbst erzeugen, brauchen Sie unbedingt die Sammlung <literal>ports-all</literal> (den ganzen Ports-Baum). Es ist nicht möglich, <filename>ports/INDEX</filename> nur mit einem Teilbaum zu erstellen. Lesen Sie dazu bitte die <ulink url="&url.books.faq;/applications.html#MAKE-INDEX">FAQ</ulink>.</para> </important> <variablelist> <varlistentry> <term><literal>ports-accessibility release=cvs</literal></term> <listitem> <para>Werkzeuge für behinderte Benutzer.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-arabic release=cvs</literal></term> <listitem> <para>Arabische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-archivers release=cvs</literal></term> <listitem> <para>Werkzeuge zum Archivieren.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-astro release=cvs</literal></term> <listitem> <para>Astronomie-Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-audio release=cvs</literal></term> <listitem> <para>Audio-Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-base release=cvs</literal></term> <listitem> <para>Das Bausystem der Ports-Sammlung. Dazu gehören verschiedene Dateien in den Unterverzeichnissen <filename>Mk/</filename> und <filename>Tools/</filename> von <filename>/usr/ports</filename>.</para> <note> <para>Aktualisieren Sie diese Teilsammlung <emphasis>jedes Mal</emphasis>, wenn Sie einen Teil der Ports-Sammlung aktualisieren. Lesen Sie dazu auch den <link linkend="cvsup-collec-pbase-warn">obigen Hinweis zur Ports-Sammlung</link>.</para> </note> </listitem> </varlistentry> <varlistentry> <term><literal>ports-benchmarks release=cvs</literal></term> <listitem> <para>Benchmarks.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-biology release=cvs</literal></term> <listitem> <para>Biologie.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-cad release=cvs</literal></term> <listitem> <para>Computer Aided Design Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-chinese release=cvs</literal></term> <listitem> <para>Chinesische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-comms release=cvs</literal></term> <listitem> <para>Programme zur Datenkommunikation.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-converters release=cvs</literal></term> <listitem> <para>Zeichensatz Konvertierer.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-databases release=cvs</literal></term> <listitem> <para>Datenbanken.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-deskutils release=cvs</literal></term> <listitem> <para>Sachen, die sich vor dem Computer-Zeitalter auf dem Schreibtisch befanden.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-devel release=cvs</literal></term> <listitem> <para>Werkzeuge für Entwickler.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-dns release=cvs</literal></term> <listitem> <para>Software für DNS.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-editors release=cvs</literal></term> <listitem> <para>Editoren.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-emulators release=cvs</literal></term> <listitem> <para>Programme, die andere Betriebssysteme emulieren.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-finance release=cvs</literal></term> <listitem> <para>Finanz-Anwendungen.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-ftp release=cvs</literal></term> <listitem> <para>Werkzeuge für FTP Clients und Server.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-games release=cvs</literal></term> <listitem> <para>Spiele.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-german release=cvs</literal></term> <listitem> <para>Deutsche Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-graphics release=cvs</literal></term> <listitem> <para>Graphik-Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-hebrew release=cvs</literal></term> <listitem> <para>Hebräische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-hungarian release=cvs</literal></term> <listitem> <para>Ungarische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-irc release=cvs</literal></term> <listitem> <para>Internet Relay Chat Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-japanese release=cvs</literal></term> <listitem> <para>Japanische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-java release=cvs</literal></term> <listitem> <para>&java; Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-korean release=cvs</literal></term> <listitem> <para>Koreanische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-lang release=cvs</literal></term> <listitem> <para>Programmiersprachen.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-mail release=cvs</literal></term> <listitem> <para>E-Mail Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-math release=cvs</literal></term> <listitem> <para>Programme zur numerischen Mathematik.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-mbone release=cvs</literal></term> <listitem> <para>MBone Anwendungen.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-misc release=cvs</literal></term> <listitem> <para>Verschiedene Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-multimedia release=cvs</literal></term> <listitem> <para>Multimedia-Anwendungen.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-net release=cvs</literal></term> <listitem> <para>Netzwerk-Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-net-im release=cvs</literal></term> <listitem> <para>Diverse Instant-Messenger.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-net-mgmt release=cvs</literal></term> <listitem> <para>Software zum Verwalten von Netzwerken.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-net-p2p release=cvs</literal></term> <listitem> <para>Software für die Nutzung von Peer-to-Peer-Netzwerken.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-news release=cvs</literal></term> <listitem> <para>USENET News Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-palm release=cvs</literal></term> <listitem> <para>Programme für den <trademark class="trade">Palm</trademark>.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-polish release=cvs</literal></term> <listitem> <para>Polnische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-portuguese release=cvs</literal></term> <listitem> <para>Portugiesische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-print release=cvs</literal></term> <listitem> <para>Druckprogramme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-russian release=cvs</literal></term> <listitem> <para>Russische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-science release=cvs</literal></term> <listitem> <para>Wissenschaft.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-security release=cvs</literal></term> <listitem> <para>Werkzeuge zum Thema Sicherheit.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-shells release=cvs</literal></term> <listitem> <para>Kommandozeilen-Shells.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-sysutils release=cvs</literal></term> <listitem> <para>System-Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-textproc release=cvs</literal></term> <listitem> <para>Programme zur Textverarbeitung (ohne Desktop Publishing).</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-ukrainian release=cvs</literal></term> <listitem> <para>Ukrainische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-vietnamese release=cvs</literal></term> <listitem> <para>Vietnamesische Sprachunterstützung.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-www release=cvs</literal></term> <listitem> <para>Software rund um das World Wide Web.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11 release=cvs</literal></term> <listitem> <para>X-Window Programme.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-clocks release=cvs</literal></term> <listitem> <para>X11-Uhren.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-fm release=cvs</literal></term> <listitem> <para>X11-Dateiverwalter.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-fonts release=cvs</literal></term> <listitem> <para>X11-Zeichensätze und Werkzeuge dazu.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-toolkits release=cvs</literal></term> <listitem> <para>X11-Werkzeuge.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-servers release=cvs</literal></term> <listitem> <para>X11-Server.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-themes release=cvs</literal></term> <listitem> <para>X11-Themes.</para> </listitem> </varlistentry> <varlistentry> <term><literal>ports-x11-wm release=cvs</literal></term> <listitem> <para>X11-Fensterverwalter.</para> </listitem> </varlistentry> </variablelist> </listitem> </varlistentry> <varlistentry> <term><literal>src-all release=cvs</literal></term> <listitem> <para>Die FreeBSD-Quellen einschließlich der Kryptographie-Module.</para> <variablelist> <varlistentry> <term><literal>src-base release=cvs</literal></term> <listitem> <para>Verschiedene Dateien unter <filename>/usr/src</filename>.</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-bin release=cvs</literal></term> <listitem> <para>Benutzer-Werkzeuge die im Einzelbenutzermodus gebraucht werden (<filename>/usr/src/bin</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-contrib release=cvs</literal></term> <listitem> <para>Werkzeuge und Bibliotheken, die nicht aus dem FreeBSD-Projekt stammen und wenig verändert übernommen werden. (<filename>/usr/src/contrib</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-crypto release=cvs</literal></term> <listitem> <para>Kryptographische Werkzeuge und Bibliotheken, die nicht aus dem FreeBSD-Projekt stammen und wenig verändert übernommen werden. (<filename>/usr/src/crypto</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-eBones release=cvs</literal></term> <listitem> <para>Kerberos und DES (<filename>/usr/src/eBones</filename>). Wird in aktuellen Releases von FreeBSD nicht benutzt.</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-etc release=cvs</literal></term> <listitem> <para>Konfigurationsdateien des Systems (<filename>/usr/src/etc</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-games release=cvs</literal></term> <listitem> <para>Spiele (<filename>/usr/src/games</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-gnu release=cvs</literal></term> <listitem> <para>Werkzeuge, die unter der GNU Public License stehen (<filename>/usr/src/gnu</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-include release=cvs</literal></term> <listitem> <para>Header Dateien (<filename>/usr/src/include</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-kerberos5 release=cvs</literal></term> <listitem> <para>Kerberos5 (<filename>/usr/src/kerberos5</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-kerberosIV release=cvs</literal></term> <listitem> <para>KerberosIV (<filename>/usr/src/kerberosIV</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-lib release=cvs</literal></term> <listitem> <para>Bibliotheken (<filename>/usr/src/lib</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-libexec release=cvs</literal></term> <listitem> <para>Systemprogramme, die von anderen Programmen ausgeführt werden (<filename>/usr/src/libexec</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-release release=cvs</literal></term> <listitem> <para>Dateien, die zum Erstellen eines FreeBSD Releases notwendig sind (<filename>/usr/src/release</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-sbin release=cvs</literal></term> <listitem> <para>Werkzeuge für den Einzelbenutzermodus (<filename>/usr/src/sbin</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-secure release=cvs</literal></term> <listitem> <para>Kryptographische Bibliotheken und Befehle (<filename>/usr/src/secure</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-share release=cvs</literal></term> <listitem> <para>Dateien, die von mehreren Systemen gemeinsam benutzt werden können (<filename>/usr/src/share</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-sys release=cvs</literal></term> <listitem> <para>Der Kernel (<filename>/usr/src/sys</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-sys-crypto release=cvs</literal></term> <listitem> <para>Kryptographie Quellen des Kernels (<filename>/usr/src/sys/crypto</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-tools release=cvs</literal></term> <listitem> <para>Verschiedene Werkzeuge zur Pflege von FreeBSD (<filename>/usr/src/tools</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-usrbin release=cvs</literal></term> <listitem> <para>Benutzer-Werkzeuge (<filename>/usr/src/usr.bin</filename>).</para> </listitem> </varlistentry> <varlistentry> <term><literal>src-usrsbin release=cvs</literal></term> <listitem> <para>System-Werkzeuge (<filename>/usr/src/usr.sbin</filename>).</para> </listitem> </varlistentry> </variablelist> </listitem> </varlistentry> <varlistentry> <term><literal>www release=cvs</literal></term> <listitem> <para>Die Quellen der FreeBSD-WWW-Seite.</para> </listitem> </varlistentry> </variablelist> </listitem> </varlistentry> <varlistentry> <term><literal>distrib release=self</literal></term> <listitem> <para>Die Konfigurationsdateien des <application>CVSup</application> Servers. Diese werden von den <application>CVSup</application> benutzt.</para> </listitem> </varlistentry> <varlistentry> <term><literal>gnats release=current</literal></term> <listitem> <para>Die GNATS Datenbank, in der Problemberichte verwaltet werden.</para> </listitem> </varlistentry> <varlistentry> <term><literal>mail-archive release=current</literal></term> <listitem> <para>Das Archiv der FreeBSD-Mailinglisten.</para> </listitem> </varlistentry> <varlistentry> <term><literal>www release=current</literal></term> <listitem> <para>Die formatierten Dateien der FreeBSD-WWW-Seite (nicht die Quellen). Diese werden von den WWW-Spiegeln benutzt.</para> </listitem> </varlistentry> </variablelist> </sect2> <sect2> <title>Weiterführende Informationen</title> <para>Die <application>CVSup</application> FAQ und weitere Informationen über <application>CVSup</application> finden Sie auf <ulink url="http://www.polstra.com/projects/freeware/CVSup/">The CVSup Home Page</ulink>.</para> <para>FreeBSD spezifische Diskussionen über <application>CVSup</application> finden auf der Mailingliste &a.hackers; statt. Dort und auf der Liste &a.announce; werden neue Versionen von <application>CVSup</application> angekündigt.</para> <para>Fragen und Problemberichte sollten an den Autor des Programms <email>cvsup-bugs@polstra.com</email> weitergeleitet werden.</para> </sect2> <sect2 id="cvsup-mirrors"> <title>CVSup-Server</title> <para>Die folgende Aufzählung enthält <link linkend="cvsup">CVSup</link> Server für FreeBSD:</para> &chap.mirrors.cvsup.inc; </sect2> </sect1> <sect1 id="portsnap"> <title>Portsnap einsetzen</title> <sect2 id="portsnap-intro"> <title>Einführung</title> <para>Bei <application>Portsnap</application> handelt es sich um ein System für die sichere Distribution der &os;-Ports-Sammlung. Dazu wird in der Regel stündlich ein <quote>Snapshot</quote> des Ports-Baumes erzeugt, der anschließend komprimiert und kryptografisch signiert wird. Die dabei erzeugten Dateien werden danach über HTTP verteilt.</para> <para>Analog zu <application>CVSup</application> verwendet auch auch <application>Portsnap</application> das <emphasis>Pull-Prinzip</emphasis>, um die Ports-Sammlung zu aktualisieren: Der komprimierte und signierte Ports-Baum wird auf einem Webserver abgelegt, der danach passiv auf Client-Anforderungen wartet. Ein Anwender muss daher &man.portsnap.8; manuell starten, um seine Ports-Sammlung zu aktualisieren. Eine Alternative ist das Erstellen eines &man.cron.8; -Jobs, der den Ports-Baum regelmäßig automatisch aktualisiert.</para> <para>Beachten Sie, dass <application>Portsnap</application> <emphasis>nicht</emphasis> mit der <quote>echten</quote> Ports-Sammlung unter <filename>/usr/ports/</filename>, sondern mit einer komprimierten Kopie des Ports-Baumes arbeitet, die in der Voreinstellung unter <filename>/var/db/portsnap/</filename> angelegt wird. Diese komprimierte Version wird danach dazu verwendet, den tatsächlichen Ports-Baum zu aktualisieren.</para> <note> <para>Haben Sie <application>Portsnap</application> über die &os;-Ports-Sammlung installiert, wird der komprimierte Ports-Baum statt unter <filename>/var/db/portsnap/</filename> unter <filename>/usr/local/portsnap/</filename> angelegt.</para> </note> </sect2> <sect2 id="portsnap-install"> <title>Installation</title> <para>Seit &os; 6.0 ist <application>Portsnap</application> im &os;-Basissystem enthalten. Verwenden Sie eine ältere &os;-Version, können Sie zur Installation den Port <filename role="package">sysutils/portsnap</filename> verwenden.</para> </sect2> <sect2 id="portsnap-config"> <title><application>portsnap</application> konfigurieren</title> <para><application>portsnap</application> kann über die Datei <filename>/etc/portsnap.conf</filename> konfiguriert werden. In der Regel kann allerdings die Standardkonfiguration unverändert übernommen werden. Wollen Sie die Datei dennoch anpassen, sollten Sie zuvor &man.portsnap.conf.5; lesen.</para> <note> <para>Wurde <application>Portsnap</application> über die &os;-Ports-Sammlung installiert, so wird statt <filename>/etc/portsnap.conf</filename> <filename>/usr/local/etc/portsnap.conf</filename> als Konfigurationsdatei verwendet. Diese Datei wird während der Installation nicht angelegt, allerdings wird eine Beispielkonfigurationsdatei mitgeliefert, die Sie in dieses Verzeichnis kopieren können:</para> <screen>&prompt.root; <userinput>cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf</userinput></screen> </note> </sect2> <sect2> <title>Der erste Aufruf von <application>portsnap</application></title> <para>Wenn Sie &man.portsnap.8; das erste Mal aufrufen, müssen Sie einen komprimierten Snapshot des kompletten Ports-Baumes nach <filename>/var/db/portsnap/</filename> herunterladen (oder nach <filename>/usr/local/portsnap/</filename> Sie <application>Portsnap</application> über die Ports-Sammlung installiert haben). Die ungefähre Größe des komprimierten Ports-Baumes beträgt derzeit (Anfang 2006) etwa 41 MB.</para> <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> <para>Nachdem der komprimierte Snapshot heruntergeladen wurde, kann eine <quote>Live-Version</quote> des Ports-Baumes nach <filename>/usr/ports/</filename> extrahiert werden. Dieser Schritt ist selbst dann nötig, wenn sich bereits ein Ports-Baum in diesem Verzeichnis befindet (der beispielsweise von <application>CVSup</application> angelegt wurde), weil <command>portsnap</command> einen Ausgangszustand des Ports-Baumes benötigt, um festzustellen, welche Teile des Baums aktualisiert werden müssen:</para> <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> <note> <para>Bei einer &os;-Standardinstallation wird das Verzeichnis <filename role="directory">/usr/ports</filename> nicht angelegt. Verwenden Sie &os; 6.0-RELEASE, sollten Sie dies vor der ersten Ausführung von <command>portsnap</command> nachholen. Verwenden Sie hingegen eine aktuellere &os;-Version oder eine aktuellere Version von <application>Portsnap</application>, wird dies beim ersten Aufruf von <command>portsnap</command> automatisch erledigt.</para> </note> </sect2> <sect2> <title>Den Ports-Baum aktualisieren</title> <para>Nachdem der originale komprimierte Snapshot des Ports-Baumes heruntergeladen und nach <filename>/usr/ports/</filename> extrahiert wurde, können Sie den Ports-Baum aktualisieren. Dazu sind zwei Schritte nötig: Mit <emphasis>fetch</emphasis> laden Sie Aktualisierungen herunter, mit <emphasis>update</emphasis> aktualisieren Sie die Live-Version des Ports-Baumes. Beide Parameter können gleichzeitig an <command>portsnap</command> übergeben werden:</para> <screen>&prompt.root; <userinput>portsnap fetch update</userinput></screen> <note> <para>Einige ältere <command>portsnap</command>-Versionen unterstützen diese Syntax nicht. In diesem Fall gehen Sie wie folgt vor:</para> <screen>&prompt.root; <userinput>portsnap fetch</userinput> &prompt.root; <userinput>portsnap update</userinput></screen> </note> </sect2> <sect2> <title>Portsnap als cron-Job starten</title> <para>Um eine Überlastung der <application>Portsnap</application>-Server zu vermeiden, kann <userinput>portsnap fetch</userinput> nicht als normaler &man.cron.8;-Job ausgeführt werden. Als Alternative gibt es den Befehl <userinput>portsnap cron</userinput>, der eine zufällige Zeitspanne (bis zu 3600 Sekunden) wartet, bevor Aktualisierungen heruntergeladen werden.</para> <para><command>portsnap update</command> sollte ebenfalls nicht als <command>cron</command>-Job ausgeführt werden, da es zu massiven Problemen kann, wenn parallel zur Aktualisierung ein Port gebaut oder installiert wird. Die Aktualisierung des Portsindex stellt hingegen kein Problem dar. Um die <filename>INDEX</filename>-Datei zu aktualisieren, übergeben Sie zusätzlich die Option <option>-I</option> an <command>portsnap</command>. (Wenn Sie <command>portsnap -I update</command> als <command>cron</command>-Job definiert haben, müssen Sie <command>portsnap update</command> ohne die Option <option>-I</option> aufrufen, um den Rest des Ports-Baumes zu aktualisieren.)</para> <para>Wenn Sie die folgende Zeile in <filename>/etc/crontab</filename> aufnehmen, aktualisiert <command>portsnap</command> den komprimierten Snapshot sowie die <filename>INDEX</filename>-Dateien unter <filename>/usr/ports/</filename> und verschickt eine E-Mail, wenn Ihre installierten Ports veraltet sind:</para> <programlisting>0 3 * * * root portsnap -I cron update && pkg_version -vIL=</programlisting> <note> <para>Ist Ihre Systemuhr nicht auf Ihre lokale Zeitzone eingestellt, ersetzen Sie bitte <literal>3</literal> durch eine beliebige Zahl zwischen 0 und 23, damit die Last der <application>Portsnap</application>-Server gleichmäßiger verteilt wird.</para> </note> <note> <para>Einige ältere <command>portsnap</command>-Versionen unterstützen die Angabe von mehreren Befehlen (etwa <literal>cron update</literal>) für einen einzigen <command>portsnap</command>-Aufruf nicht. Ist dies bei Ihnen der Fall, ersetzen Sie bitte <command>portsnap -I cron update</command> durch <command>portsnap cron && portsnap -I update</command>.</para> </note> </sect2> </sect1> <sect1 id="cvs-tags"> <title>CVS-Tags</title> <para>Wenn Sie Quellen mit <application>CVS</application> oder <application>CVSup</application> erhalten oder aktualisieren wollen, müssen Sie ein Tag angeben. Ein Tag kann einen bestimmten &os;-Zweig oder einen bestimmten Zeitpunkt (Release-Tag) bestimmen.</para> <sect2> <title>Tags für Zweige</title> <para>Mit Ausnahme von <literal>HEAD</literal> (das immer ein gültiges Tag ist), können die folgenden Tags nur im <filename>src/</filename>-Quellbaum verwendet werden. Die Quellbäume <filename>ports/</filename>, <filename>doc/</filename> und <filename>www/</filename> sind nicht verzweigt.</para> <variablelist> <varlistentry> <term>HEAD</term> <listitem> <para>Symbolischer Name für den Hauptzweig, auch &os.current; genannt. Dies ist die Vorgabe, wenn keine Revision angegeben wird.</para> <para>In <application>CVSup</application> wird dieses Tag mit einem <literal>.</literal> (Punkt) bezeichnet.</para> <note> <para>In <application>CVS</application> ist das die Vorgabe, wenn Sie kein Tag oder eine Revision angeben. Außer Sie wollen einen -STABLE Rechner auf -CURRENT aktualisieren, ist es <emphasis>nicht</emphasis> ratsam, die -CURRENT Quellen auf einem -STABLE Rechner einzuspielen.</para> </note> </listitem> </varlistentry> <varlistentry> <term>RELENG_6</term> <listitem> <para>Der Entwicklungszweig für FreeBSD-6.X, auch als FreeBSD 6-STABLE bekannt.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_6_1</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 6.1 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_6_0</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 6.0 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5</term> <listitem> <para>Der &os; 5.X Entwicklungszweig, der auch &os; 5-STABLE genannt wird.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_4</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.4 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_3</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.3 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_2</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.2 und &os; 5.2.1 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_1</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.1 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_0</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.0 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4</term> <listitem> <para>Der &os; 4.X Entwicklungszweig, der auch &os; 4-STABLE genannt wird.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_11</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.11 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_10</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.10 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_9</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.9 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_8</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.8 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_7</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.7 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_6</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.6 und FreeBSD 4.6.2 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_5</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.5 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_4</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.4 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_3</term> <listitem> <para>Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.3 durchgeführt werden.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3</term> <listitem> <para>Der FreeBSD-3.X Entwicklungszweig, der auch 3.X-STABLE genannt wird.</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2</term> <listitem> <para>Der FreeBSD-2.2.X Entwicklungszweig, der auch 2.2-STABLE genannt wird.</para> </listitem> </varlistentry> </variablelist> </sect2> <sect2> <title>Release-Tags</title> <para>Diese Tags geben den Zeitpunkt an, an dem eine bestimme &os;-Version veröffentlicht wurde. Das Erstellen einer Release ist in den Dokumenten <ulink url="&url.base;/releng/">Release Engineering Information</ulink> und <ulink url="&url.articles.releng.en;release-proc.html">Release Process</ulink> beschrieben. Der <filename class="directory">src</filename>-Baum benutzt Tags, deren Namen mit <literal>RELENG_</literal> anfangen. Die Bäume <filename class="directory">ports</filename> und <filename class="directory">doc</filename> benutzen Tags, deren Namen mit <literal>RELEASE</literal> anfangen. Im Baum <filename class="directory">www</filename> werden keine Release-Tags verwendet.</para> <variablelist> <varlistentry> <term>RELENG_6_1_0_RELEASE</term> <listitem> <para>FreeBSD 6.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_6_0_0_RELEASE</term> <listitem> <para>FreeBSD 6.0</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_4_0_RELEASE</term> <listitem> <para>FreeBSD 5.4</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_11_0_RELEASE</term> <listitem> <para>FreeBSD 4.11</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_3_0_RELEASE</term> <listitem> <para>FreeBSD 5.3</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_10_0_RELEASE</term> <listitem> <para>FreeBSD 4.10</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_2_1_RELEASE</term> <listitem> <para>FreeBSD 5.2.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_2_0_RELEASE</term> <listitem> <para>FreeBSD 5.2</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_9_0_RELEASE</term> <listitem> <para>FreeBSD 4.9</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_1_0_RELEASE</term> <listitem> <para>FreeBSD 5.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_8_0_RELEASE</term> <listitem> <para>FreeBSD 4.8</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_5_0_0_RELEASE</term> <listitem> <para>FreeBSD 5.0</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_7_0_RELEASE</term> <listitem> <para>FreeBSD 4.7</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_6_2_RELEASE</term> <listitem> <para>FreeBSD 4.6.2</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_6_1_RELEASE</term> <listitem> <para>FreeBSD 4.6.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_6_0_RELEASE</term> <listitem> <para>FreeBSD 4.6</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_5_0_RELEASE</term> <listitem> <para>FreeBSD 4.5</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_4_0_RELEASE</term> <listitem> <para>FreeBSD 4.4</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_3_0_RELEASE</term> <listitem> <para>FreeBSD 4.3</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_2_0_RELEASE</term> <listitem> <para>FreeBSD 4.2</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_1_1_RELEASE</term> <listitem> <para>FreeBSD 4.1.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_1_0_RELEASE</term> <listitem> <para>FreeBSD 4.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_4_0_0_RELEASE</term> <listitem> <para>FreeBSD 4.0</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_5_0_RELEASE</term> <listitem> <para>FreeBSD-3.5</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_4_0_RELEASE</term> <listitem> <para>FreeBSD-3.4</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_3_0_RELEASE</term> <listitem> <para>FreeBSD-3.3</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_2_0_RELEASE</term> <listitem> <para>FreeBSD-3.2</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_1_0_RELEASE</term> <listitem> <para>FreeBSD-3.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_3_0_0_RELEASE</term> <listitem> <para>FreeBSD-3.0</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_8_RELEASE</term> <listitem> <para>FreeBSD-2.2.8</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_7_RELEASE</term> <listitem> <para>FreeBSD-2.2.7</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_6_RELEASE</term> <listitem> <para>FreeBSD-2.2.6</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_5_RELEASE</term> <listitem> <para>FreeBSD-2.2.5</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_2_RELEASE</term> <listitem> <para>FreeBSD-2.2.2</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_1_RELEASE</term> <listitem> <para>FreeBSD-2.2.1</para> </listitem> </varlistentry> <varlistentry> <term>RELENG_2_2_0_RELEASE</term> <listitem> <para>FreeBSD-2.2.0</para> </listitem> </varlistentry> </variablelist> </sect2> </sect1> <sect1 id="mirrors-afs"> <title>AFS-Server</title> <para>Die folgende Aufzählung enthält AFS Server für FreeBSD:</para> <variablelist> <varlistentry> <term>Schweden</term> <listitem> <para>Die Dateien sind unter dem Pfad <filename>/afs/stacken.kth.se/ftp/pub/FreeBSD/</filename> erreichbar.</para> <programlisting>stacken.kth.se # Stacken Computer Club, KTH, Sweden 130.237.234.43 #hot.stacken.kth.se 130.237.237.230 #fishburger.stacken.kth.se 130.237.234.3 #milko.stacken.kth.se</programlisting> <para>Betreuer <email>ftp@stacken.kth.se</email></para> </listitem> </varlistentry> </variablelist> </sect1> <sect1 id="mirrors-rsync"> <title>rsync-Server</title> <para><application>rsync</application> wird ähnlich wie &man.rcp.1; verwendet, besitzt aber mehr Optionen und verwendet das <quote>rsync remote-update</quote> Protokoll, das nur geänderte Dateien überträgt und damit viel schneller als ein normaler Kopiervorgang ist. <application>rsync</application> ist sehr nützlich, wenn Sie einen FreeBSD-FTP-Spiegel oder einen CVS-Spiegel betreiben. Das Programm ist für viele Betriebssysteme erhältlich, mit FreeBSD können Sie den Port <filename role="package">net/rsync</filename> oder das fertige Paket benutzen. Die folgenden Server stellen FreeBSD über das <application>rsync</application> Protokoll zur Verfügung:</para> <variablelist> <varlistentry> <term>Deutschland</term> <listitem> <para>rsync://grappa.unix-ag.uni-kl.de/</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>freebsd-cvs: Das vollständige CVS-Repository von &os;.</para></listitem> </itemizedlist> <para>Neben anderen Repositories spiegelt diese Maschine auch die Repositories der NetBSD- und OpenBSD-Projekte.</para> </listitem> </varlistentry> <varlistentry> <term>Großbritannien</term> <listitem> <para>rsync://rsync.mirror.ac.uk/</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>ftp.FreeBSD.org: Kompletter Spiegel des FreeBSD-FTP-Servers.</para></listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term>Niederlande</term> <listitem> <para>rsync://ftp.nl.FreeBSD.org/</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>vol/4/freebsd-core: Kompletter Spiegel des FreeBSD-FTP-Servers.</para></listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term>Tschechische Republik</term> <listitem> <para>rsync://ftp.cz.FreeBSD.org/</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>ftp: Unvollständiger Spiegel des FreeBSD-FTP-Servers.</para></listitem> <listitem><para>FreeBSD: Vollständiger Spiegel des FreeBSD-FTP-Servers.</para></listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term>USA</term> <listitem> <para>rsync://ftp-master.FreeBSD.org/</para> <para>Dieser Server darf nur von primären Spiegeln benutzt werden.</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>FreeBSD: Das Hauptarchiv des FreeBSD FTP Servers.</para></listitem> <listitem><para>acl: Die primäre ACL-Liste.</para></listitem> </itemizedlist> <para>rsync://ftp13.FreeBSD.org/</para> <para>Verfügbare Sammlungen:</para> <itemizedlist> <listitem><para>FreeBSD: Kompletter Spiegel des FreeBSD-FTP-Servers.</para></listitem> </itemizedlist> </listitem> </varlistentry> </variablelist> </sect1> </appendix> <!-- Local Variables: mode: sgml sgml-declaration: "../appendix.decl" sgml-indent-data: t sgml-omittag: nil sgml-always-quote-attributes: t sgml-parent-document: ("../book.sgml" "part" "appendix") End: -->