<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//NL">
<HTML>
<HEAD>
 <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 <META NAME="GENERATOR" CONTENT="lfparser_2.28">
 <META NAME="LFCATEGORY" CONTENT="SystemAdministration">
 <TITLE>lf199, SystemAdministration: Instant data kopi&euml;ren onder Linux.</TITLE>
<style type="text/css">
<!--
 td.top {font-family: Arial,Geneva,Verdana,Helvetica,sans-serif; font-size:12 }
 pre { font-family:monospace,Courier }
 p.cl { color:#EE9500 }
 a.nodec { text-decoration:none }
 p.trans { font-size:8pt; text-align:right }
 p.clbox { width:50%; alignment:center; background-color:#FFD700; 
           border-style:none; border-width:medium; border-color:#FFD700; 
           padding:0.5cm;  text-align:center }
 p.code { width:80%; alignment:center; background-color:#aedbe8; 
          border-style:none; border-width:medium; border-color:#aedbe8; 
          padding:0.1cm;  text-align:left }
 p.foot { background-color:#AAAAAA; color:#FFFFFF; border-style:none; 
          border-width:medium; border-color:#AAAAAA; padding:0.5cm ; 
          margin-top:0.1cm; margin-right:1cm; margin-left:1cm; 
          text-align:center }
 .mark  { background-color:#e6e6ff }
-->
</style>
 
</HEAD>
<BODY bgcolor="#ffffff" text="#000000">
 <!-- this is generated html code. NEVER use this file for your
 translation work. Instead get the file with the same article number
 and .meta.shtml in its name. Translate this meta file and then
 use lfparser program to generate the final article -->
 <!-- lfparser can be obtained from http://www.linuxfocus.org/~guido/dev/lfparser.html -->

<!-- this is used by a number of tools:
 =LF=AUTHOR: Atif Ghaffar
 =LF=CAT___: SystemAdministration
 =LF=TITLE_: Instant data kopi&euml;ren onder Linux.
 =LF=NUMBER: 199
 =LF=ANAME_: article199.shtml
 -->

<!-- 2pdaIgnoreStart -->

<!-- start navegation bar -->
 <!-- top navegation bar -->
 <TABLE summary="topbar_1" cellspacing="0" cellpadding="0" border="0" align="center" width="90%">
   <TR bgcolor="#2e2292">
     <TD class="top"><TABLE summary="topbar_1_logo" cellspacing="0" cellpadding="0" border="0" width=
       "100%">
         <TR><TD width="319"><IMG src="../../common/images/logolftop_319x45.gif"
           alt="[LinuxFocus-icon]" width="319" height="45" align="left" 
           border="0"></TD>

           <TD class="top">
             <TABLE summary="topbar_1_links" width="100%">
               <TR align="right">
                 <TD class="top"><A class="nodec" href="../index.shtml"><FONT color=
                 "#DDDDDD" size="2">Home</FONT></A> &nbsp;|&nbsp; <A class=
                 "nodec" href="../map.html"><FONT color=
                 "#DDDDDD" size="2">Map</FONT></A> &nbsp;|&nbsp; <A class=
                 "nodec" href="../indice.html"><FONT color=
                 "#DDDDDD" size="2">Index</FONT></A> &nbsp;|&nbsp; <A class="nodec" href="../Search/index.html"><FONT color=
                 "#DDDDDD" size="2">Zoek</FONT></A> </TD>
               </TR>

               <TR align="right">
                 <TD class="top">
                   <HR width="100%" noshade size="1">
                 </TD>
               </TR>
             </TABLE>
           </TD>
         </TR>
       </TABLE>
     </TD>
   </TR>
 </TABLE>
 <!-- end top navegation bar -->
 <!-- blue bar -->
 <TABLE summary="topbar_2" cellspacing="0" cellpadding="0" border="0" align="center"
 width="90%">
   <TR bgcolor="#00ffff">
     <TD><IMG src="../../common/images/transpix.gif" width="1" height=
     "2" alt=""></TD>
   </TR>
 </TABLE>
 <!-- end blue bar -->
 <!-- bottom navegation bar -->
 <TABLE summary="topbar_3" cellspacing="0" cellpadding="0" border="0" align="center"
 width="94%">
   <TR bgcolor="#000000">
     <TD>
       <TABLE summary="topbar_3_links" cellspacing="0" cellpadding="1" border="0" width=
       "100%">
         <TR align="center">
           <TD WIDTH="20%"><A class="nodec" href="../News/index.html"><FONT color=
           "#FFFFFF">Nieuws</FONT></A> </TD>
           <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD>
           <TD WIDTH="20%"><A class="nodec" href="../Archives/index.html"><FONT color=
           "#FFFFFF">Archieven</FONT></A> </TD>
           <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD>
           <TD WIDTH="20%"><A class="nodec" href="../Links/index.html"><FONT color=
           "#FFFFFF">Links</FONT></A> </TD>
           <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD>
           <TD WIDTH="20%"><A class="nodec" href="../aboutus.html"><FONT color=
           "#FFFFFF">Over LF</FONT></A> </TD>
         </TR>
       </TABLE>
     </TD>
   </TR>
 </TABLE>
 <!-- end bottom navegation bar -->
<!-- stop navegation bar -->

<!-- SSI_INFO -->

<!-- tr_staticssi include virtual -->
<!-- tr_staticssi exec cmd -->
<!-- addedByLfdynahead ver 1.1 --><TABLE ALIGN="right" border=0><TR><TD ALIGN="right"><FONT SIZE="-1" FACE="Arial,Helvetica">Dit artikel is beschikbaar in: <A href="../../English/March2001/article199.shtml">English</a> &nbsp;<A href="../../Castellano/March2001/article199.shtml">Castellano</a> &nbsp;<A href="../../Deutsch/March2001/article199.shtml">Deutsch</a> &nbsp;<A href="../../Francais/March2001/article199.shtml">Francais</a> &nbsp;<A href="../../Nederlands/March2001/article199.shtml">Nederlands</a> &nbsp;<A href="../../Turkce/March2001/article199.shtml">Turkce</a> &nbsp;</FONT></TD></TR></TABLE><br>
 


<!-- SSI_INFO STOP -->
<!-- 2pdaIgnoreStop -->

<!-- SHORT BIO ABOUT THE AUTHOR -->
<TABLE ALIGN=LEFT BORDER=0  WIDTH="190" >
<TR>
<TD>

<!-- 2pdaIgnoreStart -->
<!-- PALM DOC -->
<TABLE BORDER=0 hspace=4 vspace=4> <TR> <TD>
<font size=1> <img src="../../common/images/2doc.gif" width=34 align=left border=0 height=22 alt="convert to palm"><a href="http://cgi.linuxfocus.org/cgi-bin/2ztxt">Convert to GutenPalm</a><br>or <a href="http://cgi.linuxfocus.org/cgi-bin/2pda">to PalmDoc</a></font>
</TD> </TR> </TABLE>
<!-- END PALM DOC -->
<!-- 2pdaIgnoreStop -->
<br>
<IMG SRC="../../common/images/Atif-Ghaffar.jpg" ALT="[Photo of the Author]"
 HEIGHT=124 WIDTH=115>
<BR>door  Atif Ghaffar <br> <small>&lt;atif(at)developer.ch&gt;</small>
<BR><BR>
<I>Over de auteur:</I><BR>
<P>Atif is een kameleon. Hij veranderd van rol, van systeembeheerder naar programmeur naar leraar
naar projectleider, al naar gelang het werk vereist.
<BR>
Atif is van mening dat hij veel aan Linux en de <EM>open source</EM>
gemeenschap met zijn projecten te danken heeft vanwege de leerzame ervaringen.
<BR>
Je kunt meer over hem vinden op zijn <a href="http://www.developer.ch/~aghaffar">homepage</a>.


<!-- TRANSLATED TO nl -->
<BR><BR><I>Vertaald naar het Nederlands door:</I><BR>
Tom Uijldert <small>&lt;tom.uijldert(at)cmgplc.com&gt;</small>
<br>
<!-- TRANSLATED TO STOP -->
<BR><i>Inhoud</i>:
<UL>
  <LI><A HREF="#199lfindex0">Waarom kopi&euml;ren en niet gewoon delen?</A></LI>
  <LI><A HREF="#199lfindex1">Hou 't simpel</A></LI>
  <LI><A HREF="#199lfindex2">Hou 't slim</A></LI>
  <LI><A HREF="#199lfindex3">Wat is FAM?</A></LI>
  <LI><A HREF="#199lfindex4">Wat is IMON?</A></LI>
  <LI><A HREF="#199lfindex5">Het installeren van FAM en IMON</A></LI>
  <LI><A HREF="#199lfindex6">Het installeren van de SGI::PAM module</A></LI>
  <LI><A HREF="#199lfindex7">Kopi&euml;ren met fam_mirror</A></LI>
  <LI><A HREF="#199lfindex8">Referenties</A></LI>
  <LI><A HREF="#199lfindex9">Bekende problemen</A></LI>
  <LI><A HREF="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=199&amp;lang=en">Talkback voor dit artikel</A></LI>
</UL>

</TD></TR></TABLE>
<!-- HEAD OF THE ARTICLE -->
<br>&nbsp;
<H2>Instant data kopi&euml;ren onder Linux.</H2>
 <IMG SRC="../../common/images/tuxmirror.gif" ALT="[Illustratie]"
 HSPACE=10 HEIGHT=246 WIDTH=149>
<!-- ABSTRACT OF THE ARTICLE -->
<P><i>Kort</i>:
<P>

In dit artikel onderzoeken we het instant kopi&euml;ren van data onder Linux zonder gebruik te
maken van dure oplossingen als <EM>SAN</EM> (Storage Area Network zoals GFS) of andere
apparaten met bloksgewijze netwerktoegang. We zullen <a href="http://oss.sgi.com/projects/fam">FAM en IMON</a> gebruiken voor het
kopi&euml;ren.
<BR>
FAM (File Alteration Monitor) en IMON (Inode monitor) zijn oorspronkelijk door SGI ontwikkeld
voor IRIX.
<P>
De mensen van SGI hebben een prima keuze gedaan door het op Linux te zetten en er
<EM>open source</EM> van te maken.
<P>
Als geld geen rol speelt zou ik voor <a href="http://www.globalfilesystem.org">GFS (Global File System)</a>
of een op SAN gebaseerde
oplossing gaan maar als kosten een belangrijke overweging zijn en je wilt toch data spiegelen
dan zijn er weinig keuzes.
<BR>
Ik heb een aantal keuzes hier op een rij. In dit artikel zullen we ze bespreken en de voor- en
nadelen bekijken.


<br><br><!-- HR divider --><table width="300" align="center" border="0">
<tr>
  <td bgcolor="#8282e0"><IMG src="../../common/images/transpix.gif" width="1" height="2" alt=""></td>
</tr>
</table>
<!-- BODY OF THE ARTICLE -->


<A NAME="199lfindex0">&nbsp;</A>
<H2>Waarom kopi&euml;ren en niet gewoon delen?</H2>

Zijn <EM>bestandsservers</EM> niet bedoeld voor het beschikbaar maken van data aan
<EM>clients</EM>?
<BR>
Jazeker
<P>
Als we echter data van bestandsservers beschikbaar maken over NFS of SMB dan cre&euml;ren
we een <STRONG>knelpunt</STRONG> en een <STRONG>single point of failure</STRONG>
(&eacute;&eacute;n foutgevoelige plek of achilleshiel in het systeem).
<P>
Als we data over GFS delen met gedeelde opslag (SAN of Multichannel SCSI) dan is de doos
voor opslag hier de Achilleshiel en bovendien is het heel duur om een dergelijk systeem op te
zetten.
<P>
We kunnen NBD (<EM>Network Block Devices</EM>) gebruiken om via het netwerk data te
kopi&euml;ren, maar ik ben niet gecharmeerd van een dergelijke oplossing. NBD's hebben hun
beperkingen, zijn moeilijk te implementeren en onderhouden en gewoon te veel moeite als je
alleen maar wat webserver data over verschillende webservers wil kopi&euml;ren.

<A NAME="199lfindex1">&nbsp;</A>
<H2>Hou 't simpel</H2>

Ok, laten we het kopi&euml;ren eens proberen:
<BR>
<STRONG>Hier is een scenario</STRONG>
<BR>
Je hebt 2 webservers, &eacute;&eacute;n server om het werk te doen en &eacute;&eacute;n als
reserve.
<BR>
Je brengt alle veranderingen aan op de server en voert deze door op de reserve via een
<KBD>rsync</KBD>.
<BR>
Simpel?
<BR>
Maar hoe dit nu te automatiseren? Je gebruikers zullen meerdere malen per dag met FTP data
veranderen. Wat gebeurt er nu als de server plat gaat en de reserve neemt het werk over?
<BR>
Ik heb hier een eenvoudig antwoordt op. Ze zullen hun veranderingen niet zien en daar behoorlijk
ge&iuml;rriteerd over zijn :)
<BR>
Je kunt natuurlijk iedere 5 seconden vanuit <KBD>cron</KBD> een <KBD>$ rsync -av --delete
source destination</KBD> draaien maar dan zul je de machine niet bepaald voor nog iets anders
kunnen gebruiken, niet?
<P>
<STRONG>Hier nog een ander scenario</STRONG>
<BR>
Je hebt &eacute;&eacute;n FTP server voor het deponeren van data en zes webservers die om
de beurt de rest van het verkeer afhandelen.
<BR>
De data op iedere machine moet dan hetzelfde zijn. Je kunt hier voor een korte tijd met NFS
wegkomen als je geluk hebt, maar dat zal niet lang duren.
<P>
Dus, wat moeten we doen?
<BR>
Ik denk dat het antwoord als volgt is: &quot;Kopieer alleen die data naar de webservers die
veranderd is&quot;. En data die niet veranderd is kopieer je niet.
<P>
Dat zullen we nu precies gaan doen met &quot;FAM&quot;.

<A NAME="199lfindex2">&nbsp;</A>
<H2>Hou 't slim</H2>

Hoe weten we nu dat data veranderd is?
<BR>
Hier een antwoord wat ik verwacht van een Windows ontwikkelaar.
<BR>
<STRONG>We doorzoeken de betreffende directory iedere paar seconden en onderzoeken de
datum en grootte van de bestanden op veranderingen in vergelijking met onze
<EM>cache</EM></STRONG>.
<BR>
Jaja
<P>
<STRONG>Polling</STRONG>: het regelmatig vergelijken van datum en grootte van bestanden
met oudere versies is een dure oplossing. Stel je maar eens voor dat je webserver iedere 5
seconden het commando &quot;<KBD>ls -lR/eendirectory</KBD>&quot; uitvoert :)
<P>
De elegante oplossing zou zijn dat het bestand ons vertelt wanneer het is veranderd, zodat we
daarop actie kunnen ondernemen. Dat is nou precies wat &quot;IMON&quot; voor ons doet.

<A NAME="199lfindex3">&nbsp;</A>
<H2>Wat is FAM?</H2>

Link: <a href="http://oss.sgi.com/projects/fam/faq.html">http://oss.sgi.com/projects/fam/faq.html</a>
<BR>
FAM, of File Attention Monitor, heeft een koppeling die door toepassingen kunnen worden
gebruikt om een seintje te krijgen wanneer bepaalde bestanden of directories zijn veranderd.
<BR>
FAM bestaat uit 2 delen: <STRONG>fam</STRONG>, de daemon die een verzoek afhandelt en
het seintje geeft, en <STRONG>libfam</STRONG>, de koppeling die toepassingen kunnen
gebruiken voor het communiceren met FAM.
<BR>
Als de te controleren bestanden op een andere machine staan, dan zal de lokale
<KBD>fam</KBD> contact opnemen met die op de andere machine en alle verzoeken daar
naartoe doorspelen.
<BR>
<KBD>fam</KBD> kan clients ook een seintje geven wanneer een bestand wordt uitgevoerd en
wanneer het stopt met uitvoeren (De IRIX Interactive Desktop gebruikt dit bijvoorbeeld om het
icoon van een programma te veranderen als dit wordt uitgevoerd).
<BR>
<KBD>fam</KBD> is van origine voor IRIX in 1989 geschreven door Bruce Karsh en is
herschreven in 1995 door Bob Miller. Deze <EM>open source</EM> versie van
<KBD>fam</KBD> is geschikt voor zowel Linux als IRIX en is dezelfde als die in IRIX 6.5.8.

<A NAME="199lfindex4">&nbsp;</A>
<H2>Wat is IMON?</H2>

Link: <a href="http://oss.sgi.com/projects/fam/faq.html">http://oss.sgi.com/projects/fam/faq.html</a>
<BR>
<KBD>imon</KBD>, de Inode Monitor, is het stuk van de kernel wat <KBD>fam</KBD> vertelt
wanneer een bestand veranderd is. Wanneer toepassingen aan <KBD>fam</KBD> meedelen in
welke bestanden en directories ze ge&iuml;nteresseerd zijn, dan zal <KBD>fam</KBD> deze
informatie doorspelen aan <KBD>imon</KBD>. Wanneer deze bestanden en directories worden
veranderd dan zal de kernel <KBD>imon</KBD> hiervan op de hoogte stellen. Op zijn beurt
speelt <KBD>imon</KBD> deze informatie door aan <KBD>fam</KBD>, die het op zijn beurt zal
distribueren naar alle toepassingen die hiervoor interesse hebben getoond.
<BR>
<KBD>imon</KBD> is van origine in 1989 voor Irix geschreven door Wiltse Carpenter.
Overzetten op Linux is gedaan door Roger Chickering. De Linux implementatie van de kernel
veranderingen wijkt niet veel af van de implementatie op IRIX, maar het haakt op een andere
manier aan in de kernel bestandscode.

<A NAME="199lfindex5">&nbsp;</A>
<H2>Het installeren van FAM en IMON</H2>

Beide programma's zijn beschikbaar op de website van SGI. Zie de referenties aan het eind van
dit artikel.
<BR>
IMON is een patch op de kernel. Hiermee krijg je de mogelijkheid in de kernel om veranderingen
op <EM>inodes</EM> in de gaten te houden.
<BR>
Doe een <KBD>cd</KBD> naar de directory van je kernel boncode en installeer de patch:
<PRE>
$ cd /usr/src/linux
$ patch -p < patchbestand
</PRE>
<P>
Voer nu <KBD>$ make config</KBD> of <KBD> $ make menuconfig</KBD> uit en kies de
volgende optie: <STRONG>inode Monitor (imon) support (EXPERIMENTAL)</STRONG> in het
<SAMP>Filesystems</SAMP>-gedeelte.
<BR>
Compileer de kernel opnieuw en herstart (sorry) de machine.
<BR>
Het compileren van FAM is eenvoudig. Doe een <KBD>cd</KBD> naar de broncode en geef het
commando <KBD>$ ./configure && make all install</KBD>. Ziedaar, alles ge&iuml;nstalleerd.
<P>
Vervolgens installeren we een Perl-module met de naam <SAMP>SGI::FAM</SAMP>, zodat we
het geheel in Perl kunnen schrijven.

<A NAME="199lfindex6">&nbsp;</A>
<H2>Het installeren van de SGI::PAM module</H2>

Je dacht toch niet dat ik je ging vragen het in C/C++ te doen, wel?
<BR>
Ik weet niet hoe jij er over denkt maar persoonlijk ben ik te lui en ongeduldig, dus schrijf ik mijn
spiegel-programma met Perl.
<P>
Haal SGI::FAM (door <a href="mailto::jglick@sig.bsh.com">Jesse N. Glick</a>) van het net en installeer het.
Voer de CPAN module uit om dit te installeren, als volgt:
<PRE>
$ perl -MCPAN -e shell
$ install SGI::FAM
</PRE>
Hiermee zou SGI::FAM en verdere relevante modules ge&iuml;nstalleerd moeten zijn.

<A NAME="199lfindex7">&nbsp;</A>
<H2>Kopi&euml;ren met fam_mirror</H2>

<STRONG>fam_mirror</STRONG> is het script wat ik heb gemaakt voor het automatisch
kopi&euml;ren van gewijzigde bestanden. Je kunt het hier <a href="../../common/src/article199/fam_mirror.html">bekijken</a>
of hier <a href="../../common/src/article199/fam_mirror">ophalen</a>.
<BR>
Je kunt dit vervolgens wijzigen door <KBD>$replicaHosts</KBD> aan te passen op jouw
configuratie en mogelijk <KBD>$rsh</KBD> te wijzigen in wat voor commando je dan ook
gebruikt om iets op een andere machine uit te voeren. Idem voor <KBD>rsync</KBD>.
<P>
En nu terug naar <STRONG>scenario 1</STRONG>
<BR>
2 machines als webservers (web1 en web2). E&eacute;n als primaire server (web1) en de andere
als reserve (web2). Primaire FTP-server is web1. web2 doet niet aan FTP (anders gaan
gebruikers ook bestanden schrijven terwijl het systeem op z'n reserve draait).
<P>
Het startdocument op het web is voor beide machines <STRONG>/var/www</STRONG>.
<BR>
Configureer <KBD>rsh</KBD> of <KBD>ssh</KBD> op beide machines. web2 moet
toestemming verlenen aan web1 om van afstand commando's te kunnen geven zonder dat er
een wachtwoord nodig is. Meestal doe ik dat door mijn <SAMP>ssh_key</SAMP> toe te voegen
aan de <SAMP>authorized_keys</SAMP> van <SAMP>replicaHosts</SAMP>.
<BR>
Doe een <KBD>rsync</KBD> van alle data van web1 naar web2:
<PRE>
$ rsync -avz /var/www web2:/var/www
</PRE>
Verander <SAMP>fam_mirror</SAMP> door <CODE>@replicaHosts</CODE>  te vervangen
door <STRONG><CODE>@replicaHosts=qw(web2);</CODE></STRONG>.
<BR>
Start <STRONG>fam_mirror</STRONG> op web1:
<PRE>
$ fam_mirror /var/www &
</PRE>
en wijzig vervolgens bestanden op web1. Deze veranderingen zullen ook door worden gevoerd
op web2.
<P>
En nu dan <STRONG>scenario 2</STRONG> (een aantal webservers).
<BR>
We hebben machines &quot;linuxweb1&quot;, &quot;linuxweb2&quot;, &quot;linuxweb3&quot; en
&quot;linuxweb4&quot; als webservers. Machine &quot;linuxftp1&quot; is de ftp server (primaire
bestandsserver). De webmachines staan geen ftp toe aan gebruikers.
<BR>
Installeer <SAMP>fam, imon, SGI::FAM</SAMP> en <SAMP>fam_mirror</SAMP> op de
&quot;linuxftp1&quot; machine. Configureer vervolgens <KBD>rsh</KBD> of <KBD>ssh</KBD>
voor alle machines.
<BR>
linuxweb[1-4] moeten daarbij linuxftp1 toestemming verlenen om commando's op hun machines
uit te voeren zonder het ingeven van een wachtwoord.
<BR>
Wijzig <SAMP>fam_mirror</SAMP> en laat <CODE>@replicaHosts</CODE> verwijzen naar:
<STRONG><CODE>@replicaHosts=qw(linuxweb1 linuxweb2 linuxweb3
linuxweb4);</CODE></STRONG>.
<BR>
Wijzig <SAMP>$rsh</SAMP> en <CODE>$rsync</CODE> indien nodig. Aannemende dat het
startdocument wederom in <SAMP>/var/www</SAMP> is te vinden op alle machines, geef het
volgende commando op linuxftp1:
<PRE>
$ INIT_MIRROR=1 fam_mirror /var/www &
</PRE>
<P>
Alle veranderingen op linuxftp1 zouden nu te zien moeten zijn op linuxweb[1-4].

<A NAME="199lfindex8">&nbsp;</A>
<H2>Referenties</H2>

<ul>
	<li><a href="http://oss.sgi.com/projects/fam">SGI's fam site</a>
	<li><a href="http://search.cpan.org/search?dist=SGI-FAM">SGI::FAM Perl Module</a>
	<li><a href="http://www.nas.nasa.gov/Groups/WWW/subpages/topology.html">Realtime Data Mirroring (WEBD and SLIM) for IRIX</a>
	<li><a href="../../common/src/article199/fam_mirror">fam_mirror</a>
</ul>

<A NAME="199lfindex9">&nbsp;</A>
<H2>Bekende problemen</H2>

Ik heb gemerkt dat de oplossing, hier gegeven, een probleempje heeft: het werkt niet voor grote
directories (directories met 4 of 5 duizend sub directories). De kernel gaat klagen over
<SAMP>kmalloc</SAMP> en zo.
<BR>
Ik werk aan een oplossing. Zodra ik die heb zal ik hem verwerken in het artikel. Laat het me even
weten wanneer je al een oplossing hebt.



<!-- vim: set sw=2 ts=2 et: -->

<!-- 2pdaIgnoreStart -->
<A NAME="talkback">&nbsp;</a>
<h2>Talkback voor dit artikel</h2>
Elk artikel heeft zijn eigen talkback pagina. Daar kan je commentaar geven of commentaar van anderen lezen:
<center>
<table border="0"  CELLSPACING="2" CELLPADDING="1">
 <tr BGCOLOR="#C2C2C2"><td align=center>
  <table border="3"  CELLSPACING="2" CELLPADDING="1">
   <tr BGCOLOR="#C2C2C2"><td align=center>
    <A href="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=199&amp;lang=en"><b>&nbsp;talkback pagina&nbsp;</b></a>
   </td></tr></table>
</td></tr></table>
</center>

<HR size="2" noshade>
<!-- ARTICLE FOOT -->
<CENTER><TABLE WIDTH="98%">
<TR><TD ALIGN=CENTER BGCOLOR="#9999AA" WIDTH="50%">
<A HREF="../../common/lfteam.html">Site onderhouden door het LinuxFocus editors team</A>
<BR><FONT COLOR="#FFFFFF">&copy; Atif Ghaffar, <a href="../../common/copy.html">FDL</a> <BR><a href="http://www.linuxfocus.org">LinuxFocus.org</a></FONT>
<BR><a href="http://cgi.linuxfocus.org/cgi-bin/lfcomment?lang=nl&amp;article=article199.shtml" target="_TOP">Klik hier om een fout te melden of commentaar te geven</A><BR></TD>
<TD BGCOLOR="#9999AA">
<!-- TRANSLATION INFO -->
<font size=2>Vertaling info:</font>
<TABLE>
  <tr><td><font size="2">en --&gt; -- : Atif Ghaffar <small>&lt;atif(at)developer.ch&gt;</small></font></td></tr>
  <tr><td><font size="2">en --&gt; nl: Tom Uijldert &lt;tom.uijldert(at)cmgplc.com&gt;</font></td></tr>
</TABLE>
</TD>
</TR></TABLE></CENTER>
<p><font size=1>2002-06-08, generated by lfparser version 2.28</font></p>
<!-- 2pdaIgnoreStop -->
</BODY>
</HTML>