diff --git a/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile b/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile
new file mode 100644
index 0000000000..0a0e6e03dc
--- /dev/null
+++ b/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile
@@ -0,0 +1,15 @@
+#
+# Build the Handbook with just the content from this chapter.
+#
+# $FreeBSD$
+#
+
+CHAPTERS= 	dtrace/chapter.sgml
+
+VPATH=		..
+
+MASTERDOC=	${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
+
+DOC_PREFIX?= 	${.CURDIR}/../../../..
+
+.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/dtrace/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/dtrace/chapter.sgml
new file mode 100644
index 0000000000..99beb23c6d
--- /dev/null
+++ b/nl_NL.ISO8859-1/books/handbook/dtrace/chapter.sgml
@@ -0,0 +1,410 @@
+<!--
+Recently I suggested to myself that this should become a profiling
+and debugging chapter, which covers things like ktrace(1) and
+using other debugging (like -x in shell scripts).  But then I
+realized that, over time and while DTrace becomes better supported,
+that might make this chapter too large.
+-->
+
+<!--
+     The FreeBSD Dutch Documentation Project
+     $FreeBSD$
+
+     %SOURCE%	en_US.ISO8859-1/books/handbook/dtrace/chapter.sgml
+     %SRCID%	1.5
+-->
+
+<chapter id="dtrace">
+  <chapterinfo>
+    <authorgroup>
+      <author>
+	<firstname>Tom</firstname>
+	<surname>Rhodes</surname>
+	<contrib>Geschreven door </contrib>
+      </author>
+    </authorgroup>
+    <authorgroup>
+      <author>
+	<firstname>Ren&eacute;</firstname>
+	<surname>Ladan</surname>
+	<contrib>Vertaald door </contrib>
+      </author>
+    </authorgroup>
+  </chapterinfo>
+
+  <title>DTrace</title>
+
+  <sect1 id="dtrace-synopsis">
+    <title>Overzicht</title>
+
+    <indexterm><primary>DTrace</primary></indexterm>
+
+    <indexterm>
+      <primary>DTrace-ondersteuning</primary>
+
+      <see>DTrace</see>
+    </indexterm>
+
+    <para>DTrace, ook bekend als Dynamic Tracing, was ontwikkeld door
+      &sun; als een gereedschap om prestatie-bottlenecks in productie-
+      en preproductiesystemen op te sporen. Het is in geen enkel opzicht
+      een debug-gereedschap, maar een gereedschap voor real-time analyse
+      om prestatie- en andere zaken op te sporen.</para>
+
+    <para>DTrace is een opmerkelijk profileringsgereedschap, met een
+      indrukwekkende verzameling mogelijkheden om systeemzaken te
+      diagnosticeren.  Het kan ook worden gebruikt om vooraf geschreven
+      scripts te draaien om zo voordeel te halen uit de mogelijkheden.
+      Gebruikers kunnen zelfs hun eigen middelen schrijven door gebruik
+      te maken van de DTrace D Language, wat ze in staat stelt om hun
+      profilering aan te passen aan hun specifieke behoeften.</para>
+
+    <para>Na het lezen van dit hoofdstuk weet u:</para>
+
+    <itemizedlist>
+      <listitem>
+	<para>Wat DTrace is en welke mogelijkheden het biedt.</para>
+      </listitem>
+
+      <listitem>
+	<para>De verschillen tussen de DTrace-implementatie van
+	  &solaris; en degene die door &os; wordt aangeboden.</para>
+      </listitem>
+
+      <listitem>
+	<para>Hoe DTrace op &os; aan te zetten en te gebruiken.</para>
+      </listitem>
+    </itemizedlist>
+
+    <para>Voordat u dit hoofdstuk leest, dient u:</para>
+
+    <itemizedlist>
+      <listitem>
+	<para>De beginselen van &unix; en &os; te begrijpen
+	  (<xref linkend="basics">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Bekend te zijn met de beginselen van kernelconfiguratie en
+	  -compilatie (<xref linkend="kernelconfig">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Wat bekendheid te hebben met beveiliging en hoe het zich
+	  verhoudt tot &os; (<xref linkend="security">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Te begrijpen hoe de broncode van &os; te verkrijgen en te
+	  herbouwen (<xref linkend="cutting-edge">).</para>
+      </listitem>
+    </itemizedlist>
+
+    <!--
+      Temporary warning to avoid listing experimental versions
+      and production versions of FreeBSD with this technology.
+    -->
+    <warning>
+      <para>Deze mogelijkheid wordt als experimenteel beschouwd.  Van
+	sommige opties kan er functionaliteit ontbreken, andere delen
+	kunnen in het geheel niet werken.  In de loop der tijd zal deze
+	mogelijkheid als productierijp worden beschouwd en zal deze
+	documentatie worden aangepast om die situatie te
+	representeren.</para>
+    </warning>
+  </sect1>
+
+  <sect1 id="dtrace-implementation">
+    <title>Implementatieverschillen</title>
+
+    <para>Hoewel DTrace in &os; erg lijkt op degene die in &solaris;
+      zit, zijn er verschillen die uitgelegd moeten worden voordat er
+      verder wordt gegaan.  Het primaire verschil dat gebruikers zullen
+      zien is dat DTrace specifiek moet worden aangezet op &os;.  Er
+      zijn kernelopties en modulen die aangezet moeten worden om DTrace
+      juist te laten werken.  Deze zullen later worden uitgelegd.</para>
+
+    <para>Er is een kerneloptie <literal>DDB_CTF</literal> die gebruikt
+      wordt om ondersteuning voor het laden van
+      <acronym>CTF</acronym>-gegevens van kernelmodulen en de kernel
+      zelf.  <acronym>CTF</acronym> is het Compact C Type Format van
+      &solaris; welke een beperkte vorm van debuginformatie bevat
+      die vergelijkbaar is met <acronym>DWARF</acronym> en de befaamde
+      stabs.  Deze <acronym>CTF</acronym>-gegevens worden door de
+      bouwmiddelen <command>ctfconvert</command> en
+      <command>ctfmerge</command> aan de binairen toegevoegd.  Het
+      hulpmiddel <command>ctfconvert</command> parst
+      <acronym>DWARF</acronym>-debug <acronym>ELF</acronym>-secties die
+      door de compiler zijn aangemaakt en <command>ctfmerge</command>
+      voegt <acronym>CTF</acronym> <acronym>ELF</acronym>-secties van
+      objecten samen in hun executables of gedeelde bibliotheken.  Meer
+      informatie over hoe dit voor de bouw van de kernel en &os; aan te
+      zetten komt eraan.</para>
+
+    <para>Sommige aanbieders voor &os; verschillen van die voor
+       &solaris;.  De meest opmerkelijke is de aanbieder
+       <literal>dtmalloc</literal>, welke het volgen van
+       <function>malloc()</function> op soort in de &os;-kernel
+       toestaat.</para>
+
+    <para>Alleen <username>root</username> mag DTrace op &os; gebruiken.
+      Dit heeft te maken met beveiligingsverschillen, &solaris; heeft
+      enkele beveiligingscontroles op laag niveau die nog niet bestaan
+      in &os;.  Hierom is <devicename>/dev/dtrace/dtrace</devicename>
+      strikt beperkt tot <username>root</username>.</para>
+
+    <para>Tenslotte valt de DTrace-software onder de
+      <acronym>CDDL</acronym>-licentie van &sun;.  De <literal>Common
+      Development and Distribution License</literal> wordt bij &os;
+      geleverd, zie
+      <filename>/usr/src/cddl/contrib/opensolaris/OPENSOLARIS.LICENSE</filename>
+      of bekijk het online op
+      <ulink url="http://www.opensolaris.org/os/licensing"></ulink>.</para>
+
+    <para>Deze licentie houdt in dat een &os;-kernel met de
+      DTrace-opties nog steeds onder de <acronym>BSD</acronym>-licentie
+      valt; de <acronym>CDDL</acronym> komt echter op de proppen wanneer
+      de modulen in binaire vorm worden verspreid, of wanneer de
+      binairen zijn geladen.</para>
+  </sect1>
+
+  <sect1 id="dtrace-enable">
+    <title>Ondersteuning voor DTrace aanzetten</title>
+
+    <para>Voeg de volgende regels toe aan het kernelinstellingenbestand
+      om ondersteuning voor DTrace aan te zetten:</para>
+
+    <programlisting>options         KDTRACE_HOOKS
+options         DDB_CTF</programlisting>
+
+    <note>
+      <para>Gebruikers van de AMD64-architectuur zullen de volgende
+	regel aan hun kernelinstellingenbestand willen toevoegen:</para>
+
+      <programlisting>options         KDTRACE_FRAME</programlisting>
+
+      <para>Deze optie biedt ondersteuning voor de mogelijkheid
+	<acronym>FBT</acronym>.  DTrace zal zonder deze optie werken;
+	er zal echter beperkte ondersteuning zijn voor het volgen van
+	functiegrenzen.</para>
+   </note>
+
+    <para>Alle broncode moet herbouwd en geherinstalleerd worden met de
+      <acronym>CTF</acronym>-opties.  Om deze taak te volbrengen, wordt
+      de &os;-broncode herbouwd met:</para>
+
+    <!-- XXXTR: WITH_CTF has been reported to leave a use with a
+	 broken system when used with buildworld.  Until this is
+	 fixed, comment out those parts.  When uncommenting, kill
+	 the extra screen.
+    -->
+
+    <screen>&prompt.root; <userinput>cd /usr/src</userinput>
+<!-- &prompt.root; <userinput>make WITH_CTF=1 buildworld</userinput> -->
+&prompt.root; <userinput>make WITH_CTF=1 kernel</userinput></screen>
+<!-- &prompt.root; <userinput>make WITH_CTF=1 installworld</userinput>
+&prompt.root; <userinput>mergemaster -Ui</userinput></screen> -->
+
+    <para>Het systeem moet opnieuw gestart worden.</para>
+
+    <para>Nadat opnieuw is opgestart en de nieuwe kernel in het geheugen
+      is geladen, dient ondersteuning voor de Korn-shell te worden
+      toegevoegd.  Dit is nodig omdat de verschillende hulpmiddelen van
+      DTrace in <command>ksh</command> zijn geschreven.  Installeer
+      <filename role="package">shells/ksh93</filename>.  Het is ook
+      mogelijk om deze hulpmiddelen in <filename
+	role="package">shells/pdksh</filename> of <filename
+	role="package">shells/mksh</filename> te draaien.</para>
+
+    <para>Als laatste dient de huidige DTrace-gereedschapskist verkregen
+      te worden.  De huidige versie is beschikbaar op
+      <ulink url="http://www.opensolaris.org/os/community/dtrace/dtracetoolkit/"></ulink>.
+      Het bevat een installatiemechanisme; om gebruik te maken van de
+      bijgeleverde hulpmiddelen is installatie echter niet nodig.</para>
+  </sect1>
+
+  <sect1 id="dtrace-using">
+    <title>DTrace gebruiken</title>
+
+    <para>Voordat er gebruik wordt gemaakt van de functionaliteit van
+      DTrace, moet het DTrace-apparaat bestaan.  Geef het volgende
+      commando om het apparaat te laten:</para>
+
+    <screen>&prompt.root; <userinput>kldload dtraceall</userinput></screen>
+
+    <para>Ondersteuning van DTrace zou nu beschikbaar moeten zijn.  De
+      beheerder kan het volgende commando uitvoeren om alle sondes te
+      bekijken:</para>
+
+    <screen>&prompt.root; <userinput>dtrace -l | more</userinput></screen>
+
+    <para>Alle uitvoer wordt aan het hulpmiddel <command>more</command>
+      doorgegeven omdat het snel de schermbuffer zal laten overstromen.
+      DTrace kan nu als werkend worden beschouwd.  Het is nu tijd om de
+      gereedschapskist te bekijken.</para>
+
+    <para>De gereedschapskist is een verzameling van kant-en-klare
+      scripts die met DTrace gedraaid kunnen worden om informatie over
+      het systeem te verzamelen.  Er zijn scripts om open bestanden,
+      geheugen, <acronym>CPU</acronym>-gebruik, en nog veel meer te
+      controleren.  Pak de scripts uit met het volgende commando:</para>
+
+    <screen>&prompt.root; <userinput>gunzip -c DTraceToolkit* | tar xvf -</userinput></screen>
+
+    <para>Ga naar die map met <command>cd</command> en zet de
+      uitvoerpermissies voor alle bestanden waarvan de naam uit kleine
+      letters bestaat, op <literal>755</literal>.</para>
+
+    <para>De inhoud van al deze scripts moet veranderd worden.  Degenen
+      die naar <filename>/usr/bin/ksh</filename> verwijzen dienen naar
+      <filename>/usr/local/bin/ksh</filename> te verwijzen, de anderen
+      die <filename>/usr/bin/sh</filename> gebruiken dienen gewijzigd te
+      worden om <filename>/bin/sh</filename> te gebruiken, en tenslotte
+      dienen degenen die <filename>/usr/bin/perl</filename> gebruiken
+      veranderd te worden om <filename>/usr/local/bin/perl</filename> te
+      gebruiken.</para>
+
+    <important>
+      <para>Op dit moment is het voorzichtig om de lezer eraan te
+	herinneren dat de ondersteuning voor DTrace in &os;
+	<emphasis>niet compleet</emphasis> en
+	<emphasis>experimenteel</emphasis> is.  Veel van deze scripts
+	zullen niet werken omdat ze of te &solaris;-specifiek zijn of
+	omdat ze sondes gebruiken die momenteel niet ondersteund
+	worden.</para>
+    </important>
+
+    <para>Op het moment van schrijven worden slechts twee scripts van de
+      DTrace Toolkit volledig ondersteund in &os;: de scripts
+      <filename>hotkernel</filename> en
+      <filename>procsystime</filename>.  Dit zijn de twee die we in de
+      volgende gedeelten van deze sectie zullen bekijken.</para>
+
+    <para>De <filename>hotkernel</filename> is ontworpen om te
+      identificeren welke functie de meeste kerneltijd gebruikt.  Als
+      het normaal gedraaid wordt, zal het uitvoer die op de volgende
+      lijkt produceren:</para>
+
+    <screen>&prompt.root; <userinput>./hotkernel</userinput>
+Sampling... Hit Ctrl-C to end.</screen>
+
+    <para>De systeembeheerder moet de toetsencombinatie <keycombo
+	action="simul"><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>
+      gebruiken om het proces te stoppen.  Nadat het gestopt is, zal het
+      script een lijst van kernelfuncties en timinginformatie weergeven,
+      waarbij de uitvoer in volgorde van toenemende tijd is
+      gesorteerd:</para>
+
+    <screen>kernel`_thread_lock_flags                                   2   0.0%
+0xc1097063                                                  2   0.0%
+kernel`sched_userret                                        2   0.0%
+kernel`kern_select                                          2   0.0%
+kernel`generic_copyin                                       3   0.0%
+kernel`_mtx_assert                                          3   0.0%
+kernel`vm_fault                                             3   0.0%
+kernel`sopoll_generic                                       3   0.0%
+kernel`fixup_filename                                       4   0.0%
+kernel`_isitmyx                                             4   0.0%
+kernel`find_instance                                        4   0.0%
+kernel`_mtx_unlock_flags                                    5   0.0%
+kernel`syscall                                              5   0.0%
+kernel`DELAY                                                5   0.0%
+0xc108a253                                                  6   0.0%
+kernel`witness_lock                                         7   0.0%
+kernel`read_aux_data_no_wait                                7   0.0%
+kernel`Xint0x80_syscall                                     7   0.0%
+kernel`witness_checkorder                                   7   0.0%
+kernel`sse2_pagezero                                        8   0.0%
+kernel`strncmp                                              9   0.0%
+kernel`spinlock_exit                                       10   0.0%
+kernel`_mtx_lock_flags                                     11   0.0%
+kernel`witness_unlock                                      15   0.0%
+kernel`sched_idletd                                       137   0.3%
+0xc10981a5                                              42139  99.3%</screen>
+
+    <!-- XXXTR: I attempted to use objdump and nm on /boot/kernel/kernel
+        to find 0xc10981a5, but to no avail.  It would be nice to know
+	how we should look that up. -->
+
+    <para>Het script werkt ook met kernelmodules.  Draai het script met
+      de vlag <option>-m</option> om deze mogelijkheid te
+      gebruiken:</para>
+
+    <screen>&prompt.root; <userinput>./hotkernel -m</userinput>
+Sampling... Hit Ctrl-C to end.
+^C
+MODULE                                                  COUNT   PCNT
+0xc107882e                                                  1   0.0%
+0xc10e6aa4                                                  1   0.0%
+0xc1076983                                                  1   0.0%
+0xc109708a                                                  1   0.0%
+0xc1075a5d                                                  1   0.0%
+0xc1077325                                                  1   0.0%
+0xc108a245                                                  1   0.0%
+0xc107730d                                                  1   0.0%
+0xc1097063                                                  2   0.0%
+0xc108a253                                                 73   0.0%
+kernel                                                    874   0.4%
+0xc10981a5                                             213781  99.6%</screen>
+
+    <!-- XXXTR: I was unable to match these up with output from
+        kldstat and kldstat -v and grep.  Maybe I'm missing something
+	seriously obvious.  It is 5AM btw. -->
+
+    <para>Het script <filename>procsystime</filename> vangt en beeldt
+      het tijdsgebruik van systeemaanroepen af voor een gegeven
+      <acronym>PID</acronym> of procesnaam.  In het volgende voorbeeld
+      wordt er een nieuwe instantie van <filename>/bin/csh</filename>
+      gedraaid.  Het <filename>procsystime</filename> werd uitgevoerd en
+      bleef wachten terwijl er enkele commando's op de andere instantie
+      van <command>csh</command> werden getypt.  Dit zijn de resultaten
+      van deze test:</para>
+
+    <screen>&prompt.root; <userinput>./procsystime -n csh</userinput>
+Tracing... Hit Ctrl-C to end...
+^C
+
+Elapsed Times for processes csh,
+
+         SYSCALL          TIME (ns)
+          getpid               6131
+       sigreturn               8121
+           close              19127
+           fcntl              19959
+             dup              26955
+         setpgid              28070
+            stat              31899
+       setitimer              40938
+           wait4              62717
+       sigaction              67372
+     sigprocmask             119091
+    gettimeofday             183710
+           write             263242
+          execve             492547
+           ioctl             770073
+           vfork            3258923
+      sigsuspend            6985124
+            read         3988049784</screen>
+
+    <para>Zoals te zien is, lijkt de systeemaanroep
+      <function>read()</function> de meeste tijd in nanoseconden te
+      gebruiken en gebruikte de systeemaanroep
+      <function>getpid()</function> de minste hoeveelheid tijd.</para>
+  </sect1>
+
+  <sect1 id="dtrace-language">
+    <title>De taal D</title>
+
+    <para>De DTrace-gereedschapskist bevat vele scripts in de speciale
+      taal van DTrace. Deze taal wordt <quote>de taal D</quote> genoemd
+      door de documentatie van &sun;, en lijkt sterk op C++.  Een
+      diepgaande discussie over de taal valt buiten het bereik van dit
+      document.  Het wordt uitgebreid behandeld op
+      <ulink url="http://wikis.sun.com/display/DTrace/Documentation"></ulink>.</para>
+  </sect1>
+</chapter>
+
+    <!-- XXXTR: Should probably put links and resources here.  I'm
+        nervous about this chapter as it may require a partial
+	re-write and large modification once DTrace is complete, but
+	at least we can get everyone started ... -->
diff --git a/nl_NL.ISO8859-1/books/handbook/updating/Makefile b/nl_NL.ISO8859-1/books/handbook/updating/Makefile
new file mode 100644
index 0000000000..42d0c10e65
--- /dev/null
+++ b/nl_NL.ISO8859-1/books/handbook/updating/Makefile
@@ -0,0 +1,15 @@
+#
+# Build the Handbook with just the content from this chapter.
+#
+# $FreeBSD$
+#
+
+CHAPTERS= 	updating/chapter.sgml
+
+VPATH=		..
+
+MASTERDOC=	${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
+
+DOC_PREFIX?= 	${.CURDIR}/../../../..
+
+.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/updating/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/updating/chapter.sgml
new file mode 100644
index 0000000000..e3e1511108
--- /dev/null
+++ b/nl_NL.ISO8859-1/books/handbook/updating/chapter.sgml
@@ -0,0 +1,566 @@
+<!--
+     The FreeBSD Documentation Project
+     $FreeBSD$
+
+     %SOURCE%	en_US.ISO8859-1/books/handbook/updating/chapter.sgml
+     %SRCID%	1.1
+-->
+
+<chapter id="updating">
+  <chapterinfo>
+    <authorgroup>
+      <author>
+	<firstname>Tom</firstname>
+	<surname>Rhodes</surname>
+	<contrib>Geschreven door </contrib>
+      </author>
+    </authorgroup>
+    <authorgroup>
+      <author>
+	<firstname>Colin</firstname>
+	<surname>Percival</surname>
+	<contrib>Gebaseerd op notities geleverd door </contrib>
+      </author>
+    </authorgroup>
+    <authorgroup>
+      <author>
+	<firstname>Ren&eacute;</firstname>
+	<surname>Ladan</surname>
+	<contrib>Vertaald door </contrib>
+      </author>
+    </authorgroup>
+  </chapterinfo>
+
+  <title>&os; bijwerken</title>
+
+  <sect1 id="updating-synopsis">
+    <title>Overzicht</title>
+
+    <indexterm><primary>FreeBSD bijwerken</primary></indexterm>
+
+    <indexterm>
+      <primary>freebsd-update</primary>
+      <see>Bijwerken</see>
+    </indexterm>
+
+    <para>Door de tijd heen is een primair aspect van het
+      besturingssysteem &os; hetzelfde gebleven.  Dit is de eis om
+      applicaties en gereedschappen te gebruiken om grote en kleine
+      systeemupdate te verkrijgen.</para>
+
+    <para>Voor vele jaren waren gebruikers die hun systeem wilden
+      upgraden, beveiligingspatches wilden verzamelen, en updates voor
+      ports en pakketten wilden verkrijgen zonder de Portscollectie
+      kapot te maken verplicht om het gereedschap
+      <application>CVSup</application> te gebruiken.</para>
+
+    <para>Hoewel het gebruik van <application>CVSup</application> nog
+      steeds wordt ondersteund, en er een ware versie geprogrammeerd in
+      de taal C aan &os; is toegevoegd, zijn er nieuwe methoden om
+      systeemupdates te verkrijgen.</para>
+
+    <para>Gereedschappen zoals &man.portsnap.8; en
+      &man.freebsd-update.8; hebben het upgradeproces gestroomlijnd.
+      Deze nieuwe methoden verhogen de productiviteit terwijl ze een
+      eenvoudigere interface voor gebruikers bieden.  Sommige nieuwe
+      gereedschappen kunnen vanuit &man.cron.8; worden gedraaid waardoor
+      de handmatige tussenkomst van de systeembeheerder wordt
+      verminderd; een voordeel voor degenen die honderden &os;-machines
+      in de gaten houden.</para>
+
+    <para>Dit hoofdstuk zal deze nieuwe methoden uitleggen, en vertellen
+      hoe gebruikers alsmede systeembeheerders voordeel kunnen halen uit
+      hun praktische en eenvoudige gebruik.<para>
+
+    <para>Na het lezen van dit hoofdstuk weet u:</para>
+
+    <itemizedlist>
+      <listitem>
+	<para>Welke gereedschappen gebruikt kunnen worden om het systeem
+	  en de Portscollectie te updaten.</para>
+      </listitem>
+
+      <listitem>
+	<para>Hoe <command>freebsd-update</command> te gebruiken om
+	  beveiligingspatches toe te passen en grote en kleine upgrades
+	  van &os; uit te voeren.</para>
+      </listitem>
+
+      <listitem>
+	<para>Hoe de toestand van een ge&iuml;nstalleerd systeem met een
+	  bekende maagdelijke kopie te vergelijken.</para>
+      </listitem>
+    </itemizedlist>
+
+    <para>Voor het lezen van dit hoofdstuk dient u:</para>
+
+    <itemizedlist>
+      <listitem>
+	<para>De beginselen van &unix; en &os; te begrijpen
+	  (<xref linkend="basics">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Bekend te zijn met de beginselen van het instellen en
+	  compileren van de kernel (<xref linkend="kernelconfig">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Enigszins bekend te zijn met de Portscollectie en het
+	  installeren van applicaties van derde partijen op &os;
+	  (<xref linkend="ports">).</para>
+      </listitem>
+
+      <listitem>
+	<para>Bekend te zijn met de verschillende broncomponenten
+	   waaruit &os; bestaat en hoe het gereedschap
+	   &man.mergemaster.8; te gebruiken
+	  (<xref linkend="cutting-edge">).</para>
+      </listitem>
+    </itemizedlist>
+  </sect1>
+
+  <sect1 id="updating-freebsdupdate">
+    <title>FreeBSD Update</title>
+
+    <para>Het toepassen van beveiligingspatches is een belangrijk
+      onderdeel van het beheren van computersoftware, met name het
+      besturingssysteem.  Dit was voor een lange tijd geen gemakkelijk
+      proces op &os;.  Er moesten patches op de broncode worden
+      toegepast,  de code moest herbouwd worden tot binairen, en daarna
+      moesten de binairen worden geherinstalleerd.</para>
+
+    <para>Dit is niet langer het geval aangezien &os; nu een gereedschap
+      heeft dat eenvoudigweg <command>freebsd-update</command> heet.
+      Dit gereedschap biedt twee gescheiden functies.  Ten eerste
+      voorziet het in het toepassen van binaire beveiligings- en
+      errata-updates op het basissysteem van &os; zonder de eis om te
+      bouwen en te installeren.  Ten tweede ondersteunt het gereedschap
+      kleine en grote uitgave-upgrades.</para>
+
+    <note>
+      <para>Binaire updates zijn beschikbaar voor alle architecturen en
+	uitgaven die momenteel door het beveiligingsteam worden
+	ondersteund; voor sommige eigenschappen, zoals de upgrades van
+	het besturingssysteem &os;, zijn de laatste uitgave van
+	&man.freebsd-update.8; en &os;&nbsp;6.3 nodig.  Voordat naar
+	een nieuwe uitgave wordt ge-updated, dienen de huidige
+	uitgaveaankondigingen gelezen te worden aangezien ze belangrijke
+	informatie over de gewenste uitgave kunnen bevatten.  De
+	aankondigingen kunnen op de volgende koppeling bekeken worden:
+	<ulink url="http://www.FreeBSD.org/releases/"></ulink>.</para>
+    </note>
+
+    <para>Als er een <command>crontab</command> bestaat die de
+      mogelijkheden van <command>freebsd-update</command> gebruikt, moet
+      het uitgeschakeld worden voordat aan de volgende operatie wordt
+      begonnen.  De nieuwste versie van
+      <command>freebsd-update</command> kan ge&iuml;nstalleerd worden
+      door het ge<command>tar</command>de en ge<command>gzip</command>te
+      pakket van de bovenstaande <acronym>URL</acronym> te downloaden en
+      het te installeren met de volgende commando's:</para>
+
+    <screen>&prompt.root; <userinput>gunzip -c freebsd-update-upgrade.tgz | tar xvf -</userinput>
+&prompt.root; <userinput>mv freebsd-update.sh /usr/sbin/freebsd-update</userinput>
+&prompt.root; <userinput>mv freebsd-update.conf /etc</userinput></screen>
+
+    <para>Het downloaden is niet nodig voor alle huidige
+       uitgaven.</para>
+
+    <sect2>
+      <title>Het configuratiebestand</title>
+
+      <para>Sommige gebruikers willen het configuratiebestand tweaken,
+	waardoor het proces beter gecontroleerd kan worden.  De opties
+	zijn goed gedocumenteerd, maar voor de volgenden is wat extra
+	uitleg nodig:</para>
+
+      <programlisting># Componenten van het basissysteem die bijgewerkt moeten blijven
+Components src world kernel</programlisting>
+
+      <para>Deze parameter bepaalt welke delen van &os; bijgewerkt
+	blijven.  Standaard wordt de broncode bijgewerkt, het hele
+	basissysteem, en de kernel.  Dezelfde componenten als tijdens de
+	installatie zijn beschikbaar, het toevoegen van bijvoorbeeld
+	"world/games" zou de spelpatches toepassen.  Het gebruik van
+	"src/bin" zou de broncode in <filename
+	  class="directory">src/bin</filename> bijgewerkt houden.</para>
+
+      <para>Het beste kan dit op de standaardwaarde blijven aangezien
+	het veranderen hiervan om specifieke items te bevatten de
+	gebruiker dwingt om alle items die bijgewerkt dienen te worden
+	op te noemen.  Dit kan rampzalige gevolgen hebben aangezien de
+	broncode en de binairen asynchroon kunnen raken.</para>
+
+      <programlisting># Paden die beginnen met iets wat overeenkomt met een regel in een IgnorePaths
+# statement zullen genegeerd worden.
+IgnorePaths</programlisting>
+
+      <para>Voeg paden, zoals
+	<filename class="directory">/bin</filename> of
+	<filename class="directory">/sbin</filename> toe om deze
+	specifieke mappen ongemoeid te laten tijdens het updateproces.
+	Deze optie kan gebruikt worden om te voorkomen dat
+	<command>freebsd-update</command> lokale wijzigingen
+	overschrijft.</para>
+
+      <programlisting># Paden die beginnen met iets wat overeenkomt met een regel in een UpdateIfUnmodified
+# statement zullen alleen worden bijgewerkt als de inhoud van het bestand niet is
+# gewijzigd door de gebruiker (tenzij veranderingen zijn samengevoegd; zie beneden).
+UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting>
+
+      <para>Werk configuratiebestanden in de aangegeven mappen alleen
+	bij als ze niet zijn gewijzigd.  Alle veranderingen die door de
+	gebruiker zijn gemaakt maken het automatisch bijwerken van deze
+	bestanden ongeldig.  Er is een andere optie,
+	<literal>KeepModifiedMetadata</literal>, die
+	<command>freebsd-update</command> instrueert om de veranderingen
+	tijdens het samenvoegen te bewaren.</para>
+
+      <programlisting># Wanneer naar een nieuwe uitgave van &os; wordt ge-upgraded, worden lokale veranderingen van bestanden die overeenkomen met MergeChanges
+# samengevoegd in de versie van de nieuwe uitgave.
+MergeChanges /etc/ /var/named/etc/</programlisting>
+
+      <para>Lijst van mappen met instellingenbestanden waar
+	<command>freebsd-update</command> moet proberen om in samen te
+	voegen.  Het proces van bestanden samenvoegen is een serie
+	van &man.diff.1;-patches die ongeveer gelijk is aan
+	&man.mergemaster.8; met minder opties, de samenvoegingen worden
+	ofwel geaccepteerd, of openen een tekstverwerker, of zorgen
+	ervoor dat <command>freebsd-update</command> afbreekt.  Maak in
+	geval van twijfel een reservekopie van <filename
+	  class="directory">/etc</filename> en accepteer de
+	samenvoegingen.  In <xref linkend="cutting-edge"> staat meer
+	informatie over het commando <command>mergemaster</command>.</para>
+
+      <programlisting># Map waarin de gedownloade updates en tijdelijke
+bestanden
+# die door een &os; Update worden gebruikt worden worden opgeslagen.
+# WorkDir /var/db/freebsd-update</programlisting>
+
+      <para>Dit is de map waarin alle patches en tijdelijke bestanden
+	worden geplaatst.  In het geval dat de gebruiker een
+	versie-upgrade uitvoert, dient deze locatie tenminste een
+	gigabyte aan vrije schijfruimte te hebben.</para>
+
+      <programlisting># Wanneer tussen uitgaven wordt ge-upgraded, dient de lijst van Componenten dan
+# strikt gelezen te worden (StrictComponents yes) of slechts als een lijst van componenten
+
+# die ge&iuml;nstalleerd *kunnen* worden en waarvan &os; Update uit dient te zoeken
+# welke daadwerkelijk zijn ge&iuml;nstalleerd en die te upgraden (StrictComponents no)?
+# StrictComponents no</programlisting>
+
+      <para>Wanneer ingesteld op <literal>yes</literal>, zal
+	<command>freebsd-update</command> aannemen dat de lijst
+	<literal>Components</literal> compleet is en zal het niet
+	proberen om wijzigingen buiten de lijst te maken.  Effectief zal
+	<command>freebsd-update</command> proberen om elk bestand bij te
+	werken dat op de lijst <literal>Components</literal> staat.</para>
+    </sect2>
+
+    <sect2>
+      <title>Beveiligingspatches</title>
+
+      <para>Beveiligingspatches staan op een verre machine en kunnen met
+	het volgende commando gedownload en ge&iuml;nstalleerd
+	worden:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update fetch</userinput>
+&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+      <para>Als er kernelpatches zijn toegepast moet het systeem opnieuw
+	opgestart worden.  Als alles goed is gegaan dient het systeem
+	gepatcht te zijn en kan <command>freebsd-update</command> als
+	een nachtelijke &man.cron.8;-taak gedraaid worden.  Een regel
+	in <filename>/etc/crontab</filename> zou genoeg moeten zijn om
+	deze taak te volbrengen:</para>
+
+      <programlisting>@daily                                  root    freebsd-update cron</programlisting>
+
+      <para>Deze regel verklaart dat eenmaal per dag het commando
+	<command>freebsd-update</command> gedraaid zal worden.  Op deze
+	manier, door het argument <option>cron</option> te gebruiken,
+	zal <command>freebsd-update</command> alleen kijken of er
+	updates bestaan.  Als er patches bestaan, zullen ze automatisch
+	worden gedownload naar de plaatselijke schijf maar niet worden
+	toegepast.  Er zal een email aan de gebruiker
+	<username>root</username> worden verstuurd zodat ze handmatig
+	ge&iuml;nstalleerd kunnen worden.</para>
+
+      <para>Als er iets misging, heeft <command>freebsd-update</command>
+	de mogelijkheid om de laatste verzamelingen veranderingen terug
+	te draaien met het volgende commando:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update rollback</userinput></screen>
+
+      <para>Eenmaal voltooid, dient het systeem herstart te worden als
+	de kernel of enige kernelmodule is gewijzigd.  Dit stelt &os; in
+	staat om de nieuwe binairen in het geheugen te laden.</para>
+
+      <note>
+	<para>De <command>freebsd-update</command> werkt alleen met de
+	  kernel <filename>GENERIC</filename>.  Als er wijzigingen aan
+	  de kernel <filename>GENERIC</filename> zijn gemaakt of er een
+	  eigen kernel is ge&iuml;nstalleerd, wordt
+	  <command>freebsd-update</command> niet voltooid&nbsp;&mdash;
+	  het zal falen in het eerste geval en een fout produceren in
+	  het laatste.</para>
+      </note>
+    </sect2>
+
+    <sect2>
+      <title>Grote en kleine upgrades</title>
+
+      <para>Dit proces ruimt oude objectbestanden en bibliotheken op
+	waardoor de meeste applicaties van derde partijen kapot gaan.
+	Het wordt aangeraden dat alle ge&iuml;nstalleerde poorten ofwel
+	verwijderd en geherinstalleerd worden of later ge-upgraded
+	worden met het hulpmiddel <filename
+	  role="package">ports-mgmt/portupgrade</filename>.  De meeste
+	gebruikers zullen willen proefdraaien met het volgende
+	commando:</para>
+
+      <screen>&prompt.root; <userinput>portupgrade -af</userinput></screen>
+
+      <para>Dit zorgt ervoor dat alles juist wordt geherinstalleerd.
+	Merk op dat het instellen van de omgevingsvariabele
+	<makevar>BATCH</makevar> op <literal>yes</literal> het antwoord
+	<literal>yes</literal> zal geven op alle prompts tijdens dit
+	proces, waardoor het niet nodig is om handmatig in het
+	bouwproces in te grijpen.</para>
+
+      <para>Updates van grote en kleine versies kunnen worden uitgevoerd
+	door een uitgaveversie als doel aan
+	<command>freebsd-update</command> op te geven, het volgende
+	commando zal bijvoorbeeld updaten naar &os;&nbsp;6.3:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen>
+
+      <para>Nadat het commando is ontvangen, zal
+	<command>freebsd-update</command> het instellingenbestand en het
+	huidige systeem evalueren in een poging om de benodigde
+	informatie te verzamelen om het systeem te updaten.  Een lijst
+	op het scherm zal aangeven welke componenten zijn gedetecteerd
+	en welke niet.  Bijvoorbeeld:</para>
+
+      <screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found.
+Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done.
+Fetching metadata index... done.
+Inspecting system... done.
+
+The following components of FreeBSD seem to be installed:
+kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
+src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
+src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
+world/base world/info world/lib32 world/manpages
+
+The following components of FreeBSD do not seem to be installed:
+kernel/generic world/catpages world/dict world/doc world/games
+world/proflibs
+
+Does this look reasonable (y/n)? y</screen>
+
+      <para>Nu zal <command>freebsd-update</command> proberen om alle
+	bestanden die nodig zijn voor de upgrade te downloaden.  In
+	sommige gevallen kan de gebruiker worden gevraagd wat te
+	installeren of hoe verder te gaan.</para>
+
+      <para>Nadat alle patches zijn gedownload naar het plaatselijke
+	systeem zullen ze worden toegepast.  Dit proces kan afhankelijk
+	van de snelheid en werklast van de machine even duren.  Hierna
+	zullen instellingenbestanden worden samengevoegd&nbsp;&mdash;
+	voor dit gedeelte van het proces is enige tussenkomst van de
+	gebruiker nodig aangezien een bestand kan worden samengevoegd of
+	omdat er een tekstverwerker op het scherm kan verschijnen om het
+	bestand handmatig samen te voegen.  Het resultaat van elke
+	succesvolle samenvoeging zal aan de gebruiker worden getoond
+	naarmate het proces verder gaat.  Een mislukte of genegeerde
+	samenvoegpoging zal het proces afbreken.  Het is mogelijk voor
+	gebruikers om een reservekopie van <filename
+	  class="directory">/etc</filename> te maken en belangrijke
+	bestanden, zoals <filename>master.passwd</filename> of
+	<filename>group</filename>, later samen te voegen.</para>
+
+      <note>
+	<para>Het systeem is nog niet veranderd, al het patchen en
+	  samenvoegen gebeurt in een andere map.  Wanneer alle patches
+	  succesvol zijn toegepast, alle instellingenbestanden zijn
+	  samengevoegd en het erop lijkt dat het proces soepel verloopt,
+	  dienen de veranderingen verzegeld te worden door de
+	  gebruiker.</para>
+      </note>
+
+      <para>Als dit proces eenmaal voltooid is, kan de upgrade aan de
+	schijf toevertrouwd worden met het volgende commando.</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+      <para>De kernel en kernelmodules zullen als eerste gepatcht
+	worden.  Nu moet de machine opnieuw opgestart worden.  Het
+	volgende commando kan gegeven worden om de machine te herstarten
+	en dus de nieuwe kernel in het geheugen te laden:</para>
+
+      <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
+
+      <para>Als het systeem weer actief is, moet
+	<command>freebsd-update</command> nogmaals gestart worden.
+	De toestand van het proces is opgeslagen en dus zal
+	<command>freebsd-update</command> niet vooraan beginnen, maar
+	zal het alle oude gedeelde bibliotheken en objectbestanden
+	verwijderen.  Geef het volgende commando om verder te gaan op
+	dit punt:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+      <note>
+	<para>Afhankelijk van het feit of er versienummers van
+	  bibliotheken zijn opgehoogd, kunnen er slechts twee in plaats
+	  van drie installatiefasen zijn.</para>
+      </note>
+
+      <para>Alle software van derde partijen dient nu opnieuw gebouwd en
+	ge&iuml;nstalleerd te worden.  Dit is nodig omdat
+	ge&iuml;nstalleerde software van bibliotheken afhankelijk kan
+	zijn die tijdens het upgradeproces zijn verwijderd.  Het
+	commando <filename
+	  role="package">ports-mgmt/portupgrade</filename> kan gebruikt
+	worden om dit proces te automatiseren.  Dit proces kan met de
+	volgende commando's gestart worden:</para>
+
+      <screen>&prompt.root; <userinput>portupgrade -f ruby</userinput>
+&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db</userinput>
+&prompt.root; <userinput>portupgrade -f ruby18-bdb</userinput>
+&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput>
+&prompt.root; <userinput>portupgrade -af</userinput></screen>
+
+      <para>Voltooi, nadat dit voltooid is, het upgradeproces met een
+	laatste aanroep naar <command>freebsd-update</command>.  Geef
+	het volgende commando om alle losse eindjes in het upgradeproces
+	samen te knopen:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+      <para>Start de machine opnieuw op in de nieuwe &os;-versie.  Het
+	proces is voltooid.</para>
+    </sect2>
+
+    <sect2>
+      <title>Het vergelijken van systeemtoestanden</title>
+
+      <para>Het gereedschap <command>freebsd-update</command> kan
+	gebruikt worden om de toestand van de ge&iuml;nstalleerde versie
+	van &os; met een bekende goede kopie te vergelijken.  Deze optie
+	evalueert de huidige versie van systeemgereedschappen,
+	bibliotheken, en instellingenbestanden.  Geef het volgende
+	commando om met de vergelijking te beginnen:</para>
+
+      <screen>&prompt.root; <userinput>freebsd-update IDS &gt;&gt; uitvoerbestand.ids</userinput></screen>
+
+      <warning>
+	<para>Hoewel de commandonaam <acronym>IDS</acronym> is, is het
+	  in geen geval een vervanging voor een indringdetectiesysteem
+	  zoals <filename role="package">security/snort</filename>.
+	  Aangezien <command>freebsd-update</command> gegevens op schijf
+	  opslaat, is de mogelijkheid om te knoeien duidelijk.  Hoewel
+	  deze mogelijkheid verminderd kan worden door de instelling
+	  <varname>kern.securelevel</varname> te gebruiken en de
+	  gegevens van <command>freebsd-update</command> op een
+	  bestandssysteem dat alleen gelezen kan worden op te slaan
+	  wanneer deze niet gebruikt worden, zou een betere oplossing
+	  zijn om het systeem met een veilige schijf te vergelijken,
+	  zoals een <acronym>DVD</acronym> of een veilig opgeslagen
+	  externe <acronym>USB</acronym>-schijf.</para>
+      </warning>
+
+      <para>Het systeem zal nu ge&iuml;nspecteerd worden, en er zal een
+	lijst van hun &man.sha256.1;-hashwaarden, zowel de bekende
+	waarde in de uitgave en de huidige ge&iuml;nstalleerde waarde,
+	afgebeeld worden.  Hierom wordt de uitvoer naar het bestand
+	<filename>uitvoerbestand.ids</filename> gezonden.  Het scrollt
+	te snel voorbij om het met het oog te vergelijken, en het vult
+	al snel de gehele consolebuffer op.</para>
+
+      <para>Deze regels zijn ook extreem lang, maar het uitvoerformaat
+	kan vrij eenvoudig geparsed worden.  Geef, om bijvoorbeeld een
+	lijst van alle bestanden te krijgen die verschillen van die in
+	de uitgave, het volgende commando:</para>
+
+      <screen>&prompt.root; <userinput>cat uitvoerbestand.ids | awk '{ print $1 }' | more</userinput>
+/etc/master.passwd
+/etc/motd
+/etc/passwd
+/etc/pf.conf</screen>
+
+      <para>Deze uitvoer is afgekapt, er bestaan veel meer bestanden.
+	Sommige van deze bestanden hebben natuurlijke veranderingen, het
+	<filename>/etc/passwd</filename> is gewijzigd omdat er
+	gebruikers aan het systeem zijn toegevoegd.  In sommige gevallen
+	kunnen er andere bestanden zijn, zoals kernelmodules, die
+	verschillen aangezien <command>freebsd-update</command> ze
+	ge-updated kan hebben.  Voeg, om bepaalde bestanden of mappen
+	uit te sluiten, deze toe aan de optie
+	<literal>IDSIgnorePaths</literal> in
+	<filename>/etc/freebsd-update.conf</filename>.</para>
+
+      <para>Dit systeem kan gebruikt worden als deel van een uitgebreide
+	upgrademethode, afgezien van de eerder besproken versie.</para>
+    </sect2>
+  </sect1>
+
+  <sect1 id="updating-portsnap">
+    <title>Portsnap: een updategereedschap voor de Portscollectie</title>
+
+    <para>Het basissysteem van &os; bevat ook een gereedschap om de
+      Portscollectie bij te werken:  het hulpmiddel &man.portsnap.8;.
+      Wanneer het wordt uitgevoerd, zal het een verbinding maken met een
+      verre site, de veilige sleutel controleren, en een nieuwe kopie
+      van de Portscollectie downloaden.  De sleutel wordt gebruikt om de
+      integriteit van alle gedownloade bestanden te controleren, om er
+      zeker van te zijn dat ze niet tijdens het downloaden zijn
+      gewijzigd.  Geef het volgende commando om de nieuwste versie van
+      de bestanden van de Portscollectie te downloaden:</para>
+
+    <screen>&prompt.root; <userinput>portsnap fetch</userinput>
+Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
+Fetching snapshot tag from portsnap1.FreeBSD.org... done.
+Fetching snapshot metadata... done.
+Updating from Wed Aug  6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008.
+Fetching 3 metadata patches.. done.
+Applying metadata patches... done.
+Fetching 3 metadata files... done.
+Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done.
+Applying patches... done.
+Fetching 133 new ports or files... done.</screen>
+
+    <para>Dit voorbeeld laat zien dat &man.portsnap.8; verscheidene
+      patches heeft gevonden en deze met de huidige portsgegevens heeft
+      gecontroleerd.  Het geeft ook aan dat het gereedschap eerder is
+      gedraaid, als het voor de eerste keer was gedraaid, had het
+      simpelweg de collectie gedownload.</para>
+
+    <para>Wanneer &man.portsnap.8; succesvol een
+      <command>fetch</command>-operatie afrondt, bestaan de
+      Portscollectie en de vervolgpatches die de verificatie doorstaan
+      hebben op het plaatselijke systeem.  De bijgewerkte bestanden
+      kunnen ge&iuml;nstalleerd worden door het volgende te
+      typen:</para>
+
+    <screen>&prompt.root; <userinput>portsnap extract</userinput>
+/usr/ports/.cvsignore
+/usr/ports/CHANGES
+/usr/ports/COPYRIGHT
+/usr/ports/GIDs
+/usr/ports/KNOBS
+/usr/ports/LEGAL
+/usr/ports/MOVED
+/usr/ports/Makefile
+/usr/ports/Mk/bsd.apache.mk
+/usr/ports/Mk/bsd.autotools.mk
+/usr/ports/Mk/bsd.cmake.mk
+<replaceable>...</replaceable></screen>
+
+    <para>Het proces is nu compleet, en applicaties kunnen met de
+      bijgewerkte Portscollectie worden ge&iuml;nstalleerd of worden
+      bijgewerkt.</para>
+  </sect1>
+</chapter>