svn commit: r50357 - head/de_DE.ISO8859-1/books/handbook/cutting-edge

Bjoern Heidotting <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
Author: bhd
Date: Sat Jun 10 21:42:20 2017
New Revision: 50357
URL: https://svnweb.freebsd.org/changeset/doc/50357

Log:
  Update to r50251:
  
  Rewrite the Build from Source section, simplifying and clarifying.
  
  Approved by:	bcr
  Differential Revision:	https://reviews.freebsd.org/D11134

Modified:
  head/de_DE.ISO8859-1/books/handbook/cutting-edge/chapter.xml

Modified: head/de_DE.ISO8859-1/books/handbook/cutting-edge/chapter.xml
==============================================================================
--- head/de_DE.ISO8859-1/books/handbook/cutting-edge/chapter.xml	Sat Jun 10 15:20:12 2017	(r50356)
+++ head/de_DE.ISO8859-1/books/handbook/cutting-edge/chapter.xml	Sat Jun 10 21:42:20 2017	(r50357)
@@ -5,7 +5,7 @@
 
      $FreeBSD$
      $FreeBSDde$
-     basiert auf: r50201
+     basiert auf: r50251
 -->
 <chapter xmlns="http://docbook.org/ns/docbook"
   xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
@@ -283,8 +283,8 @@ MergeChanges /etc/ /var/named/etc/ /boot/device.hints<
 	Änderungen werden entweder akzeptiert, oder öffnen einen
 	Editor, oder <command>freebsd-update</command> bricht ab.  Im
 	Zweifelsfall sichern Sie <filename>/etc</filename> und
-	akzeptieren einfach die Änderungen.  Lesen Sie <xref
-	  linkend="mergemaster"/>, um Informationen über
+	akzeptieren einfach die Änderungen.  Lesen Sie
+	&man.mergemaster.8;, um Informationen über
 	<command>mergemaster</command> zu erhalten.</para>
 
       <programlisting># Directory in which to store downloaded updates and temporary
@@ -1186,1183 +1186,471 @@ before running "/usr/sbin/freebsd-update install"</scr
 	</listitem>
       </orderedlist>
     </sect2>
-
-    <sect2 xml:id="stable">
-      <title>&os.stable;</title>
-
-      <para>&os.stable; ist der Entwicklungszweig, auf dem Releases
-	erstellt werden.  Dieser Zweig ändert sich langsamer als
-	&os.current; und alle Änderungen hier sollten zuvor in
-	&os.current; ausgetestet sein.  Beachten Sie, dass dies
-	<emphasis>immer noch</emphasis> ein Entwicklungszweig ist
-	und daher zu jedem Zeitpunkt die Quellen von &os.stable;
-	verwendbar sein können oder nicht.  &os.stable; ist Teil des
-	Entwicklungsprozesses und nicht für Endanwender gedacht.
-	Benutzer, die nicht über die notwendigen Ressourcen zum
-	Testen verfügen, sollten stattdessen eine aktuelle Version
-	von &os; benutzen.</para>
-
-      <para>Wer daran interessiert ist den &os;-Entwicklungsprozess
-	zu verfolgen oder dazu beizutragen, insbesondere im Hinblick
-	auf das nächste Hauptversion, der sollte es in Erwägung
-	ziehen, &os.stable; zu benutzen.</para>
-
-      <para>Obwohl wir versuchen sicherzustellen, dass der
-	&os.stable; Zweig sich jederzeit übersetzen lässt und
-	lauffähig ist, können wir dafür keine Garantie übernehmen.
-	Auch wenn Neuentwicklungen in &os.current; stattfinden, ist
-	es jedoch so, dass mehr Leute &os.stable; anstelle von
-	&os.current; benutzen und es daher unvermeidlich ist, dass
-	Fehler und Grenzfälle erst in &os.stable; auffallen.  Aus
-	diesen Gründen empfehlen wir Ihnen
-	<emphasis>nicht</emphasis> blindlings &os.stable; zu
-	benutzen.  Es ist besonders wichtig, dass &os.stable; zuerst
-	sorgfältig in einer Testumgebung getestet wird, bevor die
-	Produktion auf &os.stable; migriert.</para>
-
-      <para>Um &os.stable; zu folgen:</para>
-
-      <indexterm>
-	<primary>-STABLE</primary>
-	<secondary>benutzen</secondary>
-      </indexterm>
-
-      <orderedlist>
-	<listitem>
-	  <para>Lesen Sie Mailingliste &a.stable.name;, damit Sie über
-	    Abhängigkeiten beim Bau von &os.stable; und Sachen, die
-	    besondere Aufmerksamkeit erfordern, informiert sind.
-	    Umstrittene Fehlerbehebungen oder Änderungen werden von
-	    den Entwicklern auf dieser Liste bekannt gegeben.  Dies
-	    erlaubt es den Benutzern, Einwände gegen die
-	    vorgeschlagenen Änderungen vorzubringen.</para>
-
-	  <para>Abonnieren Sie die passende
-	    <application>svn</application>-Liste für den jeweiligen
-	    Branch, den Sie verfolgen.  Wenn Sie beispielsweise den
-	    Zweig 9-STABLE verfolgen, lesen Sie die
-	    &a.svn-src-stable-9.name;.  Diese Liste enthält zu jeder
-	    Änderung das Commit-Log, das Informationen zu möglichen
-	    Seiteneffekten enthält.</para>
-
-	  <para>Um diese Listen zu abonnieren, besuchen Sie die
-	    Seite &a.mailman.lists.link;.  Klicken Sie auf die
-	    gewünschte Liste und folgenden Sie den Anweisungen.
-	    Wenn Sie daran interessiert sind, Änderungen am gesamten
-	    Quellbaum zu verfolgen, abonnieren Sie
-	    &a.svn-src-all.name;.</para>
-	</listitem>
-
-	<listitem>
-	  <para>Wenn Sie ein neues System installieren und dazu
-	    einen der monatlich aus &os.stable; erzeugten Snapshots
-	    verwenden wollen, sollten Sie zuerst <link
-	      xlink:href="&url.base;/snapshots">
-	      www.freebsd.org/snapshots</link> auf aktuelle
-	    Informationen überprüfen.  Alternativ können Sie auch
-	    das neueste &os.stable;-Release von den <link
-	      linkend="mirrors">&os; Spiegeln</link> beziehen.</para>
-
-	  <para>Um ein bestehendes &os;-System auf &os.stable; zu
-	    aktualisieren, benutzen Sie <link
-	      linkend="svn">svn</link>, um den gewünschten
-	    Entwicklungs- oder Release-Zweig auszuchecken.  Die
-	    Zweige, wie beispielsweise <literal>stable/9</literal>,
-	    sind unter <link xlink:href="&url.base;/releng/">
-	      www.freebsd.org/releng</link> aufgeführt.</para>
-	</listitem>
-
-	<listitem>
-	  <para>Lesen Sie <filename>/usr/src/Makefile</filename>
-	    sehr aufmerksam bevor Sie &os.stable; aktualisieren und
-	    folgen Sie den Anweisungen in <xref
-	      linkend="makeworld"/>.  Lesen Sie die
-	    Mailingliste &a.stable; und
-	    <filename>/usr/src/UPDATING</filename>, um über
-	    Änderungen im Installationsverfahren, die manchmal vor
-	    der Einführung eines neuen Releases notwendig sind,
-	    informiert zu sein.</para>
-	</listitem>
-      </orderedlist>
-    </sect2>
   </sect1>
 
-  <sect1 xml:id="synching">
-    <title>Synchronisation der Quellen</title>
+  <sect1 xml:id="updating-src">
+    <title>&os; aus den Quellen aktualisieren</title>
 
-    <para>Es gibt verschiedene Methoden um die Quellen von &os;
-      aktuell zu halten.  Dieser Abschnitt beschreibt
-      <application>Subversion</application>, den primären Dienst für
-      diese Aufgabe.</para>
+    <para>Das Aktualisieren von &os; aus den Quellen bietet im
+      Vergleich zu binären Updates mehrere Vorteile.  Der Quellcode
+      kann mit Optionen gebaut werden, um die Vorteile von
+      spezifischer Hardware zu nutzen.  Teile des Basissystems können
+      mit veränderten Einstellungen gebaut, oder falls nicht
+      gewünscht, auch ganz ausgelassen werden.
+      Dieser Prozess dauert zwar länger als die Aktualisierung mit
+      binären Updates, ermöglicht aber eine vollständige Anpassung, um
+      eine individuelle Version von &os; zu erstellen.</para>
 
-    <warning>
-      <para>Obwohl es möglich ist, nur Teile des Quellbaums zu
-	aktualisieren, ist die einzige unterstütze Prozedur,
-	den kompletten Quellbaum zu aktualisieren und alles neu zu
-	übersetzen.  Dazu zählen alle Userland-Programme in
-	<filename>/bin</filename> und <filename>/sbin</filename>,
-	sowie die Kernelquellen.  Wird hingegen nur ein Teil der
-	Quellen, zum Beispiel nur der Kernel oder nur die Programme
-	aus dem Userland aktualisiert, treten Probleme auf, die von
-	Übersetzungsfehlern über Kernel-Panics bis hin zu
-	Beschädigung von Daten reichen können.</para>
-    </warning>
+    <sect2 xml:id="updating-src-quick-start">
+      <title>Schnellstartanleitung</title>
 
-    <indexterm>
-      <primary>Subversion</primary>
-    </indexterm>
+      <para>Diese kurze Referenz zeigt die typischen Schritte um &os;
+	aus den Quellen zu aktualisieren.  Spätere Abschnitte
+	beschreiben die Prozedur im Detail.</para>
 
-    <para><application>Subversion</application> benutzt die
-      <foreignphrase>Pull</foreignphrase>-Methode, um die Quellen zu
-      aktualisieren.  Der Benutzer, oder ein
-      <command>cron</command>-Skript, ruft das Programm
-      <command>svn</command> auf, das die Quellen aktualisiert.
-      <application>Subversion</application> ist die empfohlene
-      Methode, um die lokalen Quellen zu aktualisieren, da
-      aktuelle Updates zu einem vom Benutzer bestimmten Zeitpunkt
-      herunterlädt.  Zudem ist es einfach, die Prozedur auf bestimmte
-      Dateien oder Verzeichnisse zu beschränken.  Die angeforderten
-      Updates werden zur Laufzeit auf dem Server generiert.  Die
-      Aktualisierung der Quellen wird in <xref linkend="svn"/>
-      beschrieben.</para>
-
-    <para>Wenn ein Benutzer unabsichtlich Teile des Archivs löscht,
-      wird das von <application>Subversion</application> erkannt und
-      bei der nächsten Aktualisierung repariert.</para>
-  </sect1>
-
-  <sect1 xml:id="makeworld">
-    <title>Das Basissystem neu bauen</title>
-
-    <indexterm>
-      <primary>Bau des Basissystems</primary>
-    </indexterm>
-
-    <para>Sobald der lokalen Quellbaum mit einer bestimmten &os;
-      Version, z.B. &os.stable; oder &os.current; synchronisiert
-      wurde, kann dieser dazu benutzt werden das System neu zu
-      bauen.  Dieser Prozess wird auch als
-      <quote>die Welt neu bauen</quote> bezeichnet.</para>
-
-    <para><emphasis>Bevor</emphasis> das System neu gebaut wird,
-      müssen die folgende Aufgaben erledigt werden:</para>
-
-    <procedure>
-      <title>Führen Sie diese Aufgaben aus, <emphasis>bevor</emphasis>
-	das System neu gebaut wird</title>
-
-      <step>
-	<para>Sichern Sie alle wichtigen Daten auf ein anderes System
-	  oder auf Wechselmedien und überprüfen Sie die Integrität der
-	  Sicherungskopie.  Zudem sollten Sie bootfähige
-	  Installationsmedien zur Hand haben.  Es kann nicht oft genug
-	  betont werden, wie wichtig es ist, vor dem Neubau des
-	  Systems eine Sicherung zu machen.  Während der Neubau des
-	  Systems eine einfache Aufgabe ist, wird es zwangsläufig
-	  einmal vorkommen, dass Fehler im Quellcode dazu führen, dass
-	  das System nicht mehr bootet.  Wahrscheinlich wird die
-	  Sicherungskopie nicht benötigt, aber gehen Sie auf Nummer
-	  sicher!</para>
-      </step>
-
-      <step>
-	<indexterm><primary>Mailingliste</primary></indexterm>
-	<para>Lesen Sie die neuesten Einträge in &a.stable; oder
-	  &a.current;, je nachdem welchen Zweig Sie folgen.
-	  Informieren Sie sich über bekannte Probleme und welche
-	  Systeme davon betroffen sind.  Wenn ein Problem für den
-	  von Ihnen synchronisierten Code besteht, warten Sie auf
-	  eine <quote>all clear</quote>-Nachricht, die besagt, dass
-	  das Problem behoben wurde.  Synchronisieren Sie dann die
-	  Quellen neu um sicherzustellen, dass die lokale Version
-	  die benötigten Korrekturen hat.</para>
-      </step>
-
-      <step>
-	<para>Lesen Sie <filename>/usr/src/UPDATING</filename> für
-	  zusätzliche Aufgaben, die für diese Version des Quellcodes
-	  notwendig sind.  Diese Datei enthält wichtige Informationen
-	  über potentielle Probleme.  Gegebenenfalls müssen einige
-	  Kommandos in einer bestimmten Reihenfolge ausgeführt werden.
-	  Manche Aktualisierungen erfordern bestimmte zusätzliche
-	  Schritte, die ausgeführt werden müssen, bevor das System neu
-	  gebaut wird, wie beispielsweise das umbenennen oder löschen
-	  von bestimmten Dateien.  Diese Aufgaben sind am Ende der
-	  Datei aufgeführt.  Die Anweisungen in
-	  <filename>UPDATING</filename> sind aktueller als die in
-	  diesem Handbuch.  Im Zweifelsfall folgen Sie bitte den
-	  Anweisungen aus <filename>UPDATING</filename>.</para>
-      </step>
-    </procedure>
-
-    <warning>
-      <title>Verwenden Sie nicht <command>make world</command></title>
-
-      <para>Einige ältere Dokumentationen empfehlen
-	<command>make world</command> für den Neubau.
-	Das Kommando überspringt jedoch wichtige Schritte und sollte
-	nur von Experten verwendet werden.  In fast allen Fällen ist
-	<command>make world</command> falsch.  Benutzen Sie
-	stattdessen die nachstehende Anleitung.</para>
-    </warning>
-
-    <sect2 xml:id="canonical-build">
-      <title>Übersicht</title>
-
-      <para>Dieser Prozess geht davon aus, dass ein System von einer
-	älteren Version von &os; auf eine neuere Version aktualisiert
-	wird.  Der Quellcode für die neue Version wurde nach den
-	Anweisungen in <xref linkend="synching"/>
-	synchronisiert.</para>
-
-      <para>Das Basissystem enthält den &os;-Kernel, die
-	zentralen Binärdateien, Bibliotheken und Entwicklerdateien
-	sowie einen integrierten Compiler.  Die Reihenfolge, in der
-	diese Komponenten gebaut werden, ist wichtig.</para>
-
-      <para>Beispielsweise könnte der alte Compiler aufgrund von
-	Fehlern nicht in der Lage sein, den neuen Kernel zu
-	übersetzen.  Da der neue Kernel mit dem neuen Compiler
-	übersetzt wird, muss der neue Compiler gebaut, aber nicht
-	notwendigerweise <emphasis>installiert</emphasis> werden,
-	bevor der neue Kernel gebaut wird.</para>
-
-      <para>Das neue Basissystem ist eventuell auf neue Funktionen des
-	Kernels angewiesen.  Aus diesem Grund muss der neue Kernel
-	installiert sein, bevor das neue Basissystem installiert
-	wird.</para>
-
-      <para>Das alte Basissystem wird möglicherweise nicht korrekt mit
-	dem neuen Kernel funktionieren, weshalb das neue Basissystem
-	sofort nach der Installation des neuen Kernels installiert
-	werden muss.</para>
-
-      <para>Manche Änderungen an der Konfiguration müssen erledigt
-	worden sein, bevor das neue Basissystem installiert wird,
-	jedoch können andere die Funktionalität des alten Basissystems
-	beeinträchtigen.  Aus diesem Grund sind zwei verschiedene
-	Schritte notwendig, um eine Aktualisierung der Konfiguration
-	durchzuführen.  Der Aktualisierungsprozess ersetzt zum
-	Großteil Dateien oder fügt neue hinzu, bestehende Dateien
-	werden nicht gelöscht.  Da dieser Prozess Probleme verursachen
-	kann, werden in <filename>/usr/src/UPDATING</filename>
-	gegebenenfalls Dateien aufgelistet, die manuell entfernt
-	werden müssen.</para>
-
-      <para>Diese Bedenken haben zu einer empfohlenen
-	Reihenfolge bei der Aktualisierung geführt, die im folgenden
-	Prozess beschrieben wird.</para>
-
-      <note>
-	<para>Es ist ratsam, die Ausgaben von <command>make</command>
-	  in einer Datei zu sichern.  Wenn etwas schief geht, kann
-	  eine Kopie der Fehlermeldung zu einer der &os;-Mailinglisten
-	  gesendet werden.</para>
-
-	<para>Dazu können Sie einfach <command>script</command>
-	  benutzen, dem Sie beim Aufruf als Parameter den Dateinamen
-	  für die Ausgaben mitgeben.  Sichern Sie die Ausgaben nicht
-	  nach <filename>/tmp</filename>, da dessen Inhalt beim
-	  nächsten Neustart vielleicht verloren geht.  Ein besserer
-	  Platz ist <filename>/var/tmp</filename>.  Setzen Sie dieses
-	  Kommando unmittelbar vor dem Neubau ab und geben Sie
-	  <userinput>exit</userinput> ein, wenn der Bau abgeschlossen
-	  ist:</para>
-
-	<screen>&prompt.root; <userinput>script <replaceable>/var/tmp/mw.out</replaceable></userinput>
-Script started, output file is /var/tmp/mw.out</screen>
-      </note>
-
       <procedure>
-	<title>Zusammenfassung des Aktualisierungsprozesses</title>
+	<step xml:id="updating-src-quick-start-preparing">
+	  <title>Vorbereitungen</title>
 
-	<para>Die verwendeten Kommandos sollten in der hier
-	  angegebenen Reihenfolge ausgeführt werden.  Die Funktionen
-	  der einzelnen Kommandos werden in diesem Abschnitt
-	  beschrieben.</para>
+	  <para>Wenn der Rechner zum ersten mal aktualisiert wird,
+	    geben Sie folgendes Kommando ein:</para>
 
-	<step>
-	  <para>Wenn der Bauprozess bereits einmal auf diesem
-	    System durchgeführt wurde, existiert vielleicht noch eine
-	    Kopie davon in <filename>/usr/obj</filename>.  Um den
-	    neuen Bauprozess zu beschleunigen und Ärger aufgrund von
-	    Abhängigkeiten zu vermeiden, kann dieses Verzeichnis
-	    entfernt werden:</para>
+	  <screen>&prompt.root; <userinput>etcupdate extract</userinput></screen>
 
-	  <screen>&prompt.root; <userinput>chflags -R noschg /usr/obj/*</userinput>
-&prompt.root; <userinput>rm -rf /usr/obj</userinput></screen>
-	</step>
+	  <para>Dies erstellt einen Kontrollpunkt zum späteren
+	    Vergleich und Zusammenführen von
+	    Systemeinstellungen.</para>
 
-	<step>
-	  <para>Übersetzen Sie zuerst den neuen Compiler und
-	    ein paar damit zusammenhängende Werkzeuge.  Verwenden Sie
-	    dann den neuen Compiler, um den Rest des Basissystems zu
-	    erstellen.  Das Ergebnis wird in
-	    <filename>/usr/obj</filename> abgelegt.</para>
-
-	  <screen>&prompt.root; <userinput>cd /usr/src</userinput>
-&prompt.root; <userinput>make buildworld</userinput></screen>
+	  <para><emphasis>Dieses Kommando muss auf dem Rechner nur
+	      einmalig ausgeführt werden.</emphasis>
+	    &man.etcupdate.8; benötigt nach dem ersten
+	    <emphasis>extract</emphasis> keine weiteren
+	    Aktualisierungen.</para>
 	</step>
 
 	<step>
-	  <para>Benutzen Sie den neuen Compiler aus
-	    <filename>/usr/obj</filename>, um sich vor falschen
-	    Compiler-Kernel-Kombinationen abzusichern.  Dies ist
-	    notwendig, da sich einige Datenstrukturen geändert haben
-	    könnten und Programme wie &man.ps.1; und &man.top.1; nur
-	    mit einem Kernel zusammen arbeiten, der auch zu dem
-	    entsprechenden Quellcode passt.</para>
+	  <title>Aktualisierung und Bauprozess</title>
 
-	  <screen>&prompt.root; <userinput>make buildkernel</userinput></screen>
-	</step>
+	  <screen>&prompt.root; <userinput>svn update /usr/src</userinput>  <co xml:id="updating-src-qs-svnup"/>
+<emphasis>check <filename>/usr/src/UPDATING</filename></emphasis>  <co xml:id="updating-src-qs-review-updating"/>
+&prompt.root; <userinput>cd /usr/src</userinput>          <co xml:id="updating-src-qs-cd"/>
+&prompt.root; <userinput>make -j<replaceable>4</replaceable> buildworld</userinput>  <co xml:id="updating-src-qs-buildworld"/>
+&prompt.root; <userinput>make -j<replaceable>4</replaceable> kernel</userinput>      <co xml:id="updating-src-qs-kernel"/>
+&prompt.root; <userinput>shutdown -r now</userinput>      <co xml:id="updating-src-qs-reboot"/>
+&prompt.root; <userinput>cd /usr/src</userinput>          <co xml:id="updating-src-qs-cd2"/>
+&prompt.root; <userinput>make installworld</userinput>    <co xml:id="updating-src-qs-installworld"/>
+&prompt.root; <userinput>etcupdate</userinput>      <co xml:id="updating-src-qs-etcupdate"/>
+&prompt.root; <userinput>shutdown -r now</userinput>      <co xml:id="updating-src-qs-shutdown"/></screen>
 
-	<step>
-	  <para>Installieren Sie den neuen Kernel und die
-	    Kernelmodule, damit Sie den frisch aktualisierten Kernel
-	    starten können.  Wenn <varname>kern.securelevel</varname>
-	    einen Wert größer als <literal>1</literal> besitzt
-	    <emphasis>und</emphasis> der Kernel mit
-	    <literal>noschg</literal> oder ähnlichen Optionen
-	    geschützt ist, müssen Sie zuerst in den Single-User-Modus
-	    wechseln.  Andernfalls läuft dieses Kommando problemlos im
-	    Mehrbenutzermodus.  Weitere Informationen über
-	    <varname>kern.securelevel</varname> finden Sie in
-	    &man.init.8;.  Optionen, die auf Dateien gesetzt werden
-	    können, werden in &man.chflags.1; detailliert
-	    erläutert.</para>
+	  <calloutlist>
+	    <callout arearefs="updating-src-qs-svnup">
+	      <para>Holt die neueste Version der Quellen.
+		<xref linkend="updating-src-obtaining-src"/> enthält
+		weitere Informationen zum Aktualisieren und Bauen der
+		Quellen.</para>
+	    </callout>
 
-	  <screen>&prompt.root; <userinput>make installkernel</userinput></screen>
-	</step>
+	    <callout arearefs="updating-src-qs-review-updating">
+	      <para><filename>/usr/src/UPDATING</filename> enthält
+		Anweisungen für alle manuellen Schritte, die vor oder
+		nach dem Bau der Quellen erforderlich sind.</para>
+	    </callout>
 
-	<step>
-	  <para>Starten Sie das System in den Single-User-Modus, damit
-	    Probleme mit der Aktualisierung von Programmen, die
-	    bereits gestartet sind, minimiert werden.  Ebenso
-	    minimiert dieser Modus Probleme, die mit der Verwendung
-	    des alten Basissystems und des neuen Kernels zu tun
-	    haben.</para>
+	    <callout arearefs="updating-src-qs-cd">
+	      <para>Wechsel in das Bauverzeichnis.</para>
+	    </callout>
 
-	  <screen>&prompt.root; <userinput>shutdown now</userinput></screen>
+	    <callout arearefs="updating-src-qs-buildworld">
+	      <para>Bau des Basissystems, mit Ausnahme des
+		Kernels.</para>
+	    </callout>
 
-	  <para>Führen Sie folgende Befehle im Single-User-Modus aus,
-	    wenn das System mit einem
-	    <acronym>UFS</acronym>-Dateisystem formatiert ist:</para>
+	    <callout arearefs="updating-src-qs-kernel">
+	      <para>Bau und Installation des Kernels.  Dieser Schritt
+		ist gleichbedeutend mit
+		<buildtarget>buildkernel</buildtarget> und
+		<buildtarget>installkernel</buildtarget>.</para>
+	    </callout>
 
-	  <screen>&prompt.root; <userinput>mount -u /</userinput>
-&prompt.root; <userinput>mount -a -t ufs</userinput>
-&prompt.root; <userinput>swapon -a</userinput></screen>
+	    <callout arearefs="updating-src-qs-installworld">
+	      <para>Installation des Basissystems.</para>
+	    </callout>
 
-	  <para>Wenn das System mit <acronym>ZFS</acronym> formatiert
-	    ist, führen Sie stattdessen folgende Befehle aus.  In
-	    diesem Beispiel ist der Name des Pools
-	    <literal>zroot</literal>:</para>
+	    <callout arearefs="updating-src-qs-etcupdate">
+	      <para>Aktualisierung und Zusammenführung der
+		Konfigurationsdateien in
+		<filename>/etc</filename>.</para>
+	    </callout>
 
-	  <screen>&prompt.root; <userinput>zfs set readonly=off zroot</userinput>
-&prompt.root; <userinput>zfs mount -a</userinput></screen>
+	    <callout arearefs="updating-src-qs-shutdown">
+	      <para>Neustart des Systems mit dem neu erstellten
+		Basissystem und Kernel.</para>
+	    </callout>
+	  </calloutlist>
 	</step>
-
-	<step>
-	  <para>Optional: Wenn eine andere Tastaturbelegung als
-	    US-Englisch gewünscht wird, kann diese mit &man.kbdmap.1;
-	    angepasst werden:</para>
-
-	  <screen>&prompt.root; <userinput>kbdmap</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Führen Sie folgenden Befehl aus, wenn die
-	    <acronym>CMOS</acronym>-Uhr auf die lokale Zeit
-	    eingestellt ist (dies ist der Fall, wenn die Ausgabe von
-	    &man.date.1; nicht die richtige Zeit anzeigt):</para>
-
-	  <screen>&prompt.root; <userinput>adjkerntz -i</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Bei der Aktualisierung des Basissystems werden
-	    bestimmte Verzeichnisse, wie <filename>/etc</filename>,
-	    <filename>/var</filename> und <filename>/usr</filename>
-	    ausgelassen.  Im nächsten Schritt werden ein paar
-	    Konfigurationsdateien zur Vorbereitung für das neue
-	    Basissystem aktualisiert.  Der folgende Befehl
-	    aktualisiert lediglich Dateien, die für das Gelingen von
-	    <buildtarget>installworld</buildtarget> unerlässlich sind.
-	    Beispielsweise können neue Gruppen, Systembenutzerkonten,
-	    oder neue Startskripten erstellt werden, die seit der
-	    letzten Aktualisierung hinzugefügt wurden.  Dieser Schritt
-	    ist notwendig, damit
-	    <buildtarget>installworld</buildtarget> in der Lage ist,
-	    die neuen Konten, Gruppen und Skripten zu verwenden.
-	    Weitere Informationen zu diesem Befehl finden Sie in
-	    <xref linkend="mergemaster"/>:</para>
-
-	  <screen>&prompt.root; <userinput>mergemaster -p</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Installieren Sie das neue Basissystem und die
-	    Systemdateien aus <filename>/usr/obj</filename>:</para>
-
-	  <screen>&prompt.root; <userinput>cd /usr/src</userinput>
-&prompt.root; <userinput>make installworld</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Aktualisieren Sie die verbleibenden
-	    Konfigurationsdateien:</para>
-
-	  <screen>&prompt.root; <userinput>mergemaster -iF</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Löschen Sie veraltete Dateien.  Dieser Schritt
-	    ist wichtig, da alte Dateien manchmal Probleme bereiten,
-	    falls sie nicht entfernt werden:</para>
-
-	  <screen>&prompt.root; <userinput>make delete-old</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Nun wird ein Neustart benötigt, um den neuen Kernel
-	    und das neue Basissystem zu laden:</para>
-
-	  <screen>&prompt.root; <userinput>reboot</userinput></screen>
-	</step>
-
-	<step>
-	  <para>Stellen Sie sicher, dass alle Ports neu gebaut wurden,
-	    bevor die alten Bibliotheken entfernt werden.  Folgen
-	    Sie dazu den Anweisungen aus <xref
-	      linkend="ports-upgrading"/>.  Entfernen Sie anschließend
-	    alle veralteten Bibliotheken um Konflikte mit den neuen
-	    Bibliotheken zu vermeiden.  Weitere Informationen zu
-	    diesem Schritt finden Sie
-	    in <xref linkend="make-delete-old"/>.</para>
-
-	  <screen>&prompt.root; <userinput>make delete-old-libs</userinput></screen>
-	</step>
       </procedure>
-
-      <indexterm><primary>Single-User Modus</primary></indexterm>
-
-      <para>Wenn Sie eine Ausfallzeit des Systems in Kauf nehmen
-	können, sollten sie das System im Single-User Modus
-	bauen.  Die Neuinstallation des Systems verändert viele
-	wichtige Systemdateien, Systemwerkzeuge, Bibliotheken und
-	Include-Dateien.  Ändern Sie diese Dateien auf einem laufenden
-	System, insbesondere mit aktiven Nutzern, kann dies große
-	Probleme verursachen.</para>
     </sect2>
 
-    <sect2 xml:id="src-updating">
-      <title>Konfigurationsdateien</title>
+    <sect2 xml:id="updating-src-preparing">
+      <title>Vorbereitungen zum Aktualisieren aus den Quellen</title>
 
-      <indexterm>
-        <primary><filename>make.conf</filename></primary>
-      </indexterm>
+      <para>Wenn der Rechner zum ersten Mal aus den Quellen
+	aktualisiert wird, lassen Sie
+	<command>etcupdate extract</command> laufen, um einen
+	Kontrollpunkt zum späteren Vergleich zu erstellen.  Dieser
+	Schritt wird einmalig auf dem Rechner ausgeführt.</para>
 
-      <para>Der Bauprozess verwendet verschiedene
-	Konfigurationsdateien.</para>
-
-      <para>Das <filename>Makefile</filename> in
-	<filename>/usr/src</filename> legt fest, wie die Programme,
-	aus denen &os; besteht, zu bauen sind und in welcher
-	Reihenfolge diese zu bauen sind.</para>
-
-      <para>Die verfügbaren Optionen für <command>make</command>
-	werden in &man.make.conf.5; und
-	<filename>/usr/share/examples/etc/make.conf</filename>
-	beschrieben.  Jede Option in
-	<filename>/etc/make.conf</filename> beeinflusst das Verhalten
-	von <command>make</command> beim Bau von Programmen.  Die in
-	<filename>/etc/make.conf</filename> gesetzten Optionen wirken
-	sich bei jedem Aufruf von <command>make</command> aus,
-	einschließlich beim Bau von Programmen aus der Ports-Sammlung,
-	vom Benutzer geschriebene C-Programme oder beim Bau des
-	&os;-Betriebssystems.  Änderungen an einigen Einstellungen
-	können weitreichende und unerwartete Auswirkungen nach sich
-	ziehen.  Lesen Sie die Kommentare in diesen beiden Ressourcen
-	und beachten Sie, dass die Standardwerte aus einer Kombination
-	von Leistung und Sicherheit gewählt wurden.</para>
-
-      <indexterm>
-	<primary><filename>/etc/src.conf</filename></primary>
-      </indexterm>
-
-      <para>Der Bau des Betriebssystems aus dem Quellcode wird von
-	<filename>/etc/src.conf</filename> kontrolliert.  Im Gegensatz
-	zu <filename>/etc/make.conf</filename> greifen die Optionen in
-	<filename>/etc/src.conf</filename> nur dann, wenn das
-	&os; Betriebssystem selbst gebaut wird.  Die vielen Optionen
-	für diese Datei werden in &man.src.conf.5; beschrieben.
-	Seien Sie vorsichtig mit dem Entfernen von scheinbar nicht
-	mehr benötigten Kernelmodulen und Optionen.  Manchmal gibt es
-	unerwartete oder subtile Wechselwirkungen.</para>
+      <para>Lesen Sie <filename>/usr/src/UPDATING</filename>.  Jeder
+	manuelle Schritt, welcher vor oder nach der Aktualisierung
+	erforderlich ist, wird in dieser Datei beschrieben.</para>
     </sect2>
 
-    <sect2 xml:id="make-buildworld">
-      <title>Variablen und Ziele</title>
+    <sect2 xml:id="updating-src-obtaining-src">
+      <title>Den Quellcode aktualisieren</title>
 
-      <para>Ein typischer Aufruf von <command>make</command> sieht
-	wie folgt aus:</para>
+      <para>Der Quellcode von &os; befindet sich in
+	<filename>/usr/src/</filename>.  Die bevorzugte Methode zur
+	Aktualisierung dieser Quellen ist über das
+	Versionskontrollsystem <application>Subversion</application>.
+	Sie sollten sicherstellen, dass der Quellcode unter
+	Versionskontrolle steht:</para>
 
-      <screen>&prompt.root; <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput></screen>
+      <screen>&prompt.root; <userinput>svn info /usr/src</userinput>
+Path: /usr/src
+Working Copy Root Path: /usr/src
+...</screen>
 
-      <para>In diesem Beispiel ist
-	<option>-<replaceable>x</replaceable></option> eine Option,
-	die an <command>make</command> übergeben wird.  Eine Liste
-	gültiger Optionen finden Sie in &man.make.1;.</para>
+      <para>Dies ist ein Hinweis darauf, dass
+	<filename>/usr/src/</filename> unter Versionskontrolle steht
+	und mit &man.svn.1; aktualisiert werden kann.</para>
 
-      <para>Mit
-	<option>-D<replaceable>VARIABLE</replaceable></option>
-	setzen Sie eine Variable.  Das Verhalten der
-	<filename>Makefile</filename> wird von Variablen bestimmt.
-	Diese sind etweder in <filename>/etc/make.conf</filename>
-	eingetragen, oder können an <command>make</command> übergeben
-	werden.  Das folgende Beispiel setzt eine Variable, die
-	verhindert, dass die <quote>profiled</quote> Bibliotheken
-	gebaut werden:</para>
+      <screen xml:id="synching">&prompt.root; <userinput>svn update /usr/src</userinput></screen>
 
-      <screen>&prompt.root; <userinput>make -DNO_PROFILE <replaceable>target</replaceable></userinput></screen>
+      <para>Dieser Vorgang kann einige Zeit in Anspruch nehmen, falls
+	das Verzeichnis nicht zuletzt aktualisiert wurde.  Nach
+	Beendigung ist der Quellcode aktuell und der im nächsten
+	Abschnitt beschriebene Bauprozess kann beginnen.</para>
 
-      <para>Dieser Aufruf entspricht dem folgenden Eintrag in
-	<filename>/etc/make.conf</filename>:</para>
+      <note xml:id="updating-src-obtaining-src-checkout">
+	<title>Beschaffung des Quellcodes</title>
 
-      <programlisting>NO_PROFILE=    true     #    Avoid compiling profiled libraries</programlisting>
+	<para>Meldet die Ausgabe
+	  <literal>'/usr/src' is not a working copy</literal>, dann
+	  fehlen entweder Dateien, oder das Verzeichnis wurde mit
+	  einer anderen Methode aktualisiert.  Ein erneuter Checkout
+	  der Quellen ist jetzt erforderlich.</para>
 
-      <para>Das <quote>Ziel</quote> sagt <command>make</command>
-	was zu tun ist und das <filename>Makefile</filename>
-	definiert die verfügbaren Ziele.  Einige Ziele werden
-	verwendet, um den Bauprozess in eine Reihe von
-	Einzelschritten zu unterteilen.</para>
+	<table xml:id="updating-src-obtaining-src-repopath">
+	  <title>&os; Versionen und Repository-Pfade</title>
 
-      <para>Über separate Optionen zu verfügen, ist aus mehreren
-	Gründen nützlich.  Erstens erlaubt dies einen Bauprozess,
-	der die Komponenten des laufenden Systems nicht
-	beeinträchtigt.  Deswegen können Sie
-	<command>buildworld</command> gefahrlos im Mehrbenutzermodus
-	laufen lassen.  Die Installation mit
-	<buildtarget>installworld</buildtarget> sollte aber immer
-	noch im Single-User-Modus erfolgen.</para>
+	  <tgroup cols="3">
+	    <thead>
+	      <row>
+		<entry>Ausgabe von <command>uname -r</command></entry>
+		<entry>Repository-Pfad</entry>
+		<entry>Beschreibung</entry>
+	      </row>
+	    </thead>
 
-      <para>Zweitens kann, wie in <xref linkend="small-lan"/>
-	beschrieeben, <acronym>NFS</acronym> benutzt werden, um
-	mehrere Maschinen in einem Netzwerk zu aktualisieren.</para>
+	    <tbody>
+	      <row>
+		<entry><literal><replaceable>X.Y</replaceable>-RELEASE</literal></entry>
+		<entry><literal>base/releng/</literal><replaceable>X</replaceable></entry>
+		<entry>Die Release-Version inklusive kritischer
+		  Sicherheits- und Bugfix-Patches.  Dieser Zweig wird
+		  für die meisten Benutzer empfohlen.</entry>
+	      </row>
 
-      <para>Mit <option>-j</option> können Sie
-	<command>make</command> anweisen, mehrere Prozesse zu
-	starten.  Da der Übersetzungsprozess
-	hauptsächlich von <acronym>I/O</acronym> statt der
-	<acronym>CPU</acronym> bestimmt wird, ist diese Option für
-	Einprozessor- und Mehrprozessor-Systeme nützlich.</para>
+	      <row>
+		<entry><literal><replaceable>X.Y</replaceable>-STABLE</literal></entry>
+		<entry><literal>base/stable/</literal><replaceable>X</replaceable></entry>
+		<entry>
+		  <para>Die Release-Version und alle weitere Versionen
+		    auf diesem Zweig.
+		    <emphasis>STABLE</emphasis> bezieht sich darauf,
+		    dass die Binärschnittstelle
+		    (<acronym>ABI</acronym>) sich nicht ändert, sodass
+		    Anwendungen welche auf älteren Versionen erstellt
+		    wurden weiterhin lauffähig sind.  Eine Anwendung,
+		    welche für &os;&nbsp;10.1 übersetzt wurde, läuft
+		    auch auf &os;&nbsp;10-STABLE.</para>
 
-      <para>Auf einem typischen Einprozessor-System können Sie den
-	folgenden Befehl eingeben, um bis zu vier Prozesse
-	gleichzeitig laufen zu lassen.  Erfahrungsberichte aus den
-	Mailinglisten zeigen, dass dieser Aufruf typischerweise den
-	besten Geschwindigkeitsgewinn bringt:</para>
+		  <para>STABLE-Zweige haben gelegentlich Fehler und
+		    Inkompatibilitäten, welche den Benutzer
+		    beeinträchtigen könnten.  In der Regel werden
+		    diese Fehler aber zügig behoben.</para>
+		</entry>
+	      </row>
 
-      <screen>&prompt.root; <userinput>make -j4 buildworld</userinput></screen>
+	      <row>
+		<entry><literal><replaceable>X</replaceable>-CURRENT</literal></entry>
+		<entry><literal>base/head/</literal></entry>
+		<entry>Die neueste unveröffentlichte Version von
+		  &os;.  Der CURRENT-Zweig kann viele Fehler und
+		  Inkompatibilitäten enthalten und wird daher nur für
+		  fortgeschrittene Benutzer empfohlen.</entry>
+	      </row>
+	    </tbody>
+	  </tgroup>
+	</table>
 
-      <para>Wenn Sie ein Mehrprozessor-System besitzen, probieren
-	Sie Werte zwischen <literal>6</literal> und
-	<literal>10</literal> aus.</para>
+	<para>Ermitteln Sie mit &man.uname.1; die verwendete
+	  &os;-Version:</para>
 
-      <indexterm>
-	<primary>Bau des Basissystems</primary>
-	<secondary>Laufzeiten</secondary>
-      </indexterm>
+	<screen>&prompt.root; <userinput>uname -r</userinput>
+10.3-RELEASE</screen>
 
-      <note>
-	<para>Wenn mit <command>make buildworld</command> Variablen
-	  verwendet werden, müssen dieselben Variablen auch bei
-	  <command>make installworld</command> angegeben werden.
-	  Allerdings darf <option>-j</option> zusammen mit
-	  <buildtarget>installworld</buildtarget>
-	  <emphasis>nicht</emphasis> benutzt werden.</para>
+	<para>Basierend auf <xref
+	    linkend="updating-src-obtaining-src-repopath"/> ist
+	  <literal>base/releng/10</literal> der Repository-Pfad zur
+	  Aktualisierung von <literal>10.3-RELEASE</literal>.  Dieser
+	  Pfad wird beim Auschecken der Quellen benutzt:</para>
 
-	<para>Haben Sie zum Bauen die folgende Kommandozeile
-	  verwendet:</para>
+	<screen>&prompt.root; <userinput>mv /usr/src /usr/src.bak</userinput>  <co xml:id="updating-src-obtaining-src-mv"/>
+&prompt.root; <userinput>svn checkout https://svn.freebsd.org/base/<replaceable>releng/10.3</replaceable> /usr/src</userinput>  <co xml:id="updating-src-obtaining-src-checkout-cmd"/></screen>
 
-	<screen>&prompt.root; <userinput>make -DNO_PROFILE buildworld</userinput></screen>
+	<calloutlist>
+	  <callout arearefs="updating-src-obtaining-src-mv">
+	    <para>Verschiebt das alte Verzeichnis.  Wenn es keine
+	      lokalen Änderungen in diesem Verzeichnis gibt, kann es
+	      gelöscht werden.</para>
+	  </callout>
 
-	<para>dann installieren Sie das Ergebnis mit:</para>
-
-	<screen>&prompt.root; <userinput>make -DNO_PROFILE installworld</userinput></screen>
-
-	<para>Andernfalls würde das System bei der Installation
-	  versuchen, die <quote>profiled</quote> Bibliotheken, die
-	  aber gar nicht gebaut wurden, zu installieren.</para>
+	  <callout arearefs="updating-src-obtaining-src-checkout-cmd">
+	    <para>Der Pfad aus <xref
+		linkend="updating-src-obtaining-src-repopath"/> wird
+	      der Repository-URL hinzugefügt.  Der dritte Parameter
+	      ist das lokale Zielverzeichnis für den Quellcode.</para>
+	  </callout>
+	</calloutlist>
       </note>
     </sect2>
 
-    <sect2 xml:id="mergemaster">
-      <info>
-	<title>Abgleich der Konfigurationsdateien</title>
+    <sect2 xml:id="updating-src-building">
+      <title>Den Quellcode bauen</title>
 
-	<authorgroup>
-	  <author>
-	    <personname>
-	      <firstname>Tom</firstname>
-	      <surname>Rhodes</surname>
-	    </personname>
-	    <contrib>Beigetragen von </contrib>
-	  </author>
-	</authorgroup>
-      </info>
+      <para xml:id="makeworld">Die Welt, also das gesamte
+	Basissystem mit Ausnahme des Kernels, wird zuerst
+	übersetzt, um aktuelle Werkzeuge zum Erstellen des
+	Kernels bereitzustellen.  Anschließend wird der
+	Kernel gebaut:</para>
 
-      <indexterm><primary><command>mergemaster</command></primary></indexterm>
+      <screen>&prompt.root; <userinput>cd /usr/src</userinput>
+&prompt.root; <userinput>make buildworld</userinput>
+&prompt.root; <userinput>make buildkernel</userinput></screen>
 
-      <para>&os; enthält das &man.mergemaster.8; Bourne-Shell
-	Skript, welches dabei behilflich ist die Unterschiede zwischen
-	den Konfigurationsdateien in <filename>/etc</filename> und
-	denen unter <filename>/usr/src/etc</filename> zu finden.
-	Dies ist der empfohlene Weg, die Systemkonfiguration mit dem
-	Quellbaum abzugleichen.</para>
+      <para>Das Ergebnis wird in <filename>/usr/obj</filename>
+	abgelegt.</para>
 
-      <para>Es ist ratsam, zuerst das bestehende
-	<filename>/etc</filename> an einen sicheren Ort zu
-	kopieren.  Mit <option>-R</option> wird rekursiv kopiert und
-	<option>-p</option> erhält die Zugriffszeiten und Eigentümer
-	der Dateien:</para>
+      <para>Dies sind die grundlegenden Schritte.  Weitere Optionen
+	zur Kontrolle des Bauprozesses sind nachfolgend
+	beschrieben.</para>
 
-      <screen>&prompt.root; <userinput>cp -Rp /etc /etc.old</userinput></screen>
+      <sect3 xml:id="updating-src-building-clean-build">
+	<title>Umgebung für den Bauprozess säubern</title>
 
-      <para>Beim Aufruf wird <command>mergemaster</command>
-	ausgehend von <filename>/</filename> einen virtuellen
-	Root-Baum aufbauen und darin die neuen Konfigurationsdateien
-	ablegen.
-	Diese Dateien werden dann mit den auf dem System
-	installierten Dateien verglichen.  Unterschiede zwischen den
-	Dateien werden im &man.diff.1;-Format dargestellt.  Neue
-	oder geänderte Zeilen werden mit <option>+</option>
-	gekennzeichnet.  Zeilen die gelöscht oder ersetzt werden,
-	sind mit <option>-</option> gekennzeichnet.  Das
-	Anzeigeformat wird in &man.diff.1; genauer erklärt.</para>
+	<para>Einige Versionen von &os; hinterlassen bereits
+	  übersetzten Code im temporären Objektverzeichnis
+	  <filename>/usr/obj</filename>.  Dies kann nachfolgende
+	  Bauprozesse beschleunigen, da Code, der nicht verändert
+	  wurde, nicht neu übersetzt werden muss.  Um eine saubere
+	  Umgebung für den Bauprozess zu schaffen, entfernen Sie
+	  <filename>/usr/obj</filename> bevor Sie mit dem Bau
+	  beginnen.  Dies ist dasselbe wie
+	  <command>make clean</command>, nur sehr viel
+	  schneller:</para>
 
-      <para>Als nächstes zeigt <command>mergemaster</command> jede
-	geänderte Datei an und Sie haben die Wahl, die neue Datei
-	(auch temporäre Datei genannt) zu löschen, sie unverändert
-	zu installieren, den Inhalt der neuen Datei mit dem Inhalt
-	der alten Datei abzugleichen, oder die Ausgabe noch einmal
-	zu sehen.</para>
+	<screen>&prompt.root; <userinput>rm -rf /usr/obj/*</userinput></screen>
+      </sect3>
 
-      <para>Wenn Sie die temporäre Datei löschen, geht
-	<command>mergemaster</command> davon aus, dass Sie die
-	aktuelle Datei unverändert behalten möchten.  Die Auswahl
-	dieser Option wird nicht empfohlen.  Durch die Eingabe von
-	<keycap>?</keycap> können Sie jederzeit die Hilfe am Prompt
-	von <command>mergemaster</command> aufrufen.  Wenn Sie eine
-	Datei überspringen, wird <command>mergemaster</command>
-	diese am Ende erneut präsentieren.</para>
+      <sect3 xml:id="updating-src-building-jobs">
+	<title>Anzahl der Prozesse einstellen</title>
 
-      <para>Wenn Sie die temporäre Datei installieren, wird die
-	aktuelle Datei mit der neuen Datei überschrieben.  Sie
-	sollten alle unveränderten Konfigurationsdateien auf diese
-	Weise aktualisieren.</para>
+	<para>Eine höhere Anzahl an Prozessen kann die
+	  Geschwindigkeit auf Mehrprozessor-Systemen verbessern.
+	  Die Anzahl der Kerne lässt sich mit
+	  <command>sysctl hw.cpu</command> bestimmen.  Prozessoren
+	  variieren ebenso, wie die verschiedenen Build-Systeme von
+	  &os;.  Sie müssen daher mehrere Versuche starten um zu
+	  sehen, wie die Anzahl der Prozesse die Geschwindigkeit
+	  beeinflusst.  Als Ausgangspunkt können Sie die halbe bis
+	  doppelte Anzahl der Kerne als Wert probieren.  Die Anzahl
+	  der Prozesse wird mit <option>-j</option> angegeben.</para>
 
-      <para>Wenn Sie sich entschließen den Inhalt beider Dateien
-	abzugleichen, wird ein Texteditor aufgerufen, in dem Sie
-	beide Dateien nebeneinander betrachten können.  Mit der
-	Taste <keycap>l</keycap> übernehmen Sie die aktuelle Zeile
-	der links dargestellten Datei, mit der Taste
-	<keycap>r</keycap> übernehmen Sie die Zeile der rechts
-	dargestellten Datei.  Das Ergebnis ist eine Datei, die aus
-	Teilen der beiden ursprünglichen Dateien besteht und
-	installiert werden kann.  Dieses Verfahren wird gewöhnlich
-	bei veränderten Dateien genutzt.</para>
+	<example xml:id="updating-src-building-jobs-example">
+	  <title>Die Anzahl der Prozesse erhöhen</title>
 
-      <para>Haben Sie sich entschieden die Differenzen noch einmal
-	anzuzeigen, werden nochmals die Unterschiede in beiden
-	Dateien angezeigt.</para>
+	  <para>Das Basissystem und den Kernel mit vier Prozessen
+	    bauen:</para>
 
-      <para>Wenn <command>mergemaster</command> alle Systemdateien
-	abgearbeitet hat, werden weitere Optionen abgefragt.  Sie
-	werden unter Umständen gefragt, ob die Passwort-Datei neu
-	gebaut werden soll.  Am Ende haben Sie die Möglichkeit, die
-	restlichen temporären Dateien zu löschen.</para>
+	  <screen>&prompt.root; <userinput>make -j4 buildworld buildkernel</userinput></screen>
+	</example>
+      </sect3>
 
-	<!--
-	<para>Wenn Sie den Abgleich lieber selbst ausführen wollen,
-	  beachten Sie bitte, dass Sie nicht einfach die Dateien aus
-	  <filename>/usr/src/etc</filename> nach <filename>/etc</filename>
-	  kopieren können.  Einige dieser Dateien müssen zuerst
-	  <emphasis>installiert</emphasis> werden, bevor sie benutzt werden
-	  können.  Das liegt daran, dass
-	  <filename>/usr/src/etc</filename> keine exakte Kopie von
-	  <filename>/etc</filename> ist.  Zudem gibt es Dateien, die sich
-	  in <filename>/etc</filename> befinden aber nicht in
-	  <filename>/usr/src/etc</filename>.</para>
+      <sect3 xml:id="updating-src-building-only-kernel">
+	<title>Nur den Kernel erstellen</title>
 
-	<para>Am einfachsten ist es, wenn Sie die neuen Dateien in ein
-	  temporäres Verzeichnis installieren und sie nacheinander auf
-	  Differenzen zu den bestehenden Dateien durchsehen.</para>
+	<para>Wenn sich der Quellcode verändert hat, muss ein
+	  <buildtarget>buildworld</buildtarget> ausgeführt
+	  werden.  Danach kann der Kernel mit
+	  <buildtarget>buildkernel</buildtarget> übersetzt
+	  werden.  Um lediglich den Kernel zu übersetzen:</para>
 
-	<warning>
-	  <title>Sichern Sie die Inhalte von <filename>/etc</filename></title>
+	<screen>&prompt.root; <userinput>cd /usr/src</userinput>
+&prompt.root; <userinput>make buildkernel</userinput></screen>
+      </sect3>
 
-	  <para>Es wird empfohlen, zuerst das bestehende
-	    <filename>/etc</filename> an einen sicheren Ort zu
-	    kopieren:</para>
+      <sect3 xml:id="updating-src-building-custom-kernel">
+	<title>Einen angepassten Kernel erstellen</title>
 
-	    <screen>&prompt.root; <userinput>cp -Rp /etc /etc.old</userinput></screen>
+	<para>Der &os; Standard-Kernel basiert auf einer
+	  <emphasis>Konfigurationsdatei</emphasis> namens
+	  <filename>GENERIC</filename>.  Der
+	  <filename>GENERIC</filename>-Kernel enthält die
+	  gängigsten Gerätetreiber und Optionen.  Manchmal ist es
+	  aber sinnvoll oder gar notwendig, einen angepassten
+	  Kernel zu erstellen, um Gerätetreiber oder Optionen

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.