                           FreeBSD keziko:nyv

  A FreeBSD Dokumentacios Projekt

   Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
   2003, 2004, 2005, 2006, 2007, 2008, 2009 A FreeBSD Dokumentacios
   Projekt

   U:dvo:zo:lju:k a FreeBSD vilagaban! Ez a keziko:nyv ismerteti a
   FreeBSD 6.4-RELEASE, ill. a FreeBSD 7.2-RELEASE telepiteset es
   hasznalatat a mindennapokban. A keziko:nyv tartalman szamos
   fu:ggetlen fejleszto" folyamatosan dolgozik. Emiatt elkepzelheto",
   hogy bizonyos fejezetek mar elavultak es aktualizalasra szorulnak.
   Amennyiben ugy erezzu:k, hogy segiteni tudnank a projekt
   munkajaban, ertesitsu:k a fejleszto"ket a FreeBSD Dokumentacios
   Projekt levelezesi lista cimen! Ezen dokumentum legfrissebb
   valtozata mindig elerheto" a FreeBSD honlapjarol (a korabbi
   valtozatok pedig megtalalhatoak a http://docs.FreeBSD.org/doc/
   cimen). Ezenkivu:l meg rengeteg mas formatumban es to:mo:ritve is
   leto:ltheto" a FreeBSD FTP szerverero"l vagy a tu:ko:roldalak
   egyikero"l. Amennyiben a keziko:nyv nyomtatott valtozatara lenne
   szu:ksegu:nk, megvasarolhatjuk a FreeBSD Mall-bol. Ha pedig
   keresni szeretnenk benne, azt a funkciot itt erhetju:k el.

   Forditotta es a forditast karbantartja: Pali Gabor
   <pgj@FreeBSD.org>

   A dokumentum tovabbadasa forras (SGML DocBook) es feldolgozott
   formaban (SGML, HTML, PDF, PostScript, RTF, stb.) modositassal
   vagy anelku:l a ko:vetkezo" feltetelek mellett lehetseges:

    1. A forraskodnak (SGML DocBook) tartalmaznia kell a fenti
       copyright megjegyzest es a feltetelek ezen listajat, valamint
       a ko:vetkezo" jogi nyilatkozatot, barmifele modositas nelku:l.

    2. Feldolgozott dokumentum tovabbadasakor (mas DTD, PDF,
       PostScript, RTF es mas formatumok) szinten meg kell tartani a
       fenti copyright megjegyzest, a feltetelek listajat, valamint a
       ko:vetkezo" jogi nyilatkozatot a dokumentumban, vagy a
       dokumentumot kisero" anyagokban.

     Fontos: EZT A DOKUMENTUMOT A FREEBSD DOKUMENTACIOS PROJEKT A
     JELEN FORMAJABAN BIZTOSITJA ES LEMOND MINDEN KIFEJEZETT VAGY
     TO:RVENYI SZAVATOSSAGROL, BELEERTVE AZ ELADHATOSAG ES EGY ADOTT
     CELRA VALO ALKALMASSAG SZAVATOSSAGAT. A FREEBSD DOKUMENTACIOS
     PROJEKT SEMMILYEN ESETBEN SEM TEHETO" FELELO"SSE A DOKUMENTUM
     HASZNALATABOL EREDO" BARMILYEN KO:ZVETLEN, KO:ZVETETT JARULEKOS,
     KU:LO:NLEGES, BU:NTETO" VAGY KO:VETKEZMENYES KARERT
     (BELEFOGLALVA, DE NEM KORLATOZVA A HELYETTESITO" JAVAK
     BESZERZESERE, HASZON, ADAT VAGY PROFIT ELVESZTESERE, ILLETVE
     U:ZLETI FORGALOM KIESESERE) VAGY EGYEB MAS ESETBEN SEM, AMIKOR
     ERO"S TEHER VAGY KIN (HANYAGSAG VAGY EGYEB) ERED A DOKUMENTUM
     AKARMIFELE FELHASZNALASABOL, MEG HA ERRE KU:LO:N FEL IS HIVTUK a
     FIGYELMET.

   A FreeBSD a FreeBSD Foundation bejegyzett vedjegye.

   A 3Com es HomeConnect a 3Com Corporation bejegyzett vedjegyei.

   A 3ware es Escalade a 3ware Inc. bejegyzett vedjegyei.

   Az ARM az ARM Limited bejegyzett vedjegye.

   A Adaptec az Adaptec, Inc. bejegyzett vedjegye.

   Az Adobe, Acrobat, Acrobat Reader, es PostScript az Adobe Systems
   Incorporated bejegyzett vedjegyei, vagy vedjegyei az Egyesu:lt
   Allamokban es/vagy mas orszagokban.

   Az Apple, AirPort, FireWire, Mac, Macintosh, Mac OS, Quicktime, es
   TrueType az Apple Computer, Inc., bejegyzett vedjegyei az
   Egyesu:lt Allamokban es mas orszagokban.

   A Corel es WordPerfect a Corel Corporation es/vagy
   leanyvallalatainak bejegyzett vedjegye Kanadaban, az Egyesu:lt
   Allamokban es/vagy mas orszagokban.

   A Sound Blaster a Creative Technology Ltd. vedjegye az Egyesu:lt
   Allamokban es/vagy mas orszagokban.

   A CVSup John D. Polstra bejegyzett vedjegye.

   A Heidelberg, Helvetica, Palatino, es Times Roman a Heidelberger
   Druckmaschinen AG bejegyzett vedjegyei, vagy vedjegyei az
   Egyesu:lt Allamokban es mas orszagokban.

   Az IBM, AIX, EtherJet, Netfinity, OS/2, PowerPC, PS/2, S/390 es
   ThinkPad az International Business Machines Corporation vedjegyei
   az Egyesu:lt Allamokban, mas orszagokban, vagy mindketto"ben.

   Az IEEE, POSIX es 802 az Institute of Electrical and Electronics
   Engineers, Inc. bejegyzett vedjegyei az Egyesu:lt Allamokban.

   Az Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium es
   Xeon az Intel Corporation vagy leanyvallalatainak vedjegyei vagy
   bejegyzett vedjegyei az Egyesu:lt Allamokban es mas orszagokban.

   Az Intuit es Quicken az Intuit Inc., vagy valamely
   leanyvallalatanak bejegyzett vedjegyei es/vagy bejegyzett
   szervizmarkai az Egyesu:lt Allamokban es mas orszagokban.

   A Linux Linus Torvalds bejegyzett vedjegye.

   Az LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID es Mylex az LSI
   Logic Corp. vedjegyei vagy bejegyzett vedjegyei.

   Az M-Systems es DiskOnChip az M-Systems Flash Disk Pioneers, Ltd.
   vedjegyei vagy bejegyzett vedjegyei.

   A Macromedia, Flash es Shockwave a Macromedia, Inc. vedjegyei
   es/vagy bejegyzett vedjegyei az Egyesu:lt Allamokban es/vagy mas
   orszagokban.

   A Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media
   es Windows NT a Microsoft Corporation bejegyzett veacute;djegyei,
   vagy vedjegyei az Egyesu:lt Allamokban es/vagy mas orszagokban.

   A Netscape es a Netscape Navigator a Netscape Communications
   Corporation bejegyzett vedjegyei az Egyesu:lt Allamokban es mas
   orszagokban.

   A GateD es NextHopa NextHop bejegyzett es nem bejegyzett vedjegyei
   az Egyesu:lt Allamokban es mas orszagokban.

   A Motif, OSF/1 es UNIX a The Open Group bejegyzett vedjegyei, az
   IT DialTone es a The Open Group pedig vedjegyei az Egyesu:lt
   allamokban es/vagy mas orszagokban.

   Az Oracle az Oracle Corporation bejegyzett vedjegye.

   A PowerQuest es PartitionMagic a PowerQuest Corporation bejegyzett
   vedjegyei az Egyesu:lt Allamokban es/vagy mas orszagokban.

   A RealNetworks, RealPlayer es RealAudio a RealNetworks, Inc.
   bejegyzett vedjegyei.

   A Red Hat es RPM a Red Hat, Inc. vedjegyei vagy bejegyzett
   vedjegyei az Egyesu:lt Allamokban es mas orszagokban.

   A SAP, R/3 es mySAP a SAP AG vedjegyei vagy bejegyzett vedjegyei
   Nemetorszagban e sok mas orszagban is vilagszerte.

   A Sun, Sun Microsystems, Java, Java Virtual Machine, JavaServer
   Pages, JDK, JRE, JSP, JVM, Netra, Solaris, StarOffice, Sun Blade,
   Sun Enterprise, Sun Fire, SunOS, Ultra es VirtualBox a Sun
   Microsystems, Inc. vedjegyei vagy bejegyzett vedjegyei az
   Egyesu:lt Allamokban es mas orszagokban.

   A Symantec es Ghost a Symantec Corporation bejegyzett vedjegyei az
   Egyesu:lt Allamokban es mas orszagokban.

   A MATLAB a The MathWorks, Inc. bejegyzett vedjegye.

   A SpeedTouch a Thomson vedjegye.

   A U.S. Robotics es Sportster a U.S. Robotics Corporation.
   bejegyzett vedjegyei.

   A VMware a VMware, Inc. vedjegye.

   A Waterloo Maple es Maple a Waterloo Maple Inc. vedjegyei vagy
   bejegyzett vedjegyei.

   A Mathematica a Wolfram Research, Inc. vedjegye.

   Az XFree86 az XFree86 Project, Inc. vedjegye.

   Az Ogg Vorbis es Xiph.Org a Xiph.Org vedjegyei.

   A gyartok es terjeszto"k altal hasznalt megnevezesek ko:zu:l sok
   vedjegy jogot ko:vetel. Ahol ilyen megnevezes tu"nik fel ebben a
   dokumentumban, es a FreeBSD Projektnek tudomasa volt a
   vedjegyro"l, a megnevezest a "(TM)" vagy a "(R)" szimbolum
   ko:veti.

     --------------------------------------------------------------

   Tartalom

   Elo"szo

   I. Bevezetes

                1. Bemutatkozas

                             1.1. Attekintes

                             1.2. U:dvo:zo:lju:k a FreeBSD-ben!

                             1.3. A FreeBSD Projektro"l

                2. A FreeBSD telepitese

                             2.1. Attekintes

                             2.2. Hardverko:vetelmenyek

                             2.3. A telepites elo"tt elvegzendo"
                             feladatok

                             2.4. A telepites megkezdese

                             2.5. A sysinstall bemutatasa

                             2.6. Lemezteru:let lefoglalasa

                             2.7. A telepitendo" o:sszetevo"k
                             kivalasztasa

                             2.8. A telepites eszko:zenek
                             kivalasztasa

                             2.9. A telepites veglegesitese

                             2.10. A telepites utan

                             2.11. Hibakereses

                             2.12. Telepitesi utmutato haladoknak

                             2.13. Sajat telepito"eszko:z elkeszitese

                3. A UNIX alapjai

                             3.1. Attekintes

                             3.2. Virtualis konzolok es terminalok

                             3.3. Engedelyek

                             3.4. A ko:nyvtarak elrendezese

                             3.5. A lemezek szervezese

                             3.6. Allomanyrendszerek csatlakoztatasa
                             es levalasztasa

                             3.7. Folyamatok

                             3.8. Demonok, jelzesek es a futo
                             programok leallitasa

                             3.9. Parancsertelmezo"k

                             3.10. Szo:vegszerkeszto"k

                             3.11. Eszko:zo:k es eszko:zleirok

                             3.12. Binaris formatumok

                             3.13. Bo"vebben olvashatunk...

                4. Alkalmazasok telepitese: csomagok es portok

                             4.1. Attekintes

                             4.2. Az alkalmazasok telepitesenek
                             o:sszefoglalasa

                             4.3. A szamunkra szu:kseges alkalmazasok
                             felkutatasa

                             4.4. A csomagrendszer hasznalata

                             4.5. A Portgyu"jtemeny hasznalata

                             4.6. Telepites utani teendo"k

                             4.7. Teendo" a seru:lt portokkal

                5. Az X Window System

                             5.1. Attekintes

                             5.2. Az X attekintese

                             5.3. Az X11 telepitese

                             5.4. Az X11 beallitasa

                             5.5. Betu"tipusok hasznalata az X11-ben

                             5.6. Az X bejelentkezteto" kepernyo"je

                             5.7. Munkako:rnyezetek

   II. Gyakori feladatok

                6. Asztali alkalmazasok

                             6.1. Attekintes

                             6.2. Bo:ngeszo"k

                             6.3. Irodai eszko:zo:k

                             6.4. Dokumentum-megjelenito"k

                             6.5. Penzu:gyi szoftverek

                             6.6. O:sszefoglalas

                7. Multimedia

                             7.1. Attekintes

                             7.2. A hangkartya beallitasa

                             7.3. MP3

                             7.4. Videok lejatszasa

                             7.5. TV kartyak beallitasa

                             7.6. Lapolvasok

                8. A FreeBSD rendszermag testreszabasa

                             8.1. Attekintes

                             8.2. Miert keszitsu:nk sajat
                             rendszermagot?

                             8.3. A rendszeru:nkben levo" hardverek
                             o:sszeszedese

                             8.4. Meghajtok, alrendszerek es modulok

                             8.5. Sajat rendszermag keszitese es
                             telepitese

                             8.6. A konfiguracios allomany

                             8.7. Ha valamilyen hiba to:rtenne

                9. Nyomtatas

                             9.1. Attekintes

                             9.2. Bevezetes

                             9.3. Kezdeti beallitasok

                             9.4. Magasszintu" nyomtatobeallitas

                             9.5. A nyomtatok hasznalata

                             9.6. Mas nyomtatasi rendszerek

                             9.7. Hibakereses

                10. Binaris Linux kompatibilitas

                             10.1. Attekintes

                             10.2. Telepites

                             10.3. A Mathematica(R) telepitese

                             10.4. A Maple(TM) telepitese

                             10.5. A MATLAB(R) telepitese

                             10.6. Az Oracle(R) telepitese

                             10.7. Az SAP(R) R/3(R) telepitese

                             10.8. Temak haladoknak

   III. Rendszeradminisztracio

                11. Beallitas es finomhangolas

                             11.1. Attekintes

                             11.2. Kezdeti beallitasok

                             11.3. A mag beallitasa

                             11.4. Az alkalmazasok beallitasa

                             11.5. Szolgaltatasok inditasa

                             11.6. A cron segedprogram beallitasa

                             11.7. Az rc hasznalata FreeBSD alatt

                             11.8. A halozati kartyak beallitasa

                             11.9. Virtualis cimek

                             11.10. Konfiguracios allomanyok

                             11.11. Finomhangolas a sysctl
                             hasznalataval

                             11.12. A lemezek finomhangolasa

                             11.13. A rendszermag korlatainak
                             finomhangolasa

                             11.14. A lapozoteru:let bo"vitese

                             11.15. Energia- es ero"forrasgazdalkodas

                             11.16. A FreeBSD ACPI tamogatasanak
                             hasznalata es nyomonko:vetese

                12. A FreeBSD rendszerinditasi folyamata

                             12.1. Attekintes

                             12.2. A rendszerinditas problemaja

                             12.3. A boot manager es az indulas
                             fokozatai

                             12.4. Kapcsolat a rendszermaggal a
                             rendszerinditas folyaman

                             12.5. Eszko:z utmutatok (device.hints)

                             12.6. Init: A folyamatiranyitas
                             elinditasa

                             12.7. A leallitasi folyamat

                13. Felhasznalok es hozzaferesek alapveto" kezelese

                             13.1. Attekintes

                             13.2. Bevezetes

                             13.3. Az adminisztratori hozzaferes

                             13.4. Rendszerhozzaferesek

                             13.5. Felhasznaloi hozzaferesek

                             13.6. A hozzaferesek modositasa

                             13.7. A felhasznalok korlatozasa

                             13.8. Csoportok

                14. Biztonsag

                             14.1. Attekintes

                             14.2. Bevezetes

                             14.3. A FreeBSD vedelme

                             14.4. DES, Blowfish, MD5 es a Crypt

                             14.5. Egyszeri jelszavak

                             14.6. A TCP kapcsolatok burkolasa

                             14.7. KerberosIV

                             14.8. Kerberos5

                             14.9. OpenSSL

                             14.10. VPN IPsec felett

                             14.11. OpenSSH

                             14.12. Az allomanyrendszerek
                             hozzafereseit vezerlo" listak

                             14.13. A ku:lso" programok biztonsagi
                             problemainak figyelese

                             14.14. A FreeBSD biztonsagi
                             figyelmeztetesei

                             14.15. A futo programok nyilvantartasa

                15. A jail alrendszer

                             15.1. Attekintes

                             15.2. A jail alrendszerhez kapcsolodo
                             fogalmak

                             15.3. Bevezetes

                             15.4. A jailek letrehozasa es vezerlese

                             15.5. Finomhangolas es karbantartas

                             15.6. A jailek alkalmazasa

                16. Ko:telezo" hozzaferes-vezerles

                             16.1. Attekintes

                             16.2. A fejezet fontosabb fogalmai

                             16.3. A MAC ismertetese

                             16.4. Bo"vebben a MAC cimkeiro"l

                             16.5. A vedelem megtervezese

                             16.6. A modulok beallitasa

                             16.7. A seeotheruids MAC-modul

                             16.8. A bsdextended MAC-modul

                             16.9. Az ifoff MAC-modul

                             16.10. A portacl MAC-modul

                             16.11. A partition MAC-modul

                             16.12. A to:bbszintu" biztonsagi
                             MAC-modul

                             16.13. A Biba MAC-modul

                             16.14. A LOMAC MAC-modul

                             16.15. A Nagios elzarasa a MAC
                             rendszerrel

                             16.16. A felhasznalok korlatozasa

                             16.17. A hibak elharitasa a MAC
                             rendszerben

                17. Biztonsagi esemenyek vizsgalata

                             17.1. Attekintes

                             17.2. A fejezet fontosabb fogalmai

                             17.3. A vizsgalat tamogatasanak
                             telepitese

                             17.4. A vizsgalat beallitasa

                             17.5. A vizsgalati alrendszer hasznalata

                18. Hattertarak

                             18.1. Attekintes

                             18.2. Az eszko:zo:k elnevezesei

                             18.3. Lemezek hozzaadasa

                             18.4. RAID

                             18.5. USB taroloeszko:zo:k

                             18.6. Lezeres taroloeszko:zo:k (CD-k)
                             letrehozasa es hasznalata

                             18.7. Lezeres taroloeszko:zo:k (DVD-k)
                             letrehozasa es hasznalata

                             18.8. Hajlekonylemezek letrehozasa es
                             hasznalata

                             18.9. Szalagok letrehozasa es hasznalata

                             18.10. Biztonsagi mentes
                             hajlekonylemezekre

                             18.11. Mentesi strategiak

                             18.12. Alapveto" tudnivalok a biztonsagi
                             mentesro"l

                             18.13. Halozat, memoria es allomany
                             alapu allomanyrendszerek

                             18.14. Az allomanyrendszerek
                             pillanatkepei

                             18.15. Az allomanyrendszerek kvotai

                             18.16. A lemezparticiok titkositasa

                             18.17. A lapozoteru:let titkositasa

                19. GEOM: A modularis lemezszervezo" rendszer

                             19.1. Attekintes

                             19.2. A GEOM bemutatasa

                             19.3. RAID0 - Csikozas

                             19.4. RAID1 - Tu:kro:zes

                             19.5. Eszko:zo:k halozati illesztese a
                             GEOM-ban

                             19.6. A lemezes eszko:zo:k cimkezese

                             19.7. Naplozo UFS GEOM-on keresztu:l

                20. Tamogatott allomanyrendszerek

                             20.1. Attekintes

                             20.2. A Z allomanyrendszer (ZFS)

                21. A Vinum ko:tetkezelo"

                             21.1. Attekintes

                             21.2. Kicsik a lemezeink

                             21.3. A hozzaferesi ido"k szu"k
                             keresztmetszetei

                             21.4. Adatintegritas

                             21.5. A Vinum objektumai

                             21.6. Peldak

                             21.7. Az objektumok elnevezese

                             21.8. A Vinum beallitasa

                             21.9. Rendszerinditas Vinum-ko:tetro"l

                22. Virtualizacio

                             22.1. Attekintes

                             22.2. A FreeBSD mint vendeg

                             22.3. A FreeBSD mint gazda

                23. Honositas: Az I18N/L10N hasznalata es beallitasa

                             23.1. Attekintes

                             23.2. Az alapok

                             23.3. A honositas hasznalata

                             23.4. I18N programok forditasa

                             23.5. A FreeBSD honositasa adott
                             nyelvekre

                24. A FreeBSD frissitese es frissen tartasa

                             24.1. Attekintes

                             24.2. A FreeBSD frissitese

                             24.3. A Portgyu"jtemeny frissitese a
                             Portsnap hasznalataval

                             24.4. A dokumentacio frissitese

                             24.5. A fejleszto"i ag ko:vetese

                             24.6. A forras szinkronizalasa

                             24.7. Az alaprendszer ujraforditasa

                             24.8. A forrasok ko:vetese to:bb geppel

                25. DTrace

                             25.1. Attekintes

                             25.2. Elteresek az implementacioban

                             25.3. A DTrace tamogatasanak
                             engedelyezese

                             25.4. A DTrace hasznalata

                             25.5. A D nyelv

   IV. Halozati kommunikacio

                26. Soros vonali kommunikacio

                             26.1. Attekintes

                             26.2. Bevezetes

                             26.3. Terminalok

                             26.4. Betarcsazos szolgaltatasok

                             26.5. A betarcsazos szolgaltatasok
                             hasznalata

                             26.6. A soros vonali konzol beallitasa

                27. A PPP es a SLIP

                             27.1. Attekintes

                             27.2. A felhasznaloi PPP alkalmazasa

                             27.3. A rendszerszintu" PPP alkalmazasa

                             27.4. PPP kapcsolatok hibaelharitasa

                             27.5. A PPP hasznalata Ethernet felett
                             (PPPoE)

                             27.6. PPP ATM felett (PPPoA)

                             27.7. A SLIP hasznalata

                28. Elektronikus levelezes

                             28.1. Attekintes

                             28.2. Az elektronikus levelezes
                             hasznalata

                             28.3. A sendmail beallitasa

                             28.4. A leveltovabbito u:gyno:k
                             megvaltoztatasa

                             28.5. A hibak elharitasa

                             28.6. Komolyabb temak

                             28.7. SMTP es az UUCP

                             28.8. Csak ku:ldes beallitasa

                             28.9. Levelezes betarcsazos kapcsolattal

                             28.10. Az SMTP hitelesitese

                             28.11. Levelezo" kliensek

                             28.12. A fetchmail hasznalata

                             28.13. A procmail hasznalata

                29. Halozati szerverek

                             29.1. Attekintes

                             29.2. Az inetd "szuperszerver"

                             29.3. A halozati allomanyrendszer (NFS)

                             29.4. Halozati informacios rendszer
                             (NIS/YP)

                             29.5. A halozat automatikus beallitasa
                             (DHCP)

                             29.6. Nevfeloldas (DNS)

                             29.7. Az Apache webszerver

                             29.8. Allomanyok atvitele (FTP)

                             29.9. Allomany- es nyomtatasi
                             szolgaltatasok Microsoft Windows
                             kliensek szamara (Samba)

                             29.10. Az orak egyeztetese az NTP
                             hasznalataval

                             29.11. Tavoli gepek naplozasa syslogd
                             hasznalataval

                30. Tu"zfalak

                             30.1. Bevezetes

                             30.2. Ro:viden a tu"zfalakrol

                             30.3. Tu"zfalak

                             30.4. Az OpenBSD csomagszu"ro"je (PF) es
                             az ALTQ

                             30.5. Az IPFILTER (IPF) tu"zfal

                             30.6. IPFW

                31. Egyeb halado halozati temak

                             31.1. Attekintes

                             31.2. Atjarok es az utvalasztas

                             31.3. Vezetek nelku:li halozatok

                             31.4. Bluetooth

                             31.5. Halozati hidak

                             31.6. Linkek o:sszefu"zese es
                             hibatu"rese

                             31.7. Lemez nelku:li mu"ko:des

                             31.8. ISDN

                             31.9. Halozati cimforditas

                             31.10. Parhuzamos vonali IP (PLIP)

                             31.11. Az IPv6

                             31.12. Az Aszinkron adatatviteli mod
                             (ATM)

                             31.13. A Ko:zo:s cim redundancia
                             protokoll (CARP)

   V. Fu:ggelek

                A. A FreeBSD beszerzese

                             A.1. CD es DVD kiadok

                             A.2. FTP oldalak

                             A.3. BitTorrent

                             A.4. Anonim CVS

                             A.5. A CTM hasznalata

                             A.6. A CVSup hasznalata

                             A.7. CVS cimkek

                             A.8. AFS oldalak

                             A.9. Rsync oldalak

                B. Irodalomjegyzek

                             B.1. A FreeBSD-ro"l szolo ko:nyvek es
                             folyoiratok

                             B.2. Felhasznaloi keziko:nyvek

                             B.3. Rendszeradminisztratori
                             keziko:nyvek

                             B.4. Programozoi keziko:nyvek

                             B.5. Az operacios rendszerek belso"
                             mu"ko:desero"l

                             B.6. Biztonsagrol szolo irasok

                             B.7. Hardverrel foglalkozo irasok

                             B.8. UNIX to:rtenelem

                             B.9. Magazinok es folyoiratok

                C. Forrasok az interneten

                             C.1. Levelezesi listak

                             C.2. Usenet hircsoportok

                             C.3. Vilaghalos szolgaltatasok

                             C.4. E-mail cimek

                D. PGP-kulcsok

                             D.1. Tisztsegviselo"k

                             D.2. A Core Team tagjai

                             D.3. Fejleszto"k

   A FreeBSD-s szakkifejezesek gyu"jtemenye

   Vegszo

   A tablazatok listaja

   2-1. Pelda egy eszko:zleltarra

   2-2. Az elso" lemez particioinak kiosztasa

   2-3. To:bb lemez particioinak kiosztasa

   2-4. FreeBSD 6.X es 7.X ISO image-ek nevei es jelentesei

   3-1. Lemezes eszko:zo:k kodjai

   18-1. A fizikai lemezek elnevezesenek szabalyai

   21-1. Vinum erezesek

   26-1. A DB-25 DB-25 ko:zti null-modem kabel

   26-2. A DB-9 DB-9 ko:zti null-modem kabel

   26-3. DB-9 DB-25 ko:zti null-modem kabel

   26-4. A jelek neve

   31-1. A parhuzamos kabel halozati hasznalatra alkalmas beko:tese

   31-2. Fenntartott IPv6 cimek

   Az abrak listaja

   2-1. FreeBSD rendszerbeto:lto" menu:je

   2-2. Pelda az eszko:zkereses eredmenyeire

   2-3. Az orszag kivalasztasa

   2-4. Kilepes a sysinstall programbol

   2-5. A "Usage" kivalasztasa a sysinstall fo"menu:jeben

   2-6. A dokumentacios menu: kivalasztasa

   2-7. A sysinstall dokumentacios menu:je

   2-8. A sysinstall fo"menu:je

   2-9. A sysinstall billentyu"kiosztast beallito menu:je

   2-10. A sysinstall fo"menu:je

   2-11. A sysinstall beallitasai

   2-12. Egy szabvanyos telepites megkezdese

   2-13. A meghajto kivalasztasa az FDisk szamara

   2-14. Atlagos Fdisk particiok szerkesztes elo"tt

   2-15. Particionalas az Fdisk "Using Entire Disk" funkciojaval

   2-16. A sysinstall rendszervalasztokat tartalmazo menu:je

   2-17. Kilepes a meghajtovalaszto menu:bo"l

   2-18. A sysinstall Disklabel particioszerkeszto"je

   2-19. A sysinstall Disklabel particioszerkeszto"je,
   alapertelmezett ertekekkel

   2-20. Szabad hely a gyo:kerparticion

   2-21. A gyo:kerparticio meretenek szerkesztese

   2-22. A gyo:kerparticio tipusanak kivalasztasa

   2-23. A gyo:ker csatlakozasi pontjanak megadasa

   2-24. A Disklabel particioszerkeszto"

   2-25. A terjesztesek kivalasztasa

   2-26. A terjesztesek telepitesenek megero"sitese

   2-27. A telepitesi eszko:z kivalasztasa

   2-28. Az Ethernet-eszko:z kivalasztasa

   2-29. Az ed0 halozati beallitasa

   2-30. Az inetd.conf modositasa

   2-31. Az anonim FTP alapbeallitasai

   2-32. Az FTP ko:szo:nto" u:zenetenek szerkesztese

   2-33. Az exports szerkesztese

   2-34. A rendszerkonzol beallitasai

   2-35. A kepernyo"kimelo" beallitasai

   2-36. A kepernyo"kimelo"ho:z tartozo ido"korlat beallitasa

   2-37. Kilepes a rendszerkonzol beallito menu:jebo"l

   2-38. A terseg kivalasztasa

   2-39. Az orszag kivalasztasa

   2-40. Az ido"zona kivalasztasa

   2-41. Az eger altal hasznalt protokoll tipusanak beallitasa

   2-42. Az eger protokolljanak beallitasa

   2-43. Az eger portjanak beallitasa

   2-44. Az eger portjanak kivalasztasa

   2-45. Az egerdemon engedelyezese

   2-46. Az egerdemon kiprobalasa

   2-47. A csomagok kategoriajanak kivalasztasa

   2-48. Csomag kivalasztasa

   2-49. Csomagok telepitese

   2-50. Csomagok telepitesenek megero"sitese

   2-51. Felhasznalok kivalasztasa

   2-52. A felhasznalo adatainak megadasa

   2-53. Kilepes a felhasznalok es csoportok menu:jebo"l

   2-54. Kilepes a telepito"bo"l

   2-55. A halozati beallitasok menu:jenek felso" szintje

   2-56. Az alapertelmezett MTA kivalasztasa

   2-57. Az Ntpdate beallitasa

   2-58. A halozati beallitasok menu:jenek also szintje

   21-1. Az o:sszefu"zo:tt szervezesi mod

   21-2. A csikozott szervezesi mod

   21-3. A RAID-5 szervezesi mod

   21-4. Egyszeru" Vinum-ko:tet

   21-5. Tu:kro:zo:tt Vinum-ko:tet

   21-6. Csikozott Vinum-ko:tet

   21-7. Tu:kro:zo:tt, csikozott Vinum-ko:tet

   A peldak listaja

   2-1. Meglevo" particio hasznalata a meret megvaltoztatasa nelku:l

   2-2. Meglevo" particio zsugoritasa

   3-1. Peldak lemezek, slice-ok es particiok neveire

   3-2. Egy lemez kialakitasanak sablonja

   4-1. Csomagok leto:ltese manualisan es telepitese lokalisan

   11-1. Lapozoallomany letrehozasa FreeBSD-ben

   12-1. A boot0 munkaban

   12-2. A boot2 mu"ko:des ko:zben

   12-3. Nem biztonsagos konzol megadasa az /etc/ttys-ben

   13-1. Felhasznalo hozzaadasa a FreeBSD-ben

   13-2. rmuser Hozzaferesek interaktiv eltavolitasa

   13-3. A chpass interaktiv hasznalata adminisztratorkent

   13-4. A chpass interaktiv hasznalata normal felhasznalokent

   13-5. A jelszavunk megvaltoztatasa

   13-6. Egy masik felhasznalo jelszavanak megvaltoztatasa
   adminisztratorkent

   13-7. A csoportok tagjainak beallitasa a pw(8) hasznalataval

   13-8. A csoport tagjainak beallitasa a pw(8) hasznalataval

   13-9. Egy uj tag felvetele a csoportba a pw(8) hasznalataval

   13-10. A id(1) hasznalata a csoporttagsag megallapitasara

   14-1. Biztonsagos tunnel letrehozasa SSH-val SMTP-hez

   18-1. A dump hasznalata az ssh alkalmazassal

   18-2. A dump hasznalata az ssh alkalmazassal, az RSH ko:rnyezeti
   valtozo beallitasaval

   18-3. A rendszerindito lemezek letrehozasahoz hasznalhato szkript

   18-4. Egy meglevo" allomanyrendszer image-enek csatlakoztatasa az
   mdconfig paranccsal

   18-5. Uj allomany alapu lemez letrehozasa az mdconfig paranccsal

   18-6. Allomany alapu lemezek beallitasa es csatlakoztatasa az
   mdmfs paranccsal

   18-7. Uj memoria alapu lemez letrehozasa az mdconfig paranccsal

   18-8. Uj memoria alapu lemez letrehozasa az mdmfs paranccsal

   19-1. Particiok cimkezese a rendszerindito lemezen

   26-1. Terminalok felvetele az /etc/ttys allomanyba

   28-1. A sendmail elereset szabalyozo adatbazis beallitasa

   28-2. Virtualis postaladak

   28-3. Pelda a virtualis tartomanyok lekepezesere

   29-1. Az inetd konfiguracios allomanyanak ujraolvasasa

   29-2. Egy exportalt allomanyrendszer csatlakoztatasa az amd
   hasznalataval

   29-3. A Django telepitese az Apache, mod_python3 es a PostgreSQL
   hasznalataval

   29-4. Az Apache beallitasa a Django es mod_python hasznalatahoz

   31-1. LACP alapu o:sszefu"zes egy Cisco(R) switch-csel

   31-2. A hibatu"res beallitasa

   31-3. Egy otthoni vagy egy fiokbeli halozat

   31-4. Az igazgatosagi iroda vagy egy masik helyi halozat

   A-1. Valami (az ls(1)) kikerese a -CURRENT agbol

   A-2. Az src/ fa kikerese SSH-n keresztu:l

   A-3. Az ls(1) 6-STABLE agban szereplo" valtozatanak kikerese

   A-4. Az ls(1) valtozasainak (Unified Diff formatumu) listazasa

   A-5. A hasznalhato modulok nevenek kideritese

     --------------------------------------------------------------

                                Elo"szo

Kiknek szanjuk ezt a ko:nyvet

   A FreeBSD-t meg nem ismero"k felfedezhetik, hogy a ko:nyv elso"
   resze a FreeBSD telepitesenek folyamatan vezeti keresztu:l a
   felhasznalot, valamint erinto"legesen bemutatja az ezt alatamaszto
   UNIX(R)-os alapfogalmakat es szabalyokat. Ennek a resznek a
   vegigjarasa nem kivan to:bbet, csupan egy kis felfedezo" kedvet,
   illetve a menet ko:zben bemutatott uj fogalmak befogadasat.

   Ha tuljutottunk rajta, a keziko:nyv masodik, joval terjedelmesebb
   resze a FreeBSD-t hasznalo rendszergazdak szamara nyujt mindenfele
   temaban minden reszletre kiterjedo" referenciat. Ezek ko:zu:l
   egyes fejezetek elvarnak nemi elo"zetes felkeszu:lest, amelyet a
   minden fejezet attekinteseben emliteni is fogunk.

   Tovabbi informaciokert olvassuk at a B Fu:ggeleket.

Valtoztatasok a harmadik kiadas ota

   A keziko:nyv jelenleg interneten elerheto" valtozata szamtalan
   o:nkentes altal az utobbi 10 evben vegzett egyu:ttes
   ero"fesziteseinek eredmenyeit tu:kro:zi. A 2004-ben ket ko:tetben
   megjelentetett harmadik kiadas ota a ko:vetkezo" fontosabb
   valtozasok to:rtentek:

     * 25 fejezet: keszu:lt egy uj fejezet a DTrace nevu"
       teljesitmeny-elemzo" eszko:zro"l.

     * 20 fejezet: ebben a fejezetben a FreeBSD es a ku:lo:nbo:zo"
       mas rendszerekhez fejlesztett allomanyrendszerek viszonyat
       mutatjuk be, to:bbek a Sun(TM) ZFS megoldasat.

     * 17 fejezet: ez a fejezet FreeBSD uj biztonsagi fejleszteseit
       foglalja o:ssze es mutatja be a hasznalatukat.

     * 22 fejezet: ebben az uj fejezetben a FreeBSD rendszerhez es
       rajta elerheto" ku:lo:nbo:zo" virtualizacios technologiakrol
       szolunk.

Valtoztatasok a masodik kiadas (2004) ota

   A harmadik kiadas a FreeBSD Dokumentacios Projekt tagjainak ket
   evi kemeny munkajanak gyu:mo:lcse. A nyomtatott valtozat mar olyan
   nagyra no"tt, hogy ket ku:lo:n ko:tetben kellett kiadnunk. Az
   alabbi fontosabb valtoztatasok jelentek meg ebben az uj kiadasban:

     * 11 fejezet: a beallitasra es finomhangolasra vonatkozo
       reszeket bo"vitettu:k az ACPI energia- es ero"forras
       gazdalkodasrol szolo reszekkel, a cron rendszerprogrammal,
       illetve meg to:bb, a rendszermag finomhangolasat elo"segito"
       opcio leirasaval.

     * 14 fejezet: a biztonsagrol szolo reszt bo"vitettu:k a
       virtualis maganhalozatokrol (VPN-ekro"l), allomanyrendszeri
       hozzaferes-vezerlesi listakrol (ACL-ek) szolo elemekkel,
       valamint biztonsagtechnikai tanacsokkal.

     * 16 fejezet: a ko:telezo" hozzaferes-vezerlesro"l (MAC-ro"l)
       szolo fejezet teljesen uj ebben a kiadasban. Bemutatja, mi is
       az a MAC es hogyan hasznosithato egy FreeBSD-s rendszer
       biztonsagossa teteleben.

     * 18 fejezet: a hattertarakat tartalmazo reszt bo"vitettu:k az
       USB-tarakrol, allomanyrendszeri pillanatkepeiro"l,
       lemezkvotakrol, allomany- es halozat alapu
       allomanyrendszerekro"l, tovabba a titkositott particiokrol
       szolo reszekkel.

     * 21 fejezet: a Vinum egy uj fejezet ebben a kiadasban.
       Bemutatja a Vinum logikaiko:tet-kezelo" hasznalatat, aminek
       segitsegevel eszko:zfu:ggetlen modon hozhatunk letre logikai
       lemezeket, szoftveres RAID-0, RAID-1 es RAID-5
       konfiguraciokat.

     * Bekeru:lt egy hibaelharitasrol szolo resz a 27 fejezet PPP es
       SLIP leirasahoz.

     * 28 fejezet: az elektronikus levelezest ismerteto" reszt
       bo"vitettu:k a ku:lo:nfele leveltovabbito rendszerekro"l, az
       SMTP hitelesitesro"l, UUCP protokollrol, a fetchmail es
       procmail programokrol szolo elemekkel, valamint egyeb,
       haladokat megcelzo temakkal.

     * 29 fejezet: a halozati szervereket ismerteto" resz egy
       teljesen uj fejezet ebben a kiadasban. Benne megtalalhato az
       Apache HTTP szerver, az ftpd szerver, illetve a Microsoft(R)
       Windows(R)-os kliensek szamara megfelelo" Samba szerver
       beallitasa. Az ertheto"seg kedveert egyes reszek atkeru:ltek
       ide a 31 fejezet, vagyis a halado halozati temakat targyalo
       fejezetbo"l.

     * 31 fejezet: a halado halozati temakat tartalmazo reszt
       kiegeszitettu:k a FreeBSD es a Bluetooth(R) eszko:zo:k
       kapcsolatarol, a vezetek nelku:li halozatokrol es az aszinkron
       adatatvitel modrol (ATM-ro"l) szolo ismeretekkel.

     * Letrehoztunk egy szojegyzeket abbol a celbol, hogy a ko:nyvben
       hasznalt definiciok es szakkifejezesek egyetlen ko:zponti
       helyen o:ssze legyenek foglalva.

     * Szamos esztetikai javitast eszko:zo:ltu:nk a ko:nyvben
       talalhato abrakon es tablazatokon.

Valtoztatasok az elso" kiadas (2001) ota

   A masodik kiadas a FreeBSD Dokumentacios Projekt tagjainak ket evi
   komoly munkajanak eredmenye. Az alabbi fontosabb valtoztatasok
   jelennek meg ebben a kiadasban:

     * Bekeru:lt egy teljes targy- es nevmutato.

     * Mindegyik ASCII-abrat grafikusak valtottak fel.

     * Mindegyik fejezet elejere odakeru:lt egy altalanos attekintes,
       ami egy ro:vid o:sszefoglalast ad a fejezet tartalmarol,
       valamint ko:zli az elolvasasahoz szu:kseges ismereteket.

     * A tartalmat felosztottuk logikailag harom reszre: "Bevezetes",
       "Rendszeradminisztracio" es "Fu:ggelek".

     * A 2 fejezetet ("A FreeBSD telepitese") teljesen ujrairtuk es
       sok-sok illusztracio is hozzaadasra keru:lt a ko:nnyebb
       megertes erdekeben.

     * A 3 fejezet ("A UNIX alapjai") kiegeszu:lt a futo
       programokrol, demonokrol es jelzesekro"l szolo tovabbi hasznos
       informaciokkal.

     * A 4 fejezetet ("Alkalmazasok telepitese") bo"vitettu:k a
       binaris csomagkezelesro"l szolo tovabbi ismeretekkel.

     * A 5 fejezet ("Az X Window System") teljes ujrairason ment at,
       aminek folyaman igyekeztu:nk nagyobb hangsulyt helyezni a
       modern asztali technologiak, mint pl. a KDE es GNOME
       XFree86(TM) 4.X-en to:rteno" hasznalatanak leirasara.

     * A 12 fejezet ("A FreeBSD rendszerinditasi folyamata")
       kibo"vu:lt.

     * A 18 fejezet ("Hattertarak") ket, korabban ku:lo:n levo"
       fejezet, a "Lemezek" es "Biztonsagi mentesek"
       o:sszeolvasztasabol jo:tt letre. Ugy ereztu:k, a bennu:k
       helyet kapott temakat sokkal ko:nnyebb ugy megerteni, ha
       egyetlen fejezetben targyaljuk ezeket. Egy (hardveres es
       szoftveres) RAID-ro"l szolo resz is belekeru:lt.

     * A 26 fejezet ("Soros vonali kommunikacio") teljes
       atszervezesre keru:lt, valamint a FreeBSD 4.X/5.X verziokhoz
       igazitottuk.

     * A 27 fejezet ("A PPP es a SLIP") lenyegesen sokat fejlo"do:tt.

     * Szamos uj resz keru:lt a 31 fejezetbe ("Egyeb halado halozati
       temak").

     * A 28 fejezet ("Elektronikus levelezes") kibo"vu:lt a sendmail
       beallitasarol tartalmazo ujabb informaciokkal.

     * A 10 fejezet ("Binaris Linux kompatibilitas") kiegeszu:lt az
       Oracle(R) es a SAP(R) R/3(R) telepiteset bemutato reszekkel.

     * Az alabbi uj temak keru:ltek targyalasra a masodik kiadasban:

          * Beallitas es finomhangolas (11 fejezet)

          * Multimedia (7 fejezet)

A ko:nyv felepitese

   A ko:nyvet negy logikailag elku:lo:nu:lo" reszre osztottuk fel. Az
   elso", Bevezetes cimu" reszben bemutatjuk a FreeBSD telepiteset es
   hasznalatanak alapjait. Elgondolasunk szerint az itt szereplo"
   fejezeteket sorban erdemes elolvasni, esetenkent kihagyni azokat,
   amelyek mar az olvaso szamara ismert temakat dolgoznak fel. A
   masodik, Gyakori feladatok cimu" reszben megismerhetju:k a FreeBSD
   nehany gyakorta hasznalt leheto"seget. Ez a resz, valamint az ezt
   ko:veto" o:sszes to:bbi tetszo"leges sorrendben olvashato.
   Mindegyik fejezet egy ro:vidke o:sszefoglalassal kezdo"dik, amely
   ismerteti, az olvasotol milyen jellegu" tapasztalatokat var el a
   fejezet megertese. Celja, hogy segitsen az olvasonak megtalalni a
   szamara erdekes temakat. A harmadik, Rendszeradminisztracio cimu"
   reszben rendszergazdai feladatokat targyalunk. A negyedik,
   Halozati kommunikacio cimu" reszben halozatok es szerverek
   u:zemeltetesevel kapcsolatos ismereteket foglaltunk o:ssze.
   Vegu:l, az o:to:dik resz tartalmazza a fu:ggeleket es az
   irodalomjegyzeket, hivatkozasokat.

   1 fejezet: Bemutatkozas

           A FreeBSD bemutatkozik az uj felhasznaloknak. Szo esik a
           FreeBSD Projekt to:rtenetero"l, celkitu"zeseiro"l es a
           fejlesztesi modelljero"l.

   2 fejezet: A FreeBSD telepitese

           Vegigvezetju:k a felhasznalot a telepitesi folyamat
           egeszen. Bizonyos rendhagyo kerdesek, mint peldaul a soros
           konzolon keresztu:l to:rteno" telepites is teritekre
           keru:lnek.

   3 fejezet: A UNIX alapjai

           Sorra vesszu:k a FreeBSD operacios rendszer alapveto"
           parancsait es leheto"segeit. Amennyiben mar jartasak
           vagyunk valamilyen szinten a Linux(R) vagy mas UNIX-tipusu
           rendszerek hasznalataban, nyugodtan kihagyhatjuk ezt a
           fejezetet.

   4 fejezet: Alkalmazasok telepitese, csomagok es portok

           Megismerhetju:k, mikent tudunk ku:lso" cegek altal
           fejlesztett alkalmazasokat telepiteni a FreeBSD
           "Portgyu"jtemenyenek" (FreeBSD Ports Collection) vagy a
           megszokott binaris csomagok hasznalatan keresztu:l.

   5 fejezet: Az X Window System

           Altalanos bemutatasra keru:l az X Window System, valamint
           az X11 hasznalata a FreeBSD-n. Ezenkivu:l olvashatunk az
           elterjedtebb munkako:rnyezetekro"l, mint pl. a KDE es a
           GNOME.

   6 fejezet: Asztali alkalmazasok

           Felsoroljuk az ismertebb asztali alkalmazasokat:
           webbo:ngeszo"ket es alkalmazoi programcsomagokat, es
           bemutatjuk, hogyan telepitsu:k ezeket FreeBSD-re.

   7 fejezet: Multimedia

           Megtudhatjuk, hogyan allitsuk be a zene- es
           videolejatszast rendszeru:nko:n. Emellett olvashatunk
           nehany multimedias alkalmazas hasznalatarol is.

   8 fejezet: A FreeBSD rendszermag testreszabasa

           Kifejtju:k, miert lehet szu:ksegu:nk egy uj rendszermag
           konfiguralasara, es reszletesen vegigjarjuk egy
           rendszermag konfiguraciojanak, forditasanak es
           telepitesenek lepeseit.

   9 fejezet: Nyomtatas

           Ismertetju:k, hogyan lehet nyomtatokat hasznalni FreeBSD
           alatt, beleertve a munkalapok keszitesenek mikentjet, a
           nyomtatohasznalat nyilvantartasat es a kezdeti
           beallitasokat.

   10 fejezet: Binaris Linux kompatibilitas

           Megismerhetju:k a FreeBSD binaris Linux kompabilitasahoz
           kapcsolodo leheto"segeket. Ezenfelu:l reszletekre is
           kitero" telepitesi utmutatot talalhatunk ku:lo:nbo:zo"
           nepszeru" linuxos alkalmazasokhoz, mint peldaul az Oracle,
           SAP R/3 es a Mathematica(R).

   11 fejezet: Beallitas es finomhangolas

           Megismerhetju:k a FreeBSD azon parametereit, amelyek
           megfelelo" allitasaval a rendszergazdak a leheto"
           legto:bbet kepesek kihozni FreeBSD rendszeru:kbo"l.
           Ezenkivu:l bemutatasra keru:l a FreeBSD-ben hasznalt
           szamos konfiguracios allomany, valamint hogy ezeket hol
           talalhatjuk meg.

   12 fejezet: A FreeBSD rendszerinditasi folyamata

           Tartalmazza a FreeBSD rendszerinditasi folyamatanak
           leirasat, es elmagyarazza, mikent lehet ezt vezerelni a
           konfiguracios beallitasok segitsegevel.

   13 fejezet: Felhasznalok es hozzaferesek alapveto" kezelese

           Bemutatja a felhasznaloi fiokok letrehozasat es kezeleset.
           Emellett megemliti a felhasznalokra ervenyesitheto"
           ero"forras-megszoritasokat, illetve egyeb fiokkezelesi
           feladatokat.

   14 fejezet: Biztonsag

           Bemutatasra keru:l a FreeBSD rendszeru:nk biztonsagossa
           tetelere alkalmas szamos ku:lo:nfele eszko:z, to:bbek
           ko:zt a Kerberos, IPsec es az OpenSSH.

   15 fejezet: A jail alrendszer

           Megtudhatjuk, hogyan mu"ko:dik az az alkalmazasok
           elszigeteleseert felelo"s jail alrendszer, valamint miben
           emelkedik ki a FreeBSD-ben is megtalalhato hagyomanyos
           "chroot" megoldassal szemben.

   16 fejezet: Ko:telezo" hozzaferes-vezerles

           Megismerhetju:k a ko:telezo" hozzaferes-vezerlest
           (MAC-et), valamint azt, hogyan is tudjuk felhasznalni egy
           FreeBSD-s rendszer biztonsaga erdekeben.

   17 fejezet: Biztonsagi esemenyek vizsgalata

           Kideru:l, mit jelent a FreeBSD-ben az esemenyek
           vizsgalata, illetve mindez hogyan telepitheto",
           konfiguralhato es mikent tudjuk a vizsgalatok adatait
           kielemezni vagy felu:gyelni.

   18 fejezet: Hattertarak

           Bemutatasra keru:l, mikent kezelhetju:k a hattertarolokat
           es allomanyrendszereket a FreeBSD-ben. Ide tartoznak a
           fizikai lemezek, RAID-to:mbo:k, optikai es szalagos
           egysegek, memoria alapu lemezek es a halozati
           allomanyrendszerek.

   19 fejezet: GEOM, a modularis lemezszervezo" rendszer

           Megismerhetju:k a FreeBSD-ben jelenlevo" GEOM alrendszert
           es az altala tamogatott ku:lo:nbo:zo" RAID-szintek
           beallitasat.

   20 fejezet: Tamogatott allomanyrendszerek

           A FreeBSD operacios rendszer szamara nem nativ
           allomanyrendszerekkel foglalkozik, peldaul a Sun Z
           allomanyrendszerevel.

   21 fejezet: A Vinum ko:tetkezelo"

           Megtudhatjuk, hogyan hasznaljuk a Vinumot, a
           logikaiko:tet-kezelo"t, amely eszko:zfu:ggetlen logikai
           lemezeket, szoftveres RAID-0, RAID-1 es RAID-5
           konfiguraciokat biztosit.

   22 fejezet: Virtualizacio

           Tartalmazza a virtualizacios rendszerek altal felkinalt
           leheto"segek bemutatasat es hasznalatat a FreeBSD-vel.

   23 fejezet: Honositas, az I18N/L10N hasznalata es beallitasa

           Bemutatja, hogyan hasznaljuk a FreeBSD-t a rendszer es az
           alkalmazasok szintjen az angoltol eltero" nyelveken.

   24 fejezet: A FreeBSD frissitese es frissen tartasa

           Elmagyarazza, mik az alapveto" ku:lo:nbsegek a
           FreeBSD-STABLE, FreeBSD-CURRENT verziok, valamint a
           FreeBSD kiadasok ko:zo:tt. Bemutatja, mely felhasznalok
           lehetnek azok, akik a legto:bbet tudnak profitalni egy
           fejleszto"i rendszer hasznalatabol, illetve ko:rvonalazza
           ennek folyamatat. Tovabba ro:viden o:sszefoglalja azokat
           az eszko:zo:ket, amelyekkel a felhasznalok frissithetik a
           rendszeru:ket a biztonsagi es kritikus hibak javitasakor.

   25 fejezet: DTrace

           A Sun DTrace eszko:zenek beallitasat es hasznalatat
           mutatja be. A segitsegevel megvalositott dinamikus
           nyomko:vetessel leheto"segu:nk nyilik valos ideju"
           elemzeseken keresztu:l felderiteni a ku:lo:nbo:zo"
           teljesitmenybeli problemakat.

   26 fejezet: Soros vonali kommunikacio

           Kifejti, hogyan csatlakoztassunk terminalt vagy modemet a
           FreeBSD rendszeru:nkho:z, ha behivo vagy betarcsazos
           kapcsolatot szeretnenk letrehozni.

   27 fejezet: A PPP es a SLIP

           Bemutatja, mikent tudjuk PPP-n, SLIP-en es Etherneten
           keresztu:li PPP-vel (PPPoE) o:sszekapcsolni a FreeBSD-t
           tavoli rendszerekkel.

   28 fejezet: Elektronikus levelezes

           Megismerhetju:k egy elektronikus levelezo" szerver
           ku:lo:nfele komponenseit, es elmelyedhetu:nk az egyik
           leghiresebb levelezo"szerver-szoftver, a sendmail
           hasznalataban es felu:letesebb konfiguralasaban.

   29 fejezet: Halozati szerverek

           Reszletekbe meno"en es konfiguracios peldakkal mutatja be,
           mikent tudunk halozati allomanyrendszer kiszolgalonak,
           nevszervernek, halozati informacios rendszer kiszolgalonak
           vagy ido"szinkronizacios szervernek beallitani egy
           FreeBSD-s szamitogepet.

   30 fejezet: Tu"zfalak

           Kifejti a szoftveres tu"zfalak mo:go:tt allo filozofiat,
           valamint reszletesen targyalja a ku:lo:nbo:zo", FreeBSD-n
           elerheto" tu"zfalak konfiguraciojat.

   31 fejezet: Egyeb halado halozati temak

           Feldolgoz szamos halozati temat, beleertve az internet
           kapcsolat helyi halozaton (LAN-on) keresztu:l to:rteno"
           megosztasat to:bb szamitogep ko:zo:tt, halado
           forgalomiranyitasi kerdeseket, vezetek nelku:li halozatok
           beallitasat, Bluetooth, ATM, IPv6 es sok minden massal
           kapcsolatos informaciokat.

   A Fu:ggelek: A FreeBSD beszerzese

           Felsorolja azokat a forrasokat, ahonnan a FreeBSD CD-n
           vagy DVD-n beszerezheto", valamint azokat a honlapokat,
           ahonnan leto:ltheto" vagy telepitheto" a FreeBSD.

   B Fu:ggelek: Irodalomjegyzek

           A ko:nyv sok tekintetben olyan temakat is erint, amelyek
           felkelthetik az olvaso erdeklo"deset es ezek kapcsan
           bo"vebb magyarazatra vagyik. Az irodalomjegyzekben ezert
           o:sszeirtunk szamos remek ko:nyvet, amelyekre hivatkozunk
           is a fejezetekben.

   C Fu:ggelek: Ero"forrasok az interneten

           Tartalmazza a FreeBSD felhasznalok szamara elerheto" azon
           forumokat, ahova beku:ldhetik kerdeseiket, illetve szakmai
           jellegu" tarsalgasokat folytathatnak.

   D Fu:ggelek: PGP-kulcsok

           Az egyes FreeBSD fejleszto"k PGP-kulcsait sorolja fel.

A ko:nyvben alkalmazott konvenciok

   A ko:nnyebb es egysegesebb olvashatosag kedveert az alabbi
   konvenciokat igyekeztu:nk ko:vetni a ko:nyvben.

  Tipografiai konvenciok

   Do"lt

           A do"lt betu"ket allomanynevek, URL-ek, kiemelt szo:vegek
           es a szakmai kifejezesek elso" elo"fordulasakor
           hasznaljuk.

   Irogepszeru"

           Az irogepszeru" betu"ket hibau:zenetek, parancsok,
           ko:rnyezeti valtozok, portok, szamitogepek, felhasznalok,
           csoportok, eszko:zo:k nevei, valtozok es kodreszletek
           eseten hasznaljuk.

   Felko:ver

           A felko:ver betu"ket alkalmazasok, parancsok es
           billentyu"k megnevezesenel hasznaljuk.

  Felhasznaloi bevitel

   A billentyu"ket felko:verrel irjuk, hogy kiemelkedjenek a szo:veg
   to:bbi reszebo"l. Az egyszerre megnyomni kivant billentyu"k
   kombinaciojat a `+' jelo:lessel adjuk meg, mint peldaul:

   Ctrl+Alt+Del

   Ez azt jelenti, hogy a felhasznalonak a Ctrl, Alt es Del
   billentyu"ket egyszerre kell lenyomnia.

   Azokat a billentyu"ket, amelyeket egymas utan kell lenyomni,
   vesszo"vel valasztjuk el, peldaul:

   Ctrl+X, Ctrl+S

   Ez tehat azt jelenti, hogy a felhasznalonak elo"szo:r a Ctrl es X
   billentyu"ket, majd a Ctrl es S billentyu"ket kell egyszerre
   lenyomnia.

  Peldak

   A E:\> kijelzessel kezdo"do" peldak egy MS-DOS(R) parancsot
   jelo:lnek. Ha maskeppen nem emlitju:k, ezeket a parancsokat a
   modern Microsoft Windows-okban talalhato "Parancssorbol" kell
   kiadni.

 E:\> tools\fdimage floppies\kern.flp A:

   A # kijelzessel kezdo"do" peldak a FreeBSD-ben
   rendszeradminisztratori jogokat igenylo" parancsok kiadasat
   jelentik. Ehhez bejelentkezhetu:nk a root felhasznaloval, vagy
   felvethetju:k a rendszeradminisztratori jogokat a sajat
   felhasznaloi fiokunkbol a su(1) hasznalataval is.

 # dd if=kern.flp of=/dev/fd0

   A % kijelzessel kezdo"do" peldak olyan parancsra utalnak,
   amelyeket egy normal felhasznaloi fiokbol erdemes kiadni. Hacsak
   maskeppen nem jelezzu:k, a C-shell szintaxisat hasznaljuk a
   ko:rnyezeti valtozok es egyeb parancsok megadasakor.

 % top

Ko:szo:netnyilvanitas

   A ko:nyv, amit itt most olvashatunk, to:bb szaz ember egyu:ttes
   munkajanak eredmenye a vilag minden tajarol. Akar csak
   elgepeleseket javitottak, vagy komplett fejezeket adtak hozza,
   minden hozzajarulas hasznosnak bizonyult.

   Emellett sok ceg anyagilag is tamogatta a ko:nyv fejlo"deset,
   leheto"ve teve ezaltal, hogy a szerzo"k teljes munkaido"ben
   dolgozhassanak rajta, penzt kapjanak az irasaikert stb. Leginkabb
   a BSDi (amelyet keso"bb felvasarolt a Wind River Systems) adott
   teljes munkaido"s fizetest a FreeBSD Dokumentacios Projekt
   tagjainak a ko:nyv gondozasahoz, amely vegu:l az elso" nyomtatott
   kiadas megjelentetesehez vezetett 2000 marciusaban (ISBN
   1-57176-241-8). A Wind River Systems ezt ko:veto"en tovabbi
   szerzo"ket is finanszirozott a nyomtatasi-szedesi infrastruktura
   tovabbfejlesztesehez es a ko:nyv tartalmanak bo"vitesehez. Ennek
   eredmenye lett a masodik nyomtatott kiadas, amely 2001
   novembereben jelent meg (ISBN 1-57176-303-1). 2003 -- 2004
   folyaman a FreeBSD Mall, Inc. tamogatott anyagilag szamos
   hozzajarulot a keziko:nyvet illeto" munkajaert, a harmadik
   nyomtatott kiadasra to:rteno" elo"keszitesben.

                              I. Bevezetes

   A FreeBSD keziko:nyv ezen resze azoknak a felhasznaloknak es
   rendszergazdaknak szol, akik meg nem ismerik a FreeBSD-t. A
   fejezetek:

     * Bemutatjak a FreeBSD-t.

     * Vegigvezetnek a telepites folyamatan.

     * Ismertetik a UNIX alapjait.

     * Megmutatjak, hogyan telepitsu:k a FreeBSD-hez elerheto"
       megannyi ku:lso" alkalmazast.

     * Megismerhetju:k az X-et, a UNIX-os ablakozorendszert, es
       reszleteiben is lathatjuk, mikent konfiguraljunk be egy
       munkako:rnyezetet, amellyel kenyelmesebbe valik a munka.

   A fejezetek megirasa soran arra to:rekedtu:nk, hogy minel kevesebb
   hivatkozast tegyu:nk a ko:nyv keso"bb ko:vetkezo" reszeire, igy
   ennek ko:szo:nheto"en a keziko:nyv ezen resze anelku:l olvashato,
   hogy ko:zben folyamatosan elo"re-hatra kellene lapozgatnunk benne.

   Tartalom

   1. Bemutatkozas

   2. A FreeBSD telepitese

   3. A UNIX alapjai

   4. Alkalmazasok telepitese: csomagok es portok

   5. Az X Window System

     --------------------------------------------------------------

                        Fejezet 1. Bemutatkozas

   Atszerkesztette, atszervezte es bizonyos reszeit atdolgozta: Jim
   Mock.

1.1. Attekintes

   Ko:szo:nju:k, hogy erdeklo"dik a FreeBSD irant! A fejezet a
   FreeBSD Projektet to:bb ku:lo:nbo:zo" vonatkozasban mutatja be: a
   to:rtenetet, a celjait, a fejlesztesi modelljet es igy tovabb.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan viszonyul a FreeBSD mas operacios rendszerekhez;

     * a FreeBSD Projekt to:rtenetet;

     * a FreeBSD Projekt celkitu"zeseit;

     * a FreeBSD nyilt forraskodu fejlesztesi modelljenek alapjait;

     * es termeszetesen: hogyan is keletkezett a "FreeBSD" nev.

     --------------------------------------------------------------

1.2. U:dvo:zo:lju:k a FreeBSD-ben!

   A FreeBSD egy 4.4BSD-Lite alapu operacios rendszer Intel(R) (x86
   es Itanium(R)), AMD64, Alpha(TM), Sun UltraSPARC(R)
   szamitogepekre. Jelenleg is portolas alatt all tovabbi
   architekturakra. Olvashatunk a FreeBSD to:rtenetero"l vagy eppen
   az aktualis kiadasarol. Ha szeretnenk hozzajarulni a Projekt
   fejlo"desehez (forraskod, hardver vagy penz), olvassuk el a
   Hozzajarulas a FreeBSD-hez cimu" cikket (angolul).

     --------------------------------------------------------------

  1.2.1. Mire kepes a FreeBSD?

   A FreeBSD szamos figyelemre melto tulajdonsagot tudhat magaenak.
   Ezek ko:zu:l nehany:

     * A preemptiv u:temezes dinamikusan szabalyozhato prioritasok
       segitsegevel biztositja a szamitogep felhasznalok es
       alkalmazasok ko:zti finom es igazsagos megosztasat, akar a
       legnagyobb terheles eseten is.

     * To:bbfelhasznalos rendszerkent leheto"ve teszi, hogy sokan
       tudjak a FreeBSD-t egyszerre to:bbfele dologra is hasznalni.
       Peldaul, ez azt jelenti, hogy a rendszerhez csatlakoztatott
       ku:lo:nbo:zo" periferiak, mint mondjuk a nyomtatok es szalagos
       egysegek, megfelelo"en szetoszthatoak a felhasznalok ko:zo:tt
       vagy eppen a halozaton, es az egyes ero"forrasokhoz a
       felhasznalok vagy azok egy csoportja csak korlatozott modon
       ferhetnek hozzajuk, elkeru:lve ezzel a rendszer szamara
       letfontossagu ero"forrasok tulterheleset.

     * A TCP/IP halozati protokoll gyors es megbizhato
       implementacioja, illetve a legfontosabb ipari szabvanyok, mint
       az SCTP, DHCP, NFS, NIS, PPP, SLIP, IPsec es IPv6 tamogatasa.
       Ezaltal egy FreeBSD-s szamitogep ko:nnyeden kepes
       egyu:ttmu"ko:dni mas rendszerekkel vagy akar vallalati
       szerverkent is u:zemelni. Megbirkozik az NFS (Network File
       System, tavoli allomanyeleres) es az elektronikus levelezes
       megszervezesevel ugyanugy, ahogy a vallalatunk internetes
       elvarasaival a WWW, FTP es forgalomiranyitasi protokollokon
       keresztu:l es tu"zfal iranti (biztonsagi) igenyeivel is.

     * A memoriavedelem megvalositasa gondoskodik rola, hogy az
       alkalmazasok (vagy a felhasznalok) ne zavarjak egymast. Az
       egyik alkalmazas o:sszeomlasa nincs kihatassal a rendszerben
       futo o:sszes to:bbire.

     * A FreeBSD egy 32 bites operacios rendszer (az Alpha, Itanium,
       AMD64 es UltraSPARC architekturakon pedig 64 bites), amelyet
       mar a kezdetekto"l fogva annak terveztek.

     * A X Window System ipari szabvanya (X11R7) alapjan szolgaltatja
       a grafikus felhasznaloi felu:letet (GUI) barmelyik VGA-kartyan
       es monitoron, illetve annak teljes forraskodja is elerheto".

     * Binaris szintu" kompatibilitas a Linuxra, SCO-ra, SVR4-re,
       BSDI-re es NetBSD-re keszitett programok nagy reszevel.

     * Futtatasra kesz alkalmazasok ezrei erheto"ek el a FreeBSD
       port- es csomaggyu"jtemenyeben. Miert bujnank az internetet
       ertu:k, ha mindent egy helyen is megtalalhatunk?

     * Tovabbi ko:nnyen portolhato alkalmazasok ezrei allnak
       rendelkezesre az interneten. A FreeBSD forraskodja
       kompatibilis a legto:bb elterjedt kereskedelmi UNIX
       rendszerevel, aminek ko:szo:nheto"en az alkalmazasok nagy
       resze csak keves modositast igenyel a forditashoz, mar
       amennyiben erre egyaltalan szu:kseg van.

     * Az igeny szerinti lapozassal mu"ko:do" virtualis memoria es
       "egyesitett VM/puffer gyorsitotar" ugy lett kialakitva, hogy
       hatekonyan kiszolgalja a nagyobb etvagyu alkalmazasokat,
       miko:zben a to:bbi felhasznalo szamara tovabbra is
       reakciokepes marad.

     * Az SMP tamogatasa a to:bb processzorral rendelkezo"
       szamitogepek szamara.

     * C, C++ es Fortran fejleszto"i eszko:zo:k szeles tarhaza
       hasznalhato. Kutatashoz es fejleszteshez mas egyeb
       programozasi nyelvek is elerheto"ek a portok es csomagok
       segitsegevel.

     * Az egesz rendszer forraskodjanak meglete leheto"ve teszi, hogy
       a legnagyobb foku iranyitast elvezhessu:k a ko:rnyezetu:nk
       felett. Miert is biznank magunkat egy zart rendszert
       fejleszto" cegre, mikor lehetne egy igazan nyilt rendszeru:nk?

     * Nagy mennyisegu" internetes dokumentacio.

     * Meg sok minden mas!

   A FreeBSD Kaliforniai Egyetem (Berkeley) Szamitogepes rendszerek
   kutatocsoportja altal fejlesztett 4.4BSD-Lite kiadasan alapszik es
   apolja a BSD-rendszerek fejlesztesenek jellegzetes hagyomanyait.
   Tul a kutatocsoport kiveteles munkajan, a FreeBSD Projekt to:bb
   ezernyi orat szentelt arra, hogy a legto:bbet hozza ki a
   rendszerbo"l mind a teljesitmenyt, mind pedig a valos eletben
   felbukkano terhelesi helyezetekben to:rteno" helytallast
   illeto"en. Ahogy a legnagyobb piaci oriasok igyekeznek egy hasonlo
   kepessegu", teljesitmenyu" es megbizhatosago PC-s operacios
   rendszert kifejleszteni, ugy a FreeBSD mar most felajanlja ezeket!

   Kizarolag csak a kepzeletu:nk szabhat gatat annak, hogy mire is
   tudjuk hasznalni a FreeBSD-t. Szoftverfejlesztesto"l kezdve, a
   gyari automatizalason es keszletnyilvantartason at a mu"holdas
   antennak tajolasaig szinte mindenre: ha ezt eddig egy kereskedelmi
   UNIX-szal is meg tudtuk tenni, akkor nagyon valoszinu", hogy a
   FreeBSD-vel is kepesek leszu:nk erre! A FreeBSD ezen felu:l
   nagyban profital a vilagban talalhato ku:lo:nbo:zo"
   kutatoko:zpontok es egyetemek altal fejlesztett, kivalo mino"segu"
   alkalmazasok ezreibo"l, melyek gyakorta olcson vagy ingyen
   elerheto"ek. Kereskedelmi alkalmazasok is egyre nagyobb szamban
   kepviseltetik magukat minden nap.

   Mivel a FreeBSD forraskodja altalanosan elerheto", a rendszer
   szinte tetszo"leges mertekben testreszabhato a ku:lo:nleges
   elvarasokat tamaszto alkalmazasok vagy projektek szamara. Ez a
   nagyobb kereskedelmi fejleszto"k operacios rendszereivel majdnem
   teljesen elkepzelhetetlen. Ime csupan nehany peldaja azon
   alkalmazasoknak, melyek jelenleg is FreeBSD-t hasznalnak:

     * Internetes szolgaltatasok: A FreeBSD-be epitett szilard TCP/IP
       alapu halozatkezeles ku:lo:nfele internetes szolgaltatasok
       szamara teszi idealis platformma:

          * FTP szerverek

          * World Wide Web szerverek (hagyomanyos vagy biztonsagos
            [SSL])

          * IPv4 es IPv6 forgalomiranyitas

          * Tu"zfalak es NAT ("IP maszkolas"), atjarok

          * Elektronikus levelezo" szerverek

          * USENET hirrendszer es u:zeno"fal

          * Sok minden mas...

       A FreeBSD hasznalatahoz kezdetben elegendo" egy olcso 386-os
       PC, melyet a vallalkozasunk fejlo"desevel szepen fel tudunk
       hozni egy RAID-del ellatott negyprocesszoros Xeon rendszerig.

     * Oktatas: Esetleg informatikaval vagy mu"szaki informatikaval
       foglalkozik? Nem is lehetne jobban a FreeBSD altal felkinalt
       elmenyeken kivu:l mashogy megismerkedni elso"kezbo"l az
       operacios rendszerek, szamitogepes architekturak es halozatok
       mu"ko:desevel! Rengeteg szabadon hasznalhato mu"szaki,
       matematikai es grafikai tervezo" programcsomag ko:nnyiti meg
       azok munkajat is, akik szamara a szamitogep legfo"keppen mas
       feladatok elvegzesere hivatott!

     * Kutatas: Miutan a teljes FreeBSD rendszer forraskodja barki
       szamara elerheto", to:keletes kiindulasi pontot ad az
       operacios rendszerek temako:reben vagy a szamitastudomany
       egyeb agaiban vegzendo" kutatasokhoz. A FreeBSD nyilt
       termeszete ezenkivu:l leheto"ve teszi egymastol tavol levo"
       csoportok ko:zo:s egyu:ttmu"ko:deset is anelku:l, hogy a
       resztvevo"knek aggodnia kellene a ku:lo:nleges
       licencszerzo"desek vagy a nyilt forumokon felmeru:lo"
       korlatozasok miatt.

     * Halozatepites: Szu:ksege van egy uj utvalasztora? Esetleg egy
       nevszerverre (DNS)? Egy tu"zfalra, mely tavoltartja a
       nemkivanatos egyeneket a belso" halozattol? A FreeBSD
       pillanatok alatt atvaltoztatja a sarokban porosodo 386-os vagy
       486-os PC-nket egy kifinomult csomagszu"resi kepessegekkel
       biro forgalomiranyito eszko:zze.

     * X Window munkaallomas: A FreeBSD a szabadon hasznalhato X11
       szerverrel egyu:tt remek valasztas egy olcso X terminal
       kiepitesehez. Eltero"en egy szokvanyos X terminaltol, a
       FreeBSD azonban igeny szerint sok alkalmazas helyi futtatasat
       is kepes megoldani, ezzel megszabaditva minket a ko:zponti
       szerver hasznalatanak kenyszereto"l. A FreeBSD viszont akar
       "lemez nelku:l" is el tud indulni, aminek reven az egyes
       munkaallomasok karbantartasa meg olcsobba es ko:nnyebbe valik.

     * Szoftverfejlesztes: Az alap FreeBSD rendszer
       fejleszto"eszko:zo:k to:mkelegevel, to:bbek ko:zt a hires GNU
       C/C++ forditoval es nyomko:veto"vel erkezik.

   A FreeBSD CD-n, DVD-n es FTP-n keresztu:l elerheto" forraskod es
   binaris formatumban is. A FreeBSD beszerzesevel kapcsolatos
   bo"vebb informaciokert olvassuk el a A Fu:ggeleket.

     --------------------------------------------------------------

  1.2.2. Ki hasznalja a FreeBSD-t?

   A FreeBSD egyarant remek eszko:z- es termekfejleszto"i
   platformkent funkcional vilag legnagyobb informatikai cegeinel,
   to:bbek ko:zt:

     * Apple

     * Cisco

     * Juniper

     * NetApp

   A FreeBSD mindezek mellett to:bb nagyobb internetes oldal alapjat
   kepzi, mint peldaul:

     * Yahoo!

     * Yandex

     * Apache

     * Rambler

     * Sina

     * Pair Networks

     * Sony Japan

     * Netcraft

     * NetEase

     * Weathernews

     * TELEHOUSE America

   es meg sokan masok.

     --------------------------------------------------------------

1.3. A FreeBSD Projektro"l

   A most ko:vetkezo" resz egy-ket hatterinformaciot tar fel a
   Projektro"l, to:bbek ko:zo:tt a to:rtenetet, celjait es a benne
   alkalmazott fejlesztesi modellt.

     --------------------------------------------------------------

  1.3.1. A FreeBSD ro:vid to:rtenete

   Irta: Jordan Hubbard.

   A FreeBSD Projekt valamikor 1993 kezdetero"l eredeztetheto", es
   reszben a "Nem hivatalos 386BSD Patchkit"-bo"l no"tt ki, a
   patchkit 3 legutolso koordinatoranak, Nate Williamsnek, Rod
   Grimesnak es nekem ko:szo:nheto"en.

   Eredeti celunk a 386BSD ko:ztes allapotainak ro:gzitese lett
   volna, amito"l olyan problemak megoldasat remeltu:k, melyeket a
   patchkitek gyartasa o:nmagaban egyszeru"en nem tudott megoldani.
   Nehanyan meg talan emlekeznek is a Projekt kezdeti munkaneveire:
   "386BSD 0.5" vagy "386BSD Interim", melyek pontosan erre a tenyre
   hivatkoztak.

   A 386BSD eredetileg Bill Jolitz operacios rendszere volt, amely
   ennel a pontnal mar ko:zel egy eve nem keru:lt apolasra. Mivel a
   hozzatartozo patchkit pedig naprol napra duzzadt, egyre
   kenyelmetlenebbe valt a karbantartasa. Ezert egyhanguan ugy
   do:nto:ttu:nk, segitu:nk Billnek azzal, hogy ido"nkent letrehozunk
   egy "letisztitott" valtozatot. Ez a probalkozasunk csunyan
   kudarcba fulladt, amikor Bill Jolitz hirtelen meggondolta magat es
   visszalepett a Projekt tamogatasatol. Semmilyen egyertelmu"
   utmutatast nem adott arra, hogy mit csinaljunk helyette.

   Nem tartott sokaig eldo:ntenu:nk, hogy ez a cel tovabbra is megeri
   a faradtsagot, meg Bill segitsege nelku:l is, ezert felvettu:k a
   "FreeBSD" nevet, melyet David Greenmannek ko:szo:nhetu:nk. Kezdeti
   feladatainkat a rendszer akkori felhasznaloival tartott
   egyeztetesek utan allitottuk fel. Miutan teljesen tisztan
   lathatova valt, hogy a Projekt a megvalosulas utjan van, felvettem
   a kapcsolatot a Walnut Creek-kel, terjesztesi mod utan nezve
   azokra szamara, akik nem tudtak akkoriban ko:nnyeden hozzaferni az
   internethez. A Walnut Creek nem csak tamogatta a FreeBSD CD-n
   to:rteno" terjeszteset, hanem meg egy szamitogepet es egy gyors
   internetkapcsolatot is a Projekt szamara bocsatott. A Walnut Creek
   szinte peldatlan merteku", egy akkoriban teljesen ismeretlen
   projektbe vetett hite nelku:l nagyon nehezen lenne elkepzelheto",
   hogy a FreeBSD olyan messzire es olyan gyorsan jutott volna el,
   ahol ma tart.

   Az elso" CD-lemezen (es szeles ko:rben az interneten is
   megjeleno") valtozat a FreeBSD 1.0 volt, amely 1993 decembereben
   jelent meg. A Berkeley-ro"l szarmazo 4.3BSD-Lite ("Net/2")
   szalagokon talalhato forrasok alapjan keszu:lt, kiegeszitve a
   386BSD-bo"l es a Szabad Szoftver Alapitvanytol (Free Software
   Foundation, FSF) szarmazo komponensekkel. Elso" kiadaskent igen
   meltanyos sikert ko:nyvelhetett el, melyet a meg inkabb sikeres
   FreeBSD 1.1-el folytattunk 1994 majusaban.

   Nagyjabol ekkortajt nehany varatlan so:tet felho" bukkant fel az
   egbolton, ahogy a Novell es a Berkeley hosszantarto pereskedese
   lezarult a Berkeley Net/2 szalagjainak jogi formajat illeto"en.
   Ennek eredmenyekeppen a Berkeley elfogadta, hogy a Net/2 nagy
   resze "jelzaloggal terhelt" es a Novell tulajdona, aki pedig
   valamivel korabban az AT&T-to"l szerezte. Ezert cserebe a Berkeley
   megkapta a Novell "aldasat" a 4.4BSD-Lite kiadasra, es amikor az
   veglesen kijo:n, megszu"nik a rajta levo" jelzalog. Emiatt az
   o:sszes Net/2 felhasznalonak ero"sen javasolt volt valtani. Ez
   erintette magat a FreeBSD-t is, es igy a Projekt 1994 juliusaig
   kapott hatarido"t, hogy leallitsa a Net/2 alapu termekeinek
   szallitasat. A megegyezes ertelmeben a Projekt kiadhatott meg egy
   utolso kiadast a hatarido" elo"tt, amely vegu:l a FreeBSD 1.1.5.1
   lett.

   A FreeBSD-nek ekkor szembesu:lnie kellett azzal a nehez
   feladattal, hogy lenyegeben ujra fel kellett talalnia magat, a
   teljesen uj es megleheto"sen hianyos 4.4BSD-Lite bitjeito"l
   elindulva. A "Lite" (egyszeru"sitett) kiadasok abban az ertelemben
   szamitottak egyszeru"bbnek, hogy a Berkeley kutatoi (a
   ku:lo:nbo:zo" jogi ko:vetelesek miatt) eltavolitottak a
   tenylegesen beindithato rendszerhez szu:kseges programreszek
   nagyobb reszet, ill. a 4.4-es verzio Intel processzorokra
   keszitett portja nagyon is befejezetlen volt. A Projektnek egeszen
   1994 novembereig tartott, hogy megtegye ezt a lepest, ugyanis
   ekkor jelent meg a FreeBSD 2.0 az interneten es (december vege
   fele) CD-n. Annak ellenere, hogy meg nemileg erdes maradt bizonyos
   helyeken, ez a kiadas jelento"s sikereket ert el. Ezt ko:vette
   1995 juniusaban a sokkalta stabilabb es ko:nnyebben telepitheto"
   FreeBSD 2.0.5.

   A FreeBSD 2.1.5-o:t 1996 augusztusaban adtuk ki, mely akkora
   nepszeru"segnek o:rvendett az internet-szolgaltatok es
   kereskedelmi ko:zo:ssegek ko:reben, hogy a a 2.1-STABLE
   elagazasbol egy ujabb kiadast keszitettu:nk. Ez volt a
   FreeBSD 2.1.7.1, amely 1997 februarjaban jelent meg es ezzel
   egyu:tt a 2.1-STABLE fejleszteset is zarta. Most mar csak
   karbantartast vegzu:nk rajta, es csak a biztonsagi es egyeb
   kritikus hibajavitasok keru:lnek bele (RELENG_2_1_0).

   A FreeBSD 2.2 fejlesztese 1996 novembereben agazott le az akkori
   fejleszto"i ("-CURRENT") agbol, mint a RELENG_2_2-es ag. Ebbo"l az
   elso" teljes kiadas (2.2.1) 1997 aprilisaban jelent meg. A 2.2-es
   ag menten tovabbi kiadasok 1997 nyaran es o"szen keszu:ltek,
   melyek ko:zu:l az utolso (2.2.8) 1998 novembereben jelent meg. Az
   elso" hivatalos 3.0-as kiadas 1998 oktobereben jo:tt ki, ami
   egyuttal a 2.2-es ag befejezesenek kezdetet jelentette.

   A fejlesztesi fa 1999. januar 20-an keru:lt ismet elagaztatasra,
   melynek eredmenye a 4.0-CURRENT es 3.X-STABLE agak lettek. A
   3.X-STABLE agban a 3.1 1999. februar 15-en, a 3.2 1999. majus
   15-en, a 3.3 1999. szeptember 16-an, a 3.4 1999. december 20-an es
   a 3.5 2000. junius 24-en jelent meg, melyet par nappal keso"bb egy
   kisebb alverzio, a 3.5.1 ko:vetett, a Kerberosra vonatkozo friss
   biztonsagi javitasokkal. Ez lett egyben a 3.X ag utolso kiadasa.

   Egy masik fontos elagaztatas 2000. marcius 13-an to:rtent, mellyel
   eletre kelt a 4.X-STABLE ag. Ebbo"l aztan szamos kiadas
   szu:letett: a 4.0-RELEASE 2000 marciusaban mutatkozott be, az
   utolso 4.11-RELEASE pedig 2005 januarjaban latott napvilagot.

   A varva vart 5.0-RELEASE 2003. januar 19-en keru:lt bejelentesre.
   Ko:zel haromevnyi munka eredmenyekeppen ez a kiadas inditotta meg
   a FreeBSD-t a to:bbprocesszoros rendszerek es az alkalmazasok
   szalkezelesenek fejlettebb tamogatasanak utjan, valamint az
   UltraSPARC es ia64 platformok tamogatasa is itt jelent meg
   elo"szo:r. Ezt a kiadast a 5.1 ko:vette 2003 juniusaban. A
   hozzatartozo -CURRENT agbol az utolso kiadas az 5.2.1-RELEASE
   volt, amely 2004 februarjaban mutatkozott be.

   A 2004 augusztusaban, a RELENG_5 ag letrehozasat a 5.3-RELEASE
   ko:vette, es egyben a 5-STABLE ag kezdetet is jelezte. A legujabb
   5.5-RELEASE 2006 majusaban jo:tt ki. A RELENG_5 agbol mar nem fog
   keszu:lni to:bb kiadas.

   A fejlesztesi fa ezutan 2005 juliusaban agazott el ismet, ezuttal
   a RELENG_6 agnak adott eletet. A 6.0-RELEASE az 6.X ag elso"
   kiadasakent 2005 novembereben jelent meg. A legujabb 6.4-RELEASE
   2008 november honapjaban jelentkezett. A RELENG_6 agbol mar nem
   keszu:lnek tovabbi kiadasok.

   A RELENG_7 ag 2007 oktobereben jo:tt letre. Ebbo"l az elso" kiadas
   2008 februarjaban a 7.0-RELEASE volt. A legfrissebb 7.2-RELEASE
   kiadas 2009 majus honapban keszu:lt el. A RELENG_7 agbol tovabbi
   kiadasok is varhatoak.

   Jelen pillanatban a hosszabb tavu fejlesztesek a 8.X-CURRENT
   (to:rzs) agban kapnak helyet, es a 8.X-bo"l keszu:lt
   ido"ko:zo:nkenti pillanatkiadasok folyamatosan elerheto"ek CD-n
   (es termeszetesen interneten keresztu:l is) a pillanatkiadasokat
   tarolo szerverro"l.

     --------------------------------------------------------------

  1.3.2. A FreeBSD Projekt celjai

   Irta: Jordan Hubbard.

   A FreeBSD Projekt celja, hogy olyan szoftvereket kinaljon, amelyek
   tetszo"legesen, barmilyen celra felhasznalhatoak, mindenfele
   megko:tesek nelku:l. Sokunk jelento"s energiat fektet a
   programokba (es a Projektbe) es minden bizonnyal egyiku:nk sem
   utasitana vissza semmilyen anyagi ellenszolgaltatast se most, se
   keso"bb, de egyaltalan nem ragaszkodunk hozza. Hisszu:k, hogy
   elso"dleges "ku:ldetesu:nk" olyan programok es programreszletek
   keszitese barki szamara es barmilyen celra, melyeket a leheto"
   legszelesebb ko:rben alkalmaznak es a leheto" legto:bbet hasznot
   hajtjak. Ez, ugy erzem, az egyik legalapveto"bb celja a szabad
   szoftvereknek, es ez az, amit mi is lelkesen magunkenak vallunk.

   A forrasfankban talalhato GNU General Public License (GPL) vagy a
   Library General Public License (LGPL) ala eso" kodok
   hozzaferheto"segere ezzel szemben nemileg to:bb megszoritas
   vonatkozik, legalabb is inkabb ami a hozzaferheto"seget illeti.
   Mivel a GPL-es szoftverek kereskedelmi hasznalata tovabbi
   bonyodalmakat vethet fel, ha leheto"segu:nk adodik ra, inkabb a
   sokkal enyhebb BSD licenccel rendelkezo" szoftvereket valasztjuk.

     --------------------------------------------------------------

  1.3.3. A FreeBSD fejlesztesi modellje

   Irta: Satoshi Asami.

   A FreeBSD fejlesztese egy nagyon nyitott es rugalmas folyamat, szo
   szerint a vilag minden tajarol erkezo" to:bbszaznyi segitsegbo"l
   epitkezik, ahogy az lathato is a resztvevo"ink listajan. A FreeBSD
   fejlesztesi infrastrukturaja leheto"ve teszi, hogy ez a
   to:bbszaznyi resztvevo" az interneten keresztu:l mu"ko:djo:n
   egyu:tt. Folyamatosan varjuk az uj fejleszto"ket es o:tleteket, es
   mindazok, akik komolyabban erdeklo"dnek a Projekt irant,
   egyszeru"en felvehetik velu:nk a kapcsolatot a FreeBSD technical
   discussions levelezesi lista cimen. Egy FreeBSD announcements
   levelezesi lista is elerheto" azok szamara, akik ertesiteni
   kivanjak a to:bbi FreeBSD felhasznalot munkajuk fo"bb
   eredmenyeiro"l.

   A FreeBSD Projektro"l es annak fejlesztesi modelljero"l hasznos
   tudni az alabbiakat, fu:ggetlenu:l attol, hogy egyedu:l vagy
   masokkal szoros egyu:ttmu"ko:desben dolgozunk:

   Az SVN es CVS repositoryk

           Sok even keresztu:l a FreeBSD ko:zponti forrasfajat CVS-en
           (Concurrent Versions System) keresztu:l tartottak karban,
           amely egy, a FreeBSD-vel is erkezo", szabadon elerheto"
           verziokezelo" rendszer. 2008 juniusaban a Projekt az SVN
           (Subversion) hasznalatara valtott. Ez a valtas
           szu:ksegszeru" volt, mivel a CVS altal okozott technikai
           nehezsegek gyorsan elo"jo:ttek a forrasfa es a
           hozzatartozo metainformaciok szapora no:vekedesevel. Noha
           a ko:zponti repository most mar SVN-alapu, a kliensoldali
           CVSup es csup alkalmazasok tovabbra is a korabbi
           infrastrukturaval dolgoznak, ahogy eddig is -- az SVN
           respositoryban vegzett valtoztatasok ehhez automatikusan
           atkeru:lnek CVS ala. Jelen pillanatban egyedu:l csak a
           ko:zponti forrasfa hasznalja ezt a megoldast, a
           dokumentacio, a weboldalak es a Portgyu"jtemeny forrasai
           tovabbra is CVS alol u:zemelnek. Az elso"dleges CVS
           repository egy Santa Clara-i (California, USA)
           szamitogepen talalhato, ahonnan a vilagban talalhato
           rengeteg tu:ko:rszerverre masolodik. Az SVN-fa, mely
           tartalmazza a -CURRENT es -STABLE agakat, ko:nnyen
           lemasolhato a sajat szamitogepu:nkre is. Ennek
           reszleteiro"l bo"vebben a A forrasfa szinkronizalasa c.
           szakaszban olvashatunk.

   A committerek listaja

           A hivatalos fejleszto"k (committerek) azok az emberek,
           akik a CVS-fahoz irasi joggal rendelkeznek, tehat
           modositast hajthatnak vegre a FreeBSD forrasaiban (a
           "committer" kifejezes a cvs(1) commit parancsabol
           szarmazik, amelyet arra hasznalunk, hogy felvigyu:k a
           modositasainkat a CVS repository-ba). Javaslatainkat
           legjobban a send-pr(1) hasznalataval tudjuk a committerek
           ele tarni. Ha valamiert ez megsem mu"ko:dne,
           megprobalhatjuk o"ket elerni ko:zvetlenu:l a FreeBSD
           committer's mailing list cimere ku:ldo:tt e-maillel.

   A FreeBSD Core Team

           Ha a FreeBSD Projekt egy vallalat lenne, akkor a FreeBSD
           Core Teamje (iranyito csoportja) foglalna magaban a
           vezeto"seget. Ennek a csoportnak elso"dleges feladata,
           hogy fenntartsa a Projekt egeszenek kondiciojat es
           gondoskodjon rola, hogy a megfelelo" iranyba haladjon. Az
           iranyito csoportnak ugyanigy feladata a megbizhato es
           odaado committerek to:mo:ritese es az uj tagok
           beszervezese, ha a csoportbol kilepne valaki. A jelenlegi
           Core Team tagjait 2008 juliusaban valasztottak meg. A
           valasztasokat ketevente tartjak.

           Ebben a csoportban egyes tagoknak ezenfelu:l meg bizonyos
           teru:letekre felu:gyelniu:k is kell. Ez azt jelenti, hogy
           felelo"sek a rendszer valamelyik nagyobb reszenek az
           elo"irasoknak megfelelo" mu"ko:deseert. A FreeBSD
           fejleszto"k teljes felsorolasa es a hozzajuk tartozo
           teru:letek megtalalhatoak A resztvevo"k listjaban.

             Megjegyzes: A Core Team legto:bb tagja pusztan
             o:nkentesen vesz reszt a FreeBSD fejleszteseben es nem
             szarmazik a projektbo"l semmilyen anyagi haszna. Emiatt
             a "reszvetel" nem tevesztendo" o:ssze a "garantalt
             tamogatassal". A "vezeto"segre" vonatkozo hasonlat nem
             teljesen pontos abban az ertelemben, hogy ezek az
             emberek lenyegeben akaratuk ellenere feladtak az
             eletu:ket a FreeBSD kedveert!

   Ku:lso" resztvevo"k

           Vegu:l, de nem utoljara, ko:vetkezzen a fejleszto"k
           legnagyobb csoportja: o"k maguk a felhasznalok, akik
           rendszeres visszajelzeseket es hibajavitasokat ku:ldenek.
           A FreeBSD kevesbe ko:zpontositott fejleszteseben
           elso"sorban a FreeBSD technical discussions levelezesi
           lista segitsegevel lehet felvenni a fonalat, ahol ezeket a
           temakat targyaljak meg. A FreeBSD-hez kapcsolodo
           ku:lo:nfele levelezesi listakrol to:bbet a C Fu:ggelekben
           olvashatunk.

           A FreeBSD resztvevo"inek listaja hosszu es meg most is
           no:vekszik; miert nem probalunk mi is visszaadni valamit a
           FreeBSD-nek?

           Nem csak programozassal lehet segiteni a Projektet: a
           megoldando feladatok listajat megtalalhatjuk a
           FreeBSD Projekt honlapjan.

   Ro:viden o:sszefoglalva, a fejlesztesi modellu:nk egymashoz lazan
   kapcsolodo koncentrikus ko:ro:kkent szervezo"dik. Ez a
   ko:zpontositott modell a FreeBSD-felhasznalok kenyelmet
   szolgalando lett kialakitva, akik igy ko:nnyeden tudnak ko:vetni
   egyetlen ko:zponti kodbazist, azonban megvan a leheto"segu:k a
   reszvetelre is! Minden vagyunk egy olyan megbizhato operacios
   rendszer kialakitasa, amihez nagy mennyisegu" ko:nnyen
   telepitheto" es hasznalhato alkalmazas tartozik -- ez a modell
   ennek eleresere nagyon is megfelelo".

   A haladas u:temenek fenntartasa erdekeben mindo:ssze csak annyit
   keru:nk a leendo" FreeBSD fejleszto"inkto"l, hogy legyenek
   legalabb annyira elszantak, mint a jelenlegi tagjaink!

     --------------------------------------------------------------

  1.3.4. Az aktualis FreeBSD kiadasok

   A FreeBSD egy szabadon elerheto", teljes forraskoddal erkezo"
   4.4BSD-Lite alapu kiadas Intel i386(TM), i486(TM), Pentium(R),
   Pentium Pro, Celeron(R), Pentium II, Pentium III, Pentium 4 (vagy
   azzal kompatibilis), Xeon(TM), DEC Alpha es Sun UltraSPARC alapu
   szamitogepekre. Elso"sorban a Berkeley Szamitogepes rendszerek
   kutatocsoportjanak szoftverein alapszik, szamos javitassal a
   NetBSD, OpenBSD, 386BSD es a Szabad Szoftver Alapitvany
   munkassaganak ko:szo:nheto"en.

   A FreeBSD 2.0 1994 vegi megjelenese ota a FreeBSD teljesitmenye,
   megbizhatosaga es tudasa drasztikusan megno:vekedett. A legnagyobb
   valtoztatas az ujjaalakitott, o:sszevont VM/allomany puffer
   gyorsitotarral rendelkezo" virtualis memoria alrendszer, amely nem
   csak a teljesitmenyt no:veli, hanem cso:kkenti a FreeBSD
   memoriaigenyet is, jobban elfogadhatova teve ezzel az 5 MB-os
   minimumot. A tovabbi fejlesztesek ko:zo:tt talaljuk a teljes NIS
   szerver es kliens tamogatast, az atviteli TCP tamogatasat, az
   igeny szerint tarcsazo PPP-t, a beepitett DHCP tamogatast, a
   tovabbfejlesztett SCSI alrendszert, az ISDN tamogatast, az ATM,
   FDDI, Fast es Gigabit Ethernet (1000 Mbit) halozati csatolok
   tamogatasat, a legfrissebb Adaptec gyartmanyu vezerlo"k
   fejlesztett tamogatasat es a to:bbezernyi hibajavitast.

   Az alapeszko:zo:k melle a FreeBSD felkinalja to:bbezernyi ismert
   es keresett program portjaibol allo gyu"jtemenyet. Ebben a
   pillanatban is mar to:bb, mint 20 000 port erheto" el! A portok
   listaja a HTTP (WWW) szerverekto"l, a jatekokon, nyelveken es sok
   mindenen keresztu:l a szo:vegszerkeszto"kig terjed. Az egesz
   Portgyu"jtemeny ko:zelito"leg 417 MB tarhelyet kivan, minden
   portot az eredeti forrashoz viszonyitott "ku:lo:nbsegkent" tarol.
   Ennek ko:vetkezteben a portok frissitese sokkal ko:nnyebb es
   nagyban cso:kkenti a korabbi, 1.0-as Portgyu"jtemenynel kialakult
   tarigenyeket. Egy port leforditasahoz egyszeru"en csak be kell
   lepnu:nk a telepiteni kivant program ko:nyvtaraba es ki kell
   adnunk a make install parancsot, a to:bbit a rendszer elvegzi.
   Minden egyes telepitendo" port teljes forrasa dinamikusan vagy
   CD-ro"l vagy pedig FTP-n keresztu:l to:lto"dik le, igy csak a
   tenylegesen telepitendo"k leforditasahoz elegendo" tarhelyre van
   szu:kseg. Majdnem mindegyik port elerheto" elo"re leforditott
   "csomag" formajaban azok szamara, akik nem kivanjak leforditani a
   portokat, es melyeket egy egyszeru" parancs (pkg_add) segitsegevel
   telepiteni is tudjak. A csomagokrol es portokrol a 4 fejezetben
   tudhatunk meg to:bbet.

   A FreeBSD telepitesero"l es hasznalatarol most mar szamos tovabbi
   nagyon hasznos dokumentumot talalhatunk barmelyik FreeBSD-s
   szamitogep /usr/share/doc ko:nyvtaraban. A helyileg telepitett
   keziko:nyveket barmilyen HTML-t megjeleniteni kepes bo:ngeszo"vel
   meg el tudjuk olvasni az alabbi URL-eken:

   A FreeBSD keziko:nyv

           /usr/share/doc/handbook/index.html

   A FreeBSD GYIK

           /usr/share/doc/faq/index.html

   Az aktualis (leginkabb frissitett) verziok megtekintheto"ek a
   http://www.FreeBSD.org/ cimen.

     --------------------------------------------------------------

                    Fejezet 2. A FreeBSD telepitese

   Atszervezte, atrendezte es egyes reszeit atdolgozta: Jim Mock. A
   sysinstall bemutatasa, abrai es bemasolasa: Randy Pratt.

2.1. Attekintes

   A FreeBSD telepitesehez egy ko:nnyen hasznalhato szo:veges
   telepito"program, a sysinstall hasznalhato. Ez a FreeBSD
   alapertelmezett telepito"programja, habar ezt a ku:lo:nfele
   gyartok kedvu:k szerint lecserelhetik. Ebben a fejezetben
   bemutatjuk a FreeBSD sysinstall segitsegevel to:rteno"
   telepiteset.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan keszitsu:nk telepito"lemezeket a FreeBSD-hez;

     * a FreeBSD mikent hivatkozza es osztja fel a merevlemezeinket;

     * hogyan inditsuk el a sysinstall programot;

     * milyen kerdeseket tesz fel neku:nk a sysinstall, mire gondol,
       hogyan is kell azokat megvalaszolni.

   A fejezet elolvasasahoz ajanlott:

     * a telepitendo" FreeBSD verziohoz tartozo tamogatott
       hardvereket felsorolo lista atolvasasa es benne a sajat
       hardvereszko:zeink megkeresese.

     Megjegyzes: Altalanosan elmondhato, hogy a most ko:vetkezo"
     telepitesi utasitasok az i386 ("PC kompatibilis") architekturaju
     szamitogepekre vonatkoznak. Ahol erre szu:kseg van, ott mas
     platformokra (peldaul Alpha) vonatkozo utasitasok is
     szerepelhetnek. Habar ezt a leiras igyekszu:nk a leheto"
     legjobban naprakeszen tartani, elkepzelheto", hogy
     felfedezhetu:nk kisebb elteresket a telepito"ben es az itt
     leirtak ko:zt. Ezert ezt a fejezetet inkabb egy altalanos
     utmutatonak javasoljuk, nem pedig egy szo szerint ertelmezendo"
     keziko:nyvkent.

     --------------------------------------------------------------

2.2. Hardverko:vetelmenyek

  2.2.1. Minimalis konfiguracio

   A FreeBSD telepitesehez szu:kseges minimalis konfiguracio FreeBSD
   verzionkent es architekturankent eltero".

   A minimalis konfiguraciot a FreeBSD honlapjan a kiadasokrol szolo
   oldalon, az "Installation Notes" reszben talalhatjuk meg. Ezt a
   ko:vetkezo" szakaszokban foglaljuk o:ssze. A FreeBSD telepitesenek
   modszereto"l fu:ggo"en szu:ksegu:nk lehet egy hajlekonylemezes
   (floppy) vagy CD-ROM meghajtora, esetleg egy halozati kartyara.
   Ezt a 2.3.7 Szakaszban targyaljuk.

     --------------------------------------------------------------

    2.2.1.1. FreeBSD/i386 es FreeBSD/pc98

   A FreeBSD/i386 es FreeBSD/pc98 egyarant egy 486 vagy jobb
   processzort es legalabb 24 MB memoriat igenyel. A legkisebb
   telepiteshez legalabb 150 MB szabad lemezteru:let szu:kseges.

     Megjegyzes: Regebbi konfiguraciok eseten nem egy gyorsabb
     processzor, hanem inkabb to:bb memoria beszerzese, illetve to:bb
     lemezteru:let felszabaditasa a fontosabb.

     --------------------------------------------------------------

    2.2.1.2. FreeBSD/alpha

   A FreeBSD/alpha telepitesehez egy ismert platformra (lasd: 2.2.2
   Szakasz), valamint a FreeBSD-nek szant ku:lo:n lemezre van
   szu:ksegu:nk. Pillanatnyilag nem lehetseges mas operacios
   rendszerekkel megosztani a lemezeket. A lemezt egy olyan
   SCSI-vezerlo"re kell csatlakoztatnunk, amelyet tamogat az SRM
   firmware-je, vagy hasznalhatunk IDE-lemezeket is, felteve, hogy az
   SRM tud roluk rendszert inditani.

   Szu:ksegu:nk lesz a platformunkon az SRM konzol firmware-jere. Sok
   esetben tudunk valtani az AlphaBIOS (vagy ARC) es az SRM
   firmware-je ko:zo:tt. Minden mas helyzetben le kell to:ltenu:nk
   egy uj firmware-t a gyarto honlapjarol.

     Megjegyzes: Az Alpha tamogatas a FreeBSD 7.0 beindulasaval
     eltavolitasra keru:lt. A FreeBSD 6.X sorozat az utolso, amely
     valamilyen tamogatast ajanl ehhez az architekturahoz.

     --------------------------------------------------------------

    2.2.1.3. FreeBSD/amd64

   Ket tipusu processzor kepes futtatni a FreeBSD/amd64 verziojat. Az
   elso" ezek ko:zu:l az AMD64 processzorok, beleertve az
   AMD Athlon(TM)64, AMD Athlon64-FX, AMD Opteron(TM) vagy ujabb
   processzorokat.

   A FreeBSD/amd64 verziojat kihasznalni kepes processzorok masik
   csoportja az Intel EM64T architekturajara epu:lo" processzorok.
   Ilyen processzor peldaul az Intel Core(TM) 2 Duo, Quad es Extreme
   processzorcsaladok, valamint az Intel Xeon 3000, 5000 es 7000
   sorozatszamu processzorai.

   Ha nVidia nForce3 Pro-150 alapu geppel rendelkezu:k, ki kell
   kapcsolnunk a BIOS-ban az IO APIC hasznalatat. Ha nem talalnank
   ilyen beallitast, akkor helyette magat az ACPI-t kell
   kikapcsolnunk. A Pro-150 chipsetnek vannak bizonyos hibai,
   amelyekre eddig meg nem sikeru:lt megfelelo" megoldast talalnunk.

     --------------------------------------------------------------

    2.2.1.4. FreeBSD/sparc64

   A FreeBSD/sparc64 telepitesehez egy tamogatott platformra van
   szu:ksegu:nk (lasd: 2.2.2 Szakasz).

   A FreeBSD/sparc64 telepitesehez egy egesz lemezre lesz
   szu:ksegu:nk, mivel a rendszer jelenleg nem kepes megosztani azt
   mas operacios rendszerekkel.

     --------------------------------------------------------------

  2.2.2. Tamogatott hardverek

   A FreeBSD minden kiadasahoz mellekelik a tamogatott hardverek
   listajat "FreeBSD Hardware Notes" cimmel. Ezt a dokumentum
   to:bbnyire egy HARDWARE.TXT nevu" allomany, amelyet a rendszer
   CD-n vagy FTP-n keresztu:l elerheto" valtozatanak gyo:kereben vagy
   a sysinstall dokumentaciokat tartalmazo menu:jeben talalhatunk
   meg.

     --------------------------------------------------------------

2.3. A telepites elo"tt elvegzendo" feladatok

  2.3.1. Keszitsu:nk leltart a szamitogepu:nkro"l

   A FreeBSD telepitese elo"tt erdemes o:sszeszedni, pontosan mi
   minden is talalhato a szamitogepu:nkben. A FreeBSD
   telepito"rutinjai mutatni fogjak a ku:lo:nbo:zo" komponensek
   (merevlemezek, halozati kartyak, CD-meghajtok es a to:bbi)
   modelljet es gyartojat. A FreeBSD ezenkivu: megprobalja kideriteni
   a megjeleno" eszko:zo:k pontos konfiguraciojat is, beleertve a
   hasznalt IRQ es IO portok kiosztasat. A PC-s hardverek ku:lo:nfele
   szeszelyei miatt azonban ez az imenti folyamat nem minden esetben
   megbizhato, ezert elo"fordulhat, hogy helyesbiteni kell a FreeBSD
   altal megallapitott ertekeket.

   Ha mar van a gepu:nko:n egy masik operacios rendszer, peldaul
   Windows vagy Linux, akkor mindenkeppen hasznos lehet az altala
   felkinalt eszko:zo:kkel lekerdezni a hardvereink beallitasait. Ha
   nem lennenk biztosak benne, hogy az adott bo"vito"kartyakat
   pontosan milyen beallitasokkal is hasznaljuk, nezzu:k meg ezeket
   magan a kartyan. A nepszeru" IRQ ertekek altalaban a 3, 5 es 7,
   valamint az IO portok szamat altalaban tizenhatos szamrendszerben
   szerepeltetik, peldaul 0x330.

   Javasoljuk, hogy nyomtassuk ki vagy irjuk le ezeket a
   parametereket a FreeBSD telepitese elo"tt. Ehhez rendezzu:k ezeket
   egy tablazatban, valahogy igy:

   Tablazat 2-1. Pelda egy eszko:zleltarra

     Eszko:z neve   IRQ   IO                 Megjegyzes               
                        portok 
   Elso" merevlemez -   -      Merete 40 GB, gyartmanya Seagate,      
                               elso"dleges IDE master                 
   CD-ROM meghajto  -   -      Elso"dleges IDE slave                  
   Masodik          -   -      Merete 20 GB, gyartmanya IBM,          
   merevlemez                  masodlagos IDE master                  
   Elso" IDE        14  0x1f0                                         
   vezerlo"                    
   Halozati kartya  -   -      Intel 10/100                           
   Modem            -   -      3Com(R) 56K-s faxmodem, COM1           
   ...                                                                

   Ahogy elkeszitettu:k a szamitogepu:nk alkatreszeit tartalmazo
   listat, vessu:k ezeket o:ssze a telepitendo" FreeBSD kiadas altal
   megko:vetelt eszko:zo:kkel.

     --------------------------------------------------------------

  2.3.2. Mentsu:k le az adatainkat

   Amennyiben a FreeBSD telepitesehez hasznalt szamitogep szamunkra
   ertekes adatokat tarol, igyekezzu:nk lementeni ezeket, es a
   FreeBSD tenyleges telepitese elo"tt gyo"zo"dju:nk is meg rola,
   hogy a mentes sikeres volt. A FreeBSD telepito"rutinjai
   termeszetesen megero"sitest fognak kerni barmilyen adat lemezre
   irasa elo"tt, azonban ha egyszer mar elinditottuk a folyamatot,
   mar semmit sem tudunk visszaforditani.

     --------------------------------------------------------------

  2.3.3. Do:ntsu:k el a FreeBSD telepitesenek helyet

   Ha a FreeBSD telepitesehez az egesz merevlemezu:nket fel akarjuk
   hasznalni, akkor meg nincs miert izgatnunk magunkat -- nyugodtan
   atlephetju:k ezt a szakaszt.

   Amikor viszont a FreeBSD-t mas operacios rendszerek melle
   szeretnenk telepiteni, ismernu:nk kell, mikent is helyezkednek el
   az adatok a lemezeken, es hogy ez mikent is erint bennu:nket.

     --------------------------------------------------------------

    2.3.3.1. A lemezek kiosztasa a FreeBSD/i386 eseten

   A PC-k altal hasznalt lemezek ku:lo:nallo darabokra tagolhatoak.
   Ezeket a darabokat particioknak nevezzu:k. Mivel azonban FreeBSD a
   sajat maga szinten tarol particiokat, ezert ez az elnevezes
   pillanatok alatt megteveszto"ve valhat, ezert ezeket a
   lemezdarabokat a FreeBSD lemezslice-oknak vagy egyszeru"en csak
   slice-oknak hivja. Peldaul a PC-s lemezparticiokkal dolgozo, fdisk
   nevu" FreeBSD-s segedprogram particiok helyett is slice-okra
   hivatkozik. A PC lemezenkent alapveto"en csak negy particiot enged
   meg. Ezeket a particiokat nevezik elso"dleges particioknak. Etto"l
   a korlatozastol egy uj tipus, a kiterjesztett particio
   letrehozasaval szabadultak meg, amivel igy negynel to:bb particio
   is keszitheto". Lemezenkent egyetlen ilyen kiterjesztett particio
   talalhato, de ezen belu:l specialis, un. logikai particiok
   hozhatoak letre.

   Minden particionak van egy particio-azonositoja, melyet a
   particion talalhato adatok tipusanak megallapitasara hasznalnak. A
   FreeBSD particioinak azonositoja a 165.

   Altalanossagban veve minden operacios rendszer igy azonositja a
   particiokat. Peldaul a DOS es annak leszarmazottai, mint peldaul a
   Windows, minden elso"dleges es logikai particiohoz egy C:-to"l
   indulo meghajto-betu"jelet tarsit.

   A FreeBSD-t egy elso"dleges particiora kell telepiteni. A FreeBSD
   az o:sszes adatat, beleertve minden altalunk letrehozott allomanyt
   is, ezen az egyetlen particion fogja elhelyezni. Ha viszont to:bb
   lemezu:nk van, to:bben is, vagy akar mindegyiken letrehozhatunk
   FreeBSD-s particiokat. A FreeBSD telepitesekor azonban legalabb
   egy ilyen particionak hasznalhatonak kell lennie. Ez lehet elo"re
   megtisztitott u:res particioi is, vagy akar egy olyan particio,
   amelyen mar nem hasznalt adatok vannak.

   Ha mar mindegyik particionk betelt, akkor a to:bbi operacios
   rendszer altal felkinalt eszko:zo:k (peldaul MS-DOS-ban vagy
   Windows-ban az fdisk) valamelyikevel elo"szo:r fel kell ko:zu:lu:k
   szabaditanunk egyet a FreeBSD szamara.

   Amennyiben akadna egy hasznalhato particio, akkor hasznaljuk azt.
   Ekkor azonban elo"fordulhat, hogy ehhez elo"szo:r a meglevo"k
   ko:zu:l o:ssze kell majd zsugoritanunk valamelyiket.

   A FreeBSD legkisebb telepitheto" valtozata nagyjabol 100 MB
   lemezteru:letet igenyel. Azonban ez egy nagyon kicsi valtozat es
   szinte semmi helyet nem hagy a sajat allomanyainknak. Sokkal
   valosaghu"bb, ha grafikus felu:let nelku:l nagyjabol 250 MB-ot
   mondunk, es legalabb 350 MB-ot a grafikus felu:let hasznalata
   eseten. Ha ezeken felu:l tovabbi szoftvereket is telepiteni
   kivanunk, meg to:bb helyre lesz szu:ksegu:nk.

   Amikor a FreeBSD szamara akarunk helyet csinalni, vagy particiokat
   akarunk atmeretezni, hasznaljuk peldaul a PartitionMagic(R) nevu"
   kereskedelmi szoftvert vagy esetleg egy olyan szabad eszko:zt,
   mint peldaul a GParted. A telepito" CD-n megtalalhato tools
   ko:nyvtarban talalhatunk erre a feladatra ket szabad szoftvert is,
   nev szerint a FIPS es PResizer programokat. Ugyanitt a hozzajuk
   tartozo dokumentacio is megtalalhato. A FIPS, a PResizer es a
   PartitionMagic egyarant kepes az MS-DOS es a Windows ME altal
   hasznalt FAT16 es FAT32 particiokat atmeretezni. Ismereteink
   szerint a PartitionMagic es a GParted is hasznalhato az NTFS
   particiokkal. A GParted szamos Live CD-s linuxos disztribucion
   megtalalhato, ilyen to:bbek ko:zt a SystemRescueCD.

   Gondok lehetnek azonban a Microsoft Vista altal hasznalt
   particiokkal. Ezert nem art, ha az atmeretezesekor a kezu:nk
   u:gyeben van a Vista telepito" CD-je. Termeszetesen, mint minden
   lemezkarbantasi mu"velet eseten, ilyenkor is hatarozottan ajanlott
   biztonsagi menteseket kesziteni.

     Figyelem: Az emlitett eszko:zo:k helytelen hasznalata
     megsemmisitheti a lemezeinken tarolt adatokat, ezert a
     hasznalatuk elo"tt gondoskodjunk friss, mu"ko:do"kepes
     biztonsagi mentesekro"l.

   Pelda 2-1. Meglevo" particio hasznalata a meret megvaltoztatasa
   nelku:l

   Tegyu:k fel, hogy a szamitogepu:nkben egyetlen 4 GB meretu" lemez
   van, amelyen megtalalhato a Windows valamelyik verzioja, es ezt a
   lemezt korabban ket, egyarant 2 GB meretu" meghajtora osztottuk, a
   C:-re es D:-re. 1 GB adatunk van a C: meghajton es fel GB a D:-n.

   Mindez tehat azt jelenti, hogy a lemezu:nko:n ket particio
   talalhato, betu"jelenkent egy. Ha atmasoljuk a D: meghajton levo"
   adatainkat a C: meghajtora, akkor ezzel felszabadithatjuk a
   FreeBSD szamara a masodik particiot.

   Pelda 2-2. Meglevo" particio zsugoritasa

   Tegyu:k fel, hogy a szamitogepu:nkben egyetlen 4 GB meretu" lemez
   van, amelyet teljes egeszeben a Windows valamelyik peldanya foglal
   el. A Windows telepitese soran ezert minden bizonnyal egyetlen
   nagy particiot hoztunk letre, amely a C: betu"jelet kapta es a
   merete 4 GB. Jelen pillanatban masfel GB helyet hasznalunk a
   lemezen, es szeretnenk a FreeBSD szamara 2 GB helyet
   felszabaditani.

   A FreeBSD telepitesehez a ko:vetkezo"k valamelyiket kell tennu:nk:

    1. Mentsu:k le a Windows-os adatainkat, telepitsu:k ujra a
       Windows-t ugy, hogy egy 2 GB meretu" particiot valasztunk neki
       a telepitese soran.

    2. A particio o:sszezsugoritasara hasznaljuk az elo"bb emlitett
       alkalmazasokat, peldaul a PartitionMagic-et.

     --------------------------------------------------------------

    2.3.3.2. A lemezek kiosztasa Alphan

   Alphan egy egesz lemezre lesz szu:ksegu:nk a FreeBSD
   telepitesehez, mivel jelen pillanatban nem tud mas rendszerekkel
   osztozni a lemezeken. A gepu:nkben talalhato lemez rendelkezhet
   IDE- vagy SCSI-csatoloval is, egyedu:l az a fontos, hogy el tudjuk
   rola inditani a rendszert.

   A Digital, illetve Compaq leirasainak megfelelo"en az SRM o:sszes
   parancsat nagybetu"kkel irjuk, habar az SRM nem ku:lo:nbo:zteti
   meg a kis- es nagybetu"ket.

   A gepu:nkben talalhato lemezek neveit es tipusat a az SRM
   konzolban kiadott SHOW DEVICE paranccsal kerdezhetju:k le:

 >>>SHOW DEVICE
 dka0.0.0.4.0               DKA0           TOSHIBA CD-ROM XM-57  3476
 dkc0.0.0.1009.0            DKC0                       RZ1BB-BS  0658
 dkc100.1.0.1009.0          DKC100             SEAGATE ST34501W  0015
 dva0.0.0.0.1               DVA0
 ewa0.0.0.3.0               EWA0              00-00-F8-75-6D-01
 pkc0.7.0.1009.0            PKC0                  SCSI Bus ID 7  5.27
 pqa0.0.0.4.0               PQA0                       PCI EIDE
 pqb0.0.1.4.0               PQB0                       PCI EIDE

   Ebben a peldaban egy Digital Personal Workstation 433au szerepel,
   es lathatjuk, hogy harom meghajtot csatlakoztattunk hozza. Ezek
   ko:zu:l az elso" a DKA0 nevet viselo" CD-ROM meghajto, valamint
   van meg ket tovabbi lemezu:nk, DKC0 es DKC100 neven.

   A DKx alaku nevvel rendelkezo" eszko:zo:k a SCSI-lemezek. Ennek
   megfelelo"en peldaul a DKA100 nev az elso" (A) SCSI-buszon
   talalhato 1 celazonositoval (target ID) ellatott SCSI-lemezre,
   miko:zben a DKC300 a harmadik (C) SCSI-buszon levo" 3
   celazonositoval ellatott SCSI-lemezre hivatkozik. A PKx alaku
   eszko:znev magara a SCSI-vezerlo"re vonatkozik. Ahogy az a SHOW
   DEVICE kimeneteben is latszik, a SCSI csatolon keresztu:l
   csatlakoztatott CD-ROM meghajtokat a to:bbi SCSI-merevlemezhez
   hasonlonak tekinti.

   Az IDE-lemezek nevei ehhez hasonloan DQx alakuak, ahol a PQx a
   hozzajuk tartozo IDE-vezerlo"t jelo:li.

     --------------------------------------------------------------

  2.3.4. Szedju:k o:ssze a halozati beallitasainkat

   Amennyiben a FreeBSD telepitesenek reszekent halozatra is
   szandekozunk csatlakozni (peldaul egy FTP vagy NFS szerverro"l
   akarunk telepiteni), ismernu:nk kell a halozatra vonatkozo
   beallitasainkat is. A telepito" ra fog kerdezni ezekre az
   informaciokra, amelyek megadasa utan a FreeBSD a telepites
   befejezesehez csatlakozni tud majd a halozatra.

     --------------------------------------------------------------

    2.3.4.1. Csatlakozas Ethernet-halozaton, kabel- vagy DSL-modemen
    keresztu:l

   Ha egy Ethernet-halozathoz, vagy magahoz az internethez
   csatlakozunk egy DSL- vagy kabelmodemen keresztu:l, akkor az
   alabbi adatokra lesz szu:ksegu:nk:

    1. IP-cim

    2. Az alapertelmezett atjaro IP-cime

    3. A gepu:nk neve

    4. DNS (nevfeloldo) szerverek IP-cimei

    5. Halozati maszk

   Ha nem ismerju:k ezeket, erdeklo"dju:nk a rendszergazdatol vagy a
   szolgaltatonktol. Elkepzelheto" az is, hogy mindezen informaciokat
   DHCP segitsegevel, automatikusan kapjuk meg. Ezt is mindenkeppen
   jegyezzu:k fel.

     --------------------------------------------------------------

    2.3.4.2. Kapcsolodas modemmel

   Ha az internet-szolgaltatonkhoz hagyomanyos modemen keresztu:l
   csatlakozunk, akkor is tudjuk telepiteni a FreeBSD-t interneten
   keresztu:l, azonban ez nagyon sokaig tarthat.

   Ehhez tudnunk kell:

    1. Az internet-szolgaltatonk behivoszamat

    2. A soros (COM) port szamat, amelyen keresztu:l a modem
       kapcsolodik a gepu:nkho:z

    3. Az internet-szolgaltatonktol kapott felhasznaloi nevet es
       jelszot

     --------------------------------------------------------------

  2.3.5. Olvassuk el FreeBSD hibajegyzeket

   Habar a FreeBSD Projekt igyekszik a FreeBSD minden egyes kiadasat
   a leheto" legmegbizhatobban felkesziteni, hibak ovatlanul is
   maradnak bennu:k. Nagyon ritka esetekben ezek a hibak magara a
   telepites folyamatara is kihathatnak. Amint ezeket a problemakat
   sikeru:l felderiteni es javitani, ro:gvest megjelennek a FreeBSD
   honlapjan talalhato hibajegyzekben (angolul). A telepites elo"tt
   ezert mindig ajanlott atolvasni ezt a dokumentumot, igy
   megbizonyosodunk rola, hogy semmilyen utolag felmeru:lt problema
   nem akadalyozza munkankat.

   Az o:sszes kiadashoz tartozo informacio, beleertve az egyes
   kiadasok hibajegyzekeit is, a FreeBSD honlapjarol a kiadasokra
   vonatkozo informaciokat tartalmazo reszen erheto" el (angolul).

     --------------------------------------------------------------

  2.3.6. Szerezzu:k be a FreeBSD telepitesehez szu:kseges allomanyokat

   A FreeBSD telepitese az alabbi helyek barmelyiken megtalalhato
   allomanyok felhasznalasaval to:rtenik:

   Lokalisan:

     * CD vagy DVD

     * Ugyanazon a szamitogepen levo" MS-DOS particio

     * SCSI- vagy QIC-szalag

     * Floppylemezek

   Halozaton keresztu:l:

     * FTP oldalrol, tu"zfalon keresztu:l vagy szu:kseg szerint HTTP
       proxy hasznalataval

     * NFS szerverro"l

     * Parhuzamos vagy soros vonali kapcsolaton keresztu:l

   Ha megvasaroltuk a FreeBSD telepito" CD-jet vagy DVD-jet, akkor
   mar mindennel rendelkezu:nk a telepiteshez. Lepju:nk batran tovabb
   a ko:vetkezo" szakaszra (2.3.7 Szakasz)!

   Ha eddig meg nem szereztu:k volna be a FreeBSD telepitesehez
   szu:kseges allomanyokat, ugorjunk a 2.13 Szakaszhoz, ahol
   megtudhatjuk, hogyan keszitsu:k elo" a FreeBSD telepiteset az
   iment felsorolt helyzetekben. A szakasz elolvasasa utan pedig
   jo:jju:nk vissza ide, majd folytassuk az olvasast a 2.3.7
   Szakaszban.

     --------------------------------------------------------------

  2.3.7. Keszitsu:nk egy rendszerindito lemezt

   A FreeBSD telepitese ugy kezdo"dik, hogy a szamitogepu:nkkel a
   FreeBSD telepito"jet inditjuk el -- ez viszont nem egy olyan
   program, amit mas operacios rendszerben el tudunk inditani. A
   szamitogepu:nk altalaban a merevlemezu:nkre telepitett operacios
   rendszert inditja el, azonban beallithato ugy is, hogy az
   indulasahoz egy un. "rendszerindito" (bootolhato) floppy lemezt
   hasznaljon. Napjaink szamitogepei azonban a CD-meghajtoban levo"
   CD-kro"l is el tudnak indulni.

     Tipp: Ha CD-n vagy DVD-n megvan a FreeBSD telepito"je (akar
     megvettu:k, akar eppen magunk keszitettu:k) es a szamitogepu:nk
     tud CD-ro"l vagy DVD-ro"l rendszert inditani (a BIOS-ban van egy
     "Boot Order" vagy hozza hasonlo nevu" beallitas), akkor
     kihagyhatjuk ezt a szakaszt. A FreeBSD CD- es DVD image-ek
     kiirasaval egy rendszerinditasra alkalmas lemezt kapunk, amiro"l
     minden tovabbi elo"keszu:let nelku:l telepithetu:nk.

   A rendszerindito floppy lemezt az alabbi lepesek menten haladva
   tudjuk elkesziteni:

    1. A rendszerindito lemezek image-einek beszerzese

       A rendszerindito lemezek a telepito"eszko:z floppies/
       ko:nyvtaraban talalhatoak, illetve leto:ltheto"ek az
       ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<architektura>/<valtozat>-RELEASE/floppies/
       helyro"l. Az <architektura> es <valtozat> helyere termesztesen
       irjuk be a telepiteni kivant architekturat es verziot. Igy
       peldaul a FreeBSD/i386 7.2-RELEASE rendszerindito lemezei az
       ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/7.2-RELEASE/floppies/
       cimro"l erheto"ek el.

       A floppyk image-einek .flp kiterjesztesu"ek. A floppies/
       ko:nyvtar szamos ku:lo:nfele image-et tartalmaz, ezek ko:zu:l
       leginkabb a telepitendo" FreeBSD valtozat, valamint emellett
       olykor konkretan a hardver hatarozza meg a hasznalandot. Az
       esetek tulnyomo reszeben negy floppyra lesz szu:ksegu:nk:
       boot.flp, kern1.flp, kern2.flp es kern3.flp. A lemezek
       image-eit illeto" legfrissebb informaciokat ugyanazon a
       ko:nyvtaron belu:l szereplo" README.TXT allomanyban
       olvashatjuk (angolul).

         Fontos: Az FTP-hez hasznalt programunkat az image-ek
         leto:ltese soran ne felejtsu:k el binaris (binary) atviteli
         modban hasznalni. Egyes bo:ngeszo"k hajlamosak ugyanis
         szo:veges (text vagy ASCII) atviteli modot hasznalni, ami
         viszont csak abbol veheto" eszre, hogy nem tudjuk a
         lemezekro"l elinditani a rendszert.

    2. A floppyk elo"keszitese

       Mindegyik leto:ltendo" image-hez elo" kell kesziteni egy-egy
       hajlekonylemezt. Nagyon fontos, hogy ezek a lemezek teljesen
       hibatlanok legyenek. Erro"l a legko:nnyebben ugy
       gyo"zo"dhetu:nk meg, ha a lemezeket magunk formazzuk, es nem
       bizunk a ku:lo:nfele elo"reformazott (preformatted)
       floppykban. A Windows-ban talalhato formazo segedprogram sem
       arul neku:nk semmit a lemezeken talalhato hibas reszekro"l,
       egyszeru"en csak "rossznak" (bad) jelo:li meg es figyelmen
       kivu:l hagyja ezeket. Hatarozottan ajanljuk, hogy amennyiben a
       telepitesnek ezt a modjat valasztjuk, mindig hasznaljunk
       teljesen uj floppykat.

         Fontos: Ha megprobaljuk telepiteni a FreeBSD-t, es a
         telepito"program o:sszeomlik, lefagy vagy barmilyen
         furcsasagot mu"vel, elso"kent mindenkeppen a floppykra
         gyanakodhatunk. Ilyenkor irjuk ki az image-eket uj lemezekre
         es probalkozzunk ujra a telepitessel.

    3. Az image-ek kiirasa a floppykra

       Az .flp kiterjesztesu" allomanyok nem a lemezre masolhato
       hagyomanyos allomanyok, hanem a lemezek teljes tartalmanak
       kepei, ezert ezeket egyszeru"en nem masolhatjuk egyik
       lemezro"l a masikra. Az image-ek ko:zvetlen lemezreirasahoz
       ehelyett kifejezetten erre a celra alkalmas eszko:zo:ket kell
       hasznalnunk.

       Azok szamara, akik a floppykat MS-DOS/Windows rendszeru"
       szamitogepeken kivanjak elkesziteni, mellekeltu:nk egy fdimage
       nevu" segedprogramot.

       Ha a CD-meghajtonk betu"jele peldaul E: es a telepito" CD-n
       talalhato image-eket szeretnenk kiirni vele, akkor ezt a
       parancsot kell kiadnunk:

 E:\> tools\fdimage floppies\boot.flp A:

       Ezutan ismetelten adjuk ki az imenti parancsot minden egyes
       hasznalni kivant .flp allomanyra, azonban elo"tte mindig
       tegyu:nk be egy ujabb floppyt, es a rairt image-ek neveivel
       folyamatosan cimkezzu:k fel a lemezeket. A megadott parancsot
       termeszetesen mindig irjuk at a konkret .flp allomanyok
       tenyleges eleresi utvonalainak megfelelo"en. Ha nincs CD-nk,
       akkor az fdimage programot az FreeBSD FTP oldalan talalhato
       tools ko:nyvtarbol is leto:lthetju:k.

       Amikor a lemezeket egy UNIX rendszeren keszitenenk el (peldaul
       egy masik FreeBSD rendszeren), akkor a dd(1) parancs is
       hasznalhato az image-ek ko:zvetlen lemezreirasahoz. FreeBSD
       alatt igy nez ki a parameterezese:

 # dd if=boot.flp of=/dev/fd0

       FreeBSD-n a /dev/fd0 az elso" hajlekonylemezes meghajtora
       hivatkozik (tehat az A: betu"jelu" meghajtora). Ennek
       megfelelo"en a /dev/fd1 jelenti a B: meghajtot es igy tovabb.
       Mas UNIX valtozatok esetleg mas neveket hasznalhatnak a
       hajlekonylemezes meghajtok megnevezesere, ezert erro"l erdemes
       ilyenkor tajekozodni az adott rendszerhez tartozo
       dokumentacioban.

   Most mar keszen allunk a FreeBSD telepitesere!

     --------------------------------------------------------------

2.4. A telepites megkezdese

     Fontos: Alapertelmezes szerint a telepites egeszen addig nem fog
     semmit sem irni a lemezekre, amig a ko:vetkezo" u:zenet fel nem
     bukkan:

 Last Chance: Are you SURE you want continue the installation?

 If you're running this on a disk with data you wish to save then WE
 STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding!

 We can take no responsibility for lost disk contents!

     A szo:veg forditasa:

 Utolso esely: BIZTOSAN folytatni kivanja a telepitest?

 Ha olyan lemezre szeretne telepiteni, amelyen fontos adatok
 talalhatoak, HATAROZOTTAN JAVASOLJUK, hogy a tovabblepes elo"tt
 KESZITSEN ROLUK MEGBIZHATO BIZTONSAGI MASOLATOT!

 Nem vallalunk semmilyen felelo"sseget az elveszett adatokert!

     A telepito"bo"l tehat a fenti, vegso" figyelmeztetes elo"tt
     barmikor ki lehet lepni anelku:l, hogy a merevlemezu:nko:n levo"
     adatokat veszelyeztetnenk. Ha ugy erezzu:k, hogy valamit
     veletlenu:l rosszul allitottunk volna be a telepites soran,
     ekkor meg minden komolyabb kar okozasa nelku:l kikapcsolhatjuk a
     szamitogepu:nket.

     --------------------------------------------------------------

  2.4.1. A rendszer inditasa

    2.4.1.1. Rendszerinditas i386(TM)-on

    1. Kezdju:nk egy kikapcsolt szamitogeppel.

    2. Kapcsoljuk be a szamitogepet. Az indulasa soran latnunk kell
       egy olyan opciot, amivel be tudunk lepni a rendszer
       beallitasait tartalmazo menu:be, avagy a BIOS-ba. Ezt
       to:bbnyire a F2, F10, Del vagy a Alt+S lenyomasaval erhetju:k
       el. Ezek ko:zu:l hasznaljuk a kepernyo"n megjeleno"
       billentyu"ket. Elo"fordulhat, hogy indulaskor a szamitogepu:nk
       semmilyen szo:veget, csak egy kepet mutat. Ilyenkor altalaban
       a Esc billentyu" megnyomasara eltu"nik a kep es lathatova
       valnak a szamunkra fontos u:zenetek.

    3. Miutan beleptu:nk a menu:be, keressu:k meg azt a beallitast,
       amely a rendszerinditashoz hasznalt eszko:zt hatarozza meg.
       Ennek a neve sokszor "Boot Order" (rendszerinditasi sorrend)
       vagy valami hozza hasonlo. Itt mindenfele eszko:z felsorolasat
       talaljuk: Floppy, CDROM, First Hard Disk (elso" merevlemezes
       meghajto) es igy tovabb.

       Ha a rendszerinditashoz korabban floppykat keszitettu:nk elo",
       gondoskodjunk rola, hogy itt a floppyra vonatkozo beallitast
       valasszuk ki. Amennyiben viszont CD-ro"l akarjuk a telepitest
       elinditani, akkor helyette azt valasszuk. Ha barmilyen ketseg
       meru:lne fel bennu:nk, keressu:k meg ezt a beallitast a
       szamitogephez es/vagy az alaplaphoz kapott keziko:nyvben.

       Igenyeink szerint vegezzu:k el a beallitast, majd mentsu:k el
       es lepju:nk ki. Most inditsuk ujra a szamitogepet.

    4. Ha a 2.3.7 Szakaszban leirtak szerint rendszerindito lemezeket
       keszitettu:nk, akkor ezek valamelyike lesz az elso"
       rendszerindito lemez, valoszinu"leg az, amelyikre a boot.flp
       image tartalmat irtuk ki. Ezt a lemezt tegyu:k a meghajtoba.

       Ha CD-ro"l inditjuk a telepitest, akkor kapcsoljuk be a
       szamitogepet es az elindulasa utan igyekezzu:nk minel hamarabb
       betenni a lemezt a meghajtoba.

       Ha minden probalkozasunk ellenere a szamitogepu:nk a
       megszokott modon indul es a meglevo" operacios rendszert
       to:lti be, akkor a ko:vetkezo"kkel lehet a gond:

         1. A lemezeket nem raktuk be elegge koran. Hagyjuk benn
            ezeket es probaljuk meg ismet ujrainditani a
            szamitogepet.

         2. Nem allitottuk be jol a BIOS-t. Probaljuk meg egeszen
            addig ujra vegrehajtani az elo"zo" lepest, amig a
            megfelelo" beallitast el nem talaljuk.

         3. A BIOS nem tamogatja a kivalasztott eszko:zro"l to:rteno"
            rendszerinditast.

    5. A FreeBSD megkezdi az indulasat. Ha CD-ro"l inditjuk, akkor
       valami ehhez hasonlot fogunk latni (a konkret verziora
       vonatkozo adatokat itt most kihagytuk):

 Booting from CD-Rom...
 CD Loader 1.2

 Building the boot loader arguments
 Looking up /BOOT/LOADER... Found
 Relocating the loader and the BTX
 Starting the BTX loader

 BTX loader 1.00 BTX version is 1.01
 Console: internal video/keyboard
 BIOS CD is cd0
 BIOS drive C: is disk0
 BIOS drive D: is disk1
 BIOS 639kB/261120kB available memory

 FreeBSD/i386 bootstrap loader, Revision 1.1

 Loading /boot/defaults/loader.conf
 /boot/kernel/kernel text=0x64daa0 data=0xa4e80+0xa9e40 syms=[0x4+0x6cac0+0x4+0x88e9d]
 \

       Amikor floppyrol inditjuk a rendszert, ehhez hasonloval
       talalkozhatunk (itt sem szerepelnek most verzioadatok):

 Booting from Floppy...
 Uncompressing ... done

 BTX loader 1.00  BTX version is 1.01
 Console: internal video/keyboard
 BIOS drive A: is disk0
 BIOS drive C: is disk1
 BIOS 639kB/261120kB available memory

 FreeBSD/i386 bootstrap loader, Revision 1.1

 Loading /boot/defaults/loader.conf
 /kernel text=0x277391 data=0x3268c+0x332a8 |

 Insert disk labelled "Kernel floppy 1" and press any key...

       Ko:vessu:k a kepernyo"n megjeleno" utasitast ("Helyezze be a
       "Kernel floppy 1" cimkeju" lemezt es nyomjon meg egy
       billentyu"t..."), tehat vegyu:k ki a boot.flp image-hez
       tartozo lemezt es tegyu:k be helyette a kern1.flp image-hez
       tartozo lemezt, majd nyomjuk le az Enter billentyu"t. Varjuk
       meg amig a rendszer megkezdi az indulast az elso" lemezro"l,
       majd az utasitasoknak megfelelo"en folyamatosan tegyu:k be a
       soron ko:vetkezo" lemezeket.

    6. Miutan elinditottuk a rendszert floppyrol vagy CD-ro"l, a
       rendszerinditasi folyamat be fogja hozni a FreeBSD
       rendszerto:lto"jenek menu:jet:

       Abra 2-1. FreeBSD rendszerbeto:lto" menu:je

       Varjuk ki a tiz masodperces szu:netet vagy egybo"l nyomjuk le
       az Enter billentyu"t.

     --------------------------------------------------------------

    2.4.1.2. Rendszerinditas Alphan

    1. Kezdju:nk egy kikapcsolt szamitogeppel.

    2. Kapcsoljuk be a szamitogepet es varjuk meg rendszerindito
       monitor parancssorat.

    3. Ha a 2.3.7 Szakaszban leirtak szerint keszitettu:nk
       rendszerindito lemezeket, akkor ezek valamelyike lesz majd a
       rendszer inditasahoz hasznalt elso" lemez, valoszinu"leg az,
       amelyik a boot.flp image-et tartalmazza. Helyezzu:k ezt a
       lemezt a hajlekonylemezes meghajtoba es a rendszer inditasahoz
       irjuk be a ko:vetkezo" parancsot (amennyiben szu:kseges, a
       DVA0-rol irjuk at benne a sajat lemezes meghajtonk
       hivatkozasat):

 >>>BOOT DVA0 -FLAGS '' -FILE ''

       Ha CD-ro"l telepitu:nk, akkor tegyu:k a CD-t a meghajtojaba es
       a telepiteshez megkezdesehez irjuk be az alabbi parancsot (ha
       szu:kseg lenne ra, irjuk at DKA0-t a sajat CD-meghajtonk
       hivatkozasara):

 >>>BOOT DKA0 -FLAGS '' -FILE ''

    4. A FreeBSD megkezdi az indulasat. Amennyiben floppyrol
       inditjuk, hamarosan fel fog jo:nni a ko:vetkezo" u:zenet:

 Insert disk labelled "Kernel floppy 1" and press any key...

       Ko:vessu:k az utasitast ("Helyezze be a "Kernel floppy 1"
       cimkeju" lemezt es nyomjon le egy billentyu"t..."), tehat
       vegyu:k ki a boot.flp image-et tartalmazo lemezt es tegyu:k be
       helyette a kern1.flp image-et tartalmazo lemezt, majd zarjuk
       le a folyamatot az Enter lenyomasaval.

    5. Akar floppyrol, akar CD-ro"l inditottuk a rendszert, a
       rendszeinditas folyamata elo"bb-utobb eljut ehhez a reszhez:

 Hit [Enter] to boot immediately, or any other key for command prompt.
 Booting [kernel] in 9 seconds... _

       Az u:zenet forditasa:

 A ko:zvetlen inditashoz nyomja le az [Enter] billentyu"t, vagy egy
 masik billentyu"t a paranccsor felhozasahoz.
 A [kernel] inditasa 9 masodpercen belu:l... _

       Varjuk tiz masodpercet vagy egyszeru"en nyomjuk le az Enter
       billentyu"t. Ezzel elindul a rendszermag beallitasait
       tartalmazo menu:.

     --------------------------------------------------------------

    2.4.1.3. Rendszerinditas Sparc64(R)-en

   A legto:bb Sparc64(R) alapu rendszert ugy allitottak be, hogy
   automatikusan lemezro"l induljon. A FreeBSD telepitesehez azonban
   halozaton keresztu:l vagy CD-ro"l kell inditanunk a rendszert,
   ezert modositanunk kell a PROM (az OpenFirmware) beallitasait.

   Mindehhez inditsuk ujra a rendszert es varjuk meg, amig feltu"nik
   a rendszerindito u:zenet. A konkret u:zenet nagyban fu:gg a
   szamitogep tipusatol, azonban valami ilyesmi lesz:

 Sun Blade 100 (UltraSPARC-IIe), Keyboard Present
 Copyright 1998-2001 Sun Microsystems, Inc.  All rights reserved.
 OpenBoot 4.2, 128 MB memory installed, Serial #51090132.
 Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.

   Amikor megprobalja a rendszert elinditani a lemezro"l, a PROM
   parancssoranak bekereshez nyomjuk le a billentyu"zeten az L1+A
   vagy a Stop+A billentyu"ket, esetleg a soros konzolon keresztu:l
   ku:ldju:nk egy BREAK parancsot (peldaul a tip(1) vagy cu(1) man
   oldalakon szereplo" ~# parancs hasznalataval). Ko:ru:lbelu:l igy
   nez ki:

 ok         (1)
 ok {0}     (2)

   (1)
           Ez a fajta parancssor csak az egy processzorral
           rendelkezo" rendszereken jelenik meg.
   (2)
           Ez a fajta parancssor to:bbprocesszoros (SMP) rendszereken
           jelenik meg, ahol a szam az eppen aktiv processzor
           sorszamat jelo:li.

   Most helyezzu:k a CD-t a meghajtoba, es a PROM parancssoraban
   pedig gepelju:k be boot cdrom parancsot.

     --------------------------------------------------------------

  2.4.2. Az eszko:zkereses eredmenyeinek vizsgalata

   A kepernyo"n megjeleno" utolso par szaz sor mindig eltarolodik,
   keso"bb tetszo"legesen atvizsgalhatoak.

   A puffer tartalmanak atnezesehez nyomjuk le a Scroll Lock
   billentyu"t, amivel bekapcsoljuk a korabban megjelent u:zenetek
   ko:zti visszalepest. Itt a nyilbillentyu"k, vagy a PageUp es
   PageDown billentyu"k hasznalhatoak a kiirasok atbo:ngeszesehez. A
   Scroll Lock ismetelt lenyomasaval kilephetu:nk ebbo"l a modbol.

   Tegyu:k most mi is ezt, es nezzu:k az o:sszes olyan u:zenetet,
   amely a rendszermag indulasa soran keletkezett. A 2-2 Abraban
   lathato szo:vegekhez hasonloakat fogunk talalni, habar ez a
   szamitogepben talalhato konkret eszko:zo:kto"l fu:ggo"en eltero"
   lehet.

   Abra 2-2. Pelda az eszko:zkereses eredmenyeire

 avail memory = 253050880 (247120K bytes)
 Preloaded elf kernel "kernel" at 0xc0817000.
 Preloaded mfs_root "/mfsroot" at 0xc0817084.
 md0: Preloaded image </mfsroot> 4423680 bytes at 0xc03ddcd4

 md1: Malloc disk
 Using $PIR table, 4 entries at 0xc00fde60
 npx0: <math processor> on motherboard  
 npx0: INT 16 interface  
 pcib0: <Host to PCI bridge> on motherboard
 pci0: <PCI bus> on pcib0
 pcib1:<VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0
 pci1: <PCI bus> on pcib1
 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11
 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0
 isa0: <iSA bus> on isab0
 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0
 ata0: at 0x1f0 irq 14 on atapci0
 ata1: at 0x170 irq 15 on atapci0
 uhci0 <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci
 0
 usb0: <VIA 83572 USB controller> on uhci0
 usb0: USB revision 1.0
 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1
 uhub0: 2 ports with 2 removable, self powered
 pci0: <unknown card> (vendor=0x1106, dev=0x3040) at 7.3
 dc0: <ADMtek AN985 10/100BaseTX> port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir
 q 11 at device 8.0 on pci0
 dc0: Ethernet address: 00:04:5a:74:6b:b5
 miibus0: <MII bus> on dc0
 ukphy0: <Generic IEEE 802.3u media interface> on miibus0
 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xec00-0xec1f irq 9 at device 10.
 0 on pci0
 ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit)
 isa0: too many dependant configs (8)
 isa0: unexpected small tag 14
 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0
 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0
 fdc0: FIFO enabled, 8 bytes threshold
 fd0: <1440-KB 3.5'' drive> on fdc0 drive 0
 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
 atkbd0: <AT Keyboard> flags 0x1 irq1 on atkbdc0
 kbd0 at atkbd0
 psm0: <PS/2 Mouse> irq 12 on atkbdc0
 psm0: model Generic PS/@ mouse, device ID 0
 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
 sc0: <System console> at flags 0x100 on isa0
 sc0: VGA <16 virtual consoles, flags=0x300>
 sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
 sio0: type 16550A
 sio1 at port 0x2f8-0x2ff irq 3 on isa0
 sio1: type 16550A
 ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
 pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
 ppc0: FIFO with 16/16/15 bytes threshold
 plip0: <PLIP network interface> on ppbus0
 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master UDMA33
 acd0: CD-RW <LITE-ON LTR-1210B> at ata1-slave PIO4
 Mounting root from ufs:/dev/md0c
 /stand/sysinstall running as init on vty0

   Figyelmesen olvassuk at az u:zeneteket, es bizonyosodjuk meg rola,
   hogy a FreeBSD minden szamunkra fontos eszko:zt felismert. Ha nem
   latunk egy eszko:zt, akkor azt valoszinu"leg nem talalta meg. Egy
   sajat rendszermag letrehozasaval azonban fel tudunk ismertetni
   olyan eszko:zo:ket is, amelyek tamogatasa eredetileg nem szerepel
   a GENERIC rendszermagban. Ilyenek peldaul a hangkartyak.

   A FreeBSD 6.2 vagy keso"bbi valtozataiban az eszko:zo:k
   felkutatasa utan a 2-3 Abraban lathatoak ko:vetkeznek. Itt a
   nyilbillentyu"k segitsegevel valaszthatjuk ki az orszagot
   (country), terseget (region) vagy csoportot (group). Az Enter
   lenyomasa utan pillanatok alatt beallitodik az orszagunknak es
   billentyu"zetu:nknek megfelelo" kiosztas. Ha meg akarjuk ismetelni
   az imenti beallitast, pillanatok alatt ki tudunk lepni a
   sysinstall programbol.

   Abra 2-3. Az orszag kivalasztasa

   Abra 2-4. Kilepes a sysinstall programbol

   A telepito"program fo"kepernyo"jen valasszuk ki a
   nyilbillentyu"kkel az Exit Install ("Kilepes a telepitesbo"l")
   menu:pontot. Erre a ko:vetkezo" u:zenet fog megjelenni:

                       User Confirmation Requested
          Are you sure you wish to exit? The system will reboot
            (be sure to remove any floppies/CDs/DVDs from the drives).

                             [ Yes ]    No

   Az u:zenet forditasa:

                   Felhasznaloi megero"sites szu:kseges
          Valoban ki akar lepni? A rendszer ezt ko:veto"en ujra fog
          indulni (ezert ne felejtsu:k el eltavolitani az o:sszes
          floppyt, CD-t es DVD-t a meghajtokbol)!

                            [ Igen ]    Nem

   Ha a CD-t bennhagyjuk a meghajtoban es a [ Yes ] valaszt adjuk,
   akkor a telepito"program meg egyszer el fog indulni.

   Ha floppyrol inditottuk volna a rendszert, az ujrainditas elo"tt
   vegyu:k ki a boot.flp image-et tartalmazo lemezt.

     --------------------------------------------------------------

2.5. A sysinstall bemutatasa

   A sysinstall a FreeBSD Projekt altal fejlesztett telepito"program.
   Konzol alapu, menu:kre es kepernyo"kre oszlik, amelyeken a
   beallitasokat es a telepitesi folyamat iranyitasat tudjuk
   elvegezni.

   A sysinstall menu:rendszeret to:bb mas billentyu" mellett
   legfo"keppen a nyilbillentyu"kkel, az Enter, Tab es a Szoko:z
   billentyu"kkel kezelhetju:k. Ezek es az altaluk elvegezheto"
   feladatok reszletes leirasa a sysinstall hasznalatarol szolo
   informaciok ko:zo:tt talalhato.

   Ennek megtekintesehez elo"szo:r gyo"zo"dju:nk meg rola, hogy a 2-5
   Abra altal illusztralt helyzetnek megfelelo"en kivalasztottuk a
   Usage ("Hasznalat") menu:pontot es a [Select] ("Kivalaszt")
   feliratu gombon allunk, majd nyomjuk le az Enter billentyu"t.

   Ezt ko:veto"en megjelenik a menu:rendszer hasznalatat bemutato
   leiras. Miutan vegigolvastuk, a fo"menu:be az Enter billentyu"
   lenyomasaval tudunk visszajutni.

   Abra 2-5. A "Usage" kivalasztasa a sysinstall fo"menu:jeben

     --------------------------------------------------------------

  2.5.1. A dokumentacios menu: kivalasztasa

   A fo"menu:ben a nyilbillentyu"kkel valasszuk a Doc feliratu
   menu:pontot es nyomjuk meg az Enter billentyu"t.

   Abra 2-6. A dokumentacios menu: kivalasztasa

   Ezzel megjelenik a dokumentacios menu:.

   Abra 2-7. A sysinstall dokumentacios menu:je

   Feltetlenu:l olvassuk el az itt talalhato leirasokat.

   A dokumentumok elolvasasahoz elo"szo:r valasszunk ko:zu:lu:k a
   nyilbillentyu"kkel, majd nyomjuk meg az Enter billentyu"t. A
   dokumentum elolvasasa utan az Enter lenyomasaval tudunk
   visszaterni a dokumentacios menu:be.

   A dokumentacios menu:bo"l a fo"menu:be ugy tudunk kilepni, ha a
   nyilbillentyu"kkel kivalasztjuk az Exit ("Kilepes") menu:pontot es
   megnyomjuk az Enter billentyu"t.

     --------------------------------------------------------------

  2.5.2. A billentyu"kiosztas menu:jenek kivalasztasa

   A billentyu"zetkiosztas megvaltoztatasahoz valasszuk ki a
   nyilbillentyu"k segitsegevel a Keymap menu:pontot a menu:bo"l es
   nyomjuk meg az Enter billentyu"t. Erre termeszetesen csak akkor
   lesz szu:ksegu:nk, ha nem szabvanyos vagy nem angol
   billentyu"zetet hasznalunk.

   Abra 2-8. A sysinstall fo"menu:je

   A ku:lo:nbo:zo" billentyu"kiosztasoknak megfelelo" menu:pontok a
   fel/le nyilak es a Szoko:z billentyu" segitsegevel valaszthatoak
   ki. A Szoko:z ismetelt lenyomasaval to:ro:lju:k a valasztasunkat.
   A befejezeshez valasszuk ki a nyilakkal a [ OK ] gombot es nyomjuk
   le az Enter billentyu"t.

   A mellekelt kepen a lista egy resze lathato csupan. Ha a Tab
   billentyu"vel a [ Cancel ] gombot valasztjuk, akkor az
   alapertelmezett billentyu"kiosztast kapjuk es visszakeru:lu:nk a
   fo"menu:be.

   Abra 2-9. A sysinstall billentyu"kiosztast beallito menu:je

     --------------------------------------------------------------

  2.5.3. A telepites beallitasai tartalmazo kepernyo"

   Valasszuk az Options ("Beallitasok") menu:pontot, majd nyomjuk le
   az Enter billentyu"t.

   Abra 2-10. A sysinstall fo"menu:je

   Abra 2-11. A sysinstall beallitasai

   Az itt szereplo" alapertelmezett ertekek a legto:bb felhasznalo
   szamara minden tovabbi nelku:l megfelelnek, nem szu:kseges a
   megvaltoztatasuk. A kiadas neve ("release name") mezo" erteke a
   telepitendo" verziotol fu:ggo"en valtozhat.

   A kivalasztott mezo" ro:vid leirasa a kepernyo" aljan, kekkel
   kiemelten jelenik meg. A Use Defaults ("Az alapertelmezesek
   hasznalata") beallitas az alapertelmezesere allitja vissza az
   o:sszes erteket.

   Az F1 lenyomasaval elolvashatjuk a ku:lo:nbo:zo" beallitasokhoz
   tartozo sugot.

   A Q billentyu"vel visszaterhetu:nk a fo"menu:be.

     --------------------------------------------------------------

  2.5.4. Egy szabvanyos telepites megkezdese

   A Standard ("Szabvanyos") elnevezesu" menu:pont altal felkinalt
   telepitesi modszer ajanlott a UNIX-szal vagy a FreeBSD most
   ismerkedo"k szamara. A telepites megkezdesehez a nyilakkal
   valasszuk ki a Standard menu:pontot, majd nyomjuk meg az Enter
   billentyu"t.

   Abra 2-12. Egy szabvanyos telepites megkezdese

     --------------------------------------------------------------

2.6. Lemezteru:let lefoglalasa

   Elso" feladatunk lemezteru:letet foglalni a FreeBSD szamara, majd
   megcimkezni azt, hogy a sysinstall elo" tudja kesziteni. Ehhez
   tisztaban kell lennu:nk azzal, hogy a FreeBSD milyen formaban is
   keresi az adatokat a lemezu:nko:n.

     --------------------------------------------------------------

  2.6.1. A BIOS meghajtoszamozasa

   Egy temara ku:lo:no:sen tekintettel kell lennu:nk mielo"tt
   telepitenenk es beallitanank a FreeBSD-t a rendszeru:nko:n, fo"leg
   abban az esetben, ha to:bb merevlemezu:nk is van.

   Egy BIOS-fu:ggo" operacios rendszert, peldaul MS-DOS-t vagy
   Windows-t futatto PC eseten a BIOS az operacios rendszer
   beleegyezesevel kepes elvonatkoztatni a lemezek megszokott
   sorrendjeto"l. Ennek ko:szo:nheto"en a felhasznalo nem csak az un.
   "primary master" (elso"dleges master) merevlemezes meghajtotol
   tudja elinditani a rendszert. Ez kifejezetten kenyelmes megoldas
   az olyan felhasznalok szamara, akik az elso"vel teljesen
   megegyezo" masodik merevlemez megvasarlasaval kialakitottak a
   rendszeru:k egyszeru" es egyben a legolcsobb biztonsagi menteset,
   amire a Ghost(R) vagy XCOPY programokkal tudnak rendszeres
   masolatokat kesziteni. Igy, ha az elso"dleges meghajto to:nkremegy
   vagy virus tamadja meg, esetleg az operacios rendszer egy hiba
   miatt hasznalhatatlanna teszi, akkor a BIOS-t utasithatjuk a
   meghajtok logikai cserejere es ezzel ko:nnyen helyre tudjuk
   allitani. Olyan, mintha a haz felnyitasa nelku:l felcsereltu:k
   volna a lemezeket beko:to" kabeleket.

   A SCSI-vezerlo"kkel szerelt dragabb rendszerek gyakran
   tartalmaznak olyan BIOS-bo"viteseket, amelyeken keresztu:l a
   SCSI-lemezek ugyanigy tetszo"legesen atrendezheto"ek, egeszen het
   meghajtoig.

   Az ilyen leheto"segek hasznalatahoz szokott felhasznalokat azonban
   ko:nnyen csalodas erheti, amikor a FreeBSD nem az elvarasaiknak
   megfelelo"en cselekszik. A FreeBSD ugyanis nem hasznalja a BIOS-t
   es nem ismeri a "BIOS logikai meghajtokiosztasat". Ez
   megho:kkento" eredmenyekre vezethet, fo"leg akkor, amikor
   parametereiket tekintve a meghajtok fizikailag teljesen
   megegyeznek es raadasul egymas masolatait tartalmazzak.

   A FreeBSD telepitese elo"tt mindig allitsuk vissza a BIOS-ban a
   meghajtok eredeti sorrendjet, es a hasznalatahoz hagyjuk is igy
   ezt a beallitast. Ha valamiert megis meg kellene cserelnu:nk a
   meghajtokat, akkor ezentul valasszuk a nehezebb utat: nyissuk ki a
   gephazat es ko:ssu:k at a kabeleket, tegyu:k at a jumpereket mi
   magunk.

   +----------------------------------------------------------------+
   | Reszlet Fredi es Vili ku:lo:nleges kalandjaibol:               |
   |                                                                |
   | Vili fogott egy o:reg Winteles szamitogepet, hogy keszitsen    |
   | belo"le egy FreeBSD-s rendszert Fredinek. Vili ehhez beszerel  |
   | egy SCSI-meghajtot, ami igy nullas SCSI-egyseg lesz, majd      |
   | telepiti ra a FreeBSD-t.                                       |
   |                                                                |
   | Fredi nekilat hasznalni a rendszert, azonban par nap           |
   | elteltevel tapasztalja, hogy az o:regecske SCSI-meghajto       |
   | szamos aprobb hibat jelez, es ezert szol Vilinek.              |
   |                                                                |
   | Nehany nappal keso"bb Vili eldo:nti, ideje pontot tenni az     |
   | u:gy vegere, ezert a raktarban levo" SCSI-lemezek ko:ztu:l     |
   | elhoz az eredetivel egy teljesen megegyezo"t. Az elo"zetes     |
   | felu:letelleno"rzes eredmenyei szerint a meghajto to:keletesen |
   | mu"ko:dik, ezert Vili beszerelni ezt a meghajtot a negyes      |
   | SCSI-egysegkent, majd lemasolja a nullas meghajto tartalmat a  |
   | negyesre. Miutan beszerelte a to:keletesen u:zemelo" uj        |
   | meghajtot, Vili ugy hataroz, ideje megkezdeni a hasznalatat,   |
   | ezert beallitja a SCSI BIOS-at, hogy a rendszer a nullas       |
   | helyett ezentul a negyes egysegro"l induljon. A FreeBSD        |
   | elindul es mindenki o:ru:l.                                    |
   |                                                                |
   | Fredi ezutan folytatja megszokott munkajat, majd Vili es Fredi |
   | ugy gondoljak, itt az ideje az ujabb izgalmaknak --            |
   | frissitsu:nk a FreeBSD egy ujabb valtozatara. Vili ekkor       |
   | eltavolitja a nullas SCSI-egyseget, mivel mar egyebkent is     |
   | kezdett to:nkremenni, es kicsereli egy masik teljesen azonos   |
   | lemezes meghajtora. Vili ezt ko:veto"en Fredi internetro"l     |
   | leto:lto:tt varazslatos floppyjainak segitsegevel feltelepiti  |
   | a FreeBSD uj verziojat az uj nullas SCSI-egysegre. A telepites |
   | minden gond nelku:l lezajlik.                                  |
   |                                                                |
   | Fredi probalgatja is a FreeBSD uj valtozatat nehany napig, es  |
   | szamara ez elegendo" bizonyitek ahhoz, hogy a munkahelyen is   |
   | hasznalja. Ideje hat atmasolni a regi munkait, ezert Fredi     |
   | csatlakoztatja a (korabbi FreeBSD valtozat legfrissebb         |
   | valtozatat tartalmazo) negyes SCSI-egyseget. Fredin azonban    |
   | hirtelen aggodalom to:r ki, hiszen a negyes SCSI-egysegen      |
   | sehol sem talalja munkaja feltett eredmenyeit.                 |
   |                                                                |
   | Hova tu"ntek azok a komisz adatok?                             |
   |                                                                |
   | Amikor Vili masolatot keszitett az eredeti nullas              |
   | SCSI-egysegro"l a negyes SCSI-egysegre, a negyes egyseg egy    |
   | "uj klon" lett. Amikor a rendszerinditashoz Vili atrendezte a  |
   | meghajtokat a SCSI BIOS-ban, azzal csak magat csapta be,       |
   | ugyanis a FreeBSD tovabbra is a nullas SCSI-egysegro"l indult  |
   | el! A BIOS altal kivalasztott meghajtorol az effajta           |
   | beallitasok hatasara ugyan behozhato a rendszerindito es       |
   | -beto:lto" programok egy resze, de amikor a FreeBSD            |
   | rendszermagja atveszi a vezerlest, a BIOS altal meghatarozott  |
   | sorrendiseg figyelmen kivu:l marad es a FreeBSD visszater a    |
   | meghajtok eredeti rendezesehez. Tehat ebben az esetben a       |
   | rendszer tovabbra is az eredeti nullas SCSI-egysegro"l         |
   | folytatja a mu"ko:dest, es Fredi o:sszes adata itt talalhato,  |
   | nem pedig a negyes SCSI-egysegen. A negyes SCSI-egysegro"l     |
   | futo rendszer illuzioja igy mindo:ssze az emberi elvarasok     |
   | szu:lemenye.                                                   |
   |                                                                |
   | O:ro:mmel emlitju:k meg, hogy egyetlen byte-nyi adat sem       |
   | seru:lt meg vagy pusztult el a jelenseg felfedezese soran. A   |
   | korabbi nullas SCSI-egyseget meg sikeru:lt megmenteni a        |
   | szemetdombrol es Fredi o:sszes munkaja visszakeru:lt (es Vili  |
   | most mar el tud szamolni nullaig).                             |
   |                                                                |
   | Habar a tanmesenkben SCSI-meghajtokrol esett szo, ugyanez      |
   | fennall az IDE-meghajtokra is.                                 |
   +----------------------------------------------------------------+

     --------------------------------------------------------------

  2.6.2. Slice-ok letrehozasa az FDisk hasznalataval

     Megjegyzes: Itt meg semmilyen valtoztatas nem keru:l lemezre. Ha
     ugy erezzu:k, hogy valamit rosszul csinaltunk es ujra el akarjuk
     kezdeni a telepitest, a menu:k segitsegevel bu:ntetlenu:l
     tavozhatunk a sysinstallbol es ujra probalkozhatunk, vagy az U
     billentyu" lenyomasaval aktivalhatjuk az Undo ("Visszacsinal")
     funkciot. Ha veletlenu:l o:sszezavarodtunk volna es nem talalunk
     kilepesi leheto"seget, akkor barmikor ki tudjuk kapcsolni a
     szamitogepet.

   A sysinstallban a szabvanyos telepites megkezdesekor az alabbi
   u:zenet jelenik meg:

                                  Message
  In the next menu, you will need to set up a DOS-style ("fdisk")
  partitioning scheme for your hard disk. If you simply wish to devote
  all disk space to FreeBSD (overwriting anything else that might be on
  the disk(s) selected) then use the (A)ll command to select the default
  partitioning scheme followed by a (Q)uit. If you wish to allocate only
  free space to FreeBSD, move to a partition marked "unused" and use the
  (C)reate command.
                                 [  OK  ]

                       [ Press enter or space ]

   Az u:zenet forditasa:

                                   U:zenet
  A most ko:vetkezo" menu:ben o:ssze kell allitanunk a merevlemezu:nk
  DOS-szeru" ("fdiskes") particioit. Amennyiben egyszeru"en csak at
  akarjuk adni az o:sszes lemezteru:letet a FreeBSD szamara (ezzel
  felu:lirva mindent, ami a kivalasztott lemezeken talalhato), akkor
  az alapertelmezett particio-kiosztas kivalasztasahoz hasznaljuk az
  (A)ll (Mind), majd utana a (Q)uit (Kilepes) parancsokat. Ha viszont
  csak az eppen szabad teru:letet szanjuk a FreeBSD-nek, lepju:nk egy
  "unused" ("u:res") feliratu particiora es hasznaljuk a (C)reate
  (Letrehozas) parancsot.

                                [  OK  ]

             [ Nyomja le az Enter vagy a Szoko:z billentyu"t ]

   Az utasitasnak megfelelo"en nyomjuk le az Enter billentyu"t.
   Ezutan a rendszermag altal az eszko:zo:k felkutatasa soran
   megtalalt o:sszes merevlemezes meghajtot lathatjuk. A 2-13 Abra
   egy ket IDE-lemezzel rendelkezo" rendszert mutat be, amelyeknek
   nevei rendre ad0 es ad2.

   Abra 2-13. A meghajto kivalasztasa az FDisk szamara

   Feltu"nhet, hogy itt nem szerepel az ad1. Vajon miert maradt ki?

   Kepzelju:k el, mi to:rtenne, ha ket IDE-csatolos merevlemezu:nk
   lenne: az egyik az elso" IDE-vezerlo"n, a masik pedig a masodik
   IDE-vezerlo"n lenne master. Ha a FreeBSD a megtalalasuk szerint
   ad0 es ad1 nevekkel szamozna ezeket, attol meg minden remeku:l
   mu"ko:dhetne.

   Ha azonban beszerelnenk egy harmadik lemezt, peldaul egy slave
   eszko:zt kapcsolnank az elso" IDE-vezerlo"re, akkor mar ez lenne a
   ad1, es ennek megfelelo"en a korabban ad1 megnevezesu" meghajto
   pedig az ad2. Mivel az allomanyrendszerek felkutatasara altalaban
   az eszko:zneveket (mint amilyen a ad1s1a) hasznaljak, ezert
   ilyenkor azt tapasztalhatnank, hogy bizonyos allomanyrendszerek
   helytelenu:l jelennek meg, ezert meg kell valtoztatnunk a FreeBSD
   ezeket erinto" beallitasait.

   A problema megoldasara a rendszermag beallithato ugy, hogy az
   IDE-lemezeket a kapcsolodasuk szerint azonositsa, ne pedig a
   megtalalasuk sorrendje szerint. Ezzel a kialakitassal a masodik
   IDE-vezerlo"n talalhato master lemez mindig az ad2 eszko:z lesz,
   tehat meg olyankor is, amikor egyaltalan nincs a rendszeru:nkben
   ad0 vagy ad1 eszko:z.

   Ez a beallitas alapertelmezes a FreeBSD rendszermagjaban, es ez
   magyarazza, hogy az imenti abra miert csak ad0 es ad2 eszko:zo:ket
   mutat. Tehat a kepen szereplo" szamitogep mind a ket
   IDE-vezerlo"jenek master csatornajan talalhato egy-egy IDE-lemez,
   a slave csatornakon pedig nincs egy sem.

   Itt valasszuk ki azt a lemezt, amelyre a FreeBSD-t telepiteni
   kivanjuk, majd nyomjuk meg a [ OK ] gombot. Erre az 2-14 Abra
   altal bemutatott kepernyo"vel elindul az FDisk.

   Az FDisk kepernyo"je harom reszre oszthato.

   Az elso" reszben, amely a kepernyo" felso" ket sorat foglalja
   o:ssze, lathatjuk az eppen kivalasztott lemez adatait: a FreeBSD
   szerinti nevet, a parametereit es az o:sszmeretet.

   A masodik reszben lathatjuk a lemezen megtalalhato slice-okat: hol
   kezdo"dnek (Offset) es hol ernek veget (End); mekkorak (Size); a
   FreeBSD milyen nevvel hivatkozik rajuk (Name); milyen leiras
   (Description) es altipus (Subtype) tartozik hozzajuk. A peldaban
   ket kicsi u:res slice-ot lathatunk, ami a PC-k lemezkiosztasara
   jellemzo". Ezenkivu:l felfedezhetu:nk egy nagyobb meretu" FAT
   tipusu slice-ot is, amely az MS-DOS / Windows vilagban szinte
   minden bizonnyal a C: betu"jelet viseli, valamint egy
   kiterjesztett slice-ot is, amely az MS-DOS / Windows szamara
   tovabbi meghajtokat is tartalmazhat.

   A harmadik reszben az FDisk mu"ko:dtetesere hasznalhato parancsok
   lathatoak.

   Abra 2-14. Atlagos Fdisk particiok szerkesztes elo"tt

   A most ko:vetkezo" teendo"ink attol fu:ggenek, hogy mikent is
   akarjuk felosztani a lemezu:nket.

   Ha az egesz lemezt a FreeBSD hasznalatara aldozzuk (es amikor majd
   megero"sitju:k a sysinstall szamara a tovabblepest, a lemezen igy
   minden mas adat to:rlo"dni fog), akkor nyomjuk le az A
   billentyu"t, amely megfelel a Use Entire Disk (Az egesz lemez
   hasznalata) menu:pontnak. A letezo" slice-ok eltavolitasra
   keru:lnek es helyettu:k megjelenik egy unused (u:res) jelzesu" kis
   meretu" teru:let (elvegre PC-ro"l beszelu:nk), valamint egy
   nagyobb slice a FreeBSD szamara. Ha igy jartunk el, akkor
   valasszuk ki nyilakkal a frissen letrejo:tt FreeBSD slice-ot es az
   S billentyu" lenyomasaval jelo:lju:k be indithatonak (bootable). A
   kepernyo" ekkor a 2-15 Abra altal mutatotthoz fog ero"sen
   hasonlitani. A Flags (Beallitasok) oszlopban lathatjuk az A
   jelzest, amelybo"l kideru:l, hogy az adott slice aktiv, tehat rola
   tud indulni a rendszer.

   Ha a FreeBSD szamara egy meglevo" slice to:rlesevel szeretnenk
   helyet csinalni, akkor ehhez valasszuk ki nyilbillentyu"kkel a
   hasznalni kivant slice-ot es nyomjuk le a D billentyu"t. Ezutan
   nyomjuk le a C billentyu"t is, amire felbukkan a letrehozando
   slice meretet kerdezo" ablak. Adjuk meg a szamunkra megfelelo"
   meretet a szamunkra megfelelo" formaban, majd zarjuk le az Enter
   lenyomasaval. Az ablakban szereplo" alapertelmezett ertek a
   letrehozhato leheto" legnagyobb meretu" slice-ot adja meg, ami
   vagy a legnagyobb o:sszefu:ggo" u:res teru:let, vagy pedig az
   egesz merevlemez o:sszteru:lete lehet.

   Ha mar korabban keszitettu:nk elo" helyet a FreeBSD-nek (peldaul
   egy PartitionMagic vagy egy hozza hasonlo alkalmazas
   segitsegevel), akkor csak elegendo" az uj slice letrehozasahoz
   megnyomnunk a C billentyu"t. Ekkor szinten megkerdezesre keru:l a
   letrehozando slice merete.

   Abra 2-15. Particionalas az Fdisk "Using Entire Disk" funkciojaval

   Amikor befejeztu:k, nyomjuk le a Q billentyu"t. Ekkor a sysinstall
   elmenti a beallitott ertekeket, azonban a lemezre ekkor meg nem
   keru:lnek ki.

     --------------------------------------------------------------

  2.6.3. A rendszervalaszto telepitese

   Mindezek utan leheto"segu:nk nyilik telepiteni egy
   rendszervalasztot (boot manager). Altalaban veve akkor van
   szu:ksegu:nk a FreeBSD rendszervalasztojanak telepitesere, ha:

     * Egynel to:bb meghajtonk van, es ko:zu:lu:k nem az elso"
       meghajtora telepitju:k a FreeBSD-t.

     * A FreeBSD-t ugyanazon a lemezen mas operacios rendszerek melle
       telepitju:k, es szeretnenk valaszthatova tenni, hogy a
       szamitogep inditasakor a FreeBSD vagy a to:bbi operacios
       rendszer induljon-e el.

   Amennyiben a FreeBSD lesz az egyetlen operacios rendszer a
   gepu:nko:n es az elso" merevlemezes meghajtora telepitju:k, akkor
   a Standard (Szabvanyos) rendszervalaszto to:keletesen megteszi. Ha
   viszont a FreeBSD inditasahoz egy masik rendszervalasztot
   szeretnenk hasznalni, valasszuk a None (Nincs) opciot.

   Valasszunk, majd nyomjuk le az Enter billentyu"t!

   Abra 2-16. A sysinstall rendszervalasztokat tartalmazo menu:je

   Az F1 billentyu" lenyomasan keresztu:l elerheto" sugokepernyo"n
   olvashatunk az egy merevlemezen to:bb operacios rendszer
   hasznalataval kapcsolatos problemakrol.

     --------------------------------------------------------------

  2.6.4. Slice-ok letrehozasa egy masik meghajton

   Ha egynel to:bb meghajtonk van, a program a rendszervalaszto
   kepernyo"je utan ismet visszater a meghajtok kivalasztasahoz.
   Amennyiben a FreeBSD-t egy masik meghajtora is telepiteni
   szeretnenk, itt valasszuk ki azt es ismetelju:k meg vele az iment
   az FDisk programmal vegzett felosztasi folyamatot.

     Fontos: Amikor a FreeBSD-t nem az elso" meghajtora telepitju:k,
     akkor a FreeBSD rendszervalasztojat mind a ket meghajtora
     telepiteni kell.

   Abra 2-17. Kilepes a meghajtovalaszto menu:bo"l

   A Tab billentyu"vel tudunk valtani a legutoljara kivalasztott
   meghajto, a [ OK ] es a [ Cancel ] gombok ko:zo:tt.

   A [ OK ] gombra allashoz nyomjuk le egyszer a Tabot, majd a
   telepites folytatasahoz nyomjuk le az Enter billentyu"t.

     --------------------------------------------------------------

  2.6.5. Particiok letrehozasa a Disklabel segitsegevel

   A ko:vetkezo" lepeskent letre kell hoznunk particiokat a frissen
   letrehozott slice-okban. Ne felejtsu:k el, hogy minden particio
   rendelkezik egy a-tol h-ig terjedo" betu"jellel, amelyek ko:zu:l a
   b, c es d jelzesu"eknek ku:lo:n szerepe van, amire tekintettel
   kell lennu:nk.

   Bizonyos alkalmazasok kedvelnek egyes particiokiosztasi semakat,
   ku:lo:no:sen az egynel to:bb lemezen elhelyezkedo" particiokat.
   Azonban az elso" FreeBSD telepitesu:nk soran meg nem annyira
   fontos koncentralnunk a lemezu:nk hatekony felosztasara. Sokkal
   inkabb fontosabb, hogy elo"szo:r egyszeru"en csak telepitsu:k a
   FreeBSD-t es tanuljuk meg a hasznalatat. Amikor mar jobban ismerni
   fogjuk az operacios rendszert, a particiok kiosztasanak
   megvaltoztatasahoz mindig ujra tudjuk telepiteni a FreeBSD-t.

   Ebben a semaban negy particio szerepel -- egy a lapozoallomanynak
   es harom az allomanyrendszereknek.

   Tablazat 2-2. Az elso" lemez particioinak kiosztasa

   Particio Allomanyrendszer   Meret               Leiras             
                                        Ez a rendszerinditashoz       
                                        hasznalt, mas neven a gyo:ker 
                                        allomanyrendszer (root        
                                        filesystem). Minden tovabbi   
                                        allomanyrendszer ehhez        
                                        csatlakozik valahol. Ennek az 
                                        allomanyrendszernek 512 MB    
                                        meret elfogadhato, mivel nem  
                                        fogunk tulsagosan sok adatot  
   a        /                512 MB     tarolni rajta, a FreeBSD      
                                        telepito"je is csak kb.       
                                        128 MB adatot fog ide         
                                        pakolni. Az igy fennmarado    
                                        lemezteru:let felhasznalhato  
                                        atmeneti adatok tarolasara,   
                                        illetve a / ko:nyvtarban      
                                        helyet ad a FreeBSD keso"bbi  
                                        valtozatainak                 
                                        terjeszkedesehez is.          
   b        -                RAM merete [a]                           
                             x 2-3      
                                        A /var ko:nyvtar foglalja     
                                        magaban az allando valtozo    
                                        naploallomanyokat, valamint a 
                                        to:bbi, adminisztraciohoz     
                                        hasznalt allomanyt. Ezek      
                                        to:bbsege a FreeBSD           
                                        mindennapos mu"ko:dese        
                                        ko:zben folyamatosan irodnak  
   e        /var             256 MB-tl  vagy olvasodnak. Ha ezeket az 
                             1024 MB-ig allomanyokat egy ku:lo:n      
                                        allomanyrendszerre rakjuk,    
                                        akkor ezzel segitu:nk a       
                                        FreeBSD-nek optimalizalni az  
                                        ilyen allomanyok elereset     
                                        anelku:l, hogy ez hatassal    
                                        lenne a to:bbi, mas           
                                        hozzaferesi gyakorisaggal     
                                        biro allomanyra.              
                             A lemez    Az o:sszes to:bbi allomany    
                             to:bbi     to:bbnyire a /usr             
   f        /usr             resze      ko:nyvtarban es annak         
                             (legalabb  alko:nyvtaraiban helyezkedik  
                             2 GB)      el.                           
   Megjegyzesek:
   a. A rendszer lapozoallomanya a b particion tarolodik. Itt a
   megfelelo" meret megvalasztasa egyfajta mu"veszet, azonban minden
   esetben hasznosnak bizonyulhat, ha tudjuk, hogy meretnek mindig
   erdemes a fizikai avagy ko:zponti memoria (RAM) meretenek ket,
   esetleg haromszorosat valasztani. Legyen mindig legalabb 64 MB-nyi
   meretu" lapozoallomanyunk, es ha 32 MB RAM-nal kevesebb van a
   szamitogepu:nkben, akkor is legalabb 64 MB-ra allitsuk be.
   Ha egynel to:bb lemezu:nk van, mindegyikre rakhatunk
   lapozoallomanyt, ezzel a FreeBSD mindegyiko"ju:ket fel tudja
   hasznalni lapozasra, amivel pedig gyakorlatilag felgyorsitja a
   folyamatot. Ilyenkor szamoljunk ugy, hogy elo"szo:r meghatarozzuk
   a teljes lapozoallomany meretet (peldaul 128 MB), majd ezt
   elosztjuk a rendelkezesu:nkre allo lemezek szamaval (peldaul
   ketto"). Ebbo"l kiszamithato az egyes lemezeken elhelyezendo"
   lapozoallomany merete, ami most a peldank szerint 64 MB lesz.

     Figyelem: Az iment megadott ertekeket csak peldakent adtuk meg
     es csak a tapasztalt felhasznalok szamara ajanljuk. A to:bbi
     felhasznalonak inkabb a particiok automatikus kiosztasat
     javasoljuk a FreeBSD particioszerkeszto"jeben talalhato Auto
     Defaults opcio hasznalataval.

   Ha a FreeBSD-t egynel to:bb lemezre telepitju:k, akkor a korabban
   megadott to:bbi slice-ban is letre kell hoznunk particiokat. Ezt
   legegyszeru"bben ugy tehetju:k meg, ha minden lemezen letrehozunk
   ket particiot: egyet a lapozoallomanynak, egyet pedig az
   allomanyrendszernek.

   Tablazat 2-3. To:bb lemez particioinak kiosztasa

   Particio Allomanyrendszer     Meret               Leiras           
                                            Ahogy mar korabban is     
                                            emlitettu:k, szet tudjuk  
                                            osztani a lapozoallomanyt 
                                            a lemezek ko:zo:tt. Habar 
   b        -                Lasd a leirast az a particio szabad, a   
                                            hagyomanyok megis azt     
                                            diktaljak, hogy a         
                                            lapozashoz hasznalt       
                                            teru:let maradjon a b     
                                            particion.                
                                            A lemez fennmarado resze  
                                            egyetlen nagy particioval 
                                            fedheto" le. Ez az e      
                                            particio helyett lehetne  
                                            minden tovabbi nelku:l az 
                                            a particio, azonban a     
                                            hagyomanyok szerint az a  
                                            particionak a rendszer    
                                            gyo:ker                   
                                            allomanyrendszeret (/)    
                                            kell tartalmaznia.        
                                            Neku:nk ugyan nem kellene 
                                            ezt a megszokast          
   e        /diskn           A lemez to:bbi ko:vetnu:nk, azonban a    
                             resze          sysinstall viszont igy    
                                            tesz, ezert ezzel a       
                                            valasztassal csak         
                                            magunkkal teszu:nk jot.   
                                            Az allomanyrendszer       
                                            barhova csatlakoztathato  
                                            -- ebben a peldaban a     
                                            lemezeket rendre a /diskn 
                                            ko:nyvtarakhoz csatoltuk, 
                                            ahol az n az adott lemez  
                                            sorszama. De itt          
                                            termeszetesen mas         
                                            rendszert is              
                                            ko:vethetu:nk.            

   A particiok elrendezesenek kigondolasa utan most mar letre is
   hozathatjuk ezeket a sysinstall segitsegevel. Ekkor a ko:vetkezo"
   u:zenetet fogjuk latni:

                                  Message
  Now, you need to create BSD partitions inside of the fdisk
  partition(s) just created. If you have a reasonable amount of disk
  space (200MB or more) and don't have any special requirements, simply
  use the (A)uto command to allocate space automatically. If you have
  more specific needs or just don't care for the layout chosen by
  (A)uto, press F1 for more information on manual layout. 

                                 [  OK  ]
                           [ Press enter or space ]

   Az u:zenet forditasa:

                                   U:zenet
 Most letre kell hoznunk az fdiskkel nemreg elkeszitett particiokban a
 BSD-s particiokat. Ha van hozza elegendo" helyu:nk (200 MB vagy to:bb) es
 nincs semmilyen ku:lo:nleges elvarasunk, akkor egyszeru"en csak osszuk
 fel automatikusan az (A)uto paranccsal. Amennyiben azonban ennel
 to:bbre lenne szu:ksegu:nk, vagy csak nincs szu:ksegu:nk az (A)uto altal
 felkinalt semara, az F1 lenyomasara bo"vebb informaciokat is kaphatunk
 a kezi kiosztas leheto"segeiro"l.

                                 [  OK  ]
             [ Nyomja le az Enter vagy a Szoko:z billentyu"t ]

   Nyomjuk le a Enter billentyu"t a FreeBSD particioszerkeszto"jenek,
   avagy a Disklabel elinditasahoz.

   A 2-18 Abra mutatja a Disklabel elso" elindulasakor megjeleno"
   kepet. A kepernyo" harom reszre tagolhato.

   A felso" par sorban a jelenleg hasznalt lemez nevet lathatjuk,
   valamint azt a slice-ot, ami az altalunk letrehozott particiokat
   tartalmazza (itt a Disklabel a Partition name megnevezessel
   hivatkozik a slice-ra). A kepernyo"n tovabba lathatjuk a slice-ban
   levo" szabad helyet is, vagyis azt a helyet, amely ugyan a
   slice-hoz tartozik, viszont meg nem rendeltu:nk hozza particiot.

   A kepernyo" ko:zepen talalhatoak az eddig mar letrehozott
   particiok, az altaluk tartalmazott allomanyrendszerek, azok merete
   es az allomanyrendszerek letrehozasara vonatkozo ku:lo:nbo:zo"
   beallitasok.

   A kepernyo" also harmadaban a Disklabel programban hasznalhato
   billentyu"k felsorolasa szerepel.

   Abra 2-18. A sysinstall Disklabel particioszerkeszto"je

   A Disklabel kepes magatol particiokat kesziteni a nekik megfelelo"
   alapertelmezett meretekkel. A particiok automatikus meretet egy
   belso" particiomeretezo" algoritmus szamitja ki a lemez
   o:sszmerete alapjan. Probaljuk most mi is ezt ki, es nyomjuk le az
   A billentyu"t. Ekkor a 2-19 Abra szerint illusztraltaknak
   megfelelo" kepernyo"t tapasztalhatunk. A hasznalt lemez mereteto"l
   fu:ggo"en az alapertelmezett ertekek megfelelo"ek lesznek vagy
   sem. Ez igazabol nem szamit, hiszen nem kell feltetlenu:l
   elfogadnunk az alapertelmezetten megallapitott ertekeket.

     Megjegyzes: Az alapertelmezett particionalasi semaban a /tmp
     ko:nyvtar nem a / ko:nyvtar resze lesz, hanem sajat particiot
     kapott. Ezzel igyekszu:nk elkeru:lni, hogy a / particio
     atmenetileg tarolt allomanyokkal teljen be.

   Abra 2-19. A sysinstall Disklabel particioszerkeszto"je,
   alapertelmezett ertekekkel

   Ha nem az alapertelmezett particiokat szeretnenk hasznalni, es le
   akarjuk valtani ezeket a sajat magunk altal megadottakra, akkor a
   nyilbillentyu"kkel valasszuk ki az elso" particiot es a
   to:rlesehez nyomjuk meg a D billentyu"t. Hasonloan jarjunk el az
   o:sszes to:bbi javasolt particio to:rlesehez.

   Az elso" (a, vagyis a / ko:nyvtarkent, azaz a gyo:kerkent csatolt)
   particio elkeszitesehez elo"szo:r gyo"zo"dju:nk arrol, hogy a
   felso" sorban a megfelelo" slice van kivalasztva, majd nyomjuk meg
   a C billentyu"t. Ekkor az uj particio meretet kerdezo"
   parbeszedablak jelenik meg (lasd: 2-20 Abra). Itt a meret a lemez
   blokkjainak szamaban adhato meg, amit viszont M-mel lezarva
   megabyte-ban, G-vel gigabyte-ban vagy C-vel cilinderben is
   kifejezhetu:nk.

   Abra 2-20. Szabad hely a gyo:kerparticion

   Az alapertelmezes szerint felkinalt meret az egesz slice-ot
   lefoglalo particiot hoz letre. Amennyiben a korabbi peldaban
   targyalt particiomereteket kivanjuk hasznalni, akkor a Backspace
   billentyu" hasznalataval to:ro:lju:k ki az igy megadott erteket,
   es helyette gepelju:k be, hogy 512M, ahogy ez a 2-21 Abra
   segitsegevel is lathato. A bevitelt zarjuk a [ OK ] gomb
   lenyomasaval.

   Abra 2-21. A gyo:kerparticio meretenek szerkesztese

   Miutan meghataroztuk a particio meretet, a telepito" megkerdezi,
   hogy a letrehozando particioban allomanyrendszer vagy
   lapozoallomany foglaljon-e helyet. Ennek a parbeszedablakjat a
   2-22 Abra mutatja. Mivel az elso" particionk allomanyrendszert fog
   tartalmazni, ezert mindenkeppen az FS parametert valasszuk ki,
   majd nyomjuk meg az Enter billentyu"t.

   Abra 2-22. A gyo:kerparticio tipusanak kivalasztasa

   Vegezetu:l, mivel egy allomanyrendszert hoztunk letre, meg kell
   mondanunk a Disklabelnek, hova csatlakoztassa. A hozzatartozo
   parbeszedablak a 2-23 Abran lathato. A gyo:ker allomanyrendszer
   csatlakozasi pontja a /, ezert itt csak annyit adjunk meg, hogy /
   es zarjuk az Enter billentyu" lenyomasaval.

   Abra 2-23. A gyo:ker csatlakozasi pontjanak megadasa

   A kepernyo"n lathato lista ezutan az ujonnan letrehozott
   particionak megfelelo"en frissu:l. A to:bbi particiora ugyanigy
   meg kell ismetelnu:nk ezt a mu"veletsort. Arra azonban
   figyelju:nk, hogy a lapozasra hasznalt particiot letrehozasanal a
   szerkeszto" nem fogja megkerdezni a csatlakozasi pontot, hiszen az
   ilyen tipusu particiokat sosem csatlakoztatjuk. A /usr, vagyis az
   utolso particio keszitese soran a slice fennmarado reszenek
   lefoglalasahoz mar nyugodtan meghagyhatjuk a felajanlott erteket.

   A FreeBSD particioszerkeszto"jenek utolso kepernyo"je a 2-24 Abran
   hasonlohoz, habar az altalunk valasztott ertekek minden bizonnyal
   elternek. A mu"velet befejezesehez nyomjuk le a Q billentyu"t.

   Abra 2-24. A Disklabel particioszerkeszto"

     --------------------------------------------------------------

2.7. A telepitendo" o:sszetevo"k kivalasztasa

  2.7.1. A terjesztesek tipusanak kivalasztasa

   A telepitendo" terjesztesek tipusa nagyban fu:gg attol, hogy a
   rendszeru:nket mire szandekozzuk majd hasznalni es mennyi szabad
   hely all rendelkezesu:nkre. Az elo"re megadott beallitasok a
   leheto" legkisebb konfiguracio telepiteseto"l egeszen a komplett
   rendszer telepiteseig terjednek. A UNIX es/vagy FreeBSD vilagaban
   meg az uj felhasznalok szamara szinte to:keletesen megfelelo"nek
   bizonyulhat az egyik ilyen elo"keszitett beallitas kivalasztasa. A
   terjesztesek kivalogatasa pedig altalaban a tapasztaltabb
   felhasznalok szamara lehet hasznos.

   Az F1 billentyu"vel to:bbet is megtudhatunk a terjesztesek
   ku:lo:nbo:zo" tipusairol es bennu:k talalhato o:sszetevo"kro"l.
   Miutan befejeztu:k a sugo attanulmanyozasat, nyomjuk le az Enter
   billentyu"t, es ezzel visszateru:nk a terjesztesek kivalasztasat
   tartalmazo menu:be.

   Altalanos alapelv, hogy ha grafikus felu:letet szeretnenk
   hasznalni, akkor az X-szel kezdo"do" terjesztesi tipusok ko:zu:l
   valasszunk. Az X szerver es az alapertelmezett munkako:rnyezet
   beallitasat a FreeBSD telepitese utan tudjuk majd megtenni. A X
   szerver beallitasarol reszletesebben a 5 fejezetben olvashatunk.

   Az X11 alapertelmezett valtozatakent az Xorg keru:l fel.

   Ha egy sajat rendszermag epiteset is fontolgatjuk, akkor olyan
   terjesztest valasszuk, amiben a forraskod (kernel source) is
   megtalalhato. A sajat rendszermag epitesenek hatterero"l es
   mikentjero"l lasd a 8 fejezetet.

   Ertelemszeru"en a legsokoldalubb rendszer az, amiben minden
   megtalalato. Igy aztan, ha a lemezu:nk is megengedi, a nyilak es
   az Enter hasznalataval valasszuk a All (Minden) opciot, ahogy azt
   az 2-25 Abra is mutatja. Ha viszont ugy erezzu:k, hogy ehhez nem
   elegge nagy a lemezu:nk, akkor valasszuk az igenyeinkhez jobban
   illeszkedo" tipust. Sokat azonban ne u:lju:nk a to:keletes
   megoldas kio:tlesen, hiszen ezek a terjesztesek meg a telepites
   befejezese utan is hozzaadhatoak a rendszeru:nkho:z.

   Abra 2-25. A terjesztesek kivalasztasa

     --------------------------------------------------------------

  2.7.2. A Portgyu"jtemeny telepitese

   Miutan kivalasztottuk a neku:nk megfelelo" terjesztest, a
   telepito"program felajanlja a FreeBSD Portgyu"jtemenyenek (Ports
   Collection) telepitesenek leheto"seget. A portok gyu"jtemenye a
   szoftverek telepitesenek egyszeru" es kenyelmes modja. A
   Portgyu"jtemeny o:nmaga nem tartalmazza a szoftverek
   leforditasahoz szu:kseges forraskodot, hanem helyette csupan
   azokat az allomanyokat, amelyek a ku:lo:nbo:zo" ku:lso"s programok
   leto:ltesehez, forditasahoz es telepitesehez kellenek. A 4
   fejezetben megtalalhatjuk, mikent is kell hasznalni ezt a
   gyu"jtemenyt.

   A telepito"program nem fogja elleno"rizni a kibontasahoz
   szu:kseges helyet, ezert csak abban az esetben valasszuk ezt a
   leheto"seget, ha mindenkeppen elfer a merevlemezu:nko:n. A FreeBSD
   jelenlegi, 7.2 valtozataban a Portgyu"jtemeny nagyjabol 417 MB
   helyet foglal el a lemezen. A FreeBSD frissebb verzioiban
   nyugodtan feltetelezhetu:nk ennel valamivel nagyobb erteket is.

                          User Confirmation Requested
  Would you like to install the FreeBSD ports collection?

  This will give you ready access to over 20 000 ported software packages,
  at a cost of around 417 MB of disk space when "clean" and possibly much
  more than that if a lot of the distribution tarballs are loaded
  (unless you have the extra CDs from a FreeBSD CD/DVD distribution
  available and can mount it on /cdrom, in which case this is far less
  of a problem).

  The Ports Collection is a very valuable resource and well worth having
  on your /usr partition, so it is advisable to say Yes to this option.

  For more information on the Ports Collection & the latest ports,
  visit:
      http://www.FreeBSD.org/ports 

                               [ Yes ]     No

   Az u:zenet forditasa:

                       Felhasznaloi megero"sites szu:kseges
  Szeretne telepiteni a FreeBSD portjainak gyu"jtemenyet?

  Ezen keresztu:l ko:zel 20 000 portolt szoftvercsomaghoz tudunk
  ko:nnyeden hozzaferni, amelyek "tiszta" allapotukban nagyjabol
  417 MB lemezteru:letu:nkbe keru:lnek, ami a keso"bbiekben
  valoszinu"leg majd no:vekedni fog, ahogy leto:ltju:k a ku:lo:nbo:zo"
  szoftverekhez tartozo allomanyokat (hacsak nincs meg a FreeBSD
  valamelyik CD- vagy DVD alapu terjesztesenek az o:sszes lemeze,
  amelyeket a /cdrom ko:nyvtarba csatlakoztatva el tudjuk ezeket erni,
  mert ekkor kevesebb gondunk lesz vele).

  A Portgyu"jtemeny egy nagyon ertekes ero"forras, amelynek megeri helyet
  szentelni a /usr particionkon, ezert javasoljuk, hogy valassza az
  "Igen" opciot. A Portgyu"jtemenyro"l es annak legujabb portjairol a
  http://www.FreeBSD.org/ports oldalon olvashat reszletesebben.

                              [ Igen ]     Nem

   A Portgyu"jtemeny telepitesehez a [ Yes ] gombot, ennek
   kihagyasahoz pedig a [ No ] gombot valasszuk ki a nyilakkal, majd
   az Enter lenyomasaval mehetu:nk tovabb. Ekkor a kivalasztott
   terjesztesek menu:je fog ujra megjelenni.

   Abra 2-26. A terjesztesek telepitesenek megero"sitese

   Ha elegedettek vagyunk a beallitasokkal, valasszuk ki a nyilakkal
   az Exit menu:pontot, gyo"zo"dju:nk meg rola, hogy a [ OK ] gombon
   allunk, majd nyomjuk le az Enter billentyu"t a folytatashoz.

     --------------------------------------------------------------

2.8. A telepites eszko:zenek kivalasztasa

   Ha CD-ro"l vagy DVD-ro"l telepitu:nk, akkor a ko:vetkezo"
   kepernyo"n a nyilbillentyu"kkel valasszuk ki a Install from a
   CDROM or DVD (Telepites CD-ro"l vagy DVD-ro"l) menu:pontot.
   U:gyelju:nk a [ OK ] gomb kivalasztasara is, majd a telepites
   megkezdesehez nyomjuk meg az Enter billenyu"t.

   A telepites masfajta modszereinek alkalmazasahoz valasszuk ki a
   menu:pontok ko:zu:l a neku:nk megfelelo"t es ko:vessu:k a
   megjeleno" utasitasokat.

   Az F1 billentyu" lenyomasara megjelenik az adott
   telepito"eszko:zho:z tartozo sugo. Innen az Enter lenyomasa utan
   terhetu:nk vissza a menu:ho:z.

   Abra 2-27. A telepitesi eszko:z kivalasztasa

     Telepites FTP szerverro"l: Harom FTP-s telepitesi mod ko:zu:l
     valaszthatunk: aktiv, passziv vagy HTTP proxyn keresztu:l.

     Aktiv FTP: Install from an FTP server (Telepites FTP
     szerverro"l)

             Ezzel a beallitassal az o:sszes FTP-n keresztu:li
             atvitel "aktiv" modban to:rtenik. Ez tu"zfalak eseten
             nem mu"ko:dik, de gyakran alkalmazhato olyan regebbi FTP
             szerverek eseten, amelyek nem ismerik az passziv
             adatatvitelt. Ha (az alapertelmezett) passziv modban
             megakadna a kapcsolat, probaljunk meg helyette az
             aktivat.

     Passziv FTP: Install from an FTP server through a firewall
     (Telepites tu"zfalon keresztu:l FTP szerverro"l)

             Ezzel a beallitassal a sysinstall programot az FTP
             mu"velet vegrehajtasakor a "passziv" mod hasznalatara
             utasitjuk. Igy at tudunk menni olyan tu"zfalakon is,
             amelyek nem engedik a veletlenszeru" TCP portokon
             erkezo" kapcsolatokat.

     FTP HTTP proxyn keresztu:l: Install from an FTP server through a
     http proxy (Telepites HTTP proxyn keresztu:l FTP szerverro"l)

             Ezzel a beallitassal megmondhatjuk a sysinstall
             programnak, hogy (egy bo:ngeszo"ho:z hasonloan) a HTTP
             protokollon keresztu:l hasznalja az FTP mu"veletek
             elvegzesehez hasznalt proxyt. Ennek a proxynak lesz a
             feladata az atadott keresek leforditasa es elku:ldese az
             FTP szervernek. Ennek ko:szo:nheto"en at tudunk menni
             olyan tu"zfalakon is, amelyek egyaltalan nem engednek
             semmilyen FTP mu"veletet, azonban tartozik hozzajuk egy
             HTTP proxy. Ilyenkor az FTP szerver beallitasai mellett
             meg kell adnunk ezt a HTTP proxyt is.

     Az FTP szervert proxyn keresztu:l altalaban ugy erju:k el, hogy
     a felhasznaloi nev reszekent egy "@" jellel elvalasztva megadjuk
     a tenylegesen elerni kivant szerver nevet. A proxy szerver
     ezutan "helyettesiti" a valodi szervert. Peldaul tegyu:k fel,
     hogy a ftp.FreeBSD.org szerverro"l akarunk telepiteni az 1234
     porton varakozo ize.minta.com proxy hasznalataval.

     Ehhez lepju:nk be a beallitasokat tartalmazo menu:be, allitsuk
     az FTP kapcsolathoz hasznalt felhasznaloi nevet az
     ftp@ftp.FreeBSD.org ertekre, majd jelszonak adjuk meg az e-mail
     cimu:nket. Telepitesi eszko:zkent adjuk meg az FTP-t (vagy a
     passziv FTP-t, amennyiben a proxy ismeri) es a
     ftp://ize.minta.com:1234/pub/FreeBSD cimet.

     Mivel az ftp.FreeBSD.org cimro"l szarmazo /pub/FreeBSD ko:nyvtar
     a ize.minta.com szerveren keresztu:l erheto" el szamunkra, ezert
     lenyegeben arrol a gepro"l fogunk telepiteni (amely pedig a
     telepito" kereseire elhozza a ftp.FreeBSD.org szerverto"l az
     allomanyokat).

     --------------------------------------------------------------

2.9. A telepites veglegesitese

   Ezutan ha ohajtjuk, megkezdhetju:k a telepitest. Ez egyben az
   utolso leheto"segu:nk a telepites megszakitasara es
   merevlemezu:nket erinto" valtoztatasok ervenytelenitesere.

                        User Confirmation Requested
  Last Chance! Are you SURE you want to continue the installation?

  If you're running this on a disk with data you wish to save then WE
  STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding!

  We can take no responsibility for lost disk contents! 

                              [ Yes ]    No

   Az u:zenet forditasa:

                     Felhasznaloi megero"sites szu:kseges
  Utolso esely: BIZTOSAN folytatni kivanja a telepitest?

  Ha olyan lemezre szeretne telepiteni, amelyen fontos adatok
  talalhatoak, HATAROZOTTAN JAVASOLJUK, hogy a tovabblepes elo"tt
  KESZITSEN ROLUK MEGBIZHATO BIZTONSAGI MASOLATOT!

  Nem vallalunk semmilyen felelo"sseget az elvesztett adatokert!

                             [ Igen ]    Nem

   A tovabblepeshez valasszuk a [ Yes ] gombot es nyomjuk meg az
   Enter billentyu"t.

   A telepites ido"tartama a kivalasztott terjesztesto"l, a
   telepitesre hasznalt eszko:zto"l es szamitogepu:nk sebessegeto"l
   fu:gg. A folyamat elo"rehaladasarol u:zenetek sorozata tajekoztat
   minket.

   A telepites befejezese utan a ko:vetkezo" u:zenet jelenik meg:

                                Message

 Congratulations! You now have FreeBSD installed on your system.

 We will now move on to the final configuration questions.
 For any option you do not wish to configure, simply select No.

 If you wish to re-enter this utility after the system is up, you may
 do so by typing: /usr/sbin/sysinstall. 

                                  [ OK ]

                       [  Press enter or space  ]

   A szo:veg forditasa:

                                U:zenet

 Gratulalunk, sikeresen telepitette a FreeBSD rendszert a szamitogepere!

 Most rateru:nk az utolso nehany kerdesre. A "Nem" valasztasaval
 egyszeru"en atugorhatjuk mindazt, amit nem szeretnenk beallitani. Ezt a
 segedprogramot a rendszer ujboli elinditasa utan a "/usr/sbin/sysinstall"
 parancs begepelesevel tudjuk elerni.

                                  [ OK ]

             [ Nyomja le az Enter vagy a Szoko:z billentyu"t ]

   Az Enter billentyu" lenyomasaval megkezdhetju:k a telepites utani
   beallitasokat.

   A [ No ] gomb kivalasztasaval es az Enter lenyomasaval
   megszakithatjuk a telepitest, igy a rendszeru:nko:n semmilyen
   valtoztatas nem to:rtenik. Ilyenkor a ko:vetkezo" u:zenet jelenik
   meg:

                                 Message
 Installation complete with some errors.  You may wish to scroll
 through the debugging messages on VTY1 with the scroll-lock feature.
 You can also choose "No" at the next prompt and go back into the
 installation menus to retry whichever operations have failed.

                                  [ OK ]

   Az u:zenet forditasa:

                                  U:zenet
 A telepites soran hiba to:rtent. A Scroll Lock hasznalataval erdemes
 atnezni a VTY1 terminal megjeleno" u:zeneteket. A ko:vetkezo" ablakban a
 "Nem" valasztasaval vissza tudunk menni a telepito"menu:ho:z es
 megprobalkozhatunk ismet a sikertelen mu"veletek vegrehajtasaval.

                                  [ OK ]

   Ez az u:zenet azert jelent meg, mert semmit sem sikeru:lt
   telepiteni. Innen az Enter megnyomasaval terhetu:nk vissza a
   fo"menu:be, majd onnan tudunk kilepni a telepito"bo"l.

     --------------------------------------------------------------

2.10. A telepites utan

   A sikeres telepitest ku:lo:nfele beallitasok ko:vetik. Ko:zu:lu:k
   az uj FreeBSD rendszer inditasa elo"tt barmelyik megismetelheto" a
   beallitasok opcioit tartalmazo menu: ujboli hasznalataval, vagy
   pedig a telepites utan a sysinstall parancs kiadasaval, majd a
   Configure (Beallitasok) menu:pont kivalasztasaval.

     --------------------------------------------------------------

  2.10.1. A halozati eszko:zo:k beallitasa

   A ko:vetkezo" kepernyo" mar nem jelenik meg, ha az FTP szerveren
   keresztu:li telepiteshez korabban mar beallitottuk a PPP
   kapcsolatot. Ez a korabbiakban emlitettek szerint allithato be.

   Ha to:bbet szeretnenk megtudni a helyi halozatokrol (LAN), vagy a
   FreeBSD-t atjarokent, illetve utvalasztokent kivanjuk beallitani,
   olvassuk el az Egyeb halado halozati temak cimu" fejezetet.

                       User Confirmation Requested
    Would you like to configure any Ethernet or SLIP/PPP network devices?

                              [ Yes ]   No

   Forditasa:

                    Felhasznaloi megero"sites szu:kseges
   Szeretnenk beallitani valamilyen Ethernet- vagy SLIP/PPP halozati eszko:zt?

                             [ Igen ]   Nem

   A halozati eszko:zeink beallitasahoz valasszuk a [ Yes ] gombot,
   majd nyomjuk meg az Enter billentyu"t. Ellenkezo" esetben a [ No ]
   gombbal mehetu:nk tovabb.

   Abra 2-28. Az Ethernet-eszko:z kivalasztasa

   A beallitando csatolo kivalasztasahoz hasznaljuk a
   nyilbillentyu"ket es utana nyomjuk meg az Enter billentyu"t.

                       User Confirmation Requested
        Do you want to try IPv6 configuration of the interface?

                               Yes   [ No ]

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
            Megprobalkozik az IPv6 beallitasaval a csatolon?

                              Igen   [ Nem ]

   A peldankban szereplo" helyi halozatban az aktualis internetes
   protokoll (IPv4) egyelo"re megfelelo", ezert valasszuk a [ No ]
   gombot es nyomjuk meg az Enter billentyu"t.

   Amennyiben RA-szerveren keresztu:l egy mar letezo" IPv6 halozathoz
   csatlakozunk, akkor valasszuk a [ Yes ] gombot es nyomjuk meg az
   Enter billentyu"t. Ezt ko:veto"en az RA-szerverek felderitese
   kezdo"dik meg, ami nehany masodpercig eltarthat.

                              User Confirmation Requested
         Do you want to try DHCP configuration of the interface?

                               Yes   [ No ]

   Az u:zenet forditasa:

                           Felhasznaloi megero"sites szu:kseges
             Megprobalkozik a DHCP hasznalataval a csatolon?

                              Igen   [ Nem ]

   Ha nincs szu:ksegu:nk a DHCP (Dynamic Host Configuration Protocol,
   azaz a Dinamikus allomaskonfiguracios protokoll) hasznalatara,
   akkor a [ No ] gomb kivalasztasaval majd az Enter lenyomasaval
   tovabblephetu:nk.

   A [ Yes ] gomb kivalasztasara elindul a dhclient nevu" program, es
   amennyiben sikerrel jar, magatol kito:lti a halozati beallitasokra
   vonatkozo adatokat. Ennek reszleteit a 29.5 Szakaszben talalhatjuk
   meg.

   Az alabbi halozati beallito kepernyo" mutatja a helyi halozat
   atjarojakent hasznalni kivant Ethernet-eszko:z konfiguraciojat.

   Abra 2-29. Az ed0 halozati beallitasa

   A Tab billentyu"vel tudunk navigalni az adatlap mezo"i ko:zo:tt es
   kito:lteni ezeket a megfelelo" informaciokkal:

   Host (Szamitogepnev)

           A szamitogepu:nk teljes neve, amely a peldaban most
           k6-2.example.com.

   Domain (Tartomany)

           Annak a tartomanynak a neve, amelyben a szamitogepu:nk a
           talalhato. Ez itt konkretan a example.com.

   IPv4 Gateway (IPv4-atjaro)

           A helyben nem elerheto" celok megko:zelitesere hasznalt
           gep IP-cime. Ezt a mezo"t mindenkeppen to:ltsu:k ki akkor,
           ha a szamitogepu:nk valamilyen halozatba van ko:tve.
           Azonban hagyjuk u:resen, ha a szamitogep a halozat
           atjaroja az internet fele. Az IPv4 atjarot mas neven
           "default gateway"-nek (alapertelmezett atjaronak) vagy
           "default route"-nak (alapertelmezett utvonalnak) is
           nevezik.

   Name server (Nevszerver)

           A helyi DNS (nevfeloldo) szerveru:nk IP-cime. Ha nem
           talalhato ilyen a helyi halozatunkon, akkor az
           internet-szolgaltato DNS szerverenek cimet (a peldaban ez
           a 208.163.10.2) adjuk meg.

   IPv4 address (IPv4-cim)

           A csatolo IP-cime, amely az abran a 192.168.0.1.

   Netmask (Halozati maszk)

           A helyi halozatban hasznalt cimtartomany a 192.168.0.0 -
           192.168.0.255, amihez a 255.255.255.0 halozati maszk
           tartozik.

   Extra options to ifconfig (Az ifconfig tovabbi beallitasai)

           Az ifconfig parancs adott csatolora vonatkozo egyeb
           beallitasai. Jelen esetu:nkben itt semmi sem szerepel.

   Miutan vegeztu:nk, a Tab billentyu" lenyomasaval valasszuk ki a
   [ OK ] gombot es nyomjuk le az Enter billentyu"t.

                       User Confirmation Requested
         Would you like to Bring Up the ed0 interface right now?

                              [ Yes ]   No

   A forditas:

                    Felhasznaloi megero"sites szu:kseges
                      Aktivalja most az ed0 csatolot?

                             [ Igen ]   Nem

   A [ Yes ] gomb kivalasztasaval, majd az Enter lenyomasaval
   csatlakoztatjuk a szamitogepet a halozathoz, ami ezutan
   hasznalhatova valik. Ez azonban a telepites szamara nem jelent
   tulsagosan sokat, hiszen etto"l fu:ggetlenu:l a szamitogepet
   egyebkent is ujra kell majd inditanunk.

     --------------------------------------------------------------

  2.10.2. Az atjaro beallitasa

                        User Confirmation Requested
        Do you want this machine to function as a network gateway?

                               [ Yes ]    No

   A forditas:

                     Felhasznaloi megero"sites szu:kseges
        Ezt a szamitogepet halozati atjarokent is hasznalni akarja?

                              [ Igen ]    Nem

   Ha a szamitogepet a helyi halozat atjarojakent hasznalni akarjuk
   gepek ko:zti csomagok tovabbitasara, akkor valasszuk a [ Yes ]
   gombot es nyomjuk meg hozza az Enter billentyu"t. Ha viszont ez a
   gep csupan a halozat egy tagja, akkor valasszuk a [ No ] gombot es
   a folytatashoz nyomjuk meg az Enter billentyu"t.

     --------------------------------------------------------------

  2.10.3. A halozati szolgaltatasok beallitasa

                       User Confirmation Requested
 Do you want to configure inetd and the network services that it provides?

                                Yes   [ No ]

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
 Beallitja az inetd demont es az altala felkinalt halozati szolgaltatasokat?

                               Igen   [ Nem ]

   Ha itt a [ No ] gombot valasztjuk, akkor ezzel kikapcsoljuk a
   ku:lo:nbo:zo" szolgaltatasokat, peldaul a telnetd demont. Ez azt
   jelenti, hogy a tavoli felhasznalok nem lesznek kepesek a telnet
   program hasznalataval belepni erre a szamitogepre. A helyi
   felhasznalok viszont tovabbra is kepesek lesznek tavoli
   szamitogepeket elerni a telnet segitsegevel.

   Az /etc/inetd.conf atirasaval azonban ezek a szolgaltatasok
   keso"bb termeszetesen engedelyezheto"ek. A 29.2.1 Szakasz
   foglalkozik a tema reszleteivel.

   A [ Yes ] gomb valasztasaval mar a telepites soran beallithatjuk a
   szolgaltatasokat. Ekkor egy tovabbi parbeszedablak is felbukkan:

                       User Confirmation Requested
 The Internet Super Server (inetd) allows a number of simple Internet
 services to be enabled, including finger, ftp and telnetd.  Enabling
 these services may increase risk of security problems by increasing
 the exposure of your system.

 With this in mind, do you wish to enable inetd?

                              [ Yes ]   No

   Forditasa:

                    Felhasznaloi megero"sites szu:kseges
 A fo" internetes kiszolgalo (az inetd) szamos egyszeru" internetes
 szolgaltatas, to:bbek ko:zt a finger, ftp es telnet elereset teszi
 leheto"ve. Ezen szolgaltatasok engedelyezese azonban a felmeru:lo"
 biztonsagi problemak kockazatat, mivel ezzel rendszeru:nket jobban
 kitesszu:k tamadasoknak.

 Mindezek tudataban hasznalni kivanja az inetd demont?

                             [ Igen ]   Nem

   A folytatashoz valasszuk a [ Yes ] gombot.

                       User Confirmation Requested
 inetd(8) relies on its configuration file, /etc/inetd.conf, to determine
 which of its Internet services will be available.  The default FreeBSD
 inetd.conf(5) leaves all services disabled by default, so they must be
 specifically enabled in the configuration file before they will
 function, even once inetd(8) is enabled.  Note that services for
 IPv6 must be separately enabled from IPv4 services.

 Select [Yes] now to invoke an editor on /etc/inetd.conf, or [No] to
 use the current settings.

                              [ Yes ]   No

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
 Az inetd(8) demonnak az elerheto" internetes szolgaltatasok
 megallapitasahoz szu:ksege van a beallitasait tartalmazo
 /etc/inetd.conf allomanyra. A FreeBSD-hez tartozo inetd.conf(5)
 allomany alapertelmezes szerint az o:sszes szolgaltatast letiltja,
 ezert a mu"ko:desehez minden egyes szolgaltatast ku:lo:n kell engedelyezni
 az emlitett allomanyban, meg abban az esetben is, ha az inetd(8)
 demont korabban mar engedelyeztu:k. Az IPv6 szolgaltatasok az IPv4
 szolgaltatasoktol ku:lo:n engedelyezendo"ek.

 Az [ Igen ] valasztasaval behivjuk az /etc/inetd.conf szerkeszteset,
 mig a [ Nem ] valasztasaval pedig az iment felvazolt beallitasokat
 fogadjuk el.

                             [ Igen ]   Nem

   A [ Yes ] gomb kivalasztasaval leheto"segu:nk nyilik
   szolgaltatasokat engedelyezni a sorok elejen talalhato # jel
   to:rlesevel.

   Abra 2-30. Az inetd.conf modositasa

   Miutan felvettu:k az o:sszes hasznalni kivant szolgaltatast, az
   Esc billentyu" lenyomasaval elo"hozhatjuk azt a menu:t, ahol
   elmenthetju:k a modositasainkat es kilephetu:nk.

     --------------------------------------------------------------

  2.10.4. Az SSH-n keresztu:li bejelentkezes engedelyezese

                       User Confirmation Requested
                   Would you like to enable SSH login?
                            Yes        [  No  ]

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
                Engedelyezi az SSH-n keresztu:li bejelentkezest?
                           Igen        [  Nem  ]

   A [ Yes ] gomb kivalasztasa engedelyezi az OpenSSH-hoz tartozo
   sshd(8) demont, aminek segitsegevel a szamitogepu:nkre
   biztonsagosan be tudunk jelentkezni tavolrol. Az OpenSSH
   reszleteiro"l lasd a 14.11 Szakaszt.

     --------------------------------------------------------------

  2.10.5. Anonim FTP

                       User Confirmation Requested
  Do you want to have anonymous FTP access to this machine?

                               Yes    [ No ]

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
  Hozzaferheto" legyen ez a szamitogep anonim FTP hasznalatan keresztu:l?

                              Igen    [ Nem ]

     --------------------------------------------------------------

    2.10.5.1. Az anonim FTP tiltasa

   Az alapertelmezett [ No ] gomb kivalasztasaval es az Enter
   billentyu" lenyomasaval a jelszoval vedett FTP hozzaferessel
   rendelkezo" felhasznalok tovabbra is elerhetik a szamitogepu:nket.

     --------------------------------------------------------------

    2.10.5.2. Az anonim FTP engedelyezese

   Ha ezt valasztjuk, akkor anonim FTP kapcsolaton keresztu:l barki
   hozzaferhet a szamitogepu:nkho:z. Ebben az esetben azonban
   alaposan meg kell fontolnunk nehany biztonsagi ko:vetkezmenyt. A
   beallitassal jaro kockazatokrol az 14 fejezetben olvashatunk
   to:bbet.

   Az anonim FTP bekapcsolasahoz a nyilbillentyu"kkel valasszuk ki a
   [ Yes ] feliratu gombot es nyomjuk meg az Enter billentyu"t. Ekkor
   egy tovabbi parbeszedablak is megjelenik:

                        User Confirmation Requested
  Anonymous FTP permits un-authenticated users to connect to the system
  FTP server, if FTP service is enabled.  Anonymous users are
  restricted to a specific subset of the file system, and the default
  configuration provides a drop-box incoming directory to which uploads
  are permitted.  You must separately enable both inetd(8), and enable
  ftpd(8) in inetd.conf(5) for FTP services to be available.  If you
  did not do so earlier, you will have the opportunity to enable inetd(8)
  again later.

  If you want the server to be read-only you should leave the upload
  directory option empty and add the -r command-line option to ftpd(8)
  in inetd.conf(5)

  Do you wish to continue configuring anonymous FTP?

                           [ Yes ]         No

   Az u:zenet forditasa:

                      Felhasznaloi megero"sites szu:kseges

  Az anonim FTP hasznalataval a rendszer FTP szolgaltatasahoz
  hitelesitetlen felhasznalok is hozzaferhetnek, amennyiben az aktiv. A
  nevtelen felhasznalok az allomanyrendszernek csak egy reszet erhetik
  el, valamint az alapbeallitasok szerint a felto:ltest egy ku:lo:n erre
  a celra fenntartott ko:nyvtarba vegezhetik el. Az FTP szolgaltatas
  hasznalatat ku:lo:n engedelyeznu:nk kell az inetd(8) demon reszero"l es
  az inetd.conf(5) allomanyban talalhato ftpd(8) demon aktivalasaval.
  Ha eddig meg nem tettu:k volna meg, akkor az inetd(8) hasznalatat
  keso"bb meg ujra engedelyezhetju:k.

  Ha csak leto:ltest kivanunk engedni, akkor hagyjuk a felto:ltesi
  ko:nyvtarra vonatkozo parametert u:resen es az inetd.conf(5)
  allomanyban az ftpd(8) parancssorahoz adjuk hozza az -r kapcsolot.

  Folytatja az anonim FTP beallitasat?

                          [ Igen ]         Nem

   Az u:zenet ertesit minket arrol, hogy az anonim FTP kapcsolatok
   engedelyezesehez az FTP szolgaltatast az /etc/inetd.conf
   allomanyban is be kell majd kapcsolni, lasd 2.10.3 Szakasz.
   Valasszuk a [ Yes ] gombot es a folytatashoz nyomjuk meg az Enter
   billentyu"t. Ekkor a ko:vetkezo" kepernyo" jo:n elo":

   Abra 2-31. Az anonim FTP alapbeallitasai

   A beallitasok kito:ltese soran a Tab billentyu"vel mozoghatunk az
   adatmezo"k ko:zo:tt:

   UID (felhasznaloi azonosito)

           A nevtelen FTP felhasznalokhoz tarsitott felhasznaloi
           azonosito. Az felto:lto:tt allomany tulajdonosa ez az
           azonosito lesz.

   Group (csoport)

           A nevtelen FTP felhasznalok csoportja.

   Comment (megjegyzes)

           Ez a szo:veg szerepel a felhasznalonal az /etc/passwd
           allomanyban.

   FTP Root Directory (az FTP gyo:kere)

           Itt talalhatoak az anonim FTP-n keresztu:l elerheto"
           allomanyok.

   Upload Subdirectory (felto:ltesi ko:nyvtar)

           A nevtelen FTP felhasznalok altal felto:lto:tt allomanyok
           ide keru:lnek.

   Az FTP gyo:kere alapbol a /var ko:nyvtar lesz. Ha a becsu:lt
   FTP-forgalom lebonyolitasahoz itt nem rendelkezu:nk elegendo"
   hellyel, akkor az /usr ko:nyvtarban talalhato /usr/ftp alko:nyvtar
   is beallithato az FTP gyo:kerenek.

   Ha elfogadhatonak talaljuk az ertekeket, nyomjuk le az Enter
   billentyu"t a folytatashoz.

                           User Confirmation Requested
          Create a welcome message file for anonymous FTP users?

                               [ Yes ]    No

   Forditas:

                        Felhasznaloi megero"sites szu:kseges
         Letre kivan hozni egy ko:szo:nto" u:zenetet tartalmazo allomanyt
         az anonim FTP felhasznalok szamara?

                              [ Igen ]    Nem

   A [ Yes ] valasztasaval es az Enter megnyomasaval az u:zenet
   szerkesztesehez egy szo:vegszerkeszto" fog elindulni.

   Abra 2-32. Az FTP ko:szo:nto" u:zenetenek szerkesztese

   Ez az ee szo:vegszerkeszto". Az u:zenet atirasahoz hasznaljuk a
   megadott utasitasokat, de akar keso"bb is modosithatjuk ezt a
   kedvenc szo:vegszerkeszto"nkkel. Ehhez a modositando allomany neve
   es helye a szerkeszto" kepernyo"jenek aljan olvashato.

   A kilepeshez az Esc lenyomasara felbukkano menu:ben alapbol az a)
   leave editor (kilepes a szerkeszto"bo"l) menu:pont erheto" el,
   ezert itt az Enter lenyomasaval lephetu:nk tovabb. Az Enter
   ismetelt lenyomasaval elmenthetju:k a modositasainkat.

     --------------------------------------------------------------

  2.10.6. A halozati allomanyrendszer beallitasa

   A halozati allomanyrendszer (Network File System, NFS) allomanyok
   ko:zzetetelet teszi leheto"ve halozaton keresztu:l. Hasznalata
   soran egy szamitogep beallithato szervernek, kliensnek vagy akar
   mindketto"nek. Ezzel kapcsolatban a 29.3 Szakasz ajanlott
   elolvasasra.

     --------------------------------------------------------------

    2.10.6.1. Az NFS szerver

                        User Confirmation Requested
  Do you want to configure this machine as an NFS server?

                               Yes    [ No ]

   A forditasa:

                    Felhasznaloi megero"sites szu:kseges
    Be akarja allitani NFS szervernek ezt a szamitogepet?

                              Igen    [ Nem ]

   Ha nincs szu:ksegu:nk a halozati allomanyrendszer szerver reszere,
   akkor valasszuk a [ No ] gombot es nyomjuk le az Enter
   billentyu"t.

   Amennyiben a [ Yes ] gombot valasszuk, egy u:zenet fogja ko:zo:lni
   velu:nk, hogy letre kell hoznunk az exports allomanyt.

                                Message
 Operating as an NFS server means that you must first configure an
 /etc/exports file to indicate which hosts are allowed certain kinds of
 access to your local filesystems.
 Press [Enter] now to invoke an editor on /etc/exports
                                [ OK ]

   Az u:zenet forditasa:

                                U:zenet
 Az NFS szerver mu"ko:dtetesehez elo"szo:r az /etc/exports allomany
 o:sszeallitasan keresztu:l meg kell adnunk, hogy milyen gepek milyen
 tipusu hozzaferessel rendelkezzenek a helyi allomanyrendszereinken.
 Az [Enter] lenyomasara megkezdo"dik az /etc/exports allomany
 szerkesztese.
                               [ OK ]

   Az Enter billentyu" lenyomasaval tovabblephetu:nk. Ekkor az
   exports allomany letrehozasara es szerkesztesere egy
   szo:vegszerkeszto" indul el.

   Abra 2-33. Az exports szerkesztese

   A exportalni kivant allomanyrendszerek felsorolasahoz hasznaljuk
   kepernyo"n a megadott utasitasokat, vagy tegyu:k meg ezt keso"bb
   az altalunk valasztott szo:vegszerkeszto" segitsegevel. Ilyenkor
   ne felejtsu:k el megjegyezni az allomany kepernyo" aljan lathato
   nevet es helyet.

   Amikor vegeztu:nk, az Esc billentyu"vel felhozhato menu:ben
   alapbol az a) leave editor (kilepes a szo:vegszerkeszto"bo"l)
   menu:pont aktiv, ezert itt a folytatashoz egyszeru"en nyomjuk le
   az Enter billentyu"t.

     --------------------------------------------------------------

    2.10.6.2. Az NFS kliens

   Az NFS kliens beallitasaval NFS szerverekhez tudunk hozzaferni.

                        User Confirmation Requested
  Do you want to configure this machine as an NFS client?

                               Yes   [ No ]

   Forditas:

                     Felhasznaloi megero"sites szu:kseges
       Beallitja NFS kliensnek ezt a szamitogepet?

                              Igen   [ Nem ]

   A nyilbillentyu"kkel igenyeinknek megfelelo"en valasszuk a [ Yes ]
   vagy [ No ] gombokat es utana nyomjuk meg az Enter billentyu"t.

     --------------------------------------------------------------

  2.10.7. A rendszerkonzol beallitasai

   Szamos beallitas kapcsolodik a rendszerben talalhato konzolok
   testreszabasahoz.

                       User Confirmation Requested
        Would you like to customize your system console settings?

                               [ Yes ]  No

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
                Testreszabja a rendszerkonzol beallitasait?

                              [ Igen ]  Nem

   A beallitasok megtekintesehez es megvaltoztatasahoz valasszuk a
   [ Yes ] gombot es nyomjuk le az Enter billentyu"t.

   Abra 2-34. A rendszerkonzol beallitasai

   A kepernyo"kimelo" beallitasa egy gyakori opcio. A nyilak
   hasznalataval alljunk a Saver menu:pontra, majd nyomjuk le az
   Enter billentyu"t.

   Abra 2-35. A kepernyo"kimelo" beallitasai

   A nyilakkal valasszuk ki a hasznalni kivant kepernyo"kimelo"t es
   nyomjuk meg hozza az Enter billentyu"t. Ekkor a rendszerkonzol
   beallitasait tartalmazo menu: jelenik meg ismet.

   Az aktivizalodas ideje alapbeallitas szerint 300 masodperc. Ennek
   megvaltoztatasahoz valasszuk ismet a Saver menu:pontot. A
   kepernyo"kimelo" beallitasait tartalmazo menu:ben a
   nyilbillentyu"kkel valasszuk a Timeout (Ido"korlat) menu:pontot es
   nyomjuk meg az Enter billentyu"t. Ekkor egy parbeszedablak jelenik
   meg:

   Abra 2-36. A kepernyo"kimelo"ho:z tartozo ido"korlat beallitasa

   Miutan megvaltoztattuk az erteket, a rendszerkonzol beallitasahoz
   a [ OK ] gomb kivalasztasaval, majd az Enter billentyu"
   lenyomasaval terhetu:nk vissza.

   Abra 2-37. Kilepes a rendszerkonzol beallito menu:jebo"l

   A Exit (Kilepes) valasztasaval es az Enter lenyomasaval
   folytathatjuk tovabb a telepites utolagos beallitasait.

     --------------------------------------------------------------

  2.10.8. Az ido"zona beallitasa

   Ha kivalasztjuk szamitogepu:nk szamara a megfelelo" ido"zonat,
   akkor leheto"ve tesszu:k, hogy magatol elvegezze a helyi ido"ho:z
   kapcsolodo o:sszes szu:kseges korrekciot es helyesen kezelje az
   ido"zonakhoz kapcsolodo to:bbi funkciot.

   A peldaban az Egyesu:lt Allamok keleti ido"zonajaban elhelyezkedo"
   szamitogepet lathatunk. A mi beallitasaink termeszetesen a sajat
   fo:ldrajzi helyzetu:nkto"l fu:ggenek.

                       User Confirmation Requested
           Would you like to set this machine's time zone now?

                             [ Yes ]   No

   Forditas:

                     Felhasznaloi megero"sites szu:kseges
                  Beallitja most a szamitogep ido"zonajat?

                            [ Igen ]   Nem

   A [ Yes ] gomb es az Enter billentyu" segitsegevel kivalaszthatjuk
   az ido"zona beallitasat.

                        User Confirmation Requested
  Is this machine's CMOS clock set to UTC? If it is set to local time
  or you don't know, please choose NO here!

                               Yes   [ No ]

   Forditas:

                      Felhasznaloi megero"sites szu:kseges
  A szamitogep oraja az egyseges vilagido"ho:z (UTC) van beallitva? Ha a
  helyi ido"ho:z vagy nem tudjuk, akkor itt valasszuk a NEM gombot!

                              Igen   [ Nem ]

   A szamitogepu:nk orajanak beallitasanak megfelelo"en valasszuk a
   [ Yes ] vagy [ No ] gombot, es nyomjuk meg az Enter billentyu"t.

   Abra 2-38. A terseg kivalasztasa

   A nyilakkal kivalaszthato a megfelelo" terseg, amit aztan az Enter
   billentyu"vel tudunk lezarni.

   Abra 2-39. Az orszag kivalasztasa

   A megfelelo" orszag a nyilbillentyu"kkel, valamint az Enter
   billentyu"vel valaszthato ki.

   Abra 2-40. Az ido"zona kivalasztasa

   A neku:nk megfelelo" ido"zona a nyilakkal valaszthato meg, amit
   ezutan az Enter billentyu"vel tudunk jovahagyni.

                             Confirmation
             Does the abbreviation 'EDT' look reasonable?

                             [ Yes ]   No

   Az u:zenet forditasa:

                              Megero"sites
                  Ezek szerint az 'EDT' elfogadhato?

                            [ Igen ]   Nem

   Ero"sitsu:k meg, hogy az ido"zona helyes-e. Ha rendbenlevo"nek
   latszik, nyomjuk meg az Enter billentyu"t a folytatashoz.

     --------------------------------------------------------------

  2.10.9. Linux binarisok hasznalata

                       User Confirmation Requested
           Would you like to enable Linux binary compatibility?

                             [ Yes ]   No

   A forditas:

                    Felhasznaloi megero"sites szu:kseges
                Engedelyezi a Linux binarisok futtatasat?

                            [ Igen ]   Nem

   A [ Yes ] gomb kivalasztasaval es az Enter lenyomasaval
   megengedju:k, hogy a Linuxra keszu:lt szoftvereket futtassunk
   FreeBSD-n. A telepito" ennek biztositasahoz meg tovabbi csomagokat
   is fel fog rakni.

   Ha FTP-n keresztu:l telepitu:nk, akkor a szamitogepnek
   csatlakoznia kell az internetre. Ilyenkor elo"fordulhat, hogy az
   FTP szerveren nem talalhatoak meg a Linux kompatibilitassal
   kapcsolatos csomagok. Ezeket azonban keso"bb is telepithetju:k.

     --------------------------------------------------------------

  2.10.10. Az eger beallitasai

   Ezen beallitas hasznalataval egy haromgombos egerrel
   leheto"segu:nk adodik a konzol es a felhasznaloi programok
   ko:zo:tt kivagni es bemasolni szo:vegeket. Ketgombos eger
   hasznalata eseten nezzu:k meg a moused(8) man oldalan, mikent
   tudjuk emulalni a haromgombos mu"ko:dest. A ko:vetkezo" pelda egy
   nem USB-s (tehat PS/2-es vagy soros portra csatlakozo) eger
   beallitasat illusztralja:

                       User Confirmation Requested
          Does this system have a PS/2, serial, or bus mouse?

                             [ Yes ]    No

   Forditas:

                    Felhasznaloi megero"sites szu:kseges
       Csatlakozik a rendszerehez PS/2-es, soros vagy buszos eger?

                            [ Igen ]    Nem

   A PS/2, soros vagy buszos eger hasznalatahoz valasszuk a [ Yes ]
   gombot, illetve az USB-s egerhez pedig a [ No ] gombot, majd
   nyomjuk meg az Enter billentyu"t.

   Abra 2-41. Az eger altal hasznalt protokoll tipusanak beallitasa

   A nyilbillentyu"k hasznalataval keressu:k ki a Type (Tipus)
   menu:pontot es nyomjuk le az Enter billentyu"t.

   Abra 2-42. Az eger protokolljanak beallitasa

   A peldaban hasznalt eger tipusa PS/2, ezert itt a alapertelmezes
   szerint felkinalt Auto megfelelo". A protokoll megvaltoztatasahoz
   a nyilakkal valasszunk ki egy masikat. Ezutan gondoskodjunk rola,
   hogy az [ OK ] gombot valasztottuk ki es a kilepeshez nyomjuk meg
   az Enter billentyu"t.

   Abra 2-43. Az eger portjanak beallitasa

   A nyilbillentyu"kkel valasszuk ki a Port menu:pontot es nyomjuk
   meg az Enter billentyu"t.

   Abra 2-44. Az eger portjanak kivalasztasa

   Mivel a peldaban szereplo" rendszerhez egy PS/2 eger csatlakozik,
   ezert az alapertelmezett PS/2 menu:pont megfelelo"nek tu"nik. A
   port megvaltoztatasahoz hasznaljuk a nyilakat, majd nyomjuk le az
   Enter billentyu"t.

   Abra 2-45. Az egerdemon engedelyezese

   Befejezesu:l a egerhez tartozo demon aktivalasahoz es
   kiprobalasahoz valasszuk ki a nyilakkal az Enable (Engedelyezes)
   menu:pontot.

   Abra 2-46. Az egerdemon kiprobalasa

   Probaljuk mozgatni a kepernyo"n megjeleno" egerkurzort, es
   elleno"rizzu:k, hogy a kurzor a mozdulatainknak megfelelo"en
   reagal-e. Ha mindent rendben talalunk, akkor valasszuk a [ Yes ]
   gombot es nyomjuk le az Enter billentyu"t. Ellenkezo" esetben az
   egeret nem jol allitottuk be -- valasszuk a [ No ] gombot es
   kiserletezzu:nk tovabb mas beallitasokkal.

   Az utolagos beallitasok folytatasahoz valasszuk elo"szo:r az Exit
   (Kilepes) menu:pontot, majd nyomjuk meg az Enter billentyu"t.

     --------------------------------------------------------------

  2.10.11. Csomagok telepitese

   A csomagok elo"re leforditott binarisokat tartalmaznak, es
   hasznalatukkal igen kenyelmesen tudunk szoftvereket telepiteni.

   Szemleltetes celjabol most bemutatjuk az egyik ilyen csomag
   telepiteset. Termeszetesen igeny szerint mas csomagokat is
   hozzavehetu:nk. A telepites utan a sysinstall parancs hasznalhato
   tovabbi csomagok telepitesere.

                      User Confirmation Requested
  The FreeBSD package collection is a collection of hundreds of
  ready-to-run applications, from text editors to games to WEB servers
  and more. Would you like to browse the collection now?

                             [ Yes ]   No

   Az u:zenet forditasa:

                  Felhasznaloi megero"sites szu:kseges
  A FreeBSD csomaggyu"jtemenye to:bbezernyi azonnal hasznalhato
  alkalmazast tartalmaz, a szo:vegszerkeszto"kto"l a jatekokon keresztu:l a
  WEBszervereken at szinte mindent. At kivanja lapozni most ezt a
  gyu"jtemenyt?

                            [ Igen ]   Nem

   A [ Yes ] kivalasztasa es az Enter lenyomasa utan a csomagvalaszto
   kepernyo" ko:vetkezik:

   Abra 2-47. A csomagok kategoriajanak kivalasztasa

   Ekkor csak az adott telepito"eszko:zo:n elerheto" csomagok fognak
   megjelenni.

   Az o:sszes csomagot a All (Mind) menu:pont kivalasztasaval
   lathatjuk, vagy leszu"kithetju:k ezt egy adott kategoriara is.
   Alljunk a kivalasztott kategoriahoz tartozo menu:pontra es nyomjuk
   meg az Enter billentyu"t.

   Ezutan egy menu: fogja felsorolni az adott kategorian belu:l
   telepitheto" csomagokat:

   Abra 2-48. Csomag kivalasztasa

   A peldaban a bash parancsertelmezo"t valasztottuk ki. Valogassunk
   kedvu:nkre a csomagok ko:zo:tt, es alljunk a telepiteni
   kivantakra, majd a Szoko:z billentyu" lenyomasaval jelo:lju:k be
   ezeket. Minden egyes csomag ro:vid leirasa a kepernyo" bal also
   sarkaban olvashato.

   A Tab billentyu" segitsegevel mozoghatunk az utoljara kivalasztott
   csomag, az [ OK ] es [ Cancel ] gombok ko:zo:tt.

   Miutan bejelo:ltu:k az o:sszes telepitesre szant csomagot, a
   csomagvalaszto menu:be ugy tudunk visszaterni, ha a Tab
   billentyu"vel atvaltunk az [ OK ] gombra es megnyomjuk meg az
   Enter billentyu"t.

   Ezeken felu:l a bal es jobb nyilak hasznalhatoak az [ OK ] es
   [ Cancel ] gombok ko:zti valtasra. Ugyanezzel a modszerrel
   valaszthato ki az [ OK ] gomb is, ami utan az Enter billentyu"
   megnyomasaval visszajutunk a csomagvalaszto menu:be.

   Abra 2-49. Csomagok telepitese

   A nyilakkal es a Tab billentyu"vel valasszuk ki az [ Install ]
   (Telepites) gombot es nyomjuk meg az Enter billentyu"t. Ekkor meg
   kell ero"sitenu:nk a csomagok telepiteset:

   Abra 2-50. Csomagok telepitesenek megero"sitese

   Az [ OK ] kivalasztasa majd az Enter billentyu" lenyomasa inditja
   el a csomagok telepiteset. A telepites befejezeseig ku:lo:nbo:zo"
   u:zenetek fognak megjelenni. Figyelju:nk az ilyenkor felbukkano
   hibau:zenetekre!

   A beallitasok veglegesitese a csomagok telepitese utan
   folytatodik. Amennyiben egyetlen csomagot sem valasztottunk es
   szeretnenk tovabblepni, akkor is az Install (Telepites) gombot
   valasszuk.

     --------------------------------------------------------------

  2.10.12. Felhasznalok es csoportok felvetele

   A telepites soran legalabb egy felhasznalot erdemes hozzaadnunk a
   rendszerhez, mivel a rendszer hasznalatahoz igy nem kell root
   felhasznalokent bejelentkezni. Altalanossagban veve ahhoz
   egyebkent is kicsi a gyo:kerparticio, hogy root felhasznalokent
   (rendszeradminisztratorkent) futtassunk rajta programokat, es
   gyorsan be is telik. A nagyobb veszelyt azonban itt olvashatjuk:

                      User Confirmation Requested
  Would you like to add any initial user accounts to the system? Adding
  at least one account for yourself at this stage is suggested since
  working as the "root" user is dangerous (it is easy to do things which
  adversely affect the entire system).

                             [ Yes ]   No

                   Felhasznaloi megero"sites szu:kseges
  Szeretnenk mosta rendszerbe felvenni felhasznaloi fiokokat? Ebben a
  lepesben legalabb egy felhasznalo felvetele javasolt, hiszen "root"
  felhasznalokent veszelyes dolgozni (mivel igy ko:nnyen tehetu:nk olyan
  dolgokat, amelyek karos hatassal lehetnek rendszeru:nkre).

                            [ Igen ]   Nem

   Ezert valasszuk a [ Yes ] gombot es az Enter billentyu"
   lenyomasaval lepju:nk tovabb a felhasznalok felvetelehez.

   Abra 2-51. Felhasznalok kivalasztasa

   A nyilbillentyu"kkel valasszuk ki a User (Felhasznalo) menu:pontot
   es nyomjuk meg az Enter billentyu"t.

   Abra 2-52. A felhasznalo adatainak megadasa

   Amikor a Tab billentyu"vel lepkedu:nk a kito:ltendo" mezo"k
   ko:zo:tt, a kepernyo" also reszen az alabbi leirasok magyarazzak
   az egyes mezo"k tartalmat:

   Login ID (Bejelentkezesi azonosito)

           Az uj felhasznalo bejelentkezesi neve (ko:telezo").

   UID (Felhasznaloi azonosito)

           A felhasznalo szamszeru" azonositoja (automatikusan
           letrejo:n, ha u:resen hagyjuk).

   Group (Csoport)

           A felhasznalo bejelentkezesi csoportjanak neve
           (automatikusan letrejo:n, ha u:resen hagyjuk).

   Password (Jelszo)

           A felhasznalo jelszava (ovatosan banjunk ezzel a
           mezo"vel!)

   Full name (Teljes nev)

           A felhasznalo teljes neve (megjegyzes).

   Member groups (Tovabbi csoportok)

           A felhasznalo ezen csoportoknak is tagja (tehat
           rendelkezik az engedelyeikkel).

   Home directory (Felhasznaloi ko:nyvtar)

           A felhasznalo sajat ko:nyvtara (ha u:resen hagyjuk, az
           alapertelmezes szerint to:lto"dik ki).

   Login shell (Parancsertelmezo"l)

           A felhasznalo altal hasznalt parancsertelmezo" (ha u:resen
           hagyjuk, az alapertelmezes szerint to:lto"dik, mint
           peldaul /bin/sh).

   Az abran a bejelentkezes utan hasznalt parancsertelmezo"t a
   /bin/sh parancsertelmezo"ro"l a /usr/local/bin/bash
   parancsertelmezo"re valtoztattuk, igy most a korabban telepitett
   bash parancsertelmezo"t fogjuk hasznalni. Itt ne is probaljunk nem
   letezo" parancsertelmezo"t kivalasztani, hiszen ekkor nem tudunk
   majd bejelentkezni. A BSD vilagban egyebkent a C shell a
   leggyakrabban hasznalt, amelyet a /bin/tcsh megadasaval
   valaszthatjuk ki.

   Az abran szereplo" felhasznalot ezenkivu:l meg a wheel csoportba
   is felvettu:k, aminek ko:szo:nheto"en kepes lesz a rendszeru:nkben
   a root felhasznaloi jogaival rendelkezo" rendszeradminisztratorra
   valni.

   Amikor mindent megfelelo"nek talalunk, nyomjunk az [ OK ] gombra
   es ekkor ismet a felhasznalok es csoportok karbantartasat
   tartalmazo menu: jelenik meg:

   Abra 2-53. Kilepes a felhasznalok es csoportok menu:jebo"l

   Csoportokat is letre tudunk hozni, amennyiben erre szu:ksegu:nk
   lenne. Ez a resz a telepites befejezese utan tovabbra is elerheto"
   a sysinstall parancs segitsegevel.

   Amikor befejeztu:k a felhasznalok hozzaadasat, a nyilakkal
   valasszuk ki az Exit (Kilepes) menu:pontot es a telepites
   folytatasahoz nyomjuk meg az Enter billentyu"t.

     --------------------------------------------------------------

  2.10.13. A root felhasznalo jelszavanak megadasa

                         Message
  Now you must set the system manager's password. 
  This is the password you'll use to log in as "root".

                          [ OK ]

                [ Press enter or space ]

   Forditasa:

                          U:zenet
  Most meg kell adnia a rendszergazda jelszavat. Ezt a jelszot
  kell a "root" felhasznalo bejelentkezesekor hasznalni.

                          [ OK ]

      [ Nyomja le az Enter vagy a Szoko:z billentyu"t ]

   A root felhasznalo jelszavanak beallitasahoz nyomjuk meg az Enter
   billentyu"t.

   A jelszot ketszer kell megadnunk. Felesleges megemliteni, hogy
   gondoskodjunk arrol az esetro"l is, ha veletlenu:l elfelejtenenk
   ezt a jelszot. Megemlitju:k, hogy az itt begepelt jelszo nem lesz
   lathato es a betu"k helyett sem jelennek meg csillagok.

 New password:
 Retype new password :

   A jelszo sikeres megadasa utan a telepites folytatodik.

     --------------------------------------------------------------

  2.10.14. Kilepes a telepito"bo"l

   Ha be szeretnenk meg allitani egyeb halozati szolgaltatast vagy
   valamilyen mas konfiguracios lepest kivanunk meg elvegezni, ezen a
   ponton megtehetju:k vagy a telepites utan a sysinstall parancs
   kiadasaval.

                      User Confirmation Requested
  Visit the general configuration menu for a chance to set any last
  options?

                               Yes   [ No ]

   Forditas:

                   Felhasznaloi megero"sites szu:kseges
  Vegignezi meg utoljara a beallitasokat arra az esetre, ha veletlenu:l
  kihagytunk volna valamit?

                              Igen   [ Nem ]

   Ha a nyilakkal a [ No ] gomnbot valasztjuk, majd megnyomjuk rajta
   az Enter billentyu"t, akkor visszateru:nk a telepito"
   fo"menu:jebe.

   Abra 2-54. Kilepes a telepito"bo"l

   Valasszuk ki a nyilbillentyu"kkel a [X Exit Install] (Kilepes a
   telepito"bo"l) gombot es nyomjuk meg az Enter billentyu"t. Ezutan
   meg kell ero"sitenu:nk kilepesi szandekunkat:

                      User Confirmation Requested
  Are you sure you wish to exit? The system will reboot (be sure to 
  remove any floppies/CDs/DVDs from the drives).

                             [ Yes ]   No

   Forditas:

                   Felhasznaloi megero"sites szu:kseges
          Valoban ki akar lepni? A rendszer ezt ko:veto"en ujra fog
          indulni (ezert ne felejtsu:k el eltavolitani az o:sszes
          floppyt, CD-t es DVD-t a meghajtokbol)!

                            [ Igen ]    Nem

   Valasszuk a [ Yes ] gombot es ha floppyrol inditottuk a rendszert,
   akkor azt vegyu:k ki a meghajtobol. A CD-meghajto egeszen az
   ujrainditas megkezdeseig zarolt lesz, ezert csak ekkor tudjuk
   (gyorsan) kivenni a meghajtobol a lemezt.

   A rendszer ujraindul, legyu:nk resen es figyelju:k a megjeleno"
   hibau:zeneteket, erro"l bo"vebben lasd a 2.10.16 Szakaszban.

     --------------------------------------------------------------

  2.10.15. Tovabbi halozati szolgalatasok beallitasa

   Irta: Tom Rhodes.

   A halozati szolgaltatasok teren csekely tapasztalattal rendelkezo"
   kezdo" felhasznalok szamara ijeszto" lehet ezek beallitasa. A
   halozatok es to:bbek ko:zt az internet kezelese napjaink modern
   operacios rendszereink, igy a FreeBSD-nek is az egyik fontos
   teru:lete. Ezert nagyon hasznos ismernu:nk valamennyire a FreeBSD
   altal felkinalt halozati leheto"segeket. A telepites ko:zben ezert
   a felhasznalonak tisztaban kell lennie a rendelkezesere allo
   szolgaltatasokkal.

   A halozati szolgaltatasok olyan programok, amelyek a halozat
   minden reszero"l fogadnak adatokat. Mindent el kell ko:vetnu:nk
   annak erdekeben, hogy ezek a programok ne tehessenek semmilyen
   "kart". Sajnos a programozok sem to:keletesek, es az ido"k soran
   mar elo"fordult parszor, hogy a halozati szolgaltatasokban
   maradtak hibak, amelyek kihasznalasaval a tamadok rossz dolgokat
   tudtak csinalni. Ezert fontos, hogy csak is azokat a
   szolgaltatasokat engedelyezzu:k, amelyekre tenylegesen
   szu:ksegu:nk van. Ha nem tudjuk eldo:nteni, akkor az a legjobb, ha
   egeszen addig egyiket sem engedelyezzu:k, amig valoban
   szu:ksegu:nk nem lesz rajuk. A sysinstall ujboli elinditasaval
   vagy az /etc/rc.conf megfelelo" beallitasaval mindig tudunk uj
   szolgaltatasokat aktivalni.

   A Networking (Halozatok) menu:pont kivalasztasa utan valami
   ilyesmit lathatunk:

   Abra 2-55. A halozati beallitasok menu:jenek felso" szintje

   Ezek ko:zu:l a Interfaces (Csatolok), vagyis az elso" menu:pontrol
   korabban mar szo esett a 2.10.1 Szakaszban, ezert ez most
   nyugodtan kihagyhato.

   Az AMD menu:pont kivalasztasaval engedelyezzu:k a BSD automatikus
   csatlakoztatasokert felelo"s segedeszko:zet (AMD, az AutoMounter
   Daemon). Ezt altalaban az NFS protokollal (lasd lentebb) egyu:tt
   szokas hasznalni a tavoli allomanyrendszerek automatikus
   csatlakoztatasahoz. Itt nincs szu:kseg semmilyen ku:lo:nleges
   beallitasra.

   A ko:vetkezo" sorban az AMD Flags (Az AMD beallitasai) menu:pont
   szerepel. Kivalasztasa utan az AMD beallitasait bekero" ablak fog
   felbukkani. Ez mar szamos alapertelmezett beallitast tartalmaz:

 -a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map

   A -a kapcsoloval adjuk meg a csatlakozasi pontok alapertelmezett
   helyet, amely ebben az esetben az /.amd_mnt. A -l kapcsoloval
   adjuk meg az alapertelmezett log (naplo) allomanyt, habar a
   syslogd hasznalata soran az o:sszes naplozasi tevekenyseg a
   rendszer naplozo demonjan fut majd keresztu:l. A /host ko:nyvtarba
   fognak csatlakozni a tavoli gepek exportalt allomanyrendszerei,
   mig a /net ko:nyvtarba a ku:lo:nbo:zo" IP-cimekro"l exportalt
   allomanyrendszerek keru:lnek csatlakoztatasra. Az /etc/amd.map
   allomany tartalmazza az AMD exportjainak alapertelmezett
   beallitasait.

   Az Anon FTP menu:ponton keresztu:l engedelyezhetju:k az anonim FTP
   kapcsolatokat. A menu:pont kivalasztasaval szamitogepu:nket egy
   anonim FTP szerverre tehetju:k, azonban legyu:nk tekintettel a
   beallitashoz tartozo biztonsagi veszelyekkel! A kivalasztasakor
   egy ablak tajekoztat minket a beallitas reszleteiro"l es
   felmeru:lo" biztonsagi kockazatokrol.

   A Gateway (Atjaro) menu:pont hasznalataval a korabbiakban
   targyaltak szerint allithatjuk be szamitogepu:nket halozati
   atjaronak. Ugyanekkor a Gateway menu:ben nyilik leheto"segu:k
   kikapcsolni ezt a beallitast, amennyiben a telepitesi folyamat
   korabbi lepesei soran veletlenu:l engedelyeztu:k volna.

   Az Inetd menu:pont segitsegevel beallithatjuk, vagy akar teljesen
   ki is kapcsolhatjuk a korabban targyalt inetd(8) demont.

   A Mail (Levelezes) menu:pontban beallithatjuk a rendszer
   alapertelmezett MTA avagy leveltovabbito u:gyno:ket (Mail Transfer
   Agent). Ennek hatasara a ko:vetkezo" menu: jelenik meg:

   Abra 2-56. Az alapertelmezett MTA kivalasztasa

   Itt valaszhatunk, hogy a ku:lo:nbo:zo" levelku:ldo" rendszerek
   ko:zu:l melyiket telepitsu:k alapertelmezettkent. Egy ilyen
   alkalmazas lenyegeben nem to:bb, mint egy levelku:ldesre hasznalt
   szerver, amely tovabbitja a rendszerben vagy az interneten
   talalhato felhasznalok szamara a leveleket.

   A Sendmail valasztasaval a FreeBSD alapbol felkinalt megoldasat, a
   nepszeru" sendmail szervert telepithetju:k. A Sendmail local
   (Helyi Sendmail) menu:pont kivalasztasaval szinten a sendmail lesz
   a telepitendo" levelku:ldo" szerver, azonban nem lesz kepes az
   internetro"l erkezo" leveleket fogadni. Az itt felsorolt to:bbi
   beallitas, tehat a Postfix es Exim, a Sendmail beallitasahoz
   hasonloan zajlik. Mind a ketto" elektronikus levelek kezbesitesere
   hasznalhato, azonban bizonyos felhasznalok a sendmail helyett
   inkabb ezek valamelyiket hasznaljak.

   Valamelyik vagy eppen semelyik leveltovabbito szerver kivalasztasa
   utan az NFS client (NFS kliens) beallitasara vonatkozo menu:
   jelentkezik.

   Az NFS client beallitasaval a rendszeru:nk NFS szerverekkel lesz
   kepes kapcsolatba lepni. Egy ilyen NFS szerver az NFS protokoll
   segitsegevel a halozaton keresztu:l elerheto"ve tesz
   allomanyrendszereket. Ha gepu:nk fu:ggetlen, akkor nem fontos
   kivalasztanunk ezt a menu:pontot. A rendszernek keso"bb tovabbi
   beallitasokra is szu:ksege lehet, amelyekro"l az 29.3 Szakaszban
   olvashatunk reszletesebben.

   Az NFS server (NFS szerver) menu:pont kivalasztasaval
   hozzajarulunk, hogy rendszeru:nk NFS szerverkent u:zemeljen. Ehhez
   meg kell adnunk az RPC, vagyis a tavoli eljarashivasok
   kiszolgalasanak elinditasahoz szu:kseges adatokat is. Az RPC
   hasznalataval a ku:lo:nbo:zo" kiszolgalok es programok ko:zo:tt
   tudjuk vezerelni a kapcsolatot.

   A sorban az Ntpdate beallitasa ko:vetkezik, ahol az
   ido"szinkronizaciohoz kapcsolodo opciokat talaljuk.
   Kivalasztasakor az abran szereplo"ho:z hasonlo menu: fog
   megjelenni:

   Abra 2-57. Az Ntpdate beallitasa

   Ebbo"l a menu:bo"l valasszuk ki a hozzank legko:zelebb levo"
   szevert. Egy ko:zeli szerver megadasaval az ido"szinkronizacio
   sokkalta pontosabba valik, mivel a to"lu:nk tavolabbi szerverek
   kapcsolatanak kesleltetese nagyobb lehet.

   A ko:vetkezo" beallitas az PCNFSD. Ennek kivalasztasa soran a
   Portgyu"jtemenybo"l telepitesre keru:l a net/pcnfsd csomag. Ez
   lenyegeben egy hasznos segedprogram, amellyel olyan operacios
   rendszerek szamara tudunk hitelesitest szolgaltatni az NFS
   hasznalata soran, amelyek maguktol erre nem kepesek, mint peldaul
   a Microsoft MS-DOS rendszere.

   A to:bbi beallitas megtekintesehez egy kicsit lejjebb kell
   haladnunk a listaban:

   Abra 2-58. A halozati beallitasok menu:jenek also szintje

   Az rpcbind(8) es rpc.statd(8), valamint az rpc.lockd(8)
   segedprogramok mind a tavoli eljarashivasokhoz (Remote Procedure
   Call, RPC) hasznalhatoak. Az rpcbind segedprogram az NFS szerverei
   es kliensei ko:zo:tt felu:gyeli a kapcsolatot, ezert a hasznalata
   az NFS szerverek es kliensek mu"ko:desehez elengedhetetlen. Az
   allapot figyelesehez az rpc.statd demon felveszi a kapcsolatot a
   to:bbi gepen futo rpc.statd demonokkal. A jelentett allapotok
   altalaban a /var/db/statd.status allomanyban talalhatoak. Itt a
   ko:vetkezo"kent felsorolt elem az rpc.lockd, amelynek
   kivalasztasaval allomanyzarolasi szolgaltatasokat erhetu:nk el.
   Ezt to:bbnyire az rpc.statd demonnal egyu:tt alkalmazzak a
   zarolasokat kero" gepek es a keresek gyakorisaganak
   nyilvantartasara. Mig ezekkel a beallitasokkal gyo:nyo:ru"en
   nyomon lehet ko:vetni a mu"ko:dest, az NFS szerverek es kliensek
   megfelelo" mu"ko:desehez nem ko:telezo" a hasznalatuk.

   Ahogy haladunk tovabb a listaban, a ko:vetkezo" elem a Routed,
   vagyis az utvalasztasert felelo"s demon lesz. A routed(8)
   segedprogram a halozati utvalaszto tablazatokat tartja karban,
   felderiti az elerheto" utvalasztokat es keresre barmelyik hozza
   fizikailag csatlakozo gep szamara atadja az altala nyilvantartott
   utvalasztasi adatokat. Ezt leginkabb a helyi halozat atjarojakent
   mu"ko:do" szamitogepek hasznaljak. Kivalasztasakor egy ablak fog
   rakerdezni a segedprogram helyere. Az itt alapbol felkinalt ertek
   altalaban megfelelo", ezert nyugtazhatjuk az Enter billentyu"
   lenyomasaval. Ezt ko:veto"en egy masik menu: jelenik meg, ahol a
   routed beallitasait adhatjuk meg. Itt alapertelmezes szerint a -q
   kapcsolo szerepel.

   A ko:vetkezo" sor az Rwhod beallitase, aminek kivalasztasaval el
   tudjuk indittatni az rwhod(8) demont a rendszer elinditasa soran.
   Az rwhod segedprogram a rendszeru:zeneteket a halozaton
   ido"ko:zo:nkent szetku:ldi vagy "figyelo"" (consumer) modban
   o:sszegyu"jti ezeket. Ennek pontosabb reszleteit az ruptime(1) es
   rwho(1) man oldalakon talalhatjuk meg.

   Az sshd(8) demone az utolso elo"tti beallitas. Ez az OpenSSH
   biztonsagos shell szervere, melyet a szabvanyos telnet es FTP
   szerverek helyett ajanlanak. Az sshd szerver tehat ket gep ko:zti
   biztonsagos, titkositott kapcsolatok letrehozasara hasznalhato.

   A lista vegen a TCP Extensions (TCP kiterjesztesek) menu:pontot
   talalhatjuk. Segitsegevel a TCP RFC 1323 es RFC 1644
   dokumentumokban leirt kiterjeszteseinek hasznalatat
   engedelyezhetju:k. Ezzel egyes gepek eseten felgyorsulhat a
   kapcsolat, azonban mas esetekben pedig eldobodhat. Ez szerverek
   hasznalatanal nem ajanlott, viszont fu:ggetlen gepeknel
   kifizeto"do" lehet.

   Most, miutan beallitottuk a halozati szolgaltatasokat, lepju:nk
   vissza a lista elejen talalhato X Exit (Kilepes) menu:pontra es
   folytassuk a beallitast a ko:vetkezo" opcioval, vagy egyszeru"en
   az X Exit ketszeri kivalasztasaval, majd a [X Exit Install]
   (Kilepes a telepito"bo"l) gomb lenyomasaval lepju:nk ki a
   sysinstall programbol.

     --------------------------------------------------------------

  2.10.16. A FreeBSD indulasa

    2.10.16.1. A FreeBSD/i386 indulasa

   Ha minden remeku:lt ment, a kepernyo"n lentro"l felfele go:rdu:lo"
   u:zeneteket fogunk latni, majd a rendszer varni fog to"lu:nk egy
   bejelentkezesi nevet. A kiirt u:zeneteket ko:zo:tt a Scroll Lock
   lenyomasa utan a PgUp es PgDn billentyu"k hasznalataval tudunk
   lapozni. A Scroll Lock ismetelt lenyomasaval visszateru:nk a
   bejelentkezeshez.

   Nem minden esetben lesz lathato az o:sszes u:zenet (a puffer
   vegessege miatt), de miutan bejelentkeztu:nk, ezeket a dmesg
   parancs kiadasaval is megnezhetju:k.

   Bejelentkezni a telepiteskor megadott felhasznaloi nev/jelszo
   parossal tudunk (a peldaban ez most rpratt). Leheto"leg ne
   jelentkezzu:nk be root felhasznalokent!

   A rendszer inditasakor jellemzo"en elo"fordulo u:zenetek (a
   verziora vonatkozo adatokat kihagytuk):

 Copyright (c) 1992-2002 The FreeBSD Project.
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
         The Regents of the University of California. All rights reserved.

 Timecounter "i8254"  frequency 1193182 Hz
 CPU: AMD-K6(tm) 3D processor (300.68-MHz 586-class CPU)
   Origin = "AuthenticAMD"  Id = 0x580  Stepping = 0
   Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
   AMD Features=0x80000800<SYSCALL,3DNow!>
 real memory  = 268435456 (262144K bytes)
 config> di sn0
 config> di lnc0
 config> di le0
 config> di ie0
 config> di fe0
 config> di cs0
 config> di bt0 
 config> di aic0
 config> di aha0
 config> di adv0
 config> q
 avail memory = 256311296 (250304K bytes)
 Preloaded elf kernel "kernel" at 0xc0491000.
 Preloaded userconfig_script "/boot/kernel.conf" at 0xc049109c.
 md0: Malloc disk
 Using $PIR table, 4 entries at 0xc00fde60
 npx0: <math processor> on motherboard
 npx0: INT 16 interface
 pcib0: <Host to PCI bridge> on motherboard
 pci0: <PCI bus> on pcib0
 pcib1: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0
 pci1: <PCI bus> on pcib1
 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11
 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0
 isa0: <ISA bus> on isab0
 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0
 ata0: at 0x1f0 irq 14 on atapci0
 ata1: at 0x170 irq 15 on atapci0
 uhci0: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci0
 usb0: <VIA 83C572 USB controller> on uhci0
 usb0: USB revision 1.0
 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 2 ports with 2 removable, self powered
 chip1: <VIA 82C586B ACPI interface> at device 7.3 on pci0
 ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe800-0xe81f irq 9 at
 device 10.0 on pci0
 ed0: address 52:54:05:de:73:1b, type NE2000 (16 bit)
 isa0: too many dependant configs (8)
 isa0: unexpected small tag 14
 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
 fdc0: FIFO enabled, 8 bytes threshold
 fd0: <1440-KB 3.5" drive> on fdc0 drive 0
 atkbdc0: <keyboard controller (i8042)> at port 0x60-0x64 on isa0
 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
 kbd0 at atkbd0
 psm0: <PS/2 Mouse> irq 12 on atkbdc0
 psm0: model Generic PS/2 mouse, device ID 0
 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
 sc0: <System console> at flags 0x1 on isa0
 sc0: VGA <16 virtual consoles, flags=0x300>
 sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
 sio0: type 16550A
 sio1 at port 0x2f8-0x2ff irq 3 on isa0
 sio1: type 16550A
 ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
 ppc0: FIFO with 16/16/15 bytes threshold
 ppbus0: IEEE1284 device found /NIBBLE
 Probing for PnP devices on ppbus0:
 plip0: <PLIP network interface> on ppbus0
 lpt0: <Printer> on ppbus0
 lpt0: Interrupt-driven port
 ppi0: <Parallel I/O> on ppbus0
 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master using UDMA33
 ad2: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata1-master using UDMA33
 acd0: CDROM <DELTA OTC-H101/ST3 F/W by OIPD> at ata0-slave using PIO4
 Mounting root from ufs:/dev/ad0s1a
 swapon: adding /dev/ad0s1b as swap device
 Automatic boot in progress...
 /dev/ad0s1a: FILESYSTEM CLEAN; SKIPPING CHECKS
 /dev/ad0s1a: clean, 48752 free (552 frags, 6025 blocks, 0.9% fragmentation)
 /dev/ad0s1f: FILESYSTEM CLEAN; SKIPPING CHECKS
 /dev/ad0s1f: clean, 128997 free (21 frags, 16122 blocks, 0.0% fragmentation)
 /dev/ad0s1g: FILESYSTEM CLEAN; SKIPPING CHECKS
 /dev/ad0s1g: clean, 3036299 free (43175 frags, 374073 blocks, 1.3% fragmentation)
 /dev/ad0s1e: filesystem CLEAN; SKIPPING CHECKS
 /dev/ad0s1e: clean, 128193 free (17 frags, 16022 blocks, 0.0% fragmentation)
 Doing initial network setup: hostname.
 ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
         inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
         inet6 fe80::5054::5ff::fede:731b%ed0 prefixlen 64 tentative scopeid 0x1
         ether 52:54:05:de:73:1b
 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
         inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8
         inet6 ::1 prefixlen 128
         inet 127.0.0.1 netmask 0xff000000
 Additional routing options: IP gateway=YES TCP keepalive=YES
 routing daemons:.
 additional daemons: syslogd.
 Doing additional network setup:.
 Starting final network daemons: creating ssh RSA host key
 Generating public/private rsa1 key pair.
 Your identification has been saved in /etc/ssh/ssh_host_key.
 Your public key has been saved in /etc/ssh/ssh_host_key.pub.
 The key fingerprint is:
 cd:76:89:16:69:0e:d0:6e:f8:66:d0:07:26:3c:7e:2d root@k6-2.example.com
  creating ssh DSA host key
 Generating public/private dsa key pair.
 Your identification has been saved in /etc/ssh/ssh_host_dsa_key.
 Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub.
 The key fingerprint is:
 f9:a1:a9:47:c4:ad:f9:8d:52:b8:b8:ff:8c:ad:2d:e6 root@k6-2.example.com.
 setting ELF ldconfig path: /usr/lib /usr/lib/compat /usr/X11R6/lib
 /usr/local/lib
 a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout
 starting standard daemons: inetd cron sshd usbd sendmail.
 Initial rc.i386 initialization:.
 rc.i386 configuring syscons: blank_time screensaver moused.
 Additional ABI support: linux.
 Local package initialization:.
 Additional TCP options:.

 FreeBSD/i386 (k6-2.example.com) (ttyv0)

 login: rpratt
 Password:

   Az RSA es DSA kulcsok generalasa a lassabb gepeken sokag is
   eltarthat, habar ez mindig csak a friss telepitesek utani elso"
   inditaskor to:rtenik meg. A rendszer keso"bbi indulasai etto"l mar
   gyorsabbak lesznek.

   Ha X szervert is beallitottunk es valasztottunk hozza egy
   alapertelmezett munkako:rnyezetet, akkor ezt a parancssorbol a
   startx kiadasaval elindithatjuk el.

     --------------------------------------------------------------

    2.10.16.2. A FreeBSD/alpha indulasa

   Ahogy a telepites befejezo"do"tt, az SRM konzolbol valami ilyesmi
   begepelesevel tudjuk elinditani a FreeBSD-t:

 >>>BOOT DKC0

   Ezzel utasitjuk a firmware-t, hogy inditsa el a rendszert a
   megadott lemezro"l. A FreeBSD jo:vo"beni automatikus inditasahoz
   hasznaljuk az alabbi parancsokat:

 >>> SET BOOT_OSFLAGS A
 >>> SET BOOT_FILE ''
 >>> SET BOOTDEF_DEV DKC0
 >>> SET AUTO_ACTION BOOT

   A rendszer inditasakor megjeleno" u:zenetek hasonlo (de nem
   teljesen azonosak) lesznek az i386 architekturan indulo FreeBSD
   esetehez.

     --------------------------------------------------------------

  2.10.17. A FreeBSD leallitasa

   Fontos, hogy mindig szabalyosan allitsuk le az operacios
   rendszert, ne kapcsoljuk ki csak ugy egyszeru"en a
   szamitogepu:nket! A leallitashoz elo"szo:r a su parancs
   kiadasaval, majd itt a root jelszavanak megadasaval vegyu:k fel az
   ehhez szu:kseges rendszeradminisztratori jogosultsagokat. Ez
   viszont csak abban az esetben fog mu"ko:dni, ha a felhasznalonk
   tagja a wheel csoportnak. Minden mas esetben egyszeru"en
   jelentkezzu:nk be root felhasznalokent es hasznaljuk a shutdown -h
   now parancsot.

 The operating system has halted.
 Please press any key to reboot.

   A fenti u:zenet jelzi, hogy a leallito parancs kiadasa utan mar
   kikapcsolhatjuk a szamitogepet, vagy ha ehelyett egy billentyu"t
   nyomunk le, akkor a gep ujraindul.

   A Ctrl+Alt+Del billentyu"kombinacio hasznalataval is ujra tudjuk
   inditani a rendszert, azonban ez normal mu"ko:des ko:zben nem
   ajanlott.

     --------------------------------------------------------------

2.11. Hibakereses

   A most ko:vetkezo" szakaszban azokra a telepites soran felmeru:lo"
   problemakra probalunk meg megoldasokat adni, amelyeket eddig mar
   sokan jeleztek neku:nk. Ezek mellett szerepel nehany kerdes es
   valasz is a FreeBSD es az MS-DOS vagy Windows ko:zo:s
   hasznalatarol.

     --------------------------------------------------------------

  2.11.1. Mit tegyu:nk ha valami nem mu"ko:dik

   A PC architektura ku:lo:nfele korlatozasai miatt szinte lehetetlen
   100%-ban megbizhatova tenni az eszko:zo:k felderiteset, azonban
   ennek hibaja kapcsan nehany dolgot meg tenni tudunk.

   Elleno"rizzu:k a Hardware Notes (Hardverjegyzek) cimu"
   dokumentumban, hogy az adott hardvert a FreeBSD valoban ismeri.

   Amennyiben a hardvereszko:zu:nket a rendszer ismeri, azonban meg
   mindig jelentkeznek fagyasok vagy egyeb gondok, keszitenu:nk kell
   egy sajat rendszermagot. Ezzel olyan eszko:zo:k tamogatasat is
   beepithetju:k a rendszermagba, amelyek eredetileg nem szerepelnek
   a GENERIC rendszermagban. A telepiteshez keszitett rendszerindito
   lemezeken talalhato rendszermag a legto:bb eszko:zt a gyari IRQ,
   IO-cim es DMA csatorna beallitasaik menten probalja felkutatni. Ha
   viszont a hardveru:nket atallitottuk, ennek megfelelo"en
   modositanunk kell a rendszermag beallitasait es ujra kell
   forditanunk, hogy a FreeBSD tudja, hol is keresse az eszko:zt.

   Olyan is adodhat, hogy egy nem letezo" eszko:z keresese egy utana
   keresendo" masik, jelenlevo" eszko:z felkutatasat akadalyozza meg.
   Ilyenkor az u:tko:zo" meghajtokat le kell tiltani.

     Megjegyzes: Egyes problemak elkeru:lheto"ek vagy csillapithatoak
     a ku:lo:nbo:zo" hardvero:sszetevo"k, ku:lo:no:sen az alaplapi
     firmware frissitesevel. Az alaplap firmware-jere sokszor csak
     BIOS-kent hivatkoznak, es a legto:bb alaplap- vagy
     szamitogepgyarto honlapjan talalhatjuk meg ezeket, valamint a
     rajuk vonatkozo utasitasokat.

     A legto:bb gyarto azonban ero"sen tiltakozik az alaplapi
     BIOS-frissitesek ellen, es csak indokolt esetekben, peldaul
     kritikus javitasoknal javasoljak. A frissites kimenetele lehet
     rossz is, aminek ko:vetkezmenye a BIOS tartos karosodasa.

     --------------------------------------------------------------

  2.11.2. Az MS-DOS(R) es Windows(R) allomanyrendszereinek hasznalata

   A FreeBSD jelenleg nem tamogatja a Double Space(TM) alkalmazassal
   to:mo:ritett allomanyrendszereket, ezert a FreeBSD csak ugy tud az
   adataihoz hozzaferni, ha elo"tte kito:mo:ritju:k ezeket. Ezt a
   Start menu: Programs (Programok) > System Tools
   (Rendszereszko:zo:k) menu:jeben talalhato Compression Agent
   (Lemezto:mo:rites) elinditasaval tehetju:k meg.

   A FreeBSD tamogatja az MS-DOS alapu (gyakran csak FAT tipusunak
   nevezett) allomanyrendszereket. A mount_msdosfs(8) parancs
   segitsegevel az ilyen rendszerek ko:nnyeden becsatlakoztathatok a
   mar letezo" ko:nyvtarszerkezetbe, amivel igy el tudjuk erni a
   tartalmat. A mount_msdosfs(8) programot altalaban nem
   ko:zvetlenu:l hivjuk meg, hanem az /etc/fstab vagy a mount(8)
   segedprogram megfelelo" parameterezesevel.

   Az /etc/fstab allomanyban altalaban igy nez ki egy ilyen sor:

 /dev/ad0sN  /dos        msdosfs rw 0 0

     Megjegyzes: A mu"velet vegrehajtasahoz a /dos ko:nyvtarnak mar
     leteznie kell. Az /etc/fstab pontos formatumaval kapcsolatban a
     fstab(5) man oldalt olvassuk el.

   Az MS-DOS allomanyrendszerek eseteben a mount(8) parancsot
   to:bbnyire igy adjuk ki:

 # mount -t msdosfs /dev/ad0s1 /mnt

   Ebben a peldaban a MS-DOS allomanyrendszer az elso"dleges
   merevlemez elso" particiojan helyezkedik el. A mi helyzetu:nk
   etto"l eltero" lehet, ezert ehhez vizsgaljuk meg a dmesg es mount
   parancsok kimeneteit. Segitsegu:kkel elegendo" informaciot tudunk
   o:sszeszedni a gepu:nko:n talalhato particiok kiosztasarol.

     Megjegyzes: Elo"fordulhat, hogy a FreeBSD a to:bbi operacios
     rendszerto"l eltero" modon szamozza a slice-okat (vagyis az
     MS-DOS particiokat). Konkretan: a kiterjesztett MS-DOS particiok
     altalaban nagyobb sorszamot kapnak, mint az elso"dleges MS-DOS
     particiok. Az fdisk(8) segedprogram segithet megallapitani, hogy
     mely slice-ok tartoznak a FreeBSD-hez es melyek mas operacios
     rendszerekhez.

   A mount_ntfs(8) parancs hasznalataval az NTFS particiok hasonlo
   modon csatlakoztathatoak.

     --------------------------------------------------------------

  2.11.3. Kerdesek es valaszok

   2.11.3.1. A rendszeren teljesen lemerevedik, amikor az inditas
   soran eszko:zo:ket probal megtalalni, vagy furcsan viselkedik a
   telepites soran, esetleg a floppy meghajtot nem is keresi.

   2.11.3.2. A FreeBSD telepitese utan elo"szo:r inditom el a
   merevlemezro"l a rendszert, a rendszermag beto:lto"dik es nekilat
   felkutatni a hardvereszko:zo:ket, azonban megall a ko:vetkezo"
   u:zenettel:

   2.11.3.3. A telepites utan elo"szo:r probalom meg elinditani a
   merevlemezro"l a FreeBSD-t, azonban a rendszervalaszto mindig csak
   F? opciokat kinal fel, es a rendszer inditasa sem halad tovabb.

   2.11.3.4. A rendszer megtalalja a ed(4) halozati kartyamat,
   azonban folyamatosan hibat ad ido"tullepesre hivatkozva.

   2.11.3.5. Amikor a sysinstall programot egy X11 terminalban
   futtatom, a sarga szinu" betu"ket viszonylag nehez olvasni a
   vilagosszu:rke hatterrel. Esetleg lehet valahogy no:velni a
   kontrasztot az alkalmazas hasznalatakor?

   2.11.3.1. A rendszeren teljesen lemerevedik, amikor az inditas
   soran eszko:zo:ket probal megtalalni, vagy furcsan viselkedik a
   telepites soran, esetleg a floppy meghajtot nem is keresi.

   A FreeBSD az i386, amd64 es ia64 platformokon az inditas ko:zben
   az eszko:zo:k felderiteseben ero"sen epitkeznek a rendszeren
   elerheto" ACPI szolgaltatasra. Sajnos meg mindig vannak hibak az
   ACPI meghajtoban, az alaplapokban es a BIOS-okban. A
   rendszerbeto:lto" harmadik fokozataban viszont az
   hint.acpi.0.disabled megadasaval kikapcsolhato az ACPI hasznalata:

 set hint.acpi.0.disabled="1"

   Ez a beallitas a rendszer minden egyes inditasakor to:rlo"dik,
   ezert a hint.acpi.0.disabled="1" bejegyzest fel kell vennu:nk a
   /boot/loader.conf allomanyba. A rendszerbeto:lto" mu"ko:desero"l
   reszletesebben a 12.1 Szakaszban olvashatunk.

   2.11.3.2. A FreeBSD telepitese utan elo"szo:r inditom el a
   merevlemezro"l a rendszert, a rendszermag beto:lto"dik es nekilat
   felkutatni a hardvereszko:zo:ket, azonban megall a ko:vetkezo"
   u:zenettel:

 changing root device to ad1s1a panic: cannot mount root

   Mi lehet a gond? Mit tegyek?

   Mit jelent a bios_drive:interface(unit,partition)kernel_name a
   rendszerinditas soran megjeleno" sugoban?

   Ez egy regota fennallo problema olyan rendszerek eseten, ahol a
   rendszerinditashoz hasznalt lemez nem az elso". A BIOS a
   FreeBSD-to"l eltero" sorszamozast hasznal, es az altala
   alkalmazott megfeleltetesek megfejtese nehezkes.

   Amikor a rendszer inditasara hasznalt lemez nem az elso" lemez a
   rendszeru:nkben, segitenu:nk kell a FreeBSD-nek a megtalalasaban.
   Ket gyakori helyzet alakulhat ki, es mind a ketto"ben el kell
   arulnunk a FreeBSD-nek, hogy hol talalhato a rendszer inditasahoz
   hasznalhato gyo:ker allomanyrendszer. Ezt a lemez BIOS-ban
   nyilvantartott sorszamanak, tipusanak es a neki megfelelo" FreeBSD
   szerinti lemezszam megadasaval tehetju:k meg.

   Az elso" szituacioban ket IDE-lemezu:nk van, mind a ketto"t
   masterkent allitottuk be a hozzajuk tartozo IDE-buszokon, es a
   ko:zu:lu:k a masodikrol akarjuk inditani a FreeBSD-t. A BIOS
   ezeket 0. es 1. lemezkent latja, miko:zben a FreeBSD pedig ad0 es
   ad2 eszko:zkent.

   A FreeBSD 1. BIOS-szamozasu lemezen van, amelynek a tipusa ad es a
   FreeBSD szerinti a 2 sorszamot viseli. Ezert ezt kell hasznalnunk:

 1:ad(2,a)kernel

   Ha az elso"dleges buszon van egy slave meghajtonk, akkor mindez
   nem szu:kseges (es valoszinu"leg rossz is).

   A masodik szituacioban egy SCSI-lemezro"l akarjuk inditani a
   rendszert, miko:zben egy vagy to:bb IDE-lemez is talalhato a
   gepu:nkben. Ebben az esetben a FreeBSD szerinti sorszam kisebb
   lesz, mint a BIOS szerinti. Ha tehat a ket IDE-lemezu:nk mellett
   van meg egy SCSI-lemez is, akkor annak a BIOS szerinti sorszama 2,
   a tipusa da es a FreeBSD szerinti sorszama pedig 0. Ennek
   megfelelo"en a

 2:da(0,a)kernel

   sorral tudjuk elarulni a FreeBSD-nek, hogy a BIOS szerint 2.
   lemezro"l akarjuk inditani, amely a rendszerben talalhato elso"
   SCSI-lemeznek felel meg. Ha csak egy IDE-lemezu:nk van, akkor a
   sort kezdju:k az 1: beirasaval.

   Miutan megtalaltuk a megfelelo" ertekeket, a hozza tartozo sort
   egy szo:vegszerkeszto" segitsegevel tegyu:k ko:zvetlenu:l a
   /boot.config allomanyba. A FreeBSD ezen allomany tartalmat fogja
   alapbol felhasznalni a boot: bekeresenel, hacsak maskeppen nem
   utasitjuk.

   2.11.3.3. A telepites utan elo"szo:r probalom meg elinditani a
   merevlemezro"l a FreeBSD-t, azonban a rendszervalaszto mindig csak
   F? opciokat kinal fel, es a rendszer inditasa sem halad tovabb.

   A FreeBSD telepitese soran rosszul adtunk meg a
   particioszerkeszto"ben a merevlemezhez tartozo geometriat.
   Menju:nk vissza a particioszerkeszto"ho:z es adjuk meg ujra a
   merevlemezu:nk helyes geometriajat. Ennek hasznalatahoz pedig a
   FreeBSD-t is ujra kell telepitenu:nk.

   Ha egyaltalan keptelenek vagyunk megallapitani a merevlemezhez
   tartozo geometriat, akkor probaljuk meg ezt: a lemez elejen
   hozzunk letre egy kis meretu" DOS particiot es rakjuk utana a
   FreeBSD-t. Amikor a telepito"program eszreveszi a DOS particiot,
   megprobalja magatol kiko:vetkeztetni belo"le a helyes geometriat,
   ami altalaban mu"ko:dik is.

   Ez a tanacs ugyan mar nem ervenyes, de alljon itt
   felvilagositaskent:

     Ha teljesen egy FreeBSD alapu szerver vagy munkaallomas
     kialakitasara szanjuk a szamitogepu:nket, es nem to:ro"du:nk a
     DOS-szal, Linuxszal es a to:bbi operacios rendszerrel to:rteno"
     (jo:vo"beli) kompatibilitassal, hasznalhatjuk akar az egesz
     lemezt is (a particioszerkeszto"ben ez az A opcio). Ezzel egy
     olyan nem szabvanyos beallitast engedelyezu:nk, amivel a FreeBSD
     elfoglalja a lemezt annak legelso" szektoratol a legutolso
     szektoraig. Ilyenkor ugyan el tudunk tekinteni a geometriaval
     kapcsolatos beallitasoktol, azonban igy a FreeBSD-n kivu:l
     semmilyen mas operacios rendszert nem tudunk majd futtatni a
     gepen.

   2.11.3.4. A rendszer megtalalja a ed(4) halozati kartyamat,
   azonban folyamatosan hibat ad ido"tullepesre hivatkozva.

   Az emlitett kartya valoszinu"leg a /boot/device.hints allomanyban
   beallitottaktol eltero" IRQ-t hasznal. A ed(4) meghajto
   alapertelmezes szerint nem hasznal "szoftveres" beallitasokat
   (amiket DOS-ban az EZSETUP hasznalataval adunk meg), viszont
   engedelyezhetju:k, ha a kartyanal megadjuk az -l beallitast.

   Hardveresen ezt a kartyan levo" jumperek segitsegevel allithatjuk
   be (ehhez valtoztassuk meg a rendszermag beallitasait is,
   amennyiben szu:kseges), vagy a -l kapcsolon keresztu:l a
   hint.ed.0.irq="-l" megadasaval utasithatjuk a rendszermagot az IRQ
   szoftveres beallitasara.

   Masik leheto"seg, amikor a kartyank a 9-es IRQ-t hasznalja,
   amelyet altalaban megosztanak a 2-es IRQ-val, ami gyakori
   problemak forrasa (ku:lo:no:sen abban az esetben, amikor a VGA
   kartya a 2-es IRQ-t hasznalja!) lehet. Leheto"leg ne hasznaljuk a
   2-es es 9-es IRQ-kat.

   2.11.3.5. Amikor a sysinstall programot egy X11 terminalban
   futtatom, a sarga szinu" betu"ket viszonylag nehez olvasni a
   vilagosszu:rke hatterrel. Esetleg lehet valahogy no:velni a
   kontrasztot az alkalmazas hasznalatakor?

   Ha az X11 telepitese utan a sysinstall altal valasztott szinekkel
   nem olvashato a szo:veg xterm(1) vagy rxvt(1) terminalokban, akkor
   vegyu:k fel a ko:vetkezo" sort a felhasznaloi ko:nyvtarunkban
   levo" .Xdefaults konfiguracios allomanyunkba:
   XTerm*color7:#c0c0c0. Ezzel majd egy so:tetebb szu:rke hatteret
   kapunk.

     --------------------------------------------------------------

2.12. Telepitesi utmutato haladoknak

   Irta: Valentino Vaschetto.

   Ebben a szakaszban megtudhatjuk, hogyan telepitsu:k a FreeBSD-t
   specialis esetekben.

     --------------------------------------------------------------

  2.12.1. A FreeBSD telepitese billentyu"zet vagy monitor nelku:l

   A telepites ezen fajtajat "fej nelku:li telepitesnek" (headless
   install) hivjak, mivel a gep, amire a FreeBSD-t telepiteni
   akarjuk, nem rendelkezik monitorral vagy eppen meg VGA kimenettel
   sem. Felmeru:lhet a kerdes: hogyan lehetseges mindez? A soros
   vonali konzol hasznalataval! A soros konzol segitsegevel
   lenyegeben egy masik szamitogep monitorjat es billentyu"zetet
   hasznaljuk. Ennek megvalositasahoz elso"kent ko:vessu:k a
   rendszerindito lemezek keszitesenek 2.3.7 Szakaszban leirt
   lepeseit.

   Az igy letrehozott lemezeket pedig az alabbi lepesekkel tehetju:k
   kepesse a soros konzolon keresztu:li rendszerinditasra:

    1. A rendszerindito lemezek atallitasa soros konzolra

       Ha a letrehozott lemezekkel most csak egyszeru"en elinditanank
       a FreeBSD-t, akkor a megszokott telepitesi modban indulna el.
       Mi viszont azt akarjuk, hogy a telepiteshez a FreeBSD a soros
       konzolon keresztu:l induljon el. Ehhez tegyu:k be es a
       mount(8) paranccsal csatlakoztassuk FreeBSD rendszeru:nkho:z a
       boot.flp image-et tartalmazo lemezt.

 # mount /dev/fd0 /mnt

       Most, miutan csatlakoztattuk a lemezt, valtsunk az /mnt
       ko:nyvtarra:

 # cd /mnt

       Itt fogjuk beallitani a lemezt a soros konzolon keresztu:li
       indulasra. Letre kell hoznunk egy boot.config nevu" allomanyt,
       amelybe a /boot/loader -h sor fog keru:lni. Ezzel jelezzu:k a
       rendszerbeto:lto"nek, hogy a rendszerinditas soran a soros
       konzolt akarjuk hasznalni.

 # echo "/boot/loader -h" > boot.config

       Miutan a lemezen sikeresen elvegeztu:k a szu:kseges
       beallitast, valasszuk le a umount(8) parancs kiadasaval:

 # cd /
 # umount /mnt

       Most mar kivehetju:k a lemezt a meghajtobol.

    2. A null-modem kabel csatlakoztatasa

       O:ssze kell ko:tnu:nk a ket szamitogepet egy null-modem
       kabellel. Nincs mas teendo"nk, mit o:sszekapcsolni a ket gep
       soros portjait. Itt a szokasos soros kabel nem mu"ko:dik,
       konkretan null-modem kabelre van szu:kseg, mivel benne nehany
       vezeteket mashogy ko:to:ttek be.

    3. A telepites inditasa

       Most mar ideje elkezdeni a telepitest. Tegyu:k a boot.flp
       image-et tartalmazo lemezt a fej nelku:l telepitendo" gep
       meghajtojaba es kapcsoljuk be.

    4. Kapcsolodas a fej nelku:li gepre

       Ezutan a cu(1) parancs felhasznalasaval kapcsolodjunk ra a
       gepre:

 # cu -l /dev/cuad0

   Ezzel keszen is vagyunk! Innento"l a cu altal megnyitott
   kapcsolaton keresztu:l tudjuk vezerelni a fej nelku:li
   szamitogepet. Hamarosan megker minket a kern1.flp image-et
   tartalmazo lemez behelyezesere, majd megkerdezi a hasznalt
   terminal tipusat. Itt valasszuk ki a szines FreeBSD konzolt
   (FreeBSD color console) es folytassuk a telepitest a megszokott
   modon.

     --------------------------------------------------------------

2.13. Sajat telepito"eszko:z elkeszitese

     Megjegyzes: Az ismetlesek elkeru:lese vegett a tovabbiakban a
     "FreeBSD lemez" a megvasarolhato vagy a magunk altal keszitett
     FreeBSD CD-re vagy DVD-re vonatkozik.

   Adodhatnak olyan esetek, amikor letre kell hoznunk a FreeBSD
   telepitesere hasznalt sajat eszko:zu:nket es/vagy forrasunkat. Ez
   lehet egy tetszo"leges fizikai eszko:z, peldaul szalag, vagy
   barmilyen olyan forras, ahonnan a sysinstall kepes allomanyokat
   elerni, peldaul egy FTP oldal vagy egy MS-DOS particio.

   Peldaul:

     * Egy FreeBSD lemezu:nk van es to:bb halozaton kapcsolodo
       szamitogepu:nk. Kesziteni akarunk egy helyi FTP oldalt a
       FreeBSD lemez felhasznalasaval, es igy a halozaton levo" gepre
       az internet helyett innen telepitju:k a rendszert.

     * Van egy FreeBSD lemezu:nk, azonban a FreeBSD-nek nem sikeru:lt
       felismernie a CD/DVD-meghajtonkat, viszont az
       MS-DOS/Windows-nak igen. Felmasoljuk a FreeBSD telepitesehez
       hasznalt allomanyokat ugyanazon a szamitogepen talalhato egyik
       DOS particiora, majd a FreeBSD-t ezekkel telepitju:k.

     * A gepben, amelyre telepiteni akarunk, nincs CD/DVD-meghajto
       vagy halozati kartya, viszont "Laplink stilusu" soros vagy
       parhuzamos kabellel hozza tudunk kapcsolodni egy olyan
       szamitogepro"l, amelyben viszont van.

     * Kesziteni akarunk a FreeBSD telepitesere hasznalhato szalagot.

     --------------------------------------------------------------

  2.13.1. Telepito" CD keszitese

   A FreeBSD Projekt minden kiadas reszekent architekturankent
   elerheto"ve tesz legalabb ket CD image-et ("ISO image-et"). Ha
   rendelkezu:nk CD-iroval, ezeket az image-eket fel-, illetve ki
   tudjuk irni ("egetni") CD-re, es a FreeBSD telepitesere tudjuk
   hasznalni. Tehat ha van a kezu:nk u:gyeben CD-iro es olcson jutunk
   nagyobb sebessegu" internetelereshez, akkor a FreeBSD
   telepitesenek ez a legko:nnyebb modja.

    1. A megfelelo" ISO image-ek leto:ltese

       Ez egyes kiadasok ISO image-ei leto:ltheto"ek a
       ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-architektura/valtozat
       cimro"l vagy annak legko:zelebbi tu:kro:zesero"l. Az
       architektura es valtozat reszeket igenyeinknek megfelelo"en
       helyettesitsu:k.

       Az emlitett ko:nyvtar altalaban a ko:vetkezo" lemezek
       image-eit tartalmazza:

       Tablazat 2-4. FreeBSD 6.X es 7.X ISO image-ek nevei es
       jelentesei

                      Allomanynev                      Tartalma       
                                                  Minden, ami ahhoz   
                                                  kell, hogy el       
                                                  tudjuk inditani a   
                                                  FreeBSD             
                                                  rendszermagot es    
                                                  megkapjuk a         
       valtozat-RELEASE-architektura-bootonly.iso telepiteshez        
                                                  szu:kseges          
                                                  alapokat. A         
                                                  telepitendo"        
                                                  allomanyokat ezutan 
                                                  FTP-ro"l vagy mas   
                                                  ismert forrasbol    
                                                  erju:k el.          
                                                  Minden, ami a       
                                                  FreeBSD             
                                                  telepitesehez       
                                                  kellhet, valamint   
                                                  egy "elo"           
       valtozat-RELEASE-architektura-disc1.iso    allomanyrendszer"   
                                                  (Live Filesystem),  
                                                  amelyet a           
                                                  sysinstall "Repair" 
                                                  (Helyreallitas)     
                                                  funkciojahoz tudunk 
                                                  hasznalni.          
                                                  Annyi csomag, ami a 
       valtozat-RELEASE-architektura-disc2.iso    lemezre csak        
                                                  felfer.             
       valtozat-RELEASE-architektura-docs.iso     A FreeBSD           
                                                  dokumentacioja.     

       Le kell to:ltenu:nk az elso" lemez vagy (ha elerheto") a
       bootonly lemez ISO image-einek egyiket.

       Akkor hasznaljuk a bootonly jelzesu" image-et, ha szelessavu
       interneteleressel rendelkezu:nk. Segitsegevel el tudjuk
       kezdeni a FreeBSD telepiteset, es szu:kseg szerint a
       port/csomagrendszer (lasd 4 fejezet) hasznalataval csomagokat
       tudunk leto:lteni es telepiteni.

       Az elso" lemez image-et akkor erdemes hasznalni, ha a FreeBSD
       adott kiadasanak telepitese mellett igenyt tartunk valamennyi
       csomagra is.

       A tovabbi lemezek image-ei is hasznosak lehetnek, de nem
       feltetlenu:l kellenek a telepiteshez, fo"leg abban az esetben,
       amikor gyors interneteleressel rendelkezu:nk.

    2. A CD-k irasa

       Ezutan lemezekre kell irnunk a leto:lto:tt image-eket.
       Amennyiben ezt egy masik FreeBSD rendszeren vegezzu:k, ennek
       reszleteiro"l a 18.6 Szakasz szamol be (ku:lo:no:sen a 18.6.3
       Szakasz es a 18.6.4 Szakasz leirasa).

       Ha masik platformon vegezzu:k ezt a mu"veletet, akkor az adott
       platformon felkinalt CD-iro szoftverekkel kell dolgoznunk. Az
       image-ek szabvanyos ISO formatumuak, amelyet szinte az o:sszes
       CD-iro alkalmazas ismer.

     Megjegyzes: Ha kivancsiak vagyunk egy sajat FreeBSD kiadas
     elkeszitesere, olvassuk el a kiadasok szervezesero"l szolo
     cikket (angolul).

     --------------------------------------------------------------

  2.13.2. Helyi FTP oldal letrehozasa FreeBSD lemezzel

   A FreeBSD lemezeken az FTP oldalakehoz hasonlo elrendezest
   talalunk. Ez megko:nnyiti a halozatunkban talalhato
   szamitogepekhez a FreeBSD telepitesere hasznalhato helyi FTP oldal
   letrehozasat.

    1. Az FTP oldalnak otthont ado FreeBSD szamitogepen tegyu:k a
       CD-t a meghajtoba, majd csatlakoztassuk a /cdrom ko:nyvtarba.

 # mount /cdrom

    2. Hozzunk letre egy anonim FTP hozzaferest az /etc/passwd
       allomanyban. A vipw(8) segitsegevel tehat illesszu:k be a
       ko:vetkezo" sort az /etc/passwd allomanyba:

 ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent

    3. Gondoskodjuk rola, hogy az FTP szolgaltatas engedelyezve
       legyen az /etc/inetd.conf allomanyban.

   Most mar barki, aki kepes csatlakozni ehhez a szamitogephez, a
   telepites tipusanak ki tudja valasztani az FTP-t. Az FTP oldalak
   menu:jeben valassza az "Other" (Egyeb) pontot, majd adja meg az
   ftp://gepnev cimet.

     Megjegyzes: Ha az FTP-n csatlakozo kliensek rendszerinditashoz
     hasznalt eszko:ze (altalaban a floppy) verzioja nem egyezik meg
     to:keletesen a helyi FTP oldalon talalhatoval, akkor a
     sysinstall nem engedi a telepitest. Ha a valtozatok nem
     hasonloak es ezt felu:l akarjuk biralni, akkor be kell lepnu:nk
     az Options (Beallitasok) menu:be, ahol at kell allitanunk a
     terjesztes nevet (distribution name) any (barmelyik)-re.

     Figyelem: A fenti megko:zelites kizarolag csak egy tu"zfallal
     vedett helyi halozaton javasolt. FTP szolgaltatas letrehozasa az
     interneten (es nem a helyi halozatunkban) levo" szamitogepek
     szamara ku:lo:nbo:zo" tamadasoknak es egyeb kellemetlensegeknek
     teszi ki a szamitogepu:nket. Hatarozottan javasoljuk, hogy ebben
     az esetben ku:lo:no:sen u:gyelju:nk a biztonsagra.

     --------------------------------------------------------------

  2.13.3. Telepito"floppyk letrehozasa

   Ha floppylemezro"l kellene telepitenu:nk (amit viszont semmikeppen
   sem ajanlanank) egy nem tamogatott hardvereszko:z miatt, vagy mert
   egyszeru"en szeretju:k a dolgok nehezebbik oldalat megfogni, akkor
   ehhez elo"szo:r elo" kell keszitenu:nk par lemezt.

   Legalabb annyi 1,44 MB-os lemezre van szu:ksegu:nk, mint amennyire
   rafernek a base (alapterjesztes) ko:nyvtarban talalhato
   allomanyok. Ha DOS-ban hozzuk letre ezeket a lemezeket, akkor a
   hasznalatukhoz meg kell formazni ezeket az MS-DOS FORMAT
   parancsaval. Windows hasznalata eseten az Windows Explorerben
   (Intezo"ben) tudjuk megformazni a lemezeket (kattintsunk a jobb
   gombbal az A: meghajtora, majd valasszuk a "Format" (Formazas)
   menu:pontot).

   Ne bizzunk a gyarilag formazott ("pre-formatted" jelzesu")
   lemezekben! Menju:nk biztosra es formazzuk meg mi magunk is
   lemezeket. A felhasznaloinktol regebben szamtalan olyan panasz
   erkezett, amely a helytelenu:l megformazott lemezbo"l fakadt,
   ezert erre most kiemelten felhivjuk a figyelmet.

   A formazas abban az esetben sem bizonyul rossz o:tletnek, ha egy
   masik FreeBSD gepen gyartjuk le a lemezeket, habar nem kell
   mindegyik lemezre DOS allomanyrendszert tennu:nk. Helyette a
   bsdlabel es newfs parancsok hasznalataval UFS allomanyrendszert is
   tehetu:nk rajuk, ahogy (1,44 MB meretu" lemezek eseten) ezt az
   alabbi parancsok mutatjak:

 # fdformat -f 1440 fd0.1440
 # bsdlabel -w fd0.1440 floppy3
 # newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0

   Ezutan a to:bbi allomanyrendszerhez hasonloan a lemezeket tudjuk
   csatlakoztati es irni.

   Miutan megformaztuk a lemezeket, rajuk kell masolnunk az
   allomanyokat. A terjesztesekhez tartozo allomanyokat adott meretu"
   darabokra szeleteltu:k, igy kenyelmesen rafernek egy hagyomanyos
   1,44 MB meretu" floppyra. Menju:nk vegig az o:sszes floppyn es
   mindegyikre pakoljuk fel a leheto" legto:bb allomanyt egeszen
   addig, amig igy az o:sszes szu:kseges terjesztest o:ssze nem
   szedtu:k. A floppykon minden terjesztes keru:ljo:n egy
   hozzatartozo alko:nyvtarba, peldaul: a:\base\base.aa,
   a:\base\base.ab es igy tovabb.

     Fontos: Az elso" lemezre ra kell masolnunk a base.inf nevu"
     allomanyt is, mivel ennek beolvasasaval lesz kepes kitalalni a
     telepito", hogy a terjesztesek o:sszeszedese es o:sszefu"zese
     soran mennyi darabot keressen.

   Ahogy elerkezu:nk a telepito"eszko:z kivalasztasahoz a telepites
   folyamataban, ott valasszuk a Floppy menu:pontot, majd utana
   ko:vessu:k a felbukkano u:zeneteket.

     --------------------------------------------------------------

  2.13.4. Telepites MS-DOS particiorol

   Amikor egy MS-DOS particiorol akarunk telepiteni, elo"keszites
   gyanant masoljuk a terjesztesekhez tartozo allomanyokat a
   particiora egy freebsd ko:nyvtarba. Ez lesz peldaul a c:\freebsd.
   Ebben a ko:nyvtarban igyekezzu:k minel jobban megtartani a CD vagy
   az FTP oldal ko:nyvtarszerkezetet, ezert erre a CD-ro"l to:rteno"
   atmasolasra a DOS xcopy parancsat javasoljuk. Peldaul igy tudjuk
   elo"kesziteni a FreeBSD legegyszeru"bb valtozatanak telepiteset:

 C:\> md c:\freebsd
 C:\> xcopy e:\bin c:\freebsd\bin\ /s
 C:\> xcopy e:\manpages c:\freebsd\manpages\ /s

   A fentiekben felteteleztu:k, hogy ehhez a C: meghajton eleg szabad
   helyu:nk van, valamint az E: meghajton erju:k el a CD-t.

   Ha nincs CD-meghajtonk, az ftp.FreeBSD.org cimro"l leto:lthetju:k
   a terjesztesket. Minden egyes terjesztes ku:lo:n ko:nyvtarban
   talalhato, tehat peldaul a base (alap) terjesztes az 7.2/base/
   ko:nyvtarban talalhato.

   Mindegyik telepitendo" terjesztest (ami meg elfer) masoljuk at az
   MS-DOS particio c:\freebsd ko:nyvtaraba -- a telepiteshez
   egyebkent egyedu:l a BIN terjesztes szu:kseges.

     --------------------------------------------------------------

  2.13.5. Telepito"szalag letrehozasa

   Valoszinu"leg a szalagos modszer a legegyszeru"bb, egyfajta elo"
   FTP-s vagy CD-s telepites. A telepito"program arra szamit, hogy a
   szalagon az allomanyok egymas utan helyezkednek el. Tehat miutan
   beszereztu:k a neku:nk kello" terjesztesekhez tartozo o:sszes
   allomanyt, egyszeru"en vegyu:k fel ezeket a szalagra:

 # cd /freebsd/distdir
 # tar cvf /dev/rwt0 dist1 ... dist2

   Mielo"tt telepitenenk, elleno"rizzu:k, hogy legyen eleg helyu:nk
   valamelyik (a telepites soran majd kivalaszthato atmeneti)
   ko:nyvtarban ahhoz, hogy az itt letrehozott szalag teljes tartalma
   elferjen benne. Mivel a szalagok csak szekvencialisan erheto"ek
   el, ezert ennel a modszernel jo sok ideiglenes tarhelyre lesz
   szu:ksegu:nk.

     Megjegyzes: A telepites megkezdese utan a szalagnak mar azelo"tt
     a meghajtoban kell lennie, hogy rendszerindito floppyrol
     elinditanank a rendszert, masku:lo:nben nem talalja meg.

     --------------------------------------------------------------

  2.13.6. Mielo"tt halozatrol telepitenenk

   Haromfele halozati telepitesi mod letezik: Ethernet (szabvanyos
   Ethernet-vezerlo"vel), soros port (SLIP vagy PPP) vagy parhuzamos
   port (PLIP (laplink kabel)).

   Valoszinu"leg az Ethernet-csatlakozo valasztasaval erju:k el a
   leggyorsabb halozati telepitest. A FreeBSD ismeri a legto:bb PC-s
   Ethernet kartyat. Az ismert kartyak (es a hozzajuk tartozo
   beallitasok) a FreeBSD egyes kiadasanak hardverjegyzekeben
   (Hardware Notes) talalhatoak meg. Amennyiben egy tamogatott PCMCIA
   Ethernet kartyat hasznalunk, mindig a laptop bekapcsolasa elo"tt
   helyezzu:k be! A FreeBSD telepites ko:zben sajnos nem tamogatja a
   PCMCIA kartyak menetko:zbeni behelyezeset.

   Ezenkivu:l meg ismernu:nk kell a halozaton kapott IP-cimu:nket, az
   altala hasznalt cimosztaly halozati maszkjat, a gepu:nk nevet. Ha
   PPP kapcsolaton keresztu:l telepitu:nk es nincs statikus
   IP-cimu:nk, akkor minden bizonnyal az internet-szolgaltatonktol
   kaptunk egyet dinamikusan. A konkret halozati beallitasokat a
   halozatunk rendszergazdajatol is erdemes megkerdezni. Ha a
   halozaton levo" to:bbi gepre nevvel es nem IP-cimmel hivatkozunk,
   akkor szu:ksegu:nk lesz meg egy nev(feloldo) szerverre es az
   internet eleresehez egy atjaro cimere is (ha PPP-t hasznalunk, ez
   a szolgaltatonk IP-cime lesz). Ha FTP-ro"l HTTP proxy
   hasznalataval telepitu:nk, akkor a proxy cime is kelleni fog. Ha
   magunktol nem vagyunk kepesek ezekre a kerdesekre valaszolni,
   akkor az ilyen tipusu telepites megkezdese elo"tt tenyleg
   segitseget kell kernu:nk egy rendszergazdatol vagy az
   internet-szolgaltatonktol.

   A SLIP tamogatas inkabb primitiv, es elso"sorban csak ko:to:tt
   kapcsolatokra korlatozodik, mint peldaul egy laptop es egy masik
   szamitogep ko:zti soros o:sszeko:tettetes. A kapcsolatnak annyiban
   kell ko:to:ttnek lennie, hogy a SLIP-en keresztu:li telepites
   pillanatnyilag nem ismer a betarcsazast. Ezt a PPP segitsegevel
   tudjuk megvalositani, ezert ha tehetju:k, mindig ezt valasszuk a
   SLIP helyett.

   Ha modemet hasznalunk, akkor a PPP szinte biztosan megfelel
   neku:nk. Gondoskodjunk rola, hogy mar a telepites korai
   szakaszaban rendelkezesu:nkre all az internet-szolgaltatonkkal
   kapcsolatosan minden hasznos informacio.

   Ha PAP vagy CHAP hasznalataval kapcsolodunk a szolgaltatonkhoz
   (maskepp szolva Windows-ban igy tudunk szkriptek nelku:l
   csatlakozni), mindo:ssze a dial parancsot kell kiadnunk a ppp
   parancssoraban. Minden mas esetben tudnunk kell a modemu:nk sajat
   "AT parancsaival" tarcsazni az internet-szolgaltatonkat, hiszen
   ehhez a PPP tarcsazo csak egy nagyon kezdetleges terminalemulaciot
   nyujt. Ezzel kapcsolatban olvassuk el a keziko:nyv es a GYIK
   idevago reszeit. Ha gondjaink akadnanak, a naplozas a set log
   local ... parancs kiadasaval atiranyithato ko:zvetlenu:l a
   kepernyo"re.

   Ha ko:to:tt modon tudunk csatlakozni egy masik (2.0-R vagy
   keso"bbi verzioju) FreeBSD gephez, akkor megprobalkozhatunk a
   parhuzamos "laplink" kabellel. A parhuzamos porton keresztu:li
   adatatvitel sebessege a soros vonalenal joval nagyobb (egeszen
   50 kbyte/mp), ezert vele a telepites is gyorsabb.

     --------------------------------------------------------------

    2.13.6.1. Mielo"tt NFS-ro"l telepitenenk

   A telepites NFS-en keresztu:l szinte magatol erteto"dik.
   Egyszeru"en csak masoljuk a FreeBSD terjeszteseihez tartozo
   allomanyokat az NFS szerverre es allitsuk be ra az NFS
   telepito"eszko:zt.

   Ha a szerver csak "privilegizalt portokat" ismer (ami altalaban
   alapertelmezett a Sun munkaallomasoknal), a telepites megkezdese
   elo"tt az Options (Beallitasok) menu:ben be kell allitani az NFS
   Secure (Biztonsagos NFS) opciot.

   Ha egy gyenge mino"segu" es kis adatatviteli sebessegu" Ethernet
   kartyank van, akkor emellett meg hasznos lehet beallitani az NFS
   Slow (Lassu NFS) opciot is.

   Az NFS-en keresztu:li telepites mu"ko:desehez a szervernek
   tamogatnia kell az alko:nyvtarak csatlakoztatasat is, tehat
   peldaul ha a FreeBSD 7.2 terjesztesu:nk a
   ziggy:/usr/archive/stuff/FreeBSD ko:nyvtarban talalhato, akkor
   ziggy nevu" gepnek leheto"ve kell tennie a
   /usr/archive/stuff/FreeBSD ko:nyvtar ko:zvetlen csatlakoztatasat
   is, nem csak a /usr vagy /usr/archive/stuff ko:nyvtaraket.

   A FreeBSD /etc/exports allomanyaban ezt az -alldirs beallitassal
   vezerelhetju:k. Mas NFS szervereken esetleg mas megszokasokat kell
   ko:vetnu:nk. Amennyiben a szerverto"l "permission denied"
   (hozzaferes megtagadva) u:zeneteket kapjuk, valoszinu", hogy ezt
   nem allitottuk be megfelelo"en.

     --------------------------------------------------------------

                       Fejezet 3. A UNIX alapjai

   Atdolgozta: Chris Shumway.

3.1. Attekintes

   Ez a fejezet a FreeBSD operacios rendszer alapveto" funkcioit es
   parancsait mutatja be. Az itt targyalasra keru:lo" anyag nagy
   resze ervenyes barmelyik mas UNIX-szeru" operacios rendszer eseten
   is. Ezert, ha mar ismerju:k az emlitesre keru:lo" ismereteket,
   minden tovabbi gond nelku:l atugorhatjuk ezt a fejezetet. Azonban
   ha meg teljesen ismeretlen szamunkra a FreeBSD, minden bizonnyal
   ez lesz az, amit alaposan at kell majd olvasnunk.

   A fejezet elolvasasa soran megismerju:k:

     * az un. "virtualis konzolok" hasznalatat FreeBSD alatt;

     * hogyan mu"ko:dnek egyu:tt a UNIX allomanyokra vonatkozo
       engedelyei a FreeBSD sajat kiegesziteseivel;

     * egy FreeBSD allomanyrendszer alapertelmezett kialakitasat;

     * a FreeBSD lemezszervezeset;

     * hogyan csatlakoztassunk es valasszunk le allomanyrendszereket;

     * mik azok a folyamatok, demonok es jelzesek;

     * mik azok a parancsertelmezo"k, es mikent tudjuk megvaltoztatni
       az alapertelmezett bejelentkezesi ko:rnyezetu:nket;

     * hogyan hasznaljuk az alapveto" szo:vegszerkeszto"ket;

     * mik az eszko:zo:k es az eszko:zleirok;

     * FreeBSD alatt milyen binaris formatumokat hasznalhatunk;

     * szu:kseg eseten hogyan olvassuk el a megfelelo" man oldalakat.

     --------------------------------------------------------------

3.2. Virtualis konzolok es terminalok

   A FreeBSD szamos modon hasznalhato. Ezek ko:zu:l az egyik az, ha
   parancsokat gepelu:nk be a szo:veges terminalon. Igy erheto" el
   egyszeru"en a UNIX operacios rendszer rugalmassaganak es erejenek
   jelento"s resze. Ebben a szakaszban megtudhatjuk, mik azok a
   "terminalok" es "konzolok" es mikent tudjuk ezeket FreeBSD alatt
   hasznalni.

     --------------------------------------------------------------

  3.2.1. A konzol

   Ha nem allitottuk volna be, hogy a FreeBSD indulasa soran
   automatikusan induljon el a grafikus felu:let is, akkor a rendszer
   egy bejelentkezo" kepernyo"t fog mutatni ko:zvetlenu:l a
   rendszerinditas befejezo"dese utan. Ekkor valami ilyesmit kell
   majd latnunk:

 Additional ABI support:.
 Local package initialization:.
 Additional TCP options:.

 Fri Sep 20 13:01:06 EEST 2002

 FreeBSD/i386 (pc3.example.org) (ttyv0)

 login:

   Egyes rendszereken ugyan nemileg elterhetnek az u:zenetek, de
   hasonlot kell latnunk. Minket most az utolso ket sor erdekel. Az
   utolso elo"tti sorban ez olvashato:

 FreeBSD/i386 (pc3.example.org) (ttyv0)

   Ez a sor arrol ertesit minket, hogy a rendszeru:nk eppen most
   indult el: egy "FreeBSD" konzolt latunk, amely egy Intel x86
   architekturaju processzoron fut [1]. A gepu:nk neve (mivel minden
   UNIX-os gep rendelkezik egy nevvel) pc3.example.org, es ennek a
   rendszerkonzoljat latjuk most eppen -- a ttyv0 terminalt.

   Vegezetu:l az utolso sor mindig:

 login:

   Ez az a resz, ahova a FreeBSD-be to:rteno" bejelentkezeshez meg
   kell adnunk a "felhasznaloi nevu:nket" (user name). A ko:vetkezo"
   szakaszban erro"l olvashatunk.

     --------------------------------------------------------------

  3.2.2. Bejelentkezes a FreeBSD-be

   A FreeBSD egy to:bbfelhasznalos, to:bbfeladatos rendszer. Igy
   hivjak hivatalosan azokat a rendszereket, amelyeket to:bben tudnak
   hasznalni es egyetlen szamitogepen egyszerre rengeteg programot
   kepesek futtatni.

   Minden to:bbfelhasznalos rendszernek valamilyen modon meg kell
   tudnia ku:lo:nbo:ztetnie egy "felhasznalojat" a to:bbito"l. A
   FreeBSD-ben (es minden mas UNIX-szeru" operacios rendszerben) ezt
   ugy erik el, hogy a programok futtatasa elo"tt minden
   felhasznalonak "be kell jelentkeznie" a rendszerbe. Minden
   felhasznalo rendelkezik egy egyedi nevvel (ez a "felhasznaloi
   nev") es ehhez egy titkos kulcssal (ez a "jelszo"). A FreeBSD a
   programok futtatasahoz ezt a ketto"t fogja elkerni a
   felhasznalotol.

   Egybo"l miutan a FreeBSD elindult es befejezte a
   rendszerinditashoz hasznalt szkriptjeinek lefuttatasat [2], ez a
   kijelzes (vagy mas neven "prompt") fog megjelenni es ker egy
   ervenyes felhasznaloi nevet:

 login:

   A pelda kedveert most tegyu:k fel, hogy a felhasznaloi nevu:nk
   pgj. Az imenti prompthoz irjuk be, hogy pgj es nyomjuk le az Enter
   billentyu"t. Ezt ko:veto"en meg kell jelennie egy masik promptnak
   is, amely egy "jelszot" (password) ker:

 login: pgj
 Password:

   Most pedig gepelju:k be pgj jelszavat es nyomjunk utan egy Enter
   billentyu"t. Vigyazzunk, hogy a jelszot nem latjuk a beiras soran!
   Emiatt most ne aggodjunk. Ezzel kapcsolatban elegendo" csak annyit
   tudni, hogy mindez biztonsagi megfontolasokbol to:rtenik.

   Amennyiben jol adtuk meg a jelszavunkat, sikeresen bejelentkezu:nk
   a FreeBSD rendszerebe es keszen allunk az o:sszes elerheto"
   parancs kiprobalasara.

   Bejelentkezes utan a MOTD (message of the day) vagy mas neven "a
   nap u:zenete" jelenik meg, amelyet a parancssor ko:vet (egy #, $
   vagy % jel). Innen tudhatjuk meg, hogy sikeru:lt bejelentkeznu:nk.

     --------------------------------------------------------------

  3.2.3. To:bb konzol hasznalata

   A UNIX parancsokat egy konzolon is szepen ki tudjuk adni, de a
   FreeBSD egyszerre ugyebar to:bb programot is tud futtatni. A
   parancsok megadasahoz viszont egyetlen konzol hasznalata eleg nagy
   pazarlas lenne, hiszen egy olyan operacios rendszer mint a
   FreeBSD, tucatnyi programot kepes futtatni egy ido"ben. Ebben az
   esetben jelenthetnek szamunkra segitseget a "virtualis konzolok".

   A FreeBSD beallithato ugy, hogy sok-sok ku:lo:nfele virtualis
   konzolt ajanljon fel szamunkra. A virtualis konzolok ko:zo:tt a
   billentyu"zeten a megfelelo" gombok lenyomasaval tudunk valtani.
   Mindegyik konzolnak megvan a sajat kimeneti csatornaja, es a
   virtualis konzolok ko:zti valtas folyaman a FreeBSD gondoskodik a
   billentyu"zetro"l erkezo" bemenet valamint a monitorra iranyitott
   kimenet megfelelo" kezelesero"l.

   A konzolok ko:zti valtasra a FreeBSD ku:lo:n
   billentyu"kombinaciokat tart fenn [3]. A FreeBSD-ben a
   ku:lo:nbo:zo" virtualis konzolok ko:zti valtasra az Alt-F1, Alt-F2
   billentyu"ket, a Alt-F8 billentyu"kombinacioval bezarolag
   hasznalhatjuk.

   A konzolok ko:zti valtogatas soran a FreeBSD u:gyel a kepernyo"
   tartalmanak elmentesere es visszaallitasara. Ennek eredmenyekeppen
   "ugy latszik", mintha to:bb "virtualis" kepernyo"n es
   billentyu"zeten adnank parancsokat a FreeBSD-nek.

     --------------------------------------------------------------

  3.2.4. Az /etc/ttys allomany

   A FreeBSD alapertelmezes szerint nyolc virtualis konzollal indul.
   Ez azonban nem egy elo"re ro:gzitett ertek, hiszen ko:nnyeden
   testreszabhatjuk ugy a telepitett rendszeru:nket, hogy to:bb vagy
   esetleg kevesebb virtualis konzollal induljon el. A virtualis
   konzolok szama es azok pontos beallitasa az /etc/ttys allomanyon
   keresztu:l adhato meg.

   A FreeBSD virtualis konzoljait tehat az /etc/ttys allomany
   megfelelo" modositasaval tudjuk behangolni. Itt minden egyes olyan
   sor, amely nem megjegyzes (vagyis azok a sorok, amelyek nem a #
   karakterrel kezdo"dnek), tartalmazza az egyes terminalok vagy
   virtualis konzolok beallitasait. Az allomany a FreeBSD
   telepiteseben szereplo", alapertelmezett valtozata kilenc
   virtualis konzol konfiguraciojat tartalmazza, amelyek ko:zu:l
   nyolc aktiv. Ezek a ttyv resszel kezdo"do" sorok:

 # name  getty                           type    status          comments
 #
 ttyv0   "/usr/libexec/getty Pc"         cons25  on  secure
 # Virtual terminals
 ttyv1   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv2   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv3   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv4   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv5   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv6   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv7   "/usr/libexec/getty Pc"         cons25  on  secure
 ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

   Az allomanyban talalhato oszlopok kimerito" magyarazatat illetve a
   virtualis konzolok beallitasahoz hasznalhato kapcsolokat a ttys(5)
   man oldalon olvashatjuk.

     --------------------------------------------------------------

  3.2.5. Az egyfelhasznalos mod konzolja

   Az "egyfelhasznalos mod" reszletes leirasa a 12.6.2 Szakaszban
   talalhato. Fontos tudni, hogy amikor a FreeBSD-t egyfelhasznalos
   modban futtatjuk, csupan egyetlen konzolunk van, es a virtualis
   konzolok nem erheto"ek el. Egyebkent az egyfelhasznalos mod erre
   vonatkozo beallitasai is megtalalhatoak az /etc/ttys allomanyban.
   Ehhez keressu:k meg a console kezdetu" sort:

 # name  getty                           type    status          comments
 #
 # Ha a konzolt "insecure" (nem biztonsagos) tipusunak valasztjuk meg,
 # akkor a hasznalatahoz az egyfelhasznalos mod aktivilasa elo"tt a rendszer
 # kerni fogja a rendszeradminisztratori jelszot.
 onsole none                            unknown off secure

     Megjegyzes: A console felett lathato megjegyzes jelzi, hogy at
     tudjuk irni ebben a sorban a secure (biztonsagos) erteku"
     parametert insecure (nem biztonsagos) erteku"re. Ilyenkor, hogy
     ha a FreeBSD egyfelhasznalos modban indul, kerni fogja a root
     felhasznalo (a rendszeradminisztrator) jelszavat.

     Vigyazzunk, amikor ezt az erteket insecure-ra allitjuk! Ha
     ugyanis veletlenu:l elfeledkeznenk a root jelszavarol, akkor
     azzal az egyfelhasznalos mod hasznalata is veszelybe keru:lhet.
     Habar etto"l fu:ggetlenu:l is lehetseges, azokra szamara megis
     nehez helyzetnek bizonyulhat, akik nem mozognak eleg otthonosan
     a FreeBSD rendszerinditasi folyamatanak es a hozzakapcsolodo
     programok ismereteben.

     --------------------------------------------------------------

  3.2.6. A videomod valtasa konzolban

   A FreeBSD konzol alapertelmezett videomodja atallithato
   1024x768-ra, 1280x1024-re, vagy barmilyen olyan mas meretre, amit
   a videokartyank es monitorunk kepes megjeleniteni. Az eltero"
   videomodok hasznalatahoz elo"szo:r ujra kell forditanunk a
   rendszermagunkat az alabbi ket beallitas hozzaadasaval:

 options VESA
 options SC_PIXEL_MODE

   Miutan a rendszermagot sikeresen ujraforditottuk a fenti
   beallitasokkal, a vidcontrol(1) segedprogrammal tudjuk
   megallapitani, hogy a hardveru:nk milyen videomodokat enged
   hasznalni. Az o:sszes tamogatott videomodot a ko:vetkezo"keppen
   tudjuk lekerdezni:

 # vidcontrol -i mode

   A parancs eredmenyekeppen tehat megkapjuk a hardveru:nk altal
   ismert videomodokat. Ezek ko:zu:l tudjuk kivalasztani
   valamelyiko"ju:ket es root felhasznalokent a vidcontrol(1)
   segitsegevel beallitani:

 # vidcontrol MODE_279

   Ha az uj videomod megfelel szamunkra, akkor ezt a beallitast az
   /etc/rc.conf allomanyon keresztu:l veglegesithetju:k is:

 allscreens_flags="MODE_279"

     --------------------------------------------------------------

3.3. Engedelyek

   A FreeBSD, mivel a BSD UNIX egyik ko:zvetlen leszarmazottja,
   szamos UNIX-os alapo:tletre epu:l. Ezek ko:zu:l az elso" es talan
   a leginkabb kihangsulyozott, hogy a FreeBSD egy to:bbfelhasznalos
   operacios rendszer. Egy olyan rendszer, amely egyszerre to:bb,
   egymastol fu:ggetlen feladattal foglalkozo felhasznalot kepes
   kiszolgalni. A rendszer felelo"s a hardveres eszko:zo:k, a
   ku:lo:nfele periferiak, a memoria es a processzor idejenek minden
   egyes felhasznalo szamara szabalyos es partatlan megosztasaert es
   a feleju:k iranyulo keresek szervezeseert.

   Mivel a rendszer to:bb felhasznalot is kepes tamogatni, az altala
   kezelt ero"forrasok rendelkeznek engedelyek egy adott halmazaval,
   amelyek eldo:ntik ki tudja ezeket olvasni, irni es vegrehajtani.
   Az engedelyek haromszor harom bit formajaban jelennek meg, amelyek
   ko:zu:l az elso" bitcsoport az allomany tulajdonosara, a masodik
   az allomany csoportjara, vegu:l az utolso pedig a mindenki masra
   vonatkozo engedelyeket tarolja.

   Ertek                  Engedely                  Ko:nyvtarlistaban 
   0     Nem olvashato, nem irhato, nem hajthato    ---               
         vegre                                      
   1     Nem olvashato, nem irhato, vegrehajthato   --x               
   2     Nem olvashato, irhato, nem hajthato vegre  -w-               
   3     Nem olvashato, irhato, vegrehajthato       -wx               
   4     Olvashato, nem irhato, nem hajthato vegre  r--               
   5     Olvashato, nem irhato, vegrehajthato       r-x               
   6     Olvashato, irhato, nem hajthato vegre      rw-               
   7     Olvashato, irhato, vegrehajthato           rwx               

   A ls(1) -l kapcsolojanak segitsegevel megnezhetju:k a ko:nyvtarak
   tartalmanak reszletes listajat, amiben megjelennek az allomanyok
   tulajdonosaira, csoportjara es a mindenki masra vonatkozo
   engedelyek is. Peldaul ezt lathatjuk, ha kiadjuk az ls -l
   parancsot egy tetszo"leges ko:nyvtarban:

 % ls -l
 total 530
 -rw-r--r--  1 root  wheel     512 Sep  5 12:31 egyik
 -rw-r--r--  1 root  wheel     512 Sep  5 12:31 masik
 -rw-r--r--  1 root  wheel    7680 Sep  5 12:31 e-mail.txt
 ...

   A peldabeli ls -l parancs kimenetenek elso" oszlopa igy bomlik
   fel:

 -rw-r--r--

   Az elso" (legbaloldalibb) karakter mondja meg, hogy ez egy
   hagyomanyos allomany, ko:nyvtar, specialis karakteres eszko:z,
   socket vagy barmilyen mas ku:lo:nleges pszeudoallomany. Ebben az
   esetben a - jelzi, hogy egy hagyomanyos allomanyrol van szo. A
   ko:vetkezo" harom karakter, ami ebben a peldaban az rw-, adja meg
   az allomany tulajdonosanak engedelyeit. Az ezutan ko:vetkezo"
   harom karakter, a r-- mutatja az allomany csoportjanak
   engedelyeit. Az utolso harom karakter, vagyis itt a r-- adja meg a
   to:bbiek engedelyeit. A ko:to"jel arra utal, hogy az adott
   engedelyu" tevekenyseg nem engedelyezett. Tehat ennel az
   allomanynal az engedelyek a ko:vetkezo"ek: a tulajdonosa tudja
   olvasni es irni, a csoportja csak olvasni tudja, ugyanigy barki
   mas. A fenti tablazatnak megfelelo"en az allomany engedelyenek
   kodja 644 lesz, ahol az egyes szamjegyek jelentik az allomany
   engedelyeinek harom elemet.

   Ez mind szep es jo, de vajon a rendszer milyen modon kezeli az
   allomanyok engedelyeit? A FreeBSD a legto:bb hardveres eszko:zt
   allomanynak tekinti, amelyeket a programok meg tudnak nyitni,
   tudnak roluk olvasni es adatokat tudnak kiirni rajuk pontosan ugy,
   mint barmilyen mas allomany eseten. Ezeket a specialis
   allomanyokat a /dev ko:nyvtarban talaljuk.

   A ko:nyvtarakat is allomanyokkent kezeli, ezert azok is
   rendelkeznek olvasasi, irasi es vegrehajtasi engedelyekkel.
   Azonban a ko:nyvtarak vegrehajtasat engedelyezo" bit nemileg mas
   jelentessel bir, mint az allomanyok eseten. Amikor ugyanis egy
   ko:nyvtarat vegrehajthatonak jelo:lu:nk meg, az arra fog utalni,
   hogy bele tudunk lepni, vagyis hogy ki tudjuk ra adni a
   "ko:nyvtarvaltas" (cd, change directory) parancsat. Ez tovabba
   arra is utal, hogy az ismert nevu" allomanyokhoz hozza tudunk
   ferni (termeszetesen az egyes allomanyok engedelyeinek
   megfelelo"en).

   A ko:nyvtarak tartalmat ennek megfelelo"en viszont csak ugy
   lathatjuk, ha olvasasi engedellyel rendelkezu:nk a ko:nyvtarra,
   mig egy altalunk ismert allomany to:rlesehez a tartalmazo
   ko:nyvtarhoz kell irasi es vegrehajtasi engedelyekkel
   rendelkeznu:nk.

   Ezeken kivu:l meg leteznek tovabbi engedelyek is, de ezeket csak
   olyan ku:lo:nleges esetekben hasznaljak, mint peldaul a
   felhasznalovalto programok (setuid program) vagy a ragados
   ko:nyvtarak (sticky directory) letrehozasa. Az allomanyok
   engedelyeinek behatobb megismeresehez es beallitasahoz
   mindenkeppen nezzu:k at a chmod(1) man oldalt.

     --------------------------------------------------------------

  3.3.1. Szimbolikus engedelyek

   Irta: Tom Rhodes.

   A szimbolikus engedelyek (gyakran csak szimbolikus kifejezesek) az
   allomanyok es ko:nyvtarak engedelyeinek megadasa soran a szamok
   helyett karaktereket hasznalnak. A szimbolikus kifejezesek (ki)
   (hogyan) (milyen engedelyt) alakuak, ahol az alabbi ertekek
   adhatoak meg:

            Elem            Betu"               Jelentese             
   (ki)                   u          tulajdonos                       
   (ki)                   g          csoport tulajdonos               
   (ki)                   o          egyeb                            
   (ki)                   a          mindenki (a "vilag")             
   (hogyan)               +          engedely megadasa                
   (hogyan)               -          engedely visszavonasa            
   (hogyan)               =          engedely explicit beallitasa     
   (milyen engedely)      r          olvasas                          
   (milyen engedely)      w          iras                             
   (milyen engedely)      x          vegrehajtas                      
   (milyen engedely)      t          ragados (sticky bit)             
   (milyen engedely)      s          UID vagy GID allitasa            

   Ezek az ertekek a chmod(1) paranccsal az eddigiekhez hasonlo modon
   hasznalhatoak, csak itt betu"ket kell megadnunk. Peldaul az alabbi
   paranccsal akadalyozhatjuk meg, hogy a tulajdonosan kivu:l barki
   hozzaferhessen az ALLOMANY nevu" allomanyhoz:

 % chmod go= ALLOMANY

   Amennyiben egy allomannyal kapcsolatban to:bb valtoztatast is el
   kivanunk vegezni, o:ssze tudjuk ezeket fu"zni egy vesszo"kkel
   elhatarolt felsorolasban:

 % chmod go-w,a+x ALLOMANY

     --------------------------------------------------------------

  3.3.2. A FreeBSD allomanyjelzo"i

   Irta: Tom Rhodes.

   A korabban targyalt engedelyek mellett meg a FreeBSD ismeri az un.
   "allomanyjelzo"k" (file flags) beallitasat is. Ezek a jelzo"bitek
   egy tovabbi biztonsagi es iranyitasi szintet nyujtanak az
   allomanyok felett, viszont a ko:nyvtarakra nem vonatkoznak.

   Ezek az allomanyjelzo"k az allomanyok felett tovabbi vezerlest
   adnak a kezu:nkbe, aminek reven gondoskodhatunk rola, hogy akar
   mge a root felhasznalo (a rendszer adminisztratora) se legyen
   kepes allomanyokat eltavolitani vagy modositani.

   Az allomanyjelzo"k ertekei egy egyszeru" felu:leten keresztu:l, a
   chflags(1) segedprogrammal valtoztathatoak meg. Peldaul a
   ko:vetkezo" paranccsal allithatjuk a rendszer to:ro:lhetetlen
   (undeletable) jelzeset az allomany1 allomanyon:

 # chflags sunlink allomany1

   A to:ro:lhetetlen jelzes eltavolitasahoz egyszeru"en csak irjuk be
   az elo"zo" parancsot ugy, hogy a "sunlink" parameter elejere meg
   beszurunk egy "no" szo:vegreszt. Igy:

 # chflags nosunlink allomany1

   Az allomanyokra eppen ervenyes jelzeseket az ls(1) parancs -lo
   kapcsolojanak segitsegevel jelenithetju:k meg:

 # ls -lo file1
        

   Ennek megfelelo"en az eredmenynek valahogy igy kellene kineznie:

 -rw-r--r--  1 trhodes  trhodes  sunlnk 0 Mar  1 05:54 allomany1

   Sok jelzes csak a root felhasznalon keresztu:l veheto" fel vagy
   tavolithato el. Mas esetekben viszont az allomany tulajdonosa
   allithatja ezeket. A rendszergazdaknak javasoljuk, hogy ezzel
   kapcsolatban a chflags(1) es chflags(2) man oldalakat
   tanulmanyozzak at.

     --------------------------------------------------------------

  3.3.3. A setuid, setgid es sticky engedelyek

   Keszitette: Tom Rhodes.

   A korabban emlitett engedelyeken kivu:l letezik meg tovabbi harom,
   amelyekkel minden rendszergazdanak illik tisztaban lennie. Ezek
   nev szerint a setuid, setgid es sticky tipusu engedelyek.

   Ezek a beallitasok bizonyos UNIX mu"veletek eseten nagyon
   fontosak, mivel az atlagos felhasznalok szamara altalaban el nem
   erheto" funkciok hasznalatat tamogatjak. A megertesu:kho:z
   elso"kent a felhasznalok valodi es effektiv azonositoja ko:zti
   ku:lo:nbsegeket kell tisztaznunk.

   A valodi azonosito tulajdonkeppen az a felhasznaloi azonosito,
   amellyel a programot inditjuk el vagy futas elo"tt birtokoljuk. A
   program futasa ko:zben azonban az effektiv felhasznaloi
   azonositoval fut. Peldaul a passwd(1) segedprogram a jelszavat
   megvaltoztatni kivano felhasznalo valodi azonositojaval indul,
   miko:zben a jelszavakat tarolo adatbazis eleresekor mar a root
   felhasznalo effektiv azonositojaval fut. Ezaltal a
   privilegiumokkal nem rendelkezo" felhasznalok is meg tudjak
   anelku:l valtoztatni a jelszavaikat, hogy a "Permission Denied"
   hibau:zenettel talalkoznanak.

     Megjegyzes: A mount(8) nosuid beallitasaval azonban az ilyen
     tipusu binarisok minden ku:lo:no:sebb jel nelku:l cso"do:t
     fognak mondani. Mellesleg a mount(8) man oldala szerint ez az
     opcio nem is teljesen megbizhato, mivel nosuid wrapperek
     segitsegevel meg lehet keru:lni.

   Ahogy azt az alabbi pelda is szemlelteti, a setuid engedelyt a
   to:bbi ele egy negyes (4) beszurasaval tudjuk beallitani:

 # chmod 4755 suidexample.sh

   A suidexample.sh allomany engedelyei ezt ko:veto"en mar igy fognak
   megjelenni:

 -rwsr-xr-x   1 trhodes  trhodes    63 Aug 29 06:36 suidexample.sh

   Most mar jol lathato, hogy az allomany tulajdonosahoz tartozo
   engedelyek ko:zo:tt a vegrehajthatosagot szabalyozo bit
   lecserelo"do:tt egy s bitre. Ennek ko:szo:nheto"en a passwd
   parancshoz hasonlo modon kibo"vitett engedelyekkel leszu:nk
   kepesek futtatni programokat.

   Ket terminal megnyitasaval mindezt valos ido"ben is
   megvizsgalhatjuk. Az egyiken inditsuk el normal felhasznalokent a
   passwd programot. Miko:zben a program varakozik az uj jelszo
   megadasara, a masik terminalon kerdezzu:k le a programhoz tartozo
   felhasznaloi informaciokat.

   Tehat az egyik terminalon a ko:vetkezo"t latjuk:

 % passwd
 Changing local password for trhodes
 Old Password:

   Eko:zben pedig a masikon:

 # ps aux | grep passwd
 trhodes  5232  0.0  0.2  3420  1608   0  R+    2:10AM   0:00.00 grep passwd
 root     5211  0.0  0.2  3620  1724   2  I+    2:09AM   0:00.01 passwd

   A passwd parancsot egyszeru" felhasznalokent adtunk ki, azonban
   jol lathato valojaban a root felhasznalo azonositojaval fut.

   A setgid a setuid engedelyhez hasonloan mu"ko:dik, egyedu:l
   annyiban ter el, hogy a csoportra vonatkozo beallitasokat
   modositja. Amikor egy alkalmazast vagy segedprogramot ilyen
   engedellyel futtatunk, akkor az adott programot birtoklo csoport
   engedelyeit kapjuk meg.

   Ugy tudjuk allomanyokon beallitani a setgid tipusu engedelyt, ha
   az imenti peldahoz hasonloan a chmod parancs hivasakor meg egy
   kettest (2) irunk az engedelyek ele:

 # chmod 2755 sgidexample.sh

   Az igy beallitott engedelyek az elo"bbiho:z hasonlo modon
   szemlelheto"ek meg, azonban ebben az esetben a csoporthoz tartozo
   engedelyeknel jelenik meg az s bit:

 -rwxr-sr-x   1 trhodes  trhodes    44 Aug 31 01:49 sgidexample.sh

     Megjegyzes: Az elo"bb targyalt peldakkal kapcsolatban fontos
     megemlitenu:nk, hogy habar a szkriptek is vegrehajthato
     allomanyok, nem fognak a valoditol eltero" effektiv felhasznaloi
     azonositoval futni. Ennek oka abban keresendo", hogy a
     parancssori szkriptek nem hivhatjak a setuid(2) rendszerhivast.

   Ez a ket specialis engedely (a setuid es a setgid) a programhoz
   tartozo engedelyek kiterjesztesevel cso:kkentheti rendszeru:nk
   biztonsagat. Ezzel szemben viszont a harmadik bemutatando
   specialis engedely rendszeru:nk vedelmenek ero"sitesere szolgal:
   ez az un. sticky bit.

   Ha a sticky tipusu engedelyt ko:nyvtarra adjuk meg, akkor a benne
   levo" allomanyok to:rleset kizarolag azok tulajdonosainak engedi.
   Ezzel az engedellyel lenyegeben a /tmp ko:nyvtarhoz hasonlo
   nyilvanos, barki altal elerheto" ko:nyvtarakban akadalyozhatjuk
   meg az allomanyok idegen felhasznalok altali to:rleset. Az
   engedely beallitasahoz egy egyest (1) kell a to:bbi ele fu"znu:nk,
   mint peldaul:

 # chmod 1777 /tmp

   Most mar az ls parancs segitsegevel lathatjuk ennek a hatasat:

 # ls -al / | grep tmp
 drwxrwxrwt  10 root  wheel          512 Aug 31 01:49 tmp

   A sticky bit a beallitasok vegen felbukkano t reven azonosithato
   be.

     --------------------------------------------------------------

3.4. A ko:nyvtarak elrendezese

   A FreeBSD ko:nyvtarszerkezetenek ismerete alapveto" jelento"segu"
   a rendszer egeszenek megertesenek szempontjabol. Ezen belu:l is a
   legfontosabb a gyo:kerko:nyvtar, a "/". Ez az elso" ko:nyvtar,
   amelyet a rendszer a rendszerinditas soran csatlakoztat es a
   to:bbfelhasznalos mod elo"keszitesehez elegendhetlenu:l szu:kseges
   alaprendszert tartalmazza. A gyo:kerko:nyvtar emellett
   csatlakozasi pontokat szolgaltat a to:bbfelhasznalos mu"ko:desre
   valtas soran csatlakoztatando tovabbi allomanyrendszerek szamara.

   A csatlakozasi pont egy olyan ko:nyvtar, ahova a szu:lo"
   allomanyrendszeren (ami gyakran maga a gyo:ker allomanyrendszer)
   belu:l tovabbi allomanyrendszereket tudunk beoltani. Erro"l
   bo"vebben a 3.5 Szakaszban olvashatunk. A szabvanyos csatlakozasi
   pontok: /usr, /var, /tmp, /mnt es /cdrom. Ezekre a ko:nyvtarakra
   altalaban az /etc/fstab allomanyban talalunk hivatkozasokat. Az
   /etc/fstab allomany a rendszer szamara a ku:lo:nbo:zo"
   allomanyrendszerek es a hozzajuk tartozo csatlakozasi pontok
   tablazatat tartalmazza. Az /etc/fstab allomanyban szereplo"
   legto:bb allomanyrendszer a rendszerinditas soran automatikusan
   csatlakoztatasra keru:l az rc(8) szkriptbo"l, hacsak nem
   tartalmazzak a noauto beallitast. Ennek reszleteit a 3.6.1
   Szakaszban talalhatjuk meg.

   Az allomanyrendszerek hierarchiajanak teljes leirasat a hier(7)
   man oldalon olvashatjuk. Mi egyelo"re most megelegszu:nk a
   leggyakrabban megjeleno" ko:nyvtarak ro:vid attekintesevel.

      Ko:nyvtar                     Mi talalhato itt                  
   /               Az allomanyrendszer gyo:kere.                      
   /bin/           Az egy- es to:bbfelhasznalos ko:rnyezetekben is    
                   egyarant alapveto" felhasznaloi segedprogramok.    
   /boot/          Az operacios rendszer inditasa soran hasznalt      
                   programok es konfiguracios allomanyok.             
   /boot/defaults/ A rendszerinditas alapertelmezett konfiguracios    
                   allomanyai. Lasd loader.conf(5)                    
   /dev/           Eszko:zleirok, lasd intro(4).                      
   /etc/           Rendszerkonfiguracios allomanyok es szkriptek.     
   /etc/defaults/  Az alapertelmezett rendszerkonfiguracios           
                   allomanyok, lasd rc(8).                            
   /etc/mail/      A sendmail(8) programhoz hasonlo levelku:ldo"      
                   rendszerek konfiguracios allomanyai.               
   /etc/namedb/    A named program konfiguracios allomanyai, lasd     
                   named(8).                                          
   /etc/periodic/  A cron(8) altal naponta, hetente es havonta        
                   lefuttatando szkriptek, lasd periodic(8).          
   /etc/ppp/       A ppp program konfiguracios allomanyai, lasd       
                   ppp(8).                                            
                   Egy u:res ko:nyvtar, amelyet a rendszergazdak      
   /mnt/           altalaban ideiglenes csatlakozasi pontkent         
                   hasznalnak.                                        
   /proc/          A futo programokat tartalmazo allomanyrendszer,    
                   lasd procfs(5), illetve mount_procfs(8).           
   /rescue/        Statikusan linkelt programok veszhelyzet esetere,  
                   lasd rescue(8).                                    
   /root/          A root felhasznalo ko:nyvtara.                     
                   Az egy- es to:bbfelhasznalos ko:rnyezetekben       
   /sbin/          fontos rendszerprogramok es rendszerfelu:gyeleti   
                   eszko:zo:k.                                        
                   Atmeneti allomanyok. A /tmp ko:nyvtar tartalma     
                   altalaban NEM marad meg az ujrainditas utan. Erre  
                   a celra gyakran memoriaban letrehozott             
   /tmp/           allomanyrendszert szoktak csatlakoztatni a /tmp    
                   ko:nyvtarba. Ez utobbit az rc.conf(5) tmpmfs-re    
                   vonatkozo valtozoinak beallitasaval lehet          
                   automatikussa tenni (vagy a /etc/fstab megfelelo"  
                   modositasaval, lasd mdmfs(8)).                     
   /usr/           A felhasznaloi programok es alkalmazasok           
                   to:bbsege.                                         
   /usr/bin/       Altalanos segedprogramok, programozasi eszko:zo:k  
                   es alkalmazasok.                                   
   /usr/include/   Szabvanyos C include-allomanyok.                   
   /usr/lib/       Fu:ggvenyko:nyvtarak.                              
   /usr/libdata/   Egyeb hasznos adatallomanyok.                      
   /usr/libexec/   (Mas programok altal hasznalt) Rendszerdemonok es  
                   rendszereszko:zo:k.                                
                   A helyi rendszeren telepitett programok,           
                   fu:ggvenyko:nyvtarak stb. A FreeBSD portrendszere  
                   is ezt hasznalja alapertelmezes szerint. A         
                   /usr/local ko:nyvtaron belu:l a hier(7) man        
                   oldalon talalhato /usr ko:nyvtar altalanos         
   /usr/local/     felepitese hasznalatos. Ez alol kivetelt kepez a   
                   man alko:nyvtar, amely ko:zvetlenu:l a /usr/local  
                   alatt talalhato, nem pedig a /usr/local/share      
                   ko:nyvtaron belu:l, valamint a portok              
                   dokumentacioja a share/doc/port ko:nyvtarban       
                   talalhato.                                         
                   A /usr/src ko:nyvtarfaban talalhato forrasok       
   /usr/obj/       forditasa soran keletkezo" architekturafu:ggo"     
                   objektumok.                                        
   /usr/ports/     A FreeBSD Portgyu"jtemeny (valaszthato).           
   /usr/sbin/      (A felhasznalok altal hasznalt) Rendszerdemonok es 
                   rendszereszko:zo:k.                                
   /usr/share/     Architekturafu:ggo" allomanyok.                    
   /usr/src/       BSD es/vagy helyi forrasok.                        
   /usr/X11R6/     Az X11R6 rendszer programjai, fu:ggvenyko:nyvtarai 
                   stb. (valaszthato)                                 
                   Ku:lo:nfele naplo, atmeneti, ideiglenes es         
                   pufferben tarolt allomanyok. A memoriaban          
                   letrehozott allomanyrendszereket is olykor a /var  
   /var/           ko:nyvtarban talaljuk. Ezt az rc.conf(5)           
                   allomanyban talalhato varmfs-valtozok              
                   beallitasaval tehetju:k automatikussa (vagy a      
                   /etc/fstab megfelelo" modositasaval, lasd          
                   mdmfs(8)).                                         
   /var/log/       Mindenfele rendszernaplok.                         
   /var/mail/      A felhasznalok postafiokjait tarolo allomanyok.    
   /var/spool/     A nyomtatok es a levelezes pufferelesehez hasznalt 
                   ko:nyvtarak.                                       
                   Atmeneti allomanyok. Az itt talalhato allomanyok   
   /var/tmp/       altalaban megmaradnak a ko:vetkezo"                
                   rendszerinditas alkalmaval is, hacsak a /var nem   
                   egy memoriaban letezo" allomanyrendszer.           
   /var/yp         A NIS allomanyai.                                  

     --------------------------------------------------------------

3.5. A lemezek szervezese

   Az allomanynev a legkisebb szervezesi egyseg, amin keresztu:l a
   FreeBSD kepes megtalalni az allomanyokat. Az allomanyok neveiben a
   kis- es nagybetu"t megku:lo:nbo:ztetju:k, tehat a readme.txt es a
   README.TXT elnevezes ket ku:lo:nbo:zo" allomanyra utal. A FreeBSD
   nem az allomanyok kiterjesztese (ami a konkret peldankban a .txt
   volt) alapjan do:nti el, hogy az adott allomany vajon program,
   dokumentum vagy valamilyen mas fajtaju adat.

   Az allomanyok ko:nyvtarakban tarolodnak. Egy ko:nyvtar lehet akar
   u:res (nincs benne egyetlen allomany sem), vagy to:bbszaz
   allomanyt is tartalmazhat. Egy ko:nyvtar raadasul tovabbi
   ko:nyvtarakat is tarolhat, es igy az egymasban elhelyezkedo"
   ko:nyvtarak segitsegevel ko:nyvtarak egy hierarchiajat tudjuk
   felepiteni. Ezzel sokkalta ko:nnyebben szervezheto"ve valnak az
   adataink.

   Az allomanyokat es ko:nyvtarakat ugy tudunk elerni, ha megadjuk az
   allomany vagy a ko:nyvtart tarolo ko:nyvtar nevet, amit egy
   perjel, a / ko:vet, valamint igy o:sszefu"zve az elereshez
   szu:kseges tovabbi ko:nyvtarak felsorolasa. Tehat, ha van egy ize
   nevu" ko:nyvtarunk, amelyben talalhato egy mize ko:nyvtar, amelyen
   belu:l pedig egy readme.txt, akkor ennek az allomanynak a teljes
   neve, vagy maskeppen szolva az eleresi utja ize/mize/readme.txt
   lesz.

   A ko:nyvtarak es az allomanyok egy allomanyrendszerben tarolodnak.
   Minden allomanyrendszer pontosan egy ko:nyvtarat tartalmaz a
   legfelso" szintjen, amelyet az adott allomanyrendszer
   gyo:kerko:nyvtaranak nevezu:nk. Ez a gyo:kerko:nyvtar tartalmazhat
   aztan tovabbi ko:nyvtarakat.

   Eddig meg valoszinu"leg minden nagyon hasonlo a mas operacios
   rendszerekben tapasztalhato fogalmakhoz. Azonban adonak
   ku:lo:nbsegek: peldaul az MS-DOS a \ jellel valasztja el az
   allomanyok es ko:nyvtarak neveit, miko:zben a Mac OS(R) erre a :
   jelet hasznalja.

   A FreeBSD az eleresi utakban sem betu"kkel, sem pedig semmilyen
   mas nevvel nem jelo:li meg a meghajtokat. Tehat a FreeBSD-ben nem
   irhatjuk, hogy a c:/ize/mize/readme.txt.

   Helyette az egyik allomanyrendszert kijelo:lik gyo:ker
   allomanyrendszernek. A gyo:ker allomanyrendszer
   gyo:kerko:nyvtarara hivatkoznak keso"bb / ko:nyvtarkent. Ezutan
   minden mas allomanyrendszert a gyo:ker allomanyrendszerhez
   csatlakoztatunk. Ennek ertelmeben nem szamit, hogy a mennyi
   lemezu:nk is van a FreeBSD rendszeru:nkben, hiszen minden
   ko:nyvtar egyazon lemez reszekent jelenik meg.

   Tegyu:k fel, hogy van harom allomanyrendszeru:nk, hivjuk ezeket
   A-nak, B-nek es C-nek. Minden allomanyrendszer rendelkezik egy
   gyo:kerko:nyvtarral, amely ket tovabbi ko:nyvtarat tartalmaz:
   A1-et es A2-t (es ennek megfelelo"en a to:bbi B1-et es B2-t,
   valamint C1 es C2-t).

   Nevezzu:k A-t a gyo:ker allomanyrendszernek. Ha a ko:nyvtar
   tartalmanak megjelenitesehez most kiadnank az ls parancsot, ket
   alko:nyvtarat latnank, az A1-et es A2-t. A letrejo:tt ko:nyvtarfa
   valahogy igy nezne ki:

  /
  |
  +--- A1
  |
  `--- A2

   Egy allomanyrendszert csak egy masik allomanyrendszer valamelyik
   ko:nyvtaraba tudunk csatlakoztatni. Ezert most tetelezzu:k fel,
   hogy a B allomanyrendszert az A1 ko:nyvtarba csatlakoztatjuk.
   Ezutan a B gyo:kerko:nyvtara atveszi a A1 helyet az
   allomanyrendszerben, es ennek megfelelo"en megjelennek a B
   ko:nyvtarai is:

  /
  |
  +--- A1
  |     |
  |     +--- B1
  |     |
  |     `--- B2
  |
  `--- A2

   A B1 vagy B2 ko:nyvtarakban talalhato allomanyok barmelyike
   innento"l kezdve a /A1/B1, illetve a /A1/B2 eleresi utakon
   erheto"ek el. Az A1 ko:nyvtarban talalhato allomanyok erre az
   ido"re rejtve maradnak. Akkor fognak ujra felbukkanni, ha a B
   allomanyrendszert levalasztjuk az A allomanyrendszerro"l.

   Ha a B allomanyrendszert az A2 ko:nyvtarba csatlakoztatnank, az
   imenti abra nagyjabol igy nezne ki:

  /
  |
  +--- A1
  |
  `--- A2
        |
        +--- B1
        |
        `--- B2

   es ennek megfelelo"en az elo"bb targyalt eleresi utak /A2/B1 es
   /A2/B2 lennenek.

   Az allomanyrendszerek egymashoz is csatlakoztathatoak. A peldat
   ennek megfelelo"en ugy is folytathatjuk, hogy a C
   allomanyrendszert csatlakoztatjuk B allomanyrendszerben talalhato
   B1 ko:nyvtarhoz. Ennek eredmenye a ko:vetkezo" elrendezes lesz:

  /
  |
  +--- A1
  |
  `--- A2
        |
        +--- B1
        |     |
        |     +--- C1
        |     |
        |     `--- C2
        |
        `--- B2

   Vagy a C allomanyrendszer az A1 ko:nyvtaron keresztu:l
   csatlakoztathato akar ko:zvetlenu:l az A allomanyrendszerhez is:

  /
  |
  +--- A1
  |     |
  |     +--- C1
  |     |
  |     `--- C2
  |
  `--- A2
        |
        +--- B1
        |
        `--- B2

   Az MS-DOS operacios rendszert ismero"k szamara ez hasonlo lehet a
   join parancshoz (habar teljesen nem egyezik meg vele).

   Altalaban azonban ezzel nem kell to:ro"dnu:nk, hiszen to:bbnyire
   csak a FreeBSD telepitese soran hozunk letre allomanyrendszereket
   es valasztjuk meg a csatlakozasi pontjukat. A keso"bbiekben
   legfeljebb ez akkor keru:l elo" ismet, amikor ujabb lemezeket
   adunk hozza a rendszerhez.

   Teljesseggel megengedheto", hogy elhagyjuk a to:bbit es csak
   egyetlen oriasi gyo:kerallomanyrendszert hasznaljunk. Ennek
   viszont megvannak a maga hatranyai es az egyetlen elo"nye.

   To:bb allomanyrendszer hasznalatanak elo"nyei

     * A ku:lo:nbo:zo" allomanyrendszereknek ku:lo:nbo:zo"
       csatlakoztatasi beallitasai (mount options) lehetnek. Peldaul,
       ha kello"en elo"vigyazatosak akarunk lenni, a
       gyo:kerallomanyrendszer irasvedett modon is csatlakoztathato,
       aminek ko:szo:nheto"en lehetetlenne valik a rendszer szamara
       fontos allomanyok veletlen to:rlese vagy felu:lirasa. Ha
       elku:lo:nitju:k a felhasznalok szamara irhato
       allomanyrendszereket (peldaul a /home ko:nyvtarakat) a to:bbi
       allomanyrendszerto"l, leheto"ve valik szamunkra, hogy nosuid
       beallitassal csatlakoztassuk ezeket. Ez a beallitas
       megakadalyozza, hogy ezekben a suid/guid bitekkel rendelkezo"
       vegrehajthato allomanyok hasznalhatoak legyenek, ezaltal
       no:veli a rendszer biztonsagossagat.

     * A FreeBSD az allomanyrendszer hasznalatatol fu:ggo"en magatol
       hataroz a benne talalhato allomanyok optimalis kiosztasat
       illeto"en. Igy tehat a gyakorta modositott, kisebb
       allomanyokat tartalmazo allomanyrendszerek eseten teljes mas
       technikakat alkalmaz, mint peldaul a nagyobb, kevesbe valtozo
       allomanyok eseten. Azonban egyetlen allomanyrendszer
       hasznalataval ez a gyorsitasi modszer odavesz.

     * Noha a FreeBSD allomanyrendszerei nagyon jol tu"rik a hirtelen
       aramkimaradasokat, egy do:nto" ponton beko:vetkezo" varatlan
       leallas tovabbra is kart okozhat a szerkezetu:kben. Ha azonban
       to:bb allomanyrendszerre osztjuk a tarolando adatainkat,
       sokkal valoszinu"bbe valik, hogy egy ilyen eset utan a
       rendszeru:nk talpra tud allni, es szu:kseg eseten neku:nk is
       ko:nnyebb lesz a biztonsagi menteseinkbo"l helyreallitani a
       seru:lt allomanyokat.

   Egyetlen allomanyrendszer hasznalatanak elo"nyei

     * Az allomanyrendszerek merete ro:gzitett. Miutan a FreeBSD
       telepitese soran letrehoztunk egy adott meretu"
       allomanyrendszert, elo"fordulhat, hogy keso"bb szu:ksegu:nk
       lesz a meretenek no:velesere. Ilyenkor nehezen keru:lhetju:k
       el az ilyenkor szokasos teendo"ket: biztonsagi mentes
       keszitese, az uj meretnek megfelelo" allomanyrendszer
       letrehozasa, majd ezutan a lementett adataink visszaallitasa.

         Fontos: A FreeBSD-ben azonban megtalalhato a growfs(8)
         parancs, amelynek segitsegevel az allomanyrendszerek merete
         hasznalat ko:zben no:velheto", es ezzel megszu"nik a meretre
         vonatkozo korlatozas.

   Az allomanyrendszerek particiokban tarolodnak. A FreeBSD UNIX-os
   eredete miatt azonban ez a kifejezes nem a hetko:znapi "particio"
   jelenteset takarja (mint peldaul egy MS-DOS particio). Minden
   particiot egy betu" azonosit a-tol h-ig. Mindegyik particio csak
   egyetlen allomanyrendszert tartalmazhat, aminek reven az
   allomanyrendszereket vagy az allomanyrendszerek hierarchiajaban
   talalhato csatlakozasi pontjukkal vagy pedig az ezeket tartalmazo
   particio betu"jevel azonosithatjuk.

   A FreeBSD ezeken felu:l ku:lo:n lemezteru:len tarolja a
   lapozoallomanyt (swap space). A lapozoallomanyt hasznalja a
   FreeBSD virtualis memoria (virtual memory) megvalositasahoz. Ennek
   ko:szo:nheto"en a szamitogep kepes ugy viselkedni, mintha joval
   to:bb memoriaval rendelkezne, mint valojaban. Igy, amikor a
   FreeBSD kifogy a memoriabol, egyszeru"en kirakja a memoriabol a
   lapozoallomanyba az eppen nem hasznalt adatokat, majd amikor ismet
   szu:ksege lesz rajuk, visszato:lti ezeket (es ilyenkor megint
   kirak valami mast).

   Nemely particiohoz ko:to"dnek bizonyos megszokasok.

   Particio                         Megszokas                         
   a        Altalaban ez tartalmazza a gyo:ker allomanyrendszert.     
   b        Altalaban ez tartalmazza a lapozoallomanyt.               
            Merete altalaban a tartalmazo slice meretevel egyezik     
            meg. Ennek ko:szo:nheto"en a segedprogramok (peldaul egy  
   c        hibas szektorokat kereso" program) a c particion          
            keresztu:l kepesek akar az egesz slice-al dolgozni.       
            Normalis esetben ezen a particion nem hozunk letre        
            allomanyrendszert.                                        
            A d particiohoz egykoron kapcsolodott ku:lo:nleges        
   d        jelentes, azonban mostanra ez mar megszu"nt, es a d egy   
            teljesen atlagos particionak tekintheto".                 

   Minden allomanyrendszert tartalmazo particiot a FreeBSD egy un.
   slice-ban tarol. A FreeBSD szamara a slice elnevezes utal
   mindarra, amit altalaban particionak neveznek, es ismet
   megemlitju:k, mindez a UNIX-os eredet miatt. A slice-okat 1-to"l
   4-ig sorszamozzak.

   A slice-ok sorszama 1-to"l indulva az eszko:zo:k neve utan egy s
   betu"vel elvalasztva ko:vetkezik. Igy tehat a "da0s1" jelentese az
   elso" slice lesz az elso" SCSI-meghajton. Lemezenkent negy fizikai
   slice hozhato letre, de ezeken belu:l tetszo"leges tipusu logikai
   slice-ok helyezheto"ek el. Ezen tovabbi slice-ok sorszamozasa
   5-to"l kezdo"dik, igy ennek megfelelo"en a "ad0s5" lesz az elso"
   IDE-lemezen talalhato elso" kiterjesztett slice. Ezeket az
   eszko:zo:ket foglaljak el a ku:lo:nbo:zo" allomanyrendszerek.

   A slice-ok, a "veszelyesen dedikalt" (Dangerously Dedicated)
   fizikai meghajtok, es minden mas olyan meghajto, amely particiokat
   tartalmaz, a-tol h-ig jelo:lo"dnek. Ez a betu" az eszko:z neve
   utan ko:vetkezik, igy ennek megfelelo"en a "da0a" lesz az elso"
   "da" meghajto "a", vagyis a "veszelyesen dedikalt" particioja. Az
   "ad1s3e" lesz a masodik IDE-lemezmeghajton a harmadik slice-ban
   szereplo" o:to:dik particio.

   Vegezetu:l, a rendszerben minden lemezt azonositunk. A lemez neve
   a tipusara utalo koddal kezdo"dik, amely utan aztan egy sorszam
   jelzi, hogy melyik lemezro"l is van szo. Azonban eltero"en a
   slice-oketol, a lemezek sorszamozasa 0-tol indul. Az altalanosan
   elterjedt kodolasok a 3-1 Tablazatban talalhatoak.

   Amikor hivatkozunk egy particiora, a FreeBSD elvarja to"lu:nk,
   hogy nevezzu:k meg az adott particiot tartalmazo slice-ot es
   lemezt is. Emiatt egy particiora mindig ugy hivatkozunk, hogy
   elo"szo:r megadjuk a tartalmazo lemez nevet, etto"l s-sel
   elvalasztva a tartalmazo slice sorszamat, majd ezt a particio
   betu"jelevel zarjuk. Erre peldakat a 3-1 Peldaban lathatunk.

   Az erheto"seg kedveert a 3-2 Pelda bemutatja egy lemez
   kiosztasanak fogalmi sablonjat.

   A FreeBSD telepitesehez elo"szo:r be kell allitani a lemezen
   talalhato slice-okat, majd letrehozni benne a FreeBSD-hez
   hasznalni kivant particiokat, kialakitani rajtuk az
   allomanyrendszereket (vagy a lapozoallomanyt) es eldo:nteni,
   melyik allomanyrendszert kivanjuk csatlakoztatni.

   Tablazat 3-1. Lemezes eszko:zo:k kodjai

       Kod                            Jelentes                        
   ad          ATAPI (IDE) lemez                                      
   da          ko:zvetlen hozzaferesu" SCSI lemez                     
   acd         ATAPI (IDE) CDROM                                      
   cd          SCSI CDROM                                             
   fd          Floppylemez                                            

   Pelda 3-1. Peldak lemezek, slice-ok es particiok neveire

    Nev                            Jelentes                           
   ad0s1a Az elso" IDE lemezen (ad0) levo" elso" slice (s1) elso"     
          particioja (a).                                             
   da1s2e A masodik SCSI-lemzen (da1) levo" masodik slice (s2)        
          o:to:dik particioja (e).                                    

   Pelda 3-2. Egy lemez kialakitasanak sablonja

   Az abran a rendszerhez csatlakoztatott elso" IDE-lemez lathato a
   FreeBSD szemszo:gebo"l. Tegyu:k fel, hogy ez a lemez 4 GB meretu"
   es ket, egyenkent 2 GB meretu" slice-ot (avagy MS-DOS particiot)
   tartalmaz. Az elso" slice egy MS-DOS formatumu lemezt foglal
   magaban, a C: meghajtot, illetve a masodik slice egy telepitett
   FreeBSD-t tartalmaz. Ebben a peldaban a FreeBSD harom adatot es
   egy lapozoallomanyt tarolo particioval rendelkezik.

   A harom particio mindegyiken talalhatunk egy-egy
   allomanyrendszert. Az a particio lesz a gyo:ker allomanyrendszer,
   az e lesz a rendszeru:nkben a /var es az f pedig a /usr ko:nyvtar.

 .-----------------.  --.
 |                 |    |
 |  DOS / Windows  |    |
 :                 :     >  Elso" slice, ad0s1
 :                 :    |
 |                 |    |
 :=================:  ==:                               --.
 |                 |    |  a particio, /      |
 |                 |     > ad0s2a neven hivatkozzuk         |
 |                 |    |                                 |
 :-----------------:  ==:                                 |
 |                 |    |  b particio, lapozoallomany      |
 |                 |     > ad0s2b neven hivatkozzuk          |
 |                 |    |                                 |
 :-----------------:  ==:                                 |  c particio, nincs
 |                 |    |  e particio, /var       > allomanyrendszer, az egesz
 |                 |     > ad0s2e neven hivatkozzuk          |  FreeBSD slice,
 |                 |    |                                 |  ad0s2c
 :-----------------:  ==:                                 |
 |                 |    |                                 |
 :                 :    |  f particio, /usr      |
 :                 :     > ad0s2f neven hivatkozzuk          |
 :                 :    |                                 |
 |                 |    |                                 |
 |                 |  --'                                 |
 `-----------------'                                    --'

     --------------------------------------------------------------

3.6. Allomanyrendszerek csatlakoztatasa es levalasztasa

   Az allomanyrendszereket legko:nnyebben egy-egy fakent tudjuk
   magunk elo"tt elkepzelni, amelyek a / ko:nyvtarbol no"nek ki. A
   /dev, /usr es mellettu:k szereplo", hozzajuk hasonlo o:sszes
   to:bbi ko:nyvtar csupan egy-egy ag, amelyeknek sajat agaik is
   lehetnek, mint peldaul a /usr/local es igy tovabb.

   Ku:lo:nfele okainak vannak annak, hogy egyes ko:nyvtarakat
   ku:lo:nallo allomanyrendszereken tarolunk. A /var ko:nyvtar
   tartalmazza a log/, spool/ ko:nyvtarakat es ku:lo:nfele atmeneti
   allomanyokat, azonban az ilyen allomanyok ko:nnyen
   megszaporodhatnak es megto:lthetik az allomanyrendszert. Mivel a
   gyo:ker allomanyrendszert nem tanacsos elarasztani mindenfele
   allomannyal, ezert gyakran a hasznunkra valthat, ha a /var
   ko:nyvtarat levalasztjuk a / ko:nyvtarbol.

   Masik gyakori ok, ami az iment emlitett fa egyes againak
   ku:lo:nbo:zo" allomanyrendszereken to:rteno" tarolasat indokolja,
   hogy ezek gyakran mas fizikai vagy virtualis lemezeken, peldaul a
   rendszerhez csatlakoztatott Halozati allomanyrendszereken vagy
   eppen CD-meghajtokon talalhatoak.

     --------------------------------------------------------------

  3.6.1. Az fstab allomany

   A rendszerinditas folyamata soran az /etc/fstab allomanyban
   felsorolt allomanyrendszerek maguktol keru:lnek csatlakoztatasra
   (kiveve amikor a noauto beallitassal szerepelnek).

   Az /etc/fstab allomanyban talalhato sorok az alabbi szerkezetu"ek:

 eszko:z       /csatlakozasi-pont tipus     beallitasok      mentesigyak     ellszam

   eszko:z

           A 18.2 Szakaszban leirtak szerint megnevezett (letezo")
           eszko:z.

   csatlakozasi-pont

           Egy (letezo") ko:nyvtar, ahova az allomanyrendszer
           csatlakozik.

   tipus

           Az allomanyrendszer mount(8) parancs szerint ismert
           tipusa. A FreeBSD alapertelmezett allomanyrendszere az
           ufs.

   beallitasok

           Az irhato-olvashato allomanyrendszerek eseten rw, az
           irasvedettek eseten pedig ro, amelyet igeny szerint
           tovabbi beallitasok ko:vethetnek. A rendszerinditas soran
           automatikusan nem csatlakoztatando allomanyrendszerek
           eseten gyakran alkalmazott beallitas itt meg a noauto.
           Egyeb leheto"segeket a mount(8) man oldalon lathatunk.

   mentesigyak

           Ezt altalaban a dump(8) parancs hasznalja a menteni
           szu:kseges allomanyrendszerek megallapitasahoz. Amennyiben
           hianyzik ez a mezo", az automatikusan a nulla erteket
           jelo:li.

   ellszam

           Megadja, hogy mely allomanyrendszereket kell elleno"rizni.
           A nullas pass ertekkel rendelkezo" allomanyrendszerek nem
           keru:lnek elleno"rzesre. A gyo:ker allomanyrendszer
           (melyet minden mas elo"tt kell elleno"rizni) passno erteke
           egy, mig az o:sszes to:bbi allomanyrendszer passno erteke
           altalaban egyto"l ku:lo:nbo:zo". Ha egynel to:bb
           allomanyrendszer is ugyanazt a passno erteket kapta, akkor
           az fsck(8) a leheto"segei szerint megprobalja ezeket
           egyszerre elleno"rizni.

   Az /etc/fstab felepitesero"l es a benne hasznalhato beallitasokrol
   bo"vebben a fstab(5) man oldalon olvashatunk.

     --------------------------------------------------------------

  3.6.2. A mount parancs

   Az allomanyrendszerek tenyleges csatlakoztatasara avagy
   "mountolasara" a mount(8) parancs hasznalhato.

   Legegyszeru"bb formaja:

 # mount eszko:z csatlakozasi-pont

   Ahogy a mount(8) man oldalan is olvashatjuk, itt rengeteg opcio is
   megadhato, de ezek ko:zu:l a leggyakoribbak:

   Csatlakoztatasi opciok

   -a

           Csatlakoztatja az /etc/fstab allomanyban felsorolt o:sszes
           allomanyrendszert, kiveve azokat, amelyek a "noauto"
           beallitast tartalmazzak, vagy kizartuk a -t kapcsoloval,
           esetleg korabban mar csatlakoztattuk.

   -d

           A tenyleges csatlakoztatas elvegzese nelku:l vegrehajt
           minden mast. Ez az opcio leginkabb -v opcioval egyu:tt
           hasznalhato annak megallapitasara, hogy a mount(8)
           valojaban mit is akar csinalni.

   -f

           Egy nem tiszta allomanyrendszer csatlakoztatasanak
           kenyszeritese (veszelyes!) vagy egy korabban mar
           csatlakoztatott allomanyrendszer irhato allapotanak
           felfu:ggesztese.

   -r

           Az allomanyrendszer irasvedett csatlakoztatasa. Megegyezik
           a -o opcional megadhato ro (vagy a FreeBSD 5.2-nel regebbi
           verzioja eseten a rdonly) beallitas hasznalataval.

   -t tipus

           Az adott allomanyrendszer az adott tipusnak megfelelo"en
           csatlakoztatja, vagy az -a hasznalata eseten csak az adott
           tipusu allomanyrendszereket.

           Az "ufs" az allomanyrendszerek alapertelmezett tipusa.

   -u

           Frissiti az allomanyrendszerre vonatkozo csatlakoztatasi
           beallitasokat.

   -v

           Reszletesebb kijelzes.

   -w

           Az allomanyrendszer csatlakoztatasa irasra es olvasasra.

   Az -o opcio utan vesszo"vel elvalasztott beallitasokat adhatunk
   meg, to:bbek ko:zt az alabbiakat:

   noexec

           Az allomanyrendszeren talalhato allomanyok vegrehajtasanak
           tiltasa. Ez egy nagyon hasznos biztonsagi beallitas.

   nosuid

           Az allomanyrendszeren nem hasznalhatoak a felhasznalo-
           (setuid) vagy csoportvaltasra (setgid) vonatkozo
           engedelyek. Nagyon hasznos biztonsagi beallitas.

     --------------------------------------------------------------

  3.6.3. Az umount parancs

   Az umount(8) parancs parameterkent egy csatlakozasi pontot, egy
   eszko:znevet vagy a -a, illetve az -A opciokat varja.

   A levalasztas kenyszeritesehez mindegyik alakban szerepelhet az -f
   opcio, valamint a reszletesebb kijelzest a -v opcioval
   kapcsolhatjuk be. Azonban szeretnenk mindenkit figyelmeztetni,
   hogy a -f hasznalata alapveto"en nem ajanlott. Az ero"szakkal
   levalasztott allomanyrendszerek o:sszeomlaszthatjak a szamitogepet
   vagy kart okozhatnak az allomanyrendszereken talalhato adatokban.

   Az -a es -A opciok hasznalatosak az o:sszes csatlakoztatott
   allomanyrendszer levalasztasara, amelyek tipusait a -t opcio
   megadasa utan sorolhatunk fel. Fontos ku:lo:nbseg azonban, hogy az
   -A opcio a gyo:ker allomanyrendszert nem probalja meg
   levalasztani.

     --------------------------------------------------------------

3.7. Folyamatok

   A FreeBSD egy to:bbfeladatos operacios rendszer. Ez azt jelenti,
   hogy kepes latszolag egyszerre to:bb programot is futtatni. Az igy
   egyszerre futo programokat egyenkent folyamatoknak (process)
   nevezzu:k. Minden kiadott parancsunk elindit legalabb egy ilyen
   folyamatot, es a rendszeru:nk mozgasban tartasahoz bizonyos
   rendszerszintu" folyamatok allandoan futnak a hatterben.

   Minden folyamatot egy folyamatazonositonak (process ID vagy PID)
   nevezett szam azonosit egyertelmu"en, es az allomanyokhoz
   hasonloan, minden folyamatnak van tulajdonosa es csoportja is. A
   tulajdonos es a csoport ismereteben allapitja meg a rendszer, hogy
   az adott folyamat a korabban emlitett engedelyek szerint milyen
   allomanyokhoz es eszko:zo:kho:z ferhet hozza. Ezenkivu:l a
   legto:bb folyamatnak van meg egy szu:lo"folyamata is. A
   szu:lo"folyamat az a folyamat, amely az adott folyamatot
   elinditotta. Peldaul amikor parancsokat adunk egy
   parancsertelmezo"n keresztu:l, akkor maga a parancsertelmezo" is
   egy ilyen folyamat lesz ugyanugy, ahogy a benne kiadott parancsok
   altal elinditott programok. Ennek megfelelo"en az igy letrehozott
   o:sszes folyamat szu:lo"je maga a parancsertelmezo" folyamata
   lesz. Az emlitettek alol egyik kivetel az init(8) nevu" specialis
   folyamat. Az init lesz a rendszerben mindig az elso" folyamat,
   ezert a PID-je is mindig 1. Az init programot a FreeBSD
   indulasakor a rendszermag fogja automatikusan elinditani.

   A rendszerben futo programok vizsgalatahoz ket, ku:lo:no:sen
   hasznos parancsot talalhatunk: ezek a ps(1) es a top(1). A ps
   parancs hasznalatos a pillanatnyilag futo programok statikus
   listajanak megjelenitesere. Ebben olvashatjuk a futo programok
   azonositoit, mennyi memoriat hasznalnak eppen, milyen paranccsal
   inditottak ezeket stb. A top parancs mutatja az o:sszes aktivan
   futo programot, majd nehany masodpercenkent automatikusan frissiti
   ezt a listat, aminek reven folyamatosan lathatjuk, mikent
   viselkednek a futo programok.

   A ps alapertelmezes szerint csupan az altalunk futtatott
   programokat mutatja. Peldaul:

 % ps
   PID  TT  STAT      TIME COMMAND
   298  p0  Ss     0:01.10 tcsh
  7078  p0  S      2:40.88 xemacs mdoc.xsl (xemacs-21.1.14)
 37393  p0  I      0:03.11 xemacs freebsd.dsl (xemacs-21.1.14)
 48630  p0  S      2:50.89 /usr/local/lib/netscape-linux/navigator-linux-4.77.bi
 48730  p0  IW     0:00.00 (dns helper) (navigator-linux-)
 72210  p0  R+     0:00.00 ps
   390  p1  Is     0:01.14 tcsh
  7059  p2  Is+    1:36.18 /usr/local/bin/mutt -y
  6688  p3  IWs    0:00.00 tcsh
 10735  p4  IWs    0:00.00 tcsh
 20256  p5  IWs    0:00.00 tcsh
   262  v0  IWs    0:00.00 -tcsh (tcsh)
   270  v0  IW+    0:00.00 /bin/sh /usr/X11R6/bin/startx -- -bpp 16
   280  v0  IW+    0:00.00 xinit /home/nik/.xinitrc -- -bpp 16
   284  v0  IW     0:00.00 /bin/sh /home/nik/.xinitrc
   285  v0  S      0:38.45 /usr/X11R6/bin/sawfish

   Ahogy az a fenti peldaban is latszik, a ps(1) kimenete oszlopokra
   tagolhato. Ezek ko:zu:l a PID tartalmazza a korabban mar
   ismertetett folyamatazonositokat. Az azonositok 1-to"l indulva
   egeszen 99999-ig sorszamozodhatnak, illetve ha kifutnank
   belo"lu:k, akkor a szamozas kezdo"dik elo:lro"l (azonban a
   hasznalatban levo" azonositok sosem keru:lnek ujra kiosztasra). A
   TT oszlopban lathatjuk azt a terminalt, amelyen az adott program
   eppen fut, de ezt pillanatnyilag akar nyugodtan figyelmen kivu:l
   is hagyhatjuk. A STAT oszlopban a program allapotat kapjuk meg, de
   szinten atugorhato. A TIME a program processzoron elto:lto:tt
   idejet mutatja -- ez altalaban nem arra utal, hogy mennyi ideje
   fut maga a program, hiszen a legto:bb programnak megleheto"sen
   sokat kell varakoznia egyaltalan mielo"tt a processzorra lenne
   szu:ksege. Vegezetu:l a COMMAND oszlopban olvashatjuk azt a
   parancsot, amellyel a programot elinditottak.

   A ps(1) szamos ku:lo:nfele beallitast ismer az altala
   megjelenitett informaciok megvalasztasahoz. Az egyik ilyen
   leghasznosabb beallitas az auxww: az a segitsegevel az o:sszes
   futo programot lathatjuk, nem csak a sajatjainkat; az u
   megadasaval lathatova valik a folyamat tulajdonosanak a
   felhasznaloi neve, valamint a memoriahasznalata is; az x
   megmutatja a demon (avagy hatter)folyamatok adatait is es a ww
   hatasara pedig a ps(1) az o:sszes folyamathoz a teljes parancssort
   kiirja, meg akkor is, ha nem ferne ki a kepernyo"re.

   A top(1) kimenete is hasonlo. Ha elinditjuk, altalaban ezt
   lathatjuk:

 % top
 last pid: 72257;  load averages:  0.13,  0.09,  0.03    up 0+13:38:33  22:39:10
 47 processes:  1 running, 46 sleeping
 CPU states: 12.6% user,  0.0% nice,  7.8% system,  0.0% interrupt, 79.7% idle
 Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free
 Swap: 256M Total, 38M Used, 217M Free, 15% Inuse

   PID USERNAME PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU COMMAND
 72257 nik       28   0  1960K  1044K RUN      0:00 14.86%  1.42% top
  7078 nik        2   0 15280K 10960K select   2:54  0.88%  0.88% xemacs-21.1.14
   281 nik        2   0 18636K  7112K select   5:36  0.73%  0.73% XF86_SVGA
   296 nik        2   0  3240K  1644K select   0:12  0.05%  0.05% xterm
 48630 nik        2   0 29816K  9148K select   3:18  0.00%  0.00% navigator-linu
   175 root       2   0   924K   252K select   1:41  0.00%  0.00% syslogd
  7059 nik        2   0  7260K  4644K poll     1:38  0.00%  0.00% mutt
 ...

   A kimenet ket reszre oszthato. A fejlecben (vagyis az elso" o:t
   sorban) lathato az utoljara futtatott program azonositoja (PID), a
   rendszer atlagos terhelese (load average, amellyel merju:k, hogy a
   rendszeru:nk mennyire lefoglalt), a rendszer inditasa ota eltelt
   ido" (up mint uptime) es a jelenlegi ido". A fejlecben meg
   megtalalhatjuk azt is, mennyi program fut (esetu:nkben ez most
   47), mennyi memoriat es lapozoallomanyt hasznalnak es mennyi ido"t
   to:lt a rendszer a processzor ku:lo:nbo:zo" allapotaiban.

   A fejlec alatt a ps(1) kimenetehez hasonlo modon oszlopokba
   rendezve talalhatjuk meg a folyamatok adatait: az azonositoikat, a
   tulajdonosaik nevet, a felhasznalt processzorido"t, a futtatott
   parancsot. A top(1) alapertelmezes szerint mutatja a futo
   programok altal hasznalt memoria mennyiseget is: ez tovabbi ket
   oszlopra oszlik, ahol az egyikben a teljes memoriafoglalast
   (SIZE), a masikban pedig az jelen pillanatban aktivan hasznalt
   memoriat (RES) lathatjuk. A peldaban lathato is, hogy a
   Netscape(R) (navigator-linu) alkalmazasnak majdnem 30 MB-nyi
   memoriara van szu:ksege, de ebbo"l aktivan csak 9 MB-ot hasznal.

   A top(1) a kijelzest minden masodik masodpercben magatol frissiti,
   de ez az s kapcsoloval allithato.

     --------------------------------------------------------------

3.8. Demonok, jelzesek es a futo programok leallitasa

   Amikor elinditunk egy szo:vegszerkeszto"t, nem sok gondunk akad az
   iranyitasaval, ko:nnyen utasithatjuk az allomanyok beto:ltesere es
   igy tovabb. Mindezt azert tehetju:k meg, mert a szo:vegszerkeszto"
   erre leheto"seget biztosit es mivel a szo:vegszerkeszto" egy
   terminalhoz kapcsolodik. Egyes programok azonban nem ugy lettek
   kialakitva, hogy allandoan a felhasznalo utasitasaira
   tamaszkodjanak, ezert az elso" adando alkalommal lekapcsolodnak a
   terminalrol. Peldaul egy webszerver egesz nap csak webes kereseket
   valaszol meg, es altalaban semmi szu:ksege nincs a felhasznalok
   utasitasaira. A szerverek ko:zo:tt leveleket ko:zvetito" programok
   is ugyanezen osztalyba tartoznak.

   Ezeket a programokat demononoknak hivjuk. A demonok a go:ro:g
   mitologiaban jelentek meg: sem a jot, sem pedig a gonoszt nem
   kepviseltek, egyszeru" apro szellemecskek voltak, akik az
   emberiseg javat szolgaltak, pontosan ugy, ahogy ma teszik azt a
   ku:lo:nfele web- es levelezo" szerverek. Ezert is abrazoltak
   sokaig a BSD kabalafigurajat is egy tornacipo"s, vasvillas vidam
   demonkent.

   A demonkent futo programok nevehez a hagyomanyok szerint hozza
   szoktak fu"zni a "d" betu"t. A BIND a Berkeley Internet Name
   Domain (nevfeloldo) szolgaltatasa, azonban a hozzatartozo program
   neve named, az Apache webszerver programjat httpd-nek nevezik, a
   sornyomtato kezeleseert felelo"s demon pedig az lpd es igy tovabb.
   Ez csupan egy hagyomany, megszokas, nem pedig egy ko"be vesett
   szabaly: peldaul a Sendmail levelezo" demonanak neve sendmail es
   nem pedig maild.

   Neha azert szu:ksegu:nk lehet arra, hogy felvegyu:k valahogy a
   kapcsolatot a demonkent futo programokkal is. Ennek egyik
   lehetseges modja a jelzesesek (signal) ku:ldese (de alapveto"en
   barmilyen futo programnak ku:ldhetu:nk). To:bb ku:lo:nfele jelzes
   ku:ldheto" -- egyeseknek ko:zu:lu:k megku:lo:nbo:ztetett jelentese
   van, masokat magukat az alkalmazasok ertelmeznek, amelyro"l a
   dokumentaciojukban tajekozodhatunk. A kill(1) vagy kill(2)
   paranccsal mas tulajdonaban levo" futo programoknak nem tudunk
   jelzeseket ku:ldeni, ami alol egyedu:li kivetel a root
   felhasznalo.

   Bizonyos esetekben a FreeBSD maga is ku:ld neha jelzeseket. Amikor
   egy alkalmazast rosszul programoznak le es megprobal egy szamara
   tiltott memoriateru:lethez hozzaferni, a FreeBSD ku:ld neki egy
   Segmentation Violation (SIGSEGV, szegmentalasi hiba) jelzest. Ha
   egy alkalmazas az alarm(3) rendszerhivason keresztu:l ker egy
   adott ido" utani beko:vetkezo" ertesitest, akkor kap erro"l egy
   Alarm (SIGALRM) jelzest es igy tovabb.

   A folyamatok leallitasara ket jelzes hasznalhato: a SIGTERM
   (befejeztetes) es a SIGKILL (leallitas). A SIGTERM a folyamatok
   leallitasanak illedelmes modja, mivel ekkor a futo program kepes
   elkapni ezt a jelzest es eszrevenni, hogy le akarjuk allitani.
   Ilyenkor a leallitas elo"tt leheto"sege van szabalyosan lezarni a
   naploit es altalanossagban veve befejezni mindent, amit eppen
   csinal. Elo"fordulhat azonban, hogy a folyamatok figyelmen kivu:l
   hagyjak a SIGTERM jelzest, ha peldaul eppen egy
   felbeszakithatatlan feladat ko:zepen tartanak.

   A SIGKILL jelzest azonban egyetlen futo program sem hagyhatja
   figyelmen kivu:l. Ez lenne a "Nem erdekel, mivel foglalkozol,
   azonnal hagyd abba!" jelzes. Amikor SIGKILL jelzest ku:ldu:nk egy
   folyamatnak, a FreeBSD leallitja a folyamatot ott es ahol tart
   [4].

   Tovabbi hasznalhato jelzesek: SIGHUP, SIGUSR1 es SIGUSR2. Ezek
   altalanos celu jelzesek, amelyeket az alkalmazasok eltero" modokon
   kezelnek le.

   Tegyu:k fel, hogy megvaltoztattuk a webszerveru:nk beallitasait
   tartalmazo allomanyt -- valamilyen modon szeretnenk tudatni a
   szerverrel, hogy olvassa be ujra a beallitasait. Ezt megtehetju:k
   ugy, hogy leallitjuk es ujrainditjuk a httpd demont, de ezzel
   kiesest okozhatunk a szerver mu"ko:deseben, amit viszont nem
   engedhetu:nk meg. A legto:bb demont ugy keszitettek el, hogy a
   SIGHUP jelzes hatasara olvassa be ujra a beallitasait tartalmazo
   allomanyt. Igy a httpd leallitasa es ujrainditasa helyett
   egyszeru"en elegendo" egy SIGHUP jelzes ku:ldese. Mivel azonban ez
   nem szabvanyositott, a ku:lo:nbo:zo" demonok ezt a jelzest
   to:bbfelekeppen is ertelmezhetik. Ezert a hasznalata elo"tt ennek
   mindenkeppen jarjunk utana a kerdeses demon dokumentaciojaban.

   A jelzeseket a kill(1) paranccsal tudjuk elku:ldeni, ahogy ezt a
   ko:vetkezo" peldaban is lathatjuk.

   Jelzes ku:ldese egy futo programnak

   Ebben a peldaban megmutatjuk, hogyan lehet jelzest ku:ldeni az
   inetd(8) demonnak. Az inetd a beallitasait az /etc/inetd.conf
   allomanyban tarolja, es az inetd a SIGHUP jelzes hatasara kepes
   ujraolvasni ezt.

    1. Keressu:k meg annak a folyamatnak az azonositojat, amelynek a
       jelzest kivanjuk ku:ldeni. Ezt a ps(1) es a grep(1)
       hasznalataval tehetju:k meg. A grep(1) parancs segitsegevel
       mas parancsok kimeneteben tudunk megkeresni egy altalunk
       megadott szo:veget. Ezt a parancsot atlagos felhasznalokent
       futtatjuk, azonban az inetd(8) demont a root birtokolja, ezert
       az ps(1) hasznalata soran meg kell adnunk az ax kapcsolokat
       is.

 % ps -ax | grep inetd
   198  ??  IWs    0:00.00 inetd -wW

       Innen kideru:l, hogy az inetd(8) azonositoja 198.
       Elo"fordulhat, hogy az eredmenyben maga a grep inetd parancs
       is megjelenik. Ez a ps(1) listazasi modszere miatt
       ko:vetkezhet be.

    2. A jelzes elku:ldesere hasznaljuk a kill(1) parancsot. Mivel az
       inetd(8) demont a root felhasznalo futtatja, ehhez elo"szo:r a
       su(1) parancs kiadasaval neku:nk is root felhasznalova
       (rendszeradminisztratorra) kell valnunk.

 % su
 Password:
 # /bin/kill -s HUP 198

       Ahogy az a legto:bb UNIX eseten elfogadott, a sikeres
       vegrehajtas eseten a kill(1) sem valaszol semmit. Amikor
       viszont nem egy sajat programunknak akarunk jelzest ku:ldeni,
       akkor a "kill: PID: Operation not permitted" (a mu"velet nem
       engedelyezett) hibau:zenetet latunk. Ha veletlenu:l
       elgepelju:k volna a futo program azonositojat, akkor a
       ku:ldendo" jelzes nem a megfelelo" folyamatnal fog kiko:tni
       (ami nem eppen jo), vagy ha szerencsenk van, akkor a jelzest
       egy eppen hasznalaton kivu:li azonositora ku:ldtu:k. Az utobbi
       esetben a ko:vetkezo" lathatjuk: "kill: PID: No such process"
       (nincs ilyen folyamat).

         Miert /bin/kill?: A legto:bb parancsertelmezo" beepitetten
         tartalmazza a sajat kill parancsat, tehat ilyenkor
         ko:zvetlenu:l maga a parancsertelmezo" ku:ldi a jelzest, nem
         pedig a /bin/kill programon keresztu:l. Ez gyakran a
         javunkra valhat, azonban a ku:ldheto" jelzesek megadasa
         parancsertelmezo"nkent elterhet. Igy, ahelyett, hogy
         egyenkent ismernu:nk kellene mindegyiket, sokkal egyszeru"bb
         ko:zvetlenu:l a /bin/kill ... parancsot hasznalni.

   A to:bbi jelzes ku:ldese is nagyon hasonlo modon to:rtenik, hiszen
   elegendo" csupan a TERM vagy a KILL behelyettesitese a parancs
   megfelelo" helyere.

     Fontos: A rendszeru:nkben ovatosan banjunk a futo programok
     leallitgatasaval, es legyu:nk ku:lo:no:s tekintettel az 1-es
     azonositoval rendelkezo", specialis feladattal biro init(8)
     folyamatra. A /bin/kill -s KILL 1 parancs kiadasaval ugyanis
     gyorsan le tudjuk allitani a rendszeru:nket. Mielo"tt egy
     kill(1) parancsot lezarnank az Enter billentyu"vel, mindig
     gyo"zo"dju:nk meg rola, hogy valoban tenyleg a jo parametereket
     adtuk meg.

     --------------------------------------------------------------

3.9. Parancsertelmezo"k

   A FreeBSD-ben hetko:znapi munkank legnagyobb reszet a
   parancsertelmezo"knek (shell) nevezett parancssoros felu:leten
   tudjuk elvegezni. A parancsertelmezo" fo" feladata a beerkezo"
   parancsok elfogadasa es vegrehajtatasa. Sok parancsertelmezo"
   ezenfelu:l rendelkezik beepitett funkciokkal is, amelyek olyan
   hetko:znapi feladatokban igyekeznek segiteni, mint peldaul az
   allomanyok kezelese es to:meges elerese regularis kifejezesek
   hasznalataval, a parancssor szerkesztese, parancsok makrozasa es a
   ko:rnyezeti valtozok hasznalata. A FreeBSD alapbol tartalmaz
   nehany parancsertelmezo"t, ilyen peldaul az sh, a Bourne Shell, es
   a tcsh, a tovabbfejlesztett C-shell. Sok mas parancsertelmezo",
   mint peldaul a zsh es bash is elerheto" a FreeBSD
   Portgyu"jtemenyebo"l.

   De melyik parancsertelmezo"t is valasszuk? Ez igazabol izles
   kerdese. Ha inkabb C programozok vagyunk, akkor valoszinu"leg egy
   olyan C-szeru" shelllel tudunk kenyelmesen dolgozni, amilyen
   peldaul a tcsh. Ha viszont egy linuxos rendszert hasznaltunk
   korabban vagy eppen meg soha nem hasznaltunk volna a UNIX
   parancssorat, erdemes a bash-sel megprobalkoznunk. A lenyeg az,
   hogy minden parancsertelmezo"nek vannak olyan egyedi jellemezo"i,
   amiert hasznalatoak vagy eppen nem hasznalatoak a munkankban,
   ezert magunknak kell kivalasztani a neku:nk megfelelo"t.

   A shellek egyik legaltalanosabb jellemzo"je az allomanyok neveinek
   kiegeszitese. Miutan begepelju:k egy parancs vagy allomanynev
   elso" nehany karakteret, a Tab billentyu" lenyomasaval
   megkerhetju:k a parancsertelmezo"t, hogy magatol egeszitse ki
   ("talalja ki") a fennmarado reszt. Nezzu:k erre egy peldat.
   Tegyu:k fel, hogy van ket allomanyunk, izemize es ize.mize, es
   szeretnenk leto:ro:lni az ize.mize nevu"t. Ehhez a ko:vetkezo"t
   kell begepelnu:nk: rm iz[Tab].[Tab].

   Erre a parancsertelmezo" a ko:vetkezo" parancsot irja ki: rm
   ize[SIPOLAS].mize.

   A [SIPOLAS] itt a konzol sipjara vonatkozik, amellyel jelzi, hogy
   nem tudta teljesen kiegesziteni az allomany nevet, mivel egynel
   to:bb is megfelel a megadott alaknak. Az izemize es az ize.mize is
   egyarant az iz elo"taggal kezdo"dik, azonban ebbo"l a
   parancsertelmezo" csak az ize elo"tagot tudta kiko:vetkeztetni. Ha
   most begepelu:nk meg egy . karaktert es ujra megnyomjuk a Tab
   billentyu"t, a parancsertelmezo" ezuttal kepes lesz az allomany
   teljes nevet megallapitani.

   A parancsertelmezo"k masik altalanos jellemzo"je a ko:rnyezeti
   valtozok hasznalata. A ko:rnyezeti valtozok lenyegeben a
   parancsertelmezo" ko:rnyezetehez tarolt nev-ertek parok. Ezt a
   ko:rnyezetet latja minden olyan program, amit a
   parancsertelmezo"bo"l meghivunk, es ezert tartalmazni is szokott
   sok ilyen beallitast. Ime a leggyakoribb ko:rnyezeti valtozok
   felsorolasa es ro:vid leirasa:

   Valtozo                           Leiras                           
   USER     A bejelentkezett felhasznalo neve.                        
   PATH     Vesszo"vel elvalasztott ko:nyvtarak, ahol a               
            parancsertelmezo" a vegrehajthato allomanyokat keresi.    
   DISPLAY  Az aktualisan hasznalt X11 megjelenito" halozati neve,    
            amennyiben letezik ilyen.                                 
   SHELL    A hasznalt parancsertelmezo".                             
   TERM     A felhasznalo altal hasznalt terminal tipusa. Ebbo"l a    
            terminal kepessegeit lehet megallapitani.                 
   TERMCAP  A terminalok adatbazisabol szarmazo, ku:lo:nbo:zo"        
            terminalfunkciokhoz tartozo helyettesito" (escape) kodok. 
   OSTYPE   Az operacios rendszer tipusa, peldaul FreeBSD.            
   MACHTYPE A rendszer alatt futo gep architekturaja.                 
   EDITOR   A felhasznalo altal hasznalt szo:vegszerkeszto".          
   PAGER    A felhasznalo altal lapozasra hasznalt program.           
   MANPATH  Vesszo"vel elvalasztott ko:nyvtarak, ahol a               
            parancsertelmezo" a man oldalakat keresi.                 

   A ko:rnyezeti valtozok beallitasa parancsertelmezo"kent
   valamennyire elter. Peldaul egy C-stilusu parancsertelmezo", mint
   peldaul a tcsh vagy a csh, a setenv paranccsal allitja a
   ko:rnyezeti valtozokat. A Bourne-fele parancsertelmezo"k, mint
   peldaul az sh vagy a bash, az export parancsot hasznaljak a
   ko:rnyezeti valtozok beallitasara. Peldaul a csh vagy a tcsh
   hasznalata soran a ko:vetkezo"keppen tudjuk be- vagy atallitani a
   EDITOR ko:rnyezeti valtozo erteket /usr/local/bin/emacs-re:

 % setenv EDITOR /usr/local/bin/emacs

   Ugyanez a Bourne-fele parancsertelmezo"kben:

 % export EDITOR="/usr/local/bin/emacs"

   A legto:bb parancsertelmezo"ben a nevu:k elo"tt szerepeltetett $
   jel segitsegevel kerhetju:k a ko:rnyezeti valtozok ertekenek
   behelyettesiteset a parancssorba. Ennek megfelelo"en az echo $TERM
   parancs kiiratja a TERM valtozo aktualis erteket, mivel ebbe a
   parancsertelmezo" mar az echo meghivasa elo"tt behelyettesiti a
   TERM erteket.

   A parancsertelmezo"k szamos specialis karaktert, un.
   metakarakteret az adatok ku:lo:nleges reprezentaciojakent
   kezelnek. Ko:ztu:k a leggyakrabban hasznalt a *, amely
   tetszo"leges szamu karaktert helyettesit egy allomany neveben. Az
   ilyen metakarakterek segitsegevel tudunk egyszerre to:bb allomanyt
   is megnevezni. Peldaul ha begepelju:k az echo * parancsot, akkor
   majdnem ugyanazt kapjuk eredmenyu:l, mintha az ls parancsot adtuk
   volna ki, hiszen a parancsertelmezo" ilyenkor veszi az o:sszes *
   metakarakterre illeszkedo" allomanyt, es a kiiratasukhoz pedig
   rendre behelyettesiti ezeket a parancssorba az echo
   parameterekent.

   Ha nem szeretnenk, hogy a parancsertelmezo" ertelmezze a specialis
   karaktereket, akkor egy "backslash" (visszaper) (\) karaktert
   eleju:k teve mindezt megakadalyozhatjuk. Az echo $TERM parancs
   ugyebar kiiratja a terminalra vonatkozo ko:rnyezeti valtozo
   beallitasat, azonban a echo \$TERM valtozatlanul kiirja a $TERM
   szo:veget.

     --------------------------------------------------------------

  3.9.1. A parancsertelmezo"nk megvaltoztatasa

   A parancsertelmezo"nk legegyszeru"bben a chsh parancs
   hasznalataval valtoztathato meg. A chsh kiadasa utan elinditja az
   EDITOR ko:rnyezeti valtozonak megfelelo" szo:vegszerkeszto"t, ha
   nem lenne ilyen, akkor alapertelmezes szerint a vi hivodik meg. Az
   igy megnyitott allomanyban valtoztassuk meg kedvu:nk szerint a
   "Shell: " kezdetu" sort.

   A chsh parancsnak megadhatjuk az -s opciot is, amin keresztu:l
   szo:vegszerkeszto" hasznalata nelku:l be tudjuk allitani a
   parancsertelmezo"t. Peldaul ha a parancsertelmezo"nket a bash-re
   akarjuk lecserelni, akkor ezt irjuk be:

 % chsh -s /usr/local/bin/bash

     Megjegyzes: A hasznalni kivant parancsertelmezo"nek szerepelnie
     kell az /etc/shells allomanyban. Ha a kivalasztott
     parancsertelmezo"t a Portgyu"jtemenybo"l telepitettu:k fel,
     akkor az mar minden bizonnyal bekeru:lt oda. Ha viszont sajat
     magunk raktuk volna fel, akkor ide is fel kell vennu:nk.

     Peldaul ha a bash-t manualisan telepitettu:k es masoltuk a
     /usr/local/bin ko:nyvtarba, akkor igy kell eljarnunk:

 # echo "/usr/local/bin/bash" >> /etc/shells

     Majd probalkozzunk ujra a chsh paranccsal.

     --------------------------------------------------------------

3.10. Szo:vegszerkeszto"k

   A FreeBSD beallitasanak nagy resze szo:veges allomanyok
   szerkesztesevel to:rtenik. Emiatt sosem art legalabb egy
   szo:vegszerkeszto"t ismernu:nk. A FreeBSD alaprendszereben,
   valamint a Portgyu"jtemenyben is talalhatunk nehanyat belo"lu:k.

   A legegyszeru"bben megtanulhato es legko:nnyedebb
   szo:vegszerkeszto"t ee-nek, avagy "easy editornak" hivjak. Az ee
   inditasahoz irjuk be az ee allomanynev parancsot, ahol az
   allomanynev lesz a szerkesztendo" allomany neve. Igy peldaul az
   /etc/rc.conf allomany szerkesztesehez gepelju:k be az ee
   /etc/rc.conf parancsot. Miutan elindult az ee, az o:sszes
   szerkeszteshez hasznalhato parancsa megjelenik a kepernyo" felso"
   reszeben. Itt a "kalap" (^) karakter a Ctrl billentyu" lenyomasara
   utal, igy tehat a ^e jelo:les a Ctrl+e billentyu"kombinaciot
   jelenti. Ha ki akarunk lepni az ee-bo"l, nyomjuk le az Esc
   billentyu"t, majd a felbukkano menu:bo"l valasszuk a szerkeszto"
   elhagyasat (leave editor). Ha az allomanyt modositottuk, kilepes
   elo"tt meg a szo:vegszerkeszto" rakerdez, hogy mentse-e a
   valtoztatasainkat.

   A FreeBSD nagyobb tudasu szo:vegszerkeszto"ket, mint peldaul a
   vi-t, is tartalmaz az alaprendszer reszekent, miko:zben a to:bbi,
   mint peldaul az Emacs vagy a vim a Portgyu"jtemeny reszekent
   (editors/emacs es editors/vim) erheto" el. Ezek a szerkeszto"k
   sokkal to:bb leheto"seget es ero"t kepviselnek, amiert cserebe
   viszont valamivel nehezebb megtanulni a hasznalatukat. Ha viszont
   rengeteg szo:veget akarunk majd szerkeszteni, akkor egy vim vagy
   Emacs hasznalatanak megismeresevel sok ido"t megsporolhatunk.

   Szamos alkalmazas, amely allomanyokat akar modositani vagy
   szo:veges bemenetre van szu:ksege, automatikusan
   szo:vegszerkeszto"t nyit meg. Ezt az EDITOR ko:rnyezeti valtozo
   beallitasaval tudjuk meghatarozni. Erro"l reszletesebben a
   parancsertelmezo"knel olvashatunk.

     --------------------------------------------------------------

3.11. Eszko:zo:k es eszko:zleirok

   Az eszko:z elnevezest leginkabb a rendszerben folyo, hardverrel
   kapcsolatos tevekenysegek kapcsan hasznaljak lemezekre,
   nyomtatokra, grafikus kartyakra es billentyu"zetekre. A FreeBSD
   indulasa soran to:bbnyire azt lathatjuk, hogy milyen eszko:zo:ket
   sikeru:lt felismernie. Ezeket a rendszerinditaskor megjeleno"
   u:zeneteket a /var/run/dmesg.boot allomanyban nezhetju:k meg ujra.

   Peldaul a acd0 az elso" IDE CD-meghajtot, mig a kbd0 a
   billentyu"zetet kepviseli.

   A UNIX operacios rendszerben a legto:bb eszko:zt a /dev
   ko:nyvtarban talalhato, eszko:zleiroknak (device node) nevezett
   specialis allomanyokon keresztu:l erhetju:k el.

     --------------------------------------------------------------

  3.11.1. Eszko:zleirok letrehozasa

   Amikor egy ujfajta eszko:zt adunk hozza a rendszerhez vagy csak
   annak egy uj peldanyat, mindig letre kell hoznunk hozza egy uj
   eszko:zleirot.

     --------------------------------------------------------------

    3.11.1.1. DEVFS (DEVice File System, Eszko:z-allomanyrendszer)

   Az eszko:zo:ket tartalmazo allomanyrendszer, avagy DEVFS, ad
   hozzaferest a rendszermag altal ismert eszko:zo:k neveihez a
   globalis allomanyrendszer nevein keresztu:l. Igy ahelyett, hogy
   magunknak kellene letrehoznunk es modositanunk az eszko:zleirokat,
   a DEVFS erre a celra fenntart egy ku:lo:n allomanyrendszert.

   A devfs(5) man oldalon olvashatunk bo"vebben erro"l.

     --------------------------------------------------------------

3.12. Binaris formatumok

   Annak megertesehez, hogy a FreeBSD miert az elf(5) formatumot
   hasznalja, elo"szo:r is tisztaban kell lennu:nk a UNIX tipusu
   rendszerekben hasznalt vegrehajthato allomanyok harom "uralkodo"
   formatumaval:

     * a.out(5)

       A lego"sibb es egyben a "klasszikus" UNIX-os targykodformatum.
       Egy to:mo:r es ro:vidke fejlecet hasznal, aminek az elejen a
       formatum leirasara szolgalo "bu"vo:s szam" talalhato (erro"l
       bo"vebben lasd a.out(5)). Harom beto:lto:tt szegmenst
       tartalmaz: .text, .data es .bss, valamint egy szimbolumokat es
       karakterlancokat tarolo tablat.

     * COFF

       Az SVR3 targykodformatuma. A fejlec itt mar tartalmaz egy
       table nevu" szegmenst is, tehat a .text, .data es .bss
       szegmensekhez hasonloan ebbo"l is to:bbet tud tarolni.

     * elf(5)

       A COFF utan ko:vetkezo" formatum, amelyben to:bb szegmens is
       megtalalhato, valamint letezik 32 bites es 64 bites
       valtozatban is. Egyetlen hatranya van: az ELF tervezese soran
       rendszerarchitekturankent csupan egyetlen ABI-t (binaris
       alkalmazoi felu:letet) felteteleztek. Ez azonban megleheto"sen
       helytelen, mivel meg a kereskedelmi SYSV vilagaban (ahol mar
       legalabb harom ABI talalhato: SVR4, Solaris es SCO) sem allja
       meg a helyet.

       A FreeBSD ezt a problemat a megbelyegzes (branding)
       segitsegevel probalja megoldani, aminek reven el tudunk latni
       egy ismert ELF allomanyt a futtatasahoz megfelelo" ABI-ra
       vonatkozo informaciokkal. Erro"l reszletesebben a brandelf(1)
       oldalan tajekozodhatunk.

   A FreeBSD a "klasszikusok" taborabol indult, ezert kezdetben az
   a.out(5) formatumot hasznalta, mivel ez a technologia a BSD
   kiadasok szamos generaciojaban megmeretettett es bevalt, egeszen a
   3.X ag elindulasaig. Habar mar joval elo"tte lehetett forditani es
   futtatni nativ ELF binarisokat (es rendszermagokat) a FreeBSD
   rendszereken, a FreeBSD kezdetben ockodott valtani az
   alapertelmezes szerinti ELF formatumra. De vajon miert? Nos, a
   linuxos tabor mar megtette a maga fajdalmas valtasat az ELF
   formatummal kapcsolatban, es gyorsan maguk mo:go:tt hagytak a
   a.out formatumot a rugalmatlan, ugrotablakra alapozott oszott
   ko:nyvtar-kezelesi mechanizmusai miatt, amivel viszont
   megnehezitettek a ku:lo:nbo:zo" fejleszto"k es gyartok szamara az
   osztott ko:nyvtarak letrehozasat. Mivel az ELF formatumhoz
   rendelkezesre allo eszko:zo:k megoldast kinaltak az osztott
   ko:nyvtarak gondjaira, es mivel altalanosan elfogadtak "a jo:vo"be
   vezeto" utkent", a FreeBSD is felvallalta az atallassal
   kapcsolatos ko:ltsegeket es vegrehajtotta azt. A FreeBSD az
   osztott ko:nyvtarakat leginkabb a Sun SunOS(TM) rendszerehez
   hasonloan kezeli, ami egy nagyon ko:nnyen hasznalhato megoldas.

   De miert van ilyen sok ku:lo:nbo:zo" formatum?

   A ko:do:s es so:tet multban egyszeru"bb hardverek voltak. Ezek az
   egyszeru" hardverek egyszeru", kicsi rendszereket tamogattak. Az
   a.out to:keletesen megfelelo" volt egy ilyen egyszeru" rendszer
   (egy PDP-11) binarisainak tarolasara. Ahogy az emberek nekilattak
   atu:ltetni erro"l az egyszeru" rendszerro"l a UNIX-ot mas
   rendszerekre, az a.out formatumot tovabbra is megtartottak, mivel
   a UNIX kezdeti, Motorola 68k-ra, VAXenre keszitett atirataihoz is
   elegendo" volt.

   Ezutan nehany eles elmeju" hardvermerno:k kitalalta, hogy ha ra
   tudnak kenyszeriteni a programokat egy-ket u:gyetlen tru:kkre,
   akkor a terveken meg tudnanak sporolni nehany logikai kaput es
   ezzel processzor is gyorsabban tudna futni. Miko:zben az a.out
   formatumot ilyen hardverre (amit manapsag RISC-nek hivnak) is
   szerettek volna athozni, kideru:lt, hogy ebben az esetben szinte
   hasznalhatatlan. Ezert az a.out formatum altal felkinaltnal
   nagyobb teljesitmeny elerese erdekeben nekilattak szamos mas
   formatumot is kidolgozni. Ekkor jo:ttek letre a COFF, ECOFF es mas
   hasonlo formatumok, amelyek elo"bb-utobb korlatokba u:tko:ztek meg
   mielo"tt a to:rtenelem megallapodott volna az ELF formatumnal.

   Raadasul a programok meretei egyre inkabb kezdtek no"ni, miko:zben
   a lemezek (valamint a fizikai memoria) tovabbra is viszonylag
   kicsik maradtak, ezert megszu:letett az osztott ko:nyvtar o:tlete
   es a virtualis memoriat kezelo" alrendszer is sokat finomodott.
   Mivel ezek a ku:lo:nbo:zo" fejlesztesek a a.out formatumra
   epu:ltek, annak hasznalatosaga a beleto:mo:tt modositasok szamaval
   egyu:tt romlott. Emellett az emberek meg szerettek volna
   beto:lteni ku:lo:nfele dolgokat futasi ido"ben dinamikusan, vagy
   eppen a memoria es a lapozoallomany megsporolasahoz kipucolni a
   programjaik egyes reszeit az inicializalo kodreszletek lefutasa
   utan. A programozasi nyelvek is fejlo"dtek, es az emberek a
   fo"program futasa elo"tt is akartak kodot futtatni. Az a.out
   formatum rengeteg apro foltozason esett keresztu:l, amelyek egy
   ideig meg tudtak is tartani magukat. Azonban egy ido" utan mar az
   a.out formatum egyre no:vekvo" teljesitmenycso:kkenes nelku:l mar
   nem volt kepes allni a sarat. Habar az ELF megszu"ntette a
   fennallo problemak jelento"s reszet, egyuttal megnehezitette egy
   alapveto"en mu"ko:do" rendszer levaltasat. Ezert az ELF
   formatumnak meg kellett varnia azt a pillanatot, amikorra az a.out
   hasznalata mar kenyelmetlenne valt.

   Azonban ahogy mult az ido", az eszko:zo:kbo"l, amelyekbo"l a
   FreeBSD a forditasahoz szu:kseges eszko:zo:ket szarmaztatta
   (ku:lo:no:sen az assembler es a beto:lto"),letrejo:tt ket
   parhuzamos fejlesztesi fa. A FreeBSD-fa kiegeszu:lt az osztott
   ko:nyvtarak tamogatasaval es hibakat javitott, miko:zben a GNU-fa
   alkotoi, akik eredetileg keszitettek ezeket a programokat,
   ujrairtak az eszko:zeiket es a keresztforditashoz egyszeru"bb
   tamogatast keszitettek, cserelheto"ve tettek a ku:lo:nbo:zo"
   formatumokat es igy tovabb. Sokan akartak FreeBSD-re
   keresztforditani, azonban nem volt szerencseju:k, mert a FreeBSD
   regebbi forrasait az as es ld mar nem emesztette meg. Az uj GNU
   eszko:ztar (a binutils) viszont ismeri mar a keresztforditast, az
   ELF formatumot, az oszott ko:nyvtarakat, a C++ kiterjeszteseit
   stb. Ido"ko:zben egyre to:bb gyarto ELF formatumu binarisokat
   adott ki, es jo erzes volt ezeket FreeBSD-n is futtatni.

   Az ELF sokkal kifejezo"bb az a.out formatumnal es joval to:bb
   bo"vitesi leheto"seget enged az alaprendszerben. Az ELF
   formatumhoz tartozo eszko:zo:t jobban karbantartjak es tamogatja a
   keresztforditast, ami viszont sokaknak fontos. Az ELF talan
   nemileg lassabb, mint az a.out, azonban ez nehezen merheto" le.
   Szamos reszletben elternek ugyan, peldaul hogyan kepeznek le
   lapokat, hogyan kezelik az inicializalo kodot stb., de ezek egyike
   sem igazan fontos. Ido"vel az a.out tamogatasa ki fog keru:lni a
   GENERIC rendszermagbol, es vegu:l majd teljesen eltavolitasra
   keru:l, ahogy a regi a.out formatumu programok szepen lassan
   kifutnak.

     --------------------------------------------------------------

3.13. Bo"vebben olvashatunk...

  3.13.1. Man oldalak

   A FreeBSD legatfogobb dokumentacioja a benne talalhato man oldalak
   o:sszesege. A rendszerben talalhato szinte majdnem mindegyik
   programhoz letezik egy ro:vid hasznalati utmutato, amely bemutatja
   az adott program alapveto" mu"ko:deset es a ku:lo:nbo:zo"
   beallitasait. Ezek a leirasok a man parancs segitsegevel
   jelenitheto"ek meg. A man parancs hasznalata egyszeru":

 % man parancs

   ahol a parancs a megismerni kivant parancsra utal. Peldaul ha az
   ls parancsrol szeretnenk to:bbet megtudni, irjuk be:

 % man ls

   Az elerheto" hasznalati utmutatokat a ko:vetkezo" szamozott
   szakaszokra osztottak:

    1. Felhasznaloi parancsok

    2. Rendszerhivasok es hibakodok

    3. A C fu:ggvenyko:nyvtar fu:ggvenyei

    4. Eszko:zmeghajtok

    5. Allomanyformatumok

    6. Jatekok es egyeb szorakoztato alkalmazasok

    7. Egyeb informaciok

    8. Rendszerkarbantartasi es -mu"ko:dtetesi parancsok

    9. Rendszermagfejleszto"k szamara

   Bizonyos esetekben ugyanaz a tema az utmutatok to:bb szakaszaban
   is elerheto". Peldaul letezik chmod felhasznaloi parancs es a
   chmod() rendszerhivas. Ilyenkor a man parancsnak meg tudjuk adni
   pontosan, melyik szakaszra is vagyunk kivancsiak:

 % man 1 chmod

   Ennek hatasara a chmod felhasznaloi parancshoz tartozo oldal
   jelenik meg. Irott formaban a hasznalati utmutatok ku:lo:nbo:zo"
   szakaszaira hagyomanyosan a nev utan zarojelbe tett szammal
   hivatkoznak, igy a chmod(1) a chmod felhasznaloi parancs es a
   chmod(2) a rendszerhivas.

   Ez a modszer remeku:l mu"ko:dik abban az esetben, amikor ismerju:k
   a parancs nevet, azonban mit tegyu:nk akkor, ha nem is emlekszu:nk
   a nevere? A man parancs a -k segitsegevel parameterezheto" ugy is,
   hogy a parancsok leirasai ko:zo:tt keressen valamilyen kulcsszo
   menten:

 % man -k mail

   Ezzel a paranccsal megkapjuk azon parancsok listajat, amelyek
   leirasaban szerepel a "mail" kulcsszo. Ez egyebkent mu"ko:deseben
   teljesen megegyezik a apropos paranccsal.

   Szoval szeretnenk megtudni, hogy a /usr/bin ko:nyvtarban levo"
   parancsok pontosan mit is csinalnak? Ehhez irjuk be:

 % cd /usr/bin
 % man -f *

   vagy

 % cd /usr/bin
 % whatis *

   ami ugyanezt teszi.

     --------------------------------------------------------------

  3.13.2. A GNU info allomanyok

   A FreeBSD-ben megtalalhato a Szabad Szofver Alapitvany (Free
   Software Foundation, FSF) altal keszitett szamos alkalmazas. Ezek
   a programok a szokvanyos man oldalakon kivu:l meg altalaban
   tartalmaznak egy infonak nevezett, sokkal reszletesebb hipertext
   alapu leirast is, amelyeket az info paranccsal, vagy ha van fenn
   emacs, akkor annak az info modjaban tudjuk megjeleniteni.

   Az info(1) parancs hasznalatahoz ennyit kell beirnunk:

 % info

   Itt a h lenyomasaval kapunk egy ro:vid bemutatkozast. A parancsok
   ro:vid listajat a ? billentyu" hozza elo".

     --------------------------------------------------------------

         Fejezet 4. Alkalmazasok telepitese: csomagok es portok

4.1. Attekintes

   A FreeBSD rendszereszko:zo:k gazdag gyu"jtemenyevel erkezik az
   alaprendszer reszekent. Azonban a ku:lso" alkalmazasok
   telepitesehez rengeteg teendo"t kell elvegeznu:nk. A feladat
   elvegzesere ezert a FreeBSD ket, egymast kiegeszito" technologiat
   kinal fel: a FreeBSD Portgyu"jtemenyt (telepites forraskodbol) es
   a csomagokat (telepites elo"re elkeszitett binaris csomagokbol).
   Mind a ket modszerrel fel tudjuk telepiteni a kedvenc
   alkalmazasunk legujabb verziojat lokalisan vagy egyenesen a
   halozatrol.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan telepitsu:nk ku:lso" fejlesztesu" binaris
       szoftvercsomagokat;

     * hogyan forditsunk le a forrasukbol ku:lso" fejlesztesu"
       szoftvereket a Portgyu"jtemeny segitsegevel;

     * hogyan tavolitsunk el korabban mar telepitett csomagokat es
       portokat;

     * hogyan biraljuk felu:l a Portgyu"jtemeny altal hasznalt
       alapertelmezett ertekeket;

     * hogyan keressu:k meg a megfelelo" szoftvercsomagokat;

     * hogyan frissitsu:k a telepitett alkalmazasokat.

     --------------------------------------------------------------

4.2. Az alkalmazasok telepitesenek o:sszefoglalasa

   Ha korabban mar hasznaltunk UNIX rendszereket, valoszinu"leg
   ismerju:k a ku:lso" alkalmazasok telepitesenek jellemezo" menetet:

    1. To:ltsu:k le a szoftvert, amelyet vagy forraskod vagy pedig
       binaris formatumban erhetu:nk el.

    2. Bontsuk ki az alkalmazas leto:lto:tt valtozatat (ez altalaban
       a compress(1), gzip(1) vagy a bzip2(1) altal to:mo:ritett tar
       allomany).

    3. Keressu:k meg dokumentaciot (to:bbnyire az INSTALL vagy a
       README allomanyban talalhato, vagy a doc/ alko:nyvtarban) es
       olvassuk el benne, hogyan tudjuk telepiteni a szoftvert.

    4. Ha a szoftver forrasat to:lto:ttu:k le, forditsuk le.
       Elkepzelheto", hogy ennek soran szerkesztenu:nk kell a
       Makefile allomanyt vagy lefuttatnunk a configure szkriptet,
       illetve mas lepeseket is el kell vegeznu:nk.

    5. Probaljuk a ki szoftvert, majd telepitsu:k.

   Ez annak a forgatoko:nyve, amikor minden hiba nelku:l lezajlik.
   Megeshet azonban, ha olyan szoftvert telepitu:nk, amelyet nem
   kifejezetten a FreeBSD-hez terveztek, akkor javitanunk kell a
   forraskodban a szoftver megfelelo" mu"ko:desehez.

   Ha sikeru:l mu"ko:desre birni, folytathatjuk FreeBSD-n a szoftver
   telepiteset a "megszokott" modon. Habar a FreeBSD erre a celra ket
   leheto"seget is felkinal, amivel rengeteg ero"feszitesto"l
   megkimelhet minket: ezek a csomagok es a portok. Az iras
   pillanataban ko:zel 20 000 ku:lso" alkalmazas erheto" el ilyen
   formaban.

   Egy adott alkalmazas eseten a hozzatartozo FreeBSD-s csomag
   mindo:ssze egyetlen leto:ltendo" allomanyt takar. A csomag
   tartalmazza az alkalmazas telepitesehez szu:kseges o:sszes parancs
   elo"re leforditott valtoztatat, ugyanigy magat a dokumentaciot is.
   A leto:lto:tt csomagokat a FreeBSD csomagkezelo" parancsaival
   vehetju:k hasznalatba: ezek a pkg_add(1), pkg_delete(1),
   pkg_info(1) es igy tovabb. Az uj alkalmazasok telepitese ennek
   ko:szo:nheto"en egyetlen paranccsal elvegezheto".

   Egy alkalmazas FreeBSD-s portja mo:go:tt lenyegeben allomanyok
   gyu"jtemenye all, amelyek abban segitenek, hogy automatikusan
   tudjunk telepiteni a forraskod felhasznalasaval.

   Ne felejtsu:k el, hogy normalis esetben szamos lepcso"t vegig kell
   jarnunk egy program sajatkezu" leforditasahoz (leto:ltes,
   kito:mo:rites, javitgatas, forditas, telepites). A portot alkoto
   allomanyok tartalmazzak az o:sszes olyan szu:kseges informaciot,
   amelyek atengedik ezt a feladatot a rendszernek. Kiadunk nehany
   egyszeru" parancsot es az alkalmazas magatol leto:lto"dik,
   kito:mo:rito"dik, modositja a forraskodjat, lefordul es telepu:l.

   Valojaban a portrendszer hasznalhato olyan csomagok letrehozasara
   is, amelyeket keso"bb a pkg_add es to:bbi hozza hasonlo, hamarosan
   reszletesebben is bemutatando csomagkezelo" paranccsal is kezelni
   tudunk.

   A csomagok es a portok egyarant kepesek fu:ggo"segeket kezelni.
   Tegyu:k fel, hogy egy olyan alkalmazast akarunk telepiteni, amely
   egy adott fu:ggvenyko:nyvtar megleteto"l fu:gg a rendszeren. Az
   alkalmazas es a ko:nyvtar is elerheto" FreeBSD portkent es
   csomagkent. Akar a pkg_add parancsot, akar a portrendszert
   hasznaljuk az alkalmazas hozzaadasara, mind a ketto" eszre fogja
   venni, hogy a szu:kseges ko:nyvtart meg nem telepitettu:k, ezert
   elo"szo:r azt fogja automatikusan telepiteni.

   Tudvan, hogy a ket emlitett megoldas szinte teljesen egyenerteku",
   felmeru:lhet a kerdes: a FreeBSD megis miert rendelkezik
   mindketto"vel? A csomagoknak es a portoknak is megvannak a maguk
   elo"nyei, es hogy a ketto" ko:zu:l melyiket hasznaljuk, csak az
   egyeni izlesu:nko:n mulik.

   A csomagok hasznalatanak elo"nyei

     * Egy csomag altalaban kisebb, mint az alkalmazas forraskodjat
       tartalmazo to:mo:ritett tar allomany.

     * A csomagokat nem kell forditani. Nagyobb alkalmazasok, mint
       peldaul a Mozilla, KDE vagy GNOME eseten ez kulcsfontossagu
       lehet, fo"leg abban az esetben, ha a rendszeru:nk ehhez nem
       elegge gyors.

     * A csomagok hasznalata nem varja el to"lu:nk, hogy behatobban
       ismerju:k mikent is kell FreeBSD-n szoftvereket leforditani.

   A portok hasznalatanak elo"nyei

     * A csomagokat altalanos esetben igen ovatos beallitasokkal
       keszitik el, hiszen a leheto" legto:bb rendszeren
       mu"ko:do"kepesnek kell lenniu:k. Ha viszont portbol
       telepitu:nk, nyugodtan hangolhatjuk ugy a beallitasokat, hogy
       (peldaul) a Pentium 4 vagy az Athlon processzoroknak kedvezo"
       kodot hozzanak letre.

     * Bizonyos alkalmazasok forditas idejen allitando beallitasokkal
       rendelkeznek arrol, hogy mire lesznek kepesek es mire nem.
       Peldaul az Apache beepitett konfiguracios opciok szeles
       kellektaraval rendelkezik. Amikor viszont portbol hozzuk
       letre, nem kell elfogadnunk ezek alapertelmezett ertekeit,
       hanem a sajat igenyeinknek megfelelo"en atallithatjuk ezeket.

       Egyes esetekben to:bb ku:lo:nfele beallitast tu:kro:zo" csomag
       is letezhet ugyanahhoz az alkalmazashoz. Peldaul a Ghostscript
       elerheto" ghostscript es ghostscript-nox11 csomagkent is attol
       fu:ggo"en, hogy telepitettu:k-e az X11 szervert. Ez
       termeszetesen egy megleheto"sen durva kijatszasa a
       csomagrendszernek, es gyorsan lehetetlenne is valik a
       hasznalata, ha az adott alkalmazas egy-ket forditasi ideju"
       beallitasnal to:bbel rendelkezik.

     * Nehany szoftver licencelese tiltja a binaris terjesztest.
       Ezert ezek a szoftverek kizarolag csak forraskod formajaban
       tovabbithatoak.

     * Nehanyan nem biznak meg a binaris verziokban. Ha latjuk a
       forraskodot is, akkor (elmeletben) at tudjuk nezni, es mi
       magunk is megkereshetju:k a benne lappango hibakat.

     * Ha vannak sajat javitasaink, csak a forraskod birtokaban
       tudjuk ezeket felhasznalni.

     * Sokan szeretik, ha egyszeru"en csak "ott van" a szoftverek
       forraskodja. Ha eppen unatkoznak, beleju:k tudnak nezni,
       o:tleteket es kodot tudnak belo"lu:k meriteni (persze csak
       akkor, ha ezt a licenc megengedi), vagy tovabb tudjak ezeket
       fejleszteni, orvosolni tudjak a hibaikat stb.

   A portok frissitesero"l a FreeBSD ports levelezesi lista es a
   FreeBSD ports bugs levelezesi lista valamelyikero"l szerezhetu:nk
   naprakesz informaciokat.

     Figyelem: Mielo"tt barmelyik alkalmazast is telepitenenk,
     erdemes meglatogatnunk az http://vuxml.freebsd.org oldalt, ahol
     a hozzatartozo ismert biztonsagi problemakrol olvashatunk.

     Telepithetju:k a ports-mgmt/portaudit programot is, amely
     automatikusan elleno"rzi a telepitett alkalmazasok ismert
     sebezheto"segeit. Ez az elleno"rzes egyebkent megejtheto" minden
     port leforditasa elo"tt is. Ezalatt a portaudit -F -a parancs
     kiadasaval elleno"rizhetju:k utolag a telepitett csomagokat.

   A fejezet fennmarado reszeben megmutatjuk, hogyan hasznaljuk
   FreeBSD-ben a csomagokat es portokat ku:lso" alkalmazasok
   telepitesere es karbantartasara.

     --------------------------------------------------------------

4.3. A szamunkra szu:kseges alkalmazasok felkutatasa

   Mielo"tt telepitenenk barmilyen alkalmazast, tudnunk kell, hogyan
   is nevezik.

   A FreeBSD-hez elerheto" alkalmazasok listaja folyamatosan
   no:vekszik. Szerencsere szamos modja van annak, hogy utanajarjunk
   a keresett szoftvernek:

     * A FreeBSD honlapjan talalhatunk egy rendszeresen frissu:lo"
       listat az o:sszes elerheto" alkalmazasrol, a
       http://www.FreeBSD.org/ports/ cimen. Itt a portok
       ku:lo:nbo:zo" kategoriakba sorolva talalhatoak meg, ahol nev
       szerint megkereshetju:k az alkalmazast (amennyiben ismerju:k),
       vagy vegigbo:ngeszhetju:k az adott kategoriaban elerheto"
       alkalmazasokat is.

     * Dan Langlille a http://www.FreshPorts.org/ cimen karbantartja
       a FreshPorts nevu" oldalt. Ezen az oldalon folyamatosan nyomon
       lehet ko:vetni a Portgyu"jtemenyben megtalalhato alkalmazasok
       valtozasait, leheto"ve teve, hogy egy vagy to:bb portot is
       "figyelju:nk", vagy e-mailt ku:ldju:nk a frissitesu:kro"l.

     * Amennyiben nem ismerju:k a keresett alkalmazas nevet,
       probaljuk meg felkutatni a FreshMeaten
       (http://www.freshmeat.net/) vagy hozza hasonlo oldalakon, majd
       nezzu:k a FreeBSD honlapjan, hogy az adott alkalmazast
       portoltak-e mar a rendszerre.

     * Ha pontosan ismerju:k a port nevet, es csak a kategoriajat
       kellene megkeresnu:nk, hasznaljuk a whereis(1) parancsot.
       Egyszeru"en csak adjuk ki a whereis nev parancsot, ahol az nev
       a telepitendo" program neve. Ha sikeru:lt megtalalni,
       reszletes informaciot kapunk arrol, hogy hol talalhato,
       valahogy igy:

 # whereis lsof
 lsof: /usr/ports/sysutils/lsof

       A fenti peldaban megtudhatjuk, hogy az lsof parancs a
       /usr/ports/sysutils/lsof ko:nyvtarban talalhato.

     * Vagy egy egyszeru" echo(1) paranccsal is megkereshetju:k a
       portfaban a portokat. Mint peldaul:

 # echo /usr/ports/*/*lsof*
 /usr/ports/sysutils/lsof

       Ez a modszer a /usr/ports/distfiles ko:nyvtarba leto:lto:tt
       o:sszes illeszkedo" allomanyt is kilistazza.

     * Egy masik leheto"seg egy adott port megtalalasara, ha a
       Portgyu"jtemeny beepitett keresesi mechanizmusat hasznaljuk.
       Ennek hasznalatahoz a /usr/ports ko:nyvtarban kell lennu:nk.
       Miutan beleptu:nk ide, futtassuk le a make search
       name=programnev parancsot, ahol a programnev a keresendo"
       program neve. Peldaul, ha az lsof programot keressu:k:

 # cd /usr/ports
 # make search name=lsof
 Port:   lsof-4.56.4
 Path:   /usr/ports/sysutils/lsof
 Info:   Lists information about open files (similar to fstat(1))
 Maint:  obrien@FreeBSD.org
 Index:  sysutils
 B-deps:
 R-deps:

       A kereses eredmenyeben leginkabb a "Path:" kezdetu" sorra kell
       odafigyelnu:nk, mivel ez arulja el, hol is talalhatjuk meg a
       portot. Az itt szereplo" to:bbi informacio nem szu:kseges a
       port telepitesehez, ezert azokkal itt most nem foglalkozunk.

       Melyebb keresesekhez hasznalhatjuk a make search key=szo:veg
       parancsot is, ahol a szo:veg a keresendo" szo:veg(reszlet)
       lesz. Ezt a rendszer keresni fogja a portok neveiben,
       megjegyzesekben, leirasokban es fu:ggo"segekben. Amikor nem
       ismerju:k a keresett program nevet, ez olyan portok keresesere
       alkalmas, amelyek egy adott temahoz kapcsolodnak.

       A fenti esetek mindegyikeben a kereses nem ku:lo:nbo:zteti meg
       a kis- es nagybetu"ket. Tehat a "LSOF" keresese ugyanazt az
       eredmenyt adja, mint az "lsof" eseten.

     --------------------------------------------------------------

4.4. A csomagrendszer hasznalata

   Irta: Chern Lee.

   FreeBSD alatt to:bb ku:lo:nbo:zo" modon tudunk csomagokat
   hasznalni:

     * A sysinstall hasznalatan keresztu:l a futo rendszeren tudjuk
       megnezni a telepitett csomagokat, tudunk vele csomagokat
       telepiteni vagy to:ro:lni. Ezzel reszletesebben a 2.10.11
       Szakasz foglalkozik.

     * A szakasz tovabbi reszeben ismertetett egyeb parancssoros
       csomagkezelo" segedprogramok.

     --------------------------------------------------------------

  4.4.1. Csomagok telepitese

   A pkg_add(1) segedprogram segitsegevel telepithetu:nk FreeBSD-hez
   keszu:lt szoftvercsomagokat lokalisan vagy a halozaton levo" egyik
   szerveren megtalalhato allomanyokbol:

   Pelda 4-1. Csomagok leto:ltese manualisan es telepitese lokalisan

 # ftp -a ftp2.FreeBSD.org
 Connected to ftp2.FreeBSD.org.
 220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
 331 Guest login ok, send your email address as password.
 230-
 230-     This machine is in Vienna, VA, USA, hosted by Verio.
 230-         Questions? E-mail freebsd@vienna.verio.net.
 230-
 230-
 230 Guest login ok, access restrictions apply.
 Remote system type is UNIX.
 Using binary mode to transfer files.
 ftp> cd /pub/FreeBSD/ports/packages/sysutils/
 250 CWD command successful.
 ftp> get lsof-4.56.4.tgz
 local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
 200 PORT command successful.
 150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
 100% |**************************************************| 92375       00:00 ETA
 226 Transfer complete.
 92375 bytes received in 5.60 seconds (16.11 KB/s)
 ftp> exit
 # pkg_add lsof-4.56.4.tgz

   Ha nincsenek egyaltalan helyben csomagjaink (peldaul egy FreeBSD
   CD-keszletben), akkor a legjobban ugy jarunk, ha a hasznaljuk a
   pkg_add(1) -r kapcsolojat. Ennek hatasara a segedprogram
   o:nmagatol meghatarozza a szu:kseges allomanyformatumot es
   verziot, majd FTP-n keresztu:l leto:lti es telepiti a csomagot.

 # pkg_add -r lsof

   Az imenti peldaban a program mindenfele tovabbi beavatkozas
   nelku:l leto:lti a megfelelo" csomagot es felteszi. Ha a ko:zponti
   helyett egy masik szervert szeretnenk hasznalni, felu:l kell
   biralnunk az alapertelmezett beallitasokat es igenyeinknek
   megfelelo"en be kell allitanunk a PACKAGESITE ko:rnyezeti valtozo
   erteket. A pkg_add(1) a fetch(3) programot hasznalja az allomanyok
   leto:ltesere, amely pedig szamos egyeb ko:rnyezeti valtozot is
   figyel, mint peldaul az FTP_PASSIVE_MODE, az FTP_PROXY es az
   FTP_PASSWORD. Ha tu"zfal mo:go:tt vagyunk, ezek ko:zu:l nehanyat
   biztosan be kell majd allitanunk, vagy FTP/HTTP proxyt kell
   hasznalnunk. A fetch(3) man oldalan megtalaljuk ezen valtozok
   teljes felsorolasat. Figyelju:k meg, hogy az lsof-4.56.4 helyett
   csak lsof-ot adtunk meg. Amikor ugyanis kerju:k a csomag
   leto:lteset is, nem szabad verzioszamot megadnunk. A pkg_add(1)
   mindig az alkalmazas legfrissebb verziojat fogja leto:ltetni.

     Megjegyzes: Ha a FreeBSD-CURRENT vagy FreeBSD-STABLE verziokat
     hasznaljuk, a pkg_add(1) mindig az alkalmazas elerheto"
     legfrissebb verziojat fogja leto:lteni. Ha azonban valamelyik
     -RELEASE verziot hasznaljuk, a csomagnak az adott kiadashoz
     keszu:lt verziojat fogja leszedni. Ezt a mu"ko:desi modot a
     PACKAGESITE valtozo felu:lirasaval viszont meg tudjuk
     valtoztatni. Peldaul ha a FreeBSD 5.4-RELEASE valtozataval
     dolgozunk, a pkg_add(1) alapertelmezes szerint a
     ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-5.4-release/Latest/
     cimro"l fogja leto:lteni a csomagokat. Ha mi viszont a
     FreeBSD 5-STABLE csomagok leto:lteset akarjuk elerni, allitsuk
     az PACKAGESITE erteket a
     ftp://ftp.freebsd.org/pub/FreeBSD/i386/packages-5-stable/Latest/
     cimre.

   A csomagok .tgz es .tbz formatumokban keru:lnek terjesztesre. Ezek
   az ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/ cimen, vagy
   pedig a FreeBSD CD-ken talalhatoak meg. A 4 CD-bo"l allo keszlet
   (illetve a PowerPak stb.) minden CD-jen talalhatunk csomagokat a
   packages/ ko:nyvtarban. A csomagokat tarolo ko:nyvtar strukturaja
   hasonlo a /usr/ports ko:nyvtarban kialakitott ko:nyvtarfahoz.
   Minden kategorianak sajat ko:nyvtara van, es minden csomag
   megtalalhato az All (o:sszes) kategoriaban.

   A csomagrendszer ko:nyvtarszerkezete tehat megegyezik a portok
   szetosztasaval, ezaltal igy kepesek egymassal o:sszedolgozni a
   teljes csomag/port rendszer megformalasaban.

     --------------------------------------------------------------

  4.4.2. A csomagok kezelese

   A pkg_info(1) egy olyan segedprogram, amellyel kesziteni lehet egy
   listat a telepitett csomagokrol, es emellett meg mas egyeb
   informaciokat tudhatunk meg roluk.

 # pkg_info
 cvsup-16.1          A general network file distribution system optimized for CV
 docbook-1.2         Meta-port for the different versions of the DocBook DTD
 ...

   A pkg_version(1) o:sszefoglalja az o:sszes telepitett csomag
   verziojat. Ezenkivu:l o:ssze is hasonlitja a csomagok verziojat a
   portfaban talalhato aktualis verziokeval.

 # pkg_version
 cvsup                       =
 docbook                     =
 ...

   A masodik oszlopban lathato jelek utalnak a telepitett verzio a
   helyi portfaban talalhato verzioehoz viszonyitott korara.

   Jel                            Jelentes                            
   =   A telepitett csomag verzioja megegyzik a helyi portfaban       
       talalhato verziojaval.                                         
   <   A telepitett verzio a portfaban levo"nel regebbi.              
   >   A telepitett verzio ujabb, mint a portfaban talalhato. (A      
       helyi portfa valoszinu"leg nem lett frissitve.)                
       A telepitett csomag nem talalhato a portok ko:zo:tt. (Ez akkor 
   ?   to:rtenhet meg, amikor peldaul egy portot eltavolitottak a     
       Portgyu"jtemenybo"l vagy atneveztek.)                          
   *   A csomagnak to:bb verzioja is jelen van.                       
       A telepitett csomag szerepel az indexben, de a pkg_version     
   !   valamiert nem volt kepes o:sszehasonlitani a verzioszamat az   
       indexben levo" bejegyzessel.                                   

     --------------------------------------------------------------

  4.4.3. Csomagok to:rlese

   Egy korabban mar telepitett csomag eltavolitasahoz hasznaljuk a
   pkg_delete(1) segedprogramot.

 # pkg_delete xchat-1.7.1

   A pkg_delete(1) hasznalatanal szu:kseg van a csomag teljes nevenek
   es verzioszamanak megadasara. A fenti parancs tehat nem mu"ko:dik,
   ha csak az xchat-et adjuk meg az xchat-1.7.1 helyett. A telepitett
   csomag verziojat azonban ko:nnyeden kitalalhatjuk a pkg_version(1)
   alkalmazasaval. Esetleg egyszeru"en dzsokerkaraktereket is
   hasznalhatunk:

 # pkg_delete xchat\*

   Ebben az esetben az o:sszes xchat-tel kezdo"do" csomagot leto:rli.

     --------------------------------------------------------------

  4.4.4. Egyebek

   A csomagokra vonatkozo o:sszes informacio a /var/db/pkg
   ko:nyvtarban talalhato. Az egyes csomagok leirasa es hozzajuk
   telepitett allomanyok listaja az ezen a ko:nyvtaron belu:l
   elhelyezkedo" allomanyokban tarolodik.

     --------------------------------------------------------------

4.5. A Portgyu"jtemeny hasznalata

   A most ko:vetkezo" szakaszokban megismerhetju:k azokat az
   alapveto" utasitasokat, amelyekkel a Portgyu"jtemenyen keresztu:l
   tudunk programokat telepiteni es eltavolitani. Az ehhez
   hasznalhato make targetek es ko:rnyezeti valtozok reszletesebb
   leirasat a ports(7) man oldalan lelhetju:k meg.

     --------------------------------------------------------------

  4.5.1. A Portgyu"jtemeny beszerzese

   Mielo"tt barmelyik portot is tudnank telepiteni, elso"kent magat a
   Portgyu"jtemenyt kell megszereznu:nk -- ez lenyegeben a /usr/ports
   ko:nyvtarban megtalalhato Makefile allomanyok, javitasok es
   leirasok gyu"jtemenye.

   A FreeBSD telepitese ko:zben a sysinstall rakerdez a
   Portgyu"jtemeny telepitesere is. Ha erre nemet valaszoltunk volna,
   a portok gyu"jtemenyet az alabbi modokon szerezhetju:k be:

   A CVSup hasznalataval

   A CVSup protokoll hasznalataval viszonylag gyorsan el tudjuk erni
   es naprakeszen tudjuk tartani a Portgyu"jtemeny egy peldanyat. A
   CVSup hasznalatat alaposabban a A CVSup hasznalata cimu"
   fu:ggelekben ismerhetju:k meg.

     Megjegyzes: A FreeBSD 6.2 valtozatatol kezdve az alaprendszerben
     a CVSup protokollt a csup valositja meg. A FreeBSD korabbi
     valtozatanak hasznaloi ezt a programot a net/csup porton vagy
     csomagon keresztu:l tudjak telepiteni.

   Gondoskodjunk rola, hogy a /usr/ports u:res legyen a csup elso"
   futtatasa elo"tt! Ha mas forrasbol raktuk ide a Portgyu"jtemenyt,
   a csup nem fogja lenyesegetni az azota eltavolitott javitasokat.

    1. Futtassuk a csup programot:

 # csup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfile

       Itt irjuk at a cvsup.FreeBSD.org cimet a hozzank legko:zelebb
       levo" CVSup szerver cimere. Az o:sszes elerheto"
       tu:ko:rszerver cimet a CVSup tu:kro:zesek (A.6.7 Szakasz)
       cimu" reszben olvashatjuk.

         Megjegyzes: Ha peldaul el akarjuk keru:lni a CVSup szerver
         megadasat a parancssorban, akkor mindenkeppen a
         ports-supfile allomanybol erdemes kesziteni egy sajat
         verziot.

           1. Ebben az esetben root felhasznalokent masoljuk a
              /usr/share/examples/cvsup/ports-supfile allomanyt egy
              uj helyre, peldaul a /root ko:nyvtarba vagy a sajat
              felhasznaloi ko:nyvtarunkba.

           2. Szerkesszu:k at a ports-supfile allomanyt.

           3. Irjuk at a CHANGE_THIS.FreeBSD.org erteket a hozzank
              legko:zelebb talalhato CVSup szerverere. A CVSup
              tu:kro:zesek (A.6.7 Szakasz) cimu" reszben megtalaljuk
              az o:sszes ilyen tu:ko:rszervert.

           4. Es most inditsuk el a csup parancsot az alabbi modon:

 # csup -L 2 /root/ports-supfile

    2. A csup(1) parancs keso"bbi futasa soran mar leto:lti es
       ervenyesiti az eszlelt valtoztatasokat a sajat
       Portgyu"jtemenyu:nkben, de a telepitett portokat viszont nem
       fogja ujraforditani.

   A Portsnap hasznalataval

   A Portsnap egy masik modszert kepvisel a Portgyu"jtemeny
   terjesztesere, a leheto"segeinek reszletesebb megismeresehez
   tekintsu:k at A Portsnap hasznalata cimu" szakaszt.

    1. To:ltsu:k le a Portgyu"jtemeny to:mo:ritett pillanatkepet a
       /var/db/portsnap ko:nyvtarba. Ha akarjuk, ezutan a lepes utan
       mar lekapcsolodhatunk az internetro"l.

 # portsnap fetch

    2. Ha meg csak elo"szo:r futtatjuk a Portsnapet, bontsuk ki az
       iment leto:lto:tt allapotot a /usr/ports ko:nyvtarba:

 # portsnap extract

       Ha viszont mar korabban is letezett a /usr/ports ko:nyvtarunk
       es most csak frissitju:k, akkor helyette ezt a parancsot adjuk
       ki:

 # portsnap update

   A sysinstall hasznalataval

   Ebben az esetben a sysinstall nevu" programmal telepitju:k a
   Portgyu"jtemenyt valamilyen telepito"eszko:zro"l. Ilyenkor azonban
   a kiadas datumanak megfelelo", valoszinu"leg regebbi valtozat
   keru:l fel. Ha rendelkezu:nk internet-hozzaferessel, akkor inkabb
   az elo"bb targyalt modszerek valamelyiket alkalmazzuk.

    1. root felhasznalokent adjuk ki a sysinstall (vagy a FreeBSD 5.2
       elo"tti verzioban a /stand/sysinstall) parancsot, ahogy itt is
       lathatjuk:

 # sysinstall

    2. Menju:nk le es alljunk meg a Configure (Beallitasok),
       menu:pontnal, es nyomjunk Enter billentyu"t.

    3. Menju:nk le es keressu:k meg a Distributions (Terjesztesek)
       menu:ponot, majd nyomjunk meg az Enter billentyu"t.

    4. Menju:nk le, valasszuk ki a ports elemet a Szoko:z
       megnyomasaval.

    5. Menju:nk fel az Exit (Kilepes) ponthoz, nyomjunk meg az Enter
       billentyu"t.

    6. Valasszuk ki a telepiteshez hasznalni kivant eszko:zt, mint
       peldaul CD, FTP stb.

    7. Menju:nk fel az Exit (Kilepes) menu:pontig, majd nyomjunk meg
       az Enter billentyu"t.

    8. Vegezetu:l lepju:nk ki a sysinstall programbol, aminhez
       nyomjunk meg az X billentyu"t.

     --------------------------------------------------------------

  4.5.2. Portok telepitese

   A "vaz" fogalma az elso", amit a Portgyu"jtemennyel kapcsolatban
   tisztazni kell. Diohejban o:sszefoglalva, egy port vaza azon
   allomanyok legszu"kebb halmaza, amelyek elaruljak a FreeBSD
   szamara, hogyan forditsuk le hibamentesen es hogyan telepitsu:k az
   adott programot. Ehhez minden port vazaban megtalalhato:

     * Egy Makefile nevu" allomany. Ez tartalmazza azokat a
       ku:lo:nbo:zo" utasitasokat, amelyek megmondjak, hogyan kell
       leforditani es hova kell telepiteni a rendszeru:nkben az adott
       alkalmazast.

     * Egy distinfo nevu" allomany. Ebben talalhato informacio a port
       leforditasahoz szu:kseges allomanyok leto:ltesero"l, valamint
       a leto:lto:tt allomanyok elleno"rzesehez szu:kseges (az md5(1)
       es sha256(1) programokkal szamolt) elleno"rzo"o:sszegek.

     * Egy files alko:nyvtar. Itt talalhatjuk meg azokat a
       javitasokat, amelyek alkalmazasaval le tudjuk forditani a
       programot FreeBSD-n is. Ezek a javitasok to:bbnyire bizonyos
       allomanyok modositasaira vonatkozo apro allomanyok formajaban
       jelennek meg. Termeszetu:knel fogva szo:veges formatumuak, es
       altalaban olyanok szerepelnek bennu:k, hogy "To:ro:ld a 10.
       sort" vagy "Valtoztasd meg a 26. sort erre: ...". Ezeket a
       javitasokat eredetileg patcheknek (foltoknak) nevezik, vagy
       maskepp diffeknek (eltereseknek) is, mivel a diff(1) program
       segitsegevel hozzak ezeket letre.

       Ez a ko:nyvtar tartalmazhat tovabbi allomanyokat is portok
       elkeszitesehez.

     * Egy pkg-descr nevu" allomany. Ez a program reszletesebb,
       gyakran to:bbsoros bemutatasa.

     * Egy pkg-plist nevu" allomany. Itt talaljuk meg a port altal
       telepitendo" o:sszes allomanyt. Ez egyben ko:zli a
       portrendszerrel is, hogy az eltavolitas soran mely
       allomanyokat kell majd to:ro:lnie.

   Egyes portokban szereplhetnek meg egyeb allomanyok is, mint
   peldaul a pkg-message. Ezeket az allomanyokat a portrendszer
   ku:lo:nleges helyzetek kezelesere tartogatja. Ha meg to:bbet
   kivanunk megtudni ezekro"l az allomanyokrol, vagy magukrol a
   portokrol altalanossagban, lapozzuk fel a FreeBSD porterek
   keziko:nyvet.

   A port ugyan tartalmazza a forraskod leforditasahoz szu:kseges
   utasitasokat, de konkretan a forraskodot viszont nem. Ezt egy
   CD-ro"l vagy az internetro"l tudjuk megszerezni. A forraskod
   altalaban a szerzo"je altal kedvelt formaban jelenik meg: ez
   gyakran egy gzip-pel to:mo:ritett tar allomany, de lehet
   to:mo:ritve massal is, vagy eppen lehet to:mo:ritetlen. A program
   forraskodjat, legyen akarmilyen formaban is, nevezik
   "distfile"-nak (terjesztesi allomanynak). A FreeBSD portok
   telepitesenek ket modszeret tarjuk fel a ko:vetkezo"kben.

     Megjegyzes: A portok telepitesehez root felhasznalokent kell
     bejelentkeznu:nk.

     Figyelem: Mielo"tt telepitenenk barmelyik portot is, ajanlott
     frissiteni a Portgyu"jtemenyu:nket es elleno"riznu:nk az adott
     portot a http://vuxml.freebsd.org cimen talalhato biztonsagi
     adatbazisban.

     Az ujonnan telepitendo" alkalmazasok biztonsagi
     sebezheto"segeinek elleno"rzeset automatikussa is tehetju:k a
     portaudit hasznalataval. Ez a segedeszko:z is a
     Portgyu"jtemenyben talalhato (ports-mgmt/portaudit). Erdemes
     minden port telepitese elo"tt leto:ltenu:nk a legfrissebb
     sebezheto"segi adatbazist a portaudit -F parancs kiadasaval.
     Mellesleg az adatbazis rendszeres frissitese es ez a biztonsagi
     felu:lvizsgalat a naponkent elvegzendo" biztonsagi elleno"rzesek
     ko:zt is megjelenik. Ezekro"l reszletesebben a portaudit(1) es
     periodic(8) man oldalakon olvashatunk.

   A Portgyu"jtemeny feltetelezi, hogy mu"ko:do"
   internet-hozzaferessel rendelkezu:nk. Amennyiben ez nem igy lenne,
   a terjesztesi allomanyokat, forraskodokat sajat magunknak kell
   bemasolnunk a /usr/ports/distfiles ko:nyvtarba.

   A kezdeshez lepju:nk be a telepitendo" port ko:nyvtaraba:

 # cd /usr/ports/sysutils/lsof

   Miutan beleptu:nk az lsof ko:nyvtaraba, lathatjuk a port vazat. A
   ko:vetkezo" lepes a forditas avagy a port "buildelese"
   (elkeszitese). Ezt egy szimpla make parancs kiadasaval
   kezdemenyezhetju:k. Miutan megtettu:k, valami ilyesmit kell
   tapasztalnunk:

 # make
 >> lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
 >> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
 ===>  Extracting for lsof-4.57
 ...
 [ide jo:n a kito:mo:rites kimenete]
 ...
 >> Checksum OK for lsof_4.57D.freebsd.tar.gz.
 ===>  Patching for lsof-4.57
 ===>  Applying FreeBSD patches for lsof-4.57
 ===>  Configuring for lsof-4.57
 ...
 [ide jo:n a configure szkript kimenete]
 ...
 ===>  Building for lsof-4.57
 ...
 [ide jo:n a forditas kimenete]
 ...
 #

   A forditas befejeztevel visszakapjunk a parancssort. A soron
   ko:vetkezo" lepes a port telepitese lesz. Ehhez mindo:ssze
   egyetlen szoval kell kiegeszitenu:nk a make parancs meghivasat: ez
   a szo pedig az install (telepit) lesz.

 # make install
 ===>  Installing for lsof-4.57
 ...
 [a telepites kimenete kimarad]
 ...
 ===>   Generating temporary packing list
 ===>   Compressing manual pages for lsof-4.57
 ===>   Registering installation for lsof-4.57
 ===>  SECURITY NOTE:
       This port has installed the following binaries which execute with
       increased privileges.
 #

   Miutan ismet visszakaptuk a parancssort, mar futtatni is tudjuk a
   frissen telepitett alkalmazasunkat. Mivel az lsof programnak
   tovabb jogosultsagokra is szu:ksege van, egy erro"l szolo
   biztonsagi figyelmeztetest is lathatunk. A portok letrehozasa es
   telepitese soran erdemes figyelnu:nk az ehhez hasonlo
   figyelmeztetesekre.

   A telepites befejeztevel nem art to:ro:lnu:nk a forditashoz
   felhasznalt alko:nyvtarat (work) is. Ezzel nemcsak a draga
   lemezteru:letet sporoljuk meg, hanem megelo"zzu:k a port keso"bbi
   frissitese soran felmeru:lo" esetleges problemakat is.

 # make clean
 ===>  Cleaning for lsof-4.57
 #

     Megjegyzes: Az eljarasbol ket lepest meg is tudunk takaritani,
     ha egyszeru"en csak a make install clean parancsot adjuk ki az
     elo"bb harom lepesben tagolt make, make install es make clean
     parancsok helyett.

     Megjegyzes: Bizonyos parancsertelmezo"k a PATH ko:rnyezeti
     valtozoban felsorolt ko:nyvtarakban talalhato parancsokat
     gyorsitotarban taroljak, ezzel felgyorsitva a hozzajuk tartozo
     vegrehajthato allomanyok kereseset. Ha to:rtenetesen ilyen
     parancsertelmezo"t hasznalnank, az uj portok telepitese utan
     szu:ksegu:nk lehet a rehash parancs kiadasara, mivel enelku:l
     nem tudjuk elerni a frissen telepitett parancsokat. Ezt a
     parancsot peldaul a tcsh es a hozza hasonlo
     parancsertelmezo"kben talalhatjuk meg, az sh es rokonainal pedig
     a hash -r ennek a megfelelo"je. A pontos informaciokat erro"l a
     temarol a parancsertelmezo"nk dokumentaciojaban lelhetju:k meg.

   Nemely ku:lso" DVD termek, mint peldaul a FreeBSD Malltol
   megrendelheto" FreeBSD Toolkit, tartalmazhatnak terjesztesi
   allomanyokat. Ezek remeku:l hasznalhatoak a Portgyu"jtemennyel.
   Ehhez csatlakoztatnunk kell a DVD-t a /cdrom ko:nyvtarba. Etto"l
   eltero" csatlakozasi pontok hasznalata eseten ne felejtsu:k el
   atallitani a CD_MOUNTPTS valtozot sem a make szamara. Ekkor a
   forditashoz szu:kseges allomanyokat ugy fogja kezelni a rendszer,
   mintha a merevlemezu:nko:n lennenek.

     Megjegyzes: Vigyazzunk arra, hogy nehany portot nem lehet CD-n
     terjeszteni. Ez reszben azert lehet, mert a szu:kseges
     allomanyok leto:ltesehez, illetve ujboli terjesztesehez ki kell
     to:lteni valamilyen regisztracios nyomtatvanyt, vagy pedig egyeb
     okok miatt. Tehat ha olyan portot akarunk telepiteni, ami nincs
     rajta a CD-n, mindenkeppen rendelkeznu:nk kell
     internetkapcsolattal.

   A portrendszer a fetch(1) segedprogramot hasznalja az allomanyok
   leto:ltesere, amely figyelembevesz ku:lo:nfele ko:rnyezeti
   valtozokat, ilyenek to:bbek ko:zt az FTP_PASSIVE_MODE, FTP_PROXY
   es az FTP_PASSWORD. Ha tu"zfal mo:go:tt vagyunk, szu:ksegu:nk
   lehet ezek nemelyikenek helyes beallitasara, vagy FTP/HTTP proxyt
   kell hasznalnunk. A fetch(3) man oldala tartalmazza ezen valtozok
   teljes listajat.

   A make fetch azon felhasznalok szamara nyujt segitseget, akik nem
   csatlakoznak minden esetben a halozatra. Egyszeru"en csak
   futtassuk le a ko:nyvtarszerkezet legtetejero"l (/usr/ports) ezt a
   parancsot es a szu:kseges allomanyok leto:lto"dnek neku:nk. A
   parancs mu"ko:dik az alsobb szinteken is, peldaul a /usr/ports/net
   ko:nyvtarban. Azonban legyu:nk tekintettel arra, hogy ha egy port
   fu:gg mas portoktol vagy fu:ggvenyko:nyvtaraktol, ez a parancs nem
   fogja leto:lteni a hozzajuk tartozo allomanyokat. Ilyenkor a fetch
   helyett hasznaljuk a fetch-recursive targetet.

     Megjegyzes: Ha a make parancsot egy felso"bb szinten futtatjuk,
     akkor ezzel letre tudjuk hozni az o:sszes vagy csak
     kategoriankent az o:sszes portot, hasonloan az elo"bb emlitett
     make fetch modszerhez. Ez azonban veszelyes, mivel egyes portok
     kizarjak masok hasznalatat. Emellett elo"fordulhat az is, hogy
     bizonyos portok ugyanazon a neven telepitenek to:bb,
     tartalmukban ku:lo:nbo:zo" allomanyt.

   Nagyon ritkan adodhat, hogy a felhasznalonak nem a MASTER_SITES
   altal mutatott helyekro"l kell beszereznie a szu:kseges
   allomanyokat (innen to:lto"dnek ugyanis le). A MASTER_SITES
   beallitast az alabbi paranccsal biralhatjuk felu:l:

 # cd /usr/ports/ko:nyvtar
 # make MASTER_SITE_OVERRIDE= \
 ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch

   Ebben a peldaban a MASTER_SITES erteket a
   ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ cimre valtoztattuk
   meg.

     Megjegyzes: A portok nemelyike leheto"ve teszi (esetleg meg is
     ko:veteli), hogy engedelyezzu:k vagy letiltsuk a keszu:lo"
     program bizonyos elemeit hatekonysagi, biztonsagi vagy egyeb
     testreszabasi iranyelvek menten. Ilyen to:bbek ko:zt a
     www/mozilla, a security/gpgme es a mail/sylpheed-claws. Ha
     elerheto"ek ilyen beallitasi leheto"segek, arrol a rendszer egy
     u:zenetben tajekoztat minket.

     --------------------------------------------------------------

    4.5.2.1. Az alapertelmezett ko:nyvtarak felu:lbiralasa

   Neha hasznos (vagy ko:telezo") lehet eltero" munka- es
   celko:nyvtarak alkalmazasa. A WRKDIRPREFIX es a PREFIX valtozokkal
   ezek alapertelmezeseit tudjuk megvaltoztatni. Peldaul a

 # make WRKDIRPREFIX=/usr/home/example/ports install

   parancs a portot a /usr/home/example/ports ko:nyvtarban fogja
   leforditani es az eredmenyet a /usr/local ko:nyvtarba telepiti. A

 # make PREFIX=/usr/home/example/local install

   parancs hatasara a port a /usr/ports ko:nyvtarban keszu:l el es a
   /usr/home/example/local ko:nyvtarba telepu:l.

   Termeszetesen a

 # make WRKDIRPREFIX=../ports PREFIX=../local install

   parancs o:tvo:zi az elo"bbi ketto"t (amelyet most tulsagosan is
   hosszu lenne kiirni, de velheto"en sejtheto" belo"le az
   alapo:tlet).

   Leheto"seg van ezen valtozokat a sajat ko:rnyezetu:nkben is
   beallitani. Ha erre lenne szu:ksegu:nk, nezzu:nk utana az ezzel
   kapcsolatos teendo"nek a parancsertelmezo"nk man oldalan.

     --------------------------------------------------------------

    4.5.2.2. Az imake hasznalatarol

   Bizonyos portok az (X Window System reszekent megjeleno") imake
   segedprogramra tamaszkodnak, ahol viszont nem mu"ko:dik a PREFIX
   atallitasa es mindenkeppen a /usr/X11R6 ko:nyvtarba akar
   telepiteni. Ehhez hasonloan egyes Perl portok figyelmen kivu:l
   hagyjak a PREFIX valtozot es ko:zvetlenu:l a Perl fajaba
   keru:lnek. Az ilyen portok eseten nagyon nehez vagy szinte
   lehetetlen betartatni a PREFIX hasznalatat.

     --------------------------------------------------------------

    4.5.2.3. A portok ujrakonfiguralasa

   Egyes portok leforditasa elo"tt megjelenik egy ncurses alapu
   menu:, ahol ki tudunk valasztani bizonyos forditasi beallitasokat.
   Gyakran elo"fordul, hogy a port leforditasa utan a felhasznalok
   szeretnek ujra elo"hozni ezt a menu:t es megadni vagy kivenni
   bizonyos beallitasokat. Erre to:bb mod is kinalkozik. Egyik ilyen
   leheto"seg az, ha belepu:nk a port ko:nyvtaraba es kiadjuk a make
   config parancsot, amivel lenyegeben ismet elo"csaljuk a
   beallitasokat o:sszefoglalo menu:t. Masik ilyen leheto"seg a make
   showconfig alkalmazasa, amivel a porthoz tartozo o:sszes
   beallitast tudjuk egyszerre megjeleniteni. Ezek mellett meg
   hasznalhato a make rmconfig parancs is, amivel to:ro:lni tudjuk az
   o:sszes eddigi beallitast es igy ujrakezdhetju:k a port
   konfiguraciojat. Ezek es a to:bbi ilyen opcio a ports(7) man
   oldalon keru:l bo"vebb kifejtesre.

     --------------------------------------------------------------

  4.5.3. A portok eltavolitasa

   Most mar tudjuk, mikent lehet portokat telepiteni, azonban
   valoszinu"leg meg az is erdekelhet minket, hogy mikent kell ezeket
   eltavolitani abban az esetben, ha peldaul keso"bb meggondolnank
   magunkat velu:k kapcsolatban. A korabban telepitett peldaportot
   fogjuk eltavolitani (a figyelmetlenek kedveert megemlitju:k, hogy
   ez az lsof volt). A portok eltavolitasa teljesen egybevag a
   csomagokeval (erro"l a csomagokrol szolo reszben beszeltu:nk),
   mivel ekkor is hasznalhatjuk a pkg_delete(1) parancsot:

 # pkg_delete lsof-4.57

     --------------------------------------------------------------

  4.5.4. A portok frissitese

   Elo"szo:r is a pkg_version(1) parancs felhasznalasaval listazzuk
   ki azokat a portokat, amik felett mar eljart az ido" es a
   Portgyu"jtemenyben talalhato belo"lu:k ujabb verzio:

 # pkg_version -v

     --------------------------------------------------------------

    4.5.4.1. A /usr/ports/UPDATING allomany

   Miutan frissitettu:k a Portgyu"jtemenyu:nket, de meg mielo"tt
   megprobalnank akarmelyik portot is frissiteni, erdemes egy
   pillantast vetnu:nk a /usr/ports/UPDATING allomanyra. Itt
   megtalalhatoak azok a problemak es a hozzajuk tartozo lepesek,
   amelyekkel a felhasznaloknak a portok frissitese soran szembe kell
   nezniu:k, beleertve az allomanyformatumok, a konfiguracios
   allomanyok helyenek megvaltozasat vagy egyeb olyan modositasokat,
   amik a korabbi verziokkal o:sszeferhetetlenseget szu:lhetnek.

   Amennyiben az UPDATING allomany tartalma ellentmondana az itt
   olvasottakkal, mindig az UPDATING allomanyban leirtak az
   iranyadoak.

     --------------------------------------------------------------

    4.5.4.2. Portok frissitese a portupgrade hasznalataval

   A portupgrade nevu" segedprogramot a portok egyszeru"bb
   frissitesere talaltak ki, es a ports-mgmt/portupgrade portban
   talalhato meg. A make install clean paranccsal barmelyik mas
   porthoz hasonloan telepithetju:k:

 # cd /usr/ports/ports-mgmt/portupgrade
 # make install clean

   A pkgdb -F paranccsal fesu:ltessu:k at a telepitett portok
   listajat, es javitsuk az altala jelentett ellentmondasokat.
   Erdemes rendszeresen elvegezni ezt, leheto"leg minden frissites
   elo"tt.

   Miutan kiadtuk a portupgrade -a parancsot, a portupgrade nekilat
   frissiteni az o:sszes elavult portot a rendszeru:nkben. Ha minden
   egyes frissitest ku:lo:n meg szeretnenk ero"siteni, hasznaljuk a
   -i kapcsolot is.

 # portupgrade -ai

   Ha nem akarjuk az o:sszes portot frissiteni, csupan egy bizonyos
   alkalmazaset, hasznaljuk a portupgrade pkgname parameterezest. A
   -R kapcsolo megadasaval a portupgrade elo"szo:r frissiti az adott
   alkalmazas fu:ggo"segeit.

 # portupgrade -R firefox

   Ha a mu"velet soran csomagokat kivanunk hasznalni portok helyett,
   adjuk meg a -P kapcsolot. Ennek reven a portupgrade megkeresi a
   csomagokat a PKG_PATH ko:rnyezeti valtozoban felsorolt
   ko:nyvtarakban vagy ha itt nem talalja, leto:lti ezeket egy tavoli
   szerverro"l. Amennyiben a csomagokat sem helyben, sem pedig a
   tavoli szerveren nem talalja, a portupgrade helyettu:k portokat
   fog hasznalni. Ilyenkor a portok hasznalatat a -PP kapcsolo
   beallitasaval lehet elkeru:lni:

 # portupgrade -PP gnome2

   Csak a terjesztesi allomanyok (vagy a -P eseten csomagok)
   leto:ltesehez hasznaljuk a -F kapcsolot. Mindezekro"l
   reszletesebben a portupgrade(1) man oldalon olvashatunk.

     --------------------------------------------------------------

    4.5.4.3. Portok frissitese a Portmanager hasznalataval

   A Portmanager egy masik hasznos segedprogram a portok ko:nnyu"
   frissitesehez. A ports-mgmt/portmanager porton keresztu:l erheto"
   el:

 # cd /usr/ports/ports-mgmt/portmanager
 # make install clean

   Hasznalataval az o:sszes telepitett port egyetlen paranccsal
   frissitheto":

 # portmanager -u

   Ha a Portmanager minden egyes lepeset ku:lo:n meg kivanjuk
   ero"siteni, akkor a -ui kapcsolokat se felejtsu:k el megadni. A
   Portmanager emellett uj portok telepitesere is hasznalhato.
   Eltero"en a make install clean parancsban megszokottaktol, a
   kivalasztott port o:sszes fu:ggo"seget meg a forditas es a
   telepites elo"tt fogja frissiteni.

 # portmanager x11/gnome2

   Ha barmilyen gondot tapasztalnank a kivalasztott port
   fu:ggo"segeit illeto"en, a Portmanagert felkerhetju:k az o:sszes
   fu:ggo"seg helyes sorrendben to:rteno" ujraforditasara. Amikor
   befejezte, a problemas portot is ujra letrehozza.

 # portmanager graphics/gimp -f

   Bo"vebb informaciokert lasd portmanager(1).

     --------------------------------------------------------------

    4.5.4.4. Portok frissitese a Portmaster hasznalataval

   A Portmaster szinten a portok frissitesere alkalmas segedprogram.
   A Portmaster eseteben a hangsuly az "alaprendszerben" is
   megtalalhato eszko:zo:k hasznalatan van (tehat nem fu:gg semmilyen
   mas porttol) es a /var/db/pkg/ ko:nyvtarban talalhato informaciok
   alapjan do:nti el, hogy milyen portokat kell frissitenie. A
   ports-mgmt/portmaster portbol erheto" el:

 # cd /usr/ports/ports-mgmt/portmaster
 # make install clean

   A Portmaster a portokat az alabbi negy kategoria valamelyikebe
   sorolja be:

     * Gyo:ker (root) portok (nem fu:ggenek semmito"l, semmi sem
       fu:gg to"lu:k)

     * To:rzs (trunk) portok (nem fu:ggenek semmito"l, de masok
       fu:ggenek to"lu:k)

     * Ag (branch) portok (vannak fu:ggo"segeik es masok is fu:ggenek
       to"lu:k)

     * Level (leaf) portok (vannak fu:ggo"segeik, de semmi sem fu:gg
       to"lu:k)

   A ko:vetkezo" paranccsal le tudjuk kerni az o:sszes telepitett
   portot es az -L kapcsoloval frissiteseket keresni hozzajuk:

 # portmaster -L
 ===>>> Root ports (No dependencies, not depended on)
 ===>>> ispell-3.2.06_18
 ===>>> screen-4.0.3
         ===>>> New version available: screen-4.0.3_1
 ===>>> tcpflow-0.21_1
 ===>>> 7 root ports
 ...
 ===>>> Branch ports (Have dependencies, are depended on)
 ===>>> apache-2.2.3
         ===>>> New version available: apache-2.2.8
 ...
 ===>>> Leaf ports (Have dependencies, not depended on)
 ===>>> automake-1.9.6_2
 ===>>> bash-3.1.17
         ===>>> New version available: bash-3.2.33
 ...
 ===>>> 32 leaf ports

 ===>>> 137 total installed ports
         ===>>> 83 have new versions available

   Az o:sszes telepitett port egyetlen egyszeru" paranccsal
   frissitheto":

 # portmaster -a

     Megjegyzes: A Portmaster alapertelmezes szerint minden egyes
     to:rlendo" korabbi portrol biztonsagi masolatot keszit. Amikor
     az uj valtozat telepitese sikeresen lezajlott, akkor a
     Portmaster ezt a masolatot megsemmisiti. A -b parameterrel
     azonban megkerhetju:k, hogy ne to:ro:lje le a biztonsagi
     mentest. Az -i megadasaval a Portmaster interaktiv modban indul
     el, es minden port frissitese elo"tt a felhasznalo
     megero"siteset fogja kerni.

   Amennyiben valamilyen hiba lep fel a frissites folyaman, az -f
   opcio megadasaval kerhetju:k az o:sszes port frissiteset es
   ujraforditasat is:

 # portmaster -af

   A Portmaster hasznalataval uj portokat is fel tudunk telepiteni a
   rendszerre ugy, hogy azok fu:ggo"segeit is igyekszik frissiteni a
   leforditasuk elo"tt:

 # portmaster shells/bash

   A tovabbi reszleteket a portmaster(8) man oldalon talaljuk.

     --------------------------------------------------------------

  4.5.5. A portok tarigenye

   A Portgyu"jtemeny ido"vel egyre to:bb helyet fog elfoglalni a
   merevlemezu:nko:n. Miutan sikeresen letrehoztunk es telepitettu:nk
   egy szoftvert a hozzatartozo portbol, erdemes mindig
   eltakaritanunk magunk utan a work ko:nyvtarban menet ko:zben
   keletkezett atmeneti allomanyokat a make clean parancs
   hasznalataval. Az egesz Portgyu"jtemenyt egyetlen mozdulattal
   ezzel a paranccsal tudjuk vegigsepregetni:

 # portsclean -C

   Az ido" elo"rehaladtaval a distfiles ko:nyvtarban is rengeteg regi
   forras tud felhalmazodni. Ezeket eltavolithatjuk kezzel, vagy az
   alabbi parancs segitsegevel to:ro:lhetju:k az o:sszes olyan
   terjesztesi allomanyt, amelyekre mar egyetlen port sem hivatkozik:

 # portsclean -D

   Vagy to:ro:lhetju:k az o:sszes olyan terjesztesi allomanyt,
   amelyre egyetlen pillanatnyilag feltelepitett port sem hivatkozik
   a rendszeru:nkben:

 # portsclean -DD

     Megjegyzes: A portsclean segedprogram a portupgrade
     programcsomag resze.

   Ne felejtsu:k el eltavolitani azokat a portokat, amikre mar nincs
   szu:ksegu:nk a tovabbiakban. Ebben a feladatban egy jol
   hasznalhato segedeszko:z lehet a segitsegu:nkre, a
   ports-mgmt/pkg_cutleaves port.

     --------------------------------------------------------------

4.6. Telepites utani teendo"k

   Az uj alkalmazas feltelepitese utan minden bizonnyal szeretnenk
   elolvasni a hozza tarsitott dokumentaciot, az egyedi
   beallitasainknak megfelelo"en modositani a konfiguracios
   allomanyokat, engedelyezni a rendszerinditas soran to:rteno"
   automatikus inditasat (ha demonrol lenne szo) es igy tovabb.

   Az egyes alkalmazasok beallitasahoz elvegzendo" lepesek
   nyilvanvaloan egyedenkent eltero"ek. Azonban tudunk szolgalni
   nehany altalanos tanaccsal valaszkent az ilyenkor felmeru:lo" "Na
   es akkor most mi legyen?" kerdesre:

     * Kerdezzu:k meg a pkg_info(1) programtol, milyen allomanyok es
       hova keru:ltek fel a telepites soran. Peldaul, ha a
       SzuperCsomag 1.0.0-at raktunk fel, akkor a

 # pkg_info -L SzuperCsomag-1.0.0 | less

       parancs kilistazza az o:sszes allomanyt, amit a csomagbol
       felraktunk. Ezek ko:zu:l leginkabb a man/ ko:nyvtarban
       levo"ekre figyelju:nk, mivel ezek lesznek az alkalmazas man
       oldalai. Ehhez hasonloan a etc/ ko:nyvtarban a konfiguracios
       allomanyok es a doc/ ko:nyvtarban pedig a nagyobb
       lelegzetvetelu" dokumentaciok foglalnak helyet.

       Ha nem emlekszu:nk pontosan ra, hogy az alkalmazasok melyik
       verziojat is telepitettu:k, a

 # pkg_info | grep -i SzuperCsomag

       alaku parancs megkeresi az o:sszes olyan csomagot, aminek a
       neveben szerepel a SzuperCsomag szo:vegreszlet. A fenti
       peldaban termeszetesen igeny szerint valtoztassuk meg a
       SzuperCsomag szo:veget a tenyleges csomag nevere.

     * Ahogy sikeru:lt megtalalnunk az alkalmazashoz tartozo man
       oldalakat, lapozzuk fel ezeket a man(1) segitsegevel. Ugyanigy
       nezzu:k at a mellekelt minta konfiguracios allomanyokat es az
       o:sszes elerheto" dokumentaciot.

     * Ha az alkalmazasnak van sajat honlapja, kutassunk ott is
       informaciok utan, olvassuk el a gyakran ismetelt kerdeseket es
       igy tovabb. Ha nem tudnank pontosan a honlap cimet, a

 # pkg_info SzuperCsomag-1.0.0

       kimenetebo"l ko:nnyen elo"keritheto". Itt egy WWW: kezdetu"
       sort kell keresnu:nk (mar amennyiben letezik), amit az
       alkalmazas honlapjanak cime kell ko:vessen.

     * A rendszerrel egyu:tt inditando portok (ilyenek to:bbek ko:zt
       az internetes szolgaltatasok), altalaban a /usr/local/etc/rc.d
       ko:nyvtarba rakjak a sajat inditoszkriptju:ket. Erdemes
       leelleno"rizni ezt a szkriptet es az igenyeinknek megfelelo"en
       modositani, atnevezni. A Szolgaltatasok inditasa cimu"
       szakaszban ezt reszleteiben is megismerhetju:k.

     --------------------------------------------------------------

4.7. Teendo" a seru:lt portokkal

   Ha veletlenu:l raakadnank egy olyan portra, ami nem mu"ko:dik
   megfelelo"en, nagyjabol a ko:vetkezo"ket tudjuk tenni:

    1. Deritsu:k ki a Hibajelentesek adatbazisabol, hogy keszu:l-e
       mar javitas az adott porthoz. Ha igen, akkor annak befejezese
       utan mar kepesek leszu:nk hasznalni.

    2. Kerju:k meg a port karbantartojat, hogy segitsen. A
       karbantarto elerheto"segenek felderitesehez gepelju:k be a
       make maintainer parancsot, vagy keressu:k meg a Makefile
       allomanyban a karbantarto e-mail cimet. Ne felejtsu:k el neki
       megemliteni a levelben a port nevet es verziojat (vagyis
       mindenkeppen ku:ldju:k el a $FreeBSD: sort a Makefile
       allomanybol) es a parancs kiadasatol a hiba felbukkanasaig
       tarto kimenetet.

         Megjegyzes: Nemely portokat nem egyedu:lallo szemelyek
         tartanak karban, hanem egy levelezesi lista. A legto:bbju:k
         neve, ha nem is minde, nagyjabol ilyen alaku:
         <freebsd-listanev@FreeBSD.org>. Egy ilyen jellegu" kerdes
         megfogalmazasa soran ezt is vegyu:k figyelembe!

         Kifejezetten a <ports@FreeBSD.org> karbantartoval
         rendelkezo" portoknak nincs rendes gazdaja. A hozzajuk
         kapcsolodo javitasok es mindenfele segitseg, o:tlet erro"l a
         levelezesi listarol erkeznek. Ilyen esetekben szamitunk az
         o:nkentes segito"kre!

       Ha nem kapunk semmilyen valaszt, a hiba bejelentesere
       hasznalhatjuk a send-pr(1) programot is (erro"l bo"vebben lasd
       a FreeBSD-s hibajelentesek irasa cimu" cikket).

    3. Javitsuk meg mi magunk! A porterek keziko:nyve reszletesen
       taglalja a "portok" belso" felepiteset, igy onnan elindulva
       akar magunktol is meg tudunk javitani egy esetlegesen seru:lt
       portot, vagy be is ku:ldhetju:k a sajatunkat!

    4. To:ltsu:k le a porthoz tartozo csomagot a hozzank legko:zelebb
       levo" FTP oldalrol. A "ko:zponti" csomaggyu"jtemeny a
       ftp.FreeBSD.org cimen, a packages nevu" ko:nyvtarban
       talalhato, de mielo"tt ide fordulnank, nezzu:k meg a hozzank
       legko:zelebb levo" tu:ko:rszervert is! Ha egy csomagot igy
       telepitu:nk, akkor to:bb esellyel fog mu"ko:dni es raadasul
       meg joval gyorsabb is. A csomag telepitesere hasznaljuk a
       pkg_add(1) programot.

     --------------------------------------------------------------

                     Fejezet 5. Az X Window System

   Az X.Org X11 szerverehez igazitotta: Ken Tom es Marc Fonvieille.

5.1. Attekintes

   A FreeBSD az X11-en keresztu:l nyujt a felhasznalok szamara
   hatekony grafikus felhasznaloi felu:letet. Az X11 az X Window
   System szabadon elerheto" valtozata, melyet az Xorg es az XFree86
   egyarant implemental (valamint mas egyeb programcsomagok is,
   amelyeket itt viszont nem targyalunk). A FreeBSD verzioi a
   FreeBSD 5.2.1-RELEASE kiadassal bezarolag a The XFree86 Project,
   Inc. altal kiadott X11 szervert, az XFree86-ot tartalmazzak
   alapertelmezes szerint. A FreeBSD 5.3-RELEASE kiadastol kezdve az
   X11 alapertelmezett es hivatalos valtozata az Xorg, melyet az
   X.Org alapitvany a FreeBSD-ehez nagyon hasonlo licenc alatt
   fejleszt. A FreeBSD-hez kereskedelmi X szerverek is elerheto"ek.

   Ebben a fejezetben az X11 telepiteset es beallitasat jarjuk vegig,
   miko:zben a hangsulyt az Xorg 7.4 kiadasara helyezzu:k. Az XFree86
   (vagyis a FreeBSD olyan regebbi valtozata, ahol az XFree86 az
   alapertelmezett X11 rendszer) vagy az Xorg korabbi kiadasainak
   beallitasaval kapcsolatban mindig talalhatunk informaciokat a
   FreeBSD keziko:nyv http://docs.FreeBSD.org/doc/ cimen talalhato
   archivalt valtozataiban.

   Az X11 altal tamogatott megjelenito"kro"l bo"vebben az Xorg
   honlapjan olvashatunk.

   A fejezet elolvasasa soran megismerju:k:

     * az X Window System ku:lo:nbo:zo" alkotoelemeit, es hogy ezek
       mikent mu"ko:dnek egyu:tt;

     * hogyan telepitsu:k es allitsuk be az X11-et;

     * hogyan telepitsu:k es hasznaljuk a ku:lo:nfele
       ablakkezelo"ket;

     * hogyan hasznaljunk TrueType(R) betu"tipusokat az X11-ben;

     * hogyan allitsuk be rendszeru:nko:n a grafikus bejelentkezest
       (XDM).

   A fejezet elolvasasahoz ajanlott:

     * ku:lso" programok telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

5.2. Az X attekintese

   Az X hasznalata elso"re megdo:bbento" lehet azok szamara, akik
   olyan mas grafikus ko:rnyezetekben jaratosak, mint peldaul a
   Microsoft Windows vagy a Mac OS.

   Mig az X minden komponensenek reszleteit es azok kapcsolatat nem
   szu:kseges megerteni a hasznalatukhoz, nehany alapveto" ismeret
   velu:k kapcsolatban elo"segiti kiaknazni az X ero"ssegeit.

     --------------------------------------------------------------

  5.2.1. Miert X?

   Az X ugyan nem az elso" UNIX-ra irodott ablakozo rendszer, de
   fajtajat tekintve a legnepszeru"bb. Az X eredeti fejleszto"csapata
   az X elo"tt egy masik ablakozo rendszeren dolgozott, aminek a neve
   "W" (mint "Window", azaz ablak) volt. Az X pedig az arab abeceben
   pontosan ezt a betu"t ko:veti.

   Az X-et hivhatjuk "X"-nek, "X Window System"-nek, es meg sok mas
   neven. Elo"fordulhat azonban, hogy az "X Windows" elnevezes serto"
   lehet egyes emberek szamara. Erro"l to:bbet a X(7) man oldalon
   tudhatunk meg to:bbet.

     --------------------------------------------------------------

  5.2.2. Az X kliens-szerver modellje

   Az X-et mar az elejeto"l kezdve halozatko:zpontunak terveztek, es
   ezert az un. "kliens-szerver" modellt hasznalja.

   Az X modelljeben az "X szerver" egy olyan szamitogepen fut,
   amelyhez billentyu"zetet, monitort es egeret csatlakoztattunk. A
   szerver feladatai ko:zo:tt talaljuk a megjelenites iranyitasat az
   egerro"l es a billentyu"zetro"l, valamint a to:bbi bemeneti es
   kimeneti eszko:zro"l erkezo" adatok felfeldolgozasat es igy tovabb
   (peldaul a digitalis tablak is hasznalhatoak beviteli eszko:zkent,
   illetve egy projektor is lehet megjelenito"). Mindegyik X
   alkalmazas (mint peldaul az XTerm vagy a Netscape) egy kliens. A
   kliens u:zeneteket ku:ld a szervernek, peldaul "Kerlek, rajzolj
   egy ablakot ezekre a koordinatakra", es a szerver pedig olyan
   u:zeneteket ku:ld, mint peldaul "A felhasznalo az OK gombra
   kattintott".

   Az otthoni vagy a kisebb irodai ko:rnyezetben az X szerver es az X
   kliensek altalaban ugyanazon a szamitogepen futnak. Emellett
   azonban nagyon is lehetseges, hogy az X szerver egy kevesbe ero"s
   gepen fusson, miko:zben az X alkalmazasok (a kliensek) az irodat
   kiszolgalo ero"sebb es dragabb gepen fussanak. Egy ilyen
   konfiguracioban az X kliensei es szerverei ko:zti kommunikacio a
   halozaton keresztu:l zajlik.

   Jegyezzu:k meg, hogy az X szerver az a szamitogep, ahol a monitor
   es a billentyu"zet talalhato, az X kliensek pedig azok a
   programok, amelyek az ablakokat jelenitik meg.

   A protokollban semmi sem varja el, hogy a kliens es a szerver
   ugyanazon az operacios rendszeren vagy eppen ugyanolyan tipusu
   szamitogepen fusson. Ezert akar Microsoft Windows-on vagy Apple(R)
   Mac OS-en is indithatunk X szervert, es szamos ku:lo:nbo:zo"
   szabad valamint kereskedelmi alkalmazas kepes pontosan erre.

     --------------------------------------------------------------

  5.2.3. Az ablakkezelo"

   Az X kialakitasanak filozofiaja leginkabb a UNIX kialakitasanak
   filozofiajahoz hasonlithato, vagyis "eszko:zo:ket, ne
   szabalyokat". Ez tehat azt jelenti, hogy az X nem ko:ti meg mikent
   oldjuk meg vele a feladatokat. Helyette ku:lo:nfele eszko:zeket ad
   a felhasznalo kezebe, es onnantol a sajat felelo"ssege eldo:nteni,
   hogyan hasznalja ki ezeket.

   Ez a filozofia az X-ben egeszen addig terjed, hogy nem ro:gziti,
   hogyan nezzenek ki a kepernyo"n megjeleno" ablakok, mikent kell
   ezeket mozgatni az egerrel, milyen billentyu"k lenyomasaval
   ko:zlekedhetu:nk az ablakok ko:zo:tt (ami a Microsoft Windows
   eseten az Alt+Tab), hogyan nezzen ki az ablakok cimsora, a bezaras
   funkcionak legyen-e rajtuk gombja es igy tovabb.

   Ehelyett az X az o:sszes ezzel jaro felelo"sseget atadja az
   "ablakkezelo"" (window manager) reszere. Tucatnyi ilyen
   ablakkezelo"t talalhatunk az X-hez: AfterStep, Blackbox, ctwm,
   Enlightement, fvwm, Sawfish, twm, Window Maker es meg sok mas.
   Ezen ablakkezelo"k mindegyike mas es mas kinezetet es hangulatot
   kinal fel: nemelyiku:k tamogatja a "virtualis munkaasztalok"
   (virtual desktop) letrehozasat; nehanyuk pedig megengedi, hogy mi
   magunk allitsuk be az asztal iranyitasahoz hasznalt
   gombkombinaciokat; ko:ztu:k talalhatunk olyat is, amelynek van
   "Start" gombja vagy ehhez hasonlo eszko:ze; nemelyek ko:zu:lu:k
   ismerik a "temakat", aminek reven a kinezetu:k es hangulatuk
   teljesen megvaltoztathato. Az emlitett ablakkezelo"k es tarsaik a
   Portgyu"jtemeny x11-wm kategoriajaban erheto"ek el.

   Raadasul a KDE es a GNOME munkako:rnyezetek mindegyikenek van
   sajat integralt ablakkezelo"je.

   Az egyes ablakkezelo"k mellesleg eltero" beallitasi modszerrel
   rendelkeznek. Nemelyiku:k kezzel o:sszeallitott konfiguracios
   allomanyt var, masok pedig ku:lo:n grafikus eszko:zo:ket
   tartalmaznak erre a feladatra is. Az egyiku:k (a Sawfish)
   konfiguracios allomanyat peldaul a Lisp programozasi nyelv egyik
   dialektuasban kell megirni.

     Az iranyitas atadasa: Az ablakkezelo" masik fontos feladata
     lekezelni, hogy az egerrel mikent tudjuk atadni az ablakok
     ko:zo:tt az iranyitast, vagyis a fokuszt (focus policy). Minden
     ablakkezelo" rendszerben el kell tudnunk valahogy do:nteni, hogy
     a beerkezo" billentyu"leu:tesek melyik ablakhoz vandoroljanak,
     valamint az ilyen ertelemben aktiv ablakot valamilyen modon
     jeleznu:nk is kell.

     Ennek egyik ismert modszere a "fokusz kattintasra" megoldas,
     amely modellt a Microsoft Windows rendszerekben talalhatjuk meg.
     Itt az ablakok akkor valnak aktivva, amikor rajuk kattintunk az
     egerrel.

     Az X viszont nem ko:telezi el magat egyik vezerlesatadasi
     modszer mellett sem, helyette az ablakkezelo" fogja majd
     eldo:nteni, melyik ablak birtokolja a fokuszt az adott
     pillanatban. A ku:lo:nbo:zo" ablakkezelo"k ku:lo:nbo:zo"
     fokuszvezerlesi technikakat ismernek. Mindegyiku:k ismeri a
     kattintasos fokuszt, azonban a to:bbsegu:k emellett meg sok mas
     megoldast is felkinal.

     A legnepszeru"bb fokuszvezerlesi elvek:

     A fokusz az egeret ko:veti (focus-follows-mouse)

             Az egermutato alatt talalhato ablak kapja meg fokuszt.
             Az erintett ablaknak nem kell feltetlenu:l az o:sszes
             to:bbi felett elhelyezkednie. Ilyenkor a fokuszt
             egyszeru"en ugy vihetju:k at egy masik ablakra, ha
             ramutatunk az egerrel, amihez meg kattintanunk sem kell.

     Hanyag fokusz (sloppy-focus)

             Ez az elv az elo"bbi apro kibo"vitese. Amikor a fokusz
             az egermutatot ko:veti, es az egeret a leghatso ablakra
             (vagy a hatterre) visszu:k, akkor valojaban egyik ablak
             sem birtokolja az iranyitast, ezert a leu:to:tt
             billentyu"k elvesznek. A hanyag fokusz hasznalataval
             azonban az iranyitas csak abban az esetben keru:l at
             mashova, amikor egy masik ablakba lepu:nk be, nem pedig
             akkor, amikor a jelenlegibo"l lepu:nk ki.

     Fokusz kattintasra (click-to-focus)

             Az aktiv ablakot egy egerkattintassal valasztjuk ki.
             Ilyenkor a kivalasztott ablak "felemelkedhet" es a
             to:bbi elo"tt jelenhet meg. Ezt ko:veto"en az o:sszes
             iranyitas ebbe az ablakba vandorol, meg abban az esetben
             is, amikor egy masik ablakra visszu:k az egermutatot.

     Sok ablakkezelo" ismer ezekbo"l ku:lo:nbo:zo" variacioikat,
     valamint rajtuk kivu:l mas egyeb vezerlesi elvet is. Ezzel
     kapcsolatban az adott ablakkezelo" dokumentaciojabol
     derithetu:nk ki a legto:bbet.

     --------------------------------------------------------------

  5.2.4. Widgetek

   Az X megko:zelitese, vagyis az eszko:zo:k es nem a szabalyok
   felsorakoztatasa, kiterjed az egyes alkalmazasokban lathato
   ku:lo:nfele widgetekre is.

   A "widget" (window gadget, vagyis widget, de magyarul sok helyen a
   "mu:tyu:rke") elnevezest azokra a felhasznaloi felu:leten
   megjeleno" elemekre hasznaljuk, amelyekkel valamilyen modon
   kapcsolatba lephetu:nk: kattinthatunk rajuk, "piszkalhatjuk"
   ezeket. Ilyenek to:bbek ko:zt a gombok, jelo:lo"negyzetek,
   radiogombok, ikonok, listak es a to:bbi. A Microsoft Windows
   nyelven ezeket "vezerlo"knek" (control) nevezzu:k.

   A Microsoft Windows es az Apple Mac OS ezen a teren nagyon merev.
   Az alkalmazasok fejleszto"inek gondoskodniuk kell rola, hogy a
   programjaik az elterjedt kinezetet es kialakitast ko:vessek. Az X
   viszont nem varja az egyseges vezerlo"eszko:zo:k vagy grafikai
   stilus hasznalatat.

   Ennek eredmenyekeppen az X cseppet sem kivanja meg az
   alkalmazasoktol, hogy ko:zo:s kinezetben vagy viselkedesben
   osztozzanak. Termeszetesen leteznek nepszeru" eszko:zrendszerek es
   azoknak szamos variacioja is kialakult, beleertve az MIT
   Athenajat, a Motif(R)ot (amiro"l a Microsoft Windows eszko:zeit is
   mintaztak, az o:sszes ferde elet es a harom szu:rkearnyalatot), az
   OpenLookot es tarsaikat.

   Napjaink X alkalmazasai a KDE fejlesztesehez hasznalt Qt, esetleg
   a GNOME-hoz hasznalt GTK+ ko:nyvtarbol szarmazo, korszeru"
   kinezetu" widgeteket tartalmaznak. Ebbo"l a szempontbol
   megfigyelheto" egyfajta tendencia a grafikus UNIX-alkalmazasok
   felepiteseben, ami minden bizonnyal megko:nnyiti a kezdo"
   felhasznalok tajekozodasat.

     --------------------------------------------------------------

5.3. Az X11 telepitese

   Az X11 FreeBSD-n alapertelmezett implementacioja az Xorg. Az Xorg
   az X.Org alapitvany altal kiadott, az X Window Systemet
   megvalosito nyilt forraskodu X szerver. Az Xorg az XFree86 4.4RC2
   es X11R6.6 kodja alapjan keszu:lt. A FreeBSD Portgyu"jtemenyeben
   jelenleg az Xorg 7.4 valtozata erheto" el.

   Az Xorg-ot a Portgyu"jtemenybo"l igy tudjuk leforditani, majd
   telepiteni:

 # cd /usr/ports/x11/xorg
 # make install clean

     Megjegyzes: Az egesz Xorg leforditasahoz legalabb 4 GB szabad
     helyre van szu:ksegu:nk.

   Az X11-et termeszetesen telepithetju:k ko:zvetlenu:l csomagok
   segitsegevel is. A pkg_add(1) hasznalataval telepitheto" binaris
   csomagok is elerheto"ek az X11-hez. Amikor a pkg_add(1) programra
   bizzuk a csomag leto:lteset, ne adjunk meg verzioszamot, a
   pkg_add(1) ugyanis mindig automatikusan az alkalmazas legfrissebb
   verziojat to:lti le.

   Az Xorg csomagjanak leto:ltesehez es telepitesehez egyszeru"en
   csak ennyit irjunk be:

 # pkg_add -r xorg

     Megjegyzes: A fentebb megadott peldak a teljes X11 rendszert
     telepiteni fogjak, beleertve a szervereket, klienseket,
     betu"tipusokat stb. Az X11 egyes reszeihez ku:lo:n talalhatunk
     csomagokat es portokat.

   A fejezet tovabbi reszeben szot ejtu:nk az X11, valamint egy
   irodai hasznalatra alkalmas munkako:rnyezet beallitasarol.

     --------------------------------------------------------------

5.4. Az X11 beallitasa

   Irta: Christopher Shunway.

     --------------------------------------------------------------

  5.4.1. Mielo"tt nekilatnank

   Az X11 beallitasa elo"tt a celrendszer ko:vetkezo" adataira lesz
   szu:ksegu:nk:

     * A monitor jellemzo"i

     * A videokartya chipkeszlete

     * A videokartya memoriajanak merete

   Az X11 a monitor jellemzo"ibo"l allapitja meg, hogy milyen
   felbontasban es frissitesi frekvenciaval mu"ko:dtesse azt. Ezek
   altalaban a monitorhoz tartozo dokumentaciobol vagy a gyarto
   honlapjarol deritheto"ek ki. Igazabol ket ertekre van
   szu:ksegu:nk: a fu:ggo"leges es a vizszintes frissitesi
   frekvenciara.

   A videokartya chipkeszlete hatarozza meg, hogy az X11 melyik
   meghajtojan keresztu:l kommunikal a grafikus hardverrel. Ez a
   legto:bb chipkeszlet eseten magatol megallapithato, de ennek
   ellenere megis jo tisztaban lenni ezzel arra az esetre, ha az
   automatikus felismeres megsem mu"ko:dne.

   A grafikus kartya memoriajanak merete hatarozza meg a rendszer
   altal kihasznalhato felbontast es szinmelyseget. Ezt fontos tudunk
   ahhoz, hogy ismerju:k a rendszeru:nk korlatait.

     --------------------------------------------------------------

  5.4.2. Az X11 beallitasa

   Az Xorg 7.3-as valtozataban gyakran mindenfele konfiguracios
   allomany hasznalata nelku:l egyszeru"en csak adjuk ki a
   ko:vetkezo" parancsot:

 % startx

   A Xorg 7.4 verziojatol kezdo"do"en a szamitogepu:nkho:z
   csatlakoztatott egerek es billentyu"zetek HAL segitsegevel
   automatikusan felismerheto"ek. Ennek megfelelo"en a x11/xorg port
   fu:ggo"segekent telepito"dni fognak a sysutils/hal es devel/dbus
   portok, viszont az /etc/rc.conf allomanyban a ko:vetkezo" sorok
   hozzaadasaval ku:lo:n engedelyeznu:nk kell meg ezeket:

 hald_enable="YES"
 dbus_enable="YES"

   Ezeket a szolgaltatasokat meg az Xorg beallitasa elo"tt el kell
   inditanunk (a parancssorbol manualisan vagy a rendszer
   ujrainditasaval).

   Bizonyos hardvereszko:zo:k eseten az automatikus felismeres meg
   nem mu"ko:dik megbizhatoan vagy nem jol allitja be az ertekeket.
   Ilyen esetekben kezzel kell megadnunk a szu:kseges beallitasokat.

     Megjegyzes: A ku:lo:nbo:zo" munkako:rnyezetek, mint peldaul a
     GNOME, a KDE vagy eppen az Xfce altalaban tartalmaznak olyan
     segedprogramokat, amelyekkel a felhasznalo ko:nnyeden be tudja
     allitani a megjelenites parametereit, to:bbek ko:zt a kepernyo"
     felbontasat. Tehat ha az alapertelmezesek nem megfelelo"ek,
     viszont hasznalni akarunk majd valamilyen munkako:rnyezetet is,
     akkor egyszeru"en csak telepitsu:k az adott ko:rnyezetet es a
     hozzatartozo eszko:zo:n keresztu:l allitsuk be a megjelenitest.

   Az X11 beallitasa egy to:bblepcso"s folyamat. Elso" lepesu:nk egy
   alap konfiguracios allomany o:sszeallitasa lesz.
   Rendszeradminisztratorkent adjuk ki az alabbi parancsot:

 # Xorg -configure

   Ennek segitsegevel az X11 xorg.conf.new neven letrehozza a
   konfiguracios allomany vazat a /root ko:nyvtarban (akar a su(1)
   parancsot hasznaljuk, akar ko:zvetlenu:l igy jelentkezu:nk be, az
   igy o:ro:ko:lt rendszeradminisztratori szerepko:r maga utan vonja
   a $HOME ko:nyvtar atallitasat is). Az X11 megprobalja megkeresni a
   celrendszerben elerheto" grafikus eszko:zo:ket, es letrehozni egy
   olyan konfiguracios allomanyt, amely az eszlelt eszko:zo:kho:z
   tartozo meghajtokat to:lti be.

   A ko:vetkezo" lepesu:nk legyen az iment letrehozott beallitas
   kiprobalasa, amin keresztu:l elleno"rizhetju:k, hogy az Xorg
   tenyleg kepes mu"ko:dni a celrendszer grafikus eszko:zen. Az Xorg
   7.3 es azt megelo"zo" valtozataiban ezt igy tehetju:k meg:

 # Xorg -config xorg.conf.new

   A Xorg 7.4 es keso"bbi valtozataiban a proba eredmenye egy fekete
   kepernyo" lesz, amely megleheto"sen megnehezitheti az X11 helyes
   mu"ko:desenek megallapitasat. A -retro kapcsolo hasznalataval
   azonban tovabbra is elerhetju:k a korabbi verziokban megszokott
   viselkedesi modot:

 # Xorg -config xorg.conf.new -retro

   Ha ezutan a kepernyo"n egy fekete-feher racsot latunk egy X alaku
   egermutatoval a ko:zepen, akkor jo a beallitas. A probat a
   Ctrl+Alt+Backspace billentyu"k egyu:ttes lenyomasaval szakithatjuk
   meg.

     Megjegyzes: Az Xorg 7.3 es korabbi valtozataiban ez a
     billentyu"kombinacio alapertelmezes szerint engedelyezett.
     Amennyiben tovabbra is szu:ksegu:nk lenne ra, a 7.4 es keso"bbi
     valtozatokban ezt ugy tudjuk engedelyezni, ha a begepelju:k a
     ko:vetkezo" parancsot egy X terminalablakban:

 % setxkbmap -option terminate:ctrl_alt_bksp

     Egy masik lehetseges megoldas, ha a billenytu"zet beallitasahoz
     letrehozunk a /usr/local/etc/hal/fdi/policy ko:nyvtarban egy
     konfiguracios allomanyt x11-input.fdi neven a hald szamara.
     Ebben az allomanyban a ko:vetkezo"knek kell szerepelnie:

 <?xml version="1.0" encoding="ISO-8859-2"?>
 <deviceinfo version="0.2">
   <device>
     <match key="info.capabilities" contains="input.keyboard">
         <merge key="input.x11_options.XkbOptions" type="string">terminate:ctrl_alt_bksp</merge>
     </match>
 </deviceinfo>

     A hald a szamitogep ujrainditasaval fogja majd beolvasni ezt az
     allomanyt.

   Ha az eger meg nem mu"ko:dne, mindenkeppen be kell allitanunk a
   tovabblepes elo"tt. Ezzel kapcsolatban a FreeBSD telepitesero"l
   szolo fejezetben levo" 2.10.10 Szakaszt ajanljuk elolvasasra.
   Fontos megemliteni, hogy az Xorg 7.4 valtozatatol kezdo"do"en az
   xorg.conf InputDevice szekcioit az eszko:zo:k automatikusan
   eszlelt beallitasai felu:lbiraljak. A regebbi valtozatok
   viselkedeset ugy tudjuk visszanyerni, ha a ServerLayout es
   ServerFlags szekciok valamelyikehez hozzaadjuk az alabbi sort:

 Option "AutoAddDevices" "false"

   Ezt ko:veto"en a beviteli eszko:zo:k a lehetseges beallitasi
   opciok (peldaul a billentyu"zet-kiosztas valtasa) menten a
   korabbiakban megszokott modon konfiguralhatoak.

     Megjegyzes: Ahogy arrol korabban szo esett, a 7.4 verziotol
     kezdo"do"en a hald magatol erzekelni fogja a szamitogepre
     csatlakoztatott billentyu"zetet. Elo"fordulhat, hogy a
     billentyu"zet tipusa vagy eppen kiosztasa nem lesz megfelelo".
     Ennek beallitasara to:bbnyire a nepszeru"bb munkako:rnyezetek,
     mint peldaul a GNOME, KDE vagy Xfce tartalmaznak ku:lo:n
     segedprogramot. A setxkbmap(1) vagy a hald konfiguracios
     szabalyaval azonban akar ko:zvetlenu:l is meg tudjuk valtoztatni
     a billentyu"zhez tarsitott tulajdonsagokat.

     Peldaul ha egy 102 gombos billentyu"zetet szeretnenk hasznalni
     francia kiosztassal, akkor ehhez a /usr/local/etc/hal/fdi/policy
     ko:nyvtarban kell letrehoznunk egy x11-input.fdi nevu" allomanyt
     a hald reszere. Ebben az allomanyban szerepeljenek az alabbi
     sorok:

 <?xml version="1.0" encoding="ISO-8859-2"?>
 <deviceinfo version="0.2">
   <device>
     <match key="info.capabilities" contains="input.keyboard">
         <merge key="input.x11_options.XkbModel" type="string">pc102</merge>
         <merge key="input.x11_options.XkbLayout" type="string">fr</merge>
   </device>
 </deviceinfo>

     Ha letezik mar ilyen allomanyunk, akkor a billentyu"zet
     megfelelo" beallitasahoz egyszeru"en csak masoljuk ki a fenti
     sorokat es adjuk hozza.

     Inditsuk ujra a szamitogepet, hogy a hald beolvassa az
     allomanyt.

     Ugyanezt egy X terminalbol is kenyelmesen el tudjuk vegezni:

 % setxkbmap -model pc102 -layout fr

     A parameterkent megadhato billentyu"zettipusokat es
     -kiosztasokat a /usr/local/share/X11/xkb/rules/base.lst
     allomanyban talalhatjuk meg.

   Ezutan az izlesu:nknek megfelelo"en hangoljuk be az xorg.conf.new
   allomanyt, nyissuk meg egy szo:vegszerkeszto"ben, peldaul az
   emacs(1)-ben vagy az ee(1)-ben. Elso"kent adjuk meg a
   celrendszerhez csatlakoztatott monitor frekvenciajara vonatkozo
   adatokat. Ezek altalaban a fu:ggo"leges es a vizszintes frissites
   ertekei, melyeket az xorg.conf.new allomany "Monitor" szakaszaban
   (Section) kell feltu:ntetni:

 Section "Monitor"
         Identifier   "Monitor0"
         VendorName   "A monitor gyartoja"
         ModelName    "A monitor tipusa"
         HorizSync    30-107
         VertRefresh  48-120
 EndSection

   A konfiguracios allomanybol valoszinu"leg csak a HorizSync es
   VertRefresh kulcsszavak fognak hianyozni. Amennyiben ez tenyleg
   igy lenne, a megfelelo" vizszintes frissites erteket a HorizSync
   kulcsszo utan, a hozzatartozo fu:ggo"leges frissites erteket pedig
   a VertRefresh kulcsszo utan kell hozzatennu:nk a szakaszhoz. Az
   imenti peldaban mar megadtuk a celrendszer monitoranak frissitesi
   ertekeit.

   Az X megengedi, hogy DPMS (Energy Star) energiagazdalkodasi
   szabvanyt ismero" monitorok leheto"seget is kihasznaljuk. A
   xset(1) program vezerli a monitorok ki- es bekapcsolasat, es
   segitsegevel keszenleti vagy energiatakarekos u:zemmodba tudjuk
   helyezni azokat. Ha engedelyezni kivanjuk a monitorunk DPMS
   leheto"segeit, egyszeru"en csak tegyu:k hozza az alabbi sort a
   monitorunkat leiro szakaszhoz:

         Option       "DPMS"

   Ha mar a xorg.conf.new konfiguracios allomany szerkesztesevel
   vagyunk elfoglalva, valasszuk ki szamunkra kedvezo"
   alapertelmezett felbontast es szinmelyseget is. Ezt a "Screen"
   (Kepernyo") nevu" szakaszban tehetju:k meg:

 Section "Screen"
         Identifier "Screen0"
         Device     "Card0"
         Monitor    "Monitor0"
         DefaultDepth 24
         SubSection "Display"
                 Viewport  0 0
                 Depth     24
                 Modes     "1024x768"
         EndSubSection
 EndSection

   A DefaultDepth kulcsszo utan adjuk meg a rendszer alapertelmezett
   szinmelyseget. Ezt keso"bb az Xorg(1) -depth parameterevel
   biralhatjuk felu:l a parancssorbol. A Modes kulcsszo utan jelennek
   meg azok a felbontasok, amelyekben az adott szinmelyseg elerheto".
   Itt csak olyan VESA szabvanyu modok jelenhetnek meg, amelyet a
   celrendszer grafikus eszko:ze is tamogat. A fenti peldaban az
   alapertelmezett szinmelyseg keppontonkent huszonnegy bit, es ebben
   a szinmelysegben az elfogadott felbontas 1024-szer 768 pixel.

   Vegezetu:l mentsu:k el a szerkesztett konfiguracios allomanyt es
   probaljuk ki a korabban leirt modszer szerint.

     Megjegyzes: A hibakereses soran maguk az X11 naploallomanyai is
     hasznos eszko:znek bizonyulhatnak, mivel ezek minden olyan
     eszko:zro"l tartalmaznak informaciot, amelyekhez az X11
     szervernek sikeru:lt csatlakoznia. Az Xorg naploit a
     /var/log/Xorg.0.log elnevezest ko:veto" allomanyokban talaljuk
     meg. A konkret naplok nevei Xorg.0.log-tol Xorg.8.log-ig es igy
     tovabb terjedhetnek.

   Ha minden a legnagyobb rendben haladt eddig, a konfiguracios
   allomanyt el kell tennu:nk egy olyan ko:zponti helyre, ahol az
   Xorg(1) kepes lesz majd megtalalni. Ez a hely altalaban az
   /etc/X11/xorg.conf vagy a /usr/local/etc/X11/xorg.conf.

 # cp xorg.conf.new /etc/X11/xorg.conf

   Az X11 beallitasat ezzel befejeztu:k. Az Xorg innento"l
   elindithato a startx(1) segedprogram vagy az xdm(1) hasznalataval.

     --------------------------------------------------------------

  5.4.3. Temak ido"sebbeknek es haladoknak

    5.4.3.1. Az i810 grafikus chipkeszlet beallitasa

   Az Intel i810 integralt chipkeszletenek meghajtasahoz szu:ksegu:nk
   lesz az agpart nevu" AGP programozasi felu:letre az X11-ben.
   Erro"l az agp(4) meghajto man oldalan olvashatuk to:bbet.

   Ennek segitsegevel ezt a hardvert is a to:bbi grafikus kartyahoz
   hasonloan allithatjuk be. Vegyu:k figyelmbe azonban, hogy az
   agp(4) meghajtot beepitve nem tartalmazo rendszermaggal futo
   rendszerekben a kldload(8) paranccsal utolag mar nem tudjuk
   beto:lteni! Ezt a meghajtot mar a rendszerinditas soran be kell
   tudnunk to:lteni: vagy a rendszermagba forditjuk, vagy pedig a
   /boot/loader.conf allomanyban hivatkozunk ra.

     --------------------------------------------------------------

    5.4.3.2. Widescreen Flat Panel monitorok hasznalata

   Ebben a reszben feltetelezu:nk nemi tapasztalatot a beallitasok
   teren. Amennyiben a szabvanyos konfiguracios eszko:zo:k cso"do:t
   mondtak a beallitas soran, magukbol a naploallomanyokbol is
   kinyerhetu:nk elegendo" informaciot ahhoz, hogy mu"ko:desre birjuk
   rendszeru:nket. Ehhez mindenkeppen legyen keznel egy
   szo:vegszerkeszto"!

   A jelenlegi szelesvasznu (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+ es
   tarsai) formatumok a 16:10-es es 10:9-es keparanyokat ismerik,
   amik neha gondot okozhatnak. Peldaul a 16:10-es keparany
   felbontasai:

     * 2560x1600

     * 1920x1200

     * 1680x1050

     * 1440x900

     * 1280x800

   Bizonyos szempontbol egyszeru"en csak a fenti felbontasok
   valamelyiket kell felvenni a "Screen" szakasz Mode soraba,
   valahogy igy:

 Section "Screen"
 Identifier "Screen0"
 Device     "Card0"
 Monitor    "Monitor0"
 DefaultDepth 24
 SubSection "Display"
         Viewport  0 0
         Depth     24
         Modes     "1680x1050"
 EndSubSection
 EndSection

   Az Xorg eleg intelligens ahhoz, hogy a szelesvasznu
   megjelenitessel kapcsolatos informaciokat lekerje a monitor
   I2C/DDC adatai ko:zu:l, ezert meg tudja allapitani, hogy az
   eszko:z milyen frissitesi frekvenciakat es felbontasokat bir el.

   Ha az alabbi ModeLine ertekek nem szerepelnenek a meghajtokban,
   akkor velu:k kapcsolatban egy kicsit sugnunk kell az Xorg-nak. A
   /var/log/Xorg.0.log atragasaval elegendo" informaciot tudunk
   gyu"jteni ahhoz, hogy manualisan vegyu:nk fel hasznalhato ModeLine
   ertekeket. Nem kell mast tennu:nk, mint ehhez hasonlo sorokat
   keresnu:nk:

 (II) MGA(0): Supported additional Video Mode:
 (II) MGA(0): clock: 146.2 MHz   Image Size:  433 x 271 mm
 (II) MGA(0): h_active: 1680  h_sync: 1784  h_sync_end 1960 h_blank_end 2240 h_border: 0
 (II) MGA(0): v_active: 1050  v_sync: 1053  v_sync_end 1059 v_blanking: 1089 v_border: 0
 (II) MGA(0): Ranges: V min: 48  V max: 85 Hz, H min: 30  H max: 94 kHz, PixClock max 170 MHz

   Ezeket nevezik EDID-adatoknak (Extended display identification
   data, vagyis "bo"vitett megjelenitesi azonosito adatoknak").
   Belo"lu:k a megfelelo" ModeLine sor letrehozasa csupan annyibol
   all, hogy a szamertekeket a megfelelo" sorrendbe tesszu:k:

 ModeLine <name> <clock> <4 horiz. timings> <4 vert.  timings>

   Ezaltal a peldaban latott "Monitor" szakasz ModeLine sora igy fog
   kinezni:

 Section "Monitor"
 Identifier      "Monitor1"
 VendorName      "Bigname"
 ModelName       "BestModel"
 ModeLine        "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
 Option          "DPMS"
 EndSection

   Miutan vegrehajtottuk ezeket az egyszeru" beallitasi lepeseket, az
   X most mar valoszinu"leg el fog indulni az uj szelesvasznu
   monitorunkon.

     --------------------------------------------------------------

5.5. Betu"tipusok hasznalata az X11-ben

   Irta: Murray Stokely.

  5.5.1. Type1 betu"tipusok

   Az X11-hez tartozo alap betu"tipusok nem mondhatoak kifejezetten
   idealisnak peldaul egy atlagos asztali kiadvanyszerkeszto"
   alkalmazas szamara. A nagyobb meretu" bemutatokon a betu"i
   szo:gletesen es idetlenu:l neznek ki, a Netscapeben megjeleno"
   kisebb betu"k pedig szinte teljesseggel olvashatatlanok. Viszont
   manapsag mar rengeteg szabad, nagyon jo mino"segu" es ko:nnyen
   hasznalhato Type1 (PostScript(R)) betu"tipus erheto" el az
   X11-hez. Peldaul az URW betu"tipus-gyu"jtemeny
   (x11-fonts/urwfonts) a szabvanyos Type1 betu"tipusok (Times
   Roman(R), Helvetice(R), Palatino(R) es meg sok mas) jo mino"segu"
   valtozatait tartalmazza. A Freefonts nevu" gyu"jtemeny
   (x11-fonts/freefonts) is tartalmaz sok mas betu"tipust, de a
   legto:bbju:ket inkabb csak a Gimpben es a hozza hasonlo grafikai
   alkalmazasokban tudjuk hasznalni, illetve nincsenek is meg kello"
   mertekben befejezve a hetko:znapi munkakhoz. Ezeken felu:l az X11
   minimalis u:gyeskedessel beallithato a TrueType betu"tipusok
   hasznalatara is. Erro"l reszleteket a X(7) man oldalon, illetve a
   TrueType betu"tipusokrol szolo szakaszban olvashatunk.

   A Portgyu"jtemenybo"l az iment emlitett Type1 betu"tipusokat az
   alabbi parancsok segitsegevel telepithetju:k:

 # cd /usr/ports/x11-fonts/urwfonts
 # make install clean

   Ugyanigy jarjunk el a freefont es a to:bbi gyu"jtemeny eseten is.
   Az X szerver akkor fogja eszlelni ezeket a betu"tipusokat, ha
   hozzaadjuk a ko:vetkezo" sort a konfiguracios allomanyahoz
   (/etc/X11/xorg.conf):

 FontPath "/usr/local/lib/X11/fonts/URW/"

   Vagy megtehetju:k mindezt az X futtatasa soran is:

 % xset fp+ /usr/local/lib/X11/fonts/URW
 % xset fp rehash

   Ez utobbi beallitas viszont el fog veszni az X leallitasaval,
   hacsak nem vesszu:k hozza a inditoszkriptjehez (ez az ~/.xinitrc a
   startx hasznalata eseten, illetve az ~/.xsession, amikor egy
   XDM-szeru" grafikus bejelentkezest hasznalunk). Ezek mellett
   hasznalhatjuk a /usr/local/etc/fonts/local.conf allomanyt is:
   erro"l az elsimitassal foglalkozo szakaszban szolunk
   reszletesebben.

     --------------------------------------------------------------

  5.5.2. TrueType(R) betu"tipusok

   Az Xorg beepitett tamogatast tartalmaz a TrueType betu"tipusok
   renderelesehez. Ket ku:lo:nbo:zo" modul valositja meg ezt a
   feladatot. Ebben peldaban a freetype nevu" modult hasznaljuk,
   mivel sokkal jobban illeszkedik a to:bbi betu"renderelo"ho:z. A
   freetype modul hasznalatahoz mindo:ssze az /etc/X11/xorg.conf
   allomany "Module" szakaszaba kell beirnunk a ko:vetkezo" sort:

 Load  "freetype"

   Most pedig hozzunk letre egy ko:nyvtarat a TrueType betu"tipusok
   szamara (ez legyen peldaul a /usr/local/lib/X11/fonts/TrueType),
   majd masoljuk az o:sszes TrueType betu"tipusunkat ide. Vigyazzunk
   ra, hogy Macintosh(R)-rol TrueType betu"tipusok ko:zvetlenu:l nem
   hozhatoak at, az X11 szamara UNIX/MS-DOS/Windows formatumban kell
   lenniu:k. Miutan sikeru:lt atmasolnunk az allomanyokat ebbe a
   ko:nyvtarba, hasznaljuk a ttmkfdir parancsot a fonts.dir allomany
   letrehozasara, aminek reven az X betu"renderelo"je tudnia fogja,
   hogy uj allomanyokat telepitettu:nk. A ttmkfdir x11-fonts/ttmkfdir
   neven elerheto" a FreeBSD Portgyu"jtemenyebo"l.

 # cd /usr/local/lib/X11/fonts/TrueType
 # ttmkfdir -o fonts.dir

   Ezutan adjuk hozza a TrueType ko:nyvtarat a betu"tipusok
   ko:nyvtaraihoz. Itt is a Type1 betu"tipusoknal leirtak szerint
   kell eljarnunk, vagyis hasznaljunk a

 % xset fp+ /usr/local/lib/X11/fonts/TrueType
 % xset fp rehash

   parancsot, vagy adjunk hozza a xorg.conf allomanyhoz egy tovabbi
   FontPath sort.

   Ezzel vegeztu:nk is. Innento"l kezdve a Netscape, Gimp, a
   StarOffice(TM) es mindegyik X alkalmazas fel fogja ismerni a
   frissen telepitett TrueType betu"tipusokat. A nagyon kicsi betu"k
   (egy honlap megtekintese soran, nagyfelbontasban) es a nagyon nagy
   betu"k (a StarOffice hasznalatakor) most mar sokkal jobban fognak
   mutatni.

     --------------------------------------------------------------

  5.5.3. A betu"k elsimitasa

   Frissitette: Joe Marcus Clarke.

   Az X11-ben az XFree86 4.0.2-es valtozata ota erheto" el az
   elsimitas, azonban az XFree86 4.3.0-at megelo"zo"en a betu"k
   beallitasa megleheto"sen ko:ru:lmenyes volt. Az XFree86 4.3.0-as
   verziojaval kezdo"do"en az X11 altal hasznalt, a
   /usr/local/lib/X11/fonts/ es a ~/.fonts/ ko:nyvtarakban talalhato
   o:sszes betu"tipus elsimitasa automatikusan elerheto" az Xft-re
   felkeszitett alkalmazasok szamara. Nem mindegyik alkalmazas
   hasznalja ki az Xft-t, de sokan kaptak hozza tamogatast. Ilyen
   Xft-alkalmazasok a (KDE fejlesztesehez hasznalt) Qt 2.3 es
   keso"bbi valtozatai, a (GNOME fejlesztesehez hasznalt) GTK+ 2.0 es
   keso"bbi valtozatai, valamint a Mozilla 1.2 es keso"bbi
   valtozatai.

   A betu"tipusok elsimitasanak be- es kikapcsolasahoz, valamint
   elsimitasi jellemzo"inek beallitasahoz hozzuk letre (vagy ha mar
   letezne, modositsuk) a /usr/local/etc/fonts/local.conf allomanyt.
   Az Xft betu"rendszer szamos kifinomult leheto"sege hangolhato
   ezzel az allomannyal, amelyekbo"l ebben a szakaszban csupan
   ro:vidke izelito"t fogunk adni. A pontosabb reszletekro"l a
   fonts-conf(5) man oldalon tajekozodhatunk.

   Az allomanynak XML formatumunak kell lennie. Ku:lo:no:sen
   u:gyelju:nk a kis- es nagybetu"kre, illetve gyo"zo:dju:nk meg
   mindig rola, hogy lezartuk-e az o:sszes taget. Az allomany a
   szokasos XML-fejleccel kezdo"dik, amelyet egy DOCTYPE definicio
   ko:vet, majd a <fontconfig> tag:

       <?xml version="1.0"?>
       <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
       <fontconfig>

   Ahogy azt mar korabban is emlitettu:k, a /usr/local/lib/X11/fonts
   es a ~/.fonts/ ko:nyvtarakban talalhato o:sszes betu"tipus
   elsimitasa elerheto" az Xft-re felkeszitett alkalmazasok szamara.
   Amennyiben ezeken tul meg tovabbi ko:nyvtarakat is fel kivanunk
   venni, irjuk bele a /usr/local/etc/fonts/local.conf allomanyba,
   nagyjabol ilyen alakban:

 <dir>/az/en/betu/tipusaim</dir>

   Az uj betu"tipusok, de legfo"keppen az uj betu"tipusokat
   tartalmazo ko:nyvtarak hozzaadasa utan a betu"kkel kapcsolatos
   gyorsitotarak frissitesehez mindenkeppen javasolt lefuttatni az
   alabbi parancsot:

 # fc-cache -f

   Az elsimitas hatasara a betu"k konturjai egy kisse elmosodnak,
   aminek ko:szo:nheto"en a nagyon kis meretu" szo:vegek sokkal
   olvashatobba valnak es eltu"nnek a nagy meretu" betu"kro"l a
   "lepcso"k", azonban a normal meretu" betu"knel megfajdulhat to"le
   a szemu:nk. A 14 pontnal kisebb meretu" betu"k eseten az alabbi
   sorok hozzaadasaval tudjuk kikapcsolni az elsimitast:

         <match target="font">
             <test name="size" compare="less">
                 <double>14</double>
             </test>
             <edit name="antialias" mode="assign">
                 <bool>false</bool>
             </edit>
         </match>
         <match target="font">
             <test name="pixelsize" compare="less" qual="any">
                 <double>14</double>
             </test>
             <edit mode="assign" name="antialias">
                 <bool>false</bool>
             </edit>
         </match>

   Bizonyos egyenszelessegu" (monospaced) betu"tipusok elsimitasa
   eseten a betu"k tavolsaga nem megfelelo". Ez leginkabb a KDE
   hasznalata eseten meru:l fel. Ezt a problemat ugy is
   orvosolhatjuk, ha az ilyen betu"tipusok terko:zet kezzel 100-ra
   allitjuk. Ehhez irjuk be a ko:vetkezo" sorokat:

        <match target="pattern" name="family">
            <test qual="any" name="family">
                <string>fixed</string>
            </test>
            <edit name="family" mode="assign">
                <string>mono</string>
            </edit>
         </match>
         <match target="pattern" name="family">
             <test qual="any" name="family">
                 <string>console</string>
             </test>
             <edit name="family" mode="assign">
                 <string>mono</string>
             </edit>
         </match>

   (ezzel lefedju:k o:sszes ro:gzitett meretu" (fixed) betu"tipust
   "mono"-kent), majd vegyu:k hozza ezt is:

          <match target="pattern" name="family">
              <test qual="any" name="family">
                  <string>mono</string>
              </test>
              <edit name="spacing" mode="assign">
                  <int>100</int>
              </edit>
          </match>     

   Egyes betu"tipusoknal, mint peldaul a Helveticanal, gondok
   akadhatnak az elsimitassal. Ez altalaban egy fu:ggo"legesen
   kettevagottnak latszo betu" kepeben jelenik meg. De ami a
   legrosszabb, hogy emiatt nemely alkalmazas, mint peldaul a Mozilla
   kepes o:sszeomlani. Ennek elkeru:lesere tegyu:k hozza meg az
   alabbi sorokat a local.conf allomanyhoz:

          <match target="pattern" name="family">
              <test qual="any" name="family">
                  <string>Helvetica</string>
              </test>
              <edit name="family" mode="assign">
                  <string>sans-serif</string>
              </edit>
          </match>       

   Miutan befejeztu:k a local.conf szerkeszteset, elleno"rizzu:k,
   hogy szerepel-e az allomany vegen a </fontconfig> tag. Ha ugyanis
   nem zarjuk le rendesen, akkor a valtoztatasaink ervenytelenne
   valnak.

   Az X11-hez tartozo alap betu"tipus nem eppen mutatos elsimitott
   alakjaban. Erre a celra sokkal jobb alap betu"tipusok is
   talalhatoak a x11-fonts/bitstream-vera portban. Ha meg nem letezne
   /usr/local/etc/fonts/local.conf allomanyunk, akkor ezt a port
   letrehozza. Ellenkezo" esetben a port keszit egy
   /usr/local/etc/fonts/local.conf-vera nevu" allomanyt. Fesu:lju:k
   o:ssze ennek az allomanynak a tartalmat a
   /usr/local/etc/fonts/local.conf tartalmaval, es a Bitstream
   betu"tipusok maguktol felvaltjak az X11 alapertelmezett talpas
   (serif), talpatlan (sans serif) es egyenszelessegu" (monospaced)
   betu"tipusait.

   Vegezetu:l a felhasznalok is megadhatjak a sajat beallitasaikat a
   sajat .fonts.conf allomanyuk segitsegevel. Ehhez nem kell mast
   tenni, mindo:ssze letrehozni egy ~/.fonts.conf XML-allomanyt.

   Meg egy utolso o:tlet: LCD kepernyo"k eseten szu:ksegu:nk lehet az
   un. "sub-pixel sampling" (reszkeppont mintavetelezesi) technikara.
   Ezzel lenyegeben a (vizszintesen elvalasztott) vo:ro:s, zo:ld es
   kek o:sszetevo"ket ku:lo:n-ku:lo:n kezelju:k a horizontalis
   felbontas javitasara. Bamulatos eredmenyeket lehet elerni a
   segitsegevel! A bekapcsolasahoz a ko:vetkezo" sorokat kell
   beszurnunk valahova a local.conf allomanyba:

          <match target="font">
              <test qual="all" name="rgba">
                  <const>unknown</const>
              </test>
              <edit name="rgba" mode="assign">
                  <const>rgb</const>
              </edit>
          </match>
      

     Megjegyzes: A megjelenito" fajtajatol fu:ggo"en lehet, hogy az
     rgb erteket bgr-re, vrgb-re vagy vbgr-re kell cserelnu:nk.
     Probalgassuk es kideru:l, hogy melyikkel mu"ko:dik jobban.

   Az elsimitas hatasa az X ko:vetkezo" inditasakor fog latszodni.
   Azonban a programoknak tudniuk is kell elni az altala felkinalt
   elo"nyo:kkel. A Qt pillanatnyilag kepes erre, ezert az o:sszes
   KDE-elem ki tudja hasznalni a betu"tipusok elsimitasat. A GTK+ es
   a GNOME is hasznalja az elsimitast a "Font" cappleten keresztu:l
   (erro"l bo"vebben ld. a 5.7.1.3 Szakaszt). A Mozilla 1.2 es
   keso"bbi valtozatai mar alapertelmezes szerint hasznaljak az
   elsimitast. Ennek kikapcsolasahoz a Mozillat a -DWITHOUT_XFT
   kapcsoloval forditsuk ujra.

     --------------------------------------------------------------

5.6. Az X bejelentkezteto" kepernyo"je

   Irta: Seth Kingsley.

  5.6.1. O:sszefoglalas

   Az X bejelentkezteto" kepernyo"je (az X Display Manager vagy
   ro:viden csak XDM) az X Window System egyik kiegeszito" eleme,
   melyet a bejelentkezesek lebonyolitasara hasznalunk. Szamtalan
   helyzetben hasznosnak bizonyulhat, beleertve a legkisebb "X
   terminalokat" es a legnagyobb halozati szervereket is. Mivel az X
   Window System fu:ggetlen halozattol es protokolltol, a halozaton
   o:sszekapcsolt, X klienseket es szervereket futtato ku:lo:nbo:zo"
   szamitogepek szeles kombinacioja elo"fordulhat. Az XDM egy
   grafikus felu:leten keresztu:l segit valasztani az elerheto"
   szerverek ko:zo:tt, valamint a felhasznalok, peldaul
   felhasznalonev es jelszon keresztu:li, hitelesiteseben.

   Az XDM tulajdonkeppen a felhasznalo szamara ugyanazokat a
   funkciokat nyujtja, mint a getty(8) program (erro"l bo"vebben lasd
   26.3.2 Szakasz). Tehat: belepteti a felhasznalot a szerverre,
   ahova csatlakozott, illetve elinditja helyette a hozzatartozo
   munkamenet kezelo"jet (ami altalaban egy X-es ablakkezelo"). Az
   XDM megvarja ennek a programnak a befejezo"deset, ami egyben jelzi
   szamara, hogy a felhasznalo elvegezte a dolgat, es kilepteti a
   szerverro"l. Ezutan az XDM ujra varakozni kezd a ko:vetkezo"
   felhasznalora, miko:zben a bejelentkezeshez es a szerver
   kivalasztasahoz szu:kseges kepernyo"ket jeleniti meg.

     --------------------------------------------------------------

  5.6.2. Az XDM hasznalata

   Az XDM-hez tartozo demon a /usr/local/bin/xdm allomany. Ezt
   programot root felhasznalokent barmikor tudjuk futtatni, es ez
   veszi kezelesbe a helyi gepen futo X szervert. Amennyiben az
   XDM-et a szamitogep minden egyes indulasa soran el akarjuk
   inditani, egyszeru"en csak adjuk hozza a megfelelo" bejegyzest az
   /etc/ttys allomanyhoz. Ennek a formai szabalyairol es
   hasznalatarol bo"vebben lasd 26.3.2.1 Szakasz. Az /etc/ttys
   alapertelmezett valtozataban az XDM demont ebben a formaban
   talaljuk meg a virtualis terminalok ko:zo:tt:

 ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   off secure

   Ez a bejegyzes alapbol nem aktiv. Az engedelyezesehez irjuk at az
   o:to:dik mezo"ben szereplo" off (kikapcsolva) erteket on
   (bekapcsolva)-ra, majd inditsuk ujra az init(8) programot a
   26.3.2.2 Szakaszban leirtak szerint. Az elso" mezo"ben talalhatjuk
   a program altal kezelt terminalt, ez jelen esetu:nkben a ttyv8.
   Ennek megfelelo"en az XDM a 9. virtualis terminalon kezdi meg a
   futasat.

     --------------------------------------------------------------

  5.6.3. Az XDM beallitasa

   Az XDM beallitasait tartalmazo ko:nyvtar a /usr/local/lib/X11/xdm.
   Itt talalhatjuk meg azokat az allomanyokat, amelyek
   megvaltoztatasaval befolyasolhatjuk az XDM megjeleneset es
   viselkedeset. Altalaban a ko:vetkezo" allomanyok bukkannak fel
   ezen a helyen:

    Allomany                          Leiras                          
   Xaccess    A kliens hitelesitesenek szabalyrendszere.              
   Xresources Az X ero"forrasainak alapertelmezett ertekei.           
   Xservers   Az ismert tavoli es helyi X szerverek listaja.          
   Xsession   A bejelentkezesek soran lefuto alapertelmezett szkript. 
   Xsetup_*   A bejelentkezo" felu:let inditasa elo"tt inditando      
              alkalmazasokkal kapcsolatos szkript.                    
   xdm-config A gepen futo o:sszes X szerver globalis beallitasai.    
   xdm-errors A szerver altal jelentett hibak.                        
   xdm-pid    A jelenleg futo XDM-hez tartozo azonosito.              

   Ebben a ko:nyvtarban talalunk meg nehany olyan programot es
   szkriptet, amelyekkel be tudjuk allitani a munkaasztalunkat az XDM
   futasa alatt. Ezen allomanyok celjait egyenkent ismertetni fogjuk.
   A felepitesu:kro"l es hasznalatukrol az xdm(1) man oldala arul el
   to:bbet.

   Az alapertelmezett beallitas egy teglalap alaku bejelentkezo"
   ablak, aminek tetejen nagy betu"kkel a gep neve olvashato,
   valamint alatta a "Login:" (felhasznaloi nev) es "Password:"
   (jelszo) mezo"k varnak kito:ltesre. Ez egy remek kiindulasi alap
   az XDM-kepernyo" kinezetenek megvaltoztatasahoz.

     --------------------------------------------------------------

    5.6.3.1. Xaccess

   Az XDM-mel szabalyozott X szerverek altal hasznalt protokoll az X
   Display Manager Connection Protocol (XDMCP). Ez az allomany
   tartalmazza a tavoli szamitogepekro"l erkezo" XDMCP-kapcsolatok
   vezerlesere vonatkozo szabalyokat. Ezt a rendszer altalaban
   figyelmen kivu:l hagyja, hacsak az xdm-config allomanyban be nem
   allitottuk a tavoli szamitogepek csatlakoztathatosagat.
   Alapertelmezes szerint viszont semmilyen klienst nem enged
   csatlakozni.

     --------------------------------------------------------------

    5.6.3.2. Xresources

   Ez tartalmazza a szervervalaszto es bejelentkezo" kepernyo"
   alapertelmezeseit. Segitsegevel a bejelentkeztetest vegzo" program
   kinezetet valtoztathatjuk meg. Formatuma hasonlo az X11
   dokumentaciojaban leirt app-defaults allomanyhoz.

     --------------------------------------------------------------

    5.6.3.3. Xservers

   A szervervalaszto altal felkinalando tavoli X szerverek
   felsorolasat tartalmazza.

     --------------------------------------------------------------

    5.6.3.4. Xsession

   A felhasznalo bejelentkezese utan ez az XDM-szkript fog lefutni.
   Altalaban minden felhasznalohoz tartozik egy sajat ~/.xsession
   szkript, ami ezt felu:lbiralja.

     --------------------------------------------------------------

    5.6.3.5. Xsetup_*

   Ezek fognak automatikusan lefutni a szervervalaszto vagy
   bejelentkezteto" felu:letek megjelenese elo"tt. Minden altalunk
   hasznalt X szerverhez tartozik egy ilyen szkript, amelyek neve
   Xsetup_-al kezdo"dik es a helyi X szerver sorszamaval folytatodik
   (peldaul Xsetup_0). Ezek a szkriptek altalaban egy-ket programot,
   mint peldaul az xconsole, inditanak el a hatterben.

     --------------------------------------------------------------

    5.6.3.6. xdm-config

   Az app-defaults nevu" allomanyehoz hasonlo alakban tartalmaz
   beallitasokat a program altal kezelt minden egyes X szerverhez.

     --------------------------------------------------------------

    5.6.3.7. xdm-errors

   Ebben talalhato meg az XDM altal futtatni probalt X szerverek
   kimenete. Itt erdemes hibau:zenetek utan kutatni, ha az XDM altal
   inditott X szerver valamiert megallna. Ezek az u:zenetek egyebkent
   a felhasznalo ~/.xsession-errors allomanyaba is beirodnak.

     --------------------------------------------------------------

  5.6.4. Halozati X szerver futtatasa

   Az X szerveru:nkho:z csak akkor tudnak kivu:lro"l mas felhasznalok
   is kapcsolodni, ha atirjuk a hozzaferesre vonatkozo szabalyokat es
   engedelyezzu:k rajta a kapcsolodast. Az alapertelmezett szabalyok
   nagyon ovatosak. Ha tehat engedelyezni akarjuk a kivu:lro"l
   erkezo" kapcsolodasokat, akkor ahhoz elo"szo:r az xdm-config
   allomanybol vegyu:k ki az alabbi sort:

 ! SECURITY: do not listen for XDMCP or Chooser requests
 ! Comment out this line if you want to manage X terminals with xdm
 DisplayManager.requestPort:     0

   Ezutan inditsuk ujra az XDM-et. Ne felejtsu:k el, hogy az
   app-defaults allomanyokban a megjegyzesek "!" (felkialto)jellel
   kezdo"dnek, nem pedig a megszokott "#" (ketto"skereszt)tel. A
   fentieknel termeszetesen szigorubb hozzaferesi szabalyok is
   szu:ksegesek lehetnek -- ezzel kapcsolatban nezzu:k meg Xaccess
   allomanyban szereplo" peldakat, illetve lapozzuk fel az xdm(1) man
   oldalt.

     --------------------------------------------------------------

  5.6.5. Az XDM helyett

   Az alapertelmezett XDM feladatat szamos mas program is kepes
   ellatni. Ezek ko:zu:l az egyik a kdm (a KDE resze), amire ebben a
   fejezetben meg vissza fogunk terni. A kdm ku:lo:nfele vizualis
   effekteket es egyeb kozmetikazast iger, valamint leheto"ve teszi a
   felhasznalok szamara, hogy a bejelentkezes elo"tt kivalaszthassak
   a hasznalni kivant ablakkezelo"t.

     --------------------------------------------------------------

5.7. Munkako:rnyezetek

   Irta: Valentino Vaschetto.

   Ebben a szakaszban a FreeBSD-n futo X-hez elerheto" ku:lo:nbo:zo"
   munkako:rnyezetekro"l (desktop environment) lesz szo. Maga a
   "munkako:rnyezet" elnevezes sok mindenre utalhat egy mezei
   ablakkezelo"to"l kezdve az asztali alkalmazasok teljes
   garmadajaig, ahogy igaz ez a KDE vagy a GNOME eseteben is.

     --------------------------------------------------------------

  5.7.1. A GNOME

    5.7.1.1. Ro:viden a GNOME-rol

   A GNOME egy felhasznalobarat munkako:rnyezet, aminek segitsegevel
   a felhasznalok szamara gyerekjatek a szamitogep hasznalata es
   beallitasa. A GNOME-ban talalhatunk egy panelt (az alkalmazasok
   inditasara es ku:lo:nfele allapotjelzo"k megjelenitesehez), egy
   asztalt (ahova az alkalmazasok es az adatok keru:lnek), szabvanyos
   asztali eszko:zo:ket es alkalmazasokat, valamint szamos
   konvenciot, aminek menten az alkalmazasok ko:nnyen egyu:tt tudnak
   mu"ko:dni es tartani egymassal az o:sszhangot. Mas operacios
   rendszerek vagy ko:rnyezetek ismero"i otthon erezhetik magukat
   ebben a GNOME altal nyujtott vizualis ko:rnyezetben. A FreeBSD es
   a GNOME kapcsolatarol bo"vebb informaciokat a FreeBSD GNOME
   Projekt honlapjan talalhatunk. Ezen az oldalon a GNOME
   telepitesero"l, beallitasarol es karbantartasarol egy
   megleheto"sen atfogo leirast olvashatunk.

     --------------------------------------------------------------

    5.7.1.2. A GNOME telepitese

   A programot ko:nnyen fel tudjuk telepiteni csomagbol vagy a
   Portgyu"jtemeny segitsegevel:

   A halozatrol a GNOME csomagjat mindo:ssze ennek a sornak a
   beirasaval fel tudjuk telepiteni:

 # pkg_add -r gnome2

   A portfa felhasznalasaval pedig a GNOME-ot igy tudjuk forrasbol
   telepiteni:

 # cd /usr/ports/x11/gnome2
 # make install clean

   Miutan a GNOME-ot sikeru:lt feltelepitenu:nk, meg kell mondanunk
   az X szervernek, hogy az alapertelmezett ablakkezelo" helyett a
   GNOME-ot inditsa el.

   A GNOME-ot legko:nnyebben a GDM, vagyis a GNOME Display Manager
   hasznalataval indithatjuk el. A GDM a GNOME reszekent telepu:l
   (habar alapbol nincs bekapcsolva), es ugy tudjuk aktivalni, ha
   /etc/rc.conf allomanyba beirjuk a gdm_enable="YES" sort.
   Ujrainditas utan a GNOME automatikusan elindul bejelentkezeskor --
   nincs szu:kseg tovabbi beallitasra.

   A GNOME-ot parancssorbol is elindithatjuk, ha hozza megfelelo"en
   beallitjuk az .xinitrc nevu" allomanyt. Ha mar van egy sajat
   .xinitrc allomanyunk, akkor nincs mas teendo"nk, mint atirni az
   aktualis ablakkezelo"nket hivo sort a /usr/local/bin/gnome-session
   sorra. Ha nem csinaltunk elo"tte semmilyen ku:lo:nleges dolgot az
   emlitett konfiguracios allomannyal, akkor elegendo" csak ennyit
   beirnunk:

 % echo "/usr/local/bin/gnome-session" > ~/.xinitrc

   Ezt ko:veto"en irjuk be a startx parancsot, es a GNOME
   munkako:rnyezete fog elindulni.

     Megjegyzes: Ha az XDM-hoz hasonlo regebbi bejelentkezteto"
     kepernyo"t hasznalunk, ez a modszer nem fog mu"ko:dni. Helyette
     hozzunk letre egy .xsession nevu" futtathato allomanyt, amely
     ezt a parancsot tartalmazza. Ehhez nyissuk meg es cserelju:k ki
     benne a korabbi ablakkezelo"nk hivasat a
     /usr/local/bin/gnome-session utasitasra:

 % echo "#!/bin/sh" > ~/.xsession
 % echo "/usr/local/bin/gnome-session" >> ~/.xsession
 % chmod +x ~/.xsession

   Megcsinalhatjuk azt is, hogy a bejelentkezeskor valaszthato legyen
   az ablakkezelo". A KDE-ro"l bo"vebben cimu" szakaszban latni
   fogjuk, hogyan tudjuk ezt a a KDE bejelentkezteto" kepernyo"je, a
   kdm eseten beallitani.

     --------------------------------------------------------------

    5.7.1.3. Elsimitott betu"tipusok a GNOME-mal

   Az X11 a "RENDER" kiterjesztesen keresztu:l ismeri az elsimitast.
   A (GNOME altal hasznalt) GTK+ 2.0 es keso"bbi valtozatai is
   kepesek ezt a leheto"seget kihasznalni. Az elsimitas beallitasa a
   5.5.3 Szakaszban olvashato. Igy tehat a GNOME legfrissebb
   verzioiban mar hasznalhatjuk az elsimitast. Ehhez menju:nk az
   Applications->Desktop Preferences->Font (a magyar valtozatban ez
   az Alkalmazasok->A munkaasztal beallitasai->Betu"k) menu:be, majd
   valasszuk vagy a Best shapes (A legszebb betu"forma), Best
   contrast (A legjobb kontraszt) vagy a Subpixel smoothing (LCDs)
   (Simitas a kepponton belu:l (LCD)) menu:pontot. A GTK+-ot
   hasznalo, de ko:zvetlenu:l a GNOME-hoz nem tartozo alkalmazasok
   eseten pedig allitsuk be a GDK_USE_XFT ko:rnyezeti valtozot 1 a
   program inditasa elo"tt.

     --------------------------------------------------------------

  5.7.2. A KDE

     --------------------------------------------------------------

    5.7.2.1. Ro:viden a KDE-ro"l

   A KDE egy ko:nnyen hasznalhato modern munkako:rnyezet. Izelito"u:l
   a KDE felhasznalok szamara felkinalt leheto"segei ko:zu:l:

     * Gyo:nyo:ru", korszeru" munkafelu:let

     * Az asztal halozaton keresztu:li transzparens kezelese

     * A KDE asztal es alkalmazasainak hasznalataban egy beepitett
       sugorendszer segiti a kenyelmes es o:sszefu:ggo" ko:zlekedest

     * A KDE alkalmazasainak o:sszehangolt kinezete es hangulata

     * Szabvanyositott menu:k es eszko:ztarak,
       billentyu"-hozzarendelesek, szinsemak stb.

     * Honositas: a KDE to:bb, mint 40 nyelven elerheto"

     * Ko:zpontositott, o:sszehangolt, parbeszedablak alapu
       asztalbeallitas

     * Szamos hasznos KDE-alkalmazas

   A KDE-hez egy Konqueror nevu" bo:ngeszo" is tartozik, mely a
   to:bbi UNIX-os bo:ngeszo" komoly ellenfelenek bizonyul. A KDE-ro"l
   to:bbet a KDE honlapjan olvashatunk. A KDE FreeBSD-re vonatkozo
   tudnivaloirol es a hozzatartozo anyagokrol a FreeBSD KDE csapat
   honlapjan talalhatunk informaciokat.

   FreeBSD alatt a KDE ket verzioja erheto" el: a harmadik valtozat
   mar regota hasznalhato, nagyon megbizhato, amely mellett viszont a
   ko:vetkezo" generaciot kepviselo" negyedik valtozat is
   megtalalhato a Portgyu"jtemenyben. Akar egymas melle is
   telepitheto"ek.

     --------------------------------------------------------------

    5.7.2.2. A KDE telepitese

   Ahogy a GNOME es a to:bbi mas munkako:rnyezet eseteben is, maga a
   program ko:nnyen telepitheto" csomagbol vagy a Portgyu"jtemeny
   segitsegevel is:

   A KDE3 csomagjat halozaton keresztu:l igy tudjuk telepiteni:

 # pkg_add -r kde

   A KDE4 csomagjat pedig halozaton keresztu:l igy tudjuk telepiteni:

 # pkg_add -r kde4

   A pkg_add(1) magatol leto:lti az alkalmazas legfrissebb verziojat.

   Ha a KDE3 ko:rnyezetet forrasbol akarjuk telepiteni, hasznaljuk a
   portfat:

 # cd /usr/ports/x11/kde3
 # make install clean

   Ha viszont a KDE4 ko:rnyezetet akarjuk inkabb a portfa
   felhasznalasaval forrasbol telepiteni, akkor ezeket a parancsokat
   adjuk ki:

 # cd /usr/ports/x11/kde4
 # make install clean

   Miutan a KDE-t sikeresen telepitettu:k, tudatnunk kell az X
   szerverrel, hogy az alapertelmezett ablakkezelo" helyett ezt
   inditsa el. Ezt az .xinitrc allomany modositasaval erhetju:k el.

   KDE3 eseten:

 % echo "exec startkde" > ~/.xinitrc

   KDE4 eseten:

 % echo "exec /usr/local/kde4/bin/startkde" > ~/.xinitrc

   Mostantol pedig mindig KDE lesz az asztalunk, amikor az X Window
   Systemet elinditjuk a startx paranccsal.

   Ha az XDM-et hasznaljuk bejelentkezteto" kepernyo"kent, a
   beallitast nemileg mashogyan kell elvegeznu:nk. Ekkor az imenti
   helyett az .xsession allomanyt kell szerkesztenu:nk. A kdm-re
   vonatkozo utasitasok a fejezet keso"bbi reszeben talalhatoak meg.

     --------------------------------------------------------------

  5.7.3. A KDE-ro"l bo"vebben

   Most, miutan telepitettu:k a KDE-t a rendszeru:nkre, a dolgok
   to:bbsege felfedezheto" a ku:lo:nfele sugok segitsegevel vagy
   egyszeru"en a menu:kre to:rteno" kattintassal. A Windows-hoz vagy
   Mac(R)-hez szokott felhasznalok itt most mar egeszen otthonosan
   erezhetik magukat.

   A KDE-hez a legto:bb segitseget a sajat internetes
   dokumentaciojabol nyerhetju:k. A KDE a sajat bo:ngeszo"jet, a
   Konquerort tartalmazza, valamint tucatnyi u:gyes alkalmazast es
   temerdek mennyisegu" dokumentaciot. A szakasz tovabbi reszeiben
   ezert inkabb olyan problemakkal foglalkozunk, amelyek megoldasai
   celtalan koborlassal mar nem fedezheto"ek fel olyan egyszeru"en.

     --------------------------------------------------------------

    5.7.3.1. A KDE bejelentkezteto" kepernyo"je

   Egy to:bbfelhasznalos rendszer karbantartoja minden bizonnyal
   szeretne u:dvo:zo:lni rendszere felhasznaloit egy grafikus
   bejelentkezo" kepernyo"n keresztu:l. A korabbiakban erre a celra
   az XDM-et javasoltuk. Azonban a KDE erre ajanl egy alternativat, a
   kdm-et, amely joval latvanyosabb es sokoldalubb. Ez ku:lo:no:sen
   abban meru:l ki, hogy a felhasznalok (egy menu:n keresztu:l) ki
   tudjak valasztani a bejelentkezes utan hasznalni kivant
   munkako:rnyezetet (legyen az KDE, GNOME vagy barmi mas).

   A kdm hasznalatahoz az /etc/ttys allomanyban talalhato ttyv8
   bejegyzest kell nemileg atalakitanunk.

   KDE3 eseten:

 ttyv8 "/usr/local/bin/kdm -nodaemon" xterm on secure

   KDE4 eseten:

 ttyv8 "/usr/local/kde4/bin/kdm -nodaemon" xterm on secure

     --------------------------------------------------------------

  5.7.4. Az Xfce

    5.7.4.1. Ro:viden az Xfce-ro"l

   Az Xfce a GNOME altal hasznalt GTK+-ra epu:lo" munkako:rnyezet,
   amely azonban sokkal ko:nnyedebb es azoknak keszu:lt, akik egy
   szimpla, hatekony, mindazonaltal ko:nnyen hasznalhato es
   beallithato munkafelu:letre vagynak. Latvany szempontjabol
   leginkabb a kereskedelmi rendszereken megtalalhato CDE-hez
   hasonlithato. Ime az Xfce nehany jellemzo"je:

     * Egyszeru", ko:nnyen kezelheto" munkaasztal

     * To:keletesen konfiguralhato egerrel, drag-and-droppal
       ("vonszolas") stb.

     * A menu:kkel, kisalkalmazasokkal es alkalmazasinditokkal
       tarkitott fo"panelje hasonlo a CDE paneljehez

     * Beepitett ablak-, allomany- es hangkezelo"vel, GNOME
       kompatibilitasi modullal es meg sok minden massal rendelkezik

     * Hasznalhatunk temakat (mivel GTK+-ra epu:l)

     * Gyors, ko:nnyu" es hatekony: idealis regebbi vagy lassabb,
       esetleg keves memoriaval rendelkezo" szamitogepekhez

   Az Xfce-ro"l reszletesebben az Xfce honlapjan olvashatunk.

     --------------------------------------------------------------

    5.7.4.2. Az Xfce telepitese

   Az Xfce-hez tartozik binaris csomag (legalabb is az leiras
   keszitesenek pillanataban). Ezt a ko:vetkezo" modon tudjuk
   telepiteni:

 # pkg_add -r xfce4

   Vagy a portgyu"jtemeny hasznalataval forrasbol is felrakhatjuk:

 # cd /usr/ports/x11-wm/xfce4
 # make install clean

   Ezutan vilagositsuk fel az X szervert, hogy a ko:vetkezo" indulasa
   soran mi mar az Xfce-t kivanjuk hasznalni. Ehhez csak ennyit kell
   tennu:nk:

 % echo "/usr/local/bin/startxfce4" > ~/.xinitrc

   Igy az X ko:vetkezo" inditasakor mar az Xfce lesz a
   munkako:rnyezetu:nk. Ahogy azt mar korabban is jeleztu:k, az XDM
   hasznalata soran a GNOMEban leirtak szerint letre kell hoznunk az
   .xsession allomanyt, azonban ezuttal a /usr/local/bin/startxfce4
   parancs hasznalataval. Vagy a kdm-ro"l szolo szakaszban targyaltak
   menten beallithatjuk ugy a bejelentkezteto" kepernyo"t, hogy a
   bejelentkezes elo"tt valasszuk ki a munkako:rnyezetet.

                         II. Gyakori feladatok

   Miutan az alapokat mar atvettu:k, a FreeBSD keziko:nyv ko:vetkezo"
   resze nehany gyakorta alkalmazott funkciot targyal. Az itt
   szereplo" fejezetek:

     * Bemutatnak ku:lo:nfele hasznos es nepszeru" asztali
       alkalmazast: bo:ngeszo"ket, irodai elo"segito" eszko:zo:ket,
       dokumentum-megjelenito"ket stb.

     * Bemutatjak a FreeBSD alatt is elerheto" multimedia
       eszko:zo:ket.

     * Kifejtik egy sajat FreeBSD rendszermag elkeszitesenek
       folyamatat, amellyel igy bo"viteni tudjuk rendszeru:nk
       funkcionalitasat.

     * Reszletesen bemutatjak a nyomtatasert felelo"s alrendszert,
       asztali es halozati nyomtatok hasznalata eseten egyarant.

     * Megmutatjak, hogyan futassunk Linuxra irodott alkalmazasokat a
       FreeBSD rendszeru:nko:n.

   Egyes fejezetek elolvasasahoz ajanlott bizonyos merteku"
   felkeszu:les, amely megemlitesre is keru:l az erintett fejezetek
   attekinteseben.

   Tartalom

   6. Asztali alkalmazasok

   7. Multimedia

   8. A FreeBSD rendszermag testreszabasa

   9. Nyomtatas

   10. Binaris Linux kompatibilitas

     --------------------------------------------------------------

                    Fejezet 6. Asztali alkalmazasok

   Irta: Christophe Juniet.

6.1. Attekintes

   A FreeBSD-n asztali alkalmazasok szeles spektrumat lehet futtatni,
   peldaul bo:ngeszo"ket es szo:vegszerkeszto"ket. Legto:bbju:k
   csomagkent all rendelkezesre, illetve automatizalt modon
   lefordithatoak a Portgyu"jtemenybo"l. Az uj felhasznalok ko:zu:l
   sokan szeretnenek ilyen fajta alkalmazasokat hasznalni, ezert ez a
   fejezet bemutatja, mikent lehet a nepszeru"bb asztali
   alkalmazasokat minden ku:lo:no:sebb ero"feszites nelku:l
   telepiteni, legyen szo az elo"re csomagolt vagy a
   Portgyu"jtemenyben megtalalhato formajukrol.

   Amikor portkent telepitu:nk egy programot, lenyegeben a
   forraskodjat forditjuk le. Ez bizonyos esetekben nagyon sokaig is
   eltarthat attol fu:ggo"en, hogy pontosan mit is forditunk le,
   illetve mekkora az erre a celra felhasznalt szamitogepu:nk vagy
   szamitogepeink teljesitmenye. Amennyiben a forditasra nem tudunk
   vagy nem kivanunk elegendo" ido"t szanni, a Portgyu"jtemenyben
   talalhato programok to:bbseget mar elo"re leforditott csomagbol is
   telepithetju:k.

   Mivel a FreeBSD-ben binaris szintu" Linux kompatibilitas is
   talalhato, ezert az eredetileg Linuxra fejlesztett alkalmazasok is
   hasznalhatoak a munkako:rnyezetu:nkben. Azonban hatarozottan
   javasoljuk, hogy a linuxos alkalmazasok hasznalatahoz elo"szo:r
   figyelmesen olvassuk at a 10 fejezetet. A linuxos binaris
   kompabilitast hasznalo portok neve altalaban a "linux-" elo"taggal
   kezdo"dik, amit ne felejtsu:k el figyelembe venni, amikor peldaul
   a whereis(1) segitsegevel keressu:k valamelyiket. A fejezet
   tovabbi reszeben feltetelezzu:k, hogy a linuxos alkalmazasok
   telepitese elo"tt aktivaltuk a binaris Linux kompatibilitast.

   Ime a fejezetben targyalt kategoriak:

     * Bo:ngeszo"k (mint a Firefox, Opera, Konqueror)

     * Irodai eszko:zo:k (mint a KOffice, AbiWord, The GIMP,
       OpenOffice.org)

     * Dokumentum-megjelenito"k (mint az Acrobat Reader(R), gv, Xpdf,
       GQview)

     * Penzu:gyi szoftverek (mint a GnuCash, Gnumeric, Abacus)

   A fejezet elolvasasahoz ajanlott:

     * a ku:lso" alkalmazasok telepitesenek ismerete (4 fejezet);

     * linuxos alkalmazasok telepitesenek ismerete (10 fejezet).

   a multimedias ko:rnyezet kialakitasara vonatkozo informaciokert a
   7 fejezett erdemes elolvasni. Az elektronikus levelezes
   beallitasat es hasznalatat a 28 fejezetbo"l tudhatjuk meg.

     --------------------------------------------------------------

6.2. Bo:ngeszo"k

   A FreeBSD-vel egyu:tt nem telepu:l semmilyen bo:ngeszo". Helyette
   keressu:k meg a Portgyu"jtemenyben a www ko:nyvtarat, ahol ezzel
   szemben rengeteg bo:ngeszo" all telepitesre keszen. Ha nem lenne
   ido"nk mindent leforditani (ami egyes esetekben akar rengeteg
   ido"nkbe is keru:lhet), ezek csomagolt formaban is elerheto"ek.

   A KDE-hez es a GNOME-hoz eleve tartoznak HTML-bo:ngeszo"k. Ezen
   komplett munkako:rnyezetek beallitasahoz a 5.7 Szakaszt olvassuk
   el.

   Ha viszont csak egy keves ero"forrast igenylo" bo:ngeszo"kre
   vagyunk, erdemes megneznu:nk a Portgyu"jtemenyben talalhato
   www/dillo2, www/links vagy www/w3m portokat.

   Ez a resz az alabbi alkalmazasokat emliti:

   Alkalmazas Ero"forrasigeny Telepites      Fo"bb fu:ggo"segek       
                              forrasbol 
   Firefox    ko:zepes        nehez     Gtk+                          
                                        Vannak FreeBSD-s es linuxos   
                                        valtozatai is. A linuxos      
   Opera      keves           ko:nnyu"  verzio hasznalatahoz azonban  
                                        szu:kseg van a binaris Linux  
                                        kompatibilitasra es a         
                                        linux-openmotif portra.       
   Konqueror  ko:zepes        nehez     A KDE fu:ggvenyko:nyvtarai.   

     --------------------------------------------------------------

  6.2.1. Firefox

   A Firefox egy modern, szabad es nyilt forraskodu bo:ngeszo", amely
   to:keletesen hasznalhato FreeBSD alatt. Megtalalhato benne egy, a
   jelenlegi HTML szabvanyoknak nagyon jol megfelelo" megjelenito"
   motor, a lapokra bonthato bo:ngeszes tamogatasa, a keretlenu:l
   felbukkano ablakok blokkolasa, ku:lo:nbo:zo" kiterjesztesek,
   javitott biztonsagi leheto"segek es meg sok minden mas. A Firefox
   forrasa a Mozilla kodjan alapszik.

   Csomagbol igy telepitheto":

 # pkg_add -r firefox

   Ekkor a Firefox 2.X valtozata fog telepu:lni. Ha helyette a
   Firefox 3.X valtozatat szeretnenk hasznalni, akkor ezt a parancsot
   adjuk ki:

 # pkg_add -r firefox3

   Ha forrasbol szeretnenk felrakni, hasznalhatjuk a
   Portgyu"jtemenyben talalhato portjat is:

 # cd /usr/ports/www/firefox
 # make install clean

   A Firefox 3.X telepitesehez az imenti parancsban cserelju:k ki a
   firefox reszt a firefox3 ko:nyvtarra.

     --------------------------------------------------------------

  6.2.2. A Firefox es a Java(TM) plugin

     Megjegyzes: Ennel es a ko:vetkezo" resznel feltetelezzu:k, hogy
     mar korabban telepitettu:k a Firefox alkalmazast.

   A FreeBSD Alapitvany megegyezett a Sun Microsystems-szel, hogy
   terjesztheti a Java(TM) futtatoko:rnyezet (JRE(TM)) es a Java
   fejleszto"ko:rnyezet (JDK(TM)) FreeBSD-re leforditott binaris
   valtozatait. Ezek a csomagok elerheto"ek a FreeBSD Alapitvany
   honlapjarol.

   Ha tehat Java-tamogatast szeretnenk hozzaadni a Firefox
   bo:ngeszo"ho:z, elso"kent fel kell telepitenu:nk a
   java/javavmwrapper portot. Ezutan le kell to:ltenu:nk a Diablo JRE
   csomagot a http://www.freebsdfoundation.org/downloads/java.shtml
   cimro"l, majd telepitenu:nk azt a pkg_add(1) segitsegevel.

   Inditsuk el a bo:ngeszo"nket, es irjuk be a cimsorba, hogy
   about:plugins es nyomjuk le az Enter billentyu"t. Az eredmenyu:l
   kapott oldalon lathatjuk az eddig telepitett pluginok listajat,
   ahol mostanra mar a Java pluginnak is meg kell jelennie.
   Amennyiben ez nem ko:vetkezne be, mindegyik felhasznalonal adjuk
   ki az alabbi parancsot:

 % ln -s /usr/local/diablo-jre1.6.0/plugin/i386/ns7/libjavaplugin_oji.so \
   $HOME/.mozilla/plugins/

   Vagy ha a Diablo JDK csomagot telepitettu:k:

 % ln -s /usr/local/diablo-jdk1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so \
   $HOME/.mozilla/plugins/

   Ezt ko:veto"en inditsuk ujra a bo:ngeszo"nket.

     --------------------------------------------------------------

  6.2.3. A Firefox es a Macromedia(R) Flash(TM) plugin

   A Macromedia(R) Flash(TM) plugin nem erheto" el ko:zvetlenu:l
   FreeBSD-re. Azonban letezik egy, a plugin linuxos verziojara
   epitett szoftveres reteg (wrapper). Ez a wrapper meg to:bbek ko:zt
   az Adobe(R) Acrobat(R) es a RealPlayer(R) pluginjait is
   hasznalhatova teszi.

   Attol fu:ggo"en, hogy a FreeBSD melyik valtozatat hasznaljuk,
   ku:lo:nbo:zo" modokon tudjuk mu"ko:desbe hozni:

    1. FreeBSD 7.X

       Telepitsu:k a www/nspluginwrapper portot. Ehhez szu:kseg lesz
       meg a emulators/linux_base-fc4 portra is, amely viszonylag
       nagy meretu".

       Ko:vetkezo" lepeskent telepitsu:k a www/linux-flashplugin9
       portot. Ezaltal megkapjuk a Flash 9.X valtozatat, amely
       FreeBSD 7.X alatt remeku:l mu"ko:dik.

         Megjegyzes: A 7.1-RELEASE elo"tti FreeBSD verziok eseten a
         www/linux-flashplugin7 portot telepitsu:k es hagyjuk ki a
         linprocfs(5) hasznalatara vonatkozo reszt.

    2. FreeBSD 8.X

       Telepitsu:k a www/nspluginwrapper portot. Ehhez szu:ksegu:nk
       lesz majd a valamivel nagyobb emulators/linux_base-f10 portra.

       Ezt ko:veto"en telepitsu:k a www/linux-f10-flashplugin10
       portot. Ekkor a Flash 10.X valtozatat kapjuk, amely
       FreeBSD 8.X alatt remeku:l hasznalhato.

       Ezen valtozat beu:zemelesehez meg letre kell hoznunk az alabbi
       linket:

 # ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \
   /usr/local/lib/browser_plugins/

   Miutan a FreeBSD rendszeru:nk valtozatanak megfelelo"en
   elvegeztu:k a Flash port telepiteset, a plugint az egyes
   felhasznaloknak a nspluginwrapper paranccsal tehetju:k
   elerheto"ve:

 % nspluginwrapper -v -a -i

   Ha Flash animaciokat szeretnenk lejatszani, akkor ehhez a
   /usr/compat/linux/proc ko:nyvtarba csatlakoztatnunk kell egy
   linprocfs(5) tipusu linuxos proc allomanyrendszert. Ezt a
   ko:vetkezo" paranccsal tehetju:k meg:

 # mount -t linprocfs linproc /usr/compat/linux/proc

   Az /etc/fstab allomanyban az alabbi sor hozzaadasaval azonban
   ennek csatlakoztatasa akar automatikussa is teheto" a
   rendszerinditas soran:

 linproc  /usr/compat/linux/proc  linprocfs      rw       0       0

   Ezutan inditsuk el a bo:ngeszo"t, majd gepelju:k be a
   about:plugins szo:veget a cimsorba es nyomjuk le az Enter
   billentyu"t. Ekkor a jelenleg elerheto" pluginok listajanak kell
   megjelennie.

     --------------------------------------------------------------

  6.2.4. A Firefox es az Swfdec Flash plugin

   Az Swfdec egy Flash animaciok dekodolasaert es megjeleniteseert
   felelo"s programko:nyvtar. Az Swfdec-Mozilla pedig egy Firefox
   bo:ngeszo"kho:z keszitett plugin, amely az Swfdec ko:nyvtaron
   keresztu:l jatszik le SWF allomanyokat. Jelenleg meg aktiv
   fejlesztes alatt all.

   Ha nem akarjuk vagy netalan nem tudjuk forrasbol leforditani,
   akkor egyszeru"en csak telepitsu:k csomagkent a halozaton
   keresztu:l:

 # pkg_add -r swfdec-plugin

   Ha valamiert megsem erheto" el hozza csomag, akkor a
   Portgyu"jtemenybo"l is telepithetju:k:

 # cd /usr/ports/www/swfdec-plugin
 # make install clean

   Miutan telepitettu:k a plugint, a hasznalatahoz inditsuk ujra a
   bo:ngeszo"t.

     --------------------------------------------------------------

  6.2.5. Opera

   Az Opera egy sokoldalu es szabvanyokkal kompatibilis bo:ngeszo".
   Tartalmaz beepitett levelezo" klienst es hirolvasot, IRC-klienst,
   RSS/Atom-olvasot es meg sok mindent mast. Ennek ellenere az Opera
   viszonylag pehelysulyunak es gyorsnak szamit. Ket fajta modon is
   hasznalhato: letezik "nativ" FreeBSD-s valtozata, valamint a Linux
   emulacioval futo valtozata.

   Az Opera FreeBSD-s valtozatat a megfelelo" csomag telepitesevel
   erhetju:k el:

 # pkg_add -r opera

   Habar egyes FTP oldalakon nem talalhato meg az o:sszes csomag,
   viszont a Portgyu"jtemenybo"l meg ekkor is be tudjuk szerezni az
   Operat:

 # cd /usr/ports/www/opera
 # make install clean

   A linuxos Opera telepitesehez opera helyett linux-opera nevet kell
   megadnunk a fenti parancsokban. Ennek a verzionak a hasznalata
   akkor lehet elo"nyo:s, ha olyan plugineket akarunk elerni, amelyek
   csak Linuxra leteznek. Ilyen peldaul az Adobe Acrobat Reader.
   Etto"l eltekintve azonban a FreeBSD-s es a linuxos valtozatok
   szinte teljesen megegyeznek.

     --------------------------------------------------------------

  6.2.6. Konqueror

   A Konqueror a KDE resze, de a hasznalatahoz elegendo", ha csak a
   x11/kdebase3 portot telepitju:k fel. A Konqueror to:bb, mint egy
   egyszeru" bo:ngeszo": allomanykezelo" es multimedias nezegeto" is.

   Szamtalan plugin all rendelkezesre a Konquerorhoz, melyeket a
   misc/konq-plugins portban talalunk meg.

   A Konqueror ismeri a Flasht is. A Flash es a Konqueror
   kapcsolataval egy ku:lo:n "Hogyan" is foglalkozik, amelyet a
   http://freebsd.kde.org/howtos/konqueror-flash.php cimen
   olvashatunk el.

     --------------------------------------------------------------

6.3. Irodai eszko:zo:k

   Amikor irodai felhasznalasrol van szo, az uj felhasznalok gyakorta
   keresnek egy jo irodai programcsomagot vagy egy baratsagos
   szo:vegszerkeszto"t. Habar az egyes munkako:rnyezetek, mint
   peldaul a KDE, gyakran sajat irodai eszko:zo:ket is tartalmaznak,
   FreeBSD alatt nincs alapertelmezett irodai programcsomag. A
   rendszer a munkako:rnyezetekto"l fu:ggetlenu:l igyekszik
   felkinalni mindazt, amire szu:ksegu:nk lehet.

   Ebben a reszben a ko:vetkezo" alkalmazasokrol esik szo:

     Alkalmazas   Ero"forrasigeny    Telepites     Fo"bb fu:ggo"segek 
                                     forrasbol     
   KOffice        keves           nehez            KDE                
   AbiWord        keves           ko:nnyu"         Gtk+ vagy GNOME    
   The Gimp       keves           nehez            Gtk+               
   OpenOffice.org sok             nagyon nehez     JDK 1.4, Mozilla   

     --------------------------------------------------------------

  6.3.1. KOffice

   A KDE ko:zo:sseg altal kiadott munkako:rnyezethez tarsul egy
   irodai programcsomag is, amely a KDE-to"l fu:ggetlenu:l is
   hasznalhato. Tartalmazza a to:bbi irodai programcsomagban is
   megtalalhato negy szabvanyos komponenst: a KWord
   szo:vegszerkeszto"t, a KSpread tablazatkezelo"t, a KPresenter
   prezentaciokeszito"t es vegezetu:l a Kontourt, mellyel grafikus
   dokumentumokat tudunk elkesziteni.

   A legfrissebb KOffice telepitese elo"tt bizonyosodjuk meg rola,
   hogy a KDE legfrissebb verziojaval is rendelkezu:nk.

   Ha a KOffice-t csomagkent akarjuk telepiteni, akkor adjuk ki az
   alabbi parancsot:

 # pkg_add -r koffice

   Amennyiben ez a csomag nem erheto" el, telepithetju:k a
   Portgyu"jtemenybo"l is. Peldaul a KDE3-hoz tartozo KOffice-t igy
   rakhatjuk fel:

 # cd /usr/ports/editors/koffice-kde3
 # make install clean

     --------------------------------------------------------------

  6.3.2. AbiWord

   Az AbiWord egy szabad szo:vegszerkeszto" program, a Microsoft
   Word-ho:z hasonlo kinezettel. Remeku:l hasznalhato levelek,
   beszamolok, feljegyzesek, cikkek stb. irasahoz. Nagyon gyors,
   rengeteg funkciot ajanl fel, es kifejezetten felhasznalobarat.

   Az AbiWord kepes to:bbfele allomanyformatumba exportalni es onnan
   importalni, beleertve az olyan zart formatumokat is, mint peldaul
   a Microsoft .doc.

   Az AbiWord csomagbol telepitheto" a ko:vetkezo" modon:

 # pkg_add -r abiword

   Amennyiben ez a csomag nem erheto" el, lefordithato a
   Portgyu"jtemenybo"l is, ami raadasul sokszor egy frissebb verziot
   tartalmaz. Ezt igy tudjuk megtenni:

 # cd /usr/ports/editors/abiword
 # make install clean

     --------------------------------------------------------------

  6.3.3. The GIMP

   Kepek keszitesere vagy retusalasra a The GIMP a legfejlettebb
   kepszerkeszto" program. Egyszeru" rajzoloprogram gyanant is
   hasznalhato, de akar mino"segi fenykepretusalasra is. Oriasi
   mennyisegu" plugin talalhato hozza es magaban foglal egy szkriptes
   interfeszt is. A The GIMP formatumok szeles skalajat ismeri.
   Szamos scanner es digitalis rajztabla csatlakoztathato hozza.

   A hozzatartozo csomag a ko:vetkezo" modon telepitheto" fel:

 # pkg_add -r gimp

   Ha a csomagoknak beallitott FTP oldalon nem talalhato meg ez a
   csomag, megprobalkozhatunk vele a Portgyu"jtemenyen keresztu:l is.
   A gyu"jtemeny graphics ko:nyvtaraban ezen felu:l fellelhetju:k a
   The Gimp Manualt, vagyis a The GIMP keziko:nyvet. Igy kell ezeket
   innen telepiteni:

 # cd /usr/ports/graphics/gimp
 # make install clean
 # cd /usr/ports/graphics/gimp-manual-pdf
 # make install clean

     Megjegyzes: A Portgyu"jtemeny graphics ko:nyvtaraban a The GIMP
     fejleszto"i valtozataval is talalkozhatunk a graphics/gimp-devel
     alko:nyvtarban. A The Gimp Manual HTML valtozata pedig a
     graphics/gimp-manual-html alko:nyvtarban talalhato.

     --------------------------------------------------------------

  6.3.4. OpenOffice.org

   Az OpenOffice.org tartalmaz minden olyan elengedhetetlenu:l fontos
   alkalmazast, amelyek napjaink barmelyik irodajahoz hozzatartoznak:
   egy szo:vegszerkeszto"t, egy tablazatkezelo"t, egy
   prezentacioszerkeszto"t es egy rajzoloprogramot. A felhasznaloi
   felu:lete nagyon hasonlit a to:bbi irodai programcsomagehoz, es
   kepes to:bbfele elterjedt allomanyformatumot kezelni. Szamos
   ku:lo:nbo:zo" nyelven elerheto" -- a honositasa kiterjed a
   felu:letekre, helyesiras elleno"rzo"kre es szotarakra is.

   Az OpenOffice.org szo:vegszerkeszto"je nativ XML
   allomanyformatumot hasznal a hordozhatosag es a rugalmassag
   no:velesehez. A tablazatkezelo"je tartalmaz egy makronyelvet es
   ko:nnyeden o:sszekapcsolhato ku:lso" adatbazisokkal. Az
   OpenOffice.org nativan es megbizhatoan fut Windows-on,
   Solaris(TM)-on, Linux-on, FreeBSD-n es Mac OS X-en. Az
   OpenOffice.org-rol bo"vebb informaciot a projekt sajat honlapjan
   talalhatunk. A FreeBSD-s valtozatra vonatkozo informaciokat es a
   csomagokat pedig a FreeBSD OpenOffice.org Porting Team honlapjan
   lelhetju:k meg.

   Az OpenOffice.org telepitesehez ennyit kell csak beirni:

 # pkg_add -r openoffice.org

     Megjegyzes: Ha a FreeBSD -RELEASE agat hasznaljuk, ennek
     mu"ko:dnie kell. Etto"l eltero" esetben erdemes egy pillantast
     vetni a FreeBSD OpenOffice.org Porting Team honlapjara, ahonnan
     le tudjuk to:lteni a verziokhoz megfelelo" csomagot, amelyet
     ezutan a pkg_add(1)-al fel is tudunk telepiteni. A legfrissebb
     megbizhato es fejleszto"i valtozat egyarant elerheto" erro"l a
     helyro"l.

   Ahogy sikeru:lt feltelepiteni a csomagot, egyszeru"en csak be kell
   gepelni a ko:vetkezo" parancsot az OpenOffice.org futtatasahoz:

 % openoffice.org

     Megjegyzes: Az elso" futtatas soran valaszolnunk kell meg nehany
     tovabbi kerdesre is, valamint a felhasznaloi ko:nyvtarunkban
     keletkezik egy .openoffice.org2 ko:nyvtar.

   Ha nem erheto"ek el OpenOffice.org csomagok, lefordithatjuk a
   forrasat is. Azonban mielo"tt meg ennek nekilatnank, el kell
   fogadnunk, hogy ez a mu"velet a lemezu:nko:n rettenetesen sok
   teru:letet fog igenyelni es megleheto"sen sokaig tart.

 # cd /usr/ports/editors/openoffice.org-2
 # make install clean

     Megjegyzes: Ha egy honositott verziot szeretnenk forditani, az
     utolso parancs helyett irjuk inkabb ezt:

 # make LOCALIZED_LANG=nyelv install clean

     A nyelv helyett itt termeszetesen a nyelvnek megfelelo"
     ISO-kodot kell megadni. Az itt tamogatott nyelvek kodjanak
     listaja a port ko:nyvtaran belu:l, a files/Makefile.localized
     allomanyban talalhato meg.

   Ahogy a forditas befejezo"do:tt, az OpenOffice.org igy indithato
   el parancssorbol:

 % openoffice.org

     --------------------------------------------------------------

6.4. Dokumentum-megjelenito"k

   A UNIX megjelenese ota nehany uj nepszeru" dokumentumformatum is
   felbukkant, melyek szabvanyos megjelenito"i nem minden esetben
   reszei az alaprendszernek. Ebben a reszben azt tekintju:k at,
   hogyan lehet ilyen megjelenito"ket telepiteni.

   Ez a resz az alabbi alkalmazasokat emliti:

     Alkalmazas   Ero"forrasigeny Telepites    Fo"bb fu:ggo"segek     
                                  forrasbol 
   Acrobat Reader keves           ko:nnyu"  Binaris Linux             
                                            kompatibilitas            
   gv             keves           ko:nnyu"  Xaw3d                     
   Xpdf           keves           ko:nnyu"  FreeType                  
   GQview         keves           ko:nnyu"  Gtk+ vagy GNOME           

     --------------------------------------------------------------

  6.4.1. Acrobat Reader(R)

   A dokumentumok to:bbsege manapsag PDF (Portable Document Format,
   avagy "hordozhato dokumentumformatum)" allomanyok formajaban
   terjed. Az ilyen tipusu allomanyok megnezesere az egyik
   legalkalmasabb alkalmazas az Acrobat Reader, melyet az Adobe adott
   ki Linuxra. De mivel a FreeBSD kepes Linux binarisok futtatasara,
   ezert igy FreeBSD-re is elerheto".

   Ha az Acrobat Reader 7-et a Portgyu"jtemenybo"l akarjuk
   telepiteni, akkor irjuk be:

 # cd /usr/ports/print/acroread7
 # make install clean

   Licencelesi megszoritasok miatt csomag nem all rendelkezesre.

     --------------------------------------------------------------

  6.4.2. gv

   A gv egy PostScript es PDF megjelenito". Eredetileg a ghostview
   alapjan keszu:lt, de a Xaw3d-nek ko:szo:nheto"en sokkal szebben
   nez ki. Gyors es az felu:lete letisztult. A gv sok mindent tud,
   to:bbek ko:zt beallithato benne a dokumentum tajolasa, a
   papirmeret, skalazas es az elsimitas. Szinte barmelyik mu"velet
   elvegezheto" csak billentyu"zetro"l vagy egerrel.

   A gv csomagjanak telepitesehez a ko:vetkezo" parancsot
   hasznalhatjuk:

 # pkg_add -r gv

   Ha pedig nem tudjuk leto:lteni a csomagot, hasznalhatjuk a
   Portgyu"jtemenyt is:

 # cd /usr/ports/print/gv
 # make install clean

     --------------------------------------------------------------

  6.4.3. Xpdf

   Ha egy egyszeru" FreeBSD-s PDF megjelenito"re lenne szu:ksegu:nk,
   erre a celra az Xpdf pontosan megfelel. Nagyon keves ero"forrast
   igenyel es nagyon megbizhato. A szabvanyos X-beli betu"tipusokat
   hasznalja, es nincs szu:ksege sem a Motifra, sem pedig mas X-es
   eszko:zkeszletre.

   Az Xpdf csomagjanak felrakasahoz az alabbi parancs javasolt:

 # pkg_add -r xpdf

   Amennyiben nem all rendelkezesre az emlitett csomag, vagy
   egyszeru"en csak a Portgyu"jtemenybo"l szeretnenk felrakni, adjuk
   ki ezeket a parancsokat:

 # cd /usr/ports/graphics/xpdf
 # make install clean

   Ahogy a telepites befejezo"dik, mar el is indithatjuk az Xpdf
   alkalmazast, ahol a jobb egergombbal tudjuk aktivalni a menu:t.

     --------------------------------------------------------------

  6.4.4. GQview

   A GQview egy kepkezelo". Allomanyokat tudunk megnyitni benne
   egyetlen kattintassal, ku:lso" szerkeszto"programot tudunk
   inditani vagy akar meg a kepek kicsinyitett valtozatait is
   lathatjuk es igy tovabb. Megtalalhato benne a diavetites es az
   alapveto" allomanymu"veletek. Kepgyu"jtemenyeket is kezelhetu:nk
   es ko:nnyeden megtalalhatjuk a bennu:k levo" kepek ko:zo:tt az
   egyezo"eket. A GQview teljes kepernyo"s nezegetest is megenged,
   illetve tamogatja a honositast.

   A GQview csomag telepitesehez ezt a parancsot kell kiadni:

 # pkg_add -r gqview

   Amikor ez a csomag nem to:ltheto" le, vagy amikor inkabb a
   Portgyu"jtemenybo"l szeretnenk felrakni, ezt irjuk be:

 # cd /usr/ports/graphics/gqview
 # make install clean

     --------------------------------------------------------------

6.5. Penzu:gyi szoftverek

   Ha barmilyen ok folytan a FreeBSD-vel szeretnenk kezeli szemelyes
   penzu:gyeinket, akadnak olyan kello"en komoly es ko:nnyen
   kezelheto" alkalmazasok, amelyek csak a telepitesu:kre varnak.
   Nehanyuk ko:zu:lu:k kompatibilis az elterjedtebb
   allomanyformatumokkal, mint peldaul amiben a Quicken(R) es az
   Excel is tarolja az adatait.

   Ebben a reszben az alabbi programokat vesszu:k sorra:

   Alkalmazas  Ero"forrasigeny Telepites forrasbol Fo"bb fu:ggo"segek 
   GnuCash     keves           nehez               GNOME              
   Gnumeric    keves           nehez               GNOME              
   Abacus      keves           ko:nnyu"            Tcl/Tk             
   KMyMoney    keves           nehez               KDE                

     --------------------------------------------------------------

  6.5.1. GnuCash

   A GnuCash a GNOME resze, es egy felhasznalobarat, megis hatekony
   eszko:zt ad a felhasznalok kezebe. A GnuCash segitsegevel nyilvan
   tudjuk tartani a beveteleinket es kiadasainkat, bankszamlainkat es
   befekteteseinket. Felu:lete intuitiv, miko:zben tovabbra is
   professzionalis mino"segu".

   A GnuCash-ben megtalalhatunk egy intelligens nyilvantartast, a
   szamlak hierarchikus rendszeret, es szamtalan
   billentyu"kombinaciot es automatikus kiegeszitest, amivel
   felgyorsul a munkank. Egyetlen tranzakciot kepes felbontani to:bb
   kisebb es reszletesebb elemre. A GnuCash kepes importalni es
   exportalni a Quicken QIF tipusu allomanyait. Ezen kivu:l meg
   kezeli a legto:bb nemzetko:zi datumformatumot es penznemet.

   A GnuCash-t az alabbi modon tudjuk telepiteni a rendszeru:nkre:

 # pkg_add -r gnucash

   Ha ez a csomag nem erheto" el, hasznalhatjuk a Portgyu"jtemenyt
   is:

 # cd /usr/ports/finance/gnucash
 # make install clean

     --------------------------------------------------------------

  6.5.2. Gnumeric

   A Gnumeric egy tablazatkezelo" program, a GNOME munkako:rnyezet
   resze. Sok esetben kepes a helyzethez alkalmazkodva automatikusan
   "kitalalni" a felhasznalo gondolatait a cellak formatumanak
   megfelelo" automatikus kiegeszito" rendszerevel. Be tud olvasni
   szamos nepszeru"bb formatumot, mint peldaul az Excel, Lotus 1-2-3
   vagy a Quattro Pro allomanyait. A math/guppi grafikonkeszito"
   programon keresztu:l tamogatja grafikonok rajzolasat is. Nagy
   szamu beepitett funkcioval rendelkezik, es ismeri az o:sszes
   megszokott cellaformatumot, legyen az szam, penznem, datum, ido"
   vagy barmi mas.

   A Gnumeric telepiteset az alabbi paranccsal adhatjuk ki:

 # pkg_add -r gnumeric

   Ha valamiert nem erheto" el ez a csomag, a Portgyu"jtemenybo"l is
   fel tudjuk rakni:

 # cd /usr/ports/math/gnumeric
 # make install clean

     --------------------------------------------------------------

  6.5.3. Abacus

   Az Abacus egy kicsi es egyszeru"en hasznalhato tablazatkezelo"
   program. Szamos olyan funkciot tartalmaz beepitve, amelyek
   kifejezetten hasznosnak bizonyulhatnak a statisztika, penzu:gyek
   es a matematika teru:leten. Importalni es exportalni tudja az
   Excel allomanyformatumat is. Az Abacus meg PostScript formatumu
   kimenetet is tud kesziteni.

   Az Abacus telepitesehez csupan ennyit kell tennu:nk:

 # pkg_add -r abacus

   Amennyiben viszont nem erheto" el ez a csomag, hasznalhatjuk a
   Portgyu"jtemenyt is:

 # cd /usr/ports/deskutils/abacus
 # make install clean

     --------------------------------------------------------------

  6.5.4. KMyMoney

   A KMyMoney a KDE reszekent kifejlesztett szemelyi penzu:gyi
   nyilvantarto. A KMyMoney igyekszik az o:sszes kereskedelmi
   penzu:gyi nyilvantarto programban megtalalhato fontosabb
   leheto"seget magaban foglalni es rendelkezesre bocsatani. Mindezek
   mellett egy ko:nnyen hasznalhato es nagyon u:gyes ketto"s
   ko:nyvelest is talalhatunk benne. A KMyMoney kepes beolvasni a
   szabvanyos Quicken Interchange Format (QIF) szerint keszu:lt
   allomanyokat, ko:vetni a befekteteseket, to:bbfele penznemet
   kezelni es sok fajta kimutatast tudunk vele kesziteni. A
   megfelelo" bo"vitmeny hozzaadasaval meg az OFX formatumu
   allomanyok olvasasara is alkalmas.

   A KMyMoney csomagkent igy telepitheto":

 # pkg_add -r kmymoney2

   Ha ez a csomag nem erheto" el, akkor a Portgyu"jtemenyen
   keresztu:l is fel tudjuk rakni:

 # cd /usr/ports/finance/kmymoney2
 # make install clean

     --------------------------------------------------------------

6.6. O:sszefoglalas

   Miko:zben a FreeBSD igen nepszeru" az internetszolgaltatok
   ko:reben a teljesitmenye es megbizhatosaga reven, a hetko:znapi
   hasznalatban is remeku:l bevalik. To:bbezernyi olyan alkalmazas
   erheto" el hozza csomagkent vagy portkent, amelyekkel az
   igenyeinknek megfelelo" munkako:rnyezetet tudjuk kiepiteni.

   Ime egy ro:vidke emlekezteto" azokrol az asztali alkalmazasokrol,
   melyeket a fejezetben targyaltunk:

        Alkalmazas           Csomag                  Port             
   Opera                opera             www/opera                   
   Firefox              firefox           www/firefox                 
   KOffice              koffice-kde3      editors/koffice-kde3        
   AbiWord              abiword           editors/abiword             
   The GIMP             gimp              graphics/gimp               
   OpenOffice.org       openoffice        editors/openoffice-1.1      
   Acrobat Reader       acroread          print/acroread7             
   gv                   gv                print/gv                    
   Xpdf                 xpdf              graphics/xpdf               
   GQview               gqview            graphics/gqview             
   GnuCash              gnucash           finance/gnucash             
   Gnumeric             gnumeric          math/gnumeric               
   Abacus               abacus            deskutils/abacus            
   KMyMoney             kmymoney2         finance/kmymoney2           

     --------------------------------------------------------------

                         Fejezet 7. Multimedia

   Szerkesztette: Ross Lippert.

7.1. Attekintes

   A FreeBSD a hangkartyak szeles valasztekat ismeri, ami altal
   kepesek vagyunk szamitogepu:nkkel hi-fi mino"segu" hangzast
   letrehozni. Ennek reszekent ro:gziteni es visszajatszani tudunk
   to:bbek ko:zt MPEG Audio Layer 3 (MP3), WAV es Ogg Vorbis
   formatumokban. A FreeBSD Portgyu"jtemenye ezenkivu:l tartalmaz meg
   olyan alkalmazasokat is, amelyekkel szerkeszteni lehet a felvett
   hangokat, effekteket hozzatenni es vezerelni a hangkartyankhoz
   csatlakoztatott MIDI eszko:zo:ket.

   Nemi kiserletezessel a FreeBSD meg videoallomanyok es DVD-k
   lejatszasara is raveheto". A ku:lo:nfele videoanyagok kodolasara,
   konvertalasara es visszajatszasara alkalmas programok szama
   azonban joval kisebb, mint a hanganyagok eseten. Peldaul az iras
   pillanataban nincs a FreeBSD Portgyu"jtemenyeben a formatumok
   ko:zti konvertalasra alkalmas, a videokat olyan jol ujrakodolni
   tudo alkalmazas, amilyen az audio eseten az audio/sox. Azonban
   ezen a teru:leten a szoftverek palettaja gyorsan valtozik.

   Ebben a fejezetben bemutatjuk a hangkartyank beallitasahoz
   szu:kseges lepeseket. Az X11 telepitese es beallitasa (5 fejezet)
   soran ugyan mar foglalkoztunk a videokartyankkal kapcsolatos
   hardveres problemakkal, azonban a jobb visszajatszas erdekeben
   tovabbi cselfogasokat is be kell majd vetnu:nk.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan allitsuk be ugy a rendszeru:nket, hogy felismerje a
       hangkartyankat;

     * hogyan bizonyosodjuk meg rola, hogy a kartyank valoban
       mu"ko:dik;

     * hogyan oldjuk meg a hangkartya beallitasa soran felmeru:lo"
       problemakat;

     * hogyan jatsszunk le es kodoljunk MP3-at vagy mas egyeb
       hangformatumot;

     * hogyan tamogatja a videokat az X szerver;

     * hogyan adnak az egyes lejatszok es kodolok meg jobb eredmenyt

     * hogyan jatsszunk le DVD-ket, .mpg es .avi allomanyokat;

     * hogyan mentsu:k a CD-k es DVD-k tartalmat allomanyokba;

     * hogyan allitsuk be a TV kartyankat

     * hogyan allitsunk be egy scannert.

   A fejezet elolvasasahoz ajanlott:

     * egy uj rendszermag beallitasanak es telepitesenek ismerete (8
       fejezet).

     Figyelem: Ha zenei CD-ket probalunk meg a mount(8) paranccsal
     csatlakoztatni, akkor az hibaval, vagy a legrosszabb esetben
     akar teljes rendszero:sszeomlassal is jarhat. Az ilyen tipusu
     lemezek az ISO szabvanyu allomanyrendszereketo"l eltero"
     kodolassal rendelkeznek.

     --------------------------------------------------------------

7.2. A hangkartya beallitasa

   Irta: Moses Moore. A FreeBSD 5.X verziojahoz igazitotta: Marc
   Fonvieille.

  7.2.1. A rendszer beallitasa

   A mu"velet megkezdese elo"tt ki kell deritenu:nk, milyen tipusu
   hangkartyank van, milyen chip van rajta, PCI vagy ISA buszon
   csatlakozik-e. A FreeBSD rengeteg PCI es ISA buszos kartyat ismer
   egyarant. A sajatunk beazonositasahoz a tamogatott hangeszko:zo:k
   listajat a Hardware Notes (Hardverjegyzek) oldalan talalhatjuk
   meg. Ebbo"l a jegyzekbo"l mellesleg azt is megtudhatjuk, hogy
   melyik meghajto kezeli a kartyankat.

   A hangeszko:zu:nk hasznalatahoz be kell to:ltenu:nk a neki
   megfelelo" meghajtot. Ez ket modon is megteheto". Ezek ko:zu:l az
   a legko:nnyebb, ha a kldload(8) paranccsal egyszeru"en beto:ltju:k
   a rendszermag hangkartyankhoz tartozo moduljat. Ezt megtehetju:k
   ko:zvetlenu:l parancssorbol:

 # kldload snd_emu10k1

   vagy a /boot/loader.conf allomanybol az alabbihoz hasonlo sor
   hozzaadasaval:

 snd_emu10k1_load="YES"

   A fenti peldak a Creative SoundBlaster(R) Live! hangkartyara
   vonatkoznak. A to:bbi beto:ltheto" hangkartya-modul felsorolasa a
   /boot/defaults/loader.conf allomanyban talalhato. Ha nem vagyunk
   benne biztosak, hogy melyik meghajtot is akarjuk pontosan
   hasznalni, akkor probalkozzunk az snd_driver modul beto:ltesevel:

 # kldload snd_driver

   Ez egy olyan metameghajto, ami egyszerre beto:lti az o:sszes
   erintett eszko:zmeghajtot, es segitsegevel felgyorsithatjuk a
   megfelelo" meghajto megtalalasat. A /boot/loader.conf
   hasznalataval is be tudjuk ugyanigy to:lteni az o:sszes meghajtot.

   Az snd_driver metameghajto beto:ltese utan ugy kereshetju:k meg a
   tenylegesen hasznalatban levo" meghajtot, ha megnezzu:k a
   /dev/sndstat allomanyt a cat /dev/sndstat paranccsal.

   A masodik modszer szerint a hangkartyank tamogatasat statikusan
   beepitju:k a rendszermagba. A lentebb talalhato szakaszban
   olvashatjuk mindazok az informaciokat, amikre szu:ksegu:nk lehet
   ennek elvegzese ko:zben. A rendszermag ujraforditasaval
   kapcsolatban forduljunk a 8 fejezethez.

     --------------------------------------------------------------

    7.2.1.1. A hangkartya tamogatasaval rendelkezo" sajat rendszermag
    o:sszeallitasa

   Elso"kent hozza kell adnunk a rendszermaghoz a hangeszko:zo:k
   alapmeghajtojat, a sound(4) eszko:zt. Ezt a rendszermag
   beallitasait tartalmazo allomanyban az alabbi sor felvetelevel
   tehetju:k meg:

 device sound

   Ezutan tegyu:k meg hozza a hangkartyankhoz kapcsolodo tamogatast
   is. Ehhez viszont pontosan tudunk kell, melyik meghajto kepes
   mu"ko:dtetni a kartyat. A hangkartyahoz tartozo meghajtot a
   Hardware Notes (Hardverjegyzek)-ben talalhato eszko:zo:k
   listajabol derithetju:k ki. Peldaul a Creative SoundBlaster Live!
   hangkartyat a snd_emu10k1(4) meghajto kezeli. Ennek a
   hangkartyanak a tamogatasat az alabbi sorral allithatjuk be:

 device snd_emu10k1

   Az itt hasznalatos formatumot a meghajto man oldalanak
   atolvasasabol tudhatjuk meg. Azonban az o:sszes tamogatott
   hangkartya meghajto megadasanak pontos formatuma megtalalhato a
   /usr/src/sys/conf/NOTES allomanyban is.

   A PnP (Plug n Play)-t nem ismero" ISA kartyak eseten az o:sszes
   to:bbi nem PnP-s ISA kartyahoz hasonloan szu:kseges lehet a
   rendszermag szamara megadnunk a kartya hardveres beallitasait
   (IRQ, I/O port stb). Ezt a /boot/device.hints allomanyon
   keresztu:l tehetju:k meg. A rendszerinditasi folyamat soran a
   loader(8) beolvassa ezt az allomanyt, majd atadja a benne
   szereplo" informaciokat a rendszermagnak. Peldaul a Creative
   SoundBlaster 16, nem PnP-s ISA kartya az snd_sb16 meghajtoval
   egyu:tt az snd_sbc(4) meghajtot hasznalja. A kartya hasznalatahoz
   a rendszermag beallitasait tartalmazo allomanyba ezeket a sorokat
   kell megadni:

 device snd_sbc
 device snd_sb16

   valamint a /boot/device.hints allomanyba ezeket:

 hint.sbc.0.at="isa"
 hint.sbc.0.port="0x220"
 hint.sbc.0.irq="5"
 hint.sbc.0.drq="1"
 hint.sbc.0.flags="0x15"

   Ekkor a kartya a 0x220 I/O portot es 5 IRQ-t hasznalja.

   A /boot/device.hints allomanyban alkalmazott felirasi modrol
   bo"vebben a sound(4), valamint a kerdeses meghajto man oldalan
   tajekozodhatunk.

   A fentiekben bemutatott beallitasok alapertelmezettek, nehany
   esetben azonban a kartyanknak megfelelo"en meg kell valtoztatnunk
   az IRQ es egyeb ertekeket. Erro"l a kartyarol konkretan a
   snd_sbc(4) man oldalon olvashatunk reszletesebben.

     --------------------------------------------------------------

  7.2.2. A hangkartya kiprobalasa

   Miutan ujrainditottuk a szamitogepu:nket a modositott
   rendszermaggal, vagy miutan beto:lto:ttu:k a szu:kseges modult, a
   hangkartyanak valahogy igy kell megjelennie a rendszeru:nk
   u:zenetpuffereben (dmesg(8)):

 pcm0: <Intel ICH3 (82801CA)> port 0xdc80-0xdcbf,0xd800-0xd8ff irq 5 at device 31.5 on pci0
 pcm0: [GIANT-LOCKED]
 pcm0: <Cirrus Logic CS4205 AC97 Codec>

   A hangkartyank allapota a /dev/sndstat allomanyon keresztu:l
   elleno"rizheto":

 # cat /dev/sndstat
 FreeBSD Audio Driver (newpcm)
 Installed devices:
 pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384
 kld snd_ich (1p/2r/0v channels duplex default)

   Ez a kiiras rendszeru:nkent elterhet. Ha nem latunk semmilyen pcm0
   eszko:zt, akkor menju:nk vissza es nezzu:k at ujra, pontosan mit
   is csinaltunk. Vizsgaljuk at a rendszermagunk beallitasait
   tartalmazo allomanyt es gyo"zo"dju:nk meg rola, hogy a megfelelo"
   meghajtot adtuk meg. Az itt felmeru:lo" gyakori gondokkal a
   7.2.2.1 Szakasz foglalkozik.

   Ha azonban minden remeku:l haladt, akkor most mar van egy
   mu"ko:do" hangkartyank. Ha rendesen o:sszekapcsoltuk
   hangkartyankat a CD- vagy DVD-meghajtonk audio csatlakozasaval,
   akkor tegyu:nk egy CD-t a meghajtoba es kezdju:k el jatszani a
   cdcontrol(1) paranccsal:

 % cdcontrol -f /dev/acd0 play 1

   Az olyan alkalmazasok, mint peldaul az audio/workman, ehhez egy
   sokkal baratsagosabb felu:letet nyujtanak. Az MP3 formatumu
   allomanyok meghallgatasahoz pedig minden bizonnyal jol fog jo:nni
   egy olyan alkalmazas is, mint peldaul az audio/mpg123.

   A kartyat ugy is tesztelhetju:k, ha az alabbihoz hasonlo modon
   adatokat ku:ldu:nk a /dev/dsp allomanyba:

 % cat allomanynev > /dev/dsp

   ahol az allomanynev tetszo"leges allomany neve lehet. A parancs
   hatasara valamilyen zajt kell hallanunk, es ez egyben meg is
   ero"siti, hogy a hangkartyank mu"ko:dik.

   A hangkartyank csatornainak jellemzo"it a mixer(8) paranccsal
   allithatjuk. Erro"l tovabbi reszleteket a mixer(8) man oldalon
   olvashatunk.

     --------------------------------------------------------------

    7.2.2.1. Gyakori problemak

             Hiba                           Megoldas                  
   "sb_dspwr(XX) timed out" Nem allitottuk be jol az I/O portot.      
                            Nem allitottuk be jol az IRQ erteket.     
   "bad irq XX"             Gondoskodjunk rola, hogy a beallitott     
                            ertek megegyezik a hangkartyankeval.      
   "xxx: gus pcm not        Nincs eleg memoria az eszko:z             
   attached, out of memory" hasznalatahoz.                            
                            A fstat | grep dsp parancs kiadasaval     
   "xxx: can't open         elleno"rizzu:k, hogy valamelyik           
   /dev/dsp!"               alkalmazas hasznalja-e mar az eszko:zt.   
                            Gyakori bajkevero" az esound es a KDE     
                            hangtamogatasa.                           

     --------------------------------------------------------------

  7.2.3. To:bb hangforras kihasznalasa

   Irta: Munish Chopra.

   Gyakoran szu:ksegu:nk lehet to:bb hangforras egyideju"
   hasznalatara, fo"leg olyankor, amikor az esound vagy az artsd
   bizonyos alkalmazasokkal nem hajlando megosztani a hangeszko:zt.

   A FreeBSD ezt a virtualis hangcsatornak hasznalataval oldja meg,
   amit a sysctl(8) eszko:zo:n keresztu:l tudunk engedelyezni. Amikor
   a rendszermagban virtualis csatornak hasznalataval keveru:nk,
   akkor lenyegeben kepesek vagyunk a hangkartyank altal egyszerre
   jatszhato hangok szamat megto:bbszo:ro:zni.

   A virtualis csatornak szamanak beallitasahoz a sysctl ket
   valtozojat kell modositanunk, amelyet root felhasznalokent igy
   tehetu:nk meg:

 # sysctl dev.pcm.0.play.vchans=4
 # sysctl dev.pcm.0.rec.vchans=4
 # sysctl hw.snd.maxautovchans=4

   A fenti pelda negy virtualis csatornat hoz letre, ami egeszen
   jellemzo" a mindennapi hasznalatban. A dev.pcm.0.play.vchans es
   dev.pcm.0.rec.vchans a pcm0 eszko:z lejatszasra es felvetelre
   hasznalt virtualis csatornainak szamat adja meg, amelyet az
   eszko:z csatlakoztatasa utan tudunk beallitani. A
   hw.snd.maxautovchans az uj eszko:zho:z tartozo virtualis
   csatornakat adja meg, ami akkor allitodik be, amikor a kldload(8)
   paranccsal csatlakoztatjuk. Mivel a pcm modul a to:bbi
   eszko:zmeghajtotol fu:ggetlenu:l to:lto"dik be, ezert a
   hw.snd.maxautovchans azt tarolja, hogy a keso"bb hozza csatlakozo
   eszko:zo:k mennyi virtualis csatornat fognak majd kapni. Erro"l
   reszletesebben a pcm(4) man oldalon olvashatunk.

     Megjegyzes: A hasznalatban levo" eszko:zo:knel nem tudjuk
     megvaltoztatni a virtualis csatornak szamat. Ehhez elo"szo:r le
     kell allitanunk az eszko:zt hasznalo o:sszes programot, tehat a
     zenelejatszokat es hangdemonokat.

   Amennyiben nem hasznaljuk ki a devfs(5) altal nyujtott
   leheto"segeket, az o:sszes alkalmazasnak a /dev/dsp0.x eszko:zre
   kell mutatnia, ahol az x erteke 0-tol 3-ig terjedhet attol
   fu:ggo"en, hogy a dev.pcm.0.rec.vchans erteket a fenti peldahoz
   hasonloan 4-re allitottuk-e. A devfs(5) megoldasat hasznalo
   rendszerek eseten ez a folyamat automatikusan lezajlik, tehat az
   o:sszes /dev/dsp eszko:zre iranyulo keres magatol atiranyitodik.

     --------------------------------------------------------------

  7.2.4. A kevero" alapertelmezett ertekeinek beallitasa

   Irta: Josef El-Rayes.

   A kevero"ben megjeleno" ku:lo:nbo:zo" csatornak alapertekei a
   pcm(4) meghajto forraskodjaban huzalozottan talalhatoak meg.
   Szamos alkalmazas es demon segit ket hivas ko:zt mego"rizni a
   kevero"ben beallitott ertekeket, azonban ez nem teljesen egy
   tiszta megoldas. A meghajto szintjen is be tudjuk allitani a
   kevero" alapertekeit -- ezt a /boot/device.hints allomany
   megfelelo" modositasaval erhetju:k el, peldaul:

 hint.pcm.0.vol="50"

   Ezzel a pcm(4) modul beto:ltese soran a hangero" (volume) csatorna
   alapertelmezett erteket 50-re allitjuk.

     --------------------------------------------------------------

7.3. MP3

   Irta: Chern Lee.

   Az MP3 (MPEG Layer 3 Audio) hasznalataval ko:zel CD mino"segu"
   hangot lehet elerni, ezert a mi FreeBSD munkaallomasunk sem
   maradhat ki elo"nyeinek elvezetebo"l.

     --------------------------------------------------------------

  7.3.1. MP3 lejatszok

   Az XMMS (X Multimedia System) kiemelkedo"en a legnepszeru"bb
   X11-es MP3 lejatszo. Mivel az XMMS grafikus felhasznaloi felu:lete
   szinte teljesen megegyezik a Nullsoft Winampjanak felu:letevel,
   ezert meg a Winamp skinjeit is hasznalhatjuk vele. Az XMMS-ben
   ezenkivu:l meg a nativ pluginek tamogatasat is megtalalhatjuk.

   Az XMMS a multimedia/xmms portbol vagy csomagbol telepitheto".

   Az XMMS hasznalatara ko:nnyu" raerezni: megtalaljuk benne a
   lejatszando szamok listajat, egy grafikus hangszinszabalyzot es
   meg sok minden mast. Akik mar ismerik a Winamp mu"ko:deset, azok
   az XMMS-t is egyszeru"nek erzik majd.

   Mellette az audio/mpg123 port egy masik, parancssoros MP3
   lejatszot kinal fel.

   Az mpg123 futtatasahoz parameterkent meg kell adnunk a
   hangeszko:zt es lejatszando MP3 allomanyt. Ha a hangeszko:zu:nk a
   /dev/dsp1.0 es a IzeMize-Slager.mp3 nevu" MP3 allomanyt akarjuk
   rajta lejatszatni, akkor a ko:vetkezo"t kell begepelnu:nk:

 # mpg123 -a /dev/dsp1.0 IzeMize-Slager.mp3
 High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
 Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
 Uses code from various people. See 'README' for more!
 THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!





 Playing MPEG stream from IzeMize-Slager.mp3 ...
 MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo

     --------------------------------------------------------------

  7.3.2. Savok lementese CD-ro"l

   Mielo"tt MP3 formatumba to:mo:ritenenk egy CD-t vagy annak egy
   savjat, a CD-n talalhato audio adatot valahogy le kell tudnunk
   szedni a merevlemezre. Ezt ugy tehetju:k meg, ha a nyers CDDA (CD
   Digital Audio) adatot WAV formatumu allomanyokba mentju:k.

   A sysutils/cdrtools csomag reszekent elerheto" cdda2wav
   segedprogrammal tudjuk a CD-ken levo" audio es a hozzajuk tartozo
   egyeb informaciokat leszedni.

   A meghajtoban levo" CD teljes tartalmat (root felhasznalokent) a
   ko:vetkezo" parancs kiadasaval lehet (savonkent) ku:lo:nallo WAV
   allomanyokba menteni:

 # cdda2wav -D 0,1,0 -B

   A cdda2wav ismeri az ATAPI (IDE) CD-meghajtokat, hasznalatukhoz a
   SCSI egyseg sorszama helyett az eszko:z nevet kell megadni. Tehat
   peldaul igy szedju:k le egy IDE-meghajtorol a 7. savot:

 # cdda2wav -D /dev/acd0 -t 7

   A -D 0,1,0 a 0,1,0 sorszamu SCSI eszko:zre utal, ami megfelel
   cdrecord -scanbus parancs eredmenyenek.

   Az egyes savok lementesehez a -t kapcsolo hasznalhato:

 # cdda2wav -D 0,1,0 -t 7

   A pelda szerint a zenei CD-ro"l a hetedik savot szedju:k le.
   Egyszerre to:bb savot, peldaul az elso"to"l a hetedikig, egy
   tartomany megadasaval menthetu:nk le:

 # cdda2wav -D 0,1,0 -t 1+7

   A dd(1) segedprogram is hasznalhato ATAPI eszko:zo:ko:n levo"
   hangsavok kimentesehez. Ennek leheto"segero"l reszletesebben a
   18.6.5 Szakaszban olvashatunk.

     --------------------------------------------------------------

  7.3.3. MP3 allomanyok to:mo:ritese

   Az MP3 allomany to:mo:ritesere manapsag a legto:bben a lame
   elnevezesu" kodolot valasztjak. A portfaban a lame az audio/lame
   helyen talalhato meg.

   Az elo"bb kimentett WAV allomanyok felhasznalasaval az alabbi
   paranccsal tudjuk atalakitani a audio01.wav allomanyt audio01.mp3
   allomannya:

 # lame -h -b 128 \
 --tt "Ize dal cime" \
 --ta "Ize-mize elo"ado" \
 --tl "Ize-mize album" \
 --ty "2001" \
 --tc "Leszedte es to:mo:ritette: Ize" \
 --tg "Mu"faj" \
 audio01.wav audio01.mp3

   A 128 kbites to:mo:rites a gyakorlatban leginkabb hasznalt
   kodolasi arany, sokan azonban a sokkal jobb mino"segu" 160 vagy
   192 kbites to:mo:ritest szeretik. Minel nagyobb a kodolasi arany,
   annal to:bb helyet fog foglalni a keletkezo" MP3 allomany -- habar
   a mino"sege is jobb lesz. A -h kapcsolo alkalmazasaval tudjuk
   aktivizalni a "jobb mino"segu" de valamivel lassabb" modot. A --t
   kezdetu" parameterek ID3 tageket adnak meg, amelyek segitsegevel
   az MP3 allomanyokba rajuk vonatkozo informaciokat tudunk
   beagyazni. A to:mo:rites tovabbi beallitasairol a lame man oldalan
   tajekozodhatunk.

     --------------------------------------------------------------

  7.3.4. MP3 allomanyok kito:mo:ritese

   Ha MP3 formatumu allomanyokat szeretnenk audio CD-re irni, akkor
   ehhez elo"szo:r to:mo:ritetlen WAV formatumba kell ezeket
   alakitanunk. Az XMMS es az mpg123 is egyarant leheto"seged ad az
   MP3 allomanyok kito:mo:ritesere.

   Lemezre iras az XMMS-sel:

    1. Inditsuk el az XMMS alkalmazast.

    2. Az XMMS menu:jenek felhozasahoz kattinsunk jobb gombbal az
       ablakjara.

    3. Valasszuk az Options almenu:ben talalhato Preference
       menu:pontot.

    4. Valtoztassuk meg az "Output Plugin" beallitast a "Disk Writer
       Plugin" ertekre.

    5. Nyomjunk a Configure gombra.

    6. Irjuk be (vagy valasszuk ki a Browse gombbal) a ko:nyvtarat,
       ahova majd a kito:mo:ritett allomanyok keru:lnek.

    7. Az eddig megszokottak szerint to:ltsu:k be az XMMS-be az MP3
       allomanyt, allitsuk 100%-ra a hangero"t es kapcsoljuk ki a
       hangszinszabalyzot (EQ, equalizer).

    8. Nyomjuk le a Play gombot -- ugy fog tu"nni, mintha az XMMS
       jatszana az MP3 allomanyt, de nem hallunk semmit. Ekkor a
       tartalmat allomanyba menti.

    9. Mikor befejeztu:k a kito:mo:ritest, ne felejtsu:k el
       visszaallitani az "Output Plugin" erteket az
       alapertelmezettre.

   Iras a szabvanyos kimenetre az mpg123-mal:

    1. Futtassuk le a mpg123 -s audio01.mp3 > audio01.pcm parancsot.

   Az XMMS az allomanyokat WAV formatumban irja, miko:zben az mpg123
   nyers PCM hangadatokat kepez belo"lu:k. A cdrecord hasznalata
   soran mind a ket formatumbol hozhatoak letre audio CD-k. A nyers
   PCM a burncd(8) programmal hasznalhato. Amikor WAV allomanyokkal
   dolgozunk, minden egyes sav elejen egy apro kattanast hallhatunk:
   ez a WAV allomany fejlece lesz. A (audio/sox portbol vagy
   csomagbol telepitheto") SoX segedprogrammal a WAV formatumu
   allomanyok fejlece pillanatok alatt eltavolithato:

 % sox -t wav -r 44100 -s -w -c 2 track.wav track.raw

   A CD-irok FreeBSD alatti hasznalataval kapcsolatban olvassuk el a
   18.6 Szakaszt.

     --------------------------------------------------------------

7.4. Videok lejatszasa

   Irta: Ross Lippert.

   A videolejatszas egy nagyon friss es gyorsan fejlo"do" alkalmazasi
   teru:let. Legyu:nk tu:relmesek, ez nem minden fog annyira ko:nnyen
   menni, mint a hangok eseteben.

   A kezdeshez nem art tudnunk, hogy a videokartyank milyen
   gyartmanyu es milyen chipet hasznal. Mig az Xorg es az XFree86
   szamos ku:lo:nfele videokartyat ismer, csupan to:redeku:kkel lehet
   jo lejatszasi teljesitmenyt elo"hozni. Az X11 futtatasa ko:zben az
   xdpyinfo(1) parancs kiadasaval kerdezhetju:k le az X szerverto"l a
   kartyank hasznalataval elerheto" kiterjeszteseket.

   Erdemes a kezu:nk u:gyeben tartani egy ro:vidke MPEG formatumu
   allomanyt, amellyel majd ki tudjuk probalni a ku:lo:nfele
   lejatszokat es azok beallitasait. Mivel egyes DVD lejatszok
   alapertelmezes szerint a /dev/dvd helyen keresik a lejatszando DVD
   eszko:zt, vagy egyszeru"en csak igy irtak meg ezeket mindenkeppen
   hasznos lehet, ha szimbolikus linkeket hozunk letre a megfelelo"
   eszko:zo:kre:

 # ln -sf /dev/acd0 /dev/dvd
 # ln -sf /dev/acd0 /dev/rdvd

   A devfs(5) mu"ko:dese miatt azonban ezek a kezzel letrehozott
   linkek az ujrainditas utan mar nem maradnak meg. A szimbolikus
   linkeket a rendszer minden egyes indulasakor ugy tudjuk
   automatikusan letrehozni, hogy ha az /etc/devfs.conf allomanyba
   felvesszu:k az alabbi sort:

 link acd0 dvd
 link acd0 rdvd

   Emellett a DVD-k titkositasanak feloldasa, mely a DVD-meghajtok
   specialis funkcioit igenyli, a DVD eszko:zo:ko:n irasi jogot is
   igenyel.

   Az X11 osztott memoriat kezelo" felu:letenek gyorsitasahoz
   javasolt nehany sysctl(8) valtozo ertekenek megno:velese is:

 kern.ipc.shmmax=67108864
 kern.ipc.shmall=32768

     --------------------------------------------------------------

  7.4.1. A megjelenito" kepessegeinek megallapitasa

   To:bb ku:lo:nbo:zo" uton lehet X11 alatt videokat nezni, de ennek
   tenyleges modjat igazabol a rendelkezesre allo hardver hatarozza
   meg. Az itt leirt modszerek altal kihozhato mino"seg hardverenket
   elterhet. Masodsorban a videok megjelenitese az X11-ben az utobbi
   ido"ben igen nagy hangsulyt kapott, ezert az Xorg es az XFree86
   minden egyes valtozataval jelento"sen javulhat a helyzet ezen a
   teren.

   A videok megjelenitesere hasznalt gyakori felu:letek:

    1. X11: az X11 normalis kimenete osztott memorian keresztu:l

    2. XVideo: az X11 felu:letenek kiterjesztese, ami tetszo"leges
       X11 altal kirajzolhato objektum eseten tamogat videot

    3. SDL: a Simple Directmedia Layer

    4. DGA: a Direct Graphics Access (ko:zvetlen grafikus hozzaferes)

    5. SVGAlib: alacsonyszintu" konzolos grafikus reteg

     --------------------------------------------------------------

    7.4.1.1. XVideo

   Az Xorg es az XFree86 4.X rendelkezik egy XVideo (avagy Xvideo,
   Xv, xv) elnevezesu" kiterjesztessel, amelyen keresztu:l egy
   specialis gyorsitas segitsegevel a kirajzolhato objektumokban
   ko:zvetlenu:l meg tudunk jeleniteni videokat. Ezzel a
   kiterjesztessel meg a gyengebb gepeken is nagyon jo mino"segu"
   lejatszast tudunk elerni.

   A kiterjesztes mu"ko:desero"l az xvinfo parancs kiadasaval
   gyo"zo"dhetu:nk meg:

 % xvinfo

   Ha a parancs eredmenye ehhez hasonlo, akkor a kartyank tamogatja
   az XVideot:

 X-Video Extension version 2.2
 screen #0
   Adaptor #0: "Savage Streams Engine"
     number of ports: 1
     port base: 43
     operations supported: PutImage
     supported visuals:
       depth 16, visualID 0x22
       depth 16, visualID 0x23
     number of attributes: 5
       "XV_COLORKEY" (range 0 to 16777215)
               client settable attribute
               client gettable attribute (current value is 2110)
       "XV_BRIGHTNESS" (range -128 to 127)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_CONTRAST" (range 0 to 255)
               client settable attribute
               client gettable attribute (current value is 128)
       "XV_SATURATION" (range 0 to 255)
               client settable attribute
               client gettable attribute (current value is 128)
       "XV_HUE" (range -180 to 180)
               client settable attribute
               client gettable attribute (current value is 0)
     maximum XvImage size: 1024 x 1024
     Number of image formats: 7
       id: 0x32595559 (YUY2)
         guid: 59555932-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x32315659 (YV12)
         guid: 59563132-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x30323449 (I420)
         guid: 49343230-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x36315652 (RV16)
         guid: 52563135-0000-0000-0000-000000000000
         bits per pixel: 16
         number of planes: 1
         type: RGB (packed)
         depth: 0
         red, green, blue masks: 0x1f, 0x3e0, 0x7c00
       id: 0x35315652 (RV15)
         guid: 52563136-0000-0000-0000-000000000000
         bits per pixel: 16
         number of planes: 1
         type: RGB (packed)
         depth: 0
         red, green, blue masks: 0x1f, 0x7e0, 0xf800
       id: 0x31313259 (Y211)
         guid: 59323131-0000-0010-8000-00aa00389b71
         bits per pixel: 6
         number of planes: 3
         type: YUV (packed)
       id: 0x0
         guid: 00000000-0000-0000-0000-000000000000
         bits per pixel: 0
         number of planes: 0
         type: RGB (packed)
         depth: 1
         red, green, blue masks: 0x0, 0x0, 0x0

   Az XVideo nem mindegyik implementaciojaban vannak jelen a
   felsorolt formatumok (YUV2, YUV12 stb.), ami viszont nehany
   lejatszo szamara akadalyokat jelenthet.

   Amennyiben viszont ezt latjuk:

 X-Video Extension version 2.2
 screen #0
 no adaptors present

   Akkor a kartyank nem rendelkezik XVideo tamogatassal.

   Ha az XVideo nem tamogatott a kartyank szamara, akkor az csupan
   csak annyit jelent, hogy a gepu:nknek nehez dolga lesz a videok
   megjelenitesehez szu:kseges szamitasi kapacitas kiszolgalasaban.
   Azonban a videokartyanktol es processzorunktol fu:ggo"en meg igy
   is kielegito" eredmenyt tudunk elo"csalni. Ekkor viszont minden
   bizonnyal erdemes lesz atolvasnunk 7.4.3 Szakaszban, hogyan tudjuk
   no:velni a teljesitmenyet.

     --------------------------------------------------------------

    7.4.1.2. A Simple Directmedia Layer

   A Simple Directmedia Layer, vagy SDL, eredetileg a
   Microsoft Windows, BeOS es UNIX ko:zti hordozhatosagot szandekozta
   megvalositani, aminek segitsegevel a hangot es grafikat hatekonyan
   hasznalni tudo alkalmazasok hozhatoak letre. Az SDL altal nyujtott
   reteg a hardver olyan alacsonyszintu" absztrakciojat o:leli fel,
   amely gyakran meg az X11 felu:letenel is hatekonyabb.

   Az SDL a devel/sdl12 helyen talalhato.

     --------------------------------------------------------------

    7.4.1.3. Direct Graphics Access (Ko:zvetlen grafikus hozzaferes)

   A ko:zvetlen grafikus hozzaferes az X11 egy olyan kiterjesztese,
   ami leheto"ve teszi a programok szamara az X szerver megkeru:leset
   es igy ko:zvetlenu:l a videokartya memoriajat kepesek elerni.
   Mivel a megosztas hatekony megvalositasahoz ez nagyban epitkezik
   alacsonyszintu" lekepzesi mu"veletekre, ezert az ilyet hasznalo
   programokat root felhasznalokent kell futtatni.

   A DGA kiterjesztes a dga(1) segitsegevel tesztelheto" es merheto".
   A dga parancs kiadasa utan minden billentyu" lenyomasara
   megvaltoztatja a kepernyo"n lathato szineket. A kilepeshez a q
   billentyu"t kell lenyomni.

     --------------------------------------------------------------

  7.4.2. A videokkal foglalkozo portok es csomagok

   Ebben a szakaszban a FreeBSD Portgyu"jtemenyebo"l a videok
   lejatszasara alkalmas programokat vesszu:k szamba. A
   videolejatszas nagyon gyorsan fejlo"do" teru:let, ezert az itt
   emlitett ku:lo:nbo:zo" alkalmazasok kepessegei az itt leirtaktol
   nemileg elterhetnek.

   Elo"szo:r is fontos tisztaban lennu:nk azzal, hogy szamos
   FreeBSD-n futo videoalkalmazas eredetileg linuxos alkalmazaskent
   indult, es ko:zu:lu:k sokan meg csak beta mino"segu"ek. Ime a
   FreeBSD-n is megtalalhato videocsomagokkal kapcsolatos nehany
   olyan gond, amivel esetleg o:sszefuthatunk:

    1. Az egyik alkalmazas nem kepes visszajatszani olyan allomanyt,
       amit egy masik alkalmazas hozott letre.

    2. Az alkalmazas nem kepes visszajatszani a sajat maga altal
       keszitett allomanyokat.

    3. Ugyanazon az alkalmazas ket ku:lo:nbo:zo" gepen, amikor mind a
       ketto"n az adott konfiguraciora forditjuk le, ugyanazt az
       allomanyt maskeppen jatssza vissza.

    4. Egy olyan latszolag egyertelmu" szu"ro", mint peldaul a kep
       atmeretezese, a hibas atmertezo" rutin miatt nagyon csunya
       eredmenyt produkal.

    5. Az alkalmazas gyakran elszall.

    6. A porthoz nem talaljuk a dokumentaciot, egyedu:l csak az
       interneten vagy a port work ko:nyvtaraban van.

   Sok alkalmazas a "linuxizmus" jeleit is hordozza, vagyis gondok
   adodhatnak abbol, hogy a szerzo"k az alkalmazasok mu"ko:dtetesehez
   a Linux rendszermag es a ku:lo:nfele terjesztesekben megtalalhato
   modositott szabvanyos ko:nyvtarak ku:lo:nlegessegeit hasznaljak
   ki. Ezeket a portok karbantartoi nem mindig eszlelik es javitjak
   ki, ami miatt az alabbiak barmikor beko:vetkezhetnek:

    1. A processzor jellemzo"it a /proc/cpuinfo allomanyon keresztu:l
       allapitjak meg.

    2. A szalak helytelen hasznalatuk miatt a program
       befejezo"desekor o:sszeakadnak.

    3. Az alkalmazassal gyakran egyu:tt hasznalt egyeb alkalmazasok
       meg nem nincsenek benne a FreeBSD Portgyu"jtemenyeben.

   Az ilyen alkalmazasok fejleszto"i a hordozhatosag javitasaval es a
   problemak megoldasaval kapcsolatban eddig mindig igyekeztek
   egyu:ttmu"ko:dni a portok karbantartoival.

     --------------------------------------------------------------

    7.4.2.1. MPlayer

   Az MPlayer az utobbi ido"ben felbukkant, gyorsan fejlo"do"
   videolejatszo. Fejleszto"inek celja a sebesseg es rugalmassag a
   Linux, illetve mas UNIX rendszereken. A kezdemenyezes abbol
   fakadt, hogy a fejlesztes mo:go:tt allo csapat alapitojanak elege
   lett az akkoriban elerheto" lejatszok teljesitmenyebo"l.
   Mondhatnank, hogy ez a program felaldozta a grafikus felu:letet az
   aramvonalas kialakitasert, azonban ha hozzaszokunk a parancssori
   beallitasokhoz es a billentyu"ko:n keresztu:li vezerleshez,
   remeku:l mu"ko:dik.

     --------------------------------------------------------------

      7.4.2.1.1. Az MPlayer leforditasa

   Az MPlayer a multimedia/mplayer helyen talalhato. A program a
   forditasi folyamat soran elvegez szamos hardverelleno"rzest,
   aminek eredmenyekeppen az egyik rendszeren forditott program nem
   viheto" a masikra. Ezert ku:lo:no:sen fontos portbol forditani es
   nem pedig binaris csomagot hasznalni. Mindezek mellett a Makefile
   allomanyban meg szamos, a make parancsnak a forditas megkezdesekor
   atadhato beallitast talalhatunk:

 # cd /usr/ports/multimedia/mplayer
 # make
 N - O - T - E

 Take a careful look into the Makefile in order
 to learn how to tune mplayer towards you personal preferences!
 For example,
 make WITH_GTK1
 builds MPlayer with GTK1-GUI support.
 If you want to use the GUI, you can either install
 /usr/ports/multimedia/mplayer-skins
 or download official skin collections from
 http://www.mplayerhq.hu/homepage/dload.html

   Az u:zenet forditasa:

 F - I - G - Y - E - L - E - M

 Az mplayert szemelyes igenyeinekhez ugy tudjuk igazitani, ha
 figyelmesen atnezzu:k a Makefile allomanyt!  Peldaul a WITH_GTK1
 megadasaval az MPlayer GTK1 alapu grafikus felu:lettel jo:n letre.
 A grafikus felu:let hasznalatahoz telepitenu:nk kell a
 /usr/ports/multimedia/mplayer-skins portot is, vagy leto:lteni a
 hivatalos skingyu"jtemenyt a http://www.mplayerhq.hu/homepage/dload.html
 oldalrol.

   A port alapbeallitasai a legto:bb felhasznalo szamara
   megfelelo"ek, habar az Xvid kodek hasznalatahoz meg kell adnunk a
   WITH_XVID beallitast. Rajta kivu:l meg az alapertelmezett DVD
   eszko:zt is erdemes megadni a WITH_DVD_DEVICE beallitassal,
   amelynek alaperteke a /dev/acd0.

   A leiras elkeszitesenek ido"pontjaban az MPlayer portja letrehozza
   a HTML dokumentaciot es a ket vegrehajthato allomanyt: az mplayer
   lejatszot es videok ujrakodolasaert felelo"s mencoder
   segedprogramot.

   Az MPlayer HTML dokumentacioja nagyon ko:zlekeny, es ha az olvaso
   nem talalna valamelyik videohardver vagy felu:let leirasat ebben a
   fejezetben, akkor ez a dokumentacio mindenkeppen egy hasznos
   olvasnivalonak bizonyul. Ha a UNIX-ok alatt elerheto"
   videotamogatas leirasat keressu:k, hatarozottan megeri ido"t
   szanni az MPlayer dokumentaciojanak alapos vegigolvasasara.

     --------------------------------------------------------------

      7.4.2.1.2. Az MPlayer hasznalata

   Az MPlayer hasznalatahoz a felhasznaloi ko:nyvtarunkban
   rendelkeznu:nk kell egy .mplayer elnevezesu" ko:nyvtarral. Ezt a
   ko:vetkezo" paranccsal tudjuk letrehozni:

 % cd /usr/ports/multimedia/mplayer
 % make install-user

   Az mplayer parancssori parameterei a hozzatartozo man oldalon
   talalhatoak meg, valamint mindezek a HTML dokumentacioban meg
   reszletesebben. Ebben a szakaszban csupan nehanyukat mutatjuk be.

   Egy allomany, mint peldaul a tesztvideo.avi, a -vo beallitasaval
   jatszhato le a ku:lo:nbo:zo" felu:leteken:

 % mplayer -vo xv tesztvideo.avi

 % mplayer -vo sdl tesztvideo.avi

 % mplayer -vo x11 tesztvideo.avi

 # mplayer -vo dga tesztvideo.avi

 # mplayer -vo 'sdl:dga' tesztvideo.avi

   Erdemes az itt felsorolt konfiguraciok mindegyiket kiprobalni,
   mivel az egymashoz mert teljesitmenyu:k rengeteg tenyezo"n mulik,
   de ko:zu:lu:k talan maga a hardver a legjelento"sebb.

   A DVD-k lejatszasahoz cserelju:k ki a tesztvideo.avi parametert a
   dvd://N -dvd-device ESZKO:Z parameterekkel, ahol az N a
   lejatszando fejezet sorszama, valamint az ESZKO:Z a DVD-hez
   tartozo eszko:zleiro. Peldaul igy tudjuk elkezdeni /dev/dvd
   eszko:zro"l a 3. fejezet lejatszasat:

 # mplayer -vo xv dvd://3 -dvd-device /dev/dvd

     Megjegyzes: A port forditasa soran a WITH_DVD_DEVICE parameter
     segitsegevel megadhato az alapertelmezett DVD eszko:z, amely
     alapbol a /dev/acd0. Erro"l to:bbet a port Makefile allomanyaban
     talalhatunk.

   A leallitashoz, szu:netelteteshez, tovabblepeshez es to:bbi
   hasonlo funkciohoz tartozo billentyu"ket a mplayer -h parancs
   kimenetebo"l vagy a man oldal elolvasasabol derithetju:k ki.

   A lejatszashoz tartozo nehany viszonylag fontos beallitas: az -fs
   -zoom teljeskepernyo"s modra valt, valamint a -framedrop segit
   no:veli a teljesitmenyt.

   A lejatszaskor kiadando parancs tulburjanzasat el tudjuk keru:lni,
   ha letrehozunk egy .mplayer/config allomanyt es itt allitjuk be a
   gyakori opciokat:

 vo=xv
 fs=yes
 zoom=yes

   Vegezetu:l megemlitju:k, hogy az mplayer segitsegevel a DVD-n
   talalhato fejezeteket ki tudjuk menteni .vob allomanyokba. A DVD
   masodik fejezetenek kimentesehez gepelju:k be ezt:

 # mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd

   A parancs eredmenyekeppen keletkezo" out.vob allomany formatuma
   MPEG lesz, amit a fejezetben bemutatott tovabbi csomagokkal tudunk
   feldolgozni.

     --------------------------------------------------------------

      7.4.2.1.3. mencoder

   A mencoder hasznalatanak megkezdese elo"tt javasolt alaposan
   beleasnunk magunkat a HTML dokumentacioba es megismerkednu:nk az
   alapveto" beallitasaival. Van ku:lo:n man oldala is, azonban a
   HTML leiras nelku:l o:nmagaban ez nem tul sokat er.
   Megszamlalhatatlan uton es modon no:velheto" benne a mino"seg,
   cso:kkentheto" a kodolasi arany, valtoztathato a formatum, es ezen
   apro finomsagok felelo"sek a jo vagy eppen a rossz
   teljesitmenyert. A temaba nehany pelda bemutatasaval igyekszu:nk
   beavatni az olvasot. Elo"szo:r vegyu:nk egy egyszeru" masolast:

 % mencoder bemeno".avi -oac copy -ovc copy -o eredmeny.avi

   A parancssori parameterek helytelen kombinacioja olyan
   allomanyokat eredmenyezhet, amelyeket meg maga az mplayer sem
   kepes lejatszani. Ezert ha csak le akarunk szedni egy allomanyt,
   akkor maradjunk meg az mplayer -dumpfile opciojanal.

   A bemeno".avi allomanyt MPEG4 video- es MPEG3 hangto:mo:ritessel
   (amihez kell majd a audio/lame) igy tudjuk lekodolni:

 % mencoder bemeno".avi -oac mp3lame -lameopts br=192 \
          -ovc lavc -lavcopts vcodec=mpeg4:vhq -o eredmeny.avi

   Ezzel az mplayer es xine programok szamara is egyarant lejatszhato
   allomany jo:n letre.

   A DVD fejezeteit ugy tudjuk ko:zvetlenu:l kodolni, ha a
   parancssorban kicserelju:k a bemeno".avi allomanyt az dvd://1
   -dvd-device /dev/dvd beallitasra, illetve ha a programot root
   felhasznalokent futtatjuk. De mivel elso"re altalaban ritkan
   vagyunk elegedettek a kodolassal, erdemes elo"szo:r inkabb
   lementeni az egesz fejezetet egy allomanyba, majd azon dolgozni.

     --------------------------------------------------------------

    7.4.2.2. A xine videolejatszo

   A xine lejatszo mo:go:tt projekt celja nem egy mindenhato
   alkalmazas letrehozasa, hanem inkabb olyan ujrahasznosithato
   fu:ggko:nyvtarak es egy modularis felepitesu" program
   kifejlesztese, amelyeket pluginekkel tudunk kiegesziteni. A
   multimedia/xine helyen portkent, valamint csomagkent is elerheto".

   A xine itt-ott meg valamelyest durva, de mindenkeppen egy
   dicseretes kezdemenyezes. A xine a gyakorlatban egyarant egy ero"s
   processzort es gyors videokartyat kivan, vagy az XVideo
   kiterjesztes tamogatasat. A grafikus felhasznaloi felu:lete ugyan
   hasznalhato, de meg kicsit esetlen.

   Az iras pillanataban az xine melle meg nem kapunk olyan modult,
   amivel le tudnank jatszani a CSS kodolasu DVD-ket. Leteznek
   azonban olyan ku:lso"s modulok, amelyekkel meg lehet valositani
   ezt a feladatot, azonban a FreeBSD Portgyu"jtemenyeben ezeket meg
   nem talalhatjuk meg.

   A xine az MPlayerhez kepes to:bbet tesz a felhasznaloert, azonban
   ezzel egyido"ben el is veszi to"le a finomhangolas leheto"seget. A
   xine legjobban az XVideot ismero" felu:leteken teljesit.

   A xine alapertelmezes szerint grafikus felu:lettel indul, ahol a
   menu:k segitsegevel tudunk megnyitni egy adott allomanyt:

 % xine

   Vagy a grafikus felu:let hasznalata nelku:l kiadhatjuk
   ko:zvetlenu:l is az allomany lejatszasat:

 % xine -g -p kedvencmozim.avi

     --------------------------------------------------------------

    7.4.2.3. A transcode

   A transcode nem egy ujabb lejatszo, hanem a video- es audio
   allomanyok ujrato:mo:ritesere hasznalhato programok gyu"jtemenye.
   A transcode segitsegevel a szabvanyos be- es kimeneten keresztu:l
   parancssoros programokkal kepesek vagyunk videoallomanyokat
   o:sszefu"zni, megjavitani.

   A multimedia/transcode port forditasa soran temerdek beallitast
   adhatunk meg, amelyek ko:zu:l az alabbi parancsban foglaljuk
   o:ssze az altalunk javasolandokat:

 # make WITH_OPTIMIZED_CFLAGS=yes WITH_LIBA52=yes WITH_LAME=yes WITH_OGG=yes \
 WITH_MJPEG=yes -DWITH_XVID=yes

   Ezek a beallitasok a legto:bb felhasznalo szamara elegendo"ek.

   A transcode kepessegeinek illusztralasahoz lassunk egy peldat,
   amiben megmutatjuk, hogyan kell egy DivX allomanyt PAL szabvanyu
   MPEG-1 formatumu (PAL VCD) allomannya alakitani:

 % transcode -i bemeno".avi -V --export_prof vcd-pal -o output_vcd
 % mplex -f 1 -o eredmeny_vcd.mpg eredmeny_vcd.m1v eredmeny_vcd.mpa

   Az eredmenyu:l keletkezo" eredmeny_vcd.mpg MPEG allomany akar mar
   jatszhato is MPlayerrel. Ha az allomanyt kiirjuk egy irhato CD-re,
   akkor ezzel video CD-t is letre tudunk hozni, amihez viszont
   szu:ksegu:nk van mind a multimedia/vcdimager es sysutils/cdrdao
   programokra.

   A transcode parancsnak van sajat man oldala, azonban ehelyett a
   transcode wikiben erdemes inkabb tovabbi informaciokat es peldakat
   keresni.

     --------------------------------------------------------------

  7.4.3. Ajanlott olvasmanyok

   A FreeBSD-hez tartozo videoszoftverek nagyon gyorsan fejlo"dnek.
   Ko:nnyen elkepzelheto", hogy az iment targyalt problemak
   legto:bbje a ko:zeljo:vo"ben hamarosan megoldodik. Addig viszont
   barkinek, aki a legto:bbet szeretne kihozni a FreeBSD audio- es
   video leheto"segeibo"l, rengeteg leiras es dokumentacio elolvasasa
   alapjan kell o:sszecsiszolnia a ku:lo:nbo:zo" beallitasokat, es
   csak nehany alkalmazas mellett erdemes kitartania. Ebben a
   szakaszban igyekszu:nk segiteni az olvasonak megtalalni az ilyen
   jellegu" informaciokat.

   Az MPlayer dokumentacioja szakmai szempontbol igen ko:zlekeny. Ezt
   mindenkinek erdemes elolvasnia, aki a keso"bbiekben magasabb
   szakmai szinten akar foglalkozni a UNIX-os videozassal. Az MPlayer
   levelezesi listaja viszont alig toleralja a dokumentaciot rendesen
   el nem olvaso emberek kerdeseit, ezert minden egyes hiba
   bejelentese elo"tt leheto"leg rendesen nezzu:k at a dokumentacio
   odavago reszeit.

   A xine HOGYAN egyik ku:lo:n fejezeteben az o:sszes lejatszo eseten
   ervenyesitheto" teljesitmenyno:velesi modszereket mutat be.

   Vegu:l ime nehany igeretes alkalmazas, amelyeket erdemes
   kiprobalnunk:

     * Avifile, ami egyben a multimedia/avifile port

     * Ogle, ami a multimedia/ogle port

     * Xtheater

     * multimedia/dvdauthor, egy nyilt forraskodu DVD-tartalom
       szerkeszto"

     --------------------------------------------------------------

7.5. TV kartyak beallitasa

   Eredetileg irta: Josef El-Rayes. Kiegeszitette,
   tovabbfejlesztette: Marc Fonvieille.

     --------------------------------------------------------------

  7.5.1. Bevezetes

   A TV kartyak segitsegevel kabeles vagy antennas televizioadasokat
   tudunk nezni a szamitogepu:nko:n. A legto:bbju:k RCA vagy S-video
   bemenettel rendelkezik, valamint nehanyukon meg FM radiokeszu:lek
   is megtalalhato.

   A FreeBSD a bktr(4) meghajton keresztu:l a Brooktree
   Bt848/849/878/879, illetve a Conexant CN-878/Fusion 878a tipusu,
   PCI-os videoro:gzito chipeket ismeri. U:gyelnu:nk kell arra, hogy
   a kartyankon levo" vevo"keszu:lek is hasznalhato legyen, amit
   pedig a bktr(4) man oldalan megtalalhato tamogatott eszko:zo:k
   listajabol elleno"rizhetu:nk.

     --------------------------------------------------------------

  7.5.2. A meghajto beallitasa

   A kartyank hasznalatahoz be kell to:ltenu:nk a bktr(4) meghajtot,
   ami csupan annyibol all, hogy a /boot/loader.conf allomanyhoz
   hozzaadunk egy ilyen sort:

 bktr_load="YES"

   Masik leheto"segu:nk, ha a TV kartya tamogatasat statikusan
   beleepitju:k a rendszermagba. Ha ezt a megoldast valasztjuk, a
   ko:vetkezo" sorokat kell elhelyeznu:nk a rendszermag beallitasait
   tartalmazo allomanyba:

 device   bktr
 device  iicbus
 device  iicbb
 device  smbus

   A fentebb lathato egyeb eszko:zo:k megadasa azert szu:kseges, mert
   a kartya reszegysegei egy I2C buszon csatlakoznak egymashoz.
   Miutan beillesztettu:k a szu:kseges valtoztatasokat, forditsuk le
   es telepitsu:k az uj rendszermagot.

   A tamogatas hozzaadasa utan ujra kell inditanunk a
   szamitogepu:nket. A rendszerinditasi folyamat soran meg kell
   jelennie a TV kartyanknak is, valahogy igy:

 bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
 iicbb0: <I2C bit-banging driver> on bti2c0
 iicbus0: <Philips I2C bus> on iicbb0 master-only
 iicbus1: <Philips I2C bus> on iicbb0 master-only
 smbus0: <System Management Bus> on bti2c0
 bktr0: Pinnacle/Miro TV, Philips SECAM tuner.

   Termeszetesen a fenti u:zenetek az aktualis hardvereszko:zu:nknek
   megfelelo"en nemileg elterhetnek. Elleno"rizzu:k, hogy a
   vevo"keszu:leket helyesen ismerte-e fel a rendszer. Ha nem
   sikeru:lt volna, akkor a sysctl(8) es a rendszermag beallitasai
   segitsegevel meg mindig van leheto"segu:nk allitani rajta.
   Peldaul, ha egy Philips SECAM vevo"keszu:leket akarunk beallitani,
   akkor a rendszermag beallitasaihoz meg hozza kell adni a
   ko:vetkezo" sort:

 options OVERRIDE_TUNER=6

   vagy erre ko:zvetlenu:l hasznalhatjuk a sysctl(8) programot is:

 # sysctl hw.bt848.tuner=6

   A bktr(4) man oldalan es a /usr/src/sys/conf/NOTES allomanyban
   megtalalhatjuk a to:bbi beallitas reszletes leirasat is.

     --------------------------------------------------------------

  7.5.3. Hasznos alkalmazasok

   A TV kartyank tenyleges hasznalatahoz azonban meg a ko:vetkezo"
   alkalmazasok valamelyiket is telepitenu:nk kell:

     * A multimedia/fxtv hasznalataval ablakban tevezhetu:nk,
       valamint leheto"segu:nk van kep/audio/video kimentesere is.

     * A multimedia/xawtv az fxtv-hez hasonlo leheto"segekkel biro
       tevenezo" alkalmazas.

     * A misc/alevt dekodolja es megjeleniti a mu"sorhoz kapcsolodo
       Videotex/Teletext u:zeneteket.

     * Az audio/xmradio segitsegevel az egyes TV kartyakon
       megtalalhato FM radiokeszu:lekeket tudjuk hasznalatba venni.

     * Az audio/wmtune a radiovevo"kho:z hasznalhato hasznos grafikus
       alkalmazas.

   Ebben a temaban a FreeBSD Portgyu"jtemenyeben tovabbi erdekes
   alkalmazasok talalhatoak meg.

     --------------------------------------------------------------

  7.5.4. Hibakereses

   Ha barmilyen gond adodna a TV kartyankkal kapcsolatosan, akkor
   elo"szo:r mindenkeppen erdemes megnezni, hogy a rajta levo"
   videoro:gzito" chipet es vevo"keszu:leket a bktr(4) meghajto
   tenylegesen ismeri-e, illetve hogy jol allitottuk-e be. A TV
   kartyakra iranyulo ku:lo:nfele egyeb kerdesek es segitseg
   tekinteteben erdemes lehet meg levelet ku:ldeni a
   freebsd-multimedia cimere is.

     --------------------------------------------------------------

7.6. Lapolvasok

   Irta: Marc Fonvieille.

     --------------------------------------------------------------

  7.6.1. Bevezetes

   A FreeBSD lapolvasokhoz a SANE (Scanner Access Now Easy)
   elnevezesu" API (alkalmazasfejleszto"i felu:let) segitsegevel
   kepes hozzaferni, amelyet a Portgyu"jtemenyben talalhatunk meg. A
   lapolvasast vegzo" hardvereszko:zo:k hasznalatahoz a FreeBSD a
   SANE mellett meg nehany eszko:zmeghajtora is tamaszkodik.

   A FreeBSD egyarant ismeri az SCSI es USB csatlakoztatasu
   lapolvasokat is. Meg mielo"tt nekikezdenenk a lapolvaso
   beallitasahoz, bizonyosodjuk meg rola, hogy a SANE tamogatja. A
   SANE altal ismert eszko:zo:k felsorolasaban elleno"rizhetju:k a
   lapolvasonk tamogatottsaganak allapotat. A FreeBSD 8.X elo"tti
   kiadasaiban ezenkivu:l meg a uscanner(4) man oldalon is lathatjuk
   az ismert USB-s lapolvasok listajat.

     --------------------------------------------------------------

  7.6.2. A rendszermag beallitasa

   A korabbiak ertelmeben tehat mind a SCSI, mind pedig a USB
   felu:leten csatlakozo eszko:zo:k tamogatottak. A lapolvasonknak
   megfelelo"en eltero" eszko:zmeghajtok szu:ksegesek.

     --------------------------------------------------------------

    7.6.2.1. Beallitas USB felu:leten

   A GENERIC rendszermag alapertelmezes szerint tartalmazza az USB-s
   lapolvasok hasznalatahoz szu:kseges eszko:zmeghajtokat. Ha
   valamiert azonban megis sajat rendszermagot akarunk hasznalni,
   akkor ne felejtsu:k el elleno"rizni, hogy a rendszermag
   beallitasai ko:zo:tt megtalalhatoak a ko:vetkezo" sorok:

 device usb
 device uhci
 device ohci
 device ehci

   A FreeBSD 8.X elo"tti kiadasaiban meg a ko:vetkezo" sorra is
   szu:ksegu:nk lesz:

 device uscanner

   A FreeBSD ezen valtozataiban a uscanner(4) eszko:zmeghajton
   keresztu:l tudjuk hasznalni az USB csatoloval rendelkezo"
   lapolvasokat. A FreeBSD 8.0 valtozatatol kezdo"do"en pedig ehhez a
   libusb(3) fu:ggvenyko:nyvtar nyujt ko:zvetlen tamogatast.

   A megfelelo"en elo"keszitett rendszermag elinditasa utan
   csatlakoztassuk az USB-s lapolvasonkat. Ez sor fog megjelenni a
   rendszer u:zenetpuffereben (dmesg(8)):

 ugen0.2: <EPSON> at usbus0

   Vagy FreeBSD 7.X rendszerek eseteben:

 uscanner0: EPSON EPSON Scanner, rev 1.10/3.02, addr 2

   Ezek az u:zenetek elaruljak neku:nk, hogy a lapolvasohoz mostantol
   a hasznalt FreeBSD verziotol fu:ggo"en a /dev/ugen0.2 vagy a
   /dev/uscanner0 eszko:zleiro tartozik. A fenti peldaban egy EPSON
   Perfection(R) 1650 tipusu USB lapolvasot lathatunk.

     --------------------------------------------------------------

    7.6.2.2. Beallitas SCSI felu:leten

   Ha a lapolvasonk SCSI felu:leten csatlakozik, fontos tisztaban
   lennu:nk azzal, hogy pontosan milyen SCSI-vezerlo"n keresztu:l is
   erhetju:k el, ugyanis a rajta talalhato SCSI chipkeszletnek
   megfelelo"en kell majd hangolnunk a rendszermag beallitasait. A
   GENERIC rendszermag alapbol ismeri a leggyakrabban elo"fordulo
   SCSI-vezerlo"ket. Mindenkeppen olvassuk at a NOTES nevu" allomanyt
   es adjuk hozza a rendszermag beallitasaihoz a megfelelo" sort. A
   SCSI-kartya meghajtojan kivu:l meg az alabbi beallitasokat is meg
   kell adnunk a rendszermagunk szamara:

 device scbus
 device pass

   Ahogy sikeru:lt a rendszermagot sikeresen leforditani es
   telepiteni, a rendszer indulasa soran az u:zenetpufferben mar
   lathatjuk is a felismert eszko:zt:

 pass2 at aic0 bus 0 target 2 lun 0
 pass2: <AGFA SNAPSCAN 600 1.10> Fixed Scanner SCSI-2 device
 pass2: 3.300MB/s transfers

   Ha a rendszer indulasakor meg nem kapcsoltuk volna be a
   lapolvasonkat, a camcontrol(8) parancs segitsegevel keso"bb
   ku:lo:n kerhetju:k a SCSI buszon talalhato eszko:zo:k ujboli
   felderiteset:

 # camcontrol rescan all
 Re-scan of bus 0 was successful
 Re-scan of bus 1 was successful
 Re-scan of bus 2 was successful
 Re-scan of bus 3 was successful

   Ekkor a lapolvaso megjelenik a SCSI eszko:zo:k felsorolasaban:

 # camcontrol devlist
 <IBM DDRS-34560 S97B>              at scbus0 target 5 lun 0 (pass0,da0)
 <IBM DDRS-34560 S97B>              at scbus0 target 6 lun 0 (pass1,da1)
 <AGFA SNAPSCAN 600 1.10>           at scbus1 target 2 lun 0 (pass3)
 <PHILIPS CDD3610 CD-R/RW 1.00>     at scbus2 target 0 lun 0 (pass2,cd0)

   A SCSI eszko:zo:kro"l tovabbi leirasokat a scsi(4) es
   camcontrol(8) man oldalakon talalhatunk.

     --------------------------------------------------------------

  7.6.3. A SANE beallitasa

   A SANE rendszere ket reszre oszlik: a backendekre
   (graphics/sane-backends) es a frontendekre
   (graphics/sane-frontends). Ezek ko:zu:l maguk a backendek
   szolgaltatjak a lapolvaso hozzaferheto"seget. A SANE altal ismert
   eszko:zeinek listajabol kifu:rkeszhetju:k, hogy lapolvasonkat
   melyik backenden keresztu:l erhetju:k el. Az eszko:z megfelelo"
   hasznalatahoz do:nto" fontossagu megallapitani a hozzatartozo
   backendet. A frontendek ko:zo:tt talaljuk meg a lapolvasast
   felu:gyelo" grafikus felu:leteket (mint peldaul az xscanimage).

   Elso"kent telepitsu:k a graphics/sane-backends portot vagy
   csomagot. Ezutan elleno"rizzu:k, hogy a SANE felismeri a
   lapolvasot, es ehhez adjuk ki a sane-find-scanner parancsot:

 # sane-find-scanner -q
 found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3

   A kimeneteben jelzi a felu:letet, amin a lapolvaso csatlakozik,
   valamint a hozzatartozo eszko:zleirot. A gyarto neve es a termek
   tipusa nem minden esetben jelenik meg, de ez nem is annyira
   fontos.

     Megjegyzes: Nemely USB-s lapolvasok eseten meg egy firmware-t is
     be kell to:ltenu:nk, amiro"l bo"vebben a backendhez tartozo man
     oldalokon olvashatunk. Ajanlott meg elolvasni a
     sane-find-scanner(1) es sane(7) man oldalakat is.

   Most pedig nezzu:k meg, hogy vajon a frontend is be tudja-e
   azonositani a lapolvasonkat. Alapertelmezes szerint a SANE
   backendjehez tartozik meg egy scanimage(1) nevu" segedprogram is,
   aminek segitsegevel listazni tudjuk a hasznalhato eszko:zo:ket es
   kepeket tudunk beolvasni parancssorbol. Ko:zu:lu:k a -L kapcsolo
   listaz:

 # scanimage -L
 device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner

   Vagy ha a 7.6.2.1 Szakaszban szereplo" USB lapolvasoval nezzu:k:

 # scanimage -L
 device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner

   Ezt a kimenetet egy FreeBSD 8.X rendszeren kaptuk, ahol a
   epson2:libusb:/dev/usb:/dev/ugen0.2 az eszko:zho:z tartozo
   backendet es eszko:zleirot (/dev/ugen0.2) adja meg.

     Megjegyzes: Ha ennek eredmenyekeppen semmi sem jelenik meg, vagy
     a scanimage(1) latszolag nem talalt semmilyen eszko:zt, akkor a
     lapolvaso azonositasa nem sikeru:lt. Ilyen esetekben
     valoszinu"leg modositanunk kell a backend beallitasait
     tartalmazo allomanyt a hasznalni kivant lapolvaso eszko:z
     szerint. A backendek beallitasait a /usr/local/etc/sane.d/
     ko:nyvtarban talaljuk. Ez a problema bizonyos USB-s lapolvasok
     eseteben jelentkezik.

     Peldaul, ha 7.6.2.1 Szakaszban hasznalt USB-s lapolvasonkat
     FreeBSD 8.X alatt to:keletesen felismeri a rendszer, de a
     FreeBSD korabbi valtozatai eseten (ahol a uscanner(4)
     eszko:zmeghajtot hasznaljak) a sane-find-scanner parancs a
     ko:vetkezo"ket adja vissza:

 # sane-find-scanner -q
 found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0

     Akkor a lapolvasot sikeru:lt megtalalni, es lathatjuk, hogy
     USB-n keresztu:l csatlakozik es a /dev/uscanner0 eszko:zleiro
     tartozik hozza. Most mar elleno"rizhetju:k a lapolvaso helyes
     beazonositasat is:

 # scanimage -L

 No scanners were identified. If you were expecting something different,
 check that the scanner is plugged in, turned on and detected by the
 sane-find-scanner tool (if appropriate). Please read the documentation
 which came with this software (README, FAQ, manpages).

     Az u:zenet forditasa:

 Nincs azonosithato lapolvaso.  Ha nem erre szamitottunk, akkor elleno"rizzu:k,
 hogy az eszko:zt tenyleg bekapcsoltuk, csatlakoztattuk es eszlelte a
 sane-find-scanner segedprogram (amennyiben szu:kseges).  Kerju:k, olvassa el a
 szoftverhez tartozo dokumentumtaciot (README, FAQ, man oldalak)!

     Mivel a lapolvasot nem sikeru:lt azonositani, at kell irnunk a
     /usr/local/etc/sane.d/epson2.conf allomanyt. A hasznalt
     lapolvaso tipusa EPSON Perfection 1650, ezert hozza az epson2
     backendet fogjuk hasznalni. Ehhez feltetlenu:l olvassuk el a
     konfiguracios allomanyban talalhato megjegyzeseket is. A sorokat
     igen ko:nnyu" atirni: tegyu:k megjegyzesbe az o:sszes olyat,
     ahol a lapolvasonk szamara nem megfelelo" felu:letek talalhatoak
     (a mi esetu:nkben tehat megjegyzesbe fogjuk tenni az o:sszes
     scsi szoval kezdo"do" sort, hiszen a neku:nk USB-s eszko:zu:nk
     van), majd az allomany vegere irjuk be a hasznalni kivant
     felu:letet es eszko:zleirot. Ez ebben a konkret esetben ennyi
     lenne:

 usb /dev/uscanner0

     A megfelelo" formatum es a tovabbi reszletek leirasahoz ne
     felejtsu:k el azonban elolvasni a backend konfiguracios
     allomanyaban felbukkano megjegyzeseket es az ide tartozo man
     oldalt sem. Most mar megprobalkozhatunk ujra a lapolvaso
     azonositasaval:

 # scanimage -L
 device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner

     Lathatjuk, hogy az USB-s lapolvasonkat sikeru:lt azonositani.
     Nem szamit, ha esetleg nem egyezne a valosaggal a gyarto vagy a
     tipus megjelo:lese. Itt a valoban lenyeges elem az
     `epson:/dev/uscanner0' mezo" lesz, melynek a backend es az
     eszko:zleiro nevet kell helyesen tartalmaznia.

   A beallitast akkor zarhatjuk le, miutan a scanimage -L parancs
   kepes eszlelni a lapolvasot. A eszko:z ekkor mar keszen all a
   beolvasasra.

   Mig a scanimage(1) parancssorbol teszi leheto"ve szamunkra a
   lapolvasast, addig erdemesebb a kepek olvasasat egy grafikus
   felu:leten keresztu:l vegeznu:nk. A SANE egy egyszeru", am
   hatekony grafikus felu:letet ajanl fel ehhez, ez az xscanimage
   (graphics/sane-frontends).

   Az Xsane (graphics/xsane) egy masik nepszeru" grafikus frontend.
   Segitsegevel specialis leheto"segeket is kihasznalhatunk, mint
   peldaul to:bbfele kepolvasasi mod (fenymasolo, fax stb.),
   szinkorrekcio, ko:tegelt beolvasas, stb. Mind a ket emlitett
   alkalmazas elerheto" a The GIMP bo"vitmenyekent is.

     --------------------------------------------------------------

  7.6.4. A lapolvaso hasznalatanak engedelyezese mas felhasznalok
  szamara

   A korabban targyalt mu"veletek mindegyiket root felhasznalokent
   tudjuk csak vegrehajtani. Azonban elo"fordulhat, hogy mas
   felhasznalok szamara is szeretnenk hozzaferest biztositani a
   lapolvasohoz. Ehhez az erintett felhasznaloknak a lapolvasohoz
   tartozo eszko:zleirohoz olvasasi es iras joggal kell
   rendelkezniu:k. Peldaul az USB-s lapolvasonk a /dev/ugen0.2
   eszko:zleirot hasznalja, amely valojaban csak a /dev/usb/0.2.0
   eszko:zleirora mutato szimbolikus link (ezt gyorsan le tudjuk
   elleno"rizni, ha megnezzu:k a /dev ko:nyvtar tartalmat). Az
   eszko:zleiro es a ra mutato szimbolikus link rendre a wheel es
   operator csoportok birtokaban van. Ha a pgj nevu" felhasznalot
   felvesszu:k ezekbe a csoportokba, akkor ezaltal hozza tud majd
   ferni a lapolvasohoz. Nyilvanvalo biztonsagi megfontolasokbol
   azonban ketszer is javasolt meggondolni, mely felhasznalokat mely
   csoportokba vesszu:k fel, ku:lo:no:sen, ha wheel csoportrol van
   szo. Ennel valamivel jobb megoldast kinal, ha letrehozunk ku:lo:n
   az USB eszko:zo:k hasznalatara vonatkozo csoportot es a lapolvasot
   ezen csoport tagjainak szamara elerheto"ve tesszu:k.

   Tehat erre a celra peldaul megalkotjuk a usb csoportot. Ehhez
   elso" lepeskent a pw(8) parancs segitsegevel hozzuk letre magat a
   csoportot:

 # pw groupadd usb

   Ezutan a /dev/usb/0.2.0 eszko:zleirot es a ra mutato /dev/ugen0.2
   szimbolikus linket kell az usb csoport reszere elerheto"ve
   tennu:nk, a megfelelo" irasi engedelyekkel (0660 vagy 0664)
   egyu:tt, mivel alapertelmezetten csak a tulajdonosuk (root) tudja
   irni ezeket. Mindezt ugy tudjuk megtenni, ha az /etc/devfs.rules
   allomanyhoz hozzaadjuk a megfelelo" sorokat:

 [system=5]
 add path ugen0.2 mode 0660 group usb
 add path usb/0.2.0 mode 0660 group usb

   A FreeBSD 7.X valtozatok eseten a ko:vetkezo" sorokra lesz
   szu:ksegu:nk (legto:bb esetben a /dev/uscanner0 eszko:zleirohoz):

 [system=5]
 add path uscanner0 mode 0660 group usb

   Ezt ko:veto"en az /etc/rc.conf allomanyba irjuk be az alabbi sort
   es utana inditsuk ujra a szamitogepet:

 devfs_system_ruleset="system"

   Az itt szereplo" sorok pontos jelentesero"l a devfs(8) man
   oldalarol tajekozodhatunk.

   Ezutan mar csak fel kell vennu:nk azokat a felhasznalokat a usb
   csoportba, amelyeknek engedelyezzu:k a lapolvaso hasznalatat:

 # pw groupmod usb -m pgj

   A tovabbi reszletekro"l a pw(8) man oldalon olvashatunk.

     --------------------------------------------------------------

             Fejezet 8. A FreeBSD rendszermag testreszabasa

   Frissitette es atdolgozta: Jim Mock. Eredetileg irta: Jake Hamby.

8.1. Attekintes

   A rendszermag a FreeBSD operacios rendszer lelke. Felelo"s a
   memoria kezelesert, a biztonsagi szabalyozasok betartatasaert, a
   halozat mu"ko:dteteseert, a lemezhozzaferesert es sok minden
   masert is. Miko:zben maga a FreeBSD egyre jobban konfiguralhato
   dinamikusan, addig alkalmankent elegedhetetlen, hogy
   ujrakonfiguraljuk es ujraforditsuk a rendszermagot.

   A fejezet elolvasasa soran megismerju:k:

     * miert lehet szu:ksegu:nk egy sajat rendszermagra;

     * hogyan keszitsu:nk konfiguracios allomanyt a rendszermaghoz,
       vagy hogyan modositsunk egy mar letezo"t;

     * hogyan hasznaljuk a rendszermag konfiguracios allomanyat egy
       uj rendszermag leforditasara es letrehozasara;

     * hogyan telepitsu:k az uj rendszermagot;

     * hogyan orvosoljuk a felmeru:lo" problemakat.

   A fejezetben az o:sszes peldakent bemutatasra keru:lo" parancsot
   root felhasznalokent kell kiadni a sikeres vegrehajtasukhoz.

     --------------------------------------------------------------

8.2. Miert keszitsu:nk sajat rendszermagot?

   A FreeBSD eredetileg un. "monolitikus" rendszermaggal
   rendelkezett. Ez azt jelenti, hogy a rendszermag egyetlen nagy
   program volt, ami elo"re ro:gzitett eszko:zo:ket ismert, es ha meg
   akartuk valtoztatni a rendszermag mu"ko:deset, akkor forditanunk
   kellett uj rendszermagot, majd ujra kellett inditanunk vele a
   szamitogepet.

   Manapsag azonban a FreeBSD mar inkabb afele a megko:zelites fele
   halad, ahol a rendszermag funkcionalitasanak nagy reszet mu"ko:des
   ko:zben az igenyek szerint beto:ltheto" es eltavolithato modulok
   adjak. Ezzel leheto"ve valik, hogy a rendszermag gyorsan
   illeszkedjen az ujonnan megjeleno" hardvereszko:zo:kho:z (mint
   peldaul a laptopok PCMCIA-kartyaihoz), vagy olyan uj funkciokat
   tegyu:nk a rendszermaghoz, amelyek a forditasanal nem voltak
   feltetlenu:l szu:ksegesek. Ezt a modellt nevezik modularis
   rendszermagnak.

   Ennek ellenere meg mindig elkeru:lhetetlen, hogy esetenkent ne
   legyen szu:kseg a rendszermag statikus testreszabasara. Ez a
   legto:bb esetben azzal magyarazhato, hogy vannak olyan funkciok,
   amelyek tulsagosan is melyen helyezkednek el a rendszermagban,
   ezaltal nem to:ltheto"ek be dinamikusan. Maskor viszont
   egyszeru"en azert nem lehetseges, mert meg senki sem szant ido"t
   az adott funkciohoz tartozo, dinamikusan beto:ltheto" modul
   elkeszitesere.

   Egy sajat rendszermag keszitese azon legfontosabb probatetelek
   egyike, melyet egy halado BSD felhasznalonak ki kell allnia. Ez a
   folyamat, habar nemileg ido"igenyes, szamos elo"nyt tartogat
   FreeBSD rendszeru:nk szamara. Eltero"en egy GENERIC (altalanos)
   rendszermagtol, amely rengeteg hardvert tamogat, egy sajat
   rendszermag csak a sajat PC-nk hardveret ismeri. Ennek to:bb
   elo"nye is van, peldaul:

     * A rendszeru:nk gyorsabban indul. Mivel a rendszermag csak
       azokat a hardvereket fogja keresni, melyek a rendszeru:nkben
       megtalalhatoak, jelento"s mertekben le tud cso:kkeni az
       indulashoz szu:kseges ido".

     * Kisebb memoriahasznalat. Egy sajat rendszermag a szu:ksegtelen
       reszek es eszko:zmeghajtok elhagyasa miatt gyakran kevesebb
       memoriat emeszt fel, mint a GENERIC rendszermag. Ez azert is
       fontos, mert a rendszermag mindig benn van a fizikai
       memoriaban, es ezzel az alkalmazasok elo:l veszi a helyet.
       Emiatt egy sajat rendszermag elkeszitese ku:lo:no:sen hasznos
       lehet egy keves fizikai memoriaval rendelkezo" rendszeren.

     * Tovabbi hardverek tamogatasa. A sajat rendszermagunkba olyan
       eszko:zo:k tamogatasat is beletehetju:k, amelyek nem
       szerepelnek a GENERIC rendszermagban, mint peldaul a
       hangkartyaket.

     --------------------------------------------------------------

8.3. A rendszeru:nkben levo" hardverek o:sszeszedese

   Irta: Tom Rhodes.

   Mielo"tt belevetnenk magunkat a rendszermag beallitasaba, erdemes
   egy leltart kesziteni a gepu:nkben talalhato ku:lo:nbo:zo"
   eszko:zo:kro"l. Ahol a FreeBSD nem elso"dlegesen hasznalt
   operacios rendszer, ott ehhez elegendo" megnezni a jelenlegi
   rendszerben talalhato elemeket. Peldaul az Microsoft rendszerek
   Eszko:zkezelo"jeben (Device Manager) altalaban az o:sszes eszko:z
   fontosabb adatait megtalaljuk. Magat az Eszko:zkezelo"t pedig a
   Vezerlo"pultbol (Control Panel) erhetju:k el.

     Megjegyzes: A Microsoft Windows egyes verzioiban a Rendszer
     (System) ikonjara kattintva megkapjuk azt a kepernyo"t, ahonnan
     ko:zvetlenu:l el tudjuk erni az Eszko:zkezelo"t.

   Ha viszont nincs masik operacios rendszer a gepu:nko:n, akkor
   magunknak kell mindezeknek utananeznu:nk. Erre az egyik alkalmas
   modszer a dmesg(8) es a man(1) parancsok hasznalata. A FreeBSD-ben
   talalhato legto:bb meghajtonak van sajat man oldala, ami
   tartalmazza az altaluk kezelt eszko:zo:k listajat, illetve igy a
   rendszerinditas soran eszlelt hardvereket nezhetju:k vissza.
   Peldaul az alabbi sor arra utal, hogy a psm meghajto megtalalta a
   gepu:nkho:z tartozo egeret:

 psm0: <PS/2 Mouse> irq 12 on atkdbc0
 psm0: [GIANT-LOCKED]
 psm0: [ITHREAD]
 psm0: model Generic PS/2 mouse, device ID 0

   Ezutan ezt a meghajtot vagy a rendszermagba kell beepitenu:nk,
   vagy pedig a loader.conf(5) allomanyon keresztu:l beto:ltenu:nk.

   Bizonyos esetekben a dmesg az eszko:zo:k felkutatasanak eredmenyei
   helyett csak a rendszer u:zeneteit mutatja. Ilyen helyezetekben a
   teljes kimenet a /var/run/dmesg.boot allomanyban tekintheto" meg.

   A hardverek manualis felderitesenek modja a pciconf(8)
   segedprogram kimenetenek bo:ngeszese, ami egy valamivel
   reszletesebb eredmenyt ad. Mint peldaul:

 ath0@pci0:3:0:0:        class=0x020000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00
          vendor     = 'Atheros Communications Inc.'
          device     = 'AR5212 Atheros AR5212 802.11abg wireless'
          class      = network
          subclass   = ethernet

   A pciconf -lv paranccsal kapott kimenet ezen resze azt mutatja,
   hogy az ath meghajto talalt egy vezetek nelku:li Ethernet
   eszko:zt. Innen a man ath paranccsal erhetju:k el a ath(4) man
   oldalat.

   A man(1) a -k parameter megadasaval tovabbi hasznos informaciokkal
   is tud szolgalni. A fentiekbo"l kiindulva peldaul a ko:vetkezo"
   paranccsal:

 # man -k Atheros

   le tudjuk kerdezni azokat a man oldalakat, amelyek tartalmazzak az
   adott szot:

 ath(4)                   - Atheros IEEE 802.11 wireless network driver
 ath_hal(4)               - Atheros Hardware Access Layer (HAL)

   A hardvereszko:zeink listajaval felvertezve most mar egy sajat
   rendszermag letrehozasa sem lesz annyira ijeszto".

     --------------------------------------------------------------

8.4. Meghajtok, alrendszerek es modulok

   Mielo"tt uj rendszermagot keszitenenk, erdemes megfontolnunk, hogy
   egyaltalan szu:ksegu:nk lesz-e ra. Ha peldaul valamilyen eszko:z
   tamogatasahoz kell, akkor ko:nnyen elo"fordulhat, hogy azt
   modulkent is be tudjuk to:lteni.

   A rendszermaghoz tartozo modulok a /boot/kernel ko:nyvtarban
   talalhatoak, es a kldload(8) segitsegevel a rendszer mu"ko:dese
   ko:zben dinamikusan beto:ltheto"ek. Ha nem is az o:sszes, de a
   legto:bb meghajtohoz tartozik egy modul es egy man oldal. Peldaul
   az elo"zo" szakaszban az ath vezetek nelku:li Ethernet meghajtoval
   foglalkoztunk. A ko:vetkezo" leirast talaljuk a hozzatartozo man
   oldalon:

 Vagy ha modulkent akarjuk beto:lteni ezt a meghajtot a rendszer inditasa
 soran, akkor a loader.conf(5) allomanyba vegyu:k fel a ko:vetkezo"
 sort:

     if_ath_load="YES"

   A fentebb leirtak szerint tehat ha a if_ath_load="YES" sort
   hozzaadjuk a /boot/loader.conf allomanyhoz, akkor a rendszer
   indulasakor ez a modul mindig dinamikusan beto:lto"dik.

   Nemely esetben azonban nem all rendelkezesu:nkre ilyen modul. Ez
   ku:lo:no:sen igaz bizonyos alrendszerekre es a fontosabb
   meghajtokra, peldaul az FFS allomanyrendszerre vonatkozoan, mivel
   ezeknek ko:telezo"en a rendszermagban kell lenniu:k. Ugyanez
   elmondhato a halozati tamogatasra is (INET). Csak ugy tudjuk
   megmondani, hogy valamelyik meghajtora szu:kseg van a
   rendszermagban, ha elo"szo:r megprobaljuk megkeresni hozza a
   megfelelo" modult.

     Figyelem: A beepitett meghajtok figyelmetlen eltavolitasaval
     ko:nnyen lefordithatatlan allapotba keru:lhet a rendszermag.
     Peldaul, ha a ata(4) meghajtot kivesszu:k a rendszermag
     konfiguracios allomanyabol, az ATA alrendszert hasznalo
     meghajtok csak abban az esetben fognak biztosan mu"ko:dni, ha
     egyuttal felvesszu:k a loader.conf allomanyba. Ha nem vagyunk
     benne biztosak, akkor elo"szo:r probaljuk meg hasznalni a modult
     es csak utana hagyjuk el a rendszermagba epitett valtozatat.

     --------------------------------------------------------------

8.5. Sajat rendszermag keszitese es telepitese

   Elo"szo:r is tegyu:nk egy ro:vidke setat a rendszermag
   ko:nyvtaraban. A tovabbiakban emlitendo" o:sszes ko:nyvtar a
   /usr/src/sys ko:nyvtaron belu:l talalhato, amely /sys neven is
   elerheto". Itt rengeteg alko:nyvtar talalhato, mindegyiku:k a
   rendszermag ku:lo:nbo:zo" reszeit testesiti meg. Ezek ko:zu:l most
   szamunkra a legfontosabb az architektura/conf lesz, ahol majd
   letrehozzuk a sajat rendszermagunk konfiguracios allomanyat,
   valamint a compile, ahol majd a rendszermagunk forditasa
   to:rtenik. Itt az architektura lehet i386, alpha, amd64, ia64,
   powerpc, sparc64 vagy pc98 (a PC-k egyik, leginkabb Japanban
   elterjedt valtozata). Az adott architektura ko:nyvtaraban
   talalhato o:sszes allomany csak arra az architekturara vonatkozik,
   a kod to:bbi resze pedig gepfu:ggetlen es ko:zo:s az o:sszes
   to:bbi letezo" es leendo" FreeBSD platformon. Erdemes megfigyelni
   a ko:nyvtarak logikai elrendezeset: minden egyes ismert eszko:z,
   allomanyrendszer es bo"vitmeny sajat alko:nyvtarral rendelkezik.

   A peldak soran ez a fejezet feltetelezi, hogy az i386
   architekturat hasznaljuk. Ha ez a mi esetu:nkben nem igy lenne, ne
   felejtsu:k el atirni bennu:k az eleresi utvonalakat a rendszeru:nk
   architekturajanak megfelelo"en.

     Megjegyzes: Ha nem lenne /usr/src/sys ko:nyvtar a
     rendszeru:nkben, valoszinu"leg meg nem telepitettu:k a
     rendszermag forraskodjat. Ezt a legko:nnyebben ugy tudjuk
     megtenni, ha root felhasznalokent elinditjuk a sysinstall
     programot es ott kivalasztjuk a Configure (Beallitasok), azon
     belu:l Distributions (Terjesztesek) menu:pontot, amiben
     valasszuk ki a src, base es sys terjeszteseket. Ha nem
     szeretnenk erre a celra a sysinstall programot hasznalni, de
     rendelkezesu:nkre all a "hivatalos" FreeBSD CD, akkor a
     forrasokat akar parancssorbol is telepithetju:k:

 # mount /cdrom
 # mkdir -p /usr/src/sys
 # ln -s /usr/src/sys /sys
 # cat /cdrom/src/ssys.[a-d]* | tar -xzvf -
 # cat /cdrom/src/sbase.[a-d]* | tar -xzvf -

   Ezutan lepju:nk be az i386/conf ko:nyvtarba es masoljuk le a
   GENERIC konfiguracios allomanyt a kedvu:nk szerinti nevu"re.
   Peldaul:

 # cd /usr/src/sys/i386/conf
 # cp GENERIC SAJAT

   Altalaban a nevet vegig nagybetu"kkel irjuk, es ha to:bb FreeBSD-s
   gepet is u:zemeltetu:nk ku:lo:nbo:zo" hardverekkel, hasznosnak
   bizonyulhat megemliteni benne az adott gep rendszerenek nevet is.
   Ebben a peldaban ez most a SAJAT lesz.

     Tipp: A rendszermagunk konfiguracios allomanyat nem eppen a
     legjobb o:tlet a /usr/src ko:nyvtarban tarolni. Ugyanis ko:nnyen
     elo"fordulhat, hogy egy rosszul sikeru:lt forditas utan
     egyszeru"en csak leto:ro:lju:k az egesz /usr/src ko:nyvtarat es
     onnan kezdju:k ujra. Azonban csak ezutan juthat eszu:nkbe, hogy
     vele egyu:tt bizony leto:ro:ltu:k a sajat rendszermagunk
     konfiguracios allomanyat is! Ehhez hasonloan, ko:zvetlenu:l a
     GENERIC konfiguracios allomany szerkesztese sem ajanlott, mivel
     a forrasok egy esetleges frissitesenel ko:nnyen felu:lirodhat es
     ezzel egyu:tt elvesznek a modositasaink is.

     Tehat erdemes inkabb valahol mashol tarolnunk a rendszermagunk
     konfiguracios allomanyat, majd letrehozni ra egy szimbolikus
     linket a i386 ko:nyvtarban.

     Valahogy igy:

 # cd /usr/src/sys/i386/conf
 # mkdir /root/kernel
 # cp GENERIC /root/kernel/SAJAT 
 # ln -s /root/kernel/SAJAT

   Most pedig a kedvenc szo:vegszerkeszto"nkkel lassunk neki a SAJAT
   atirasanak! Ha nemreg telepitettu:k csak a rendszeru:nket, az
   egyetlen elerheto" szo:vegszerkeszto"nk minden bizonnyal a vi
   lesz. Rola most tulsagosan is bonyolult lenne leirast adnunk, de
   az Irodalomjegyzekben talalhato ko:nyvek ko:zu:l sokban eleg jol
   bemutatjak. Ezen kivu:l a FreeBSD ajanl egy ko:nnyebben
   megtanulhato szo:vegszerkeszto"t is az ee szemelyeben, amely a
   kezdo"k szamara az idealis valasztas. Nyugodtan atirhatjuk az
   elo:l talalhato megjegyzeseket a sajat konfiguracionknak
   megfelelo"en, vagy akar azt is ro:gzithetju:k, hogy miben tertu:nk
   el a GENERIC beallitasaitol.

   Ha forditottunk mar rendszermagot SunOS vagy mas BSD operacios
   rendszer alatt, ez az allomany ismero"snek tu"nhet. Ha viszont mas
   operacios rendszerek, mint peldaul a DOS felo"l erkezu:nk, a
   GENERIC konfiguracios allomany egy kisse terebelyesnek tu"nhet
   szamunkra, ezert A konfiguracios allomany cimu" reszt figyelmesen
   es lassan olvassuk at.

     Megjegyzes: Amennyiben a forrasfankat a FreeBSD projekt
     legfrissebb forrasaival szinkronizaljuk, mindig olvassuk el a
     /usr/src/UPDATING allomanyt, mielo"tt barmilyen frissiteshez is
     kezdenenk. Itt megtalalhatoak azok a fontos erintett kerdesek es
     teru:letek, amely ku:lo:n figyelmet igenyelnek a frissitett
     forraskod eseten. A /usr/src/UPDATING mindig a FreeBSD
     forrasanak legfrissebb valtozatahoz igazodik, es ezert sokkal
     naprakeszebb informaciokat tartalmaz, mint ez a keziko:nyv.

   Most pedig le kell leforditanunk a rendszermag forraskodjat.

   A rendszermag leforditasa

    1. Lepju:nk be a /usr/src ko:nyvtarba:

 # cd /usr/src

    2. Forditsuk le a rendszermagot:

 # make buildkernel KERNCONF=SAJAT

    3. Telepitsu:k az uj rendszermagot:

 # make installkernel KERNCONF=SAJAT

     Megjegyzes: A FreeBSD teljes forrasfajara szu:kseg van a
     rendszermag leforditasahoz.

     Tipp: Amikor egy sajat rendszermagot alapertelmezes szerint
     forditunk, vele egyu:tt az o:sszes modul is leforditasra keru:l.
     Ha viszont ido"t szeretnenk megtakaritani a rendszermag
     frissitese soran vagy csak a sajat moduljainkat akarjuk
     leforditani, erdemes atirnunk az /etc/make.conf allomanyt a
     rendszermag forditasanak megkezdese elo"tt:

 MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs

     Ez a valtozo megadja a tenylegesen leforditando modulok
     listajat.

 WITHOUT_MODULES = linux acpi sound/sound sound/driver/ds1 ntfs

     Ez a valtozo a forditasbol kihagyando modulokat sorolja fel. A
     rendszermag forditasanak folyamataban egyeb hasznosnak
     tekintheto" valtozokrol a make.conf(5) man oldalan olvashatunk.

   Ezutan az uj rendszermag a /boot/kernel ko:nyvtarba keru:l
   /boot/kernel/kernel neven es a korabbi rendszermag pedig
   /boot/kernel.old/kernel neven o"rzo"dik meg. Most allitsuk le a
   rendszert es inditsuk ujra az uj rendszermag aktivalasahoz. Ha
   ko:zben valamilyen hiba to:rtent volna, nezzu:k meg a fejezet
   vegen talalhato, hibakeresesre vonatkozo utasitasokat.
   Mindenkeppen olvassuk el azt a reszt, amely leirja, hogyan
   allitsuk helyre a rendszeru:nket abban az esetben, ha az uj
   rendszermaggal nem indul.

     Megjegyzes: A rendszerinditasi folyamathoz tartozo tovabbi
     allomanyok, mint peldaul a rendszerbeto:lto" (loader(8)) es
     annak konfiguracios allomanya, a /boot ko:nyvtarban talalhatoak.
     A ku:lso" es sajat modulok a /boot/kernel a ko:nyvtarba
     keru:lhetnek, azonban a felhasznaloknak nagyon u:gyelniu:k kell
     ra, hogy az itt talalhato modulok szinkronban legyenek a
     leforditott rendszermaggal. Ellenkezo" esetben a rendszerben
     megbizhatatlansagot, hibakat eszlelhetu:nk.

     --------------------------------------------------------------

8.6. A konfiguracios allomany

   A FreeBSD 6.X verziojahoz igazitotta: Joel Dahl.

   A konfiguracios allomany altalanos formatuma igen egyszeru".
   Minden sor tartalmaz egy kulcsszot es egy vagy to:bb parametert. A
   tovabbi egyszeru"sites kedveert a legto:bb sor csak egyetlen
   parametert tartalmaz. Barmi, ami egy # (ketto"skereszt) jelet
   ko:vet, megjegyzesnek mino"su:l es nem szamit konfiguracios
   elemnek. A most ko:vetkezo" reszek bemutatjak az egyes
   kulcsszavakat abban a sorrendben, ahogy azokat a GENERIC
   allomanyban is megtalalhatjuk. Az architekturafu:ggo" opciok es
   eszko:zo:k teljes listajat a GENERIC allomannyal egy ko:nyvtarban
   levo" NOTES allomanyban talalhatjuk meg. Az architekturatol
   fu:ggetlen opciokat a /usr/src/sys/conf/NOTES allomanyban
   talaljuk.

   A FreeBSD 5.0 megjelenese ota a konfiguracios allomanyokban
   hasznalhato az include direktiva. Ennek segitsegevel egy masik
   konfiguracios allomany tartalma logikailag beillesztheto" az
   aktualisba, igy ko:nnyebbe valik egy mar meglevo" allomanyhoz
   tartozo kisebb mennyisegu" valtoztatas karbantartasa. Peldaul ha
   csupan par egyszeru" kiegeszitest szeretnenk hozzaadni a GENERIC
   rendszermaghoz, akkor elegendo" a hozza vett eltereseket
   nyilvantartanunk egy ku:lo:n konfiguracios allomanyban:

 include GENERIC
 ident SAJAT

 options         IPFIREWALL
 options         DUMMYNET
 options         IPFIREWALL_DEFAULT_TO_ACCEPT
 options         IPDIVERT

   Valoszinu"leg sok rendszergazda szamara jelento"s elo"nyt jelent
   ez a megoldas a konfiguracios allomanyok korabbrol mar megszokott
   ujrairasaval szemben: a helyi konfiguracios allomany csak a
   GENERIC rendszermag helyi rendszerre vonatkozo eltereseit
   tartalmazza. Igy amikor frissitju:k a rendszeru:nket, a GENERIC
   rendszermag o:sszes ujitasa elerheto"ve valik, kiveve ha explicit
   modon le nem tiltottuk ezeket a noptions vagy a nodevice
   megadasaval. A fejezet tovabbi reszeben egy atlagos konfiguracios
   allomannyal fogunk foglalkozni, mind a beallitasok, mind pedig az
   eszko:zo:k tekinteteben.

     Megjegyzes: Ha olyan allomanyt akarunk kesziteni, amely
     tartalmazza az o:sszes lehetseges opciot, peldaul teszteleshez,
     futtassuk le root felhasznalokent az alabbi parancsot:

 # cd /usr/src/sys/i386/conf && make LINT

   Itt a GENERIC rendszermag-konfiguracios allomany ismertetese
   ko:vetkezik, az ertheto"seg kedveert helyenkent megjegyzesekkel
   kibo"vitve. A bemutatott allomanynak majdnem pontosan meg kell
   egyeznie a rendszeru:nkben talalhato
   /usr/src/sys/i386/conf/GENERIC allomannyal.

 machine      i386

   A szamitogepu:nk architekturajat adja meg. A ko:vetkezo"k
   valamelyikenek kell lennie: alpha, amd64, i386, ia64, pc98,
   powerpc, vagy sparc64.

 cpu          I486_CPU
 cpu          I586_CPU
 cpu          I686_CPU

   A fenti beallitas segitsegevel megadhatjuk, milyen tipusu
   processzor talalhato a szamitogepu:nkben. To:bb ilyen sorunk is
   lehet (ha peldaul nem lennenk biztosak benne, hogy a I586_CPU vagy
   I686_CPU erteket kellene megadnunk), de a sajat rendszermagunk
   o:sszeallitasahoz erdemes csak egyet meghagynunk. Ha nem ismerju:k
   pontosan a processzorunk tipusat, vessu:nk egy pillantast a
   /var/run/dmesg.boot allomanyra es keressu:k ki belo"le.

 ident          GENERIC

   Ez a rendszermag azonositoja. Valtoztassuk meg rendszermagunk
   nevere, legyen peldaul SAJAT, ha a korabbi utasitasokat
   ko:vettu:k. Az ident utan irt sztring fog megjelenni a rendszermag
   neve mellett a rendszer inditasa soran, ezert fontos, hogy az uj
   rendszermagunknak mas nevet adjunk, ha meg akarjuk
   ku:lo:nbo:ztetni az altalaban hasznalttol (peldaul egy tesztelesre
   szant rendszermagot akarunk kesziteni).

 # ha a /boot/device.hints hasznalata helyett statikusan bele akarjuk forditani
 #hints          "GENERIC.hints"         # itt szerepelnek a device hintek

   A device.hints(5) hasznalhato az eszko:zmeghajtok beallitasara. A
   loader(8) a rendszer inditasa soran alapertelmezes szerint a
   /boot/device.hints allomanyt olvassa be erre a celra. A hints
   beallitas hasznalataval ezeket a "hinteket" statikusan bele tudjuk
   epiteni a rendszermagba. Ebben az esetben nincs szu:ksegu:nk
   ku:lo:n device.hints allomany letrehozasara a /boot ko:nyvtarban.

 makeoptions     DEBUG=-g          # a nyomko:veteshez szu:kseges gdb(1) szimbolumok beepitese

   A FreeBSD hagyomanyos forditasanak folyamata soran a rendszermagot
   a -g hasznalataval keszitju:k el, aminek ko:szo:nheto"en
   hibakeresesi informaciokat tudunk atadni a gcc(1) forditonak.

 options          SCHED_4BSD         # 4BSD u:temezo"

   A FreeBSD tradicionalis es alapertelmezett rendszeru:temezo"je. Ne
   valtoztassuk meg!

 options          PREEMPTION         # a rendszerszalak megszakithatosaganak engedelyezese

   Ha engedelyezzu:k, a rendszermagban futo szalakat meg tudjak
   szakitani mas, magasabb prioritasu szalak. Ez segit no:velni a
   rendszer valaszadasi sebesseget es cso:kkenti a megszakitasokat
   kezelo" szalak varakozasat.

 options          INET              # halozatkezeles

   A halozatkezeles tamogatasa. Ne to:ro:lju:k ki, meg akkor sem, ha
   nem tervezzu:k halozatra kapcsolni a rendszert. Sok programnak
   szu:ksege van legalabb az un. loopback tipusu halozat tamogatasara
   (vagyis a szamitogepu:nko:n belu:li halozati kapcsolatokra), ezert
   ez feltetlenu:l ko:telezo"!

 options          INET6             # IPv6 kommunikacios prokotollok

   Engedelyezi az IPv6 kommunikacios protokollok hasznalatat.

 options          FFS               # Berkeley Fast Filesystem

   Ez a legalapveto"bb merevlemezes allomanyrendszer. Hagyjuk meg, ha
   merevlemezro"l akarjuk inditani a rendszeru:nket.

 options          SOFTUPDATES       # az FFS Soft Updates tamogatasa

   Ez a beallitas engedelyezi a rendszermagban a Soft Updates
   hasznalatat, amely segit felgyorsitani a lemez irasi sebesseget.
   Ha mar a rendszermag ezt a funkcionalitast ismeri, akkor meg
   ku:lo:n az egyes lemezeken is engedelyezni kell. Nezzu:k meg a
   mount(8) kimenetet, hogy lassuk, a rendszeru:nkben levo" lemezek
   ko:zu:l melyiken van tenylegesen engedelyezve a Soft Updates
   hasznalata. Ha nem latjuk benne sehol sem a soft-updates opciot,
   akkor azt (meglevo" allomanyrendszerek eseten) a tunefs(8) vagy
   (uj allomanyrendszerek eseten) a newfs(8) parancsokkal tudjuk
   bekapcsolni.

 options          UFS_ACL           # a hozzaferes-vezerlesi listak (ACL) tamogatasa

   Ezzel a beallitassal engedelyezhetju:k a rendszermagban a
   hozzaferes-vezerlesi listak tamogatasat. Ez a kiterjesztett
   attributumok es az UFS2 hasznalatara tamaszkodik. Ezt a
   leheto"seget reszleteiben a 14.12 Szakaszban targyaljuk. Az ACL
   alapertelmezes szerint tamogatott, es korabban mar hasznaltuk,
   akkor semmikeppen se kapcsoljuk ki, mert ezzel az eddig
   letrehozott hozzaferes-vezerlesi listaink ervenytelenne, az
   allomanyaink pedig vedtelenne valnak.

 options          UFS_DIRHASH       # nagyobb ko:nyvtarak eseten gyorsulast hoz

   Ezzel a beallitassal nemi memoria felaldozasa aran fel tudjuk
   gyorsitani a nagyobb ko:nyvtarakon vegzett lemezmu"veletek
   sebesseget, ezert ezt a beallitast erdemes nagyobb szerverekre
   vagy interaktivitast igenylo" munkaallomasokra tartogatni, es
   eltavolitani olyan esetekben, amikor a FreeBSD-t egy olyan kisebb
   szamitogepeken hasznaljuk, ahol a memoria keves es a
   lemezmu"veletek sebessege kevesbe fontos, peldaul egy tu"zfalon.

 options          MD_ROOT           # tudunk memorialemezro"l is rendszert inditani

   Ezzel az opcioval engedelyezni tudjuk a rendszer inditasat
   memoriaban tarolt virtualis lemezekro"l.

 options          NFSCLIENT         # halozati allomanyrendszer (NFS) kliens
 options          NFSSERVER         # NFS szerver
 options          NFS_ROOT          # NFS hasznalhato gyo:kerkent is, kell hozza az NFSCLIENT

   A halozati allomanyrendszer tamogatasa. Hacsak nem akarunk
   TCP/IP-n keresztu:l allomanyrendszereket csatlakoztatni egy UNIX
   allomanyszerverro"l, kivethetju:k.

 options          MSDOSFS           # MS-DOS allomanyrendszer

   Az MS-DOS allomanyrendszer. Hacsak nem akarunk DOS-ra formazott
   merevlemezes particiot csatlakoztatni a rendszerinditas soran,
   nyugodtan elhagyhatjuk. A fentebb leirtak szerint az elso" olyan
   alkalommal automatikusan beto:lto"dik, amikor egy DOS particiot
   csatlakoztatni akarunk. So"t, a nagyszeru" emulators/mtools
   szoftver segitsegevel ku:lo:n csatlakoztatas es levalasztas
   nelku:l tudunk DOS-os floppykat olvasni (es az MSDOSFS-re
   egyaltalan nincs is szu:ksege).

 options          CD9660            # ISO 9660 allomanyrendszer

   Az ISO 9660 allomanyrendszert a CD-k hasznaljak. Vegyu:k ki, ha
   nincs a szamitogepben CD-ROM meghajto vagy csak ritkan fogunk
   CD-ket csatlakoztatni (mivel a hozzatartozo modul magatol
   beto:lto"dik az elso" adat CD csatlakoztatasa soran). Az audio
   CD-k nem hasznaljak ezt az allomanyrendszert.

 options          PROCFS            # a futo programok allomanyrendszere (szu:kseges hozza a PSEUDOFS)

   A futo programok allomanyrendszere. Ez csak a /proc ko:nyvtarra
   csatlakoztatott "szinlelt" allomanyrendszer, amely segitsegevel a
   ps(1) es hozza hasonlo programok kepesek to:bb informaciot adni a
   futo programokrol. A PROCFS hasznalata a legto:bb esetben nem
   indokolt, mivel a ku:lo:nfele nyomko:veto" es felu:gyeleti
   eszko:zo:k kepesek a PROCFS hasznalata nelku:l is mu"ko:dni:
   alapertelmezes szerint a telepitett rendszerek sem csatlakoztatjak
   ezt az allomanyrendszer.

 options          PSEUDOFS          # pszeudo allomanyrendszerek tamogatasa

   A 6.X verzioju rendszermagokban a PROCFS hasznalatahoz
   engedelyeznu:nk kell a PSEUDOFS hasznalatat is.

 options          GEOM_GPT          # GUID tipusu particios tablak hasznalata

   Ezzel a beallitassal engedelyezni tudjuk nagy mennyisegu" particio
   tamogatasat egyetlen lemezen.

 options          COMPAT_43         # kompatibilitas fenntartasa a 4.3 BSD-vel [NE TO:RO:LD!]

   Kompatibilitas a 4.3BSD-vel. Ne vegyu:k ki, mert bizonyos
   programok furcsan fognak viselkedni a hianya eseten.

 options          COMPAT_FREEBSD4   # kompatibilitas a FreeBSD4-el

   Ez a beallitas szu:kseges a FreeBSD 5.X i386 es Alpha rendszerein
   a FreeBSD korabbi verzioihoz forditott alkalmazasok tamogatasahoz,
   melyek regebbi rendszerhivasokat hasznalnak. Az o:sszes i386 es
   Alpha tipusu rendszeren ajanlott engedelyezni, mivel itt
   elo"fordulhatnak regebbi alkalmazasok. A to:bbi platform, mint
   peldaul az ia64 vagy a Sparc64, tamogatasa csak az 5.X verzioban
   jelent meg, ezert ott nincs szu:kseg erre.

 options          COMPAT_FREEBSD5   # kompatibilitas a FreeBSD5-el

   Ezt a beallitast a FreeBSD 6.X es afeletti verziokban kell
   hasznalni az olyan FreeBSD 5.X verziokra forditott alkalmazasok
   futtatasanak tamogatasahoz, melyek a FreeBSD 5.X rendszerhivasait
   hasznaljak.

 options          SCSI_DELAY=5000  # a SCSI eszko:zo:k keresese elo"tt kesleltetes (ezredmasodpercben)

   Ezzel a beallitassal a rendszermag 5 masodpercig varakozni fog a
   SCSI eszko:zo:k keresese elo"tt. Ha kizarolag csak IDE tipusu
   merevlemezeink vannak, nyugodtan kihagyhatjuk, masku:lo:nben
   erdemes a rendszerinditas gyorsitasa erdekeben probaljuk meg
   cso:kkenteni ezt az erteket. Termeszetesen, ha igy teszu:nk es a
   FreeBSD nem tudja felismerni a SCSI eszko:zeinket, akkor
   no:velju:k meg valamennyivel.

 options          KTRACE            # a ktrace(1) tamogatasa

   Engedelyezi a rendszermagban futo rutinok nyomonko:veteset, ami
   hasznos lehet a hibak keresese soran.

 options          SYSVSHM           # SYSV-szeru" osztott memoria

   Ezzel a beallitassal engedelyezni tudjuk a rendszerben a System V
   tipusu osztott memoria hasznalatat. Leggyakrabban az X rendszer
   XSHM kiterjesztese hasznalja, amelyen keresztu:l szamos
   mu"veletigenyes grafikus program mu"ko:deset fel lehet gyorsitani.
   Ha X-et hasznalunk, mindenkeppen szu:ksegu:nk lehet erre.

 options          SYSVMSG           # SYSV-szeru" u:zenetsorok

   A System V u:zenetek tamogatasa. Ez a beallitas csupan nehany szaz
   byte-tal no:veli a rendszermagot.

 options          SYSVSEM           # SYSV-szeru" szemaforok

   A System V szemaforok tamogatasa. Nem tul gyakran alkalmazzak
   ezeket, de ez csak nehany szaz byte-ot tesz hozza a
   rendszermaghoz.

     Megjegyzes: A ipcs(1) parancs -p parameterevel ki tudjuk
     listaztatni azokat futo programokat, amelyek ezen System V
     eszko:zo:ket hasznaljak.

 options          _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B valosideju" kiterjesztesek

   A POSIX(R) 1993-as valtozataban megjelent valosideju" bo"vitesek.
   A Portgyu"jtemenyben megjeleno" egyes alkalmazasok hasznaljak
   ezeket (mint peldaul a StarOffice).

 options          KBD_INSTALL_CDEV  # CDEV bejegyzes letrehozasa a /dev ko:nyvtarban

   Ez a beallitas kell ahhoz, hogy /dev ko:nyvtarban letre tudjunk
   hozni eszko:zleirokat a billentyu"zethez.

 options          ADAPTIVE_GIANT    # adaptiv Giant mutexek

   A Giant annak a ko:lcso:no:s kizarasi mechanizmusnak (blokkolt
   mutexnek) a neve, amely a rendszermag ero"forrasainak jelento"s
   reszet vedi. Manapsag ez mar egy elfogadhatatlanul szu"k
   keresztmetszet kepez a teljesitmenyben, ezert a fejlesztesben
   fokozatosan felvaltjak az egyes ero"forrasokat ku:lo:n-ku:lo:n
   vedo" zarolasok. Az ADAPTIVE_GIANT beallitas hatasara a Giant a
   helyzethez igazodoan forgo (spin) mutexek ko:ze keru:l. Ez azt
   jelenti, hogy amikor egy szal zarolni akarja a Giant mutexet, de
   ezt mar megtette elo"tte egy masik processzorrol futo szal, a szal
   tovabb fut es varakozni fog a zarolas feloldasara. Normalis
   esetben ugyanis egy szal tovabbra is blokkolt allapotban marad,
   varakozva a futasra. Ha nem tudunk do:nteni, hagyjuk
   valtozatlanul.

     Megjegyzes: Hozzatesszu:k, hogy a FreeBSD 8.0-CURRENT es
     keso"bbi valtozataiban az o:ssszes mutex alapertelmezes szerint
     adaptiv, hacsak meg nem adjuk a NO_ADAPTIVE_MUTEXES beallitast.
     Ennek eredmenyekeppen a Giant most mar alapbol adaptiv, ezert
     esetu:kben az ADAPTIVE_GIANT nem szerepel a rendszermag
     beallitasai ko:zo:tt.

 device          apic               # I/O APIC

   Az apic nevu" eszko:z engedelyezesevel hasznalhatjuk a hardveres
   APIC-ot a megszakitasok vezerlesere. Az apic alkalmazhato egy- es
   to:bbprocesszoros rendszerek eseten is egyarant, de az SMP
   rendszermagoknal szu:kseges. To:bb processzor tamogatasanal
   mindenkeppen tegyu:k hozza az options SMP beallitast is.

     Megjegyzes: Az apic eszko:z csak az i386 architekturan letezik,
     ezert a to:bbi architekturan nem szabad hasznalnunk ezt a
     beallitast.

 device          eisa

   Abban az esetben engedelyezzu:k, ha EISA-s alaplapunk van, ezzel
   aktivaljuk az EISA buszra csatlakoztatott eszko:zo:k automatikus
   felismereset es beallithatosagat.

 device          pci

   Tegyu:k hozza a konfiguracios allomanyhoz, ha PCI-os alaplapuk
   van. Ezzel engedelyezhetju:k a PCI kartyak automatikus
   felismereset es a PCI es ISA buszok ko:zti atiranyitast.

 # Hajlekonylemezes meghajtok
 device          fdc

   Ez a hajlekonylemezes meghajto vezerlo"je.

 # ATA es ATAPI eszko:zo:k
 device          ata

   Ez az eszko:zmeghajto felelo"s az o:sszes ATA es ATAPI eszko:zert.
   A modern szamitogepeken csak egyszer kell megadnunk a device ata
   sort a beallitasok ko:zo:tt az o:sszes PCI-os ATA/ATAPI eszko:z
   felismeresehez.

 device          atadisk                 # ATA lemezmeghajtok

   Az ATA lemezmeghajtok tamogatasahoz erre van meg szu:kseg a device
   ata mellett.

 device          ataraid                 # ATA RAID-meghajtok

   Az ATA RAID-meghajtok kezelesehez erre a sorra van szu:kseg a
   device ata mellett.

 device          atapicd                 # ATAPI CD-meghajtok

   Az ATAPI CD-meghajtok hasznalatahoz ezt is tegyu:k a
   konfiguracioba a device ata melle.

 device          atapifd                 # ATAPI floppy meghajtok

   A device ata hasznalata mellett erre van meg szu:ksegu:nk az ATAPI
   floppy meghajtok kezelesehez.

 device          atapist                 # ATAPI szalagos meghajtok

   Az ATAPI szalagos egysegek ezt a sort is tegyu:k a konfiguracioba
   a device ata melle.

 options         ATA_STATIC_ID           # statikus eszko:zszamozas

   Ezzel a beallitassal a vezerlo"k szamozasa allando lesz. Nelku:le
   az eszko:zszamok dinamikusan keru:lnek kiosztasra.

 # SCSI vezerlo"k
 device          ahb        # EISA AHA1742 csalad
 device          ahc        # AHA2940 es integralt AIC7xxx eszko:zo:k
 options         AHC_REG_PRETTY_PRINT    # a hibak keresesehez kiiratja a regiszterek
                                         # bitmezo"it.  Kb. 128 KB-al no:veli a meretet.
 device          ahd        # AHA39320/29320 es integralt AIC79xx eszko:zo:k
 options         AHD_REG_PRETTY_PRINT    # a hibak keresesehez kiiratja a regiszterek
                                         # bitmezo"it.  Kb. 215 KB-al no:veli a meretet.
 device          amd        # AMD 53C974 (Teckram DC-390(T))
 device          isp        # Qlogic csalad
 #device         ispfw      # a QLogic HBA firmware-e, to:bbnyire modul
 device          mpt        # LSI-Logic MPT-Fusion
 #device         ncr        # NCR/Symbios Logic
 device          sym        # NCR/Symbios Logic (ujabb chipsetek, illetve az `ncr' tipusuak)
 device          trm        # Tekram DC395U/UW/F DC315U csatolok

 device          adv        # Advansys SCSI-csatolok
 device          adw        # Advansys wide SCSI-csatolok
 device          aha        # Adaptec 154x SCSI-csatolok
 device          aic        # Adaptec 15[012]x SCSI-csatolok, AIC-6[23]60.
 device          bt         # Buslogic/Mylex MultiMaster SCSI-csatolok

 device          ncv        # NCR 53C500
 device          nsp        # Workbit Ninja SCSI-3
 device          stg        # TMC 18C30/18C50

   SCSI-vezerlo"k. Vegyu:k ki azokat, amelyekkel tenylegesen nem
   rendelkezu:nk. Ha csak IDE eszko:zeink vannak a rendszeru:nkben,
   az o:sszeset eltavolithatjuk. A _REG_PRETTY_PRINT vegzo"desu"
   sorok a megfelelo" meghajtok hibakeresi beallitasait takarjak.

 # SCSI-periferiak
 device          scbus      # SCSI-busz (kell a SCSI-hoz)
 device          ch         # SCSI mediumvaltok (media changer)
 device          da         # ko:zvetlen hozzaferes (lemezek)
 device          sa         # soros hozzaferes (szalag stb.)
 device          cd         # CD
 device          pass       # atereszto" eszko:z (ko:zvetlen SCSI hozzaferes)
 device          ses        # SCSI ko:rnyezeti szolgaltatasok (es SAF-TE)

   SCSI-periferiak. Itt is ervenyes, hogy kivethetju:k azokat az
   eszko:zo:ket, amelyekkel nem rendelkezu:nk. De ha csak IDE
   hardvereink vannak, teljesen eltavolithatjuk ezeket.

     Megjegyzes: Annak ellenere, hogy valojaban nem igazi
     SCSI-eszko:zo:k, az USB-s umass(4) es meg nehany mas egyeb
     meghajto is hasznalja a SCSI alrendszert. Emiatt semmikeppen se
     tavolitsuk el a SCSI tamogatast a rendszeru:nko"l abban az
     esetben, ha ilyen meghajtokat is hasznalni szandekozunk.

 # a SCSI alrendszerhez kapcsolodo RAID-vezerlo"k
 device          amr        # AMI MegaRAID
 device          arcmsr     # Areca SATA II RAID
 device          asr        # DPT SmartRAID V, VI es Adaptec SCSI RAID
 device          ciss       # Compaq Smart RAID 5*
 device          dpt        # DPT Smartcache III, IV - lasd a NOTES allomanyt
 device          hptmv      # Highpoint RocketRAID 182x
 device          rr232x     # Highpoint RocketRAID 232x
 device          iir        # Intel Integrated RAID
 device          ips        # IBM (Adaptec) ServeRAID
 device          mly        # Mylex AcceleRAID/eXtremeRAID
 device          twa        # 3ware 9000 series PATA/SATA RAID

 # RAID vezerlo"k
 device          aac        # Adaptec FSA RAID
 device          aacp       # SCSI atereszto" az aac-hez (kell hozza a CAM)
 device          ida        # Compaq Smart RAID
 device          mfi        # LSI MegaRAID SAS
 device          mlx        # Mylex DAC960 csalad
 device          pst        # Promise Supertrak SX6000
 device          twe        # 3ware ATA RAID

   Az ismert RAID-vezerlo"k. Ha ko:zu:lu:k egyikkel sem
   rendelkezu:nk, tavolitsuk el ezeket a konfiguraciobol.

 # az atkbdc0 vezerli a billentyu"zetet es a PS/2-es egeret
 device          atkbdc     # AT billentyu"zet vezerlo"

   A billentyu"zet vezerlo"je (atkbdc) az AT-s billentyu"zet es a
   PS/2 stilusu pozicionalo eszko:zo:k vezerlesehez szu:kseges I/O
   szolgaltatasokat biztositja. Erre a vezerlo"re a billentyu"zet
   meghajtojanak (atkbd) es a PS/2 pozicionalo eszko:zo:k
   eszko:zmeghajtojanak (psm) is szu:ksege van.

 device          atkbd      # AT billentyu"zet

   Az atkbd meghajto, a atkbdc vezerlo"vel egyu:tt, adja a
   hozzaferest az AT billentyu"zet vezerlo"re csatlakoztatott AT 84
   es a fejlettebb AT billentyu"zetek fele.

 device          psm        # PS/2 eger

   Hasznaljuk ezt az eszko:zt, ha az egeru:nk a PS/2 portra
   csatlakozik.

 device          kbdmux        # billentyu"zet multiplexer

   A billentyu"zet multiplexer alapszintu" tamogatasa. Ha nem
   kivanunk a jo:vo"ben egynel to:bb billentyu"zetet csatlakoztatni a
   rendszeru:nkre, nyugodt szivvel kivehetju:k ezt a sort.

 device          vga        # VGA videokartya meghajto

   Videokartya meghajto.

 device          splash     # u:dvo:zlo"kepernyo"k es kepernyo"kimelo"k tamogatasa

   Nyissunk egy u:dvo:zlo"kepernyo"vel! A kepernyo"kimelo"knek is
   szu:ksege van erre az eszko:zre.

 # a syscons az alapertelmezett konzolmeghajto, hasonlit a SCO konzolra
 device          sc

   Az sc az alapertelmezett meghajto a konzolok szamara, es sokban
   hasonlit a SCO konzolra. Mivel a legto:bb teljeskepernyo"s program
   a termcap terminaladatbazis ko:nyvtaron keresztu:l eri el a
   konzolt, nem igazan szamit, hogy ezt vagy a VT220-kompatibilis vt
   konzolmeghajtot hasznaljuk. Ha barmilyen gondunk lenne a
   teljeskepernyo"s programok futtatasaval ezen a konzolon, a
   bejelentkezeskor allitsuk a TERM ko:rnyezeti valtozonk a scoansi
   ertekre.

 # ezzel tudjuk engedelyezni a pcvt (VT220-kompatibilis) konzolmeghajtot
 #device          vt
 #options         XSERVER          # az X szerver tamogatasa vt konzolon
 #options         FAT_CURSOR       # telt kurzor hasznalata

   Ez a VT220-kompatibilis konzolmeghajto, amely visszafele
   kompatibilis a VT100/102-vel is. Remeku:l mu"ko:dik olyan
   laptopokon, ahol a hardver nem hasznalhato az sc konzollal. Itt
   ugyanugy erdemes egyebkent a vt100 ertekre vagy a vt220 ertekre
   allitani a TERM ko:rnyezeti valtozonkat. Hasznosnak bizonyulhat
   abban az esetben is, amikor halozaton keresztu:l nagy mennyisegu"
   es eltero" tipusu szamitogepekhez csatlakozunk, es ahol a termcap
   es terminfo adatbazisokban az sc bejegyzesei gyakran nem is
   erheto"ek el -- a vt100 viszont virtualisan az o:sszes platformon
   elerheto".

 device          agp

   Irjuk bele a konfiguracioba, ha van AGP kartya a rendszeru:nkben.
   Ezzel engedelyezzu:k az AGP es az AGP GART tamogatasat az ezeket
   ismero" kartyak szamara.

 # energiagazdalkodas tamogatasa (bo"vebben lasd: NOTES)
 #device          apm

   A fejlett energiagazdalkodas tamogatasa. Laptopok eseten hasznos,
   habar ez alapertelmezes szerint nincs engedelyezve a GENERIC
   konfiguracioban.

 # az i8254 keszenleti modjanak tamogatasa
 device           pmtimer

   Az energiagazdalkodasi esemenyek, mint peldaul APM es ACPI
   ido"zito"jenek eszko:zmeghajtoja.

 # PCCARD (PCMCIA) tamogatas
 # PCMCIA es cardbus tamogatas
 device          cbb               # cardbus (yenta) bridge
 device          pccard            # PC Card (16 bites) busz
 device          cardbus           # CardBus (32 bites) busz

   A PCMCIA tamgotasa. Mindenkeppen szu:ksegu:nk lesz ra, ha
   laptopunk van.

 # soros (COM) portok
 device          sio               # 8250, 16[45]50 alapu soros portok

   Ezek azok a soros portok, amelyek az MS-DOS/Windows vilagban csak
   COM portokkent ismernek.

     Megjegyzes: Ha van egy belso" modemu:nk a COM4-en es egy soros
     portunk a COM2-n, a modem IRQ-jat meg kell valtoztatnunk 2-re
     (valamilyen homalyos mu"szaki oktol kifolyolag a COM2 = IRQ9),
     hogy hozza tudjunk ferni FreeBSD-bo"l. Ha to:bbportos soros
     kartyank lenne, lapozzuk fel a sio(4) man oldalat, es ott hozza
     megtalaljuk a /boot/device.hints allomanyba irando megfelelo"
     ertekeket. Egyes videokartyak (ku:lo:no:sen az S3 chipekre
     epu:lo"k) az I/O cimeket 0x*2e8 alakban hasznaljak, es mivel
     rengeteg olcso soros kartya nem kodolja vissza egeszeben a 16
     bites I/O cimteret, u:tko:zni fognak ezekkel a kartyakkal, es
     ezaltal a COM4 port gyakorlatilag elerhetetlenne valik.

     Minden egyes soros portnak egyedi IRQ-ja kell legyen (hacsak nem
     hasznalunk olyan to:bbportos kartyat, amely tamogatja a
     megosztott megszakitasokat), ezert a COM3 es COM4 eseten
     alapertelmezett IRQ-k nem hasznalhatoak.

 # parhuzamos port
 device          ppc

   Ez az ISA busz parhuzamos portjanak felu:lete.

 device          ppbus      # a parhuzamos port busza (kell)

   A parhuzamos porthoz tartozo busz tamogatasa.

 device          lpt        # nyomtato

   A parhuzamos portra csatlakozo nyomtatok tamogatasa.

     Megjegyzes: A fentiek ko:zu:l mind a harom szu:kseges a
     parhuzamos porton csatlakozo nyomtatok hasznalatahoz.

 device          plip       # TCP/IP parhuzamos porton keresztu:l

   Ez a parhuzamos port halozati felu:letenek meghajtoja.

 device          ppi        # a parhuzamos port felu:letenek eszko:ze

   Altalanos celu ("geek port") es IEEE1284 I/O.

 #device         vpo        # az scbus es a da kell a hasznalatahoz

   Ez az Iomega Zip meghajtoihoz tartozo eszko:z. A mu"ko:desehez
   szu:kseg van az scbus es da engedelyezesere. A legjobb
   teljesitmenyt EPP 1.9 modban mu"ko:do" portokkal lehet kihozni
   belo"le.

 #device         puc

   Tegyu:k bele a konfiguracioba ezt az eszko:zt, ha egy olyan "buta"
   soros vagy parhuzamos PCI kartyank van, amelyet a puc(4)
   segedmeghajto ismer.

 # PCI Ethernet kartyak
 device          de         # DEC/Intel DC21x4x ("Tulip")
 device          em         # Intel PRO/1000 Gigabit Ethernet kartya
 device          ixgb       # Intel PRO/10GbE Ethernet kartya
 device          txp        # 3Com 3cR990 ("Typhoon")
 device          vx         # 3Com 3c590, 3c595 ("Vortex")

   Ku:lo:nfele PCI halozati kartyak meghajtoi. Vegyu:k ki azokat,
   amelyek nem talalhatoak meg a rendszeru:nkben.

 # PCI Ethernet kartyak, melyek az MII busz vezerlo"kodjat hasznaljak
 # FIGYELEM: Ne to:ro:lju:k ki a 'device miibus' sort, ha ilyen kartyank van!
 device          miibus     # az MII busz tamogatasa

   Az MII busz engedelyezese elengedhetetlen bizonyos 10/100-as PCI
   Ethernet kartyak hasznalatahoz, konkretan azokehoz, amelyek az
   MII-vel egyu:ttmu"ko:dni kepes ado-vevo"t hasznalnak vagy az
   MII-ho:z hasonlo ado-vevo" vezerlo" felu:letet valositanak meg. A
   device miibus hozzaadasa a rendszermaghoz magaval vonja az
   altalanos miibus API es az o:sszes PHY meghajto tamogatasat,
   beleertve azt az altalanos PHY eszko:zt is, amelyet az egyes
   eszko:zmeghajtok ku:lo:n nem tamogatnak.

 device          bce        # Broadcom BCM5706/BCM5708 Gigabit Ethernet
 device          bfe        # Broadcom BCM440x 10/100 Ethernet
 device          bge        # Broadcom BCM570xx Gigabit Ethernet
 device          dc         # DEC/Intel 21143 es egyeb hasonloak
 device          fxp        # Intel EtherExpress PRO/100B (82557, 82558)
 device          lge        # Level 1 LXT1001 gigabit ethernet
 device          msk        # Marvell/SysKonnect Yukon II Gigabit Ethernet
 device          nge        # NatSemi DP83820 gigabit ethernet
 device          nve        # nVidia nForce MCP integralt Ethernet halozat
 device          pcn        # AMD Am79C97x PCI 10/100 (az 'lnc' elo"tt)
 device          re         # RealTek 8139C+/8169/8169S/8110S
 device          rl         # RealTek 8129/8139
 device          sf         # Adaptec AIC-6915 ("Starfire")
 device          sis        # Silicon Integrated Systems SiS 900/SiS 7016
 device          sk         # SysKonnect SK-984x & SK-982x gigabit Ethernet
 device          ste        # Sundance ST201 (D-Link DFE-550TX)
 device          stge       # Sundance/Tamarack TC9021 gigabit Ethernet
 device          ti         # Alteon Networks Tigon I/II gigabit Ethernet
 device          tl         # Texas Instruments ThunderLAN
 device          tx         # SMC EtherPower II (83c170 "EPIC")
 device          vge        # VIA VT612x gigabit ethernet
 device          vr         # VIA Rhine, Rhine II
 device          wb         # Winbond W89C840F
 device          xl         # 3Com 3c90x ("Boomerang", "Cyclone")

   Meghajtok, melyek az MII busz vezerlo"kodjat hasznaljak.

 # ISA Ethernet es pccard halozati kartyak.
 device          cs         # Crystal Semiconductor CS89x0 NIC
 # az 'device ed' eszko:zho:z kell a 'device miibus'
 device          ed         # NE[12]000, SMC Ultra, 3c503, DS8390 cards
 device          ex         # Intel EtherExpress Pro/10 es Pro/10+
 device          ep         # Etherlink III alapu kartyak
 device          fe         # Fujitsu MB8696x alapu kartyak
 device          ie         # EtherExpress 8/16, 3C507, StarLAN 10 stb.
 device          lnc        # NE2100, NE32-VL Lance Ethernet kartyak
 device          sn         # az SMC 9000-res sorozatu Ethernet chipjei
 device          xe         # Xircom pccard Ethernet

 # ISA eszko:zo:k, melyek a regi ISA betetet hasznaljak
 #device         le

   ISA Ethernet meghajtok. A konkretan tamogatott kartyak teljes
   felsorolasat lasd a /usr/src/sys/i386/conf/NOTES allomanyban.

 # vezetek nelku:li halozati kartyak
 device          wlan            # 802.11 tamogatas

   Altalanos 802.11 tamogatas. Erre a sorra mindenkeppen szu:kseg van
   a vezetek nelku:li halozatok hasznalatahoz.

 device          wlan_wep        # 802.11 WEP tamogatas
 device          wlan_ccmp       # 802.11 CCMP tamogatas
 device          wlan_tkip       # 802.11 TKIP tamogatas

   A 802.11 eszko:zo:k eseten a titkositas tamogatasa. Ezeket a
   sorokat akkor adjuk meg, ha titkositast akarunk hasznalni vagy a
   802.11i biztonsagi protokolljait.

 device          an         # Aironet 4500/4800 802.11 vezetek nelku:li halozati kartyak
 device          ath             # Atheros pci/cardbus halozati kartyak
 device          ath_hal         # Atheros HAL (Hardware Access Layer)
 device          ath_rate_sample # ku:ldesi mintaveteli vezerles az ath-hoz
 device          awi        # BayStack 660 es masok
 device          ral        # Ralink Technology RT2500 vezetek nelku:li halozati kartyak
 device          wi         # WaveLAN/Intersil/Symbol 802.11 vezetek nelku:li halozati kartyak
 #device         wl         # regebbi, nem 802.11 Wavelan vezetek nelku:li halozati kartyak

   A ku:lo:nbo:zo" vezetek nelku:li kartyak tamogatasa.

 # Pszeudo eszko:zo:k
 device   loop          # halozati loopback

   Ez a TCP/IP altalanos loopback eszko:ze. Ha telnettel vagy FTP-vel
   racsatlakozunk a localhost cimere (vagyis a 127.0.0.1-re), akkor
   rajta keresztu:l sajat magunkhoz jutunk vissza. Ennek a meglete
   ko:telezo"!

 device   random        # alveletlenszam eszko:z

   Kriptografiai szempontbol biztonsagos alveletlenszam generator.

 device   ether         # Ethernet tamogatas

   Az ether eszko:zre csak abban az esetben van szu:kseg, ha Ethernet
   kartyan van. Ez magaban foglalja az altalanos Ethernet protokoll
   kodjat.

 device   sl            # belso" SLIP

   Az sl a SLIP hasznalatat engedelyezi. Ez egy regi protokoll,
   amelyet azota mar szinte teljesen kiszoritott a PPP, mivel azt
   ko:nnyebb beallitani es sokkal jobban is illik a modem-modem
   kapcsolatokhoz, illetve sokkal ero"teljesebb.

 device   ppp           # belso" PPP

   Ez a tarcsazos kapcsolatok rendszermagon belu:li PPP tamogatasat
   adja meg. Van a PPP-nek egy ku:lso", a felhasznaloi programkent
   megvalositott valtozata is, amely a tun eszko:zt hasznalja es
   sokkal nagyobb rugalmassagot kinal fel, illetve olyan
   leheto"segeket, mint peldaul az igeny szerinti tarcsazas.

 device   tun           # csomag alagut

   Ezt a felhasznaloi PPP szoftver hasznalja. A ko:nyv PPP-ro"l szolo
   reszeben to:bbet is megtudhatunk rola.

 device   pty           # Pszeudo terminalok (telnet stb.)

   Ezek a "pszeudo terminalok" vagy mas neven szimulalt
   bejelentkezesi portok. A bejo:vo" telnet es rlogin munkamenetek
   hasznaljak, valamint az xterm es a hozza hasonlo alkalmazasok,
   mint peldaul az Emacs.

 device   md            # "memorialemezek"

   A memoriaban levo" pszeudo lemezes meghajtok.

 device   gif           # IPv6 es IPv4 tunnelek hasznalata

   Megvalositja az IPv6 IPv4 feletti, az IPv4 IPv6 feletti, az IPv4
   IPv4 feletti es az IPv6 IPv6 feletti ko:zvetiteset. A gif eszko:z
   "magatol masolodik", vagyis szu:kseg szerint hozza letre a
   megfelelo" eszko:zleirokat.

 device   faith         # IPv6-IPv4 ko:zti tovabbitas (forditas)

   Ez a pszeudo eszko:z elfogja a hozza ku:ldo:tt csomagokat es
   atadja ezeket az IPv4/IPv6 forditassal foglalkozo demonnak.

 # a `bpf' eszko:z hasznalataval a Berkeley csomagszu"ro"t (Berkeley Packet Filter) engedelyezzu:k
 # Legyu:nk ra tekintettel, hogy ennek komoly ko:vetkezmenyei lehetnek
 # rendszeradminisztracios szempontbol!
 # A 'bpf'-re szu:kseg van a DHCP-hez.
 device   bpf           # Berkeley csomagszu"ro"

   A Berkeley csomagszu"ro"je. Ez egy olyan pszeudo eszko:z, amely
   leheto"ve teszi, hogy a halozati csatolok forgalmat megfigyelju:k,
   mivel a (pl. Ethernet) halozatunkon minden csomagot elkap. Ezek a
   csomagok lemezre is mentheto"ek vagy kielemezheto"ek a tcpdump(1)
   program segitsegevel.

     Megjegyzes: A bpf(4) eszko:zt a dhclient(8) is hasznalja to:bbek
     ko:zt az alapertelmezett atjaro IP-cimenek megszerzesehez. Ha
     DHCP-t akarunk hasznalni, hagyjuk igy.

 # USB tamogatas
 device          uhci          # UHCI PCI->USB felu:let
 device          ohci          # OHCI PCI->USB felu:let
 device          ehci          # EHCI PCI->USB felu:let (USB 2.0)
 device          usb           # USB busz (kell)
 #device         udbp          # USB Double Bulk Pipe eszko:zo:k
 device          ugen          # altalanos
 device          uhid          # "Human Interface Devices"
 device          ukbd          # billentyu"zet
 device          ulpt          # nyomtato
 device          umass         # lemez/hattertarolo - kell hozza az scbus es a da
 device          ums           # eger
 device          ural          # Ralink Technology RT2500USB vezetek nelku:li halozati kartyak
 device          urio          # Diamond Rio 500 MP3 lejatszo
 device          uscanner      # lapolvasok
 # USB Ethernet, kell hozza az mii
 device          aue           # ADMtek USB Ethernet
 device          axe           # ASIX Electronics USB Ethernet
 device          cdce          # altalanos USB, Etherneten keresztu:l
 device          cue           # CATC USB Ethernet
 device          kue           # Kawasaki LSI USB Ethernet
 device          rue           # RealTek RTL8150 USB Ethernet

   A ku:lo:nfele USB eszko:zo:k tamogatasa.

 # FireWire tamogatas
 device          firewire      # FireWire buszkod
 device          sbp           # SCSI FireWire-o:n keresztu:l (kell hozza az scbus es a da)
 device          fwe           # Ethernet FireWire-o:n keresztu:l (nem szabvanyos!)

   A ku:lo:nfele Firewire eszko:zo:k tamogatasa.

   A FreeBSD altal ismert tovabbi eszko:zo:kro"l a
   /usr/src/sys/i386/conf/NOTES allomanybol tajekozodhatunk.

     --------------------------------------------------------------

  8.6.1. Sok memoria kezelese (PAE)

   A sok memoriaval rendelkezo" szamitogepek eseten szu:kseg lehet a
   felhasznaloi es rendszerszintu" virtualis cimek (Kernel Virtual
   Address, KVA) 4 gigabyte feletti hasznalatara. Ennek a
   korlatozasnak a kiku:szo:bo:lesere az Intel ku:lo:n tamogatast
   epitett be a Pentium Pro es az azt ko:veto" processzorok 36 bites
   fizikai cimzesenek kialakitasahoz.

   A Fizikai Cimkiterjesztes (Physical Address Extension, PAE) az
   Intel Pentium Pro es keso"bbi processzoraiban talalhato meg, es
   leheto"ve teszi egeszen 64 gigabyte-ig a memoriahasznalatot. A
   FreeBSD is tamogatja ezt a tulajdonsagot a PAE rendszermag
   beallitas hasznalataval, es megtalalhato a FreeBSD o:sszes
   jelenlegi verziojaban. Az Intel architekturaju processzorok
   memoriaszervezesenek korlatai miatt nem ku:lo:nbo:ztetheto" meg a
   4 gigabyte alatti es feletti memoria. A 4 gigabyte felett
   talalhato memoriateru:letek egyszeru"en hozzaadodnak a
   rendelkezesre allo memoriahoz.

   A rendszermagban a PAE tamogatasat egyszeru"en az alabbi sor
   segitsegevel hozzaadasaval tudjuk engedelyezni:

 options          PAE

     Megjegyzes: A FreeBSD-ben a PAE tamogatasa csak az Intel IA-32
     architekturaju processzoraihoz erheto" el. Emellett meg kell
     emlitenu:nk, hogy a FreeBSD-ben talalhato PAE tamogatas nem lett
     szelesebb ko:rben probara teve, ezert a FreeBSD to:bbi
     megbizhato elemeihez kepest csak beta allapotunak tekintheto".

   A FreeBSD PAE tamogatasanak van nehany hianyossaga:

     * Egy futo program a virtualis memoriaban nem kepes 4
       gigabyte-nal to:bbet elerni.

     * A bus_dma(9) felu:letet nem hasznalo eszko:zmeghajtok
       adathibakat okozhatnak a PAE-t tamogato rendszermagokban, es
       emiatt nem ajanljuk a hasznalatukat. Ebbo"l a megfontolasbol
       keszitettu:nk egy PAE nevu" konfiguracios allomanyt a
       FreeBSD-hez, amelyben nem szerepel egyetlen olyan meghajto
       sem, amely ismereteink szerint nem mu"ko:dik egyu:tt a PAE-t
       tamogato rendszermagokkal.

     * Bizonyos finomhangolasi beallitasok a memoriahasznalatot a
       rendelkezesre allo fizikai memoria mennyisegebo"l szamitjak
       ki. A PAE tamogatassal mu"ko:do" rendszerek eseteben
       megjeleno" sok memoria miatt azonban az ilyen eszko:zo:k
       szu:ksegtelenu:l to:bb teru:letet foglalhatnak le. Erre pelda
       lehet a kern.maxvnodes sysctl valtozo, amely a rendszermag
       altal maximalisan felhasznalhato virtualis csomopontok szamat
       korlatozza. Ajanlott tehat az ilyen es ehhez hasonlo
       beallitasok ertelmes ertekre to:rteno" visszaallitasa.

     * Szu:kseges lehet a rendszermag virtualis cimterenek (KVA)
       no:velese vagy a rendszermag altal tulsagosan nagy meretu"re
       foglalt cimteru" ku:lo:nfele ero"forrasok (lasd fentebb)
       cso:kkentese a KVA kifogyasanak elkeru:lesere. A KVA
       teru:letenek no:veleset a KVA_PAGES beallitasaval tehetju:k
       meg.

   Ha gondjaink lennenek a teljesitmennyel vagy a megbizhatosaggal,
   keressu:k fel a tuning(7) man oldalt. A pae(4) man oldalon pedig a
   FreeBSD PAE tamogatasarol talalhatunk naprakesz informaciokat.

     --------------------------------------------------------------

8.7. Ha valamilyen hiba to:rtenne

   Negyfele problema jelentkezhet egy sajat rendszermag keszitese
   soran. Ezek:

   A config hibat jelez:

           Amikor a config(8) parancs hibat jelez vissza a
           rendszermagunk konfiguracios beallitasainak feldolgozasa
           soran, akkor minden bizonnyal csak egy apro hibat
           vetettu:nk valahol. Szerencsere a config(8) kiirja a hibas
           sor szamat, ezert gyorsan fel tudjuk kutatni a hibat
           tartalmazo sort. Peldaul, ha ezt latjuk:

 config: line 17: syntax error

           Akkor gyo"zo:dju:nk meg rola, hogy helyesen irtuk be az
           adott sorban szereplo" kulcsszot. Ebben segitsegu:nkre
           lehet, ha o:sszevetju:k a GENERIC konfiguracios
           allomannyal vagy mas hivatkozasokkal.

   A make hibat jelez:

           Ha a make jelez hibat, az altalaban arra utal, hogy az
           altalunk korabban megadott rendszermag konfiguracios
           allomanyt a config(8) nem ertette meg rendesen. Megint azt
           tudjuk csak javasolni, hogy nezzu:k at a konfiguracios
           beallitasainkat, es ha ezutan sem sikeru:l megoldani a
           problemat, akkor mellekelju:k egy levelben a
           rendszermagunk konfiguracios beallitasait es ku:ldju:k el
           a FreeBSD general questions levelezesi lista cimere, ahol
           a hozzaerto"k gyorsan atnezik.

   A rendszermag nem indul:

           Ha az uj rendszermagunk nem indul vagy nem kepes
           felismerni az eszko:zeinket, ne essu:nk ketsegbe!
           Szerencsere a FreeBSD to:keletes megoldassal tud szolgalni
           az o:sszeferhetetlen rendszermagok esetere: a FreeBSD
           rendszerbeto:lto"jeben egyszeru"en valasszuk ki az
           inditando rendszermagot. Ezt akkor tudjuk elo"hivni,
           amikor a rendszerindito menu: megjelenik. Valasszuk ki a
           hatos, vagyis az "Escape to a loader prompt" (a beto:lto"
           parancssoranak elo"hivasa) menu:pontot. Mikor megjelenik a
           parancssor, irjuk be, hogy unload kernel, majd adjuk ki a
           boot /boot/kernel.old/kernel, parancsot, amiben barmilyen
           mas olyan rendszermagot is megnevezhetu:nk, ami korabban
           mar mu"ko:do:tt. Ezert amikor beallitunk egy uj
           rendszermagot, mindig erdemes a kezu:nk u:gyeben tartani
           legalabb egy olyan rendszermagot, amely mu"ko:dik.

           Miutan sikeru:lt elinditanunk az egyik hasznalhato
           rendszermagot, nezzu:k at meg egyszer a konfiguracios
           allomanyt es probaljuk ujra leforditani a rendszermagot. A
           problema megoldasat segitheti a /var/log/messages allomany
           attanulmanyozasa is, ami to:bbek ko:zt ro:gziti a
           rendszermag sikeres indulasa soran keletkezo" u:zeneteket.
           Ezenkivu:l a dmesg(8) parancs is meg tudja jeleniteni az
           aktualis rendszerinditas u:zeneteit.

             Megjegyzes: Ha gondok meru:lnenek fel a rendszermag
             elkeszitese soran, mindenkeppen tartsuk meg a GENERIC,
             vagy barmilyen masik olyan rendszermagot, amelyro"l
             tudjuk, hogy mu"ko:dik. Nevezzu:k at, igy nem fog
             felu:lirodni a ko:vetkezo" forditas es telepites soran.
             A kernel.old allomanyra ugyanis nem minden esetben
             szamithatunk, mivel az uj rendszermagok telepitesenel a
             kernel.old mindig felu:lirodik a legutobb telepitett
             rendszermaggal, amely azonban nem feltetlenu:l lesz
             mu"ko:do"kepes. So"t, amint csak lehetseges, rakjuk a
             mu"ko:do" rendszermagot a /boot/kernel ko:nyvtarba vagy
             ku:lo:nben a ps(1) es a hozza hasonlo parancsok nem
             fognak rendesen mu"ko:dni. Mindezek elvegzesehez
             egyszeru"en nevezzu:k at a jo rendszermagot tartalmazo
             ko:nyvtart:

 # mv /boot/kernel /boot/kernel.rossz
 # mv /boot/kernel.jo /boot/kernel

   A rendszermag mu"ko:dik, de a ps(1) viszont nem:

           Ha olyan rendszermagot telepitettu:nk, aminek a verzioja
           nem egyezik meg a hozzatartozo segedprogramokeval, tehat
           peldaul -CURRENT rendszermagot raktunk egy -RELEASE
           rendszerhez, egyes rendszerallapotjelzo" parancsok, mint
           peldaul a ps(1) vagy a vmstat(8) nem fognak mu"ko:dni.
           Ebben az esetben az egesz rendszert ujra kell forditanunk
           es telepitenu:nk a rendszermagunkkal megegyezo" verzioju
           forrasbol. Reszben ezert sem ku:lo:no:sen ajanlott, hogy
           az operacios rendszer to:bbi reszeto"l eltero" verzioju
           rendszermagot hasznaljunk.

     --------------------------------------------------------------

                          Fejezet 9. Nyomtatas

   Irta: Sean Kelly. Atdolgozta es frissitette: Jim Mock.

9.1. Attekintes

   A FreeBSD kepes rengeteg fele es fajta nyomtatoval
   egyu:ttmu"ko:dni, a legregebbi vegyszeres nyomtatotol kezdve
   egeszen napjaink lezernyomtatojaig, aminek ko:szo:nheto"en
   alkalmazasaikkal nagyon jo mino"segu" nyomtatasokat tudunk
   kesziteni.

   A FreeBSD a helyi halozaton nyomtatoszervernek is beallithato.
   Ekkor a vele ko:zo:s halozatra csatlakozo to:bbi, FreeBSD, Windows
   vagy Mac OS rendszeru" szamitogepto"l kepes nyomtatasi kereseket
   elfogadni. A FreeBSD gondoskodik rola, hogy egyszerre csak egy
   nyomtatas keszu:ljo:n el, szamon tartja, hogy mely felhasznalok es
   szamitogepek nyomtatnak a legto:bbet, es minden feladathoz
   "munkalapot" (banner page) keszit, amiben to:bbek ko:zt
   megtalalhatjuk, hogy kihez tartozik.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan allitsuk be a FreeBSD nyomtatasi sorat;

     * hogyan telepitsu:nk nyomtatasi szu"ro"ket, hogyan kezelju:nk
       ku:lo:nbo:zo" specialis nyomtatasi feladatokat, tehat peldaul
       mikent alakitsuk at a beerkezo" dokumentumokat olyan
       nyomtatasi formatumra, amelyet a nyomtatonk is megert;

     * hogyan engedelyezzu:k a fejlec- vagy munkainformaciok
       kinyomtatasat;

     * hogyan nyomtassunk mas szamitogepekhez csatlakoztatott
       nyomtatokkal;

     * hogyan nyomtassunk a halozatra ko:zvetlenu:l kapcsolt
       nyomtatokkal;

     * hogyan allitsuk be a nyomtato korlatait, peldaul a nyomtatasi
       munkak meretet, amivel egyes felhasznalok nyomtatasat
       visszafoghatjuk;

     * hogyan keszitsu:nk nyomtatasi kimutatasokat es nyilvantartast
       a nyomtato hasznalatarol;

     * hogyan keressu:k meg a nyomtatas soran felmeru:l problemak
       okait.

   A fejezet elolvasasahoz ajanlott:

     * egy uj rendszermag beallitasanak es telepitesenek ismerete (8
       fejezet).

     --------------------------------------------------------------

9.2. Bevezetes

   A FreeBSD-ben a nyomtatok mu"ko:desehez be kell allitani az LPD
   nyomtatasi rendszert. Ez a Berkeley sornyomtatasi rendszere,
   amelyet ezentul ro:viden csak LPD-nek fogunk hivni. Ez a FreeBSD
   alapertelmezett szabvanyos nyomtatasvezerlo" rendszere. Ebben a
   fejezetben az LPD es annak konfiguracioja keru:l bemutatasra.

   Ha mar talalkoztunk az LPD-vel vagy hozza hasonlo rendszerekkel,
   akkor innen nyugodtan ugorhatunk az Kezdeti beallitasok cimu"
   szakaszra.

   Az LPD vezerli a szamitogephez csatlakoztatott nyomtato o:sszes
   funkciojat. Szamos feladata van:

     * Felu:gyeli a lokalisan es halozaton keresztu:l csatlakoztatott
       nyomtatok hozzafereseit.

     * Leheto"ve teszi az atku:ldo:tt allomanyok kinyomtatasat,
       amelyeket munkaknak nevezu:nk.

     * Minden nyomtatohoz fenntart egy nyomtatasi sort, amivel meg
       tudja akadalyozni, hogy egyszerre to:bb felhasznalo is hozza
       tudjon ferni az egyes nyomtatokhoz.

     * A fejleceket (vagy mas neven munka- vagy elvalaszto lapokat)
       nyomtat, igy a felhasznalok ko:nnyen megtalaljak a sajat
       nyomtatasaikat a to:bbi ko:zt.

     * Felu:gyeli a soros portokon csatlakozo nyomtatok kommunikacios
       beallitasait.

     * A halozaton keresztu:l atku:li a munkakat egy masik szamitogep
       LPD soraba.

     * A nyomtatando munkak formazasahoz lefuttatja az adott nyomtato
       nyelvehez es kepessegeihez illeszkedo" specialis szu"ro"ket.

     * Nyilvantartja a nyomtato kihasznaltsagat.

   A beallitasait tartalmazo allomany (/etc/printcap) es a specialis
   szu"ro"programok segitsegevel az LPD sokfele nyomtaton kepes az
   o:sszes emlitett feladatot vagy annak egy reszet megvalositani.

     --------------------------------------------------------------

  9.2.1. Amiert nyomtatasi sort erdemes hasznalni

   Amikor csak egyedu:l vagyunk a rendszerben, felmeru:lhet bennu:nk
   a kerdes, hogy minek is kellene neku:nk veszo"dni a nyomtatasi sor
   beallitasaval, hiszen nincs szu:ksegu:nk sem a hozzaferesek
   vezerlesere, sem fejlecekre, sem pedig nyilvantartasra. Noha akar
   ko:zvetlenu:l is el tudjuk erni a nyomtatot, nehany okbol azert
   megis erdemes nyomtatasi sort hasznalni:

     * Az LPD a hatterben nyomtat, ezert ilyenkor nem kell megvarni,
       amikor az adat atmasolodik a nyomtatora.

     * Az LPD tetszo"legesen tudja alakitani a nyomtatasi munkakat:
       hozzajuk tud tenni ku:lo:nbo:zo" adatokat (datum es ido"),
       vagy a specialis allomanyokat (peldaul a TeX DVI formatumat)
       kepes megertetni a nyomtatoval, es nem neku:nk kell mindezeket
       a lepeseket elvegeznu:nk.

     * Szamos nyomtatasi leheto"seggel rendelkezo" szabad es
       kereskedelmi program arra szamit, hogy a rendszeru:nkben
       nyomtatasi sor talalhato, ezert egy ilyen beallitasaval sokkal
       ko:nnyebb hasznalni ezeket a szoftvereket.

     --------------------------------------------------------------

9.3. Kezdeti beallitasok

   Ugy tudjuk hasznalni a nyomtatokat az LPD nyomtatasi rendszerevel,
   ha egyarant beallitjuk a nyomtatot es magat az LPD-t is. Itt a
   beallitas ket szintjet targyaljuk:

     * Az Alacsonyszintu" nyomtatobeallitas cimu" szakaszbol
       megtudhatjuk, hogyan tudunk csatlakoztatni egy nyomtatot,
       hogyan adjuk meg az LPD-nek, mikent kommunikaljon vele, hogyan
       nyomtassunk ki egyszeru" szo:veges allomanyokat a nyomtaton.

     * A Magasszintu" nyomtatobeallitas szakaszban bemutatjuk, hogyan
       nyomtassunk ki ku:lo:nfele specialis allomanyokat, hogyan
       keszitessu:nk fejleceket, hogyan nyomtassuk halozaton
       keresztu:l, hogyan vezerelju:k a nyomtatok hozzafereset es
       hogyan tartsuk nyilvan a nyomtato hasznalatat.

     --------------------------------------------------------------

  9.3.1. Alacsonyszintu" nyomtatobeallitas

   Ebben a szakaszban lathatjuk, mikeppen kell beallitani a
   nyomtatonkat es az LPD hogyan lesz kepes azt hasznalatba venni. Az
   alapoktol kezdu:nk:

     * A Hardveres beallitas cimu" szakaszban abban kapunk
       segitseget, hogyan kell a nyomtatot a szamitogephez
       csatlakoztatni.

     * A Szoftveres beallitas cimu" szakaszban az LPD nyomtatasi
       rendszer beallitasat tartalmazo allomanyt (/etc/printcap)
       vesszu:k sorra.

   Amennyiben olyan nyomtatot akarunk beallitani, amely nem helyileg,
   hanem valamilyen halozati protokollon keresztu:l csatlakozik,
   nezzu:k meg a Nyomtatok halozati adatcsatlakozassal cimu"
   szakaszt.

   Habar ez a szakasz neveben csupan "Alacsonyszintu"
   nyomtatobeallitasrol" szol, megleheto"sen szerteagazo tud lenni. A
   nyomtato hardveres es szoftveres eletre keltese az egyik
   legnehezesebb feladat. Ha van egy mu"ko:do" nyomtatonk, a fejlecek
   es a nyilvantartas beallitasa tulajdonkeppen mar gyerekjatek.

     --------------------------------------------------------------

    9.3.1.1. Hardveres beallitas

   Ebben a szakaszban a nyomtatok csatlakoztatasanak lehetseges
   modozatairol esik szo. Beszelni fogunk mindenfele portokrol es
   kabelekro"l, es a FreeBSD rendszermagjanak az egyes nyomtatok
   hasznalatahoz szu:kseges beallitasairol is.

   Ha korabban tudtuk csatlakoztatni a nyomtatonkat, es mas operacios
   rendszerekkel mar sikeresen is nyomtattunk vele, akkor ro:gto:n
   ugorhatunk is a Szoftveres beallitasokat tartalmazo szakaszra.

     --------------------------------------------------------------

      9.3.1.1.1. Portok es kabelek

   A szemelyi szamitogepekhez kaphato nyomtatok altalaban a
   ko:vetkezo" harom csatolofelu:let egyikevel rendelkeznek:

     * A soros, mas neven RS-232-es vagy COM porton keresztu:l
       kommunikalo felu:letek a szamitogep soros portjan ku:ldenek
       adatot a nyomtatonak. A soros csatolofelu:letek igen
       elterjedtek a szamitogepiparban, ko:nnyen tudunk ilyen kabelt
       szerezni, gyorsan is gyarthato. Elo"fordulhat, hogy a soros
       csatolofelu:letek hasznalatahoz valamilyen ku:lo:nleges
       kabelre, valamint bonyolult kommunikacios beallitasok
       megadasara van szu:kseg. A legto:bb soros port altal elerheto"
       legnagyobb adatatviteli sebesseg masodpercenkent 115 200 bit,
       ami miatt azonban a komolyabb grafikai tartalmak nyomtatasa
       szinte lehetetlen.

     * A parhuzamos csatolofelu:letek a szamitogepu:nk parhuzamos
       portjaval ku:ldenek adatokat a nyomtatonak. A parhuzamos
       felu:letek gyorsabbak az RS-232 soros felu:letnel, es a
       szamitogeppiacon is gyakran megtalalhatoak. Ko:nnyen tudunk
       ilyen kabelt szerezni, azonban kezileg nehezebb elkesziteni. A
       parhuzamos csatolofelu:letekhez altalaban nem tartoznak
       kommunikacios beallitasok, ezert rendkivu:l egyszeru"en el
       lehet boldogulni velu:k.

       A parhuzamos felu:letekre olykor "Centronics"
       csatolofelu:letkent is hivatkoznak, amelyet egy nyomtatotipus
       utan neveztek el.

     * A Universal Serial Bus (Univerzalis soros busz)
       ro:viditesekent hasznalt USB elnevezesu" csatolofelu:let a
       parhuzamos es a soros felu:leteknel joval nagyobb sebessegre
       kepes. A hozzatartozo kabelek felepitese egyszeru" es az aruk
       olcso. Habar a nyomtatas teren az USB hivatott levaltani az
       RS-232-es soros es a parhuzamos felu:leteket, nem mindegyik
       UNIX rendszer tamogatja kello"keppen. Ezt a problemat peldaul
       ugy keru:lhetju:k el, ha olyan nyomtatot vasarolunk, amelyen a
       legto:bbho:z hasonloan a parhuzamos es az USB csatlakozas is
       megtalalhato.

   A parhuzamos felu:leteken altalaban csak egy iranyban tudunk
   u:zeneteket ku:ldeni (a szamitogepto"l a nyomtatohoz), miko:zben
   az USB es a soros felu:let hasznalataval mind a ket iranyban is.
   FreeBSD alatt viszont mar az ujabb (EPP es ECP) parhuzamos portok
   egy IEEE 1284 szabvanyu kabellel kepesek oda-vissza kommunikalni.

   A parhuzamos nyomtatok ketiranyu kommunikaciojat altalaban ket mod
   ko:zu:l az egyiken szoktak megvalositani. Az elso" esetben a
   FreeBSD a nyomtatohoz egy specialis meghajtot hasznal, amely
   ismeri az altala beszelt nyelvet. Ilyenek a tintasugaras
   nyomtatok, amelyek mas egyeb allapotinformaciok mellett ezen
   keresztu:l kepesek jelezni a tinapatronokban levo" tinta
   mennyiseget. A masodik esetben a nyomtato ismeri a PostScript
   nyelvet.

   A PostScript nyelvu" munkak valojaban a nyomtatonak ku:ldo:tt
   programok. Hasznalatukhoz meg papirra sincs feltetlenu:l szu:kseg,
   es adodhat, hogy ko:zvetlenu:l a szamitogepnek valaszolnak. A
   PostScript is ketiranyu kommunikacion keresztu:l ertesiti a
   szamitogepet az olyan gondokrol, mint peldaul a PostScript
   programokban levo" hibak vagy a papir beakadasa, amely
   informacionak a felhasznalok szoktak o:ru:lni. Hovatovabb ez a
   ketiranyu kommunikacio a kulcsa a PostScript nyomtatok hatekony
   nyilvantartasanak is: egyszeru"en lekerdezzu:k a nyomtatotol a
   lapszamlalot (ami megadja, hogy a nyomtato eddig mennyi lapot
   nyomtatott ki), kiku:ldju:k a felhasznalohoz tartozo feladatot es
   ismet lekerdezzu:k a lapszamlalot. A ket ertek kivonasabol
   tajekozodhatunk a felhasznalo altal igenyelt lapok mennyisegero"l.

     --------------------------------------------------------------

      9.3.1.1.2. Parhuzamos portok

   A parhuzamos csatolofelu:leten erintkezo" nyomtato hasznalatahoz
   kapcsoljunk o:ssze szamitogepu:nket es nyomtatonkat egy parhuzamos
   kabellel. Az erre vonatkozo konkret utasitasok a nyomtato es/vagy
   a szamitogep keziko:nyveben olvashatoak.

   Jegyezzu:k meg, hogy a szamitogep melyik parhuzamos portjara
   csatlakoztattuk a kabelt. FreeBSD alatt az elso" ilyen port a ppc0
   eszko:z, a masodik pedig a ppc1 eszko:z lesz es igy tovabb. A
   nyomtatoeszko:z elnevezese ugyanezt a semat ko:veti: a /dev/lpt0
   lesz az elso" parhuzamos porton levo" nyomtato stb.

     --------------------------------------------------------------

      9.3.1.1.3. Soros portok

   A soros csatolofelu:letet hasznalo nyomtatok beu:zemelesehez
   elo"szo:r egy soros kabel segitsegevel kapcsoljuk o:ssze a
   szamitogepu:nkkel. Ennek pontos reszleteit a nyomtato es/vagy a
   szamitogepu:nk keziko:nyveben talalhatjuk meg.

   Ha nem vagyunk benne biztosak, hogy milyen a "megfelelo" soros
   kabel", probaljunk az alabbiak alapjan do:nteni:

     * A modem kabele a ket oldalan levo" az egymasnak megfelelo"
       tu:skeket ko:zvetlenu:l o:sszeko:ti. Ezt a tipust nevezik
       "DTE-DCE" kabelnek.

     * A null-modem kabel bizonyos erintkezo"ket rendesen, masokat
       pedig forditva ko:t o:ssze (peldaul a ku:ldo"t a fogadoval),
       illetve nemelyeket ro:vidre zar ko:zvetlenu:l a csatlakozon
       belu:l. Ez a tipus a "DTE-DTE" kabel.

     * Nehany specialis nyomtato eseten elo"fordul meg a soros
       nyomtatokabel, amelyek leginkabb a null-modem kabelekez
       hasonlitanak, azonban az ott ro:vidre zart csatornak itt a
       nekik megfelelo" erintkezo"knek tovabbitanak jeleket.

   Emellett meg a nyomtato elo"lapjan vagy az aljan talalhato
   kapcsolok segitsegevel be kell allitanunk a nyomtatohoz tartozo
   kommunikacios parametereket is. Itt valasszuk azt a bps (a bitek
   szama masodpercenkent) erteket, amelyet meg a szamitogepu:nk es a
   nyomtatonk is egyarant kepes tamogatni. Valasszunk 7 vagy 8
   adatbitet, paros, paratlan vagy kikapcsolt paritasbitet es 1 vagy
   2 stopbitet. Ekkor tudjuk megadni a forgalomiranyitasi protokollt
   is: lehet kikapcsolt, XON/XOFF (ez az un. "savon belu:li" vagy
   "szoftveres") forgalomiranyitas. Ne felejtsu:k el ezeket a
   beallitasokat a most ko:vetkezo" szoftveres beallitasok elvegzese
   soran sem.

     --------------------------------------------------------------

    9.3.1.2. Szoftveres beallitas

   Ebben a fejezetben targyaljuk a FreeBSD-ben talalhato LPD
   nyomtatasi rendszer mu"ko:desehez es a nyomtatashoz szu:kseges
   szoftveres beallitasokat.

   Ime az elvegzendo" lepesek ro:vid vazlata:

    1. Amennyiben szu:kseges, allitsuk be a rendszermagunkat nyomtato
       altal hasznalt portra. Ehhez A rendszermag beallitasa
       szakaszban olvashatjuk mit is kell pontosan tenni.

    2. Ha parhuzamos portot hasznalunk, akkor allitsuk be, hogy a
       parhuzamos port mikent fog kommunikalni. A parhuzamos port
       kommunikacios modjanak beallitasa cimu" szakasz tarja fel
       ennek reszleteit.

    3. Probaljuk ki, hogy ezek utan az operacios rendszer kepes-e
       adatot ku:ldeni a nyomtatonak. A nyomtato kommunikaciojanak
       elleno"rzese szakaszban kapunk erre par javaslatot.

    4. Az /etc/printcap allomany felhasznalasaval allitsuk be a
       nyomtatonkhoz a LPD-t. Erro"l a fejezet tovabbi reszei adnak
       majd felvilagositast.

     --------------------------------------------------------------

      9.3.1.2.1. A rendszermag beallitasa

   Az operacios rendszer magja eszko:zo:k egy adott csoportjaval
   kepes egyu:ttmu"ko:dni, amiben a soros es parhuzamos felu:leten
   csatlakozo nyomtatok is megtalalhatoak. Azonban ha a rendszermag
   nem ismeri fel meg valamelyiket, akkor a soros vagy parhuzamos
   portok hasznalatahoz ku:lo:n tamogatasra van szu:kseg.

   Igy tudjuk megnezni, hogy a jelenleg hasznalt rendszermag
   tamogatja-e a soros csatolofelu:letet:

 # grep sioN /var/run/dmesg.boot

   Itt az N nullatol kezdo"do"en adja meg a soros port sorszamat.
   Amennyiben latunk valami ilyesmit:

 sio2 at port 0x3e8-0x3ef irq 5 on isa
 sio2: type 16550A

   Ez azt jelenti, hogy a rendszermag sikeresen eszlelte a portot.

   A parhuzamos csatolofelu:let tamogatasarol igy gyo"zo"dhetu:nk
   meg:

 # grep ppcN /var/run/dmesg.boot

   Itt az N nullatol kezdo"do"en sorszamozza a parhuzamos portot. Ha
   eredmenyu:l valami hasonlot kapunk:

 ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
 ppc0: FIFO with 16/16/8 bytes threshold

   Ez arra utal, hogy a rendszermagunk tud a portrol.

   Elo"fordulhat azonban, hogy az operacios rendszer csak akkor fogja
   eszrevenni a nyomtatasra hasznalt soros vagy parhuzamos portot, ha
   atallitjuk a rendszermagunkat.

   A soros port tamogatasanak beallitasahoz olvassuk el a rendszermag
   beallitasarol szolo szakaszt. A parhuzamos port tamogatasahoz
   szinten olvassuk el ugyanazt a szakaszt es a most a ko:vetkezo"t.

     --------------------------------------------------------------

    9.3.1.3. A parhuzamos port kommunikacios modjanak beallitasa

   A parhuzamos csatolofelu:let hasznalata eseten valaszthatunk, hogy
   a FreeBSD milyen modon tartsa a kapcsolatot a nyomtatoval:
   megszakitasokkal vezerelje (interrupt-driven) vagy esetleg
   folyamatosan kerdezgesse (polled). A FreeBSD altalanos meghajtoja
   (lpt(4)) a ppbus(4) alrendszert hasznalja, ami a portot a ppc(4)
   meghajton keresztu:l vezerli.

     * A megszakitas alapu modszer a GENERIC rendszermagban
       alapertelmezes. Ilyenkor az operacios rendszer egy
       megszakitaskeres felhasznalasaval ertesu:l arrol, hogy a
       nyomtato mikor all keszen adatok fogadasara.

     * A lekerdezeses modszer hasznalata soran az operacios rendszer
       folyamatosan erdeklo"dik a nyomtato rendelkezesre allasarol.
       Amikor erre pozitiv megero"sitest kap, akkor a rendszermag
       ujabb adatokat ku:ld.

   A megszakitasos modszer valamivel gyorsabb, azonban cserebe
   lefoglal egy ertekes IRQ vonalat. A HP ujabb nyomtatoi allitolag
   nem mu"ko:dnek megfelelo"en ilyen modban, valamilyen
   (pillanatnyilag meg nem teljesen tisztazott) ido"zitesi problema
   miatt. Ezert az ilyen nyomtatoknak is valoszinu"leg a lekerdezeses
   modszer kell hasznalniuk. Mas nyomtatok pedig habar mu"ko:dnek
   mind a ket modszerrel, hihetetlenu:l lassuak a megszakitasokkal.

   Ketfelekeppen allithatjuk be a kommunikacios modot: a
   rendszermagon keresztu:l, vagy az lptcontrol(8) segedprogrammal.

   A rendszermagban igy allithatjuk be a kommunikaciot:

    1. Irjuk at a rendszermag beallitasait tartalmazo allomanyt.
       Keressu:k meg benne a hasznalt parhuzamos portnak megfelelo"en
       a ppc0, ppc1 (masodik parhuzamos port) vagy ppc2 (harmadik
       parhuzamos port) bejegyzest, es engedelyezzu:k.

          * A megszakitasos mod hasznalatahoz nyissuk meg a
            /boot/device.hints allomanyt, es az N helyere irjuk be a

 hint.ppc.0.irq="N"

            sorba a megfelelo" IRQ szamat. A rendszermag beallitasait
            tartalmazo allomanynak tartalmaznia kell a ppc(4)
            meghajtot is:

 device ppc

          * A lekerdezeses mod hasznalatahoz a /boot/device.hints
            allomanybol tavolitsuk el a ko:vetkezo" sort:

 hint.ppc.0.irq="N"

            Nemely esetben azonban ennyi meg nem lesz eleg a port
            lekerdezeses beallitasahoz. Ugyanis ha a hozzatartozo
            meghajto az acpi(4), akkor ez fogja felismerni, kezelni
            es a nyomtatohoz tartozo portok hozzaferesi modjat
            vezerelni. A problemat ezert gyakran erdemes a acpi(4)
            beallitasai ko:zo:tt is keresni.

    2. Mentsu:k el az allomanyt. Konfiguraljuk be, forditsuk le es
       telepitsu:k az uj rendszermagot. Ennek pontos reszleteit a
       rendszermag beallitasarol szolo fejezetben olvashatjuk.

   A kommunikacio modjanak beallitasa az lptcontrol(8) programmal:

    1. A megszakitasos mod beallitasahoz irjuk be:

 # lptcontrol -i -d /dev/lptN

       ahol az lptN a nyomtatohoz tartozo eszko:z neve.

    2. A lekerdezeses mod beallitasahoz irjuk be:

 # lptcontrol -p -d /dev/lptN

       ahol az lptN a nyomtatohoz tartozo eszko:z neve.

   Ha ezeket a parancsokat berakjuk az /etc/rc.local allomanyunkba,
   akkor azzal a rendszer minden egyes inditasa soran beallitjuk a
   szamunkra megfelelo" modot. Erro"l to:bbet az lptcontrol(8) man
   oldalarol tudhatunk meg.

     --------------------------------------------------------------

    9.3.1.4. A kommunikacio elleno"rzese

   Meg mielo"tt nekilatnank a nyomtatasi rendszer beallitasanak,
   bizonyosodjuk meg rola, hogy az operacios rendszer kepes adatokat
   tovabbitani a nyomtatonak. Sokkal ko:nnyebb egymastol
   fu:ggetlenu:l megvizsgalni a kommunikacio es nyomtatasi rendszer
   mu"ko:deset.

   A nyomtatot ugy tudjuk kiprobalni, ha ku:ldu:nk neki valamilyen
   szo:veget. Az lptest(1) to:keletesen megfelelo" akkor, ha olyan
   nyomtatonk van, amely azonnal kinyomtatja a kapott szo:veget. Ez a
   program 96 sorban letrehozza mind az o:sszes 96 kinyomtathato
   ASCII karaktert.

   A PostScript (vagy mas egyeb nyelvet ismero") nyomtatoknak azonban
   ennel kifinomultabb probara van szu:ksege. Erre a celra
   to:keletesen megfelel egy olyan kisebb PostScript programocska,
   mint peldaul ez:

 %!PS
 100 100 moveto 300 300 lineto stroke
 310 310 moveto /Helvetica findfont 12 scalefont setfont
 (Remek! Ez mukodik!) show
 showpage

   Ezt a PostScript kodot nyugodtan elmenthetju:k egy allomanyba,
   amelyet aztan a keso"bbi szakaszokban megjeleno" peldak szerint
   hasznalni is tudunk majd.

     Megjegyzes: A keziko:nyvben a nyomtato nyelve alatt leginkabb
     egy PostScript-szeru" nyelvet ertu:nk, nem pedig a Hewlett
     Packard PCL tipusu nyelvet. Habar a PCL nagyon sokra kepes,
     hiszen keverhetju:k meg benne akar a programokat es a nyers
     szo:vegeket is. Ezzel szemben a PostScript nem kepes nyers
     szo:veget kinyomtatni, ezert az ilyen tipusu nyomtatok
     mu"ko:dtetesehez ku:lo:n tamogatasra van szu:ksegu:nk.

     --------------------------------------------------------------

      9.3.1.4.1. A parhuzamos nyomtato elleno"rzese

   Ebben a szakaszban megtudhatjuk, hogy FreeBSD alatt mikent
   elleno"rizzu:k a parhuzamos portra csatlakozo nyomtatok
   mu"ko:deset.

   A parhuzamos porton levo" nyomtato kiprobalasahoz:

    1. A su(1) segitsegevel valjunk root felhasznalova.

    2. Ku:ldju:nk a nyomtatonak valamilyen adatot.

          * Ha a nyomtato kepes nyers szo:veget fogadni, akkor
            hasznaljuk az lptest(1) programot. Ehhez gepelju:k be:

 # lptest > /dev/lptN

            ahol az N nullatol kezdo"do"en a parhuzamos port
            sorszama.

          * Ha a nyomtato PostScript vagy mas nyomtatasi nyelvet
            ismer, akkor egy apro programot kell ku:ldenu:nk neki.
            Ehhez irjuk be:

 # cat > /dev/lptN

            Ezutan soronkent irjuk be a programot, de vigyazzunk,
            mert az Enter vagy a Return lenyomasa utan mar nem tudjuk
            kijavitani! A program begepelese utan nyomjuk meg a
            Ctrl+D vagy barmely mas olyan billentyu"kombinaciot,
            amivel ki tudunk lepni.

            Ezt a programot belerakhatjuk egy allomanyba is, amire
            aztan adjuk ki az alabbi parancsot:

 # cat allomany > /dev/lptN

            ahol az allomany a nyomtatora ku:ldendo" program neve
            lesz.

   Ezutan a nyomtato megkezdi a nyomtatast. Ne aggodjunk, ha netalan
   valami furcsan nezne ki, mert a keso"bbiekben ezt meg ugyis
   rendbetesszu:k.

     --------------------------------------------------------------

      9.3.1.4.2. A soros nyomtato elleno"rzese

   Ebben a szakaszban megtudhatjuk, hogyan elleno"rizzu:k a FreeBSD
   es soros portra ko:to:tt nyomtato kapcsolodasat.

   Igy tudjuk kiprobalni a soros porton csatlakozo nyomtatonkat:

    1. A su(1) paranccsal valjunk root felhasznalova.

    2. Nyissuk meg az /etc/remote allomanyt. Tegyu:k hozza a
       ko:vetkezo" sort:

 printer:dv=/dev/port:br#bps:pa=paritas

       ahol a port a soros porthoz tartozo eszko:zleiro neve (ttyd0,
       ttyd1, stb.), a bps a nyomtato altal hasznalt adatatviteli
       sebesseg, vegu:l a paritas a nyomtatohoz hasznalt paritas (ami
       lehet even (paros), odd (paratlan), none (nincs), vagy zero
       (nulla)).

       Ime egy olyan soros nyomtato beallitasa (printer neven), amely
       sebessege 19 200 bps, a harmadik portra csatlakozik es nem
       hasznal paritast:

 printer:dv=/dev/ttyd2:br#19200:pa=none

    3. Kapcsolodjunk a nyomtatohoz a tip(1) segitsegevel. Ennek
       parancsa:

 # tip printer

       Ha az imenti lepes nem mu"ko:dne, probalkozzunk az /etc/remote
       allomany ujboli modositasaval, es a /dev/cuaaN eszko:z helyett
       hasznaljuk a /dev/ttydN eszko:zt!

    4. Ku:ldju:nk adatot a nyomtatonak.

          * Ha a nyomtato kepes nyers szo:veget nyomtatni, akkor
            hasznaljuk az lptest(1) segedprogramot. Gepelju:k be:

 % $lptest

          * Ha a nyomtato a PostScript vagy egy hozza hasonlo
            nyomtatasi nyelven kommunikal, akkor a nyomtatonak egy
            ro:vid programot kell ku:ldenu:nk. Soronkent gepelju:k be
            a programot, azonban vigyazzunk arra, hogy a to:rles es
            minden mas szerkesztesre hasznalt billentyu" a nyomtato
            szamara is ertelmes lehet. Az is elo"fordulhat, hogy a
            program ku:ldeset egy specialis jelsorozattal tudjuk csak
            lezarni. A PostScript nyomtatok eseten ilyenkor elegendo"
            a Ctrl+D billentyu"k egyu:ttes lenyomasa.

            Vagy tehetju:k az egesz programot egy allomanyba, amihez
            aztan irjuk be ezt:

 % >allomany

            ahol az allomany a programot tartalmazo allomany neve.
            Miutan a tip(1) elku:ldte az allomanyt, nyomjuk le a
            lezarashoz szu:kseges billentyu"kombinaciot.

   Most mar meg kellene jelennie valaminek a nyomtaton. Az meg nem
   szamit, pontosan mi is lesz az -- keso"bb meg majd ugyis
   beallitjuk.

     --------------------------------------------------------------

    9.3.1.5. A nyomtatasi rendszer aktivalasa: a /etc/printcap allomany

   Csatlakoztattuk a nyomtatonkat, a mu"ko:dtetesehez beallitottuk a
   rendszermagot (amennyiben erre szu:ksegu:nk volt), es tudtunk neki
   adatokat ku:ldeni. Most mar keszen allunk arra, hogy LDP
   alkalmazason keresztu:l beallitsuk a nyomtato hozzaferesenek
   vezerleset.

   Az LPD beallitasait az /etc/printcap allomanyban talaljuk. Az LPD
   nyomtatasi rendszer minden egyes mu"velet elo"tt beolvassa ezt az
   allomanyt, ezert a benne vegzett modositasok szinte azonnal eletbe
   is lepnek.

   A printcap(5) tartalma ko:nnyen ertheto", a /etc/printcap
   allomanyt egyszeru"en modosithatjuk a kedvenc
   szo:vegszerkeszto"nkkel. A felepitese teljesen megegyezik a to:bbi
   hozza hasonlo allomanyeval: ilyenek peldaul a
   /usr/share/misc/termcap es a /etc/remote. Az itt alkalmazott
   formatum teljes leirasat a cgetent(3) man oldalon talaljuk.

   A nyomtatasi rendszer egyszeru" beallitasa az alabbi lepesekbo"l
   all:

    1. Adjunk nevet (es meg nehany alnevet) a nyomtatonak, irjuk
       ezeket az /etc/printcap allomanyba. A nevekro"l A nyomtato
       elnevezese cimu" szakaszban kapunk felvilagositast.

    2. A(z alapbol bekapcsolt) fejleclapokat az sh tulajdonsag
       megadasaval kapcsolhatjuk ki. A reszleteket A fejleclapok
       letiltasa cimu" szakaszban talaljuk.

    3. Hozzunk letre egy nyomtatasi ko:nyvtarat, es adjuk meg a
       helyet az sd tulajdonsag beallitasaval. A nyomtatasi ko:nyvtar
       letrehozasa cimu" szakaszban fogunk erro"l to:bbet mondani.

    4. Allitsunk be egy nyomtato altal hasznalt /dev ko:nyvtarbeli
       leirot, es az lp tulajdonsaggal adjuk meg az /etc/printcap
       allomanyban. Erro"l reszletesebben A nyomtatoeszko:z
       azonositasa cimu" szakaszban olvashatunk. Ha a nyomtato soros
       porton keresztu:l csatlakozik, az ms# tulajdonsaggal meg meg
       kell adnunk A nyomtatasi rendszer kommunikacios parameterei
       szakaszban targyaltakat is.

    5. Helyezzu:nk el egy szu"ro"t a beerkezo" nyers szo:vegek
       szamara. Erro"l A szo:vegszu"ro" telepitese cimu" szakasz
       ertekezik.

    6. Az lpr(1) parancs segitsegevel probaljuk ki a nyomtatast.
       Ennek pontos reszleteit a Probaljuk ki! es a Hibakereses cimu"
       fejezetekben talalhatjuk meg.

     Megjegyzes: A magasabb szintu" nyomtatok, mint peldaul a
     PostScript nyomtatok nem kepesek ko:zvetlenu:l nyers szo:veget
     nyomtatni. Az iment felvazolt egyszeru" beallitasi sema
     feltetelezi, hogy csak olyan allomanyokat fogunk nyomtatni a
     nyomtaton, amelyeket meg is ert.

   A felhasznalok gyakran arra szamitanak, hogy barmelyik altaluk
   elerheto" nyomtaton kepesek nyers szo:veget kinyomtatni. Az LPD
   alkalmazassal kapcsolatban allo programok is altalaban ugyanezt az
   elgondolast ko:vetik. Ha egy sajat nyelvvel rendelkezo" nyomtatot
   akarunk telepiteni, de a nyomtato sajat nyelven es a nyers szo:veg
   formajaban erkezo" munkakat is rendesen ki akarjuk nyomtatni,
   akkor mindenkeppen javasoljuk, hogy illeszu:nk meg egy tovabbi
   lepest is ebbe a sorba: illesszu:nk a rendszerbe egy nyers
   szo:vegro"l automatikusan PostScript (vagy mas egyeb) nyelvre
   tolmacsolo programot. Erro" a Szo:veges nyomtatasi feladatok
   PostScript nyomtatokon cimu" fejezetben olvashatunk.

     --------------------------------------------------------------

      9.3.1.5.1. A nyomtato elnevezese

   Az elso" (egyszeru") lepes a nyomtatonk nevenek kivalasztasa.
   Igazabol nem szamit, mennyire kifejezo" vagy eppen hobortos nevet
   adunk neki, hiszen emellett meg szamos alnevvel is illethetju:k.

   Az /etc/printcap allomanyban megtalalhato nyomtatok egyikenek
   legalabb az lp alnevvel rendelkeznie kell, mivel ez lesz az
   alapertelmezett nyomtato neve. Tehat ha a felhasznalo nem adja meg
   sem a PRINTER ko:rnyezeti valtozot, sem pedig az LPD-vel
   kapcsolatban allo aktualis parancsban a hasznalni kivant nyomtato
   nevet, akkor a rendszer az lp nevu"t fogja keresni.

   Ezenkivu:l altalaban meg gyakran adnak egy olyan alnevet is a
   nyomtatonak, ahol annak teljes leirasa, to:bbek ko:zt a gyartmanya
   es a tipusa szerepel.

   Ahogy sikeru:lt nevet es alneveket adni a nyomtatonak, irjuk is be
   ezeket az /etc/printcap allomanyba. Itt a nyomtato neveit balrol
   el kezdju:k felsorolni, mindegyik alnevet egy fu:ggo"leges
   vonallal valasszunk el, es az utolso utan pedig tegyu:nk
   pontosvesszo"t.

   A most ko:vetkezo" peldaban egy olyan vazt mutatunk be az
   /etc/printcap allomanyhoz, amiben ket nyomtatot (egy Diablo 630
   markaju sornyomtatot es egy Panasonic KX-P4455 tipusu PostScript
   lezernyomtatot) adunk meg:

 #
 #  /etc/printcap (rose)
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:

   Ebben a peldaban az elso" nyomtato neve rattan, es ehhez tartozik
   meg a line, diablo, lp, es Diablo 630 Line Printer alnev. Mivel
   itt soroltuk fel az lp alnevet is, ezert a rendszerben ez lesz az
   alapertelmezett nyomtato. A masodik nyomtato neve bamboo, es
   alnevei to:bbek ko:zt a ps, PS, S, panasonic, valamint a Panasonic
   KX-P4455 PostScript v51.4.

     --------------------------------------------------------------

      9.3.1.5.2. A fejleclapok letiltasa

   Az LPD nyomtatasi rendszer alapertelmezes szerint minden egyes
   feladathoz fejleclapot keszit. Ez a lap szep nagy betu"kkel
   tartalmazza a munkat kiado felhasznalo nevet, a gepet, amiro"l
   ku:ldtek, es a feladat nevet. Sajnalatos modon ez azonban inkabb
   akadalyozza a hibakeresest a nyomtato beallitasaban, ezert most
   inkabb kapcsoljuk ki ezeket.

   Ha le akarjuk tiltani a fejleclapokat, az /etc/printcap
   allomanyban adjuk meg az sh (ugy mint "suppress header pages")
   tulajdonsagot. Ime egy pelda az sh tulajdonsaggal bo"vitett
   /etc/printcap allomanyra:

 #
 #  /etc/printcap (rose) - sehol sem lesznek fejleclapok
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:

   Ebben a peldaban megfigyelhetju:k a helyes felirasi modot: az
   elso" sor a legbaloldalibb oszlopban kezdo"dik, es az azt ko:veto"
   sorok pedig bentebb. Minden bejegyzesben az utolso kivetelevel
   mindegyik sor egy visszaper (backslash) karakterrel zarul.

     --------------------------------------------------------------

      9.3.1.5.3. A nyomtatasi ko:nyvtar letrehozasa

   A nyomtatasi rendszeru:nk beallitasanak ko:vetkezo" lepese a
   nyomtatasi ko:nyvtar letrehozasa. Ez egy olyan ko:nyvtar, ahova a
   ku:lo:nbo:zo" nyomtatasi feladatok keru:lnek a feldolgozasuk
   elo"tt, valamint ahol a nyomtatasi rendszer to:bbi allomanya
   lakozik.

   A nyomtatasi rendszer adatait tarolo ko:nyvtarakat tartalmuk
   gyakori valtozasa miatt altalaban a /var/spool ko:nyvtarba szokas
   tenni. Ezen ko:nyvtarak tartalmat nem szu:kseges menteni sem. Az
   mkdir(1) parancs futtatasaval egyszeru"en ujra letre tudjuk hozni.

   Altalaban minden nyomtatohoz ku:lo:n letre szoktak hozni egy
   ko:nyvtarat az adott nyomtato neven. Erre pelda:

 # mkdir /var/spool/nyomtatonev

   Azonban ha a halozatunkon rengeteg nyomtato talalhato, akkor
   erdemes inkabb egyetlen ko:nyvtarat hasznalni, amelyet az LPD
   szamara tartunk fenn.

 # mkdir /var/spool/lpd
 # mkdir /var/spool/lpd/rattan
 # mkdir /var/spool/lpd/bamboo

     Megjegyzes: Amennyiben fontos neku:nk a felhasznaloi nyomtatasok
     titkossaganak megovasa, erdemes levedenu:nk a nyomtatasi
     ko:nyvtarat, igy az nem lesz mindenki altal elerheto". A
     nyomtatasi ko:nyvtarak tulajdonosa egyedu:l es kizarolag a
     daemon felhasznalo es a daemon csoport legyen, es hozza
     olvasasi, irasi es keresesi engedelyekkel rendelkezzen. Ezt
     fogjuk most beallitani a peldainkban szereplo" nyomtatoinkhoz
     is:

 # chown daemon:daemon /var/spool/lpd/rattan
 # chown daemon:daemon /var/spool/lpd/bamboo
 # chmod 770 /var/spool/lpd/rattan
 # chmod 770 /var/spool/lpd/bamboo

   Vegezetu:l az /etc/printcap allomanyban ezeket a ko:nyvtarakat se
   felejtsu:k el megadni az LPD-nek. Itt a nyomtatasi ko:nyvtar nevet
   az sd tulajdonsaggal irjuk le:

 #
 #  /etc/printcap (rose) - a nyomtatasi ko:nyvtarak hozzaadasa
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:

   Vegyu:k eszre, hogy a nyomtato neve ugyan a sor elejen kezdo"dik,
   azonban a hozzatartozo o:sszes to:bbi sor mind bentebb kezdo"dik
   es egy visszaper (backslash) karakterrel valasztjuk le.

   Ha az sd tulajdonsaggal nem adunk meg semmilyen nyomtatasi
   ko:nyvtarat, akkor ennek az erteke alapertelmezes szerint a
   /var/spool/lpd lesz.

     --------------------------------------------------------------

      9.3.1.5.4. A nyomtatoeszko:z azonositasa

   A Hardveres beallitas cimu" szakaszban mar beazonositottuk, hogy a
   FreeBSD a /dev ko:nyvtarban melyik eszko:zleiron keresztu:l fogja
   megszolitani a nyomtatot. Most ideje ugyanezt tudatni az LPD
   demonnal is. Igy amikor a nyomtatasi rendszer ki szeretne
   nyomtatni egy munkat, a szu"ro"program neveben ezt az eszko:zt
   nyitja meg (ahol a szu"ro"n keresztu:l tovabbitjuk az adatokat a
   nyomtato fele).

   Az lp tulajdonsag segitsegevel a /etc/printcap allomanyban
   soroljuk fel a nyomtatok /dev ko:nyvtarban talalhato leiroit.

   Az eddig hasznalt peldankban most tetelezzu:k fel, hogy a rattan
   nevu" nyomtato az elso" parhuzamos porton talalhato, mig a bamboo
   nevu" a hatodik soros porton. Ebben a helyzetben igy kellene
   kiegeszitenu:nk az /etc/printcap allomanyunkat:

 #
 #  /etc/printcap (rose) - a hasznalni kivant eszko:zo:k
 #  beazonositasa
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:\
         :lp=/dev/ttyd5:

   Az LPD alapertelmezes szerint a /dev/lp eszko:z fogja hasznalni,
   ha nem adjuk meg az lp tulajdonsagot az /etc/printcap allomanyban.
   Az /dev/lp azonban a FreeBSD-ben jelenleg nem letezik.

   Ha a telepitendo" nyomtatonk valamelyik parhuzamos portra
   csatlakozik, akkor innen akar tovabb is lephetu:nk A
   szo:vegszu"ro" telepitese cimu" szakaszra. Ha viszont nem,
   ko:vessu:k a most ko:vetkezo" szakaszban szereplo" utasitasokat.

     --------------------------------------------------------------

      9.3.1.5.5. A nyomtatasi rendszer kommunikacios parameterei

   A soros portra csatlakozo nyomtatoknal az LPD kepes beallitani az
   adatatviteli sebesseget, a paritast, valamint mas egyeb olyan
   kommunikacios parametereket, amelyekkel a szu"ro"program adatokat
   tud tovabbitani a nyomtato fele. Ez to:bb szempontbol is
   elo"nyo:s, mivel:

     * Egyszeru"en az /etc/printcap allomany atirasaval ki tudunk
       probalni to:bb kommunikacios beallitast, nem kell magat a
       szu"ro"programot ujraforditanunk.

     * A nyomtatasi rendszer kepes ugyanazt a szu"ro"t to:bb,
       ku:lo:nbo:zo" kommunikacios beallitast alkalmazo nyomtatohoz
       is hasznalni.

   Az /etc/printcap allomanyban az lp tulajdonsaggal megadott
   eszko:zo:k soros kommunikaciojanak beallitasait az alabbi
   tulajdonsagok hatarozzak meg:

   br#sebesseg

           Beallitja az eszko:z adatatviteli sebesseget a sebesseg
           ertekre, ahol a sebesseg lehet 50, 75, 110, 134, 150, 200,
           300, 600, 1200, 1800, 2400, 4800, 9600, 19 200, 38 400,
           57 600 vagy 115 200 bit masodpercenkent (bps).

   ms#stty-mod

           Beallitja az eszko:z megnyitasa utan hasznalt
           terminaleszko:z mu"ko:desenek parametereit. Az stty(1) man
           oldalon to:bbet is megtudhatunk roluk.

   Miutan az LPD megnyitja az lp tulajdonsaggal megadott eszko:zt,
   beallitja az ms# tulajdonsag erteke szerint annak jellemzo"it. Itt
   a parenb, parodd, cs5, cs6, cs7, cs8, cstopb, crtscts, es ixon
   modok lehetnek lenyegesek, melyekro"l az stty(1) man oldalon
   to:bbet is megtudhatunk.

   Allitsunk most akkor be az egyik kepzeletbeli nyomtatonkat a
   hatodik soros portra. Az adatatviteli sebessege 38 400 bps lesz. A
   kommunikacio modjanal kapcsoljuk ki a paritast (-parenb), 8 bites
   karakterek legyenek (cs8), ne legyen modemes vezerles (clocal) es
   a hardveres forgalomiranyitas legyen crtscts:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:

     --------------------------------------------------------------

      9.3.1.5.6. A szo:vegszu"ro" telepitese

   Most mar utasithatjuk az LPD-t, hogy milyen szo:vegszu"ro"t
   hasznaljon a munkak nyomtatora ku:ldesehez. A szo:vegszu"ro" (text
   filter), vagy mas neven bemeneti szu"ro" (input filter) egy olyan
   program, amelyet az LPD egy nyomtatasi feladat elvegzesekor
   lefuttat. Amikor az LPD lefuttatja a nyomtatohoz tartozo
   szo:vegszu"ro"t, a szu"ro" szabvanyos bemenetere elku:ldi a
   kinyomtatando munkat, es a szabvanyos kimenetet pedig atiranyitja
   az lp tulajdonsag altal megadott nyomtatoeszko:zre. Ennek
   megfelelo"en a szu"ro"nek a szabvanyos bemenetro"l kell olvasnia
   az elvegzendo" feladatot, a szabvanyos kimenetre pedig a
   tenylegesen nyomtatandot kell kiirnia. A szo:vegszu"ro"k
   reszleteiro"l a Hogyan mu"ko:dnek a szu"ro"k? szakasz szol.

   A mi esetu:nkben most szo:vegszu"ro"nek to:keletesen megfelel egy
   olyan ro:vid szkript, ami a nyomtatora a munkat a /bin/cat
   paranccsal ku:ldi ki. A FreeBSD-ben meg talalhatunk egy masik
   szu"ro"t is, amelynek a neve lpf. Ez kepes a to:rlest es alahuzast
   jelzo" karaktereket ertheto"ve tenni bizonyos nyomtatok szamara.
   Termeszetesen itt hasznalhatunk kedvu:nk szerinti szu"ro"t is. Az
   lpf szu"ro" mu"ko:desenek reszleteit Az lpf szo:vegszu"ro" cimu"
   szakaszban fejtju:k ki bo"vebben.

   Elo"szo:r is keszitsu:nk egy /usr/local/libexec/if-simple nevu"
   egyszeru" szo:vegszu"ro" szkriptet. A kedvenc
   szo:vegszerkeszto"nkkel irjuk bele a ko:vetkezo" sorokat:

 #!/bin/sh
 #
 # if-simple - egyszeru" szo:vegszu"ro" szkript az lpd-hez
 # Helye: /usr/local/libexec/if-simple
 #
 # Egyszeru"en atmasolja a kimenetere a bemenetero"l erkezo" adatokat; nem
 # fogad el semmilyen parametert.

 /bin/cat && exit 0
 exit 2

   Tegyu:k indithatova:

 # chmod 555 /usr/local/libexec/if-simple

   Ezutan tajekoztassuk rola az LPD-t az /etc/printcap allomanyban
   talalhato if tulajdonsag megadasaval. Itt most a peldankban
   szereplo" mind a ket nyomtatohoz beillesztju:k:

 #
 #  /etc/printcap (rose) - a szo:vegszu"ro" hozzaadasa
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:\
         :if=/usr/local/libexec/if-simple:

     Megjegyzes: Az if-simple szkript megtalalhato a
     /usr/share/examples/printing ko:nyvtarban.

     --------------------------------------------------------------

      9.3.1.5.7. Az LPD elinditasa

   Az lpd(8) az /etc/rc szkriptbo"l, az lpd_enable valtozo ertekenek
   megfelelo"en indul el. Ennek erteke alapbol NO, vagyis nem. Ha
   eddig meg nem tettu:k volna meg, akkor az /etc/rc.conf allomanyba
   most vegyu:k fel a ko:vetkezo" sort:

 lpd_enable="YES"

   Ezutan vagy inditsuk ujra a szamitogepu:nket, vagy pedig adjuk ki
   az lpd(8) parancsot:

 # lpd

     --------------------------------------------------------------

      9.3.1.5.8. Probaljuk ki!

   Elerkeztu:nk az LPD egyszeru" beallitasanak utolso lepesehez.
   Sajnos azonban meg nem gratulalhatunk, hiszen hatra van meg a
   nyomtato kiprobalasa es az esetlegesen elo"fordulo hibak
   kijavitasa. A beallitast ugy tudjuk a legegyszeru"bben
   letesztelni, ha megprobalunk valamit kinyomtatni. Az LPD
   rendszerben az lpr(1) parancs hasznalataval tudunk nyomtatasi
   feladatokat kiadni.

   A kommunikacio elleno"rzese cimu" szakaszban megtalalhatjuk, hogy
   hozzunk letre tesztelesre alkalmas szo:vegeket az lpr(1) es az
   lptest(1) programok segitsegevel.

   Az LPD beallitasainak egyszeru" tesztelese:

   Irjuk be:

 # lptest 20 5 | lpr -Pnyomtatonev

   ahol a nyomtatonev az /etc/printcap allomanyban megadott egyik
   nyomtato neve (vagy alneve) lehet. Az alapertelmezett nyomtato
   kiprobalasahoz ne adjunk meg az lpr(1) parancsnak semmilyen -P
   parametert. Meg egyszer megemlitenenk, hogy amennyiben PostScript
   nyomtatot tesztelu:nk, az elo"bbi helyett az lptest(1) paranccsal
   ku:ldju:nk ki egy PostScript programot. Ehhez tegyu:k a tesztelo"
   programunkat egy allomanyba, majd irjuk be az lpr allomanynev
   parancsot.

   A PostScript nyomtato eseten a kiku:ldo:tt program eredmenyet kell
   latnunk. Amennyiben az lptest(1) parancsot hasznaljuk, valami
   ilyesmire kell szamitanunk:

 !"#$%&'()*+,-./01234
 "#$%&'()*+,-./012345
 #$%&'()*+,-./0123456
 $%&'()*+,-./01234567
 %&'()*+,-./012345678

   A nyomtato kimerito"bb tesztelesehez probaljunk meg nagyobb
   programokat keriteni valahonnan (ha a nyomtatonk valamilyen
   nyelven kommunikal) vagy adjunk meg az lptest(1) parancsnak mas
   parametereket. Peldaul az lptest 80 60 soronkent 80 karaktert irat
   ki 60 sorban.

   Amennyiben a nyomtato nem mu"ko:dne, nezzu:k meg a Hibakereseshez
   tartozo szakaszt.

     --------------------------------------------------------------

9.4. Magasszintu" nyomtatobeallitas

   Ebben a szakaszban olyan szu"ro"ket mutatunk be, amelyek
   specialisan formazott allomanyok, fejleclapok, halozati nyomtatas,
   nyomtatasi nyilvantartas vagy szabalyozas eseten hasznalhatoak.

     --------------------------------------------------------------

  9.4.1. Szu"ro"k

   Noha az LPD kepes halozati protokollokat, nyomtatasi sorokat,
   hozzaferest es sok minden mas nyomtatasi feladatot kezelni, a
   tenyleges munka legnagyobb resze a szu"ro"kben (filter) to:rtenik.
   A szu"ro"k olyan programok, amelyek tartjak a kapcsolatot a
   nyomtatoval es megbirkoznak annak eszko:zfu:ggo"segeivel es
   ku:lo:nleges igenyeivel. Az egyszeru" beallitas soran egy primitiv
   szo:vegszu"ro"t allitottunk be (lasd A szo:vegszu"ro" telepitese)
   -- ami annyira egyszeru", hogy szinte minden nyomtaton mu"ko:dnie
   kell.

   Azonban mindahhoz, hogy ki tudjuk hasznalni a ku:lo:nbo:zo"
   atalakitasi, nyilvantartasi leheto"segeket, valamint a nyomtatok
   ku:lo:nlegessegeit es egyebeit, meg kell ertenu:nk a szu"ro"k
   pontos mu"ko:deset. Az elo"bb emlitett feladatok ugyanis teljesen
   a szu"ro" kezeben vannak. Ezzel kapcsolatban azonban rossz hir,
   hogy ezeket a szu"ro"ket neku:nk kell megirnunk. A jo hir ellenben
   az, hogy ko:nnyen talalunk ilyen szu"ro"ket, vagy ha eppen nem
   lelnenk valamelyiket, akkor is gyorsan meg tudjuk ezeket irni.

   So"t, a FreeBSD alapbol tartalmaz is egyet, amit a
   /usr/libexec/lpr/lpf helyen talalunk meg, es sok olyan nyomtatoval
   kepes egyu:ttmu"ko:dni, amelyek nyers szo:veget tudnak nyomtatni.
   (Kezeli az allomanyokban felbukkano to:rleseket es tabulalasokat,
   valamint kepes nyilvantartast vezetni, de semmi to:bbet.) Rajta
   kivu:l meg szamos szu"ro"t es szu"ro"elemet is talalhatunk a
   FreeBSD Portgyu"jtemenyeben.

   Lassuk, mit tartogat szamunkra ez a resz:

     * A Hogyan mu"ko:dnek a szu"ro"k? cimu" szakaszban megprobalunk
       egyfajta attekintest adni a szu"ro"k nyomtatasi folyamatban
       beto:lto:tt szerepero"l. Mindenkeppen erdemes elolvasnunk ezt
       a szakaszt, mivel ebben deru:l ki, hogy valojaban mi is
       to:rtenik a "fu:ggo:ny mo:go:tt", vagyis amikor az LPD
       hasznalja ezeket a szu"ro"ket. Ezzel a tudassal el tudjuk
       keru:lni vagy eppen nyakon tudjuk csipni azokat a problemakat,
       amelyek a nyomtatoinkhoz telepitett szu"ro"k hozzaadasa soran
       adodhatnak.

     * Az LPD alapbol arra szamit, hogy minden nyomtato kepes nyers
       szo:veget nyomtatni. Ez gondot okoz a PostScript (es minden
       mas nyelv alapu) nyomtatok eseten, mivel azok nem kepesek
       nyers szo:veget nyomtatni. Szo:veges nyomtatasi feladatok
       PostScript nyomtatokon cimu" szakaszban viszont feny deru:l
       ra, hogyan kerekedju:nk felu:l ezen. Feltetlenu:l olvassuk el,
       ha PostScript nyomtatonk van.

     * A PostScript szamos program ko:zkedvelt kimeneti formatuma,
       so"t gyakran maguk a felhasznalok is szeretnek ilyen
       programokat irni. Sajnos azonban a PostScript nyomtatok
       egyaltalan nem olcsok. A PostScript szimulacioja nem
       PostScript nyomtatokon cimu" szakaszban megtudhatjuk, mikepp
       tudjuk ugy modositani a szu"ro"t, hogy nem PostScript
       nyomtatokon is tudjunk PostScript programokkal nyomtatni. Ezt
       a szakaszt akkor erdemes elolvasni, ha nincs PostScript
       nyomtatonk.

     * A Konverzios szu"ro"k cimu" szakaszban elaruljuk, mikent
       lehetseges automatizalni a ku:lo:nbo:zo" allomanyformatumok es
       a nyomtatok altal ertheto" formatumok ko:zti konverziokat,
       legyen az grafikus vagy betu"szedesre vonatkozo adat. A
       szakasz elolvasasa soran megismerju:k, hogyan tudjuk a
       nyomtatonkat kepesse tenni az lpr -t paranccsal troff adatok,
       vagy a lpr -d paranccsal a TeX DVI allomanyainak, esetleg az
       lpr -v paranccsal raszteres kepek nyomtatasara es igy tovabb.
       Csak ajanlani tudjuk ennek elolvasasat.

     * A Kimeneti szu"ro"k cimu" szakaszban kivesezzu:k az LPD egyik
       kevesbe hasznalt leheto"seget is, a kimeneti szu"ro"ket.
       Hacsak nem fejleclapokat akarunk kesziteni (lasd Fejleclapok),
       akkor ezt a szakaszt nyugodtan kihagyhatjuk.

     * Az lpf szo:vegszu"ro" szakaszban bemutatasra keru:l a
       FreeBSD-ben alapbol megtalalhato lpf szu"ro", amely egy
       sornyomtatonknal (vagy az igy viselkedo" lezernyomtatoknal)
       hasznalhato egyszeru" szo:vegszu"ro". Ha nyers szo:vegek
       nyomtatasanal meg akarjuk oldani a nyomtatasi munkak
       nyilvantartasat, vagy a to:rles karakter lattan a nyomtatonk
       fu:sto:lni kezdene, akkor mindenkeppen erdemes belemeru:lnu:nk
       az lpf titkaiba.

     Megjegyzes: A most ko:vetkezo" szkriptek mindegyike megtalalhato
     a /usr/share/examples/printing ko:nyvtarban.

     --------------------------------------------------------------

    9.4.1.1. Hogyan mu"ko:dnek a szu"ro"k?

   Ahogy mar korabban is jeleztu:k, a szu"ro" egy olyan vegrehajthato
   program, amelyet az LPD indit el, amikor a nyomtatoval
   eszko:zfu:ggetlen modon kommunikal.

   Amikor az LPD egy feladat elvegzese soran ki akar nyomtatni egy
   allomanyt, akkor elindit egy ilyen szu"ro"programot. A szu"ro"
   szabvanyos bemenetere elku:ldi a kinyomtatando allomanyt, a
   szabvanyos kimenetet a nyomtatora, a szabvanyos hibajelzeseit
   pedig egy naploallomanyba iranyitja (ez utobbit az /etc/printcap)
   allomanyban az lf tulajdonsaggal adhatjuk meg, vagy alapertelmezes
   szerinti a /dev/console allomanyba keru:l).

   Az LPD a hasznalni kivant szu"ro"t es annak parametereit az
   /etc/printcap allomanyban felsoroltak vagy az lpr(1)
   parancssoraban megadottak szerint valasztja ki. Peldaul, ha a
   felhasznalo a lpr -t parancsot adja ki, akkor az LPD a celkent
   megadott nyomtatonal szereplo" tf tulajdonsag altal megadott troff
   szu"ro"t kezdi el hasznalni. Amennyiben a felhasznalo egyszeru"en
   csak nyers szo:veget akar nyomtatni, akkor az if szu"ro"nek
   kellene elindulnia (ez viszont csak reszben igaz: lasd Kimeneti
   szu"ro"k).

   Haromfajta szu"ro" jelenhet meg az /etc/printcap allomanyban:

     * A szo:vegszu"ro" (text filter), ami a hagyomanyos szo:veges
       nyomtatasert felelo"s, es amit az LPD dokumentaciojaban
       erdekes modon bemeneti szu"ro"nek (input filter) hivnak. Mivel
       az LPD arra szamit, hogy minden nyomtato alapbol kepes
       kinyomtatni barmilyen nyers szo:veget, ezert a szo:vegszu"ro"
       feladata, hogy a nyomtato szamara gondoskodjon a tabulatorok,
       to:rlesek es mas egyeb specialis karakterek megfelelo"
       kezelesero"l. Emellett ha olyan helyen vagyunk, ahol szu:kseg
       van a nyomtatasi munkak nyilvantartasara is, a szo:vegszu"ro"
       ennek megoldasara is kepes, meghozza ugy, hogy o:sszeszamolja
       a kinyomtatott sorokat es elosztja ezeket a nyomtato altal
       oldalankent nyomtatott sorok szamaval. Egy szo:vegszu"ro" a
       ko:vetkezo" parameterekkel indulhat:

       szu"ro"nev [-c] -w szelesseg -l hossz -i behuzas -n hozzaferes
       -h gepnev nyilvantartas

       ahol a

            -c

                    akkor jelenik meg, ha egy munkat az lpr -l
                    paranccsal adunk at

            szelesseg

                    az /etc/printcap allomanyban definialt pw (page
                    width, avagy oldalszelesseg) tulajdonsag erteke,
                    ami alapbeallitas szerint 132

            hossz

                    a pl (page length, avagy oldalhossz) tulajdonsag
                    erteke, amely az alapbeallitas szerint 66

            behuzas

                    az lpr -i parancs megadasa soran hasznalt behuzas
                    merteke, ami alapbol 0

            hozzaferes

                    a nyomtatast vegzo" felhasznalo hozzaferesenek
                    megnevezese

            gepnev

                    a gep neve, amiro"l a nyomtatasi munka erkezett

            nyilvantartas

                    ez a nyilvantartast tarolo allomany af
                    tulajdonsaggal definialt neve

     * A konverzios szu"ro"k (conversion filter) egy adott
       allomanyformatumot hoznak a nyomtato szamara ertelmes formara.
       Peldaul ditroff adatok ko:zvetlenu:l ugyan nem nyomtathatoak,
       azonban a ditroff allomanyokhoz tudunk telepiteni egy olyan
       szu"ro"t, amely a ditroff adatokat a nyomtato szamara is
       emesztheto" es nyomtathato formajuva teszi. A Konverzios
       szu"ro"k cimu" szakasz tud ezekro"l to:bbet mondani. Ilyen
       esetekben kerhetu:nk nyilvantartast. A konverzios szu"ro"k az
       alabbi parameterekkel indulhatnak:

       szu"ro"nev -x pixelszelesseg -y pixelmagassag -n hozzaferes -h
       gepnev nyilvantartas

       ahol a pixelszelesseg a px tulajdonsag ertekebo"l (ami alapbol
       0), a pixelmagassag a py tulajdonsag ertekebo"l (ami alapbol
       szinten 0) szarmazik.

     * A kimeneti szu"ro" (output filter), ami csak akkor aktiv, ha a
       szo:vegszu"ro" nem, vagy ha engedelyeztu:k fejleclapok
       nyomtatasat. Tapasztalatom szerint az ilyen szu"ro"ket ritkan
       hasznaljak. A Kimeneti szu"ro"k cimu" szakasz mutatja be a
       mu"ko:desu:ket. Ekkor csupan ket parameteru:nk van:

       szu"ro"nev -w szelesseg -l hosszusag

       amik rendre megegyeznek a szo:vegszu"ro"k -w es -l
       parametereivel.

   A szu"ro"k ki is tudnak lepni a ko:vetkezo" kodokkal (exit
   status):

   0

           A szu"ro" sikeresen kinyomtatta az allomanyt.

   1

           A szu"ro"nek nem sikeru:lt kinyomtatnia az allomanyt,
           azonban szeretne, ha az LPD ujbol megprobalkozna vele. Az
           LPD tehat ebben az esetben ujrainditja a szu"ro"t.

   2

           A szu"ro"nek nem sikeru:lt kinyomtatnia az allomanyt, es
           nem is kivanja ujra megprobalni. Ekkor az LPD eldobja az
           allomanyt.

   A FreeBSD kiadasokban megtalalhato /usr/libexec/lpr/lpf
   szo:vegszu"ro" kepes a kapott szelesseg es hossz parameterekkel
   megallapitani az oldalto:reseket es a nyomtato hasznalatat
   nyilvantartani, amihez a hozzaferes, gepnev es nyilvantartas
   adatait hasznalja fel.

   Amikor majd igyekszu:nk melle ujabb szu"ro"ket beszerezni, ne
   felejtsu:k el elleno"rizni, hogy egyu:tt tudnak-e mu"ko:dni az
   LPD-vel. Ha a valasz igen, akkor a fentebb emlitett parameterek
   mindegyiket ismerniu:k kell. Az altalanos hasznalatra keszu:lt
   szu"ro"k keszitese soran mi magunknak is be kell tartanunk ezeket
   az elvarasokat.

     --------------------------------------------------------------

    9.4.1.2. Szo:veges nyomtatasi feladatok PostScript(R) nyomtatokon

   Ha csak egyedu:l dolgozunk a szamitogepen es PostScript (vagy
   barmilyen mas nyelvet ismero") nyomtatonk van, valamint
   megigerju:k, hogy soha nem ku:ldu:nk sem mi, sem pedig nem
   ku:ldetu:nk semmilyen mas programmal nyers szo:veget a nyomtatora,
   akkor atlephetju:k ezt a szakaszt.

   Ha viszont egyarant akarunk ku:ldeni PostScript programot es nyers
   szo:veget tartalmazo munkakat a nyomtatonak, akkor ehhez
   kenytelenek vagyunk a rendszeru:nket beallitani. Elo"szo:r is
   szu:ksegu:nk van szo:vegszu"ro"re, ami megallapitja, hogy a
   frissen erkezett munka nyers szo:veget vagy PostScript programot
   tartalmaz-e. Minden PostScript-alapu feladat a %!
   karaktersorozattal kezdo"dik (a to:bbi esetben olvassuk a nyomtato
   leirasat). Szoval, ha a nyomtatando allomany elso" ket karaktere
   ilyen, akkor egy PostScript programmal van dolgunk es
   ko:zvetlenu:l tovabbku:ldhetju:k a munkat a nyomtatonak. Minden
   mas esetben a szu"ro"nek elo"bb at kell alakitania a szo:veget
   PostScript nyelvre.

   Hogyan erhetju:k el mindezt?

   Ha soros nyomtatonk van, akkor erre a feladatra az lprps parancs
   to:keletes. Az lprps egy olyan PostScript szu"ro", amely mind a
   ket iranyban kepes ko:zvetiteni. Folyamatosan ro:gziti egy
   allomanyba a nyomtato allapotat, igy a felhasznalok es
   rendszergazdak pontosan latjak a nyomtato jelenlegi allapotat
   (peldaul "toner low" (a toner hamarosan kifogy) vagy "paper jam"
   (a papir beragadt)). Ami viszont sokkal lenyegesebb, hogy a psif
   nevu" program kepes megmondani az erkezo" munka valodi tipusat, es
   ennek megfelelo"en meg tudja hivni nyers szo:veg atalakitasara a
   textps (egy masik program, amit a lprps melle kapunk) parancsot.
   Ezutan az lprps elku:ldi a feladatot a nyomtatonak.

   Az lprps a FreeBSD Portgyu"jtemenyenek resze (lasd A
   Portgyu"jtemeny), ezert a hasznalni kivant papir mereteto"l
   fu:ggo"en pillanatok alatt magunk is leto:lhetju:k, fordithatjuk
   es telepithetju:k a print/lprps-a4 es print/lprps-letter csomagok
   valamelyiket. Az lprps telepitese utan egyszeru"en csak adjuk meg
   a psif eleresi utvonalat. Ha tehat telepitettu:k a
   Portgyu"jtemenybo"l az lprps csomagot, akkor egy soros portra
   csatlakozo PostScript nyomtato eseten ezt kell beirnunk az
   /etc/printcap allomanyba:

 :if=/usr/local/libexec/psif:

   Ezenkivu:l meg az rw tulajdonsaggal meg kell mondanunk az LPD-nek,
   hogy a nyomtatot irasra es olvasasra nyissa meg.

   Amennyiben a PostScript nyomtatonk a parhuzamos porton csatlakozik
   (es amiert a nyomtatonk nem kepes az lprps altal igenyelt
   ketiranyu kommunikaciora), szo:vegszu"ro"kent a ko:vetkezo"
   szkriptet fogjuk hasznalni:

 #!/bin/sh
 #
 #  psif - PostScript vagy nyers szo:veg nyomtatasa PostScript nyomtaton
 #  Ez a szkriptes valtozat, NEM pedig az lprps-hez mellekelt szu"ro"
 #  (a /usr/local/libexec/psif allomany)!
 #

 IFS="" read -r first_line
 first_two_chars=`expr "$first_line" : '\(..\)'`

 if [ "$first_two_chars" = "%!" ]; then
     #
     #  PostScript: nyomtassuk ki.
     #
     echo "$first_line" && cat && printf "\004" && exit 0
     exit 2
 else
     #
     #  Nyers szo:veg: alakitsuk at, majd nyomtassuk ki.
     #
     ( echo "$first_line"; cat ) | /usr/local/bin/textps && printf "\004" && exit 0
     exit 2
 fi

   A fentebb szereplo" szkriptben a textps programot hasznaljuk a
   nyers szo:vegek PostScript programokra alakitasahoz, de helyette
   barmilyen mas konvertalo programot is igenybe vehetu:nk. A FreeBSD
   Portgyu"jtemenyeben (lasd A Portgyu"jtemeny) talalhatunk erre a
   celra egy a2ps nevu" programot is, amit esetleg erdemes lehet
   ko:zelebbro"l megneznu:nk.

     --------------------------------------------------------------

    9.4.1.3. PostScript szimulacioja nem PostScript nyomtatokon

   A PostScript a magas szinvonalu betu"szedes es nyomtatas de facto
   szabvanya. Emellett azonban a PostScript egy ko:ltseges szabvany
   is. Az Aladdin Enterprises-nak hala azonban letezik egy hozza
   hasonlo szabad szoftver, a Ghostscript, amely kepes FreeBSD-n is
   futni. A Ghostscript kepes a legto:bb PostScript allomany
   olvasasara, megjelenitesere mindenfele eszko:zo:ko:n, beleertve a
   PostScriptet nem ismero" nyomtatokat is. A Ghostscript es egy
   specialis szo:vegszu"ro" telepitesevel el tudjuk erni, hogy egy
   nem PostScript nyomtato valodi PostScript nyomtatokent
   viselkedjen.

   Ha telepiteni szeretnenk, a Ghostscript megtalalhato a FreeBSD
   Portgyu"jtemenyeben. Innen tehat magunk is ko:nnyeden le tudjuk
   to:lteni, forditani es telepiteni.

   A PostScript nyomtatas szimulaciojahoz elo"szo:r egy szu"ro"
   segitsegevel eszre kell vennu:nk, hogy egy PostScript formatumu
   allomanyt keszu:lu:nk kinyomtatni. Ha nem ilyen a nyomtatando
   munka, akkor egyenesen a nyomtatora ku:ldju:k, azonban minden mas
   esetben elo"szo:r a Ghostscript segitsegevel atalakitjuk egy olyan
   formatumba, amit a nyomtato is kepes feldolgozni.

   Nezzu:nk erre egy peldat: a most ko:vetkezo" szo:vegszu"ro" a
   Hewlett Packard DeskJet 500-as nyomtatoihoz hasznalhato. Mas
   nyomtato eseten cserelju:k ki a gs (Ghostscript) parancs -sDEVICE
   parameteret a neki megfelelo"re. (A telepitett Ghostscript altal
   ismert nyomtatok listajat a gs -h paranccsal kerdezhetju:k le.)

 #!/bin/sh
 #
 #  ifhp - Ghostscripttel szimulalt Postscript nyomtatas DeskJet 500-on
 #  Helye: /usr/local/libexec/ifhp

 #
 #  LF karaktereket CR+LF-kent kezelju:k (elkeru:lve ezzel a HP/PCL
 #  nyomtatokon a "lepcso"zest"):
 #
 printf "\033&k2G" || exit 2

 #
 #  Az allomany elso" ket karakterenek beolvasasa
 #
 IFS="" read -r first_line
 first_two_chars=`expr "$first_line" : '\(..\)'`

 if [ "$first_two_chars" = "%!" ]; then
     #
     #  Ez PostScript: ku:ldju:k at a Ghostscripten es nyomtassuk ki.
     #
     /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=djet500 \
       -sOutputFile=- - && exit 0
 else
     #
     #  Nyers szo:veg vagy HP/PCL, ezert ku:ldju:k at ko:zvetlenu:l. Az utolso
     #  lap kidobasahoz ku:ldu:nk meg egy lapdobast is.
     #
     echo "$first_line" && cat && printf "\033&l0H" &&
 exit 0
 fi

 exit 2

   Befejezesu:l az if tulajdonsagon keresztu:l ertesitenu:nk kell
   erro"l a szu"ro"ro"l az LPD-t is:

 :if=/usr/local/libexec/ifhp:

   Keszen is vagyunk! Most mar nyugodtan beirhatjuk, hogy lpr
   sima.szo:veg vagy lpr akarmi.ps, mind a ketto"nek ki kell tudnia
   nyomtatodnia.

     --------------------------------------------------------------

    9.4.1.4. Konverzios szu"ro"k

   Miutan elvegeztu:k az Alacsonyszintu" nyomtatobeallitas cimu"
   szakaszban leirt beallitasokat, a (nyers ASCII szo:veg mellett)
   kedvenc allomanyformatumainkhoz is minden bizonnyal szeretnenk
   telepiteni nehany konverzios szu"ro"t.

     --------------------------------------------------------------

      9.4.1.4.1. Miert hasznaljunk konverzios szu"ro"ket?

   A konverzios szu"ro"k segitsegevel allomanyok mindenfele
   formatumait ko:nnyen ki tudjuk nyomtatni. Peldaul tegyu:k fel,
   hogy a sokat dolgozunk a TeX betu"szedo" rendszerrel es egy
   PostScript nyomtatonk van. Minden alkalommal, amikor egy DVI
   allomanyt hozunk letre a TeX forrasbol, azt ko:zvetlenu:l meg nem
   tudjuk a nyomtatora ku:ldeni. Ehhez a ko:vetkezo" parancsokat kell
   kiadnunk:

 % dvips hinar-elemzes.dvi
 % lpr hinar-elemzes.ps

   Ha telepitu:nk egy konverzios szu"ro"t a DVI allomanyokhoz, meg
   tudjuk sporolni ezt a manualis atalakitasi lepest azzal, hogy
   atadjuk ezt a feladatot az LPD-nek. Igy ezutan mindig, amikor egy
   DVI allomanyt akarunk kinyomtatni, csupan egyetlen lepesre lesz
   szu:ksegu:nk:

 % lpr -d hinar-elemzes.dvi

   Az LPD-nek a -d parameterrel adjuk meg, hogy a nyomtatas elo"tt
   hajtsa vegre a DVI atalakitasat. A Formazasi es konverzios
   beallitasok cimu" szakaszban talaljuk meg a to:bbi konverzios
   opciot.

   Minden olyan konverzios beallitashoz, amit hasznalni szeretnenk a
   nyomtatoval, telepitenu:nk kell egy konverzios szu"ro"t
   (conversion filter) es meg kell adnunk a nevet az /etc/printcap
   allomanyban. A konverzios szu"ro"k az egyszeru"
   nyomtatobeallitasnal szereplo" szo:vegszu"ro"kho:z hasonlitanak
   (lasd A szo:vegszu"ro" telepitese szakasz) azzal a kivetellel,
   hogy a nyers szo:vegek kinyomtatasa helyett ezek a szu"ro"k a
   nyomtato szamara ertelmes formatumra alakitjak az allomanyokat.

     --------------------------------------------------------------

      9.4.1.4.2. Milyen konverzios szu"ro"ket erdemes telepiteni?

   Olyan konverzios szu"ro"ket telepitsu:nk, amelyekre gyakran
   szu:ksegu:nk lehet. Ha peldaul sok DVI adatot szeretnenk nyomtatni
   a jo:vo"ben, akkor hasznaljunk DVI konverzios szu"ro"t, vagy ha
   sok troff formatumu adatot nyomtatunk, akkor minden bizonnyal jol
   fog jo:nni egy troff szu"ro".

   A ko:vetkezo" tablazat foglalja o:ssze azokat a szu"ro"ket,
   amelyekkel az LPD kepes egyu:ttmu"ko:dni. Megtudhatjuk, hogy az
   /etc/printcap allomanyban melyik tulajdonsag tartozik hozzajuk es
   hogyan hivjuk meg ezeket az lpr paranccsal:

   Allomanytipus    Tulajdonsag az /etc/printcap   Az lpr kapcsoloja  
                            allomanyban            
   cifplot        cf                               -c                 
   DVI            df                               -d                 
   plot           gf                               -g                 
   ditroff        nf                               -n                 
   FORTRAN forras rf                               -f                 
   troff          tf                               -f                 
   raster         vf                               -v                 
   nyers szo:veg  if                               nincs, -p, vagy -l 

   A peldankban tehat a lpr -d parancs hasznalata arra utal, hogy a
   nyomtatonak az /etc/printcap allomanybol a df tulajdonsagara van
   szu:ksege.

   Minden hadakozas ellenere allithatjuk, hogy a FORTRAN forrasok es
   a plot altal hasznalt szo:vegek formatuma napjainkra mar
   elavultnak tekintheto". Ezert ezekhez az opciokhoz a sajat
   szu"ro"inkkel tetszo"leges formazasi leheto"segeket rendelhetu:nk.
   Peldaul, ha Printerleaf (az Interleaf asztali kiadvanyszerkeszto"
   formatuma) allomanyokat szeretnenk ko:zvetlenu:l nyomtatni, akkor
   valoszinu"leg nem lesz szu:ksegu:nk plot allomanyokra. Ezert a gf
   tulajdonsagnak megadhatunk egy Printerleaf konverzios szu"ro"t,
   amelyen keresztu:l aztan a felhasznalok az lpr -g paranccsal
   Printerleaf allomanyokat tudnak nyomtatni.

     --------------------------------------------------------------

      9.4.1.4.3. Konverzios szu"ro"k telepitese

   Mivel a konverzios szu"ro"k az alap FreeBSD rendszeren kivu:lre
   keru:lnek, ezert ezeket minden valoszinu"seg szerint valahol a
   /usr/local ko:nyvtarban talaljuk meg. Ezen belu:l is altalaban a
   /usr/local/libexec ko:nyvtarban fordulnak elo", mivel ezeket csak
   az LPD futtatja, senki masnak nincs rajuk szu:ksege.

   A konverzios szu"ro"k aktivalasahoz az /etc/printcap allomanyban
   egyszeru"en adjuk meg az alkalmas tulajdonsagoknak megfelelo"
   szu"ro"k eleresi utvonalait.

   A peldankban most felveszu:nk egy DVI konverzios szu"ro"t a bamboo
   nevu" nyomtatohoz. Itt ismet lathatjuk a korabban hasznalt
   /etc/printcap allomanyt, ahol most azonban a bamboo nevu"
   nyomtatonal hozzaadtunk egy df tulajdonsagot:

 #
 #  /etc/printcap (rose) -  egy df szu"ro" hozzaadasa a bamboo
 #  nevu" nyomtatohoz
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
         :if=/usr/local/libexec/psif:\
         :df=/usr/local/libexec/psdf:

   A DVI szu"ro" ebben az esetben a /usr/local/libexec/psdf neven
   elerheto" aprocska szkript. Ezt talalhatjuk benne:

 #!/bin/sh
 #
 #  psdf - DVI szu"ro" PostScript nyomtatohoz
 #  Helye: /usr/local/libexec/psdf
 #
 # Az lpr -d parancs hatasara hivodik meg
 #
 exec /usr/local/bin/dvips -f | /usr/local/libexec/lprps "$@"

   A szkript a dvips parancsot szu"ro"kent futtatja (az -f
   parameterrel) a szabvanyos bemenetro"l, ahova a nyomtatasi munkat
   is kapja. Ezutan elinditja az lprps PostScript szu"ro"t (lasd a
   Szo:veges nyomtatasi feladatok PostScript nyomtatokon cimu"
   szakaszt) az LPD altal atadott parameterekkel. Az lprps parancs
   ezekkel a parameterekkel tartja nyilvan az igy kinyomtatott
   lapokat.

     --------------------------------------------------------------

      9.4.1.4.4. Tovabbi peldak konverzios szu"ro"kre

   A konverzios szu"ro"k telepitesenek nincs bevalt receptje, ezert
   ebben a szakaszban bemutatunk rajuk nehany mu"ko:do"
   illusztraciot. Ezeket tudjuk felhasznalni sajat szu"ro"k
   elkeszitesere. Vagy ha megtehetju:k, hasznaljuk ko:zvetlenu:l
   ezeket.

   Ebben a pelda szkriptben Hewlett Packard LaserJet III-Si
   nyomtatokhoz hozunk letre raszteres (pontosabban GIF formatumu)
   konverzios szu"ro"t:

 #!/bin/sh
 #
 #  hpvf - GIF allomanyokat konvertal at HP/PCL-be, majd kinyomtatja
 #  Helye: /usr/local/libexec/hpvf
                  
 PATH=/usr/X11R6/bin:$PATH; export PATH
 giftopnm | ppmtopgm | pgmtopbm | pbmtolj -resolution 300 \
     && exit 0 \
     || exit 2

   Ugy mu"ko:dik, hogy a GIF allomanyt elo"szo:r PNM (portable
   anymap), utana PGM (portable graymap), majd PBM (portable bitmap)
   formatumura alakitja, amibo"l vegu:l LaserJet/PCL-kompatibilis
   adat lesz.

   Ez lesz a hozzatartozo /etc/printcap allomany:

 #
 #  /etc/printcap (orchid)
 #
 teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
         :lp=/dev/lpt0:sh:sd=/var/spool/lpd/teak:mx#0:\
         :if=/usr/local/libexec/hpif:\
         :vf=/usr/local/libexec/hpvf:

   A most ko:vetkezo" szkript a groff betu"szedu" rendszerbo"l
   erkezo" troff adatokat alakitja at a bamboo nevu" PostScript
   nyomtato szamara:

 #!/bin/sh
 #
 #  pstf - a groff troff adait alakitja PS-re, majd kinyomtatja
 #  Helye: /usr/local/libexec/pstf
 #
 exec grops | /usr/local/libexec/lprps "$@"

   A szkript az lprps parancs segitsegevel kommunikal a nyomtatoval.
   Ha a nyomtatonk parhuzamos porton csatlakozik, akkor helyette ezt
   a szkriptet hasznaljuk:

 #!/bin/sh
 #
 #  pstf - a groff troff adatait alakitja PS-re, majd kinyomtatja
 #  Helye: /usr/local/libexec/pstf
 #
 exec grops

   Kesz is! A szu"ro" eltrekeltesehez mindo:ssze ennyit kell
   beillesztenu:nk az /etc/printcap allomanyba:

 :tf=/usr/local/libexec/pstf:

   Most pedig jo:jjo:n a FORTRAN szerelmeseinek szivet megmelengeto"
   szkript. Ez egy olyan szo:vegszu"ro", amely barmelyik nyers
   szo:veget ko:zvetlenu:l kezelni tudo nyomtato eseten mu"ko:dik. A
   teak nevu" nyomtatohoz helyezzu:k be:

 #!/bin/sh
 #
 # hprf - FORTRAN szo:vegszu"ro" LaserJet 3si-hez
 # Helye: /usr/local/libexec/hprf
 #

 printf "\033&k2G" && fpr && printf "\033&l0H" &&
  exit 0
 exit 2

   Az /etc/printcap allomanyban a teak nyomtatohoz a ko:vetkezo" sor
   beirasaval tudjuk engedelyezni ezt a szu"ro"t:

 :rf=/usr/local/libexec/hprf:

   Most pedig ko:vetkezzen egy utolso, de az eddigieknel valamivel
   o:sszetettebb pelda. Ebben a korabban bemutatott teak nevu"
   LaserJet nyomtatohoz fogunk hozzaadni egy DVI szu"ro"t. Elo"szo:r
   is ko:vetkezzen a mu"velet egyszeru"bb resze: bo"vitsu:k ki az
   /etc/printcap allomanyt a DVI szu"ro" helyenek megadasaval:

 :df=/usr/local/libexec/hpdf:

   Ezutan ko:vetkezzek a nehezebb resz: a szu"ro" elkeszitese. Ehhez
   szu:ksegu:nk lesz egy DVI-ro"l LaserJet/PCL-re alakito programra.
   A FreeBSD Portgyu"jtemenyeben (lasd A Portgyu"jtemeny) talalunk is
   egyet: a csomag neve print/dvi2xx. A csomag telepitesevel
   megkapjunk a neku:nk kello" dvilj2p programot, ami kepes DVI-t
   LaserJet IIp, LaserJet III es a LaserJet 2000 tipusok altal ismert
   kodokra forditani.

   A dvilj2p felhasznalasatol fu:ggetlenu:l a hpdf neven letrehozni
   kivant szu"ro"nk meg igy is bonyolult lesz, hiszen a dvilj2p nem
   tud olvasni a szabvanyos bemenetro"l, hanem minden aron egy
   allomannyal akar dolgozni. So"t, olyan allomannyal, amelynek .dvi
   kiterjesztese van, ezert meg a /dev/fd/0 (vagyis a szabvanyos
   bemenethez tartozo eszko:zleiro) hasznalata is akadalyokba
   u:tko:zik.

   U:ro:m meg az o:ro:mu:nkben, hogy a /tmp ko:nyvtarat sem tudjuk
   felhasznalni ideiglenes link letrehozasara: a szimbolikus linkeket
   a bin felhasznalo es csoport birtokolja, a szu"ro"t pedig a daemon
   felhasznalo futtatja. A /tmp ko:nyvtarban raaadasul csak a
   tulajdonosaik kepesek allomanyokat atnevezni vagy to:ro:lni
   (sticky bit). Ezert a szu"ro" ugyan letre tudna hozni egy linket,
   azonban ezt a munkaja vegeztevel nem lesz majd kepes to:ro:lni,
   mivel a link egy masik felhasznalohoz tartozik.

   Ezert a szu"ro" az aktualis ko:nyvtarban fogja letrehozni ezt a
   szimbolikus linket, ami jelen esetu:nkben a nyomtatasi rendszer
   altal hasznalt ko:nyvtar lesz (ezt az /etc/printcap allomany sd
   tulajdonsagaval adjuk meg). Itt remeku:l el tudjak vegezni a
   feladataikat a szu"ro"k, ku:lo:no:sen mivel (neha) to:bb hely van
   itt, mint a /tmp ko:nyvtarban.

   Vegu:l lassuk magat a szu"ro"t:

 #!/bin/sh
 #
 #  hpdf - DVI adat nyomtatasa HP/PCL nyomtaton
 #  Helye: /usr/local/libexec/hpdf

 PATH=/usr/local/bin:$PATH; export PATH

 #
 #  Letrehozunk egy fu:ggvenyt az atmeneti allomanyok to:rlesere. Ezek
 #  az aktualis ko:nyvtarban jo:nnek letre, ami pedig a nyomtatasi
 #  rendszer adott nyomtatohoz tartozo ko:nyvtara lesz.
 #
 cleanup() {
    rm -f hpdf$$.dvi
 }

 #
 #  Letrehozunk egy fu:ggvenyt a sulyos hibak kezelesere: irassunk ki
 #  egy adott u:zenetet es lepju:nk ki a 2-es hibakoddal.  Ezzel u:zenu:nk
 #  az LPD-nek, hogy ne nyomtatassa ujra a munkat.
 #
 fatal() {
     echo "$@" 1>&2
     cleanup
     exit 2
 }

 #
 #  Ha a felhasznalo eltavolitja a munkat a sorbol, akkor az LPD egy SIGINT
 #  jelzest fog ku:ldeni, ezert probaljuk meg azt elkapni (nehany mas egyeb
 #  jelzessel egyu:tt), igy meg tudjuk to:ro:lni az ideiglenesen
 #  letrehozott allomanyokat.
 #
 trap cleanup 1 2 15

 #
 #  Gondoskodjunk rola, hogy a feladat megkezdesekor meg egyetlen
 #  hasznalt allomany sem letezik.
 #
 cleanup

 #
 #  Ko:ssu:k o:ssze a szabvanyos bemenetet egy DVI allomannyal (amit
 #  majd nyomtatni akarunk).
 #
 ln -s /dev/fd/0 hpdf$$.dvi || fatal "Cannot symlink /dev/fd/0"

 #
 #  LF = CR+LF
 #
 printf "\033&k2G" || fatal "Cannot initialize printer"

 #
 #  Alakitsuk at az adatot es nyomtassunk. A dvilj2p altal visszaadott ertek
 #  nem tulsagosan megbizhato, ezert ne is foglalkozzunk vele.
 #
 dvilj2p -M1 -q -e- dfhp$$.dvi

 #
 #  Takaritsunk el magunk utan es lepju:nk ki szabalyosan
 #
 cleanup
 exit 0

     --------------------------------------------------------------

      9.4.1.4.5. Automatikus konverziok: a konverzios szu"ro"k helyett

   A konverzios szu"ro"k sokat segitenek egy kenyelmes nyomtatasi
   ko:rnyezet kialakitasaban, azonban a hasznalatukhoz a
   felhasznaloknak (az lpr(1) parancson keresztu:l) egyenkent
   hivatkozniuk kell rajuk. Ha a rendszeru:nk felhasznaloi nem elegge
   mu"veltek szamitastechnikai teren, akkor meg egy szu"ro" megadasa
   is zavaro lehet szamukra. Ami meg ennel is rosszabb, hogy egy
   rosszul megadott szu"ro" hatasara a nyomtato sem fogja jol kezelni
   az adott allomany formatumat es erre valaszul akar to:bbszaz lapot
   is pillanatok alatt kiko:phet magabol.

   A konverzios szu"ro"k telepitese helyett gyakran csak egy
   (alapertelmezett) szo:vegszu"ro"re van szu:ksegu:nk, amely
   kideriti a nyomtatando allomany pontos formatumat es magatol
   elinditja a neki megfelelo" konverzios szu"ro"t. Ilyen esetekben
   peldaul a file parancs pont a hasznunkra valhat. Persze bizonyos
   allomanytipusok ko:zt nagyon nehez ku:lo:nbseget tenni -- de
   ezekre tovabbra is adhatunk meg ku:lo:n konverzios szu"ro"ket.

   A FreeBSD Portgyu"jtemenyeben talalhatunk egy apsfilter
   elnevezesu" szo:vegszu"ro"t (print/apsfilter), ami kepes ilyen
   automatikus konverziora. Kepes felismerni a nyers szo:veget,
   PostScript programokat, DVI es szinte barmilyen formatumu
   allomanyokat, lefuttatni rajuk a megfelelo" atalakitastokat, majd
   kinyomtatni ezeket.

     --------------------------------------------------------------

    9.4.1.5. Kimeneti szu"ro"k

   Az LPD nyomtatasi rendszer kezel egy eddig meg nem targyalt
   szu"ro"tipust is: ez a kimeneti szu"ro". A kimeneti szu"ro" a
   szo:vegszu"ro"ho:z hasonloan csak nyers szo:veg nyomtatasara
   hasznalatos, de tartalmaz nehany egyszeru"sitest. Ha kizarolag
   csak kimeneti szu"ro"ket alkalmazunk, akkor:

     * Az LPD az egesz nyomtatasi feladathoz egyetlen kimeneti
       szu"ro"t fog hasznalni, nem pedig minden allomanyhoz ku:lo:n.

     * Az LPD a kimeneti szu"ro" szamara nem nyujt semmilyen
       segitseget a munkan belu:l szereplo" allomanyok kezdetenek
       vagy vegenek megallapitasaban.

     * Az LPD a szu"ro"nek nem adja at sem a felhasznalo
       hozzafereset, sem pedig gepnevet, ezert nyilvantartasra nem
       alkalmas. Mindent o:sszegezve lenyegeben csak ket parametert
       kap meg:

       szu"ro"nev -wszelesseg -lhossz

       ahol a szelesseg a kerdeses nyomtato pw tulajdonsagabol, a
       hossz pedig a pl tulajdonsagabol szarmazik.

   Ne bu"vo:ljo:n el minket a szu"ro" egyszeru"sege! Ha peldaul a
   munkaban minden allomanyt ujabb lapon szeretnenk kezdeni, akkor
   azt kimeneti szu"ro"vel nem tudjuk megoldani. Erre a celra
   hasznaljunk szo:vegszu"ro"t (masik neven bemeneti szu"ro"t), lasd
   A szo:vegszu"ro" telepitese szakaszt. Hovatovabb, a kimeneti
   szu"ro" valojaban sokkal bonyolultabb abban a tekintetben, hogy a
   beerkezo" adatok ko:zu:l neki kell kikeresnie a specialis
   jelentessel biro karaktereket ugyanugy, ahogy az LPD helyett sajat
   maganak kell ku:ldenie a jelzeseket.

   Azonban a kimeneti szu"ro"k hasznalata elkeru:lhetetlen, ha
   peldaul fejleclapokat akarunk nyomtatni, es esetleg meg
   ku:lo:nbo:zo" inicializalasra hasznalatos specialis kodokat vagy
   karakterlancokat akarunk ez elo"tt kiku:ldeni. (Ellenben badarsag
   a fejleclapoktol ko:vetelni a felhasznalo adatait, hiszen az LPD a
   kimeneti szu"ro"nek nem ad semmilyen erre vonatkozo informaciot.)

   Egyetlen nyomtato eseten az LPD egyarant leheto"ve teszi kimeneti,
   szo:veg- es mas egyeb szu"ro"k hasznalatat. Ilyenkor az LPD a
   kimeneti szu"ro"n keresztu:l csak a fejlecet tartalmazo oldal
   (lasd a Fejleclapok szakaszt) nyomtatasat inditja el. Ezt
   ko:veto"en az LPD arra szamit, hogy a kimeneti szu"ro" ket
   karakter, az ASCII 031 es az ezt ko:veto" ASCII 001, hatasara
   leallitja magat. Amikor tehat a kimeneti szu"ro" erzekeli ezt a
   ket karaktert (031, 001), akkor a SIGSTOP jelzessel le kell
   allnia. Miutan az LPD lefuttatta a to:bbi szu"ro"t, a SIGCONT
   jelzessel ujrainditja a kimeneti szu"ro"t.

   Ha van kimeneti szu"ro"nk, de nincs szo:vegszu"ro"nk, akkor az LPD
   minden tovabbi feldolgozas nelku:l tovabbadja a munkat a kimeneti
   szu"ro"nek. Ahogy mar korabban is emlitettu:k, a kimeneti szu"ro"
   a munkaban levo" o:sszes allomanyt egymas utan nyomtatja ki,
   lapdobasok vagy barmilyen mas papirmozgatas nelku:l, ezert
   valoszinu"leg nem ez kell neku:nk. Az esetek tulnyomo reszeben
   ehhez eleg egy szo:vegszu"ro".

   A korabban szo:vegszu"ro"kent beharangozott lpf program kimeneti
   szu"ro"kent is kepes funkcionalni. Ha szu:ksegu:nk lenne egy
   gyorsan o:sszecsaphato kimeneti szu"ro"re, es nem akarunk a
   specialis karakterek valamint a jelzesek ku:ldesevel elido"zni,
   akkor probalkozzunk az lpf hasznalataval. Az lpf parancsot
   mellesleg becsomagolhatjuk egy olyan szkriptbe is, amely elvegzi a
   nyomtato szamara szu:kseges inicializalast.

     --------------------------------------------------------------

    9.4.1.6. Az lpf szo:vegszu"ro"

   A FreeBSD binaris terjesztesehez mellekelt /usr/libexec/lpr/lpf
   program egy szo:vegszu"ro" (bemeneti szu"ro"), amely kepes (az lpr
   -i paranccsal hozzaadott munkakat) tabulalni, (az lpr -l
   paranccsal felvett munkakban) a vezerlo"karaktereket figyelemen
   kivu:l hagyni, a munkaban elo"fordulo to:rlesek es behuzasok
   nyomtatasi poziciojat igazitani es nyilvantartani a kinyomtatott
   lapokat. Kimeneti szu"ro"kent is tud viselkedni.

   Az lpf szu"ro" rengeteg nyomtatasi ko:rnyezetben felhasznalhato.
   Habar nem kepes a nyomtatonak inicializalo jelsorozatokat
   ku:ldeni, megis ko:nnyu" olyan szkriptet irni, amely elvegzi
   ezeket a hianyzo kezdeti beallitasokat, majd lefuttatja az lpf
   szu"ro"t.

   Az lpf akkor lesz kepes helyesen szamolni a kinyomtatott lapokat,
   ha ehhez az /etc/printcap allomanyban jol to:ltju:k ki a pw es pl
   tulajdonsagokat. Ezen ertekek segitsegevel hatarozhato meg
   ugyanis, hogy mennyi szo:veg fert ra egy lapra es igy mennyi lapot
   emesztett fel az adott felhasznalo altal ku:ldo:tt munka. A
   nyomtatas nyilvantartasaval kapcsolatban A nyomtato hasznalatanak
   nyilvantartasa cimu" szakaszt erdemes elolvasni.

     --------------------------------------------------------------

  9.4.2. Fejleclapok

   Ha nagyon sok felhasznalonk van, es sok ku:lo:nbo:zo" nyomtatot is
   hasznalnak, akkor elo"bb vagy utobb minden bizonnyal
   elkeru:lhetetlenne fog valni a fejleclapok hasznalata.

   A fejlec-, vagy mas neven munka vagy elvalaszto lapok segitik elo"
   a kinyomtatott munkak azonositasat. A to:bbi dokumentumtol kirivo
   modon, altalaban dekorativ keretben, nagy, vastag betu"kkel
   nyomtatodnak ki, hogy a halomnyi papir ko:zo:tt a felhasznalok
   ko:nnyeden megtalalhassak az elku:ldo:tt munkaik eredmenyet.
   Termeszetesen a fejleclapok nyilvanvalo hatulu:to"je, hogy igy
   minden munkahoz meg egy lappal to:bbet kell elhasznalni es mivel
   gyakorlatilag nehany percnel tovabb nincs is rajuk szu:kseg,
   megleheto"sen hamar a kukaba keru:lnek. (A fejleclapok munkankent
   jo:nnek letre, nem pedig az munkakban levo" allomanyokhoz
   egyenkent, ezert nem is akkora pazarlas ez.)

   Az LPD rendszer kepes magatol fejleclapokat kesziteni a
   nyomtatasokhoz, amennyiben a nyomtatonk kepes ko:zvetlenu:l nyers
   szo:veget nyomtatni. Ha PostScript nyomtatonk van, akkor ennek
   legyartasahoz egy ku:lso" programra van szu:ksegu:nk, lasd a
   Fejleclapok PostScript nyomtatokon szakaszt.

     --------------------------------------------------------------

    9.4.2.1. A fejleclapok engedelyezese

   Az Alacsonyszintu" nyomtatobeallitas cimu" szakaszban az
   /etc/printcap allomanyban a sh (ugy mint "suppress header")
   tulajdonsaggal kikapcsoltuk a fejleclapokat. A fejleclapok
   engedelyezesehez mindo:sszesen el kell tavolitanunk ezt az sh
   tulajdonsagot.

   Ez tul egyszeru", nemde?

   Igen, ez igy van. Elo"fordulhat, hogy szu:ksegu:nk van meg egy
   olyan kimeneti szu"ro"re is, amely inicializalo karaktereket ku:ld
   a nyomtatonak. Ime egy pelda ehhez a Hewlett Packard
   PCL-kompatibilis nyomtatoi esetere:

 #!/bin/sh
 #
 #  hpof - Kimeneti szu"ro" Hewlett Packard PCL-kompatibilis nyomtatokhoz
 #  Helye: /usr/local/libexec/hpof

 printf "\033&k2G" || exit 2
 exec /usr/libexec/lpr/lpf

   Az of tulajdonsaggal adjuk meg a kimeneti szu"ro"t. A Kimeneti
   szu"ro"k szakaszban erro"l reszletesebben is olvashatunk.

   A korabban ismertetett teak nevu" nyomtatohoz most az alabbi minta
   /etc/printcap allomanyt mellekelju:k. Itt engedelyeztu:k a
   fejleclapokat es hozzatettu:k az imenti kimeneti szu"ro"t:

 #
 #  /etc/printcap (orchid)
 #
 teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
         :lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:\
         :if=/usr/local/libexec/hpif:\
         :vf=/usr/local/libexec/hpvf:\
         :of=/usr/local/libexec/hpof:

   Mostantol kezdve, amikor a felhasznalok a teak nyomtaton akarnak
   nyomtatni, minden munkahoz kapni fognak egy fejleclapot.
   Amennyiben a kedves felhasznalok megis keresgetni akarjak a
   nyomtatasaikat, az lpr -h paranccsal tetszo"leges modon
   letilthatjak azokat. Az lpr(1) to:bbi hasonlo opciojat A
   fejleclapokhoz tartozo beallitasok szakaszban talaljuk.

     Megjegyzes: Az LPD minden fejleclap utan egy lapdobast ku:ld. Ha
     erre a celra a nyomtatonk egy eltero" karaktert vagy
     karaktersorozatot hasznal, akkor azt az /etc/printcap allomany
     ff tulajdonsagaval hatarozhatjuk meg.

     --------------------------------------------------------------

    9.4.2.2. A fejleclapok vezerlese

   A fejleclapok engedelyezesevel az LPD egy un. hosszu fejlecet fog
   kesziteni, vagyis a felhasznalot, gepet es a munkat jol azonosito,
   egesz lapot kito:lto" oriasi betu"ket. Erre egy pelda (amiben a
   rose nevu" gepro"l kelly nyomtatta ki az "outline" elnevezesu"
   munkat):

       k                   ll       ll
       k                    l        l
       k                    l        l
       k   k     eeee       l        l     y    y
       k  k     e    e      l        l     y    y
       k k      eeeeee      l        l     y    y
       kk k     e           l        l     y    y
       k   k    e    e      l        l     y   yy
       k    k    eeee      lll      lll     yyy y
                                                y
                                           y    y
                                            yyyy


                                    ll
                           t         l        i
                           t         l
        oooo    u    u   ttttt       l       ii     n nnn     eeee
       o    o   u    u     t         l        i     nn   n   e    e
       o    o   u    u     t         l        i     n    n   eeeeee
       o    o   u    u     t         l        i     n    n   e
       o    o   u   uu     t  t      l        i     n    n   e    e
        oooo     uuu u      tt      lll      iii    n    n    eeee









       r rrr     oooo     ssss     eeee
       rr   r   o    o   s    s   e    e
       r        o    o    ss      eeeeee
       r        o    o      ss    e
       r        o    o   s    s   e    e
       r         oooo     ssss     eeee







                                               Job:  outline
                                               Date: Sun Sep 17 11:04:58 1995

   Ezt ko:veto"en az LPD elku:ld meg egy lapdobast is, ezert maga a
   munka egy uj oldalon fog kezdo"dni (kiveve, ha az /etc/printcap
   allomanyban az adott nyomtatohoz tartozo bejegyzesben megadtuk az
   sf (ugy mint "suppress form feeds", vagyis a lapdobasok letiltasa)
   tulajdonsagot.

   Ha ugy jobban tetszik, akkor az /etc/printcap allomanyban a sb
   tulajdonsaggal az LPD utasithato ro:vid fejlecek keszitesere is.
   Ilyenkor a fejleclap tartalma mindo:ssze ennyi lesz:

 rose:kelly  Job: outline  Date: Sun Sep 17 11:07:51 1995

   Alapertelmezes szerint az LPD elo"szo:r a fejleclapot majd a
   munkat nyomtatja ki. Ezt a sorrendet az /etc/printcap allomanyban
   a hl (header last) tulajdonsaggal meg tudjuk forditani.

     --------------------------------------------------------------

    9.4.2.3. A nyomtato hasznalatanak nyilvantartasa

   Az LPD altal felkinalt fejleclapok hasznalata soran egyetlen
   iranyelv ervenyesu:l a nyilvantartasukban: a fejleclapok
   ko:ltsegmentesek.

   De miert?

   Azert, mert kizarolag csak a kimeneti szu"ro" kepes a fejleclapok
   viselkedeset iranyitani, ami viszont nem kepes semmifele
   nyilvantartasra, hiszen nem kapja meg az ehhez szu:kseges
   felhasznaloi- vagy gepnev informaciokat, illetve
   nyilvantartasokat. Emiatt fogalma sincs rola, hogy kit terhel az
   adott nyomtato hasznalata. Ugy sem tudjuk megoldani a problemat,
   ha a szo:veg- vagy konverzios szu"ro"kben (ahol mar
   rendelkezesu:nkre allnak a felhasznalo es a gepenek adatai)
   "no:velju:k a lapok szamat eggyel" a munkaban, mivel a
   felhasznalok az lpr -h parancs hasznalataval kedvu:k szerint
   letilthatjak a fejleclapokat. Ezt ugyan alapveto"en a termeszetet
   ovni kivano felhasznalok reszesitik elo"nyben, de etto"l
   fu:ggetlenu:l sem ero"szakolhatjuk ra mindenkire.

   Az sem eleg, ha minden szu"ro" letrehozza a sajat fejlecet (amiert
   aztan penzt kerhetnenk). Mivel ha a felhasznalok az lpr -h
   paranccsal le akarjak tiltani a fejlecek hasznalatat, attol a
   szu"ro"kho:z meg mindig letrejo:nnek, hiszen az LPD a -h opciorol
   semmilyen ertesitest nem ku:ld at a szu"ro"knek.

   Nos, ilyenkor mitevo"k legyu:nk?

   A leheto"segeink:

     * Elfogadjuk az LPD elvet, es nem szamitunk fel ko:ltseget a
       fejleclapokra.

     * Az LPD helyett egy masik nyomtatasi rendszert hasznalunk,
       peldaul az LPRng rendszert. A Mas nyomtatasi rendszerek cimu"
       szakaszban kideru:l, milyen alternativak erheto"ek el az LPD
       kivaltasara.

     * Irjunk mi magunk egy intelligens kimeneti szu"ro"t. Normalis
       esetben a kimeneti szu"ro"k nem valok masra, csupan a nyomtato
       alaphelyzetbe hozasara vagy egyszeru"bb karakterkonverziok
       elvegzesere. Fejleclapokhoz es nyers szo:veget tartalmazo
       munkakhoz remeku:l hasznalhato (ahol nincs szo:veg- (avagy
       bemeneti) szu"ro"). Azonban ha a nyers szo:vegekhez van
       szo:vegszu"ro"nk, akkor az LPD a kimeneti szu"ro"t csak a
       fejleclapokhoz inditja el. Emellett a kimeneti szu"ro" az LPD
       altal generalt fejlec szo:vegebo"l kepes megmondani, melyik
       felhasznalohoz es gephez tartozik a szobanforgo fejlec. A
       modszer egyetlen bo:kkeno"je, hogy a nyilvantartasokat tarolo
       allomanyrol viszont meg igy se tudunk semmilyen informaciot
       szerezni (mivel nem kapjuk meg az af tulajdonsaggal beallitott
       allomany nevet). Ha azonban egy rendszerszinten elerheto"
       allomanyba mentju:k ezeket az adatokat, akkor akar bele is
       drotozhatjuk ezt a kimeneti szu"ro"be. A kimeneti szu"ro" az
       adatot megtalalasaban ilyenkor ugy tudunk segiteni, ha az
       /etc/printcap allomanyban az sh (ro:vid fejlec) tulajdonsagot
       allitjuk be. De ez igazabol sok hu"ho semmiert, es a
       felhasznalok is jobban megbecsu:lik az olyan nagylelku"
       rendszergazdat, aki nem szamitja fel nekik a fejleclapokat.

     --------------------------------------------------------------

    9.4.2.4. Fejleclapok PostScript nyomtatokon

   Ahogy arrol mar korabban is szo esett, az LPD kepes to:bbfele
   nyomtato szamara is megfelelo", nyers szo:vegu" fejleclapokat
   kesziteni. Persze a PostScript ko:zvetlenu:l nem kepes nyers
   szo:vegek nyomtatasara, ezert az LPD ezen leheto"sege lenyegeben
   hasznalhatatlan -- to:bbnyire.

   Ilyen helyzetben a fejleclapok hasznalatanak nyilvanvalo modja,
   hogy minden szo:vegszu"ro"t fejlecek gyartasara utasitunk. Ezek a
   szu"ro"k a felhasznalorol es a gepero"l kapott informaciokbol
   o:ssze tudjak allitani a megfelelo" fejleclapot. A megoldas
   hatranya, hogy ez meg olyankor is megto:rtenik, amikor a
   felhasznalok az lpr -h paranccsal ku:ldik a munkajukat.

   Kiserletezzu:nk egy kicsit ezzel a modszerrel! A most ko:vetkezo"
   szkript harom parametert fogad el (a felhasznalo hozzaferest, a
   gep es a munka nevet), majd ezekbo"l letrehoz egy egyszeru"
   PostScript formatumu fejlecet:

 #!/bin/sh
 #
 #  make-ps-header - PostScript fejlec letrehozasa a szabvany kimenetre
 #  Helye: /usr/local/libexec/make-ps-header
 #

 #
 #  Ezek itt a PostScript altal hasznalt egysegekben vannak megadva
 #  (72/col vagy 28/cm).  Irjuk at az altalunk hasznalt papirmeretre,
 #  A4-re vagy amit eppen hasznalunk:
 #
 page_width=612
 page_height=792
 border=72

 #
 #  A parameterek elleno"rzese.
 #
 if [ $# -ne 3 ]; then
     echo "Usage: `basename $0` <user> <host> <job>" 1>&2
     exit 1
 fi

 #
 #  Mentsu:k el ezeket, leginkabb az olvashatosag miatt.
 #
 user=$1
 host=$2
 job=$3
 date=`date`

 #
 #  Ku:ldju:k el a PostScript-kodot a szabvanyos kimenetre.
 #
 exec cat <<EOF
 %!PS

 %
 %  Gondoskodjunk rola, hogy ne zavarjuk az utanunk ko:vetkezo"
 %  felhasznalo munkajat.
 %
 save

 %
 %  Csinaljunk egy csuf vastag szegelyt, ko:rbe a papiron.
 %
 $border $border moveto
 $page_width $border 2 mul sub 0 rlineto
 0 $page_height $border 2 mul sub rlineto
 currentscreen 3 -1 roll pop 100 3 1 roll setscreen
 $border 2 mul $page_width sub 0 rlineto closepath
 0.8 setgray 10 setlinewidth stroke 0 setgray

 %
 %  Jelenitsu:k meg a felhasznalo azonositojat szep, feltu"no"
 %  betu"kkel.
 %
 /Helvetica-Bold findfont 64 scalefont setfont
 $page_width ($user) stringwidth pop sub 2 div $page_height 200 sub moveto
 ($user) show

 %
 %  Most pedig mutassuk az unalmas reszleteket.
 %
 /Helvetica findfont 14 scalefont setfont
 /y 200 def
 [ (Job:) (Host:) (Date:) ] {
 200 y moveto show /y y 18 sub def }
 forall

 /Helvetica-Bold findfont 14 scalefont setfont
 /y 200 def
 [ ($job) ($host) ($date) ] {
         270 y moveto show /y y 18 sub def
 } forall

 %
 % Ennyi lett volna.
 %
 restore
 showpage
 EOF

   Ezzel a szkripttel pedig mindegyik konverzios- es szo:vegszu"ro"
   elo"szo:r letrehoz egy fejleclapot, majd kinyomtatja a felhasznalo
   munkajat. Ime egy korabban mar bemutatott DVI szu"ro", amit most
   kiegeszitu:nk a fejleclapok hasznalataval:

 #!/bin/sh
 #
 #  psdf - DVI szu"ro" PostScript nyomtatohoz
 #  Helye: /usr/local/libexec/psdf
 #
 #  Az lpr -d parancs hatasara hivodik meg.
 #

 orig_args="$@"

 fail() {
     echo "$@" 1>&2
     exit 2
 }

 while getopts "x:y:n:h:" option; do
     case $option in
         x|y)  ;; # Ignore
         n)    login=$OPTARG ;;
         h)    host=$OPTARG ;;
         *)    echo "LPD started `basename $0` wrong." 1>&2
               exit 2
               ;;
     esac
 done

 [ "$login" ] || fail "No login name"
 [ "$host" ] || fail "No host name"

 ( /usr/local/libexec/make-ps-header $login $host "DVI File"
   /usr/local/bin/dvips -f ) | eval /usr/local/libexec/lprps $orig_args

   Lathatjuk, hogy a szu"ro"nek a felhasznaloi- es a gepnev
   megallapitasahoz vegig kell neznie a parameterek listajat. Ez
   lenyegeben minden mas konverzios szu"ro"nel ugyanigy nez ki. Ez a
   lista azonban a szo:vegszu"ro"k eseten nemileg elter (lasd a
   Hogyan mu"ko:dnek a szu"ro"k? szakaszt).

   Mar az elo"bbiekben is targyaltuk, hogy ez a megoldas, habar
   elegge egyszeru", az lpr szamara nem teszi leheto"ve a fejleclapok
   letiltasat (a -h opcio). Ha a felhasznaloink kimelni akarjak a
   fakat (vagy meg akarjak uszni a fejleclapok egbeszo:ko"
   ko:ltsegeit), akkor ezt nem tudjak megtenni, hiszen a szu"ro"k
   minden munkahoz kesziteni fognak fejleceket.

   Ezt a korlatozast csak ugy tudjuk elso:po:rni, ha bevetju:k a A
   nyomtato hasznalatanak nyilvantartasa szakaszban leirt cselt,
   tehat keszitu:nk egy olyan kimeneti szu"ro"t, amely megkeresi az
   LPD-vel generalt fejleceket es letrehozza azok PostScript
   valtozatat. Ha valaki az lpr -h paranccsal ku:ld nyomtatnivalot,
   akkor LPD nem keszit hozza fejleclapot, ahogy a kimeneti szu"ro"nk
   sem. A kimeneti szu"ro" minden mas esetben beolvassa az LPD altal
   ku:ldo:tt szo:veget es atku:ldi a neki megfelelo" PostScript kodot
   a nyomtatora.

   Ha soros PostScript nyomtatonk van, akkor hasznalhatjuk a psof
   kimeneti szu"ro"ho:z tartozo lprps parancsot is, ami pontosan az
   elo"bbit vegzi el. Hozzatennenk azonban, hogy a psof nem szamolja
   a fejleclapokat.

     --------------------------------------------------------------

  9.4.3. Halozati nyomtatas

   A FreeBSD tud halozaton is nyomtatni, vagyis tud tavoli
   szamitogepeknek is nyomtatasi munkat ku:ldeni. A halozati
   nyomtatas kifejezes altalanossagban veve ket ku:lo:nbo:zo" dolgra
   utalhat:

     * Egy tavoli szamitogephez kapcsolt nyomtato hozzafereset. A
       gephez a nyomtato a hagyomanyos soros vagy parhuzamos
       csatolofelu:leten keresztu:l kapcsolodik, amit aztan az LPD
       alkalmas beallitasaval a halozaton mindenki szamara
       elerheto"ve teszu:nk. A Tavoli szamitogepekre csatlakoztatott
       nyomtatok cimu" szakasz erro"l szol.

     * Egy ko:zvetlenu:l a halozatra kapcsolt nyomtato hozzafereset.
       A nyomtato tehat rendelkezik meg egy halozati csatlakozassal
       is a hagyomanyos soros vagy parhuzamos felu:let mellett (vagy
       eppen helyett). Egy ilyen nyomtato a ko:vetkezo"keppen
       mu"ko:dhet:

          * Elfogadja az LPD kereseit, es meg kepes munkakat is
            tarolni. Ebben az esetben teljesen egyenerteku" egy LPD
            alkalmazast futtato szamitogeppel. Ekkor nincs mas
            teendo"nk, csak ko:vetnu:nk kell a Tavoli szamitogepeken
            telepitett nyomtatok cimu" szakasz utasitasait.

          * Halozati adatfolyamokkal dolgozik. Ebben az esetben a
            nyomtatot "hozza kell kapcsolnunk" a halozaton talalhato
            egyik szamitogephez, ami majd a munkak tarolasaert es
            folyamatos ku:ldeseert lesz felelo"s. A Nyomtatok
            halozati adatcsatlakozassal szakasz az ilyen fajtaju
            nyomtatok telepitesere tesz nehany javaslatot.

     --------------------------------------------------------------

    9.4.3.1. Tavoli szamitogepekre csatlakoztatott nyomtatok

   Az LPD nyomtatasi rendszer alapbol kepes mas, szinten LPD-t (vagy
   vele kompatibilis rendszert) futtato szamitogepekre munkakat
   ku:ldeni. Ezzel lenyegeben az egyik gephez hozza tudunk kapcsolni
   egy nyomtatot, amit aztan a to:bbiek szamara elerheto"ve teszu:nk.
   Ez olyan nyomtatok eseteben is mu"ko:dik, amelyek ismerik az LPD
   altal alkalmazott protokollt.

   A tavoli nyomtatashoz elo"szo:r telepitsu:k a nyomtatot valamelyik
   szamitogepre az Alacsonyszintu" nyomtatobeallitas szakaszban
   leirtak szerint, es ezzel az lesz a nyomtatoszerveru:nk. Ezutan,
   amennyiben szu:ksegesnek talaljuk, vegezzu:nk magasabb szintu"
   nyomtatobeallitasokat is. Ne felejtsu:k el kiprobalni a nyomtaton,
   hogy rendesen mu"ko:dik az LPD mindegyik olyan beallitasaval, amit
   engedelyeztu:nk. Emellett gondoskodjunk minden olyan
   jogosultsagrol is, amivel a helyi szamitogepro"l el tudjuk erni a
   tavoli szamitogep altal felkinalt LPD szolgaltatast (lasd Tavoli
   szamitogepekro"l erkezo" keresek szabalyozasa).

   Ha olyan nyomtatot hasznalunk, aminek a halozati felu:lete
   kompatibilis az LPD rendszerrel, akkor az elo"bb emlitett
   nyomtatoszerver lenyegeben maga lesz a nyomtato, valamint a
   nyomtato neve a rajta beallitott nev. Ezzel kapcsolatban olvassuk
   el a nyomtatohoz es/vagy a halozati csatolojahoz mellekelt
   dokumentaciot.

     Tipp: Amikor a Hewlett Packard Laserjet tipusu nyomtatoit
     hasznaljuk, a text nevu" nyomtatonev magatol elvegzi a LF es
     CRLF formatumu sorto:resek ko:zti atalakitast, ezert ilyenkor
     nincs szu:ksegu:nk a hpif szkriptre.

   Ezutan ha szeretnenk mas gepek reszere is elerheto"ve tenni a
   frissen telepitett nyomtatonkat, adjuk meg mindegyiku:k
   /etc/printcap allomanyaban a ko:vetkezo"ket:

    1. Tetszo"legesen valasztott nevet, alneveket. Az egyszeru"seg
       kedveert azonban itt erdemes ugyanazokat a neveket valasztani,
       mint amit a nyomtatoszerveren is hasznalunk.

    2. Szandekosan hagyjuk az lp tulajdonsagot u:resen (:lp=:).

    3. Hozzunk letre egy nyomtatasi ko:nyvtarat, es jelo:lju:k meg a
       helyet az sd tulajdonsaggal. Az LPD itt fogja o:sszegyu"jteni
       a munkakat, mielo"tt elku:ldene azokat a nyomtatoszervernek.

    4. Adjuk meg a nyomtatoszerver nevet az rm tulajdonsag
       segitsegevel.

    5. Az rp tulajdonsaggal adjuk meg a nyomtatoszerverre
       csatlakoztatott nyomtato nevet.

   Kesz! Az /etc/printcap allomanyban mar nem kell megadni konverzios
   szu"ro"ket, oldalbeallitasokat es semmi mas egyebet.

   Lassunk mindezekre egy peldat. A rose nevu" szamitogephez ket
   nyomtato csatlakozik, a bamboo es a rattan. Most pedig beallitjuk,
   hogy az orchid nevu" gep felhasznaloi kepesek legyenek ezekkel a
   nyomtatokkal dolgozni. Ekkor a most ko:vetkezo"k szerint fog
   kinezni az orchid (a Fejleclapok engedelyezese szakaszban
   bemutatott) /etc/printcap allomanya. Tartalmazza a teak nevu"
   nyomtato beallitasait is, es ehhez fogjuk hozzaadni a rose masik
   ket nyomtatojat:

 #
 #  /etc/printcap (orchid) - a rose ket (tavoli) nyomtatojanak
 #  hozzaadasa
 #

 #
 #  A "teak" egy helyi nyomtato, ko:zvetlenu:l az orchidhoz
 #  csatlakozik:
 #
 teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
         :lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:\
         :if=/usr/local/libexec/ifhp:\
         :vf=/usr/local/libexec/vfhp:\
         :of=/usr/local/libexec/ofhp:

 #
 #  A "rattan" rose-hoz csatlakozik, igy ku:ldhetu:nk neki munkat:
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :lp=:rm=rose:rp=rattan:sd=/var/spool/lpd/rattan:

 #
 #  A "bamboo" is a rose-hoz tartozik:
 #
 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :lp=:rm=rose:rp=bamboo:sd=/var/spool/lpd/bamboo:

   Ezutan mas csak letre kell hoznunk a megfelelo" nyomtatasi
   ko:nyvtarakat az orchid nevu" gepen:

 # mkdir -p /var/spool/lpd/rattan /var/spool/lpd/bamboo
 # chmod 770 /var/spool/lpd/rattan /var/spool/lpd/bamboo
 # chown daemon:daemon /var/spool/lpd/rattan /var/spool/lpd/bamboo

   Mostantol kezdve az orchid felhasznaloi kepesek lesznek nyomtatni
   a rattan es bamboo nevu" nyomtatokon is. Ezert, ha az orchid egyik
   felhasznaloja beirja, hogy:

 % lpr -P bamboo -d sushi-leiras.dvi

   Az orchid gepen mu"ko:do" LPD rendszer ezt a munkat a bemasolja a
   /var/spool/lpd/bamboo nevu" nyomtatasi ko:nyvtarba es feljegyzi
   rola, hogy a nyomtatasahoz DVI szu"ro"re lesz szu:kseg. Ahogy rose
   gepen talalhato bamboo nyomtatasi ko:nyvtaraban elegendo" hely
   keletkezik, a ket LPD atku:ldi egymas ko:zt a rose nevu" gepre az
   allomanyt. Ezutan az allomany egeszen addig varakozik a rose
   nyomtatasi soraban, amig vegezetu:l kinyomtatasra nem keru:l. A
   rose fogja atalakitani DVI-ro"l PostScript formatumra atalakitani
   (mivel a bamboo egy PostScript nyomtato).

     --------------------------------------------------------------

    9.4.3.2. Nyomtatok halozati adatcsatlakozassal

   Amikor halozati kartyat vasarolunk a nyomtatonkhoz, altalaban ket
   valtozatukkal talalkozhatunk: az egyiku:k nyomtatasi rendszerkent
   mu"ko:dik (ez a dragabb), a masikuk pedig egyszeru"en csak soros
   vagy parhuzamos csatlakozon tovabbitando adatkent ko:zvetiti az
   adatokat a nyomtato fele (az olcsobb). A dragabbik valtozatot az
   elo"zo", Tavoli szamitogepekre csatlakoztatott nyomtatok cimu"
   szakaszban leirtak szerint tudjuk hasznalni.

   Az /etc/printcap allomanyban ugyan meg tudjuk adni, hogy a
   nyomtato soros vagy parhuzamos portra csatlakozik, es azon
   keresztu:l milyen adatatviteli sebesseggel (amennyiben soros),
   forgalomiranyitassal, tabulalassal, sorto:resi konvencio szerint
   stb. kommunikaljunk vele. Azonban TCP/IP vagy mas halozati porton
   u:lo" nyomtatok adatait itt nem tudjuk kifejteni.

   A halozatra ko:to:tt nyomtatok hasznalatahoz lenyegeben egy olyan
   ku:lo:n kifejlesztett kommunikacios programra van szu:ksegu:nk,
   amely a szo:veg- vagy konverzios szu"ro"kho:z hasonlo modon
   hivhato meg. Erre ro:gto:n adunk is egy peldat: a netprint szkript
   a szabvanyos bemenetro"l beolvassa az o:sszes kinyomtatando adatot
   es atku:ldi azokat a halozatra csatlakoztatott nyomtatonak. A
   szkript elso" parameterekent a nyomtato halozati nevet adjuk meg,
   masodiknak pedig portot. Azonban megjegyezzu:nk, hogy ez csak
   egyiranyu kommunikaciot tesz leheto"ve (a FreeBSD-to"l a
   nyomtatoig). Sok halozati nyomtato viszont ket iranyban is kepes
   kommunikalni, ezert erdemes lehet ezt kihasznalni (a nyomtato
   allapotanak lekerdezesere, nyilvantartasok keszitesere stb).

 #!/usr/bin/perl
 #
 #  netprint - A halozatra csatlakoztatott nyomtato szo:vegszu"ro"je
 #  Helye: /usr/local/libexec/netprint
 #
 $#ARGV eq 1 || die "Usage: $0 <printer-hostname> <port-number>";

 $printer_host = $ARGV[0];
 $printer_port = $ARGV[1];

 require 'sys/socket.ph';

 ($ignore, $ignore, $protocol) = getprotobyname('tcp');
 ($ignore, $ignore, $ignore, $ignore, $address)
     = gethostbyname($printer_host);

 $sockaddr = pack('S n a4 x8', &AF_INET, $printer_port, $address);

 socket(PRINTER, &PF_INET, &SOCK_STREAM, $protocol)
     || die "Can't create TCP/IP stream socket: $!";
 connect(PRINTER, $sockaddr) || die "Can't contact $printer_host: $!";
 while (<STDIN>) { print PRINTER; }
 exit 0;

   Rengeteg szu"ro"ben fel tudjuk hasznalni ezt a szkriptet. Peldaul
   tegyu:k fel, hogy egy Diablo 750-N tipusu sornyomtatot
   csatlakoztattunk a halozatra, amely az 5100-as porton varja a
   nyomtatando adatokat. A halozati neve most scrivener lesz. Ime a
   hozzatartozo szo:vegszu"ro":

 #!/bin/sh
 #
 #  diablo-if-net - Az 5100-as porton figyelo" `scrivener' nevu" Diablo
 #  nyomtato szo:vegszu"ro"je. Helye: /usr/local/libexec/diablo-if-net
 #
 exec /usr/libexec/lpr/lpf "$@" | /usr/local/libexec/netprint scrivener 5100

     --------------------------------------------------------------

  9.4.4. A nyomtato hasznalatanak szabalyozasa

   Ebben a szakaszban a nyomtato hasznalatanak korlazasarol irunk. Az
   LPD rendszeren keresztu:l meghatarozhatjuk, hogy ki kepes helyben
   vagy tavolrol hozzaferni a nyomtatohoz, mennyi masolatot
   nyomtathat, mennyi es egyenkent mekkora munkakat ku:ldhet.

     --------------------------------------------------------------

    9.4.4.1. A masolatok szamanak szabalyozasa

   Az LPD segitsegevel a felhasznalok egy allomanyt ko:nnyen ki
   tudnak nyomtatni akar to:bbszo:r is. Ha (peldaul) a felhasznalo
   egy munka nyomtatasahoz az lpr -#5 parancsot hasznalja, akkor a
   munkaban levo" o:sszes allomanybol o:t peldanyt kap. Ennek
   letjogosultsagat azonban neku:nk kell megitelni.

   Amennyiben ugy erezzu:k, hogy a tovabbi peldanyok keszitese csupan
   felesleges papir- es tintapazarlas, akkor az sc tulajdonsag
   megadasaval az /etc/printcap allomanyban kikapcsolhatjuk az lpr(1)
   -# leheto"seg hasznalatat. Igy amikor a felhasznalok a -#
   kapcsoloval ku:ldenek el munkakat a nyomtatora, a ko:vetkezo"t
   fogjak tapasztalni:

 lpr: multiple copies are not allowed

   Forditasa:

 lpr: masolatok nyomtatasa nem engedelyezett

   Vigyazzunk arra, hogy ha tavoli szamitogepen zajlik a nyomtatas
   (lasd Tavoli szamitogepekre csatlakoztatott nyomtatok), akkor az
   sc tulajdonsagot a tavoli szamitogep /etc/printcap allomanyaban is
   be kell allitani, masku:lo:nben a felhasznalok egy masik
   szamitogepro"l mindig kepesek lesznek to:bb peldany nyomtatasara.

   Nezzu:nk erre egy peldat. Itt most a rose nevu" szamitogep
   /etc/printcap allomanyat vesszu:k szemu:gyre. Ebben a rattan egy
   nagyon szivelyes nyomtato lesz, ezert engedelyezi a masolatok
   nyomtatasat, azonban a bamboo nevu" lezernyomtato nala mar sokkal
   valogatosabb lesz, ezert a beallitasai ko:zt az sc tulajdonsaggal
   kikapcsoljuk a masodpeldanyok nyomtatasat:

 #
 #  /etc/printcap (rose) - A masolatok korlatozasa a "bamboo"
 #  nevu" nyomtaton
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:sc:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
         :if=/usr/local/libexec/psif:\
         :df=/usr/local/libexec/psdf:

   Az sc tulajdonsagot az orchid /etc/printcap allomanyaban is meg
   kell adni (es ha mar itt vagyunk, akkor tegyu:k meg ugyanezt a
   teak eseteben is):

 #
 #  /etc/printcap (orchid) - Nincsenek masodpeldanyok sem a helyi
 #  "teak" nyomtaton, sem pedig a tavoli "bamboo" nyomtaton
 teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
         :lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:sc:\
         :if=/usr/local/libexec/ifhp:\
         :vf=/usr/local/libexec/vfhp:\
         :of=/usr/local/libexec/ofhp:

 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :lp=:rm=rose:rp=rattan:sd=/var/spool/lpd/rattan:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :lp=:rm=rose:rp=bamboo:sd=/var/spool/lpd/bamboo:sc:

   Az sc tulajdonsag hasznalataval ugyan megakadalyozzuk az lpr -#
   parancs teljesiteset, azonban ez meg mindig nem ov minket attol,
   hogy a felhasznalok kepesek legyenek to:bbszo:r egymas utan
   lefuttatni az lpr(1) parancsot, vagy eppen egyetlen munkaban to:bb
   allomanyt is elku:ldeni:

 % lpr forsale.sign forsale.sign forsale.sign forsale.sign forsale.sign

   Szamos modszer kinalkozik az effajta visszaelesek kivedesere
   (beleertve a figyelmen kivu:l hagyast is), lehet velu:k
   kiserletezgetni!

     --------------------------------------------------------------

    9.4.4.2. A nyomtatok hozzaferesenek szabalyozasa

   A UNIX csoportkezelesevel es az /etc/printcap allomanyban
   talalhato rg tulajdonsag felhasznalasaval korlatozni tudjuk, ki
   milyen nyomtaton dolgozhat. Ehhez mindo:sszesen annyit kell
   tennu:nk, hogy besoroljuk egy csoportba azokat a felhasznalokat,
   amelyek hozzaferhetnek a nyomtatohoz, es az rg tulajdonsaggal
   megnevezzu:k azt.

   A csoporton kivu:li felhasznalokat (ko:ztu:k magat a root
   felhasznalot is) pedig ezutan igy u:dvo:zli a rendszer, ha
   megprobalnak valamit kinyomtatni egy korlatozott felhasznalasu
   nyomtaton:

 lpr: Not a member of the restricted group

   Az u:zenet forditasa:

 lpr: Nem jogosult felhasznalo

   Ha erre a tavoli szamitogepek eseten szu:ksegu:nk lenne (lasd
   Tavoli szamitogepekre csatlakoztatott nyomtatok), akkor tegyu:k
   ugyanazt, mint amit az sc (a masodpeldanyok letiltasa, "suppress
   multiple copies") tulajdonsag eseten is, vagyis az rg
   tulajdonsagot adjuk meg azokon a tavoli szamitogepeken is, amelyek
   hozza tudnak ferni a megosztott nyomtatohoz.

   Peldaul megengedju:k, hogy a rattan nevu" nyomtatot barki
   hasznalhassa, azonban a bamboo nyomtaton csak az artists nevu"
   csoport hasznalhatja. Ko:vetkezzen hat akkor a rose korabbrol mar
   ismert /etc/printcap allomanya:

 #
 #  /etc/printcap (rose) - A bamboo hozzaferesenek korlatozasa
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
         :if=/usr/local/libexec/psif:\
         :df=/usr/local/libexec/psdf:

   Most ne bantsuk a masik (az orchid nevu" gepen levo")
   /etc/printcap allomanyt. Igy persze az orchid barmelyik
   felhasznaloja nyomtathat a bamboo nyomtaton. De ez most egy olyan
   eset, ahol egyebkent lekorlatozzuk a orchid elereset is, ezert az
   ott beengedett felhasznalok mar akar hasznalhatjak is a nyomtatot.
   Vagy sem.

     Megjegyzes: Minden nyomtatohoz csak egy ilyen csoportot adhatunk
     meg.

     --------------------------------------------------------------

    9.4.4.3. A beku:ldo:tt munkak meretenek szabalyozasa

   Ha sok felhasznalo szeretne a nyomtatoinkhoz hozzaferni, akkor
   minden bizonnyal meg akarunk adni egy felso" hatart a felhasznalok
   altal beku:ldheto" nyomtatasok meretere vonatkozoan. Mivel a
   nyomtatasi ko:nyvtaraknak otthont ado allomanyrendszer is egyszer
   betelhet, ezert mindenkeppen erdemes gondoskodni arrol, hogy
   mindenki munkajat el tudjuk rendesen tarolni.

   Az LPD az mx tulajdonsaggal leheto"seget ad arra, hogy
   lekorlatozzuk a munkakban talalhato egyes allomanyok meretet.
   Ennek mertekegysege egy BUFSIZ blokk, ami pedig 1024 byte. Ha
   erteku:l nullat adunk meg, akkor nincs korlatozas, viszont ha
   semmit sem ro:gzitu:nk, akkor az mx tulajdonsag alaperteke, vagyis
   1000 blokk lesz a hatar.

     Megjegyzes: Ez az ertek a munkakban levo" egyes allomanyok
     meretere vonatkozik, nem pedig a munkak teljes meretere.

   Fontos tudni, hogy az LPD nem dobja vissza a mereten felu:li
   allomanyokat. Ehelyett a meret alatti reszt szepen berakja a sorba
   es kinyomtatja, a to:bbi pedig elhagyja. Lehetne rajta vitazni,
   hogy ez mennyire helyes cselekedet.

   Peldakeppen definialjunk a korabban hasznalt rattan es bamboo
   nyomtatoinkhoz ilyen korlatokat. Mivel az artists csoport tagjai
   hajlamosak nagy PostScript allomanyokat ku:ldeni, ezert most
   lekorlatozzuk ezt o:t megabyte-ra. A szo:veges nyomtatonk eseten
   azonban nem lesz semmilyen hatar:

 #
 #  /etc/printcap (rose)
 #

 #
 #  Itt nincs korlat a munkakra:
 #
 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:mx#0:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:

 #
 #  O:t megabyte a PostScript:
 #
 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:mx#5000:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
         :if=/usr/local/libexec/psif:\
         :df=/usr/local/libexec/psdf:

   Ismet hozzatesszu:k, hogy ezek a korlatok csak a helyi
   felhasznalokra vonatkoznak. Amennyiben tavolrol is el lehet erni
   ezt a nyomtatot, a tavoli felhasznalokat nem fog semmilyen
   korlatozas erinteni. Azokon a szamitogepeken is meg kell adnunk az
   /etc/printcap allomanyban az mx tulajdonsagot. Ehhez a Tavoli
   szamitogepekre csatlakoztatott nyomtatok cimu" szakaszban talalunk
   segitseget.

   Van meg egy specialis modszer, amivel kepesek vagyunk szabalyozni
   a tavolrol erkezo" keresek meretet. Erro"l a Tavoli
   szamitogepekro"l erkezo" keresek szabalyozasa szakaszban
   olvashatunk.

     --------------------------------------------------------------

    9.4.4.4. Tavoli szamitogepekro"l erkezo" keresek szabalyozasa

   Az LPD nyomtatasi rendszer to:bb modot is szolgaltat a tavolrol
   erkezo" nyomtatasi munkak szabalyozasara:

   Az eleres szabalyozasa

           Az /etc/hosts.equiv es /etc/hosts.lpd allomanyok
           segitsegevel beallithatjuk, hogy mely tavoli
           szamitogepekto"l fogadjon el kereseket az LPD. Az LPD
           minden keres elfogadasakor elleno"rzi, hogy a ku:ldo"
           szamitogep cime szerepel-e az emlitett allomanyok
           valamelyikeben. Ha nem, akkor az LPD visszautasitja a
           kerest.

           A ket allomany felepitese egyszeru", mert bennu:k minden
           sorban egy-egy halozati nevet adunk meg. Hozzatennenk
           azonban, hogy legyu:nk ovatosak, mivel az /etc/hosts.equiv
           allomanyt az ruserok(3) protokoll is hasznalja, ezert
           ennek modositasa hatassal van az rsh(1) es rcp(1)
           programok mu"ko:desere.

           Peldaul most nezzu:k meg a rose /etc/hosts.lpd allomanyat:

 orchid
 violet
 madrigal.fishbaum.de

           Ennek megfelelo"en tehat a rose elfogadja az orchid,
           violet es madrigal.fishbaum.de nevu" tavoli szamitogepek
           kereseit. Ha barmilyen mas gep probal hozzaferni a rose
           altal felkinalt LPD szolgaltatashoz, visszautasitja.

   A meret szabalyozasa

           Szabalyozhatjuk to:bbek ko:zt azt is, hogy mennyi szabad
           teru:letnek kell fennmaradnia a nyomtatasi ko:nyvtarnak
           otthont ado allomanyrendszeren. A helyi nyomtato
           ko:nyvtaraban ehhez hozzunk letre egy minfree nevu"
           allomanyt. Ide irjuk be, mennyi szabad lemezblokk (512
           byte-os egyseg a lemezen) szu:ksegeltetik egy tavolrol
           beerkezo" munka fogasahoz.

           Igy gondoskodhatunk rola, hogy a tavoli felhasznalok nem
           fogjak elto:miteni az allomanyrendszeru:nket, illetve
           ezzel egyuttal adhatunk nemi elo"nyt a helyi
           felhasznaloknak is: o"k ugyanis meg azutan is kepesek
           lesznek munkakat ku:ldeni a nyomtatonak, miutan az
           allomanyrendszeren talalhato szabad teru:let mennyisege
           mar reg a minfree allomanyban szereplo" ertek ala
           cso:kkent.

           Peldakent most a bamboo nevu" nyomtatonkhoz adjunk meg egy
           ilyen minfree allomanyt. Ehhez az /etc/printcap
           allomanybol tudjuk kideriteni a hozzatartozo nyomtatasi
           ko:nyvtarat. Lassuk tehat belo"le a bamboo bejegyzeset:

 bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
         :sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:mx#5000:\
         :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:mx#5000:\
         :if=/usr/local/libexec/psif:\
         :df=/usr/local/libexec/psdf:

           A nyomtatasi ko:nyvtarat az sd tulajdonsag hatarozza meg.
           Ugy allitjuk most be, hogy az LPD szamara a tavoli munkak
           fogadasahoz ebben a ko:nyvtarban legalabb harom megabyte
           (6144 blokk) szabad teru:letnek mindig lennie kell:

 # echo 6144 > /var/spool/lpd/bamboo/minfree

   A felhasznalok szabalyozasa

           Az /etc/printcap allomanyban megadhato rs tulajdonsag
           segitsegevel korlatozhatjuk a helyi nyomtatokhoz
           hozzaferni kepes tavoli felhasznalokat. Amikor az rs
           tulajdonsag szerepel egy helyben csatlakozo nyomtato
           leirasanal, akkor az LPD csak abban az esetben fogad el
           tavoli felhasznaloktol munkat, ha a munkat ku:ldo"
           felhasznalonak ugyanazon a neven van a helyi gepen is
           hozzaferese. Masku:lo:nben az LPD vissza fogja utasitani a
           kerest.

           Ez a tulajdonsag ku:lo:no:sen fontos olyan ko:rnyezetben,
           ahol (peldaul) to:bb szervezeti egyseg hasznal egyetlen
           ko:zo:s halozatot es bizonyos felhasznalok kepesek atlepni
           szervezeti egysegu:k hatarait, mivel ha a hozzaferest
           adunk neki a rendszereinkhez, akkor kepesek a sajat
           helyu:kro"l hasznalni ezeket. Ha ehelyett csupan a
           nyomtatoinkat es a szamitogepu:nk o:sszes ero"forrasat
           akarjuk megosztani, akkor letrehozhatunk a szamukra olyan
           "token" hozzafereseket is, amikhez nem tartozik sem
           felhasznaloi ko:nyvtar, sem pedig parancsertelmezo"
           (pontosabban a /usr/bin/false).

     --------------------------------------------------------------

  9.4.5. A nyomtato hasznalatanak nyilvantartasa

   Tehat szu:ksegu:nk lenne a nyomtatasok ko:ltsegenek elszamolasara.
   Miert is ne tennenk ilyet? A papir es a tinta bizony penzbe
   keru:l, amihez meg hozzajarulnak mas egyeb karbantartasi
   ko:ltsegek is -- a nyomtatok dugig vannak mindenfele mozgo
   alkatresszel, amelyek elo"bb-utobbi el is romlanak. Tegyu:k fel,
   hogy a nyomtatoink kapacitasa, kihasznaltsaga es karbantartasi
   ko:ltsege alapjan mar megallapitottunk egy elszamolasi egyseget
   (oldalankent, meterenkent, akarminkent). De hogyan lassunk hozza a
   nyomtatasok ko:ltsegenek tenyleges nyilvantartasahoz?

   Van egy rossz hiru:nk: az LPD nyomtatasi rendszer o:nmaga nem tud
   segiteni ebben a feladatban. A nyilvantartas nagyban fu:gg a
   hasznalt nyomtatoktol, a nyomtatott formatumoktol es nyomtato
   altalunk kiszabott ko:ltsegeito"l.

   A nyilvantartas letrehozasahoz at kell irnunk a nyomtatohoz
   tartozo szu"ro"t (a nyers szo:vegek ko:ltsegenek felszamitasahoz)
   es konverzios szu"ro"ket (a ku:lo:nfele formatumok ko:ltsegei
   miatt), amikkel aztan szamolhatjuk vagy lekerdezhetju:k a
   kinyomtatott lapokat. Egyetlen kimeneti szu"ro" hasznalataval
   szinte semmire se megyu:nk, mivel az nem kepes nyilvantartas
   vezetesere. Erro"l bo"vebb utmutatast a Szu"ro"k szakaszban
   talalhatunk.

   Altalanossagban veve ket modon vezethetu:nk nyilvantartast:

     * Az ido"szakos elszamolas a gyakoribb, mivel ez az egyszeru"bb.
       Amikor valaki kinyomtat egy munkat, a szu"ro" a nyilvantartast
       tarolo allomanyba feljegyzi a felhasznalo azonositojat, a
       gepenek nevet es a kinyomtatott oldalakat. Ezutan minden
       honapban, felevben, evben vagy akar tetszo"leges
       ido"ko:zo:nkent o:sszegyu"jtju:k a nyomtatok nyilvantartasait
       es ku:lo:n feljegyezzu:k az egyes felhasznalok nyomtatasait,
       majd benyujtjuk rola a szamlat. To:ro:lju:k az o:sszes
       naploallomanyt, es tiszta lappal kezdju:k a ko:vetkezo"
       ido"szakot.

     * Az azonnali elszamolas mar nem annyira nepszeru", mivel
       nehezebb megvalositani. Ekkor a felhasznalok mar ko:zvetlenu:l
       a nyomtatas utan megkapjak a szamlat, hasonloan a
       lemezkvotakhoz. Meg tudjuk akadalyozni ezzel azt is, hogy a
       felhasznalok tullephessek az elo"re kiszabott "nyomtatasi
       kvotajukat", amit persze menet ko:zben lehet elleno"rizni es
       allitgatni. A felhasznalok es kvotajuk nyomonko:vetesehez
       viszont szu:ksegu:nk lesz egy kis adatbaziskezelesre is.

   Az LPD nyomtatasi rendszer mind a ket modszer kivitelezesehez tud
   segitseget nyujtani, hiszen amikor szu"ro"ket allitunk be (vagyis
   szinte mindig), leheto"segu:nk van a nyilvantartast vegzo"
   programreszleteket is beilleszteni. Es ami feltetlenu:l elo"nyo:s:
   oriasi merteku" rugalmassagot ajanl fel a nyilvantartas
   megvalositasahoz. Peldaul magunk valaszthatjuk ki, hogy ido"szakos
   vagy azonnali elszamolast alkalmazunk. Meg tudjuk adni, milyen
   informaciokat ro:gzitsu:nk: felhasznaloi neveket, szamitogepek
   neveit, a munkak tipusat, vagy a kinyomtatott oldalakat, a
   felhasznalt lapok teru:letet, a nyomtatasok ido"beli igenyeit es
   igy tovabb. Ehhez mindo:ssze csak a szu"ro"ket kell modositani.

     --------------------------------------------------------------

    9.4.5.1. Nyilvantartas gyorsan es egyszeru"en

   A FreeBSD-ben egybo"l talalunk is ket programot, amivel pillanatok
   alatt ki tudunk alakitani egy egyszeru" ido"szakos elszamolasi
   rendszert. Ezek Az lpf szo:vegszu"ro" cimu" szakaszban ismertetett
   lpf es a nyomtatok nyilvantartasait tartalmazo allomanyok
   adatainak o:sszegyu"jteset es kiertekeleset vegzo" pac(8).

   Ahogy korabban mar leirtuk a szu"ro"kro"l szolo szakaszban
   (Szu"ro"k), az LPD a szo:veg- es konverzios szu"ro"ket
   parancssorbol a nyilvantartast tarolo allomany nevevel inditja el.
   Ezt a parametert a szu"ro"k aztan fel tudjak hasznalni a
   nyilvantartasok feljegyzesehez. Az allomany nevet az /etc/printcap
   allomanyban szereplo" af tulajdonsaggal tudjuk megadni, vagy
   teljes eleresi uttal, vagy pedig a nyomtatasi ko:nyvtarhoz
   viszonyitva.

   Az LPD az lpf szu"ro"t a lap szelessegenek es hosszanak
   megadasaval inditja el (ezeket az ertekeket a pw es pl
   tulajdonsagokbol szarmaztatja). Az lpf ezek felhasznalasaval meg
   tudja mondani, mennyi papirt hasznaltunk el. Miutan kiku:ldte az
   allomanyt a nyomtatora, nyilvantartasba is veszi. Ezek a tipusu
   bejegyzesek valahogy igy neznek ki:

 2.00 rose:andy
 3.00 rose:kelly
 3.00 orchid:mary
 5.00 orchid:mary
 2.00 orchid:zhang

   Minden nyomtatohoz erdemes ku:lo:n nyilvantartast vezetni, mivel
   az lpf nem tartalmaz semmilyen beepitett zarolasi megoldast, ezert
   ket lpf parhuzamos futtatasa ko:nnyen o:sszezagyvalhatja a
   ko:zo:sen hasznalt nyilvantartasok tartalmat. Az /etc/printcap
   allomanyban az af=acct tulajdonsag megadasaval ko:nnyen letre
   tudunk hozni minden nyomtatohoz ku:lo:n nyilvantartast. Ilyenkor
   minden nyomtato ko:nyvtaraban megjelenik egy acct nevu" allomany.

   Amikor elerkezu:nk a nyomtatasok kiszamlazasahoz, futtassuk le a
   pac(8) programot. Ehhez mindo:ssze annyit kell tennu:nk, hogy
   atlepu:nk az elszamolni kivant nyomtato ko:nyvtaraba es
   begepelju:k a pac parancsot. Ekkor kapunk egy ehhez hasonlo,
   dollar alapu kimutatast:

   Login               pages/feet   runs    price
 orchid:kelly                5.00    1   $  0.10
 orchid:mary                31.00    3   $  0.62
 orchid:zhang                9.00    1   $  0.18
 rose:andy                   2.00    1   $  0.04
 rose:kelly                177.00  104   $  3.54
 rose:mary                  87.00   32   $  1.74
 rose:root                  26.00   12   $  0.52

 total                     337.00  154   $  6.74

   A pac(8) a ko:vetkezo" parametereket varja:

   -Pnyomtato

           Az kiertekelendo" nyomtato neve. Ez a parameter csak akkor
           hasznalhato, ha az /etc/printcap allomanyban az af
           tulajdonsagnak teljes eleresi utat adtunk meg.

   -c

           A felhasznalok nevei helyett a fizetendo" o:sszeg szerint
           rendezze a listat.

   -m

           Hagyja figyelmen kivu:l a nyilvantartasban szereplo" gepek
           halozati neveit. Ennek hatasara az alpha gepro"l nyomtato
           smith meg fog egyezni a gamma gepro"l nyomtatoval. A
           beallitas nelku:l ez a ket felhasznalo el fog terni.

   -par

           A parameterkent megadott ar dollar ertekkel szamol
           oldalankent vagy labankent az /etc/printcap allomanyban
           megadott pc tulajdonsag erteke helyett (ami alapbol ket
           cent). Az ar lebego"pontos (valos) szamkent is megadhato.

   -r

           A rendezesi sorrend megforditasa.

   -s

           Hozzon letre egy elszamolast, majd to:ro:lje a hozza
           kapcsolodo nyilvantartasi adatokat.

   nev ...

           Csak az adott nevu" felhasznalok adatait ertekelje ki.

   A pac(8) altal alapertelmezes szerint generalt kimutatasban
   lathatjuk az egyes gepekro"l szarmazo egyes felhasznalok
   kinyomtatott oldalait. Ha neku:nk viszont nem szamit, hogy honnan
   ku:ldtek a kereseket (mivel barhonnan lehet ku:ldeni), akkor a pac
   -m paranccsal az alabbi tablazatot keszitetthetju:k el:

   Login               pages/feet   runs    price
 andy                        2.00    1   $  0.04
 kelly                     182.00  105   $  3.64
 mary                      118.00   35   $  2.36
 root                       26.00   12   $  0.52
 zhang                       9.00    1   $  0.18

 total                     337.00  154   $  6.74

   Itt megtalaljuk a tenylegesen kifizetendo" o:sszegeket is, amik
   kiszamitasahoz a pac(8) az /etc/printcap allomany pc tulajdonsagat
   hasznalja (ez alapbol 200, avagy 2 cent oldalankent). Ezzel a
   tulajdonsaggal tehat egy cent szazadreszeben merve tudjuk megadni
   az oldalakenti vagy labankenti arakat. Ezt a beallitast
   termeszetesen a pac(8) -p opciojaval felu:l tudjuk biralni. Arra
   azonban vigyazzunk, hogy a -p utan dollarban kell megadnunk az
   arat. Emiatt tehat a

 # pac -p1.50

   parancs szerint minden egyes oldal masfel dollarba fog keru:lni.
   Ezzel az opcioval aztan alaposan megdo:nthetju:k az arakat.

   Vegezetu:l megemlitju:k, hogy a pac -s parancs az altala
   letrehozott elszamolast egy ku:lo:n allomanyba menti, amelynek a
   neve nagyjabol megegyezik a nyilvantartast vegzo"evel, de _sum-ra
   (mint "summary", azaz elszamolas) vegzo"dik. Ezutan nullazza a
   nyilvantartast. Amikor a pac(8) programot ujra lefuttatjuk, ujbol
   beolvassa a korabban elmentett elszamolasokat, majd hozzaszamolja
   a to:bbit a hagyomanyos nyilvantartasi adatokbol.

     --------------------------------------------------------------

    9.4.5.2. Hogyan tudjuk szamolni a kinyomtatott lapokat?

   A nyilvantartas pontos vezetesehez meg tavolrol is valamilyen
   modon meg kell tudnunk mondani, hogy mennyi lapot hasznalt egy
   nyomtatasi munka vegrehajtasa. Ez a nyomtatas nyilvantartasanak
   egyik alapveto" problemaja.

   A nyers szo:vegek eseteben ez nem is annyira bonyolult:
   egyszeru"en szamoljuk o:ssze, hogy a munkaban mennyi sor
   kinyomtatasara lesz szu:kseg es vessu:k o:ssze ezt a nyomtato
   altal lapokent kinyomtatott sorok szamalva. Ne felejtsu:k el
   szamitasba venni a szo:vegben felbukkano to:rlesek hatasat, vagy
   az olyan hosszu sorokat, amelyek a valosagban to:bb sorban fognak
   megjelenni.

   Viszont (Az lpf szo:vegszu"ro" cimu" szakaszban bemutatott) lpf
   program ezeket mind lekezeli a nyilvantartasok keszitese soran.
   Ezert ha szinten egy nyilvantartast vezetni kepes szo:vegszu"ro"t
   akarunk irni, akkor mindenkeppen erdemes megneznu:nk az lpf
   forraskodjat.

   De hogyan banjunk el a to:bbi formatummal?

   Nos, a DVI-Laserjet es DVI-PostScript ko:zti atalakitasok eseten a
   kinyomtatott lapok szamanak megallapitasahoz meg kell tanitanunk a
   szu"ro"nket ertelmezni a dvilj vagy dvips parancsok kimenetet.
   Ugyanezt meg tudjuk tenni mas formatumok es mas konverzios
   programok hasznalata soran is.

   Azonban ezek a modszerek nem veszik szamitasba, hogy a nyomtato
   egyaltalan ki is nyomtatta-e az o:sszes elku:ldo:tt oldalt. Sok
   minden to:rtenhet meg addig, peldaul beragadhat a papir, kifogyhat
   a tinta vagy akar felrobbanhat a nyomtato -- a felhasznalonak
   etto"l fu:ggetlenu:l meg fizetnie kell.

   Mit lehet ilyenkor tenni?

   A preciz nyilvantartasnak csak egyetlen biztos modja letezik.
   Olyan nyomtatot szerezzu:nk be, amely kepes megmondani, mennyi
   lapot hasznalt el a nyomtatas soran, majd egy ilyet
   csatlakoztassunk soros porton vagy halozaton keresztu:l. Szinte
   majdnem az o:sszes PostScript nyomtato tamogatja ezt a
   leheto"seget, ahogy sok mas gyartmany es tipus is (peldaul a
   halozati Imagen lezernyomtatok). A nyomtatohoz tartozo szu"ro"t
   ehhez ugy kell modositani, hogy lekerdezzu:k a kinyomtatott lapok
   szamat a nyomtatas utan es kizarolag erre az ertekre alapozva
   keszitu:nk nyilvantartast. Itt nincs szu:kseg sem a sorok
   szamolasara, sem pedig az allomanyok (ko:nnyen elhibazhato)
   atvizsgalasara.

   Termeszetesen lehetu:nk nagylelku"ek es ne szamitsunk fel semmit a
   nyomtatasert.

     --------------------------------------------------------------

9.5. A nyomtatok hasznalata

   Ebbo"l a szakaszbol megtudhatjuk, hogyan hasznaljuk a FreeBSD-n
   beallitott nyomtatonkat. Ro:viden most itt foglaljuk o:ssze az ide
   tartozo felhasznaloi parancsokat:

   lpr(1)

           Munkakat nyomtat ki.

   lpq(1)

           Elleno"rzi a nyomtatasi sorokat.

   lprm(1)

           Munkakat vesz ki a nyomtatasi sorokbol.

   Ezek mellett letezik meg a nyomtatok es a hozzajuk tartozo sorok
   iranyitasara alkalmas parancs is, az lpc(8), amelyre a A nyomtatok
   vezerlese cimu" szakaszban fogunk reszleteiben kiterni.

   A nyomtatok/sorok /etc/printcap allomanyban szereplo" nevu:k
   szerinti megadasahoz az lpr(1), lprm(1) es lpq(1) parancsok
   ko:zu:l mindegyik elfogadja a -P nyomtatonev parametert. Ennek
   ko:szo:nheto"en kepesek vagyunk munkakat ku:ldeni, eltavolitani
   vagy felu:gyelni az egyes nyomtatok soraiban. Ha nem hasznaljuk a
   -P kapcsolot, akkor az erintett nyomtato a PRINTER ko:rnyezeti
   valtozo altal meghatarozott lesz. Vegu:l, ha a PRINTER nevu"
   ko:rnyezeti valtozot sem allitottuk be, akkor a parancsok
   alapertelmezett modon az lp nevu" nyomtatot fogjak hasznalni.

   A tovabbiakban az alapertelmezett nyomtato kifejezes a PRINTER
   ko:rnyezeti valtozo altal megnevezett nyomtatora fog utalni,
   illetve ha ezt nem definialtuk, akkor az lp nevu" nyomtatora.

     --------------------------------------------------------------

  9.5.1. Munkak nyomtatasa

   Az allomanyok kinyomtatasahoz irjuk be:

 % lpr allomanynev ...

   Ezzel kinyomtatjuk az o:sszes felsorolt allomanyt az
   alapertelmezett nyomtaton. Ha nem adunk meg allomanyokat, akkor az
   lpr(1) parancs a szabvanyos bemenetro"l varja a nyomtatando
   adatokat. Peldaul ezzel a paranccsal nehany igen fontos
   rendszerallomanyt tudunk kinyomtatni:

 % lpr /etc/host.conf /etc/hosts.equiv

   A nyomtato megvalasztasahoz igy adjuk ki a parancsot:

 % lpr -P nyomtatonev allomanynev ...

   Ez a pelda kinyomtatja az aktualis ko:nyvtar reszletes listajat a
   rattan nevu" nyomtaton:

 % ls -l | lpr -P rattan

   Mivel egyetlen allomanyt sem adtunk meg az lpr(1) programnak, az
   lpr parancs a nyomtatando adatokat a szabvanyos bemenetro"l varja,
   ami jelen esetu:nkben a ls -l parancs kimenete.

   Az lpr(1) ezeken felu:l meg kepes ertelmezni rengeteg formazasra,
   konverziora, masolatok keszitesere stb. utasito kapcsolot is.
   Erro"l bo"vebben a Nyomtatasi beallitasok cimu" szakaszban lesz
   szo.

     --------------------------------------------------------------

  9.5.2. Munkak felu:gyelete

   Amikor az lpr(1) programmal nyomtatunk, az o:sszes nyomtatandonk
   egy "nyomtatasi munkanak" nevezett csomagba keru:l, ami pedig az
   LPD nyomtatasi rendszerebe. Minden nyomtatohoz tartozik egy
   nyomtatasi sor, ahol reszu:nkro"l es masok altal eddig kiadott
   munkakat talalhatjuk. A nyomtato ezutan ezeket a munkakat erkezesi
   sorrend szerint dolgozza fel.

   Az alapertelmezett nyomtatohoz tartozo sor allapotat az lpq(1)
   programmal tudjuk megnezni. Ha egy adott nyomtatora vagyunk
   kivancsiak, akkor hasznaljuk a -P kapcsolot. Peldaul a

 % lpq -P bamboo

   parancs a bamboo nevu" nyomtato sorat fogja megmutatni.
   Peldakeppen lassuk is ilyen esetben az lpq parancs eredmenyet:

 bamboo is ready and printing
 Rank   Owner    Job  Files                              Total Size
 active kelly    9    /etc/host.conf, /etc/hosts.equiv   88 bytes
 2nd    kelly    10   (standard input)                   1635 bytes
 3rd    mary     11   ...                                78519 bytes

   Itt harom munkat lathatunk a bamboo nyomtatasi soraban. Az elso"
   munka, amit a kelly nevu" felhasznalo ku:ldo:tt, a 9-es
   "munkaszamot" kapta. A nyomtatohoz tartozo o:sszes munka kap egy
   ilyen egyedi szamot. To:bbnyire nyugodtan figyelmen kivu:l
   hagyhatjuk, azonban szu:ksegu:nk lehet ra, ha eppen to:ro:lni
   kivanjuk a hozzatartozo munkat. Ezzel majd a Munkak eltavolitasa
   cimu" szakaszban foglalkozunk.

   A kilences szamu munka ket allomanyt tartalmaz: ha a parancssorban
   to:bb allomanyt adunk meg az lpr(1) programnak, akkor az egy
   munkanak szamit. Ez egyben a pillanatnyilag aktiv munka (ezt a
   "Rank" oszlopban szereplo" active ertek jelzi), tehat a nyomtato
   eppen ezzel foglalatoskodik. A masodik munka ko:zvetlenu:l az
   lpr(1) szabvanyos bemenetere erkezett. A harmadik a mary nevu"
   felhasznalotol jo:tt, es ez egy nagyobbacska munka. A nyomtatando
   allomany eleresi utvonala tulsagosan hosszu ahhoz, hogy ki
   lehessen irni, ezert az lpr(1) csak harom pontot jelez ki
   helyette.

   Az lpq(1) kimenetenek elso" sorai is nagyon hasznos informaciot
   tartalmaz: megtudhatjuk, mit csinal eppen (legalabb is az LPD
   szerint) a nyomtato.

   A -l kapcsoloval az lpq(1) parancstol kerhetu:nk sokkal
   reszletesebb listazast is. Peldaul igy nezhet ki a lpq -l parancs
   eredmenye:

 waiting for bamboo to become ready (offline ?)
 kelly: 1st                               [job 009rose]
        /etc/host.conf                    73 bytes
        /etc/hosts.equiv                  15 bytes

 kelly: 2nd                               [job 010rose]
        (standard input)                  1635 bytes

 mary: 3rd                                [job 011rose]
       /home/orchid/mary/research/venus/alpha-regio/mapping 78519 bytes

     --------------------------------------------------------------

  9.5.3. Munkak eltavolitasa

   Ha meggondoltuk volna magunkat egy munka kinyomtatasarol, az
   lprm(1) paranccsal meg to:ro:lni tudjuk a sorbol. Az lprm(1)
   gyakran meg a nyomtatas alatt allo munkat is kepes eltavolitani,
   azonban elo"fordulhat, hogy a munka egy resze mar nyomtatasra
   keru:lt.

   Az alapertelmezett nyomtato sorabol csak ugy tudunk munkakat
   to:ro:lni, ha elo"szo:r az lpq(1) segitsegevel megkeressu:k a
   szamukat. Ha ez megvan, irjuk be:

 % lprm munkaszam

   Adott nyomtatorol a -P kapcsolo segitsegevel tudunk munkakat
   to:ro:lni. A most ko:vetkezo" parancs a bamboo nevu" nyomtatorol
   to:rli a 10-es szamu munkat:

 % lprm -P bamboo 10

   Az lprm(1) parancs eseten meg hasznalhatoak az alabbi ro:viditesek
   is:

   lprm -

           Eltavolitja a hozzank tartozo az o:sszes munkat (az
           alapertelmezett nyomtaton).

   lprm felhasznalo

           Eltavolitja az adott felhasznalohoz tartozo o:sszes munkat
           (az alapertelmezett nyomtaton). Kizarolag a rendszergazdak
           kepesek erre, a rendes felhasznalok csak a sajat munkaikat
           to:ro:lhetik.

   lprm

           A munka szama, a felhasznaloi nev vagy a -megadasa nelku:l
           az lprm(1) to:rli az alapertelmezett nyomtaton eppen aktiv
           munkat, amennyiben az a mienk. Csak a rendszergazdak
           kepesek barmilyen aktiv munkat to:ro:lni.

   Ha kiegeszitju:k az iment emlitett ro:viditeseket a -P parameter
   megadasaval, akkor az alapertelmezett nyomtato helyett barmelyik
   masikat is hasznalhatjuk. Peldaul ez a parancs eltavolitja az
   aktualis felhasznalo o:sszes munkajat a rattan nevu" nyomtaton:

 % lprm -P rattan -

     Megjegyzes: Halozati ko:rnyezetben az lprm(1) csak arrol a
     gepro"l engedi to:ro:lni a munkakat, amelyro"l ku:ldtek ezeket,
     meg abban az esetben is, amikor ugyanaz a nyomtato mas
     szamitogepekro"l is elerheto". A ko:vetkezo" parancssorozat ezt
     igyekszik szemleltetni:

 % lpr -P rattan myfile
 % rlogin orchid
 % lpq -P rattan
 Rank   Owner      Job  Files                          Total Size
 active seeyan     12    ...                           49123 bytes
 2nd    kelly      13   myfile                         12 bytes
 % lprm -P rattan 13
 rose: Permission denied
 % logout
 % lprm -P rattan 13
 dfA013rose dequeued
 cfA013rose dequeued
        

     --------------------------------------------------------------

  9.5.4. Tul a nyers szo:vegen: nyomtatasi beallitasok

   Az lpr(1) parancs szamos olyan beallitast enged, amelyekkel a
   szo:vegek formazasat, grafikak atalakitasat illetve mas
   allomanyformatumok hasznalatat, masolatok kesziteset, munkak
   iranyitasat es meg sok minden mast el tudunk vegezni. Ebben a
   szakaszban pontosan ezekro"l a kapcsolokrol lesz szo.

     --------------------------------------------------------------

    9.5.4.1. Formazasi es konverzios beallitasok

   Az lpr(1) most ko:vetkezo" opcioi a munkakban talalhato allomanyok
   formazasat vezerlik. Akkor hasznaljuk ezeket a beallitasokat, ha a
   munka nem tartalmaz nyers szo:veget, vagy ha nyers szo:veget
   akarunk formazni az pr(1) segedprogrammal.

   Peldaul az alabbi parancs kinyomtat egy halaszati-jelentes.dvi
   nevu" (a TeX betu"szedu" rendszerbo"l mar jol ismert) DVI
   allomanyt a bamboo nevu" nyomtaton:

 % lpr -P bamboo -d halaszati-jelentes.dvi

   Ezek a beallitasok a munkaban szereplo" minden egyes allomanyra
   vonatkoznak, ezert nem keverhetju:k (peldaul) a DVI es ditroff
   formatumu allomanyokat egy munkan belu:l. Ehelyett ku:lo:n
   munkakban kell elku:ldenu:nk az eltero" formatumu allomanyokat, es
   mindegyik munkahoz ku:lo:n konverzios beallitasokat kell
   megadnunk.

     Megjegyzes: A -p es -T kapcsolok kivetelevel az itt felsorolt
     o:sszes beallitasnak a kivalasztott nyomtatohoz szu:ksege van a
     megfelelo" konverzios szu"ro"re. Peldaul a -d opcio
     hasznalatahoz kell egy konverzios szu"ro" a DVI formatumhoz. A
     Konverzios szu"ro"k cimu" szakasz erro"l ad bo"vebb
     tajekoztatast.

   -c

           Cifplot allomanyok nyomtatasa.

   -d

           DVI allomanyok nyomtatasa.

   -f

           FORTRAN forras nyomtatasa.

   -g

           Plot formatumu adatok nyomtatasa.

   -i szam

           A kinyomtatott szo:veg behuzasanak no:velese a szam
           ertekevel. Ha nem adjuk meg a szamot, akkor ennek erteke 8
           lesz. Ez a beallitas csak bizonyos konverzios szu"ro"kkel
           mu"ko:dik.

             Megjegyzes: Ne hagyjunk helyet az -i es a szam ko:zo:tt.

   -l

           A szo:veg formazas nelku:li nyomtatasa,
           vezerlo"karakterekkel egyu:tt.

   -n

           Ditroff (eszko:zfu:ggetlen troff) adat nyomtatasa.

   -p

           Nyomtatas elo"tt a szo:veg formazasa a pr(1) programmal.
           Lasd pr(1).

   -T cim

           Az allomany neve helyett a fejlecben a cimet jeleniti meg
           a pr(1). Ennek a beallitasnak csak a -p opcioval egyu:tt
           van hatasa.

   -t

           Troff adat nyomtatasa.

   -v

           Raszteres adatok nyomtatasa.

   Vegyu:nk az imentiekre egy peldat. A ko:vetkezo" parancs az ls(1)
   szepen megformazott man oldalat nyomtatja ki az alapertelmezett
   nyomtaton:

 % zcat /usr/share/man/man1/ls.1.gz | troff -t -man | lpr -t

   A zcat(1) kito:mo:riti az ls(1) man oldalanak forrasat es atadja a
   troff(1) parancsnak, ami ebbo"l letrehoz a GNU troff formatumanak
   megfelelo" kimenetet es tovabbadja az lpr(1) parancsnak, ami
   vegu:l elku:ldi a munkat az LPD nyomtatasi rendszernek. Mivel az
   lpr(1) parancsnak megadtuk az -t kapcsolot, a nyomtatasi rendszer
   a GNU troff formatumban erkezo" adatokat magatol at fogja
   alakitani olyan formatumra, amit a nyomtato is kepes lesz
   megerteni.

     --------------------------------------------------------------

    9.5.4.2. Munkak kezelese

   Az lpr(1) most felsorolando beallitasaival az LPD rendszert arra
   tudjuk utasitani, hogy a munkat ku:lo:nleges modon kezelje:

   -# peldanyszam

           Egyetlen peldany helyett hozzon letre peldanyszam szamu
           peldanyt a munkaban talalhato o:sszes allomanybol. A
           rendszergazda a nyomtato kimelese erdekeben ezt a
           leheto"seget letilthatja, amivel inkabb a fenymasolo
           hasznalatara o:szto:nzi a felhasznalokat. Lasd A masolatok
           szamanak szabalyozasa szakasz.

           A beallitas illusztralasakent most az alapertelmezett
           nyomtaton elo"szo:r nyomtassuk ki harom peldanyt a
           parser.c, majd ezutan a parser.h allomanyokbol:

 % lpr -#3 parser.c parser.h

   -m

           A rendszer ku:ldjo:n levelet a munka teljesitese utan.
           Ekkor az LPD a munka elvegzese utan levelet ku:ld a helyi
           postafiokunkba. A levelben kifejti, hogy sikeres volt-e a
           nyomtatas, vagy esetleg valamilyen hiba keletkezett, es ha
           hiba to:rtent, akkor pontosan mi is volt az.

   -s

           Ne masolja ko:zvetlenu:l az allomanyokat a nyomtatasi
           ko:nyvtarba, hanem keszitsen hozzajuk szimbolikus
           linkeket.

           Egy nagyobb munka nyomtatasa eseten javasolt hasznalni ezt
           a kapcsolot. Ezzel a megoldassal helyet tudunk sporolni a
           nyomtatasi ko:nyvtarban (amikor a munkank ko:nnyen
           megtelitheti a nyomtatasi ko:nyvtarat tarolo
           allomanyrendszert). Emellett ido"t is takaritunk meg,
           mivel az LPD-nek nem kell a munka minden egyes bitjet
           atmasolni a nyomtatasi ko:nyvtarba.

           Van azonban egy hatranya: mivel az LPD ekkor ko:zvetlenu:l
           az eredeti allomanyra fog hivatkozni, ezert a nyomtatas
           befejezeseig azt nem modosithatjuk vagy to:ro:lhetju:k.

             Megjegyzes: Ha egy tavoli nyomtatonak ku:ldju:k a
             munkat, akkor az LPD a helyi es a tavoli szamitogep
             ko:zo:tt megis kenytelen lesz atmasolni a munkat, igy a
             -s kapcsolo egyedu:l csak a helyi nyomtatasi
             ko:nyvtarban fog helyet sporolni. Etto"l eltekintve meg
             ilyenkor is hasznunkra valhat.

   -r

           To:ro:lje a munkaban szereplo" allomanyokat, miutan
           atmasolta ezeket a nyomtatasi ko:nyvtarba, vagy miutan a
           -s kapcsolo hasznalataval kinyomtatta ezeket. Nagy
           ko:ru:ltekintessel hasznaljuk!

     --------------------------------------------------------------

    9.5.4.3. A fejleclapok beallitasai

   Az lpr(1) most ko:vetkezo" beallitasai a munkak fejleceben
   megjeleno" szo:vegekre vannak hatassal. Igy ha letiltottuk a
   fejleclapok hasznalatat, akkor ezek a kapcsolok lenyegeben semmit
   sem allitanak. A Fejleclapok cimu" szakaszbol tudhatunk meg
   to:bbet ezek beallitasarol.

   -C szo:veg

           A fejleclapon megjeleno" halozati nev helyett a szo:veg
           fog szerepelni. A halozati nev altalaban annak a gepnek a
           neve, ahonnan a munkat ku:ldtek.

   -J szo:veg

           A fejleclapon megjeleno" munka neve helyett a szo:veg fog
           megjelenni. A munka neve altalaban a benne szereplo" elso"
           allomany nevevel egyezik meg, ha a szabvanyos bemenetro"l
           nyomtatunk, akkor egyszeru"en csak stdin.

   -h

           Ne nyomtasson fejleclapot.

             Megjegyzes: Bizonyos helyeken elo"fordulhat, hogy ennek
             a kapcsolonak nincs semmilyen hatasa a fejleclapok
             letrehozasanak modszerebo"l fakadoan. A reszleteket lasd
             a Fejleclapok szakaszban.

     --------------------------------------------------------------

  9.5.5. A nyomtatok vezerlese

   A nyomtatoink rendszergazdajakent neku:nk kell telepitenu:k,
   u:zembe helyeznu:nk es kiprobalnunk ezeket. Az lpc(8) parancs
   hasznalataval meg jobban kepesek vagyunk kapcsolatba lepni velu:k.
   Az lpc(8) paranccsal:

     * el tudjuk inditani es le tudjuk allitani a nyomtatokat;

     * be- es ki tudjuk kapcsolni a nyomtatasi soraikat;

     * at tudjuk rendezni az egyes sorokban talalhato munkakat.

   Elo"szo:r is essen par a fogalmakrol: ha a nyomtato leallt, akkor
   semmit sem fog kinyomtatni a sorabol. A felhasznalok tovabbra is
   kepesek munkakat ku:ldeni, amik azonban egeszen addig fognak
   varakozni, amig a nyomtatot el nem inditjuk vagy a sorat ki nem
   u:ritju:k.

   Ha egy sort kikapcsolunk, akkor (a root kivetelevel) egyetlen
   felhasznalo sem kepes munkakat ku:ldeni a nyomtatonak. A
   bekapcsolt sorok kepesek csak munkat fogadni. A nyomtato
   elindithato kikapcsolt sorral is, ilyenkor egeszen addig folytatja
   a munkak kinyomtatasat, amig a sor ki nem u:ru:l.

   Altalanosan elmondhato, hogy az lpc(8) parancs hasznalatahoz a
   root felhasznalo jogosultsagaira van szu:ksegu:nk. Az lpc(8)
   parancsot minden mas esetben csak a nyomtato allapotanak
   elleno"rzesere vagy a megakadt nyomtato ujrainditasara
   hasznalhatjuk.

   Foglaljuk ro:viden o:ssze az lpc(8) parancsait. A legto:bb parancs
   kiadasahoz meg szu:kseges egy nyomtatonev parameter megadasa is,
   amivel megnevezzu:k az utasitani kivant nyomtatot. Helyette
   hasznalhato az all szo is, amivel az /etc/printcap allomanyban
   szereplo" o:sszes nyomtatot egyszerre utasithatjuk.

   abort nyomtatonev

           Az aktualis munka megszakitasa es a nyomtato leallitasa.
           Ha a nyomtatasi sort meg nem kapcsoltuk ki, a felhasznalok
           ku:ldhetnek tovabbi munkakat.

   clean nyomtatonev

           A nyomtato ko:nyvtarabol to:ro:lju:k a regi allomanyokat.
           Esetenkent adodhat, hogy bizonyos munkak allomanyait nem
           takaritotta el az LPD, ku:lo:no:sen abban az esetben,
           amikor a nyomtatas vagy az adminisztralas soran
           keletkezett valamilyen hiba. Ez a parancs segit megtalalni
           a nyomtatasi ko:nyvtarbol mar kikopott allomanyokat es
           to:rli ezeket.

   disable nyomtatonev

           Az ujonnan erkezo" munkak besorolasanak kikapcsolasa. Ha a
           nyomtato meg mu"ko:dik, akkor folytatni fogja a sorban meg
           bennmaradt munkak nyomtatasat. A rendszergazda (a root)
           meg a kikapcsolt sorok eseten is ku:ldhet munkakat.

           Ez a parancs valojaban akkor hasznos, ha egy uj nyomtato
           vagy egy uj szu"ro" mu"ko:deset probalgatjuk: ilyenkor
           erdemes kikapcsolni a nyomtatasi sort es root
           felhasznalokent munkakat ku:ldeni. A to:bbi felhasznalo a
           teszteles befejezeseig nem tud majd munkakat ku:ldeni,
           vagyis egeszen addig, amig a nyomtatasi sort vissza nem
           kapcsoljuk az enable paranccsal.

   down nyomtatonev u:zenet

           A nyomtato u:zemen kivu:l helyezese. Lenyegeben megegyezik
           egy disable es utana egy stop parancs kiadasaval. Az
           u:zenet akkor jelenik meg, amikor a valaki megprobalja
           lekerdezni a nyomtato allapotat az lpc status paranccsal,
           vagy amikor megnezi a nyomtatasi sorat az lpq(1)
           paranccsal.

   enable nyomtatonev

           A nyomtatohoz tartozo nyomtatasi sor bekapcsolasa. A
           felhasznalok ezutan mar kepesek lesznek a nyomtatonak
           munkakat ku:ldeni, azonban egeszen addig nem nyomtatodik
           ki semmi, amig a nyomtato el nem inditjuk.

   help parancsnev

           Megmutatja a parancsnev parancshoz tartozo sugot. A
           parancsnev megadasa nelku:l a rendelkezesre allo parancsok
           listajat kapjuk meg.

   restart nyomtatonev

           Elinditja a nyomtatot. A felhasznalok ezt a parancsot
           tudjak hasznalni abban az esetben, amikor valamilyen
           megmagyarazhatatlan okbol az LPD mu"ko:dese megall,
           viszont ezzel nem tudjak elinditani a stop vagy down
           parancsokkal leallitott nyomtatot. A restart parancs
           megegyezik az abort es a start egymas utani kiadasaval.

   start nyomtatonev

           Elinditja a nyomtatot, es a nyomtato nekilat kinyomtatni a
           soraban levo" munkakat.

   stop nyomtatonev

           Leallitja a nyomtatot, es a nyomtato az aktualis munka
           befejezese utan mar nem kezd neki ujabbnak. Etto"l
           fu:ggetlenu:l a felhasznalok meg tovabbra is kepesek
           munkakat ku:ldeni a nyomtatasi soraba.

   topq nyomtatonev munka-vagy-felhasznalonev

           Atrendezi a nyomtatonev nevu" nyomtato sorat ugy, hogy a
           megadott azonositoju munkat vagy a megadott
           felhasznalonevhez tartozo munkakat a sor elejere teszi.
           Ennel a parancsnal nyomtatonevnek nem adhatjuk meg az all
           erteket.

   up nyomtatonev

           U:zembe helyezi a nyomtatot, tulajdonkeppen a down parancs
           ellentete. Megegyezik egy egymas utan kiadott start es
           enable paranccsal.

   Az lpc(8) a fenti parancsokat a parancssorbol fogadja el. Ha itt
   nem adunk meg neki semmilyen parancsot, akkor az lpc(8) interaktiv
   modba valt, ahol ugyanezeket a parancsokat adhatjuk ki, egeszen az
   exit, quit parancsok vagy az allomanyvege jelzes begepeleseig.

     --------------------------------------------------------------

9.6. Mas nyomtatasi rendszerek

   Ha derekasan vegigolvastuk eddig ezt a fejezetet, akkor mostanra
   mar valoszinu"leg mindent tudunk a FreeBSD-ben talalhato LPD
   nyomtatasi rendszerro"l. Ezzel egyu:tt tisztaban vagyunk a
   hianyossagaival is, aminek kapcsan termeszetes modon felmeru:lhet
   bennu:nk a kerdes: "Milyen mas (FreeBSD-vel is mu"ko:dni kepes)
   nyomtatasi rendszerek leteznek meg?"

   LPRng

           Az LPRng, aminek jelentese "LPR Next Generation" (Az LPR
           ko:vetkezo" generacioja), a PLP teljesen ujrairt
           valtozata. Patrick Powell es Justin Mason (a PLP eredeti
           karbantartoja) egyu:ttes munkajanak gyu:mo:lcse az LPRng.
           Az LPRng honlapja: http://www.lprng.org/.

   CUPS

           A CUPS, vagy mas neven a "Common UNIX Printing System"
           (Ko:zo:s UNIX-os nyomtatasi rendszer), egy hordozhato
           nyomtatasi reteg nyujt a UNIX-alapu operacios rendszerek
           szamara. Az Easy Software Products fejlesztese es szinte
           az o:sszes UNIX gyarto es felhasznalo szemeben elfogadott
           szabvanyos nyomtatasi rendszer.

           A CUPS a nyomtatasi munkak es sorok kezeleset az
           internetes nyomtatasi protokollon (Internet Printing
           Protocol, IPP) hasznalataval oldja meg. Cso:kkentett
           kepessegekkel ugyan, de a sornyomtato demon (Line Printer
           Daemon, LPD), szerveru:zenet-blokk (Server Message Block,
           SMB), es AppSocket (mas neven JetDirect) protokollokat is
           ismeri. A CUPS a komolyabb UNIX-os nyomtatasi feladatokhoz
           ezeken felu:l meg a halozati nyomtatok ko:zti valasztast
           es PostScript nyomtatok leirasan (PostScript Printer
           Description, PPD) alapulo nyomtatasi beallitasokat is
           tamogatja.

           A CUPS honlapja: http://www.cups.org/.

     --------------------------------------------------------------

9.7. Hibakereses

   Miutan az lptest(1) programmal elvegeztu:nk nehany egyszeru"
   probat, a vart helyett a ko:vetkezo"k egyiket kaphatuk
   eredmenyu:l:

   Egy kis ido" utan minden remeku:l mu"ko:do:tt, vagy nem dobta ki
   az egesz lapot.

           A nyomtato nyomtatott egy keveset, aztan egy ideig
           csendben maradt es nem csinalt semmit. Ilyenkor a
           nyomtatnivalok megjelenesehez minden bizonnyal meg kell
           nyomnunk a nyomtaton levo" "PRINT REMAINING" vagy "FORM
           FEED" feliratu gombokat.

           Ebben az esetben a nyomtato valoszinu"leg meg arra vart,
           hogy meg a nyomtatas megkezdese elo"tt erkezik valamilyen
           tovabbi adat. Etto"l a gondtol ugy szabadulhatunk meg, ha
           beallitunk egy szo:vegszu"ro"t, amely minden (szu:kseges)
           esetben ku:ld egy "FORM FEED" (lapdobas) jelzest is a
           nyomtatonak. Ez kell altalaban ahhoz, hogy a szo:veg a
           nyomtato belso" puffereben megmaradt resze azonnal
           kinyomtatodjon. Akkor is a javunkra valhat ez, ha minden
           egyes munkat ku:lo:n lapon akarunk kezdeni, mivel igy a
           ko:vetkezo" munka sosem ko:zvetlenu:l ott kezdo"dik, ahol
           az elo"zo" munka befejezte a nyomtatast.

           A /usr/local/libexec/if-simple szu"ro" helyett a
           ko:vetkezo" szkript hasznalhataval tudunk minden munka
           utan elku:ldeni egy lapdobast:

 #!/bin/sh
 #
 # if-simple - Egyszeru" lpd szo:vegszu"ro"
 # Helye: /usr/local/libexec/if-simple
 #
 # Egyszeru"en atmasolja a szabvany bemenetet a szabvany kimenetre,
 # es figyelmen kivu:l hagyja az o:sszes to:bbi parametert.
 # Minden nyomtatasi munka utan ku:ld egy lapdobast (\f).

 /bin/cat && printf "\f" && exit 0
 exit 2

   "Lepcso"sen" jelentek meg a sorok.

           Ekkor a ko:vetkezo"t latjuk a lapon:

 !"#$%&'()*+,-./01234
                 "#$%&'()*+,-./012345
                                  #$%&'()*+,-./0123456

           Az un. lepcso"hatas aldozatava valtunk, amelyet a
           sorto:rest jelzo" karakter eltero" ertelmezesei okoznak. A
           UNIX stilusu operacios rendszerek erre mindo:ssze egyetlen
           karaktert hasznalnak: ez a 10-es kodu ASCII karakter
           (sordobas, Line Feed, LF). Az MS-DOS, OS/2(R) es masok
           pedig ket karakterrel oldjak meg ezt a feladatot: a 10-es
           es 13-as kodu (kocsivissza, Carriage Return, CR) ASCII
           karakterekkel. A sorto:reseknel sok nyomtato az MS-DOS
           szokasait ko:veti.

           Amikor a FreeBSD-vel nyomtatunk, akkor csak egyetlen
           karaktert hasznalunk sorto:resre. Ennek lattan a nyomtato
           lepteti a sort, azonban a fej vizszintes poziciojat nem
           valtoztatja meg a ko:vetkezo" sor nyomtatasanak
           megkezdesekor. Erre lenne a kocsivissza karakter, vagyis
           ennek hatasara fogja a nyomtato a papir bal oldalara
           visszaallitani a ko:vetkezo" nyomtatando karakter
           poziciojat.

           A FreeBSD igy szeretne utasitani a nyomtatot:

           A nyomtato kocsivisszat  A nyomtato visszalepteti a  
           kap                      poziciot                    
           A nyomtato sordobast kap A nyomtato uj sort kezd     

           Nehany modszer ennek kivaltasara:

              * A nyomtaton talalhato kapcsolok vagy vezerlo"panel
                segitsegevel probaljuk meg atallitani a
                vezerlo"karakterek nyomtato szerinti ertelmezeset.
                Keressu:k meg a nyomtato keziko:nyveben, hogyan
                tudjuk ezt megcsinalni.

                  Megjegyzes: Ha a FreeBSD mellett mas operacios
                  rendszerekkel is hasznalni akarjuk a nyomtatot,
                  akkor azok inditasa elo"tt mindig at kell allitani
                  a nyomtatot a megfelelo" ertelmezes alkalmazasara.
                  Ilyenkor valoszinu"leg a lentebb szereplo"
                  megoldasokat reszesitju:k majd inkabb elo"nyben.

              * Allitsuk be ugy a FreeBSD soros vonali meghajtojat,
                hogy magatol alakitsa at az LF karaktereket CR+LF
                parokka. Termeszetesen ez a megoldas csak a soros
                portra csatlakozo nyomtatok eseteben mu"ko:dhet.
                Ehhez az /etc/printcap allomanyban a nyomtato
                leirasanal az ms# tulajdonsagnal adjuk meg az onlcr
                modot.

              * Ku:ldju:nk olyan kodot a nyomtatonak, amelynek
                hatasara ideiglenesen mashogy fogja kezelni az LF
                karaktereket. Nezzu:k meg a nyomtatohoz mellekelt
                utmutatoban, hogy milyen kodokat tudunk ilyen celra
                hasznalni. Ha talaltunk ilyen kodot, akkor irjuk at
                ugy a hozzatartozo szo:vegszu"ro"t, hogy a munkak
                elo"tt mindig elku:ldju:k azt.

                Most bemutatjuk egy olyan szo:vegszu"ro" kodjat,
                amely a Hewlett-Packard PCL kodjait ismero"
                nyomtatokhoz keszu:lt. Ebben a szu"ro"ben elo"szo:r
                kiadjuk, hogy az LF karaktereket LF es CR karakterek
                kombinaciojanak tekintse a nyomtato, majd elku:ldju:k
                magat a munkat, es a munka utolso lapja utan pedig
                elku:ldu:nk egy lapdobast. Szinte az o:sszes Hewlett
                Packard nyomtatoval mu"ko:dnie kell.

 #!/bin/sh
 #
 # hpif - Egyszeru" lpd bemeneti szu"ro" a HP-PCL alapu nyomtatokhoz
 # Helye: /usr/local/libexec/hpif
 #
 # Egyszeru"en atmasolja a szabvany kimenetet a szabvany bemenetre, es
 # figyelmen kivu:l hagyja a parametereket. Elku:ldi a nyomtatonak, hogy
 # az LF karaktereket CR+LF-kent kezelje, majd a feladat befejeztevel
 # lapot dobat.

 printf "\033&k2G" && cat && printf "\033&l0H" && exit 0
 exit 2

                Peldakent megadjuk meg az orchid nevu" szamitogep
                /etc/printcap allomanyat is. Ebben egyetlen nyomtato
                csatlakozik a parhuzamos portra, amelynek a tipusa
                LaserJet 3Si es a neve teak. Az elo"bb bemutatott
                szo:vegszu"ro"t hasznalja:

 #
 #  /etc/printcap (orchid)
 #
 teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
         :lp=/dev/lpt0:sh:sd=/var/spool/lpd/teak:mx#0:\
         :if=/usr/local/libexec/hpif:

   Egymasra irja a sorokat.

           A nyomtato nem lepteti a sorokat, ezert az o:sszes sor
           egymason jelenik meg.

           Ez pontosan a ritka "ellentete" a fentebb leirt
           lepcso"hatasnak. A FreeBSD altal sorto:resre hasznalt LF
           karakterek valamiert CR karakterekkent viselkednek, ezert
           a nyomtato nem sort valt, hanem a lap bal szelere allitja
           a fejet.

           A nyomtaton talalhato kapcsolokkal vagy vezerlo"panellel
           igy allitsuk be az sordobas es kocsivissza karakterek
           ertelmezeset:

             Amit a nyomtato kap      Arra a nyomtato nyomtat   
           CR                       CR                          
           LF                       CR + LF                     

   A nyomtato elhagy karaktereket.

           Miko:zben nyomtatunk, a nyomtato bizonyos karaktereket nem
           hajlando megjeleniteni. A problema ennel nagyobb, ha a
           nyomtato mu"ko:dese ko:zben egyre to:bb es to:bb karaktert
           hagy ki.

           Itt az a gond, hogy a nyomtato nem kepes tartani az iramot
           a szamitogep altal a soros vonalon atku:ldo:tt adatok
           sebessegevel (ez a problema nem jelentkezhet a parhuzamos
           nyomtatok eseten). Ket modon kerekedhetu:nk felu:l ezen:

              * Ha a nyomtato ismeri a XON/XOFF tipusu
                forgalomiranyitast, akkor az ms# tulajdonsagnal adjuk
                meg a FreeBSD szamara az ixon beallitast.

              * Ha a nyomtato ismeri a "Request to Send / Clear to
                Send" alapu hardveres kezfogast (mas neven RTS/CTS
                forgalomiranyitast), akkor az ms# tulajdonsagnal a
                crtscts beallitast adjuk meg. Gondoskodjunk rola,
                hogy a szamitogepet es a nyomtato o:sszeko:to" kabel
                meg tudjon majd birkozni ezzel a tipusu
                forgalomiranyitassal.

   Mindenfele szemetet nyomtat.

           A nyomtato nem a nyomtatni kivant szo:veget hozza letre,
           hanem o:ssze-vissza nyomtat.

           Ez a soros nyomtatok helytelen kommunikacios beallitasanak
           egy masik jellemzo" tu:nete. Elleno"rizzu:k a br
           tulajdonsagnal megadott adatatviteli sebesseget es az ms#
           tulajdonsagnal megadott paritasi beallitasokat.
           Egyeztessu:k a nyomtato sajat es az /etc/printcap
           allomanyban tarolt beallitasait.

   Semmi sem to:rtenik.

           Ha semmi sem to:rtent, akkor a gond magaval a FreeBSD-vel
           lehet, nem pedig a hardverrel. Az /etc/printcap allomanyba
           a vizsgalni kivant nyomtato leirasahoz (az lf
           tulajdonsaggal) illesszu:nk be naplozast. Peldaul igy fog
           kinezni a rattan nevu" nyomtato bejegyzese az lf
           tulajdonsag megadasaval kibo"vitve:

 rattan|line|diablo|lp|Diablo 630 Line Printer:\
         :sh:sd=/var/spool/lpd/rattan:\
         :lp=/dev/lpt0:\
         :if=/usr/local/libexec/if-simple:\
         :lf=/var/log/rattan.log

           Miutan ezt megcsinaltuk, probalkozzunk ujra. Nezzu:k meg a
           naploallomanyban (ami a peldankban a /var/log/rattan.log
           neven erheto" el), hogy latunk-e valamilyen hibau:zenetet.
           Az itt tapasztalt hibau:zenetek nyoman elindulva
           igyekezzu:nk megszu:ntetni a problema forrasat.

           Ha nem adjuk meg az lf tulajdonsagot, akkor az LPD erre a
           celra alapertelmezes szerint a /dev/console allomanyt
           hasznalja.

     --------------------------------------------------------------

                Fejezet 10. Binaris Linux kompatibilitas

   Atdolgozta es egyes reszeit aktualizalta: Jim Mock. Eredetileg
   irta: Brian N. Handy es Rich Murphey.

10.1. Attekintes

   A FreeBSD szamos mas UNIX-szeru" operacios rendszerhez nyujt
   binaris kompatibilitast, ko:ztu:k a Linuxhoz is.
   Elcsodalkozhatnank rajta, hogy vajon miert kell tudnia a
   FreeBSD-nek Linux binarisokat futtatnia? A valasz erre nagyon
   egyszeru". Rengeteg ceg es fejleszto" kizarolag csak Linuxra
   fejleszt, hiszen ez mostansag egy nagyon "izgalmas tema" az
   informatika vilagaban. Emiatt azonban a FreeBSD ko:zo:ssegnek
   ku:lo:n gyo"zko:dnie kell ezeket a cegeket es fejleszto"ket, hogy
   keszitsek el a termekeik nativ FreeBSD-s valtozatat. Ezzel az a
   gond, a legto:bb ilyen ceg egyszeru"en nem veszi eszre, hogy ha
   letezne a termeku:knek FreeBSD-re irt valtozata, akkor meg to:bben
   hasznalnak. Igy tovabbra is csak Linuxra fejlesztenek. Mit tudnak
   tenni ilyenkor a FreeBSD hasznaloi? Nos, ekkor jo:n jol a FreeBSD
   binaris szintu" kompatibilitasa.

   Diohejban ugy tudnank o:sszefoglalni, hogy ennek ko:szo:nheto"en a
   FreeBSD felhasznalok kepesek a linuxos alkalmazasok ko:zel 90%-at
   mindenfele tovabbi modositas nelku:l futtatni. Igy tehat
   hasznalhato a StarOffice, Netscape Linux valtozata, az
   Adobe Acrobat, RealPlayer, VMware(TM), Oracle, WordPerfect(R),
   Doom, Quake, es meg sok minden mas. So"t, egyes tapasztalatok
   szerint bizonyos helyzetekben a FreeBSD altal futtatott Linux
   binarisok sokkal jobban teljesitenek, mint Linux alatt.

   Azonban vannak olyan Linuxra jellemzo", az operacios rendszer
   szintjen meghuzodo eszko:zo:k, amelyek FreeBSD alatt nem
   hasznalhatoak. FreeBSD-n nem fognak mu"ko:dni azok a Linux
   binarisok, amelyek tulzottan kihasznaljak az olyan i386-os
   rendszerhivasokat, mint peldaul a virtualis 8086 mod.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan engedelyezzu:k rendszeru:nko:n a Linux kompatibilitast;

     * hogyan telepitsu:nk linuxos osztott ko:nyvtarakat;

     * hogyan telepitsu:nk linuxos alkalmazasokat a FreeBSD
       rendszeru:nkre;

     * a FreeBSD Linux kompatibilitasanak implementacios reszleteit.

   A fejezet elolvasasahoz ajanlott:

     * ku:lso" szoftverek telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

10.2. Telepites

   A binaris Linux kompatibilitas alapertelmezes szerint nem
   engedelyezett. Legko:nnyebben ugy tudjuk elerheto"ve tenni, ha
   beto:ltju:k a linux nevu" KLD modult ("Kernel LoaDable"). Ehhez
   root felhasznalokent a ko:vetkezo"ket kell begepelni:

 # kldload linux

   Ha minden egyes rendszerinditas soran engedelyezni szeretnenk a
   binaris kompatibilitast, akkor tegyu:k bele az /etc/rc.conf
   allomanyba ezt a sort:

 linux_enable="YES"

   A modul beto:lto"deset a kldstat(8) paranccsal tudjuk
   elleno"rizni:

 % kldstat
 Id Refs Address    Size     Name
  1    2 0xc0100000 16bdb8   kernel
  7    1 0xc24db000 d000     linux.ko

   Ha valamiert nem akarjuk vagy nem eppen nem tudjuk beto:lteni a
   modult, akkor a binaris Linux kompatibilitast az options
   COMPAT_LINUX beallitassal be is tudjuk epiteni a rendszermagba.
   Ennek pontos menetet a 8 fejezetben talaljuk meg.

     --------------------------------------------------------------

  10.2.1. Linuxos futtatoko:nyvtarak telepitese

   A linuxos ko:nyvtarakat ket modon is felrakhatjuk: egyreszt a
   linux_base port telepitesevel, masreszt manualisan.

     --------------------------------------------------------------

    10.2.1.1. A ko:nyvtarak telepitese a linux_base porttal

   A futtatoko:nyvtarakat a leheto" legegyszeru"bben a
   emulators/linux_base porton keresztu:l tudjuk telepiteni. Teljesen
   ugy to:rtenik, mint a Portgyu"jtemeny akarmelyik masik portjanak
   telepitese. Csupan ennyit kell beirnunk:

 # cd /usr/ports/emulators/linux_base-f10
 # make install distclean

     Megjegyzes: A FreeBSD 8.0 kiadasat megelo"zo" valtozataiban az
     emulators/linux_base-f10 port helyett az
     emulators/linux_base-fc4 portot hasznaljuk.

   A telepites vegeztevel kaptunk is egy mu"ko:do" binaris Linux
   kompatibilitast, habar egyes programok meg panaszkodhatnak a
   rendszerko:nyvtarak alverzioit illeto"en. Altalanossagban veve ez
   azonban nem okoz nagyobb gondot.

     Megjegyzes: A emulators/linux_base portnak to:bb valtozata is
     hasznalhato, melyek az egyes Linux disztribucioknak
     feleltetheto"ek meg. Ilyenkor mindig erdemes ko:zu:lu:k azt
     valasztani, amelyik a leginkabb megfelel a telepiteni kivant
     linuxos alkalmazas igenyeinek.

     --------------------------------------------------------------

    10.2.1.2. A ko:nyvtarak telepitese manualisan

   Ha korabban meg nem telepitettu:k volna a Portgyu"jtemenyt, akkor
   egyenileg kell felraknunk az egyes ko:nyvtarakat. Ko:zu:lu:k
   azokra lesz szu:ksegu:nk, amelyeket maga az alkalmazas is
   hasznalni akar, valamint a futasideju" linkerre. Emellett meg a
   FreeBSD rendszeru:ko:n levo" Linux binarisok szamara a
   /compat/linux ko:nyvtarban letre kell hoznunk a gyo:ker un.
   "arnyekko:nyvtarat" is. A FreeBSD alatt elinditott Linux programok
   elo"szo:r ebben a ko:nyvtarban fogjak keresni a hozzajuk tartozo
   osztott ko:nyvtarakat. Igy tehat, amikor egy linuxos program
   beto:lti peldaul a /lib/libc.so fu:ggvenyko:nyvtarat, akkor a
   FreeBSD elo"szo:r a /compat/linux/lib/libc.so allomanyt probalja
   meg megnyitni, majd ha az nem letezik, akkor a /lib/libc.so
   allomanyt. Az osztott ko:nyvtarak ezert a /compat/linux/lib
   arnyekko:nyvtarba telepitendo"ek, es nem oda, ahova a linuxos
   ld.so mutat.

   Altalanossagban szolva eleinte eleg csak azokat az osztott
   ko:nyvtarakat megkeresni es felrakni, amelyekre a telepitendo"
   linuxos alkalmazasunknak tenylegesen szu:ksege van. Egy ido" utan
   ugyis o:sszegyu"lnek azok a fontosabb fu:ggvenyko:nyvtarak,
   amelyek segitsegevel mar minden tovabbi raforditas nelku:l
   futtatni tudjuk a frissen importalt programokat.

     --------------------------------------------------------------

    10.2.1.3. Hogyan telepitsu:nk ujabb osztott ko:nyvtarakat?

   Mit tegyu:nk, ha az emulators/linux_base port telepitese utan az
   alkalmazas meg mindig ko:vetel nehany hianyzo osztott ko:nyvtarat?
   Honnan tudhatjuk meg, hogy milyen osztott ko:nyvtarak kellenek
   majd egy Linux binaris hasznalatahoz es honnan szerezzu:k be
   ezeket? Erre alapveto"n ket leheto"segu:nk van (az utasitasokat
   root felhasznalokent kell majd vegrehajtanunk).

   Ha hozzaferu:nk egy Linux rendszerhez, akkor szedju:k o:ssze az
   alkalmazasunk futtatasahoz szu:kseges osztott ko:nyvtarakat es
   masoljuk ezeket a FreeBSD particiojara. Peldaul:

   Tegyu:k fel, hogy FTP-n keresztu:l leszedtu:k a Doom Linux
   valtozatat es felraktuk egy altalunk elerheto" Linux rendszerre.
   Az ldd linuxdoom parancs segitsegevel ki tudjuk deriteni, milyen
   osztott ko:nyvtarak kellenek majd neku:nk:

 % ldd linuxdoom
 libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0
 libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0
 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29

   Az utolso oszlopban levo" allomanyokat masoljuk at, tegyu:k ezeket
   a /compat/linux ko:nyvtarba, es hozzunk letre az elso" oszlopban
   szereplo" szimbolikus linkeket. Igy tehat a ko:vetkezo" allomanyok
   kellenenek:

 /compat/linux/usr/X11/lib/libXt.so.3.1.0
 /compat/linux/usr/X11/lib/libXt.so.3 -> libXt.so.3.1.0
 /compat/linux/usr/X11/lib/libX11.so.3.1.0
 /compat/linux/usr/X11/lib/libX11.so.3 -> libX11.so.3.1.0
 /compat/linux/lib/libc.so.4.6.29
 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29

       Megjegyzes: Ha mar rendelkezu:nk az ldd kimenetenek elso"
       oszlopaban szereplo" fo"verzioszamu osztott ko:nyvtar, akkor
       nem kell atmasolni az utolso oszlopban levo" allomanyokat,
       hiszen igy is mu"ko:dnie kellene mindennek. Ha viszont egy
       ujabb valtozattal talalkozunk, akkor erdemes megis inkabb
       atmasolni. Miutan a szimbolikus linkeket atiranyitottuk az uj
       valtozatra, a regit akar to:ro:lhetju:k is. Ha peldaul ezek a
       ko:nyvtarak elerheto"ek a rendszeru:nko:n:

 /compat/linux/lib/libc.so.4.6.27
 /compat/linux/lib/libc.so.4 -> libc.so.4.6.27

       Eszrevesszu:k, hogy az ldd kimeneteben az uj binaris egy ujabb
       valtozatot igenyel:

 libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29

       Ha csak az utolso jegyeben marad le valamivel a verzioszam,
       akkor nem ku:lo:no:sebben aggodnunk a /lib/libc.so.4.6.29
       miatt sem, hiszen a programnak egy picivel korabbi verzioval
       is remeku:l kellene tudnia mu"ko:dnie. Termeszetesen, ha
       akarjuk, etto"l fu:ggetlnu:l lecserelhetju:k a libc.so
       allomanyt, ami ezt eredmenyezi:

 /compat/linux/lib/libc.so.4.6.29
 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29

       Megjegyzes: A szimbolikus linkek karbantartasa csak a Linux
       binarisok eseten szu:kseges. A FreeBSD sajat futasideju"
       linkere magatol megkeresi a megfelelo" fo"verzioszamu
       ko:nyvtarakat, ezert emiatt altalaban nem kell aggodni.

     --------------------------------------------------------------

  10.2.2. Linux ELF binarisok telepitese

   Az ELF binarisok futtatasa elo"tt neha meg szu:kseg van a
   "megbelyegzes" (branding) hasznalatara is. Ha egy belyegezetlen
   ELF binarist akarunk elinditani, akkor a ko:vetkezo" hibau:zenetet
   kapjuk:

 % ./egy-linux-elf-binaris
 ELF binary type not known
 Abort

   A FreeBSD rendszermagjanak a brandelf(1) paranccsal tudunk
   segiteni a FreeBSD es a Linux binarisainak
   megku:lo:nbo:zteteseben.

 % brandelf -t Linux egy-linux-elf-binaris

   A GNU altal fejlesztett eszko:zo:k manapsag mar automatikusan
   elhelyezik az ELF binarisok azonositasahoz szu:kseges belyegeket,
   ezert ez a lepes a jo:vo"ben egyre inkabb feleslegesse valik.

     --------------------------------------------------------------

  10.2.3. Tetszo"leges RPM formatumu csomag telepitese

   A FreeBSD a telepitett (akar linuxos) alkalmazasok
   nyomonko:vetesere sajat csomagadatbazissal rendelkezik, amelynek
   ko:vetkezeben a Linux altal felkinalt RPM adatbazisokat nem
   tamogatja.

   Ennek ellenere akarmelyik RPM alapu Linux alkalmazas telepitheto"
   rendszeru:nkre a ko:vetkezo" modon:

 # cd /compat/linux
 # rpm2cpio -q < /a/linuxos/allomany.helye.rpm | cpio -id

   Ezt ko:veto"en a brandelf(1) segitsegevel allitsuk be az ELF
   binarisokat (ko:nyvtarakat viszont ne!) megfelelo" tipusura. Ekkor
   ugyan nem leszu:nk kepesek rendesen eltavolitani az igy telepitett
   szoftvert, de ez a modszer teszteleshez megfelelo".

     --------------------------------------------------------------

  10.2.4. A nevfeloldo beallitasa

   Ha a nevfeloldas (DNS) valamiert nem mu"ko:dne, vagy egy ehhez
   hasonlo u:zenetet kapunk:

 resolv+: "bind" is an invalid keyword resolv+:
 "hosts" is an invalid keyword

   Akkor az /compat/linux/etc/host.conf allomanyba be kell
   illesztenu:nk a ko:vetkezo" sorokat:

 order hosts, bind
 multi on

   Az itt megszabott sorrend szerint elo"szo:r a /etc/hosts allomanyt
   nezi at, es majd csak ezutan probalja meg feloldani a nevet. Ha a
   /compat/linux/etc/host.conf allomany nem letezik, akkor a linuxos
   alkalmazas a FreeBSD /etc/host.conf allomanyat talalja meg, es
   panaszkodni fog a FreeBSD eltero" formatumara. Tavolitsuk el a
   bind szocskat, ha nem allitottunk be nevszervert az
   /etc/resolv.conf allomanyhoz.

     --------------------------------------------------------------

10.3. A Mathematica(R) telepitese

   A Mathematica 5.X verziojahoz igazitotta: Boris Hollas.

   Ebben a szakaszban megismerhetju:k, hogyan telepitsu:k a
   Mathematica 5.X Linux valtozatat FreeBSD rendszerekre.

   A Mathematica vagy a Mathematica for Students linuxos valtozatai
   ko:zvetlenu:l megrendelheto"ek a fejleszto"to"l:
   http://www.wolfram.com/.

     --------------------------------------------------------------

  10.3.1. A Mathematica telepito"jenek elinditasa

   Elo"szo:r is jeleznu:nk kell a FreeBSD-nek, hogy a Mathematica
   binarisai a linuxos ABI-t (Appplication Binary Interface) fogjak
   hasznalni. Itt legko:nnyebben ugy jarhatunk el, ha egyszeru"en
   beallitjuk, hogy a rendszer a belyegezetlen ELF binarisokat
   automatikusan Linux binarisoknak tekintse:

 # sysctl kern.fallback_elf_brand=3

   Ennek ko:szo:nheto"en a FreeBSD most mar az o:sszes belyegezetlen
   ELF binaris eseten a linuxos ABI-t fogja hasznalni, es igy a
   telepito"t akar mar ko:zvetlenu:l a CD-ro"l is indithatjuk.

   Most masoljuk at a MathInstaller nevu" allomanyt a
   merevlemezu:nkre:

 # mount /cdrom
 # cp /cdrom/Unix/Installers/Linux/MathInstaller helyi_ko:nyvtar

   Az allomanyban cserelju:k ki az elso" sorban talalhato /bin/sh
   hivatkozast a /compat/linux/bin/sh hivatkozasra. Ezzel
   biztosithatjuk be, hogy a telepito"t a linuxos sh(1) fogja
   elinditani. Ezutan a kedvenc szo:vegszerkeszto"nkkel vagy a
   ko:vetkezo" szakaszban talalhato szkript segitsegevel
   helyettesitsu:k benne a Linux) szo:veg o:sszes elo"fordulasat a
   FreeBSD) szo:veggel. Mivel a Mathematica telepito"je az uname -s
   parancsra kapott valaszbol allapitja meg az operacios rendszer
   tipusat, ezert ezzel a modositassal a FreeBSD-t is a Linuxhoz
   hasonlo modon fogja kezelni. A MathInstaller elinditasa utan most
   mar telepitheto" a Mathematica.

     --------------------------------------------------------------

  10.3.2. A Mathematica allomanyainak modositasa

   A Mathematica telepitese soran letrejo:tt szkripteket a
   hasznalatuk elo"tt at kell irnunk. Amennyiben a Mathematicahoz
   tartozo programokat a /usr/local/bin ko:nyvtarba telepitettu:k,
   akkor itt talalunk kell a math, mathematica, Mathematica es
   MathKernel allomanyokra mutato szimbolikus linkeket. Ezek
   mindegyikeben cserelju:k ki a Linux) karakterlancot a FreeBSD)
   szo:vegre a kedvenc szo:vegszerkeszto"nkkel vagy az alabbi
   szkripttel:

 #!/bin/sh
 cd /usr/local/bin
 for i in math mathematica Mathematica MathKernel
   do sed 's/Linux)/FreeBSD)/g' $i > $i.tmp
   sed 's/\/bin\/sh/\/compat\/linux\/bin\/sh/g' $i.tmp > $i
   rm $i.tmp
   chmod a+x $i
 done

     --------------------------------------------------------------

  10.3.3. A Mathematica jelszavanak megszerzese

   A Mathematica elso" inditasa soran kerni fog egy jelszot. Ha meg
   nem kertu:nk volna jelszot a fejleszto"to"l, akkor a
   "szamitogepu:nk azonositojanak" (machine ID) megallapitasahoz
   inditsuk el a telepites ko:nyvtaraban talalhato mathinfo nevu"
   programot. Ez az azonosito lenyegeben az elso"dleges Ethernet
   kartyank MAC-cime lesz, ezert a Mathematica nem futtathato to:bb
   szamitogepen.

   Amikor e-mailen, telefonon vagy faxon keresztu:l regisztraljuk a
   termeket a Wolframnal, akkor meg kell adnunk nekik ezt az
   azonositot "machine ID" neven, amire o"k elku:ldik a hozzatartozo
   jelszot.

     --------------------------------------------------------------

  10.3.4. A Mathematica frontendjenek futtatasa halozaton keresztu:l

   A Mathematica a szabvanyos betu"keszletekkel meg nem jelenitheto"
   szimbolumokhoz (integraljelek, szummak, go:ro:g betu"k,
   matematikai jelo:lesek stb.) hasznal nehany olyan specialis
   betu"tipust, amelyek nem minden esetben allnak rendelkezesre. A X
   altal hasznalt protokoll miatt ezeket a betu"tipusokat helyben
   kell telepiteni. Ennek ertelmeben a Mathematica CD-jen talalhato
   betu"tipusokat telepitenu:nk kell a szamitogepu:nkre is. A CD-n
   ezeket altalaban a /cdrom/Unix/Files/SystemFiles/Fonts
   ko:nyvtarban talaljuk meg, vagy a merevlemezen a
   /usr/local/mathematica/SystemFiles/Fonts ko:nyvtarban. Ezen belu:l
   pedig a Type1 es X alko:nyvtarakra van szu:ksegu:nk. Az
   alabbiakban leirtak szerint to:bb modon is hasznalhatjuk ezeket.

   Az egyik ilyen modszer, ha atmasoljuk az iment emlitett
   ko:nyvtarakat a to:bbi melle, vagyis a /usr/X11R6/lib/X11/fonts
   ko:nyvtarba. Ekkor szu:ksegu:nk lesz meg a fonts.dir allomany
   atirasara is, ahova fel kell vennu:nk a betu"tipusok neveit, majd
   ennek megfelelo"en az elso" sorban modositanunk a ko:nyvtarban
   talalhato betu"tipusok szamat. De ugyanigy lefuttathatjuk ebben a
   ko:nyvtarban a mkfontdir(1) parancsot is.

   Az a masik megoldas, ha a ko:nyvtarakat igy masoljuk at a
   /usr/X11R6/lib/X11/fonts helyre:

 # cd /usr/X11R6/lib/X11/fonts
 # mkdir X
 # mkdir MathType1
 # cd /cdrom/Unix/Files/SystemFiles/Fonts
 # cp X/* /usr/X11R6/lib/X11/fonts/X
 # cp Type1/* /usr/X11R6/lib/X11/fonts/MathType1
 # cd /usr/X11R6/lib/X11/fonts/X
 # mkfontdir
 # cd ../MathType1
 # mkfontdir

   Most adjuk hozza az uj ko:nyvtarakat a betu"tipusok
   ko:nyvtaraihoz:

 # xset fp+ /usr/X11R6/lib/X11/fonts/X
 # xset fp+ /usr/X11R6/lib/X11/fonts/MathType1
 # xset fp rehash

   Ha az Xorg szervert hasznaljuk, akkor az xorg.conf allomanyban
   megadhatjuk ezen ko:nyvtarak automatikus beto:lteset is.

     Megjegyzes: Az XFree86 tipusu szerverek eseten az XF86Config
     konfiguracios allomanyt kell modositanunk.

   Ha meg nincs /usr/X11R6/lib/X11/fonts/Type1 nevu" ko:nyvtarunk,
   akkor a peldaban szereplo" MathType1 ko:nyvtarat nyugodtan
   atnevezhetju:k Type1 nevu"re.

     --------------------------------------------------------------

10.4. A Maple(TM) telepitese

   Irta: Aaron Kaplan. Ko:szo:net: Robert Getschmann.

   A Maple(TM) egy Mathematicahoz hasonlo kereskedelmi alkalmazas. A
   hasznalatahoz elo"szo:r meg kell vasarolni a
   http://www.maplesoft.com/ cimro"l, majd a licenc megszerzesehez
   ugyanott regisztralni. FreeBSD-re a szoftvert a ko:vetkezo"
   egyszeru" lepeseken keresztu:l tudjuk telepiteni.

    1. Inditsuk el a termekhez mellekelt INSTALL nevu" szkriptet.
       Valasszuk a telepito"program altal felkinalt opciok ko:zu:l a
       "RedHat" cimkeju"t. A telepites celko:nyvtara legyen a
       /usr/local/maple.

    2. Ha eddig meg nem tettu:k volna meg, rendelju:k meg a Maple
       licencet a Maple Waterloo Software-to"l
       (http://register.maplesoft.com/) es masoljuk az
       /usr/local/maple/license/license.dat allomanyba.

    3. Az Maple-ho:z mellekelt INSTALL_LIC szkript elinditasaval
       telepitsu:k a FLEXlm licenckezelo"t. A szervernek adjuk meg a
       szamitogepu:nk halozati nevet.

    4. Javitsuk at a /usr/local/maple/bin/maple.system.type allomanyt
       a ko:vetkezo" modon:

    ----- itt kezdo"dik a modositas ---------
 *** maple.system.type.orig      Sun Jul  8 16:35:33 2001
 --- maple.system.type   Sun Jul  8 16:35:51 2001
 ***************
 *** 72,77 ****
 --- 72,78 ----
           # the IBM RS/6000 AIX case
           MAPLE_BIN="bin.IBM_RISC_UNIX"
           ;;
 +     "FreeBSD"|\
       "Linux")
           # the Linux/x86 case
         # We have two Linux implementations, one for Red Hat and
    ----- modositas vege -------------------

       Vigyazzunk, hogy a "FreeBSD"|\ kezdetu" sor vegen nem szabad
       semmilyen tovabbi whitespace karakternek lennie.

       Ez a javitas arra utasitja a Maple-t, hogy "FreeBSD"-t Linux
       rendszerkent ismerje fel. A bin/maple szkript hivja a
       bin/maple.system.type szkriptet, ami pedig a uname -a hivassal
       probalja kideriteni a operacios rendszer nevet. Etto"l
       fu:ggo"en valasztja ki, hogy milyen tipusu binarisokat fog
       futtatni.

    5. Inditsuk el a licenckezelo" szervert.

       A most ko:vetkezo" szkripttel ko:nnyeden el tudjuk inditani az
       lmgrd programot. A szkriptet /usr/local/etc/rc.d/lmgrd.sh
       neven hozzuk letre:

    ----- nyissz -----------

 #! /bin/sh
 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
 PATH=${PATH}:/usr/local/maple/bin:/usr/local/maple/FLEXlm/UNIX/LINUX
 export PATH

 LICENSE_FILE=/usr/local/maple/license/license.dat
 LOG=/var/log/lmgrd.log

 case "$1" in
 start)
         lmgrd -c ${LICENSE_FILE} 2>> ${LOG} 1>&2
         echo -n " lmgrd"
         ;;
 stop)
         lmgrd -c ${LICENSE_FILE} -x lmdown 2>> ${LOG} 1>&2
         ;;
 *)
         echo "Usage: `basename $0` {start|stop}" 1>&2
         exit 64
         ;;
 esac

 exit 0
    ----- nyissz -----------

    6. Probaljuk meg elinditani a Maple-t:

 % cd /usr/local/maple/bin
 % ./xmaple

       Szerencses esetben innento"l kezdve mar minden mu"ko:dik. Es
       ne felejtsu:nk el irni a Maplesoftnak, hogy szeretnenk egy
       nativ FreeBSD verziot a termeku:kbo"l!

     --------------------------------------------------------------

  10.4.1. Altalanos buktatok

     * A FLEXlm licenckezelo"vel esetenkent nehez lehet elboldogulni.
       Erro"l temarol bo"vebben a http://www.globetrotter.com/ cimen
       talalunk leirasokat.

     * Az lmgrd nagyon valogatos a licencallomanyokat illeto"en es
       barmilyen aprosagra kiakad. Egy szabalyos licencallomany
       valahogy igy nez ki:

 # =======================================================
 # License File for UNIX Installations ("Pointer File")
 # =======================================================
 SERVER chillig ANY
 #USE_SERVER
 VENDOR maplelmg

 FEATURE Maple maplelmg 2000.0831 permanent 1 XXXXXXXXXXXX \
          PLATFORMS=i86_r ISSUER="Waterloo Maple Inc." \
          ISSUED=11-may-2000 NOTICE=" Technische Universitat Wien" \
          SN=XXXXXXXXX

         Megjegyzes: A sorozatszamot termeszetesen eltavolitottuk.
         Itt a chillig a szamitogep neve.

       Az itt megadott licencallomany remeku:l hasznalhato egeszen
       addig a pontig, amig beken hagyjuk a "FEATURE" kezdetu" sort
       (melyet a licenckulcs ved).

     --------------------------------------------------------------

10.5. A MATLAB(R) telepitese

   Irta: Dan Pelleg.

   Ez a leiras azt mutatja be, hogyan telepitsu:k FreeBSD
   rendszerekre a MATLAB(R) version 6.5 Linux valtozatat. A Java
   Virtual Machine(TM) (lasd 10.5.3 Szakasz) hasznalatatol eltekintve
   meglepo"en jol mu"ko:dik.

   A MATLAB Linux valtozata ko:zvetlenu:l megrendelheto" a The
   MathWorks-to"l, a http://www.mathworks.com cimen. Ne felejtsu:k el
   beszerezni a licencallomanyt es az elkeszitesehez szu:kseges
   utmutatot. Ha mar ugy is arra jarunk, jelezzu:k a fejleszto"knek,
   hogy igenyt tartanank a termeku:k nativ FreeBSD-s valtozatara is!

     --------------------------------------------------------------

  10.5.1. A MATLAB telepitese

   A MATLAB telepitesehez a ko:vetkezo"ket kell tennu:nk:

    1. Helyezzu:k be a telepito"t CD-t es csatlakoztassuk. A
       telepito"szkript javaslatanak megfelelo"en valtsuk at a root
       felhasznalora. A szobanforgo szkript elinditasahoz gepelju:k
       be a ko:vetkezo"t:

 # /compat/linux/bin/sh /cdrom/install

         Tipp: A telepito" grafikus. Ha a megjelenito" hasznalatarol
         szolo hibau:zeneteket kapunk, akkor adjuk ki a setenv HOME
         ~FELHASZNALO parancsot, ahol a FELHASZNALO annak a
         felhasznalonak a neve legyen, amivel az iment meghivtuk a
         su(1) programot.

    2. Amikor a MATLAB ko:nyvtarat kell megadnunk, ezt irjuk be:
       /compat/linux/usr/local/matlab.

         Tipp: A telepites tovabbi reszeinek megko:nnyitese erdekeben
         irjuk be ezt a parancssorba: set
         MATLAB=/compat/linux/usr/local/matlab

    3. Miutan megkaptuk a MATLAB licencet, az utmutatas szerint
       szerkesszu:k at.

         Tipp: A licencallomanyt a kedvenc szo:vegszerkeszto"nkkel
         akar mar korabban elo" is keszithetju:k, es majd amikor a
         telepito"nek szu:ksege lesz ra, masoljuk be
         $MATLAB/license.dat helyre.

    4. Futtassuk le a telepitest.

   Ezzel befejezo"do"tt a MATLAB hagyomanyos telepitese. Innento"l
   mar csak a FreeBSD rendszer "hozzatapasztasan" fogunk dolgozni.

     --------------------------------------------------------------

  10.5.2. A licenckezelo" elinditasa

    1. Hozzunk letre szimbolikus linkeket a licenckezelo"
       szkriptjeire:

 # ln -s $MATLAB/etc/lmboot /usr/local/etc/lmboot_TMW
 # ln -s $MATLAB/etc/lmdown /usr/local/etc/lmdown_TMW

    2. Hozzunk letre egy inditoszkriptet
       /usr/local/etc/rc.d/flexlm.sh neven. A lentebb lathato minta a
       MATLABhoz mellekelt $MATLAB/etc/rc.lm.glnx86 allomany egy
       modositott valtozata. Benne az allomanyok helyet es a
       licenckezelo" inditasanak ko:ru:lmenyeit valtoztattuk meg
       (hogy Linux emulacio alatt fusson).

 #!/bin/sh
 case "$1" in
   start)
         if [ -f /usr/local/etc/lmboot_TMW ]; then
               /compat/linux/bin/sh /usr/local/etc/lmboot_TMW -u felhasznalo && echo 'MATLAB_lmgrd'
         fi
         ;;
   stop)
         if [ -f /usr/local/etc/lmdown_TMW ]; then
             /compat/linux/bin/sh /usr/local/etc/lmdown_TMW  > /dev/null 2>&1
         fi
         ;;
   *)
         echo "Usage: $0 {start|stop}"
         exit 1
         ;;
 esac

 exit 0

         Fontos: Tegyu:k ezt az allomanyt vegrehajthatova:

 # chmod +x /usr/local/etc/rc.d/flexlm.sh

         A fenti szkriptben cserelju:k ki a felhasznalo nevet a
         rendszeru:nkben levo" egyik felhasznalo nevere (ami persze
         nem a root).

    3. A licenckezelo"t az alabbi paranccsal inditsuk el:

 # /usr/local/etc/rc.d/flexlm.sh start

     --------------------------------------------------------------

  10.5.3. A Java futtato ko:rnyezet elesitese

   A Java futtato ko:rnyezet (Java Runtime Environment, JRE) linkjet
   iranyitsuk at egy FreeBSD alatt mu"ko:do" valtozatera:

 # cd $MATLAB/sys/java/jre/glnx86/
 # unlink jre; ln -s ./jre1.1.8 ./jre

     --------------------------------------------------------------

  10.5.4. A MATLAB inditoszkriptjenek elkeszitese

    1. Hozzunk letre egy ilyen inditoszkriptet a
       /usr/local/bin/matlab ko:nyvtarban:

 #!/bin/sh
 /compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"

    2. Futtassuk le a chmod +x /usr/local/bin/matlab parancsot.

     Tipp: A szkript lefutasa soran a emulators/linux_base
     verziojatol fu:ggo"en hibakat is kaphatunk. Ha el akarjuk
     keru:lni ezeket, akkor szerkesszu:k at a
     /compat/linux/usr/local/matlab/bin/matlab allomany ko:vetkezo"
     sorat:

 if [ `expr "$lscmd" : '.*->.*'` -ne 0 ]; then

     (a 13.0.1 szamu verzioban ez 410. sor) erre:

 if test -L $newbase; then

     --------------------------------------------------------------

  10.5.5. A MATLAB leallito szkriptjenek elkeszitese

   A MATLAB szabalytalan kilepeseit az alabbi utasitasok nyoman
   tudjuk megszu:ntetni.

    1. Hozzunk letre egy $MATLAB/toolbox/local/finish.m nevu"
       allomanyt, majd irjuk bele ezt a sort:

 ! $MATLAB/bin/finish.sh

         Megjegyzes: A $MATLAB szo:veget pontosan igy irjuk be.

         Tipp: Ugyanebben a ko:nyvtarban talaljuk a beallitasaink
         kilepes elo"tti menteseert felelo"s finishsav.m es
         finishdlg.m allomanyokat. Ha ezek valamelyiket modositjuk,
         akkor a elo"bbi parancsot ko:zvetlenu:l a save utan szurjuk
         be.

    2. Hozzunk letre egy $MATLAB/bin/finish.sh allomanyt, amiben
       szerepeljen a ko:vetkezo":

 #!/usr/compat/linux/bin/sh
 (sleep 5; killall -1 matlab_helper) &
 exit 0

    3. Tegyu:k vegrehajthatova:

 # chmod +x $MATLAB/bin/finish.sh

     --------------------------------------------------------------

  10.5.6. A MATLAB hasznalata

   Most mar a matlab parancs begepelesevel barmikor elindithatjuk.

     --------------------------------------------------------------

10.6. Az Oracle(R) telepitese

   Irta: Marcel Moolenaar.

     --------------------------------------------------------------

  10.6.1. Elo"szo

   Ez a leiras azt mutatja be, hogyan telepitsu:k FreeBSD-re az
   Oracle 8.0.5 es Oracle 8.0.5.1 Enterprise Edition Linux
   valtozatait.

     --------------------------------------------------------------

  10.6.2. A Linux ko:rnyezet telepitese

   Telepitsu:k a emulators/linux_base es devel/linux_devtools
   portokat a Portgyu"jtemenybo"l. Amennyiben ennek soran
   nehezsegekbe u:tko:znenk, probalkozzunk a korabbi valtozataikkal.

   Fel kell raknunk a Red Hat Tcl csomagjat is, ha az alkalmazashoz
   tartozo intelligens u:gyno:ko:t is futtatni szeretnenk. Ez a
   tcl-8.0.3-20.i386.rpm. A hivatalos RPM port segitsegevel az alabbi
   altalanos parancson keresztu:l tudunk csomagokat telepiteni:

 # rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm csomag

   A csomag telepitesenek semmilyen hibat nem kellene okoznia.

     --------------------------------------------------------------

  10.6.3. Az Oracle ko:rnyezetenek letrehozasa

   Az Oracle telepitesehez elo"szo:r ki kell alakitanunk a megfelelo"
   ko:rnyezetet. Ez a leiras kifejezetten arrol szol, hogy FreeBSD-n
   hogyan futtassuk a linuxos Oracle-t, nem pedig az Oracle
   telepitesi utmutatojaban bemutatottakat taglalja.

     --------------------------------------------------------------

    10.6.3.1. A rendszermag hangolasa

   Ahogy a Oracle telepitesi utmutatojaban is olvashatjuk, be kell
   allitanunk az osztott memoria maximalis meretet. FreeBSD alatt
   erre a celra ne hasznaljuk a SHMMAX erteket, mivel az SHMMAX az
   SHMMAXPGS es PGSIZE ertekekbo"l szamolodik ki. Ezert neku:nk itt a
   SHMMAXPGS erteket kell meghataroznunk. Minden egyeb beallitas
   to:rtenhet az utmutatoban megadottak szerint. Peldaul:

 options SHMMAXPGS=10000
 options SHMMNI=100
 options SHMSEG=10
 options SEMMNS=200
 options SEMMNI=70
 options SEMMSL=61

   Hangoljuk be ezeket az ertekeket a Oracle tervezett hasznalatahoz.

   Emellett a konfiguracios allomanyban ne feledkezzu:nk meg az
   alabbi beallitasok megadasarol sem:

 options SYSVSHM #SysV osztott memoria
 options SYSVSEM #SysV szemaforok
 options SYSVMSG #SysV folyamatok ko:zti kommunikacio

     --------------------------------------------------------------

    10.6.3.2. Az Oracle hozzaferese

   Egy rendes hozzafereshez hasonloan hozzunk letre egy ku:lo:n
   oracle hozzaferest is rendszeru:nko:n. Az oracle hozzaferes
   annyira ku:lo:nleges, hogy csak linuxos parancsertelmezo"t
   tarsitsunk hozza. Ehhez vegyu:k fel /compat/linux/bin/bash sort az
   /etc/shells allomanyba, majd allitsuk at az oracle nevu"
   felhasznalo parancsertelmezo"jet a /compat/linux/bin/bash
   programra.

     --------------------------------------------------------------

    10.6.3.3. Ko:rnyezet

   A megszokott Oracle ko:rnyezeti valtozok, mint peldaul a
   ORACLE_HOME es ORACLE_SID mellett meg definialnunk kell a
   ko:vetkezo"ket is:

       Valtozo                           Ertek                        
   LD_LIBRARY_PATH $ORACLE_HOME/lib                                   
   CLASSPATH       $ORACLE_HOME/jdbc/lib/classes111.zip               
                   /compat/linux/bin /compat/linux/sbin               
   PATH            /compat/linux/usr/bin /compat/linux/usr/sbin /bin  
                   /sbin /usr/bin /usr/sbin /usr/local/bin            
                   $ORACLE_HOME/bin                                   

   Javasoljuk, hogy az o:sszes ko:rnyezeti valtozot a .profile
   allomanyban adjuk meg. Ennek megfelelo"en a pelda beallitasai igy
   fognak kinezni benne:

 ORACLE_BASE=/oracle; export ORACLE_BASE
 ORACLE_HOME=/oracle; export ORACLE_HOME
 LD_LIBRARY_PATH=$ORACLE_HOME/lib
 export LD_LIBRARY_PATH
 ORACLE_SID=ORCL; export ORACLE_SID
 ORACLE_TERM=386x; export ORACLE_TERM
 CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip
 export CLASSPATH
 PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin
 PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
 PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
 export PATH

     --------------------------------------------------------------

  10.6.4. Az Oracle telepitese

   A Linux emulatorban meghuzodo apro egyenletlensegek miatt a
   telepites elo"tt letre kell hoznunk egy .oracle nevu"
   alko:nyvtarat a /var/tmp ko:nyvtarban. Helyezzu:k ezt a oracle
   felhasznalo tulajdonaba. Ezt ko:veto"en minden tovabbi gond
   nelku:l kepesek leszu:nk az Oracle telepitesere. Ha netalan megis
   problemakba u:tko:znenk, elo"szo:r mindig az Oracle telepitesi es
   konfiguracios allomanyait elleno"rizzu:k! Az Oracle telepitese
   utan rakjuk fel a ko:vetkezo" szakaszokban bemutatando
   javitasokat.

   Gyakran problemat okoz, ha a TCP protokollt meg nem telepitettu:k.
   Ennek ko:vetkezmenyekeppen ugyanis nem tudnak elindulni a TCP
   alapu szolgaltatasok. Az alabbi mu"veletek ebben igyekeznek
   segiteni:

 # cd $ORACLE_HOME/network/lib
 # make -f ins_network.mk ntcontab.o
 # cd $ORACLE_HOME/lib
 # ar r libnetwork.a ntcontab.o
 # cd $ORACLE_HOME/network/lib
 # make -f ins_network.mk install

   Ne felejtsu:k el ismet elinditani a root.sh szkriptet!

     --------------------------------------------------------------

    10.6.4.1. A root.sh javitasa

   Az Oracle telepitese soran root (privilegizalt) felhasznalokent
   elvegzendo" mu"veleteket a root.sh elnevezesu" szkriptben
   talaljuk. Ez a szkript a orainst ko:nyvtarba keru:l. A chown
   parancs helyes lefutasahoz alkalmazzunk az alabb mellekelt
   javitast, vagy az egesz szkriptet egy linuxos
   parancsertelmezo"bo"l inditsuk el.

 *** orainst/root.sh.orig Tue Oct 6 21:57:33 1998
 --- orainst/root.sh Mon Dec 28 15:58:53 1998
 ***************
 *** 31,37 ****
 # This is the default value for CHOWN
 # It will redefined later in this script for those ports
 # which have it conditionally defined in ss_install.h
 ! CHOWN=/bin/chown
 #
 # Define variables to be used in this script
 --- 31,37 ----
 # This is the default value for CHOWN
 # It will redefined later in this script for those ports
 # which have it conditionally defined in ss_install.h
 ! CHOWN=/usr/sbin/chown
 #
 # Define variables to be used in this script

   Ha nem CD-ro"l telepitju:k az Oracle-t, akkor akar a root.sh
   forrasat is kijavithatjuk. A neve rthd.sh, es a forrasfa orainst
   ko:nyvtaraban talalhatjuk.

     --------------------------------------------------------------

    10.6.4.2. A genclntsh javitasa

   A genclntsh szkript a kliensek altal hasznalt osztott ko:nyvtar
   letrehozasara alkalmazhato. Altalaban demok forditasahoz van ra
   szu:kseg. Az alabbi javitas alkalmazasaval a PATH valtozo erteke
   to:ro:lheto":

 *** bin/genclntsh.orig Wed Sep 30 07:37:19 1998
 --- bin/genclntsh Tue Dec 22 15:36:49 1998
 ***************
 *** 32,38 ****
 #
 # Explicit path to ensure that we're using the correct commands
 #PATH=/usr/bin:/usr/ccs/bin export PATH
 ! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
 #
 # each product MUST provide a $PRODUCT/admin/shrept.lst
 --- 32,38 ----
 #
 # Explicit path to ensure that we're using the correct commands
 #PATH=/usr/bin:/usr/ccs/bin export PATH
 ! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
 #
 # each product MUST provide a $PRODUCT/admin/shrept.lst

     --------------------------------------------------------------

  10.6.5. Az Oracle futtatasa

   Ha rendesen ko:vettu:k az imenti utasitasokat, akkor most mar ugy
   tudjuk futtatni az Oracle-t, mintha csak Linuxon futna.

     --------------------------------------------------------------

10.7. Az SAP(R) R/3(R) telepitese

   Irta: Holger Kipp. Az eredeti verziot SGML-re u:ltette: Valentino
   Vaschetto.

   Az SAP tipusu rendszerek telepitesehez FreeBSD-re hivatalosan nem
   kaphatunk mu"szaki segelynyujtast -- csak a mino"sitett
   plaformokat tamogatjak.

     --------------------------------------------------------------

  10.7.1. Elo"szo

   Ez a leiras az SAP R/3 rendszer es Oracle adatbazis Linux
   valtozatainak telepiteset mutatja be FreeBSD-n, beleertve a
   FreeBSD es az Oracle telepiteset. Ketfele konfiguraciot irunk le:

     * SAP R/3 4.6B (IDES) es Oracle 8.0.5, FreeBSD 4.3-STABLE

     * SAP R/3 4.6C es Oracle 8.1.7, FreeBSD 4.5-STABLE

   Habar ez a dokumentum igyekszik az o:sszes fontos lepest a leheto"
   legreszletesebb modon targyalni, semmikeppen sem celja az Oracle
   es az SAP R/3 alkalmazasokhoz mellekelt telepitesi utmutatok
   kivaltasa.

   A kifejezetten az SAP vagy az Oracle Linux valtozataira vonatkozo
   kerdesek, valamint az Oracle es az SAP OSS konkret hasznalataval
   kapcsolatos leirasok tekinteteben a sajat dokumentaciojukat
   olvassuk el.

     --------------------------------------------------------------

  10.7.2. A szoftver

   Az SAP telepitesehez az alabbi CD-ket hasznaltuk fel:

     --------------------------------------------------------------

    10.7.2.1. SAP R/3 4.6B, Oracle 8.0.5

     Nev     Szam                        Leiras                       
   KERNEL  51009113 SAP Kernel Oracle / telepito" / AIX, Linux,       
                    Solaris                                           
   RDBMS   51007558 Oracle / RDBMS 8.0.5.X / Linux                    
   EXPORT1 51010208 IDES / DB-Export / 1. lemez                       
   EXPORT2 51010209 IDES / DB-Export / 2. lemez                       
   EXPORT3 51010210 IDES / DB-Export / 3. lemez                       
   EXPORT4 51010211 IDES / DB-Export / 4. lemez                       
   EXPORT5 51010212 IDES / DB-Export / 5. lemez                       
   EXPORT6 51010213 IDES / DB-Export / 6. (utolso) lemez              

   Emellett meg hasznaltuk az Oracle 8 Server (az elo"zetes 8.0.5
   valtozat a Linux 2.0.33 verziojahoz) CD-jet is, amely igazabol nem
   feltetlenu:l szu:kseges, valamint a FreeBSD (a 4.3 RELEASE kiadasa
   utan nem sokkal levo") 4.3-STABLE valtozatat.

     --------------------------------------------------------------

    10.7.2.2. SAP R/3 4.6C SR2, Oracle 8.1.7

     Nev     Szam                        Leiras                       
   KERNEL  51014004 SAP Kernel Oracle / SAP Kernel 4.6D valtozat /    
                    DEC, Linux                                        
   RDBMS   51012930 Oracle 8.1.7/ RDBMS / Linux                       
   EXPORT1 51013953 4.6C kiadas SR2 / Export / 1. lemez               
   EXPORT1 51013953 4.6C kiadas SR2 / Export / 2. lemez               
   EXPORT1 51013953 4.6C kiadas SR2 / Export / 3. lemez               
   EXPORT1 51013953 4.6C kiadas SR2 / Export / 4. (utolso) lemez      
   LANG1   51013954 4.6C kiadas SR2 / Nyelvi tamogatas / nemet,       
                    angol, francia / 1. lemez                         

   A telepitendo" nyelvto"l fu:ggo"en egyeb nyelvi tamogatast
   tartalmazo CD hasznalata is szu:ksegesse valhat. Itt most csak a
   nemet es angol nyelveket hasznaljuk, ezert elegendo" az elso" CD.
   Csendben hozzatesszu:k, hogy mind a negy EXPORT CD szama
   megegyezik. Ugyanigy a harom nyelvi CD-nek is megegyeznek a szamai
   (ez elter a 4.6B IDES kiadas CD szamozasatol). Az iras
   pillanataban a FreeBSD 4.5-STABLE (2002.03.20-i) valtozatat
   hasznaljuk.

     --------------------------------------------------------------

  10.7.3. SAP fu:zetek

   Az SAP R/3 telepitesevel kapcsolatban az alabbi fu:zetek
   bizonyultak hasznosnak:

     --------------------------------------------------------------

    10.7.3.1. SAP R/3 4.6B, Oracle 8.0.5

      Szam                              Cim                           
   0171356    SAP Software on Linux: Essential Comments               
   0201147    INST: 4.6C R/3 Inst. on UNIX - Oracle                   
   0373203    Update / Migration Oracle 8.0.5 --> 8.0.6/8.1.6 LINUX   
   0072984    Release of Digital UNIX 4.0B for Oracle                 
   0130581    R3SETUP step DIPGNTAB terminates                        
   0144978    Your system has not been installed correctly            
   0162266    Questions and tips for R3SETUP on Windows NT / W2K      

     --------------------------------------------------------------

    10.7.3.2. SAP R/3 4.6C, Oracle 8.1.7

       Szam                              Cim                          
   0015023       Initializing table TCPDB (RSXP0004) (EBCDIC)         
   0045619       R/3 with several languages or typefaces              
   0171356       SAP Software on Linux: Essential Comments            
   0195603       RedHat 6.1 Enterprise version: Known problems        
   0212876       The new archiving tool SAPCAR                        
   0300900       Linux: Released DELL Hardware                        
   0377187       RedHat 6.2: important remarks                        
   0387074       INST: R/3 4.6C SR2 Installation on UNIX              
   0387077       INST: R/3 4.6C SR2 Inst. on UNIX - Oracle            
   0387078       SAP Software on UNIX: OS Dependencies 4.6C SR2       

     --------------------------------------------------------------

  10.7.4. Hardverko:vetelmenyek

   Az alabbi hardvereszko:zo:k szu:ksegesek az SAP R/3 rendszer
   telepitesehez. Az eles hasznalathoz ennel termeszetesen valamivel
   to:bb kell majd:

            Valtozat                 4.6B                4.6C         
   Processzor                 Ket Pentium III     Ket Pentium III     
                              800MHz              800MHz              
   Memoria                    1GB ECC             2GB ECC             
   Szabad hely a merevlemezen 50 - 60GB (IDES)    50 - 60GB (IDES)    

   Eles hasznalatra nagyobb gyorsitotarral rendelkezo" Xeon
   processzorokat, nagysebessegu" hattertarakat (SCSI, hardveres RAID
   vezerlo"vel), USV es ECC memoria modulok ajanlottak. A nagy
   tarigenyt egyebkent az elo"re beallitott IDES rendszer indokolja,
   ami egy 27 GB meretu" adatbazist hoz letre a telepites soran. Ez a
   teru:let altalaban elegendo" egy frissen indulo rendszer es
   hozzatartozo alkalmazasadatok tarolasara.

     --------------------------------------------------------------

    10.7.4.1. SAP R/3 4.6B, Oracle 8.0.5

   A ko:vetkezo" hardverkonfiguraciot hasznaltuk: ket 800 MHz-es
   Pentium III processzor es a hozzajuk tartozo alaplap, egy
   Adaptec(R) 29160 Ultra160 SCSI-vezerlo" (a 40/80 GB meretu" DLT
   szalagos meghajto es CD-meghajto hasznalatahoz) es egy Mylex(R)
   AcceleRAID(TM) RAID-vezerlo" (2 csatorna, 6.00-1-00 verzioju
   firmware es 32 MB memoria), amihez ket 17 GB-os (tu:kro:zo:tt)
   merevlemez es negy 36 GB-os merevlemez (RAID 5) csatlakozik.

     --------------------------------------------------------------

    10.7.4.2. SAP R/3 4.6C, Oracle 8.1.7

   Itt a hardver egy Dell(TM) PowerEdge(TM) 2500 volt:
   ketprocesszoros alaplap, ket darab 1000 MHz-es Pentium III
   processzorral (fejenkent 256 KB gyorsitotarral), 2 GB PC133-as ECC
   SDRAM memoriaval, PERC/3 DC PCI RAID-vezerlo"vel (128 MB memoria),
   valamint egy EIDE DVD-meghajtoval. A RAID-vezerlo"re ket,
   egyenkent 18 GB meretu" merevlemezt (tu:kro:zve) es negy 36 GB
   meretu" merevlemezt csatlakoztattunk (RAID 5-ben).

     --------------------------------------------------------------

  10.7.5. A FreeBSD telepitese

   Elo"szo:r is telepitenu:nk kell a FreeBSD-t. Ez to:bb modon is
   lehetseges, ezekro"l a 2.13 Szakaszban olvashatunk bo"vebben.

     --------------------------------------------------------------

    10.7.5.1. A lemezek felosztasa

   Az egyszeru"seg kedveert az SAP R/3 46B es SAP R/3 46C SR2
   telepitese soran is ugyanazt a felosztast hasznaltuk. Egyedu:l az
   eszko:zo:k nevei valtoztak, mivel a telepites eltero" hardvereken
   to:rtent (/dev/da) es /dev/amr, tehat ha az AMI MegaRAID(R) eseten
   a /dev/da0s1a helyett a /dev/amr0s1a eszko:zt lathatjuk):

   Allomanyrendszer   Meret (1 KB-os    Meret     Csatlakozasi pont   
                       blokkokban)     (GB-ban) 
   /dev/da0s1a      1.016.303          1        /                     
   /dev/da0s1b                         6        lapozoallomany        
   /dev/da0s1e      2.032.623          2        /var                  
   /dev/da0s1f      8.205.339          8        /usr                  
   /dev/da1s1e      45.734.361         45       /compat/linux/oracle  
   /dev/da1s1f      2.032.623          2        /compat/linux/sapmnt  
   /dev/da1s1g      2.032.623          2        /compat/linux/usr/sap 

   Elo"re allitsuk be es inicializaljuk a ket logikai meghajtot a
   Mylex es a PERC/3 RAID-vezerlo"ko:n. A hozzatartozo szoftver a
   BIOS inditasanak fazisaban hivhato be.

   A lemezek felosztasa nemileg elter az SAP altal javasoltaktol,
   mivel az SAP szerint az Oracle ko:nyvtarait (nehany masikkal
   egyu:tt) ku:lo:n-ku:lo:n erdemes csatlakoztatni -- mi most az
   egyszeru"sites kedveert csak letrehoztuk ezeket.

     --------------------------------------------------------------

    10.7.5.2. A make world es egy uj rendszermag

   To:ltsu:k le a legfrissebb -STABLE forrasokat. Forditsuk ujra az
   o:sszes forrast (make world) es a beallitasainak elvegzese utan a
   sajat rendszermagunkat is. Itt ne felejtsu:k el megadni az SAP R/3
   es az Oracle mu"ko:desehez szu:kseges parametereket.

     --------------------------------------------------------------

  10.7.6. A Linux ko:rnyezet telepitese

    10.7.6.1. Az linuxos alaprendszer telepitese

   Elso"kent a linux_base portot kell felraknunk (root
   felhasznalokent):

 # cd /usr/ports/emulators/linux_base-fc4
 # make install distclean

     --------------------------------------------------------------

    10.7.6.2. A linuxos fejleszto"i ko:rnyezet telepitese

   Ha az Oracle-t FreeBSD-re a 10.6 Szakaszban leirtak szerint
   akarjuk telepiteni, akkor szu:ksegu:nk lesz a linuxos
   fejleszto"eszko:zo:kre is:

 # cd /usr/ports/devel/linux_devtools
 # make install distclean

   A linuxos fejleszto"ko:rnyezetet csak az SAP R/3 46B IDES
   telepitesenel raktuk fel. Nincs ra szu:ksegu:nk, ha a FreeBSD
   rendszeren nem akarjuk ujralinkelni az Oracle adatbazist. Pontosan
   ez a helyezet, amikor egy Linux rendszerhez gyartott Oracle
   keszletet hasznalunk.

     --------------------------------------------------------------

    10.7.6.3. A szu:kseges RPM csomagok telepitese

   Az R3SETUP elinditasahoz PAM tamogatasra is szu:ksegu:nk lesz.
   Amikor elo"szo:r probaltuk meg telepiteni a FreeBSD 4.3-STABLE
   valtozatara az SAP-t, felraktuk PAM-et es az o:sszes hozzatartozo
   csomagot, majd vegu:l ugy birtuk mu"ko:desre, hogy
   kenyszeritettu:k a PAM telepiteset is. Az SAP R/3 4.6C SR2 eseten
   szinten sikeru:lt o:nmagaban felrakni a PAM RPM csomagjat is,
   tehat ugy nez ki, hogy a fu:ggo"segeit mar nem kell telepiteni:

 # rpm -i --ignoreos --nodeps --root /compat/linux --dbpath /var/lib/rpm \
 pam-0.68-7.i386.rpm

   Az Oracle 8.0.5 verziojahoz mellekelt intelligens u:gyno:k
   futtatasahoz fel kell rakni a RedHat tcl-8.0.5-30.i386.rpm nevu"
   Tcl csomagjat is (masku:lo:nben a az Oracle telepitese ko:zben
   szu:kseges ujralinkeles nem fog mu"ko:dni). Vannak ugyan egyebkent
   is gondok az Oracle ujralinkelesevel, azonban ez linuxos problema,
   nem pedig FreeBSD-s.

     --------------------------------------------------------------

    10.7.6.4. Nehany tovabbi tipp

   Hasznos lehet, ha felvesszu:k a linprocfs bejegyzest az /etc/fstab
   allomanyba. Ennek pontos reszleteit a linprocfs(5) man oldalon
   talaljuk meg. Masik fontos parameter a kern.fallback_elf_brand=3,
   amelyet az /etc/sysctl.conf allomanyba kell beszurnunk.

     --------------------------------------------------------------

  10.7.7. Az SAP R/3 ko:rnyezetenek letrehozasa

    10.7.7.1. A szu:kseges allomanyrendszerek es csatlakozasi pontok
    letrehozasa

   Egy egyszeru"bb telepiteshez eleg csupan a ko:vetkezo"
   allomanyrendszereket elkesziteni:

             csatlakozasi pont                   meret GB-ban         
   /compat/linux/oracle                  45 GB                        
   /compat/linux/sapmnt                  2 GB                         
   /compat/linux/usr/sap                 2 GB                         

   Keszitenu:nk kell meg nehany linket is, ku:lo:nben az SAP
   telepito"je panaszkodni fogni az elleno"rzesu:k soran:

 # ln -s /compat/linux/oracle /oracle
 # ln -s /compat/linux/sapmnt /sapmnt
 # ln -s /compat/linux/usr/sap /usr/sap

   Az egyik ilyen telepites ko:zben megjeleno" hibau:zenet (a PRD
   rendszer es az SAP R/3 4.6C SR2 telepitese eseten):

 INFO 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:200
     Checking existence of symbolic link /usr/sap/PRD/SYS/exe/dbg to
     /sapmnt/PRD/exe. Creating if it does not exist...

 WARNING 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:400
     Link /usr/sap/PRD/SYS/exe/dbg exists but it points to file
     /compat/linux/sapmnt/PRD/exe instead of /sapmnt/PRD/exe. The
     program cannot go on as long as this link exists at this
     location. Move the link to another location.

 ERROR 2002-03-19 16:45:36 R3LINKS_IND_IND Ins_SetupLinks:0
     can not setup link '/usr/sap/PRD/SYS/exe/dbg' with content
     '/sapmnt/PRD/exe'

     --------------------------------------------------------------

    10.7.7.2. A felhasznalok es ko:nyvtarak letrehozasa

   Az SAP R/3 rendszernek ket felhasznalora es harom csoportra van
   szu:ksege. Az igenyelt felhasznalok nevei az SAP rendszer
   azonositojatol (System ID, SID) fu:ggenek, amely harom betu"bo"l
   all. Egyes ilyen rendszerazonositok az SAP szamara vannak
   fenntartva. (Peldaul a SAP es a NIX. Ezek teljes listajat az SAP
   dokumentaciojaban talaljuk meg.) Erre az IDES telepitesehez az
   IDS, a 4.6C SR2 telepitesenel a PRD neveket adtuk, mivel ezeket a
   rendszereket eles hasznalatra szantak. Ennelfogva a ko:vetkezo"
   csoportokat hoztuk letre hozzajuk (a csoportok azonositoi ugyan
   elterhetnek az altalunk hasznaltaktol):

    csoport azonositoja    csoport neve             leiras            
   100                    dba             Adatbazis adminisztrator    
   101                    sapsys          SAP rendszer                
   102                    oper            Adatbazis operator          

   Az Oracle alapertelmezett telepitesenel csak a dba csoport jo:n
   letre. A dba csoportot oper csoportkent is hasznalhatjuk (bo"vebb
   informaciokert lasd az Oracle es az SAP dokumentaciojat).

   Ezenkivu:l az alabbi felhasznalokra van meg szu:ksegu:nk:

   felhasznaloi felhasznaloi  altalanos csoport   egyeb       leiras     
    azonosito        nev         nev            csoportok 
   1000         idsadm/prdadm sidadm    sapsys  oper      SAP            
                                                          adminisztrator 
   1002         oraids/oraprd orasid    dba     oper      Oracle         
                                                          adminisztrator 

   Az adduser(8) parancs hasznalata soran a ko:vetkezo"kre lesz
   szu:ksegu:nk egy "SAP Administrator" letrehozasahoz (figyelju:k a
   parancsertelmezo"t (shell) es a felhasznaloi ko:nyvtarat (home
   directory)):

 Name: sidadm
 Password: ******
 Fullname: SAP Administrator SID
 Uid: 1000
 Gid: 101 (sapsys)
 Class:
 Groups: sapsys dba
 HOME: /home/sidadm
 Shell: bash  (/compat/linux/bin/bash)

   Ugyanigy az "Oracle Administrator" eseteben:

 Name: orasid
 Password: ******
 Fullname: Oracle Administrator SID
 Uid: 1002
 Gid: 100 (dba)
 Class:
 Groups: dba
 HOME: /oracle/sid
 Shell: bash  (/compat/linux/bin/bash)

   A dba es oper csoportok hasznalata soran ne felejtsu:k el megadni
   az oper csoportot sem.

     --------------------------------------------------------------

    10.7.7.3. Ko:nyvtarak letrehozasa

   A ko:nyvtarakat altalaban ku:lo:n allomanyrendszerekkent hozzak
   letre, de ez teljesen az igenyeinken mulik. Mi most egyszeru"
   ko:nyvtarakkent alakitottuk ki ezeket, ezert tulajdonkeppen
   ugyanazon a RAID 5 to:mbo:n talalhatoak meg:

   Ehhez elo"szo:r beallitjuk az egyes ko:nyvtarak tulajdonosait es
   engedelyeit (root felhasznalokent):

 # chmod 775 /oracle
 # chmod 777 /sapmnt
 # chown root:dba /oracle
 # chown sidadm:sapsys /compat/linux/usr/sap
 # chmod 775 /compat/linux/usr/sap

   Masodsorban orasid felhasznalokent hozzuk letre az /oracle/SID
   alko:nyvtarait:

 # su - orasid
 # cd /oracle/SID
 # mkdir mirrlogA mirrlogB origlogA origlogB
 # mkdir sapdata1 sapdata2 sapdata3 sapdata4 sapdata5 sapdata6
 # mkdir saparch sapreorg
 # exit

   Az Oracle 8.1.7 telepitesenel meg tovabbi ko:nyvtarakra is
   szu:ksegu:nk lesz:

 # su - orasid
 # cd /oracle
 # mkdir 805_32
 # mkdir client stage
 # mkdir client/80x_32
 # mkdir stage/817_32
 # cd /oracle/SID
 # mkdir 817_32

     Megjegyzes: A client/80x_32 ko:nyvtarnak pontosan ilyen nevvel
     kell rendelkeznie. Ne cserelju:k ki a benne szereplo" x-et
     semmire se!

   A harmadik lepesben letrehozzuk a sidadm felhasznalohoz tartozo
   ko:nyvtarakat:

 # su - sidadm
 # cd /usr/sap
 # mkdir SID
 # mkdir trans
 # exit

     --------------------------------------------------------------

    10.7.7.4. Az /etc/services

   A SAP R/3 mu"ko:desehez fel kell vennu:nk nehany olyan bejegyzest
   is az /etc/services allomanyba, amelyek a FreeBSD telepitese soran
   nem jo:nnek letre. Igy tehat irjuk be az alabbi sorokat (legalabb
   a hasznalni kivant peldany szamahoz illo" sorokat adjuk meg -- ez
   jelen esetu:nkben most a 00. Termeszetesen az sem okoz gond, ha a
   dp, gw, sp es ms eseten beirjuk az o:sszes peldanynak megfelelo"
   portot 00-tol 99-ig). Amennyiben a SAProuter vagy az SAP OSS
   hasznalatara lenne szu:ksegu:nk, akkor adjuk meg a SAProuter altal
   lefoglalt 99-es peldanynak megfelelo" 3299-es portot a
   rendszeru:nko:n:

 sapdp00  3200/tcp # SAP menetiranyito        3200 + a peldany szama
 sapgw00  3300/tcp # SAP atjaro               3300 + a peldany szama
 sapsp00  3400/tcp #                          3400 + a peldany szama
 sapms00  3500/tcp #                          3500 + a peldany szama
 sapmsSID 3600/tcp # SAP u:zenetkezelo" szerver 3600 + a peldany szama
 sapgw00s 4800/tcp # biztonsagos SAP atjaro   4800 + a peldany szama

     --------------------------------------------------------------

    10.7.7.5. A szu:kseges nyelvi beallitasok

   Az SAP-nek legalabb ket olyan nyelvre van szu:ksege, amely nem
   reszei az alap RedHat telepiteseknek. Az SAP a sajat FTP
   szervereiro"l elerheto"ve tette az ehhez szu:kseges RPM csomagokat
   (amelyek viszont csak OSS tipusu hozzaferes birtokaban
   to:ltheto"ek le). A 0171356 szamu jegyzet tartalmazza a
   beszerzendo" RPM-ek listajat.

   Megcsinalhatjuk ugy is, hogy egyszeru"en csak linkeket hozunk
   letre (peldaul az de_DE es en_US ko:nyvtarakra), habar ezt egy
   eles rendszer eseteben semmikeppen sem ajanljuk (az IDES
   rendszerrel tapasztalataink szerint eddig meg remeku:l
   mu"ko:do:tt). Az alabbi nyelvi beallitasok fognak tehat neku:nk
   kelleni:

 de_DE.ISO-8859-1
 en_US.ISO-8859-1

   Igy hozzuk letre hozzajuk a linkeket:

 # cd /compat/linux/usr/share/locale
 # ln -s de_DE de_DE.ISO-8859-1
 # ln -s en_US en_US.ISO-8859-1

   A telepites soran az imentiek hianya gondokat okozhat. Ha
   folyamatosan figyelmen kivu:l hagyjuk az ezekbo"l fakado hibakat
   (vagyis a CENTRDB.R3S allomanyban a gondot okozo lepesek STATUS
   erteket OK-ra allitjuk), akkor komolyabb ero"feszitesek megtetele
   nelku:l majd keptelenek leszu:nk bejelentkezni a frissen
   telepitett SAP rendszeru:nkbe.

     --------------------------------------------------------------

    10.7.7.6. A rendszermag finomhangolasa

   Az SAP R/3 rendszerek temerdek mennyisegu" ero"forrast igenyelnek.
   Ennek kielegitesere az alabbi parametereket adjuk hozza a
   rendszermag beallitasait tartalmazo allomanyhoz:

 # Adjunk a memoriazabaloknak (SAP es Oracle):
 options MAXDSIZ="(1024*1024*1024)"
 options DFLDSIZ="(1024*1024*1024)"
 # Kell nehany System V beallitas is:
 options SYSVSHM # SYSV tipusu osztott memoria be
 options SHMMAXPGS=262144 # a megoszthato memoria maximalis merete lapokban
 #options SHMMAXPGS=393216 # a 46C telepitesekor ezt hasznaljuk
 options SHMMNI=256 # az osztott memoriakhoz tartozo azonositok maximalis szama
 options SHMSEG=100 # a futo programonkent megoszthato szegmensek maximuma
 options SYSVMSG # SYSV tipusu u:zenetsorok
 options MSGSEG=32767 # a rendszerben keringo" u:zenetszegmensek maximalis szama
 options MSGSSZ=32 # az u:zenetszegmensek merete. 2 hatvanya LEGYEN
 options MSGMNB=65535 # maximalis karakter u:zenetsoronkent
 options MSGTQL=2046 # a rendszerben levo" u:zenetek maximuma
 options SYSVSEM # SYSV tipusu szemaforok
 options SEMMNU=256 # a szemaforok UNDO strukturainak szama
 options SEMMNS=1024 # a rendszerben levo" szemaforok szama
 options SEMMNI=520 # a szemaforok azonositoinak mennyisege
 options SEMUME=100 # az UNDO kulcsok szama

   Az itt megadott minimum ertekek az SAP altal kiadott
   dokumentaciokbol szarmaznak. Mivel a Linux valtozathoz erro"l
   nincs ku:lo:n leiras, ezert a (32 bites) HP-UX valtozat
   dokumentacioi ko:zo:tt erdemes ennek utananezni. Mivel a 4.6C SR2
   telepitesehez hasznalt rendszeren valamivel to:bb fizikai memoria
   allt rendelkezesu:nkre, ezert az osztott szegmensek meretet
   nagyobbra tudtuk megvalasztani mind az SAP es mind az Oracle
   eseteben, ami magyarazza a megoszthato lapok nagyobb szamat.

     Megjegyzes: Az FreeBSD i386 valtozatanak telepitese soran
     hagyjuk meg a MAXDSIZ es DFLDSIZ ertekek alapertelmezett 1 GB-os
     maximumat. Ellenkezo" esetben ezekhez hasonlo furcsa
     hibau:zeneteket lathatunk: "ORA-27102: out of memory" vagy
     "Linux Error: 12: Cannot allocate memory".

     --------------------------------------------------------------

  10.7.8. Az SAP R/3 telepitese

    10.7.8.1. Az SAP CD-k elo"keszitese

   Sok CD-t kell a telepites soran mozgatni, tehat csatlakoztatni es
   levalasztani. Ha viszont elegendo" meghajtoval rendelkezu:nk,
   akkor akar csatlakoztathatjuk egyszerre is az o:sszeset. Vagy
   felmasolhatjuk a CD-t tartalmat a nekik megfelelo" ko:nyvtarakba:

 /oracle/SID/sapreorg/cd-neve

   ahol a cd-neve a ko:vetkezo"k valamelyike: KERNEL, RDBMS, EXPORT1,
   EXPORT2, EXPORT3, EXPORT4, EXPORT5 es EXPORT6 (4.6B/IDES),
   valamint KERNEL, RDBMS, DISK1, DISK2, DISK3, DISK4 es LANG (4.6C
   SR2). A csatlakoztatott CD-ken talalhato allomanyok neveinek
   nagybetu"seknek kell lenniu:k. Ha nem igy lenne, akkor a
   csatlakoztatasnal adjuk meg a -g opciot. Igy tehat a ko:vetkezo"
   parancsokat kell kiadnunk:

 # mount_cd9660 -g /dev/cd0a /mnt
 # cp -R /mnt/* /oracle/SID/sapreorg/cd-neve
 # umount /mnt

     --------------------------------------------------------------

    10.7.8.2. A telepito"szkript futtatasa

   Elso"kent egy install nevu" ko:nyvtarat kell elo"keszitenu:nk:

 # cd /oracle/SID/sapreorg
 # mkdir install
 # cd install

   Ezutan futtassuk le a telepito"szkriptet, ami pedig bemasolja az
   install ko:nyvtarba szinte az o:sszes fontos allomanyt:

 # /oracle/SID/sapreorg/KERNEL/UNIX/INSTTOOL.SH

   Az IDES (4.6B) valtozathoz egy teljes SAP R/3 bemutato rendszer is
   tartozik, ezert a megszokott harom CD helyett hat EXPORT tipusu
   CD-bo"l all. Itt a CENTRDB.R3S telepito"sablon csak a szabvany
   ko:zponti peldanyt hozza letre (R/3 es az adatbazis), az IDES
   ko:zponti peldanyat mar nem. Ezert az EXPORT1 ko:nyvtarbol ki kell
   masolnunk a CENTRDB.R3S allomanyt, ku:lo:nben az R3SETUP csak
   harom EXPORT CD-t fog kerni.

   Az ujabb SAP 4.6 SR2 kiadashoz negy EXPORT CD tartozik. A
   telepites folyamatat a CENTRAL.R3S allomanyban levo" parameterek
   vezerlik. A korabbi kiadasokkal ellentetben nincsenek ku:lo:n
   sablonok az adatbazissal es a nelku:le telepitendo" ko:zponti
   peldanyok szamara. Az SAP az adatbazisok telepitesere ku:lo:n
   sablont hasznal. Ujrakezdeskor a telepitest etto"l fu:ggetlenu:l
   elegendo" az eredeti allomannyal ujrainditani.

   A telepites ko:zben es utan az SAP-nek a hostname paranccsal csak
   a gep sajat nevet, nem pedig a teljes halozati nevet kell
   megadnunk. Ilyenkor ezt vagy egyenkent begepelju:k, vagy
   letrehozunk ra egy alnevet az orasid es sidadm (valamint a
   megfelelo" lepesekben a root) felhasznaloknak: alias
   hostname='hostname -s'. Ezenkivu:l meg az SAP telepitesekor
   letrehozott mindket felhasznalo .profile es .login allomanyait is
   beallithatjuk ennek megfelelo"en.

     --------------------------------------------------------------

    10.7.8.3. Az R3SETUP 4.6B verziojanak inditasa

   Ne felejtsu:k el jol beallitani az LD_LIBRARY_PATH ko:rnyezeti
   valtozot:

 # export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib

   A telepites ko:nyvtaraban root felhasznalokent inditsuk el az
   R3SETUP programot:

 # cd /oracle/IDS/sapreorg/install
 # ./R3SETUP -f CENTRDB.R3S

   A szkript ezek utan feltesz nehany kerdest (az alapertelmezett
   valaszok zarojelben, ko:zvetlenu:l a megadottak utan):

    Kerdes           Alapertelmezes                    Valasz            
   Enter SAP [C11]                          IDSEnter                     
   System ID                                
   Enter SAP                                                             
   Instance  [00]                           Enter
   Number                                   
   Enter                                                                 
   SAPMOUNT  [/sapmnt]                      Enter
   Directory                                
   Enter                                                                 
   name of                                  
   SAP       [troubadix.domain.de]          Enter
   central                                  
   host                                     
   Enter                                                                 
   name of   [troubadix]                    Enter
   SAP db                                   
   host                                     
   Select                                                                
   character [1] (WE8DEC)                   Enter
   set                                      
   Enter                                                                 
   Oracle                                   
   server                                   
   version                                  
   (1)                                      
   Oracle                                   
   8.0.5,                                   
   (2)                                      1Enter
   Oracle                                   
   8.0.6,                                   
   (3)                                      
   Oracle                                   
   8.1.5,                                   
   (4)                                      
   Oracle                                   
   8.1.6                                    
   Extract                                                               
   Oracle    [1] (Yes, extract)             Enter
   Client                                   
   archive                                  
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/KERNEL
   KERNEL CD                                
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/RDBMS
   RDBMS CD                                 
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT1
   EXPORT1                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD4_DIR] Enter
   EXPORT1                                  
   CD                                       
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT2
   EXPORT2                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD5_DIR] Enter
   EXPORT2                                  
   CD                                       
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT3
   EXPORT3                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD6_DIR] Enter
   EXPORT3                                  
   CD                                       
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT4
   EXPORT4                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD7_DIR] Enter
   EXPORT4                                  
   CD                                       
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT5
   EXPORT5                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD8_DIR] Enter
   EXPORT5                                  
   CD                                       
   Enter                                                                 
   path to   [/sapcd]                       /oracle/IDS/sapreorg/EXPORT6
   EXPORT6                                  
   CD                                       
   Directory                                                             
   to copy   [/oracle/IDS/sapreorg/CD9_DIR] Enter
   EXPORT6                                  
   CD                                       
   Enter                                                                 
   amount of                                850Enter (megabyte)
   RAM for                                  
   SAP + DB                                 
   Service                                                               
   Entry     [3600]                         Enter
   Message                                  
   Server                                   
   Enter                                                                 
   Group-ID  [101]                          Enter
   of sapsys                                
   Enter                                                                 
   Group-ID  [102]                          Enter
   of oper                                  
   Enter                                                                 
   Group-ID  [100]                          Enter
   of dba                                   
   Enter                                                                 
   User-ID   [1000]                         Enter
   of sidadm                                
   Enter                                                                 
   User-ID   [1002]                         Enter
   of orasid                                
   Number of                                                             
   parallel  [2]                            Enter
   procs                                    

   Ha a CD-ket nem ku:lo:nbo:zo" helyekre masoltuk, akkor az SAP
   telepito"je nem fogja megtalalni a ezeket (a rajtuk levo"
   LABEL.ASC segit neki az azonositasban) es kerni fogja a CD
   csatlakoztatasat, illetve a csatlakozasi pontjanak megadasat.

   A CENTRDB.R3S sem minden esetben mentes a hibaktol. A
   tapasztalataink szerint az EXPORT4 cimkeju" CD-t kerte ujra,
   miko:zben a helyes kulcsokat jelezte ki (6_LOCATION, majd
   7_LOCATION stb.), igy egyszeru"en csak lepju:nk tovabb az ertekek
   meghagyasaval.

   Fu:ggetlenu:l az imenti megemlitett problemaktol, egeszen az
   Oracle adatbaziskezelo" telepiteseig mindennek mu"ko:dnie kellene.

     --------------------------------------------------------------

    10.7.8.4. Az R3SETUP 4.6C SR2 elinditasa

   Allitsuk be jol az LD_LIBRARY_PATH ko:rnyezeti valtozo erteket. Ez
   nemileg elter a 4.6B es az Oracle 8.0.5 parosanak beallitasatol:

 # export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/lib

   A telepites ko:nyvtarabol root felhasznalokent inditsuk el az
   R3SETUP programot:

 # cd /oracle/PRD/sapreorg/install
 # ./R3SETUP -f CENTRAL.R3S

   A szkript ezek utan feltesz nehany kerdest (az alapertelmezett
   valaszok zarojelben, ko:zvetlenu:l a megadottak utan):

         Kerdes          Alapertelmezes             Valasz            
   Enter SAP System ID [C11]              PRDEnter                    
   Enter SAP Instance  [00]               Enter                       
   Number                                 
   Enter SAPMOUNT      [/sapmnt]          Enter                       
   Directory                              
   Enter name of SAP   [majestix]         Enter                       
   central host                           
   Enter Database      [PRD]              PRDEnter                    
   System ID                              
   Enter name of SAP   [majestix]         Enter                       
   db host                                
   Select character    [1] (WE8DEC)       Enter                       
   set                                    
   Enter Oracle server                                                
   version (2) Oracle                     2Enter
   8.1.7                                  
   Extract Oracle      [1] (Yes, extract) Enter                       
   Client archive                         
   Enter path to       [/sapcd]           /oracle/PRD/sapreorg/KERNEL 
   KERNEL CD                              
   Enter amount of RAM 2044               1800Enter (megabyte)        
   for SAP + DB                           
   Service Entry       [3600]             Enter                       
   Message Server                         
   Enter Group-ID of   [100]              Enter                       
   sapsys                                 
   Enter Group-ID of   [101]              Enter                       
   oper                                   
   Enter Group-ID of   [102]              Enter                       
   dba                                    
   Enter User-ID of    [1002]             Enter                       
   oraprd                                 
   Enter User-ID of    [1000]             Enter                       
   prdadm                                 
   LDAP support                           3Enter (nincs tamogatas)    
   Installation step   [1] (continue)     Enter                       
   completed                              
   Choose installation [1] (DB inst,file) Enter                       
   service                                

   Az OSUSERDBSID_IND_ORA es OSUSERIDADM_IND_ORA lepesekben az orasid
   es sidadm) felhasznalok letrehozasa hibakra futhat.

   Fu:ggetlenu:l az emlitett problemaktol, az Oracle adatbaziskezelo"
   telepiteseig mindennek remeku:l kell mu"ko:dnie.

     --------------------------------------------------------------

  10.7.9. Az Oracle 8.0.5 telepitese

   Az Oracle Linux valtozatanak telepitese soran felmeru:lo"
   problemak tekinteteben keressu:k fel az SAP fu:zeteket es az
   Oracle Readme allomanyait. A legto:bb, ha nem is az o:sszes gondot
   az egymassal nem kompatibilis fu:ggvenyko:nyvtarak okozzak.

   Az Oracle telepitesenek reszleteit a Az Oracle telepitese cimu"
   szakaszban talaljuk.

     --------------------------------------------------------------

    10.7.9.1. Az Oracle 8.0.5 telepitese az orainst segitsegevel

   Az Oracle 8.0.5 verziojanak hasznalata eseten nehany tovabbi
   fu:ggvenyko:nyvtar ujralinkelesere is szu:kseg lesz, mivel az
   Oracle 8.0.5 meg a regi glibc ko:nyvtarral lett forditva
   (RedHat 6.0), viszont a RedHat 6.1 mar a glibc ujabb verziojat
   hasznalja. A linkeles mu"ko:desehez az alabbi csomagokat kell meg
   telepitenu:nk:

     * compat-libs-5.2-2.i386.rpm

     * compat-glibc-5.2-2.0.7.2.i386.rpm

     * compat-egcs-5.2-1.0.3a.1.i386.rpm

     * compat-egcs-c++-5.2-1.0.3a.1.i386.rpm

     * compat-binutils-5.2-2.9.1.0.23.1.i386.rpm

   A reszleteket lasd az SAP fu:zeteiben vagy az Oracle Readme
   allomanyaiban. Amennyiben ez nem oldhato meg, akkor az eredeti
   binarisok, esetleg az eredeti RedHat rendszerbo"l szarmazo
   ujralinkelt binarisok is hasznalhatoak (habar a telepites
   pillanataban szemelyesen ezt nem tudtuk elleno"rizni).

   Az intelligens u:gyno:k leforditasahoz fel kell raknunk a RedHat
   sajat Tcl csomagjat. Ha ehhez nem tudjuk beszerezni a
   tcl-8.0.3-20.i386.rpm csomagot, akkor a RedHat 6.1 valtozatahoz
   keszu:lt tcl-8.0.5-30.i386.rpm is megteszi.

   Az ujralinkelesto"l eltekintve a telepites to:bbi resze szinte
   adja magat:

 # su - oraids
 # export TERM=xterm
 # export ORACLE_TERM=xterm
 # export ORACLE_HOME=/oracle/IDS
 # cd $ORACLE_HOME/orainst_sap
 # ./orainst

   Az Oracle On-Line Text Viewer kikapcsolasan (mivel az jelenleg nem
   Linux alatt sem erheto" el) kivu:l mindegyik kepernyo"t hagyjuk
   jova az Enter billentyu" lenyomasaval. Az Oracle ezutan a
   rendelkezesre allo gcc, egcs vagy i386-redhat-linux-gcc helyett a
   i386-glibc20-linux-gcc hasznalataval ujra akarjuk linkelni magat.

   Ido" hianyaban az Oracle 8.0.5 PreProduction kiadasabol emeltu:nk
   ki binarisokat, de az adatbaziskezelo" rendszer felelesztesere
   tett elso" kiserleteink kudarcba fulladtak, es ezutan a megfelelo"
   RPM-ek o:sszeszedese valodi remalomnak bizonyult.

     --------------------------------------------------------------

    10.7.9.2. Az Oracle 8.0.5 Pre-production Release for Linux (Kernel
    2.0.33) telepitese

   A telepites nagyon ko:nnyu". Csatlakoztassuk a CD-t, majd inditsuk
   el a telepito"t. Ezutan meg kell adnunk az Oracle felhasznaloi
   ko:nyvtarat es a telepito" odamasolja az o:sszes binarist. Habar a
   telepites megkezdese elo"tt a korabbi kiserleteink nyomat nem
   tu:ntettu:k el.

   Ezt ko:veto"en az Oracle adatbazisrendszer minden tovabbi gond
   nelku:l elindithato.

     --------------------------------------------------------------

  10.7.10. Az Oracle 8.1.7 Linux valtozatanak telepitese

   Szedju:k le az oracle8172.tgz allomanyt a Linux rendszeren
   letrehozott ko:nyvtarabol, es bontsuk ki a /oracle/SID/817_32/
   ko:nyvtarba.

     --------------------------------------------------------------

  10.7.11. Az SAP R/3 telepitesenek folytatasa

   Elo"szo:r is elleno"rizzu:k az isamd (sidadm) es oraids (orasid)
   felhasznalok ko:rnyezeti beallitasait. A .profile, .login es
   .cshrc allomanyaikban a korabbi beallitasok szerint kell
   szerepelnie a hostname parancsnak. Ha meg mindig a teljes halozati
   nev lenne meg bennu:nk, akkor a hostname parancsot at kell irni
   mind a harom allomanyban a hostname -s parancsra.

     --------------------------------------------------------------

    10.7.11.1. Az adatbazis felto:ltese

   Ezutan az R3SETUP folytathato vagy ujraindithato (attol fu:ggo"en,
   hogy a kilepes valasztottuk-e vagy sem). Az R3SETUP ekkor
   letrehozza az adatbazisban a tablakat es az R3load meghivasaval
   felto:lti ezeket adatokkal (a 46B IDES valtozat eseteben az
   EXPORT1 - EXPORT6, a 46C eseteben pedig a DISK1 - DISK4
   lemezekro"l).

   Amikor a felto:ltes befejezo"do"tt (ami akar orakig is eltarthat),
   szu:kseg lesz meg nehany jelszo megadasara is. A
   probatelepiteseknel nyugodtan hasznalhatjuk a jol ismert
   alapertelmezett jelszavakat (azonban mindenkeppen valtoztassuk meg
   ezeket, ha egy kicsit is szamit a biztonsag!):

                 Kerdes                            Valasz             
   Enter Password for sapr3            sapEnter                       
   Confirum Password for sapr3         sapEnter                       
   Enter Password for sys              change_on_installEnter         
   Confirm Password for sys            change_on_installEnter         
   Enter Password for system           managerEnter                   
   Confirm Password for system         managerEnter                   

   A 4.6B telepitese soran meg gondjaink akadtak a dipgntab
   hasznalataval.

     --------------------------------------------------------------

    10.7.11.2. Az Oracle Listener elinditasa

   Igy kell elinditani az orasid felhasznaloval az Oracle Listenert:

 % umask 0; lsnrctl start

   Ha mashogy probalkozunk, akkor az ORA-12546 kodu hibat fogjuk
   kapni, mert a halozati portok socketei nem rendelkeznek a
   szu:kseges engedelyekkel. Lasd a 072984-es SAP fu:zet.

     --------------------------------------------------------------

    10.7.11.3. Az MNLS tablak frissitese

   Ha nem Latin 1 kodolasu nyelveket akarunk importalni az SAP
   rendszerbe, akkor frissitenu:nk kell a to:bbnyelvu" nyelvi
   tamogatashoz (Multi National Language Support, MNLS) tartozo
   tablazatokat. Ezek bemutatasat a 15023 es 45619 szamu SAP OSS
   fu:zetekben olvashatjuk. Minden mas esetben az SAP telepitesekor
   nyugodtan kihagyhatjuk.

     Megjegyzes: Ha meg nincs is konkretan szu:ksegu:nk az MNLS-re,
     akkor is elleno"riznu:nk es inicializalnunk kell a TCPDB tablat.
     A 0015023 es 0045619 szamu SAP fu:zetekben tudhatunk meg erro"l
     to:bbet.

     --------------------------------------------------------------

  10.7.12. Telepites utani teendo"k

    10.7.12.1. Az SAP R/3 licenckulcsanak megszerzese

   Az SAP R/3 licenckulcsat ku:lo:n kell kerni. Fontos, mert a
   telepiteshez hasznalatos ideiglenes licenc csak negy hetig
   ervenyes. Elo"szo:r szerezzu:k meg a hardverkulcsot.
   Jelentkezzu:nk be az idsadm felhasznaloval es adjuk ki a
   saplicense parancsot:

 # /sapmnt/IDS/exe/saplicense -get

   Ha a saplicense parameter nelku:l meghivasara valaszul opciokat
   listaz ki. A licenckulcsot megerkezese utan igy tudjuk elesiteni:

 # /sapmnt/IDS/exe/saplicense -install

   Ezutan a ko:vetkezo" ertekeket kell megadni:

 SAP SYSTEM ID   = SID, 3 karakter
 CUSTOMER KEY    = hardverkulcs, 11 karakter
 INSTALLATION NO = telepites szama, 10 szamjegy
 EXPIRATION DATE = eeeehhnn, tehat "99991231"
 LICENSE KEY     = licenckulcs, 24 karakter

     --------------------------------------------------------------

    10.7.12.2. A felhasznalok letrehozasa

   Hozzunk letre egy felhasznalot a 000 kliensen belu:l (a csak rajta
   belu:l elvegezheto" feladatokhoz, aki ku:lo:nbo:zik a sap* es ddic
   felhasznaloktol). Felhasznalonevkent altalaban a wartung nevet
   valasztottuk (ami angolul a service nevnek, avagy szolgaltatasnak
   felel meg). A sap_new es sap_all nevu" profilok is kellenek. A
   biztonsagossag kedveert a kliens o:sszes alapertelmezett
   felhasznalojanak (beleertve a sap* es ddic felhasznalokat is)
   valtoztassuk meg a jelszavat.

     --------------------------------------------------------------

    10.7.12.3. A szallitasi rendszer, a profilok, mu"ko:desi modok stb.
    beallitasa

   A ddic es sap* felhasznaloktol eltero" nevu" felhasznaloval a 000
   kliensen belu:l legalabb a ko:vetkezo"ket vegezzu:k el:

                           Feladat                         Tranzakcio 
   A szallitasi rendszer (Transport System) beallitasa,    STMS       
   peldaul a Stand-Alone Transport Domain Entity ertekre   
   A rendszer profiljanak letrehozasa es szerkesztese      RZ10       
   A mu"ko:desi modok es peldanyok karbantartasa           RZ04       

   Az imenti es az o:sszes to:bbi telepites utani lepesek leirasa
   teljes egeszeben megtalalhato az SAP telepitesi utmutatoiban.

     --------------------------------------------------------------

    10.7.12.4. Az initsid.sap (initIDS.sap) szerkesztese

   Az /oracle/IDS/dbs/initIDS.sap allomany tartalmazza a SAP tartalek
   profiljat. Itt to:bbek ko:zt a hasznalni kivant szalag meretet, a
   to:mo:rites tipusat es hasonlo parametereket kell definialni. A
   sapdba / brbackup futtatasahoz a ko:vetkezo" ertekeket
   valtoztattuk meg:

 compress = hardware
 archive_function = copy_delete_save
 cpio_flags = "-ov --format=newc --block-size=128 --quiet"
 cpio_in_flags = "-iuv --block-size=128 --quiet"
 tape_size = 38000M
 tape_address = /dev/nsa0
 tape_address_rew = /dev/sa0

   Magyarazat:

   compress (to:mo:rites): HP DLT1 tipusu szalagot hasznaltunk, ami
   tud hardveres to:mo:ritest.

   archive_function (archivalasi hazirend): Ez adja meg, hogy
   alapertelmezes szerint mi to:rtenjen az Oracle archivalt
   naploival: az uj naploallomanyok elo"szo:r a szalagra mento"dnek,
   majd a mar lementett naplok ismet mentesre keru:lnek es vegu:l
   to:rlo"dnek. Ezzel sok fejfajastol meneku:lu:nk meg, mivel
   ilyenkor az archivalo szalagok esetleges seru:lese eseten is
   valoszinu"leg kepesek leszu:nk visszaallitani az adatbazist.

   cpio_flags (a cpio beallitasa): A -B hasznalata alapertelmezes,
   amivel a blokkok merete 5120 byte-ra allitodik. A DLT tipusu
   szalagokhoz a HP legalabb 32 KB-os blokkmeretet javasolt, ezert a
   --block-size=128 beallitassal ezt 64 KB-ra no:veltu:k.
   Szu:ksegu:nk volt a --format=newc beallitasra is, mivel 65535-nel
   to:bb inode szamunk van. Az utolso beallitas a --quiet, amivel
   megakadalyozzuk, hogy a cpio lementett blokkokat o:sszefoglalo
   kijelzesere begerjedjen a brbackup.

   cpio_in_flags (a cpio bemeneti beallitasai): A szalagok
   visszato:ltesenel hasznalt beallitasok. A formatumot automatikusan
   felismeri.

   tape_size (szalagmeret): Ezzel adjuk meg altalaban a szalag nyers
   kapacitasat. Biztonsagi okokbol (hardveres to:mo:ritest
   hasznalunk) ez az ertek a tenylegesnel valamivel kisebb.

   tape_address (szalagos eszko:z): a cpio altal hasznalhato nem
   visszatekerheto" eszko:z.

   tape_address_rew (visszatekerheto" szalagos eszko:z): A cpio altal
   hasznalhato visszatekerheto" eszko:z.

     --------------------------------------------------------------

    10.7.12.5. Telepites utani beallitasok

   Az SAP alabbi parametereit kell beallitani a telepites utan (IDES
   46B, 1 GB memoriaval):

                     Nev                             Ertek            
   ztta/roll_extension                     250000000                  
   abap/heap_area_dia                      300000000                  
   abap/heap_area_nondia                   400000000                  
   em/initial_size_MB                      256                        
   em/blocksize_kB                         1024                       
   ipc/shm_psize_40                        70000000                   

   0013026 SAP fu:zet:

                    Nev                             Ertek             
   ztta/dynpro_area                      2500000                      

   0157246 SAP fu:zet:

                    Nev                              Ertek            
   rdisp/ROLL_MAXFS                       16000                       
   rdisp/PG_MAXFS                         30000                       

     Megjegyzes: A fenti parameterek hasznalataval egy 1 gigabyte
     fizikai memoriaval rendelkezo" rendszer eseten nagyjabol igy
     alakul a memoriahasznalat:

 Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free

     (547 MB aktiv, 305 MB inaktiv, 109 MB ro:gzitett, 40 MB
     gyorsitotar, 112 MB puffer, 3492 KB szabad)

     --------------------------------------------------------------

  10.7.13. A telepites soran adodo problemak

    10.7.13.1. Az R3SETUP ujrainditasa egy problema kijavitasa utan

   Az R3SETUP hiba eseten leall. Miutan atneztu:k a hibara utalo
   naplokat es elharitottuk a hiba okat, ujra el kell inditanunk az
   R3SETUP programot, majd a REPEAT opcio kivalasztasaval probaljuk
   megismetelni az R3SETUP altal kifogasolt legutobbi mu"veletet.

   Az R3SETUP ujrainditasahoz egyszeru"en adjuk meg a megfelelo" R3S
   allomanyt:

 # ./R3SETUP -f CENTRDB.R3S

   a 4.6B verzio eseten, vagy a

 # ./R3SETUP -f CENTRAL.R3S

   a 4.6C verzio eseten, fu:ggetlenu:l attol, hogy a hiba a
   CENTRAL.R3S vagy DATABASE.R3S allomanyoknal keletkezett.

     Megjegyzes: Egyes lepeseknel az R3SETUP ugy veli, hogy az SAP
     programjai mu"ko:dnek (mivel a hozzajuk tartozo lepeseket mar
     megtettu:k), igy a hibak miatt az adatbazist esetleg korabban
     nem tudta elinditani. Ezert a hibak kijavitasanak vegeztevel az
     R3SETUP ismetelt inditasa elo"tt neku:nk kell beinditani mind az
     adatbazist, mind pedig az SAP rendszert.

     Ne felejtsu:k el ujra elinditani az Oracle Listener
     segedprogramjat sem (az orasid felhasznaloval adjuk ki a umask
     0; lsnrctl start parancsot), ha az ido"ko:zben leallt volna
     (peldaul a rendszer kenyszeru" ujrainditasa miatt).

     --------------------------------------------------------------

    10.7.13.2. OSUSERSIDADM_IND_ORA az R3SETUP ko:zben

   Ha az R3SETUP panaszkodik ebben a lepesben, akkor irjuk at az
   altala ekkor hasznalt sablont (a 4.6B eseten ez a CENTRDB.R3S,
   illetve a 4.6C eseten ez a CENTRAL.R3S vagy a DATABASE.R3S).
   Keressu:k a [OSUSERSIDADM_IND_ORA] szo:veget, vagy csak a
   STATUS=ERROR bejegyzest, majd irjuk be a ko:vetkezo" ertekeket:

 HOME=/home/sidadm (u:res volt)
 STATUS=OK (ERROR statusza volt)
        

   Ezutan inditsuk ujra az R3SETUP programot.

     --------------------------------------------------------------

    10.7.13.3. OSUSERDBSID_IND_ORA az R3SETUP ko:zben

   Az R3SETUP ebben a lepesben is hajlamos panaszkodni. Az itt
   felbukkano hiba hasonlo az OSUSERSIDADM_IND_ORA lepesben
   jelentkezo"ho:z. Szerkesszu:k at az R3SETUP altal ilyenkor
   hasznalt sablont (4.6B verzio eseten ez a CENTRDB.R3S, illetve
   4.6C verzional a CENTRAL.R3S vagy DATABASE.R3S). Keressu:k meg a
   [OSUSERDBSID_IND_ORA] reszt, vagy csak a STATUS=ERROR bejegyzest,
   majd irjuk at az ebben a szakaszban szereplo" erteket igy:

 STATUS=OK

   Inditsuk ujra az R3SETUP programot.

     --------------------------------------------------------------

    10.7.13.4. "oraview.vrf FILE NOT FOUND" hiba az Oracle telepitese
    ko:zben

   A telepites megkezdese elo"tt nem tiltottuk le az Oracle On-Line
   Text Viewer felrakasat. Habar Linux eseten ez nem hasznalhato,
   alapertelmezes szerint megis ki van valasztva. Az Oracle telepito"
   menu:jeben tiltsuk le ezt es nelku:le kezdju:k ujra a telepitest.

     --------------------------------------------------------------

    10.7.13.5. "TEXTENV_INVALID" hiba az R3SETUP, RFC vagy SAPgui Start
    programokban

   Ha ilyen hibaval keru:lu:nk szembe, akkor hianyoznak a megfelelo"
   nyelvi allomanyok. A 0171356 SAP fu:zet tartalmazza a telepitendo"
   RPM csomagok felsorolasat (peldaul a RedHat 6.1 eseten a
   saplocales-1.0-3 es saposcheck-1.0-1). Amennyiben figyelmen kivu:l
   hagyjuk az ilyen hibakat, es az R3SETUP minden kiakadasanal
   atirjuk (a CENTRDB.R3S allomanyban) az STATUS erteket az ERROR
   ertekro"l az OK ertekre es ujrainditjuk, az SAP nem allitodik be
   jol es nem tudunk a SAPgui alkalmazassal racsatlakozni a frissen
   telepitett rendszerre meg akkor sem, ha el tudtuk inditani. Amikor
   a regebbi linuxos SAPgui alkalmazassal csatlakozunk, a ko:vetkezo"
   u:zeneteket kapjuk:

 Sat May 5 14:23:14 2001
 *** ERROR => no valid userarea given [trgmsgo. 0401]
 Sat May 5 14:23:22 2001
 *** ERROR => ERROR NR 24 occured [trgmsgi. 0410]
 *** ERROR => Error when generating text environment. [trgmsgi. 0435]
 *** ERROR => function failed [trgmsgi. 0447]
 *** ERROR => no socket operation allowed [trxio.c 3363]
 Speicherzugriffsfehler

   Ez a viselkedes annak ko:szo:nheto", hogy az SAP R/3 nem kepes jol
   o:sszerendelni a nyelvi beallitasokat, so"t, magat sem kepes jol
   beallitani (hianyoznak nemely bejegyzesek az adatbazis egyes
   tablaiban). Az SAP-hez ugy tudunk ilyenkor csatlakozni, ha a
   DEFAULT.PFL allomanyba felvesszu:k a ko:vetkezo" bejegyzeseket
   (lasd 0043288 fu:zet):

 abap/set_etct_env_at_new_mode = 0
 install/collate/active = 0
 rscp/TCP0B = TCP0B

   Majd inditsuk ujra az egesz SAP rendszert. Ezutan mar tudunk
   csatlakozni hozza, meg ha az orszagra jellemzo" nyelvi beallitasok
   nem is mu"ko:dnek to:keletesen. Miutan korrigaltuk az orszag
   beallitasait (es felraktuk a megfelelo" nyelvi allomanyokat),
   tavolitsuk el az imenti bejegyzeseket a DEFAULT.PFL allomanybol es
   inditsuk ujra az SAP rendszert.

     --------------------------------------------------------------

    10.7.13.6. Az ORA-00001 hiba

   Ez a hiba FreeBSD alatt az Oracle 8.1.7 hasznalata soran
   ko:vetkezhet be. Akkor to:rtenik, amikor az Oracle adatbazis nem
   volt kepes rendesen inicializalni magat es o:sszeomlott, aminek
   reven szemaforokat es memoriat hagyott megosztva a rendszerben.
   Igy az adatbazis ko:vetkezo" inditasakor kapunk egy ko:ver
   ORA-00001 hibat.

   Az ipcs -a paranccsal keressu:k meg ezeket, majd az ipcrm
   segitsegevel pedig szamoljuk fel.

     --------------------------------------------------------------

    10.7.13.7. Az ORA-00445 (a PMON hatterprogram nem indult el) hiba

   Ez a hiba az Oracle 8.1.7 hasznalatakor ko:vetkezhet be. Akkor
   kapjuk ezt a hibat, amikor prdadm felhasznalokent a elinditjuk
   startsap szkriptet (peldaul startsap_majestix_00).

   Erre gyogyir lehet, ha ehelyette az adatbazis elinditasahoz az
   oraprd felhasznaloval adjuk ki az svrmgrl parancsot:

 % svrmgrl
 SVRMGR> connect internal;
 SVRMGR> startup;
 SVRMGR> exit

     --------------------------------------------------------------

    10.7.13.8. Az ORA-12546 (A Listener inditasa megfelelo"
    engedelyekkel) hiba

   Az Oracle Listener alkalmazasat oraids felhasznalokent az alabbi
   paranccsal inditsuk el:

 # umask 0; lsnrctl start

   Masku:lo:nben ORA-12546 hibat kapunk, mivel a halozati portokhoz
   tartozo socketek nem rendelkeznek a megfelelo" engedelyekkel. Lasd
   0072984 SAP fu:zet.

     --------------------------------------------------------------

    10.7.13.9. Az ORA-27102 (Nincs eleg memoria) hiba

   Akkor fordul elo" ilyen hiba, amikor a MAXDSIZ es DFLDSIZ ertekeit
   1 GB-nal (1024 x 1024 x 1024-nel) nagyobbra allitottuk. Melle meg
   kapunk egy "Linux Error 12: Cannot allocate memory" hibat is.

     --------------------------------------------------------------

    10.7.13.10. [DIPGNTAB_IND_IND] az R3SETUP ko:zben

   Erro"l alapveto"en a 0130581 szamu SAP fu:zet ad tajekoztatast (az
   R3SETUP DIPGNTAB lepese hibara fut). Az IDES telepitese soran az
   SAP rendszer valamiert az "IDS" nev helyett egy u:res
   karakterlancot hasznal. Ez a ko:nyvtarak elereseben kisebb
   gondokat okoz, mivel az eleresi utvonaluk a SID-bo"l generalodik
   (ami ebben az esetben az IDS). Tehat a

 /usr/sap/IDS/SYS/...
 /usr/sap/IDS/DVMGS00

   helyett a ko:vetkezo"t probalja meg elerni:

 /usr/sap//SYS/...
 /usr/sap/D00

   A telepites folytatasahoz letrehoztunk egy linket es egy masik
   ko:nyvtarat:

 # pwd
 /compat/linux/usr/sap
 # ls -l
 total 4
 drwxr-xr-x 3  idsadm sapsys 512 May 5 11:20 D00
 drwxr-x--x 5  idsadm sapsys 512 May 5 11:35 IDS
 lrwxr-xr-x 1  root   sapsys 7 May 5 11:35 SYS -> IDS/SYS
 drwxrwxr-x 2  idsadm sapsys 512 May 5 13:00 tmp
 drwxrwxr-x 11 idsadm sapsys 512 May 4 14:20 trans

   Eszrevettu:k, hogy a SAP fu:zetekben (0029227 es 0008401) ugyanezt
   a viselkedest irjak le. Az SAP 4.6C telepitesenel azonban ilyen
   hibaval nem talalkoztunk.

     --------------------------------------------------------------

    10.7.13.11. [RFCRSWBOINI_IND_IND] az R3SETUP ko:zben

   Az SAP 4.6C telepitese folyaman ez a hiba csupan egy korabban
   beko:vetkezett masik hiba utohatasa volt. Itt at kell neznu:nk az
   o:sszes erintett naplot es ki kell javitanunk a tenyleges
   problemat.

   Amennyiben a naplok atvizsgalasa utan csak ezt talaljuk egyedu:li
   hibanak (lasd SAP fu:zetek), allitsuk at (a CENTRDB.R3S
   allomanyban) a STATUS erteket az OK ertekre, majd inditsuk ujra az
   R3SETUP programot. A telepites befejezese utan hajtsuk vegre az
   SE38 tranzakciobol az RSWBOINS riportot. A tovabbi RFCRSWBOINI es
   RFCRADDBDIF lepesekkel kapcsolatban lasd a 0162266 SAP fu:zetet.

     --------------------------------------------------------------

    10.7.13.12. [RFCRADDBDIF_IND_IND] az R3SETUP ko:zben

   Itt az elo"bbihez hasonlo feltetelek elnek: mindenkeppen
   elleno"rizzu:k a naplokban, hogy a hibat nem egy korabban
   keletkezett hiba okozta.

   Ha tenyleg csak az 0162266 SAP fu:zetben leirtak ervenyesek, akkor
   (a CENTRDB.R3S allomanyban) allitsuk a gondot okozo lepes STATUS
   erteket az ERROR ertekro"l az OK ertekre, es inditsuk ujra az
   R3SETUP programot. A telepites utan pedig hajtsuk vegre az SE38
   tranzakcibol az RADDBDIF riportot.

     --------------------------------------------------------------

    10.7.13.13. A sigaction sig31: File size limit exceeded hiba

   Ez a disp es work SAP programok inditasa soran to:rtenhet meg. Az
   SAP rendszert indito startsap szkriptro"l levalva indulnak el a
   to:bbi SAP program elinditasaert felelo"s alfolyamatok. Ennek
   eredmenyekeppen a szkript maga nem fogja eszrevenni a hibat.

   Az SAP programok elindulasat az ps ax | grep SID paranccsal tudjuk
   elleno"rizni. Az eredmenyu:l kapott listaban az o:sszes aktiv
   Oracle es SAP programnak szerepelnie kell. Ha ebbo"l az tu"nik ki,
   hogy bizonyos programok hianyoznak, vagy nem kepesek kapcsolodni
   az SAP rendszerhez, akkor az /usr/sap/SID/DVEBMGSnr/work/
   ko:nyvtarban nezzu:k at a hozzajuk tartozo naploallomanyokat.
   Elso"sorban a dev_ms es a dev_disp allomanyok fontosak szamunkra.

   A 31-es jelzes akkor keletkezik, ha az Oracle es az SAP altal
   hasznalt osztott memoria merteke meghaladja a rendszermag
   beallitasai ko:zt megadott erteket. Ezt tehat ennek no:velesevel
   lehet orvosolni:

 # az eles 46C rendszereknek to:bb kell:
 options SHMMAXPGS=393216
 # a 46B beeri kevesebbel is:
 #options SHMMAXPGS=262144

     --------------------------------------------------------------

    10.7.13.14. A saposcol nem indul

   A saposcol (4.6D verzio) programmal akad nehany problema. Az SAP
   rendszer az saposcol segitsegevel probal adatokat gyu"jteni a
   rendszer teljesitmenyero"l. Mivel ez a program nem feltetlenu:l
   szu:kseges az SAP rendszer mu"ko:desehez, ez a problema nem
   tekintheto" komolynak. A korabbi (4.6B) verziokban ugyan
   mu"ko:dik, de semmilyen adatot nem kepes begyu"jteni (mivel a
   legto:bb hivas, peldaul a processzorhasznalat fu:ggvenye,
   egyszeru"en csak nullat ad vissza).

     --------------------------------------------------------------

10.8. Temak haladoknak

   Ha kivancsiak vagyunk a Linux emulacio mu"ko:desere, olvassuk el
   ezt a szakaszt. Az itt ismertettek leginkabb Terry Lambert
   (<tlambert@primenet.com>) FreeBSD chat levelezesi lista cimere irt
   levele nyoman keru:lnek bemutatasra (Az u:zenet azonositoja:
   <199906020108.SAA07001@usr09.primenet.com>).

     --------------------------------------------------------------

  10.8.1. Hogyan mu"ko:dik?

   A FreeBSD rendelkezik egy un. "vegrehajtasi osztaly beto:lto"vel"
   (execution class loader). Ez lenyegeben a execve(2) rendszerhivas
   alatt meghuzodo absztrakcios reteg.

   A FreeBSD-nek a #! karaktersorozat hatasara parancsertelmezo"k
   vagy a hozzajuk tartozo szkriptek beto:ltesere utasito biztonsagi
   beto:lto" helyett van egy listaja az alkalmas beto:lto"kro"l.

   A UNIX rendszerek a hagyomanyok szerint egyetlen beto:lto"vel
   rendelkeznek, ami elo"szo:r megvizsgalja a beto:lteni kivant
   allomany bu"vo:s szamat (ami altalaban az elso" 4 vagy 8 byte) es
   ez alapjan eldo:nti, hogy az adott formatum tamogatott-e.
   Amennyiben ez igy van, meghivja a beto:lto"t.

   Ha a binaris tipusa nem ismert a rendszer szamara, akkor az
   execve(2) hivas hibaval ter vissza, es a parancsertelmezo"
   probalja meg a sajat parancsaikent ertelmezni.

   Eddig ez volt az alapertelmezes, "akarmilyen parancsertelmezo"nk
   is volt".

   Keso"bb az sh(1) kodjaba bekeru:lt egy aprocska okositas, amivel
   megnezte az allomany elso" ket karakteret, es ha az :\n volt,
   akkor a futtatashoz maga helyett a csh(1) parancsertelmezo"t hivta
   meg (ezt allitolag elo"szo:r a SCO csinalta).

   A FreeBSD viszont vegignezi a beto:lto"k teljes listajat, amiben a
   sor vegen szerepel egy altalanos #! formatumu beto:lto". Ez az
   allomany futtatasahoz hasznalatos ertelmezo"k kodjat keresi, es ha
   egyet sem sikeru:l azonositania, akkor a /bin/sh programot inditja
   el.

   A Linux ABI tamogatasat a FreeBSD ugy oldja meg, hogy elo"szo:r
   eszleli az ELF binaris bu"vo:s szamat (ekkor meg nem tesz
   ku:lo:nbseget a FreeBSD, Solaris, Linux vagy mas ELF tipusu
   binarisokat hasznalo operacios rendszerek ko:zt).

   Ezutan az ELF formatum beto:lto"je az ELF allomany megjegyzeseket
   tarolo szakaszaban belyegek (brand) utan kutat, ami SVR4 es
   Solaris ELF binarisok eseten nem letezik.

   A Linux binarisokat mu"ko:desu:kho:z a brandelf(1) segitsegevel
   Linux tipusunak kell megbelyegezni:

 # brandelf -t Linux allomany

   Miutan ezt megcsinaltuk, az ELF beto:lto" eszre fogja venni az
   allomany Linux tipusat.

   Mikor az ELF beto:lto" eszleli, hogy az allomany Linux tipusu,
   kicsereli egy mutato erteket a proc strukturaban. Minden
   rendszerhivas ezen a mutaton keresztu:l erheto" el (a hagyomanyos
   UNIX rendszerekben ez a rendszerhivasokat tartalmazo sysent[]
   strukturato:mb). Emellett a frissen elinditott program szoftveres
   megszakitasait tartalmazo to:mbjehez beallitja a specialis
   jelzesek kezeleset, valamint a Linux modul altal vegzett nehany
   tovabbi (kisebb) javitast.

   A Linux rendszerhivasokat tartalmazo to:mb to:bbek ko:zt
   tartalmazza a sysent[] bejegyzesek egy listajat, amelyek cimei a
   rendszermag Linux moduljara mutatnak.

   Amikor a Linux binaris hiv egy rendszerhivast, a hozzatartozo
   szoftveres megszakitas kodja a proc strukturabol a neki megfelelo"
   rendszerhivas kodjat hivatkozza, igy FreeBSD rendszerhivas
   belepesi pontja helyett a Linuxet kapja meg.

   Raadasul Linux modban a ku:lo:nbo:zo" allomanyok hivatkozasai is
   atiranyitodnak. Ez lenyegeben olyan, mint amit az
   allomanyrendszerek csatlakoztatasanal a union beallitas csinal
   (ami nem egyezik meg az unionfs allomanyrendszerrel!). Ilyenkor az
   allomanyokat elo"szo:r a /compat/linux/eredeti-hely ko:nyvtaraban
   keresi, es majd ha ott nem talalja, csak akkor kezdi el keresni az
   /eredeti-hely ponton. Ezzel oldhatjuk meg, hogy mas binarisok
   futtatasat igenylo" binarisok is kepesek legyenek rendesen
   mu"ko:dni (peldaul igy az egesz linuxos eszko:ztar tud futni a
   Linux ABI-n keresztu:l). Egyuttal arra is utal, hogy ha a Linux
   binarisok szamara nem all rendelkezesre a megfelelo" binaris,
   akkor FreeBSD binarisokat is el tudnak inditani. Ha a uname(1)
   programot pedig bemasoljuk a /compat/linux ko:nyvtaron belu:lre,
   akkor a Linux binarisok keptelenek lesznek megmondani, hogy nem
   Linux alatt futnak.

   Igy lenyegeben egy Linux magot talalunk a FreeBSD
   rendszermagjaban. A benne megtalalhato ku:lo:nbo:zo"
   szolgaltatasokat megvalosito fu:ggvenyek: az allomanymu"veletek, a
   virtualis memoria kezelese, a jelzesek ku:ldese es System V tipusu
   folyamatok ko:zti kommunikacio stb. megegyeznek a FreeBSD es a
   Linux hivasai eseten egyarant. Egyetlen elteres, hogy a FreeBSD
   binarisok a FreeBSD segedfu:ggvenyein (glue function), a Linux
   binarisok pedig a Linux segedfu:ggvenyein keresztu:l fernek
   hozzajuk (a legelso" operacios rendszerek tulajdonkeppen csak a
   sajat segedfu:ggvenyeiket tartalmaztak: a hivast kezdemenyezo"
   program proc strukturajaban a fu:ggvenyek dinamikusan beallitott
   cime helyett egy globalis sysent[] strukturato:mbben taroltak a
   meghivhato fu:ggvenyeket).

   Melyik ko:zu:lu:k a FreeBSD nativ ABI-ja? Ez teljesen lenyegtelen.
   Alapveto"en az egyetlen ku:lo:nbseg csupan annyi (pillanatnyilag,
   de ez a jo:vo"ben meg valtozhat, valoszinu"leg hamarosan), hogy a
   FreeBSD segedfu:ggvenyei statikusan megtalalhatoak a
   rendszermagban, mig a Linux segedfu:ggvenyei egyarant elerheto"ek
   modulbol vagy statikus linkelessel.

   Na igen, de akkor ez most emulacio? Nem. Ez egy ABI, nem emulacio.
   Itt szo sincs emulatorrol (ahogy szimulatorrol sincs).

   De akkor megis miert hivjak ezt sokszor "Linux emulacionak"? Hat
   hogy nehezebb legyen eladni a FreeBSD-t! Komolyra forditva a szot:
   ennek a kezdeti valtozata akkoriban szu:letett meg, amikor erre
   meg nem volt rendes szo. Nem mondhattuk, hogy a FreeBSD beforditas
   vagy egy modul beto:ltese nelku:l kepes lett volna Linux
   binarisokat futtatni, ezert valamilyen modon meg kellett
   neveznu:nk az ilyenkor beto:lto:tt kodot -- ebbo"l lett "a Linux
   emulator".

                      III. Rendszeradminisztracio

   A FreeBSD keziko:nyv fennmarado fejezeteiben a FreeBSD rendszerek
   adminisztraciojanak ku:lo:nbo:zo" aspektusait mutatjuk be.
   Mindegyik fejezet elejen megtudhatjuk mit is fogunk megismerni a
   fejezet elolvasasa soran, illetve arrol is informaciokat kapunk,
   hogy mivel kell mar tisztaban lennu:nk a targyalt anyag
   feldolgozasahoz.

   Ezeket a fejezeteket annak erdekeben alakitottuk ki, hogy az adott
   temakban ismereteket adjunk. Nincs ko:ztu:k semmilyen sorrendi
   ko:to:ttseg, so"t, ezeket egyaltalan nem is szu:kseges elolvasni a
   FreeBSD alapveto" hasznalatahoz.

   Tartalom

   11. Beallitas es finomhangolas

   12. A FreeBSD rendszerinditasi folyamata

   13. Felhasznalok es hozzaferesek alapveto" kezelese

   14. Biztonsag

   15. A jail alrendszer

   16. Ko:telezo" hozzaferes-vezerles

   17. Biztonsagi esemenyek vizsgalata

   18. Hattertarak

   19. GEOM: A modularis lemezszervezo" rendszer

   20. Tamogatott allomanyrendszerek

   21. A Vinum ko:tetkezelo"

   22. Virtualizacio

   23. Honositas: Az I18N/L10N hasznalata es beallitasa

   24. A FreeBSD frissitese es frissen tartasa

   25. DTrace

     --------------------------------------------------------------

                 Fejezet 11. Beallitas es finomhangolas

   Irta: Chern Lee. Az alapjaul szolgalo bemutatast irta: Mike Smith.
   Valamint az alapjat kepzo" tuning(7) oldalt irta: Matt Dillon.

11.1. Attekintes

   A FreeBSD egyik fontos szempontja a rendszer megfelelo"
   beallitasa, aminek segitsegevel elkeru:lhetju:k a keso"bbi
   frissitesek soran keletkezo" kellemetlensegeket. Ez a fejezet a
   FreeBSD beallitasi folyamatabol kivan minel to:bbet bemutatni,
   ko:ztu:k a FreeBSD rendszerek finomhangolasara szant
   parametereket.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan dolgozzunk hatekonyan az allomanyrendszerekkel es a
       lapozoallomanyokkal;

     * az rc.conf beallitasanak alapjait es a /usr/local/etc/rc.d
       ko:nyvtarban talalhato inditasi rendszert;

     * hogyan allitsunk be es probaljunk ki egy halozati kartyat;

     * hogyan allitsunk be virtualis cimeket a halozati
       eszko:zo:keinken;

     * hogyan hasznaljuk az /etc ko:nyvtarban megtalalhato
       ku:lo:nfele konfiguracios allomanyokat;

     * hogyan hangoljuk a FreeBSD mu"ko:deset a sysctl valtozoinak
       segitsegevel;

     * hogyan hangoljuk a lemezek teljesitmenyet es modositsuk a
       rendszermag korlatozasait.

   A fejezet elolvasasahoz ajanlott:

     * a UNIX es a FreeBSD alapjainak megertese (3 fejezet);

     * a rendszermag beallitasahoz es forditasahoz ko:to"do" alapok
       ismerete (8 fejezet).

     --------------------------------------------------------------

11.2. Kezdeti beallitasok

  11.2.1. A particiok kiosztasa

     --------------------------------------------------------------

    11.2.1.1. Alapparticiok

   Amikor a bsdlabel(8) vagy a sysinstall(8) segitsegevel
   allomanyrendszereket telepitu:nk, nem szabad figyelmen kivu:l
   hagynunk a tenyt, hogy a merevlemezes egysegekben a ku:lso"
   savokbol gyorsabban lehet hozzaferni az adatokhoz, mint a
   belso"kbo"l. Emiatt a kisebb es gyakrabban elerni kivant
   allomanyrendszereket a meghajto lemezenek ku:lsejehez ko:zel kell
   letrehozni, mig peldaul a /usr particiohoz hasonlo nagyobb
   particiokat annak belso" resze fele. A particiokat a ko:vetkezo"
   sorrendben erdemes kialakitani: gyo:ker (rendszerindito),
   lapozoallomany, /var es /usr.

   A /var meretenek tu:kro:znie kell a szamitogep szandekolt
   hasznalatat. A /var particion foglalnak helyet a felhasznalok
   postaladai, a naploallomanyok es a nyomtatasi sorok. A postaladak
   es a naploallomanyok egeszen varatlan mertekben is kepesek
   megno:vekedni attol fu:ggo"en, hogy mennyi felhasznalonk van a
   rendszerben es hogy mekkora naplokat tartunk meg. Itt a legto:bb
   felhasznalonak soha nem lesz szu:ksege egy gigabyte-nal to:bb
   helyre.

     Megjegyzes: Bizonyos esetekben a /var/tmp ko:nyvtarban azert
     ennel to:bb tarteru:let szu:ksegeltetik. Amikor a pkg_add(1)
     segitsegevel egy friss szoftvert telepitu:nk a rendszeru:nkre,
     akkor a program a /var/tmp ko:nyvtarba to:mo:riti ki a
     hozzatartozo csomag tartalmat. Ezert a nagyobb szoftvercsomagok,
     mint peldaul a Firefox vagy az OpenOffice eseten gondok
     meru:lhetnek fel, ha nem rendelkezu:nk elegendo" szabad
     teru:lettel a /var/tmp ko:nyvtarban.

   A /usr particio tartalmaz a rendszer mu"ko:desehez
   elengedhetetlenu:l szamos fontos allomanyt, to:bbek ko:zt a portok
   gyu"jtemenyet (ajanlott, lasd ports(7)) es a forraskodot
   (valaszthato). A portok es az alaprendszer forrasai telepites
   soran valaszthatoak, de telepitesu:k eseten akkor ezen a particion
   legalabb ket gigabyte-nyi hely ajanlott.

   Vegyu:k figyelembe a tarbeli igenyeket, amikor megvalasztjuk
   particiok meretet. Igen kellemetlen lehet, amikor ugy futunk ki az
   egyik particion a szabad helybo"l, hogy a masikat alig hasznaljuk.

     Megjegyzes: Egyes felhasznalok szerint elo"fordulhat, hogy a
     sysinstall(8) Auto-defaults opcioja a /var es / particiok
     meretet tul kicsire valasztja. Particionaljuk okosan es
     nagylelku"en!

     --------------------------------------------------------------

    11.2.1.2. A lapozoallomany particioja

   Altalanos szabaly, hogy a lapozoallomanyt tarolo particio merete
   legyen a rendszer fizikai memoriajanak (RAM) ketszerese. Peldaul,
   ha a szamitogepu:nk 128 megabyte memoriaval rendelkezik, akkor a
   lapozoallomany meretenek 256 megabyte-nak kell lennie. Az ennel
   kevesebb memoriat maguknak tudo rendszerek to:bb lapozoallomannyal
   jobban teljesitenek. 256 megabyte-nal kevesebb lapozoallomanyt
   semmikeppen sem ajanlunk, es inkabb a fizikai memoriat erdemes
   bo"vitenu:nk. A rendszermag virtualis memoriat kezelo" lapozasi
   algoritmusait ugy allitottak be, hogy abban az esetben
   teljesitsenek a legjobban, ha a lapozoallomany merete legalabb
   ketszerese a ko:zponti memoria mennyisegenek. A tul kicsi
   lapozoallomany beallitasa rontja a virtualis memoria lapkeresesesi
   rutinjanak hatekonysagat es a memoria bo"vitese eseten meg tovabbi
   gondokat is okozhat.

   A to:bb SCSI-lemezzel (vagy a ku:lo:nbo:zo" vezerlo"kre
   csatlakoztatott to:bb IDE-lemezzel) biro nagyobb rendszerek
   eseteben erdemes minden egyes (de legfeljebb negy) meghajtora
   beallitani lapozoallomanyt. A lapozoallomanyoknak ko:zel azonos
   meretu"nek kell lenniu:k. A rendszermag tetszo"leges meretu"eket
   kepes kezelni, azonban a belsejeben alkalmazott adatszerkezetek a
   legnagyobb lapozoallomany meretenek negyszereseig kepesek
   no:vekedni. Ha a lapozoallomanyokat nagyjabol ugyanazon a mereten
   tartjuk, akkor a rendszermag kepes lesz a lapozashoz felhasznalt
   teru:letet optimalisan elosztani a lemezek ko:zo:tt. A nagyobb
   lapozoallomanyok hasznalata meg akkor is jol jo:n, ha nem is
   hasznaljuk annyira. Segitsegevel sokkal ko:nnyebben talpra tudunk
   allni egy elszabadult program tombolasabol, es nem kell ro:gto:n
   ujrainditanunk a rendszert.

     --------------------------------------------------------------

    11.2.1.3. Miert particionaljunk?

   Egyes felhasznalok ugy gondoljak, hogy egyetlen nagyobb meretu"
   particio mindenre megfelel, am ez a gondolat to:bb okbol is
   helytelennek tekintheto". Elo"szo:r is, minden egyes particionak
   elter a mu"ko:desi jellemzo"je, es ku:lo:nvalasztasukkal leheto"ve
   valik az allomanyrendszerek megfelelo" behangolasa. Peldaul a
   rendszerinditashoz hasznalt es a /usr particiokat to:bbsegeben
   csak olvasasra hasznaljak, es nem sokat irnak rajuk. Eko:zben a
   /var es /var/tmp ko:nyvtarakban zajlik az irasok es olvasasok
   tulnyomo resze.

   A rendszer megfelelo" felosztasaval a kisebb, intenzivebben irt
   particiokon megjeleno" to:redezettseg nem szivarog at a
   to:bbsegeben csak olvasasra hasznalt particiokra. Ha a sokat irt
   particiokat ko:zel tartjuk a lemez szelehez, akkor azokon a
   particiokon no:vekszik az I/O teljesitmenye, ahol az a
   leggyakrabban megjelenik. Mivel mostansag az I/O teljesitmenyere
   inkabb a nagyobb particiok eseten van szu:kseg, azzal nem eru:nk
   el ebben ku:lo:no:sebb merteku" no:vekedest, ha a /var particiot a
   lemez szelere toljuk. Befejezeskeppen hozzatesszu:k, hogy ennek
   vannak biztonsagi megfontolasai is. Egy kisebb es takarosabb
   rendszerindito particio, ami to:bbnyire irasvedett, nagyobb
   esellyel el tul egy csufos rendszero:sszeomlast.

     --------------------------------------------------------------

11.3. A mag beallitasa

   A rendszer beallitasaira vonatkozo informaciok ko:zponti
   lelo"helye az /etc/rc.conf allomany. Ez az allomany tartalmazza a
   beallitasokra vonatkozo adatok szeles ko:ret, amelyet elso"sorban
   a rendszer indulasa soran a rendszer beallitasara hasznalnak. Erre
   a neve is utal: ez az rc* allomanyok konfiguracios allomanya.

   A rendszergazda az rc.conf allomanyban tudja felu:lbiralni az
   /etc/defaults/rc.conf allomanyban szereplo" alapertelmezett
   beallitasokat. Az alapertelmezeseket tartalmazo allomanyt nem
   szabad ko:zvetlenu:l atmasolni az /etc ko:nyvtarba, hiszen
   alapertelmezett ertekeket tartalmaz, nem pedig mintakat. Minden
   rendszerfu:ggo" beallitast magaban az rc.conf allomanyban kell
   elvegezni.

   Szamos strategia letezik a to:megesen adminisztralt
   szamitogepeknel a ko:zo:s es rendszerfu:ggo" beallitasok
   ku:lo:nvalasztasara, ezaltal a karbantartasi ko:ltsegek
   cso:kkentesere. A ko:zo:s beallitasokat ajanlott egy masik helyre,
   peldaul az /etc/rc.conf.site allomanyba rakni, majd hivatkozni
   erre a kizarolag csak rendszerfu:ggo" informaciokat tartalmazo
   /etc/rc.conf allomanybol.

   Mivel az rc.conf allomanyt az sh(1) dolgozza fel, ezt eleg
   ko:nnyen el tudjuk erni. Peldaul:

     * rc.conf:

         . /etc/rc.conf.site
         hostname="node15.example.com"
         network_interfaces="fxp0 lo0"
         ifconfig_fxp0="inet 10.1.1.1"

     * rc.conf.site:

         defaultrouter="10.1.1.254"
         saver="daemon"
         blanktime="100"

   Az rc.conf.site allomany ezt ko:veto"en az rsync parancs
   hasznalataval mar szetszorhato a rendszerben, miko:zben az rc.conf
   allomany mindenkinel egyedi marad.

   Ha a rendszert a sysinstall(8) vagy a make world hasznalataval
   frissitju:k, akkor az rc.conf tartalma nem irodik felu:l, igy a
   rendszer beallitasairol szolo adatok nem vesznek el.

     --------------------------------------------------------------

11.4. Az alkalmazasok beallitasa

   A telepitett alkalmazasok altalaban sajat konfiguracios
   allomanyokkal, amelyek pedig sajat formatummal stb. rendelkeznek.
   Fontos, hogy ezeket az allomanyokat az alaprendszerto"l
   elku:lo:nitve taroljuk, ezaltal a csomagkezelo" eszko:zo:k
   ko:nnyen rajuk tudjanak talalni es dolgozni velu:k.

   Ezeket az allomanyokat altalaban a /usr/local/etc ko:nyvtarban
   talaljuk meg. Amennyiben egy alkalmazashoz to:bb konfiguracios
   allomany is tartozik, akkor ahhoz ezen belu:l egy ku:lo:n
   alko:nyvtar jo:n letre.

   Normalis esetben, amikor egy portot vagy csomagot telepitu:nk,
   minta konfiguracios allomanyokat is kapunk. Ezek neveben
   to:bbnyire a .default utotag szerepel. Ha meg nincs konfiguracios
   allomany az adott alkalmazashoz, akkor a .default jelzesu"
   allomanyokbol ez letrehozhato.

   Peldakeppen most tekintsu:k a /usr/local/etc/apache ko:nyvtar
   tartalmat:

 -rw-r--r--  1 root  wheel   2184 May 20  1998 access.conf
 -rw-r--r--  1 root  wheel   2184 May 20  1998 access.conf.default
 -rw-r--r--  1 root  wheel   9555 May 20  1998 httpd.conf
 -rw-r--r--  1 root  wheel   9555 May 20  1998 httpd.conf.default
 -rw-r--r--  1 root  wheel  12205 May 20  1998 magic
 -rw-r--r--  1 root  wheel  12205 May 20  1998 magic.default
 -rw-r--r--  1 root  wheel   2700 May 20  1998 mime.types
 -rw-r--r--  1 root  wheel   2700 May 20  1998 mime.types.default
 -rw-r--r--  1 root  wheel   7980 May 20  1998 srm.conf
 -rw-r--r--  1 root  wheel   7933 May 20  1998 srm.conf.default

   Az allomanyok merete jol mutatja, hogy csak az srm.conf valtozott
   meg. Az Apache keso"bbi frissitesei ezt az allomanyt nem fogjak
   felu:lirni.

     --------------------------------------------------------------

11.5. Szolgaltatasok inditasa

   Irta: Tom Rhodes.

   A felhasznalok ko:zu:l sokan valasztjak a FreeBSD
   Portgyu"jtemenyeben talalhato ku:lso" szoftverek telepiteset. A
   telepitett szoftvert gyakran ilyenkor ugy kell beallitani, hogy a
   rendszer indulasaval egyu:tt induljon. Az olyan szolgaltatasok,
   mint peldaul a mail/postfix vagy a www/apache13 csupan ket olyan
   szoftvercsomag, amelyet a rendszerrel egyu:tt kell elinditani.
   Ebben a szakaszban a ku:lso" szoftverek inditasara hasznalatos
   eljarasokkal foglalkozunk.

   A FreeBSD-ben megjeleno" legto:bb szolgaltatas, mint peldaul a
   cron(8), a rendszerindito szkripteken keresztu:l kel eletre. Habar
   ezek a szkriptek a FreeBSD egyes verzioi vagy az egyes gyartok
   eseten ku:lo:nbo:zhetnek, azonban az mindegyiku:kben ko:zo:s, hogy
   az elinditasukra vonatkozo beallitasok egyszeru"
   inditoszkriptekkel adhatoak meg.

     --------------------------------------------------------------

  11.5.1. Az alkalmazasok reszletesebb beallitasa

   Most miutan a FreeBSD rendelkezik egy rc.d ko:nyvtarral, az
   alkalmazasok inditasanak beallitasa is ko:nnyebbe es u:gyesebbe
   valt. Az rc.d mu"ko:desero"l szolo szakaszban megismert
   kulcsszavak segitsegevel az alkalmazasok mostantol kezdve a to:bbi
   szolgaltatas, peldaul a DNS utan indulnak el, es az rc.conf
   allomanyon keresztu:l a szkriptekbe huzalozottak helyett most mar
   tetszo"leges parametereket is atadhatunk stb. Egy egyszeru"
   szkript ehhez hasonloan nez ki:

 #!/bin/sh
 #
 # PROVIDE: utility
 # REQUIRE: DAEMON
 # KEYWORD: shutdown

 . /etc/rc.subr

 name="utility"
 rcvar=`set_rcvar`
 command="/usr/local/sbin/utility"

 load_rc_config $name

 #
 # NE VALTOZTASSUK MEG AZ ITT LEVO" ALAPERTELMEZESEKET,
 # INKABB AZ /etc/rc.conf ALLOMANYBAN ALLITSUK BE EZEKET
 #
 utility_enable=${utility_enable-"NO"}
 utility_pidfile=${utility_pidfile-"/var/run/utility.pid"}

 pidfile="${utility_pidfile}"

 run_rc_command "$1"

   Ez a szkript gondoskodik arrol, hogy a utility nevu" alkalmazas a
   DAEMON szolgaltatas utan induljon el. Emellett meg felkinal egy
   modszert a PID avagy futo programok azonositojanak beallitasara es
   nyomonko:vetesere is.

   Ezt ko:veto"en az /etc/rc.conf allomanybol az alkalmazas
   elindithato az alabbi sor hozzaadasaval:

 utility_enable="YES"

   Ez a modszer megko:nnyiti a paranccsorban atadott parameterek
   modositasat, az /etc/rc.subr allomanyban szereplo" alapertelmezett
   fu:ggvenyek hasznalatat, az rcorder(8) segedprogrammal szembeni
   kompatibilitast es az rc.conf allomany ko:nnyebb beallitasat.

     --------------------------------------------------------------

  11.5.2. Szolgaltatasok inditasa szolgaltatasokkal

   Mas szolgaltatasok, mint peldaul a POP3 vagy IMAP szerverek
   demonai stb. az inetd(8) segitsegevel indithatoak el. Ez a
   Portgyu"jtemenybo"l telepitett szolgaltatasok eseten magaval vonja
   az adott segedprogram felvetelet vagy a hozzatartozo sor
   engedelyezeset az /etc/inetd.conf allomanyban. Az inetd
   mu"ko:desevel es annak beallitasaval melyrehatobban az inetd
   szakasza foglalkozik.

   A legto:bb esetben a cron(8) demon hasznalata kezenfekvo" a
   rendszerszintu" szolgaltatasok elinditasaban. Ez a megko:zelites
   szamos elo"nyt tartogat, mivel a cron ezeket a programokat a
   felhasznalo crontab allomanya alapjan futtatja. Ezzel a mezei
   felhasznalok szamara is leheto"ve valik, hogy elinditsanak es
   karbantsanak alkalmazasokat.

   A cron segedprogramnak van egy olyan specialis leheto"sege, hogy
   az ido" helyett a @reboot erteket adhatjuk meg. Ennek hatasara a
   feladat a cron(8) inditasaval egyu:tt fut le, tehat megszokott
   esetben a rendszer inditasa soran.

     --------------------------------------------------------------

11.6. A cron segedprogram beallitasa

   Irta: Tom Rhodes.

   A cron(8) a FreeBSD egyik leghasznosabb segedprogramja. A cron
   segedprogram a hatterben fut es folyamatosan figyeli az
   /etc/crontab allomanyt. Emellett a cron uj crontab allomanyok utan
   kutatva folyamatosan elleno"rzi a /var/cron/tabs ko:nyvtarat. Ezek
   a crontab allomanyok olyan feladatokrol tarolnak adatokat,
   amelyeket a cron programnak egy adott pillanatban el kell
   vegeznie.

   A cron a konfiguracios allomanyok ket ku:lo:n fajtajat, a
   rendszer- es felhasznaloi crontabokat hasznalja. A ket tipus
   ko:zo:tt levo" egyetlen ku:lo:nbseg a hatodik mezo"ben talalhato.
   A rendszerszintu" crontabok eseteben a hatodik mezo" annak a
   felhasznalonak a nevet tartalmazza, amivel a program fut. Ezzel a
   rendszer szintjen mu"ko:do" crontaboknak megadatott az a kepesseg,
   hogy tetszo"leges felhasznalo neveben futtassanak programokat. A
   felhasznalok crontabjaiban a hatodik mezo" a futtatando parancsot
   tartalmazza, es ilyenkor az o:sszes parancs a crontabot letrehozo
   felhasznalo neveben hajtodik vegre. Ez utobbi egy fontos
   biztonsagi jellemzo".

     Megjegyzes: A felhasznaloi crontabok leheto"ve teszik az egyes
     felhasznalok szamara, hogy a root felhasznalo jogosultsagai
     nelku:l kepesek legyenek feladatokat u:temezni, ugyanis a
     felhasznalohoz tartozo crontabban szereplo" parancsok mindegyike
     a tulajdonosanak engedelyeivel fut.

     Az atlagos felhasznalokhoz hasonloan a root felhasznalonak is
     lehet crontabja, ami nem ugyanazt, mint az /etc/crontab (a
     rendszer sajat crontab allomanya). De mivel a rendszernek
     ku:lo:n crontabja van, ezert a root felhasznalonak nem kell
     ku:lo:n crontabot letrehozni.

   Vessu:nk egy pillanatast az /etc/crontab (a rendszer crontabjanak)
   tartalmara:

 # /etc/crontab - a root crontabja FreeBSD alatt
 #
 # $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
 # (1)
 #
 SHELL=/bin/sh
 PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin (2)
 HOME=/var/log
 #
 #
 #minute hour    day     month   wday    who     command (3)
 #
 #
 */5     *       *       *       *       root    /usr/libexec/atrun (4)

   (1)
           A FreeBSD legto:bb konfiguracios allomanyahoz hasonloan
           itt is a # jelo:li a megjegyzeseket. Az ilyen megjegyzesek
           remeku:l hasznalhatoak annak feljegyzesere, hogy mit es
           miert akarunk futtatni. A megjegyzesek azonban nem
           szerepelhetnek a paranccsal egy sorban, mivel
           masku:lo:nben a parancs reszekent keru:lnek ertelmezesre.
           Tehat mindig uj sorba kell raknunk ezeket. Az u:res
           sorokat a program nem veszi figyelembe.
   (2)
           Elo"szo:r is meg kell adnunk egy ko:rnyezetet. Az
           egyenlo"seg (=) karakter hasznalatos a ko:rnyezeti
           beallitasok meghatarozasara, ahogy mindezt az itteni
           peldaban is tapasztalhatjuk a SHELL, PATH es HOME ertekek
           eseteben. Ha nem adunk meg mast, akkor a cron az
           alapertelmezes szerinti sh parancsertelmezo"t hasznalja.
           Ha nem adjuk meg a PATH valtozo erteket, akkor minden
           allomanyra abszolut eleresi uttal kell hivatkoznunk, mivel
           ennek nincs alapertelmezett erteke. Ha nem definialjuk a
           HOME valtozo erteket, akkor a cron a parancshoz tartozo
           felhasznalo ko:nyvtarabol fog dolgozni.
   (3)
           Ez a sor irja le a megadhato het mezo"t. Az itt szereplo"
           ertekek a minute (perc), hour (ora), mday (a honap napja),
           month (honap), wday (a het napja), who (ki) es command
           (mit). A mezo"k szinte maguktol erteto"dnek. A minute egy
           oran belu:l adja meg azokat a perceket, amikor az adott
           parancsot le kell futtatni. A hour hasonlo a minute
           beallitashoz, csak az itt szereplo" erteket orakban kell
           ertelmezni. Az mday a honap napjaiban szamol. A month
           hasonlo a minute es hour opciokhoz, de ez honapot jelo:l.
           A wday a het egy napjat jelzi. Ezeknek a mezo"knek
           numerikus, valamint a huszonnegy oras ido"formatumnak
           megfelelo" ertekeket kell tartalmazniuk. A who mezo", a
           to:bbiekto"l eltero" modon, csak az /etc/crontab
           allomanyban jelenik meg. Ez a mezo" adja meg, hogy a
           parancsot milyen felhasznaloval kell futtatni. Ez az opcio
           nem jelenik meg a felhasznalok sajat crontab allomanyainak
           telepitesekor. A sor vegen lathatjuk meg a command
           oszlopot is. Ez az utolso mezo", es ide keru:l a
           vegrehajtando parancs.
   (4)
           Ez az utolso sor a fentebb targyalt ertekeket hatarozza
           meg. Eszrevehetju:k, hogy a sor egy */5 alaku felirassal
           kezdo"dik, amelyet tovabbi * karakterek ko:vetnek. A *
           karakterek jelentese "elso"-utolso", ami arra utal, hogy
           mindig. Ennek megfelelo"en ugy ertelmezhetju:k ezt a sort,
           hogy a root felhasznaloval le kell futtatni az atrun
           parancsot minden o:to:dik percben, fu:ggetlenu:l attol,
           hogy milyen nap vagy honap van. Az atrun parancsrol
           reszletesebban az atrun(8) man oldalan kapunk
           felvilagositast.

           Az itt szereplo" parancsoknak tetszo"leges mennyisegu"
           parameter atadhato, azonban a to:bb soron keresztu:l
           ativelo" parancsok to:rdeleset a sor vegen a "\"
           karakterrel kell jelezni.

   Ez mindegyik crontab allomany alapbeallitasa, habar etto"l
   altalaban egy dologban elternek. A hatodik mezo", ahol a
   felhasznalot adtuk meg, csak a rendszer /etc/crontab allomanyaban
   jelenik meg. Ez a mezo" a felhasznalok crontab allomanyaibol
   kimarad.

     --------------------------------------------------------------

  11.6.1. Egy crontab telepitese

     Fontos: Nem ko:telezo" az itt ismertetesre keru:lo" modon
     szerkeszteni vagy telepiteni a rendszer crontabjat. Egyszeru"en
     nyissuk meg a kedvenc szo:vegszerkeszto"nkkel es a cron
     segedprogram majd eszreveszi, hogy az allomany megvaltozott,
     majd ennek megfelelo"en neki is lat a modositott valtozat
     hasznalatanak. Erro"l a GYIK-ban (angolul) to:bbet is
     megtudhatunk.

   Egy frissen keszitett felhasznaloi crontab telepitesehez elo"szo:r
   a kedvenc szo:vegszerkeszto"nk segitsegevel letre kell hoznunk a
   megfelelo" formatumu allomanyt, majd hasznalnunk a crontab
   segedprogramot. Ennek altalanos alakja:

 % crontab crontab_allomany

   Ebben a peldaban a crontab_allomany a korabban letrehozott crontab
   neve lesz.

   Leheto"segu:nk van lekerdezni a telepitett crontab allomanyokat:
   egyszeru"en adjuk at a -l kapcsolot a crontab parancsnak es
   nezzu:k meg mit ad vissza.

   A crontab -e hasznalata olyan felhasznalok szamara ajanlott, akik
   sablon alkalmazasa nelku:l szeretnenek teljesen maguktol megirni
   egy crontab allomanyt. Ennek hatasara a kivalasztott
   szo:vegszerkeszto" egy u:res allomanyt kap. Miutan ezt az
   allomanyt elmentettu:k, a crontab programmal magatol telepitesre
   keru:l.

   Ha a keso"bbiekben to:ro:lni akarjuk a felhasznalonkhoz tartozo
   crontab allomanyt, akkor erre a celra hasznaljuk a crontab -r
   kapcsolojat.

     --------------------------------------------------------------

11.7. Az rc hasznalata FreeBSD alatt

   Irta: Tom Rhodes.

   A rendszer inditasara a FreeBSD 2002-ben atvette a NetBSD rc.d
   rendszeret. Ezt a felhasznalok ko:nnyen felismerhetik a /etc/rc.d
   ko:nyvtarban talalhato allomanyokrol. A legto:bbju:k olyan
   alapveto" szolgaltatasok, amelyeket a start, stop es restart
   parameterekkel lehet vezerelni. Peldaul az sshd(8) az alabbi
   paranccsal indithato ujra:

 # /etc/rc.d/sshd restart

   Ez az eljaras hasonlo a to:bbi szolgaltatas eseten is.
   Termeszetesen ezek a szolgaltatasok altalaban maguktol indulnak el
   a rendszer inditasa soran az rc.conf(5) allomanyban megadott
   szerint. Peldaul ha a rendszeru:nk indulasakor szeretnenk
   aktivalni a halozati cimforditassal foglalatoskodo demont, akkor
   csak adjuk hozza az /etc/rc.conf allomanyhoz a ko:vetkezo" sort:

 natd_enable="YES"

   Amennyiben a natd_enable="NO" sor mar szerepel benne, akkor
   egyszeru"en irjuk at a NO erteket YES-re. Ezutan az rc szkriptek a
   a rendszer ko:vetkezo" inditasakor a lentieknek megfelelo"en
   automatikusan elinditjak a hozzatartozo szolgaltatasokat is.

   Mivel az rc.d rendszert elso"sorban arra hasznaljak, hogy
   szolgaltatasokat inditsanak el vagy allitsanak le az operacios
   rendszerrel egyu:tt, a szabvanyos start, stop es restart
   parameterek csak abban az esetben latjak a feladatukat, ha a nekik
   megfelelo" valtozokat beallitottuk az /etc/rc.conf allomanyban.
   Tehat peldaul a sshd restart csak abban az esetben fog barmit is
   csinalni, ha az /etc/rc.conf allomanyban az sshd_enable valtozot a
   YES ertekre allitottuk. Ha az /etc/rc.conf beallitasaitol
   fu:ggetlenu:l kivanunk egy szolgaltatasnak start, stop vagy
   restart parancsot adni, akkor ele kell tennu:nk egy "one" szot.
   Peldaul ha az sshd szolgaltatas ujrainditasahoz az /etc/rc.conf
   tartalmat figyelmen kivu:l akarjuk hagyni, akkor ezt a parancsot
   kell kiadnunk:

 # /etc/rc.d/sshd onerestart

   Ko:nnyen le tudjuk elleno"rizni, hogy az adott szolgaltatas az
   /etc/rc.conf reszero"l engedelyezett-e, ha a neki megfelelo" rc.d
   szkriptnek megadjuk az rcvar parametert. Ennek segitsegevel
   peldaul a rendszergazda igy kepes elleno"rizni, hogy a sshd
   szolgaltatast engedelyezi-e az /etc/rc.conf:

 # /etc/rc.d/sshd rcvar
 # sshd
 $sshd_enable=YES

     Megjegyzes: A masodik sor (# sshd) az sshd parancs kimenete, nem
     pedig a root parancssora.

   A status parameterrel kiderithetju:k, hogy egy szolgaltatas
   aktiv-e. Ezzel peldaul igy tudjuk elleno"rizni a sshd szolgaltatas
   mu"ko:deset:

 # /etc/rc.d/sshd status
 sshd is running as pid 433.

   Az u:zenet:

 Az sshd a 433-as azonositoval fut.

   Bizonyos esetekben a reload parameter hasznalataval leheto"segu:nk
   a szolgaltatasok ujrainditasara is. Ilyenkor a rendszer megprobal
   egy olyan jelzest ku:ldeni a szolgaltatasnak, amivel a
   konfiguracios allomanyainak ujraolvasasat keri. A legto:bbszo:r
   lenyegeben ez a SIGHUP jelzest kiku:ldeset rejti magaban. Ez a
   leheto"seg azonban nem mindegyik szolgaltatas eseten erheto" el.

   Az rc.d rendszer nem csupan halozati szolgaltatasok eseten
   hasznalatos, hanem nagyreszben hozzajarul a rendszer inditasahoz
   is. Erre vegyu:k peldanak a bgfsck allomanyt. Amikor ez a szkript
   lefut, a ko:vetkezo" u:zenetet jeleniti meg:

 Starting background file system checks in 60 seconds.

   Az u:zenet forditasa:

 A hatterben 60 masodperc mulva megkezdo"dik az allomanyrendszerek elleno"rzese.

   Ennek megfelelo"en tehat ezt az allomanyt az allomanyrendszerek
   hatterben folyo elleno"rzesere hasznaljak, ami pedig a rendszer
   inditasa soran fut le.

   Szamos rendszerszolgaltatas igenyel a mu"ko:desehez tovabbi
   szolgaltatasokat. Peldaul a NIS es mas egyeb tavoli eljarashivason
   alapu szolgaltatasok egeszen addig nem kepesek elindulni, amig az
   rpcbind (portmapper) szolgaltatast el nem inditjuk. Az ilyen
   jellegu" gondok feloldasara az inditoszkriptek elejen levo"
   megjegyzesekben talalhato egy keves metainformacio a szkript
   mu"ko:desehez szu:kseges elemekre (fu:ggo"segeire) vonatkozoan. A
   rendszer inditasa ko:zben az rcorder(8) nevu" program kepes a
   megjegyzesek ko:zt ezeket az informaciokat feldolgozni es ebbo"l
   megallapitani, hogy a fu:ggo"segi viszonyok betartasaval milyen
   sorrendben kell elinditani a rendszer altal felkinalt
   szolgaltatasokat.

   Ehhez a ko:vetkezo" kulcsszavakat kell megadni az egyes indito
   szkriptek elejen (az rc.subr(8) igy tudja "engedelyezni" az indito
   szkriptet):

     * PROVIDE: segitsegevel megmondjuk, hogy ez az allomany milyen
       szolgaltatasokat nyujt.

   A ko:vetkezo" kulcsszavak az egyes inditoallomanyok elejen
   szerepelhetnek. Nem kell feltetlenu:l hasznalnunk ezeket, de
   velu:k az rcorder(8) munkajat segithetju:k:

     * REQUIRE: felsoroljuk azokat a szolgaltatasokat, amelyek a
       futasahoz kellenek. Az allomany tehat az itt megadott
       szolgaltatasok utan fog lefutni.

     * BEFORE: felsoroljuk azokat a szolgaltatasokat, amelyek elo"tt
       futtatni kell ezt az allomanyt.

   Az indito szkriptekben a kulcsszavak u:gyes megvalasztasaval a
   rendszergazda nagyon finoman kepes az inditaskor vegrehajtodo
   szkriptek sorrendjet szabalyozni es a to:bbi UNIX alapu operacios
   rendszerbo"l ismert "futtatasi szintek" hasznalata nelku:l
   vezerlelni a rendszerben megjeleno" szolgaltatasokat.

   Az rc.d rendszerro"l bo"vebben az rc(8) es rc.subr(8) man
   oldalakon olvashatunk. Ha szeretnenk sajat rc.d szkripteket irni
   vagy javitani a mar meglevo"eken, akkor ez a cikk (angolul)
   segitsegu:nkre lehet.

     --------------------------------------------------------------

11.8. A halozati kartyak beallitasa

   Irta: Marc Fonvieille.

   Manapsag mar el sem tudunk kepzelni szamitogepet halozati
   csatlakozas nelku:l. A halozati csatolokartyak hozzaadasa es
   beallitasa egy FreeBSD rendszergazda mindennapos feladata.

     --------------------------------------------------------------

  11.8.1. A megfelelo" meghajtoprogram felderitese

   Mielo"tt barminek is nekikezdenenk, erdemes tisztaban lennu:nk
   azzal, hogy a rendelkezesu:nkre allo kartya milyen tipusu, milyen
   chipet hasznal es hogy PCI vagy ISA buszon csatlakozik-e. A
   FreeBSD a PCI es ISA csatolos kartyak szeles spektrumat ismeri. Az
   egyes kiadasokhoz mellekelt "Hardware Compatibility List"
   (Hardverkompatibilitasi lista) dokumentumokban tudjuk
   elleno"rizni, hogy a kartyakat ismeri a rendszer.

   Miutan meggyo"zo"dtu:nk rola, hogy a kartyankat ismeri a rendszer,
   meg kell keresnu:nk a hozzatartozo meghajtot. A
   /usr/src/sys/conf/NOTES es a /usr/src/sys/arch/conf/NOTES
   allomanyok tartalmazzak a halozati kartyak meghajtoinak ro:vid
   leirasat, benne a tamogatott chipsetek es kartyak tipusaival. Ha
   ez alapjan nem tudjuk teljes biztosaggal eldo:nteni, hogy melyik a
   szamunkra megfelelo" meghajto, nezzu:k meg a sajat man oldalat.
   Ezen a man oldalon megtalaljuk az altal ismert o:sszes eszko:zt es
   velu:k kapcsolatban elo"fordulo jellemzo" problemakat.

   Ha egy elterjedt tipust sikeru:lt beszereznu:nk, akkor nem kell
   ku:lo:no:sebben sokaig keresnu:nk a neki megfelelo" meghajtot. Az
   ismertebb halozati kartyak meghajtoi ugyanis alapbol benne vannak
   a GENERIC rendszermagban, ezert a rendszer inditasa soran ehhez
   hasonloan meg is jelennek a kartyak:

 dc0: <82c169 PNIC 10/100BaseTX> port 0xa000-0xa0ff mem 0xd3800000-0xd38
 000ff irq 15 at device 11.0 on pci0
 dc0: Ethernet address: 00:a0:cc:da:da:da
 miibus0: <MII bus> on dc0
 ukphy0: <Generic IEEE 802.3u media interface> on miibus0
 ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 dc1: <82c169 PNIC 10/100BaseTX> port 0x9800-0x98ff mem 0xd3000000-0xd30
 000ff irq 11 at device 12.0 on pci0
 dc1: Ethernet address: 00:a0:cc:da:da:db
 miibus1: <MII bus> on dc1
 ukphy1: <Generic IEEE 802.3u media interface> on miibus1
 ukphy1:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

   Ebben a peldaban lathatunk is ket olyan kartyat, amelyek a dc(4)
   meghajtot hasznaljak.

   Ha a halozati kartyank meghajtoja nem szerepel a GENERIC
   konfiguracioban, akkor a mu"ko:desehez be kell to:lteni a
   megfelelo" meghajtot. Ezt alapveto"en ketfelekeppen erhetju:k el:

     * Ennek legegyszeru"bb modja, ha a kldload(8) hasznalataval
       alkalmankent vagy a /boot/loader.conf allomanyban a megfelelo"
       sor hozzaadasaval a rendszer inditasaval egyu:tt beto:ltju:k a
       halozati kartya meghajtojahoz tartozo modult. Nem mindegyik
       halozati kartya meghajtoja erheto" el modul formajaban. Erre
       konkret peldaul szolgalnak az ISA kartyakhoz tartozo modulok.

     * Masik leheto"segu:nk, ha statikusan beepitju:k a kartyank
       tamogatasat a rendszermagba. A /usr/src/sys/conf/NOTES es az
       /usr/src/sys/arch/conf/NOTES allomanyok, valamint a
       meghajtohoz tartozo man oldal elolvasasabol megtudhatjuk a
       rendszermag beallitasait tartalmazo allomanyban megadando
       parametereket. A rendszermag ujraforditasat lasd 8 fejezet. Ha
       a rendszermag (GENERIC) az indulas soran eszlelte a
       kartyankat, nem kell ujat keszitenu:nk.

     --------------------------------------------------------------

    11.8.1.1. A Windows NDIS meghajtoinak hasznalata

   Sajnos meg mindig sok olyan gyarto akad, akik a nyilt forrasu
   ko:zo:sseg szamara nem adjak ki a meghajtoik mu"ko:desenek
   alapjait, mivel az ilyen adatokat szakmai titkoknak tekintik.
   Ebbo"l ko:vetkezik, hogy a FreeBSD es mas operacios rendszerek
   fejleszto"i szamara ket valasztas marad: vagy a gyari meghajtok
   visszafejtesenek hosszu es fajdalmas utjan haladva fejlesztik ki a
   sajat meghajtojukat, vagy pedig a Microsoft Windows platformra
   kiadott meghajtok binarisait hasznositjak. A legto:bb fejleszto",
   ko:ztu:k a FreeBSD fejleszto"i is, ez utobbi megko:zelitest
   valasztottak.

   Bill Paul (wpaul) jovoltabol a FreeBSD 5.3-RELEASE valtozataban
   megjelent a "Network Driver Interface Specification" (NDIS, avagy
   halozati meghajtok szabvanyos felu:lete) "nativ" tamogatasa. A
   FreeBSD NDISulator (masneven Project Evil, a Gonosz terve) nevu"
   komponense fog egy Windows-os meghajtot es elhiteti vele, hogy a
   Windows-szal kommunikal. Mivel az ndis(4) meghajto Windows
   binarisokat hasznal fel, ezert csak i386 es amd64 rendszerek
   eseten erheto" el.

     Megjegyzes: Az ndis(4) meghajto leginkabb a PCI, CardBus es
     PCMCIA csatoloju eszko:zo:k tamogatasara lett kitalalva, az USB
     eszko:zo:ket meg nem ismeri.

   Az NDISulator hasznalatahoz harom tenyezo"re van szu:ksegu:nk:

    1. A rendszermag forrasa

    2. a Windows XP meghajto binarisa (.SYS a kiterjesztese)

    3. a Windows XP meghajto konfiguracios allomanya (.INF a
       kiterjesztese)

   Keressu:k meg az emlitett allomanyokat az adott kartyahoz. Ezeket
   altalaban a mellekelt CD-n vagy a gyarto honlapjan talaljuk meg. A
   most ko:vetkezo" peldakban a W32DRIVER.SYS es a W32DRIVER.INF
   neveket fogjuk hasznalni.

     Megjegyzes: A Windows i386 architekturaju verziojahoz keszu:lt
     meghajtoprogramokat nem tudjuk a FreeBSD/amd64 verziojaval
     hasznalni. A mu"ko:deshez amd64-re keszu:lt Windows-os
     meghajtokra van szu:kseg.

   A ko:vetkezo" lepes a meghajto binarisainak beto:ltheto" modulba
   forditasa. Ennek eleresehez hasznaljuk az ndisgen(8) parancsot a
   root felhasznaloval:

 # ndisgen /windowszos/meghajto/W32DRIVER.INF /windowsos/meghajto/W32DRIVER.SYS

   Az ndisgen(8) egy interaktiv segedprogram, amely mu"ko:dese
   ko:zben meg rakerdez nehany szu:kseges informaciora. Az aktualis
   ko:nyvtarban letrehoz egy rendszermagmodult, amelyet az alabbi
   modon tudunk beto:lteni:

 # kldload ./W32DRIVER.ko

   Az elo"allitott modul melle be kell to:ltenu:nk meg az ndis.ko es
   az if_ndis.ko modulokat is. Ez altalaban minden olyan modul eseten
   megto:rtenik magatol, amely fu:gg az ndis(4) hasznalatatol.
   Kezileg az ko:vetkezo" parancsokkal tudjuk ezeket beto:lteni:

 # kldload ndis
 # kldload if_ndis

   Itt az elso" parancs beto:lti az NDIS miniport meghajto
   burkolasara szant kodot, valamint a masodik a tenyleges halozati
   csatolofelu:letet.

   Most pedig a dmesg(8) kimeneteben elleno"rizzu:k, hogy to:rtent-e
   valamilyen hiba a beto:ltes soran. Ha minden jol ment, akkor az
   alabbiakhoz hasonlo kimenetet produkalt:

 ndis0: <Wireless-G PCI Adapter> mem 0xf4100000-0xf4101fff irq 3 at device 8.0 on pci1
 ndis0: NDIS API version: 5.0
 ndis0: Ethernet address: 0a:b1:2c:d3:4e:f5
 ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
 ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 36Mbps 48Mbps 54Mbps

   Innento"l kezdve az ndis0 nevu" eszko:zt ugy tudjuk hasznalni,
   mint barmelyik mas halozati felu:letet (peldaul dc0).

   A to:bbi modulhoz hasonlo modon be tudjuk allitani, hogy a
   rendszer indulasaval egyu:tt beto:lto"djenek az NDIS modulok.
   Ehhez elo"szo:r masoljuk az iment letrehozott modult, az
   W32DRIVER.ko allomanyt a /boot/modules ko:nyvtarba. Ezutan adjuk
   hozza a ko:vetkezo" sort a /boot/loader.conf allomany tartalmahoz:

 W32DRIVER_load="YES"

     --------------------------------------------------------------

  11.8.2. A halozati kartya beallitasa

   Ahogy beto:lto"do:tt a megfelelo" meghajto a halozati kartyankhoz,
   be is kell allitanunk a kartyat. A halozati kartyak sok mas
   dologgal egyu:tt beallithatoak a telepites soran a sysinstall
   segitsegevel.

   A rendszeru:nkben beallitott halozati csatolofelu:letek
   megjelenitesehez gepelju:k be a ko:vetkezo" parancsot:

 % ifconfig
 dc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
         inet 192.168.1.3 netmask 0xffffff00 broadcast 192.168.1.255
         ether 00:a0:cc:da:da:da
         media: Ethernet autoselect (100baseTX <full-duplex>)
         status: active
 dc1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
         inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255
         ether 00:a0:cc:da:da:db
         media: Ethernet 10baseT/UTP
         status: no carrier
 lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
         inet 127.0.0.1 netmask 0xff000000
 tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

     Megjegyzes: A FreeBSD korabbi valtozatainal az ifconfig(8)
     parancsnak ehhez meg meg kell adni az -a kapcsolot is. Az
     ifconfig(8) ervenyes parameterezesevel kapcsolatban legyu:nk
     szivesek elolvasni a hozzatartozo man oldalt. Hozzatennenk, hogy
     IPv6 (inet6 stb.) tipusu bejegyzesek nem szerepelnek a peldaban.

   Az elo"bbi parancs kimeneteben a ko:vetkezo" eszko:zo:k jelentek
   meg:

     * dc0: az elso" Ethernet felu:let

     * dc1: a masodik Ethernet felu:let

     * lp0: a parhuzamos port felu:lete

     * lo0: a loopback eszko:z

     * tun0: a ppp altal hasznalt tunnelhez tartozo eszko:z

   A FreeBSD a kartyahoz tartozo meghajto nevevel es egy sorszammal
   azonositja a rendszermag indulasa soran talalt eszko:zo:ket.
   Peldaul az sis2 a rendszerben talalhato harmadik olyan eszko:z,
   amely a sis(4) meghajtot hasznalja.

   A peldaban a dc0 eszko:z aktiv es mu"ko:do"kepes. Ennek
   legfontosabb jelei:

    1. Az UP szo mutatja, hogy a kartyat sikeru:lt beallitani es
       keszen all a hasznalatra.

    2. A kartya internet (inet) cime (jelen esetu:nkben ez
       192.168.1.3).

    3. Ervenyes halozati maszkkal rendelkezik (netmask, ahol a
       0xffffff00 a 255.255.255.0 cimnek felel meg).

    4. Ervenyes broadcast (u:zenetszoro) cimmel rendelkezik (ami itt
       most 192.168.1.255).

    5. A kartya MAC-cime (ether) 00:a0:cc:da:da:da.

    6. A hozzatartozo fizikai eszko:z kivalasztasa automatikus
       (media: Ethernet autoselect (100baseTX <full-duplex>)).
       Lathatjuk, hogy a dc1 eszko:zt egy 10baseT/UTP tipusu fizikai
       eszko:zho:z allitottuk be. Az egyes meghajtokhoz tartozo
       fizikai modokrol a nekik megfelelo" man oldalakon olvashatunk.

    7. A kapcsolat allapota (status) active erteku", tehat van vonal.
       A dc1 eseten lathatjuk, hogy a status: no carrier (nincs
       vonal). Ez teljesen normalisnak tekintheto" minden olyan
       esetben, amikor a kartyaba meg nem dugtunk Ethernet-kabelt.

   Amennyiben az ifconfig(8) kimenete valami ilyesmi:

 dc0: flags=8843<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
                 ether 00:a0:cc:da:da:da

   akkor az arra utal, hogy a kartyat nem allitottuk be.

   A kartya beallitasahoz a root felhasznalo jogosultsagaira van
   szu:ksegu:nk. A halozati kartyak beallitasa az ifconfig(8)
   segitsegevel elvegezheto" parancssorbol is, de a gep
   ujrainditasakor az igy megadott ertekek elvesznek. Ezert az
   /etc/rc.conf allomanyba kell felvennu:nk a halozati kartyak
   ervenyes beallitasait.

   A kedvenc szo:vegszerkeszto"nkben nyissuk meg az /etc/rc.conf
   allomanyt. Minden egyes halozati csatolohoz fel kell vennu:nk
   benne egy sort, ennek megfelelo"en most a peldahoz tartozo modon
   az alabbiakat:

 ifconfig_dc0="inet 192.168.1.3 netmask 255.255.255.0"
 ifconfig_dc1="inet 10.0.0.1 netmask 255.255.255.0 media 10baseT/UTP"

   A dc0 es dc1 neveket kell a rendszeru:nkben tenylegesen
   megtalalhato eszko:zo:k neveire kicserelni, valamint megadni a
   nekik megfelelo" cimeket. A kartya meghajtojanak es az ifconfig(8)
   man oldalanak elolvasasaval kiderithetju:k az itt megadhato
   tovabbi beallitasokat, valamint az rc.conf(5) man oldalan
   reszletesebben megismerhetju:k az /etc/rc.conf formai
   ko:vetelmenyeit.

   Ha a telepites soran beallitottuk volna a halozati kapcsolatokat,
   akkor tapasztalhatjuk, hogy egyes halozati kartyak sorai itt mar
   szerepelnek. Elleno"rizzu:k le az /etc/rc.conf tartalmat mielo"tt
   bo"vitenenk!

   Mindezek mellett az /etc/hosts allomanyba is be kell irnunk a
   helyi halozatunkon talalhato ku:lo:nfele gepek neveit es
   IP-cimeit, ha meg nem szerepelnenek ott. Erro"l tovabbi
   reszleteket a hosts(5) man oldalrol es az
   /usr/share/examples/etc/hosts allomanybol tudhatunk meg.

     --------------------------------------------------------------

  11.8.3. Teszteles es hibaelharitas

   Miutan az /etc/rc.conf allomanyban elvegeztu:k a szu:kseges
   valtoztatasokat, erdemes ujrainditanunk a rendszeru:nket. Ennek
   reven ervenyesitju:k a csatolofelu:letekkel kapcsolatos
   valtoztatasainkat es elleno"rizzu:k, hogy igy a rendszer
   mindenfele hibau:zenet nelku:l kepes elindulni.

   Ahogy a rendszeru:nk mu"ko:do"kepesse valt, ki is tudjuk probalni
   a halozati felu:leteket.

     --------------------------------------------------------------

    11.8.3.1. Az Ethernet kartyak tesztelese

   Az Ethernet kartyak helyes beallitasanak vizsgalatahoz ket dolgot
   kell kiprobalnunk. Elo"szo:r is pingelju:k magat a felu:letet,
   majd ezutan pingelju:nk meg a helyi halozaton egy masik
   szamitogepet.

   Elso"kent tehat probaljuk meg a helyi felu:letet:

 % ping -c5 192.168.1.3
 PING 192.168.1.3 (192.168.1.3): 56 data bytes
 64 bytes from 192.168.1.3: icmp_seq=0 ttl=64 time=0.082 ms
 64 bytes from 192.168.1.3: icmp_seq=1 ttl=64 time=0.074 ms
 64 bytes from 192.168.1.3: icmp_seq=2 ttl=64 time=0.076 ms
 64 bytes from 192.168.1.3: icmp_seq=3 ttl=64 time=0.108 ms
 64 bytes from 192.168.1.3: icmp_seq=4 ttl=64 time=0.076 ms

 --- 192.168.1.3 ping statistics ---
 5 packets transmitted, 5 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 0.074/0.083/0.108/0.013 ms

   Most pedig pingelju:nk meg egy masik szamitogepet a helyi
   halozaton:

 % ping -c5 192.168.1.2
 PING 192.168.1.2 (192.168.1.2): 56 data bytes
 64 bytes from 192.168.1.2: icmp_seq=0 ttl=64 time=0.726 ms
 64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.766 ms
 64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.700 ms
 64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=0.747 ms
 64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=0.704 ms

 --- 192.168.1.2 ping statistics ---
 5 packets transmitted, 5 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 0.700/0.729/0.766/0.025 ms

   Ha beallitottuk az /etc/hosts allomanyt, akkor a 192.168.1.2
   helyett a gep nevet is megadhatjuk.

     --------------------------------------------------------------

    11.8.3.2. A hibak elharitasa

   A hardverek es szoftverek beallitasaiban mindig is valodi kin
   megtalalni a hibakat, es ezeket a kinokat to:bbnyire ugy tudjuk
   enyhiteni, ha elo"szo:r az egyszeru" hibaforrasokat szu"rju:k ki.
   Csatlakoztattuk a halozati kabelt? Tisztessegesen beallitottuk a
   halozati szolgaltatasokat? Jol allitottuk be a tu"zfalat? A
   FreeBSD kepes kezelni a kartyat? A hibajelentesek elku:ldese
   elo"tt mindig bujjuk at a tamogatott hardvereszko:zo:k listajat. A
   FreeBSD verziokat frissitsu:k a legujabb STABLE valtozatra.
   Olvassuk at a levelezesi listak archivumait vagy legalabb
   keressu:nk ra a temara az interneten.

   Ha a kartya mu"ko:dik, de a teljesitmenye nem kielegito", erdemes
   ennek utananezni a tuning(7) man oldalon. Ilyenkor erdemes
   elleno"rizni a halozati beallitasainkat is, mivel a helytelen
   beallitasok gyakran okoznak teljesitmenyvesztest.

   Bizonyos esetekben lathatunk egy vagy ket "device timeout" tipusu
   hibat is, ami a kartyak egyes fajtainal elfogadhato. Ha azonban
   folyamatosan megjelennek vagy zavarova valnak, erdemes
   utananeznu:nk, hogy az eszko:z nem u:tko:zik-e valamelyik
   masikkal. Mindenkeppen gyo"zo:dju:nk meg a kabelek epsegero"l es
   csatlakoztatasarol. Meg az is elkepzelheto", hogy egyszeru"en csak
   egy masik halozati kartyara van szu:ksegu:nk.

   Neha felbukkanak "watchdog timeout" jellegu" hibak is. Ilyenkor
   elso"kent mindig a halozati kabelt elleno"rizzu:k. Egyes
   kartyaknak olyan PCI foglalatra van szu:ksegu:k, ami tamogatja a
   Bus Mastering opciot. Nehany regebbi alaplapon csak ilyen PCI
   bo"vito"hely talalhato (ami altalaban a 0. foglalat). Olvassunk
   utana a halozati kartya es az alaplap dokumentaciojaban, hatha
   ezek okozzak a problemat.

   A "No route to host" u:zenet akkor jelenik meg, ha a rendszer
   keptelen megallapitani, milyen uton jutassa el a csomagokat a
   megadott celhoz. Ez to:bbnyire olyankor to:rtenik meg, amikor nem
   adtunk meg alapertelmezett kezbesitesi iranyt (default route) vagy
   nem dugtuk be a halozati kabelt. A netstat -rn kimenetebo"l meg
   tudjuk allapitani, hogy letezik-e ervenyes ut az elerni kivant cel
   fele. Ha nincs, akkor haladjunk tovabb a 31 fejezetre.

   A "ping: sendto: Permission denied" jellegu" u:zeneteket
   to:bbsegeben egy helytelenu:l beallitott tu"zfal okozza. Ha az
   ipfw mu"ko:deset engedelyeztu:k a rendszermagban, de nem adtunk
   meg hozza szabalyokat, akkor az alapertelmezett hazirend szerint
   minden forgalmat blokkolni fog, tehat meg a pingeket is! Ezzel
   kapcsolatban a 30 fejezet elolvasasat ajanljuk.

   Elo"fordulhat, hogy a kartya teljesitmenye igen gyenge vagy az
   atlagos alatt van. Ilyenkor a fizikai eszko:z autoselect
   (automatikus) tipusu kivalasztasa helyett erdemes megadnunk a
   konkret eszko:znek megfelelo" tipust. Habar ez a legto:bb hardver
   eseten bevalik, nem mindenki szamara jelent megoldast. Ismetelten
   csak annyit tudunk ehhez hozzatenni, hogy elleno"rizzu:k a
   halozati beallitasainkat es olvassuk el a tuning(7) man oldalt.

     --------------------------------------------------------------

11.9. Virtualis cimek

   A FreeBSD alkalmazasa soran igen gyakori a virtualis cimek
   hasznalata, aminek segitsegevel egyetlen szerver to:bb szerverkent
   kepes latszodni a halozaton. Ezt ugy erik el, hogy egyetlen
   felu:lethez to:bb halozati cimet rendelnek hozza.

   Az adott halozati csatolofelu:letnek van egy "valodi cime" es
   tetszo"leges szamu "alcime". Ezeket az alcimeket altalaban az
   /etc/rc.conf allomanyban kell feltu:ntetni.

   Az fxp0 felu:let eseten az alcimek megadasa valahogy igy nez ki:

 ifconfig_fxp0_alias0="inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx"

   Figyelju:k meg, hogy az alcimekhez tartozo bejegyzesek az alias0
   nevvel kezdo"dnek es szam szerint no:vekvo"leg ko:vetkeznek egymas
   utan (peldaul, _alias1, _alias2 es igy tovabb). A beallitas a
   sorozat elso" kimarado tagjanal megszakad.

   Az alcimek halozati maszkjanak pontos meghatarozasa nagyon fontos,
   de szerencsere nem ku:lo:no:sebben bonyolult. Minden felu:let
   eseten lennie kell egy olyan cimnek, ami helyesen reprezentalja a
   halozat halozati maszkjat. Minden egyeb olyan cimnek, ami
   ugyanabba az alhalozatba esik, vegig 1-esekbo"l allo halozati
   maszkkal kell rendelkezniu:k (ami felirhato 255.255.255.255 vagy
   0xffffffff formajaban is).

   Peldaul vegyu:k azt, hogy az fxp0 felu:leten keresztu:l ket
   halozathoz csatlakozunk, melyek ko:zu:l az egyik a 10.1.1.0,
   amelynek halozati maszkja 255.255.255.0, es a 202.0.75.16,
   amelynek halozati maszkja 255.255.255.240. Azt szeretnenk elerni,
   hogy a rendszeru:nk az 10.1.1.1 cimto"l az 10.1.1.5 cimig,
   valamint a 202.0.75.17 cimto"l a 202.0.75.20 cimig jelenjen meg a
   nekik megfelelo" halozatokon. Ahogy arra mar fentebb is utaltunk,
   az adott halozati tartomanyban csak az elso" cimnek (ebben az
   esetben ez a 10.0.1.1 es a 202.0.75.17) kell valodi halozati
   maszkkal rendelkeznie. Minden tovabbi cimnek (a 10.1.1.2 es
   10.1.1.5 ko:zo:tt, valamint a 202.0.75.18 es 202.0.75.20 ko:zo:tt)
   legyen 255.255.255.255 a halozati maszkja.

   Az alabbi /etc/rc.conf bejegyzesek ennek az elrendezesnek
   megfelelo"en allitjak be a kartyat:

 ifconfig_fxp0="inet 10.1.1.1 netmask 255.255.255.0"
 ifconfig_fxp0_alias0="inet 10.1.1.2 netmask 255.255.255.255"
 ifconfig_fxp0_alias1="inet 10.1.1.3 netmask 255.255.255.255"
 ifconfig_fxp0_alias2="inet 10.1.1.4 netmask 255.255.255.255"
 ifconfig_fxp0_alias3="inet 10.1.1.5 netmask 255.255.255.255"
 ifconfig_fxp0_alias4="inet 202.0.75.17 netmask 255.255.255.240"
 ifconfig_fxp0_alias5="inet 202.0.75.18 netmask 255.255.255.255"
 ifconfig_fxp0_alias6="inet 202.0.75.19 netmask 255.255.255.255"
 ifconfig_fxp0_alias7="inet 202.0.75.20 netmask 255.255.255.255"

     --------------------------------------------------------------

11.10. Konfiguracios allomanyok

  11.10.1. Az /etc felepitese

   A beallitasokkal kapcsolatos informaciok szamos ko:nyvtarban
   tarolodnak. To:bbek ko:zt:

   /etc                Altalanos rendszerszintu" beallitasok. Az itt  
                       levo" adatok a rendszer egeszere vonatkoznak.  
   /etc/defaults       A rendszer konfiguracios allomanyainak         
                       alapertelmezett valtozatait.                   
                       A sendmail(8) beallitasahoz tartozo tovabbi    
   /etc/mail           allomanyok, egyeb levelku:ldeshez hasznalt     
                       adatok.                                        
   /etc/ppp            A felhasznaloi es rendszermag szintu" ppp      
                       programok beallitasai.                         
                       A named(8) mu"ko:desehez szu:kseges adatok     
   /etc/namedb         alapertelmezett helye. Altalaban a named.conf  
                       es a zonak leirasat tarolo allomanyok          
                       keru:lnek ide.                                 
                       A telepitett alkalmazasok konfiguracios        
   /usr/local/etc      allomanyai. Neha alkalmazasonkent ku:lo:n      
                       ko:nyvtarakba keru:lnek a benne talalhato      
                       allomanyok.                                    
   /usr/local/etc/rc.d A telepitett alkalmazasok inditasaval es       
                       leallitasaval kapcsolatos szkriptek.           
                       Automatikusan generalt rendszerszintu"         
   /var/db             adatbazisok a csomagokkal, a programok         
                       helyevel stb. kapcsolatosan.                   

     --------------------------------------------------------------

  11.10.2. Halozati nevek

     --------------------------------------------------------------

    11.10.2.1. /etc/resolv.conf

   Az /etc/resolv.conf hatarozza meg, hogy a FreeBSD nevfeloldoja
   mikent fer hozza az internet tartomanynev rendszerehez (a
   DNS-hez).

   Az resolv.conf allomanyban leggyakrabban a ko:vetkezo" bejegyzesek
   fordulnak elo":

              Annak a nevszernek az IP-cime, ahova a nevfeloldo       
   nameserver ku:ldi a kereseit. A nevszervereket a feliras           
              sorrendjeben kerdezi meg, maximum harmat.               
   search     A halozati nevek kereso"listaja. Ezt altalaban a helyi  
              halozati nevek tartomanya hatarozza meg.                
   domain     A helyi tartomany neve.                                 

   Egy atlagos resolv.conf tartalma:

 search example.com
 nameserver 147.11.1.11
 nameserver 147.11.100.30

     Megjegyzes: Csak egy search es domain opciot szabad megadni.

   A DHCP hasznalatakor a dhclient(8) felu:l szokta irni a
   resolv.conf tartalmat a DHCP szerverto"l kapott informaciokkal.

     --------------------------------------------------------------

    11.10.2.2. /etc/hosts

   Az /etc/hosts az internet kezdeti napjaira emlekezteto" egyszeru"
   szo:veges adatbazis. A nevek es IP-cimek ko:zti lekepzeseket a DNS
   es NIS rendszerekkel karo:ltve oldja fel. Ide a helyi halozaton
   csatlakozo szamitogepek neveit lehet beirni ahelyett, hogy erre a
   celra beallitanank egy ku:lo:n named(8) szervert. Ezenkivu:l meg
   az /etc/hosts allomanyba internetes nevek rekordjat is
   felvehetju:k, amivel igy cso:kkenthetju:k a gyakran hasznalt nevek
   feloldasara iranyulo ku:lso" kereseket.

 # $FreeBSD$
 #
 #
 # A halozati nevek adatbazisa
 #
 # Ebbe az allomanyba rakjuk a helyi halozaton talalhato cimeket es
 # a hozzajuk tartozo halozati neveket, ahol szinte ugyanez az
 # adatbazis megtalalhato.  A 'my.domain' helyere a sajat gepu:nk
 # nevet irjuk be.
 #
 # A DNS vagy NIS alkalmazasa eseten ez az allomany nem feltetlenu:l keru:l
 # felhasznalasra. A nevfeloldas sorrendjet az /etc/nsswitch.conf
 # allomanyban adhatjuk meg.
 #
 ::1                     localhost localhost.my.domain
 127.0.0.1               localhost localhost.my.domain

 #
 # Egy kepzeletbeli halozat.
 #10.0.0.2               myname.my.domain myname
 #10.0.0.3               myfriend.my.domain myfriend
 #
 # Az RFC 1918-nak megfelelo"en a ko:vetkezo" IP-cimekkel rendelkezo"
 # alhalozatok sosem csatlakozhatnak ko:zvetlenu:l az internetre:
 #
 #       10.0.0.0        -   10.255.255.255
 #       172.16.0.0      -   172.31.255.255
 #       192.168.0.0     -   192.168.255.255
 #
 # Amikor csatlakozunk az internethez, egy valodi, hivatalosan
 # kiosztott szamra lesz szu:ksegu:nk.  Ne talaljunk ki magunknak
 # halozati cimeket, hanem hasznaljuk az internetszolgaltatotol
 # kapott cimet (amennyiben rendelkezu:nk # ilyennel) vagy az
 # regionalis internetes nyilvantartasban szereplo" cimek ko:zu:l
 # valamelyiket (ARIN, APNIC, LACNIC, RIPE NCC vagy AfriNIC).

   Az /etc/hosts formai felepitese igen egyszeru":

 [internetes cim] [hivatalos halozati nev] [alnev1] [alnev2] ...

   Tehat peldaul:

 10.0.0.1 azEnValodiNevem.aHalozaton.hu azEnValodiNevem izemize1 izemize2

   A reszletekert keressu:k fel a hosts(5) man oldalt.

     --------------------------------------------------------------

  11.10.3. A naploallomanyok beallitasa

     --------------------------------------------------------------

    11.10.3.1. syslog.conf

   A syslog.conf allomany a syslogd(8) program beallitasait
   tartalmazza. Segitsegevel megadhatjuk, hogy a syslog altal
   generalt u:zenetek egyes tipusait milyen naploallomanyokba
   mentsu:k.

 # $FreeBSD$
 #
 # Ebben az allomanyban HASZNALHATOAK szoko:zo:k a mezo"k elvalasztasara,
 # habar a to:bbi *nix-tipusu rendszer inkabb tabulatorokat hasznal
 # erre a celra. Ha to:bb rendszeren is hasznalni akarjuk ezt az
 # allomanyt, akkor ne hasznaljunk szoko:zo:ket.
 #
 # A to:bbit lasd a syslog.conf(5) man oldalon.
 #
 .err;kern.debug;auth.notice;mail.crit           /dev/console
 *.notice;kern.debug;lpr.info;mail.crit;news.err /var/log/messages
 security.*                                      /var/log/security
 mail.info                                       /var/log/maillog
 lpr.info                                        /var/log/lpd-errs
 cron.*                                          /var/log/cron
 *.err                                           root
 *.notice;news.err                               root
 *.alert                                         root
 *.emerg                                         *
 # Tegyu:k vissza ezt a sort, ha a /dev/console eszko:zre kiirt
 # u:zeneteket at akarjuk iranyitani az /var/log/console.log allomanyba.
 #console.info                                   /var/log/console.log
 # Ha az o:sszes u:zenetet a /var/log/all.log allomanyba akarjuk menteni,
 # akkor tegyu:k vissza ezt a sort.
 #*.*                                            /var/log/all.log
 # Ha egy "loghost" nevu" gepre szeretnenk naplozni, akkor tegyu:k vissza
 # ezt a sort.
 #*.*                                            @loghost
 # Az inn hasznalatakor tegyu:k vissza ezeket a sorokat.
 # news.crit                                     /var/log/news/news.crit
 # news.err                                      /var/log/news/news.err
 # news.notice                                   /var/log/news/news.notice
 !startslip
 *.*                                             /var/log/slip.log
 !ppp
 *.*                                             /var/log/ppp.log

   A syslog.conf(5) man oldalanak elolvasasaval tudhatunk meg to:bbet
   ezekro"l.

     --------------------------------------------------------------

    11.10.3.2. newsyslog.conf

   A newsyslog.conf a newsyslog(8) beallitasait tarolo allomany. Ez
   egy olyan program, ami altalaban a cron(8) futtat le. A
   newsyslog(8) do:nti el, hogy mikor van szu:kseg a naplok
   archivalasara es atrendezesere. Ennek soran a logfile allomanybol
   logfile.0 lesz, a logfile.0 allomanybol pedig logfile.1 es igy
   tovabb. Beallithatjuk ugy is, hogy a naploallomanyokat archivalja
   gzip(1) formatumban, aminek megfelelo"en ezek logfile.0.gz,
   logfile.1.gz es ehhez hasonlo nevvel jo:nnek letre.

   A newsyslog.conf megadja, hogy melyik naploallomanyokat kell
   felu:gyelni, mennyi peldanyt tartsunk meg belo"lu:k es mikor kell
   velu:k foglalkozni. A naploallomanyok atrendezheto"ek es/vagy
   archivalhatoak egy adott meret eleresekor vagy egy adott ido"
   eltelte utan.

 # A newsyslog konfiguracios allomanya
 # $FreeBSD$
 #
 # allomanynev     [tulajdonos:csoport]  mod  darab meret mikor [ZB] [/pid_allomany] [jelzes]
 /var/log/cron                           600  3     100  *     Z
 /var/log/amd.log                        644  7     100  *     Z
 /var/log/kerberos.log                   644  7     100  *     Z
 /var/log/lpd-errs                       644  7     100  *     Z
 /var/log/maillog                        644  7     *    @T00  Z
 /var/log/sendmail.st                    644  10    *    168   B
 /var/log/messages                       644  5     100  *     Z
 /var/log/all.log                        600  7     *    @T00  Z
 /var/log/slip.log                       600  3     100  *     Z
 /var/log/ppp.log                        600  3     100  *     Z
 /var/log/security                       600  10    100  *     Z
 /var/log/wtmp                           644  3     *    @01T05 B
 /var/log/daily.log                      640  7     *    @T00  Z
 /var/log/weekly.log                     640  5     1    $W6D0 Z
 /var/log/monthly.log                    640  12    *    $M1D0 Z
 /var/log/console.log                    640  5     100  *     Z

   Tovabbi informaciokat a newsyslog(8) man oldalarol nyerhetu:nk.

     --------------------------------------------------------------

  11.10.4. sysctl.conf

   A sysctl.conf allomany leginkabb az rc.conf allomanyhoz hasonlit,
   benne az ertekeket valtozo=ertek parokban adhatjuk meg. Az itt
   definialt ertekek akkor keru:lnek tenylegesen beallitasra, amikor
   a rendszer to:bbfelhasznalos modba valt. Ezen a modon nem
   mindegyik valtozo erteket tudjuk atallitani.

   A sysctl.conf allomanyban az alabbi ertek beallitasaval tudjuk
   beallitani, hogy a rendszer ne naplozza, amikor a programok
   vegzetes jelzessel fejezo"dnek be, valamint azt, hogy a
   felhasznalok lathassak egymas futo programjait:

 # Ne naplozzuk a vegzetes jelzesekhez (peldaul sig 11) tartozo kilepeseket.
 kern.logsigexit=0

 # Ne engedju:k a felhasznaloknak, hogy lassak egy masik felhasznalo
 # azonositojaval futo programokat.
 security.bsd.see_other_uids=0

     --------------------------------------------------------------

11.11. Finomhangolas a sysctl hasznalataval

   A sysctl(8) egy olyan felu:let, amely leheto"seget biztosit egy
   mu"ko:do" FreeBSD rendszer megvaltoztatasara. Segitsegevel to:bbek
   ko:zt hozzaferhetu:nk a TCP/IP protokollkeszlet es a virtualis
   memoriat kezelo" alrendszer rengeteg apro opciojahoz, melyek
   megfelelo" beallitasaval egy tapasztalt rendszergazda kezeben
   drasztikusan no:velheto" a rendszer teljesitmenye. A sysctl(8)
   alkalmazasaval to:bb mint o:tszaz rendszerszintu" valtozo
   kerdezheto" le es allithato be.

   A sysctl(8) ket funkciot rejt magaban: a rendszer beallitasainak
   lekerdezeset es modositasat.

   Igy nezhetju:k meg az o:sszes lekerdezheto valtozot:

 % sysctl -a

   Igy kerhetju:k egy konkret valtozo, peldaul a kern.maxproc
   erteket:

 % sysctl kern.maxproc
 kern.maxproc: 1044

   Egy adott valtozo ertekenek modositasahoz pedig hasznaljuk a
   valtozo=ertek felirast:

 # sysctl kern.maxfiles=5000
 kern.maxfiles: 2088 -> 5000

   A sysctl valtozok ertekei lehetnek karakterlancok, szamok es
   logikai ertekek (ahol az 1 az igennek, a 0 a nemnek felel meg).

   Ha a szamitogep inditasakor automatikusan be akarunk allitani
   bizonyos valtozokat, akkor vegyu:k fel ezeket az /etc/sysctl.conf
   allomanyba. Ennek pontosabb reszleteit a sysctl.conf(5) man
   oldalon es a 11.10.4 Szakaszban talalhatjuk meg.

     --------------------------------------------------------------

  11.11.1. A sysctl(8) irasvedett ertekei

   Irta: Tom Rhodes.

   Egyes esetekben szu:kseges lehet a sysctl(8) irasvedett
   valtozoinak modositasa. Habar gyakran elengedhetetlen, ezt
   kizarolag csak a rendszer (ujra)inditasakor tudjuk megtenni.

   Peldaul egyes laptopoknal a cardbus(4) eszko:z nem probalkozik
   to:bb memoriateru:let hasznalataval, ezert egy ehhez hasonlo
   hibaval leall:

 cbb0: Could not map register memory
 device_probe_and_attach: cbb0 attach returned 12

   Az ilyen es ehhez hasonlo esetekben gyakran olyan sysctl(8)
   valtozok alapertelmezett ertekeit kellene megvaltoztatnunk,
   amelyek irasvedettek. Ilyenkor tegyu:k az erintett sysctl(8)
   valtozo "objektumazonositojat" (OID) es a hozzatartozo erteket a
   /boot/loader.conf allomanyunkba. Az alapertelmezeseket a
   /boot/defaults/loader.conf allomanyban talaljuk meg.

   A fentebb targyalt problema megoldasahoz a felhasznalonak a
   hw.pci.allow_unsupported_io_range=1 erteket kell beallitania az
   elo"bb emlitett allomanyban. Ezutan mar a cardbus(4) megfelelo"en
   fog mu"ko:dni.

     --------------------------------------------------------------

11.12. A lemezek finomhangolasa

  11.12.1. Sysctl valtozok

    11.12.1.1. vfs.vmiodirenable

   A vfs.vmiodirenable sysctl valtozo erteke lehet 0 (ki) vagy 1 (be,
   es ez az alapertelmezes is). Ez a valtozo vezerli a ko:nyvtarak
   gyorsitotarazasat a rendszerben. A ko:nyvtarak to:bbsege kis
   meretu", igy az allomanyrendszerbo"l csak egyetlen (altalaban 1 KB
   meretu") darabkat hasznalnak es meg ennel is kevesebbet (altalaban
   512 byte-ot) a pufferben. A valtozo kikapcsolt (avagy 0) erteke
   mellett a puffer csak ro:gzitett szamu ko:nyvtarat taraz be meg
   abban az esetben is, amikor temerdek mennyisegu" memoria all a
   rendelkezesere. Ha viszont (az 1 ertekkel) engedelyezzu:k, akkor a
   rendszer a ko:nyvtarak tarazasara felhasznalja a virtualis
   memoriaban pufferelt lapokat is, amivel lenyegeben az o:sszes
   elerheto" memoriat a ko:nyvtarak tarazasara forditja. Ilyenkor
   azonban az egyes ko:nyvtarak tarazasara hasznalt legkisebb
   memoriateru:let a fizikai lapmerettel egyezik meg (ami altalaban
   4 KB) es nem 512 byte. Abban az esetben javasoljuk ennek a
   beallitasnak a hasznalatat, ha olyan szolgaltatasokkal dolgozunk,
   amelyek nagy szamu allomannyal dolgoznak egyszerre. Ilyen
   szolgaltatasok to:bbek ko:zt a webes gyorsitotarak, nagyobb
   levelezo"rendszerek es hirrendszerek. Az opcio engedelyezese
   alapveto"en nem veti vissza a rendszer teljesitmenyet meg akkor
   sem, ha ezzel memoriat pazarlunk el, de ezt igazabol erdemes
   kikiserletezni.

     --------------------------------------------------------------

    11.12.1.2. vfs.write_behind

   A vfs.write_behind sysctl valtozo alapertelmezett erteke 1
   (bekapcsolt). Ez arra utasitja az allomanyrendszert, hogy csak
   akkor ku:ldje ki az adatokat az eszko:zre, ha belo"lu:k teljes
   fu:rto:k gyu"ltek o:ssze. Ez jellemzo" modon nagyobb szekvencialis
   allomanyok irasa eseten kedvezo". Arra szolgal, hogy segitsegevel
   el lehessen keru:lni az I/O tulsagosan gyakori modositasok okozta
   terheleset. Bizonyos ko:ru:lmenyek ko:zt ez azonban lassithatja a
   futo programok mu"ko:deset, ezert ilyenkor erdemes megfontolni a
   kikapcsolasat.

     --------------------------------------------------------------

    11.12.1.3. vfs.hirunningspace

   A vfs.hirunningspace sysctl valtozo erteke azt adja meg, hogy
   tetszo"leges szamu peldanynal rendszerszinten mekkora merteku"
   irasi mu"velet iranyithato at a lemezvezerlo"k soraiba. Az
   alapertelmezes to:bbnyire elegendo", de olyan gepeken, ahol sok
   lemez dolgozik egyszerre, ez az ertek negy vagy o:t megabyte-ra is
   felszo:khet! Hozzatennenk, hogy ha ezt az erteket tulsagosan
   nagyra allitjuk (es igy tullepju:k a puffer irasi
   ku:szo:berteket), akkor ezzel hihetetlenu:l gyenge fu:rto:zesi
   teljesitmenyt nyeru:nk. Semmikepp se allitsuk tulzottan nagy
   ertekre! A nagyobb irasi ertekek a velu:k parhuzamos olvasasok
   szamara kesleltetest is jelentenek.

   Talalhatunk meg mas egyeb pufferelesi es gyorsitotarazasi sysctl
   valtozokat, azonban ezek megvaltoztatasat egyaltalan nem
   javasoljuk, mivel a virtualis memoria alrendszer kivaloan tudja
   o:nalloan allitani ezeket a parametereit.

     --------------------------------------------------------------

    11.12.1.4. vm.swap_idle_enabled

   A vm.swap_idle_enabled sysctl valtozo modositasa olyan nagyobb
   to:bbfelhasznalos rendszerekben bizonyulhat hasznosnak, ahol sok
   felhasznalo lep be es lep ki a rendszerbe es sok az u:resjaratban
   futo program. Az ilyen jellegu" rendszerek hajlamosak nagy
   mennyisegu" folyamatos terhelest merni a tartalekolt szabad
   memoriara. A beallitas engedelyezesevel, valamint a
   vm.swap_idle_threshold1 es a vm.swap_idle_threshold2 valtozokon
   keresztu:l a kilapozas "reakcioidejenek" alkalmas behangolasaval a
   megszokottnal gyorsabban lenyomhatjuk az u:resjaratban dolgozo
   programokhoz tartozo memorialapok prioritasat, amivel a
   kilapozasokat vezerlo" demon kezere jatszunk. Azonban tenyleg csak
   akkor engedelyezzu:k ezt a leheto"seget, ha valoban szu:ksegu:nk
   van ra, mivel igy a memoriat joval elo"bb lapozzuk ki es ezzel
   to:bb lapozoallomanyt es lemezteljesitmenyt emesztu:nk fel. Kisebb
   rendszerekben jol behatarolhato a hatasa, azonban a nagyobb
   rendszerekben, ahol mar eleve visszafogott merteku" lapozas
   to:rtenik, ez a beallitas leheto"ve teszi a virtualis memoriat
   kezelo" alrendszer szamara, hogy ko:nnyeden ki- es be rakosgasson
   komplett futo programokat a memoriaba.

     --------------------------------------------------------------

    11.12.1.5. hw.ata.wc

   A FreeBSD 4.3 egyszer mar kacerkodott a IDE-lemezek irasi
   pufferenek kikapcsolasaval. Ez ugyan cso:kkentette az IDE-lemezek
   irasi savszelesseget, azonban bizonyos merevlemezgyartok
   gondatlansagabol eredo" sulyos adatvesztesek miatt szu:kseges volt
   a hasznalata. A gond ezzel kapcsolatban ott van, hogy egyes
   IDE-meghajtok hazudnak az irasok teljesitesero"l. A lemezek irasi
   gyorsitotarazasanak bekapcsolasaval az IDE-meghajtok nem csak az
   irasok sorrendjet rendezik at, hanem nagyobb terheles eseten egyes
   blokkokat joval keso"bb is ro:gzitenek. Ezert a rendszer esetleges
   o:sszeomlasa vagy egy aramkimaradas sulyos karokat okozhat az
   allomanyrendszerben. A FreeBSD ugy do:nto:tt, hogy a
   megbizhatosagot valasztja. Sajnos ez olyan nagysagu
   teljesitmenyvesztest okozott, hogy a ko:vetkezo" kiadasban mar
   kenytelenek voltunk alapertelmezes szerint is visszakapcsolni ezt
   a leheto"seget. A hw.ata.wc nevu" sysctl valtozo vizsgalataval
   elleno"rizhetju:k a rendszeru:nko:n ervenyes alapertelmezett
   beallitast. Amennyiben az IDE irasok gyorsitotarazasa nem
   engedelyezett, akkor ezt a valtozo ertekenek 1-re allitasaval
   allithatjuk vissza. Ezt a rendszer inditasakor a
   rendszerbeto:lto"ben tehetju:k meg. A rendszermag inditasa utan
   ennek mar nincs hatasa.

   A reszleteket a ata(4) man oldalon tudhatjuk meg.

     --------------------------------------------------------------

    11.12.1.6. SCSI_DELAY (kern.cam.scsi_delay)

   A rendszermag SCSI_DELAY nevu" beallitasa a rendszer indulasanak
   idejet hivatott mersekelni. Az alapertelmezett erteke viszonylag
   magas, innen szarmazik a rendszer inditasa soran keletkezo" 15
   masodperces csuszast. Altalaban az is megfelelo", aa ezt
   visszavesszu:k az 5 ertekre (fo"leg a modernebb meghajtok
   szamara). A FreeBSD ujabb (5.0 vagy keso"bbi) valtozataiban ez az
   ertek mar a kern.cam.scsi_delay sysctl valtozo ertekevel is
   megadhato a rendszer inditasakor. Azonban u:gyelju:nk ra, hogy
   mind a finomhangolashoz hasznalt valtozo, mind pedig rendszermag
   beallitasa ezredmasodpercben es nem masodpercben ertelmezi ezt az
   erteket.

     --------------------------------------------------------------

  11.12.2. Soft Updates

   A tunefs(8) nevu" program hasznalhato az allomanyrendszerek
   finomhangolasara. Nagyon sok opciot talalhatunk benne, de itt most
   csak a "Soft Updates" ki- es bekapcsolasaval foglalkozunk, amit a
   ko:vetkezo" modon tehetu:nk meg:

 # tunefs -n enable /allomanyrendszer
 # tunefs -n disable /allomanyrendszer

   Amig egy allomanyrendszer csatlakoztatott allapotban van, addig
   nem modosithato a tunefs(8) paranccsal. A Soft Updates
   bekapcsolasara ezert az a legalkalmasabb ido"pont, amikor
   egyfelhasznalos modban vagyunk es meg egyetlen particiot sem
   csatlakoztattunk.

   A Soft Updates beallitas engedelyezese a memoriaban pufferelt
   gyorsitotaron keresztu:l jelento"s mertekben fokozza a metaadatok
   teljesitmenyet, elso"sorban az allomanyok letrehozasat es
   to:rleset. A Soft Updates hasznalatat ezert minden
   allomanyrendszer eseten ajanljuk. A Soft Updates alkalmazasanak
   ket rossz oldalara kell tekintettel lennu:nk. Elo"szo:r is a Soft
   Updates a rendszer o:sszeomlasa eseten ugyan garantalja az
   allomanyrendszer konzisztenciajat, de ko:nnyen elkepzelheto", hogy
   to:bb masodperccel (vagy akar egy egesz perccel!) hatrebb jar a
   fizikai lemez frissiteseben. Masodszor a Soft Updates keslelteti
   az allomanyrendszer blokkjainak felszabaditasat. Ha van egy olyan
   allomanyrendszeru:nk (mint peldaul a rendszer inditasahoz hasznalt
   gyo:ker particio), ami mar majdnem betelt, akkor egy nagyobb
   frissites, peldaul a make installworld parancs kiadasa, soran az
   allomanyrendszer egyszeru"en kifogy a helybo"l es igy a frissites
   meghiusul.

     --------------------------------------------------------------

    11.12.2.1. Bo"vebben a Soft Updates mu"ko:desero"l

   Ket hagyomanyos megko:zelites letezik az allomanyrendszerek
   metaadatainak visszairasara. (A metaadatok modositasakor olyan nem
   adatot tartalmazo blokkok valtoznak meg, mint peldaul az
   allomanyokra vonatkozo informaciok vagy a ko:nyvtarak.)

   Eredetileg alapertelmezes szerint a metaadatok valtozasait
   szinkron modon irtak ki. Amikor egy ko:nyvtar megvaltozott, a
   rendszer egeszen addig vart, amig ez a valtozas a lemezre nem
   irodott. Ugyanekkor az allomanyok adatait tartalmazo pufferek (az
   allomanyok tartalma) atkeru:ltek a pufferelt gyorsitotarba, hogy
   majd keso"bb, aszinkron modon keru:ljenek kiirasra. Ennek az
   implementacionak a biztonsagos mu"ko:des volt az elo"nye, mivel
   igy a metaadatok meg akkor is konzisztens allapotban maradtak,
   amikor valamilyen hiba ko:vetkezett be. Tehat egy allomany vagy
   teljesen letrejo:tt vagy egyaltalan nem. Ha az allomanyhoz tartozo
   blokkok mar nem tudtak kijutni a gyorsitotarbol az o:sszeomlas
   ideje elo"tt, akkor az fsck(8) felismerte ezt a helyzetet es az
   allomanyrendszer ilyen jellegu" hibajat ugy orvosolta, hogy az
   adott allomany meretet nullara allitotta. Ezenkivu:l meg az
   implementacios reszletek is tisztak es egyszeru"ek maradtak. Ennek
   viszont hatranya, hogy a metaadatok kezelese lassu. Ha peldaul
   kiadunk egy rm -r parancsot, akkor az a ko:nyvtarban levo"
   allomanyokat szekvencialisan dolgozza fel, de minden egyes
   valtoztatast (az allomanyok to:rleset) csak szinkron modon
   ro:gziti a lemezre. Ezek a frissitesek erintik magat a
   ko:nyvtarat, az allomanyokkal kapcsolatos informaciokat tarolo
   tablazatot (az un. inode tablat) es minden valoszinu"seg szerint
   az allomanyok altal lefoglalt blokkokat is ko:zvetve. Hasonlo
   megfontolasok elnek a nagyobb ko:nyvtarszerkezetek kibontasa
   eseten is (tar -x).

   A masodik leheto"seg a metaadatok aszinkron frissitese. Ez az
   alapertelmezes a Linux ext2fs es BSD-k mount -o async opcioval
   csatlakoztatott UFS allomanyrendszerei eseten. Ilyenkor minden
   metaadattal kapcsolatos aktualizalas egyszeru"en bekeru:lt a
   pufferelt gyorsitotarba, tehat az allomanyok adatai es ezek a
   tipusu frissitesek keverednek. Ennek a megvalositasnak az az
   elo"nye, hogy nem kell megvarni, amig a metaadatok is kiirodnak a
   lemezre, ezert a metaadatok oriasi mennyisegu" valtozasaval jaro
   mu"veletek sokkal gyorsabban hajtodnak vegre, mint a szinkron
   esetben. So"t, maga az implementacio is tiszta es egyszeru" marad,
   ezert a kodban megjeleno" hibak beszivargasanak kockazata
   alacsony. A modszer hatranya, hogy egyaltalan semmilyen garanciat
   nem kapunk az allomanyrendszer konzisztenciajara. Ha tehat egy
   rengeteg metaadat megvaltozasaval egyu:ttjaro mu"velet ko:zben
   to:rtenik valamilyen problema (aramkimaradas, vagy valaki
   egyszeru"en megnyomja a reset gombot), akkor az allomanyrendszer
   elo"re kiszamithatatlan allapotba keru:l. A rendszer ujboli
   inditasakor ezert nincs leheto"segu:nk megvizsgalni az
   allomanyrendszer allapotat. Elkepzelheto", hogy az allomanyokhoz
   tartozo adatok mar kikeru:ltek a lemezre, miko:zben a ra vonatkozo
   inode- vagy ko:nyvtari bejegyzesek meg nem. Igy lenyegeben
   lehetetlen olyan fsck implementaciot kesziteni, ami kepes lenne
   eltu:ntetni ezt a kaoszt (hiszen az ehhez szu:kseges adatok nem
   allnak rendelkezesre). Ha az allomanyrendszer helyrehozhatatlanul
   karosodott, akkor csak a newfs(8) es a biztonsagi mentes
   visszaallitasa segithet rajta.

   Ezt altalaban ugy ku:szo:bo:lik ki, hogy az egeszhez hozzateszik
   meg a modositott teru:letek feljegyzeset, amit gyakran csak
   naplozasnak (journaling) neveznek, habar ezt az elnevezest nem
   mindenhol ilyen ertelemben hasznaljak, ezert a tranzakciok
   naplozasanak mas formaira is utalhat. A metaadatok frissitese
   ebben az esetben is csak szinkron modon to:rtenik, de csak a lemez
   egy kisebb teru:letere. Keso"bb ez a megfelelo" helyere keru:l.
   Mivel a lemez naplozasra forditott resze egy viszonylag kis
   meretu", folytonos teru:let, a lemez fejenek meg a megterhelo"bb
   mu"veletek eseten sem kell sokat mozognia, ezert valojaban ez a
   megoldas gyorsabb, mint a mezei szinkron frissitesek. Az
   implementacio bonyolultsaga tovabbra is jol behatarolhato, a
   velejaro hibaleheto"segek kockazata alacsony. Hatranya, hogy
   minden metaadat ketszer irodik ki (egyszer a naplozasi teru:letre,
   aztan a megfelelo" helyre), ezert ez a hetko:znapi hasznalat soran
   "visszaeses" tapasztalhato a teljesitmenyben. Masreszro"l azonban
   egy o:sszeomlas eseten a naplozasi teru:let segitsegevel minden
   fu:ggo"ben levo" metaadattal kapcsolatos mu"velet ko:nnyen
   visszafordithato vagy lezarhato a rendszer ko:vetkezo"
   inditasakor, es ezzel igy egy gyors helyreallitast nyeru:nk.

   Kirk McKusick, a Berkeley FFS fejleszto"je ezt a problemat a Soft
   Updates segitsegevel hidalta at: a metaadatokkal kapcsolatos
   minden fu:ggo"ben levo" frissitest a memoriaban tart, majd ezeket
   rendezett sorrendben irja ki a lemezre ("a metaadatok rendezett
   frissitese"). Ennek ko:vetkezmenyekeppen a metaadatok komolyabb
   frissitese soran a keso"bb erkezo" modositasoknak leheto"segu:k
   van "elkapni" a memoriaban levo" korabbi valtozataikat, ha azok
   meg nem keru:ltek ki a lemezre. Igy az o:sszes, peldaul
   ko:nyvtarakon vegzett, mu"velet a lemezre iras elo"tt altalaban
   elo"szo:r a memoriaban jatszodik le (a adatblokkok a poziciojuknak
   megfelelo"en keru:lnek rendezesre, ezert a rajuk vonatkozo
   metaadatok elo"tt nem jutnak ki a lemezre). Ha eko:zben a rendszer
   o:sszeomlik, akkor igy implicit modon a "naplo visszalapozasat"
   eredmenyezi: minden olyan mu"velet, ami mar nem tudott kijutni a
   lemezre, meg nem to:rtentnek szamit. Ezen a modon az
   allomanyrendszernek egy 30 es 60 masodperc ko:zti korabbi allapota
   marad fenn. Az algoritmus garantalja, hogy az o:sszes hasznalt
   ero"forras a nekik megfelelo" bitterkepekben helyesen jelo:lo"dik,
   a blokkokban es az inode-okban. Az o:sszeomlas utan az
   ero"forrasok kiosztasaval kapcsolatban csak egyetlen hiba lephet
   fel: amikor olyan ero"forrasok jelo:lo"dnek "hasznaltnak" amely
   igazabol "szabadok". Az fsck(8) azonban kepes felismerni ezeket a
   helyzeteket es felszabaditani a nem hasznalt ero"forrasokat. A
   mount -f parancs kiadasaval minden tovabbi ko:vetkezmeny nelku:l
   figyelmen kivu:l hagyhatjuk az allomanyrendszer felkesz allapotat
   es csatlakoztathatjuk az allomanyrendszereket. Az hasznalatban mar
   nem levo" ero"forrasok felszabaditasahoz az fsck(8) parancsot
   keso"bb kell futtatni. Ez az alapo:tlet huzodik meg a hatterben
   vegzett lemezelleno"rzes mo:go:tt. A rendszer inditasakor az
   allomanyrendszernek csupan egy pillanatkepet ro:gzitju:k, es az
   fsck tenyleges lefuttatasat keso"bbre toljuk. Mivel mindegyik
   allomanyrendszer csatlakoztathato "felkesz" allapotban, ezert a
   rendszer kepes elindulni to:bbfelhasznalos modban. Eko:zben a
   hatterben az fsck beu:temezheto" minden olyan allomanyrendszer
   szamara, ahol arra szu:kseg van, hogy szabaditsa fel az
   esetlegesen mar nem hasznalt ero"forrasokat. (Igy a Soft Updates
   opciot nem alkalmazo allomanyrendszerek eseten tovabbra is
   szu:kseg van az elo"terben elvegzett fsck parancsra.)

   A modszer elo"nye, hogy igy a metaadatokkal kapcsolatos mu"veletek
   ko:zel olyan gyorsak, mint az aszinkron modon vegzett frissitesek
   (tehat gyorsabb mintha naploznank, ami ugye minden metaadatot
   ketszer ir ki). A hatranya a bonyolultabb kod (ami miatt
   no:vekszik az olyan hibak leheto"sege, amik erzekenyen
   befolyasolhatjak a felhasznaloi adatok elveszteset) es a nagyobb
   memoriaigeny. Ezenkivu:l meg van nehany olyan egyeni jellemzo"je,
   amit meg kell szokni. A rendszer o:sszeomlasa utan az
   allomanyrendszer valamivel "regebbi" lesz. Amikor pedig megszokott
   szinkron megko:zelites szerint az fsck lefutasa utan nulla meretu"
   allomanyok jo:nnenek letre, ezek az allomanyok a Soft Updates
   eseten egyaltalan meg sem jelennek, mivel sem a rajuk vonatkozo
   metaadatok, sem pedig a tartalmuk nem keru:lt ki a lemezre. Egy rm
   lefuttatasa utan a lemezteru:let addig nem keru:l felszabaditasra,
   amig a frissitesek teljesen ra nem keru:lnek a lemezre. Ez nagyobb
   mennyisegu" adat telepitesekor gondokat okozhat egy olyan
   allomanyrendszeren, ahol nincs elegendo" hely az allomanyok
   ketszeri tarolasara.

     --------------------------------------------------------------

11.13. A rendszermag korlatainak finomhangolasa

     --------------------------------------------------------------

  11.13.1. Az allomanyok es a futo programok korlatozasai

    11.13.1.1. kern.maxfiles

   A kern.maxfiles erteke a rendszeru:nk igenyeinek megfelelo"en
   no:velheto" vagy cso:kkentheto". Ez a valtozo adja meg a
   rendszeru:nkben levo" allomanyleirok maximalis szamat. Amikor az
   allomanyleirokat tarolo tablazat megtelik, a rendszer
   u:zenetpuffereben egy "file: table is full" u:zenet jelenik meg,
   amit a dmesg paranccsal tudunk megnezni.

   Minden megnyitott allomany, csatlakozas vagy FIFO elhasznal egy
   allomanyleirot. Egy nagymeretu" szerver ko:nnyen felemeszthet
   to:bb ezernyi allomanyleirot attol fu:ggo"en, hogy milyen es
   mennyi szolgaltatast futtat egymas mellett.

   A FreeBSD korabbi kiadasaiban a kern.maxfiles a rendszermag
   beallitasait tartalmazo allomany maxusers (a rendszerben egyszerre
   jelenlevo" felhasznalok maximumanak) ertekebo"l szarmazott, tehat
   a kern.maxfiles a maxusers ertekevel aranyosan no:vekszik. Amikor
   keszitu:nk egy sajat rendszermagot, mindig erdemes a rendszeru:nk
   hasznalatanak megfelelo"en beallitani ezt az erteket, mivel a
   rendszermag ebbo"l a szambol hatarozza meg a legto:bb elo"re
   meghatarozott korlatait. Mivel meg egy komoly szerveren sem
   jelentkeznek be egyszerre 256 felhasznalonal to:bben, nagyjabol
   ugyanannyi ero"forrasra van szu:ksege, mint egy nagyobb
   webszervernek.

   A kern.maxusers erteke a rendelkezesre allo memorianak
   megfelelo"en magatol meretezo"dik a rendszer inditasakor, es amit
   futas ko:zben csak a kern.maxusers sysctl valtozo irasvedett
   ertekenek lekerdezesebo"l tudhatunk meg. Egyes oldalak
   u:zemeltetese a kern.maxusers igy megallapitott erteketo"l
   nagyobbat vagy eppen kisebbet igenyel, ezert a beto:lteskor minden
   gond nelku:l at lehet allitani 64, 128 vagy 256 erteku"re.
   Senkinek sem ajanljuk, hogy 256 fele menjen, hacsak tenyleg nincs
   szu:ksege ekkora mennyisegu" allomanyleirora. A kern.maxusers
   fu:ggvenyeben beallitott alapertelmezett ertekek tetszo"leges
   modon atallithatoak a rendszer inditasakor vagy futas ko:zben a
   /boot/loader.conf modositasaval (az ide kapcsolodo javaslatokrol
   bo"vebben lasd a loader.conf(5) man oldalt vagy a
   /boot/defaults/loader.conf allomanyt) illetve a leiras mas reszen
   megadott modok szerint.

   A korabbi kiadasokban ugy lehet o:nszabalyozora allitani a
   maxusers beallitast, ha explicit modon 0 erteket adtunk meg neki
   [5]. A maxusers parameter beallitasakor legalabb erdemes 4-et
   megadni, ku:lo:no:sen akkor, ha hasznaljuk az X Window Systemet
   vagy szoftvereket forditunk le. Azert van erre szu:kseg, mert a
   maxusers erteke altal szabalyozott legfontosabb mennyiseg az
   egyszerre futtathato programok tablazatanak maximalis merete,
   amelyet igy szamolunk ki: 20 + 16 * maxusers. Tehat ha a maxusers
   erteket 1-re allitjuk be, akkor az elo"bb keplet ertelmeben csak
   36 programunk futhat egymassal parhuzamosan, beleertve mindazt a
   kb. 18 programot, amik a rendszerrel egyu:tt indulnak, illetve meg
   azt a tovabbi 15 programot, amit az X Window System hasznalataval
   inditunk el. Meg egy olyan egyszeru" dolog is, mint peldaul egy
   man oldal megnezese legalabb kilenc programot elindit a
   szu"reshez, kito:mo:riteshez es megnezeshez. Azonban ha a maxusers
   erteket 64-re allitjuk, akkor egyszerre akar mar 1044 programot
   futtathatunk, ami szinte mindenre elegendo". Ha persze egy uj
   program inditasakor kapunk egy proc table full tipusu u:zenetet
   vagy nagy szamu konkurens felhasznaloval futtatunk szervert (ilyen
   peldaul a ftp.FreeBSD.org), akkor erdemes no:velni ezt a szamot es
   ujraforditani a rendszermagot.

     Megjegyzes: A maxusers nem korlatozza a szamitogepre egyszerre
     bejelentkezni kepes felhasznalok szamat. Egyszeru"en csak
     beallitja nehany tablazat meretet es az egyszerre futtathato
     programok mennyiseget a rendszert egyideju"leg hasznalni kivano
     felhasznalok maximalis szamanak figyelembevetelevel.

     --------------------------------------------------------------

    11.13.1.2. kern.ipc.somaxconn

   Az kern.ipc.somaxconn sysctl valtozo a beerkezo" TCP kapcsolatokat
   fogado sor hosszat hatarozza meg. Ennek az alapertelmezett erteke
   128, ami az uj kapcsolatok megbizhato kezelesehez altalaban keves
   egy ero"sen leterhelt webszerver szamara. Ilyen helyzetekben ezt
   az erteket javasolt 1024-re vagy meg annal is nagyobbra allitani.
   Az egyes szolgaltatasok demonai ugyan szinten le szoktak
   korlatozni a fogadosoruk meretet (peldaul a sendmail(8) vagy az
   Apache), de gyakran talalunk a beallitasai ko:zo:tt olyat, amivel
   ennek a sornak a merete no:velheto". A nagyobb fogadosorok
   mellesleg jo szolgalatot tesznek a Denial of Service (DoS) tipusu
   tamadasokkal szemben is.

     --------------------------------------------------------------

  11.13.2. Halozati korlatozasok

   A rendszermag NMBCLUSTERS nevu" beallitasa szab hatart a rendszer
   reszere elerheto" memoriapufferek mennyisegenek. Egy nagyobb
   forgalmu szerver eseten a pufferek alacsony szama gatat szabhat a
   FreeBSD kepessegeinek. Minden klaszter nagyjabol 2 KB memoriat
   takar, igy az 1024-es ertek azt jelenti, hogy a rendszermag
   memoriajabol 2 megabyte-ot forditunk a halozati pufferelesre.
   Egyszeru"en kiszamithato mennyire is van szu:ksegu:nk: ha van egy
   webszerveru:nk, ami egyszerre legfeljebb 1000 parhuzamos
   kapcsolatot fogad, es minden kapcsolat lefoglal 16 KB-ot a
   fogado-, valamint ujabb 16 KB-ot a ku:ldo"puffer szamara, akkor
   megko:zelito"leg 32 MB-nyi halozati pufferre lesz szu:ksegu:nk a
   webszerver hatekony mu"ko:desehez. Ezt az erteket gyakran meg
   erdemes megszorozni ketto"vel, igy 2 x 32 MB / 2 KB =
   64 MB / 2 KB = 32768. To:bb memoriaval rendelkezo" szamitogepek
   eseten egy 4096 es 32768 ko:zti erteket javaslunk. Semmilyen
   ko:ru:lmenyek ko:zo:tt ne adjunk meg ennel nagyobb erteket, mert
   ezzel a rendszer mar az inditasa soran o:sszeomolhat. A netstat(1)
   -m beallitasaval elleno"rizhetju:k a halozati klaszterek
   kihasznaltsagat.

   A kern.ipc.nmbclusters valtozo erteket a rendszer inditasakor
   erdemes megvaltoztatni. A FreeBSD korabbi valtozataiban ehhez a
   rendszermag NMBCLUSTERS nevu" config(8) parameterenek modositasara
   van szu:ksegu:nk.

   Az olyan forgalmasabb szervereken, ahol sokat hasznaljak a
   sendfile(2) rendszerhivast, szu:ksegu:nk lehet a sendfile(2) altal
   hasznalt pufferek szamanak no:velesere a rendszermag NFSBUFS nevu"
   konfiguracios parameteren vagy a /boot/loader.conf allomanyon
   keresztu:l (lasd loader(8)). Amikor a futo programok ko:zu:l sokan
   vannak sfbufa allapotban, akkor az egyertelmu"en annak a jele,
   hogy ezen a parameteren allitanunk kell. A kern.ipc.nsfbufs egy
   irasvedett valtozot, amelyet a rendszermag allit be. Ez a
   parameter nevlegesen a kern.maxusers valtozo ertekenek
   megfelelo"en valtozik, de bizonyos esetekben etto"l fu:ggetlenu:l
   o:nalloan kell behangolni.

     Fontos: Annak ellenere, hogy egy socketet blokkolasmentesnek
     jelo:ltu:nk meg, a sendfile(2) meghivasa egy blokkolasmentes
     socketre blokkolodast eredmenyezhet egeszen addig, amig a
     hasznalatahoz elegendo" struct sf_buf struktura o:ssze nem
     gyu"lik.

     --------------------------------------------------------------

    11.13.2.1. net.inet.ip.portrange.*

   A net.inet.ip.portrange.* sysctl valtozok vezerlik a TCP es UDP
   csatlakozasokhoz automatikusan hozzarendelt portszamok
   tartomanyat. Harom ilyen tartomany letezik: az also, az
   alapertelmezett es a felso" tartomany. A legto:bb halozati program
   a net.inet.ip.portrange.first es net.inet.ip.portrange.last
   valtozok altal rendre az 1024-to"l 5000-ig kijelo:lt
   alapertelmezett tartomanyt hasznalja. A kimeno" kapcsolatok is
   ro:gzitett porttartomanyokat ko:vetnek, es adott ko:ru:lmenyek
   mellett be lehet allitani ugy a rendszeru:nket, hogy ezen kivu:l
   osszon ki portokat. Ez a legto:bbszo:r akkor fordul elo", amikor
   egy ero"sen leterhelt webproxyt mu"ko:dtetu:nk. A porttartomanyok
   nem okoznak gondot olyan szervereknel, ahol altalaban bejo:vo"
   kapcsolatokra lehet szamitani, tehat peldaul webszerverek eseten,
   vagy ahol korlatozott a kimeno" kapcsolatok szama, mint peldaul a
   levelek tovabbitasanal. Ha olyan helyzetbe keverednenk, ahol mar
   kifutunk a felhasznalhato portokbol, a net.inet.ip.portrange.last
   mersekelt no:velesevel javasolt kito:rni. Ilyenkor a 10000, 20000
   vagy 30000 ertekek elfogadhatoak. Amikor megvaltoztatjuk a
   porttartomanyok hatarait, elo"tte mindig gondoljuk at, milyen
   hatassal lehet ez a tu"zfalra. Egyes tu"zfalak blokkolhatnak
   bizonyos tartomanyokat (altalaban az alacsonyabbakat) es arra
   szamitanak, hogy a rendszerek a kimeno" kapcsolatokhoz a nagyobb
   szamu portokat hasznaljak -- ebbo"l kifolyolag nem ajanlott
   cso:kkenteni a net.inet.ip.portrange.first erteket.

     --------------------------------------------------------------

    11.13.2.2. A TCP savszelesseg-kesletetes szorzat

   A TCP savszelesseg-kesleltetes szorzat korlatozasa hasonlit a
   NetBSD-ben megtalalhato TCP/Vegas implementaciohoz. A
   net.inet.tcp.inflight.enable sysctl valtozo 1-re allitasaval lehet
   engedelyezni. A rendszer ilyenkor minden egyes kapcsolathoz
   megprobalja kiszamitani a savszelesseg-kesleltetes szorzatot es az
   optimalis atviteli sebesseg fenntartasahoz illeszkedo"en
   korlatozni a halozat fele ku:ldo:tt adatok soranak hosszat.

   Ez a leheto"seg meg olyankor hasznosnak bizonyulhat, amikor
   modemen, Gigabit Etherneten vagy nagysebessegu" WAN (vagy
   barmilyen mas nagy savszelesseg-kesleltetes szorzattal biro)
   o:sszeko:tteteseken keresztu:l ku:ldu:nk at adatokat, ku:lo:no:sen
   abban az esetben, amikor ablakmeretezest is hasznalnunk vagy nagy
   ku:ldesi ablakot allitottunk be. Az engedelyezesekor ne felejtsu:k
   el net.inet.tcp.infligt.debug valtozot sem beallitani 0-ra (amivel
   igy kikapcsoljuk a nyomko:vetest) es eles hasznalat eseten pedig
   elo"nyo:s lehet a net.inet.cp.inflight.min valtozot legalabb
   6144-re allitani. Azonban hozzatesszu:k, hogy o:sszeko:ttetesto"l
   fu:ggo"en a nagy minimum ertekek tulajdonkeppen kikapcsoljak a
   savszelessegkorlatozast. Ez a korlatozasi leheto"seg cso:kkenti a
   ko:zbenso" ut adatinak es csomagvaltasokhoz tartozo sorok meretet,
   miko:zben cso:kkenti a helyi szamitogep felu:leten felepu:lo"
   sorok meretet is. Ha kevesebb csomagot rakunk be a sorba, akkor az
   interaktiv kapcsolatok, ku:lo:no:sen a lassabb modemek eseteben,
   kisebb ko:rbejarasi ido"vel (Round Trip Time) mu"ko:dnek. Tovabba
   megemlitenenk, hogy ez a leheto"seg csak az adatok ku:ldesere
   (felto:ltesere, szerveroldalra) van hatassal. Semmilyen befolyasa
   nincs az adatok fogadasara (leto:ltesere).

   A net.inet.tcp.inflight.stab allitgatasa nem ajanlott. A parameter
   erteke alapertelmezes szerint 20, ami legfeljebb 2 csomag
   hozzaadasat jelenti a savszelesseg-kesleltetes szorzat ablakanak
   kiszamitasakor. Erre a kiegeszito" ablakra azert van szu:kseg,
   hogy stabilizalni tudjuk vele az algoritmust es javitani tudjuk a
   valtozo feltetelekre adott reakciot, de lassabb o:sszeko:ttetesek
   eseteben nagyobb ping ido"ket is eredmenyezhet (habar ezek meg igy
   kisebbek, mint ha nem hasznalnank az algoritmust). Ilyen esetekben
   megprobalhatjuk 15-re, 10-re vagy esetleg 5-re visszavenni a
   parameter erteket, de ekkor a kivant hatas eleresehez minden
   bizonnyal a net.inet.tcp.inflight.min erteket is redukalunk kell
   majd (peldaul 3500-ra). Ezen parameterek megvaltoztatasat csak
   vegso" esetben ajanljuk!

     --------------------------------------------------------------

  11.13.3. Virtualis memoria

    11.13.3.1. kern.maxvnodes

   A vnode egy allomany vagy ko:nyvtar belso" abrazolasa. Ennek
   megfelelo"en a vnode-ok szamanak no:velesevel az operacios
   rendszer sporolni tud a lemezmu"veletekkel. Ezt altalaban maga az
   operacios rendszer szabalyozza, es nincs szu:kseg a
   finomhangolasara. Nehany esetben, amikor a lemezmu"veletek
   jelentik a rendszerben a szu"k keresztmetszetet es a kezdenek
   elfogyni a vnode-ok, szu:kseg lehet ennek a szamnak a no:velesere.
   Ehhez az inaktiv es szabad fizikai memoria mennyiseget kell
   szamitasba vennu:nk.

   Igy kerhetju:k le a pillanatnyilag hasznalatban levo" vnode-ok
   mennyiseget:

 # sysctl vfs.numvnodes
 vfs.numvnodes: 91349

   Igy tudhatjuk meg a vnode-ok maximalis szamat:

 # sysctl kern.maxvnodes
 kern.maxvnodes: 100000

   Ha a vnode-ok aktualis kihasznaltsaga megko:zeliti a csucserteket,
   nagyjabol ezerrel javasolt megno:velni a kern.maxvnodes erteket.
   Ezutan figyelju:k tovabbra is a vfs.numvnodes valtozasat. Ha ismet
   felkuszik a maximalis ertekre, akkor no:velju:k megint egy keveset
   a kern.maxvnodes erteken. Eko:zben a top(1) hasznalataval
   figyelhetju:k a memoria kihasznaltsaganak no:vekedeset is,
   ilyenkor tehat to:bb memorianak kell hasznalatban lennie.

     --------------------------------------------------------------

11.14. A lapozoteru:let bo"vitese

   Nem szamit mennyire tervezu:k jol elo"re, mindig elo"fordulhat,
   hogy a rendszeru:nk megsem teljesiti a kitu"zo:tt elvarasokat.
   Amennyiben tovabbi lapozoteru:let hozzaadasara lenne szu:ksegu:nk,
   azt igen ko:nnyen megtehetju:k. Haromfelekeppen no:velhetju:k a
   lapozasra szant teru:letet: hozzaadunk a rendszerhez egy ujabb
   merevlemezes meghajtot, NFS-en keresztu:l lapozunk, vagy egy mar
   meglevo" particion hozunk letre lapozoallomanyt.

   A lapozoteru:let titkositasaval, valamint annak leheto"segeivel es
   okaival kapcsolatban lapozzuk fel a keziko:nyv 18.17 Szakaszat.

     --------------------------------------------------------------

  11.14.1. Lapozas egy uj merevlemezre

   A lapozoteru:let bo"vitesenek legjobb modja termeszetesen remek
   indok egy uj merevlemez beszerzesere is. Elvegre egy merevlemezt
   mindig fel tudunk ilyen celra hasznalni. Ha ezt a megoldast
   valasztjuk, elo"tte ajanlott (ujra) elolvasni a keziko:nyv 11.2
   Szakaszaban a lapozoteru:letek elrendezesere vonatkozo
   javaslatokat.

     --------------------------------------------------------------

  11.14.2. Lapozas NFS-en keresztu:l

   NFS-en keresztu:l csak akkor lapozzunk, ha ezt helyi lemezek
   segitsegevel nem tudjuk megtenni. Az NFS alapu lapozas
   hatekonysagat ero"sen behatarolja a rendelkezesre allo halozati
   savszelesseg es tovabbi terheket ro az NFS szerveru:nkre is.

     --------------------------------------------------------------

  11.14.3. Lapozoallomanyok

   Lapozoallomanynak egy adott meretu" allomanyt hozzunk letre. Ebben
   a peldaban erre egy /usr/swap0 nevu", 64 MB meretu" allomanyt
   fogunk hasznalni. Termeszetesen barmilyen mas nevet is
   valaszthatunk.

   Pelda 11-1. Lapozoallomany letrehozasa FreeBSD-ben

    1. Gyo"zo"dju:nk meg rola, hogy a rendszermagunk beallitasai
       ko:zo:tt megtalalhato a memorialemez meghajtojanak (md(4))
       hasznalata. Ez a GENERIC rendszermag alapbol tartalmazza.

 device   md   # Memoria "lemezek"

    2. Hozzunk letre egy lapozoallomanyt (/usr/swap0):

 # dd if=/dev/zero of=/usr/swap0 bs=1024k count=64

    3. Allitsuk be ra a megfelelo" engedelyeket (/usr/swap0):

 # chmod 0600 /usr/swap0

    4. Adjuk meg a lapozoallomanyt az /etc/rc.conf allomanyban:

 swapfile="/usr/swap0"   # Allitsuk be swapfile erteket, ha ku:lso" lapozoallomanyra van szu:ksegu:nk.

    5. Inditsuk ujra a szamitogepu:nket, vagy a lapozoallomany
       azonnali hasznaltba vetelehez irjuk be:

 # mdconfig -a -t vnode -f /usr/swap0 -u 0 && swapon /dev/md0

     --------------------------------------------------------------

11.15. Energia- es ero"forrasgazdalkodas

   Irta: Hiten Pandya es Tom Rhodes.

   Fontos a hardveres ero"forrasaink hatekony kihasznalasa. Az ACPI
   megjelenese elo"tt az operacios rendszerek csak nehezkesen es
   rugalmatlanul tudtak kezelni a rendszer energiafelhasznalasi es
   ho"szabalyzasi leheto"segeit. A hardvert a BIOS kezelte, ezert a
   felhasznalo kevesebbet tudott latni es iranyitani az
   energiagazdalkodasi beallitasokbol. Az Fejlett energiagazdalkodas
   (Advanced Power Management, APM) ehhez nyujtott egy ero"sen
   korlatozott felu:letet. Napjaink operacios rendszereiben az
   energia- es ero"forraskezeles az egyik legfontosabb alkotoelem.
   Peldaul, ha az operacios rendszerrel folyamatosan figyelni akarjuk
   a rendszer ho"mersekletenek varatlan no:vekedeset (es erro"l
   figyelmeztetest kerni).

   A FreeBSD keziko:nyvenek ezen szakaszaban az ACPI-ro"l adunk egy
   atfogo attekintest, a vegen pedig o:sszefoglaljuk a temahoz
   tartozo irodalmat.

     --------------------------------------------------------------

  11.15.1. Mi az ACPI?

   A specialis energia- es konfiguracios illeszto" felu:let (Advanced
   Configuration and Power Interface, avagy ACPI) gyartok egy
   csoportja altal letrehozott szabvany, amely hardveres ero"forrasok
   es az energiagazdalkodas egyseges felu:letet ro:gziti (innen a
   neve). Do:nto" szerepet jatszik a Beallitasok es az
   energiagazdalkodas operacios rendszerek altai vezerleseben, vagyis
   segitsegevel az operacios rendszer meg nagyobb mertekben es
   rugalmassaggal tudja iranyitani ezeket a leheto"segeket. A modern
   operacios rendszerek az ACPI felbukkanasaval "kitoltak" a jelenleg
   meglevo" Plug and Play felu:letek korlatait. Az ACPI az APM
   ko:zvetlen leszarmazottja.

     --------------------------------------------------------------

  11.15.2. A Fejlett energiagazdalkodas (APM) hianyossagai

   A Fejlett energiagazdalkodas (APM) a rendszer altal felhasznalt
   energiat annak elfoglaltsaga alapjan vezerli. Az APM-et tamogato
   BIOS-t a (rendszert) gyarto allitja elo" es az adott
   hardverplatformra jellemzo". Az APM operacios rendszerben levo"
   meghajtoja hozzaferest biztosit az APM szoftveres felu:letehez,
   amivel leheto"seg nyilik az energiaszintek kezelesere. Az APM-et
   2000 elo"tt es ko:ru:l meg mindig hasznaltak egyes rendszerek
   gyartasanal.

   Az APM hasznalata negy nagyobb gondot rejt magaban. Elo"szo:r is,
   az energiagazdalkodast a (gyartofu:ggo") BIOS vegzi el, es az
   operacios rendszernek erro"l semmilyen ismerete nincsen. Ennek
   egyik peldaja az, amikor a felhasznalo az APM-et ismero" BIOS-ban
   beallitja a merevlemezek automatikus kikapcsolasanak idejet, majd
   amikor ez letelik, a BIOS az operacios rendszer tudta nelku:l
   egyszeru"en leallitja a lemezt. Masodszor: az APM mu"ko:deset a
   BIOS-ban programoztak le, es teljesen az operacios rendszer
   hatasko:ren tul tevekenykedik. Ez azt jelenti, hogy a felhasznalo
   csak ugy tudjuk korrigalni az APM-es BIOS-ok problemait, ha
   frissiti az alaplapi ROM-ot. Ez viszont egy nagyon kockazatos
   folyamat, aminek hibaja reven a rendszeru:nk helyrehozhatatlan
   allapotba keru:l. Harmadszor: az APM alapveto"en egy gyartofu:ggo"
   megoldas, ami azt vonja maga utan, hogy sok az atfedes (ugyanazt
   valositjak meg to:bb modon), es ha az egyik gyarto BIOS-aban hibat
   talalnak, akkor a masikeban az nem feltetlenu:l javithato. Vegu:l,
   de nem utolso sorban, az APM alapu BIOS-okban nincs eleg hely az
   igazan kifinomult energiagazdalkodasi semak vagy barmi mas
   kialakitasara, amivel a felhasznalok kepesek lennenek az
   igenyeikhez alakitani a szamitogepet.

   A Plug and Play BIOS (PNPBIOS) sok szempontbol megbizhatatlannak
   bizonyult. A PNPBIOS raadasul egy 16 bites megoldas, ezert az
   operacios rendszereknek 16 bites emulaciot kell hasznalniuk a
   PNPBIOS eszko:zeinek "eleresehez".

   A FreeBSD APM meghajtojanak dokumentaciojat az apm(4) man oldalon
   talaljuk.

     --------------------------------------------------------------

  11.15.3. Az ACPI beallitasa

   Az acpi.ko meghajto alapertelmezes szerint a loader(8)
   segitsegevel to:lto"dik be, es ne is forditsuk bele a
   rendszermagba. Ezt azzal tudnank magyarazni, hogy modulokkal
   ko:nnyebb dolgozni, peldaul ha a rendszermag ujraforditasa nelku:l
   egy masik acpi.ko modult akarunk hasznalni. Ezzel a lenyegeben
   teszteles is egyszeru"bbe valik. Masik magyarazat, hogy a rendszer
   ACPI tamogatasa nem minden esetben mu"ko:dik rendesen. Ha a
   rendszer inditasa soran valamilyen problemat tapasztalunk, akkor
   probalkozzunk meg az ACPI kikapcsolasaval. Ezt a meghajtot nem
   lehet es nem is szabad kidobni a memoriabol, mivel a hardverrel a
   rendszerbuszon keresztu:l tartja a kapcsolatot. Az ACPI a
   hint.acpi.0.disabled="1" sor megadasaval kapcsolhato a
   /boot/loader.conf allomanyban vagy a loader(8) parancssoraban.

     Megjegyzes: Az ACPI es APM egyszerre nem hasznalatoak.
     Ko:zu:lu:k a keso"bb beto:lto:tt magatol kilep, ha eszreveszi,
     hogy a masikuk mar mu"ko:desbe lepett.

   Az ACPI es az acpiconf(8) hasznalataval a rendszeru:nk keszenleti
   modba helyezheto" az -s valamint az 1-5 parameterek megadasaval.
   Ezek ko:zu:l is csak a legto:bb felhasznalo szamara az 1 vagy a 3
   (allapot mentese a fizikai memoriaba) erdekes. Az 5 opcio egy
   szoftveres kikapcsolast eredmenyez, ehhez hasonloan:

 # halt -p

   A tovabbi opciok a sysctl(8) man oldalarol erheto"ek el. Ezen
   kivu:l meg olvassuk el az acpi(4) es acpiconf(8) man oldalakat is.

     --------------------------------------------------------------

11.16. A FreeBSD ACPI tamogatasanak hasznalata es nyomonko:vetese

   Irta: Nate Lawson. Segitsegere volt meg: Peter Schultz es Tom
   Rhodes.

   Az ACPI az eszko:zo:k felderitesenek, energiagazdalkodasanak es a
   korabban a BIOS altal kezelt hardverek szabvanyositott
   hozzaferesenek alapjaiban uj modja. Az ACPI folyamatosan
   fejlo"dik, de utjat az egyes alaplapok ACPI Machine Language (AML)
   bytekod implementaciojaban megjeleno" hibak, a FreeBSD rendszermag
   alrendszereinek befejezetlensege es az Intel ACPI-CA
   ertelmezo"jeben levo" hibak lassitjak.

   Ez a leiras azzal a szandekkal keszu:lt, hogy segitsu:nk a
   felhasznaloknak megtalalni az altaluk tapasztalt problemak
   gyo:keret es ezzel kisegiteni az ACPI fejleszto"ket a
   nyomonko:veteseben es kijavitasaban. Ko:szo:nju:k, hogy ezt
   elolvassuk es segedkezu:nk a rendszeru:nkkel kapcsolatban
   felmeru:lt problemak orvosolasaban!

     --------------------------------------------------------------

  11.16.1. A nyomko:vetesi informaciok beku:ldese

     Megjegyzes: Mielo"tt beku:ldenenk barmilyen problemat is,
     gondoskodjunk rola, hogy a BIOS-unk, es ha lehetseges, akkor a
     beagyazott vezerlo"k, legfrissebb verziojat hasznaljuk.

   Megkernenk azokat, akik hibat akarnak bejelenteni, hogy a
   ko:vetkezo" informaciokat ku:ldjek a freebsd-acpi@FreeBSD.org
   cimre:

     * A hibas mu"ko:des leirasa, beleertve a rendszer tipusat es
       gyartmanyat, illetve minden olyat, aminek ko:ze lehet a
       hibahoz. Ha eddig meg nem tapasztaltuk, igyekezzu:nk minel
       pontosabban leirni a hiba keletkezesenek folyamatat.

     * A boot -v paranccsal inditott rendszer dmesg(8) kimenetet,
       beleertve a vizsgalni kivant hiba altal okoztt o:sszes
       hibau:zenetet.

     * A boot -v paranccsal es az ACPI hasznalata nelku:l inditott
       rendszer dmesg(8) kimenete abban az esetben, ha ez segit
       megoldani a problemat.

     * A sysctl hw.acpi parancs kimenete. Ezzel egyebkent kitu"no"en
       kideritheto" milyen leheto"segeket is kinal fel a
       rendszeru:nk.

     * Az altalunk hasznalt ACPI forrasnyelvenek (ACPI Source
       Language, ASL) elerheto"sege az interneten. Mivel ezek akar
       igen nagyok is lehetnek, ezert a listara ko:zvetlenu:l ne
       ku:ldju:nk ASL kodokat! Az ASL masolatat az alabbi parancs
       kiadasaval hozhatjuk letre:

 # acpidump -dt > nev-rendszer.asl

       (Adjuk meg a nev helyett a bejelentkezeshez hasznalt nevu:nket
       es a rendszer helyett pedig a gyartot/tipust. Peldaul:
       njl-FooCo6000.asl)

   Habar a legto:bb fejleszto" a FreeBSD-CURRENT levelezesi listat
   figyeli, a problemaink leirasat mindenkeppen a freebsd-acpi
   listara ku:ldju:k, hogy biztosan eszrevegyek. Legyu:nk
   tu:relmesek, hiszen emellett mindannyiunk dolgozik. Ha az altalunk
   felfedezett hiba nem teljesen egyertelmu", akkor a fejleszto"k
   valoszinu"leg meg fognak kerni arra, hogy a send-pr(1)
   hasznalataval hozzunk rola letre egy hivatalos hibajelentest. A
   hibajelentes keszitesekor leheto"leg a fentebb megadott
   informaciokat ugyanugy adjuk meg. Ez segit a problema szemmel
   tartasaban es elharitasaban. Az freebsd-acpi lista kihagyasa
   nelku:l ko:zvetlenu:l ne ku:ldju:nk hibajelentest, mivel a
   hibabejelento" rendszert elso"sorban emlekezteto"nek hasznaljuk,
   nem pedig a hibak tenyleges bejelentesere. Gyakran elo"fordul,
   hogy valaki korabban mar talalkozott a problemankkal.

     --------------------------------------------------------------

  11.16.2. Hatter

   Az ACPI minden olyan modern szamitogepben megtalalhato, mely
   megfelel az ia32 (x86), ia64 (Itanium) vagy amd64 (AMD)
   architekturanak. A teljes szabvany rengeteg leheto"seget biztosit,
   to:bbek ko:zt a processzor teljesitmenyenek kezeleset, az
   energiaszintek vezerleset, ho"zonakat, ku:lo:nfele akkumulator
   rendszereket, beagyazott vezerlo"k es a buszok felsorolasat. A
   legto:bb rendszer altalaban nem a teljes szabvanyt valositja meg.
   Peldaul egy asztali rendszer altalaban csak a buszok
   felsorolasaval kapcsolatos reszeket tartalmazza, miko:zben egy
   laptop felajanlhatja a hu"tes es az akkumulator kezeleset is. A
   laptopokban gyakorta talalunk keszenleti u:zemmodot a maguk
   elbonyolitott formajaban.

   Egy ACPI-nak megfelelo" rendszert szamos o:sszetevo" alkot. A
   BIOS-ok es chipkeszletek gyartoi a memoriaban egy elo"re
   ro:gzitett ponton elhelyeznek bizonyos tablazatokat (peldaul
   FADT), amelyekkel megadjak peldaul az APIC o:sszerendeleseit (ezt
   az SMP rendszerek hasznaljak), a konfiguracios regisztereket es az
   egyszeru"bb konfiguracios ertekeket. Itt ezenkivu:l meg bytekodok
   egy tablazata (amit Differencialt rendszerleirto tablanak,
   Differentiated System Description Table, DSDT nevezu:nk) is
   megtalalhato, ahol az eszko:zo:k es modszerek neveit szerepelnek
   faszeru" elrendezesben.

   Az ACPI-hoz tartozo meghajtonak ertelmeznie kell tudnia ezeket a
   ro:gzitett tablazatokat, implementalnia egy bytekod-ertelmezo"t,
   modositania az eszko:zmeghajtokat es a rendszermagot az ACPI
   alrendszerbo"l erkezo" informaciok befogadasahoz. A Linuxszal es a
   NetBSD-vel ko:zo:sen a FreeBSD kapott egy ilyen ertelmezo"t az
   Intelto"l (ACPI-CA). Az ACPI-CA forraskodja a rendszer forrasai
   ko:zo:tt, a src/sys/dev/acpica ko:nyvtarban talalhatoak. A
   src/sys/dev/acpica/0sd ko:nyvtarban talalhato forrasok pedig
   leheto"ve teszik, hogy az ACPI-CA mu"ko:dhessen FreeBSD-n.
   Vegezetu:l, az ACPI eszko:zo:ket megvalosito meghajtok a
   src/sys/dev/acpica ko:nyvtarban talalhatoak.

     --------------------------------------------------------------

  11.16.3. Gyakori problemak

   Az ACPI megfelelo" mu"ko:desehez minden alkotoresznek helyesen
   kell mu"ko:dnie. A most ko:vetkezendo"kben elo"fordulasuk
   gyakorisaga szerint felsorolunk nehany ismert problemat, valamint
   a hozzajuk tartozo javitasokat vagy elkeru:lesu:k modszeret.

     --------------------------------------------------------------

    11.16.3.1. Gondok az egerrel

   Egyes esetekben felfu:ggesztett allapotbol visszaterve az egeru:nk
   nem hajlando mu"ko:dni. Ezt ugy lehet elkeru:lni, ha
   /boot/loader.conf allomanyba beirjuk a hint.psm.0.flags="0x3000"
   sort. Ha ez nem segit, akkor a fentieknek megfelelo"en ku:ldju:nk
   be egy hibajelentest.

     --------------------------------------------------------------

    11.16.3.2. Felfu:ggesztes/Folytatas

   Az ACPI harom (STR) allapotban kepes a fizikai memoria
   segitsegevel keszenleti modba valtani, ezek az S1-S3, es egy
   allapotban hasznalja a lemezt (STD), amelyet S4-nek hivnak. Az S5
   neve a "szoftveres kikapcsolas", ami egy olyan allapotot takar,
   amikor a rendszeru:nk aram alatt van, de meg nem u:zemel. Az
   S4BIOS allapot a BIOS segitsegevel a lemezre menti a rendszert, az
   S4OS allapotot pedig teljes egeszeben az operacios rendszer
   valositja meg.

   A rendszeru:nk altal ismert keszenleti modokat a sysctl hw.acpi
   paranccsal elleno"rizhetju:k. Ime mindez egy Thinkpad eseten:

 hw.acpi.supported_sleep_state: S3 S4 S5
 hw.acpi.s4bios: 0

   Ez azt jelenti, hogy az acpiconf -s parancs kiadasaval
   kiprobalhatjuk az S3, S4OS, es S5 allapotokat. Ha az s4bios erteke
   egy (1), akkor az S4BIOS tamogatasa helyett az S4 OS allapotot
   kapjuk.

   A felfu:ggesztes es folytatas kiprobalasa soran kezdju:k az S1
   allapottal, mar amennyiben az tamogatott a rendszeru:nko:n. Ez az
   allapot to:bbnyire hasznalhato, mivel nem igenyel tulsagosan sok
   tamogatast a meghajto reszero"l. Eddig meg senki sem implementalta
   az S2 allapotot, de ha ezt is tudja a rendszeru:nk, akkor az
   S1-hez hasonlot nyeru:nk vele. A ko:vetkezo" proba az S3 allapote.
   Ez a legmelyebb STR allapot, es a hardver megfelelo"
   ujraelesztesehez rengeteg tamogatas szu:ksegeltetik a meghajto
   reszero"l. Ha gondjaink lennenek a rendszeru:nk felebresztesevel,
   nyugodtan irjunk egy levelet a freebsd-acpi listara, am a problema
   gyors megoldodasaban ne remenykedju:nk, hiszen ehhez meg temerdek
   meghajton es hardveren kell tesztelni es kell dolgozni.

   A problemat nagy mertekben segiti ku:lo:nvalasztani, ha
   igyekszu:nk minel to:bb meghajtot kivenni a rendszermagbol. Ha igy
   javul a helyzet, akkor mar ko:nnyen le lehet szu"kiteni arra a
   meghajtora a ko:rt, aminek beto:ltesevel esetleg gondok
   akadhatnak. Altalaban ilyenek a binaris meghajtok, mint peldaul az
   nvidia.ko, az X11 megjelenitesert felelo"s es az USB eszko:zo:k
   meghajtoi, miko:zben az Ethernet eszko:zo:k remeku:l szoktak
   mu"ko:dni. Ha ku:lo:no:sebb gond nelku:l kepesek vagyunk
   beto:lteni es eltavolitani ezeket a meghajtokat, akkor ezt a
   folyamatot o:nallositani is tudjuk ugy, hogy az /etc/rc.suspend es
   /etc/rc.resume szkriptekbe beillesztju:k az ehhez szu:kseges
   parancsokat. Ezekben egyebkent talalunk is egy megjegyzesbe rakott
   peldat a meghajtok beto:ltesero"l es eltavolitasarol. Ha az
   ebresztes utan elszemetelo"dik a kepernyo" tartalma, akkor
   allitsuk at a hw.acpi.reset_video valtozo erteket nullara (0).
   Sokat segithet meg az is, ha a hw.acpi.sleep_delay erteket
   cso:kkentju:k vagy no:velju:k.

   Megprobalhatjuk azt is, hogy elinditunk egy frissebb Linux
   disztribuciot ACPI tamogatassal es ugyanazon a hardveren
   kiprobaljuk az altala felkinalt felfu:ggesztesi es folytatasi
   leheto"seget. Ha Linux alatt ez megbizhatoan mu"ko:dik, akkor nagy
   a valoszinu"sege, hogy ez FreeBSD alatt az egyik meghajto
   hibajabol fakadoan nem hasznalhato. Igy fokozatosan le is tudjuk
   szu"kiteni a pontosan melyikkel lehet a gond, es ezzel pedig a
   fejleszto"k munkajat segitju:k. Megjegyeznenk, hogy az ACPI-t
   karbantarto fejleszto"k altalaban nem foglalkoznak mas
   meghajtokkal (peldaul hangkartya vagy ATA stb.), ezert az adott
   meghajtoval kapcsolatos hibarol javasolt ertesiteni a
   freebsd-current listat es a meghajtoert felelo"s fejleszto"t is.
   Ha van egy kis kedvu:nk es ido"nk, mi magunk is
   belebiggyeszthetu:nk a meghajtoba nehany printf(3) fu:ggvenyt
   annak kideritesere, pontosan hol is fagy le a folytatasi funkcio.

   Vegu:l megprobalkozhatunk az ACPI kikapcsolasaval is, es
   atterhetu:nk helyette az APM hasznalatara. Ha az APM-mel
   mu"ko:dnek a keszenleti allapotok, akkor erdemes inkabb azzal
   dolgozni, ku:lo:no:sen a regebbi (2000 elo"tti) hardverek
   eseteben. A gyartoknak eltartott egy ideig, amig rendes ACPI
   tamogatast voltak kepesek adni, ezert a regebbi hardvereknel
   inkabb a BIOS-nak akadnak gondjai az ACPI-val.

     --------------------------------------------------------------

    11.16.3.3. A rendszer lemerevedik (ideiglenesen vagy teljesen)

   A legto:bb rendszer olyankor akad meg, amikor sok megszakitas
   elveszik, vagy amikor eppen sok megszakitas erkezik egyszerre. A
   chipkeszleteknek szamos baja szarmazik abbol, hogy a BIOS milyen
   modon allitja be a rendszer inditasa elo"tt a megszakitasokat,
   mennyire helyes az APIC (MADT) tablazata es hogyan vezerli a
   Rendszervezerlo" megszakitast (System Control Interrupt, SCI).

   A megszakitas-viharok a vmstat -i parancs kimeneteben szereplo"
   elveszett megszakitasokbol azonosithatok be, ahol keressu:nk ra az
   acpi0 sorra. Ha ez a szamlalo masodpercenkent ketto"nel to:bbel
   no:vekszik, akkor a megszakitasaink viharba keveredtek. Ha a
   rendszer latszolag lefagyott, probaljuk meg elo"hivni a DDB-t
   (konzolban a CTRL+ALT+ESC) es gepelju:k be, hogy show interrupts.

   A megszakitasi problemakkal kapcsolatban egyetlen remenyu:nk az
   APIC tamogatas kikapcsolasa lehet a loader.conf allomanyban a
   hint.apic.0.disabled="1" sor hozzaadasaval.

     --------------------------------------------------------------

    11.16.3.4. Vegzetes hibak

   Az ACPI-vel kapcsolatos vegzetes hibak viszonylag ritkak, es
   javitasuk a legfontosabb. Ilyenkor az elso" teendo"nk
   elku:lo:niteni a hiba reprodukalasanak egyes lepeseit es (ha
   lehetseges) lekerni a hivasi lancot. Ko:vessu:k az options DDB es
   a soros vonali konzol beallitasahoz adott tanacsokat (lasd
   26.6.5.3 Szakasz) vagy hozzunk letre egy dump(8) particiot. A
   DDB-ben a hivasi lancot a tr parancs segitsegevel kerhetju:k le.
   Ha kezzel irjuk le lancot, akkor legalabb az also o:t (5) es a
   felso" o:t (5) sorat mindenkeppen jegyezzu:k fel!

   Ezutan probaljuk meg ugy szu"kiteni a problema leheto"seget, hogy
   az ACPI hasznalata nelku:l inditjuk a rendszert. Ha ezzel nincs
   semmi gond, akkor a debug.acpi.disable valtozo ertekenek
   megfelelo" beallitasaval egyenkent meg tudjuk figyelni az ACPI
   alrendszer egyes reszeit. Ehhez peldakat az acpi(4) man oldalon
   talalunk.

     --------------------------------------------------------------

    11.16.3.5. Felfu:ggesztes vagy leallitas utan elindul a rendszer

   Elo"szo:r is probaljuk meg a hw.acpi.disable_on_poweroff valtozo
   erteket 0-ra allitani a loader.conf(5) allomanyban. Ezzel
   tavoltartjuk az ACPI alrendszert a rendszer leallitasi
   folyamatatol. Egyes rendszereknek valamilyen okbol kifolyolag
   szu:ksegu:k van itt az 1 (az alapertelmezett) ertekre. Ez
   to:bbnyire megoldja a problemat, amikor a rendszer varatlanul
   elindul a keszenleti mod aktivalasakor vagy kikapcsolaskor.

     --------------------------------------------------------------

    11.16.3.6. Egyeb problemak

   Ha mas gondjaink lennenek az ACPI-val (dokkolo allomasunk van,
   egyes eszko:zo:ket nem vesz eszre stb.), akkor termeszetesen
   erro"l is ku:ldju:nk egy leirast a levelezesi listara. Azonban
   vegyu:k figyelembe, hogy egyes problemak a ACPI alrendszer eddig
   meg nem implementalt, befejezetlen reszeihez ko:to"dnek, ezert
   azok megoldasa meg varat magara. Keru:nk mindenkit, hogy legyen
   tu:relemmel es alljon keszen a kiku:ldo:tt javitasok tesztelesere!

     --------------------------------------------------------------

  11.16.4. ASL, acpidump es IASL

   A problemak leggyakoribb forrasa, hogy a BIOS-gyartok rossz (vagy
   kifejezetten hibas!) bytekodokat adnak. Ez altalaban a
   ko:vetkezo"ho:z hasonlo rendszeru:zenetbo"l deru:l ki:

 ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.LPC0.FIGD._STA] \\
 (Node 0xc3f6d160), AE_NOT_FOUND

   Az ilyen jellegu" hibakat gyakran ugy lehet orvosolni, ha a
   BIOS-unkat frissitju:k a legujabb verziora. A legto:bb ilyen
   u:zenet teljesen artalmatlan, de ha vannak mas problemaink is,
   peldaul az akkumulator allapota nem olvashato le, akkor elo"szo:r
   az AML ko:rnyeken erdemes kutakodnunk. A bytekod, mas neven AML,
   az ASL elnevezesu" forrasnyelvbo"l szarmazik. Az AML egy DSDT
   neven ismert tablazatban talalhato meg. Az ASL masolatat az
   acpidump(8) paranccsal keszithetju:k el. Parameterkent egyarant
   adjuk meg a -t (megmutatja a ro:gzitett tablak tartalmat) es -d
   (visszafejti az AML kodokat az ASL nyelvere) kapcsolokat. A
   feliras pontos formatumat a A nyomko:vetesi informaciok beku:ldese
   cimu" szakaszban olvashatjuk.

   Elso"kent probaljuk meg ujraforditani az igy nyert ASL programot
   es keressu:nk benne hibakat. A figyelmeztetesek altalaban
   nyugodtan figyelmen kivu:l hagyhatoak, azonban a hibak olyan
   implementacios hibakra utalnak, amelyek akadalyozzak az ACPI
   helyes mu"ko:deset. Az ASL ujraforditasat az alabbi paranccsal
   tudjuk elvegezni:

 # iasl sajat.asl

     --------------------------------------------------------------

  11.16.5. Az ASL kijavitasa

   Vegeredmenyben az a celunk, hogy az ACPI megfelelo" mu"ko:desehez
   senkinek se kelljen hozzanyulnia semmihez. Azonban meg mindig
   szu:kseg van BIOS-gyartok altal elko:vetett gyakori hibak
   elkeru:lesenek kifejlesztesere. A Microsoft ertelmezo"je (acpi.sys
   es acpiec.sys) nem elleno"rzi szigoruan a szabvany szerinti
   megfelelest, ezert szamos olyan BIOS-gyarto, akik csak Windows
   alatt tesztelik az ACPI implementaciojukat, soha nem fogjak
   kijavitani a ASL kodjukban ejtett hibaikat. Remenykedu:nk, hogy
   folyamatosan sikeru:l felderiteni es dokumentalni a Microsoft
   ertelmezo"je altal eltu"rt szabvanyon kivu:li viselkedest es
   leutanozni FreeBSD alatt is, hogy igy ne kelljen a felhasznaloknak
   kezzel a sajat ASL forrasaikat javitgatni. Az ebbo"l fakado
   hibakat ugy tudjuk elkeru:lni es segiteni a fejleszto"knek
   azonositani a hozza tarsulo viselkedest, hogy magunk javitjuk az
   ASL-ben felfedezett hibakat. Ha ez bevalik, akkor ku:ldju:k el a
   regi es uj ASL ko:zti diff(1)-et a fejleszto"knek, akik igy majd
   az ACPI-CA-ban ki tudnak dolgozni egy megoldast a hibas
   viselkedesre, ezzel a javitasunk szu:ksegtelenne valik.

   Most pedig ko:vetkezzenek a legismertebb hibau:zenetek, az okaik
   es javitasuk:

     --------------------------------------------------------------

    11.16.5.1. Operacios rendszeri fu:ggo"segek

   Nehany AML ugy gondolja, hogy a vilag csak a ku:lo:nbo:zo" Windows
   verziokbol all. A FreeBSD-nek megadhato, hogy masik operacios
   rendszernek adja ki magat, es ezzel talan meg is szu:ntetheto" par
   hiba. Ezt a legegyszeru"bb ugy tudjuk megtenni, ha a
   /boot/loader.conf allomanyhoz hozzafu"zzu:k a
   hw.acpi.osname="Windows 2001" sort, vagy itt egy olyan
   karakterlancot adunk meg, amit az ASL forrasban lattunk.

     --------------------------------------------------------------

    11.16.5.2. Hianyzo visszateresi ertek

   Bizonyos modszerek a szabvany szerint elvartaktol eltero"en nem
   adnak vissza explicit modon erteket. Mivel az ACPI-CA ezt nem
   kezeli le, ezert a FreeBSD reszero"l tartalmaz egy olyan
   modositast, amivel implicit modon is vissza lehet adni erteket. Ha
   biztosak akarunk lenni a visszaadni kivant ertekben, akkor
   helyezzu:nk el a megfelelo" helyekre explicit Return utasitasokat.
   Az iasl a -f parameterrel kenyszeritheto" az ilyen ASL forrasok
   leforditasara.

     --------------------------------------------------------------

    11.16.5.3. Az alapertelmezett AML felu:lbiralasa

   Miutan modositottuk a sajat.asl allomanyunkat, igy tudjuk
   leforditani:

 # iasl sajat.asl

   Az -f kapcsolo megadasaval kikenyszerithetju:k az AML letrehozasat
   meg abban az esetben is, amikor hibakat tartalmaz. U:gyelju:nk ra,
   hogy bizonyos hibakat (peldaul a hianyzo visszateresi ertekeket) a
   fordito magatol kikeru:l.

   Az iasl alapertelmezett kimenete a DSDT.aml allomany. A
   /boot/loader.conf atirasaval igy tudjuk ezzel helyettesiteni a
   BIOS-unk hibas valtozatat (ami meg mindig megtalalhato a flash
   memoriaban):

 acpi_dsdt_load="YES"
 acpi_dsdt_name="/boot/DSDT.aml"

   Ehhez ne felejtsu:k el a sajat DSDT.aml allomanyunkat bemasolni a
   /boot ko:nyvtarba.

     --------------------------------------------------------------

  11.16.6. Nyomko:vetesi informaciok kinyerese az ACPI-bo"l

   Az ACPI meghajtoja nagyon rugalmas nyomko:vetesi leheto"segekkel
   rendelkezik. Ennek reven ugyanugy megadhatjuk a nyomonko:vetni
   kivant alrendszert, mint ahogy annak melyseget is. A nyomko:vetni
   kivant alrendszereket "retegekkent" adjuk meg, valamint ezek
   ACPI-CA komponensekre (ACPI_ALL_COMPONENTS) es ACPI
   hardvertamogatasra (ACPI_ALL_DRIVERS) bomlanak le. A
   nyomko:veteskor keletkezo" kimenet reszletesseget a "szintkent"
   adjuk meg, ami az ACPI_LV_ERROR-tol (csak a hibak)
   ACPI_LV_VERBOSE-ig (minden) terjedhet. A "szint" itt egy bitmaszk,
   ezert szoko:zzel elvalasztva egyszerre to:bb beallitas megadhato.
   Ha tulsagosan sok u:zenet erkezik a konzol u:zenetpufferebe, akkor
   szu:ksegu:nk lehet a soros konzol keresztu:li nyomko:vetesre is.
   Az o:sszes szint es reteg az acpi(4) man oldalon talalhato meg.

   A nyomko:vetes alapertelmezes szerint nem engedelyezett. Az
   engedelyezesehez hozza kell adnunk az options ACPI_DEBUG sort a
   rendszermagunk beallitasait tartalmazo allomanyhoz, amennyiben a
   rendszermagba forditjuk az ACPI tamogatast. Ha az /etc/make.conf
   allomanyba irjuk bele az ACPI_DEBUG=1 sort, akkor azt globalis
   engedelyezhetju:k. Ha modulkent hasznaljuk, elegendo" csak a
   ko:vetkezo" modon ujraforditani az acpi.ko modult:

 # cd /sys/modules/acpi/acpi
 && make clean &&
 make ACPI_DEBUG=1

   Telepitsu:k fel a acpi.ko modult a /boot/kernel ko:nyvtarba es
   allitsuk be a szamunkra megfelelo" szintet es reteget a
   loader.conf allomanyban. Az alabbi peldaban engedelyezzu:k az
   o:sszes ACPI-CA komponens es az o:sszes ACPI hardvermeghajto
   (processzor, LID stb.) nyomko:veteset. Csak a hibau:zeneteket irja
   ki reszletesen.

 debug.acpi.layer="ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS"
 debug.acpi.level="ACPI_LV_ERROR"

   Ha az altalunk keresett informaciot egy adott esemeny valtja ki
   (peldaul egy felfu:ggesztes vagy egy ebresztes), akkor nem is
   fontos atirnunk hozza a loader.conf allomanyt, hanem helyette a
   rendszer inditasa utan hasznaljuk a sysctl parancsot a reteg es a
   szint megadasara akkor, amikor a rendszert felkeszitju:k az
   esemenyre. A sysctl valtozokat ugyanugy neveztek el, mint a
   loader.conf allomanyban talalhato beallitasokat.

     --------------------------------------------------------------

  11.16.7. Hivatkozasok

   Az ACPI-ro"l az alabbi helyeken talalunk reszletesebb
   informaciokat:

     * A FreeBSD ACPI levelezesi lista

     * Az ACPI levelezesi lista archivuma:
       http://lists.freebsd.org/pipermail/freebsd-acpi/

     * A korabbi ACPI levelezesi lista archivuma:
       http://home.jp.FreeBSD.org/mail-list/acpi-jp/

     * Az ACPI 2.0 specifikacioja: http://acpi.info/spec.htm

     * A FreeBSD ko:vetkezo" man oldalai: acpi(4), acpi_thermal(4),
       acpidump(8), iasl(8), acpidb(8)

     * A DSDT nyomko:vetese (angolul). (Peldanak a Compaqot hozza
       fel, de altalanossagban veve hasznos.)

     --------------------------------------------------------------

            Fejezet 12. A FreeBSD rendszerinditasi folyamata

12.1. Attekintes

   A szamitogep indulasat es a rajta talalhato operacios rendszer
   beto:lto"deset "rendszerinditasi folyamatnak" nevezzu:k, vagy
   egyszeru"en csak "bootolasnak". A FreeBSD rendszerinditasi
   folyamata nagymerteku" rugalmassagot kinal a rendszer indulasat
   ko:veto" esemenyek vezerleset illeto"en, legyen az a szamitogepre
   telepitett ku:lo:nfele operacios rendszerek egyikenek
   kivalasztasa, vagy pedig ugyanazon operacios rendszer valamelyik
   valtozatanak vagy rendszermagjanak kivalasztasa.

   Ez a fejezet reszleteiben bemutatja a rendszerinditashoz
   kapcsolodo konfiguracios opciokat, illetve a FreeBSD bootolasanak
   testreszabhatosagat. Ebbe minden beleertendo", ami a FreeBSD
   rendszermag beindulasa es az eszko:zo:k keresese soran to:rtenik,
   majd az init(8) elinditasaval zarul. Ha nem vagyunk teljesen
   biztosak benne, ez pontosan mikor is ko:vetkezik be, figyelju:k,
   amikor a szo:veg szine feherro"l szu:rkere valt.

   A fejezet elolvasasa soran megismerju:k:

     * milyen elemekbo"l all a FreeBSD rendszerto:lto" alrendszere,
       es ezek mikent kapcsolodnak egymashoz;

     * melyek azok a FreeBSD rendszerinditasaban resztvevo" elemeknek
       atadhato opciok, amelyekkel vezerelheto" ez a folyamat;

     * a device.hints(5) alapjait.

     Csak x86: Ez a fejezet kizarolag csak az Intel x86 tipusu
     architekturajan futo FreeBSD rendszerinditasi folyamatat mutatja
     be.

     --------------------------------------------------------------

12.2. A rendszerinditas problemaja

   Az operacios rendszer elinditasa a szamitogep bekapcsolasa utan
   egy felettebb erdekes problemat vet fel. Definicio szerint a
   szamitogep ugyanis egy lepest sem tud megtenni az operacios
   rendszer elindulasa nelku:l. Peldaul nem tud programokat futtatni
   a lemezro"l. Eszerint ha a szamitogepu:nk nem kepes programokat
   futtatni a lemezro"l az operacios rendszer segitsege nelku:l,
   viszont az operacios rendszer programjai a lemezen vannak, megis
   hogyan kepes elindulni maga az operacios rendszer?

   Maga a problema a Mu:nchausen baro kalandjai c. ko:nyvben
   leirtakhoz hasonlo. A to:rtenet szerint ugyanis a fo"szereplo" egy
   mocsarban ragadt derek lovaval, azonban sikeru:lt kihuznia magat
   belo"le a sajat hajanal fogva. Ez a motivum valt a szamitogepek
   ho"skoraban a rendszerbeto:ltes alapjava, vagyis ahogyan
   beto:lto:ttek az operacios rendszereket. (Ford.: ezt az angolban
   bootstrappingnek hivjak, mivel a to:rtenet angol valtozata szerint
   a csizmajan (boot) emelkedett ki. Ebbo"l alakult ki keso"bb az
   elterjedt bootolas szo is.)

   Az x86-os konfiguraciokon a BIOS (Basic Input/Output System, avagy
   "alapveto" be- es kimeneti rendszer") felelo"s az operacios
   rendszer beto:lteseert. Ehhez a BIOS elo"szo:r megkeresi a
   merevlemezen egy specialis helyen talalhato Master Boot Record-ot
   (MBR). A BIOS elegendo" tudassal rendelkezik az MBR beolvasasahoz
   es lefuttatasahoz, es feltetelezi, hogy az MBR majd elvegzi az
   operacios rendszer beto:ltesehez szu:kseges tovabbi feladatokat,
   helyenkent a BIOS ko:zremu"ko:desevel.

   Az MBR-ben talalhato programkodot hivjak altalaban boot
   managernek, kivaltkepp abban az esetben, amikor az a
   felhasznaloval is kommunikal. Ilyenkor a boot manager to:bbnyire
   tovabbi kodot tartalmaz a lemez elso" savjan vagy az egyik
   allomanyrendszerben. (A boot managereket neha boot loadernek is
   nevezzu:k, de a FreeBSD-s terminologia ezt a kifejezest a
   rendszerinditas egy keso"bbi fokozatara hasznalja.) Nepszeru"bb
   boot managerek: boot0 (avagy Boot Easy, a FreeBSD alapveto" boot
   managere), GRUB, GAG es a LILO. (Ezek ko:zu:l egyedu:l csak a
   boot0 fer el az MBR-ben.)

   Amennyiben merevlemezeinken csupan egyetlen operacios rendszer
   foglal helyet, akkor egy szabvanyos MBR to:keletes megfelelo". Ez
   az MBR megkeresi az elso" indithato (mas neven aktiv) slice-ot a
   lemezen, majd lefuttatja a benne talalhato inditokodot az
   operacios rendszer to:bbi reszenek felelesztesehez. Az fdisk(8)
   altal alapertelmezes szerint telepitett MBR pontosan ilyen. Ennek
   alapja a /boot/mbr allomany.

   Ha viszont to:bb operacios rendszert is telepitettu:nk a
   lemezeinkre, akkor egy etto"l eltero" boot managert erdemes
   hasznalnunk, olyat, amely kepes felsorolni a rendelkezesre allo
   operacios rendszereket, leheto"ve teve, hogy valasztani lehessen
   az inditasuk ko:zo:tt. Ezek ko:zu:l ketto"ro"l esik szo a
   ko:vetkezo" alfejezetekben.

   A FreeBSD rendszerto:lto" alrendszerenek fennmarado resze harom
   fokozatra bonthato. Az elso" fokozatot az MBR inditja el, amely
   pontosan eleget tud ahhoz, hogy a szamitogepet egy elo"re megadott
   allapotba hozza es lefutassa rajta a masodik fokozatot. A masodik
   fokozat ennel mar egy kicsivel to:bbre kepes, majd ezt ko:veti a
   harmadik fokozat. Ez a fokozat zarja le vegu:l az operacios
   rendszer beto:ltesenek feladatat. A munka tehat ezen harom fokozat
   ko:zo:tt oszlik meg, mivel a PC-szabvanyok komoly korlatozasokat
   tesznek az elso", illetve masodik fokozatban futtathato programok
   meretere. Ha egy fu"zzu:k o:ssze a feladatokat, akkor a FreeBSD
   szamara egy sokkal rugalmasabb beto:lto"t kapunk.

   Ezutan beindul a rendszermag (mas neven kernel), es nekilat a
   szamitogepben rendelkezesre allo hardvereszko:zo:k keresesenek,
   majd elo"kesziti o"ket a hasznalatra. Ahogy a rendszermag
   beinditasanak folyamata veget ert, az atadja a vezerlest az
   init(8) nevu" felhasznaloi programnak, amely megbizonyosodik a
   lemezek hasznalhatosagarol. Az init(8) ezt ko:veto"en megkezdi az
   ero"forrasok felhasznaloi szintu" bekonfiguralasat: csatlakoztatja
   az allomanyrendszereket, beallitja a halozati kartya(ka)t, es
   elinditja mindazon programokat, amelyeknek egy FreeBSD rendszer
   indulasakor futnia kell.

     --------------------------------------------------------------

12.3. A boot manager es az indulas fokozatai

     --------------------------------------------------------------

  12.3.1. A boot manager

   Az MBR-ben talalhato programkodot, avagy boot managert, sokszor
   csak a rendszerinditas nulladik fokozatakent emlegetik. Ez az
   alfejezet a korabban emlitett ket boot managert targyalja: a
   boot0-t es a LILO-t.

   A boot0 boot manager: A FreeBSD telepito"je vagy a boot0cfg(8)
   altal kialakitott MBR alapertelmezett allapotban a /boot/boot0
   allomanyon alapszik. (A boot0 program nagyon egyszeru", hiszen az
   MBR-ben elhelyezheto" kod csak 446 byte hosszusagu lehet, mert a
   vegeben meg el kell fernie a slice-tablanak es az 0x55AA
   azonositonak.) Ha telepitettu:k a boot0-t es a lemezeinken to:bb
   operacios rendszer is megtalalhato, akkor a rendszerinditas soran
   egy hasonlo kepet kell latnunk:

   Pelda 12-1. A boot0 munkaban

 F1 DOS
 F2 FreeBSD
 F3 Linux
 F4 ??
 F5 Drive 1

 Default: F2

   Mas operacios rendszerek, ku:lo:no:sen a Windows, telepitesu:k
   soran felu:lirjak a mar meglevo" MBR-t a sajatjukkal. Ha ez
   to:rtenne, vagy egyszeru"en csak szeretnenk a meglevo" MBR-t
   lecserelni a FreeBSD MBR-jevel, adjuk ki a ko:vetkezo" parancsot:

 # fdisk -B -b /boot/boot0 eszko:znev

   ahol az eszko:znev annak az eszko:znek a neve, ahonnan a rendszert
   inditani szeretnenk, tehat peldaul ad0 az elso" IDE-lemez eseten,
   vagy ad2 a masodik IDE-vezerlo"n talalhato elso" IDE-lemez eseten,
   illetve da0 az elso" SCSI-lemez eseten, es igy tovabb. Ha testre
   akarjuk szabni az MBR-t, hasznaljuk a boot0cfg(8)-t.

   A LILO boot manager: Ezen boot manager telepitesehez es
   beallitasahoz, elso"kent inditsuk el a Linuxot es vegyu:k hozza az
   alabbi sort a rendszeru:nkben talalhato /etc/lilo.conf
   konfiguracios allomanyhoz:

 other=/dev/hdXY
 table=/dev/hdX
 loader=/boot/chain.b
 label=FreeBSD

   A fenti sablont kiegeszitve, a linuxos konvenciok szerint adjuk
   meg a FreeBSD elso"dleges particiojat es meghajtojat ugy, hogy a
   X-et atirjuk a linuxos meghajto betu"jelere es az Y-t atirjuk a
   Linux elso"dleges particiojanak szamara. Ha SCSI-meghajtot
   hasznalunk, a /dev/hd reszt is at kell irnunk az elo"bbiek mellett
   /dev/sd-re. A loader=/boot/chain.b sor elhagyhato abban az
   esetben, ha mind a ket operacios rendszer ugyanazon a meghajton
   talalhato. Ha befejeztu:k a modositast, futtassuk le a
   /sbin/lilo -v parancsot a valtoztatasaink eletbe leptetesehez. Ezt
   elleno"rizhetju:k is a kepernyo"n megjeleno" u:zenetek alapjan.

     --------------------------------------------------------------

  12.3.2. Az elso" fokozat (/boot/boot1) es a masodik fokozat
  (/boot/boot2)

   Az elso" es a masodik fokozat fogalmilag ugyanannak a programnak a
   resze, a lemezen ugyanott helyezkedik el. A tarbeli megszoritasok
   miatt ugyan el kellett valasztani o"ket egymastol, de a
   telepitesu:k mindig egy helyre to:rtenik. A telepito" vagy a
   bsdlabel (lasd lentebb) hasznalata soran a /boot/boot nevu"
   kombinalt allomanybol masolodnak ki.

   Az allomanyrendszereken kivu:l talalhatoak, az aktiv slice elso"
   savjaban, annak elso" szektoratol kezdo"do"en. Ez az a hely, ahol
   a boot0, illetve a to:bbi boot manager is keresi a rendszerinditas
   folytatasara alkalmas programot. A felhasznalt szektorok szama
   ko:nnyeden kideritheto" a /boot/boot meretebo"l.

   Legfeljebb 512 byte-os meretenel fogva a boot1 allomany nagyon
   egyszeru" felepitesu", es eppen csak annyit tud a slice-ra
   vonatkozo informaciokat tarolo FreeBSD bsdlabel-ro"l, hogy
   megtalalja a boot2-t es elinditsa.

   A boot2 mar egy kicsivel u:gyesebb, es ismeri elegge a FreeBSD
   allomanyrendszeret ahhoz, hogy megtalaljon rajta allomanyokat,
   valamint kepes egy egyszeru" felu:letet nyujtani a rendszermag
   vagy a beto:lto" megvalasztasahoz.

   Mivel a beto:lto" pedig mar ennel is okosabb, es egy ko:nnyen
   hasznalhato rendszerinditasi konfiguraciot tud a felhasznalo
   szamara nyujtani, ezert a boot2 altalaban ezt inditja el, de
   elo"tte ko:zvetlenu:l a rendszermag futtatasat vegzi el.

   Pelda 12-2. A boot2 mu"ko:des ko:zben

 >> FreeBSD/i386 BOOT
 Default: 0:ad(0,a)/boot/loader
 boot:

   Ha le kellene valtani a korabban telepitett boot1 es boot2
   fokozatokat, hasznaljuk a bsdlabel(8)-t:

 # bsdlabel -B lemezslice

   ahol a lemezslice annak a lemeznek es slice-nak a kombinacioja,
   ahonnan inditjuk a rendszeru:nket, peldaul az elso" IDE-lemez
   elso" slice-a eseten ez az ad0s1.

     A veszelyesen dedikalt mod (Dangerously Dedicated Mode): Amikor
     a bsdlabel(8) meghivasakor csak a lemez nevet hasznaljuk,
     peldaul ad0-t, a parancs egy veszelyesen dedikalt lemezt hoz
     letre, slice-ok nelku:l! Szinte biztos, hogy nem ez az, amire
     szu:ksegu:nk lenne, ezert mindig elleno"rizzu:k kiadasa elo"tt a
     bsdlabel(8) parancsot!

     --------------------------------------------------------------

  12.3.3. A harmadik fokozat (/boot/loader)

   A beto:lto" a harom fokozatu rendszerto:ltes utolso allomasa. Az
   allomanyrendszerben /boot/loader neven talalhatjuk meg.

   A rendszerto:lto"t az egyszeru" konfiguralhatosagot tamogato,
   felhasznalobarat eszko:znek terveztek, es ko:nnyen megtanulhato,
   beepitett parancsokat hasznal, melyek mo:go:tt egy o:sszetettebb
   parancsokat ismero", ero"sebb ertelmezo" all.

     --------------------------------------------------------------

    12.3.3.1. A rendszerto:lto" mu"ko:dese

   Az inicializalas soran a rendszerto:lto" megprobalja megkeresni a
   konzolt es a lemezek ko:zu:l igyekszik megtalalni azt, amelyikro"l
   elindult a rendszer. A keresesek eredmenyenek megfelelo"en
   beallitja a valtozokat, majd elindul egy ertelmezo", ahol vagy
   szkriptbo"l olvasva vagy pedig interaktivan feldolgozasra
   keru:lnek a parancsok.

   A rendszerto:lto" ezt ko:veto"en beolvassa a /boot/loader.rc
   allomanyt, ami pedig alapertelmezes szerint feldolgozza a
   /boot/defaults/loader.conf allomanyt, ahol a valtozok ertelmes
   kezdo"erteket kapnak, valamint feldolgozza meg a /boot/loader.conf
   allomanyt is, ahol a valtozok ertekeit valtoztathatjuk meg. Miutan
   ez lezajlott, a loader.rc a valtozok ertekeinek megfelelo"en
   cselekszik, beto:ltve az ily modon kivalasztott rendszermagot es a
   hozza valasztott modulokat.

   Vegezetu:l, a rendszerto:lto" beiktat egy, alapertelmezes szerint
   10 masodperces varakozasi szu:netet, majd elinditja a
   rendszermagot, ha azt meg nem szakitjuk egy billentyu"
   lenyomasaval. Ha megszakitjuk ezt a varakozast, a rendszerto:lto"
   egy parancssort ad, amin keresztu:l egyszeru" parancsokat adhatunk
   ki neki: allithatjuk a valtozok ertekeit, modulokat tavolithatunk
   el a memoriabol, modulokat to:ltethetu:nk be, elindithatjuk a
   rendszert vagy ujraindithatjuk a szamitogepet.

     --------------------------------------------------------------

    12.3.3.2. A rendszerto:lto" beepitett parancsai

   Ko:vetkezzenek a leggyakrabban hasznalt parancsok a
   rendszerto:lto"ben. Az o:sszes itt elerheto" parancsot a loader(8)
   man oldalon talaljuk meg.

   autoboot masodperc

           Megkezdi a rendszermag beto:lteset, ha nem szakitjuk meg a
           varakozast masodpercekben megadott ido"tartam alatt. Ekkor
           egy visszaszamlalast lathatunk, ami az alapertelmezes
           szerint 10 masodpercto"l indul.

   boot [-opciok] [rendszermag]

           Amennyiben leteznek, a megadott opciokkal azonnal megkezdi
           a megadott rendszermag beto:lteset. A rendszermag
           parameter csak abban az esetben adhato meg, ha elo"tte
           kiadtunk egy unload parancsot, masku:lo:nben a korabban
           beto:lto:tt rendszermaggal indul a rendszer.

   boot-conf

           Vegigmegy a modulok ugyanazon automatikus konfiguraciojan,
           ahogy az a normalis rendszerinditas soran is to:rtenik.
           Ezen parancs hasznalatanak csak akkor van ertelme, ha
           elo"tte az unload parancsot hasznaljuk, megvaltoztatunk
           egy-ket valtozot, altalaban a kernel-t.

   help [temako:r]

           A /boot/loader.help allomanyban fellelheto"
           sugou:zeneteket mutatja meg. Ha temako:rnek indexet adunk
           meg, akkor az elerheto" temako:ro:k listajat kapjuk meg.

   include allomanynev ...

           Feldolgozza a megnevezett allomanyt: beolvassa, majd
           sorrol-sorra ertelmezi. Hiba eseten azonnal megallitja a
           feldolgozast.

   load [-t tipus] allomanynev

           A nev alapjan beto:lti a rendszermagot, modult vagy az
           adott tipusu allomanyt. Az allomanynev utan megadott
           tovabbi parameterek az allomanynak adodnak at.

   ls [-l] [eleresi utvonal]

           Kilistazza a megadott eleresi utvonalon talalhato
           allomanyokat, vagy ennek hianyaban a gyo:ker tartalmat. Ha
           hozzatesszu:k a -l kapcsolot, az allomanyok merete is
           lathato valik.

   lsdev [-v]

           Kilistazza az o:sszes olyan eszko:zt, ahonnan modulokat
           to:lthetu:nk be. Amennyiben a -v kapcsolot is megadjuk,
           tovabbi reszleteket tudhatunk meg roluk.

   lsmod [-v]

           Kilistazza a beto:lto:tt modulokat. Ha to:bbet szeretnenk
           megtudni roluk, adjuk meg a -v kapcsolot.

   more allomanynev

           Megmutatja a megadott allomany tartalmat, minden LINES
           szamu sor utan szu:netet tartva.

   reboot

           Azonnal ujrainditja a szamitogepet.

   set valtozo, set valtozo=ertek

           Beallitja a rendszerto:lto" ko:rnyezeti valtozojanak
           erteket.

   unload

           Eltavolitja a memoriabol az o:sszes beto:lto:tt modult.

     --------------------------------------------------------------

    12.3.3.3. Rendszerto:lto" peldak

   Ime nehany konkret pelda a rendszerto:lto" hasznalatara:

     * Igy indithatjuk egyfelhasznalos modban az altalunk hasznalt
       rendszermagot:

 boot -s

     * Tavolitsuk el a beto:lto:tt rendszermagot es a moduljait, es
       to:ltsu:k be helyettu:k a korabbi (vagy egy masik)
       rendszermagot:

 unload
 load kernel.old

       Itt hasznalhatjuk a kernel.GENERIC nevet is, amely a
       telepito"lemezen talalhato altalanos rendszermagra utal, vagy
       a kernel.old nevet, amely a korabban hasznalt rendszermagot
       rejti (peldaul amikor rendszermagot frissitettu:nk vagy
       keszitettu:nk magunknak).

         Megjegyzes: A ko:vetkezo"keppen lehet beto:lteni a szokasos
         moduljainkat egy masik rendszermaggal:

 unload
 set kernel="kernel.old"
 boot-conf

     * Egy rendszermag-konfiguracios szkript (automatizalt szkript,
       amely ugyanazokat a beallitasokat vegzi el, amiket mi magunk
       tennenk akkor, amikor a rendszermagot inditjuk) beto:ltese:

 load -t userconfig_script /boot/kernel.conf

     --------------------------------------------------------------

    12.3.3.4. Rendszerbeto:lto" kepernyo"k

   Keszitette: Joseph J. Barbish.

   A rendszerto:ltes soran megjeleno" rendszeru:zenetek megjelenitese
   helyett egy sokkal megnyero"bb, latvanyosabb rendszerinditast
   tudunk elerni beto:lto" kepernyo"k hasznalataval. Egy ilyen kepet
   egeszen a konzolos bejelentkezesig vagy az X felett futo
   valamelyik bejelentkezo" kepernyo" megjeleneseig lathatunk.

   FreeBSD alatt alapveto"en ket tipusu ko:rnyezet letezik. Ezek
   ko:zu:l az egyik a hagyomanyos virtualis konzolos parancssoros
   felu:let. Ekkor a rendszerto:ltes befejezo"desekor egy szo:veges
   parancssori bejelentkezo" promptot kapunk. A masik ko:rnyezet az
   X11 altal felkinalt grafikus felu:let. Miutan telepitettu:k az X11
   szervert es valamelyik munkako:rnyezetet, tehat peldaul a GNOME, a
   KDE vagy XFce ko:rnyezetek valamelyiket, a startx paranccsal
   indithatjuk el a grafikus felu:letet.

   Nemely felhasznalok a megszokott szo:veges bejelentkezes helyett
   is inkabb valamelyik X11 alapu grafikus bejelentkezest szeretnek
   hasznalni. A ku:lo:nbo:zo" bejelentkezo" kepernyo"k, mint amilyen
   az Xorg eseten az XDM, a GNOME eseten a gdm, vagy a KDE eseten a
   kdm (illetve a Portgyu"jtemenybo"l szarmazo egyeb megoldasok)
   alapveto"en a konzolos bejelentkezes helyett nyujtanak egy
   grafikus bejelentkezo" felu:letet. Ilyenkor a sikeres
   bejelentkezest ko:veto"en a felhasznalo ko:zvetlenu:l egy grafikus
   ko:rnyezetbe keru:l.

   A parancssoros felu:let eseten a rendszerto:lto" kepernyo" elrejti
   az o:sszes rendszeru:zenetet es a rendszer inditasakor futtatott
   programok u:zeneteit. Az X11 hasznalata eseten azonban a
   felhasznalok ezzel egyu:tt mar a to:bbi, alapertelmezes szerint
   grafikus felu:lettel rendelkezo" rendszerhez (Microsoft Windows
   vagy mas nem-UNIX operacios rendszer) hasonlo elmenyt nyernek.

     --------------------------------------------------------------

      12.3.3.4.1. A rendszerbeto:lto" kepek tamogatasa

   A FreeBSD csak BMP (.bmp) vagy ZSoft PCX formatumu, 256 szinu"
   rendszerbeto:lto" kepek megjeleniteset tamogatja. Emellett
   szabvanyos VGA kartyakon csak akkor fog mu"ko:dni, ha a kep
   320x200 vagy annal kisebb felbontasu.

   Nagyobb meretu" kepek eseten, egeszen az 1024x768-as felbontasig,
   a FreeBSD VESA tamogatasara lesz szu:ksegu:nk. Ezt vagy a rendszer
   inditasakor a VESA modul beto:ltesevel engedelyezhetju:k, vagy ha
   a rendszermag konfiguracios allomanyaban megadjuk a VESA sort es
   keszitu:nk egy sajat rendszermagot (lasd 8 fejezet). A VESA
   tamogatason keresztu:l a felhasznalok a teljes kepernyo"t
   beto:lto" rendszerbeto:lto" kepeket is meg tudnak igy jeleniteni.

   A rendszerbeto:lto" kepernyo" a rendszer inditasa ko:zben barmikor
   tetszo"legesen kikapcsolhato egy tetszo"leges billentyu"
   lenyomasaval.

   A megadott beto:lto"kepernyo" alapertelmezes szerint a
   kepernyo"vedo" szerepet is beto:lti az X11 felu:leten kivu:l. Ha
   tehat egy ideig nem hasznaljuk a szamitogepu:nket, akkor a
   kepernyo" atvalt a beto:lto"kepre es folyamatosan valtoztatni
   kezdi az intenzitasat, a nagyon vilagosbol a nagyon so:tetbe, majd
   ujrakezdi. Az alapertelmezett kepernyo"vedo" az /etc/rc.conf
   allomanyban a saver= sor megadasaval allithato at. Ehhez a
   beallitashoz to:bb ku:lo:nbo:zo" beepitett kepernyo"vedo"
   tartozik, ezek teljes listajat a splash(4) man oldalon
   olvashatjuk. Ezek ko:zu:l az alapertelmezett a "warp". Az
   /etc/rc.conf allomanyban megadhato saver= csak a virtualis
   konzolokra vonatkozik, az X11 bejelentkezo" kepernyo"ire semmilyen
   hatassal sincs.

   A rendszerbeto:lto" nehany u:zenete, valamint a rendszerinditasi
   opciokat tartalmazo menu: es a hozzatartozo visszaszamlalas meg a
   rendszerbeto:lto" kepernyo" hasznalata soran is meg fog jelenni.

   A http://artwork.freebsdgr.org cimen talalhatunk nehany ilyen
   beto:lto"kepernyo"t. A sysutils/bsd-splash-changer port
   telepitesevel pedig a rendszer egyes inditasakor egy elo"re
   megadott gyu"jtemenybo"l tudunk veletlenszeru"en valasztani egyet.

     --------------------------------------------------------------

      12.3.3.4.2. A rendszerbeto:lto" kepek hasznalata

   A beto:lto"kepet tartalmazo (.bmp vagy .pcx kiterjesztesu")
   allomanyt a rendszerindito particiora, peldaul a /boot ko:nyvtarba
   kell tennu:nk.

   A normal (256 szin, legfeljebb 320x200-as felbontasu) kepek eseten
   a ko:vetkezo" sorokat adjuk hozza a /boot/loader.conf allomanyhoz:

 splash_bmp_load="YES"
 bitmap_load="YES"
 bitmap_name="/boot/beto:lto"kep.bmp"

   Nagyobb felbontas eseten (legfeljebb 1024x768-as meretig) pedig a
   /boot/loader.conf allomanynak a ko:vetkezo"ket kell tartalmaznia:

 vesa_load="YES"
 splash_bmp_load="YES"
 bitmap_load="YES"
 bitmap_name="/boot/beto:lto"kep.bmp"

   Az imenti peldaban felteteleztu:k, hogy a /boot/beto:lto"kep.bmp
   allomanyt hasznalt beto:lto"kepkent. Amikor azonban PCX
   allomanyokat akarunk hasznalni, a ko:vetkezo" sorokat kell
   megadnunk, a felbontastol fu:ggo"en a vesa_load="YES" sorral
   kiegeszitve:

 splash_pcx_load="YES"
 bitmap_load="YES"
 bitmap_name="/boot/beto:lto"kep.pcx"

   Termeszetesen a kep neve sem csak "beto:lto"kep" lehet.
   Tetszo"legesen elnevezhetju:k, egyedu:l csak arra kell u:gyelu:nk,
   hogy BMP vagy PCX formatumu legyen: splash_640x400.bmp vagy
   peldaul blue_wave.pcx.

   Tovabbi erdekes beallitasok a loader.conf allomanybol:

   beastie_disable="YES"

           Ennek megadasakor nem jelenik meg a rendszerinditasi
           leheto"segeket felkinalo menu:, de a visszaszamlalas
           megmarad. Hiaba tiltjuk le a menu:t, ilyenkor tovabbra is
           valasztanunk kell a leheto"segek ko:zu:l.

   loader_logo="beastie"

           Ezzel a beallitassal a menu:ben lathato "FreeBSD"
           feliratot cserelhetju:k le a korabbi kiadasokban szereplo"
           szines demonos emblemara.

     --------------------------------------------------------------

12.4. Kapcsolat a rendszermaggal a rendszerinditas folyaman

   Ahogy sikeru:lt beto:lteni (a szokasos modon) a rendszerto:lto"vel
   vagy (a rendszerto:lto" atugrasaval) a boot2 segitsegevel, a
   rendszermag megvizsgalja az esetlegesen atvett rendszerinditasi
   parametereket, es azoknak megfelelo"en viselkedik.

     --------------------------------------------------------------

  12.4.1. A rendszermag parameterei

   A rendszermag leginkabb hasznalt parameterei:

   -a

           a rendszermag inicializalasa soran rakerdez a gyo:ker
           allomanyrendszerkent csatlakoztatando eszko:zre.

   -C

           a rendszer inditasa CD-ro"l.

   -c

           a UserConfig, a rendszerinditas soran hasznalt
           rendszermag-beallito, futtatasa.

   -s

           a rendszer inditasa egyfelhasznalos modban.

   -v

           reszletesebb informaciok megjelenitese a rendszermag
           inditasa soran.

     Megjegyzes: Ezeken kivu:l meg szamos parameter letezik, a teljes
     listat a boot(8) man oldalon talalhatjuk meg.

     --------------------------------------------------------------

12.5. Eszko:z utmutatok (device.hints)

   Irta: Tom Rhodes.

     Megjegyzes: Ez a leheto"seg csak a FreeBSD 5.0 vagy annal
     keso"bbi verzioiban jelenik meg.

   A rendszerinditas kezdeti szakaszaban a loader(8) beolvassa a
   device.hints(5) allomanyt. Ebben az allomanyban tarolodnak a
   gyakran csak "eszko:z utmutatoknak" nevezett valtozok, amelyek a
   rendszermag szamara nyujtanak hasznos informaciokat az indulas
   soran. Ezeket az "utmutatokat" az eszko:zmeghajtok hasznositjak az
   altaluk ismert eszko:zo:k beallitasa soran.

   Az eszko:zo:kre vonatkozo ilyen jellegu" utmutatasok a harmadik
   fazisban megjeleno" parancssorban is megadhatoak. A valtozokat a
   set (beallit) parancs segitsegevel tudunk felvenni, mig az unset
   (eltavolit) parancs tudunk to:ro:lni, valamint a show (megmutat)
   paranccsal megjeleniteni az erteku:ket. So"t, ezen a ponton a
   /boot/device.hints allomannyal mar beallitott valtozokat is
   felu:lbiralhatjuk. A rendszerindito parancssoraban elvegzett
   modositasok viszont nem fognak megmaradni, es a ko:vetkezo"
   rendszerinditas alkalmaval elvesznek.

   Ahogy a rendszeru:nk hasznalatra kesz allapotba keru:lt, a kenv(1)
   parancs hasznalhato a valtozok ertekeinek listazasahoz.

   A /boot/device.hints allomanyban soronkent egy-egy valtozot tudunk
   megadni, illetve a ketto"skereszttel ("#") bevezetve
   megjegyzeseket illeszthetu:nk bele. A sorok szerkezete az alabbi:

 utmutato.meghajto.egyseg.kulcsszo="ertek"

   A harmadik fazisban pedig igy adhatjuk meg:

 set utmutato.meghajto.egyseg.kulcsszo=ertek

   Itt a meghajto az eszko:zmeghajto neve, az egyseg az
   eszko:zmeghajto altal kezelt egyik egyseg sorszama, a kulcsszo
   pedig az utmutatashoz tartozo kulcsszo. Ez a ko:vetkezo"k egyike
   lehet:

     * at: az utmutatas az eszko:z altal hasznalt buszra vonatkozik.

     * port: az utmutatas az eszko:z altal hasznalt I/O-cimre
       vonatkozik.

     * irq: az utmutatas az eszko:z altal hasznalt megszakitas
       sorszamara vonatkozik.

     * drq: az utmutatas az eszko:z altal hasznalt DMA-csatorna
       sorszamara vonatkozik.

     * maddr: az utmutatas az eszko:z altal hasznalt fizikai
       memoriateru:let kezdo"cimere vonatkozik.

     * flags: az eszko:zho:z tartozo bitek beallitasa.

     * disabled: ha az erteke 1, akkor az adott eszko:z hasznalatat
       letiltjuk.

   Az eszko:zmeghajtok elfogadhatnak (vagy varhatnak) olyan
   utmutatasokat is, amelyek itt nem szerepelnek, ezert mindegyik
   eseteben erdemes attekinteni a hozzajuk tartozo man oldalt.
   Bo"vebben informacioert lasd a device.hints(5), kenv(1),
   loader.conf(5) es loader(8) man oldalakat.

     --------------------------------------------------------------

12.6. Init: A folyamatiranyitas elinditasa

   Miutan a rendszermag sikeresen elindult, atadja a vezerlest a
   init(8) felhasznaloi folyamatnak, amely vagy az /sbin/init, vagy
   pedig a rendszerinditoban megadott init_path valtozo altal
   mutatott program.

     --------------------------------------------------------------

  12.6.1. Az automatikus ujraindulasi folyamat

   Az automatikus ujraindulasi folyamat gondoskodik rola, hogy az
   indulast ko:veto"en rendelkezesre allo allomanyrendszerek ne
   legyenek seru:ltek. Amennyiben megis seru:ltek es a fsck(8) nem
   tudja megjavitani o"ket, az init(8) a rendszert egyfelhasznalos
   modba allitja, ahol a rendszergazdanak kell ko:zvetlenu:l
   megoldania a fennallo problemakat.

     --------------------------------------------------------------

  12.6.2. Egyfelhasznalos mod

   Ezt a modot az automatikus ujrainditasi folyamat soran erhetju:k
   el, vagy akkor, ha a rendszert a -s kapcsoloval inditjuk, esetleg
   a rendszerinditoban beallitjuk a boot_single valtozot.

   Ezt a modot to:bbfelhasznalos modban, a shutdown(8) hivasaval is
   aktivalhatjuk, ha nem adjuk meg az ujrainditast (-r) vagy
   leallitast (-h) kero" opciok egyiket sem.

   Ha az /etc/ttys allomanyban a console erteket insecure (nem
   biztonsagos)ra allitjuk, a rendszer az egyfelhasznalos modba lepes
   elo"tt kerni fogja a root felhasznalo jelszavat.

   Pelda 12-3. Nem biztonsagos konzol megadasa az /etc/ttys-ben

 # name  getty                           type    status          comments
 #
 # If console is marked "insecure", then init will ask for the root password
 # when going to single-user mode.
 console none                            unknown off insecure

     Megjegyzes: Az insecure (nem biztonsagos) konzol az, ahol nem
     tekintju:k megbizhatonak a rendszerkonzol fizikai biztonsagat,
     es biztosak akarunk lenni benne, hogy csak az kepes hasznalni a
     rendszert egyfelhasznalos modban, aki ismeri a root felhasznalo
     jelszavat. Ez tehat nem arra utal, hogy magat a konzolt akarjuk
     nem biztonsagos modban mu"ko:dtetni. Szoval, ha biztonsagot
     akarunk, az insecure-t valasszuk, ne pedig a secure-t.

     --------------------------------------------------------------

  12.6.3. To:bbfelhasznalos mod

   Ha az init(8) mindent rendben talal, vagy ha a felhasznalo
   kilepett az egyfelhasznalos modbol, a rendszer to:bbfelhasznalos
   modba lep at, ahol megkezdi az ero"forrasok konfiguralasat.

     --------------------------------------------------------------

    12.6.3.1. Az ero"forrasok konfiguracioja (rc)

   Az ero"forrasok konfiguralo alrendszer beolvassa a folyamathoz
   kapcsolodo valtozok alapertelmezett ertekeit az
   /etc/defaults/rc.conf allomanybol, majd modositja o"ket a rendszer
   egyeni beallitasai szerint, amit a /etc/rc.conf allomanybol olvas
   ki. Ezutan elvegzi meg az /etc/fstab alapjan az allomanyrendszerek
   csatlakoztatasat, elinditja a halozati szolgaltatasokat, egyeb
   rendszerdaemonokat, es vegezetu:l lefuttatja a telepitett csomagok
   inditoszkriptjeit.

   Az ero"forrasokat konfiguralo alrendszerro"l magarol az rc(8) man
   oldalon, valamint az erintett szkriptek tanulmanyozasaval
   tudhatunk meg to:bbet.

     --------------------------------------------------------------

12.7. A leallitasi folyamat

   A shutdown(8) paranccsal vezerelt leallitas soran az init(8)
   megprobalja lefuttatni az /etc/rc.shutdown szkriptet, majd ezt
   ko:veto"en TERM (befejeztetes) jelzest ku:ld az aktualisan futo
   folyamatoknak, es kis ido" mulva pedig KILL (leallitas) jelzest
   azokat, amelyek meg nem alltak le addig a pillanatig.

   Azokon az architekturakon es rendszereken, ahol elerheto" a
   fejlett energiagazdalkodas tamogatasa, a FreeBSD-t a shutdown -p
   now paranccsal allithatjuk le, amit ko:zvetlenu:l a szamitogep
   automatikus kikapcsolasa ko:vet. A FreeBSD-s rendszer
   ujrainditasahoz egyszeru"en csak adjuk ki a shutdown -r now
   parancsot. Fontos tudni, hogy alapertelmezes szerint a shutdown(8)
   hasznalatahoz root felhasznalonak, vagy legalabb az operator
   csoport tagjanak kell lennu:nk. Erre feladatokra egyebkent a
   halt(8) es reboot(8) parancsok is hasznalhatoak. Alkalmazasukrol
   bo"vebben a hozzajuk, valamint a shutdown(8)-hoz tartozo man
   oldalakon talalhatunk bo"vebben informaciokat.

     Megjegyzes: Az energiagazdalkodas hasznalatahoz a rendszermagnak
     beepitve vagy a megfelelo" modul beto:ltesevel bizositania kell
     az acpi(4) tamogatast.

     --------------------------------------------------------------

      Fejezet 13. Felhasznalok es hozzaferesek alapveto" kezelese

   Irta: Neil Blakey-Milner.

13.1. Attekintes

   A FreeBSD leheto"ve teszi, hogy egyazon ido"ben egyszerre to:bb
   felhasznalo is dolgozhasson a szamitogepen. Ko:zu:lu:k
   nyilvanvaloan csak egy kepes elo"tte u:lni [6], de rajta kivu:l
   meg sok mas felhasznalo is be tud jelentkezni a munkajahoz
   halozaton keresztu:l. A rendszer hasznalatahoz minden egyes
   felhasznalonak hozzaferessel kell rendelkeznie.

   A fejezet elolvasasa soran megismerju:k:

     * a FreeBSD rendszerben megtalalhato ku:lo:nfele felhasznaloi
       hozzaferesek ko:zti ku:lo:nbsegeket;

     * hogyan keszitsu:nk uj felhasznaloi hozzafereseket;

     * hogyan to:ro:lju:nk felhasznaloi hozzafereseket;

     * hogyan valtoztassuk meg a hozzaferes adatait, mint peldaul a
       felhasznalok teljes nevet vagy a valasztott
       parancsertelmezo"jet;

     * hogyan korlatozzuk az egyes hozzafereseket vagy hozzaferesek
       egy csoportjat az olyan ero"forrasok, mint peldaul a memoria
       vagy a processzorido" vedelmeben;

     * hogyan hasznaljuk csoportokat a hozzaferesek karbantartasanak
       megko:nnyitesere.

   A fejezet elolvasasahoz ajanlott:

     * a UNIX es a FreeBSD alapjainak ismerete (3 fejezet).

     --------------------------------------------------------------

13.2. Bevezetes

   A rendszert barmilyen fajta modon csak hozzafereseken keresztu:l
   tudjuk elerni, minden programot felhasznalok futtatnak, ezert a
   felhasznalok es hozzaferesek kezelese a FreeBSD rendszerek szerves
   resze.

   A FreeBSD rendszerben minden hozzaferes rendelkezik bizonyos
   informaciokkal az azonositashoz.

   Felhasznalo neve

           A felhasznalonevet a login: felirat megjelenesekor kell
           megadni. A felhasznalok neveinek egyedinek kell lenni a
           szamitogepen, tehat ket felhasznalo nem hasznalhatja
           ugyanazt a nevet. A passwd(5) man oldalon megtalalhatjuk
           azokat a szabalyokat, amik az ervenyes felhasznalonevek
           letrehozasara vonatkoznak. Altalanossagban elmondhato,
           hogy a felhasznaloneveknek kisbetu"sek kell lenniu:k es
           legfeljebb nyolc karakterbo"l allhatnak.

   Jelszo

           Minden hozzafereshez tartozik egy jelszo is. Ez a jelszo
           lehet akar u:res is, ebben az esetben nincs szu:kseg
           jelszora a hozzafereshez. Ez viszont to:bbnyire egy nagyon
           rossz o:tlet: minden hozzaferest ero"sen ajanlott
           jelszoval vedeni.

   Felhasznalo azonositoja (User ID, UID)

           Az UID egy szam, amely hagyomanyosan 0-tol 65535-ig terjed
           [7], es a felhasznalo rendszeren belu:li egyedi
           azonositasara hasznalatos. A FreeBSD az UID-ot a
           felhasznalok beazonositasara hasznalja -- barmelyik
           parancs, amely leheto"ve teszi felhasznalonevek megadasat,
           at fogja alakitani UID-de, mielo"tt tenylegesen dolgozni
           kezdene vele. Ez tehat azt jelenti, hogy to:bb
           hozzaferesu:nk is lehet to:bb ku:lo:nbo:zo"
           felhasznalonevvel, de ugyanazzal az UID-del. Legalabb is a
           FreeBSD ezeket egyetlen felhasznalonak tekinti, de nem is
           valoszinu", hogy ilyenre valaha szu:ksegu:nk is lenne.

   Csoportazonosito (Group ID, GID)

           A csoportazonosito (Group ID, GID) egy szam, amely
           altalaban 0-tol 65535-ig terjed [7], es azt az elso"dleges
           csoportot azonositja be egyedileg, amihez a felhasznalo
           tartozik. A csoportok segitsegevel az ero"forrasok
           hozzaferesnek vezerleset tudjuk megoldani a felhasznalok
           GID-jevel az UID-dek helyett. Ezzel jelento"s mertekben
           cso:kkentheto" egyes konfiguracios allomanyok merete. Egy
           felhasznalo egyszerre to:bb csoport tagja is lehet.

   Bejelentkezesi osztaly

           A bejelentkezesi osztalyok a csoportszervezes kibo"viteset
           celozzak meg, tovabbi rugalmassagot nyujtanak, amikor a
           rendszert az egyes felhasznalok igenyeihez szabjuk.

   Jelszovaltasi ido"

           Alapertelmezes szerint a FreeBSD nem kenyszeriti ra a
           felhasznalokat, hogy rendszeresen megvaltoztassak a
           jelszavukat. Ezt felhasznalonkent kikenyszerithetju:k, es
           igy az egyes, vagy akar az o:sszes felhasznalot
           ko:telezhetju:k az adott ido"ko:zo:nkent jelszovaltasra.

   A hozzaferes lejarati ideje

           A FreeBSD-ben alapertelmezes szerint nem evu:lnek el a
           hozzaferesek. Ha azonban olyan hozzafereseket kell
           letrehoznunk, melyeknek korlatoznunk kell az
           elettartamukat, mint peldaul egy iskolaban a diakok
           szamara, akkor ilyenkor meg tudjuk adni a lejaratuk
           idejet. Ezen datum utan a hozzaferessel mar nem lehet
           bejelentkezni a rendszerbe, viszont a hozzatartozo
           ko:nyvtarban tarolt allomanyok tovabbra is megmaradnak.

   Felhasznalo teljes neve

           Mig a felhasznalonev to:keletesen azonositja a FreeBSD
           szamara a hozzaferest, nem feltetlenu:l tu:kro:zi a
           felhasznalo valodi nevet. Ezt az informaciot is meg lehet
           adni a hozzafereshez.

   Felhasznaloi ko:nyvtar

           A felhasznaloi ko:nyvtar a rendszerben talalhato azon
           ko:nyvtar teljes eleresi utvonala, ahova a felhasznalo a
           bejelentkezest ko:veto"en keru:l. Elterjedt megszokas,
           hogy az o:sszes felhasznalo ko:nyvtarat a
           /home/felhasznalonev vagy a /usr/home/felhasznalonev
           ko:nyvtarba teszik. A felhasznalok ezekben a
           ko:nyvtarakban taroljak a szemelyes allomanyaikat, es
           tetszo"leges ko:nyvtarakat letrehozhatnak benne.

   Felhasznaloi parancsertelmezo"

           A parancsertelmezo" biztositja azt az alapertelmezett
           ko:rnyezetet, amiben a felhasznalo kapcsolatba tud lepni a
           rendszerrel. To:bbfele parancsertelmezo" is akad, es a
           tapasztaltabb felhasznalok ragaszkodnak is
           nemelyiku:kho:z, amely gyakran lathato is a hozzaferesu:k
           beallitasaiban.

   Harom fo" tipusa van a hozzafereseknek: az adminisztratori, a
   rendszer- es a felhasznaloi hozzaferesek. Az adminisztatori
   hozzaferes, amelyre gyakran rootkent hivatkoznak, hasznalatos a
   rendszer karbantartasara, es semmilyen korlatozas nem ervenyes ra.
   A rendszerhozzaferesek szolgaltatasokat futtatnak. Vegezetu:l a
   felhasznaloi hozzafereseket hasznaljak a valodi emberek, akik
   bejelentkeznek, leveleket olvasnak es igy tovabb.

     --------------------------------------------------------------

13.3. Az adminisztratori hozzaferes

   Az adminisztatori hozzaferes, amelyet altalaban csak rootnak
   nevezu:nk, a rendszeradminisztracios feladatok elvegzesehez van
   igazitva, es nem ajanlott az olyan hetko:znapi tevekenysegek
   elvegzesehez, mint peldaul a levelek olvasasa es irasa, a rendszer
   bejarasa vagy a programozas.

   Ezert az adminisztrator, eltero"en az atlagos felhasznaloi
   hozzaferesekto"l, kepes mindenfele hatarok nelku:l tevekenykedni,
   es az adminisztratori hozzaferes helytelen hasznalata latvanyos
   katasztrofakat idezhet elo". A felhasznaloi hozzaferesek
   keptelenek mero" veletlensegbo"l to:nkretenni a rendszert, ezert
   altalanossagban veve az a legjobb, ha egyszeru" felhasznaloi
   hozzafereseket hasznalunk, amint modunk van ra, hacsak nincs
   szu:ksegu:nk kifejezetten ku:lo:nleges jogosultsagokra.

   Minden esetben erdemes alaposan megfontolni az adminisztratorkent
   kiadott parancsokat, mivel egyetlen hianyzo szoko:z vagy mas egyeb
   karakter helyrehozhatatlan karokat okozhat a rendszerben.

   Ezert, ha meg nem tettu:k volna meg korabban, legyen az elso"
   dolgunk a fejezet elolvasasa utan, hogy letrehozunk egy kiemelt
   jogosultsagokkal nem rendelkezo" felhasznalot sajat magunk szamara
   a hetko:znapi feladatok lebonyolitasara. Ez ugyanugy vonatkozik a
   to:bbfelhasznalos es az egyfelhasznalos modban futo rendszerekre
   is. A fejezet egy keso"bbi reszeben leirjuk, hogyan lehet tovabbi
   hozzafereseket letrehozni es hogyan kell valtani egy mezei
   felhasznalo es az adminisztrator hozzaferese ko:zo:tt.

     --------------------------------------------------------------

13.4. Rendszerhozzaferesek

   A rendszer altal hozzaferesek azok, amelyek olyan szolgaltatasok
   futtatasaert felelo"sek, mint peldaul a DNS, levelezes,
   webszerverek es igy tovabb. Ennek oka a biztonsag: ha minden
   szolgaltatast adminisztratorkent futtatnank, barmit meg tudnanak
   tenni a rendszerben.

   Ilyen rendszerfelhasznalok a daemon, operator, bind (a
   nevfeloldashoz), news, es a www.

   A nobody ("senki") egy altalanos jogosultsagok nelku:li
   rendszerfelhasznalo. Mindazonaltal nem szabad elfelejtenu:nk, hogy
   minel to:bb szolgaltatast bizunk a nobody-ra, annal to:bb allomany
   es program keru:l vele kapcsolatba es ennelfogva annal ero"sebbe
   valik a rendszer szamara ez a felhasznalo.

     --------------------------------------------------------------

13.5. Felhasznaloi hozzaferesek

   A felhasznaloi hozzaferesek a valos felhasznalok elso"dleges
   eszko:zei a rendszer fele, es ezek a hozzaferesek szigetelik el a
   felhasznalokat es a ko:rnyezeteket, megakadalyozva, hogy a
   felhasznalok kart okozzanak akar a rendszerben, akar egymasnak,
   valamint leheto"ve teszik a felhasznalok szamara a ko:rnyezeteik
   testreszabasat anelku:l, hogy to:bbieket modositani kellene.

   Minden olyan szemelynek, aki hozza akar ferni a rendszeru:nkho:z,
   rendelkeznie kell felhasznaloi azonositoval. Ezaltal meg tudjuk
   allapitani ki mivel foglalkozik eppen a rendszerben, es meg tudjuk
   akadalyozni, hogy a felhasznalok elerjek egymas beallitasait,
   olvassak egymas leveleit es igy tovabb.

   Minden felhasznalo alakitani tudja a sajat ko:rnyezetet, es ezzel
   mintegy berendezkedik a rendszeru:nkben, ku:lo:nfele
   parancsertelmezo"k, szo:vegszerkeszto"k,
   billentyu"-hozzarendelesek es nyelvek hasznalataval.

     --------------------------------------------------------------

13.6. A hozzaferesek modositasa

   Egy UNIX-os ko:rnyezetben to:bb ku:lo:nbo:zo" parancs ko:zu:l
   valaszthatunk a felhasznaloi hozzaferesek modositasakor. A
   legaltalanosabb parancsokat az alabbiakban foglaljuk o:ssze,
   amelyet ezutan a hasznalatukat reszletesebben bemutato peldak
   ko:vetnek.

    Parancs                           Leiras                          
   adduser(8) az uj felhasznalok felvetelere ajanlott parancssoros    
              alkalmazas                                              
   rmuser(8)  a felhasznalok eltavolitasara ajanlott parancssoros     
              alkalmazas                                              
   chpass(1)  rugalmas eszko:z a felhasznaloi adatbazis               
              informacioinak megvaltoztatasara                        
   passwd(1)  egy egyszeru" parancssoros segedprogram a elhasznaloi   
              jelszavak megvaltoztatasahoz                            
   pw(8)      egy ero"teljes es rugalmas segedeszko:z a felhasznaloi  
              hozzaferesek teljesko:ru" modositasahoz                 

     --------------------------------------------------------------

  13.6.1. adduser

   A adduser(8) a felhasznalok hozzaadasara hasznalhato egyszeru"
   program. Bejegyzeseket hoz letre a rendszer passwd es group
   allomanyaiban. Ezen kivu:l meg letrehozza az uj felhasznalo
   ko:nyvtarat is, odamasolja az alapertelmezett konfiguracios
   allomanyokat a /usr/share/skel ko:nyvtarbol (ezek a
   felhasznaloknal ponttal kezdo"do"en jelennek meg, de az emlitett
   ko:nyvtarban "dot" elo"taggal szerepelnek), es opcionalisan ku:ld
   egy u:dvo:zlo"levelet az ujdonsu:lt felhasznalonak.

   Pelda 13-1. Felhasznalo hozzaadasa a FreeBSD-ben

 # adduser
 Username: jantyik
 Full name: Jantyik Zsolt
 Uid (Leave empty for default):
 Login group [jantyik]:
 Login group is jantyik. Invite jantyik into other groups? []: wheel
 Login class [default]:
 Shell (sh csh tcsh zsh nologin) [sh]: zsh
 Home directory [/home/jantyik]:
 Use password-based authentication? [yes]:
 Use an empty password? (yes/no) [no]:
 Use a random password? (yes/no) [no]:
 Enter password:
 Enter password again:
 Lock out the account after creation? [no]:
 Username   : jantyik
 Password   : ****
 Full Name  : Jantyik Zsolt
 Uid        : 1001
 Class      :
 Groups     : jantyik wheel
 Home       : /home/jantyik
 Shell      : /usr/local/bin/zsh
 Locked     : no
 OK? (yes/no): yes
 adduser: INFO: Successfully added (jantyik) to the user database.
 Add another user? (yes/no): no
 Goodbye!
 #

     Megjegyzes: A jelszo a beiras soran egyaltalan nem jelenik meg,
     meg csillagokat sem lathatunk a karakterek helyen. Ezert
     vigyazzunk, nehogy elgepelju:k veletlenu:l a jelszot!

     --------------------------------------------------------------

  13.6.2. rmuser

   Az rmuser(8) hasznalhato a felhasznalok teljes eltavolitasara a
   rendszerbo"l. Az rmuser(8) az alabbi lepeseket hajtja vegre:

    1. Eltavolitja a felhasznalo crontab(1) bejegyzeseit (amennyiben
       leteznek).

    2. Eltavolitja az at(1) felhasznalohoz tartozo munkait.

    3. Leallitja a felhasznalo altal birtokolt o:sszes futo
       programot.

    4. Eltavolitja a felhasznalot a rendszer helyi jelszo
       allomanyabol.

    5. Eltavolitja a felhasznalo ko:nyvtarat (amennyiben az a
       felhasznalo birtokaban van).

    6. Eltavolitja a felhasznalohoz tartozo beerkezo" leveleket
       tartalmazo allomanyt a /var/mail ko:nyvtarbol.

    7. Eltavolitja a felhasznalo tulajdonaban levo" o:sszes allomanyt
       az olyan ideiglenes tarhelyekro"l, mint peldaul a /tmp
       ko:nyvtar.

    8. Vegezetu:l eltavolitja a felhasznalo nevet az o:sszes olyan
       csoportbol, amihez az /etc/group szerint tartozik.

         Megjegyzes: Ha menetko:zben egy csoport u:resse valik, es a
         csoport neve megegyezik a felhasznalo nevevel, a csoportot
         is eltavolitasra keru:l. Ez kiegesziti a adduser(8)
         eszko:zzel letrehozott felhasznalonkenti egyedi csoportokat.

   A rmuser(8) nem hasznalhato adminisztratori hozzaferesek
   to:rlesere, mivel az szinte majdnem mindig a teljes o:sszeomlast
   vonja maga utan.

   Alapertelmezes szerint interaktiv modban mu"ko:dik, melynek soran
   megprobal megbizonyosodni rola, hogy tenyleg a megfelelo" dolgot
   cselekedju:k.

   Pelda 13-2. rmuser Hozzaferesek interaktiv eltavolitasa

 # rmuser jantyik
 Matching password entry:
 jantyik:*:1001:1001::0:0:Jantyik Zsolt:/home/jantyik:/usr/local/bin/zsh
 Is this the entry you wish to remove? y
 Remove user's home directory (/home/jantyik)? y
 Updating password file, updating databases, done.
 Updating group file: trusted (removing group jantyik -- personal group is empty) done.
 Removing user's incoming mail file /var/mail/jantyik: done.
 Removing files belonging to jantyik from /tmp: done.
 Removing files belonging to jantyik from /var/tmp: done.
 Removing files belonging to jantyik from /var/tmp/vi.recover: done.
 #

     --------------------------------------------------------------

  13.6.3. chpass

   A chpass(1) segitsegevel meg tudjuk valtoztatni a felhasznaloi
   adatbazisban talalhato informaciokat, mint peldaul a jelszavakat,
   parancsertelmezo"ket es a szemelyes adatokat.

   Csak a rendszeradminisztratoroknak, mint peldaul maganak az
   adminisztratornak, szabad megvaltoztatnia a felhasznalok adatait a
   chpass(1) programmal.

   Amikor az opcionalisan megadhato felhasznaloi nevto"l eltekintve
   nem adunk at neki parametereket, a chpass(1) egy
   szo:vegszerkeszto"ben megnyitja az erintett felhasznalo adatait.
   Miutan kileptu:nk belo"le, a felhasznaloi adatbazist a
   megvaltoztatott adatokatnak megfelelo"en frissiti.

     Megjegyzes: Ha nem adminisztratorkent hivjuk meg, akkor a
     rendszer kerni fogja a jelszavunkat, miutan kileptu:nk a
     szo:vegszerkeszto"bo"l.

   Pelda 13-3. A chpass interaktiv hasznalata adminisztratorkent

 # A jantyik nevu" felhasznalo adatainak modositasa.
 Login: jantyik
 Password: *
 Uid [#]: 1001
 Gid [# or name]: 1001
 Change [month day year]:
 Expire [month day year]:
 Class:
 Home directory: /home/jantyik
 Shell: /usr/local/bin/zsh
 Full Name: Jantyik Zsolt
 Office Location:
 Office Phone:
 Home Phone:
 Other information:

   Egy atlagos felhasznalo a bemutatott adatoknak csak igen kis
   reszet kepes modositani, es azokat is csak sajat maga szamara.

   Pelda 13-4. A chpass interaktiv hasznalata normal felhasznalokent

 # A jantyik nevu" felhasznalo adatainak megvaltoztatasa.
 Shell: /usr/local/bin/zsh
 Full Name: Jantyik Zsolt
 Office Location:
 Office Phone:
 Home Phone:
 Other information:

     Megjegyzes: A chfn(1) es chsh(1) parancsok csupan linkek a
     chpass(1) parancsra, akarcsak a ypchpass(1), ypchfn(1) es az
     ypchsh(1). A NIS tamogatasa teljesen magatol mu"ko:dik, ezert az
     yp elo"tag hasznalata nem ko:telezo". Ha ez nem ertheto", nem
     kell megijedni, a NIS-t majd a 29 fejezetben bemutatjuk.

     --------------------------------------------------------------

  13.6.4. passwd

   Felhasznalokent a sajat jelszavunkat, adminisztratorkent pedig
   barmelyik felhasznalo jelszavat a passwd(1) segitsegevel
   valoztathatjuk meg a megszokott modon.

     Megjegyzes: A veletlen balesetek es az illetektelen
     valtoztatasok ellen vedelmet nyujt, hogy az eredeti jelszot is
     meg kell adnunk az uj jelszo beallitasahoz.

   Pelda 13-5. A jelszavunk megvaltoztatasa

 % passwd
 Changing local password for jantyik.
 Old password:
 New password:
 Retype new password:
 passwd: updating the database...
 passwd: done

   Pelda 13-6. Egy masik felhasznalo jelszavanak megvaltoztatasa
   adminisztratorkent

 # passwd jantyik
 Changing local password for jantyik.
 New password:
 Retype new password:
 passwd: updating the database...
 passwd: done

     Megjegyzes: Ahogy a chpass(1), az yppasswd(1) is csak egy link a
     passwd(1) parancsra, igy a NIS mind a ket megadasi modban
     mu"ko:dik.

     --------------------------------------------------------------

  13.6.5. pw

   A pw(8) egy olyan parancssori segedprogram, amellyel
   felhasznalokat es csoportokat tudunk letrehozni, to:ro:lni,
   modositani es megjeleniteni. Ez tulajdonkeppen a rendszer
   felhasznalokat es csoportokat tarolo allomanyainak egyfajta
   kezelo"felu:lete. A pw(8) kivaloan parameterezheto", aminek
   ko:szo:nheto"en remeku:l kiaknazhato tudasa a ku:lo:nfele
   parancsertelmezo"k szkriptjeiben, habar a kezdo" felhasznalok
   nehezkesebbnek erezhetik a kezeleset a korabban mutatott
   parancsokhoz kepest.

     --------------------------------------------------------------

13.7. A felhasznalok korlatozasa

   Ha mar vannak felhasznaloink, gyakran szoba keru:lhet esetu:kben a
   rendszer hasznalatanak korlatozasa. A FreeBSD rengeteg modon
   engedi korlatozni a rendszergazdanak az egyenenkent hasznalhato
   ero"forrasok mennyiseget a rendszerben. Ezeket a korlatok ket
   reszre oszthatoak: a lemezkvotakra es egyeb ero"forraskorlatokra.

   A lemezkvotak a felhasznalok lemezhasznalatat korlatozzak, es
   leheto"ve teszik, hogy allando ujraszamolas nelku:l, gyorsan
   elleno"rizni tudjuk ennek merteket. A kvotakat a 18.15 Szakaszban
   reszletezzu:k.

   A to:bbi ero"forras korlatozasa magaban foglalja a processzorido",
   memoria es minden olyan ero"forras behatarolasat, amihez a
   felhasznalo csak hozza tud ferni. Ezeket bejelentkezesi
   osztalyokon keresztu:l hatarozzuk meg, ezekro"l esik itt most szo.

   A bejelentkezesi osztalyokat a /etc/login.conf allomanyban
   adhatjuk meg. Ennek pontos ismertetese nem targya ennek a
   szakasznak, de ezt megtalalhatjuk a login.conf(5) man oldalon.
   Elegendo" csak annyit mondanunk, hogy minden felhasznalohoz
   tartozik egy bejelentkezesi osztaly (alapertelmezes szerint a
   default nevu"), es minden egyes bejelentkezesi osztalyhoz
   tulajdonsagok egy halmaza tarsul. Ezek a bejelentkezesi
   tulajdonsagok nev=ertek parosokbol allnak, ahol nev egy jol ismert
   azonosito, illetve az ertek egy tetszo"leges sztring, melyet a
   neveto"l fu:ggo" modon dolgozunk fel. A bejelentkezesi osztalyok
   es tulajdonsagok beallitasa elegge magatol erteto"do", es
   login.conf(5) man oldal is jol leirja.

     Megjegyzes: A rendszer altalaban nem magat az /etc/login.conf
     allomanyban talalhato beallitasokat olvassa be, hanem az
     /etc/login.conf.db allomanyt, amiben gyorsabban lehet keresni.
     Az /etc/login.conf allomanybol az /etc/login.conf.db allomanyt
     az alabbi paranccsal tudjuk legyartani:

 # cap_mkdb /etc/login.conf

   Az ero"forrasok korlatozasa ket iranyban is elter a sima
   hetko:znapi bejelentkezesi tulajdonsagoktol. Elo"szo:r is minden
   korlathoz letezik egy gyenge (aktualis) es egy ero"s korlat. A
   gyenge korlatok a felhasznalok vagy az alkalmazasok reszero"l meg
   finomithatoak, de az ero"s korlaton tul mar nem. Ez utobbit mindig
   tudja cso:kkenteni a felhasznalo, de sose tudja no:velni.
   Masodsorban a legto:bb ero"forraskorlat az adott felhasznalo altal
   futtatott programokra egyenkent vonatkozik, nem pedig az o:sszesre
   egyu:ttesen. Megjegyezzu:k, hogy azonban ezeket az eltereseket a
   korlatok ku:lo:nleges kezelese indokolja, nem pedig a
   bejelentkezesi tulajdonsagok rendszerenek megvalositasa (tehat a
   korlatok valojaban nem ezen tulajdonsagok specialis esetei.)

   Igy aztan, minden tovabbi magyarazkodas nelku:l, felsoroljunk
   alant a leggyakrabban alkalmazott ero"forraskorlatokat (a to:bbi,
   mas egyeb bejelentkezesi tulajdonsagokkal egyu:tt, megtalalhato a
   login.conf(5) man oldalon).

   coredumpsize

           A program altal letrehozott memoriakivonat maximalis
           meretet hatarolja be ez a korlat, ertelemszeru"en a to:bbi
           lemezteru:letre vonatkozo korlatnak (peldaul a filesize
           vagy a lemezkvotak) alarendelt modon. Mindazonaltal ezt
           gyakran hasznaljuk egyfajta enyhebb lemezfoglalasi
           korlatkent. Mivel nem maguk a felhasznalok hozzak letre
           ezeket az allomanyokat es sokszor nem is to:rlik le
           ezeket, ez a beallitas azonban megmentheti ezeket a
           nagyobb programok (mint peldaul az emacs) o:sszeomlasa
           soran keletkezo" memoriakivonatok felesleges
           helyfoglalasatol.

   cputime

           Az a maximalis processzorido", amit a felhasznalo altal
           futtatott programok egyenkent fogyaszthatnak. A vetkezo"
           programok futasat a rendszermag leallitja.

             Megjegyzes: Ez a korlat a processzorido"re vonatkozik,
             nem pedig a processzor kihasznaltsaganak szazalekara,
             ahogy a top(1) es a ps(1) szokta megjeleniteni. Ez
             utobbi alapjan korlatozni ugyanis, meg ezen leiras
             keszitesenek pillanataiban nem lehetseges, es
             megleheto"sen hasztalan is lenne: egy forditoprogram --
             ami minden bizonnyal egy szabalyosan futo program --
             ko:nnyen fel tudja emeszteni majdnem az egesz
             processzort egy ido"re.

   filesize

           A felhasznalo altal birtokolhato allomanyok maximalis
           merete. Eltero"en a lemezkvotaktol, ez a korlat az egyes
           allomanyokra vonatkozik, nem pedig a felhasznalo o:sszes
           allomanyara egyu:ttesen.

   maxproc

           A felhasznalo altal egyido"ben, az elo"terben es a
           hatterben futtathato programok maximalis szama. Ertheto"
           okokbol ez az ertek nem lehet nagyobb, mint a rendszerben
           a sysctl(8) altal definialt kern.maxproc (a rendszermag
           altal maximalisan futtathato programok szamanak) erteke.
           Erdemes meg tovabba megjegyezni, hogy ez a beallitas
           gatolhatja a felhasznalo munkajat: gyakran hasznos lehet
           egyszerre to:bb peldanyban is bejelentkezni a rendszerbe
           vagy cso:vekkel o:sszekapcsolt programokat futtatni.
           Bizonyos feladatok, mint peldaul egy nagyobb program
           leforditasa, to:bb program futasara is szetterjedhetnek
           (peldaul a make(1), cc(1) es egyeb ko:ztes feldolgozokra).

   memorylocked

           Ezzel korlatozhatjuk az egyes futo programok altal
           zarolhato memoriateru:let meretet a ko:zponti memoriaban
           (lasd mlock(2)). Egyes rendszerkritikus programok, mint
           peldaul az amd(8), zaroljak magukat a ko:zponti
           memoriaban, es ezert soha nem lapozodnak ki onnan. Ennek
           ko:szo:nheto"en nem erinti ezeket a rendszer lapozasbol
           eredo" esetleges lelassulasa.

   memoryuse

           Ez az a maximalis memoriamennyiseg, amelyet egy futo
           program egyszerre hasznalhat. Ebbe egyu:ttesen
           beleertendo" a ko:zponti memoriaban es a lapozoallomanyban
           elfoglalt hely. Ez ugyan nem minden szempontbol korlatozza
           egy program memoriahasznalatat, de indulasnak megfelelo".

   openfiles

           A felhasznalo egyes futtatott programjai altal egy ido"ben
           megnyithato allomanyok maximalis szama. FreeBSD-ben az
           allomanyok ko:ze a foglalatok es az IPC-csatornak is
           beszamitanak. Ezert vigyazzunk, nehogy veletlenu:l
           tulsagosan alacsonyra allitsuk ezt az erteket. Ezt
           rendszerszinten a kern.maxfiles sysctl(8) ertek hatarozza
           meg.

   sbsize

           A korlatozas a felhasznalo altal egyszerre maximalisan
           elerheto" halozati memoria es igy a rendszermag puffereire
           vonatkozik. Eredetileg a regebbi, sok csatlakozast
           felemeszto" DoS (Denial of Service) tamadasok ellen
           nyujtana vedelmet, de altalanossagban alkalmazhato a
           halozati kommunikacio korlatozasara is.

   stacksize

           Ez a felhasznalo altal mu"ko:dtetett egyes programok
           vermeinek maximalis merete. O:nmagaban nem elegendo" a
           programok altal hasznalt memoriamennyiseg lekorlatozasara,
           igy emiatt inkabb a to:bbi korlattal egyu:tt erdemes
           alkalmazni.

   Van nehany tenyezo", amire erdemes odafigyelni az ero"forrasok
   korlatainak beallitasa soran. Most ko:vetkezik par tipp, javaslat
   es egyeb megjegyzes a temahoz.

     * A rendszerinditas soran az /etc/rc altal inditott programok a
       daemon bejelentkezesi osztalyba tartoznak.

     * Habar a rendszerrel erkezo" /etc/login.conf allomanyban
       remeku:l be van allitva a legto:bb korlat, de neku:nk, mint
       rendszergazdaknak, kell ismernu:nk a sajat rendszeru:nk
       korlatait. Ezen korlatok tulzott tagitasaval a rendszeru:nk
       ko:nnyen leterhelheto"ve valik, mig a tulzott szu"kitesevel
       akadalyozhatjuk a hatekony hasznalatat.

     * A X Window System (X11) felhasznaloinak a to:bbi
       felhasznalonal valoszinu"leg joval to:bb ero"forrashoz kell
       tudniuk hozzaferni. Az X11 mar o:nmagaban sok ero"forrast
       eszik, de egyben batoritja is a felhasznalokat to:bb program
       parhuzamos futtatasara.

     * Ne felejtsu:k el, hogy sok korlat az egyes ku:lo:nalloan futo
       programokra vonatkozik, nem pedig a felhasznalo o:sszes
       futtatott programjara. Peldaul ha beallitjuk 50-re az
       openfiles erteket, a felhasznalo altal elinditott programok
       mindegyike legfeljebb 50 allomanyt tud majd megnyitni. Emiatt
       a felhasznalo altal egyszerre tenylegesen megnyithato
       allomanyok szama az openfiles es a maxproc aktualis ertekeinek
       szorzatabol adodik. Ugyanez igaz a memoriahasznalatra is.

   Az ero"forrasok korlatozasarol, a bejelentkezesi osztalyokrol es
   tulajdonsagaikrol a hozzajuk tartozo man oldalakon olvashatunk:
   cap_mkdb(1), getrlimit(2) es login.conf(5).

     --------------------------------------------------------------

13.8. Csoportok

   Egy csoport nem to:bb felhasznalok o:sszesegenel. A csoportokat a
   nevu:k es az azonositojuk (Group ID, GID) azonositja be. A
   FreeBSD-ben (es a legto:bb UNIX-szeru" rendszerben) a rendszermag
   ket tenyezo" alapjan do:nt arrol, mit szabad tennie egy futo
   programnak: ezek ko:zu:l az egyik a tulajdonosanak azonositoja
   (UID), a masik azon csoportok listaja, melyeknek tagja a
   tulajdonos. Eltero"en a UID-to"l, egy futo programhoz csoportok
   listaja tartozik. Amikor egy felhasznalo vagy egy futo program
   "csoportazonositojara" hivatkoznak, altalaban csak a lista elso"
   elemere gondolnak.

   A csoportok nevei es azonositoi ko:zti megfelelteteseket az
   /etc/group allomanyban talaljuk. Ez lenyegeben egy szimpla
   szo:veges allomany, negy ketto"sponttal elvalasztott mezo"t
   tartalmaz. Ezek ko:zu:l az elso" a csoport neve, a masodik a
   titkositott jelszo, a harmadik a csoport azonositoja, a negyedik
   pedig a tagok vesszo"vel tagolt felsorolasa. Akar kezzel is
   nyugodtan szerkesztheto" (feltetelezve persze, hogy nem vetu:nk
   benne szintaktikai hibat!). A szintaxis teljes leirasat a group(5)
   man oldalon talalhatjuk meg.

   Ha nem akarjuk magunk szerkeszteni az /etc/group allomanyt,
   hasznalhatjuk a pw(8) parancsot is csoportok letrehozasara es
   to:rlesere. Peldaul hozzuk letre a pg_csoport nevu" csoportot es
   vizsgaljuk meg, valoban letrejo:tt-e:

   Pelda 13-7. A csoportok tagjainak beallitasa a pw(8) hasznalataval

 # pw groupadd pg_csoport
 # pw groupshow pg_csoport
 pg_csoport:*:1100:

   A fent szereplo" 1100-as ertek a pg_csoport csoportazonositoja.
   Ebben a pillanatban a pg_csoportnak meg egyetlen tagja sincs, ami
   miatt lenyegeben haszontalan. Igy hat hivjuk meg pg_csoportba a
   korabban letrehozott jantyik nevu" felhasznalot.

   Pelda 13-8. A csoport tagjainak beallitasa a pw(8) hasznalataval

 # pw groupmod pg_csoport -M jantyik
 # pw groupshow pg_csoport
 pg_csoport:*:1100:jantyik

   Az -M kapcsolo parametere a csoportba sorolando felhasznalok
   neveinek vesszo"kkel tagolt listaja. A korabbi szakaszok alapjan
   mar tudjuk, hogy a jelszavakat tarolo allomany egyben azokat a
   csoportokat is tartalmazza, ahova az egyes felhasznalok tartoznak.
   Az utobbiakat (a felhasznalokat) automatikusan beleteszi a
   rendszer a csoportlistaba, de az erintett felhasznalo nem fog
   megjelenni tagkent a pw(8) parancs groupshow utasitasaval, azonban
   az id(1) es a hozza hasonlo eszko:zo:kkel mar lathato lesz. Mas
   szavakkal elve, a pw(8) csak az /etc/group allomanyt modositja, es
   soha nem probal meg tovabbi adatokat kiolvasni a /etc/passwd
   allomanybol.

   Pelda 13-9. Egy uj tag felvetele a csoportba a pw(8) hasznalataval

 # pw groupmod pg_csoport -m kisati
 # pw groupshow pg_csoport
 pg_csoport:*:1100:jantyik,kisati

   Az -m kapcsolo parametere azon felhasznalok vesszo"vel tagolt
   listaja, akiket fel akarunk venni a csoportba. Tehat eltero"en az
   elo"zo" peldatol, ezeket a felhasznalokat felvesszu:k a csoportba,
   nem pedig atirjuk velu:k a csoport jelenlegi tagjainak listajat.

   Pelda 13-10. A id(1) hasznalata a csoporttagsag megallapitasara

 % id jantyik
 uid=1001(jantyik) gid=1001(jantyik) groups=1001(jantyik), 1100(pg_csoport)

   Ahogy lathatjuk is, a jantyik nevu" felhasznalo tagja a jantyik
   nevu" csoportnak es a pg_csoportnak is.

   A pw(8) mu"ko:desero"l a sajat man oldalan, az /etc/group
   formatumarol pedig a group(5) man oldalon talalhatunk to:bb
   informaciot.

     --------------------------------------------------------------

                         Fejezet 14. Biztonsag

   A fejezet legnagyobb reszet a security(7) man oldal alapjan irta:
   Matthew Dillon.

     --------------------------------------------------------------

14.1. Attekintes

   Ez a fejezet egy alapveto" bevezetes a rendszerek biztonsagi
   fogalmaiba, ad nehany altalanos jotanacsot es a FreeBSD-vel
   kapcsolatban feldolgoz nehany komolyabb temat. Az itt
   megfogalmazott temak nagy resze egyarant rahuzhato rendszeru:nk es
   altalanossagban veve az internet biztonsagara is. A internet mar
   nem az "bekes" hely, ahol mindenki a kedves szomszed szerepet
   jatssza. A rendszeru:nk bebiztositasa elkeru:lhetetlen az
   adataink, szellemi tulajdonunk, ido"nk es meg sok minden mas
   megvedesere az internetes banditak es hasonlok ellen.

   A FreeBSD segedprogramok es mechanizmusok sorat kinalja fel a
   rendszeru:nk es halozatunk sertetlensegenek es biztonsaganak
   fenntartasara.

   A fejezet elolvasasa soran megismerju:k:

     * az alapveto" rendszerbiztonsagi fogalmakat, ku:lo:no:s
       tekintettel a FreeBSD-re;

     * milyen olyan ku:lo:nbo:zo" titkositasi mechanizmusok
       ertheto"ek el a FreeBSD-ben, mint peldaul a DES es az MD5;

     * hogyan allitsunk be egyszeri jelszavas azonositast;

     * hogyan burkoljunk az inetd segitsegevel TCP kapcsolatokat;

     * hogyan allitsuk be a KerberosIV-t a FreeBSD 5.0-nal korabbi
       valtozatain;

     * hogyan allitsuk be a Kerberos5-t a FreeBSD-n;

     * hogyan allitsuk be az IPsec-et es hozzunk letre VPN-t
       FreeBSD/Windows gepek ko:zo:tt;

     * hogyan allitsuk be es hasznaljuk az OpenSSH-t, a FreeBSD SSH
       implementaciojat;

     * mik azok az ACL-ek az allomanyrendszerben es mikent kell
       ezeket hasznalni;

     * hogyan kell hasznalni a Portaudit segedprogramot a
       Portgyu"jtemenybo"l telepitett ku:lso" szoftvercsomagok
       biztonsagossaganak elleno"rzesere;

     * hogyan hasznositsuk a FreeBSD biztonsagi tanacsait tartalmazo
       leirasokat

     * mit jelent a futo programok nyilvantartasa es hogyan
       engedelyezzu:k azt FreeBSD-n.

   A fejezet elolvasasahoz ajanlott:

     * az alapveto" FreeBSD es internetes fogalmak ismerete.

   A ko:nyvben tovabbi biztonsagi temakrol is szo esik, peldaul a 16
   fejezetben a Ko:telezo" hozzaferes-vezerlesro"l (MAC) es a 30
   fejezetben pedig az internetes tu"zfalakrol.

     --------------------------------------------------------------

14.2. Bevezetes

   A biztonsag egy olyan funkcio, ami a rendszergazdatol indul es
   nala is vegzo"dik. Mig az o:sszes to:bbfelhasznalos BSD UNIX
   rendszer o:nmagaban is valamennyire biztonsagos, a felhasznalok
   "fegyelmezesehez" szu:kseg tovabbi biztonsagi mechanizmusok
   kiepitesere es karbantartasara, ami minden bizonnyal egy
   rendszergazda egyik legfontosabb ko:telessege. A szamitogepek csak
   annyira biztonsagosak, mint amennyire beallitjuk, es a biztonsagi
   megfontolasok allando versenyben vannak az emberi kenyelemmel. A
   UNIX rendszerek altalanossagban veve orasi mennyisegu" program
   parhuzamos futtatasara kepesek, melyek to:bbsege kiszolgalokent
   fut -- ez azt jelenti, hogy hozzajuk kivu:lro"l erkezo" egyedek
   csatlakozhatnak es tarsaloghatnak velu:k. Ahogy a tegnap kicsi es
   nagy szamitogepei napjaink asztali gepeive valtak es ahogy a
   szamitogepek egyre to:bben csatlakoznak halozatra es az
   internetre, a biztonsag fontossaga is egyre jobban no:vekszik.

   A rendszerek biztonsaga a tamadasok ku:lo:nbo:zo" formaival is
   foglalkozik, to:bbek ko:zt olyan tamadasokkal, amelyek a rendszer
   o:sszeomlasat vagy hasznalhatatlansagat celozzak meg, de nem
   probaljak meg veszelybe sodorni a root felhasznalo hozzafereset
   ("felto:rni a gepet"). A biztonsaggal kapcsolatos problemak to:bb
   kategoriara oszthatoak:

    1. A szolgaltatasok mu"ko:deskeptelenne tetelere iranyulo (DoS,
       Denial of Service) tamadasok.

    2. A felhasznaloi fiokok veszelyeztetese.

    3. Rendszergazdai jogok megszerzese a ko:zeli szervereken
       keresztu:l.

    4. Rendszergazdai jogok megszerzese a felhasznaloi fiokokon
       keresztu:l.

    5. Kiskapuk letrehozasa a rendszerben.

   A szolgaltatasok mu"ko:deskeptelenne tetelere iranyulo tamadasok
   olyan tevekenysegre utalnak, amelyek kepesek megfosztani egy
   szamitogepet az ero"forrasaitol. A DoS tamadasok to:bbnyire nyers
   ero"vel kivitelezett technikak, melyek vagy a rendszer
   o:sszeomlasztasat vagy pedig a hasznalhatatlanna tetelet veszik
   celba ugy, hogy tulterhelik az altala felkinalt szolgaltatasokat
   vagy a halozati alrendszert. Egyes DoS tamadasok a halozati
   alrendszerben rejto"zo" hibakat igyekeznek kihasznalni, amivel
   akar egyetlen csomaggal is kepesek romba do:nteni egy
   szamitogepet. Ez utobbit csak ugy lehet orvosolni, ha a hibat
   kijavitjuk a rendszermagban. A szerverekre mert csapasokat gyakran
   ki lehet vedeni a parametereik u:gyes beallitasaval, melyek
   segitsegevel korlatozni tudjuk az ezeket ert terhelest egy
   kellemetlenebb helyezetben. A nyers ero"t alkalmazo halozati
   tamadasokkal a legnehezebb szembenezni. Peldaul az alcazott
   tamadadasok, melyeket szinte lehetetlen megallitani, remek
   eszko:zo:k arra, hogy elvagjak gepu:nket az internetto"l. Ezzel
   viszont nem csak azt iktatjak ki, hanem az
   internet-csatlakozasunkat is eldugitjak.

   A DoS tamadasoknal meg gyakrabban elo"fordul, hogy felto:rik a
   felhasznalok fiokjait. A rendszergazdak to:bbsege meg mindig
   futtat telnetd, rlogin, rshd es ftpd szervereket a gepen. Ezek a
   szerverek alapertelmezes szerint nem titkositott kapcsolaton
   keresztu:l mu"ko:dnek. Ebbo"l ko:vetkezik, hogy ha nincs annyira
   sok felhasznalonk es ko:zu:lu:k nehanyan tavoli helyekro"l
   jelentkeznek be (ami az egyik leggyakoribb es legkenyelmesebb
   modja ennek), akkor elo"fordulhat, hogy valami megneszeli a
   jelszavaikat. A ko:ru:ltekinto" rendszergazdak mindig elleno"rzik
   a bejelentkezeseket tartalmazo naplokat es igyekeznek kiszu"rni a
   gyanus cimeket meg abban az esetben is, amikor a bejelentkezes
   sikeres volt.

   Mindig arra kell gondolni, hogy ha a tamadonak sikeru:lt
   megszerezni az egyik felhasznalo hozzafereset, akkor akar kepes
   lehet a root felhasznalo fiokjanak felto:resere is. Azonban a
   valosagban egy jol o"rzo:tt es karbantarott rendszer eseten a
   felhasznaloi hozzaferesek megszerzese nem feltetlenu:l adja a
   tamado kezere a root hozzafereset. Ebben fontos ku:lo:nbseget
   tenni, hiszen a root felhasznalo jogai nelku:l a tamado nem kepes
   elrejteni a nyomait es legjobb esetben sem tud to:bbet tenni, mint
   to:nkretenni az adott felhasznalo allomanyait vagy
   o:sszeomlasztani a rendszert. A felhasznaloi fiokok felto:rese
   nagyon gyakran megto:rtenik, mivel a felhasznalok messze nem
   annyira elo"vigyazatosak, mint egy rendszergazda.

   A rendszergazdaknak mindig eszben kell tartani, hogy egy
   szamitogepen to:bb modon is meg lehet szerezni a root felhasznalo
   hozzafereset. A tamado megtudhatja a root jelszavat, hibat
   fedezhet fel az egyik rendszergazdai jogosultsaggal futo
   szerverben es kepes felto:rni a root hozzaferest egy halozati
   kapcsolaton keresztu:l, vagy a tamado olyan programban talal
   hibat, aminek segitsegevel el tudja erni a root fiokjat egy
   felhasznaloi hozzaferesen keresztu:l. Miutan a tamado megtalalta a
   rendszergazdai jogok megszerzesenek modjat, nem feltetlenu:l kell
   kiskapukat elhelyeznie a rendszerben. Az eddig talalt es javitott,
   rendszergazdai jogok megszerzeset leheto"ve tevo" biztonsagi resek
   egy resze eseteben viszont a tamadonak akkora mennyisegu" munkat
   jelentene eltu"ntetni maga utan a nyomokat, hogy megeri neki egy
   kiskaput telepiteni. Ennek segitsegevel a tamado ismet ko:nnyeden
   hozzajuthat a root felhasznalo hozzaferesehez a rendszerben, de
   ezen keresztu:l egy okos rendszergazda kepes is a behatolot
   leleplezni. A kiskapuk lerakasanak megakadalyozasa valojaban karos
   a biztonsag szempontjabol nezve, mert ezzel nem szu:ntetju:k meg
   azokat a lyukakat, amin keresztu:l a tamado elo"szo:r bejutott.

   A tamadasok elleni vedelmet mindig to:bb vonalban kell
   megvalositani, melyeket igy oszthatunk fel:

    1. A rendszergazda es a szemelyzet hozzaferesenek vedelme.

    2. A rendszergazdai jogokkal futo szerverek es a suid/sgid
       engedelyekkel rendelkezo" programok vedelme.

    3. A felhasznaloi hozzaferesek vedelme.

    4. A jelszavakat tarolo allomany vedelme.

    5. A rendszermag belsejenek, a nyers eszko:zo:k es az
       allomanyrendszerek vedelme.

    6. A rendszert ert szabalytalan modositasok gyors eszlelese.

    7. Allando paranoia.

   A fejezet most ko:vetkezo" szakaszaban az iment felsorolt elemeket
   fejtju:k ki reszletesebben.

     --------------------------------------------------------------

14.3. A FreeBSD vedelme

     Parancs kontra protokoll: A dokumentumban a felko:veren fogjuk
     szedni az alkalmazasokat, es egyenszelessegu" betu"kkel pedig az
     adott parancsokra hivatkozunk. A protokollokat nem
     ku:lo:nbo:ztetju:k meg. Ez a tipografiai elku:lo:nites hasznos
     peldaul az ssh egyes vonatkozasainak eseten, mivel ez egyben egy
     protokoll es egy parancs is.

   A most ko:vetkezo" szakaszok a FreeBSD vedelmenek azon modszereit
   ismertetik, amelyekro"l a fejezet elo"zo" szakaszaban mar irtunk.

     --------------------------------------------------------------

  14.3.1. A rendszergazda es a szemelyzet hozzaferesenek vedelme

   Elo"szo:r is: ne to:rju:k magunkat a szemelyzeti fiokok
   biztonsagossa tetelevel, ha meg a rendszergazda hozzafereset sem
   tettu:k elegge biztonsagossa. A legto:bb rendszerben a root
   hozzafereshez tartozik egy jelszo. Elso"kent fel kell tennu:nk,
   hogy ez a jelszo mindig megszerezheto". Ez termeszetesen nem arra
   utal, hogy el kellene tavolitanunk. A jelszo szinte mindig
   szu:kseges a szamitogep konzolon keresztu:li eleresehez. Valojaban
   arra szeretnenk ravilagitani, hogy a konzolon kivu:l sehol mashol
   ne lehessen hasznalni ezt a jelszot, meg a su(1) paranccsal sem.
   Peldaul gondoskodjunk rola, hogy az /etc/ttys allomanyban megadott
   pszeudo terminalokat "insecure" (nem biztonsagos) tipusunak
   allitottuk be, es igy a telnet vagy az rlogin parancsokon
   keresztu:l nem lehet rendszergazdakent bejelentkezni. Ha mas
   szolgaltatason keresztu:l jelentkezu:nk be, peldaul az sshd
   segitsegevel, akkor ebben az esetben is gondoskodjunk rola, hogy
   letiltottuk a ko:zvetlen rendszergazdai bejelentkezes
   leheto"seget. Ezt ugy tudjuk megtenni, ha megnyitjuk az
   /etc/ssh/sshd_config allomanyt es a PermitRootLogin parametert
   atallitjuk a NO ertekre. Vegyu:nk szamba minden lehetseges
   hozzaferesi modot -- az FTP es a hozza hasonlo modok gyakran
   atszivarognak a repedeseken. A rendszergazdanak csak a
   rendszerkonzolon keresztu:l szabad tudnia bejelentkeznie.

   Termeszetesen egy rendszergazdanak valahogy el kell ernie a root
   hozzaferest, ezert ezzel felnyitunk nehany biztonsagi rest. De
   gondoskodjunk rola, hogy ezek a resek tovabbi jelszavakat
   igenyelnek a mu"ko:desu:kho:z. A root hozzaferes eleresehez
   erdemes felvenni tetszo"leges szemelyzeti (staff) hozzafereseket a
   wheel csoportba (az /etc/group allomanyban). Ha a szemelyzet
   tagjait a wheel csoportba rakjuk, akkor innen a su paranccsal fel
   tudjuk venni a root felhasznalo jogait. A szemelyzet tagjait
   letrehozasukkor ko:zvetlenu:l sose vegyu:k fel a wheel csoportba!
   A szemelyzet tagjai elo"szo:r keru:ljenek egy staff csoportba, es
   majd csak ezutan az /etc/group allomanyon keresztu:l a wheel
   csoportba. A szemelyzetnek csak azon tagjait tegyu:k tenylegesen a
   wheel csoportba, akiknek valoban szu:ksegu:k van a root
   felhasznalo hozzaferesere. Ha peldaul a Kerberost hasznaljuk
   hitelesitesre, akkor megcsinalhatjuk azt is, hogy a Kerberos
   .k5login allomanyaban engedelyezzu:k a ksu(1) parancson keresztu:l
   a root hozzaferes elereset a wheel csoport alkalmazasa nelku:l. Ez
   a megoldas talan meg jobb is, mivel a wheel hasznalata eseten a
   behatolonak meg mindig leheto"sege van hozzajutni a root
   hozzaferesehez olyankor, amikor a kezeben van a jelszavakat tarolo
   allomany es meg tudja szerezni a szemelyzet valamelyik tagjanak
   hozzafereset. A wheel csoport altal felkinalt megoldas ugyan jobb,
   mint a semmi, de ketsegtelenu:l nem a legbiztonsagosabb.

   A hozzaferesek teljes ko:ru" letiltasahoz a pw(8) parancsot
   erdemes hasznalni:

 # pw lock szemelyzet

   Ezzel meg tudjuk akadalyozni, hogy a felhasznalo akarmilyen modon,
   beleertve az ssh(1) hasznalatat is, hozza tudjon ferni a
   rendszeru:nkho:z.

   A hozzaferesek blokkolasanak masik ilyen modszere a titkositott
   jelszo atirasa egyetlen "*" karakterre. Mivel ez a karakter
   egyetlen titkositott jelszora sem illeszkedik, ezert a felhasznalo
   nem lesz kepes bejelentkezni. Ahogy peldaul a szemelyzet alabbi
   tagja sem:

 izemize:R9DT/Fa1/LV9U:1000:1000::0:0:Ize-Mize:/home/izemize:/usr/local/bin/tcsh

   Erre cserelju:k ki:

 izemize:*:1000:1000::0:0:Ize-Mize:/home/izemize:/usr/local/bin/tcsh

   Ezzel megakadalyozzuk, hogy az izemize nevu" felhasznalo a
   hagyomanyos modszerekkel be tudjon jelentkezni. Ez a megoldas
   azonban a Kerberost alkalmazo rendszerek eseten nem mu"ko:dik,
   illetve olyan helyezetekben sem, amikor a felhasznalo az ssh(1)
   paranccsal mar letrehozott maganak kulcsokat.

   Az ilyen vedelmi mechanizmusok eseteben mindig egy szigorubb
   biztonsagi szintu" gepro"l jelentkezu:nk be egy kevesbe
   biztonsagosabb gepre. Peldaul, ha a szerveru:nk mindenfele
   szolgaltatasokat futtat, akkor a munkaallomasunknak egyetlen egyet
   sem lenne szabad. A munkaallomasunk biztonsagossa tetelehez a
   leheto" legkevesebb szolgaltatast szabad csak futtatnunk, de ha
   lehet, egyet sem, es mindig jelszoval vedett kepernyo"vedo"t
   hasznaljuk. Termeszetesen ha a tamado kepes fizikailag hozzaferni
   a munkaallomasunkhoz, akkor szinte barmilyen melysegu" vedelmet
   kepes atto:rni. Ezt mindenkeppen szamitasba kell vennu:nk, azonban
   ne felejtsu:k el, hogy a legto:bb beto:resi kiserlet tavolrol,
   halozaton keresztu:lro"l erkezik olyan emberekto"l, akik
   fizikailag nem fernek hozza a munkaallomasunkhoz vagy a
   szervereinkhez.

   A Kerberos es a hozza hasonlo rendszerek hasznalataval egyszerre
   tudjuk a szemelyzet tagjainak jelszavat letiltani vagy
   megvaltoztatni, ami egybo"l ervenyesse valik minden olyan gepen,
   ahova az adott felhasznalonak barmilyen hozzaferese is volt. Nem
   szabad lebecsu:lnu:nk ezt a gyors jelszovaltasi leheto"seget abban
   az esetben, ha a szemelyzet valamelyik tagjanak hozzafereset
   megszereztek. Hagyomanyos jelszavak hasznalataval a jelszavak
   megvaltoztatasa N gepen igazi kaosz. A Kerberosban jelszovaltasi
   megszoritasokat is felallithatunk: nem csak a Kerberos altal adott
   jegyek jarnak le ido"vel, hanem a Kerberos rendszer meg is
   ko:vetelheti a felhasznaloktol, hogy egy adott ido" (peldaul egy
   honap) utan valtoztasson jelszot.

     --------------------------------------------------------------

  14.3.2. A rendszergazdai jogokkal futo szerverek es SUID/SGID
  engedelyekkel rendelkezo" programok vedelme

   A bo:lcs rendszergazda mindig csak akkor futtat szervereket,
   amikor szu:ksege van ra, se to:bbet, se kevesebbet. Az egyeb
   fejleszto"kto"l szarmazo szerverekkel banjunk ku:lo:no:sen
   ovatosan, mivel gyakran hajlamosak hibakat tartalmazni. Peldaul az
   imapd vagy a popper hasznalata olyan, mintha az egesz vilagnak
   ingyenjegyet osztogatnank a rendszeru:nk root hozzaferesehez. Soha
   ne futtassunk olyan szervert, amelyet nem vizsgaltunk at kello"
   alapossaggal. Sok szervert nem is feltetlenu:l kell root
   felhasznalokent futtatni. Peldaul az ntalk, comsat es finger
   demonok egy specialis jarokaban (sandbox) futnak. Ezek a jarokak
   sem teljesen to:keletesek, hacsak erre ku:lo:n figyelmet nem
   forditunk. Ilyenkor a to:bbvonalas vedelem eszmenye meg mindig el:
   ha valakinek sikeru:lt beto:rnie a jarokaba, akkor onnan ki is tud
   to:rni. Minel to:bb vedelmi vonalat huzunk a tamado ele, annal
   jobban cso:kken a sikerenek valoszinu"sege. A to:rtenelem soran
   lenyegeben minden root jogokkal futo szerverben, beleertve az
   alapveto" rendszerszintu" szervereket is, talaltak mar biztonsagi
   jellegu" hibat. Ha a gepu:nkre csak az sshd szolgaltatason
   keresztu:l tudnak belepni, es soha nem hasznalja senki a telnetd,
   rshd vagy rlogind szolgaltatasokat, akkor kapcsoljuk is ki ezeket!

   A FreeBSD most mar alapertelmezes szerint jarokaban futtatja az
   ntalkd, comsat es finger szolgaltatasokat. Masik ilyen program,
   amely szinten eselyes lehet erre, az a named(8). Az
   /etc/defaults/rc.conf megjegyzesben tartalmazza a named jarokaban
   futtatasahoz szu:kseges parametereket. Attol fu:ggo"en, hogy egy
   uj rendszert telepitu:nk vagy frissitju:k a mar meglevo"
   rendszeru:nket, a jarokakhoz tartozo specialis felhasznaloi
   hozzaferesek nem feltetlenu:l jo:nnek letre. Amikor csak
   lehetseges, az elo"relato rendszergazda kikiserletez es letrehoz
   ilyen jarokakat.

   Vannak mas olyan szerverek, amelyek tipikusan nem jarokakban
   futnak. Ilyen to:bbek ko:zt a sendmail, popper, imapd, ftpd es meg
   sokan masok. Leteznek rajuk alternativak, de a telepitesu:k
   valoszinu"leg to:bb munkat igenyel, mint amennyit megerne
   szamunkra veszo"dni velu:k (es itt megint lesujt a kenyelmi
   tenyezo"). Ezeket a szervereket to:bbnyire root felhasznalokent
   kell futtatnunk es a rajtuk keresztu:l erkezo" beto:resi
   kiserleteket mas modokra tamaszkodva kell eszlelnu:nk.

   A root felhasznalo keltette biztonsagi resek masik nagy csoportja
   azok a vegrehajthato allomanyok a rendszerben, amelyek a suid es
   sgid engedelyekkel rendelkeznek, futtatasuk rendszergazdai
   jogokkal to:rtenik. Az ilyen binarisok to:bbsege, mint peldaul az
   rlogin, a /bin es /sbin, /usr/bin vagy /usr/sbin ko:nyvtarakban
   talalhato meg. Habar semmi sem biztonsagos 100%-ig, a rendszerben
   alapertelmezetten suid es sgid engedellyel rendelkezo" binarisok
   ebbo"l a szempontbol megleheto"sen megbizhatonak tekinheto"ek.
   Alkalmankent azonban talalnak a root felhasznalot veszelyezteto"
   lyukakat az ilyen binarisokban is. Peldaul 1998-ban az Xlib-ben
   volt egy olyan rendszergazdai szintu" hiba, amellyel az xterm (ez
   altalaban suid engedellyel rendelkezik) sebezheto"ve valt. Mivel
   jobb felni, mint megijedni, ezert az elo"retekinto" rendszergazda
   mindig igyekszik ugy cso:kkenteni az ilyen engedelyekkel
   rendelkezo" binarisok ko:ret, hogy csak a szemelyzet tagjai
   legyenek kepesek ezeket futtatni. Ezt egy olyan specialis csoport
   letrehozasaval oldhatjuk meg, amelyhez csak a szemelyzet tagjai
   ferhetnek hozza. Az olyan suid binarisoktol pedig, amelyeket senki
   sem hasznal, igyekszik teljesen megszabadulni (chmod 000). A
   monitorral nem rendelkezo" szervereknek altalaban nincs
   szu:ksegu:k az xterm mu"ko:dtetesere. Az sgid engedellyel
   rendelkezo" binarisok is legalabb ugyanennyire veszelyesek. Ha a
   behatolo kepes felto:rni egy kmem csoporthoz tartozo sgid
   binarist, akkor kepes lesz olvasni a /dev/kmem allomany tartalmat,
   ezaltal hozzajut a titkositott jelszavakhoz es igy megszerezheti
   maganak akarmelyik hozzaferest. So"t, a kmem csoportot megszerzo"
   behatolok figyelni tudjak a pszeudo terminalokon keresztu:l
   erkezo" billentyu"leu:teseket, meg abban az esetben is, amikor a
   felhasznalok egyebkent biztonsagos modszereket hasznalnak. A tty
   csoportot bezsebelo" tamadok szinte barmelyik felhasznalo
   terminaljara kepesek irni. Ha a felhasznalo valamilyen terminal
   programot vagy terminal emulatort hasznal a billentyu"zet
   szimulaciojaval, akkor a behatolo tud olyan adatokat generalni,
   amivel a felhasznalo neveben adhat ki parancsokat.

     --------------------------------------------------------------

  14.3.3. A felhasznaloi hozzaferesek vedelme

   A felhasznalok hozzafereseit szinte a legnehezebb megvedeni. Mig a
   szemelyzet tagjaival szemben lehetu:nk kimeletlenu:l szigoruak es
   "ki is csillagozhatjuk" a jelszavukat, addig a felhasznalok
   hozzafereseivel altalanossagban veve ezt nem tehetju:k meg. Ha a
   kezu:nkben van a megfelelo" merteku" iranyitas, akkor meg
   gyo"zhetu:nk es kenyelmesen biztonsagba helyezethetju:k a
   felhasznalok hozzafereset. Ha nincs, akkor nem tehetu:nk mast,
   mint allandoan o"rko:du:nk a hozzaferesek felett. Az ssh es
   Kerberos hasznalata a felhasznalok eseten sokkalta
   problematikusabb, mivel ilyenkor joval to:bb adminisztraciora es
   mu"szaki segitsegnyujtasra van szu:kseg, de meg mindig jobb
   megoldas a titkositott jelszavakhoz kepest.

     --------------------------------------------------------------

  14.3.4. A jelszavakat tarolo allomany vedelme

   Az a legbiztosabb, ha minel to:bb jelszot kicsillagozunk es a
   hozzaferesek hitelesitesere ssh-t vagy Kerberost hasznalunk. Igaz,
   a titkositott jelszavakat tarolo allomanyt (/etc/spwd.db) csak a
   root kepes olvasni, de a tamado meg tudja szerezni ezt a jogot meg
   olyankor is, ha root felhasznalokent nem feltetlenu:l tud irni.

   A rendszeru:nkben futo biztonsagi szkripteknek a jelszavakat
   tarolo allomany valtozasat folyamatosan tudnia kell figyelnie es
   jelentie (lasd lentebb a Az allomanyok sertetlensegenek
   elleno"rzese cimu" fejezetet).

     --------------------------------------------------------------

  14.3.5. A rendszermag belsejenek, a nyers eszko:zo:k es az
  allomanyrendszerek vedelme

   Ha a tamado megszerzi a root hozzafereset, akkor szinte barmit
   kepes megtenni, de vannak bizonyos elo"nyei. Peldaul a mostansag
   fejlesztett legto:bb rendszermag tartalmaz valamilyen beepitett
   csomaglehallgatot, amit FreeBSD alatt a bpf eszko:z valosit meg. A
   tamadok szinte mindig megprobalnak valamilyen csomaglehallgatot
   hasznalni a felto:rt gepen. A legto:bb rendszeren azonban nem kell
   feltetlenu:l megadnunk ezt az o:ro:met, ezert nem is kell
   beepitenu:nk a rendszermagba a bpf eszko:zt.

   De ha meg ki is iktatjuk a bpf eszko:zt, meg aggodhatunk a
   /dev/mem es /dev/kmem miatt. Egyebkent ami azt illeti, a behatolo
   meg igy is kepes irni a nyers eszko:zo:kre. So"t, a rendszermagba
   kepesek vagyunk modulokat is beto:lteni a kldload(8)
   hasznalataval. A vallalkozo kedvu" tamado a rendszermag
   moduljakent kepes telepiteni es hasznalni a sajat bpf eszko:zet
   vagy barmilyen mas, a csomagok lehallgatasara alkalmas eszko:zt.
   Az ilyen problemak elkeru:lese erdekeben a rendszermagot a
   legmagasabb vedelmi szinten kell u:zemeltetni, tehat legalabb
   egyes szinten.

   A rendszermag vedelmi szintjet to:bb ku:lo:nbo:zo" modon lehet
   allitani. A vedelmi szintet ugy lehet a legegyszeru"bben no:velni,
   ha a sysctl paranccsal beallitjuk a kern.securelevel nevu",
   rendszerszintu" valtozo erteket:

 # sysctl kern.securelevel=1

   A FreeBSD rendszermag alapertelmezes szerint a -1 vedelmi szinten
   indul. Ez egeszen addig -1 marad, amig a rendszergazda vagy
   valamelyik init(8) soran hivott rendszerindito szkript ezt meg nem
   valtoztatja. A rendszer inditasa soran ugy tudjuk beallitani a
   megfelelo" vedelmi szintet, ha az /etc/rc.conf allomanyban
   megadjuk a kern_securelevel_enable valtozot a YES ertekkel,
   illetve kern_securelevel ertekekent a kivant vedelmi szintet.

   A FreeBSD alapertelmezett vedelmi szintje ko:zvetlenu:l a
   rendszerindito szkriptek lefutasa utan -1. Ezt "nem biztonsagos
   modnak" nevezik, mivel az allomanyok irasaert felelo"s
   allomanyjelzo"k nem feltetlenu:l mu"ko:dnek, mindegyik eszko:z
   irhato, olvashato es a to:bbi.

   Miutan a vedelmi szintet 1 vagy annal magasabb ertekre allitottuk,
   akkor a rendszer figyelembe veszi a csak hozzafu"zest
   (append-only) es modosithatatlansagot (immutable) megszorito
   allomanyjelzo"ket, nem engedelyezi a tiltasukat es az eszko:zo:k
   ko:zvetlenu:l nem erheto"ek el. A ku:lo:nbo:zo" vedelmi szintek
   reszletesebb bemutatasat a security(7) man oldalon olvashatjuk
   (vagy a FreeBSD 7.0 elo"tti valtozataiban a init(8) man oldalon).

     Megjegyzes: Az 1 es az afeletti vedelmi szinteken to:bbek ko:zt
     az X11 nem feltetlenu:l lesz futtathato (mivel a /dev/io eszko:z
     elerese blokkolt), illetve a rendszer frissitese is akadalyokba
     fog u:tko:zni (a installworld futtatasa soran ideiglenesen ki
     kell kapcsolni az append-only es immutable allomanyjelzo"ket).
     Az X11 eseteben ezt valahogy meg ki lehet keru:lni ugy, hogy ha
     az xdm(1) demont meg a rendszerinditas elejen aktivaljuk (amikor
     a vedelmi szint meg kello"en alacsony). Az o:sszes vedelmi szint
     es megszoritas eseten azonban nem mindig adhato ilyen jellegu"
     javaslat, ezert ilyenkor mindig erdemes elo"re tervezni egy
     keveset. Emellett fontos alaposan megismerni a ku:lo:nbo:zo"
     vedelmi megszoritasokat, mivel jelento"s mertekben
     visszafoghatjak a rendszer hasznalhatosagat. Ez segit az adott
     helyzetben az egyszeru"bb megoldast valasztani es ezaltal
     elkeru:lni a kellemetlen meglepeteseket.

   Ha a rendszermag vedelmi szintjet az 1 ertek vagy afele emelju:k,
   akkor hasznos lehet a fontosabb (lenyegeben minden olyan
   programnak, amely a vedelmi szint helyes beallitodasa elo"tt
   lefut) programoknak, ko:nyvtaraknak es szkripteknek beallitani az
   schg allomanyjelzo"t. Ilyenkor azonban vegyu:k figyelembe, hogy a
   rendszer frissitese is nehezebbe valik a magasabb vedelmi
   szinteken. Egy mu"ko:do"kepesebb megoldas lehet, ha rendszeru:nket
   egy magasabb vedelmi szinten hasznaljuk, de nem allitjuk be
   mindegyik rendszerszintu" allomanyra az schg allomanyjelzo"t.
   Masik leheto"seg meg a / es /usr particiok irasvedett
   csatlakoztatasa. Ne felejtsu:k el azonban, hogy ha tulsagosan
   szigoruak vagyunk magunkhoz, akkor azzal egyuttal a behatolas
   eszleleset is meg tudjuk neheziteni!

     --------------------------------------------------------------

  14.3.6. Az allomanyok sertetlensegenek elleno"rzese: binarisok,
  konfiguracios allomanyok stb.

   Ha arrol van szo, csak a legfontosabb rendszerszintu"
   konfiguracios- es vezerlo"allomanyokat tudjuk megvedeni, meg
   mielo"tt a korabban emlegetett kenyelmi tenyezo" kimutatna a foga
   feherjet. Peldaul, ha a chflags paranccsal beallitjuk az schg
   allomanyjelzo"t a / es /usr allomanyrendszereken talalhato
   legto:bb allomanyra, akkor az minden bizonnyal cso:kkenti a
   hatekonysagunkat, hiszen az allomanyok vedelmenek no:vekedesevel
   cso:kken az eszleles leheto"sege. A vedelmi vonalaink ko:zu:l
   ugyanis az utolso talan az egyik legfontosabb -- a detektalas. A
   felepitett biztonsagi rendszeru:nk legnagyobb resze szinte
   teljesen hasztalan (vagy ami meg rosszabb, a biztonsag hamis
   erzetet kelti), ha nem vagyunk kepesek eszrevenni a beto:resi
   kiserleteket. A vedelmi rendszer egyik reszere nem a tamado
   megallitasahoz, hanem a lelassitasahoz van szu:kseg, hogy igy majd
   munka ko:zben erhessu:k tetten.

   A beto:res tenyet legjobban a megvaltozott, hianyzo vagy eppen
   varatlanul felbukkano allomanyok utani kutatassal tudjuk
   felismerni. A modositott allomanyokat altalaban egy masik (gyakran
   ko:zpontositott) korlatozott hozzaferesu" rendszerbo"l
   elleno"rizhetju:k a legjobban. Fontos, hogy ha egy korlatozott
   hozzaferesu", kiemelten vedett rendszeren irjuk a vedelemert
   felelo"s szkripteket, akkor azok szinte teljesen lathatlanok
   lesznek a tamado szamara. A legjobb kihasznalas erdekeben a
   korlatozott hozzaferesu" gepnek jelento"s merteku" ralatassal kell
   rendelkeznie az o:sszes to:bbi gepre, amit irasvedett NFS exportok
   vagy ssh kulcsparok felhasznalasaval erhetu:nk el. A halozati
   forgalmat leszamitva az NFS latszik a legkevesbe -- segitsegevel
   lenyegeben eszrevetlenu:l tudjuk figyelni az egyes gepek
   allomanyrendszereit. Ha a megfigyelesre hasznalt szerver a
   kliensekhez switchen keresztu:l csatlakozik, akkor az NFS gyakran
   jobb valasztasnak bizonyul. Ha a szerver hubon vagy to:bb halozati
   elemen keresztu:l eri el a megfigyelni kivant klienseket, akkor az
   NFS nem elegge biztonsagos (es hatekony), ezert ilyen esetekben az
   ssh valasztasa lehet a kedvezo" meg az ssh altal hagyott nyomokkal
   egyu:tt is.

   Miutan a korlatozott hozzaferesu" gepu:nk legalabb latja a
   hozzatartozo kliensek rendszereit, el kell keszitenu:nk a
   tenyleges monitorozast vegzo" szkripteket. Ha NFS csatlakozast
   tetelezu:nk fel, akkor az olyan egyszeru" rendszereszko:zo:kkel,
   mint peldaul a find(1) es md5(1) kepesek vagyunk o:sszerakni
   ezeket. A szemmel tartott kliensek allomanyait naponta legalabb
   egyszer erdemes elleno"rizni md5-tel, valamint meg ennel
   gyakrabban is tesztelni az /etc es /usr/local/etc ko:nyvtarakban
   talalhato konfiguracios es vezerlo"allomanyokat. Ha valamilyen
   elterest tapasztal az elleno"rzest vegzo" szerveru:nk es a rajta
   levo" md5 informaciok is helyesek, akkor ertesitenie kell a
   rendszergazdat. Egy jo vedelmi szkript kepes megkeresni az oda nem
   illo" suid binarisokat, valamint az uj vagy to:ro:lt allomanyokat
   a / es a /usr particiokon.

   A vedelmi szkriptek megirasa valamivel nehezebb feladat, ha ssh-t
   hasznalunk az NFS helyett. A futtatasukhoz a szkripteket es az
   altaluk hasznalt eszko:zo:ket (peldaul find) az scp paranccsal
   lenyegeben at kell masolni a kliensekre, amivel igy lathatova
   valnak. Ne feledju:k tovabba, hogy az ssh kliens mar eleve
   felto:rt lehet. Szo, ami szo, ha nem megbizhato
   o:sszeko:ttetesekro"l beszelu:nk, akkor az ssh hasznalata
   elkeru:lhetetlen, de nem feltetlenu:l egyszeru".

   Egy jo vedelmi szkript eszreveszi a felhasznalok es a szemelyzet
   tagjainak hozzafereset vezerlo" allomanyokban, mint peldaul az
   .rhosts, .shosts, .ssh/authorized_keys es tarsaiban keletkezett
   valtozasokat is, amelyek esetleg elkeru:lhetik egy MD5 alapu
   elleno"rzes figyelmet.

   Ha netalan orasi mennyisegu" tarteru:letettel rendelkeznenk, akkor
   eltarthat egy ideig, amig vegigso:pru:nk az o:sszes particio
   o:sszes allomanyan. Ebben az esetben erdemes olyan beallitasokat
   megadni az allomanyrendszerek csatlakoztatasanal, amivel le tudjuk
   tiltani a suid engedellyel rendelkezo" binarisok futtatasat. Ezzel
   kapcsolatban a mount(8) parancs nosuid opciojat nezzu:k meg.
   Hetente legalabb egyszer azert megis erdemes atnezni az ilyen
   particiokat is, mivel ez a reteg a beto:resi kiserletek
   felderitesevel foglalkozik, fu:ggetlenu:l a sikeressegu:kto"l.

   A futo programok nyilvantartasa (lasd accton(8)) egy olyan
   viszonylag keves ko:ltseggel jaro leheto"seg az operacios
   rendszerben, ami segitsegu:nkre lehet a beto:res utani esemenyek
   kiertekeleseben. Ku:lo:no:sen hasznos olyankor, amikor
   megprobaljuk modellezni, mikepp is sikeru:lt a tamadonak bejutnia
   a rendszeru:nkbe, termeszetesen feltetelezve, hogy az ehhez
   felhasznalt feljegyzesek a beto:res utan is erintetlenek maradtak.

   Vegu:l a vedelmet ellato szkripteknek javasolt feldolgozni a
   naploallomanyokat is, valamint a naplokat magukat is a leheto"
   legbiztonsagosabb formaban generalni -- ilyenkor nagyon hasznos
   lehet, ha egy tavoli gepre naplozunk. A behatolo megprobalja majd
   eltu:ntetni a nyomait, a naploallomanyok viszont nagyon fontosak a
   rendszergazda szamara a beto:resi kiserletek idejenek es modjanak
   megallapitasaban. A naplokat ugy tudjuk tartosan ro:gziteni, ha a
   rendszerkonzol u:zeneteit soros porton keresztu:l gyu"jtju:k
   o:ssze a konzolok felu:gyeleteert felelo"s biztonsagos gepen.

     --------------------------------------------------------------

  14.3.7. Allando paranoia

   Egy kis paranoia sosem art. Elmondhato, hogy a rendszergazda
   tetszo"leges szamu biztonsagi intezkedessel elhet egeszen addig,
   amig az nincs hatassal a kenyelmere, es a kenyelmet befolyasolo
   biztonsagi intezkedeseket pedig megfelelo" merlegeles mellett
   tegye meg. Ami meg ennel is fontosabb, hogy mindig valtoztassunk
   valamit a biztonsagi halonkon -- mivel ha egy az egyben ko:vetju:k
   a dokumentumban leirtakat, akkor ezzel egyu:tt kiadjuk a bejutas
   receptjet annak a leendo" tamadonknak, aki szinten elolvasta
   ugyanezt.

     --------------------------------------------------------------

  14.3.8. A szolgaltatasok mu"ko:deskeptelenne tetelet celzo tamadasok

   Ez a szakasz a szolgaltatasok mu"ko:deskeptelenseget elerni
   kivano, mas neven "Denial of Service" tipusu tamadasokkal
   foglalkozik. Noha nem tudunk tulsagosan sokat tenni a manapsag
   felbukkano alcazott, a halozatunk totalis leterheleset celbavevo"
   tamadasok ellen, akadnak olyan altalanos ervenyu" eszko:zo:k,
   amelyekkel elejet vehetju:k a szervereink szetbomzasanak:

    1. A letjo:vo" szerverpeldanyok korlatozasa.

    2. Az ugrodeszkaszeru" tamadasok (tamadas ICMP-valasszal,
       pingszoras stb.) korlatozasa.

    3. A rendszermag utvalasztasi gyorsitotaranak tulterhelese.

   A DoS tamadasok egyik jellemzo" semaja szerint egy sokszorozodni
   kepes szervert tamadnak meg, amelynek igyekeznek minel to:bb
   peldanyat legyartatni, mig vegu:l az ezt futtato rendszer ki nem
   fogy a memoriabol, allomanyleirobol sato:bbibo"l es megallasra nem
   kenyszeru:l. Az inetd (lasd inetd(8)) szamos leheto"seget kinal
   fel ennek megakadalyozasara. Ezzel kapcsolatban szeretnenk
   megjegyezni, hogy bar ezzel el tudjuk keru:lni a gepu:nk
   leallasat, semmilyen garanciat nem ad arra, hogy a szolgaltatas a
   tamadas soran is zavartalanul u:zemel tovabb. Alaposan olvassuk el
   az inetd man oldalat es legyu:nk ku:lo:no:s tekintettel a -c, -C
   es -R kapcsoloira. Vigyazzunk, hogy az inetd -C kapcsolojat
   kepesek kijatszani az alcazott IP-vel erkezo" tamadasok, ezert
   inkabb az elo"bbi kapcsolok valamilyen kombinacioja az ajanlott.
   Egyes szerverprogramoknal be lehet allitani a peldanyainak
   maximalis szamat.

   A Sendmail rendelkezik egy -OMaxDaemonChildren beallitassal, ami a
   terhelesben levo" kesleltetese miatt neha mintha jobban bevalna,
   mint a Sendmail terheleskorlatozo parameterei. A Sendmail
   inditasakor tehat a MaxDaemonChildren parametert javasolt megadni
   egy olyan ertekkel, amely elegendo" a Sendmail szamara betervezett
   terheles kiszolgalasara, de meg keves ahhoz, hogy a Sendmail fu"be
   harapjon to"le. Tovabba bo:lcs dolog a Sendmailt varakozasi sorral
   (-ODeliveryMode=queued) es demonkent (sendmail -bd), ku:lo:n
   feldolgozasi menetekkel (sendmail -q15m) futtatni. Ha tovabbra is
   valos ideju" kezbesitest akarunk, akkor a feldolgozast kisebb
   ido"ko:zo:kkel is lefuttathatjuk (peldaul -q1m), de arra mindig
   u:gyelju:nk, hogy a MaxDaemonChildren beallitasa ne okozzon
   kaszkadositasi hibakat a Sendmail mu"ko:deseben.

   A Syslogd ko:zvetlenu:l is tamadhato, ezert hatarozottan
   javasoljuk a -s hasznalatat, amikor csak lehet, minden mas esetben
   pedig a -a beallitast.

   Forditsunk kello" figyelmet a TCP kapcsolatok burkolasat vegzo"
   TCP Wrapper "reverse-ident" leheto"segere, ami szinten
   ko:zvetlenu:l tamadhato. Ebbo"l az okbol kifolyolag valoszinu"leg
   nem is akarjuk a TCP Wrapper altal felkinalt reverse-ident-et
   hasznalni.

   Jol jarunk el abban az esetben, ha a belso" szolgaltatasainkat az
   utvalasztoink menten tu"zfal segitsegevel vedju:k meg a ku:lso"
   hozzaferesto"l. Ezzel lenyegeben a helyi halozatunkat kivu:lro"l
   fenyegeto" tamadasok ellen vedekezu:nk, de ez nem nyujt elegendo"
   vedelmet a belso" szolgaltatasaink eseten a root hozzaferes
   megszerzesere iranyulo kiserletek ellen. Mindig egy exkluziv,
   tehat zart tu"zfalat allitsunk be, vagyis "tu"zfalazzunk mindent
   kiveve az A, B, C, D es M-Z portokat". Ezen a modon ki tudjuk
   szu"rni az o:sszes alacsonyabb portot, kiveve bizonyos eseteket,
   mint peldaul a named (ha az adott zonaban ez az elso"dleges gep),
   ntalkd, sendmail vagy mas interneten keresztu:l elerheto"
   szolgaltatasokat. Ha maskeppen allitjuk a tu"zfalat -- inkluziv,
   nyilt avagy megengedo" modon, akkor jo esellyel elfelejtu:nk
   "lezarni" egy csomo szolgaltatast, vagy ugy adunk hozza egy uj
   belso" szolgaltatast, hogy ko:zben elfelejtju:k frissiteni a
   tu"zfalat. Ennel meg azon is jobb, ha a tu"zfalon nyitunk egy
   magasabb portszamu tartomanyt, es ott valositjuk meg ezt a
   megengedo" jellegu" mu"ko:dest, az alacsonyabb portok veszelybe
   sodrasa nelku:l. Vegyu:k azt is szamitasba, hogy a FreeBSD-ben a
   kiosztott portokat dinamikusan allithatjuk a net.inet.ip.portrange
   sysctl valtozokon keresztu:l (sysctl -a | fgrep portrange), ami
   nagysagrendekkel megko:nnyiti a tu"zfal beallitasat. Ennek
   megfelelo"en peldaul meg tudjuk adni, hogy a 4000-to"l 5000-ig
   terjedo" porttartomany a 49152-to"l 65535-ig huzodo tartomanyba
   keru:ljo:n at, majd a 4000 alatti o:sszes portot blokkoljuk
   (termeszetesen az internetro"l szandekosan hozzaferheto" portok
   kivetelevel).

   A DoS tamadasok masik elterjedt fajtaja az un. "ugrodeszka
   tamadas" -- ilyenkor a szervert ugy probaljak tulterhelni, hogy
   folyamatosan valaszokat kernek to"le a helyi halozatrol vagy egy
   masik szamitogepro"l. Az ilyen termeszetu" tamadasok ko:zu:l is a
   legnepszeru"bb az ICMP pingszorasos tamadas. A tamado olyan ping
   csomagokat ku:ld szet a helyi halozaton, amelyek forrasanak azt a
   gepet jelo:li meg, amelyiket meg akarja tamadni. Ha a halozatokat
   elvalaszto utvalasztok nem fogjak meg a pingszorast, akkor a helyi
   halozatrol o:sszes gepe nekilat valaszolgatni a meghamisitott
   forras cimere, amivel igy teljesen leterhelik az aldozatot. Ez
   ku:lo:no:sen akkor hatasos, amikor a tamado ugyanezt a tru:kko:t
   eljatssza egyszerre to:bb tucat ku:lo:nbo:zo" halozatban is. Az
   u:zenetszorassal jaro tamadasok akar szazhusz megabitnyi forgalmat
   is kepesek generalni masodpercenkent. A masodik legelterjedtebb
   ugrodeszkas tamadas az ICMP hiba-visszajelzesi rendszere ellen
   iranyul. Ilyenkor a tamado ICMP hibau:zeneteket kivalto csomagok
   keszitesevel kepes elto:miteni egy szerver bejo:vo" halozati
   kapcsolatat es az ICMP valaszokkal pedig a szerver maga dugitja el
   a kimeno" halozati kapcsolatat. Ez a fajtaju tamadas kepes
   kinyomni az o:sszes memoriat a szerverbo"l es ezzel
   o:sszeomlasztani, ku:lo:no:sen olyankor, amikor a szerver nem
   tudja eleg gyorsan elnyelni az altala generalt ICMP valaszokat. A
   net.inet.icmp.icmplim sysctl valtozoval tudunk gatat szabni a
   tamadasok ezen fajtajanak. Az ugrodeszkas tamadasok utolso nagyobb
   osztalya az inetd olyan szolgaltatasait szemeli ki, mint peldaul
   az udp echo. A tamado ilyenkor egyszeru"en ku:ld a helyi
   halozatunkon talalhato A es B szerveru:nknek egy olyan UDP
   csomagot, ahol forraskent az A szerver echo portjat adja meg,
   celnak pedig a B szerver echo portjat. Ezutan a ket szerver
   elkezdi egymas ko:zo:tt passzolgatni ezt az egyetlen csomagot. A
   tamado meg to:bb ilyen csomag befecskendezesevel pillanatok alatt
   kepes leterhelni a ket szervert es helyi halozatot. Hasonlo
   problemak vannak a belso" chargen portjaval is. Egy hozzaerto"
   rendszergazda ezert kikapcsolja az o:sszes ilyen inetd-alapu
   belso" tesztelo" szolgaltatast.

   Az alcazott csomagok felhasznalhatoak a rendszermag utvalaszto
   gyorsitotaranak tulterhelesere is. Ezzel kapcsolatban nezzu:k meg
   a net.inet.ip.rtexpire, rtminexpire es rtmaxcache sysctl
   valtozokat. A veletlenszeru" IP-cimekkel megcimzett alcazott
   csomagok hatasara a rendszermag letrehoz mindegyiko"ju:kho:z egy
   ideiglenesen pufferelt utat az utvalaszto tablazataban, amelyet a
   netstat -rna | fgrep W3 paranccsal tudunk lekerdezni. Az ilyen
   utvonalak nagyjabol 1600 masodperc mulva elevu:lnek. Ha a
   rendszermag eszleli, hogy a gyorsitotarazott utvalasztasi tablazat
   merete tulsagosan megno:vekedett, akkor automatikusan cso:kkenti
   az rtexpire erteket, de soha nem megy a rtminexpire ala. Ebbo"l
   ket problema adodik:

    1. A rendszermag nem reagal eleg gyorsan amikor egy alig terhelt
       szervert hirtelen megtamadnak.

    2. Az rtminexpire nem eleg kicsi ahhoz, hogy a rendszermag
       tuleljen egy tartosabb rohamot.

   Ha a szervereink az internethez T3 (kb. 45 Mbit/s) vagy gyorsabb
   o:sszeko:ttetesen keresztu:l csatlakoznak, akkor hatarozottan
   javasolt kezileg behangolni a sysctl(8) segitsegevel az rtexpire
   es az rtminexpire ertekeket. Soha ne allitsuk egyiket sem nullara
   (hacsak nem akarjuk o:sszeomlasztani a gepu:nket). Ha peldaul mind
   a ketto"t 2 masodpercre allitjuk, akkor az to:bbnyire elegendo" az
   utvalasztasi tablazat megvedesehez.

     --------------------------------------------------------------

  14.3.9. Hozzaferes Kerberosszal es SSH-val

   Van nehany dolog, amit a Kerberos es az ssh eseten ajanlatos
   tisztazni, mielo"tt hasznaljuk ezeket. A Kerberos 5 egy
   kifogastalan hitelesitesi protokoll. A telnet es rlogin Kerberos
   altal modositott valtozataban vannak olyan hibak, amelyek
   alkalmatlanna teszik ezeket a binaris adatfolyamok helyes
   kezelesere. So"t, alapertelmezes szerint a Kerberos nem titkositja
   a kapcsolatot, csak ha megadjuk neki a -x kapcsolot. Az ssh
   alapertelmezes szerint mindent titkosit.

   Az ssh minden szempontbol nagyon jol teljesit kiveve, hogy
   alapertelmezes szerint atku:ldi a kulcsokat is. Ez azt jelenti,
   hogy ha van egy olyan biztonsagos munkaallomasunk, ahol a rendszer
   to:bbi reszehez tartozo kulcsainkat tartjuk es egy nem biztonsagos
   gepre akarunk vele ssh-n keresztu:l belepni, akkor a kulcsaink
   hasznalatova valnak. A tenyleges kulcsokat ugyan nem latja senki,
   de a bejelentkezes soran az ssh megnyit egy ko:zvetiteshez
   hasznalt portot, amit a nem biztonsagos gepen a tamado egy
   felto:rt root hozzaferes birtokaban ki tud hasznalni ugy, hogy a
   kulcsaink segitsegevel hozza tudjon ferni egy masik olyan gephez,
   amelyet a kulcsok nyitnak.

   Ha lehetseges, akkor a szemelyzet bejelentkeztetesehez az ssh-t es
   Kerberost egyu:ttesen hasznaljuk. Az ssh lefordihato Kerberos
   tamogatassal. Ezzel cso:kkentju:k a potencialisan kiszivargo ssh
   kulcsok eselyet, miko:zben jelszavainkat a Kerberosszal vedju:k.
   Az ssh kulcsokat csak biztonsagos gepekro"l es csak automatizalt
   feladatok eseten hasznaljuk (amire a Kerberos lenyegeben nem
   alkalmas). Emellett javasoljuk azt is, hogy az ssh beallitasai
   ko:zo:tt tiltsuk le a kulcsok atku:ldeset (key forwarding) vagy
   hasznaljuk az from=IP/DOMAIN opciot, amivel az ssh csak a megadott
   gepekro"l engedi az authorized_keys allomany es a igy benne levo"
   kulcsok hasznalatat.

     --------------------------------------------------------------

14.4. DES, Blowfish, MD5 es a Crypt

   Egyes reszeit ujrairta es aktualizalta: Bill Swingle.

   Minden UNIX rendszer hasznalojahoz tartozik egy jelszo is a
   hozzaferesehez. Teljesen nyilvanvalonak tu"nik, hogy ezt a jelszot
   csak az adott felhasznalo es az adott operacios rendszer ismeri. A
   jelszavakat a titokban tartasukhoz un. "csapoajto fu:ggvenyekkel"
   titkositjak, amelyeket ko:nnyu" titkositani, am nehez
   visszafejteni. Tehat amit egy perccel ezelo"tt meg nyilvalonak
   titulaltunk, az mostanra mar nem is teljesen igaz: valojaban az
   operacios rendszer sem ismeri a jelszot. Az operacios rendszer
   csak a jelszo titkositott valtozatat ismeri. A jelszo
   "titkositatlan" formajat csak nyers ero" igenyebevetelevel tudjuk
   megkeresni az o:sszes lehetseges jelszo szenakazlaban.

   Sajnos, annak idejen, amikor a jelszavak titkositasa bekeru:lt a
   UNIX-ba, egyedu:l a DES, vagy mas neven a Data Encryption Standard
   (Adattitkositasi szabvany) jo:tt szoba. Ez alapveto"en nem
   jelentett problemat az Egyesu:lt Allamok allampolgarai szamara, de
   mivel a DES forraskodjat nem lehetett kivinni az Egyesu:lt
   Allamokbol, a FreeBSD-nek talalnia kellett valami olyasmit, ami
   mind megfelel az Egyesu:lt Allamok to:rvenyeinek, mind pedig
   kompatibilis marad az o:sszes to:bbi DES-t hasznalo UNIX
   varianssal.

   Ezt ugy oldottak meg, hogy felosztottak a titkositassal foglalkozo
   fu:ggvenyko:nyvtarakat, igy az Egyesu:lt Allamokban elo"
   felhasznalok tudtak DES ko:nyvtarakat telepiteni es hasznalni,
   miko:zben a to:bbi nemzet felhasznaloi olyan mas titkositasi
   modszert tudtak valasztani, amit kinn is lehetett alkalmazni.
   Ennek tulajdonithato, hogy a FreeBSD alapertelmezes szerint az MD5
   segitsegevel titkosit. Az MD5-o:t a DES-nel sokkalta
   biztonsagosabbnak tartjak, ezert a DES telepitesenek leheto"seget
   leginkabb csak kompatibilitasi okokbol ajanlottak fel.

     --------------------------------------------------------------

  14.4.1. A titkositasi mechanizmus azonositasa

   Jelenleg a ko:nyvtar ismeri a DES, MD5 es Blowfish fu:ggvenyeit. A
   FreeBSD a jelszavak titkositasahoz alapbol az MD5-o:t hasznalja.

   Nagyon ko:nnyen meg tudjuk mondani, hogy a FreeBSD eppen melyik
   titkositasi modszert alkalmazza. Ennek egyik leheto"sege, ha az
   /etc/master.passwd allomanyt vizsgaljuk meg. Az MD5 fu:ggvenyevel
   titkositott jelszavak hosszabbak, mint a DES fu:ggvenyevel
   titkositottak es a $1$ karakterekkel kezdo"dnek. A $2a$
   karakterekkel kezdo"do" jelszavakat Blowfish-sel titkositottak. A
   DES kodolasu jelszavaknak nincs semmilyen ku:lo:nleges
   ismerteto"jelu:k, de altalanossagban elmondhato roluk, hogy
   ro:videbbek az MD5 jelszavaknal es olyan 64 karakteres abecevel
   kodoljak ezeket, amelyek nem tartalmazzak a $ karaktert, igy tehat
   a viszonylag ro:vid, nem dollarjellel kezdo"do" karakterlancok
   minden bizonnyal DES kodolasu jelszavak.

   Az uj jelszavak kodolasahoz hasznalt formatumot az /etc/login.conf
   allomanyban tarolt passwd_format bejelentkezesi tulajdonsag adja
   meg, amelynek ertekei des, md5 vagy blf lehetnek. A login.conf(5)
   man oldalon tajekozodhatunk bo"vebben a bejelentkezesi
   tulajdonsagokrol.

     --------------------------------------------------------------

14.5. Egyszeri jelszavak

   A FreeBSD alapertelmezes szerint tamogatja az OPIE-t (One-time
   Passwords In Everything, azaz "Egyszeri jelszavak mindenben"), ami
   alapbol az MD5 fu:ggvenyet hasznalja.

   A jelszavak harom fajtajat fogjuk a tovabbiakban targyalni. Az
   elso" a megszokott UNIX stilusu avagy Kerberos jelszo. Ezt a
   tovabbiakban "UNIX jelszonak" nevezzu:k. A masodik fajtaban az
   OPIE opiekey(1) nevu" segedprogramja altal generalt es a
   bejelentkezesnel a opiepasswd(1) altal elfogadott jelszavak
   tartoznak. Ezeket "egyszeri jelszavaknak" fogjuk nevezni. A
   jelszavak utolso tipusa az a titkos jelszo, amit az opiekey
   programnak (es neha a opiepasswd programnak) adunk meg, ami ebbo"l
   egyszer hasznalatos jelszavakat allit elo". Ezt innento"l "titkos
   jelszonak" vagy csak egyszeru"en "jelszonak" hivjuk.

   A titkos jelszonak semmi ko:ze sincs a UNIX jelszavunkhoz.
   Termeszetesen megegyezhetnek, de ezt nem ajanljuk. Az OPIE altal
   hasznalt titkos jelszavaknak nem kell a regi UNIX jelszavakhoz
   hasonloan legfeljebb 8 karakteresnek lenniu:k [8], barmekkorat
   hasznalhatunk. A hat vagy het szobol allo jelszavak ilyenkor igen
   gyakoriak. Az OPIE jobbara a UNIX jelszorendszereto"l teljesen
   fu:ggetlenu:l mu"ko:dik.

   A jelszavak mellett ket masik fajta adat fontos az OPIE szamara.
   Ko:zu:lu:k az egyiket "magnak" vagy "kulcsnak" nevezik, ami ket
   betu"bo"l es o:t szamjegybo"l all. A masik az "iteraciok szama",
   ami egy 1 es 100 ko:zo:tti szamot takar. Az OPIE ugy hozza letre
   az egyszeri jelszavakat, hogy egymas utan fu"zi a magot es a
   titkos jelszot, majd az iteraciok megadott szamanak megfelelo"
   mennyisegben kiszamolja ra az MD5 fu:ggveny erteket es az
   eredmenyt hat ro:vid angol szoba o:nti. Ez a hat angol szo lesz a
   mi egyszeri jelszavunk. A hitelesitessel foglalkozo rendszer
   (elso"sorban a PAM) figyelemmel kiseri a legutoljara hasznalt
   egyszeri jelszavunkat, es csak akkor engedi a felhasznalot
   hitelesiteni, ha az altala megadott jelszo kodolt valtozata
   megegyezik az elo"zo"leg megadott jelszavaeval. A csapoajto
   fu:ggvenyek hasznalata miatt lehetetlen legeneralni a ko:vetkezo"
   egyszeri jelszot, ha a sikeru:lt megszereznu:nk az egyiket. Az
   iteraciok szama minden egyes sikeres bejelentkezes utan cso:kken
   eggyel, amivel a felhasznalot es a bejelentkezteto" programot
   szinkronban tartja. Amikor igy az iteraciok szama eleri az egyet,
   az OPIE-t ujra kell inicializalni.

   Az emlitesre keru:lo" rendszerek mindegyikehez tartozik nehany
   program. Az opiekey bekeri az iteraciok szamat, a magot es a
   titkos jelszot, majd elo"allit egy egyszer hasznalatos jelszot
   vagy azok folytonos listajat. Az opiepasswd az OPIE
   inicializalasert, a jelszavak, az iteraciok szamanak es a mag
   megvaltoztatasaert felelo"s. Egyarant elfogad titkos jelmondatot,
   iteracios szamot vagy magot es egy egyszeri jelszot. Az opieinfo
   megvizsgalja a felhasznalokra vonatkozo adatbazist (/etc/opiekeys)
   es kiirja az adott felhasznalo altal hasznalt iteracios szamot es
   magot.

   Negyfele ku:lo:nbo:zo" mu"veletro"l fogunk most itt beszelni. Az
   elso"ben egy biztonsagos kapcsolaton keresztu:l elso"kent
   inicializaljuk az egyszeri jelszavakat, vagy megvaltoztatjuk a
   jelszot vagy a magot az opiepasswd segitsegevel. A masodik
   mu"veletben ugyanarra adjuk ki az opiepasswd parancsot egy nem
   biztonsagos kapcsolaton keresztu:l az opiekey paranccsal egyu:tt
   egy biztonsagos kapcsolaton keresztu:l. A harmadikban az opiekey
   hasznalataval nem biztonsagos kapcsolaton keresztu:l jelentkezu:nk
   be. A negyedikben az opiekey paranccsal letrehozunk egy adott
   mennyisegu" kulcsot, amelyeket aztan leirhatunk vagy
   kinyomtathatunk, hogy magunkkal tudjuk vinni olyan helyre, ahonnan
   nem tudnk biztonsagos modon csatlakozni.

     --------------------------------------------------------------

  14.5.1. Inicializalas biztonsagos kapcsolattal

   Az OPIE elso" inicializalasahoz adjuk ki az opiepasswd parancsot:

 % opiepasswd -c
 [grimreaper] ~ $ opiepasswd -f -c
 Adding unfurl:
 Only use this method from the console; NEVER from remote. If you are using
 telnet, xterm, or a dial-in, type ^C now or exit with no password.
 Then run opiepasswd without the -c parameter.
 Using MD5 to compute responses.
 Enter new secret pass phrase:
 Again new secret pass phrase:
 ID unfurl OTP key is 499 to4268
 MOS MALL GOAT ARM AVID COED

   A figyelmeztetes forditasa:

 Ezt a modszert csak konzolrol alkalmazzuk, SOHA ne tavoli kapcsolaton
 keresztu:l!  Ha telnetet, xtermet vagy betarcsazos kapcsolatot hasznalunk, akkor
 azonnal nyomjunk ^C-t vagy ne adjunk meg jelszot.

   Az Enter new secret pass phrase: vagy Enter secret password:
   kerdesek utan adjunk meg egy jelmondatot, illetve jelszot. Ne
   felejtsu:k el, hogy ez nem bejelentkezeshez hasznalt jelszo lesz,
   hanem ebbo"l jo:nnek majd letre az egyszeri kulcsaink. Az "ID" sor
   adja meg az aktualis peldanyunk parametereit: a bejelentkezeshez
   hasznalt nevu:nket, az iteraciok szamat es a magot. Amikor a
   bejelentkezesek soran a rendszer emlekszik a parameterekre es
   megjeleniti ezeket, nem kell megjegyeznu:nk. Az utolso sor adja
   meg a parametereinknek es a titkos jelszavunknak megfelelo"
   egyszeri jelszot. Ha most azonnal akarnank bejelentkezni, akkor
   ezt az egyszeri jelszot kellene hozza hasznalnunk.

     --------------------------------------------------------------

  14.5.2. Inicializalas nem biztonsagos kapcsolattal

   Ha egy nem biztonsagos kapcsolaton keresztu:l akarjuk
   inicializalni vagy megvaltoztatni a jelszavunkat, akkor
   szu:ksegu:nk lesz valahol egy megbizhato kapcsolatra, ahol le
   tudjuk futtatni az opiekey parancsot. Ez lehet egy szamunkra
   biztonsagi szempontbol elfogadhato gep parancssora. Emellett ki
   kell talalnunk egy iteracios szamot (erre a 100 egy jo valasztas)
   es adnunk egy magot vagy hasznalni egy veletlenszeru"en
   generaltat. Az inicializalas szintere fele vezeto" nem biztonsagos
   kapcsolaton keresztu:l adjuk ki az opiepasswd parancsot:

 % opiepasswd

 Updating unfurl:
 You need the response from an OTP generator.
 Old secret pass phrase:
         otp-md5 498 to4268 ext
         Response: GAME GAG WELT OUT DOWN CHAT
 New secret pass phrase:
         otp-md5 499 to4269
         Response: LINE PAP MILK NELL BUOY TROY

 ID mark OTP key is 499 gr4269
 LINE PAP MILK NELL BUOY TROY

   Az alapertelmezett mag elfogadasahoz nyomjuk le a Return
   billentyu"t. Mielo"tt megadnank a hozzaferes jelszavat, menju:nk
   at a biztonsagos kapcsolatra es adjuk meg neki ugyanezeket a
   parametereket:

 % opiekey 498 to4268
 Using the MD5 algorithm to compute response.
 Reminder: Don't use opiekey from telnet or dial-in sessions.
 Enter secret pass phrase:
 GAME GAG WELT OUT DOWN CHAT

   Most valtsunk vissza a nem biztonsagos kapcsolatra es masoljuk be
   az igy generalt egyszeri jelszot a megfelelo" programba.

     --------------------------------------------------------------

  14.5.3. Egyetlen egyszeri jelszo letrehozasa

   Miutan sikeresen inicializaltuk az OPIE-t es bejelentkezu:nk, a
   ko:vetkezo"ket lathatjuk:

 % telnet example.com
 Trying 10.0.0.1...
 Connected to example.com
 Escape character is '^]'.

 FreeBSD/i386 (example.com) (ttypa)

 login: felhasznaloi_nev
 otp-md5 498 gr4269 ext
 Password:

   Mellekesen megjegyezzu:k, hogy az OPIE paranccsoranak van egy (itt
   nem lathato) hasznos kepessege: ha Return billentyu"t nyomunk a
   jelszo bekeresekor, akkor a program megmutatja a begepelt
   betu"ket, igy lathatjuk pontosan mit is irunk be. Ez nagyon
   kenyelmes lehet olyankor, amikor valahonnan, peldaul egy laprol
   olvassuk a jelszot.

   A bejelentkezeshez ekkor le kell valahogy generalnunk az egyszeri
   jelszavunkat. Ezt egy megbizhato rendszeresen tudjuk megtenni az
   opiekey lefuttatasaval. (Ennek vannak DOS-os, Windows-os es
   Mac OS-es valtozatai is.) Parameterkent az iteracios szamot es a
   magot kell megadnunk. Ezt akar ko:zvetlenu:l at is masolhatjuk
   annak a gepnek a bejelentkezesi kepernyo"jero"l, ahova be akarunk
   jelentkezni.

   A megbizhato rendszeren tehat:

 % opiekey 498 to4268
 Using the MD5 algorithm to compute response.
 Reminder: Don't use opiekey from telnet or dial-in sessions.
 Enter secret pass phrase:
 GAME GAG WELT OUT DOWN CHAT

   Most mar megvan a bejelentkezeshez szu:kseges egyszeri jelszavunk.

     --------------------------------------------------------------

  14.5.4. To:bb egyszeri jelszo letrehozasa

   Neha olyan helyekre kell mennu:nk, ahol se egy megbizhato gep, sem
   pedig biztonsagos kapcsolat nem talalhato. Ilyen esetekben
   megadhatjuk az opiekey parancsnak, hogy elo"re gyartson le to:bb
   egyszer hasznalatos jelszot, amit keso"bb aztan ki tudunk
   nyomtatni. Peldaul:

 % opiekey -n 5 30 zz99999
 Using the MD5 algorithm to compute response.
 Reminder: Don't use opiekey from telnet or dial-in sessions.
 Enter secret pass phrase: <secret password>
 26: JOAN BORE FOSS DES NAY QUIT
 27: LATE BIAS SLAY FOLK MUCH TRIG
 28: SALT TIN ANTI LOON NEAL USE
 29: RIO ODIN GO BYE FURY TIC
 30: GREW JIVE SAN GIRD BOIL PHI

   Az -n 5 o:t kulcsot ker egymas utan, a 30 pedig megadja az utolso
   iteracios szamot. Vegyu:k eszre, hogy a kulcsokat a felhasznalas
   sorrendjevel ellentetes sorrendben irja ki a program. Ha igazan
   paranoiasok vagyunk, akkor irjuk le kezzel a jelszavakat. Ha
   viszont annyira nem, akkor egyszeru"en ku:ldju:k at ezeket az lpr
   parancsnak. Megfigyelhetju:k, hogy minden sorban lathato az
   iteracios szam es a hozzatartozo egyszeri jelszo. Hasznos lehet a
   felhasznalas szerinti felirni a jelszavakat.

     --------------------------------------------------------------

  14.5.5. A UNIX(R) jelszavak hasznalatanak leszu"kitese

   Az OPIE kepes a bejelentkezeshez hasznalt IP-cimek alapjan
   leszu"kiteni a UNIX jelszavak hasznalatat. Ehhez az
   /etc/opieaccess hasznalhato, amely alapbol megtalalhato a
   rendszeru:nko:n. Az opieaccess(5) man oldalan talalhatjuk meg a ra
   vonatkozo informaciokat es az o:sszes vele kapcsolatos biztonsagi
   megfontolast.

   Ime egy pelda az opieaccess allomanyra:

 permit 192.168.0.0 255.255.0.0

   Ezzel a sorral megengedju:k a UNIX jelszavak hasznalatat minden
   olyan felhasznalo szamara, akinek az IP-je illeszkedik a megadott
   cimre es maszkra (ez viszont alcazassal kijatszhato).

   Ha az opieaccess allomanybol egyetlen szabaly sem illeszkedik,
   akkor alapertelmezes szerint nem engedelyezettek a nem OPIE tipusu
   jelszavak.

     --------------------------------------------------------------

14.6. A TCP kapcsolatok burkolasa

   Irta: Tom Rhodes.

   Aki ismeri az inetd(8) programot, az mar biztosan hallott a TCP
   kapcsolatok burkolasarol, eredeti neven a a TCP wrapperekro"l.
   Azonban csak kevesek kepesek felfogni ezek valodi hasznat. Ugy nez
   ki, mindenki csak tu"zfalakon keresztu:l akarja megoldani a
   halozati kapcsolatot kezeleset. Habar a tu"zfalakat sok mindenre
   fel lehet ugyan hasznalni, egyetlen tu"zfal nem kepes peldaul
   szo:vegesen valaszolni a kapcsolatok kezdemenyezo"inek. Ellenben
   barmelyik TCP-wrapper szoftver kepes erre, so"t meg to:bbre is. A
   ko:vetkezo" nehany szakaszban szemu:gyre vesszu:k a TCP wrapperek
   szamos leheto"seget, es ahol lehetseges, ott konfiguracios
   allomanyokkal is illusztraljuk ezek hasznalatat.

   A TCP burkolo szoftverek kiterjesztik az inetd kepessegeit minden
   alatta dolgozo szerverdemon tamogatasara. Ezzel a modszerrel meg
   lehet oldani a naplozast, u:zenetek ku:ldeset a kapcsolatokhoz, a
   demonok elerheto"segenek korlatozasat stb. Noha ezen leheto"segek
   ko:zu:l nehany tu"zfallal is megvalosithato, ezzel nem csupan egy
   tovabbi vedelmi reteget huzunk fel a rendszeru:nk ko:re, hanem
   tullepju:k mindazt, amit egy tu"zfallal iranyitani lehet.

   A TCP burkolok hasznalataval hozzaadott funkcionalitas azonban nem
   helyettesit egy jo tu"zfalat. A TCP kapcsolatok burkolasat
   tu"zfallal vagy mas egyeb biztonsagi megoldassal egyu:tt tudjuk
   csak eredmenyesen hasznalni, viszont a rendszeru:nk biztonsagaban
   egy ujabb remek vedelmi vonalat kepvisel.

   Mivel lenyegeben ez az inetd beallitasanak kibo"vitese, ezert a
   szakasz elolvasasahoz feltetelezzu:k az inetd beallitasaval
   kapcsolatos tudnivalok ismeretet.

     Megjegyzes: Bar az inetd(8) altal inditott programok nem egeszen
     tekintheto"en "demonoknak", hagyomanyosan demonnak hivjak
     ezeket. Ezert rajuk ebben a szakaszban is ezt a kifejezest
     hasznaljuk.

     --------------------------------------------------------------

  14.6.1. Kezdeti beallitasok

   FreeBSD alatt a TCP burkolok hasznalatanak egyetlen feltetele
   csupan annyi, hogy az inetd parancsot a -Ww parameterrel inditsuk
   az rc.conf allomanybol. Az egyebkent az alapbeallitas.
   Termeszetesen nem art, ha helyesen allitjuk be az /etc/hosts.allow
   allomanyt is, ellenkezo" esetben a syslogd(8) egyebkent dobalni
   fogja erro"l az u:zeneteket.

     Megjegyzes: Eltero"en a TCP burkolok egyeb implementacioitol, a
     hosts.deny allomanyt itt mar nem hasznaljuk. Minden beallitast
     az /etc/host.allow allomanyba kell raknunk.

   A legegyszeru"bb konfiguracio eseten a demonok kapcsolodasat
   egyszeru"en engedelyezhetju:k vagy letilthatjuk az
   /etc/hosts.allow allomanyban szereplo" beallitasokkal. A FreeBSD
   alapertelmezett beallitasai szerint minden inetd altal inditott
   demonhoz lehet kapcsolodni. Ennek megvaltoztatasaval az
   alapkonfiguracio attekintese utan foglalkozunk.

   Az alapkonfiguracio altalaban demon : cim : cselekves alaku. Itt a
   demon egy olyan demonra utal, amelyet az inetd inditott el. A cim
   egy ervenyes halozati nev, IP-cim vagy szo:gletes zarojelek ([ ])
   ko:zo:tt megadott IPv6 formatumu cim. A cselekvest tartalmazo
   mezo" (action) lehet allow vagy deny annak megfelelo"en, hogy
   engedelyezzu:k vagy tiltjuk a megadott cimro"l a csatlakozast. Nem
   szabad elfelejtenu:nk, hogy az igy megadott beallitasok ko:zu:l
   mindig az elso"kent illeszkedo" ervenyesu:l, ami arra utal, hogy a
   konfiguracios allomanyban szereplo" szabalyok egymas utan
   no:vekvo" sorrendben ertekelo"dnek ki. Ha valamelyiku:k
   illeszkedik, akkor a kereses megall.

   Rengeteg egyeb opcio is megadhato meg, de ezekro"l csak a keso"bbi
   szakaszokban fogunk szolni. Egy egyszeru" konfiguracios allomany
   mar ennyi informaciobol is ko:nnyeden o:sszeallithato. Peldaul, ha
   engedelyezni szeretnenk a POP3 kapcsolatokat a mail/qpopper
   demonon keresztu:l, akkor a ko:vetkezo" sorral kell
   kiegeszitenu:nk a hosts.allow allomanyt:

 # Ez a sor kell a POP3 kapcsolatokhoz:
 qpopper : ALL : allow

   Miutan hozzaadtuk ezt a sort, az inetd szervert ujra kell
   inditanunk. Ezt vagy a kill(1) paranccsal, vagy pedig az
   /etc/rc.d/inetd szkript restart parameterevel tehetju:k meg.

     --------------------------------------------------------------

  14.6.2. Komolyabb beallitasok

   A TCP kapcsolatok burkolasanal is meg lehet adni tovabbi opciokat.
   Segitsegu:kkel meg jobban iranyitani tudjuk a kapcsolatok
   kezelesenek modjat. Nehany esetben az is hasznos lehet, ha
   ku:ldu:nk valamilyen valaszt az egyes gepeknek vagy demonoknak.
   Maskor szu:ksegu:nk lehet a csatlakozasok naplozasara vagy
   e-mailen keresztu:li jelzesere a rendszergazda fele. Teljesen mas
   helyezetekben csak a helyi halozatunkrol engedju:k meg a
   csatlakozast. Ez mind lehetseges a helyettesito" jelekkent ismert
   beallitasi opciok, kiterjeszto" karakterek es ku:lso" parancsok
   vegrehajtasanak hasznalataval. A ko:vetkezo" ket szakasz az ilyen
   es ehhez hasonlo szituaciok megoldasara irodott.

     --------------------------------------------------------------

    14.6.2.1. Ku:lso" parancsok

   Tegyu:k fel, hogy olyan helyezetben vagyunk, amikor a kapcsolatot
   tiltani akarjuk, de ko:zben azert szeretnenk erro"l ertesiteni a
   kapcsolatot kezdemenyezo" felet is. Hogyan tudjuk ezt megcsinalni?
   Ezt a twist nevu" opcioval tehetju:k meg. Amikor megprobal valaki
   csatlakozni, akkor a twist hivodik meg es vegrehajt egy megadott
   parancsot vagy szkriptet. Erre talalunk is egy peldat a
   hosts.allow allomanyban:

 # The rest of the daemons are protected.
 ALL : ALL \
         : severity auth.info \
         : twist /bin/echo "You are not welcome to use %d from %h."

   Ez a pelda a ko:vetkezo" u:zenetet jeleniti meg: "You are not
   allowd to use a demon neve from halozati nev." (Jelentese: "A
   demon neve demont nem erheti el a halozati nev helyro"l!") Ez
   minden olyan demon eseten megjelenik, amiro"l nem nyilatkoztunk
   korabban az allomanyban. Ezzel nagyon ko:nnyen vissza tudunk
   ku:ldeni egy valaszt a kapcsolat kezdmenyezo"je fele, miutan a
   kapcsolatot eldobtuk. Vegyu:k eszre, hogy a visszaku:ldendo"
   u:zenetet " karakterek ko:ze kell tennu:nk, ez alol semmi sem
   kivetel.

     Figyelem: DoS tamadast lehet elo"idezni azzal, ha egy tamado
     vagy tamadok egy csoportja csatlakozasi kerelmekkel kezdi el
     bombazni a demonainkat.

   Ilyen esetekben hasznalhatjuk a spawn opciot is. A spawn a twist
   opciohoz hasonloan implicit modon tiltja a kapcsolodast es arra
   hasznalhato, hogy lefuttassunk vele egy parancsot vagy szkriptet.
   A spawn azonban a twist opciotol eltero"en nem ku:ld vissza
   semmilyen valaszt a kapcsolatot letrehozni kivano egyennek. Ehhez
   peldakent vegyu:k a ko:vetkezo" sort a konfiguracios allomanyban:

 # We do not allow connections from example.com:
 ALL : .example.com \
         : spawn (/bin/echo %a from %h attempted to access %d >> \
           /var/log/connections.log) \
         : deny

   Ezzel a *.example.com cimtartomanybol erkezo" o:sszes kapcsolodasi
   kiserlet sikertelen lesz, miko:zben ezzel egyido"ben a
   /var/log/connections.log allomanyba ro:gzitju:k a csatlakozni
   akaro egyen halozati nevet, IP-cimet es a demont.

   A korabban mar kifejtett helyettesito" karakterek tul, mint
   peldaul az %a, meg leteznek tovabbiak is. Roluk a hosts_access(5)
   man oldalon talalhatjuk meg a teljes listat.

     --------------------------------------------------------------

    14.6.2.2. Helyettesito" jelek

   Az eddigi peldakban folyamatosan csak az ALL opciot adtuk meg.
   Azonban rajta kivu"l leteznek masok is, amivel a megoldas
   funkcionalitasat meg egy kicsivel tovabb no:velhetju:k. Peldaul az
   ALL hasznalhato egy demon, egy tartomany vagy egy IP-cim
   illesztesere. A masik ilyen helyettesito" jel a PARANOID, amelyet
   olyan gepek IP-cimenek illesztesekor alkalmazhatunk, ami
   feltetelezheto"en hamis. Mas szoval a PARANOID olyan cselekvesek
   megadasat teszi leheto"ve, amelyek akkor hajtodnak vegre, amikor a
   kapcsolatot letrehozo gep IP-cime elter a halozati neveto"l. A
   most ko:vetkezo" pelda valoszinu"leg segit fenyt deriteni ennek
   lenyegere:

 # Block possibly spoofed requests to sendmail:
 sendmail : PARANOID : deny

   A peldaban minden olyan kapcsolatkerest elutasitunk, ami a
   sendmail fele a halozati nevto"l eltero" IP-cimro"l iranyul.

     Figyelem: Ha rossz DNS beallitasokat hasznalunk, a PARANOID
     megadasaval sulyosan mozgaskeptelenne tehetju:k a kliensu:nket
     vagy szerveru:nket. Ezert legyu:nk ovatosak vele!

   A helyettesito" jelekro"l es hozzajuk tartozo tovabbi
   leheto"segekro"l a hosts_access(5) man oldalon tajekozodhatunk.

   A hosts.allow allomanybol ki kell venni az elso" sort ahhoz, hogy
   barmilyen egyeb konfiguracios beallitas mu"ko:do"kepes legyen. Ezt
   emlitettu:k a szakasz elejen is.

     --------------------------------------------------------------

14.7. KerberosIV

   Irta: Mark Murray. Eredetileg irta: Mark Dapoz.

   A Kerberos egy olyan jarulekos rendszer/protokoll, amellyel a
   felhasznalok egy biztonsagos szerver szolgaltatasain keresztu:l
   tudjak hitelesiteni magukat. Ilyen szolgaltatas to:bbek ko:zt a
   tavoli bejelentkezes, tavoli masolas, a rendszeren belu:li
   biztonsagos masolas es minden olyan egyeb veszelyes feladat, amit
   szamottevo"en megbizhatobba es iranyithatobba tettek.

   A ko:vetkezo" utasitasok a FreeBSD-hez mellekelt Kerberos
   beallitasahoz adnak utmutatast. A teljes leirashoz azonban erdemes
   fellapoznunk a menet ko:zben hivatkozott man oldalakat is.

     --------------------------------------------------------------

  14.7.1. A KerberosIV telepitese

   A Kerberos a FreeBSD egyik valaszthato komponense. Legko:nnyebben
   ugy tudjuk feltelepiteni, ha a FreeBSD telepitese soran a
   sysinstall programban kivalasztjuk a krb4 vagy krb5 terjesztesek
   valamelyiket. Ezzel felrakhatjuk a Kerberos "eBones" (KerberosIV)
   vagy "Heimdal" (Kerberos5) elnevezesu" valtozatait. A FreeBSD
   azert tartalmazza ezeket az implementaciokat, mert nem az Amerikai
   Egyesu:lt Allamokban vagy Kanadaban fejlesztettek, igy az
   Egyesu:lt Allamok titkositasokkal kapcsolatos kiviteli
   korlatozasok koraban minden olyan rendszer adminisztratora el
   tudta erni, aki nem ezekben az orszagokban lakott.

   A Kerberos MIT altal fejlesztett implementaciojat egyebkent a
   Portgyu"jtemenybo"l a security/krb5 porton keresztu:l erhetju:k
   el.

     --------------------------------------------------------------

  14.7.2. A kezdeti adatbazis letrehozasa

   Ezt a lepest csak a Kerberos szerveren kell elvegezni. Elo"szo:r
   is gyo"zo"dju:nk meg rola, hogy semmilyen korabbi Kerberos
   adatbazis nem talalhato a gepen. Valtsunk az /etc/kerberosIV
   ko:nyvtarra es elleno"rizzu:k a ko:vetkezo" allomanyok megletet:

 # cd /etc/kerberosIV
 # ls
 README          krb.conf        krb.realms

   Ha rajtuk kivu:l tovabbi allomanyok is feltu"nnenek (mint peldaul
   a principal.* vagy master_key), akkor a kdb_destroy paranccsal
   pusztitsuk el a regi Kerberos adatbazist, vagy ha nem fut mar a
   Kerberos, akkor egyszeru"en csak to:ru:lju:k le ezeket.

   Ezutan lassunk neki a krb.conf es krb.realms allomanyok atirasan
   keresztu:l a Kerberos egyes o:vezeteinek (realm) letrehozasahoz.
   Itt most az EXAMPLE.COM lesz a letrehozando o:vezet, a
   hozzatartozo szerver pedig a grunt.example.com. Igy szerkesszu:k
   at vagy keszitsu:nk el a neki megfelelo" krb.conf allomanyt:

 # cat krb.conf
 EXAMPLE.COM
 EXAMPLE.COM grunt.example.com admin server
 CS.BERKELEY.EDU okeeffe.berkeley.edu
 ATHENA.MIT.EDU kerberos.mit.edu
 ATHENA.MIT.EDU kerberos-1.mit.edu
 ATHENA.MIT.EDU kerberos-2.mit.edu
 ATHENA.MIT.EDU kerberos-3.mit.edu
 LCS.MIT.EDU kerberos.lcs.mit.edu
 TELECOM.MIT.EDU bitsy.mit.edu
 ARC.NASA.GOV trident.arc.nasa.gov

   A to:bbi o:vezetnek valojaban nem feltetlenu:l kell itt lennie.
   Ezek csupan azert szerepelnek itt, hogy bemutassak mikent lehet
   egyetlen gephez hozzarendelni egyszerre to:bb o:vezetet is. Az
   egyszeru"seg kedveert nyugodtan elhagyhatoak.

   Az elso" sor nevezi meg a rendszer altal mu"ko:dtetett
   o:vezeteket. Az utana ko:vetkezo" sorokban o:vezeteket es halozati
   neveket lathatunk. Itt az elso" elem egy o:vezetet nevez meg, a
   masodik elem pedig az o:vezet "kulcseloszto ko:zpontjat" (key
   distribution center). A halozati nevet ko:veto" admin server
   kulcsszavak arra utalnak, hogy az adott gep adminisztrativ
   szerepet ellato adatbazist is tartalmaz. Ezeket a fogalmakat
   reszleteiben a Kerberos man oldalain ismerhetju:k meg.

   Ezutan hozza kell adnunk a grunt.example.com nevu" gepet az
   EXAMPLE.COM o:vezethez, valamint az .example.com tartomanyban
   levo" o:sszes gephez letre kell hoznunk egy bejegyzest az
   EXAMPLE.COM o:vezetben. A krb.realms allomanyt ehhez a
   ko:vetkezo"keppen kellene modositanunk:

 # cat krb.realms
 grunt.example.com EXAMPLE.COM
 .example.com EXAMPLE.COM
 .berkeley.edu CS.BERKELEY.EDU
 .MIT.EDU ATHENA.MIT.EDU
 .mit.edu ATHENA.MIT.EDU

   Ismet hozzatesszu:k, hogy a to:bbi o:vezetnek nem ko:telezo" itt
   szerepelnie. Ezek csupan azt demonstraljak, hogy mikent kell egy
   gepet egyszerre to:bb o:vezethez is beallitani. Az atlathatosag
   kedveert minden tovabbi nelku:l eltavolithatjuk ezeket.

   Itt az elso" sor az adott rendszert elhelyezi egy nevesitett
   o:vezetbe. A to:bbi sor azt mutatja meg, hogyan kell
   alapertelmezett modon a meghatarozott altartomanyokba tartozo
   gepeket egy nevesitett o:vezethez hozzarendelni.

   Most mar keszen allunk az adatbazis letrehozasara. Ehhez egyedu:l
   a Kerberos szerveret (avagy Kulcseloszto ko:zpontjat) kell
   elinditanunk. Adjuk ki a kdb_init parancsot:

 # kdb_init
 Realm name [default  ATHENA.MIT.EDU ]: EXAMPLE.COM
 You will be prompted for the database Master Password.
 It is important that you NOT FORGET this password.

 Enter Kerberos master key:

   Az u:zenet forditasa:

 Most az adatbazis mesterkulcsat kell megadni.  Fontos, hogy
 NE FELEJTSU:K EL ezt a jelszot.

   Most el kell mentenu:nk a kulcsot, igy a helyi gepen futo
   szerverek fel tudjak szedni. Ehhez a kstash parancsra van
   szu:ksegu:nk:

 # kstash

 Enter Kerberos master key:

 Current Kerberos master key version is 1.

 Master key entered. BEWARE!

   Az u:zenet forditasa:

 A Kerberos mesterkulcsanak jelenlegi valtozata: 1.

 VIGYAZAT, megadtak a mesterkulcsot!

   Ez elmenti a titkositott mesterkulcsot az
   /etc/kerberosIV/master_key allomanyba.

     --------------------------------------------------------------

  14.7.3. Az egesz beu:zemelese

   Mindegyik Kerberosszal o"rzo:tt rendszerrel kapcsolatban ket un.
   szereplo"t (principal) kell meg hozzatennu:nk az adatbazishoz. A
   nevu:k kpasswd es rcmd. Minden rendszerhez letre kell hoznunk
   ezeket a szereplo"ket, peldanyonkent (instance) az egyes
   rendszerek neveivel.

   A kpasswd es rcmd demonok teszik leheto"ve a to:bbi rendszer
   szamara, hogy megvaltoztathassak a Kerberos jelszavukat, valamint
   hogy futtathassak az rcp(1), rlogin(1) es rsh(1) parancsokat.

   Vegyu:k fel ezeket a bejegyzeseket is:

 # kdb_edit
 Opening database...

 Enter Kerberos master key:

 Current Kerberos master key version is 1.

 Master key entered.  BEWARE!
 Previous or default values are in [brackets] ,
 enter return to leave the same, or new value.

 Principal name: passwd
 Instance: grunt

 <Not found>, Create [y] ? y

 Principal: passwd, Instance: grunt, kdc_key_ver: 1
 New Password:                    <---- irjuk be, hogy "RANDOM"
 Verifying password

 New Password: <---- irjuk be, hogy "RANDOM"

 Random password [y] ? y

 Principal's new key version = 1
 Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
 Max ticket lifetime (*5 minutes) [ 255 ] ?
 Attributes [ 0 ] ?
 Edit O.K.
 Principal name: rcmd
 Instance: grunt

 <Not found>, Create [y] ?

 Principal: rcmd, Instance: grunt, kdc_key_ver: 1
 New Password:           <---- irjuk be, hogy "RANDOM"
 Verifying password

 New Password:           <---- irjuk be, hogy "RANDOM"

 Random password [y] ?

 Principal's new key version = 1
 Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
 Max ticket lifetime (*5 minutes) [ 255 ] ?
 Attributes [ 0 ] ?
 Edit O.K.
 Principal name:         <---- ha nem adunk meg semmit, akkor kilep

     --------------------------------------------------------------

  14.7.4. A szerver allomany letrehozasa

   Most pedig kivonatolni kell azokat a peldanyokat, amelyek
   szolgaltatast definialnak a gepen. Erre az ext_srvtab parancsot
   hasznaljuk. Ennek eredmenyekeppen keletkezik egy allomanyt,
   amelyet biztonsagos eszko:zo:kkel at kell masolni vagy at kell
   mozgatni az egyes Kerberos kliensek /etc ko:nyvtaraba. Ennek az
   allomanynak egyarant jelent kell lennie a szerveren es a kliensen
   is, nelku:le a Kerberos mu"ko:deskeptelen.

 # ext_srvtab grunt
 Enter Kerberos master key:

 Current Kerberos master key version is 1.

 Master key entered. BEWARE!
 Generating 'grunt-new-srvtab'....

   Ez a parancs most letrehozott egy ideiglenes allomanyt, amit at
   kell nevezni az srvtab nevre, hogy megtalalhassak a szerverek. Az
   eredeti rendszeren a mv(1) paranccsal tudjuk a helyere rakni:

 # mv grunt-new-srvtab srvtab

   Ha egy kliensnek szanjuk az allomanyt es a halozatunkat nem
   tekinthetju:k biztonsagosnak, akkor a kliens-new-srvtab allomanyt
   masoljuk egy mozgathato adathordozora es megbizhato modon jutassuk
   el. Ne felejtsu:k el az allomanyt srvtab neven atrakni a kliens
   /etc ko:nyvtaraba es az engedelyeit 600-ra allitani:

 # mv grumble-new-srvtab srvtab
 # chmod 600 srvtab

     --------------------------------------------------------------

  14.7.5. Az adatbazis felto:ltese

   Ezt ko:veto"en ro:gzitenu:nk kell nehany felhasznalot is
   adatbazisban. Elo"szo:r is hozzunk letre egy bejegyzest a janos
   nevu" felhasznalonak. Ezt a kdb_edit parancs kiadasaval tesszu:k
   meg:

 # kdb_edit
 Opening database...

 Enter Kerberos master key:

 Current Kerberos master key version is 1.

 Master key entered.  BEWARE!
 Previous or default values are in [brackets] ,
 enter return to leave the same, or new value.

 Principal name: janos
 Instance:

 <Not found>, Create [y] ? y

 Principal: janos, Instance: , kdc_key_ver: 1
 New Password:                <---- adjunk meg egy biztonsagos jelszot
 Verifying password

 New Password:                <---- itt ismet adjuk meg a jelszot
 Principal's new key version = 1
 Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
 Max ticket lifetime (*5 minutes) [ 255 ] ?
 Attributes [ 0 ] ?
 Edit O.K.
 Principal name:            <---- ha nem irunk be semmit, akkor kilep

     --------------------------------------------------------------

  14.7.6. Probaljuk ki

   Elso"kent a Kerberos demonait kell beinditanunk. Ezzel
   kapcsolatban megjegyeznenk, hogy ha ehhez megfelelo"en atirtuk az
   /etc/rc.conf allomanyunkat, akkor ez az ujrainditassal egyu:tt
   magatol lezajlik. Ezt csak a Kerberos szerveren kell megcsinalni.
   A Kerberos kliensei maguktol o:sszeszedik a mu"ko:desu:kho:z
   szu:kseges adatokat az /etc/kerberosIV ko:nyvtarbol.

 # kerberos &
 Kerberos server starting
 Sleep forever on error
 Log file is /var/log/kerberos.log
 Current Kerberos master key version is 1.

 Master key entered. BEWARE!

 Current Kerberos master key version is 1
 Local realm: EXAMPLE.COM
 # kadmind -n &
 KADM Server KADM0.0A initializing
 Please do not use 'kill -9' to kill this job, use a
 regular kill instead

 Current Kerberos master key version is 1.

 Master key entered.  BEWARE!

   A fenti figyelmeztetes forditasa:

 A program leallitasara ne a 'kill -9' parancsot, hanem a
 normalis kill parancsot hasznaljuk

   Ezutan a kinit parancs hasznalataval probaljunk meg az elo"bb
   letrehozott janos azonositonak kerni egy jegyet:

 % kinit janos
 MIT Project Athena (grunt.example.com)
 Kerberos Initialization for "janos"
 Password:

   A klist paranccsal most probaljuk meg kilistazni a tokeneket es
   igy elleno"rizni, hogy valoban rendelkezu:nk velu:k:

 % klist
 Ticket file:    /tmp/tkt245
 Principal:      janos@EXAMPLE.COM

   Issued           Expires          Principal
 Apr 30 11:23:22  Apr 30 19:23:22  krbtgt.EXAMPLE.COM@EXAMPLE.COM

   Ezutan a passwd(1) hasznalataval probaljuk meg megvaltoztatni a
   jelszavunkat. Ezzel tudjuk elleno"rizni, hogy a kpasswd demon
   hozzafer a Kerberos adatbazisahoz:

 % passwd
 realm EXAMPLE.COM
 Old password for janos:
 New Password for janos:
 Verifying password
 New Password for janos:
 Password changed.

     --------------------------------------------------------------

  14.7.7. Adminisztratori jogosultsagok felvetele

   A Kerberos leheto"ve teszi, hogy mindegyik olyan felhasznalonak,
   akinek rendszergazdai jogokra lenne szu:ksege, a su(1) eleresehez
   ku:lo:n meg tudjunk adni egy jelszot. Most mar tudunk mondani egy
   olyan azonositot is, amely jogosult a su(1) hasznalataval root
   jogokat szerezni. Ezt ugy tudjuk megoldani, ha az adott
   szereplo"ho:z tarsitunk egy root peldanyt. A kdb_edit
   hasznalataval kesziteni tudunk egy janos.root bejegyzest a
   Kerberos adatbazisaban:

 # kdb_edit
 Opening database...

 Enter Kerberos master key:

 Current Kerberos master key version is 1.

 Master key entered.  BEWARE!
 Previous or default values are in [brackets] ,
 enter return to leave the same, or new value.

 Principal name: janos
 Instance: root

 <Not found>, Create [y] ? y

 Principal: janos, Instance: root, kdc_key_ver: 1
 New Password:                    <---- ide csak egy BIZTONSAGOS jelszot adjuk meg!
 Verifying password

 New Password:                    <---- adjuk meg ismet a jelszot

 Principal's new key version = 1
 Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
 Max ticket lifetime (*5 minutes) [ 255 ] ? 12 <--- ne allitsuk nagyon hosszura!
 Attributes [ 0 ] ?
 Edit O.K.
 Principal name:                  <---- ha nem adunk meg semmit, akkor kilep

   Ezt ko:veto"en ugy tudunk megbizonyosodni a mu"ko:desero"l, hogy
   megprobalunk neki tokeneket szerezni:

 # kinit janos.root
 MIT Project Athena (grunt.example.com)
 Kerberos Initialization for "janos.root"
 Password:

   Most rakjuk bele a felhasznalot a root .klogin allomanyaba:

 # cat /root/.klogin
 janos.root@EXAMPLE.COM

   Ezutan probaljunk meg kiadni a su(1) parancsat:

 % su
 Password:

   Nezzu:k meg milyen tokenjeink is vannak:

 # klist
 Ticket file:    /tmp/tkt_root_245
 Principal:      janos.root@EXAMPLE.COM

   Issued           Expires          Principal
 May  2 20:43:12  May  3 04:43:12  krbtgt.EXAMPLE.COM@EXAMPLE.COM

     --------------------------------------------------------------

  14.7.8. Mas parancsok hasznalata

   Az imenti peldaban letrehoztunk egy janos nevu" szereplo"t, amihez
   a root egy peldanyat rendeltu:k. Ez egy olyan felhasznalon alapjan
   to:rtent, akinek a neve megegyezik a hozzatartozo szereplo"vel,
   ami a Kerberosban alapertelmezes. Amennyiben a szu:kseges
   megjegyzesek megtalalhatoak a root ko:nyvtaraban levo" .klogin
   allomanyban, akkor a felhasznalo.root formatumu szereplo".peldany
   azonosito megengedi a felhasznalo szamara, hogy vegrehajtsa a
   su(1) parancsot.

 # cat /root/.klogin
 janos.root@EXAMPLE.COM

   Ehhez hasonloan, ha a felhasznalo sajat ko:nyvtaraban megtalalhato
   egy ilyen allomany:

 % cat ~/.klogin
 janos@EXAMPLE.COM
 jozsef@EXAMPLE.COM

   Ezzel a konfiguracioval barki, aki janos felhasznalokent vagy
   jozsef felhasznalokent (a kinit parancson keresztu:l)
   hitelesitette magat EXAMPLE.COM o:vezetbo"l, ezen a rendszeren
   (grunt) bejelentkezhet a janos nevu" felhasznalokent vagy
   hozzaferhet az allomanyaihoz az rlogin(1), rsh(1) vagy rcp(1)
   hasznalataval.

   Peldaul janos most egy masik Kerberost hasznalo rendszerre
   jelentkezik be:

 % kinit
 MIT Project Athena (grunt.example.com)
 Password:
 % rlogin grunt
 Last login: Mon May  1 21:14:47 from grumble
 Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
         The Regents of the University of California.   All rights reserved.

 FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995

   Vagy jozsef jelentkezik be ugyanazon a gepen janos hozzaferesevel
   (a janos nevu" felhasznalonak a fentebb bemutatt .klogin allomany
   talalhato a ko:nyvtaraban es a Kerberos u:zemelteteseert felelo"s
   szemely letrehozott egy jozsef nevu" szereplo"t egy null
   peldannyal):

 % kinit
 % rlogin grunt -l janos
 MIT Project Athena (grunt.example.com)
 Password:
 Last login: Mon May  1 21:16:55 from grumble
 Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
         The Regents of the University of California.   All rights reserved.
 FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995

     --------------------------------------------------------------

14.8. Kerberos5

   Irta: Tillman Hodgson. Eredetileg irta: Mark Murray.

   A FreeBSD 5.1 utan ko:vetkezo" mindegyik FreeBSD kiadas mar csak a
   Kerberos5 tamogatast tartalmaz. Ezert bennu:k csak a Kerberos5
   talalhato meg, es a beallitasa sok szempontbol hasonlit a
   KerberosIV beallitasahoz. A most ko:vetkezo" informaciok csak es
   kizarolag a FreeBSD 5.0 kiadas utan ko:vetkezo"kben talalhato
   Kerberos5 valtozatra vonatkoznak. A KerberosIV szolgaltatasait a
   felhasznalok csomagkent, a security/krb4 porton keresztu:l erhetik
   el.

   A Kerberos egy halozati kiegeszito" rendszer/protokoll, amivel a
   felhasznalok egy biztonsagos szerveren keresztu:l kepesek magukat
   azonositani. A tavoli bejelentkezesek, tavoli masolasok, a
   rendszer belu:li vedett masolasok valamint egyeb nagyon kockazatos
   feladatok, szolgaltatasok biztonsaga es felu:gyelete igy jelento"s
   mertekben javithato.

   A Kerberos ugy irhato le, mint az szemelyazonossagok
   elleno"rzesere feljogositott rendszer. Vagy tekinthetju:k egy
   megbizhato ku:lso" megfigyelo" altal vegzett hitelesitesi
   rendszernek is. A Kerberos csak egyetlen funkciot kinal fel -- ez
   a felhasznalok biztonsagos hitelesitese a halozaton. Viszont nem
   nyujt semmilyen felhatalmazasi (mit csinalhatnak a felhasznalok)
   vagy vizsgalati (mit csinaltak vegu:l a felhasznalok)
   leheto"seget. Miutan egy kliens es a szerver a Kerberos
   hasznalataval azonositottak egymast, az egymas ko:zt folyo
   kommunikaciojuk titkositasaval kepesek mego"rzi az ataramlo adatok
   sertetlenseget es lehallgathatatlansagat.

   Ennek tu:kreben a Kerberos hasznalata csak mas olyan biztonsagi
   modszerekkel egyu:ttesen javasolt, amelyek felhatalmazast es
   vizsgalati szolgaltatasokkal is rendelkeznek.

   A most ko:vetkezo" utasitasok arra igyekeznek utmutatast adni,
   hogy mikent hasznaljuk a FreeBSD-vel egyu:tt terjesztett Kerberos
   verziot. Azonban a teljes leirast csak a temahoz tartozo man
   oldalak atolvasasaval egyu:tt kapjuk meg.

   A Kerberos telepitesenek bemutatasahoz az alabbi nevtereket fogjuk
   hasznalni:

     * A DNS tartomany ("zona") az example.org lesz.

     * A Kerberos o:vezet az EXAMPLE.ORG lesz.

     Megjegyzes: Kerju:k, hogy meg abban az esetben is valodi
     tartomanyneveket adjuk meg, amikor a Kerberos hasznalatat csak a
     belso" halozaton tervezzu:k. Ezzel elkeru:lhetju:k az egyes
     Kerberos o:vezetek egyu:ttmu"ko:dese soran felmeru:lo" DNS
     problemakat.

     --------------------------------------------------------------

  14.8.1. A Kerberos to:rtenete

   A Kerberost az MIT hozta letre a halozati biztonsaggal kapcsolatos
   problemak egyik megoldasakent. A Kerberos ero"s titkositast
   hasznal, ezert a kliensek kepesek egy nem biztonsagos halozaton is
   azonositani magukat a szerver fele (es forditva).

   A Kerberos egyarant utal egy halozati protokoll nevere es azokra
   programokra, amelyek implementaljak (peldaul Kerberos telnet). Az
   5 a protokoll jelenlegi verzioja, amit az RFC 1510 ir le.

   A protokollnak szamos szabad valtozata letezik, rengeteg tipusu
   operacios rendszerre. A Massachusettsi Mu"szaki Intezet
   (Massachusetts Institute of Technology, MIT), ahol a Kerberost
   eredetileg kifejlesztettek, napjainkban is folytatja a sajat
   Kerberos csomagjanak fejleszteset. To:bbnyire az Egyesu:lt
   Allamokban hasznaljak titkositasra, mivel regebben az amerikai
   kiviteli korlatozasok voltak ra ervenyesek. Az MIT Kerberos
   valtozata portkent erheto" el (security/krb5). A Heimdal Kerberos
   egy masik 5 verzioju implementacio, amit a kiviteli korlatozasok
   elkeru:lese erdekeben hatarozottan az Egyesu:lt Allamokon kivu:l
   fejlesztettek ki (ezert gyakran megtalalhatjuk a ku:lo:nbo:zo" nem
   kereskedelmi UNIX variansokban). A Heimdal Kerberos terjesztes
   portkent elerheto" (security/heimdal) es kisebb meretben a FreeBSD
   alaptelepitesenek is resze.

   Mivel ezzel az irassal a legto:bb felhasznalot kivanjuk segiteni,
   ezert a ko:vetkezo" utasitasok a FreeBSD telepiteseben mellekelt
   Heimdal terjesztes hasznalatat feltetelezik.

     --------------------------------------------------------------

  14.8.2. A Heimdal kulcselosztojanak telepitese

   A kulcseloszto ko:zpont (Key Distribution Center, avagy KDC) az a
   centralizalt hitelesitesi szolgaltatas, amit a Kerberos nyujt --
   lenyegeben az a szamitogep, amely Kerberos-jegyeket bocsajt ki. A
   KDC "megbizhatonak" tekintheto" a Kerberos altal kialakitott
   o:vezetben levo" to:bbi szamitogep szamara, ezert vedelme
   kiemelten fontos.

   Itt jegyeznenk meg, hogy habar a Kerberos szerver futtatasa nagyon
   keves szamitogepes ero"forrast igenyel, ennek ellenere biztonsagi
   szempontbol egy ku:lo:n szamitogepet javasoljunk a kulcseloszto
   szerepenek beto:ltesehez.

   Mielo"tt nekifognank a KDC konfiguralasanak, elleno"rizzu:k, hogy
   az /etc/rc.conf tartalmazza a KDC mu"ko:desehez szu:kseges
   beallitasokat (az eleresi utakat termeszetesen a sajat
   rendszeru:nk szerint allitsuk be):

 kerberos5_server_enable="YES"
 kadmind5_server_enable="YES"

   A ko:vetkezo" lepesben vegyu:k szemu:gyre a Kerberos beallitasait
   tartalmazo /etc/krb5.conf allomanyt:

 [libdefaults]
     default_realm = EXAMPLE.ORG
 [realms]
     EXAMPLE.ORG = {
         kdc = kerberos.example.org
         admin_server = kerberos.example.org
     }
 [domain_realm]
     .example.org = EXAMPLE.ORG

   Vegyu:k eszre, hogy az itt szereplo" /etc/krb5.conf allomany
   szerint a kulcselosztonk teljes halozati neve
   kerberos.example.org. Ha a kulcselosztonknak nem ez a neve, akkor
   a zonakat leiro allomanyba vegyu:nk meg fel egy ilyen CNAME
   (alnev) bejegyzest.

     Megjegyzes: Ha egy nagyobb halozatban vagyunk, ahol a DNS
     szervert is megfelelo"en beallitottak, akkor az imenti pelda
     ennyire leszu"kitheto":

 [libdefaults]
       default_realm = EXAMPLE.ORG

     Itt mar a ko:vetkezo" sorokat hozzaadtak example.org zonat leiro
     allomanyhoz:

 _kerberos._udp      IN  SRV     01 00 88 kerberos.example.org.
 _kerberos._tcp      IN  SRV     01 00 88 kerberos.example.org.
 _kpasswd._udp       IN  SRV     01 00 464 kerberos.example.org.
 _kerberos-adm._tcp  IN  SRV     01 00 749 kerberos.example.org.
 _kerberos           IN  TXT     EXAMPLE.ORG

     Megjegyzes: A kliensek csak akkor lesznek kepesek elerni a
     Kerberos szolgaltatasait, ha vagy ko:telezo" jelleggel megadunk
     egy teljesen beallitott /etc/krb5.conf allomanyt, vagy egy
     minimalis /etc/krb5.conf allomanyt es egy helyesen beallitott
     DNS szervert hasznalunk.

   Ezutan letrehozzuk a Kerberos adatbazisat. Ez az adatbazis
   tartalmazza az o:sszes szereplo" kulcsat a mesterkulcssal
   titkositva. Erre a jelszora nem kell feltetlenu:l emlekeznu:nk,
   mivel ez egy allomanyban tarolodik (/var/heimdal/m-key). A
   mesterkulcsot a kstash parancs kiadasaval es egy jelszo
   megadasaval tudjuk letrehozni.

   Ahogy a mesterkulcs elkeszu:lt, a kadmin parancs -l (mint
   "lokalis", azaz helyi) opciojaval inicializalni tudjuk az
   adatbazist. Ez az opcio arra utasitja a kadmin programot, hogy ne
   a kadmind halozati szolgaltatast hasznalja, hanem ko:zvetlenu:l az
   adatbazis allomanyait modositsa. Ezzel oldhato meg az adatbazis
   kezdeti letrehozasanak problemaja. Miutan megkaptuk a kadmin
   parancssorat, az o:vezetu:nkho:z tartozo adatbazis
   inicializalasahoz adjuk ki az init parancsot.

   Vegu:l, meg mindig a kadmin parancssorat hasznalva, az add
   paranccsal hozzuk letre az elso" szereplo"nket. Egyelo"re erju:k
   be az alapertelmezett ertekekkel, a modify paranccsal keso"bb
   ugyis meg tudjuk valtoztatni ezeket. Hozzatesszu:k, hogy itt a ?
   parancs segitsegevel barmikor lekerhetju:k az opciok ismerteteset.

   Pelda egy adatbazis letrehozasara:

 # kstash
 Master key: xxxxxxxx
 Verifying password - Master key: xxxxxxxx

 # kadmin -l
 kadmin> init EXAMPLE.ORG
 Realm max ticket life [unlimited]:
 kadmin> add tillman
 Max ticket life [unlimited]:
 Max renewable life [unlimited]:
 Attributes []:
 Password: xxxxxxxx
 Verifying password - Password: xxxxxxxx

   Most mar ideje elinditani a KDC szolgaltatasait. Ezeket az
   /etc/rc.d/kerberos start es /etc/rc.d/kadmind start parancsok
   kiadasaval tudjuk felhozni. Megjegyezzu:k, hogy most meg semmilyen
   kerberizalt demont nem kell elinditanunk. Ellenben igyekezzu:nk
   elleno"rizni a KDC mu"ko:do"kepesseget azzal, hogy KDC
   parancssorabol keru:nk egy jegyet a frissen hozzaadott
   szereplo"nknek (felhasznalonknak) es kilistazzuk:

 % kinit tillman
 tillman@EXAMPLE.ORG's Password:

 % klist
 Credentials cache: FILE:/tmp/krb5cc_500
         Principal: tillman@EXAMPLE.ORG

   Issued           Expires          Principal
 Aug 27 15:37:58  Aug 28 01:37:58  krbtgt/EXAMPLE.ORG@EXAMPLE.ORG

   Miutan vegeztu:nk, nyugodtan to:ro:lhetju:k a jegyet:

 % kdestroy

     --------------------------------------------------------------

  14.8.3. Szerverek kerberizalasa a Heimdal hasznalataval

   Ehhez elo"szo:r is szu:ksegu:nk lesz a Kerberos konfiguracios
   allomanyanak, az /etc/krb5.conf masolatara. Ezt ugy tudjuk
   megtenni, ha egyszeru"en atmasoljuk a kulcselosztorol az egyik
   kliensre valamilyen megbizhato modon (vagy az scp(1) programhoz
   hasonlo halozati segedprogramok, vagy peldaul fizikailag egy
   floppy lemez hasznalataval).

   Ezutan szu:ksegu:nk lesz egy /etc/krb5.keytab nevu" allomanyra. Ez
   az alapveto" ku:lo:nbseg a kerberizalt demonokat felkinalo szerver
   es egy munkaallomas ko:zt -- a szervernek rendelkeznie kell egy
   keytab allomannyal. Ez az allomany tartalmazza a szerver kulcsat,
   amivel igy a kulcselosztoval ko:lcso:no:sen azonositani tudjak
   egymast. Ezt a szerverre biztonsagosan kell eljuttatnunk, mivel
   ennek napvilagra keru:lesevel a szerver vedelme komoly veszelybe
   keru:l. Tehat, ha egy titkositas nelku:li csatornan, peldaul FTP-n
   keresztu:l visszu:k at, akkor kifejezetten rossz o:tlet.

   A szerverre altalaban a kadmin program hasznalataval erdemes
   atvinni a keytab allomanyt. Ez azert is hasznos, mert ehhez a
   kadmin segitsegevel letre kell hoznunk a befogado szereplo"t is (a
   kulcseloszto a krb5.keytab allomany vegen).

   Vegyu:k eszre, hogy mar kaptunk egy jegyet es ezzel a jeggyel
   jogosultaknak kell lennu:nk a kadmind.acl allomany kadmin felu:let
   hasznalatara. A hozzaferest vezerlo" listak (ACL-ek) tervezesevel
   kapcsolatban olvassuk el Heimdal info oldalan talalhato "Remote
   administration" cimu" szakaszt (info heimdal). Amennyiben nem
   kivanjuk engedelyezni a kadmin tavoli elereset, egyszeru"en csak
   csatlakozzunk valamilyen biztonsagos modon (helyi konzolon, ssh(1)
   vagy egy kerberizalt telnet(1) hasznalataval) a kulcselosztohoz,
   es a kadmin -l paranccsal vegezzu:k el helyben az adminisztraciot.

   Miutan telepitettu:k az /etc/krb5.conf allomanyt, a Kerberos
   szerverro"l el tudjuk erni a kadmin felu:letet. Az add
   --random-key paranccsal most mar hozzaadhatjuk a szerver befogado
   szereplo"jet es az ext paranccsal ki tudjuk vonni a szerver
   befogado szereplo"jet a sajat keytab allomanyabol. Peldaul:

 # kadmin
 kadmin> add --random-key host/myserver.example.org
 Max ticket life [unlimited]:
 Max renewable life [unlimited]:
 Attributes []:
 kadmin> ext host/myserver.example.org
 kadmin> exit

   Itt jegyeznenk meg, hogy az ext parancs (az "extract" ro:vditese)
   a kivont kulcsot alapertelmezes szerint az /etc/krb5.keytab
   allomanyba menti ki.

   Ha a kulcseloszton nem fut a kadmind szolgaltatas (valoszinu"leg
   biztonsagi okokbol) es ezert tavolrol nem tudjuk elerni a kadmin
   felu:letet, akkor igy tudjuk ko:zvetlenu:l hozzaadni a befogado
   szereplo"t (host/myserver.EXAMPLE.ORG), majd kivonatolni azt egy
   ideiglenes allomanyba (elkeru:lve az /etc/krb5.keytab
   felu:lirasat):

 # kadmin
 kadmin> ext --keytab=/tmp/example.keytab host/myserver.example.org
 kadmin> exit

   Ezutan valamilyen biztonsagos eszko:zzel (peldaul scp vagy floppy
   hasznalataval) at tudjuk masolni keytab allomanyt a szerverre. A
   kulcseloszton levo" keytab felu:lirasat elkeru:lendo", ne
   feledkezzu:nk el egy megfelelo" nev megadasarol sem.

   Ezen a ponton mar a szerver kepes felvenni a kapcsolatot a
   kulcselosztoval (a krb5.conf allomany miatt) es bizonyitani a
   szemelyazonossagat (a krb5.keytab allomany miatt). Igy tehat
   keszen allunk a szolgaltatasok kerberizalasara. Ebben a peldaban
   most a telnet szolgaltatast vesszu:k celba ugy, hogy elo"szo:r az
   /etc/inetd.conf allomanyba berakjuk az alabbi sort, majd
   ujrainditjuk az inetd(8) szolgaltatast az /etc/rc.d/inetd restart
   paranccsal:

 telnet    stream  tcp     nowait  root    /usr/libexec/telnetd  telnetd -a user

   Itt az a legfontosabb, hogy az -a (mint authentication, azaz
   hitelesites) parametert a "user" beallitassal adjuk meg. A
   telnetd(8) man oldalan olvashatunk ennek pontos reszleteiro"l.

     --------------------------------------------------------------

  14.8.4. Kliensek kerberizalasa a Heimdal hasznalataval

   A kliensek beallitasa szinte majdnem gyerekjatek. A Kerberos
   beallitasahoz egyedu:l az /etc/krb5.conf allomanyra lesz
   szu:ksegu:nk. Valamilyen biztonsagos eszko:zzel masoljuk at a
   kulcselosztorol a kliensre.

   Ugy tudjuk letesztelni klienst, ha megprobaljuk rola kiadni a
   kinit, klist es kdestroy parancsokat a fentebb letrehozott
   szereplo" jegyenek megszerzesehez, lekerdezesehez es
   megsemmisitesehez. A Kerberos hasznalataval megprobalkozhatunk
   csatlakozni valamelyik kerberizalt szerverre is, ha viszont ez nem
   mu"ko:dik meg egy jegy megszerzese utan sem, akkor a gond
   to:bbnyire a szerverrel van, nem pedig a klienssel vagy a
   kulcselosztoval.

   Amikor egy telnet vagy egy hozza hasonlo alkalmazast tesztelu:nk,
   egy csomaglehallgato (mint amilyen peldaul a tcpdump(1))
   elinditasaval gyo"zo:dju:nk meg rola, hogy a jelszavak ilyenkor
   titkositva mennek at. Probaljuk meg titkositani a teljes
   kommunikaciot a telnet -x parameterevel (hasonloan az ssh
   parancshoz).

   Alapbol meg szamos mas kiegeszito" Kerberos kliensalkalmazas is
   telepito"dik. Ezeken erezheto" meg valojaban az alaprendszerhez
   tartozo Heimdal valtozat "minimalitasa": ebben a telnet az
   egyedu:li kerberizalt szolgaltatas.

   A Heimdal port igyekszik potolni a hianyzo klienseket a
   kerberizalt ftp, rsh, rcp, rlogin es nehany keveseb ismert program
   telepitesevel. Az MIT valtozat portja szinten tartalmazza a
   Kerberos kliensek teljes kellektarat.

     --------------------------------------------------------------

  14.8.5. A felhasznalok konfiguracios allomanyai: a .k5login es a
  .k5users

   Altalaban az o:vezetben talalhato felhasznalok mindegyikehez
   tartozik egy Kerberos-szereplo" (mint peldaul a
   tillman@EXAMPLE.ORG), ami a felhasznalo helyi hozzaferesere mutat
   (mint peldaul a tillman nevu" helyi hozzaferes). A telnet es a
   hozza hasonlo kliensalkalmazasok altalaban nem igenyelnek
   felhasznalot vagy szereplo"t.

   Elo"fordulhat azonban, hogy valaki olyan szeretne elerni egy helyi
   felhasznalo hozzafereset, aki nem rendelkezik a hozzatartozo
   Kerberos-szereplo"vel. Peldaul a tillman@EXAMPLE.ORG nevu"
   felhasznalo el szeretne erni a helyi szamitogepen levo"
   webdevelopers hozzaferest. Mas szereplo"k is elerhetik a helyi
   hozzafereseket.

   A problema megoldasahoz a felhasznalok ko:nyvtaraban talalhato
   .k5login es a .k5users allomanyok hasznalhatoak a .host es .rhosts
   allomanyok kombinaciojahoz hasonloan. Peldaul a .k5login igy nez
   ki:

 tillman@example.org
 jdoe@example.org

   Ezt a webdevelopers nevu" helyi felhasznalo ko:nyvtaraban kell
   elhelyeznu:nk, igy a felsorolt szereplo"t megosztott jelszo
   hasznalata nelku:l kepesek elerni a hozzaferest.

   Az emlitett parancsok man oldalanak elolvasasa ajanlott.
   Megjegyezzu:k, hogy a ksu man oldal foglalkozik a .k5users
   allomannyal.

     --------------------------------------------------------------

  14.8.6. Tippek, tru:kko:k a Kerberos hasznalatarol es hibaelharitas

     * Akar a Kerberos Heimdal vagy az MIT valtozatat hasznaljuk, ne
       felejtsu:k ugy beallitani a PATH ko:rnyezeti valtozoban
       felsorolt eleresi utakat, hogy a kliensalkalmazasok
       kerberizalt valtozatai a rendszerben hasznalatos verziok ele
       keru:ljenek.

     * Az o:vezetben minden szamitogep oraja ugyanugy jar? Ha nem,
       akkor a hitelesites cso"do:t mondhat. A 29.10 Szakaszbol
       tudhatjuk meg hogyan szinkronizaljunk orakat az NTP
       segitsegevel.

     * Az MIT es a Heimdal verziok a kadmin kivetelevel remeku:l
       megvannak egymassal, mivel az altala hasznalt protokollt meg
       nem szabvanyositottak.

     * Ha megvaltoztatjuk a gepu:nk halozati nevet, akkor a ugyanigy
       a host/ szereplo"nket is meg kell valtoztatni es frissiteni a
       keytab allomanyunkat. Ez olyan specialis keytab bejegyzesekre
       is vonatkozik, mint peldaul az Apache www/mod_auth_kerb
       moduljahoz tartozo www/ szereplo".

     * Az o:vezetu:nkben levo" o:sszes szamitogepnek (mind a ket
       iranyba) feloldhato DNS nevvel kell rendelkeznie (vagy
       legalabb egy /etc/hosts allomannyal). Erre a CNAME rekord
       megfelelo", de az A es PTR rekordoknak mindenkeppen rendben
       kell lenniu:k. Az ilyenkor keletkezo" hibau:zenet nem eppen
       fogja meg a lenyeget: "Kerberos5 refuses authentication
       because Read req failed: Key table entry not found".

     * A kulcseloszto szamara klienskent viselkedo" bizonyos
       operacios rendszerek nem allitjak be megfelelo"en a ksu
       engedelyeit, ezert nem lehet root jogokkal futtatni. Ezert a
       ksu parancs nem fog mu"ko:dni, ami alapveto"en nem egy rossz
       o:tlet, de idegesito". Ez nem a kulcseloszto hibaja.

     * Ha a Kerberos MIT valtozatat hasznaljuk es a meg akarjuk
       hosszabbitani a szereplo"knek kiadott jegyek elettartamat az
       alapertelmezett tiz orarol, akkor a kadmin felu:leten a
       modify_principal paranccsal tudjuk megvaltoztatni mind a
       kerdeses szereplo", mind pedig a krbtgt jegyeinek
       elettartamanak maximumat. Ezt ko:veto"en a szereplo" a kinit
       -l opciojaval tud egy nagyobb elettartammal rendelkezo" jegyet
       kerni.

     * Megjegyzes: Amikor egy kulcselosztoval kapcsolatos hibat
         probalunk felderiteni a csomagok lehallgatasaval, es a
         munkaallomasunkrol kiadjuk a kinit parancsot, akkor arra
         lehetu:nk figyelmesek, hogy a TGT mar egybo"l a kinit
         inditasakor atku:ldesre keru:l -- meg mielo"tt egyaltalan
         megadtuk volna a jelszavunkat! Ezt azzal lehet magyarazni,
         hogy a Kerberos szerver barmilyen hitelesitetlen keresre
         elku:ld egy TGT-t (Jegyado jegy, azaz Ticket Granting
         Ticket). Azonban mindegyik ilyen TGT a felhasznalo
         jelszavabol szarmaztatott kulccsal titkositodik. Ezert amit
         a felhasznalo jelszokent megad, nem megy el a
         kulcselosztonak, hanem vele a kinit a mar megkapott TGT-t
         kodolja ki. Amennyiben a visszakodolas egy ervenyes
         ido"belyeggel rendelkezo", hasznalhato jegyet eredmenyez,
         akkor a felhasznalo ervenyes Kerberos hitelesitest szerez.
         Ez a hitelesites magaban foglal egy kulcsot, amellyel a
         keso"bbiekben a Kerberos szerverekkel tudjuk felvenni
         biztonsagos modon a kapcsolatot, es rajta kivu:l egy ujabb
         jegyado jegyet, amelyet a Kerberos szerver a sajat kulcsaval
         titkositott. A titkositas masodik vonala a felhasznalo
         szamara ismeretlen, de segitsegevel a Kerberos szerer kepes
         elleno"rizni az egyes jegyado jegyek hitelesseget.

     * Ha a jegyeket hosszabb (peldaul egyhetes) elettartammal
       akarjuk hasznalni es a jegyeket tarolo gephez OpenSSH
       segitsegevel csatlakozunk, akkor mindenkeppen elleno"rizzu:k,
       hogy az sshd_config allomanyban a Kerberos TicketCleanup
       beallitasanak erteke no, masku:lo:nben a kijelentkezes utan
       automatikusan to:rlo"dnek a jegyeink.

     * Ne hagyjuk figyelmen kivu:l azt sem, hogy a befogado
       szereplo"k is rendelkezhetnek nagyobb elettartamu jegyekkel.
       Ha a felhasznalonkhoz tartozo szereplo" jegye peldaul egy het
       alatt evu:l el, de a szamitogep, amire bejelentkezu:k, csupan
       kilenc oraig tartja eletben ezeket, akkor a jegyeket tarolo
       gyorsitotarunkban hamarabb elevu:l a hozzatartozo jegy, ami
       miatt pedig hibak keletkeznek.

     * Ha a rossz jelszavak hasznalata ellen beallitjuk a krb5.dic
       allomanyt (erro"l a kadmind man oldalan talalunk egy ro:vid
       leirast), akkor nem szabad elfelejteni, hogy ez csak olyan
       szereplo"kre vonatkozik, akiknek a jelszavara is allitottunk
       be szabalyozasokat. A krb5.dict allomanyok felepitesi nem
       bonyolult: minden sorban egyetlen karakterlanc szerepel.
       Erdemes lehet peldaul letrehozni ezen a neven egy szimbolikus
       linket a /usr/share/dict/words allomanyra.

     --------------------------------------------------------------

  14.8.7. Elteresek az MIT porttol

   A Heimdal es az MIT valtozatok ko:zti egyik legnagyobb elteres a
   kadmin programmal kapcsolatban van, ami eltero" (de egyebkent
   ekivalens) parancskeszlettel rendelkezik es mas protokollt
   hasznal. Ennek komoly ko:vetkezmenye, hogy ha az MIT-fele
   kulcselosztot hasznaljuk, akkor azt a Heimdal kadmin felu:letevel
   nem tudjuk tavolrol adminisztralni (es vica versa).

   A kliensalkalmazasok parameterezese is elterhet ugyanazon
   feladatoknal. Ezert velu:k kapcsolatban az MIT Kerberos honlapja
   (http://web.mit.edu/Kerberos/www/) a mervado. Vigyazzunk az
   eleresi utakkal: az MIT port magat alapertelmezes szerint a
   /usr/local ko:nyvtarba telepiti, ezert az altaluk kivaltani kivant
   "normalis" rendszerprogramokat esetleg hamarabb talalja meg a
   rendszer, ha nem jol allitottuk be a PATH ko:rnyezeti valtozonkat.

     Megjegyzes: Ha nem ertju:k, hogy miert mu"ko:dnek olyan furcsan
     a telnetd es a klogind altal kezelt bejelentkezesek, akkor
     olvassuk el a FreeBSD security/krb5 portjaval telepu:lo" MIT
     valtozat /usr/local/share/doc/krb5/README.FreeBSD allomanyt
     (angolul). Az a legfontosabb, hogy a "incorrect permissions on
     cache file" hiba eltu:ntetesehez a login.krb5 binarist kell
     hasznalnunk, igy a tovabbitott jogosultsagoknak megfelelo"en at
     tudja allitani a tulajdonost.

   Az rc.conf allomanyt is modositani kell a ko:vetkezo" beallitas
   kialakitasahoz:

 kerberos5_server="/usr/local/sbin/krb5kdc"
 kadmind5_server="/usr/local/sbin/kadmind"
 kerberos5_server_enable="YES"
 kadmind5_server_enable="YES"

   Erre azert van szu:kseg, mert a Kerberos MIT valtozata a
   /usr/local ko:nyvtaron belu:lre telepiti fel a hozzatartozo
   alkalmazasokat.

     --------------------------------------------------------------

  14.8.8. A Kerberosban talalt korlatozasok enyhitese

     --------------------------------------------------------------

    14.8.8.1. A Kerberos a "mindent vagy semmit" megko:zelitest ko:veti

   A halozaton minden szolgaltatast modositanunk kell ahhoz, hogy
   egyu:tt tudjanak mu"ko:dni a Kerberosszal (vagy valamilyen mas
   modon vedenu:nk kell ezeket a tamadasok ellen), ku:lo:nben a
   felhasznalok jogait el lehet lopni vagy ujra fel lehet hasznalni.
   Erre jo pelda lehet az o:sszes tavoli parancssoros eleres (peldaul
   az rsh valamint a telnet) kerberizalasa, de a jelszavakat
   titkositatlanul ku:ldo" POP3 levelezo" szerver kihagyasa.

     --------------------------------------------------------------

    14.8.8.2. A Kerberos az egyfelhasznalos munkaallomasok szamara
    keszu:lt

   To:bbfelhasznalos ko:rnyezetben a Kerberos mar nem annyira
   biztonsagos. Ez azert mondhato el, mert a jegyeket a mindenki
   altal olvashato /tmp ko:nyvtarban tarolja. Ha az adott felhasznalo
   szamitogepet egyszerre to:bb emberrel is megosztja (tehat
   to:bbfelhasznalos), akkor a felhasznalo jegyeit egy masik
   felhasznalo barmikor lemasolhatja (ellophatja).

   Ezt a -c opcio utan megadott allomanynevvel vagy (inkabb) a
   KRB5CCNAME ko:rnyezeti valtozo megfelelo" beallitasaval tudjuk
   athidalni, habar ezt ritkan teszik is meg. Ha a felhasznalok
   ko:nyvtaraban es a megfelelo" engedelyekkel taroljuk ezeket a
   jegyeket, akkor nemileg visszaszorithatjuk a problema kockazatat.

     --------------------------------------------------------------

    14.8.8.3. A kulcseloszto a rendszer legsebezheto"bb pontja

   A rendszer kialakitasabol fakadoan a kulcselosztonak legalabb
   annyira megbizhatonak kell lennie, mint a rajta levo" ko:zponti
   jelszoadatbazisnak. A kulcseloszton semmilyen mas szolgaltatas nem
   futhat es fizikailag is biztonsagba kell helyezni. A kockazat
   nagy, mivel a Kerberos az o:sszes jelszot ugyanazzal a kulcssal (a
   "mesterkulcssal") titkositja, amelyet a kulcseloszto egy
   allomanyban tarol.

   Szeljegyzet gyanant hozzatesszu:k, hogy a mesterkulcs elvesztese
   nem annyira rossz, mint azt elso" gondolnank. A mesterkulcsot
   csupan a veletlenszam-generator inicializalasahoz hasznaljak a
   Kerberos adatbazisanak titkositasakor. Amig a kulcselosztohoz nem
   tudnak illetektelenek hozzaferni, addig nem tudnak sokat kezdeni a
   mesterkulccsal.

   Mellesleg ha a kulcseloszto nem elerheto" (talan pontosan egy DoS
   tamadas vagy eppen halozati problemak miatt), akkor a hitelesites
   nem vegezheto" el, mivel igy a hozza szu:kseges halozati
   szolgaltatasok sem hasznalhatoak. Ez remek eszko:z egy DoS
   tamadashoz. Ezen to:bb (egy ko:zponti es egy vagy to:bb
   alarendelt) kulcseloszto telepitesevel, valamint a masodlagos vagy
   tartalekkent hasznalt hitelesitesi eszko:zo:k (a PAM erre
   to:keletes) ko:ru:ltekinto" megvalositasaval enyhithetu:nk.

     --------------------------------------------------------------

    14.8.8.4. A Kerberos hianyossagai

   A Kerberos reven a felhasznalok, szamitogepek es szolgaltatasok
   tudjak egymast hitelesiteni. Ellenben semmilyen eszko:zt nem kinal
   fel a kulcseloszto hitelessegenek elleno"rzesere. Igy tehat
   (peldaul) egy elteritett kinit kepes ellopni az o:sszes
   felhasznaloi nevet es jelszot. Az ilyen incidensek elkeru:lesere a
   security/tripwire es a hozza hasonlo segedprogramok segitsegevel
   lehet mego"rizni a rendszer sertelenseget.

     --------------------------------------------------------------

  14.8.9. Ero"forrasok es tovabbi informaciok

     * A Kerberos GYIK (angolul)

     * Egy hitelesitesi rendszer kidolgozasa: parbeszed negy szinben
       (angolul)

     * RFC 1510: A Kerberos halozati hitelesitesi szolgaltatas (V5)
       (angolul)

     * Az MIT Kerberos holnapja (angolul)

     * A Heimdal Kerberos honlapja (angolul)

     --------------------------------------------------------------

14.9. OpenSSL

   Irta: Tom Rhodes.

   A FreeBSD-hez adott OpenSSL az egyik olyan tenyezo", amit a
   legto:bb felhasznalo figyelmen kivu:l hagy. Az OpenSSL egy
   titkositasi reteget nyujt a hagyomanyos kommunikacios csatorna
   felett, igy rengeteg halozati alkalmazasba es szolgaltatasba bele
   lehet szo"ni.

   Az OpenSSL felhasznalhato to:bbek ko:zt a levelezo" kliensek
   titkositott hitelesitesere, hitelkartyas fizetesek weben
   keresztu:li lebonyolitasara alkalmas, es meg sok minden masra. Sok
   port, ko:ztu:k a www/apache13-ssl es a mail/sylpheed-claws is
   felajanlja az OpenSSL felhasznalasat.

     Megjegyzes: A legto:bb esetben a Portgyu"jtemeny megprobalja
     leforditani a security/openssl portot, hacsak a
     WITH_OPENSSL_BASE valtozot hatarozottan a "yes" ertekre nem
     allitjuk.

   A FreeBSD-hez mellekelt OpenSSL ismeri a Secure Sockets Layer
   v2/v3 (SSLv2/SSLv3) es Transport Layer Security v1 (TLSv1)
   halozatbiztonsagi protokollokat, es altalanos celu titkositasi
   ko:nyvtarkent is alkalmazhato.

     Megjegyzes: Noha az OpenSSL ismeri az IDEA algoritmusat is, az
     Egyesu:lt Allamokban ervenyben levo" szabadalmak miatt
     alapertelmezes szerint nem engedelyezett. A hasznalatahoz el
     kell olvasni a hozzatartozo licencet, es ha elfogadjuk a benne
     foglaltakat, akkor allitsuk be a MAKE_IDEA valtozot a make.conf
     allomanyban.

   Az OpenSSL-t leginkabb a szoftverek tanusitvanyainak
   elkeszitesehez hasznaljak. Ilyen tanusitvannyokkal lehet
   szavatolni, hogy az erte felelo"s ceg vagy egyen valoban
   megbizhato es nem szelhamos. Amennyiben a kerdeses tanusitvanyt
   nem vizsgalta be valamelyik "tanusitvanyok hitelesitesevel
   foglalkozo hatosag" (Certificate Authority, vagy CA), akkor erro"l
   altalaban kap egy figyelmeztetest a felhasznalo. A tanusitvanyokat
   hitelesito" cegek, mint peldaul a VeriSign, irjak ala ezeket a
   tanusitvanyokat es ezzel ervenyesitik az egyes cegek vagy egyenek
   megbizhatosagat. Ez ugyan penzbe keru:l, de hasznalatuk egyaltalan
   nem is ko:telezo". Azonban az atlagosnal paranoidabb felhasznalok
   szamara megnyugvast jelenthet.

     --------------------------------------------------------------

  14.9.1. Tanusitvanyok elo"allitasa

   A tanusitvanyok letrehozasara a ko:vetkezo" parancs all
   rendelkezesre:

 # openssl req -new -nodes -out req.pem -keyout cert.pem
 Generating a 1024 bit RSA private key
 ................++++++
 .......................................++++++
 writing new private key to 'cert.pem'
 -----
 You are about to be asked to enter information that will be incorporated
 into your certificate request.
 What you are about to enter is what is called a Distinguished Name or a DN.
 There are quite a few fields but you can leave some blank
 For some fields there will be a default value,
 If you enter enter '.', the field will be left blank.
 -----
 Country Name (2 letter code) [AU]:orszagnev (ketbetu"s koddal)
 State or Province Name (full name) [Some-State]:allam vagy tartomany teljes neve
 Locality Name (eg, city) []:telepu:les neve
 Organization Name (eg, company) [Internet Widgits Pty Ltd]:szervezet neve
 Organizational Unit Name (eg, section) []:szervezeti egyseg neve
 Common Name (eg, YOUR name) []:altalanos nev (halozati nev!)
 Email Address []:e-mail cim

 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password []:VALAMILYEN JELSZO
 An optional company name []:egy masik szervezet neve

   Az adatok bekeresere elo"tt megjeleno" figyelmezteto" u:zenet
   forditasa:

 Itt a tanusitvany igenylesevel kapcsolatos informaciokat kell
 megadnunk. Itt egy un. "ismerteto"nevet" (Distinguished
 Name, DN) kell megadnunk. Ezen kivu:l van meg nehany mas mezo" is, de
 ezeket akar u:resen is hagyhatjuk. Nehany mezo"nek van alapertelmezett
 erteke, de ha oda egy pontot irunk, akkor kito:ro:lju:k.

   A "Common Name" mezo"nel elleno"rzesi okokbol egy halozati nevet,
   tehat a szerveru:nk nevet kell megadnunk. Ha nem igy jarunk el,
   akkor lenyegeben egy hasznalhatatlan tanusitvanyt kapunk. Tovabbi
   opciok is elerheto"ek, mint peldaul a lejarati ido" (expire time)
   megadasa, a titkositasi algoritmus megvaltoztatasa stb. Ezek
   teljes listaja megtalalhato az openssl(1) man oldalon.

   Az elo"bbi parancs kiadasa utan ket allomanynak kell letrejo:nnie
   az aktualis ko:nyvtarban. A tanusitvanykerest, vagyis az req.pem
   allomanyt kell eljuttatnunk a tanusitvanyok hitelesitesevel
   foglakozo szervhez, aki majd ervenyesiti az iment megadott
   adatainkat. A masodik, cert.pem nevu" allomany a tanusitvanyhoz
   tartozo privat kulcs, amit semmilyen ko:ru:lmenyek ko:zo:tt sem
   szabad kiadnunk. Ha ez masok kezebe keru:l, akkor el tudnak
   jatszani bennu:nket (vagy a szerveru:nket).

   Amikor a hitelesito" szerv alairasa nem feltetlenu:l szu:kseges,
   akkor keszithetu:nk egy sajat magunk altal alairt tanusitvanyt is.
   Ehhez elo"szo:r is generalnunk kell egy RSA-kulcsot:

 # openssl dsaparam -rand -genkey -out sajat_RSA.kulcs 1024

   Most pedig keszitsu:nk el a hitelesito" szerv kulcsat is:

 # openssl gendsa -des3 -out hitelesito".kulcs sajat_RSA.kulcs

   Ezzel a kulccsal most gyartsunk le egy tanusitvanyt:

 # openssl req -new -x509 -days 365 -key hitelesito".kulcs -out uj.tanusitvany

   Ekkor ket uj allomany keletkezik a ko:nyvtarunkban: a hitelesito"
   szerv alairasa, a hitelesito".kulcs es maga a tanusitvany, az
   uj.tanusitvany allomany. Ezeket tegyu:k az /etc ko:nyvtaron belu:l
   egy olyan ko:nyvtarba, amelyet csak a root tud olvasni. A chmod
   paranccsal allitsunk be ra 0700-as kodu engedelyeket.

     --------------------------------------------------------------

  14.9.2. Pelda a tanusitvanyok hasznalatara

   Mire is jok ezek az allomanyok? Peldaul kitu"no"en alkalmazhatoak
   a Sendmail levelezo" szerverhez beerkezo" kapcsolatot
   titkositasara. Igy lenyegeben felszamoljuk minden olyan
   felhasznalo titkositatlan modon zajlo hitelesiteset, aki a helyi
   levelezo" szerveren keresztu:l ku:ldi a leveleit.

     Megjegyzes: Ez altalaban nem a legjobb megoldas, mivel egyes
     levelezo" kliensek hibat jeleneznek a felhasznalonak, ha nem
     rendelkezik a tanusitvannyal. A tanusitvanyok telepitesevel
     kapcsolatban olvassuk el a szoftverhez adott leirast.

   A helyi .mc allomanyba ezeket a sorokat kell beletenni:

 dnl SSL Options
 define(`confCACERT_PATH',`/etc/certs')dnl
 define(`confCACERT',`/etc/certs/uj.tanusitvany')dnl
 define(`confSERVER_CERT',`/etc/certs/uj.tanusitvany')dnl
 define(`confSERVER_KEY',`/etc/certs/hitelesito".kulcs')dnl
 define(`confTLS_SRV_OPTIONS', `V')dnl

   Itt a /etc/certs/ az a ko:nyvtar, amit tanusitvanyok es kulcsok
   helyi tarolasara hasznalunk. Vegezetu:l meg ujra kell generalnunk
   a helyi .cf allomanyokat. Ezt a /etc/mail ko:nyvtarban a make
   install parancs kiadasaval ko:nnyen elvegezhetju:k. Miutan ez
   megto:rtent, akkor Sendmailhoz tartozo demont a make restart
   parameterevel indithatjuk ujra.

   Ha minden jol ment, akkor a /var/log/maillog allomanyban nem
   talalunk egyetlen hibau:zenetet sem, es a Sendmail is megjelenik a
   futo programok ko:zo:tt.

   A telnet(1) segedprogrammal igy probalhatjuk ki a levelezo"
   szervert:

 # telnet example.com 25
 Trying 192.0.34.166...
 Connected to example.com.
 Escape character is '^]'.
 220 example.com ESMTP Sendmail 8.12.10/8.12.10; Tue, 31 Aug 2004 03:41:22 -0400 (EDT)
 ehlo example.com
 250-example.com Hello example.com [192.0.34.166], pleased to meet you
 250-ENHANCEDSTATUSCODES
 250-PIPELINING
 250-8BITMIME
 250-SIZE
 250-DSN
 250-ETRN
 250-AUTH LOGIN PLAIN
 250-STARTTLS
 250-DELIVERBY
 250 HELP
 quit
 221 2.0.0 example.com closing connection
 Connection closed by foreign host.

   Ha itt megjelenik a "STARTTLS" sor, akkor mindent sikeru:lt
   beallitanunk.

     --------------------------------------------------------------

14.10. VPN IPsec felett

   Irta: Nik Clayton.

   VPN letrehozasa FreeBSD atjarok hasznalataval ket olyan halozat
   ko:zo:tt, amelyeket egymastol az internet valaszt el.

     --------------------------------------------------------------

  14.10.1. Az IPsec bemutatasa

   Irta: Hiten M. Pandya.

   Ebben a szakaszban az IPsec beallitasanak folyamatat vazoljuk fel.
   Az IPsec beallitasahoz elengedhetetlen, hogy tisztaban legyu:nk
   egy sajat rendszermag forditasanak alapjaival (lasd 8 fejezet).

   Az IPsec egy olyan protokoll, amely az Internet Protocol (IP)
   retegere epu:l. Segitsegevel ket vagy to:bb szamitogep kepes
   biztonsagos modon tartani egymassal a kapcsolatot (innen ered a
   neve). A FreeBSD IPsec "halozati protokollkeszlete" a KAME
   implementaciojara epu:l, mely egyarant tamogatja az IPv4 es IPv6
   protokollcsaladokat.

   Az IPsec ket alprotokollbol tevo"dik o:ssze:

     * A hasznos adat biztonsagos becsomagolasa (Encapsulated
       Security Payload, ESP) soran egy szimmetrikus kriptografiai
       algoritmussal (mint peldaul Blowfish, 3DES) titkositjuk az
       IP-csomagok tartalmat, ezaltal megvedju:k ezeket az
       illetektelenekto"l.

     * A Hitelesitesi fejlec (Authentication Header, AH)
       hasznalataval megakadalyozzuk, hogy az illetektelenek
       meghamisitsak az IP csomagok fejlecet. Ezt ugy erju:k el, hogy
       kiszamolunk egy kriptografiai elleno"rzo" o:sszeget es az
       IP-csomagok fejlecenek mezo"ire egy biztonsagos fu:ggvennyel
       generalunk valamilyen ujjlenyomatot. Az ez utan ko:vetkezo"
       kiegeszito" fejlec tartalmazza ezt az ujjlenyomatot, amellyel
       a csomag hitelesitheto".

   Az ESP es az AH az alkalmazastol fu:ggo"en hasznalhato egyu:tt
   vagy ku:lo:n-ku:lo:n.

   Az IPsec akar ko:zvetlenu:l is hasznalhato ket szamitogep
   forgalmanak titkositasara (ezt Szallitasi modnak (Transport Mode)
   nevezik), vagy ket alhalozat ko:zo:tt epithetu:nk ki vele
   "virtualis tunneleket", ami remeku:l alkalmas ket vallalati
   halozat kommunikaciojanak bebiztositasara (ez a Tunnel mod (Tunnel
   Mode)). Ez utobbit egyszeru"en csak Virtualis maganhalozatkent
   (Virtual Private Network, VPN) emlegetik. A FreeBSD IPsec
   alrendszerero"l az ipsec(4) man oldalon talalhatunk tovabbi
   informaciokat.

   A rendszermag IPsec tamogatasanak aktivalasahoz a ko:vetkezo"
   parametereket kell beletennu:nk a konfiguracios allomanyba:

 options   IPSEC        # IP biztonsag
 device    crypto
      

   Ha szu:ksegu:nk van a IPsec nyomko:vetesere, a ko:vetkezo"
   beallitast is hozzatehetju:k:

 options   IPSEC_DEBUG  # az IP biztonsag nyomko:vetese
      

     --------------------------------------------------------------

  14.10.2. A problema

   Semmilyen szabvany nem fogalmazza meg mi is szamit VPN-nek. A
   virtualis maganhalozatok tucatnyi ku:lo:nbo:zo" technologiaval
   valosithatoak meg, de mindegyiknek megvan a maga ero"ssege es
   gyengesege. Ebben a szakaszban ko:rvonalazunk egy ilyen helyzetet,
   valamint a benne felepitett VPN megvalositasahoz alkalmazott
   strategiakat.

     --------------------------------------------------------------

  14.10.3. A forgatoko:nyv: adott egy otthoni es egy vallalati halozat,
  amelyek ku:lo:n-ku:lo:n csatlakoznak az internetre, es VPN
  hasznalataval ezeket egyetlen halozatkent szeretnenk hasznalni

   Elo"feltetelezeseink a ko:vetkezo"ek:

     * legalabb ket halozatunk van;

     * magan belu:l mind a ket halozat IP-t hasznal;

     * mind a ket halozat egy FreeBSD atjaron keresztu:l csatlakozik
       az internethez;

     * a halozatok atjaroi legalabb egy publikus IP-cimmel
       rendelkeznek;

     * a halozatok belso" cimei lehetnek publikus vagy privat
       IP-cimek, nem szamit. Fontos viszont, hogy ezek ne
       u:tko:zzenek, vagyis ne hasznalja egyszerre mind a ketto" a
       192.168.1.x cimtartomanyt.

     --------------------------------------------------------------

  14.10.4. Az IPsec beallitasa FreeBSD alatt

   Irta: Tom Rhodes.

   Kezdeskeppen a Portgyu"jtemenybo"l telepitenu:nk kell a
   security/ipsec-tools portot. Ez a programcsomag rengeteg olyan
   alkalmazast tartalmaz, amely segitsegu:nkre lehet a beallitasok
   elvegzese soran.

   A ko:vetkezo" lepesben letre kell hoznunk ket gif(4) tipusu
   pszeudoeszko:zt, melyeken keresztu:l a ket halozat ko:zo:tt egy
   tunnel segitsegevel ki tudjuk epiteni a szu:kseges kapcsolatot.
   Ehhez root felhasznalokent futtassuk a ko:vetkezo" parancsokat (a
   belso" es ku:lso" megnevezesu" parametereket cserelju:k ki a valos
   belso" es ku:lso" atjarok cimeire):

 # ifconfig gif0 create

 # ifconfig gif0 belso"1 belso"2

 # ifconfig gif0 tunnel ku:lso"1 ku:lso"2

   Tekintsu:k peldaul, hogy a vallalati LAN publikus IP-cime
   172.16.5.4, valamint a privat IP-cime 10.246.38.1. Az otthoni LAN
   publikus IP-cime legyen most 192.168.1.12, valamint a belso"
   privat IP-cime pedig 10.0.0.5.

   Elso"re ez talan meg nem teljesen ertheto", ezert az ifconfig(8)
   parancs hasznalataval is nezzu:k meg a peldaban szereplo"
   halozatok konfiguraciojat:

 Az elso" atjaro:

 gif0: flags=8051 mtu 1280
 tunnel inet 172.16.5.4 --> 192.168.1.12
 inet6 fe80::2e0::81ff:fe02:5881%gif0 prefixlen 64 scopeid 0x6
 inet 10.246.38.1 --> 10.0.0.5 netmask 0xffffff00

 A masodik atjaro:

 gif0: flags=8051 mtu 1280
 tunnel inet 192.168.1.12 --> 172.16.5.4
 inet 10.0.0.5 --> 10.246.38.1 netmask 0xffffff00
 inet6 fe80::250:bfff:fe3a:c1f%gif0 prefixlen 64 scopeid 0x4

   Miutan elvegeztu:k az imenti beallitasokat, a ping(8) paranccsal
   mar mind a ket privat IP-tartomanynak elerheto"nek kell lennie,
   ahogy azt az alabbi pelda is erzekeltetni kivanja:

 otthoni-halo# ping 10.0.0.5
 PING 10.0.0.5 (10.0.0.5): 56 data bytes
 64 bytes from 10.0.0.5: icmp_seq=0 ttl=64 time=42.786 ms
 64 bytes from 10.0.0.5: icmp_seq=1 ttl=64 time=19.255 ms
 64 bytes from 10.0.0.5: icmp_seq=2 ttl=64 time=20.440 ms
 64 bytes from 10.0.0.5: icmp_seq=3 ttl=64 time=21.036 ms
 --- 10.0.0.5 ping statistics ---
 4 packets transmitted, 4 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 19.255/25.879/42.786/9.782 ms

 vallalati-halo# ping 10.246.38.1
 PING 10.246.38.1 (10.246.38.1): 56 data bytes
 64 bytes from 10.246.38.1: icmp_seq=0 ttl=64 time=28.106 ms
 64 bytes from 10.246.38.1: icmp_seq=1 ttl=64 time=42.917 ms
 64 bytes from 10.246.38.1: icmp_seq=2 ttl=64 time=127.525 ms
 64 bytes from 10.246.38.1: icmp_seq=3 ttl=64 time=119.896 ms
 64 bytes from 10.246.38.1: icmp_seq=4 ttl=64 time=154.524 ms
 --- 10.246.38.1 ping statistics ---
 5 packets transmitted, 5 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 28.106/94.594/154.524/49.814 ms

   Az elvarasainknak megfelelo"en tehat a privat cimeken mind a ket
   oldalnak kepesnek kell lennie ICMP csomagokat ku:ldenie es
   fogadnia. A ko:vetkezo" lepesben meg kell mondanunk az atjaroknak
   hogyan iranyitsak a csomagokat a ket halozat ko:zti forgalom
   megfelelo" aramlasahoz. Ezt az alabbi paranccsal elerhetju:k el:

 # vallalati-halo# route add 10.0.0.0 10.0.0.5 255.255.255.0

 # vallalati-halo# route add net 10.0.0.0: gateway 10.0.0.5

 # otthoni-halo# route add 10.246.38.0 10.246.38.1 255.255.255.0

 # otthoni-halo# route add host 10.246.38.0: gateway 10.246.38.1

   Itt mar a belso" gepeket az atjarokrol es az atjarok mo:gu:l
   egyarant el tudjuk erni. A ko:vetkezo" pelda alapjan erro"l
   ko:nnyeden meg is tudunk gyo"zo"dni:

 vallalati-halo# ping 10.0.0.8
 PING 10.0.0.8 (10.0.0.8): 56 data bytes
 64 bytes from 10.0.0.8: icmp_seq=0 ttl=63 time=92.391 ms
 64 bytes from 10.0.0.8: icmp_seq=1 ttl=63 time=21.870 ms
 64 bytes from 10.0.0.8: icmp_seq=2 ttl=63 time=198.022 ms
 64 bytes from 10.0.0.8: icmp_seq=3 ttl=63 time=22.241 ms
 64 bytes from 10.0.0.8: icmp_seq=4 ttl=63 time=174.705 ms
 --- 10.0.0.8 ping statistics ---
 5 packets transmitted, 5 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 21.870/101.846/198.022/74.001 ms

 otthoni-halo# ping 10.246.38.107
 PING 10.246.38.1 (10.246.38.107): 56 data bytes
 64 bytes from 10.246.38.107: icmp_seq=0 ttl=64 time=53.491 ms
 64 bytes from 10.246.38.107: icmp_seq=1 ttl=64 time=23.395 ms
 64 bytes from 10.246.38.107: icmp_seq=2 ttl=64 time=23.865 ms
 64 bytes from 10.246.38.107: icmp_seq=3 ttl=64 time=21.145 ms
 64 bytes from 10.246.38.107: icmp_seq=4 ttl=64 time=36.708 ms
 --- 10.246.38.107 ping statistics ---
 5 packets transmitted, 5 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 21.145/31.721/53.491/12.179 ms

   A tunnelek beallitasa volt igazabol a ko:nnyebb resz, egy
   biztonsagos o:sszeko:ttetes kialakitasa azonban mar valamivel
   komolyabb folyamatot rejt magaban. A most ko:vetkezo"
   konfiguracioban erre "elo"re ismert" (vagyis pre-shared, PSK)
   RSA-kulcsokat fogunk hasznalni. A konkret IP-cimekto"l eltekintve
   az atjarokon a /usr/local/etc/racoon/racoon.conf allomanyok
   hasonloan fognak kinezni, nagyjabol valahogy igy:

 path    pre_shared_key "/usr/local/etc/racoon/psk.txt"; # az ismert kulcsot tartalmazo allomany helye
 log     debug;  # a naplozas reszletessegenek beallitasa: ha vegeztu:nk a tesztelessel es a hibakeresessel, akkor allitsuk at a 'notify' ertekre

 padding  # ezeket ne nagyon valtoztassuk meg
 {
         maximum_length  20;
         randomize       off;
         strict_check    off;
         exclusive_tail  off;
 }

 timer   # ido"zitesi beallitasok, allitsuk be igeny szerint
 {
         counter         5;
         interval        20 sec;
         persend         1;
 #       natt_keepalive  15 sec;
         phase1          30 sec;
         phase2          15 sec;
 }

 listen  # cim [port], ahol a racoon majd valaszolni fog
 {
         isakmp          172.16.5.4 [500];
         isakmp_natt     172.16.5.4 [4500];
 }

 remote  192.168.1.12 [500]
 {
         exchange_mode   main,aggressive;
         doi             ipsec_doi;
         situation       identity_only;
         my_identifier   address 172.16.5.4;
         peers_identifier        address 192.168.1.12;
         lifetime        time 8 hour;
         passive         off;
         proposal_check  obey;
 #       nat_traversal   off;
         generate_policy off;

                         proposal {
                                 encryption_algorithm    blowfish;
                                 hash_algorithm          md5;
                                 authentication_method   pre_shared_key;
                                 lifetime time           30 sec;
                                 dh_group                1;
                         }
 }

 sainfo  (address 10.246.38.0/24 any address 10.0.0.0/24 any) # address $halozat/$halozati_maszk $tipus address $halozat/$halozati_maszk $tipus
                   # (a $tipus lehet "any" vagy "esp")
 {                 # a $halozat a ket o:sszekapcsolni kivant belso" halozat legyen
         pfs_group       1;
         lifetime        time    36000 sec;
         encryption_algorithm    blowfish,3des,des;
         authentication_algorithm        hmac_md5,hmac_sha1;
         compression_algorithm   deflate;
 }

   A peldaban szereplo" o:sszes opcio reszletes kifejtese joval
   meghaladna ezen leiras kereteit, ezert a bo"vebb informaciokkal
   kapcsolatban inkabb a racoon beallitasaihoz tartozo man oldal
   elolvasasat javasoljuk.

   A gepek ko:zti halozati forgalom titkositasahoz be kell meg
   allitanunk egy SPD hazirendet is, igy a FreeBSD es a racoon kepes
   kodolni es dekodolni a csomagokat.

   Ezt a most ko:vetkezo", a vallalati atjaron talalhatohoz hasonlo
   egyszeru" shell szkripttel tudjuk elvegezni. Ezt az allomanyt a
   rendszer inditasakor fogjuk felhasznalni, melyet
   /usr/local/etc/racoon/setkey.conf neven mentsu:nk el:

 flush;
 spdflush;
 # Az otthoni halozati fele
 spdadd 10.246.38.0/24 10.0.0.0/24 any -P out ipsec esp/tunnel/172.16.5.4-192.168.1.12/use;
 spdadd 10.0.0.0/24 10.246.38.0/24 any -P in ipsec esp/tunnel/192.168.1.12-172.16.5.4/use;

   Ahogy ezzel megvagyunk, a racoon az egyes atjarokon a ko:vetkezo"
   paranccsal indithato el:

 # /usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf -l /var/log/racoon.log

   A parancs eredmenye ennek megfelelo"en nagyjabol a ko:vetkezo"
   lesz:

 vallalati-halo# /usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf
 Foreground mode.
 2006-01-30 01:35:47: INFO: begin Identity Protection mode.
 2006-01-30 01:35:48: INFO: received Vendor ID: KAME/racoon
 2006-01-30 01:35:55: INFO: received Vendor ID: KAME/racoon
 2006-01-30 01:36:04: INFO: ISAKMP-SA established 72.16.5.4[500]-192.168.1.12[500] spi:623b9b3bd2492452:7deab82d54ff704a
 2006-01-30 01:36:05: INFO: initiate new phase 2 negotiation: 72.16.5.4[0]192.168.1.12[0]
 2006-01-30 01:36:09: INFO: IPsec-SA established: ESP/Tunnel 92.168.1.12[0]->172.16.5.4[0] spi=28496098(0x1b2d0e2)
 2006-01-30 01:36:09: INFO: IPsec-SA established: ESP/Tunnel 172.16.5.4[0]->192.168.1.12[0] spi=47784998(0x2d92426)
 2006-01-30 01:36:13: INFO: respond new phase 2 negotiation: 172.16.5.4[0]192.168.1.12[0]
 2006-01-30 01:36:18: INFO: IPsec-SA established: ESP/Tunnel 192.168.1.12[0]->172.16.5.4[0] spi=124397467(0x76a279b)
 2006-01-30 01:36:18: INFO: IPsec-SA established: ESP/Tunnel 172.16.5.4[0]->192.168.1.12[0] spi=175852902(0xa7b4d66)

   A tunnel megfelelo" mu"ko:deset ugy tudjuk elleno"rizni, ha
   atvaltunk egy masik konzolra es a tcpdump(1) program segitsegevel
   figyelju:k a halozati forgalmat. A peldaban szereplo" em0
   interfeszt termeszetesen ne felejtsu:k el kicserelni a megfelelo"
   eszko:z nevere.

 # tcpdump -i em0 host 172.16.5.4 and dst 192.168.1.12

   Ennek hatasara az alabbiakhoz hasonlo adatoknak kellene
   megjelennie a konzolon. Amennyiben nem ez to:rtenik, valamilyen
   hiba to:rtent, ezert meg kell keresnu:nk azt a visszakapott adatok
   alapjan.

 01:47:32.021683 IP vallalatihalozat.com > 192.168.1.12.otthonihalozat.com: ESP(spi=0x02acbf9f,seq=0xa)
 01:47:33.022442 IP vallalatihalozat.com > 192.168.1.12.otthonihalozat.com: ESP(spi=0x02acbf9f,seq=0xb)
 01:47:34.024218 IP vallalatihalozat.com > 192.168.1.12.otthonihalozat.com: ESP(spi=0x02acbf9f,seq=0xc)

   Itt mar mind a ket halozatnak elerheto"nek kell lennie es egykent
   kell latszodnia. A halozatokat ezen felu:l meg erdemes ku:lo:n
   vedeni egy tu"zfallal is. Ilyenkor a csomagok ket halozati ko:zti
   zavartalan oda-vissza vandorlasahoz tovabbi szabalyokat kell meg
   felvennu:nk a tu"zfal szabalyrendszerebe. A ipfw(8) tu"zfal eseten
   ez a ko:vetkezo" sorok hozzaadasat jelenti a tu"zfal konfiguracios
   allomanyahoz:

 ipfw add 00201 allow log esp from any to any
 ipfw add 00202 allow log ah from any to any
 ipfw add 00203 allow log ipencap from any to any
 ipfw add 00204 allow log udp from any 500 to any

     Megjegyzes: A szabalyok szamozasat mindig az adott gep aktualis
     beallitasainak megfelelo"en kell modositani.

   A pf(4) es ipf(8) felhasznalok szamara ehhez a ko:vetkezo"
   parancsot javasoljuk:

 pass in quick proto esp from any to any
 pass in quick proto ah from any to any
 pass in quick proto ipencap from any to any
 pass in quick proto udp from any port = 500 to any port = 500
 pass in quick on gif0 from any to any
 pass out quick proto esp from any to any
 pass out quick proto ah from any to any
 pass out quick proto ipencap from any to any
 pass out quick proto udp from any port = 500 to any port = 500
 pass out quick on gif0 from any to any

   Vegezetu:l a ko:vetkezo" sor hozzaadasaval engedelyezzu:k az
   /etc/rc.conf allomanyban a VPN inditasat a rendszer inditasa
   soran:

 ipsec_enable="YES"
 ipsec_program="/usr/local/sbin/setkey"
 ipsec_file="/usr/local/etc/racoon/setkey.conf" # engedelyezzu:k az spd hazirend beallitasat a rendszer inditasakor
 racoon_enable="yes"

     --------------------------------------------------------------

14.11. OpenSSH

   Irta: Chern Lee.

   Az OpenSSH olyan halozati kapcsolodasi eszko:zo:k o:sszessege,
   amivel biztonsagos modon erhetu:nk el tavoli szamitogepeket. Az
   rlogin, rsh, rcp es a telnet direkt kivaltasara hasznalhato.
   Emellett SSH-n keresztu:l TCP/IP kapcsolatok is biztonsagosan
   bujtathatoak vagy ku:ldheto"ek tovabb.

   Az OpenSSH-t az OpenBSD projekt tartja karban, es az SSH 1.2.12
   verziojara epu:l hibajavitasokkal es frissitesekkel egyetemben. Az
   SSH 1 es 2 protokollokkal egyarant kompatibilis.

     --------------------------------------------------------------

  14.11.1. Az OpenSSH hasznalatanak elo"nyei

   A hetko:znapi esetben, vagyis amikor a telnet(1) vagy rlogin(1)
   alkalmazasokat hasznaljuk, az adatok titkositatlan formaban
   ko:zlekednek a halozaton. A szerver es a kliens ko:ze barhova
   becsatlakozo halozati kivancsiskodok igy ko:nnyeden el tudjak
   lopni a felhasznaloi nevu:nket es jelszavunkat, vagy lenyegeben
   barmilyen adatot, ami az adott munkamenetben megfordul. Az OpenSSH
   ennek kivedesere kinal fel ku:lo:nfele hitelesitesi es titkositasi
   eszko:zo:ket.

     --------------------------------------------------------------

  14.11.2. Az sshd engedelyezese

   Az sshd a FreeBSD telepitesekor jelentkezo" Standard leheto"segek
   egyike. Az sshd engedelyezeset ugy tudjuk kideriteni, ha az
   rc.conf allomanyban megkeressu:k a ko:vetkezo" sort:

 sshd_enable="YES"

   Ez to:lti be a rendszer inditasakor az sshd(8)-t, az OpenSSH
   demonat. Vagy az /etc/rc.d/sshd rc(8) szkript segitsegevel is
   elindithatjuk az OpenSSH-t:

 /etc/rc.d/sshd start

     --------------------------------------------------------------

  14.11.3. Az SSH kliens

   Az ssh(1) segedprogram az rlogin(1) programhoz hasonloan
   mu"ko:dik.

 # ssh felhasznalo@gep.hu
 Host key not found from the list of known hosts.  Are you sure you
 want to continue connecting (yes/no)?  yes Host
 'gep.hu' added to the list of known hosts.
 felhasznalo@gep.hu's password:
 *******

   Az u:zenetek forditasa:

 Nem talaltam meg a gepet az ismert gepek ko:zo:tt.  Biztosan csatlakozni
 akarunk hozza (igen/nem)?  igen A 'gep.hu'
 felkeru:lt az ismert gepek ko:ze.
 Adja meg a felhasznalo@gep.hu jelszavat:

   Bejelentkezes utan minden ugyanolyan, mintha az rlogin vagy a
   telnet programokat hasznaltuk volna. Az SSH egy kulcs segitsegevel
   probalja azonositani a szamitogepeket, ezzel elleno"rzi a szerver
   hitelesseget a kliensek csatlakozasakor. A felhasznalonak ilyenkor
   elo"szo:r mindig yes valaszt kell adnia. A keso"bbi bejelentkezesi
   kiserletek pedig majd mindig az igy kapott kulccsal to:rtennek. Ha
   elterne a kulcs, akkor az SSH kliens erre figyelmeztetni fog
   minket. A kulcsok a ~/.ssh/known_hosts vagy az SSH v2 protokoll
   eseten a ~/.ssh/known_hosts2 allomanyba keru:lnek elmentesre.

   Alapertelmezes szerint az OpenSSH szerverek csak SSH v2
   kapcsolatokat fogadnak el. Leheto"seg szerint a kliens is ezt a
   valtozatot fogja hasznalni, de ha nem sikeru:l, akkor
   megprobalkozik a v1-el. A kliensnek a -1 vagy -2 opciok
   segitsegevel elo" is lehet irni, hogy az elso" vagy a masodik
   valtozatot hasznalja. A kliensben az elso" valtozat tamogatasat
   csupan a regebbi verziok kompatibilitasa miatt tartjak karban.

     --------------------------------------------------------------

  14.11.4. Biztonsagos masolas

   Az scp(1) parancs az rcp(1) parancshoz hasonloan mu"ko:dik: egyik
   gepro"l masol a masikra, biztonsagosan.

 #  scp felhasznalo@gep.hu:/COPYRIGHT COPYRIGHT
 felhasznalo@gep.hu's password: *******
 COPYRIGHT            100% |*****************************|  4735
 00:00
 #

   Mivel a kulcsot mar ismerju:k ehhez a tavoli gephez (az elo"bbi
   peldabol), ezert az scp(1) hasznalatakor mar ezzel hitelesitu:nk.

   Az scp(1) parameterei hasonloak a cp(1) parancsehoz: elso" helyen
   az allomany vagy allomanyok neveit adjuk meg, a masodikon pedig a
   celt. Mivel az allomanyokat a halozaton SSH-n keresztu:l ku:ldik
   at, ezert az allomanyok neveit felhasznalo@gep:eleresi_ut formaban
   kell megadni.

     --------------------------------------------------------------

  14.11.5. Beallitasok

   Az OpenSSH demon es kliens rendszerszintu" konfiguracios
   allomanyai az /etc/ssh ko:nyvtarban talalhatoak.

   Az ssh_config tartalmazza a kliens beallitasait, miko:zben az
   sshd_config tartalmazza a demonet.

   Emellett az rc.conf allomanyban megadhato sshd_program (ez alapbol
   a /usr/sbin/sshd) es sshd_flags opciokkal tovabbi beallitasi
   szinteket nyujtanak.

     --------------------------------------------------------------

  14.11.6. ssh-keygen

   Jelszavak helyett az ssh-keygen(1) programmal a felhasznalok
   azonositasara DSA- vagy RSA-kulcsokat tudunk kesziteni:

 % ssh-keygen -t dsa
 Generating public/private dsa key pair.
 Enter file in which to save the key (/home/felhasznalo/.ssh/id_dsa):
 Created directory '/home/felhasznalo/.ssh'.
 Enter passphrase (empty for no passphrase):
 Enter same passphrase again:
 Your identification has been saved in /home/felhasznalo/.ssh/id_dsa.
 Your public key has been saved in /home/felhasznalo/.ssh/id_dsa.pub.
 The key fingerprint is:
 bb:48:db:f2:93:57:80:b6:aa:bc:f5:d5:ba:8f:79:17 felhasznalo@gep.hu

   Az ssh-keygen(1) ekkor a hitelesitesre letrehoz egy publikus es
   egy privat kulcsbol allo part. A privat kulcs a ~/.ssh/id_dsa vagy
   ~/.ssh/id_rsa allomanyba keru:l, miko:zben a publikus kulcs a
   ~/.ssh/id_dsa.pub vagy ~/.ssh/id_rsa.pub lesz attol fu:ggo"en,
   hogy DSA vagy RSA a kulcs tipusa. A modszer mu"ko:desehez a
   publikus DSA- vagy RSA-kulcsot a tavoli szamitogep
   ~/.ssh/authorized_keys allomanyaba kell bemasolni.

   Igy tehat a tavoli szamitogepre jelszavak alkalmazasa helyett
   SSH-kulccsal tudunk belepni.

   Ha az ssh-keygen(1) parancsnak megadunk egy jelmondatot is, akkor
   a felhasznalo a privat kulcsat csak ennek megadasaval tudja
   hasznalni. A hosszu jelmondatok allando beirogatasatol a 14.11.7
   Szakasz szakaszban hamarosan bemutatasra keru:lt ssh-agent(1)
   igyekszik megkimelni minket.

     Figyelem: A ku:lo:nbo:zo" opciok es allomanyok elterhetnek a
     szamitogepu:nkre telepitett OpenSSH verziojatol fu:ggo"en. Ilyen
     esetben javasolt felkeresni az ssh-keygen(1) man oldalat.

     --------------------------------------------------------------

  14.11.7. Az ssh-agent es az ssh-add

   Az ssh-agent(1) es ssh-add(1) segedprogramokkal be tudjuk to:lteni
   az SSH-kulcsokat a memoriaba, amivel elkeru:lhetju:k a jelmondat
   allando begepeleset.

   A hitelesitest az ssh-agent(1) program kezeli a beto:lto:tt privat
   kulcsok alapjan. Az ssh-agent(1) hasznalataval egy masik programot
   is elindhatunk, egy parancsertelmezo"to"l kezdve egy
   ablakkezelo"ig szinte barmit.

   Az ssh-agent(1) programot ugy tudjuk egy parancsertelmezo"ben
   hasznalni, hogy elo"szo:r is elinditjuk vele az adott
   parancsertelmezo"t. Ezutan az ssh-add(1) lefuttatasaval hozza kell
   adnunk egy identitast, annak jelmondatanak megadasaval. Miutan
   ezeket megtettu:k, a felhasznalo barmelyik olyan tavoli gepre be
   tud jelentkezni, ahol a publikus kulcsat ismerik. Peldaul:

 % ssh-agent csh
 % ssh-add
 Enter passphrase for /home/felhasznalo/.ssh/id_dsa:
 Identity added: /home/felhasznalo/.ssh/id_dsa (/home/felhasznalo/.ssh/id_dsa)
 %

   Az ssh-agent(1) programot X11-el ugy tudjuk hasznalni, ha az
   ~/.xinitrc allomanyba tesszu:k bele. Ezzel az ssh-agent(1) az
   o:sszes X11-ben inditott program szamara rendelkezesre all.
   Peldanak vegyu:k ezt az ~/.xinitrc allomanyt:

 exec ssh-agent startxfce4

   Igy az X11 indulasakor mindig elindul az ssh-agent(1), amely pedig
   elinditja az XFCE alkalmazast. Miutan atirtuk a sajat
   allomanyunkat, a rendszer eletbeleptetesehez inditsuk ujra az
   X11-et, az ssh-add(1) futtatasaval pedig to:ltsu:k be az o:sszes
   SSH-kulcsunkat.

     --------------------------------------------------------------

  14.11.8. Tunnelezes SSH-val

   Az OpenSSH-val letre tudunk hozni egy tunnelt, amellyel egy masik
   protokoll adatait tudjuk titkositott modon becsomagolni.

   Az alabbi parancs arra utasitja az ssh(1) programot, hogy hozzon
   letre egy tunnelt a telnet hasznalatahoz:

 % ssh -2 -N -f -L 5023:localhost:23 felhasznalo@ize.mize.hu
 %

   Az ssh parancsnak a ko:vetkezo" kapcsolokat adtuk meg:

   -2

           Az ssh parancs a protokoll masodik valtozatat hasznalja.
           (Ne adjuk meg, ha regi SSH szerverekkel dolgozunk.)

   -N

           Tunnel letrehozasa. Ha nem adjuk meg, akkor az ssh egy
           hagyomanyos munkamenet felepiteset kezdi meg.

   -f

           Az ssh a hatterben fusson.

   -L

           Egy helyi tunnel a helyiport:tavoligep:tavoliport
           felirasban.

   felhasznalo@ize.mize.hu

           A tavoli SSH szerver.

   Az SSH altal letrehozott jaratok ugy mu"ko:dnek, hogy letrehozunk
   egy csatlakozast a localhost (a helyi gep) megadott portjan.
   Ezutan minden olyan kapcsolatot, ami a helyi gep adott portjara
   erkezik, SSH-n keresztu:l atiranyitunk a tavoli gep portjara.

   Ebben a peldaban a helyi gep 5023 portjat atiranyitjuk a helyi gep
   23 portjara. Mivel a 23 a telnet portja, ezert az igy definialt
   SSH jarattal egy biztonsagos telnet munkamenetet hozunk letre.

   Ezen a modon tetszo"leges nem biztonsagos TCP protokollt, peldaul
   SMTP-t, POP3-at, FTP-t stb. be tudunk csomagolni.

   Pelda 14-1. Biztonsagos tunnel letrehozasa SSH-val SMTP-hez

 % ssh -2 -N -f -L 5025:localhost:25 felhasznalo@levelezo".szerver.hu
 felhasznalo@levelezo".szerver.hu's password: *****
 % telnet localhost 5025
 Trying 127.0.0.1...
 Connected to localhost.
 Escape character is '^]'.
 220 levelezo".szerver.hu ESMTP

   Az ssh-keygen(1) es tovabbi felhasznaloi hozzaferesek
   alkalmazasaval ezen a modon ki tudunk alakitani egy minden tovabbi
   problematol es zu"rto"l mentes SSH tunnelezesi ko:rnyezetet. A
   jelszavak helyett kulcsokat hasznalunk es minden tunnel ku:lo:n
   felhasznalokent is futtathato.

     --------------------------------------------------------------

    14.11.8.1. Gyakorlati peldak a tunnelek hasznalatara

      14.11.8.1.1. Egy POP3 szerver biztonsagos elerese

   Tegyu:k fel, hogy a munkahelyu:nko:n van egy SSH szerver, amire
   kivu:lro"l lehet csatlakozni, illetve vele egy halozatban van egy
   POP3 levelezo" szerver is. A munkahelyu:nk es az otthonunk
   ko:zo:tt levo" halozati utvonalat reszben vagy teljesen nem
   tartjuk megbizhatonak. Ezert az e-mailjeinket valamilyen
   biztonsagos modon szeretnenk elerni. Ezt ugy tudjuk megvalositani,
   ha otthonrol csatlakozunk a munkahelyen levo" SSH szerverre es
   ezen keresztu:l erju:k a levelezo" szervert.

 % ssh -2 -N -f -L 2110:level.gep.hu:110 felhasznalo@ssh-szerver.gep.hu
 felhasznalo@ssh-szerver.gep.hu's password: ******

   Miutan a tunnel letrejo:tt es mu"ko:do"kepes, allitsuk be a
   levelezo" kliensu:nkben, hogy a POP3 kereseket a localhost 2110
   portjara ku:ldje. Innen pedig biztonsagos modon megy tovabb a
   level.gep.hu cimre.

     --------------------------------------------------------------

      14.11.8.1.2. Egy szigoru tu"zfal megkeru:lese

   Egyes halozati adminisztratorok tulsagosan szigoru szabalyokat
   adnak meg a tu"zfalban, es nem csak a bejo:vo" kapcsolatokat
   szu"rik, hanem a kimeno"ket is. A tavoli gepekhez csak a 22 (SSH)
   es 80 (bo:ngeszes) portjaikon tudunk csatlakozni.

   Mi viszont szeretnenk mas (nem egeszen a munkankkal kapcsolatos)
   szolgaltatasokat is elerni, peldaul egy Ogg Vorbis szerverro"l
   zenet hallgatni. Ehhez a szerverhez viszont csak akkor tudnank
   csatlakozni, ha a 22 vagy 80 portokon u:zemelne.

   Ezt a problemat ugy oldhatjuk meg, ha felepitu:nk egy SSH
   kapcsolatot a halozatunk tu"zfalan kivu:l levo" szamitogeppel es
   segitsegevel atbujunk az Ogg Vorbis szerverhez.

 % ssh -2 -N -f -L 8888:zene.gep.hu:8000 felhasznalo@tu"zfalazatlan-rendszer.gep.org
 felhasznalo@tu"zfalazatlan-rendszer.gep.org's password: *******

   A zenelejatszo kliensu:knek adjuk meg a localhost 8888 portjat,
   amely pedig a tu"zfal sikeres kijatszasaval tovabbitodik a
   zene.gep.hu 8000-res portjara.

     --------------------------------------------------------------

  14.11.9. Az AllowUsers felhasznaloi beallitas

   Gyakran nem art korlatozni a felhasznalok bejelentkezeset. Az
   AllowUsers erre to:keletesen megfelel. Peldaul, ha csak
   192.168.1.32 cimro"l engedju:k bejelentkezni a root felhasznalot,
   akkor ehhez valami ilyesmit kell beirnunk az /etc/ssh/sshd_config
   allomanyba:

 AllowUsers root@192.168.1.32

   Ezzel pedig csupan nevenek megadasaval engedelyezzu:k az admin
   felhasznalo bejelentkezeset (barhonnan):

 AllowUsers admin

   Egy sorban to:bb felhasznalo is megadhato, mint peldaul:

 AllowUsers root@192.168.1.32 admin

     Megjegyzes: Ilyenkor ne felejtsu:k el megadni az o:sszes
     bejelentkezesre (valamilyen formaban) jogosult felhasznalot
     megadni, masku:lo:nben kizarjuk ezeket.

   Miutan elvegeztu:k a szu:kseges valtoztatasokat az
   /etc/ssh/sshd_config allomanyban, utasitsuk az sshd(8) demont a
   konfiguracios allomanyok ujraolvasasara:

 # /etc/rc.d/sshd reload

     --------------------------------------------------------------

  14.11.10. Ajanlott olvasnivalok (angolul)

   OpenSSH

   ssh(1) scp(1) ssh-keygen(1) ssh-agent(1) ssh-add(1) ssh_config(5)

   sshd(8) sftp-server(8) sshd_config(5)

     --------------------------------------------------------------

14.12. Az allomanyrendszerek hozzafereseit vezerlo" listak

   Irta: Tom Rhodes.

   A FreeBSD 5.0 es keso"bbi valtozatai ku:lo:nbo:zo" fejleszteseket
   hoztak az allomanyrendszerekben, peldaul a pillanatkepek keszitese
   vagy a hozzaferes-vezerlesi listak (Access Control List, ACL-ek)
   tamogatasa.

   A hozzaferes-vezerlesi listak a szabvanyos UNIX-os engedely
   modellt bo"vitik ki egy igen kompatibilis (POSIX.1e) modon.
   Hasznalataval a rendszergazdak egy sokkal kifinomultabb biztonsagi
   modellt tudhatnak a kezu:k u:gyeben.

   Az UFS allomanyrendszerek ACL tamogatasat ugy tudjuk engedelyezni,
   ha a rendszermagot az

 options UFS_ACL

   parameterrel forditjuk le. Amennyiben ezt nem forditottuk bele,
   akkor az ACL tamogatassal rendelkezo" allomanyrendszerek
   csatlakoztatasa soran egy figyelmeztetest kapunk. Ez az opcio a
   GENERIC rendszermag resze. Az ACL az allomanyrendszeren
   engedelyezett kiterjesztett tulajdonsagokra tamaszkodik. Ezeket a
   kiterjesztett tulajdonsagokat a ko:vetkezo" generacios UNIX
   allomanyrendszer, az UFS2 mar alapbol ismeri.

     Megjegyzes: UFS1 tipusu allomanyrendszereken sokkal nagyobb a
     kiterjesztett tulajdonsagok kezelesenek ko:ltsege, mint az UFS2
     eseteben. Az UFS2 joval nagyobb teljesitmennyel kepes dolgozni a
     kiterjesztett tulajdonsagokkal. Emiatt a hozzaferes-vezerlesi
     listak hasznalatahoz az UFS2 sokkal inkabb ajanlott, mint az
     UFS1.

   Az ACL hasznalatat a csatlakoztataskor megadott acls beallitassal
   engedelyezhetju:k, amelyet erdemes felvennu:nk az /etc/fstab
   allomanyba. Ha a tunefs(8) segedprogrammal az allomanyrendszer
   fejleceben levo" szuperblokk ACL kapcsolojat atirjuk, akkor ez a
   beallitas automatikussa teheto". A szuperblokk hasznalata to:bb
   okbol is ajanlatos:

     * A csatlakoztataskor megadott ACL beallitas nem valtoztathato
       egy egyszeru" ujracsatlakoztatassal (mount(8) -u), csak egy
       teljes levalasztassal (umount(8)) es egy friss
       csatlakoztatassal (mount(8)). Ennek ertelmeben az ACL-ek a
       rendszerindito allomanyrendszeren a rendszer indulasa utan nem
       engedelyezheto"ek. Am ez azt is jelenti, hogy egy mar
       hasznalatban levo" allomanyrendszer beallitasai sem
       valtoztathatoak meg.

     * Ha a kapcsolot a szuperblokkban allitjuk be, akkor az
       allomanyrendszert meg akkor is ACL tamogatassal csatlakoztatja
       a rendszer, ha azt nem adtuk meg az fstab allomanyban vagy az
       eszko:zeink atrendezo"dtek. Igy az allomanyrendszereket meg
       veletlenu:l sem tudjuk ACL hasznalata nelku:l csatlakoztatni,
       ami egyebkent igy komoly biztonsagi problemakat okozhatna.

     Megjegyzes: Beallithatjuk ugy is ACL kezeleset, hogy egy friss
     csatlakoztatas nelku:l is bekapcsolhato legyen, azonban az ilyen
     allomanyrendszerek ACL nelku:li csatlakoztatasat nem ajanljuk
     senkinek, mivel ha egyszer mar engedelyeztu:k a hasznalatukat,
     majd kikapcsoljuk ezeket es vegu:l a kiterjesztett tulajdonsagok
     to:rlese nelku:l ujra engedelyezzu:k, akkor nagyon ko:nnyen
     porul jarhatunk. Ha elkezdtu:k hasznalni az ACL-eket egy
     allomanyrendszeren, akkor ne tiltsuk le ezeket, mert az igy
     keletkezo" allomanyvedelem nem feltetlenu:l lesz kompatibilis a
     felhasznalok altal beallitottakkal, es az ACL ujraengedelyezese
     a valtozasaik elo"tti korabbi ACL engedelyeket fogja
     visszaallitani az allomanyokra, aminek hatasa kiszamithatatlan.

   A hozzaferes-vezerlesi listakat hasznalo allomanyrendszerek eseten
   egy + (plusz) jellel abrazoljak a kiterjesztett engedelyeket.
   Peldaul:

 drwx------  2 robert  robert  512 Dec 27 11:54 private
 drwxrwx---+ 2 robert  robert  512 Dec 23 10:57 ko:nyvtar1
 drwxrwx---+ 2 robert  robert  512 Dec 22 10:20 ko:nyvtar2
 drwxrwx---+ 2 robert  robert  512 Dec 27 11:57 ko:nyvtar3
 drwxr-xr-x  2 robert  robert  512 Nov 10 11:54 public_html

   Lathatjuk, hogy a ko:nyvtar1, ko:nyvtar2 es ko:nyvtar3
   ko:nyvtarakhoz tartoznak ACL tipusu engedelyek, mig a public_html
   ko:nyvtarhoz nem.

     --------------------------------------------------------------

  14.12.1. Az ACL-ek hasznalata

   Az allomanyrendszerben talalhato ACL engedelyeket a getfacl(1)
   segedprogrammal nezhetju:k meg. Peldaul a proba allomany ACL
   engedelyeit a ko:vetkezo" paranccsal tudjuk megnezni:

 % getfacl proba
         #file:proba
         #owner:1001
         #group:1001
         user::rw-
         group::r--
         other::r--

   Egy allomany ACL engedelyeit a setfacl(1) segedprogrammal tudjuk
   megvaltoztatni. Figyelju:k meg:

 % setfacl -k proba

   A -k opcio to:rli az o:sszes ACL alapu engedelyt egy allomanyrol
   vagy allomanyrendszerro"l. Ennel viszont sokkal hasznosabb a -b
   opcio hasznalata, mivel az meghagyja az ACL mu"ko:desehez
   szu:kseges alapveto" mezo"ket.

 % setfacl -m u:trhodes:rwx,group:web:r--,o::--- proba

   Ebben a fenti parancsban a -m opciot pedig arra hasznaltuk, hogy
   modositsuk az alapertelmezett ACL bejegyzeseket. Mivel az ezt
   megelo"zo" parancsban teljesen to:ro:ltu:k meg az elo"redefinialt
   bejegyzeseket is, ez a parancs a megadott parameterekkel
   kiegeszitve ezeket vissza fogja allitani. U:gyelju:nk arra, hogy
   ha olyan felhasznalot vagy csoportot adunk meg, ami nem letezik a
   rendszerben, akkor a szabvany kimenetre egy "Invalid argument"
   hibau:zenetet kapunk.

     --------------------------------------------------------------

14.13. A ku:lso" programok biztonsagi problemainak figyelese

   Irta: Tom Rhodes.

   Az utobbi evekben a biztonsagi kerdesekkel foglalkozo vilagban
   szamos fejlesztesre keru:lt sor a sebezheto"segi figyelmeztetesek
   feldolgozasaban. Manapsag tulajdonkeppen barmilyen operacios
   rendszer fokozott veszelynek teszik ki magat a ku:lso" programok
   telepitesevel es hasznalataval.

   A sebezheto"segekro"l beszamolo ertesitesek a biztonsag egyik
   alapko:ve, azonban a FreeBSD projekt nem tud ilyen jelenteseket
   kiadni a FreeBSD alaprendszeren kivu:l minden egyes ku:lso"
   alkalmazashoz. Azonban leheto"segu:nk van enyhiteni a ku:lso"
   csomagok sebezheto"segen es figyelmeztetni a rendszergazdakat az
   ismert biztonsagi problemakra. A FreeBSD-nek van egy Portaudit
   nevu" segedprogramja, amit kizarolag erre a celra hoztak letre.

   A ports-mgmt/portaudit port egy adatbazist hasznal, ahol a FreeBSD
   biztonsagi csapata es a portok fejleszto"i tartjak karban az
   ismert biztonsagi problemakat.

   A Portaudit hasznalatanak megkezdesehez telepitsu:k a
   Portgyu"jtemenybo"l:

 # cd /usr/ports/ports-mgmt/portaudit && make install clean

   A telepitesi folyamat soran a periodic(8) konfiguracios allomanyai
   is frissito"dnek, igy a Portaudit is lefut a napi biztonsagi
   elleno"rzesek folyaman. Gondoskodjunk rola, hogy a root
   felhasznalonak levelben elku:ldo:tt a napi biztonsagi
   ertesiteseket rendesen elolvassuk. Nincs szu:ksegu:nk tovabbi
   beallitasokra.

   A telepites utan a rendszergazda a ko:vetkezo" paranccsal tudja
   frissiteni a sajat adatbazispeldanyat es megnezni a pillanatnyilag
   telepitett csomagok ismert sebezheto"segeit:

 # portaudit -Fda

     Megjegyzes: Ez az adatbazis a periodic(8) minden egy futasakor
     magatol frissu:l, ezert ez a parancs lenyegeben elhagyhato.
     Egyedu:l a soronko:vetkezo" peldakhoz kell kiadni.

   A Portgyu"jtemenybo"l telepitett ku:lso" alkalmazasok
   megbizhatosaganak elleno"rzeset az alabbi parancs kiadasaval
   barmikor elvegezhetju:k:

 # portaudit -a

   A Portaudit ennek hatasara valahogy igy fogja megjeleniteni a
   sebezheto" csomagokat:

 Affected package: cups-base-1.1.22.0_1
 Type of problem: cups-base -- HPGL buffer overflow vulnerability.
 Reference: <http://www.FreeBSD.org/ports/portaudit/40a3bca2-6809-11d9-a9e7-0001020eed82.html>

 1 problem(s) in your installed packages found.

 You are advised to update or deinstall the affected package(s) immediately.

   Forditasa:

 Erintett csomag: cups-base-1.1.22.0_1
 A problema jellege: cups-base -- HPGL puffer tulcsordulasi sebezheto"seg.
 Link: <http://www.FreeBSD.org/ports/portaudit/40a3bca2-6809-11d9-a9e7-0001020eed82.html>

 A telepitett csomagokkal kapcsolatban 1 problemat talaltam.

 Javasoljuk, hogy az erintett csomagokat azonnal frissitse vagy tavolitsa el.

   Ha a bo:ngeszo"nket az itt megadott cimre iranyitjuk, akkor
   megismerhetju:k a kerdeses sebezheto"seg pontosabb reszleteit.
   Ezen az oldalon megtalalhatjuk a hiba altal erintett verziokat a
   FreeBSD portok verzioja szerint, illetve mas olyan honlapokat,
   ahol biztonsagi figyelmezteteseket talalhatunk.

   Ro:viden o:sszefoglalva, a Portaudit egy komoly segedeszko:z es
   hitetlenu:l hasznos kiegeszito"je a Portupgrade portnak.

     --------------------------------------------------------------

14.14. A FreeBSD biztonsagi figyelmeztetesei

   Irta: Tom Rhodes.

   A FreeBSD to:bb mas kereskedelmi mino"segu" operacios rendszerhez
   hasonloan "Biztonsagi figyelmezteseket" (Security Advisory) ad ki.
   Ezek a figyelmeztetesek altalaban megjelennek a biztonsaggal
   foglalkozo levelezesi listakon es a hivatkozott hibak kijavitasa
   utan a megfelelo" kiadasok hibajegyzekeben is. Ebben a szakaszban
   megismerju:k es ertelmezzu:k ezeket a figyelmezteteseket, valamint
   megtudhatjuk, milyen lepeseket kell megtennu:nk a rendszeru:nk
   kijavitasahoz.

     --------------------------------------------------------------

  14.14.1. Hogyan epu:l fel egy figyelmeztetes?

   A FreeBSD biztonsagi figyelmeztetesei az alabb lathato formaban
   jelennek meg, amit mi most a freebsd-security-notifications
   levelezesi listarol ko:lcso:no:ztu:nk.

 =============================================================================
 FreeBSD-SA-XX:XX.UTIL                                     Security Advisory
                                                           The FreeBSD Project

 Topic:          denial of service due to some problem(1)

 Category:       core(2)
 Module:         sys(3)
 Announced:      2003-09-23(4)
 Credits:        Person@EMAIL-ADDRESS(5)
 Affects:        All releases of FreeBSD(6)
                 FreeBSD 4-STABLE prior to the correction date
 Corrected:      2003-09-23 16:42:59 UTC (RELENG_4, 4.9-PRERELEASE)
                 2003-09-23 20:08:42 UTC (RELENG_5_1, 5.1-RELEASE-p6)
                 2003-09-23 20:07:06 UTC (RELENG_5_0, 5.0-RELEASE-p15)
                 2003-09-23 16:44:58 UTC (RELENG_4_8, 4.8-RELEASE-p8)
                 2003-09-23 16:47:34 UTC (RELENG_4_7, 4.7-RELEASE-p18)
                 2003-09-23 16:49:46 UTC (RELENG_4_6, 4.6-RELEASE-p21)
                 2003-09-23 16:51:24 UTC (RELENG_4_5, 4.5-RELEASE-p33)
                 2003-09-23 16:52:45 UTC (RELENG_4_4, 4.4-RELEASE-p43)
                 2003-09-23 16:54:39 UTC (RELENG_4_3, 4.3-RELEASE-p39)(7)
 CVE Name:       CVE-XXXX-XXXX(8)

 For general information regarding FreeBSD Security Advisories,
 including descriptions of the fields above, security branches, and the
 following sections, please visit
 http://www.FreeBSD.org/security/.

 I.   Background(9)


 II.  Problem Description(10)


 III. Impact(11)


 IV.  Workaround(12)


 V.   Solution(13)


 VI.  Correction details(14)


 VII. References(15)

   (1)
           A Topic mezo"ben olvashatjuk pontosan mi is maga a
           problema. Alapveto"en bemutatja az erintett biztonsagi
           figyelmeztetest es megemliti a sebezheto" segedprogramot.
   (2)
           A Category mezo" hivatkozik a rendszer azon reszere,
           amelyre a hiba kihatassal lehet. Erteke lehet core,
           contrib vagy ports. A core kategoria azt jelzi, hogy a
           sebezheto"seg a FreeBSD legfontosabb komponenseit erinti.
           A contrib kategoria a FreeBSD projekt szamara felajanlott
           szoftverek, mint peldaul a sendmail sebezheto"segere utal.
           Vegezetu:l a ports kategoria jelzi, hogy a sebezheto"seg
           valamelyik, a Portgyu"jtemenyben szereplo" szoftverre
           ervenyes.
   (3)
           A Module mezo" a sebezheto" komponens helyet nevezi meg,
           peldaul sys. Ebben a peldaban azt lathatjuk, hogy a sys
           modul a hibas. Ezert a sebezheto"seg egy rendszermagban
           hasznalt komponenst erint.
   (4)
           Az Announced mezo" a biztonsagi figyelmeztetes kiadasanak
           vagy szelesko:ru" kihirdetesenek datumat ro:gziti. Ez azt
           jelenti, hogy a biztonsagi csapat meggyo"zo"do:tt a
           problema letezesero"l es a hibat orvosolo javitas mar
           felkeru:lt a FreeBSD forraskodjaba.
   (5)
           A Credits mezo" azokat az egyeneket vagy szervezeteket
           emliti meg, akik eszleltek a sebezheto"seget es
           jelentettek.
   (6)
           Az Affects mezo"ben megadjak, hogy a FreeBSD melyik
           kiadasaira van hatassal a sebezheto"seg. Ha a rendszermag
           eseten lefuttatjuk az ident parancsot az erintett
           allomanyokra, akkor megtudhatjuk a pontos reviziojukat. A
           portoknal a verzioszam a port neve utan szerepel a
           /var/db/pkg ko:nyvtarban. Ha a rendszeru:nket nem
           frissitettu:k CVS-ro"l es forditottuk ujra, akkor nagy a
           valoszinu"sege, hogy a sebezheto"seg minket is erint.
   (7)
           A Corrected mezo" tartalmazza a a kijavitas datumat,
           idejet, ido"zonajat es az ezt tartalmazo kiadast.
   (8)
           Az ismert sebezheto"segek adatbazisaban (Common
           Vulnerabilities Database, CVD) hasznalt azonositasi
           informaciok alapjan vegzett keresesek szamara fenntartott.
   (9)
           A Background mezo" adja meg reszleteiben a sebezheto"
           programmal kapcsolatos tudnivalokat. Az esetek
           to:bbsegeben itt irjak le, hogy miert jo:tt letre az adott
           eszko:z a FreeBSD-ben, mire hasznaljak es hogyan
           keletkezett.
   (10)
           A Problem Description mezo" a biztonsagi rest reszletezi.
           Ebben a reszben szerepelhet a hibas kodreszlet vagy akar
           meg az is, hogy mikent kell vele elo"idezni a hibat.
   (11)
           Az Impact mezo" a problema lehetseges hatasait irja
           ko:ru:l a rendszerben. Ez peldaul lehet egy DoS tamadas,
           specialis engedelyek ellopasa vagy akar a
           rendszeradminisztratori jogok megszerzese.
   (12)
           A Workaround mezo" igyekszik elfogadhato megoldast
           nyujtani a rendszeru:k frissitesere keptelen
           rendszergazdak szamara. Ennek oka lehet az ido"
           ro:vidsege, a halozati elerheto"seg vagy mas okokbol
           fakado elcsuszas. Ennek ellenere a biztonsagi kerdeseket
           sosem szabad felvallrol venni, ezert a sebezheto"
           rendszereket vagy ki kell javitani vagy valamilyen modon
           meg kell keru:lni a biztonsagi res kialakulasat.
   (13)
           A Solution mezo" utasitasokkal segit a rendszer
           kijavitasat. Ez egy lepesro"l lepesre tesztelt es
           elleno"rzo:tt modszer, amellyel a rendszeru:nket
           megfelelo"en ki tudjuk javitani es biztonsagossa tenni.
   (14)
           A Correction Details mezo" mutatja a CVS-ag vagy kiadas
           nevet, amelyben a pontokat alahuzasra csereltek.
           Ezenkivu:l meg az egyes agakban az erintett allomanyok
           reviziojat is mutatja.
   (15)
           A References mezo" altalaban a temaval kapcsolatos tovabbi
           forrasokat kinalja fel URL, ko:nyv, levelezesi lista vagy
           hircsoport formajaban.

     --------------------------------------------------------------

14.15. A futo programok nyilvantartasa

   Irta: Tom Rhodes.

   A futo programok nyilvantartasa olyan biztonsagi modszer, ahol a
   rendszergazda figyelemmel kiseri a rendszer hasznalatban levo"
   ero"forrasait, a felhasznalok ko:zti megoszlasat, gondoskodik a
   rendszer felu:gyeletero"l es valamennyire nyomon ko:veti a
   felhasznalok parancsait.

   Ennek a modszernek egyarant megvannak a maga elo"nyei es
   hatranyai. Az egyik elo"nye, hogy a hasznalataval a behatolas
   egeszen a beto:res pontjaig visszako:vetheto". Hatranya viszont,
   hogy a futo programok nyilvantartasa rengeteg mennyisegu" naplot
   general es ehhez sok lemezteru:letre lesz szu:ksegu:nk. Ebben a
   szakaszban vegigjarjuk a programok nyilvantartasanak alapjait.

     --------------------------------------------------------------

  14.15.1. A futo programok nyilvantartasanak engedelyezese es
  hasznalata

   A futo programok nyilvantartasat elo"szo:r engedelyeznu:nk kell.
   Ehhez a ko:vetkezo" parancsokat kell kiadnunk:

 # touch /var/account/acct

 # accton /var/account/acct

 # echo 'accounting_enable="YES"' >> /etc/rc.conf

   Miutan aktivaltuk, a nyilvantartast elkezdi szambavenni a
   processzor kihasznaltsagat, a parancsokat stb. A nyilvantartas
   emberek szamara nem olvashato formatumban keszu:l, ezert csak az
   sa(8) segedprogrammal tudjuk megnezni. Ha nem adunk meg neki
   semmilyen opciot, akkor az sa kilistazza a felhasznalonkenti
   hivasokat, az o:sszes eltelt ido"t percben, a teljes processzor-
   es felhasznaloi ido"t percben, az I/O mu"veletek atlagos szamat
   stb.

   A kiadott parancsokrol a lastcomm(1) programmal tudunk
   tajekozodni. A lastcomm segitsegevel ki tudjuk iratni a
   felhasznalok adott terminalon kiadott parancsait is, mint peldaul:

 # lastcomm ls
         trhodes ttyp1

   Ezzel megjelenik a trhodes nevu" felhasznalo ttyp1 terminalon
   kiadott o:sszes ismert ls parancsa.

   Szamos hasznos beallitast es hozzajuk tartozo leirast talalhatunk
   meg a lastcomm(1), acct(5) es sa(8) man oldalakon.

     --------------------------------------------------------------

                     Fejezet 15. A jail alrendszer

   Irta: Matteo Riondato.

     --------------------------------------------------------------

15.1. Attekintes

   Ez a fejezet a FreeBSD-ben talalhato jail alrendszert, valamint
   annak hasznalatat mutatja be ko:zelebbro"l. Az jail, melyet
   gyakran csak ugy emlegetnek, mint a chroot ko:rnyezetek
   tovabbfejleszteset, a rendszergazdak szamara ajanlott, nagyon
   sokoldalu eszko:z, de a halado felhasznalok is hasznosnak
   talalhatjak.

   A fejezet elolvasasa soran megismerju:k:

     * mi is az a jail, milyen celra hasznalhato a FreeBSD-ben;

     * hogyan hozzunk letre, inditsunk el es allitsunk le jaileket;

     * a letrehozott jailek karbantartasainak alapjait, a jailek
       belu:lro"l es kivu:lro"l egyarant.

   A jail alrendszerro"l meg to:bb hasznos informaciot a ko:vetkezo"
   helyekro"l tudhatunk meg:

     * A jail(8) man oldal. Ez tartalmazza a jail segedprogram teljes
       referenciajat -- ez az a karbantartasra hasznalhato eszko:z,
       amellyel el tudjuk inditani, le tudjuk allitani es vezerelni
       tudjuk a jaileket a FreeBSD-ben.

     * A levelezesi listak es azok archivumai. A FreeBSD general
       questions levelezesi lista archivuma es a FreeBSD lista
       szerveren talalhato to:bbi levelezesi lista rengeteg
       olvasnivalot tartogat a jailekkel kapcsolatban. Mindig erdemes
       keresni ezekben az archivumokban, vagy beku:ldeni a
       kerdesu:nket a freebsd-questions levelezesi listara.

     --------------------------------------------------------------

15.2. A jail alrendszerhez kapcsolodo fogalmak

   A fejezet tovabbi reszeben a ko:vetkezo" fogalmakat fogjuk
   hasznalni, hogy a FreeBSD jailekhez tartozo egyes reszeit es azok
   belso" mu"ko:deset, valamint kapcsolatukat a rendszer to:bbi
   reszevel meg inkabb ertheto"ve tegyu:k:

   chroot(2) (parancs)

           A FreeBSD azon rendszerhivasa, amely egy program es annak
           leszarmazottjai futtatasa soran megvaltoztatja a
           gyo:kerko:nyvtarat. (change root)

   chroot(2) (ko:rnyezet)

           A "chroot" modban futo programok ko:rnyezete. Olyan
           ero"forrasokat foglal magaban, mint mondjuk az
           allomanyrendszer lathato resze, az elerheto" felhasznaloi
           es csoport azonositok, halozati csatolok es egyeb
           folyamatok ko:zti kommunikacios mechanizmusok stb.

   jail(8) (parancs)

           Az a rendszerkarbantarto segedprogram, amely leheto"ve
           teszi program elinditasat elzart ko:rnyezetben.

   befogado (rendszer, program, felhasznalo stb.)

           Az elzart ko:rnyezetet iranyito rendszer. A befogado
           rendszer hozza tud ferni az o:sszes elerheto" hardveres
           ero"forrashoz, kepes az elzart ko:rnyezeten kivu:l es
           belu:l futo programokat vezerelni. Az egyik legfontosabb
           ku:lo:nbseg a befogado es az elzart rendszer ko:zo:tt,
           hogy azok a korlatozasok, amelyek az elzart ko:rnyezetben
           rendszeradminisztratori jogokkal futo programokra
           vonatkoznak, nem feltetlenu:l ervenyesek a befogado
           rendszerben futoakra.

   befogadott (rendszer, program, felhasznalo stb.)

           Olyan program, felhasznalo vagy mas egyeb egyed, amely
           csak egy jailen keresztu:l, korlatozottan tud hozzaferni
           az ero"forrasokhoz.

     --------------------------------------------------------------

15.3. Bevezetes

   Mivel a rendszeradminisztracio egy nehez es zavarba ejto" feladat,
   rengeteg komoly eszko:z jo:tt letre a rendszergazdak eletenek
   megko:nnyitesere. Ezek az eszko:zo:k to:bbnyire a rendszerek
   telepiteset, beallitasat es karbantartasat igyekeznek valamilyen
   modon jobba tenni. A rendszergazdak egyik feladata ugy gondoskodni
   a biztonsagrol, hogy ko:zben a rendszer kepes legyen ellatni
   eredeti feladatat.

   A FreeBSD rendszerek biztonsagossaganak no:veleset hivatott egyik
   ilyen eszko:z a jails. Elo"szo:r a FreeBSD 4.X verziojaban bukkant
   fel, de jelento"s fejlo"desen ment keresztu:l a FreeBSD 5.X
   verziokban, aminek ko:szo:nheto"en sokkal ero"teljesebb es
   rugalmasabb alrendszerre valt. A fejlesztese termeszetesen most is
   folytatodik tovabb, allandoan fejlo"dik a hasznalhatosaga,
   teljesitmenye, megbizhatosaga es biztonsagossaga.

     --------------------------------------------------------------

  15.3.1. Mi is az a jail?

   A BSD-szeru" operacios rendszerekben mar a 4.2BSD ota megtalalhato
   volt a chroot(2). A chroot(8) segedprogrammal meg tudjuk
   megvaltoztatni adott programok szamara a gyo:kerko:nyvtarat, es
   ezzel egy biztonsagos ko:rnyezetet teremteni, tavol a rendszer
   to:bbi reszeto"l. A chroot-tal kialakitott ko:rnyezetben elindulo
   programok nem tudnak hozzaferni a rajta kivu:l talalhato
   allomanyokhoz es ero"forrasokhoz. Ennek okan, ha egy ilyen
   ko:rnyezetben futo szolgaltatast megtamadnak, az o:nmagaban meg
   nem teszi leheto"ve a tamado szamara, hogy elerhesse az egesz
   rendszert. A chroot(8) remeku:l hasznalhato olyan egyszeru"bb
   feladatok megoldasara, amelyek nem igenyelnek tulsagosan sok
   rugalmassagot vagy bonyolult es fejlett tamogatast. A chroot
   o:tletenek felmeru:lese ota azonban szamos kiskaput talaltak mar
   az altala letrehozott ko:rnyezetekben, es habar ezek mindegyiket
   javitottak a FreeBSD ujabb valtozataiban, teljesen egyertelmu"ve
   valt, hogy a chroot(2) nem biztosit jarhato utat a szolgaltatasok
   biztonsagossa tetelehez. Erre a feladatra egy uj alrendszert
   kellett kiepiteni.

   Ez az egyik oka annak, amiert az jaileket kifejlesztettek.

   A jailek altal kepviselt elzaras o:tlete to:bb szempontbol is a
   hagyomanyos chroot(2) ko:rnyezet elven alapszik. Egy hagyomanyos
   chroot(2) ko:rnyezetben futo programok korlatozasa csupan abban
   meru:l ki, hogy az allomanyrendszer melyik reszet lathatjak. A
   rendszer to:bbi ero"forrasa (mint mondjuk a felhasznalok, futo
   programok vagy a halozati alrendszer) azonban tovabbra is
   megosztva marad a chroot ko:rnyezetben es a befogado rendszerben
   futo programok ko:zo:tt. A jailek altal alkalmazott megoldas
   kibo"viti ezt a modellt, es nem csak az allomanyrendszerre
   vonatkozo hozzaferest virtualizalja, hanem to:bb mas dolog mellett
   kiterjeszti ezt a felhasznalokra es a FreeBSD halozati
   alrendszerere is. Az elzart ko:rnyezetek beallitasaihoz elerheto"
   finomhangolasi leheto"segekro"l bo"vebben a 15.5 Szakaszban esik
   szo.

   A jaileket az alabb negy elem irja le:

     * A ko:nyvtarszerkezet egy reszfaja -- attol a reszto"l indulva,
       ahonnan a jail kezdo"dik. A jailen belu:l futo programok nem
       lephetnek ki ebbo"l a reszfabol. Az eredeti chroot(2)
       kialakitasaban merengo" biztonsagi hibak leheto"segei nem
       veszelyeztetik a to:bbi FreeBSD jailt.

     * A rendszer neve -- a nev, amelyet a jailen belu:l hasznalunk.
       Mivel a jaileket elso"sorban halozati szolgaltatasok kordaban
       tartasara hasznaljuk, a jailekhez tartozo beszedes
       rendszernevek sokat tudnak segiteni a rendszergazdak
       munkajaban.

     * Egy IP-cim -- a jailhez tartozik es nem valtoztathato meg a
       mu"ko:dese soran. Egy jail IP-cime altalaban egy mar letezo"
       halozati csatolo masik cime, de ez nem szu:ksegszeru"en igaz
       minden esetben.

     * Egy parancs -- annak a programnak az eleresi utja, amelyet
       elzartan kivanunk futtatni. Az elzart ko:rnyezet gyo:kereto"l
       merve relativan adjuk meg, es az adott ko:rnyezet tipusatol
       fu:ggo"en eltero" lehet.

   Ezekto"l eltekintve a jailek rendelkezhetnek sajat felhasznalokkal
   es lehetnek sajat root felhasznaloik is. Termeszetesen a root
   hatasko:re csak az elzart ko:rnyezetre korlatozodik, es a befogado
   rendszer szemszo:gebo"l az elzart root nem mindenhato. Raadasul az
   elzart root felhasznalo nem hajthat vegre semmilyen kritikus
   mu"veletet a sajat jail(8) ko:rnyezeten kivu:l. A root tovabbi
   kepessegeiro"l es korlatozasairol lentiekben bo"vebben is emlitest
   teszu:nk a 15.5 Szakaszban.

     --------------------------------------------------------------

15.4. A jailek letrehozasa es vezerlese

   Egyes rendszergazdak a jaileket a ko:vetkezo" ket tipusba
   soroljak: "teljes" jail, mely egy valodi FreeBSD rendszerre
   emlekeztet, es a "szolgaltatas" jail, mely egyetlen, felteheto"en
   kiemelt jogokkal futo alkalmazas vagy szolgaltatas szamara van
   elo"keszitve. Ez a besorolas csupan fogalmi szintu", a jail
   felepitesenek modjat nem befolyasolja. A jail(8) man oldal
   reszletesen ismerteti a jailek letrehozasat:

 # setenv D /itt/lesz/a/jail
 # mkdir -p $D (1)
 # cd /usr/src
 # make buildworld (2)
 # make installworld DESTDIR=$D (3)
 # cd etc/
       [9]
 # make distribution DESTDIR=$D (4)
 # mount -t devfs devfs $D/dev (5)

   (1)
           Erdemes elo"szo:r a jail helyet megvalasztani. Itt fog
           fizikailag helyet foglalni a befogado rendszer
           allomanyrendszeren belu:l a jail. Jo valasztas lehet erre
           a /usr/jail/jailnev, ahol a jailnev a jailt azonosito
           rendszernev. A /usr/ allomanyrendszeren altalaban
           elegendo" hely jut a jail allomanyrendszerenek, ami egy
           "teljes" jail eseten lenyegeben a FreeBSD alaprendszer
           alapertelmezett telepiteseben megtalalhato o:sszes
           allomany masolatat tartalmazza.
   (2)
           Ha korabban mar a make world vagy a make buildworld
           parancs segitsegevel ujraforditottuk az alaprendszert,
           akkor ezt a lepest ki is hagyhatjuk es telepitsu:k az uj
           alaprendszert ko:zvetlenu:l az uj jailbe.
   (3)
           Ez a parancs fogja felmasolni a jail fizikai helyenek
           valasztott ko:nyvtar-reszfaba a mu"ko:deshez szu:kseges
           programokat, fu:ggvenyko:nyvtarakat, man oldalakat es igy
           tovabb.
   (4)
           A make parameterekent megadott distribution cel
           gondoskodik az o:sszes szu:kseges konfiguracios allomany
           felmasolasarol. Magyaran szolva, atmasolja az o:sszes
           telepiheto" allomanyt a /usr/src/etc/ ko:nyvtarbol a jail
           /etc alko:nyvtaraba, vagyis a $D/etc/ ko:nyvtarba.
   (5)
           A jaileken belu:l a devfs(8) csatlakoztatasa nem
           ko:telezo". Masreszt azonban majdnem mindegyik alkalmazas,
           a feladatatol fu:ggo"en, legalabb egy eszko:zho:z hozza
           akar ferni. Nagyon fontos, hogy a kezu:nkbe vegyu:k a
           eszko:zo:k hozzaferesenek iranyitasat a jaileken belu:l,
           mivel a helytelen beallitasok reven a tamadok csunya
           dolgokat tudnak majd mu"velni. A devfs(8) mu"ko:deset a
           devfs(8) es devfs.conf(5) man oldalakon is ismertetett
           szabalyrendszerek iranyitjak.

   Ahogy a jailt telepitettu:k, a jail(8) segedprogrammal tudjuk
   elinditani. A jail(8) negy ko:telezo" parametert var, melyekre a
   15.3.1 Szakaszban ki is teru:nk. Mas parametereket is megadhatunk,
   peldaul azt, hogy az elzart program egy adott felhasznalo jogaival
   fusson. A command parameter hasznalata a jail tipusatol fu:gg: egy
   virtualis rendszer eseteben a /etc/rc jo valasztasnak bizonyulhat,
   mivel ennek segitsegevel egy valodi FreeBSD rendszerinditasi
   folyamatat jatszhatjuk le. Amennyiben elzart szolgaltatasrol van
   szol, az adott szolgaltatastol vagy alkalmazastol fu:gg.

   A jaileket gyakran mar a rendszerinditas soran elinditjak, amit a
   FreeBSD rc mechanizmusa nagyban meg is ko:nnyit.

    1. A rendszer inditasa soran aktivalando jailek listajat vegyu:k
       hozza a rc.conf(5) allomanyhoz:

 jail_enable="YES"   # Ide NO-t irjunk, ha ki akarjuk kapcsolni
 jail_list="www"     # Szoko:zzel elvalasztva soroljuk fel a jaileket

    2. A jail_list-ben szereplo" o:sszes jailt meg kell adnunk az
       ezeket leiro rc.conf(5)-beli beallitasokat:

 jail_www_rootdir="/usr/jail/www"     # a jail gyo:kerko:nyvtara
 jail_www_hostname="www.example.org"  # a jail neve
 jail_www_ip="192.168.0.10"           # a jail IP-cime
 jail_www_devfs_enable="YES"          # legyen-e devfs a jailen belu:l
 jail_www_devfs_ruleset="www_ruleset" # az alkalmazott devfs szabalyrendszer

       Az rc.conf(5) allomanyban szereplo" jailek eseten a /etc/rc
       szkript fut le, tehat feltetelezi, hogy az igy megadott jail
       egy teljes virtualis rendszer. A szolgaltatasok jailbe
       foglalasahoz meg kell valtoztatnunk a jail alapertelmezett
       parancsat is. Ezt a jail_jailnev_exec_start opcio megfelelo"
       beallitasaval tudjuk megtenni.

         Megjegyzes: Az o:sszes itt elerheto" opciot a rc.conf(5) man
         oldalon talalhatjuk meg.

   Ha leteznek a megfelelo" bejegyzesek az rc.conf allomanyban, akkor
   az /etc/rc.d/jail szkript is hasznalhato arra, hogy a jaileket
   kezzel inditsuk el vagy allitsuk le:

 # /etc/rc.d/jail start www
 # /etc/rc.d/jail stop www

   A jail(8) leallitasara jelen pillanatban meg nem erheto" el
   szabalyos modszer. Ez azert van, mert a szabalyos
   rendszerleallitast elvegzo" parancsok nem hasznalhatoak a jailen
   belu:l. Emiatt a jaileket a legtisztabban ugy tudjuk leallitani,
   ha kiadjuk az alabbi parancsot magaban a jailben vagy pedig a
   jexec(8) segedprogrammal a jailen kivu:lro"l:

 # sh /etc/rc.shutdown

   Erro"l a temarol to:bbet a jail(8) man oldalon olvashatunk.

     --------------------------------------------------------------

15.5. Finomhangolas es karbantartas

   Szamos opcio allithato be a jaileknel, es sokfele modon
   vegyithetju:k a befogado FreeBSD rendszeru:nket a jailekkel, ami
   altal magasabb szintu" alkalmazasokat hozhatunk letre. Ebben a
   reszben bemutatunk:

     * Nehany olyan beallitast, amellyel finomhangolhatjuk a
       telepitett jailek altal megvalositott biztonsagi megszoritasok
       viselkedeset.

     * A jailek kezelesere alkalmas nehany olyan magasabb szintu"
       alkalmazast, amelyek elerheto"ek a FreeBSD Portgyu"jtemenyen
       keresztu:l, es altalanos jail alapu megoldasok kialakitasahoz
       hasznalhatoak.

     --------------------------------------------------------------

  15.5.1. A FreeBSD-ben talalhato finomhangolo eszko:zo:k

   A jailek beallitasainak finomhangolasat tulnyomoreszt sysctl(8)
   valtozokkal vegezhetju:k el. A sysctl-en belu:l egy specialis
   reszfaban talalhatunk erre alkalmas beallitasokat: ez a a FreeBSD
   rendszermag opcioi ko:zo:tt megtalalhato security.jail.*. Itt
   ko:zu:lju:k a jailekre vonatkozo fontosabb sysctl valtozok
   listajat, az alapertelmezett ertekeikkel egyu:tt. A nevek minden
   bizonnyal sokat elarulnak, de ha to:bbet szeretnenk tudni roluk,
   lapozzuk fel a jail(8) es sysctl(8) man oldalakat.

     * security.jail.set_hostname_allowed: 1

     * security.jail.socket_unixiproute_only: 1

     * security.jail.sysvipc_allowed: 0

     * security.jail.enforce_statfs: 2

     * security.jail.allow_raw_sockets: 0

     * security.jail.chflags_allowed: 0

     * security.jail.jailed: 0

   Ezekkel a valtozokkal a befogado rendszer rendszergazdaja tud
   hozzatenni vagy elvenni a root felhasznalo alapertelmezett
   hataraihoz. Vegyu:k azonban eszre, hogy egyes korlatozasok azonban
   semmikeppen sem szu:ntetheto"ek meg. A root nem csatlakoztathat es
   valaszthat le allomanyrendszereket a jail(8) ko:rnyezetben. Az
   elzart root nem to:lthet be es to:ro:lhet devfs(8)
   szabalyrendszereket, tu"zfal szabalyokat sem, ill. nem vegezhet
   semmilyen olyan barmilyen mas karbantartasi feladatot, amely a
   rendszermag adataiban modositast vonna maga utan, peldaul nem
   allithatja a rendszermag securelevel (biztonsagi szintjenek)
   erteket.

   A FreeBSD alaprendszere tartalmazza azokat a segedeszko:zo:ket,
   amelyekkel a rendszerben aktiv jailek informaciot tudjuk
   megjeleniteni, vagy csatlakozni tudunk hozzajuk. A jls(8) es
   jexec(8) parancsok reszei az alap FreeBSD rendszernek,
   segitsegu:kkel elvegezheto"ek az alabbi egyszeru" feladatokat:

     * Ki tudjuk iratni az aktiv jailek es hozzajuk tartozo
       azonositokat (JID-eket), IP-cimeket, neveket es utvonalakat.

     * A befogado rendszerbo"l hozza tudunk csatlakozni egy futo
       jailhez, es parancsokat tudunk futtatni a jailen belu:l vagy
       karbantartasi feladatokat tudunk elvegezni magan a jailen
       belu:l. Ez ku:lo:no:sen hasznosnak bizonyulhat, amikor a root
       felhasznalo szabalyosan le akarja allitani a jailt. A jexec(8)
       segedprogrammal el tudunk inditani egy parancsertelmezo"t a
       jailen belu:l, amibo"l aztan iranyithatjuk. Pelda:

 # jexec 1 tcsh

     --------------------------------------------------------------

  15.5.2. Magasszintu" karbantarto eszko:zo:k a FreeBSD
  Portgyu"jtemenyeben

   A sok ku:lso" karbantarto eszko:z ko:zu:l az egyik legteljesebb es
   leghasznosabb a sysutils/jailutils. Sok kisebb alkalmazast
   tartalmaz, melyek kibo"vitik a jail(8) iranyithatosagat. Bo"vebb
   informaciokert kerju:k, latogassa meg a hozzatartozo honlapot.

     --------------------------------------------------------------

15.6. A jailek alkalmazasa

  15.6.1. Szolgaltatasok jailbe foglalasa

   Irta: Daniel Gerzo.

   Ez a resz eredetileg Simon L. Nielsen <simon@FreeBSD.org>
   http://simon.nitro.dk/service-jails.html oldalon talalhato irasan,
   valamint Ken Tom (<locals@gmail.com>) atdolgozott cikken alapul.
   Itt megismerhetju:k, hogyan allitsunk be a FreeBSD rendszeru:nkben
   egy biztonsagi reteget a jail(8) felhasznalasaval. Tovabba
   feltetelezzu:k, hogy ez a rendszer legalabb RELENG_6_0 verzioju es
   a fejezetben korabban targyaltakat az olvaso teljes mertekben
   megertette.

     --------------------------------------------------------------

    15.6.1.1. A kialakitas

   A jailek egyik legnagyobb gondja a frissites folyamatanak
   lebonyolitasa. Azert jelent ez egyre inkabb gondot, mert minden
   egyes jailt ujra fel kell epitenu:nk a frissitese soran. Ez
   to:bbnyire nem okoz gondot egyetlen jail hasznalata soran, mivel
   maga a frissitesi folyamat megleheto"sen egyszeru", azonban igen
   ido"igenyesse es farasztova tud valni to:bb jail eseteben.

     Figyelem: Ez a pelda a FreeBSD kepessegeinek halado szintu"
     ismeretet ko:veteli meg. Amennyiben az itt bemutatott lepesek
     tulsagosan is bonyolultnak tu"nnenek, erdemes olyan egyszeru"bb
     rendszerek utan nezni, mint mondjuk a sysutils/ezjail, amely egy
     egyszeru"bb modszert kinal fel a FreeBSD-ben hasznalt jailek
     karbantartasara, es nem is annyira bonyolult, mint ez a pelda.

   A bemutatando pelda celja, hogy feloldja az ilyen jellegu"
   problemakat, es ezert igyekszik a jailek ko:zo:tt mindent
   megosztani, ami csak lehetseges. Mindezt biztonsagosan eri el --
   irasvedett mount_nullfs(8) allomanyrendszer hasznalataval, aminek
   ko:szo:nheto"en a frissites maga egyszeru"bbe, az egyes
   szolgaltatasok ku:lo:nzarasa pedig vonzobba valik. Raadasul
   egyuttal egy nagyon egyszeru" modszert mutat az uj jailek
   hozzaadasara es a regi to:rlesere ugyanugy, mint a frissitesu:kre.

     Megjegyzes: Peldaul ilyen szolgaltatasokat kivanunk szabalyozni:
     egy HTTP szervert, egy DNS szervert, egy SMTP szervert es igy
     tovabb.

   Az itt szereplo" beallitas celjai:

     * Keszitsu:nk egy egyszeru"en es ko:nnyen atlathato jailkezelesi
       rendszert. Ebbo"l tehat ko:vetkezik, hogy ne kelljen
       lefuttatni a teljes rendszer telepiteset minden egyes jailre.

     * Ko:nnyitsu:k meg az uj jailek hozzaadasat es a regiek
       eltavolitasat.

     * Ko:nnyitsu:k meg a mar letezo" jailek frissiteset es cserejet.

     * Tegyu:k leheto"ve sajat FreeBSD agak futtatasat.

     * Legyu:nk ku:lo:no:sen ko:ru:ltekinto"ek a biztonsag
       tekinteteben, es igyekezzu:nk minel jobban cso:kkenteni
       veszely kockazatat.

     * Takarekoskodjunk a tarhellyel es az allomanyrendszerrel,
       amennyire csak lehet.

   Ahogy azt mar korabban is emlitettu:k, ez a kialakitas nagyban
   epitkezik egyetlen fo" sablonra, amely irasvedetten keru:l
   csatlakoztatasra (nullfsen keresztu:l) az egyes jailekben,
   valamint jailenkent egy-egy irhato-olvashato eszko:zre. Ez az
   eszko:z lehet egy ku:lo:n fizikai lemez, egy particio vagy egy
   vnode alapu md(4) eszko:z. Ebben a peldaban irhato-olvashato
   nullfs csatlakozasokat hasznalunk.

   Az allomanyrendszer kiosztasa a most ko:vetkezo" listaban
   szerepel:

     * Minden jailt a /home/j ko:nyvtarban csatlakoztatunk.

     * A /home/j/mroot lesz az o:sszes jail sablonja es mindegyiku:k
       szamara irasvedett.

     * Minden jailnek letrehozunk egy u:res alko:nyvtarat a /home/j
       ko:nyvtarban.

     * Minden jailnek lesz egy /s alko:nyvtara, amelyet a rendszer
       irhato-olvashato reszere iranyitunk.

     * Minden jailnek lesz egy sajat irhato-olvashato resze, amely a
       /home/j/skel ko:nyvtaron alapszik.

     * Mindegyik elzart teru:let (a jailek irhato-olvashato resze) a
       /home/js ko:nyvtarban jo:n letre.

     Megjegyzes: Ez a kiosztas feltetelezi, hogy a jaileket a /home
     particion hozzuk letre. Ez termeszetesen barmi masra
     megvaltoztathato, de akkor figyelnu:nk kell erre minden egyes
     parancs kiadasa elo"tt.

     --------------------------------------------------------------

    15.6.1.2. A sablon letrehozasa

   Ez a resz leirja a fo" sablon letrehozasahoz szu:kseges lepeseket.
   Ez a jailek szamara irasvedett lesz.

   

   Erdemes mindig frissiteni a FreeBSD rendszeru:nket a legujabb
   -RELEASE agra. Ehhez olvassuk el az ide tartozo fejezetet a
   keziko:nyvbo"l. Abban az esetben, ha a frissites nem lenne
   megoldhato, egy make buildworld parancsot mindenkeppen le kell
   tudnunk futtatni. Ezenfelu:l a sysutils/cpdup csomagra is
   szu:ksegu:nk van. Hasznalni fogjuk a portsnap(8) segedprogramot is
   a FreeBSD Portgyu"jtemeny leto:ltesehez. Akik nem ismernek, a
   keziko:nyv erro"l szolo fejezeteben olvashatnak rola.

    1. Elo"szo:r is, keszitsu:k el az irasvedett allomanyrendszer
       ko:nyvtarszerkezetet, amely majd tartalmazni fogja a jailek
       altal hasznalt FreeBSD-s programokat. Ezutan lepju:nk be a
       FreeBSD forrasfajanak ko:nyvtaraba es telepitsu:k fel az
       irasvedett allomanyrendszert a sablonba:

 # mkdir /home/j /home/j/mroot
 # cd /usr/src
 # make installworld DESTDIR=/home/j/mroot

    2. Ezt ko:veto"en keszitsu:k elo" a jailek szamara a FreeBSD
       Portgyu"jtemenyt es FreeBSD forrasfat, melyek kellenek a
       mergemaster hasznalatahoz:

 # cd /home/j/mroot
 # mkdir usr/ports
 # portsnap -p /home/j/mroot/usr/ports fetch extract
 # cpdup /usr/src /home/j/mroot/usr/src

    3. Hozzuk letre a rendszer irasvedett reszenek vazat:

 # mkdir /home/j/skel /home/j/skel/home /home/j/skel/usr-X11R6 /home/j/skel/distfiles
 # mv etc /home/j/skel
 # mv usr/local /home/j/skel/usr-local
 # mv tmp /home/j/skel
 # mv var /home/j/skel
 # mv root /home/j/skel

    4. Hasznaljuk a mergemastert a hianyzo konfiguracios allomanyok
       telepitesere. Szabaduljunk meg a mergemaster altal keszitett
       felesleges ko:nyvtaraktol:

 # mergemaster -t /home/j/skel/var/tmp/temproot -D /home/j/skel -i
 # cd /home/j/skel
 # rm -R bin boot lib libexec mnt proc rescue sbin sys usr dev

    5. Most pedig szimbolikusan linkelju:k az irhato-olvashato
       allomanyrendszert az irasvedett allomanyrendszerre.
       Elleno"rizzu:k, hogy a szimbolikus linkek a megfelelo" s/
       ko:nyvtarakban jo:ttek letre. Valos vagy rossz helyen
       letrehozott ko:nyvtarak hasznalata eseten a telepites nem fog
       sikeru:lni.

 # cd /home/j/mroot
 # mkdir s
 # ln -s s/etc etc
 # ln -s s/home home
 # ln -s s/root root
 # ln -s ../s/usr-local usr/local
 # ln -s ../s/usr-X11R6 usr/X11R6
 # ln -s ../../s/distfiles usr/ports/distfiles
 # ln -s s/tmp tmp
 # ln -s s/var var

    6. Utolso lepeskent hozzunk letre egy /home/j/skel/etc/make.conf
       allomanyt az alabbi tartalommal:

 WRKDIRPREFIX?=  /s/portbuild

       A WRKDIRPREFIX beallitasaval leheto"ve valik a FreeBSD portok
       jaileken belu:li forditasa. Ne felejtsu:k el, hogy a portokat
       tartalmazo ko:nyvtar az irasvedett rendszer resze! Az
       atallitott WRKDIRPREFIX azonban megengedi, hogy a forditasok
       az egyes jailek irhato-olvashato reszeiben to:rtenjenek.

     --------------------------------------------------------------

    15.6.1.3. A jailek letrehozasa

   Most, miutan teljesen elkeszu:lt a FreeBSD jailek sablonja, be is
   tudjuk allitani es hozza is tudjuk venni ezeket az /etc/rc.conf
   allomanyhoz. Ebben a peldaban 3 jail letrehozasat lathatjuk: "NS",
   "MAIL" es "WWW".

    1. Irjuk bele a ko:vetkezo" sorokat az /etc/fstab allomanyba,
       aminek ko:szo:nheto"en az egyes jailek szamara elerheto"ve
       valik az irasvedett sablon es a hozzajuk tartozo
       irhato-olvashato teru:letek:

 /home/j/mroot   /home/j/ns     nullfs  ro  0   0
 /home/j/mroot   /home/j/mail   nullfs  ro  0   0
 /home/j/mroot   /home/j/www    nullfs  ro  0   0
 /home/js/ns     /home/j/ns/s   nullfs  rw  0   0
 /home/js/mail   /home/j/mail/s nullfs  rw  0   0
 /home/js/www    /home/j/www/s  nullfs  rw  0   0

         Megjegyzes: Az elso" helyen nullaval jelo:lt particiokat a
         fsck(8) nem fogja elleno"rizni a rendszer indulasa soran, a
         masodik helyen nullaval jelo:lt particiokat pedig nem fogja
         menteni a dump(8). Mi egyaltalan nem akarjuk, hogy az fsck
         elleno"rizze vagy a dump lementse a jailjeinkhez tartozo
         irasvedett nullfs-particioinkat. Ezert szerepel vegig "0 0"
         a fentebb szereplo" fstab-bejegyzesek utolso ket oszlopaban.

    2. Allitsuk be a jaileket az /etc/rc.conf-ban:

 jail_enable="YES"
 jail_set_hostname_allow="NO"
 jail_list="ns mail www"
 jail_ns_hostname="ns.example.org"
 jail_ns_ip="192.168.3.17"
 jail_ns_rootdir="/usr/home/j/ns"
 jail_ns_devfs_enable="YES"
 jail_mail_hostname="mail.example.org"
 jail_mail_ip="192.168.3.18"
 jail_mail_rootdir="/usr/home/j/mail"
 jail_mail_devfs_enable="YES"
 jail_www_hostname="www.example.org"
 jail_www_ip="62.123.43.14"
 jail_www_rootdir="/usr/home/j/www"
 jail_www_devfs_enable="YES"

         Figyelem: Azert allitottuk a jail_nev_rootdir valtozo
         erteket a /usr/home ko:nyvtarra a /home ko:nyvtar helyett,
         mert a FreeBSD alaptelepiteseben a /home ko:nyvtar
         fizikailag a /usr/home ko:nyvtarral egyezik meg. A
         jail_nev_rootdir valtozo ertekekent megadott ko:nyvtar nem
         tartalmazhat szimbolikus linket, masku:lo:nben a jailek nem
         lesznek hajlandoak letrejo:nni. Ennek megallapitasaban a
         realpath(1) segedprogram lehet segitsegu:nkre. A korlatozas
         reszleteiro"l a FreeBSD-SA-07:01.jail biztonsagi
         figyelmeztetesben olvashatunk.

    3. Hozzuk letre az egyes jailek irasvedett allomanyrendszereihez
       szu:kseges csatlakozasi pontokat:

 # mkdir /home/j/ns /home/j/mail /home/j/www

    4. Telepitsu:k az irhato-olvashato sablont az egyes jailekbe.
       Figyelju:k meg a sysutils/cpdup hasznalatat, amellyel az egyes
       ko:nyvtarak pontos masolatait hozhatjuk letre:

 # mkdir /home/js
 # cpdup /home/j/skel /home/js/ns
 # cpdup /home/j/skel /home/js/mail
 # cpdup /home/j/skel /home/js/www

    5. Ebben a fazisban a jailek mar elkeszu:ltek es keszen allnak a
       futasra. Elo"szo:r csatlakoztassuk az egyes jailekhez
       szu:kseges allomanyrendszereket, majd inditsuk el ezeket a
       /etc/rc.d/jail szkripttel:

 # mount -a
 # /etc/rc.d/jail start

   A jailek most mar futnak. Az elindulasuk elleno"rzesehez
   hasznaljuk a jls(8) parancsot. Valami ilyesmit lathatunk a kiadasa
   utan:

 # jls
    JID  IP Address      Hostname                      Path
      3  192.168.3.17    ns.example.org                /home/j/ns
      2  192.168.3.18    mail.example.org              /home/j/mail
      1  62.123.43.14    www.example.org               /home/j/www

   Itt mar be tudunk jelentkezni az egyes jailekbe, uj felhasznalokat
   tudunk kesziteni vagy demonokat tudunk beallitani. A JID oszlop
   mutatja az egyes jailek azonositasi szamat. A 3-as JID szamu
   jailben az alabbi parancs hasznalataval karbantartasi feladatokat
   elvegezni:

 # jexec 3 tcsh

     --------------------------------------------------------------

    15.6.1.4. Frissites

   Ido"ro"l ido"re adodhat, hogy frissitenu:nk kell a rendszert a
   FreeBSD egy ujabb valtozatara, vagy egy biztonsagi hiba javitasa
   miatt, vagy pedig a mar meglevo" jailek szamara hasznos ujitasok
   bevezetese miatt. Ez a kialakitas megko:nnyiti a korabban
   letrehozott jailjeink frissiteset. Tovabba igyekszik minimalizalni
   a kiesesu:ket is, mivel a jaileket csak a legutolso pillanatban
   fogjuk leallitani. So"t, meg az is leheto"ve valik, hogy
   visszaallitsuk a korabbi verziot, ha veletlenu:l valami rosszul
   su:lne el menetko:zben.

    1. Elso" lepesekent frissitsu:k magat a befogado rendszert a
       megszokott modon. Ezutan hozzunk letre egy uj irasvedett
       sablont a /home/j/mroot2 ko:nyvtarban.

 # mkdir /home/j/mroot2
 # cd /usr/src
 # make installworld DESTDIR=/home/j/mroot2
 # cd /home/j/mroot2
 # cpdup /usr/src usr/src
 # mkdir s

       A installworld lefuttatasa letrehoz nehany felesleges
       ko:nyvtarat, melyeket takaritsunk is el:

 # chflags -R 0 var
 # rm -R etc var root usr/local tmp

    2. Hozzuk ujra letre az irhato-olvashato szimbolikus linkjeinket
       a fo" allomanyrendszerre:

 # ln -s s/etc etc
 # ln -s s/root root
 # ln -s s/home home
 # ln -s ../s/usr-local usr/local
 # ln -s ../s/usr-X11R6 usr/X11R6
 # ln -s s/tmp tmp
 # ln -s s/var var

    3. Most erkezett el az ido", hogy leallitsuk a jaileket:

 # /etc/rc.d/jail stop

    4. Valasszuk le az eredeti allomanyrendszereket:

 # umount /home/j/ns/s
 # umount /home/j/ns
 # umount /home/j/mail/s
 # umount /home/j/mail
 # umount /home/j/www/s
 # umount /home/j/www

         Megjegyzes: Az irhato-olvashato allomanyrendszerek hozza
         vannak kapcsolva az irasvedett allomanyrendszerhez (/s),
         ezert azokat elo"szo:r le kell valasztani.

    5. Mozgassuk el az utbol a regi irasvedett allomanyrendszeru:nket
       es valtsuk fel az ujjal. Igy biztonsagi menteskent es a regi
       irasvedett rendszer archivumakent tovabbra is rendelkezesre
       all, ha valami baj to:rtenne. Az itt hasznalt elnevezes az
       ujonnan letrehozott irasvedett allomanyrendszer datumabol
       ered. Mozgassuk at az eredeti FreeBSD Portgyu"jtemenyt az uj
       allomanyrendszerre, hogy megtakaritsunk nemi tarhelyet es
       allomanyleirot:

 # cd /home/j
 # mv mroot mroot.20060601
 # mv mroot2 mroot
 # mv mroot.20060601/usr/ports mroot/usr

    6. Most mar keszen all az uj irasvedett sablon, igy mar csak az
       allomanyrendszerek ujracsatlakoztatasa es a jailek
       ujrainditasa maradt:

 # mount -a
 # /etc/rc.d/jail start

   A jls(8) hasznalataval elleno"rizzu:k, hogy a jailek rendesen
   elindultak. Ne felejtsu:k el jailenkent lefuttatni a mergemastert
   sem. A konfiguracios allomanyokat es az rc.d szkripteket is
   frissitenu:nk kell majd.

     --------------------------------------------------------------

               Fejezet 16. Ko:telezo" hozzaferes-vezerles

   Irta: Tom Rhodes.

16.1. Attekintes

   A FreeBSD 5.X valtozata uj biztonsagi bo"viteseket vett at a
   TrustedBSD projektbo"l a POSIX.1e nyoman. A ket legjelento"sebb uj
   biztonsagi mechanizmus az allomanyrendszerekben megtalalhato
   hozzaferes-vezerlesi listak (Access Control List, ACL) es a
   ko:telezo" hozzaferes-vezerles (Mandatory Access Control, MAC). A
   ko:telezo" hozzaferes-vezerles segitsegevel olyan uj
   hozzaferes-vezerlesi modulok to:ltheto"ek be, amelyek uj
   biztonsagi hazirendeket implementalnak. Nemelyek ko:zu:lu:k
   vedelmet nyujtanak a rendszer egy szu"k reszenek, amivel igy egy
   adott szolgaltatast bastyaznak ala. Masok minden reszletre
   kiterjedo" cimkezett biztonsagot szolgaltatnak alanyokon es
   objektumokon keresztu:l. A meghatarozas "ko:telezo"" resze onnan
   fakad, hogy a szabalyok betartatasat a rendszergazdak es a
   rendszer vegzik, es nem bizzak a felhasznalokra, ahogy azt a
   System V tipusu rendszerekben a szabvanyos allomanyokra es IPC-re
   ervenyes engedelyeken keresztu:l a tetszes szerinti
   hozzaferes-vezerles (Discretionary Access Control, DAC) teszi.

   Ebben a fejezetben a ko:telezo" hozzaferes-vezerlest o:vezo"
   keretrendszerre (MAC Framework) es a ku:lo:nbo:zo" biztonsagi
   hazirendeket megvalosito, beillesztheto" modulokra fogunk
   o:sszpontositani.

   A fejezet elolvasasa soran megismerju:k:

     * hogy a FreeBSD jelen pillanatban milyen modulokat tartalmaz a
       MAC rendszeren belu:l es milyen mechanizmusok tartoznak
       hozzajuk;

     * hogy a MAC biztonsagi hazirendjeit kepezo" modulok miket
       valositanak meg, valamint mi a ku:lo:nbseg a cimkezett es
       cimkezetlen hazirendek ko:zo:tt;

     * hogyan kell hatekonyan beallitani es hasznalni rendszeru:nkben
       a MAC rendszert;

     * hogyan allitsuk be a MAC rendszerben talalhato ku:lo:nfele
       biztonsagi hazirendeket kepezo" modulokat;

     * hogyan hozzunk letre a MAC rendszer segitsegevel egy
       biztonsagosabb ko:rnyezetet, amire peldakat is mutatunk;

     * hogyan tesztelju:k le a MAC rendszer beallitasait es
       bizonyosodjunk meg mu"ko:desenek helyessegero"l.

   A fejezet elolvasasahoz ajanlott:

     * a UNIX es a FreeBSD alapjainak ismerete (3 fejezet)

     * a rendszermag beallitasanak es leforditasanak ismerete (8
       fejezet)

     * tisztaban lenni az alapveto" biztonsagi kerdesekkel es azok
       hatasaval a FreeBSD-n belu:l (14 fejezet)

     Figyelem: Az itt ismertetesre keru:lo" informaciok helytelen
     alkalmazasa a rendszer hozzaferheto"segenek teljes elveszteset,
     a felhasznalok bosszantasat vagy az X11 altal felkinalt
     leheto"segek kirekeszteset eredmenyezheti. Ami viszont ennel is
     fontosabb, hogy a MAC rendszerre nem ugy kell tekinteni, mint
     amito"l a rendszeru:nk to:keletesen biztonsagossa valik. A MAC
     segitsegevel csupan a meglevo" biztonsagi hazirendeket
     gyarapitjuk. A szilard biztonsagi rutin es a rendszeres
     elleno"rzesek elvegzese nelku:l a rendszeru:nk valojaban sosem
     lesz teljesen biztonsagos.

     Hozza kell tennu:nk, hogy a fejezetben bemutatott peldak tenyleg
     csak peldak. Senkinek sem tanacsoljuk, hogy az itt emlitett
     beallitasokat egy eles rendszerre is kiterjessze. A
     ku:lo:nbo:zo" biztonsagi modulok felepitese rengeteg
     gondolkodast es probalgatast igenyel. Aki nem erti meg az egesz
     mu"ko:deset, ko:nnyen azon kaphatja magat, hogy ujra vegig kell
     mennie a rendszeren es egyenkent be kell allitania minden
     ko:nyvtarat es allomanyt.

     --------------------------------------------------------------

  16.1.1. Amivel itt nem foglalkozunk

   Ebben a fejezetben a MAC rendszerrel kapcsolatban rengeteg
   biztonsagi kerdessel foglalkozni fogunk. Az uj MAC biztonsagi
   modulok kifejleszteset azonban mar nem erintju:k. Szamos olyan
   biztonsagi modul talalhato a MAC rendszerben, amelyek rendelkeznek
   az uj modulok kialakitasahoz es tesztelesehez szu:kseges
   jellemzo"kkel. Ilyenek to:bbek ko:zt a mac_test(4), mac_stub(4) es
   a mac_none(4). Ezekro"l a biztonsagi modulokrol es az altaluk
   szolgaltatott mechnanizmusokrol a man oldalaik tudnak bo"vebb
   tajekoztatast adni.

     --------------------------------------------------------------

16.2. A fejezet fontosabb fogalmai

   A fejezet tartalmanak kifejtesehez szu:ksegu:nk lesz nehany
   fontosabb alapfogalom tisztazasara. Segitsegu:kkel velheto"en
   sikeru:l eloszlatni a tema feldolgozasa soran felmeru:lo"
   felreerteseket, illetve elkeru:lni az uj fogalmak es informaciok
   varatlan felbukkanasat.

     * alany: Alanynak tekintu:nk a rendszerben minden olyan aktiv
       egyedet, amely informaciot aramoltat az objektumok, tehat a
       felhasznalok, a processzorok, a rendszerben futo programok
       stb. ko:zo:tt. A FreeBSD-ben majdnem minden esetben a
       felhasznalok egy szalon keresztu:l vezerlik a futo
       programokat.

     * cimke: A cimke egy olyan biztonsagi tulajdonsag, ami
       vonatkozhat allomanyokra, ko:nyvtarakra vagy a rendszer mas
       elemeire. Egy cimke tekintheto" a bizalmassagot jelzo"
       pecsetnek is: ha egy allomanyra cimket teszu:nk, akkor benne
       megadjuk a ra vonatkozo biztonsagi jellemzo"ket, es csak a
       hozza hasonlo biztonsagi beallitasokkal rendelkezo"
       allomanyok, felhasznalok, ero"forrasok stb. erhetik el. A
       cimkek jelenteset es ertelmezeset a hazirendek beallitasa
       hatarozza meg: mig egyes hazirendek a cimkeket egy objektum
       sertetlensegenek vagy titkossaganak tekintik, addig masok a
       hozzaferessel kapcsolatos szabalyokat ro:gzitik bennu:k.

     * egycimkes: Egycimkes esetro"l akkor beszelu:nk, amikor az adat
       aramlasanak szabalyozasara az egesz allomanyrendszer egyetlen
       cimket alkalmaz. Ha ezt beallitjuk egy allomanyrendszernel, de
       nem adjuk meg vele egyu:tt a multilabel opciot, akkor az
       o:sszes allomanyra ugyanaz a cimke ervenyes.

     * ero"s vizjel: Az ero"s vizjel hazirendje szerint a biztonsagi
       szint akkor no:velheto", ha magasabb szintu" informaciokhoz
       akarunk hozzajutni. A legto:bb esetben a folyamatok
       befejezo"dese utan visszaallitodik az eredeti szint. A FreeBSD
       MAC rendszere pillanatnyilag ehhez nem tartalmaz hazirendet,
       de a teljesseg kedveert megadtuk ennek a definiciojat is.

     * gyenge vizjel: A gyenge vizjel hazirendje szerint a biztonsagi
       szint cso:kkentheto" az alacsonyabb szintu" informaciok
       elerese erdekeben. A legto:bb esetben a folyamatok
       befejezo"dese utan visszaallitodik az eredeti szint. A
       FreeBSD-ben ezt a hazirendet egyedu:l a mac_lomac(4)
       alkalmazza.

     * hazirend: Szabalyok olyan gyu"jtemenye, amely megadja, hogy
       mikent kell a celokat teljesiteni. Egy hazirend altalaban az
       egyes elemek kezeleset ro:gziti. Ebben a fejezetben a hazirend
       kifejezes alatt a biztonsagi hazirendet ertju:k, tehat olyan
       szabalyok gyu"jtemenyet, amelyek az adatok es az informacio
       aramlasat hatarozzak meg, tovabba megadjak, hogy ko:zu:lu:k ki
       mihez ferhet hozza.

     * kenyesseg: Altalaban az MLS targyalasakor keru:l elo". Az
       kenyesseg szintjevel az adatok fontossagat vagy titkossagat
       szoktak jelo:lni. A kenyessegi szint no:vekedesevel no:vekszik
       az adat titkossaganak vagy bizalmassaganak szintje.

     * objektum: Objektum vagy rendszerobjektum minden olyan egyed,
       amelyen informacio folyik keresztu:l az alanyok iranyitasaval.
       Ezek lehetnek to:bbek ko:zt ko:nyvtarak, allomanyok, mezo"k,
       kepernyo"k, billentyu"zetek, a memoria, magneses
       taroloeszko:zo:k, nyomtatok vagy barmilyen mas
       adattarolo/hordozo eszko:z. Az objektumok alapveto"en
       adattarolok vagy a rendszer ero"forrasai. Egy objektum
       eleresen gyakorlatilag az adatok elereset ertju:k.

     * rekesz: Egy rekeszbe soroljuk az elrekeszteni vagy
       elku:lo:niteni kivant programok es adatok o:sszeseget, ahol a
       felhasznalok explicit modon kepesek hozzaferni a rendszer
       bizonyos komponenseihez. Emellett a rekesz utalhat egy
       tetszo"leges csoportositasra is, peldaul munkacsoportra,
       osztalyra, projektre vagy temara. A rekeszek hasznalata
       elengedhetetlen a biztonsagi hazirendek kialakitasahoz.

     * sertetlenseg: A sertetlenseg, mint kulcsfogalom, az adatok
       megbizhatosaganak szintje. Minel sertetlenebb az adat, annal
       inkabb tekinthetju:k megbizhatonak.

     * szint: Egy biztonsagi tulajdonsag megno:velt vagy
       lecso:kkentett beallitasa. A szint no:vekedesevel egyu:tt a
       biztonsag merteke is no:vekszik.

     * to:bbcimkes: A multilabel vagyis to:bbcimkes jellemzo" az
       allomanyrendszerek eseten fordulhat elo", es a tunefs(8)
       segedprogrammal allithato be egyfelhasznalos modban vagy a
       rendszer inditasa soran az fstab(5) allomanyon keresztu:l,
       esetleg egy uj allomanyrendszer letrehozasakor. Ezzel a
       beallitassal a rendszergazda ku:lo:nfele MAC cimkeket
       rendelhet ku:lo:nbo:zo" objektumokhoz. Ez a beallitas
       termeszetesen csak olyan biztonsagi modulok eseten el, amelyek
       tudnak cimkezni.

     --------------------------------------------------------------

16.3. A MAC ismertetese

   Az iment definialt uj fogalmak tu:kreben most nezzu:k meg, hogy a
   MAC rendszer alkalmazasaval mikent javithatunk rendszeru:nk
   biztonsagan. A MAC rendszerhez keszitett ku:lo:nbo:zo" biztonsagi
   modulok alkalmasak a halozat es az allomanyrendszerek vedelmere,
   valamint segitsegu:kkel megakadalyozhatjuk, hogy a felhasznalok
   elerhessenek bizonyos portokat es socketeket stb. A hazirendeket
   formazo modulokat talan egyu:ttesen tudjuk a leghatekonyabban
   alkalmazni, es ha egyszerre to:bb modul beto:ltesevel egy
   to:bbretegu" vedelmi rendszert alakitunk ki. Ez nem ugyanaz, mint
   a rendszer megero"sitese, ahol a rendszer o:sszetevo"it jellemzo"
   modon csak bizonyos celok tekinteteben edzzu:k meg. A modszer
   egyedu:li hatulu:to"i a to:bbszo:ro:s allomanyrendszeri cimkekkel,
   a felhasznalonkent beallitando halozati eleressel stb. jaro
   adminisztracios ko:ltsegek.

   Ezek a hatranyok azonban elto:rpu:lnek a letrehozott rendszer
   tartossagaval szemben. Peldaul, ha kepesek vagyunk megmondani,
   hogy az adott konfiguracioban milyen hazirendek alkalmazasara van
   szu:kseg, akkor ezzel az adminisztracios ko:ltsegek
   visszaszorithatoak. A szu:ksegtelen hazirendek eltavolitasaval meg
   no:velhetju:k is a rendszer o:sszteljesitmenyet, valamint az igy
   felkinalt rugalmassagot. Egy jo kialakitasban figyelembe kell
   venni az o:sszes biztonsagi elo"irast, es hatekonyan megvalositani
   ezeket a rendszer altal felajanlott ku:lo:nfele biztonsagi
   modulokkal.

   Ezert tehat a MAC leheto"segeit kihasznalo rendszerekben legalabb
   annyit meg kell tudni oldani, hogy a felhasznalok ne
   valtoztathassak kedvu:kre a biztonsagi tulajdonsagokat. Az o:sszes
   felhasznaloi segedprogramnak, programnak es szkriptnek a
   kivalasztott biztonsagi modulokban szereplo" hozzaferesi
   szabalyokkal kifeszitett kereten belu:l kell mozognia. A MAC
   totalis iranyitasa pedig a rendszergazda kezeben van.

   A rendszergazda igy egyedu:l csak a megfelelo" biztonsagi modulok
   gondos o:sszevalogatasaert felelo"s. Bizonyos ko:rnyezetekben
   szu:kseges lehet a halozaton keresztu:li hozzaferesek korlatozasa
   is. Ilyen esetekben a mac_portacl(4), mac_ifoff(4) vagy a
   mac_biba(4) moduloktol erdemes elindulnunk. Mas esetekben az
   allomanyrendszerek objektumainak bizalmassagat kell csupan
   mego"riznu:nk. Erre a celra a mac_bsdextended(4) es mac_mls(4)
   modulok a legalkalmasabbak.

   A hazirendekhez kapcsolodo do:ntesek a halozati beallitasok
   alapjan is meghozhatoak. Elkepzelheto", hogy csak bizonyos
   felhasznalok ferhetnek hozza az ssh(1) szolgaltatasain keresztu:l
   a halozathoz vagy az internethez. A mac_portacl(4) pontosan ilyen
   helyzetekben tud a segitsegu:nkre sietni. Mit tegyu:nk viszont az
   allomanyrendszerek eseten? Vagjunk el adott felhasznalokat vagy
   csoportokat bizonyos ko:nyvtaraktol? Vagy korlatozzuk a
   felhasznalok vagy segedprogramok hozzafereset adott allomanyokhoz
   bizonyos objektumok bizalmassa tetelevel?

   Az allomanyrendszerek eseteben az objektumokat nehany felhasznalo
   elerheti, masok pedig nem. Peldaul egy nagyobb fejleszto"csapat
   kisebb csoportokra bonthato. Az A projektben resztvevo"
   fejleszto"k nem ferhetnek hozza a B projektben dolgozo fejleszto"k
   munkajahoz. Ellenben szu:ksegu:k lehet a C projekten munkalkodo
   fejleszto"k altal letrehozott objektumokra. Ez egy igen erdekes
   helyzet. A MAC rendszer altal felkinalt ku:lo:nbo:zo" biztonsagi
   modulokra epitkezve azonban ko:nnyeden csoportokba tudjuk
   szervezni a felhasznalokat, es a megfelelo" teru:letekhez az
   informacio kiszivargasa nelku:l hozza tudjuk o"ket engedni.

   Ennek ko:vetkezteben minden egyes biztonsagi modul a maga modjan
   gondoskodik az egesz rendszer biztonsagarol. A celjainknak
   megfelelo" modulokat egy jol atgondolt biztonsagi hazirend alapjan
   valasszuk ki. Sok esetben az egesz hazirendet at kell tekinteni es
   ujra kell alkalmazni a rendszerben. A MAC altal felajanlott
   ku:lo:nbo:zo" biztonsagi modulok megertese segit a
   rendszergazdaknak megvalasztani az adott helyzetben legjobban
   alkalmazhato hazirendeket.

   A FreeBSD rendszermagja alapbol nem tartalmazza a MAC rendszert.
   Ezert a fejezetben szereplo" peldak vagy az itt leirtak
   kiprobalasahoz az alabbi beallitast kell hozzatennu:nk a
   rendszermag beallitasait tartalmazo allomanyhoz:

 options MAC

   Majd forditsuk es telepitsu:k ujra a rendszermagot.

     Figyelem: Miko:zben a MAC rendszerhez keszu:lt ku:lo:nbo:zo"
     modulok a sajat man oldalaik szerint igenylik a beepitesu:ket,
     vigyazzunk velu:k, mert ezzel a rendszeru:ket pillanatok alatt
     ki tudjuk zarni a halozatbol es igy tovabb. A MAC alapu vedelem
     felepitese leginkabb egy tu"zfal o:sszeallitasahoz hasonlithato,
     ahol ugyanigy szamolni kell azzal, hogy egy ovatlan paranccsal
     kizarhatjuk magunkat a rendszerbo"l. Valamilyen modon mindig
     probaljunk gondoskodni a rendszer elo"zo" allapotanak
     visszaallithatosagarol, es a MAC tavoli adminisztraciojat mindig
     nagyfoku ko:ru:ltekintessel vegezzu:k.

     --------------------------------------------------------------

16.4. Bo"vebben a MAC cimkeiro"l

   A MAC-cimke egy olyan biztonsagi tulajdonsag, amelyet a
   rendszerben talalhato alanyokhoz es objektumokhoz rendelhetu:nk.

   Egy cimke beallitasahoz a felhasznalonak pontosan ismernie kell,
   hogy ilyenkor mi to:rtenik. Az objektumokhoz tartozo tulajdonsagok
   a beto:lto:tt moduloktol fu:ggenek, es az egyes modulok eltero"
   modon ertelmezik ezeket a tulajdonsagokat. Ha a preciz megertesu:k
   hianyaban helytelenu:l allitjuk be ezeket, vagy nem vagyunk
   kepesek tisztazni a velu:k jaro ko:vetkezmenyeket, akkor az a
   rendszeru:nk kiszamithatatlan es valoszinu"leg kedvezo"tlen
   viselkedeset eredmenyezi.

   A hazirendek az objektumhoz rendelt biztonsagi cimkeket a
   hozzaferessel kapcsolatos do:ntesek meghozasaban hasznaljak fel.
   Bizonyos hazirendek eseteben mar maga a cimke elegendo"
   informaciot tartalmaz a do:ntes megformalasahoz. Mashol viszont a
   cimkek egy nagyobb szabalyrendszer reszekent dolgozodnak fel stb.

   Peldaul, ha egy allomanyra beallitjuk a biba/low cimket, akkor az
   arra fog utalni, hogy a cimket a Biba nevu" biztonsagi modul
   kezeli es erteke "low".

   Az a nehany modul, amely a FreeBSD-ben tamogatja a cimkezes
   leheto"seget, harom specialis cimket definial elo"re. Ezek rendre
   a "low" (alacsony), "high" (magas) es "equal" (egyezo") cimkek.
   Habar az egyes modulok eseten eltero" modon kepesek vezerelni a
   hozzaferest, azt mindig biztosra vehetju:k, hogy a "low" a
   legalacsonyabb ertek, az "equal" cimke hatasara az adott alanyt
   vagy objektumot erintetlenu:l hagyjak, es a "high" erteku" cimke a
   Biba es MLS modulok eseteben a legmagasabb beallitast jelenti.

   Az egycimkes allomanyrendszerek hasznalata soran az egyes
   objektumonkhoz csak egyetlen cimket rendelhetu:nk hozza. Ezzel az
   egesz rendszerben csak egyfajta engedelyt alkalmazunk, ami sok
   esetben pontosan elegendo". Letezik nehany ku:lo:nleges eset,
   amikor az allomanyrendszerben levo" alanyokhoz vagy objektumokhoz
   egyszerre to:bb cimket is hozza kell rendelnu:nk. Ilyenkor a
   multilabel opciot kell atadnunk a tunefs(8) segedprogramnak.

   A Biba es az MLS eseteben elo"fordulhat, hogy egy numerikus
   cimkevel fogjuk jelo:lni a hierarchikus iranyitas pontos szintjet.
   A numerikus szintek hasznalataval tudjuk az informaciot
   ku:lo:nbo:zo" csoportokba szetosztani vagy elrendezni, peldaul
   ugy, hogy csak az adott szintu" vagy a felette allo csoportok
   szamara engedelyezzu:k a hozzaferest.

   Az esetek to:bbsegeben a rendszergazdanak csak egyetlen cimket
   kell beallitania az egesz allomanyrendszerre.

   He, alljunk csak meg! Akkor ez viszont pont olyan, mint a DAC! En
   azt hittem, hogy a MAC szigoruan a rendszergazda kezebe adja az
   iranyitast. Ez az allitas tovabbra is fennall, mivel bizonyos
   ertelemben a root lesz az, aki beallitja a hazirendeket, tehat o"
   mondja meg, hogy a felhasznalok milyen kategoriakba vagy
   hozzaferesi szintekbe sorolodnak. Sajnos, sok biztonsagi modul meg
   magat a root felhasznalot is korlatozza. Az objektumok feletti
   iranyitas ilyenkor a csoportra szall, de a root barmikor
   visszavonhatja vagy modosithatja a beallitasokat. Ezzel a
   hierarchikus/engedely alapu modellel a Biba es az MLS nevu"
   hazirendek foglalkoznak.

     --------------------------------------------------------------

  16.4.1. A cimkek beallitasa

   A cimkezeshez kapcsolodo o:sszes beallitast gyakorlatilag az
   alapveto" rendszerprogramokkal vegezhetju:k el. Ezek a parancsok
   az objektumok es az alanyok szabalyozasahoz, valamint a
   konfiguracio modositasahoz es elleno"rzesehez adnak egy egyszeru"
   kezelo"felu:letet.

   Az o:sszes konfiguracios beallitast a setfmac(8) es setpmac(8)
   segedprogramokkal vegezhetju:k el. A setfmac segitsegevel a
   rendszerszintu" objektumokhoz tudunk hozzarendelni a MAC-cimkeket,
   mig a setpmac paranccsal a rendszerben levo" alanyokhoz tudunk
   cimkeket rendelni. Vegyu:k peldaul ezt:

 # setfmac biba/high proba

   Amennyiben az imenti parancs hibatlanul lefutott, visszakapjuk a
   paranccsort. Ezek a parancsok csak olyankor maradnak nyugodtan,
   amikor semmilyen hiba nem to:rtent. Mu"ko:desu:k hasonlo a
   chmod(1) es chown(8) parancsokehoz. Bizonyos esetekben "Permission
   denied" ("A hozzaferes nem engedelyezett") hibat kapunk, ami
   altalaban akkor bukkan fel, ha egy korlatozott objektummal
   kapcsolatban probalunk meg cimket beallitani vagy modositani [10].
   A rendszergazda a ko:vetkezo" paranccsal tudja feloldani az ilyen
   helyzeteket:

 # setfmac biba/high proba
 "Permission denied"
 # setpmac biba/low setfmac biba/high proba
 # getfmac proba
 proba: biba/high

   Ahogy az itt tetten is erheto", a setpmac hasznalhato a modul
   beallitasainak felu:lbiralasara ugy, hogy a meghivott programban
   egy masik cimket allit be. A getpmac segedprogram altalaban a
   sendmailhez hasonlo hatterben futo programok eseteben
   alkalmazhato: ilyenkor a konkret parancs helyett a futo program
   azonositojat kell megadnunk, de mu"ko:dese ugyanaz. Ha a
   felhasznalok a hatoko:ru:ko:n tul levo" allomanyokat probalnak meg
   modositani, akkor a beto:lto:tt modulok szabalyainak megfelelo"en
   a mac_set_link fu:ggveny "Operation not permitted" ("A mu"velet
   nem engedelyezett") hibat fog adni.

     --------------------------------------------------------------

    16.4.1.1. Gyakori cimketipusok

   A mac_biba(4), mac_mls(4) es mac_lomac(4) moduloknal hasznalhatunk
   cimkeket. Erteku:k lehet "high", "equal" vagy "low", melyek ro:vid
   magyarazata a ko:vetkezo":

     * A low cimke az objektumra vagy alanyra ervenyes leggyengebb
       beallitast jelenti. Az ilyen cimkeju" objektumok vagy alanyok
       nem erhetik el a "high" cimkeju"eket.

     * Az equal cimke hasznalhato minden olyan objektum vagy alany
       eseteben, amelyeket ki akarunk vonni az adott hazirend hatalya
       alol.

     * A high cimke adja az objektumhoz vagy alanyhoz tartozo
       legero"sebb beallitast.

   Az egyes moduloktol fu:ggo"en ezek az ertekek az informacio
   aramoltatasanak ku:lo:nbo:zo" iranyait irhatjak le. A megfelelo"
   man oldalak elolvasasaval meg jobban megismerhetju:k az egyes
   cimketipusok beallitasanak jellegzetessegeit.

     --------------------------------------------------------------

      16.4.1.1.1. A cimkek beallitasarol reszletesebben

   A numerikus osztalyozo cimkek o:sszehasonlitas:rekesz+rekesz
   alakban hasznalatosak, tehat a

 biba/10:2+3+6(5:2+3-20:2+3+4+5+6)

   kifejezes igy ertelmezheto":

   "A Biba hazirend cimkeje"/"10 osztaly" :"2, 3 es 6 rekeszek": ("5
   osztaly...")

   Ebben a peldaban az elso" osztaly tekintheto" "valodi osztalynak",
   amely a "valodi rekeszeket" jelenti, a masodik osztaly egy
   alacsonyabb besorolas, mig az utolso egy magasabb szintu". A
   legto:bb konfiguracioban nem lesz szu:ksegu:nk ennyire o:sszetett
   beallitasokra, noha kepesek vagyunk felirni ezeket.

   Ha ezt kivetitju:k a rendszer objektumaira, akkor a rendszerben
   levo" alanyokat illeto"en csupan az aktualis osztaly/rekeszek
   szamitanak, mivel a rendszerben es halozati csatolofelu:leteken
   elerheto" hozzaferes-vezerlesi jogokat tu:kro:zi.

   Az alany-objektum parokban megadott osztalyzatok es rekeszek
   hasznalhatoak fel egy olyan kapcsolat kiepitesere, amit
   "dominancianak" nevezu:nk. Ilyenkor egy alany ural egy objektumot,
   vagy egy objektum ural egy alanyt, vagy egyiku:k sem uralja a
   masikat, esetleg mind a ketto" uralja egymast. A "ketto"s
   dominancia" esete akkor forog fenn, amikor a ket cimke megegyezik.
   A Biba informacioaramoltatasi sajatossagaibol adodoan jogunk van
   rekeszeket letrehozni, "tudunk kell", hogy ezek projekteknek
   feleltetheto"ek meg, de az objektumok is rendelkezhetnek
   rekeszekkel. A felhasznalok ilyenkor csak ugy tudnak elerni egyes
   objektumokat, ha az su vagy a setpmac hasznalataval leszu"kitik a
   jogaikat egy olyan rekeszre, ahol mar nem ervenyesu:lnek rajuk
   korlatozasok.

     --------------------------------------------------------------

    16.4.1.2. A felhasznalok es cimkek kapcsolata

   Maguknak a felhasznaloknak is szu:ksegu:k van cimkekre, mivel csak
   ezek segitsegevel tudnak az allomanyaik es programjaik megfelelo"
   modon egyu:ttmu"ko:dni a rendszerben ervenyes biztonsagi
   hazirenddel. Ezt a login.conf allomanyban megadhato bejelentkezesi
   osztalyokkal allithatjuk be. Minden cimkeket hasznalo modulban a
   felhasznaloknak is van cimkeju:k.

   Lentebb lathato egy ilyen minta bejegyzes, amely minden modulhoz
   tartalmaz beallitast:

 default:\
         :copyright=/etc/COPYRIGHT:\
         :welcome=/etc/motd:\
         :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\
         :path=~/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:\
         :manpath=/usr/share/man /usr/local/man:\
         :nologin=/usr/sbin/nologin:\
         :cputime=1h30m:\
         :datasize=8M:\
         :vmemoryuse=100M:\
         :stacksize=2M:\
         :memorylocked=4M:\
         :memoryuse=8M:\
         :filesize=8M:\
         :coredumpsize=8M:\
         :openfiles=24:\
         :maxproc=32:\
         :priority=0:\
         :requirehome:\
         :passwordtime=91d:\
         :umask=022:\
         :ignoretime@:\
         :label=partition/13,mls/5,biba/10(5-15),lomac/10[2]:

   Itt a label opciot hasznaltuk a felhasznaloi osztalyhoz tartozo
   alapertelmezett cimkek beallitasahoz, amit majd a MAC betartat. A
   felhasznalok nem modosithatjak ezt az erteket, ezert ez a
   felhasznalok szamara nem tekintheto" tetszo"legesen elhagyhato
   beallitasnak. Egy valos konfiguracioban azonban a rendszergazda
   valoszinu"leg nem akarja majd egyszerre az o:sszes modult
   hasznalni. Javasoljuk, hogy mielo"tt egy ilyen jellegu"
   konfiguraciot adnank meg, olvassuk el az egesz fejezetet.

     Megjegyzes: A felhasznalok ezt a cimket meg tudjak valtoztatni
     az elso" bejelentkezes utan, de csak a hazirend keretein belu:l.
     A fenti peldaban ugy allitjuk be a Biba hazirendet, hogy a futo
     programok sertetlensegi foka legalabb 5, legfeljebb 15 lehet, de
     az alaperteke 10. Tehat a programok egeszen addig 10-es szinten
     futnak, amig a programok a Biba bejelentkezeskor megadott
     tartomanyaban meg nem valtoztatjak ezt a cimket, felteheto"en a
     setpmac parancs hatasara.

   Mindig, amikor megvaltozatjuk a login.conf beallitasait, a
   cap_mkdb paranccsal ujra kell generalni a bejelentkezesi
   osztalyokhoz tartozo adatbazist, amire a keso"bbi peldakban vagy
   reszekben igyekszu:nk is mindig felhivni a figyelmet.

   Nem art hozzatennu:nk, hogy sok rendszerben kifejezetten sok
   felhasznalot kell kezelnu:nk, amihez to:bb ku:lo:nbo:zo"
   bejelentkezesi osztalyra is szu:ksegu:nk lehet. Mivel keso"bb mar
   csak egyre jobban bonyolodni fog a felhasznalok kezelese, ezert
   soha ne felejtsu:nk el komolyan elo"re tervezni.

   A FreeBSD ko:vetkezo" valtozataiban meg fognak jelenni mas
   modszerek is a felhasznalok es cimkek ko:zti kapcsolatok
   kezelesere. A FreeBSD 5.3 elo"tt azonban ez meg semmikeppen sem
   varhato.

     --------------------------------------------------------------

    16.4.1.3. A halozati csatolofelu:letek es a cimkek kapcsolata

   A halozati csatlakozasok eseteben is allithatunk be cimkeket,
   melyek a halozaton keresztu:l folyo adatok aramlasat hatarozzak
   meg. Minden esetben ugyanugy mu"ko:dnek, mint ahogy a hazirendek
   az objektumokra. Peldaul a biba eseteben a magas beallitasokkal
   rendelkezo" felhasznalok nem ferhetnek hozza az alacsonyabb
   cimkeju" halozati csatolofelu:letekhez.

   Ha MAC-cimkeket akarunk rendelni egy halozati felu:lethez, akkor
   az ifconfig parancsnak adjuk meg a maclabel parametert. Peldaul a

 # ifconfig bge0 maclabel biba/equal

   parancs beallitja a biba/equal MAC-cimket a bge(4) felu:letre. A
   biba/high(low-high) alaku cimkeket atadasukhoz idezo"jelek ko:ze
   kell tenni, ku:lo:nben hibat kapunk.

   Minden cimkezest tamogato modulhoz tartoznak futasi ido"ben
   allithato parameterek, amelyekkel akar le is tudjuk tiltani a
   MAC-cimkeket a halozati csatolofelu:leteken. Ugyanezt jelenti
   egyebkent, ha equal erteket adunk meg a cimkenek. Ezt behatobban
   ugy ismerhetju:k meg, ha kielemezzu:k a sysctl parancs kimenetet,
   a megfelelo" modul man oldalat vagy a fejezetben tovabbi reszeben
   talalhato, erre vonatkozo informaciokat.

     --------------------------------------------------------------

  16.4.2. Egy cimke vagy to:bb cimke?

   Alapertelmezes szerint a rendszer a singlelabel beallitast
   hasznalja. Ez vajon mit tartogat a rendszergazda szamara? Szamos
   olyan elterest, aminek megvannak a sajat elo"nyei es hatranyai a
   rendszer vedelmi modelljenek rugalmassaga szempontjabol.

   A singlelabel beallitas minden alany vagy objektum eseteben csupan
   egyetlen cimke, peldaul a biba/high hasznalatat engedi. Kevesebb
   adminisztracios ko:ltseggel jar, azonban cso:kkenteni a cimkezest
   tamogato modulok testreszabhatosagat. Ezert sok rendszergazda
   inkabb a multilabel beallitast valasztja a biztonsagi hazirend
   kialakitasa soran.

   A multilabel beallitas leheto"ve teszi, hogy mindegyik alanyhoz es
   objektumhoz a szabvanyos singlelabel beallitas leheto"segeivel
   szemben egymastol fu:ggetlenu:l ku:lo:n-ku:lo:n rendelhessu:nk
   cimkeket a particiokon. Az egy- es to:bbcimkes opcionak csak olyan
   modulok eseteben van ertelme, amelyek tamogatjak a cimkezest, mint
   peldaul a Biba, Lomac, MLS es a SEBSD hazirendek.

   Sokszor egyaltalan nincs is szu:ksegu:nk a multilabel
   hasznalatara. Tekintsu:k peldaul a ko:vetkezo" helyzetet es
   biztonsagi modellt:

     * Adott egy FreeBSD webszerver, ahol a MAC rendszert to:bb
       biztonsagi hazirenddel alkalmazzuk.

     * A gepen egyedu:l csak a biba/high cimkere van szu:ksegu:nk
       mindenhez a rendszerben. Itt egyszeru"en csak nem adjuk meg az
       allomanyrendszernek a multilabel beallitast, mivel az
       egycimkes rendszer mindig rendelkezesu:nkre all.

     * Mivel azonban erre a gepre telepiteni akarunk egy webszervert
       is, ilyenkor a biba/low cimke hasznalataval igyekszu:nk
       korlatozni a szerver feldolgozasi kepessegeit. A Biba
       hazirendro"l es annak mu"ko:desero"l csak a keso"bbiekben
       fogunk irni, ezert ha az elo"bbi megjegyzest meg nem teljesen
       ertju:k, akkor egyszeru"en csak olvassunk tovabb es terju:nk
       vissza ide. A szerver futasa alatt, vagy legalabb is idejenek
       nagy reszeben egy ku:lo:n particiot hasznalhatna, amire a
       biba/low cimket allitanank be. Termeszetesen ez a pelda
       korantsem teljes, hiszen hianyoznak belo"le az adatokra
       ervenyes korlatozasok, a konfiguracios es felhasznaloi
       beallitasok. Ez csupan az imenti gondolatmenet gyors
       illusztracioja.

   Amennyiben cimkezest nem tamogato modulokat alkalmazunk, a
   multilabel beallitasra szinte sosem lesz szu:ksegu:nk. Ilyenek
   peldaul a seeotheruids, portacl es partition hazirendek.

   A multilabel opcio hasznalata es igy specialis, to:bbcimkes
   vedelmi modell letrehozasa kepes elbonyolitani a rendszer
   karbantartasat, mert ilyenkor az allomanyrendszerben mindennek
   lennie kell cimkejenek: ko:nyvtaraknak, allomanyok es meg az
   eszko:zleiroknak is.

   A most ko:vetkezo" paranccsal beallitjuk az allomanyrendszerre a
   multilabel opciot. Ez csak egyfelhasznalos modban teheto" meg:

 # tunefs -l enable /

   A lapozoparticio eseteben erre nincs szu:kseg.

     Megjegyzes: Elo"fordulhat, hogy nehany felhasznalonak nem
     sikeru:l a multilabel opciot beallitania a rendszerindito
     particiora. Ha ez to:rtenne, akkor olvassuk el a fejezet 16.17
     Szakaszat.

     --------------------------------------------------------------

16.5. A vedelem megtervezese

   Mindig hasznos ido"t szanni a tervezesre, amikor nekilatunk egy uj
   technologia alkalmazasahoz. A tervezes ko:zben a rendszergazdanak
   "egyben kell latnia a kepet", leheto"leg az alabbiak
   figyelembevetelevel:

     * Elvarasok a modell fele

     * A modell celkitu"zesei

   Tovabba a MAC hasznalata eseten:

     * Mikent osztalyozzuk a celrendszeren rendelkezesre allo
       informaciot es ero"forrasokat

     * Milyen informaciot vagy ero"forrast kell korlatoznunk es
       milyen tipusu korlatozast alkalmazzunk rajuk

     * A MAC melyik moduljain keresztu:l tudjuk elerni celjainkat

   Habar mindig modunkban all megvaltoztatni es ujra konfiguralni a
   rendszerben talalhato ero"forrasokat es biztonsagi beallitasokat,
   sokszor azert igen kenyelmetlen utananezni a rendszerben es
   allitgatni az allomanyok, illetve felhasznaloi hozzaferesek
   parametereit. A beallitasainkat valamint azok konfiguraciojat
   elo"szo:r ku:lo:n probaljuk ki, mielo"tt a MAC alapu
   megvalositasunkat egy eles rendszeren kezdju:k el hasznalni. Ennek
   elhagyasa szinte biztosan kudarcra itel minket.

   A ku:lo:nbo:zo" ko:rnyezetek igenyei es elvarasai elternek. Egy
   alaposan es minden reszleteben atgondolt vedelmi profil
   megalapozasa cso:kkenti a rendszer u:zembehelyezese utan
   elvegzendo" modositasok szamat. Mint olyanokra, a ko:vetkezo"
   szakaszokban kiteru:nk a rendszergazdak szamara elerheto"
   modulokra, bemutatjuk a hasznalatukat es beallitasukat es egyes
   esetekben betekintest is adunk olyan helyzetekbe, ahol a legjobban
   kiaknazhatoak a kepessegeik. Peldaul egy webszerver eseten hasznos
   lehet a mac_biba(4) es mac_bsdextended(4) hazirendek alkalmazasa.
   Mas esetekben, peldaul egy keves felhasznaloval mu"ko:do"
   szamitogepen, a mac_partition(4) modul lehet jo valasztas.

     --------------------------------------------------------------

16.6. A modulok beallitasa

   A MAC rendszerben megtalalhato o:sszes modul a korabban leirtak
   szerint beepitheto" a rendszermagba vagy menet ko:zben is
   beto:ltheto" modulkent. A hasznalni kivant modulokat a
   /boot/loader.conf allomanyba javasolt felvenni, igy azok be tudnak
   to:lto"dni a rendszer inditasa folyaman.

   A soron ko:vetkezo" szakaszokban a ku:lo:nbo:zo" MAC-modulokat
   dolgozzuk fel es foglaljuk o:ssze a leheto"segeiket. Tovabba a
   fejezet szeretne szolni ezek alkalmazasarol specialis helyzetekben
   is. Egyes modulokkal cimkezni is tudunk, aminek reven a
   hozzafereseket cimkekkel szabalyozzuk, peldaul ugy, hogy
   megmondjuk "mit szabad es mit nem". A cimkek beallitasait
   tartalmazo allomany vezerli az allomanyok elereset, a halozati
   kommunikaciot es meg sok minden mast. Az elo"zo" szakaszban mar
   megismerhettu:k, hogy a multilabel opcio segitsegevel hogyan
   allithatjuk be az allomanyonkenti vagy particionkenti
   hozzaferes-vezerlest.

   Az egycimkes konfiguracioban az egesz rendszerben csupan egyetlen
   cimke hasznalatara nyilik mod, ezert is hivjak a tunefs
   beallitasat multilabelnek.

     --------------------------------------------------------------

16.7. A seeotheruids MAC-modul

   A modul neve: mac_seeotheruids.ko

   A rendszermag konfiguracios beallitasa: options MAC_SEEOTHERUIDS

   Rendszerinditasi beallitas: mac_seeotheruids_load="YES"

   A mac_seeotheruids(4) modul a security.bsd.see_other_uids es
   security.bsd.see_other_gids sysctl-valtozokat utanozza es
   terjeszti ki. A hasznalatahoz semmilyen cimket nem kell beallitani
   es transzparens modon kepes egyu:ttmu"ko:dni a to:bbi modullal.

   A modult beto:ltese utan az alabbi sysctl-valtozokkal tudjuk
   vezerelni:

     * A security.mac.seeotheruids.enabled engedelyezi a modult es az
       alapertelmezett beallitasokat hasznalja. Alapertelmezes
       szerint egyik felhasznalo sem lathatja a to:bbiek futo
       programjait es csatlakozasait.

     * A security.mac.seeotheruids.specificgid_enabled egy adott
       csoportot mentesit a hazirend szabalyozasai alol. Tehat ki
       akarunk vonni egy csoportot a hazirend alkalmazasabol, akkor
       allitsuk be a security.mac.seeotheruids.specificgid=XXX
       sysctl-valtozot, ahol az XXX a mentesiteni kivant csoport
       numerikus azonositoja.

     * A security.mac.seeotheruids.primarygroup_enabled segitsegevel
       adott elso"dleges csoportokat vonhatunk ki a hazirend hatalya
       alol. Ezt a valtozot nem hasznalhatjuk a
       security.mac.seeotheruids.specificgid_enabled valtozoval
       egyu:tt.

     --------------------------------------------------------------

16.8. A bsdextended MAC-modul

   A modul neve: mac_bsdextended.ko

   A rendszermag konfiguracios beallitasa: options MAC_BSDEXTENDED

   Rendszerinditasi beallitas: mac_bsdextended_load="YES"

   A mac_bsdextended(4) modul segitsegevel egy allomanyrendszer
   szintjen mu"ko:do" tu"zfalat tudunk kialakitani. Ez a modul a
   szabvanyos allomanyrendszeri engedely alapu modelljet bo"viti ki,
   leheto"ve teve, hogy a rendszergazda tu"zfalszeru" szabalyokkal
   nyujtson vedelmet a ko:nyvtarszerkezetben talalhato allomanyoknak,
   segedprogramoknak es ko:nyvtaraknak. Amikor egy
   allomanyrendszerbeli objektumhoz probalunk meg hozzaferni, a modul
   illeszti ezt egy szabalyrendszerre, amiben vagy talal egy
   hozzatartozo szabalyt vagy kifut belo"le. Ez a viselkedes a
   security.mac.bsdextended.firstmatch_enabled sysctl(8) parameter
   segitsegevel valtoztathato meg. Hasonloan a FreeBSD-ben talalhato
   to:bbi tu"zfalmodulhoz, az allomanyok elereset definialo szabalyok
   a rendszerinditas soran egy rc.conf(5) valtozobol olvasodnak be.

   A szabalyokat a ugidfw(8) segedprogrammal adhatjuk meg, amelynek a
   formai szabalyai hasonloak az ipfw(8) programehoz. A libugidfw(3)
   fu:ggvenyko:nyvtar felhasznalasaval azonban tovabbi segedprogramok
   is irhatoak hozza.

   A modul hasznalata soran igyekezzu:nk minel jobban odafigyelni,
   mert helytelen alkalmazasaval el tudjuk vagni magunkat az
   allomanyrendszer bizonyos reszeito"l.

     --------------------------------------------------------------

  16.8.1. Peldak

   Miutan sikeru:lt beto:lteni a mac_bsdextended(4) modult, a
   ko:vetkezo" paranccsal tudjuk lekerdezni a jelenleg ervenyes
   szabalyokat:

 # ugidfw list
 0 slots, 0 rules

   Ahogy az varhato is volt, pillanatnyilag meg egyetlen szabalyt sem
   adtunk meg. Ennek ertelmeben tehat mindent el tudunk erni. A
   ko:vetkezo" paranccsal tudunk olyan szabalyt letrehozni, ahol a
   root kivetelevel elutasitjuk az o:sszes felhasznalo hozzafereset:

 # ugidfw add subject not uid root new object not uid root mode n

   Ez egyebkent egy nagyon buta o:tlet, mivel igy a felhasznalok meg
   a legegyszeru"bb parancsokat, mint peldaul az ls-t, sem tudjak
   rajuk kiadni. Ennel sokkal humanusabb lesz, ha:

 # ugidfw set 2 subject uid felhasznalo1 object uid felhasznalo2 mode n
 # ugidfw set 3 subject uid felhasznalo1 object gid felhasznalo2 mode n

   Ilyenkor a felhasznalo1 nevu" felhasznalotol megvonjuk a
   felhasznalo2 felhasznaloi ko:nyvtaranak o:sszes hozzafereset,
   beleertve a listazhatosagot is.

   A felhasznalo1 helyett megadhatjuk a not uid felhasznalo2 opciot
   is. Ebben az esetben egy felhasznalo helyett az o:sszes
   felhasznalora ugyanaz a korlatozas fog ervenyesu:lni.

     Megjegyzes: A root felhasznalora ezek a beallitasok nem
     vonatkoznak.

   Ezzel felvazoltuk, mikent lehet a mac_bsdextended(4) modult
   felhasznalni az allomanyrendszerek megero"sitesere. Reszletesebb
   informaciokert jaruljunk a mac_bsdextended(4) es ugidfw(8) man
   oldalakhoz.

     --------------------------------------------------------------

16.9. Az ifoff MAC-modul

   A modul neve: mac_ifoff.ko

   A rendszermag konfiguracios beallitasa: options MAC_IFOFF

   Rendszerinditasi beallitas: mac_ifoff_load="YES"

   A mac_ifoff(4) modul kizarolag abbol a celbol keszu:lt, hogy
   segitsegevel menet ko:zben le tudjuk tiltani bizonyos halozati
   csatolofelu:letek beallitasat a rendszerinditas ko:zben. Sem
   cimkekre, sem pedig a to:bbi MAC-modulra nincs szu:ksegu:nk a
   hasznalatahoz.

   A vezerlest nagyreszt az alabbi sysctl-valtozokkal tudjuk
   megoldani.

     * A security.mac.ifoff.lo_enabled engedelyezi vagy letiltja a
       (lo(4)) helyi loopback felu:leten az o:sszes forgalmat.

     * A security.mac.ifoff.bpfrecv_enabled engedelyezi vagy letiltja
       a Berkeley csomagszu"ro" (BPF, Berkeley Packet Filter)
       felu:leten az o:sszes forgalmat.

     * A security.mac.ifoff.other_enabled engedelyezi vagy letiltja
       az o:sszes to:bbi csatolofelu:leten az o:sszes forgalmat.

   A mac_ifoff(4) modult altalaban olyan ko:rnyezetek monitorozasakor
   szoktak hasznalni, ahol a rendszer inditasa soran meg nem szabad
   halozati forgalomnak keletkeznie. Vagy peldaul a security/aide
   porttal egyu:tt hasznalva automatikusan el tudjuk zarni a
   rendszeru:nket, ha a vedett ko:nyvtarakban uj allomanyok
   keletkeznek vagy megvaltoznak a regiek.

     --------------------------------------------------------------

16.10. A portacl MAC-modul

   A modul neve: mac_portacl.ko

   A rendszermag konfiguracios beallitasa: MAC_PORTACL

   Rendszerinditasi beallitas: mac_portacl_load="YES"

   A mac_portacl(4) modul a helyi TCP es UDP portok kiosztasanak
   korlatozasat teszi leheto"ve ku:lo:nfele sysctl-valtozokon
   keresztu:l. A mac_portacl(4) segitsegevel lenyegeben a nem-root
   felhasznalok is hasznalhatnak privilegizalt, tehat 1024 alatti
   portokat.

   Miutan beto:lto:ttu:k, a modul az o:sszes csatlakozasra alkalmazza
   a MAC-hazirendet. Ezutan az alabbi valtozokkal hangolhatjuk a
   viselkedeset:

     * A security.mac.portacl.enabled totalisan engedelyezi vagy
       letiltja a hazirend hasznalatat.

     * A security.mac.portacl.port_high megadja azt a legmagasabb
       portot, amelyre meg kiterjed a mac_portacl(4) vedelme.

     * Ha a security.mac.portacl.suser_exempt valtozonak nem nulla
       erteket adunk meg, akkor azzal a root felhasznalot kivonjuk a
       szabalyozasok alol.

     * A security.mac.portacl.rules az ervenyes mac_portacl
       hazirendet adja meg, lasd lentebb.

   A security.mac.portacl.rules valtozo altal megadott aktualis
   mac_portacl hazirend formatuma a ko:vetkezo":
   szabaly[,szabaly,...], ahol ezen a modon tetszo"leges szamu
   szabalyt adhatunk meg. Az egyes szabalyok pedig igy irhatoak fel:
   azonositotipus: azonosito: protokoll: port. Az azonositotipus
   erteke uid vagy gid lehet, amivel megadjuk, hogy az azonosito
   parameter felhasznalora vagy csoportra hivatkozik. A protokoll
   parameter adja meg, hogy a szabalyt TCP vagy UDP tipusu
   kapcsolatra ertju:k, es ennek megfelelo"en az erteke is tcp vagy
   udp lehet. A sort vegu:l a port parameter zarja, ahol annak a
   portnak szamat adjuk meg, amelyhez az adott felhasznalot vagy
   csoportot akarjuk ko:tni.

     Megjegyzes: Mivel a szabalyokat ko:zvetlenu:l maga a rendszermag
     dolgozza fel, ezert a felhasznalok illetve csoportok
     azonositoja, valamint a port erteke kizarolag numerikus ertek
     lehet. Tehat a szabalyokban nev szerint nem hivatkozhatunk
     felhasznalokra, csoportokra vagy szolgaltatasokra.

   A UNIX-szeru" rendszereken alapertelmezes szerint az 1024 alatti
   portokat csak privilegizalt programok kaphatjak meg es
   hasznalhatjak, tehat a root felhasznalo neve alatt kell futniuk. A
   mac_portacl(4) azonban a nem privilegizalt programok szamara is
   leheto"ve teszi, hogy elfoglalhassanak 1024 alatti portokat,
   amihez viszont elo"szo:r le kell tiltani ezt a szabvany UNIX-os
   korlatozast. Ezt ugy erhetju:k el, ha a
   net.inet.ip.portrange.reservedlow es
   net.inet.ip.portrange.reservedhigh valtozokat egyarant nullara
   allitjuk.

   A mac_portacl(4) mu"ko:desenek reszleteiro"l a peldakon keresztu:l
   vagy a megfelelo" man oldalakbol tudhatunk meg to:bbet.

     --------------------------------------------------------------

  16.10.1. Peldak

   A ko:vetkezo" peldak az imentieket igyekeznek jobban
   megvilagitani:

 # sysctl security.mac.portacl.port_high=1023
 # sysctl net.inet.ip.portrange.reservedlow=0 net.inet.ip.portrange.reservedhigh=0

   Elso"kent beallitjuk, hogy a mac_portacl(4) vegye at a szabvanyos
   privilegizalt portok vezerleset es letiltjuk a normal UNIX-os
   korlatozasokat.

 # sysctl security.mac.portacl.suser_exempt=1

   A root felhasznalot azonban nem akarjuk kitenni a hazirendnek,
   ezert a security.mac.portacl.suser_exempt valtozonak egy nem nulla
   erteket adunk meg. A mac_portacl(4) modul most pontosan ugyanugy
   mu"ko:dik, mint a UNIX-szeru" rendszerek alapertelmezes szerint.

 # sysctl security.mac.portacl.rules=uid:80:tcp:80

   A 80-as azonositoval rendelkezo" felhasznalo (aki altalaban a www)
   szamara engedelyezzu:k a 80-as port hasznalatat. Igy a www
   felhasznalo anelku:l kepes webszervert futtatni, hogy szu:ksege
   lenne a root jogosultsagaira.

 # sysctl security.mac.portacl.rules=uid:1001:tcp:110,uid:1001:tcp:995

   Az 1001-es azonositoval rendelkezo" felhasznalonak megengedju:k,
   hogy elfoglalhassa a 110-es ("pop3") es 995-o:s ("pop3s")
   portokat. Ennek ko:szo:nheto"en az adott felhasznalo el tud
   inditani egy szervert, amihez a 110-es es 995-o:s portokon lehet
   kapcsolodni.

     --------------------------------------------------------------

16.11. A partition MAC-modul

   A modul neve: mac_partition.ko

   A rendszermag konfiguracios beallitasa: options MAC_PARTITION

   Rendszerinditasi beallitas: mac_partition_load="YES"

   A mac_partition(4) hazirend a futo programokat cimkeju:k szerint
   adott "particiokra" osztja szet. Ezt leginkabb egy specialis
   jail(8) megoldaskent tudjuk elkepzelni, noha teljesen felesleges
   o:sszehasonlitani a ketto"t.

   Ez egy olyan modul, amelyet a loader.conf(5) allomanyba kell
   felvenni, hogy a rendszerinditasa ko:zben be tudjon to:lto"dni.

   Ezt a hazirendet to:bbsegeben a setpmac(8) segedprogrammal tudjuk
   allitgatni, ahogy az majd lentebb lathato lesz. A ko:vetkezo"
   sysctl-valtozo tartozik meg a modulhoz:

     * A security.mac.partition.enabled engedelyezi a futo programok
       MAC rendszeren keresztu:li felosztasat.

   A hazirend engedelyezesevel a felhasznalok csak a sajat
   programjaikat lathatjak, illetve mindazokat, amelyek az o:vekevel
   egy particioba tartoznak, de a rajta kivu:l levo" programokkal mar
   nem dolgozhatnak. Peldaul, ha egy felhasznalo az insecure ("nem
   biztonsagos") osztaly tagja, akkor ne engedju:k, hogy
   hozzaferhessen a top vagy barmilyen mas olyan parancshoz, amely
   tovabbi futo programokat hoz letre.

   A setpmac hasznalataval tudunk cimkeket kesziteni a particiokhoz
   es programokat rendelni hozzajuk:

 # setpmac partition/13 top

   Igy a top parancsot hozzaadjuk az insecure osztalyban levo"
   felhasznalokhoz rendelt cimkehez. Vegyu:k eszre, hogy az insecure
   osztalyba tartozo felhasznalok altal elinditott o:sszes program a
   partition/13 cimket fogja hasznalni.

     --------------------------------------------------------------

  16.11.1. Peldak

   A ko:vetkezo" parancs megmutatja a particiok cimkeit es a futo
   programok listajat:

 # ps Zax

   Ezzel paranccsal pedig megnezhetju:k egy masik felhasznalo
   programjainak cimkeit es a felhasznalo altal futtatott
   programokat:

 # ps -ZU trhodes

     Megjegyzes: A felhasznalok latjak a root cimkejevel futo
     programokat is, hacsak be nem to:ltju:k a mac_seeotheruids(4)
     hazirendet.

   Ezt a megoldast ugy tudnank igazan ravaszul felhasznalni, ha
   peldaul az /etc/rc.conf allomanyban letiltanank az o:sszes
   szolgaltatast es egy olyan szkripttel inditanank el ezeket, amely
   futtatasuk elo"tt beallitja hozzajuk a megfelelo" cimket.

     Megjegyzes: A most ko:vetkezo" hazirendek a harom
     alapertelmezett cimkeertek helyett egesz szamokat hasznalnak.
     Ezekro"l, valamint a rajuk vonatkozo korlatozasokrol a
     megfelelo" modulok man oldalain ismerhetu:nk meg to:bbet.

     --------------------------------------------------------------

16.12. A to:bbszintu" biztonsagi MAC-modul

   A modul neve: mac_mls.ko

   A rendszermag konfiguracios beallitasa: options MAC_MLS

   Rendszerinditasi beallitas: mac_mls_load="YES"

   A mac_mls(4) (MLS, Multi-Level Security) hazirend az informacio
   szigoru aramoltatasaval vezerli a rendszerben talalhato alanyok es
   objektumok ko:zti elerest.

   A MLS megoldasat alkalmazo ko:rnyezetekben a rekeszek mellett
   minden alanyra es objektumra be kell meg allitanunk egy adott
   szintu" "engedelyt" is. Mivel az engedelyek avagy az erzekenyseg
   szintje akar a hatezret is meghaladhatja, egy rendszergazda
   szamara valodi remalomma valthat az egyes alanyok es objektumok
   preciz beallitasa. Szerencsere a hazirend erre a celra tartalmaz
   harom elo"re definialt "instant" cimket.

   Ezek az mls/low, mls/equal es mls/high. Mivel a man oldal eleg
   reszletesen kifejti ezeket, ezert itt csak erinto"legesen
   foglalkozunk velu:k:

     * Az mls/low cimke egy olyan alacsony szintu" beallitast
       kepvisel, amely leheto"ve teszi, hogy az o:sszes to:bbi
       objektum uralja. Tehat barminek is adjuk az mls/low cimket,
       alacsony szintu" engedellyel fog rendelkezni es nem lesz kepes
       elerni a magasabb szinten levo" informaciot. Raadasul a cimke
       a magasabb szintu" objektumok szamara se fogja engedni, hogy
       informaciot ko:zo:ljo:n vagy adjon at az alacsonyabb szintek
       fele.

     * Az mls/equal cimke olyan objektumok eseteben ajanlott,
       amelyeket ki akarunk hagyni a hazirend szabalyozasaibol.

     * Az mls/high cimke az elerheto" legmagasabb szintu" engedelyt
       abrazolja. Az ilyen cimkevel ellatott objektumok a rendszer
       o:sszes to:bbi objektuma felett uralommal rendelkeznek, habar
       az alacsonyabb szintu" objektumok fele nem kepesek informaciot
       ko:zvetiteni.

   Az MLS:

     * Egy hierarchikus vedelmi szinteket epit fel nem hierarchikus
       kategoriakkal.

     * Szabalyai ro:gzitettek: a felso"bb szintek olvasasa es az
       alsobb szintek irasa egyarant tiltott (az alanyok csak a sajat
       vagy az alatta levo" szinteken levo" objektumokat kepesek
       olvasni, de a felette allokat mar nem. Ehhez hasonloan az
       alanyok a velu:k egyezo" vagy a felso"bb szinteket tudjak
       irni, de az alattuk levo"ket mar nem).

     * Mego"rzi a titkokat (megakadalyozza az adatok alkalmatlan
       ko:zzetetelet).

     * Megadja mindazt az alapot, ami szu:kseges ahhoz, hogy az
       adatokat to:bb kenyessegi szinten, parhuzamosan is kezelni
       tudjuk (anelku:l, hogy titkos es bizalmas informaciokat
       szivarogtatnank ki).

   A specialis szolgaltatasok es felu:letek beallitasahoz az alabbi
   sysctl-valtozok hasznalhatoak:

     * A security.mac.mls.enabled engedelyezi vagy tiltja le az MLS
       hazirend alkalmazasat.

     * A security.mac.mls.ptys_equal hatasara latja el mls/equal
       cimkevel az o:sszes pty(4) eszko:zt letrehozasuk soran.

     * A security.mac.mls.revocation_enabled hasznalhato az
       alacsonyabb szintre mino"sitett objektumok hozzaferesenek
       megvonasara.

     * A security.mac.mls.max_compartments segitsegevel adhato meg az
       objektumok altal hasznalt rekeszek szintjenek maximalis szama.
       Lenyegeben a rekeszek rendszerben engedelyezett maximuma.

   Az MLS cimkeit a setfmac(8) paranccsal tudjuk modositani. Egy
   ehhez hasonlo paranccsal tudunk egy objektumhoz cimket rendelni:

 # setfmac mls/5 proba

   A proba allomany MLS-cimkejet az alabbi paranccsal kerhetju:k le:

 # getfmac proba

   Ezzel o:ssze is foglaltuk az MLS hazirend leheto"segeit. Az
   eddigiket ugy is megoldhatjuk, hogy letrehozunk egy ko:zponti
   hazirendet az /etc ko:nyvtarban, amelyben megadjuk az MLS
   hazirendhez tartozo informaciokat, majd atadjuk a setfmac
   parancsnak. Erre a modszerre majd a hazirendek bemutatasa utan
   keru:l sor.

     --------------------------------------------------------------

  16.12.1. A kenyesseg megallapitasa

   A to:bbszintu" biztonsagi hazirend hasznalataval a rendszergazda a
   kenyes informaciok aramlasanak iranyat tudja befolyasolni. A
   megoldas "felfele nem lehet olvasni, lefele nem lehet irni"
   jellege folytan alapbol mindent a legalacsonyabb szintre helyez.
   Igy tehat kezdetben minden elerheto", es a rendszergazdanak
   lassankent ebbo"l az allapotbol elindulva kell behangolnia az erre
   alapozo vedelmi rendszert az informacio bizalmassaganak
   megfelelo"en.

   A fentebb emlitett harom alapveto" cimke mellett a
   rendszergazdanak valoszinu"leg szu:ksege lesz a felhasznalok
   csoportositasara es a csoportok ko:zti informacioaramlas
   szabalyozasara. A informacio bizalmassaganak szintjeit minden
   bizonnyal ko:nnyebb szavakkal beazonositani, peldaul Confidential
   (bizalmas), Secret (titkos) vagy Top Secret (szigoruan bizalmas).
   Bizonyos helyzetekben eleg csak a futo projekteknek megfelelo"en
   kialakitani csoportokat. Az osztalyozas konkret modszereto"l
   fu:ggetlenu:l azonban mindig elmondhato, hogy elo"zetes tervezes
   nelku:l sose allitsunk o:ssze ilyen fajsulyu hazirendet.

   Ezt a biztonsagi modult peldaul webes u:zletek eseten erdemes
   hasznalnunk, ahol egy allomanyszerver tarolja a ceg fontos adatait
   es penzu:gyi informacioit. Viszont egy ket vagy harom
   felhasznaloval u:zemelo" munkaallomas eseteben szinte teljesen
   felesleges gondolkodni rajta.

     --------------------------------------------------------------

16.13. A Biba MAC-modul

   A modul neve: mac_biba.ko

   A rendszermag konfiguracios beallitasa: options MAC_BIBA

   Rendszerinditasi beallitas: mac_biba_load="YES"

   A mac_biba(4) modul a MAC Biba elnevezesu" hazirendjet to:lti be.
   Ez leginkabb az MLS hazirendhez hasonlit, azzal a kivetellel, hogy
   az informacio aramoltatasara vonatkozo szabalyok nemileg
   visszafele mu"ko:dnek. Tehat mig az MLS hazirend a kenyes
   informacio aramlasat felfele nem engedi, addig ez a lefele
   iranyulo aramlast allitja meg. Emiatt ez a szakasz tulajdonkeppen
   mind a ket hazirendre ervenyesu:l.

   A Biba alkalmazasa soran minden alany es objektum egy
   "sertetlenseget" jelkepezo" cimket visel. Ezek a cimkek
   hierarchikus osztalyokbol, nem peidg hiearchikus o:sszetevo"kbo"l
   szarmaznak. Egy objektum vagy alany sertetlensege a besorolasaval
   no:vekszik.

   A modul a biba/low, biba/equal es biba/high cimkeket ismeri,
   vagyis bo"vebben:

     * A biba/low cimke tekintheto" az alanyok es objektumok
       legkisebb sertetlensegenek. Ha beallitjuk egy objektumra vagy
       alanyra, akkor ezzel megakadalyozzuk, hogy nagyobb
       sertetlensegu" objektumokat vagy alanyokat tudjanak irni.
       Etto"l fu:ggetlenu:l azonban meg kepesek olvasni ezeket.

     * A biba/equal cimke hasznalata kizarolag olyan objektumok
       eseteben javasolt, amelyeket ki akarunk vonni a hazirend alol.

     * A biba/high cimke megengedi az alacsonyabb szinteken levo"
       objektumokat irasat, de az olvasasat viszont mar nem. Ezt a
       cimket olyan objektumra erdemes ragasztani, amelyek hatassal
       vannak az egesz rendszer sertetlensegere.

   A Biba:

     * Hierarchikus sertetlensegi szinteket epit fel nem hiearchikus
       sertetlensegi kategoriakkal kiegeszitve.

     * Szabalyai ro:gzitettek: az felso"bb szintek irasa es az alsobb
       szintek olvasasa egyarant tilos (pontosan az MLS ellentete).
       Egy alany csak a sajat vagy az alatta allo szinteken szereplo"
       objektumokat tudja irni. Ehhez hasonlo modon egy alany csak a
       sajat vagy az afeletti szinten talalhato objektumokat kepes
       olvasni.

     * Az adatok sertetlenseget biztositja (megakadalyozza az
       alkalmatlan modositasukat)

     * Sertetlensegi szinteket hataroz meg (szemben az MLS kenyessegi
       szintjeivel).

   Az alabbi sysctl-valtozokkal vezerlhetju:k a Biba hazirend
   mu"ko:deset:

     * A security.mac.biba.enabled hasznalhato a celrendszeren a Biba
       hazirend engedelyezere vagy letiltasara.

     * A security.mac.biba.ptys_equal segitsegevel kapcsolhatjuk ki a
       Biba hazirend alkalmazasat a pty(4) eszko:zo:ko:n.

     * A security.mac.biba.revocation_enabled hatasara visszavonodik
       az objektumok hozzaferese, ha az rajuk vonatkozo cimke
       megvaltozik.

   A rendszer objektumain a Biba hazirendet a setfmac es getfmac
   paranccsal allithatjuk be:

 # setfmac biba/low proba
 # getfmac proba
 proba: biba/low

     --------------------------------------------------------------

  16.13.1. A sertetlenseg megallapitasa

   A sertetlenseg a kenyessegto"l eltero"en azt igyekszik szavatolni,
   hogy az informaciot illetektelenek nem modositjak. Ez egyarant
   vonatkozik az alanyok, objektumok es a ketto" ko:zo:tt atadott
   adatokra. Gondoskodik rola, hogy a felhasznalok csak olyan
   informaciokat valtoztathathassanak meg, so"t csak olyat erhessenek
   el, amire tenylegesen szu:ksegu:k van.

   A mac_biba(4) biztonsagi modul megengedi a rendszergazda szamara,
   hogy megmondja milyen allomanyokat es programokat lathat vagy
   hivhat meg a felhasznalo vagy felhasznalok egy csoportja,
   miko:zben biztositja, hogy az allomanyok es a programok nincsenek
   kiteve semmilyen fenyegetesnek, es a rendszer az adott
   felhasznaloban vagy felhasznaloi csoportban megbizik.

   A kezdeti tervezesi fazis soran a rendszergazdanak fel kell
   keszu:lnie arra, hogy a felhasznalokat osztalyokra, szintekre es
   teru:letekre kell osztania. A felhasznalok nem csak adatokhoz,
   hanem programokhoz es segedprogramokhoz sem lesznek kepesek
   hozzaferni, mind az inditasuk elo"tt es utan. A modul aktivalas
   utan a rendszer alapbol ro:gto:n a legmagasabb cimket kapja meg,
   es teljesen a rendszergazdara harul, hogy a felhasznalokhoz
   beallitsa a ku:lo:nfele osztalyokat es szinteket. A fentebb leirt
   engedelyszintek helyett akar temak alapjan is tervezhetu:nk.
   Peldaul kizarolag csak a fejleszto"k szamara engedju:k meg a
   forraskod modositasat, a forraskod leforditasat es a to:bbi
   fejleszto"eszko:z hasznalatat. Eko:zben a to:bbi felhasznalot
   felosztjuk tovabbi csoportokba, peldaul tesztelo"kre es
   tervezo"kre, vagy meghagyjuk ezeket atlagos felhasznaloknak, akik
   csak olvasasi joggal rendelkeznek.

   A megvalositott biztonsagi modell termeszetebo"l fakadoan egy
   kevesbe sertetlenebb alany nem irhatja a sokkal sertetlenebb
   alanyokat, a sokkal sertetlenebb alanyok pedig nem erhetik el vagy
   olvashatjak a kevesbe sertetlen objektumokat. A leheto" legkisebb
   osztalyu cimke beallitasaval gyakorlatilag elerhetetlenne teszu:k
   az alanyok szamara. A modult valoszinu"leg egy korlatozott
   webszerver, fejleszto"i- es tesztgepek vagy forraskod tarolasara
   szant ko:rnyezetben erdemes bevetni. Annal eselytelenebb a
   hasznalata viszont egy munkaallomas, utvalaszto vagy halozati
   tu"zfal eseteben.

     --------------------------------------------------------------

16.14. A LOMAC MAC-modul

   A modul neve: mac_lomac.ko

   A rendszermag konfiguracios beallitasa: options MAC_LOMAC

   Rendszerinditas beallitas: mac_lomac_load="YES"

   Eltero"en a MAC Biba hazirendjeto"l, a mac_lomac(4) egyedu:l csak
   azutan engedi elerni az kevesbe sertetlenebb objektumokat, miutan
   cso:kkentju:k a sertetlenseg szintjet es ezzel betartjuk a
   sertetlensegre vonatkozo szabalyokat.

   A gyenge vizjeles sertetlensegi hazirend MAC alapu valtozatat nem
   szabad o:sszeteveszteni a korabbi lomac(4) implementacioval, amely
   majdnem ugyanugy mu"ko:dik, mint a Biba, azzal az a kivetellel,
   hogy a lebego" cimkekkel tamogatjuk az alanyok lefokozasat egy
   kisegito" osztaly rekeszen keresztu:l. Ez a masodlagos rekesz
   [kisegito"_osztaly] alaku. Tehat amikor egy kisegito" osztallyal
   adjuk meg a lomac hazirendet, valahogy igy nez ki: lomac/10[2],
   ahol a kettes (2) szam ez a kisegitesre hasznalt osztaly.

   A MAC LOMAC hazirendje az o:sszes rendszerszintu" objektum
   eseteben jelenlevo" sertetlensegi cimkezesen alapszik, megengedve
   az alanyok szamara, hogy az kevesbe sertetlen objektumokat olvasni
   tudjak, majd a cimke lemino"sitesevel az alany meg tudja
   akadalyozni a sokkal sertetlenebbnek itelt objektumok jo:vo"beni
   irasat. Ez az a fentebb targyalt [kisegito"_osztaly] opcio, ezert
   ez a modul a Bibaenal to:bb kompatibilitast es kevesebb kezdeti
   beallitast igenyel.

     --------------------------------------------------------------

  16.14.1. Peldak

   Hasonloan a Biba es MLS hazirendeknel megszokottakhoz, a setfmac
   es setpmac segedprogramok hasznalhatoak a cimkek
   hozzarendelesehez:

 # setfmac /usr/home/trhodes lomac/high[low]
 # getfmac /usr/home/trhodes lomac/high[low]

   Itt a kisegito" osztaly a low. Ezt csak a LOMAC MAC-hazirendnel
   adhatjuk meg.

     --------------------------------------------------------------

16.15. A Nagios elzarasa a MAC rendszerrel

   A most ko:vetkezo" bemutatoban a MAC moduljainak es a megfelelo"en
   beallitott hazirendek hasznalataval fogunk kialakitani egy
   biztonsagos ko:rnyezetet. Ne feledju:k azonban, hogy ez csupan egy
   artatlan proba es nem pedig a mindenki biztonsagi aggalyait
   kielegito" legvegso" megoldas. Ha egy hazirendet vakon epitu:nk
   fel es nem ertju:k meg a mu"ko:deset, az soha nem valik
   hasznunkra, es egy eles helyzetben katasztrofalis hatassal jarhat.

   A folyamat megkezdese elo"tt be kell allitanunk a multilabel
   opciot mindegyik allomanyrendszerre, a fejezet elejen leirtaknak
   megfelelo"en. Ha ezt a lepest kihagyjuk, akkor hibakat kapunk.
   Tovabba meg az elo"keszu:let reszekent ne felejtsu:nk el
   gondoskodni a net-mngt/nagios-plugins, net-mngt/nagios es
   www/apache13 portok telepitesero"l, beallitasarol es megfelelo"
   mu"ko:desero"l sem.

     --------------------------------------------------------------

  16.15.1. A nem megbizhato felhasznalok osztalyanak letrehozasa

   Az eljarast kezdju:k az alabbi (insecure) felhasznaloi osztaly
   hozzaadasaval az /etc/login.conf allomanyban:

 insecure:\
 :copyright=/etc/COPYRIGHT:\
 :welcome=/etc/motd:\
 :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\
 :path=~/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
 :manpath=/usr/share/man /usr/local/man:\
 :nologin=/usr/sbin/nologin:\
 :cputime=1h30m:\
 :datasize=8M:\
 :vmemoryuse=100M:\
 :stacksize=2M:\
 :memorylocked=4M:\
 :memoryuse=8M:\
 :filesize=8M:\
 :coredumpsize=8M:\
 :openfiles=24:\
 :maxproc=32:\
 :priority=0:\
 :requirehome:\
 :passwordtime=91d:\
 :umask=022:\
 :ignoretime@:\
 :label=biba/10(10-10):

   Valamint egeszitsu:k ki az alapertelmezett (default) felhasznaloi
   osztalyt a ko:vetkezo" sorral:

 :label=biba/high:

   Ahogy ezzel elkeszu:ltu:nk, az hozzatartozo adatbazis ujboli
   legyartasahoz a ko:vetkezo" parancsot kell kiadnunk:

 # cap_mkdb /etc/login.conf

     --------------------------------------------------------------

  16.15.2. A rendszerinditassal kapcsolatos beallitasok

   Meg ne inditsuk ujra a szamitogepet, csupan a szu:kseges modulok
   beto:ltesehez bo"vitsu:k ki a /boot/loader.conf allomanyt az
   alabbi sorokkal:

 mac_biba_load="YES"
 mac_seeotheruids_load="YES"

     --------------------------------------------------------------

  16.15.3. A felhasznalok beallitasa

   Soroljuk be a root felhasznalot a default osztalyba:

 # pw usermod root -L default

   Az o:sszes root felhasznalon kivu:li hozzaferesnek vagy
   rendszerfelhasznalonak most kelleni fog egy bejelentkezesi
   osztaly. A bejelentkezesi osztalyra egyebkent is szu:kseg lesz,
   mert ennek hianyaban a felhasznalok meg az olyan egyszeru"
   parancsokat sem tudjak kiadni, mint peldaul a vi(1). A ko:vetkezo"
   sh szkript neku:nk erre pontosan megfelel:

 # for x in `awk -F: '($3 >= 1001) && ($3 != 65534) { print $1 }' \
         /etc/passwd`; do pw usermod $x -L default; done;

   Helyezzu:k at a nagios es www felhasznalokat az insecure
   osztalyba:

 # pw usermod nagios -L insecure

 # pw usermod www -L insecure

     --------------------------------------------------------------

  16.15.4. A contexts allomany letrehozasa

   Most csinalnunk kell egy contexts allomanyt. Ebben peldaban az
   /etc/policy.contexts allomanyt hasznaljuk.

 # Ez a rendszer alapertelmezett BIBA hazirendje.

 # Rendszer:
 /var/run                        biba/equal
 /var/run/*                      biba/equal

 /dev                            biba/equal
 /dev/*                          biba/equal

 /var                            biba/equal
 /var/spool                      biba/equal
 /var/spool/*                    biba/equal

 /var/log                        biba/equal
 /var/log/*                      biba/equal

 /tmp                            biba/equal
 /tmp/*                          biba/equal
 /var/tmp                        biba/equal
 /var/tmp/*                      biba/equal

 /var/spool/mqueue               biba/equal
 /var/spool/clientmqueue         biba/equal

 # Nagios:
 /usr/local/etc/nagios
 /usr/local/etc/nagios/*         biba/10

 /var/spool/nagios               biba/10
 /var/spool/nagios/*             biba/10

 # Apache:
 /usr/local/etc/apache           biba/10
 /usr/local/etc/apache/*         biba/10

   Ezzel a hazirenddel az informacio aramlasat szabalyozzuk. Ebben a
   konkret konfiguracioban a felhasznalok, a root es tarsai, nem
   ferhetnek hozza a Nagioshoz. A Nagios beallitasait tarolo
   allomanyok es a neve alatt futo programok igy teljesen
   ku:lo:nvalnak vagyis elzarodnak a rendszer to:bbi reszeto"l.

   Ez az imenti allomany a ko:vetkezo" parancs hatasara keru:l be a
   rendszeru:nkbe:

 # setfsmac -ef /etc/policy.contexts /
 # setfsmac -ef /etc/policy.contexts /

     Megjegyzes: A fenti allomanyrendszer felepitese a ko:rnyezetto"l
     fu:ggo"en elterhet, habar ezt minden egyes allomanyrendszeren le
     kell futtatni.

   Az /etc/mac.conf allomanyt to:rzset a ko:vetkezo"keppen kell meg
   atirnunk:

 default_labels file ?biba
 default_labels ifnet ?biba
 default_labels process ?biba
 default_labels socket ?biba

     --------------------------------------------------------------

  16.15.5. A halozat engedelyezese

   Tegyu:k hozza a ko:vetkezo" sort az /boot/loader.conf allomanyhoz:

 security.mac.biba.trust_all_interfaces=1

   Ezt az alabbi beallitast pedig szurjuk be az rc.conf allomanyba a
   halozati kartya konfiguraciojahoz. Amennyiben az internetet DHCP
   segitsegevel erju:k el, ezt a beallitast manualisan kell megtenni
   minden rendszerinditas alkalmaval:

 maclabel biba/equal

     --------------------------------------------------------------

  16.15.6. A konfiguracio kiprobalasa

   Gondoskodjunk rola, hogy a webszerver es a Nagios nem fog
   elindulni a rendszer inditasakor, majd inditsuk ujra a gepet.
   Ezenkivu:l meg elleno"rizzu:k, hogy a root ne tudjon hozzaferni a
   Nagios beallitasait tartalmazo ko:nyvtarhoz. Ha a root kepes
   kiadni egy ls(1) parancsot a /var/spool/nagios ko:nyvtarra, akkor
   valamit elronthattunk. Normalis esetben egy "permission denied"
   u:zenetet kell kapnunk.

   Ha minden jonak tu"nik, akkor a Nagios, Apache es Sendmail most
   mar elindithato a biztonsagi hazirend szabalyozasai szerint. Ezt a
   ko:vetkezo" parancsokkal tehetju:k meg:

 # cd /etc/mail && make stop && \
 setpmac biba/equal make start && setpmac biba/10\(10-10\) apachectl start && \
 setpmac biba/10\(10-10\) /usr/local/etc/rc.d/nagios.sh forcestart

   Ketszer is elleno"rizzu:k, hogy minden a megfelelo" modon
   viselkedik-e. Ha valamilyen furcsasagot tapasztalunk, akkor
   nezzu:k at a naplokat vagy a hibau:zeneteket. A sysctl(8)
   hasznalataval tiltsuk le a mac_biba(4) biztonsagi modult es
   probaljunk meg mindent a szokott modon ujrainditani.

     Megjegyzes: A root felhasznalo ku:lo:no:sebb aggodalom nelku:l
     kepes megvaltoztatni a biztonsagi rend betartatasat es atirni a
     konfiguracios allomanyokat. Egy frissen inditott
     parancsertelmezo" szamara ezzel a paranccsal tudjuk cso:kkenteni
     a biztonsagi besorolast:

 # setpmac biba/10 csh

     Ennek kivedesere a felhasznalokat a login.conf(5) beallitasaival
     le kell korlatozni. Ha a setpmac(8) megprobal a rekesz hatarain
     tul futtatni egy parancsot, akkor hibat ad vissza es a parancs
     nem fut le. Ebben az esetben a root felhasznalot tegyu:k a
     biba/high(high-high) ertekek ko:ze.

     --------------------------------------------------------------

16.16. A felhasznalok korlatozasa

   Ebben a peldaban egy viszonylag kicsi, nagyjabol mindo:ssze o:tven
   felhasznalos, adattarolasra hasznalatos rendszert veszu:nk alapul.
   A felhasznalok rendelkezhetnek bizonyos bejelentkezesi
   tulajdonsagokkal, es nem csak adatokat tudnak tarolni, hanem az
   ero"forrasokhoz is hozza tudnak ferni.

   Itt most a mac_bsdextended(4) es a mac_seeotheruids(4) modulokat
   vetju:k be egyu:ttesen, es nem csak a rendszer objektumainak
   elereset tudjuk megakadalyozni, hanem az egyes felhasznalok futo
   programjait is elrejtju:k.

   A mu"veletet kezdju:k azzal, hogy a /boot/loader.conf allomanyt
   kibo"vitju:k a ko:vetkezo" modon:

 mac_seeotheruids_enabled="YES"

   A mac_bsdextended(4) biztonsagi modul az alabbi rc.conf-valtozoval
   hozhato mu"ko:desbe:

 ugidfw_enable="YES"

   A hozzatartozo alapertelmezett szabalykeszlet az
   /etc/rc.bsdextended allomanyban tarolodik, amely pedig a rendszer
   inditasa soran to:lto"dik be. Ezeket nemileg modositanunk kell
   majd. Mivel a peldaban szereplo" szamitogep csak a felhasznalok
   kiszolgalasat hivatott ellatni, az utolso ketto" kivetelevel
   mindent hagyhatunk megjegyzesben. Igy kikenyszeritju:k
   felhasznalok altal birtokolt rendszerobjektumok alapertelmezes
   szerinti beto:lteset.

   Vegyu:k fel a szu:kseges felhasznalokat a szamitogepre es inditsuk
   ujra. Tesztelesi celbol probaljunk meg ku:lo:nbo:zo"
   felhasznalokkent bejelentkezni ket konzolon. Futassuk le a ps aux
   parancsot, es igy meg tudjuk figyelni, hogy mennyire latjuk a
   to:bbi felhasznalot. Amikor megprobaljuk kiadni a ls(1) parancsot
   a to:bbiek felhasznaloi ko:nyvtaraira, akkor hibat kell kapnunk.

   Ne probalgassunk a root felhasznaloval, hacsak a megfelelo" sysctl
   valtozokban be nem allitottuk az o" hozzaferesenek blokkolasat is.

     Megjegyzes: Amikor felveszu:k egy felhasznalot a rendszerbe, a
     hozzatartozo mac_bsdextended(4) szabaly nem fog szerepelni a
     szabalyrendszerben. A szabalyrendszer gyors frissiteset ugy
     tudjuk megoldani, ha a kldunload(8) hasznalataval egyszeru"en
     eltavolitjuk a biztonsagi modult a memoriabol es ujrato:ltju:k a
     kldload(8) paranccsal.

     --------------------------------------------------------------

16.17. A hibak elharitasa a MAC rendszerben

   A fejlesztes fazisaban bizonyos normal konfiguracioval rendelkezo"
   felhasznalok gondokat jeleztek. Ezeket foglaljuk most itt o:ssze:

     --------------------------------------------------------------

  16.17.1. A multilabel beallitas nem adhato meg a / allomanyrendszerre

   A multilabel beallitas nem marad meg a rendszerindito (/)
   particiomon!

   A tapasztalatok szerint ko:ru:lbelu:l minden o:tvenedik
   felhasznalo szembesu:l ezzel a problemaval, es mi is talalkozunk
   vele a kezdeti konfiguraciok kialakitasa soran. Ennek az
   ugynevezett "hibanak" a behatobb tanulmanyozasa soran arra
   jutottunk, hogy ez to:bbnyire vagy a hibas dokumentalasbol vagy a
   dokumentacio felreertelmezesebo"l ered. Fu:ggetlen attol, hogy ez
   mito"l is ko:vetkezett be, a ko:vetkezo" lepesek megtetelevel
   orvosolhatjuk:

    1. Nyissuk meg az /etc/fstab allomanyt es adjuk meg a
       rendszerindito particionak az ro, vagyis az irasvedett
       (read-only) beallitast.

    2. Inditsuk ujra a gepet egyfelhasznalos modban.

    3. A tunefs -l enable parancsot futtassuk le a /
       allomanyrendszeren.

    4. Inditsuk ujra a rendszert normal modban.

    5. Adjuk ki a mount -urw / parancsot, majd az /etc/fstab
       allomanyban irjuk at a ro beallitast az rw ertekre es megint
       inditsuk ujra a rendszert.

    6. Alaposan nezzu:k at a mount parancs kimenetet es gyo"zo:dju:nk
       meg rola, hogy a multilabel opcio valoban beallitodott a
       rendszerindito allomanyrendszerre.

     --------------------------------------------------------------

  16.17.2. A MAC utan nem lehet inditani az X11 szervert

   Nem indul az X, miutan MAC-kel kialakitottunk egy biztonsagos
   ko:rnyezetet!

   Ezt vagy a MAC partition hazirendje okozza, vagy az egyik
   cimkekeket hasznalo hazirend helytelen beallitasa. A ko:vetkezo"
   modon derithetju:k ki az okat:

    1. Figyelmesen olvassuk el a hibau:zenetet: ha a felhasznalo az
       insecure osztaly tagja, akkor a partition hazirend lesz a
       bu"no:s. Probaljuk meg a felhasznalot visszatenni a default
       osztalyba es a cap_mkdb paranccsal ujrageneralni az
       adatbazist. Ha ez nem segit a probleman, akkor haladjunk
       tovabb.

    2. Alaposan elleno"rizzu:k a cimkekhez tartozo hazirendeket.
       Vizsgaljuk meg, hogy a kerdeses felhasznalo eseteben a
       hazirendet es az X11 alkalmazast, valamint a /dev eszko:zo:ket
       tenyleg jol allitottuk be.

    3. Ha az imentiek egyik sem oldja meg gondunkat, ku:ldju:k el a
       hibau:zenetet es a ko:rnyezetu:nk ro:vid leirasat a a
       TrustedBSD honlapjarol elerheto" TrustedBSD levelezesi lista
       vagy a FreeBSD general questions levelezesi lista cimere.

     --------------------------------------------------------------

  16.17.3. Hiba: _secure_path(3) cannot stat .login_conf

   Amikor a rendszerben megprobalok a root felhasznalorol atvaltani
   egy masik felhasznalora, a "_secure_path: unable to state
   .login_conf" hibau:zenet jelenik meg.

   Ez az u:zenet altalaban akkor lathato, amikor a felhasznalo
   nagyobb erteku" cimkevel rendelkezik annal, mint akive valni akar.
   Peldaul vegyu:k a joska nevu" felhasznalot a rendszerben, aki az
   alap biba/low cimkevel rendelkezik. A root felhasznalo, akinek
   biba/high cimkeje van, nem lathatja joska felhasznaloi
   ko:nyvtarat. Ez attol fu:ggetlenu:l megto:rtenik, hogy a root a su
   paranccsal valtott at a joska nevu" felhasznalora vagy sem. Egy
   ilyen helyzetben a Biba sertetlensegi modellje nem fogja engedni a
   root felhasznalora szamara, hogy lathassa a kevesbe sertetlen
   objektumokat.

     --------------------------------------------------------------

  16.17.4. A root felhasznalo nem megy!

   A rendszer normal vagy egyfelhasznalos modban sem ismeri fel a
   root felhasznalot. A whoami parancs 0 (nullat) ad vissza es a su
   parancs pedig annyit mond: "who are you?" ("ki vagy?"). Mi
   to:rtenhetett?

   Ez csak olyankor to:rtenhet, ha a cimkezesi hazirendet nem
   engedelyezzu:k, vagy a sysctl(8) hasznalataval, vagy pedig a modul
   eltavolitasaval. Ha a hazirendet letiltjuk vagy ideiglenesen
   letiltodik, akkor a bejelentkezesi tulajdonsagokat tarolo
   adatbazist a label beallitas eltavolitasaval kell
   ujrakonfiguralni. A login.conf allomanybol ne felejtsu:k el
   kivenni az o:sszes label beallitast es a cap_mkdb paranccsal
   ujrageneralni az adatbazist.

   Ilyen akkor is elo"fordulhat, amikor a hazirend valamilyen modon
   korlatozza a master.passwd allomany vagy adatbazis elerheto"seget.
   Ezt altalaban az okozza, hogy a rendszergazda az allomanyt olyan
   cimke alatt modositja, amely u:tko:zik a rendszerben alkalmazott
   altalanos hazirenddel. Ebben az esetekben a rendszer probalja meg
   beolvasni a felhasznalok adatait, azonban mivel ko:zben az
   allomany uj cimket o:ro:ko:lt, nem fer hozza. Ha a sysctl(8)
   paranccsal letiltjuk a hazirendet, minden vissza fog terni a
   rendes kerekvagasba.

     --------------------------------------------------------------

              Fejezet 17. Biztonsagi esemenyek vizsgalata

   Irta: Tom Rhodes es Robert Watson.

17.1. Attekintes

   A FreeBSD 6.2-RELEASE es az azota megjelent verziok tamogatjak a
   biztonsagi esemenyek aprolekos vizsgalatat. Ezzel egy megbizhato,
   reszletes es jol konfiguralhato naplozasi rendszert nyujtanak a
   rendszerben talalhato biztonsagot igenylo" esemenyek szeles
   ko:rehez, beleertve a bejelentkezeseket, a konfiguracios
   allomanyokban beko:vetkezo" valtozasokat, allomany- es halozati
   hozzafereseket. Az igy letrehozott naplobejegyzesek
   felbecsu:lhetetlen erteku"nek bizonyulhatnak egy elo" rendszer
   felu:gyelete soran, vagy egy halozati tamadas eszlelesehez,
   esetleg egy o:sszeomlas okainak kielemezesehez. A FreeBSD ehhez a
   Sun altal kifejlesztett BSM technologia API-jat es
   allomanyformatumat valositja meg, es igy kepes egyu:ttmu"ko:dni a
   Sun Solaris valamint az Apple Mac OS X bizonsagi rendszereivel
   egyarant.

   Ebben a fejezetben a biztonsagi esemenyek vizsgalatanak
   telepitesehez es beallitasahoz szu:kseges ismeretek tekintju:k at.
   Ennek kereteben szo esik a vizsgalati hazirendekro"l, valamint
   mutatunk egy peldat a vizsgalatok beallitasara.

   A fejezet elolvasasa soran megismerju:k:

     * mit jelent az esemenyek vizsgalata es hogyan mu"ko:dik;

     * hogyan kell beallitani az esemenyek vizsgalatat FreeBSD-n a
       ku:lo:nbo:zo" felhasznalok es programok eseten;

     * hogyan ertelmezzu:k a vizsgalati nyomokat a vizsgalatot
       szu"kito" es -elemzo" segedprogramok segitsegevel.

   A fejezet elolvasasahoz ajanlott:

     * alapveto" UNIX-os es FreeBSD-s ismeretek (3 fejezet);

     * a rendszermag konfiguralasaval es forditasaval kapcsolatos
       tudnivalok alapszintu" ismerete (8 fejezet);

     * az informatikai biztonsag alapfogalmainak es annak a
       FreeBSD-re vonatkozo reszleteinek minimalis ismerete (14
       fejezet).

     Figyelem: A FreeBSD 6.X verziojaiban jelenlevo" biztonsagi
     vizsgalat meg csak kiserleti jelleggel szerepel, eles
     ko:rnyezetben kizarolag csak az ebbo"l eredo" kockazatok
     tudataban es elfogadasaval javasolt hasznalni. Ismert
     korlatozasok: nem mindegyik biztonsagot erinto" esemeny
     vizsgalhato, mint peldaul az egyes bejelentkezesi tipusok, mivel
     azok nem megfelelo"en hitelesitik a belepo" felhasznalokat.
     Ilyenek peldaul az X11-alapu felu:letek es az egyeb, erre a
     celra alkalmas, mas altal fejlesztett demonok.

     Figyelem: A biztonsagi esemenyek vizsgalata soran a rendszer
     kepes nagyon reszletes naplokat kesziteni az erintett
     tevekenysegekro"l. Igy egy kello"en forgalmas rendszeren az
     allomanymozgasok alapos nyomonko:vetese bizonyos konfiguraciokon
     akar gigabyte-okat is kitehet hetente. A rendszergazdaknak ezert
     mindig javasolt szamolniuk a nagy forgalmu esemenyek biztonsagi
     vizsgalatanak tarigenyevel. Peldaul, emiatt erdemes lehet egy
     egesz allomanyrendszert szanni erre a feladatra a /var/audit
     ko:nyvtarban, es igy a to:bbi allomanyrendszer nem latja karat,
     ha veletlenu:l betelne ez a teru:let.

     --------------------------------------------------------------

17.2. A fejezet fontosabb fogalmai

   A fejezet elolvasasa elo"tt meg kell ismernu:nk nehany fontos
   alapfogalmat:

     * esemeny: Vizsgalhato esemenynek azt az esemenyt nevezzu:k,
       amely egy vizsgalati alrendszerben naplozhato. Biztonsagi
       esemenyek lehetnek peldaul: egy allomany letrehozasa, egy
       halozati kapcsolat felepitese, vagy egy felhasznalo
       bejelentkezese. Egy esemeny "jellegzetes", ha
       visszako:vetheto" valamelyik hitelesitett felhasznalohoz, vagy
       "nem jellegzetes", ha ez nem lehetseges. Nem jellegzetes
       esemeny lehet minden olyan esemeny, amely egy bejelentkezesi
       folyamat hitelesitesi lepese elo"tt to:rtenik, peldaul egy
       belepesi kiserlet hibas jelszoval.

     * osztaly: Esemenyosztalynak az o:sszefu:ggo" esemenyek nevvel
       ellatott halmazat tekintju:k, es szu"resi feltetelekben
       hasznaljuk ezeket. Altalaban alkalmazott osztalyok: "file
       creation" (fc, allomanyletrehozas), "exec" (ex,
       programinditas), es "login_logout" (lo, ki- es bejelentkezes).

     * rekord: Rekordnak nevezzu:k a biztonsagi esemenyeket leiro
       biztonsagi naplobejegyzeseket. A rekordok tartalmazhatjak a
       feljegyzett esemeny tipusat, az esemenyt kivalto tevekenyseget
       (felhasznalot), a datumot es az ido"t, tetszo"leges objektum
       vagy parameter erteket, feltetelek teljesu:leset vagy
       meghiusulasat.

     * nyom: Vizsgalati nyomnak vagy naploallomanynak nevezzu:k a
       ku:lo:nfele biztonsagi esemenyeket leiro vizsgalati rekordok
       sorozatat. A nyomok to:bbnyire nagyjabol az esemenyek
       beko:vetkezese szerinti ido"rendben ko:vetkeznek. Csak es
       kizarolag az erre felhatalmazott programok hozhatnak letre
       rekordokat a vizsgalati nyomban.

     * szu"resi feltetel: Szu"resi feltetelnek nevezu:nk egy olyan
       karakterlancot, amelyet esemenyek szu"resere hasznalunk, es
       modositokat valamint esemenyosztalyok neveit tartalmazza.

     * elo"valogatas: Elo"valogatasnak nevezzu:k a folyamatot,
       amelynek soran a rendszer beazonositja azokat az esemenyeket,
       amelyek a rendszergazda szamara fontosak. Ezaltal
       elkeru:lhetju:k olyan vizsgalati rekordok generalasat, amelyek
       szamunkra erdektelen esemenyekro"l szamolnak be. Az
       elo"valogatas szu"resi feltetelek sorat hasznalja az adott
       felhasznalokhoz tartozo adott biztonsagi esemenyek
       vizsgalatanak beallitasahoz, akarcsak a hitelesitett es a nem
       hitelesitett programokat ertinto" globalis beallitasok
       meghatarozasahoz.

     * leszu"kites: Leszu"kitesnek nevezzu:k a folyamatot, amelynek
       soran a mar meglevo" biztonsagi rekordokbol valogatunk le
       tarolasra, nyomtatasra vagy elemzesre. Hasonloan ez a
       folyamat, ahol a szu:ksegtelen rekordokat eltavolitjuk a
       vizsgalatai nyombol. A leszu"kites segitsegevel a
       rendszergazdak a vizsgalati adatok eltarolasara alakithatnak
       ki hazirendet. Peldaul a reszletesebb vizsgalati nyomokat
       erdemes egy honapig megtartani, ennek lejartaval viszont mar
       inkabb ajanlott leszu"kiteni ezeket es archivalasra csak a
       bejelentkezesi informaciokat megtartani.

     --------------------------------------------------------------

17.3. A vizsgalat tamogatasanak telepitese

   A esemenyvizsgalathoz szu:kseges felhasznaloi programok a FreeBSD
   alaprendszer reszet kepezik. A FreeBSD 7.0 es keso"bbi verzioiban
   az esemenyvizsgalat tamogatasa alapertelmezes szerint megtalalhato
   a rendszermagban, azonban a FreeBSD 6.X valtozataiban be kell
   kapcsolnunk a megfelelo" tamogatast, megpedig a rendszermag
   konfiguracios allomanyaban az alabbi sor hozzaadasaval:

 options AUDIT

   Forditsuk es telepitsu:k ujra a rendszermagot az 8 fejezetben
   ismertetett folyamat szerint.

   Ahogy a rendszermagot a bekapcsolt esemenyvizsgalati tamogatassal
   sikeru:lt leforditanunk es telepitenu:nk, valamint a rendszeru:nk
   is ujraindult, inditsuk el a vizsgalo demont a ko:vetkezo" sor
   hozzaadasaval az rc.conf(5) allomanyban:

 auditd_enable="YES"

   A vizsgalatot innento"l tenylegesen egy ismetelt ujrainditassal
   vagy pedig az elo"bb emlitett demon manualis elinditasaval
   aktivalhatjuk:

 /etc/rc.d/auditd start

     --------------------------------------------------------------

17.4. A vizsgalat beallitasa

   A vizsgalatok beallitasahoz szu:kseges o:sszes konfiguracios
   allomany a /etc/security ko:nyvtarban talalhato. A ko:vetkezo"
   allomanyok vannak itt a demon inditasa elo"tt:

     * audit_class - a vizsgalati osztalyok definicioit tartalmazza.

     * audit_control - a vizsgalati alrendszer ku:lo:nbo:zo"
       teru:leteit vezerli, to:bbek ko:zt az alapertelmezett
       vizsgalati osztalyokat, az vizsgalati adatok tarhelyen
       fenntartando minimalis lemezteru:letet, a vizsgalati nyom
       maximalis meretet, stb.

     * audit_event - a rendszerben jelenlevo" vizsgalati esemenyek
       szo:veges megnevezese es leirasa, valamint a lista, hogy
       melyiku:k mely osztalyban talalhato.

     * audit_user - felhasznalonkent valtozo vizsgalati elvarasok,
       kombinalva a bejelentkezeskor ervenyes globalisan
       alapertelmezett beallitasokkal.

     * audit_warn - az auditd altal hasznalt testreszabhato shell
       szkript, aminek segitsegevel a szelso"seges helyzetekben
       figyelmezteto" u:zeneteket tudunk generalni, mint peldaul
       amikor a rekordok szamara fenntartott hely hamarosan elfogy,
       vagy amikor a nyomokat tartalmazo allomanyt archivaltuk.

     Figyelem: Az esemenyvizsgalat konfiguracios allomanyait alapos
     ko:ru:ltekintes mellett szabad szerkeszteni es karbantartani,
     mivel a bennu:k keletkezo" hibak az esemenyek helytelen
     naplozasat eredmenyezhetik.

     --------------------------------------------------------------

  17.4.1. Esemenyszu"resi feltetelek

   Az esemenyvizsgalati beallitasok soran szamtalan helyen
   felbukkanak a vizsgalni kivant esemenyeket meghatarozo szu"resi
   feltetelek. Ezen feltetelek esemenyosztalyok felsorolasat
   tartalmazzak, mindegyiku:ket egy modosito vezeti be, ezzel
   jelezve, hogy az adott esemenyosztalyba tartozo rekordokat tartsuk
   meg vagy vessu:k el. Esetleg utalhatnak arra is, hogy vagy csak a
   sikeresseget jelzo" rekordokat, vagy csak a sikertelenseget jelzo"
   rekordokat szu"rju:k ki. A szu"resi feltetelek balrol jobbra
   ertekelo"dnek ki, es ket kifejezes o:sszefu"zessel kombinalhato.

   A most ko:vetkezo" lista tartalmazza a audit_class allomanyban
   talalhato alapertelmezett esemenyvizsgalati osztalyokat:

     * all - all (mind) - Minden esemenyosztalyra vonatkozik.

     * ad - administrive (adminisztracios) - olyan adminisztracios
       tevekenysegek, amelyek egyben az egesz rendszeren
       vegrehajtodnak.

     * ap - application (alkalmazas) - az alkalmazasok altal
       meghatarozott tevekenyseg.

     * cl - file close (allomany lezarasa) - a close rendszerhivas
       meghivasanak vizsgalata.

     * ex - exec (programinditas) - egy program inditasanak
       vizsgalata. A parancssorban atadott parameterek es a
       ko:rnyezeti valtozok vizsgalatat az audit_control(5) vezerli a
       policy beallitashoz tartozo argv es envv parameterek
       segitsegevel.

     * fa - file attribute access (allomanyjellemzo"k hozzaferese) -
       a rendszerbeli objektumok jellemzo"inek hozzaferesnek
       vizsgalata, mint peldaul a stat(1), pathconf(2) es ehhez
       hasonlo esemenyek.

     * fc - file create (allomany letrehozasa) - allomanyt
       eredmenyezo" esemenyek vizsgalata.

     * fd - file delete (allomany to:rlese) - allomanyt to:rlo"
       esemenyek vizsgalata.

     * fm - file attribute modify (allomanyjellemzo"k modositasa) -
       allomanyok jellemzo"it megvaltoztato esemenyek vizsgalata,
       mint peldaul a chown(8), chflags(1), flock(2), stb.

     * fr - file read (allomanyolvasas) - allomanyok megnyitasaval
       olvasasra, olvasasaval, stb. kapcsolatos esemenyek vizsgalata.

     * fw - file write (allomanyiras) - allomanyok megnyitasaval
       irasra, irasaval, modositasaval, stb. kapcsolatos esemenyek
       vizsgalata.

     * io - ioctl - az ioctl(2) rendszerhivast hasznalo esemenyek
       vizsgalata.

     * ip - ipc - a folyamatok ko:zti kommunikacio ku:lo:nfele
       formainak, beleertve a POSIX cso:vek es System V IPC
       mu"veleteinek vizsgalata.

     * lo - login_logout (ki- es bejelentkezes) - a rendszerben
       megjeleno" login(1) es logout(1) esemenyek vizsgalata.

     * na - non attributable (nem jellegzetes) - a nem jellegzetes
       esemenyek vizsgalata.

     * no - invalid class (ervenytelen osztaly) - egyetlen biztonsagi
       esemenyt sem tartalmaz.

     * nt - network (halozat) - a halozathoz tartozo esemenyek
       vizsgalata, mint peldaul a connect(2) es az accept(2).

     * ot - other (egyeb) - mas egyeb esemenyek vizsgalata.

     * pc - process (folyamat) - a folyamatokkal kapcsolatos
       mu"veletek, mint peldaul az exec(3) es az exit(3) vizsgalata.

   Az iment felsorolt esemenyosztalyok az audit_class es az
   audit_event allomanyok modositasaval igeny szerint
   testreszabhatoak.

   A listaban szereplo" minden egyes esemenyosztalyhoz tartozik meg
   egy modosito is, amely jelzi, hogy a sikeres vagy a sikertelen
   mu"veleteket kell-e szu"rnu:nk, valamint hogy a bejegyzes az adott
   tipust vagy osztalyt hozzaadja vagy elveszi az adott szu"resbo"l.

     * (u:res) az adott tipusbol mind a sikereseket es mind a
       sikerteleneket feljegyzi.

     * + az esemenyosztalyba tartozo sikeres esemenyeket vizsgalja
       csak.

     * - az esemenyosztalyba tartozo sikertelen esemenyeket vizsgalja
       csak.

     * ^ az esemenyosztalybol sem a sikereseket, sem pedig a
       sikerteleneket nem vizsgalja.

     * ^+ az esemenyosztalybol nem vizsgalja a sikeres esemenyeket.

     * ^- az esemenyosztalybol nem vizsgalja a sikertelen
       esemenyeket.

   Az alabbi pelda egy olyan szu"resi feltetelt mutat be, amely a ki-
   es bejelentkezesek ko:zu:l megadja a sikereset es a
   sikerteleneket, viszont a programinditasok ko:zu:l csak a
   sikereseket:

 lo,+ex

     --------------------------------------------------------------

  17.4.2. A konfiguracios allomanyok

   A vizsgalati rendszer beallitasahoz az esetek tulnyomo reszeben a
   rendszergazdaknak csupan ket allomanyt kell modositaniuk: ezek az
   audit_control es az audit_user. Az elo"bbi felelo"s a
   rendszerszintu" vizsgalati jellemzo"kert es hazirendekert, mig az
   utobbi az igenyek felhasznalokenti finomhangolasahoz hasznalhato.

     --------------------------------------------------------------

    17.4.2.1. Az audit_control allomany

   Az audit_control allomany hatarozza meg a vizsgalati alrendszer
   alapertelmezeseit. Ezt az allomanyt megnyitva a ko:vetkezo"ket
   lathatjuk:

 dir:/var/audit
 flags:lo
 minfree:20
 naflags:lo
 policy:cnt
 filesz:0

   A dir opciot hasznaljuk a vizsgalati naplok tarolasara szolgalo
   egy vagy to:bb ko:nyvtar megadasara. Ha egynel to:bb ko:nyvtarra
   vonatkozo bejegyzes talalhato az allomanyban, akkor azok a megadas
   sorrendjeben keru:lnek felto:ltesre. Nagyon gyakori az a
   beallitas, ahol a vizsgalati naplokat egy erre a celra ku:lo:n
   kialakitott allomanyrendszeren taroljak, megelo"zve ezzel az
   allomanyrendszer betelesekor keletkezo" problemakat a to:bbi
   alrendszerben.

   A flags mezo" egy rendszerszintu" alapertelmezett elo"valogatasi
   maszkot hataroz meg a jellegzetes esemenyek szamara. A fenti
   peldaban a sikeres es sikertelen ki- es bejelentkezeseket
   mindegyik felhasznalo eseten vizsgaljuk.

   A minfree opcio megszabja a vizsgalati nyom tarolasara szant
   allomanyrendszeren a minimalis szabad helyet, a teljes kapacitas
   szazalekaban. Amint ezt a ku:szo:bo:t tullepju:k, egy
   figyelmeztetes fog generalodni. A fenti pelda a minimalisan
   szu:kseges rendelkezesre allo helyet husz szazalekra allitja.

   A naflags opcio megadja azokat az esemenyosztalyokat, amelyeket
   vizsgalni kell a nem jellegzetes esemenyek, mind peldaul a
   bejelentkezesi folyamatok vagy rendszerdemonok eseten.

   A policy opcio a vizsgalat ku:lo:nbo:zo" szempontjait iranyito
   hazirendbeli beallitasok vesszo"vel elvalasztott listajat
   tartalmazza. Az alapertelmezett cnt beallitas azt adja meg, hogy a
   rendszer a felmeru:lo" vizsgalati hibak ellenere is folytassa
   tovabb a mu"ko:deset (ero"sen javasolt a hasznalata). A masik
   gyakorta alkalmazott beallitas az argv, amellyel a rendszer a
   parancsvegrehajtas reszekent az execve(2) rendszerhivas
   parancssori parametereit is megvizsgalja.

   A filesz opcio hatarozza meg a vizsgalati nyom automatikus
   szetvagasa es archivalasa elo"tti maximalis meretet, byte-ban. Az
   alapertelmezett erteke a 0, amely kikapcsolja ezt az archivalast.
   Ha az itt megadott allomanymeret nem nulla es a minimalisan elvart
   512 KB alatt van, akkor a rendszer figyelmen kivu:l hagyja es
   erro"l egy figyelmeztetest ad.

     --------------------------------------------------------------

    17.4.2.2. Az audit_user allomany

   Az audit_user allomany leheto"ve teszi a rendszergazda szamara,
   hogy az egyes felhasznalok szamara tovabbi vizsgalati
   szigoritasokat hatarozzon meg. Minden sor egy-egy felhasznalo
   vizsgalatanak pontositasat adja meg ket mezo" segitsegevel: az
   elso" ko:zu:lu:k az alwaysaudit mezo", mely felsorolja azokat az
   esemenyeket, amelyeket minden esetben vizsgani kell az adott
   felhasznalo eseten, valamint a masodik a neveraudit mezo", mely az
   adott felhasznalo eseten a nem vizsgalando esemenyeket adja meg.

   A most ko:vetkezo" audit_user peldaban vizsgaljuk a root
   felhasznalo ki- es bejelentkezeseit es sikeres programinditasait,
   valamint a www felhasznalo allomanyletrehozasait es sikeres
   programinditasait. Ha a korabban bemutatott audit_control peldaval
   egyu:tt hasznaljuk, akkor eszrevehetju:k, hogy a lo bejegyzes a
   root felhasznalo eseten redundans, illetve ilyenkor a
   ki/bejelentkezest a www felhasznalo eseten is vizsgaljuk.

 root:lo,+ex:no
 www:fc,+ex:no

     --------------------------------------------------------------

17.5. A vizsgalati alrendszer hasznalata

  17.5.1. A vizsgalati nyomok megtekintese

   A vizsgalati nyomok a BSM binaris formatumban tarolodnak, ezert a
   tartalmanak konvertalasahoz es modositasahoz ku:lo:n
   segedprogramokra van szu:kseg. A praudit(1) parancs a
   nyomallomanyokat egyszeru" szo:veges formatumra alakitja, az
   auditreduce(1) parancs pedig a nyomok elemzesehez, archivalasahoz
   vagy nyomtatasahoz szu:kseges leszu"kiteseket vegzi el. Az
   auditreduce a szu"resi feltetelek parametereinek szeles skalajat
   kezeli, beleertve az esemenytipusokat, -osztalyokat,
   felhasznalokat, esemenyek datumat vagy ido"pontjat, allomanyok
   eleresi utvonalat vagy az altaluk erintett objektumokat.

   Peldaul a praudit segedprogram kepes kilistazni szo:vegesen egy
   adott vizsgalati naplo teljes tartalmat:

 # praudit /var/audit/AUDITFILE

   ahol az AUDITFILE a kiirando vizsgalati naplo.

   A vizsgalati nyomok tokenekbo"l o:sszeallitott vizsgalati
   rekordok, amelyeket a praudit egymas utan soronkent megjelenit.
   Minden token adott tipusu, peldaul a header egy vizsgalati rekord
   fejlecet tartalmazza, vagy a path, amely a nevfeloldasbol szarmazo
   eleresi utat tartalmaz. A ko:vetkezo" pelda egy execve esemenyt
   mutat be:

 header,133,10,execve(2),0,Mon Sep 25 15:58:03 2006, + 384 msec
 exec arg,finger,doug
 path,/usr/bin/finger
 attribute,555,root,wheel,90,24918,104944
 subject,robert,root,wheel,root,wheel,38439,38032,42086,128.232.9.100
 return,success,0
 trailer,133

   Ez a vizsgalat egy sikeres execve hivast ro:gzit, ahol a finger
   doug parancs futott le. A parametereket tartalmazo token magaban
   foglalja a shell altal a rendszermag fele jelzett parancsot es
   annak parameteret egyarant. A path token tarolja a vegrehajtott
   allomany rendszermag altal feloldott eleresi utjat. A attribute
   token erro"l a binarisrol ad tovabbi informaciokat, ku:lo:no:sen
   az allomany modjarol, amely segit megallapitani, hogy az adott
   alkalmazasnal be volt-e allitva a setuid bit. A subject token
   leirja az erintett folyamatot es rendre megjegyzi a vizsgalt
   felhasznalo azonositojat, az aktualisan ervenyben levo"
   felhasznalo es csoport azonositojat, a valos felhasznaloi es
   csoport azonositot, a folyamat azonositojat, a munkamenet
   azonositojat, a port azonositojat es a bejelentkezeshez hasznalt
   halozati cimet. Vegyu:k eszre, hogy a vizsgalt felhasznalo
   azonositoja es a valodi azonositoja elter egymastol: a robert
   nevu" felhasznalo a root accountjara valtott a parancs futattasa
   elo"tt, de az eredetileg hitelesitett felhasznalojakent lett
   vizsgalva. Vegezetu:l a return token jelzi a sikeres vegrehajtast,
   es a trailer pedig zarja a rekordot.

     --------------------------------------------------------------

  17.5.2. A vizsgalati nyomok leszu"kitese

   Mivel a vizsgalatokhoz tartozo naplok akar egeszen nagyok is
   lehetnek, ezert a rendszergazdanak minden bizonnyal szu:ksege
   lehet a szamara fontos, peldaul egy adott felhasznalohoz tartozo
   rekordok kivalogatasara:

 # auditreduce -u trhodes /var/audit/AUDITFILE | praudit

   Ezzel ki tudjuk szu"rni a trhodes nevu" felhasznalohoz tartozo
   o:sszes vizsgalati rekordot az AUDITFILE allomanybol.

     --------------------------------------------------------------

  17.5.3. A naplok megtekintesehez szu:kseges jogok tovabbadasa

   Az audit csoport tagjai olvashatjak a /var/audit ko:nyvtarban
   talalhato vizsgalati nyomokat. Alapertelmezes szerint ez a csoport
   u:res, ezert csak a root kepes ekkor vizsgalni a nyomokat. A
   to:bbi felhasznalo szamara ugy tudunk olvasasi jogot biztositani,
   ha felvesszu:k o"ket az audit csoportba. Mivel a vizsgalati naplok
   tartalmanak figyelese jelento"s ralatast adhat a rendszerben
   jelenlevo" felhasznalok es folyamatok viselkedesere, ajanlott
   ko:ru:ltekinto"en kiosztani az olvasasi jogokat.

     --------------------------------------------------------------

  17.5.4. Elo" rendszerfelu:gyelet a vizsgalati cso:vekkel

   A vizsgalati cso:vek az eszko:zo:k allomanyabsztrakcioit klonozzak
   le, es ezzel teszik leheto"ve az alkalmazasok szamara, hogy menet
   ko:zben megcsapolhassak a megfigyelt eszko:zo:k adatait. Ez az
   elso"dleges celja a ku:lo:nbo:zo" beto:resfigyelo" es
   rendszerfelu:gyeleti eszko:zo:k keszito"inek. A rendszergazda
   szamara azonban a vizsgalati cso:vek megko:nnyitik az elo"
   megfigyelest, mert itt nem meru:lnek fel a nyomok jogosultsagaibol
   vagy az archivalas miatt megszakado esemenyfolyamokbol adodo
   problemak. Az elo" esemenyfolyamra az alabbi parancs kiadasaval
   lehet racsatlakozni:

 # praudit /dev/auditpipe

   Alapertelmezes szerint a vizsgalati cso"ho:z tartozo csomopontok
   kizarolag csak a root felhasznalo reszere erheto"ek el. Az audit
   csoport tagjai ugy tudnak majd hozzaferni, ha felvesszu:k a
   ko:vetkezo" devfs szabalyt a devfs.rules allomanyba:

 add path 'auditpipe*' mode 0440 group audit

   A devfs allomanyrendszer beallitasaro"l bo"vebben lasd a
   devfs.rules(5) oldalt.

     Figyelem: Ko:nnyen gerjedest lehet elo"idezni a vizsgalt
     esemenyek megfigyelesevel, amikor is az egyes esemenyek
     megtekintese ujabb vizsgalando esemenyek sorozatat inditjak el.
     Peldaul, ha az o:sszes halozati forgalmat egyszerre vizsgaljuk
     es a praudit(1) egy SSH-munkameneten keresztu:l fut, akkor a
     vizsgalati esemenyek to:mentelen aradata indul meg, mivel minden
     kiirando esemeny egy ujabb esemenyt indukal. Ennek elkeru:lese
     erdekeben ajanlott a praudit parancsot reszletes forgalmat nem
     figyelo" vizsgalati cso"vel ellatott munkameneten keresztu:l
     elinditani.

     --------------------------------------------------------------

  17.5.5. A vizsgalati nyomok archivalasa

   A vizsgalati nyomokat egyedu:l a rendszermag kepes irni, illetve
   csak a vizsgalati demon, az auditd kepes felu:gyelni. A
   rendszergazdaknak ebben az esetben tehat nem szabad hasznalniuk a
   newsyslog.conf(5) vagy a hozza hasonlo eszko:zo:k hasznalatat a
   vizsgalati naplok archivalasahoz. Helyettu:k a audit
   segedprogramot javasolt hasznalni a vizsgalatok leallitasara, a
   vizsgalati rendszer ujrakonfiguralasara vagy a naplo
   archivalasanak elvegzesere. Az alabbi parancs utasitja a
   vizsgalati demont, hogy hozzon letre egy uj vizsgalati naplot es
   jelzi a rendszermagnak, hogy valtson erre az uj naplora. Az eddig
   hasznalt naplot lezarja es atnevezi, ami ezutan a rendszergazda
   altal tetszo"legesen feldolgozhato.

 # audit -n

     Figyelem: Ha az auditd demon a parancs kiadasanak pillanataban
     nem futna, akkor hiba to:rtenik es erro"l hibau:zenetet kapunk.

   A cron(8) segitsegevel tizenkent orankent kikenyszerithetju:k a
   naplok valtasat, ha felvesszu:k a /etc/crontab allomanyba az
   alabbi sort:

 0     */12       *       *       *       root    /usr/sbin/audit -n

   Ez a valtoztatas akkor fog ervenybe lepni, ha elmentju:k az uj
   /etc/crontab allomanyt.

   A vizsgalati nyomok merete szerinti automatikus valtas is
   megvalosithato az audit_control(5) allomanyban szereplo" filesz
   opcio beallitasaval, amit meg is talalhatunk ebben a fejezetben, a
   konfiguracios allomanyok beallitasanal.

     --------------------------------------------------------------

  17.5.6. A vizsgalati nyomok to:mo:ritese

   Mivel a vizsgalati nyomok oriasira is megno"hetnek, sokszor
   felmeru:l az igeny, hogy lehessen o"ket to:mo:riteni vagy mas
   egyeb modon archivalni a vizsgalati demon altal lezart nyomokat.
   Az audit_warn szkript hasznalhato a ku:lo:nbo:zo" vizsgalatokhoz
   kapcsolodo esemenyek eseten elvegzendo" mu"veletek megadasahoz,
   beleertve ebbe a vizsgalati nyomok valtasakor elvegzett szabalyos
   lezarasat. Peldaul a ko:vetkezo"ket kell beleirnunk az audit_warn
   szkriptbe a nyomok lezarasat ko:veto" to:mo:ritesehez:

 #
 # Lezaraskor to:mo:riti a vizsgalati nyomot.
 #
 if [ "$1" = closefile ]; then
         gzip -9 $2
 fi

   Egyeb archivalasi tevekenysegek lehetnek meg: a nyomok felmasolasa
   egy ko:zponti szerverre, a regebbi nyomok to:rlese, vagy a
   meglevo" nyomok leszu"kitese csak a fontos informaciokra. A
   szkript csak akkor fog lefutni, ha a vizsgalati nyomot sikeru:lt
   szabalyosan lezarni, igy tehat a szabalytalan leallaskor megmarado
   nyomok eseten nem.

   A FreeBSD 6.3 es keso"bbi verzioiban, a praudit XML kimeneti
   formatumot is tamogat, amely az -x kapcsoloval erheto" el.

     --------------------------------------------------------------

                        Fejezet 18. Hattertarak

18.1. Attekintes

   Ez a fejezet arrol szol, hogy mikent hasznaljuk a lemezeinket a
   FreeBSD-vel. Itt to:bbek ko:zt szo esik a memoria (alapu)
   lemezekro"l, a halozaton keresztu:l csatlakoztatott meghajtokrol,
   a szabvanyos SCSI/IDE taroloeszko:zo:kro"l es az USB felu:letet
   hasznalo eszko:zo:kro"l.

   A fejezet elolvasasa soran megismerju:k:

     * a FreeBSD altal alkalmazott terminologiat, amivel a fizikai
       lemezeken elhelyezkedo" adatokat irja le (particiok es
       slice-ok);

     * hogyan bo"vitsu:k rendszeru:nket tovabbi merevlemezekkel;

     * hogyan allitsuk be a FreeBSD-t USB taroloeszko:zo:k
       hasznalatara;

     * hogyan allitsunk be virtualis allomanyrendszereket, peldaul
       memorialemezeket;

     * hogyan hasznaljuk a kvotakat a lemezteru:let hasznalatanak
       korlatozasara;

     * hogyan vedju:ket meg lemezeinket titkositassal az
       illetektelenekto"l;

     * FreeBSD alatt hogyan keszitsu:nk es irjuk CD-ket, DVD-ket;

     * a biztonsagi mentesek keszitesenek ku:lo:nbo:zo"
       leheto"segeit;

     * hogyan hasznaljuk a FreeBSD alatt rendelkezesu:nkre allo,
       biztonsagi mentest keszito" programokat;

     * hogyan mentsu:nk floppy lemezekre;

     * mik az allomanyrendszerek pillanatkepei es hogyan kell ezeket
       hatekonyan hasznalni.

   A fejezet elolvasasahoz ajanlott:

     * a FreeBSD rendszermag beallitasanak es telepitesenek ismerete
       (8 fejezet)

     --------------------------------------------------------------

18.2. Az eszko:zo:k elnevezesei

   A most ko:vetkezo" listaban felsoroljuk a FreeBSD altal ismert
   fizikai taroloeszko:zo:ket es a hozzajuk tartozo elnevezeseket.

   Tablazat 18-1. A fizikai lemezek elnevezesenek szabalyai

        A meghajto tipusa              A meghajtoeszko:z neve         
   IDE merevlemezek             ad                                    
   IDE CD-meghajtok             acd                                   
   SCSI merevlemezek es USB     da                                    
   taroloeszko:zo:k             
   SCSI CD-meghajtok            cd                                    
   Ku:lo:nbo:zo" nem szabvanyos mcd (Mitsumi CD-ROM) es scd (Sony     
   CD-meghajtok                 CD-ROM)                               
   Floppy meghajtok             fd                                    
   SCSI szalagos meghajtok      sa                                    
   IDE szalagos meghajtok       ast                                   
   Flash meghajto               fla (DiskOnChip(R) Flash eszko:z)     
                                aacd (Adaptec AdvancedRAID), mlxd es  
   RAID meghajtok               mlyd (Mylex), amrd (AMI MegaRAID),    
                                idad (Compaq Smart RAID), twed        
                                (3ware(R) RAID).                      

     --------------------------------------------------------------

18.3. Lemezek hozzaadasa

   Eredetileg irta: David O'Brien.

   Tegyu:k fel, hogy a jelenleg egyetlen meghajtot tartalmazo
   rendszeru:nket szeretnenk bo"viteni egy uj SCSI-lemez
   hozzaadasaval. Ehhez elso"kent kapcsoljuk ki a szamitogepu:nket es
   szerelju:k be a helyere az uj meghajtot a szamitogep, a
   lemezvezerlo" es a meghajto gyartojanak utasitasai alapjan. Mivel
   ezt a mu"veletet rengeteg modon lehet elvegezni, ezert ennek
   pontos reszleteivel ez a leiras most nem foglalkozik.

   Jelentkezzu:nk be root felhasznalokent. Miutan beszereltu:k a
   meghajtot, a /var/run/dmesg.boot allomany vegignezesevel
   bizonyosodjuk meg rola, hogy a rendszer valoban megtalalta a
   lemezt. A peldank szerint ez a meghajto tehat a da1 nevet fogja
   viselni, amelyet a /1 ko:nyvtarba akarunk csatlakoztatni (ha
   IDE-meghajtot telepitu:nk, akkor a hozzatartozo eszko:z neve ad1
   lesz).

   Mivel a FreeBSD IBM PC kompatibilis szamitogepeken fut, ezert nem
   szabad figyelmen kivu:l hagynunk a PC BIOS particioit is. Ezek
   elternek a hagyomanyos BSD particioktol. Egy PC-s lemeznek negy
   BIOS-os particiobejegyzese lehet. Ha egy lemezt tenyleg csak a
   FreeBSD-nek szanunk, akkor hasznalhatjuk az un. dedikalt modot.
   Minden mas esetben a FreeBSD-nek egy PC BIOS particioban kell
   elhelyezkednie. A FreeBSD a PC BIOS particioit slice-nak nevezi,
   ezzel ku:lo:nbo:zteti ezeket a hagyomanyos BSD particioktol.
   Dedikalt esetekben is hasznalhatjuk, de elso"sorban akkor kap
   fontosabb szerepet, amikor a FreeBSD-nek mas operacios
   rendszerekkel kell megosztani a helyet. Ezzel el tudjuk keru:lni,
   hogy a mas operacios rendszerekben megtalalhato, nem FreeBSD alapu
   fdisk parancs megzavarodjon.

   A slice-ok hasznalatakor a meghajto /dev/da1s1e neven keru:l
   hozzaadasra. Igy kell olvasni: egyes SCSI lemezes egyseg (masodik
   SCSI lemez), elso" slice (elso" PC BIOS particio) es e BSD
   particio. A dedikalt esetben a meghajto neve viszont egyszeru"en
   csak /dev/da1e.

   Mivel a bsdlabel(8) 32 bites egesz szamokat hasznal a szektorok
   szamanak tarolasara, ezert lemezenkent csak 2^32-1 szektort tud
   abrazolni, ami az esetek to:bbsegeben 2 TB meretu" cimezheto"
   teru:letet jelent. Az fdisk(8) formatuma szerint sem a
   kezdo"szektor, sem a hossz nem lehet 2^32-1-nel to:bb, amivel igy
   a particiokat 2 TB, a lemezeket pedig 4 TB meretu"re korlatozza. A
   sunlabel(8) formatuma particionkent 2^32-1 szektort enged meg es
   o:sszesen 8 particiot, amely ezaltal 16 TB teru:let lefedeset
   teszi leheto"ve. Nagyobb lemezekhez gpt(8) particiok
   hasznalatosak.

     --------------------------------------------------------------

  18.3.1. A sysinstall(8) hasznalataval

    1. Ko:zlekedes a sysinstall programban

       A sysinstall ko:nnyen hasznalhato menu:inek segitsegevel az uj
       lemezen pillanatok alatt letre tudunk hozni particiokat es
       megcimkezni ezeket. Ehhez vagy root felhasznalokent
       jelentkezzu:nk be a rendszerbe, vagy adjuk ki a su parancsot.
       A sysinstall parancs kiadasa utan lepju:nk be a Configure
       (Beallitasok) menu:be. A FreeBSD Configuration Menu menu:ben
       ezutan keressu:k meg es valasszuk ki az Fdisk menu:pontot.

    2. Az fdisk particioszerkeszto"

       Miutan eljutottunk az fdisk alkalmazashoz, az A lenyomasaval
       felajanlhatjuk az egesz lemezt a FreeBSD szamara. Amikor
       elo"keru:l a kerdes, hogy "remain cooperative with any future
       possible operating systems" ("mu"ko:do"kepes maradjon-e a
       keso"bbiekben telepitendo" operacios rendszerekkel"), akkor
       valaszoljuk ra YES-szel (tehat igen). A W gomb lenyomasaval
       irjuk a lemezre a most elvegzett valtoztatasokat. Ezutan mar a
       Q hasznalataval ki is lephetu:nk az FDISK szerkeszto"bo"l. A
       ko:vetkezo" lepesben a "Master Boot Record"-rol fognak minket
       megkerdezni. Mivel most egy mar mu"ko:do" rendszert
       bo"vitu:nk, ezert a valaszunk erre None lesz.

    3. A lemezcimkek szerkesztese

       Most lepju:nk ki a sysinstall alkalmazasbol es inditsuk el
       ujra. Ko:vessu:k az imenti utmutatasokat, de ezuttal a Label
       menu:pontot valasszuk ki. Ezzel a Disk Label Editor-ba vagyis
       a lemezcimkek szerkeszto"jehez jutunk. Itt fogjuk letrehozni a
       hagyomanyos BSD particiokat. Egy lemezen nyolc ilyen particio
       lehet, a-tol h-ig. Ko:zu:lu:k nehany particio cimkejet
       megku:lo:nbo:ztetju:k. Az a particio jelo:li a rendszer
       inditasahoz hasznalt particiot, a gyo:kerparticiot (/). Tehat
       a particio csak a rendszerlemezu:nko:n szerepelhet (tehat
       ahonnan indul a rendszer). A b particio a lapozashoz hasznalt
       particiokat jelo:li es to:bb lemezen is szerepelhet. A c
       particion keresztu:l lehet elerni az egeszt lemezt dedikalt
       modban vagy az egesz FreeBSD slice-ot slice modban. A to:bbi
       particio tetszo"legesen felhasznalhato.

       A sysinstall cimkeszerkeszto"je az e betu"vel szereti
       megjelo:lni a sem nem rendszerindito, sem nem lapozo
       particiokat. A cimkeszerkeszto"ben egyetlen allomanyrendszert
       a C lenyomasaval lehet kesziteni. Amikor erre valaszul
       megkerdezi a tipusat (FS (allomanyrendszer) vagy swap
       (lapozoteru:let) legyen), akkor valasszuk az FS beallitast es
       adjuk meg a csatlakozasi pontjat (peldaul /mnt). Amikor a
       lemezt telepites utan (post-install) adjuk hozza, akkor a
       sysinstall valojaban nem hoz letre hozza bejegyzeseket az
       /etc/fstab allomanyban, ezert a csatlakozasi pont megadasa nem
       is feltetlenu:l fontos.

       Most mar keszen allunk arra, hogy ro:gzitsu:k az uj cimket a
       lemezre es letrehozzunk vele egy allomanyrendszert. Ehhez
       nyomjuk le a W gombot. Ne foglalkozzunk vele, ha a sysinstall
       nem kepes csatlakoztatni az uj particiot. Ha ezzel megvagyunk,
       akkor lepju:nk ki a cimkeszerkeszto"bo"l es a sysinstallbol
       is.

    4. Befejezes

       Most mar csak annyi teendo"nk maradt, hogy felvegyu:k az
       /etc/fstab allomanyba az uj lemezhez tartozo bejegyzest.

     --------------------------------------------------------------

  18.3.2. Parancssoros eszko:zo:k hasznalataval

    18.3.2.1. Slice modban

   Ezzel a beallitassal a lemezu:nkre keso"bb mas operacios
   rendszereket is telepithetu:nk, es nem okoz gondot a sajat fdisk
   segedprogramjaik mu"ko:deseben. Az uj lemezek telepitesenel ezt a
   modszer ajanlatos ko:vetni. A dedikalt modot viszont csak abban az
   esetben hasznaljuk, ha erre nyomos okunk van!

 # dd if=/dev/zero of=/dev/da1 bs=1k count=1
 # fdisk -BI da1 # inicializaljuk az uj lemezt
 # bsdlabel -B -w da1s1 auto # cimkezzu:k meg
 # bsdlabel -e da1s1 # szerkeszzu:k at a frissen letrehozott cimket es vegyu:nk fel egy uj particiot
 # mkdir -p /1
 # newfs /dev/da1s1e # ismetelju:k meg minden letrehozott particiohoz
 # mount /dev/da1s1e /1 # csatlakoztassuk a particio(ka)t
 # vi /etc/fstab # vegyu:k fel a megfelelo" bejegyzes(eke)t az /etc/fstab allomanyba

   IDE-lemezek eseten azad eszko:zt a da eszko:zzel helyettesitsu:k.

     --------------------------------------------------------------

    18.3.2.2. Dedikalt modban

   Amennyiben az uj meghajtot nem akarjuk megosztani egyetlen mas
   operacios rendszerrel sem, hasznalhatjuk a dedicated (dedikalt)
   modot. Ne felejtsu:k el azonban, hogy ez kepes o:sszezavarni a
   Microsoft operacios rendszereit, habar ebbo"l semmilyen karunk nem
   fog szarmazni. Az IBM OS/2 operacios rendszere azonban "kisajatit"
   minden olyan particiot, amelyet nem tud olvasni.

 # dd if=/dev/zero of=/dev/da1 bs=1k count=1
 # bsdlabel -Bw da1 auto
 # bsdlabel -e da1                               # letrehozzuk az `e' particiot
 # newfs /dev/da1e
 # mkdir -p /1
 # vi /etc/fstab                         # felvesszu:k a /dev/da1e particiot
 # mount /1

   Egy masik megoldas:

 # dd if=/dev/zero of=/dev/da1 count=2
 # bsdlabel /dev/da1 | bsdlabel -BR da1 /dev/stdin
 # newfs /dev/da1e
 # mkdir -p /1
 # vi /etc/fstab                                 # felvesszu:k a /dev/da1e particiot
 # mount /1

     --------------------------------------------------------------

18.4. RAID

  18.4.1. Szoftveres RAID

    18.4.1.1. O:sszefu"zo:tt lemezek beallitasa

   Eredetileg keszitette: Christopher Shumway. Elleno"rizte: Jim
   Brown.

   A nagyobb meretu" hattertarolok kivalasztasanal a legfontosabb
   tenyezo"k a sebesseg, megbizhatosag es a ko:ltseg. Nagyon ritkan
   lehet csak ezt a harmat egyensulyba hozni: altalaban a gyors es
   megbizhato taroloeszko:zo:k sok penzbe keru:lnek, valamint a
   ko:ltsegek megtakaritasahoz vagy a sebesseget vagy pedig a
   megbizhatosagot kell felaldoznunk.

   A tovabbiakban egy olyan rendszert mutatunk be, ahol a elso"sorban
   a ko:ltsegek, majd csak ezutan a sebesseg es megbizhatosag
   keru:ltek elo"terben. A rendszer adatatviteli sebesseget a halozat
   korlatozza. Habar emellett a megbizhatosag is nagyon fontos, a
   targyalt o:sszefu"zo:tt meghajto (Concenated Disk, CCD) csak
   adatokat szolgaltat es a teljes tartalma barmikor visszaallithato,
   mivel rendelkezesre all CD-n.

   A feladat elvegzesere alkalmas hattertarolo kivalasztasaban
   elso"kent a sajat elvarasainkat kell tudnunk megfogalmazni. Ha
   neku:nk jobban szamit az arnal a sebesseg vagy a megbizhatosag,
   akkor a mostaniaktol nemileg eltero" konfiguraciot kell majd
   epitenu:nk.

     --------------------------------------------------------------

      18.4.1.1.1. A hardver telepitese

   A rendszert tartalmazo IDE-lemez mellett harom darab, egyenkent
   30 GB-os 5400-as percenkenti fordulatszamu Western Digital
   gyartmanyu merevlemez alkotja majd a letrehozni kivant, kb. 90 GB
   o:sszmeretu" o:sszefu"zo:tt lemezt. Idealis esetben minden
   IDE-lemez sajat ku:lo:n vezerlo"n es kabelen van, de a ko:ltsegek
   cso:kkentese miatt nem hasznaltunk tovabbi IDE-vezerlo"ket.
   Ehelyett inkabb jumperekkel ugy allitottuk be a lemezeket, hogy
   minden vezerlo"re egy mester (master) es egy szolga (slave) modu
   merevlemez kapcsolodjon.

   A beszereles utan beallitottuk a rendszer BIOS-at, hogy
   automatikusan felismerje a csatlakoztatott lemezeket. De ami meg
   fontosabb, hogy a FreeBSD is eszlelte ezeket az inditas soran:

 ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33
 ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33
 ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33
 ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33

     Megjegyzes: Ha a FreeBSD nem latna az o:sszes lemezt, akkor
     elleno"rizzu:k a jumperek helyes beallitasat. Napjainkban a
     legto:bb IDE-meghajton talalunk egy "Cable Select" jumpert is.
     Ezzel nem a mester/szolga modot allitjuk be! A megfelelo" jumper
     beazonositasahoz olvassuk el a meghajtohoz tartozo
     dokumentaciot.

   A ko:vetkezo" lepesben azt vesszu:k nagyito ala, hogyan lehet
   ezeket az allomanyrendszer reszeve tenni. Ezzel kapcsolatban a
   vinum(8) (21 fejezet) es a ccd(4) elolvasasa ajanlatos. Erre a
   celra itt most a ccd(4) hasznalatat valasztottuk.

     --------------------------------------------------------------

      18.4.1.1.2. A CCD beallitasa

   A ccd(4) meghajto segitsegevel to:bb ugyanolyan lemezt tudunk
   o:sszefu"zni egyetlen logikai allomanyrendszerre. A ccd(4)
   hasznalatahoz arra is szu:ksegu:nk van, hogy a ccd(4) tamogatasa
   jelen legyen a rendszermagban. A ko:vetkezo" sor tegyu:k bele a
   rendszermag konfiguracios allomanyaba, forditsuk ujra es
   telepitsu:k a rendszermagot:

 device   ccd

   A ccd(4) tamogatasa modulkent is beto:ltheto".

   A ccd(4) beallitasahoz elo"szo:r a bsdlabel(8) programmal meg fel
   kell cimkeznu:nk a lemezeket:

 bsdlabel -w ad1 auto
 bsdlabel -w ad2 auto
 bsdlabel -w ad3 auto

   Igy letrejo:n egy-egy BSD tipusu cimke a ad1c, ad2c es ad3c
   eszko:zo:kre, amely igy lefedi a lemez egesz teru:letet.

   Most pedig valtoztassuk meg a lemezcimke tipusat. Ehhez hasznaljuk
   ismet a bsdlabel(8) programot:

 bsdlabel -e ad1
 bsdlabel -e ad2
 bsdlabel -e ad3

   Az EDITOR ko:rnyezeti valtozoban megadott szo:vegszerkeszto"vel
   (ez altalaban a vi(1)) megnyilik minden egyes lemezhez a jelenlegi
   lemezcimke.

   Egy modositatlan lemezcimke valahogy igy nez ki:

 8 partitions:
 #        size   offset    fstype   [fsize bsize bps/cpg]
   c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)

   A ccd(4) szamara hozzunk letre egy uj e particiot. Ezt lenyegeben
   a c particio lemasolasaval keletkezik, de nala az fstype (az
   allomanyrendszer tipusa) oszlopban mindenkeppen 4.2BSD
   szerepeljen! A lemezcimke most mar valahogy igy fog kinezni:

 8 partitions:
 #        size   offset    fstype   [fsize bsize bps/cpg]
   c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)
   e: 60074784        0    4.2BSD        0     0     0   # (Cyl.    0 - 59597)

     --------------------------------------------------------------

      18.4.1.1.3. Az allomanyrendszer kiepitese

   Most, miutan felcimkeztu:k az o:sszes lemezu:nket, lassunk neki a
   ccd(4) kiepitesenek. Ezt a ccdconfig(8) meghivasaval es az
   alabbihoz hasonlo parameterek atadasaval tehetju:k meg:

 ccdconfig ccd0(1) 32(2) 0(3) /dev/ad1e(4) /dev/ad2e /dev/ad3e

   A parameterek ro:vid leirasa es hasznalata:

   (1)
           Az elso" parameter a letrehozando eszko:z, ami jelen
           esetu:nkben a /dev/ccd0c. A /dev/ reszt nem ko:telezo"
           megadni.
   (2)
           A kihagyas nagysaga az allomanyrendszerben. A kihagyas
           hatarozza meg a lemezblokkban alkalmazott csikozas
           (striping) vastagsagat, ami altalaban 512 byte. Ennek
           megfelelo"en a 32-es kihagyas 16 384 byte-os csikokat ad
           meg.
   (3)
           A ccdconfig(8) beallitasai. Ha engedelyezni akarjuk a
           lemezek tu:kro:zeset, akkor itt megadhatjuk. Mivel ez a
           konfiguracio most nem nyujt tu:kro:zest a ccd(4) szamara,
           ezert allitsuk nullara (0).
   (4)
           A ccdconfig(8) parancsnak utolsokent azokat az
           eszko:zo:ket kell felsorolni, amelyeket to:mbbe akarunk
           fu"zni. Minden eszko:zt teljes eleresi uttal adjuk meg.

   A ccdconfig(8) futtatasa utan a ccd(4) beallitodik. Most mar
   allomanyrendszert is rakhatunk ra. A newfs(8) man oldalrol
   szedju:k o:ssze a szu:kseges parameterezest, vagy egyszeru"en csak
   gepelju:nk be ennyit:

 newfs /dev/ccd0c

     --------------------------------------------------------------

      18.4.1.1.4. Az egesz o:nmu"ko:do"ve tetele

   A ccd(4) eszko:zt altalaban minden egyes inditas utan hasznalni
   akarjuk. Ennek eleresehez elo"szo:r ezt be kell allitanunk. Az
   alabbi parancs kiadasaval irassuk be a jelenlegi beallitasainkat
   tu:kro:zo" /etc/ccd.conf allomanyt:

 ccdconfig -g > /etc/ccd.conf

   Az ujrainditas soran az /etc/rc parancs futtatja le a ccdconfig -C
   parancsot, ha az /etc/ccd.conf allomany letezik. Ez automatikusan
   beallitja a ccd(4) eszko:zo:ket, igy ilyenkor tudjuk
   csatlakoztatni is ezeket.

     Megjegyzes: Ha egyfelhasznalos modban inditjuk a rendszert,
     mielo"tt meg a mount(8) paranccsal csatlakoztatni tudnank a
     ccd(4) eszko:zt, a to:mb beallitasahoz meg kell hivnunk a
     ko:vetkezo" parancsot:

 ccdconfig -C

   Ha a rendszerinditaskor automatikusan csatlakoztatni akarjuk a
   ccd(4) eszko:zt, akkor az /etc/fstab allomanyba helyezzu:nk el egy
   hozzatartozo bejegyzest:

 /dev/ccd0c              /media       ufs     rw      2       2

     --------------------------------------------------------------

    18.4.1.2. A Vinum ko:tetkezelo"

   A Vinum ko:tetkezelo" egy blokkos eszko:zmeghajto, ami virtualis
   lemezes meghajtokat valosit meg. Elku:lo:niti a lemezes
   hardvereszko:zo:ket a blokkos eszko:zmeghajtok felu:leteto"l es a
   ketto" ko:zo:tt ugy kepezi le az adatokat, hogy a hagyomanyos
   lemezes tarolassal szemben megno:vekedett rugalmassagot,
   teljesitmenyt es megbizhatosagot kapunk. A vinum(8) ismeri a
   RAID-0, RAID-1 es RAID-5 modelleket egyarant, melyeket o:nmagukban
   es egyu:ttesen kombinalva is hasznalhatunk.

   A 21 fejezet bo"vebben ismerteti a vinum(8) rendszeret.

     --------------------------------------------------------------

  18.4.2. Hardveres RAID

   A FreeBSD rengeteg ku:lo:nbo:zo" tipusu hardveres RAID-vezerlo"t
   ismer. Ezek az eszko:zo:k a FreeBSD ku:lo:n erre a celra szant
   tamogatasa nelku:l kepesek vezerelni a RAID-alrendszert.

   A rajta levo" BIOS segitsegevel a kartya a legto:bb
   lemezmu"veletet egyedu:l kezeli. A ko:vetkezo"kben egy Promise IDE
   RAID vezerlo"t alkalmazo rendszert fogunk beallitani. Miutan
   telepitettu:k a kartyat es inditjuk a rendszert, bekeri a
   szu:kseges informaciokat. Ko:vessu:k az utasitasokat es lepju:nk
   be a kartya beallito kepernyo"jere. Itt tudjuk kombinalni az
   o:sszes csatlakoztatott meghajtonkat. Amikor ezzel a vegeztu:nk, a
   lemezek egyetlen lemezkent fognak a FreeBSD szamara viselkedni. A
   to:bbi RAID-szint is ehhez hasonloan allithato be.

     --------------------------------------------------------------

  18.4.3. Az ATA RAID-1 to:mbo:k ujraszervezese

   A FreeBSD leheto"seget a to:mbben levo" meghibasodott eszko:zo:k
   menet ko:zben elvegezheto" cserejere. Ehhez arra van szu:ksegu:nk,
   hogy meg ujrainditas elo"tt elcsipju:k a hibat.

   Hiba eseten valami hasonlot fogunk latni a /var/log/messages
   allomanyban vagy a dmesg(8) kimeneteben:

 ad6 on monster1 suffered a hard error.
 ad6: READ command timeout tag=0 serv=0 - resetting
 ad6: trying fallback to PIO mode
 ata3: resetting devices .. done
 ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11)\\
 status=59 error=40
 ar0: WARNING - mirror lost

   Tovabbi informaciokat az atacontrol(8) programtol szerezhetu:nk:

 # atacontrol list
 ATA channel 0:
         Master:      no device present
         Slave:   acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0

 ATA channel 1:
         Master:      no device present
         Slave:       no device present

 ATA channel 2:
         Master:  ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
         Slave:       no device present

 ATA channel 3:
         Master:  ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
         Slave:       no device present

 # atacontrol status ar0
 ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED

    1. A lemez biztonsagos eltavolitasahoz elo"szo:r valasszuk le
       (detach) a meghibasodott lemezhez tartozo csatornat:

 # atacontrol detach ata3

    2. Cserelju:k ki a lemezt.

    3. Csatlakoztassuk ujra (attach) az ATA csatornat:

 # atacontrol attach ata3
 Master:  ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
 Slave:   no device present

    4. Tartalekkent (spare) adjuk hozza az uj lemezt a to:mbho:z:

 # atacontrol addspare ar0 ad6

    5. Szervezzu:k ujra (rebuild) a to:mbo:t:

 # atacontrol rebuild ar0

    6. A folyamat elo"rehaladasat a ko:vetkezo" parancs begepelesevel
       tudjuk figyelni:

 # dmesg | tail -10
 [a kimenet to:bbi resze]
 ad6: removed from configuration
 ad6: deleted from ar0 disk1
 ad6: inserted into ar0 disk1 as spare

 # atacontrol status ar0
 ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completed

    7. Varjunk a mu"velet befejezo"deseig.

     --------------------------------------------------------------

18.5. USB taroloeszko:zo:k

   Irta: Marc Fonvieille.

   Manapsag mar szamos ku:lso" taroloeszko:z az USB (Universal Serial
   Bus) ko:zvetitesevel csatlakozik a szamitogephez: merevlemezek,
   pen drive-ok, CD-irok stb. A FreeBSD ezeket az eszko:zo:ket is
   ismeri.

     --------------------------------------------------------------

  18.5.1. Beallitas

   A USB taroloeszko:zo:ket kezelo" meghajto, az umass(4) felelo"s az
   USB alapu taroloeszko:zo:k tamogatasaert. Ha a GENERIC
   rendszermagot hasznaljuk, akkor semmit sem kell valtoztatnunk. Ha
   sajat rendszermagunk van, akkor gondoskodjunk rola, hogy a
   ko:vetkezo" sorokat beraktuk a rendszermag beallitasait tartalmazo
   allomanyba:

 device scbus
 device da
 device pass
 device uhci
 device ehci
 device usb
 device umass

   Az umass(4) meghajto a SCSI alrendszeren keresztu:l eri el az USB
   taroloeszko:zo:ket, tehat az USB eszko:zeinket a rendszer SCSI
   eszko:zkent latja. Az alaplapon talalhato USB chipkeszlet
   tipusatol fu:ggo"en vagy csak a device uhci, vagy USB 1.X eseten
   pedig a device ohci bejegyzesre lesz szu:ksegu:nk. De abbol sem
   szarmazik karunk, ha mind a ketto"t meghagyjuk. Az USB 2.0
   szabvanyu vezerlo"ket a ehci(4) meghajto (device ehci) tamogatja.
   Ha modositani kellett a konfiguracios allomanyt, akkor ne
   felejtsu:k el ujraforditani es telepiteni sem a rendszermagot.

     Megjegyzes: Ha az USB eszko:zu:nk egy CD- vagy DVD-iro, akkor a
     ko:vetkezo" sorral a SCSI CD-meghajtok meghajtojat, a cd(4)
     eszko:zt kell beepitenu:nk a rendszermagba:

 device cd

     Mivel az iro is SCSI eszko:zkent latszik, ezert az atapicam(4)
     nem szerepelhet a rendszermag beallitasai ko:zo:tt.

     --------------------------------------------------------------

  18.5.2. A beallitasok kiprobalasa

   A beallitasaink keszen allnak a kiprobalasra: csatlakoztassuk a
   szamitogephez az USB eszko:zu:nket es a rendszeru:zeneteket tarolo
   pufferben (dmesg(8)) hamarosan meg is jelenik a hozzatartozo
   meghajto:

 umass0: USB Solid state disk, rev 1.10/1.00, addr 2
 GEOM: create disk da0 dp=0xc2d74850
 da0 at umass-sim0 bus 0 target 0 lun 0
 da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device
 da0: 1.000MB/s transfers
 da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)

   Termeszetesen a gyartora, markara, az eszko:z leirojara (da0) es
   egyebekre vonatkozo reszletek elterhetnek.

   Mivel az USB eszko:z SCSI eszko:zkent latszik, ezert a camcontrol
   parancs hasznalhato a rendszerhez csatlakoztatott USB
   taroloeszko:zo:k listazasahoz:

 # camcontrol devlist
 <Generic Traveling Disk 1.11>      at scbus0 target 0 lun 0 (da0,pass0)

   Ha a meghajton allomanyrendszer is talalhato, akkor kepesek
   vagyunk csatlakoztatni. A 18.3 Szakasz elolvasasa segithet az USB
   meghajton particiokat kialakitani es formazni, amennyiben
   szu:kseges.

   Ha az eszko:zt normal felhasznalokkal is csatlakoztathatova
   akarjuk tenni, akkor tovabbi lepesek megtetelere is szu:ksegu:nk
   lesz. Elo"szo:r is a felhasznaloknak valahogy el kell tudniuk
   erniu:k az USB taroloeszko:z csatlakoztatasakor keletkezo"
   eszko:zo:ket. Ezt ugy tudjuk megoldani, ha az erintett
   felhasznalokat felvesszu:k az operator csoportba. Ebben a pw(8)
   lehet a segitsegu:nkre. Masodsorban amikor ezek az eszko:zo:k
   letrejo:nnek, az operator csoportnak tudniuk kell ezeket olvasniuk
   es irniuk. Ezt ugy tudjuk megvalositani, ha felvesszu:k a
   ko:vetkezo" sorokat az /etc/devfs.rules allomanyba:

 [localrules=5]
 add path 'da*' mode 0660 group operator

     Megjegyzes: Ha viszont vannak SCSI lemezeink is rendszerben,
     akkor a helyzet egy kicsit megvaltozik. Tehat peldaul a
     rendszerben mar eleve vannak da0, da1 es da2 neven lemezek,
     akkor a masodik sort ennek megfelelo"en valtoztassuk meg:

 add path 'da[3-9]*' mode 0660 group operator

     Ezzel kizarunk minden, korabban mar letezo" lemezt az operator
     csoportbol.

   Emellett meg az /etc/rc.conf allomanyban engedelyeznu:nk kell a
   sajat devfs.rules(5) szabalyrendszeru:nket is:

 devfs_system_ruleset="usb_rules"

   Ezt ko:veto"en be kell allitanunk a rendszermagban, hogy a
   hagyomanyos felhasznalok kepesek legyenek allomanyrendszereket
   csatlakoztatni. Ezt a legko:nnyebb ugy tudjuk megtenni, ha az
   /etc/sysctl.conf allomanyba felvesszu:k a ko:vetkezo" sort:

 vfs.usermount=1

   Azonban ne felejtsu:k el, hogy ez csak a rendszer ko:vetkezo"
   inditasatol el. De a sysctl(8) parancs hasznalataval is
   beallithatjuk ezt az erteket.

   Az utolso lepesben hozzunk letre egy ko:nyvtarat az
   allomanyrendszer csatlakoztatasahoz. Ezt a ko:nyvtarat az a
   felhasznalo fogja birtokolni, aki az allomanyrendszert
   csatlakoztatnia akarja. Ez peldaul root felhasznalokent ugy tudjuk
   megtenni, ha a felhasznalonak letrehozunk egy ko:nyvtarat
   /mnt/felhasznalo neven (ahol a felhasznalo nevet cserelju:k a
   tenyleges felhasznalo nevere, a csoport nevet pedig a
   felhasznalohoz tartozo elso"dleges csoport nevere):

 # mkdir /mnt/felhasznalo
 # chown felhasznalo:csoport /mnt/felhasznalo

   Most tegyu:k fel, hogy csatlakoztatnuk egy USB pen drive-ot es
   ennek megfelelo"en megjelenik a /dev/da0s1 eszko:z. Mivel az ilyen
   eszko:zo:kre altalaban gyarilag FAT allomanyrendszert tesznek,
   ezert igy kell ezeket csatlakoztatni a mount(8) paranccsal:

 % mount -t msdosfs -o -m=644,-M=755 /dev/da0s1 /mnt/felhasznalo

   Ha levalasztjuk az eszko:zt (miutan kiadtuk a umount(8)
   parancsot), akkor a rendszeru:zenetek ko:zo:tt valami ilyesmit
   fogunk latni:

 umass0: at uhub0 port 1 (addr 2) disconnected
 (da0:umass-sim0:0:0:0): lost device
 (da0:umass-sim0:0:0:0): removing device entry
 GEOM: destroy disk da0 dp=0xc2d74850
 umass0: detached

     --------------------------------------------------------------

  18.5.3. A temarol bo"vebben

   A Lemezek hozzaadasa es az Allomanyrendszerek csatlakoztatasa es
   levalasztasa cimu" szakaszok elolvasasa mellett a ko:vetkezo" man
   oldalakat is ajanljuk: umass(4), camcontrol(8) es usbconfig(8)
   FreeBSD 8.X eseteben, vagy usbdevs(8) a FreeBSD korabbi
   valtozatainal.

     --------------------------------------------------------------

18.6. Lezeres taroloeszko:zo:k (CD-k) letrehozasa es hasznalata

   Irta: Mike Meyer.

     --------------------------------------------------------------

  18.6.1. Bevezetes

   A CD-k szamos leheto"segu:nkben elternek a hagyomanyos
   lemezekto"l. Kezdetben a felhasznalok nem is voltak kepesek irni
   ezeket. Olyannak terveztek, hogy a fejek savok ko:zti mozgasabol
   fakado kesleltetes nelku:l lehessen folyamatosan olvasni. A
   szallitasa a maga idejeben sokkal ko:nnyebb volt minden vele
   egyforma meretu" eszko:znel.

   A CD-ken is talalhatunk savokat, azonban ez csak a folyamatosan
   olvashato adat egy szakaszat jelenti, nem pedig a lemez fizikai
   tulajdonsagat. Ha FreeBSD-n akarunk CD-t kesziteni, akkor ehhez
   elo"szo:r o:ssze kell allitanunk a CD egyes savjaira keru:lo"
   adatokat es ezutan ro:gziteni ezeket a savokat a CD-n.

   Az ISO 9660 allomanyrendszert ugy terveztek, hogy megbirkozzon
   ezekkel az elteresekkel. Sajnos ezzel egyu:tt ko"be vestek az
   allomanyrendszerek akkoriban ervenyes korlatozasait is.
   Szerencsere leheto"seget ad bo"vitesre, ezaltal a helyesen megirt
   CD-k kepesek ugy atlepni ezeket a hatarokat, hogy ko:zben az
   altaluk alkalmazott kiterjeszteseket nem ismero" rendszerekkel is
   egyu:tt tudnak mu"ko:dni.

   A sysutils/cdrtools port tartalmaz egy mkisofs(8) nevu" programot,
   amellyel letre tudunk hozni ISO 9660 tipusu allomanyrendszert
   tartalmazo adatallomanyt. To:bbfele kiterjesztest is ismer, amit
   majd a lentebb ismertett opciokkal erhetu:nk el.

   A CD irasahoz hasznalt konkret segedeszko:z attol fu:gg, hogy
   ATAPI vagy esetleg masmilyen ironk van. Az ATAPI CD-irok az
   alaprendszer reszekent elerheto" burncd programon keresztu:l
   hasznalhatoak. A SCSI es USB CD-irok eseten pedig a
   sysutils/cdrtools portban megtalalhato cdrecord programot
   hasznalhatjuk. Az ATAPI/CAM modul segitsegevel a cdrecord es mas
   SCSI-irokra keszu:lt programokat is tudunk hasznalni ATAPI
   hardvereken.

   Ha a CD-iro szoftveru:nket grafikus felhasznaloi felu:leten
   keresztu:l szeretnenk hasznalni, akkor az X-CD-Roast vagy a K3b
   alkalmazasokat erdemes szemu:gyre vennu:nk. Ezek az eszko:zo:k
   elerheto"ek csomagkent vagy a sysutils/xcdroast es sysutils/k3b
   portokbol. ATAPI hardver eseten az X-CD-Roast es a K3b
   alkalmazasok hasznalatahoz szu:ksegu:nk lesz az ATAPI/CAM modulra.

     --------------------------------------------------------------

  18.6.2. mkisofs

   A sysutils/cdrtools port reszekent elerheto" mkisofs(8) program
   kepes a UNIX tipusu allomanyrendszer ko:nyvtarszerkezete alapjan
   egy ISO 9660 tipusu allomanyrendszert tartalmazo image-et
   kesziteni. Legegyszeru"bb modon igy hasznalhatjuk:

 # mkisofs -o image.iso /az/eleresi/ut

   Ezzel a paranccsal egy olyan image.iso nevu" allomanyt hozunk
   letre, amely /az/eleresi/ut altal megadott helyen talalhato
   ko:nyvtarszerkezetet mintazza ISO 9660 allomanyrendszer
   formajaban. A folyamat soran minden olyan allomanyt lekepez
   szabvanyos ISO 9660 allomanyrendszerbeli nevre, amely megfelel a
   szabvany elvarasainak, es kihagy minden olyan allomanyt, amely nem
   jellemzo" az ISO allomanyrendszerekre.

   Szamos opcio lehet segitsegu:nkre az ilyenkor felbukkano akadalyok
   leku:zdeseben. Ezek ko:zu:l ku:lo:no:sen fontos az -R, amely a
   UNIX rendszerek szamara megszokott Rock Ridge kiterjeszteseket,
   valamint a -J, amely a Microsoft rendszerekben hasznalt Joliet
   kiterjeszteseit, es vegu:l a -hfs, amely a Mac OS alatt
   letrehozott HFS allomanyrendszerek kiterjeszteseit engedelyezi.

   A kizarolag csak FreeBSD rendszereken hasznalt CD-k eseteben a -U
   megadasaval kapcsolhatjuk ki az allomanynevek mindenfele
   korlatozasat. Az -R beallitas hasznalataval olyan allomanyrendszer
   kepet hozzuk letre, amely teljesen megegyezik a parancsban
   megadott ko:nyvtarbol indulo fa tartalmaval, habar to:bb modon is
   serti az ISO 9660 szabvany elo"irasait.

   Az utolso altalanos jelleggel hasznalhato beallitas a -b. Ezzel
   lehet megadni az "El Torito" szabvanynak megfelelo" rendszerindito
   CD keszitesehez szu:kseges rendszerindito image elereset. Ennel a
   beallitasnal tehat meg kell adni a rendszerinditashoz hasznalt
   lemez image-et, amely a CD tartalmat magaban foglalo
   ko:nyvtarszerkezetben talalhato valahol. A mkisofs(8)
   alapertelmezes szerint egy un. "floppy emulacios" modban hozza
   letre az ISO image-et, ezert a rendszerinditashoz hasznalatos
   lemez image-enek pontosan 1200, 1440 vagy 2880 KB meretu"nek kell
   lennie. Egyes rendszerbeto:lto"k, mint amilyen peldaul a FreeBSD
   terjesztesehez hasznalt lemezeken talalhato, nem hasznaljak ezt az
   emulaciot. Ilyen helyzetekben a -no-emul-boot kapcsolot kell
   megadni. Tehat ha a /tmp/sajatboot ko:nyvtarban van egy indithato
   FreeBSD rendszeru:nk, amelyben a /tmp/sajatboot/boot/cdboot a
   rendszerindito lemez image-e, akkor egy /tmp/indithato.iso nevu"
   ISO 9660 formatumu allomanyrendszert tartalmazo image-et peldaul
   igy tudunk elkesziteni:

 # mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/indithato.iso /tmp/sajatboot

   Miutan ezt megtettu:k, es a rendszermagunkban benne van az md
   eszko:z tamogatasa, csatlakoztathatjuk is az allomanyrendszert:

 # mdconfig -a -t vnode -f /tmp/indithato.iso -u 0
 # mount -t cd9660 /dev/md0 /mnt

   Ezutan mar o:ssze tudjuk vetni az /mnt es /tmp/sajatboot
   ko:nyvtarak egyezo"seget.

   A mkisofs(8) viselkedeset to:bb mas opcioval tudjuk finomhangolni,
   mint peldaul az ISO 9660 kiosztas modositasa vagy a Joliet es HFS
   lemezek keszitese. A mkisofs(8) man oldalon mindezekro"l bo"vebben
   olvashatunk.

     --------------------------------------------------------------

  18.6.3. burncd

   Ha ATAPI CD-ironk van, akkor a burncd paranccsal irhatjuk az ISO
   image-et a lemezre. A burncd az alaprendszer resze, es
   /usr/sbin/burncd neven erheto" el. A hasznalata igen egyszeru",
   csupan par parametere van:

 # burncd -f eszko:z data image.iso fixate

   Ezzel a paranccsal ramasoljuk az image.iso allomanyt az eszko:z
   eszko:zre. Az alapertelmezett eszko:z a /dev/acd0. A burncd(8) man
   oldalan talaljuk meg az irasi sebesseggel, a CD iras utani
   kiadasaval es az audio lemezek irasaval kapcsolatos beallitasokat.

     --------------------------------------------------------------

  18.6.4. cdrecord

   Ha nincs ATAPI CD-ironk, akkor az irashoz a cdrecord parancsot
   kell hasznalnunk. A cdrecord nem az alaprendszer resze: vagy a
   sysutils/cdrtools portbol vagy a neki megfelelo" csomagbol kell
   telepitenu:nk. Az alaprendszerben vegbemeno" valtozasok miatt a
   program binaris valtozatai hibazhatnak, aminek ko:vetkezteben csak
   "poharalateteket" fogunk tudni gyartani. Ezert a rendszerrel
   egyu:tt erdemes frissiteni ezt a portot is. Vagy ha a -STABLE
   verziot hasznaljuk, akkor mindig erdemes a port elerheto" legujabb
   verziojara frissiteni.

   Miko:zben a cdrecord szamos parameterrel rendelkezik, az alapveto"
   hasznalata megis egyszeru"bb a burncd parancsenal. Egy ISO 9660
   formatumu image-et ugyanis a ko:vetkezo" modon tudunk felirni
   lemezre:

 # cdrecord dev=eszko:z image.iso

   A cdrecord hasznalatanak tru:kko:s resze a megfelelo" eszko:z
   megtalalasa, tehat a dev beallitas helyes megadasa. Ehhez
   hasznaljuk a cdrecord -scanbus parameteret, amely az alabbihoz
   hasonlo eredmenyt fog produkalni:

 # cdrecord -scanbus
 Cdrecord-Clone 2.01 (i386-unknown-freebsd7.0) Copyright (C) 1995-2004 Jo:rg Schilling
 Using libscg version 'schily-0.1'
 scsibus0:
         0,0,0     0) 'SEAGATE ' 'ST39236LW       ' '0004' Disk
         0,1,0     1) 'SEAGATE ' 'ST39173W        ' '5958' Disk
         0,2,0     2) *
         0,3,0     3) 'iomega  ' 'jaz 1GB         ' 'J.86' Removable Disk
         0,4,0     4) 'NEC     ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM
         0,5,0     5) *
         0,6,0     6) *
         0,7,0     7) *
 scsibus1:
         1,0,0   100) *
         1,1,0   101) *
         1,2,0   102) *
         1,3,0   103) *
         1,4,0   104) *
         1,5,0   105) 'YAMAHA  ' 'CRW4260         ' '1.0q' Removable CD-ROM
         1,6,0   106) 'ARTEC   ' 'AM12S           ' '1.06' Scanner
         1,7,0   107) *

   Itt felsorolasra keru:lnek a dev beallitas ertekekent
   felhasznalhato eszko:zo:k. Keressu:k meg ko:ztu:k a CD ironkat es
   a dev ertekenek a harom vesszo"vel elvalasztott szamot adjuk meg.
   Ebben az esetben a CD-iro eszko:z most az 1,5,0 lesz, tehat itt a
   helyes parameterezes dev=1,5,0. Ezt az erteket ko:nnyebben is meg
   lehet adni. Ennek reszleteiro"l a cdrecord(1) man oldalan
   olvashatunk. Abban az esetben is erdemes fellapoznunk, ha az audio
   savok irasarol, az irasi sebesseg korlatozasarol vagy mas hasonlo
   dolgokrol akarunk olvasni.

     --------------------------------------------------------------

  18.6.5. Audio CD-k masolasa

   Audio CD-t ugy tudunk masolni, ha elo"szo:r allomanyok sorozataba
   mentju:k a lemez tartalmat, majd ezeket az allomanyokat egy u:res
   CD-re irjuk. Ennek konkret folyamata azonban nemileg elter az
   ATAPI- es SCSI-meghajtok hasznalata soran.

   SCSI-meghajtok eseten

    1. A cdda2wav programmal mentsu:k le a lemez tartalmat.

 % cdda2wav -v255 -D2,0 -B -Owav

    2. A cdrecord paranccsal irjuk fel a .wav kiterjesztesu"
       allomanyokat.

 % cdrecord -v dev=2,0 -dao -useinfo  *.wav

       Gondoskodjunk rola, hogy a 2,0 erteket a 18.6.4 Szakasznak
       megfelelo"en helyesen allitottuk be.

   ATAPI-meghajtok eseten

    1. Az ATAPI CD meghajtoja az egyes savokat /dev/acddtnn neven
       teszi elerheto"ve, ahol a d a meghajto sorszama, a nn a sav
       ket szamjeggyel kiirt sorszama, amelyet szu:kseg szerint
       balrol nullaval egeszitenek ki. Igy tehat az elso" meghajto
       elso" savja a /dev/acd0t01, a masodik a /dev/acd0t02, a
       harmadik a /dev/acd0t03 es igy tovabb.

       Elleno"rizzu:k, hogy ezek az eszko:zo:k jelen vannak a /dev
       ko:nyvtarban. Amennyiben hianyoznanak, kenyszeritsu:k ki a
       lemez ujboli beolvasasat:

 # dd if=/dev/acd0 of=/dev/null count=1

    2. Szedju:k le az egyes savokat a dd(1) hasznalataval. A parancs
       kiadasakor meg kell adnunk egy blokkmeretet is:

 # dd if=/dev/acd0t01 of=track1.cdr bs=2352
 # dd if=/dev/acd0t02 of=track2.cdr bs=2352
 ...

    3. A burncd hasznalataval irjuk fel a lemezre az iment lementett
       allomanyokat. Meg kell adnunk, hogy ezek audio allomanyok, es
       hogy a burncd a munka befejeztevel zarja le (fixate) a lemezt.

 # burncd -f /dev/acd0 audio track1.cdr track2.cdr ... fixate

     --------------------------------------------------------------

  18.6.6. Adat CD-k masolasa

   Az adatot tartalmazo CD-ket le tudjuk masolni egy olyan image-be,
   amely funkcionalisan megegyezik egy mkisofs(8) altal letrehozott
   image-dzsel es amivel le tudunk masolni barmilyen adat CD-t. Az
   itt megadott pelda azt feltetelezi, hogy a CD-meghajtonk neve
   acd0. Helyere a sajat CD-meghajtonk nevet kell behelyettesiteni.

 # dd if=/dev/acd0 of=allomany.iso bs=2048

   Most miutan lementettu:k az image-et, irjuk fel CD-re a fentiek
   szerint.

     --------------------------------------------------------------

  18.6.7. Adat CD-k hasznalata

   Most, hogy mar keszitettu:nk egy szabvanyos adat CD-t,
   valoszinu"leg szeretnenk is valamilyen csatlakoztatni es elerni a
   rajta levo" adatokat. Alapertelmezes szerint a mount(8) mindig azt
   feltetelezi, hogy az allomanyrendszerek ufs tipusuak. Ezert ha
   valami ilyesmivel probalkozunk:

 # mount /dev/cd0 /mnt

   akkor egy "Incorrect super block" szo:vegu" hibau:zenetet lesz a
   jutalmunk, es termeszetesen nem tudjuk csatlakoztatni a CD-t.
   Mivel a CD nem UFS allomanyrendszert tartalmaz, ezert az ilyen
   jellegu" kiserleteink mind kudarcba fognak fulladni. Valahogy fel
   kell vilagositanunk a mount(8) parancsot arrol, hogy itt most egy
   ISO9660 tipusu allomanyrendszert akarunk csatlakoztatni, es akkor
   minden a helyere keru:l. Ezt ugy tudjuk megtenni, ha a mount(8)
   parancsnak megadjuk a -t cd9660 parametert. Peldaul, ha a
   /dev/acd0 neven elerheto" CD-meghajtoban levo" lemezt akarjuk a
   /mnt ko:nyvtarba csatlakoztatni, akkor ezt kell begepelnu:nk:

 # mount -t cd9660 /dev/cd0 /mnt

   Vegyu:k eszre, hogy az eszko:z neve (ez ebben a peldaban most
   /dev/cd0) lehet mas is attol fu:ggo"en, hogy milyen
   csatolofelu:letet hasznal a CD-meghajtonk. So"t, a -t cd9660
   valojaban csak a mount_cd9660(8) parancsot inditja el. Ennek
   tu:kreben tehat az elo"bbi peldat igy ro:vidithetju:k le:

 # mount_cd9660 /dev/cd0 /mnt

   Ezen a modon barmilyen gyartmanyu adat CD-t kepesek vagyunk
   csatlakoztatni. Egyes ISO 9660 kiterjeszteseket hasznalo lemezek
   azonban esetleg furcsan mu"ko:dhetnek. Peldaul Joliet lemezek az
   o:sszes allomany nevet ketbyte-os Unicode karakterben taroljak. A
   FreeBSD rendszermagja ugyan nem beszeli a Unicode-ot, de a FreeBSD
   CD9660 meghajtoja kepes menetko:zben atkonvertalni a Unicode
   karaktereket. Ha bizonyos nem angol karakterek kerdo"jelekkent
   jelennenek meg, akkor a -C beallitas hasznalataval meg egy helyi
   kodlapot is meg kell adnunk. Ezzel kapcsolatban bo"vebb
   tajekoztatasert forduljunk a mount_cd9660(8) man oldalhoz.

     Megjegyzes: A -C beallitas segitsegevel csak akkor lesz kepes a
     rendszermag elvegezni ezt az atalakitast, ha elo"tte beto:ltju:k
     a cd9660_iconv.ko modult. Ezt megtehetju:k ugy, hogy ha
     felvesszu:k a ko:vetkezo" sort a loader.conf allomanyba:

 cd9660_iconv_load="YES"

     Inditsuk ujra a szamitogepu:nket, vagy ko:zvetlenu:l to:ltsu:k
     be a modult a kldload(8) hasznalataval.

   Estenkent elo"fordulhat, hogy kapunk egy "Device not configured"
   hibau:zenetet a CD-k csatlakoztatasakor. Ez altalaban arra utal,
   hogy a CD-meghajto nem erzekeli a berakott lemezt, vagy eppen a
   meghajto nem lathato a buszon. A CD-meghajtok eseteben par
   masodpercig eltarthat, amig felismeri a berakott lemezt, ilyenkor
   mindig legyu:nk tu:relemmel.

   Neha a SCSI CD-meghajto nem lathato, mert nem volt eleg ideje
   valaszolni busz ujrainditasa elo"tt. Ha SCSI CD-meghajtonk van,
   akkor a ko:vetkezo" beallitast tegyu:k hozza a rendszermagunk
   konfiguraciojahoz es forditsuk ujra a rendszermagukat.

 options SCSI_DELAY=15000

   Ezzel utasitjuk a SCSI buszunkat egy 15 masodperces varakozasra a
   rendszer inditasa soran, es igy ezzel eleg eselyt adunk arra, hogy
   a CD-meghajto valaszolni tudjon a busz ujrainditasa elo"tt.

     --------------------------------------------------------------

  18.6.8. Nyers adat CD-k irasa

   Irhatunk ko:zvetlenu:l is allomanyokat a CD-re, ISO 9660 formatumu
   allomanyrendszer hasznalata nelku:l. Sokan igy oldjak meg a
   mentest. Ezt sokkal gyorsabban lebonyolithato egy szabvanyos CD
   eseteben:

 # burncd -f /dev/acd1 -s 12 data archive.tar.gz fixate

   Az ezen a modon megirt CD-ket szinten nyers modon kell olvasnunk:

 # tar xzvf /dev/acd1

   Az ilyen lemezeket nem tudjuk a normalis CD-khez hasonloan
   csatlakoztatni. So"t, az ilyen CD-ket csak FreeBSD alatt tudjuk
   olvasni. Ha csatlakoztathatova akarjuk tenni a lemezt, vagy mas
   operacios rendszerek alol is szeretnenk olvasni, akkor erre a
   celra a fentebb bemutatott mkisofs(8) parancsot kell hasznalnunk.

     --------------------------------------------------------------

  18.6.9. Az ATAPI/CAM meghajto hasznalata

   Irta: Marc Fonvieille.

   Ez a meghajto leheto"ve teszi az ATAPI eszko:zo:k (CD-ROM, CD-RW,
   DVD meghajtok stb...) szamara, hogy a SCSI alrendszeren keresztu:l
   legyenek elerheto"ek, igy esetu:nkben is hasznalhatova valnak
   olyan alkalmazasok, mint peldaul sysutils/cdrdao vagy a
   cdrecord(1).

   A meghajto hasznalatahoz a ko:vetkezo" sort kell a
   /boot/loader.conf allomanyba illeszteni:

 atapicam_load="YES"

   Inditsuk ujra a szamitogepet.

     Megjegyzes: Amennyiben a rendszermagban az atapicam(4) statikus
     tamogatasat szeretnenk hasznalni, ugy a ko:vetkezo" sort kell a
     rendszermag konfiguracios allomanyaba felvenni:

 device atapicam

     Tovabba a ko:vetkezo" sorokra lesz meg szu:ksegu:nk:

 device ata
 device scbus
 device cd
 device pass

     Ezeknek mar eleve ott kell szerepelnie. Ezutan forditsuk ujra es
     telepitsu:k a rendszermagot, majd inditsuk ujra a szamitogepet.

   A rendszer indulasakor az ironak ehhez hasonlo modon kell
   megjelennie:

 acd0: CD-RW <MATSHITA CD-RW/DVD-ROM UJDA740> at ata1-master PIO4
 cd0 at ata1 bus 0 target 0 lun 0
 cd0: <MATSHITA CDRW/DVD UJDA740 1.00> Removable CD-ROM SCSI-0 device
 cd0: 16.000MB/s transfers
 cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed

   A meghajto most mar elerheto" a /dev/cd0 eszko:zo:n keresztu:l, es
   peldaul ennyi begepelesevel csatlakoztatni tudunk rola egy CD-t a
   /mnt ko:nyvtarba:

 # mount -t cd9660 /dev/cd0 /mnt

   root felhasznalokent a ko:vetkezo" paranccsal tudjuk lekerdezi az
   iro SCSI cimet:

 # camcontrol devlist
 <MATSHITA CDRW/DVD UJDA740 1.00>   at scbus1 target 0 lun 0 (pass0,cd0)

   Eszerint a 1,0,0 lesz az eszko:z SCSI cime, amelyet a cdrecord(1)
   es mas SCSI alkalmazasok eseten adunk meg.

   Az ATAPI/CAM es SCSI rendszerek tekinteteben olvassuk el az
   atapicam(4) es cam(4) man oldalakat.

     --------------------------------------------------------------

18.7. Lezeres taroloeszko:zo:k (DVD-k) letrehozasa es hasznalata

   Irta: Marc Fonvieille. Segitseget nyujtott benne: Andy Polyakov.

     --------------------------------------------------------------

  18.7.1. Bevezetes

   A DVD a CD-hez kepest a lezeres taroloeszko:zo:k technologiajanak
   ujabb generaciojat kepviseli. A DVD barmelyik CD-nel to:bb adatot
   kepes tarolni es napjaink ez a videok kiadasanak szabvanya.

   O:t fizikailag irhato formatummal hatarozhatjuk meg az irhato DVD
   fogalmat:

     * DVD-R: Ez volt az elso" elerheto" irhato DVD formatum. A DVD-R
       szabvanyat a DVD Forum fektette le. Ez a formatum csak egyszer
       irhato.

     * DVD-RW: Ez a DVD-R szabvany ujrairhato valtozata. A DVD-RW
       ko:ru:lbelu:l 1000 alkalommal irhato ujra.

     * DVD-RAM: Ez is a DVD Forum altal tamogatott ujrairhato
       formatum. A DVD-RAM cserelheto" merevlemeznek latzsik. Azonban
       ez tipusu adathordozo nem kompatibilis legto:bb DVD-ROM
       hajtoval es DVD-Video lejatszoval. Csupan csak nehany DVD-iro
       ismeri a DVD-RAM formatumot. A DVD-RAM hasznalatarol a 18.7.9
       Szakaszban talalunk bo"vebben informaciokat.

     * DVD+RW: Ezt az ujrairhato formatumot a DVD+RW szo:vetseg
       alkotta meg. A DVD+RW lemezek nagyjabol 1000 alkalommal
       irhatoak ujra.

     * DVD+R: Ez a formatum a DVD+RW formatum egyszer irhato
       valtozata.

   Az egyretegu" irhato DVD-k o:sszesen 4 700 000 000 byte-ot kepesek
   ro:gziteni, ami 4,38 GB vagy 4 485 MB (1 kilobyte itt 1024 byte).

     Megjegyzes: Meg kell ku:lo:nbo:ztetnu:nk fizikai taroloeszko:zt
     es az alkalmazast. Peldaul a DVD-Video allomanyok olyan jellegu"
     elrendezeset irja elo", ami barmelyik irhato fizikai DVD
     eszko:zo:n megjelenhet: DVD-R, DVD+R, DVD-RW stb. Mielo"tt
     kivalasztanank az eszko:z tipusat, biztosnak kell lennu:nk
     benne, hogy az iro es a DVD-Video lejatszo (ez lehet egy o:nallo
     lejatszo vagy egy szamitogep DVD-ROM meghajtoja) kompatibilis a
     szobanforgo lemezzel.

     --------------------------------------------------------------

  18.7.2. Beallitas

   A growisofs(1) programot fogjuk a DVD ro:gzitesere hasznalni. Ez a
   program a dvd+rw-tools segedprogramok (sysutils/dvd+rw-tools)
   gyu"jtemenyenek resze. A dvd+rw-tools az o:sszes DVD medium
   tipusat ismeri.

   Ezek a segedprogramok a SCSI alrendszeren keresztu:l erik az
   eszko:zo:ket, ezert a hasznalhatukhoz a rendszermagban
   szu:ksegu:nk lesz az ATAPI/CAM tamogatasra. Ha az ironk USB
   felu:leten csatlakozik, akkor mindez szu:ksegtelen, es ehelyett a
   18.5 Szakaszt kell elolvasnunk az USB eszko:zo:k beallitasahoz.

   Engedelyeznu:nk kell az ATAPI eszko:zo:k DMA hozzafereset is, amit
   a /boot/loader.conf allomanyban a ko:vetkezo" sor hozzaadasaval
   tudunk megtenni:

 hw.ata.atapi_dma="1"

   A dvd+rw-tools hasznalatanak megkezdese elo"tt a DVD-ironkkal
   kapcsolatban erdemes atolvasnunk a dvd+rw-tools
   hardverkompatibilitasi jegyzeteit (angolul).

     Megjegyzes: Ha grafikus felu:letet szeretnenk hasznalni, akkor
     erdemes egy pillanatast vetnu:nk a K3bre (sysutils/k3b), amely
     egy felhasznalobarat felu:letet ad a growisofs(1) es sok mas
     iroprogram fele.

     --------------------------------------------------------------

  18.7.3. Adat DVD-k irasa

   A growisofs(1) a mkisofs parancs elo"lapja, tehat az
   allomanyrendszer letrehozasahoz a mkisofs(8) programot fogja
   meghivni es ezt irja fel a DVD-re. Ez azt jelenti, hogy az irasi
   folyamat megkezdese elo"tt nem kell semmilyen image-et
   letrehoznunk.

   A /az/eleresi/ut ko:nyvtarbol a ko:vetkezo" paranccsal tudjuk
   kiirni az adatokat DVD+R vagy DVD-R lemezre:

 # growisofs -dvd-compat -Z /dev/cd0 -J -R /az/eleresi/ut

   A -J -R beallitasok a mkisofs(8) programhoz keru:lnek at az
   allomanyrendszer letrehozasakor (itt most egy ISO 9660
   allomanyrendszert hozunk letre, Joliet es Rock Ridge
   kiterjesztesekkel), hasznalatanak reszleteit lasd mkisofs(8).

   A -Z beallitast a kezdo"menetek letrehozasakor hasznaljuk: to:bb
   menetben akarjuk irni a lemezt vagy sem. A DVD eszko:zt, amely itt
   most a /dev/cd0, a sajat konfiguracionknak megfelelo"en kell
   megadni. A -dvd-compat parameterrel lezarjuk a lemezt, igy ezutan
   tovabbi iras mar nem lehetseges. Ezert cserebe jobb
   kompatibilitast kapunk a DVD-ROM meghajtokkal.

   Elo"re legyartott image-dzsel is dolgozhatunk, tehat peldaul, ha
   az image.iso allomanyt akarjuk kiirni, akkor ezt kell
   lefuttatnunk:

 # growisofs -dvd-compat -Z /dev/cd0=image.iso

   Az irasi sebesseget magatol beallitja a lemez es meghajto
   kepessegeinek megfelelo"en. Az irasi sebesseg felu:lbiralasahoz
   hasznaljuk a -speed= parametert. A parameterek leheto"segeiro"l a
   growisofs(1) man oldalarol tudhatunk meg to:bbet.

     --------------------------------------------------------------

  18.7.4. DVD-Video irasa

   A DVD-Video az allomanyok specialis szervezesere utal, amely az
   ISO 9660 es az mikro UDF (M-UDF) specifikaciokon alapszik. A
   DVD-Video emellett egy adott adatszerkezeti hierarchiat is takar,
   ezert kell egy ku:lo:n programmal, peldaul a multimedia/dvdauthor
   segitsegevel o:sszeallitani egy DVD-t.

   Ha mar a birtokunkban van egy DVD-Video allomanyrendszer kepe,
   akkor az eddigiek szerint egyszeru"en csak irjuk fel egy lemezre,
   ahogy azt az elo"zo" szakaszban is lathattuk. Ha o:sszeallitottuk
   a DVD anyagat es peldaul a /a/video/eleresi/utja ko:nyvtarba
   raktuk, akkor a ko:vetkezo" paranccsal irathatjuk ki a DVD-Video
   formatumu lemezt:

 # growisofs -Z /dev/cd0 -dvd-video /a/video/eleresi/utja

   A -dvd-video parametert kell atadni a mkisofs(8) programnak,
   amelynek hatasara letrehoz egy DVD-Video formatumu
   allomanyrendszert. Emellett a -dvd-video beallitas maga utan vonja
   a growisofs(1) -dvd-compat beallitasat is.

     --------------------------------------------------------------

  18.7.5. A DVD+RW hasznalata

   Eltero"en a CD-RW-to"l, egy erintetlen DVD+RW-t az elso" hasznalat
   elo"tt meg kell formazni. A growisofs(1) program erro"l az elso"
   adando alkalommal gondoskodik, es ez az ajanlott. Azonban a DVD+RW
   formazasara hasznalhatjuk a dvd+rw-format parancsot is:

 # dvd+rw-format /dev/cd0

   Ezt a mu"veletet csak egyszer kell elvegezni, hiszen ne feledju:k,
   hogy csak a szu"z DVD+RW lemezeket kell megformazni. Ezutan a
   DVD+RW-t a korabbi szakaszoknak megfelelo"en tudjuk irni.

   Ha a DVD+RW-re uj adatot akarunk irni (egy teljesen uj
   allomanyrendszert, nem pedig adatokat hozzafu"zni), akkor nem kell
   u:resse tenni a lemezt, egyszeru"en csak elegendo" felu:lirni az
   elo"zo"eket (egy uj kezdo"menet letrehozasaval) valahogy igy:

 # growisofs -Z /dev/cd0 -J -R /az/uj/adat/helye

   A DVD+RW formatum felajanlja annak leheto"seget is, hogy
   ko:nnyeden hozza lehessen fu"zni adatokat az elo"zo" irashoz. A
   mu"velet soran az uj menetet o:sszefu"zi a meglevo"vel, tehat ez
   nem egy to:bbmenetes iras, hanem a growisofs(1) megno:veli a
   lemezen talalhato ISO 9660 allomanyrendszert.

   Peldaul, ha egy korabban megirt DVD+RW lemezen levo" adatokhoz
   akarunk hozzairni, akkor a ko:vetkezo" parancsot kell kiadnunk:

 # growisofs -M /dev/cd0 -J -R /az/uj/adat/helye

   A mkisofs(8) beallitasainal a kezo"menetnel megadottakat erdemes
   ismet megadni.

     Megjegyzes: Ha kompatibilisek akarunk maradni a to:bbi
     DVD-meghajtoval, akkor adjuk meg -dvd-compat parametert. Ez a
     DVD+RW eseteben annyit jelent, hogy nem tudunk tovabbi adatokat
     hozzafu"zni.

   Ha valamilyen okbol megis u:resse szeretnenk tenni a lemez, akkor
   ir jarhatunk el:

 # growisofs -Z /dev/cd0=/dev/zero

     --------------------------------------------------------------

  18.7.6. A DVD-RW hasznalata

   A DVD-RW ket lemezformatumot fogad el: a inkrementalis soros
   hozzaferest es a korlatozott felu:lirast. Alapertelmezes szerint a
   DVD-RW lemezek soros eleresu"ek.

   A meg fel nem hasznalt DVD-RW lemezek ko:zvetlenu:l irhatoak
   ku:lo:n formazas nelku:l, habar a korabban mar soros formatumban
   hasznalt DVD-RW lemezeket egy uj kezdo"menet letrehozasa elo"tt
   u:resse kell tenni.

   Soros modban igy kell leto:ro:lni egy DVD-RW lemezt:

 # dvd+rw-format -blank=full /dev/cd0

     Megjegyzes: A teljes to:rles (-blank=full) egy 1x media eseten
     ko:ru:lbelu:l egy orat vesz igenybe. A -blank beallitassal egy
     gyorsitott to:rles zajlik le, amennyiben a DVD-RW lemezt
     Disk-At-Once (DAO) modban irjuk. A DVD-RW lemezeket az alabbi
     paranccsal tudjuk DAO modban irni:

 # growisofs -use-the-force-luke=dao -Z /dev/cd0=image.iso

     A -use-the-force-luke=dao beallitast nem ko:telezo" megadni,
     mivel a growisofs(1) igyekszik a leheto" leggyorsabban to:ro:lni
     a lemezt es megkezdeni a DAO modu irast.

     A DVD-RW eseteben valojaban a korlatozott felu:lirast lenne
     erdemes hasznalnunk, mivel ez a formatum sokkal rugalmasabb az
     alapertelmezes szerint felkinalt inkrementalis soros eleresnel.

   A soros DVD-RW lemezekre ugyanugy tudunk adatokat ro:gziteni, mint
   az o:sszes to:bbi formatum eseteben:

 # growisofs -Z /dev/cd0 -J -R /az/adat/helye

   Ha az elo"zo" irashoz akarunk meg hozzafu"zni adatokat, akkor
   ehhez a growisofs(1) -M beallitasat kell hasznalnunk. Azonban ha a
   DVD-RW lemezhet inkrementalis soros modban adunk hozza adatot,
   akkor ezzel egy uj menetet hozunk letre a lemezen es igy egy
   to:bbmenetes lemezt kapunk.

   A korlatozott felu:lirasu DVD-RW formatum hasznalata eseten nem
   kell mindegyik kezdo"menet elo"tt to:ro:lni a lemezt, egyszeru"en
   csak felu:l kell irni a -Z beallitassal, hasonloan a DVD+RW
   esetehez. A DVD+RW -M beallitasahoz hasonloan leheto"segu:nk van a
   lemezen talalhato ISO 9660 formatumu allomanyrendszer no:velesere.
   Ennek az eredmenye egy egymenetes DVD.

   A ko:vetkezo" paranccsal tudjuk a DVD-RW lemezt korlatozott
   felu:lirasu modba tenni:

 # dvd+rw-format /dev/cd0

   Igy tudunk visszavaltani a soros formatum hasznalatara:

 # dvd+rw-format -blank=full /dev/cd0

     --------------------------------------------------------------

  18.7.7. To:bb menet hasznalata

   Nagyon keves DVD-ROM meghajto ismeri a to:bbmenetes DVD-ket, es
   legto:bbszo:r is csak altalaban az elso" menetet olvassak. A
   DVD+R, DVD-R es DVD-RW formatumok soros formatumban kepesek to:bb
   mentetet is befogadni, viszont a DVD+RW es DVD-RW korlatozott
   felu:lirasu formatuma eseten nem letezik to:bb menet.

   Az alabbi parancs egy ujabb menetet ad hozza egy megkezdett (le
   nem zart) DVD+R, DVD-R vagy DVD-RW soros formatumu lemezhez:

 # growisofs -M /dev/cd0 -J -R /az/uj/adat/helye

   Ha ezt a parancsot egy korlatozott felu:lirasu DVD+RW vagy DVD-RW
   lemez eseten adjuk ki, akkor az uj adatokat ugy fu"zi hozza, hogy
   egy uj menetet o:sszefesu:li a meglevo"vel. Ezzel egy egymenetes
   lemez keletkezik. Ilyenkor igy bo"vitik a megkezdett lemezeket.

     Megjegyzes: A menetek kezdese es befejezese altalaban felhasznal
     valamennyi helyet a lemezen. Ezert ugy tudjuk optimalizalni a
     lemez helykihasznaltsagat, hogy keves menetben sok adatot
     viszu:nk fel ra. A DVD+R eseten 154, a DVD-R-nel ko:ru:lbelu:l
     2000, es a dupla retegu" DVD+R lemezeknel 127 menetet tudunk
     letrehozni.

     --------------------------------------------------------------

  18.7.8. Tovabbi olvasnivalok

   A DVD lemezro"l reszletesebb informaciokat a dvd+rw-mediainfo
   /dev/cd0 parancs kiadasaval tudunk lekerdezni.

   A dvd+rw-tools hasznalatarol a growisofs(1) man oldalon talalunk
   informaciot, valamint a dvd+rw-tools honlapjan (angolul) es a
   cdwrite levelezesi lista archivumaiban (angolul).

     Megjegyzes: Futassuk dvd+rw-mediainfo parancsot minden olyan
     esetben, amikor gondunk akad valamilyen lemez irasaval. A
     kimenete nelku:l szinte lehetetlen segitenu:nk barkinek is.

     --------------------------------------------------------------

  18.7.9. A DVD-RAM hasznalata

     --------------------------------------------------------------

    18.7.9.1. Beallitas

   A DVD-RAM irok SCSI vagy ATAPI csatolofelu:lettel rendelkeznek. Az
   ATAPI eszko:zo:k eseten engedelyezni kell a DMA elereset, amit a
   /boot/loader.conf allomanyban az alabbi sor hozzaadasaval tudunk
   megtenni:

 hw.ata.atapi_dma="1"

     --------------------------------------------------------------

    18.7.9.2. A lemez elo"keszitese

   Ahogy arra mar korabban utaltunk a fejezet bevezeteseben, a
   DVD-RAM ugy lathato, mint egy cserelheto" merevlemez. A
   hagyomanyos merevlemezekhez hasonloan a DVD-RAM-ot is "elo" kell
   kesziteni" az elso" hasznalatahoz. Ebben a peldaban a lemez teljes
   teru:letet egy szabvanyos UFS2 allomanyrendszerrel to:ltju:k fel:

 # dd if=/dev/zero of=/dev/acd0 bs=2k count=1
 # bsdlabel -Bw acd0
 # newfs /dev/acd0

   A DVD eszko:z nevet, vagyis az acd0 eszko:zt a sajat
   rendszeru:nknek megfelelo"en kell modositani.

     --------------------------------------------------------------

    18.7.9.3. A lemez hasznalata

   Miutan az elo"bbi mu"veletet elvegeztu:k a DVD-RAM lemezen, mar
   tudjuk is normalis merevlemezkent csatlakoztatni:

 # mount /dev/acd0 /mnt

   Ezt ko:veto"en a DVD-RAM egyarant olvashato es irhato.

     --------------------------------------------------------------

18.8. Hajlekonylemezek letrehozasa es hasznalata

   Eredetileg keszitette: Julio Merino. Atdolgozta: Martin Karlsson.

   Neha hasznos lehet, ha az adatokat floppy lemezeken taroljuk,
   peldaul olyankor, amikor mas cserelheto" taroloeszko:z mar nem
   jo:het szamitasba, vagy amikor kis mennyisegu" adatot kell
   atvinnu:nk az egyik szamitogepro"l a masikra.

   Ebben a szakaszban bemutatjuk hogyan kell FreeBSD alatt floppy
   lemezeket hasznalni. Elso"sorban a 3,5 colos DOS lemezek
   formazasaval es hasznalataval foglalkozik, de ezek fogalmak a
   to:bbi hajlekonylemezes formatum eseteben is hasonloak.

     --------------------------------------------------------------

  18.8.1. A hajlekonylemezek formazasa

    18.8.1.1. Az eszko:z

   A floppy lemezek a to:bbi eszko:zho:z hasonloan a /dev
   ko:nyvtarban erheto"ek el. A nyers floppy lemezek eleresehez
   egyszeru"en csak hasznaljuk a /dev/fdN hivatkozast.

     --------------------------------------------------------------

    18.8.1.2. A formazas

   Hasznalat elo"tt a floppy lemezeket alacsony szinten meg kell
   formazni. Ezt altalaban maga a gyarto vegzi el, de a formazas
   gyakran hasznos lehet a lemez sertetlensegenek elleno"rzesere. A
   legto:bb floppy lemez hivatalos kapacitasa 1440 KB, de
   hasznalhatjuk nagyobb (es kisebb) meretekben is.

   A floppy lemezek alacsony szintu" formazasara az fdformat(1)
   parancsot hasznalhatjuk. Ez a segedprogram parameterkent az
   eszko:z nevet varja.

   Figyelju:nk a menetko:zben megjeleno" hibau:zenetekre, mivel ezek
   segitik eldo:nteni, hogy a lemez hasznalhato vagy sem.

     --------------------------------------------------------------

      18.8.1.2.1. A hajlekonylemezek formazasa

   A /dev/fdN eszko:zo:k segitsegevel tudunk megformazni egy floppy
   lemezt. Tegyu:nk be egy 3,5 colos floppy lemezt a meghajtoba, majd
   adjuk ki a ko:vetkezo" parancsot:

 # /usr/sbin/fdformat -f 1440 /dev/fd0

     --------------------------------------------------------------

  18.8.2. A lemez cimkezese

   Miutan alacsony szinten formaztuk a lemezt, tennu:nk kell ra egy
   lemezcimket is. Ez a lemezcimke keso"bb meg fog semmisu:lni, de a
   rendszernek szu:ksege van ra, hogy pontosan meg tudja allapitani a
   lemez meretet es geometriajat.

   Az uj lemezcimke lefedi az egesz lemezt, es tartalmazni fogja az
   o:sszes informaciot a floppy geometriajarol. A lemezcimkek
   geometriaertekeit az /etc/disktab allomanyban talaljuk meg
   felsorolva.

   Most mar futtathatjuk is a bsdlabel(8) parancsot:

 # /sbin/bsdlabel -B -w /dev/fd0 fd1440

     --------------------------------------------------------------

  18.8.3. Az allomanyrendszer

   A hajlekonylemez most mar keszen all a magas szintu" formazasra.
   Ennek soran egy uj allomanyrendszert teszu:nk ra, amelyet a
   FreeBSD kepes irni es olvasni. Miutan letrejo:tt ez az uj
   allomanyrendszer, a lemezcimke megsemmisu:l, igy tehat ha ujra meg
   akarjuk formazni a lemezt, akkor ujra letre kell majd hoznunk a
   lemezcimket.

   A floppy allomanyrendszere lehet UFS vagy FAT. A FAT
   altalanossagban veve jobb valasztas a floppy lemezek szamara.

   Az alabbi modon tudunk uj allomanyrendszert tenni a floppyra:

 # /sbin/newfs_msdos /dev/fd0

   A lemez most mar keszen all a hasznalatra.

     --------------------------------------------------------------

  18.8.4. A hajlekonylemezek hasznalata

   A floppy lemezt hasznalatahoz a mount_msdosfs(8) paranccsal kell
   csatlakoztatnunk. Ugyanerre a celra hasznalhatjuk a
   Portgyu"jtemenybo"l elerheto" emulators/mtools portot is.

     --------------------------------------------------------------

18.9. Szalagok letrehozasa es hasznalata

   A legfontosabb szalagos adathordozok a 4 mm-es, 8 mm-es, QIC, a
   minikazettas es a DLT.

     --------------------------------------------------------------

  18.9.1. 4 mm-es (Digitalis adattarolo, avagy DDS: Digital Data
  Storage)

   A 4 mm-es szalagok a QIC-szalagokat valtjak fel a munkaallomasok
   biztonsagi mentesenek eszko:zekent. Ez a tendencia csak tovabb
   no:vekedett, ahogy a Conner felvasarolta az Archive-ot, a QIC
   tipusu meghajtok legnagyobb gyartojat, majd leallitott a
   QIC-meghajtok gyartasat. A 4 mm-es meghajtok merete kicsi es
   csendben is dolgoznak, de a megbizhatosag teren nem tudhatjak
   maguknak mindazt a sikert, amit a 8 mm-es tarsaiknal
   ko:nyvelhettu:nk el. A kazettak is sokkal olcsobbak es kisebbek
   (3 x 2 x 0,5 col, ami 76 x 51 x 12 mm) a 8 mm-es kiadasenal. A
   4 mm-es feje, hasonloan a 8 mm-esehez, valamilyen okbol szinten
   viszonylag ro:vid ideig birja, es mind a ketto" spiralis
   pasztazast hasznal.

   Ezeknel a meghajtoknal az adatatvitel nagyjabol 150 KB/mp-nel
   kezdo"dik es 500 KB/mp-nel vegzo"dik. Az adattarolasi kepessegu:k
   1,3 GB-tol indul es 2,0 GB-ig tart. A hardveres to:mo:rites, ami a
   legto:bb ilyen tipusu meghajtonal elerheto", ko:zel megduplazza a
   kapacitast. A to:bbmeghajtos szalagos ko:nyvtar egysegek egyetlen
   szekrenyben 6 meghajtot kepes befogadni, a szalagok automatikus
   cserelgetesevel. Az ilyen ko:nyvtarak kapacitasa a 240 GB-ot is
   elerheti.

   A DDS-3 szabvany most mar akar 12 GB (vagy to:mo:ritve 24 GB)
   kapacitast is elerheto"ve tesz.

   A 4 mm-es meghajtok, hasonloan a 8 mm-es meghajtokhoz, spiralis
   pasztazast alkalmaznak. A spiralis pasztazas o:sszes elo"nye es
   hatranya ezert egyarant el a 4 mm-es es 8 mm-es meghajtok eseten.

   A szalagok 2 000 menet vagy 100 teljes mentes utan kopnak el.

     --------------------------------------------------------------

  18.9.2. 8 mm-es (Exabyte)

   A 8 mm-es szalagok a legelterjedtebb szalagos SCSI-meghajtok. A
   szalagok hasznalatara ez a legjobb valasztas. Szinte mindegyik
   rendszerben egy 2 GB-os 8 mm-es Exabyte szalagos meghajtot
   hasznalnak. A 8 mm-es meghajtok megbizhatoak, kenyelmesek es
   csendesek. A kazettak olcsok es kicsik (4,8 x 3,3 x 0,6 col, azaz
   122 x 84 x 15 mm). A 8 mm-es szalagok feje viszonylag csak ro:vid
   ideig birja a szalag nagy merteku" oda-vissza mozgasa miatt.

   Az adatatvitel sebessege 250 KB/mp-to"l 500 KB/mp-ig terjed,
   valamint a 300 MB-tol egeszen 7 GB-os meretig talalkozhatunk
   velu:k. A meghajtokban elerheto" hardveres to:mo:rites kepes
   ko:zel megduplazni a kapacitast. Ezek a meghajtok o:nallo
   egysegkent is beszerezheto"ek vagy egy 6 egysegbo"l allo es 120
   szalagos szalagos ko:nyvtar reszekent. Ezek az egysegek o:nalloan
   valtjak a szalagokat. Az ilyen ko:nyvtarak kapacitasa eleri a
   ko:zel 840 GB-ot.

   Az Exabyte "Mammoth" modellje szalagonkent 12 GB (to:mo:ritessel
   pedig 24 GB) adatot kepes tarolni, viszont a hagyomanyos szalagos
   meghajtoknal nagyjabol ketszer to:bbe keru:l.

   Az adatok spiralis pasztazassal keru:lnek a szalagra, es a fejek
   adott (nagyjabol 6 fokos) szo:gben allnak a szalag felett. A
   szalag a fejeket tarto orso ko:re tekeredik, ko:ru:lbelu:l 270
   fokban. Ennek eredmenykeppen nagyobb adatsu"ru"seg es szorosan
   zart savok jo:nnek letre, ahogy ebben a szo:gben a fej eljut a
   szalag egyik elero"l a masikra.

     --------------------------------------------------------------

  18.9.3. QIC

   A QIC-150 meghajtok es szalagok talan a legelterjedtebb szalagos
   egysegek es adathordozok. A QIC szalagos meghajtok a legolcsobb
   "komolynak tekintheto"" biztonsagi mentesre alkalmas meghajtok. Az
   olcsosag azonban megko:veteli a maga arat. A QIC-szalagok a 4 es
   8 mm-es szalagokkal szemben akar o:tszo:r is dragabbak lehetnek
   gigabyte-onkent. De ha megelegszu:nk csupan feltucat szalaggal is,
   akkor a QIC jo vasarnak tu"nhet. A QIC a leginkabb elterjedtebb
   szalagos meghajto. Minden rendszerben biztonsan talalunk
   valamilyen mino"segben QIC-meghajtot. A QIC fizikailag hasonlo (es
   gyakran azonos) felepitesu" szalagokat gyart rengeteg
   ku:lo:nbo:zo" adatsu"ru"seggel. Az ilyenkor keletkezo" surlodasok
   miatt a QIC-meghajtok egyaltalan nem nevezheto"ek csendesnek. Az
   ilyen tipusu meghajtok az adatok ro:gzitese elo"tt ku:lo:n
   hangjelenseg kisereteben keresik meg a megfelelo" poziciot es
   tisztan hallhato, ahogy olvasnak, irnak es keresnek. A
   QIC-szalagok merete 6 x 4 x 0,7 col (avagy 152 x 102 x 17 mm).

   Az adatatviteli sebesseg nagyjabol 150 KB/mp-to"l 500 KB/mp-ig
   terjedhet. A kapacitas szalagonkent 40 MB es 15 GB ko:zo:tt
   valtozhat. A legto:bb ujabb QIC-meghajto tamogatja a hardveres
   to:mo:ritest. QIC-meghajtokat azonban egyre kevesbe talalhatunk,
   helyu:ket szepen lassan mindenhol atveszik a DAT-meghajtok.

   A szalagokra savokban ro:gzitik az adatokat. Ezek a savok szalag
   felu:letenek hosszanti tengelyen futnak az egyik vegeto"l a
   masikig. A savok szama valamint a savok vastagsaga a szalagok
   kapacitasatol fu:ggo"en valtoznak. Ha nem is o:sszes legujabb, de
   a legto:bb meghajto legalabb olvasas szintjen kompatibilis a
   regebbi tipusokkal (de gyakran irasban is). A QIC hiresen
   megbizhato az adatbiztonsag tekinteteben (a mechanikaja sokkal
   egyszeru"bb es strapabirobb a spiralis pasztazassal mu"ko:do"
   meghajtokenal).

   A szalagokat 5000 mentes utan erdemes lecserelni.

     --------------------------------------------------------------

  18.9.4. DLT

   A DLT rendelkezik a legnagyobb adatatviteli sebesseggel az itt
   o:sszefoglalt mezo"nyben. A 1/2 colos (12,5 mm-es) szalag egy
   egyorsos tokban foglal helyet (merete 4 x 4 x 1 col, azaz 100 x
   100 x 25 mm). A tok egyik oldalan vegig egy csuszo kapu talalhato.
   A meghajto ezt a kaput nyitja ki es ezen keresztu:l huzza be a
   szalagot. A szalag elejen talalhato egy ovalis lyuk, amibe a
   meghajto "bele tud akaszkodni". A feszito" orso a szalagos
   meghajtoban foglal helyet. Az o:sszes to:bbi szalag eseten (kiveve
   egyedu:l a 9 savos szalagokat) mind a seged- es feszito" orsok
   magaban a kazettaban talalhatoak.

   Az adatatviteli sebessege megko:zelito"leg 1,5 MB/mp, tehat
   haromszor nagyobb barmelyik 4 mm-es, 8 mm-es vagy QIC-szalagos
   egysegenel. Az adattarolo kepessege kazettankent 10 GB-tol
   20 GB-ig terjedhet. A meghajtok egyarant elerheto"ek
   to:bbkazettas, cserelgeto"s es to:bbkazettas, to:bbmeghajtos
   ko:nyvtarakban is, melyek 5 kazettatol egeszen 900 kazettaig,
   illetve 1 meghajtotol 20 meghajtoig kepesek befogadni, igy teljes
   tarteru:letu:k 50 GB-tol 9 TB-ig terjed.

   A DLT Type V formatum to:mo:ritessel ko:zel 70 GB-os kapacitast
   kepes elerni.

   A szalagra az adatok a haladasi irannyal parhuzamosan keru:lnek
   fel (akarcsak a QIC-szalagok eseteben). Egyszerre ket savot
   ro:gzit. A iro/olvaso fejek elettartama viszonylag nagy. Ahogy a
   szalag megall, a fej es a szalag ko:zo:tt nincs szu:kseg tovabbi
   relativ mozgasra.

     --------------------------------------------------------------

  18.9.5. AIT

   Az AIT a Sony uj formatuma, ami egeszen 50 GB mennyisegu" adatot
   kepes tarolni (to:mo:ritessel) egyetlen szalagon. A szalagokat
   memoriachipekkel latjak el, melyek a szalag tartalmat indexelik.
   Az indexek felhasznalasaval aztan a szalagos meghajto
   villamgyorsan kepes meghatarozni a szalagon talalhato allomanyok
   helyet, szemben az ilyenkor megszokott to:bbperces mu"velettel. A
   SAMS:Alexandria es a hozza hasonlo szoftverek negyven vagy to:bb
   AIT-szalagos ko:nyvtarral is kepesek egyszerre dolgozni, es
   ko:zvetlenu:l a szalagok memoriajaval veszik fel a kapcsolatot a
   tartalmuk megjelenitesehez, a mentett allomanyok rendszerezesehez,
   a helyes szalag megkeresesehez, beto:ltesehez es
   visszato:ltesehez.

   Az ilyen ko:nyvtarak a 20 000 dollaros (kb. 3,5 millio forintos)
   arkategoriaba tartoznak, ami miatt csak egy kicsivel csusznak ki a
   hobbi kategoriabol.

     --------------------------------------------------------------

  18.9.6. Az uj szalagok elso" hasznalata

   Amikor az elso" alkalommal akarunk beolvasni vagy irni egy uj,
   teljesen u:res szalagot, hibara fogunk futni. Egy ehhez hasonlo
   konzolu:zenet fog megjelenni:

 sa0(ncr1:4:0): NOT READY asc:4,1
 sa0(ncr1:4:0):  Logical unit is in process of becoming ready

   A szalag nem tartalmaz azonosito blokkot (Identifier Block) a
   nulladik blokkban. A QIC-525 szabvany atvetele ota mindegyik QIC
   szalagos meghajto letrehozza ezt az azonosito blokkot. Tehat ket
   megoldas letezik:

     * Az mt fsf 1 paranccsal felirunk egy ilyen azonosito blokkot a
       szalagra.

     * A meghajto elo"lapjan talalhato gomb segitsegevel dobassuk ki
       a szalagot.

       Rakjuk vissza a szalagot es hajtsunk vegre rajta egy dump
       parancsot.

       A dump parancs erre egy "DUMP: End of tape detected" ("szalag
       vege") hibau:zenetet ad, majd a ko:vetkezo" jelenik meg a
       konzolon: "HARDWARE FAILURE info:280 asc:80,96".

       Tekertessu:k vissza a szalagot az mt rewind paranccsal.

       A szalag ko:vetkezo" mu"velete most mar sikeres lesz.

     --------------------------------------------------------------

18.10. Biztonsagi mentes hajlekonylemezekre

  18.10.1. Hajlekonylemezre is lehet biztonsagi mentest kesziteni?

   A floppy lemezek nem igazan felelnek meg biztonsagi mentes
   keszitesere, mivel:

     * Nem megbizhato adathordozok, ku:lo:no:sen hosszabb ido"re.

     * Esetu:kben a mentes es visszaallitas nagyon lassu.

     * Kapacitasuk ero"sen korlatozott (annak mar regen elmult az
       ideje, amikor egesz merevlemezeket tudtunk lementeni egy tucat
       floppyra).

   Habar ha mashogy nem tudunk biztonsagi mentest kesziteni, akkor a
   floppy lemezekkel meg mindig jobban jarunk, mint nelku:lu:k.

   Ha mar mindenkeppen floppy lemezeket kell hasznalnunk, akkor
   igyekezzu:nk minel jobb mino"segu"eket beszerezni. Tehat az olyan
   floppyk, amik mar evek ota kavarognak az irodaban, erre a celra
   nem eppen bizonyulnak a legjobb valasztasnak. Idealis esetben egy
   megbizhato gyartotol szarmazo uj floppykat hasznalunk.

     --------------------------------------------------------------

  18.10.2. Tehat akkor hogyan mentsu:k az adatokat hajlekonylemezre?

   Legegyszeru"bban a tar(1) -M (to:bbko:tetes) opciojaval tudunk
   floppy lemezre menteni, aminek hasznalataval to:bb floppyra
   kiterjedo" menteseket is keszithetu:nk.

   Az aktualis ko:nyvtar es a benne levo" alko:nyvtarak tartalmat
   (root) felhasznalokent a ko:vetkezo" paranccsal tudjuk lementeni:

 # tar Mcvf /dev/fd0 *

   Amikor az elso" floppy megtelik, a tar(1) kerni fogja a
   ko:vetkezo" ko:tetet (volume) (mivel a tar(1) adathordozotol
   fu:ggetlen modon hivatkozik a ko:tetekre, tehat ebben a
   ko:rnyezetben a ko:tet egy floppy lemezt jelent):

 Prepare volume #2 for /dev/fd0 and hit return:

   Az u:zenet forditasa:

 Keszitse elo" a 2. ko:tetet a /dev/fd0 eszko:zo:n es nyomja le a
 return billentyu"t

   A folyamat egeszen addig ismetlo"dik (a ko:tetek szamanak
   no:vekedesevel), amig az o:sszes allomany lementesre nem keru:l.

     --------------------------------------------------------------

  18.10.3. Lehet to:mo:riteni a menteseket?

   Sajnos a tar(1) to:bbko:tetes mentesek eseten nem engedi a -z
   beallitas hasznalatat. Termeszetesen etto"l fu:ggetlenu:l a
   gzip(1) segitsegevel meg be tudjuk to:mo:riteni az o:sszes
   allomanyt, a tar(1) paranccsal floppyra menteni ezeket, majd a
   gunzip(1) paranccsal kito:mo:riteni.

     --------------------------------------------------------------

  18.10.4. Hogyan allitsuk vissza a biztonsagi menteseket?

   Az egesz mentes visszaallitasahoz adjuk ki a ko:vetkezo"
   parancsot:

 # tar Mxvf /dev/fd0

   Ket modon tudunk csak bizonyos allomanyokat visszaallitani.
   Elo"szo:r is, tegyu:k be a mentes elso" lemezet es adjuk ki a
   ko:vetkezo" parancsot:

 # tar Mxvf /dev/fd0 allomany

   A tar(1) segedprogram ezutan sorban kerni fogja a to:bbi lemezt
   egeszen addig, amig meg nem talalja a keresett allomanyt.

   Vagy ha pontosan tudjuk, hogy melyik lemezen talalhato a keresett
   allomany, akkor az imenti parancs hasznalatat azzal a lemezzel
   kezdju:k. Vigyazzunk, mert ha a lemezen talalhato elso" allomany
   az elo"zo" lemezen kezdo"dik, akkor a tar(1) figyelmeztetni fog
   minket, hogy nem allitja vissza meg akkor sem, ha erre nem is
   kertu:k!

     --------------------------------------------------------------

18.11. Mentesi strategiak

   Eredetileg keszitette: Lowell Gilbert.

   Egy biztonsagi mentes kidolgozasa soran az elso" ko:vetelmeny
   gondoskodnunk az alabbi problemakrol:

     * Lemezhiba

     * Az allomanyok veletlen to:rlese

     * Az allomanyok veletlenszeru" karosodasa

     * Szamitogepek teljes megsemmisu:lese (peldaul tu"z altal),
       belertve a ko:zeleben tarolt o:sszes biztonsagi mentest

   To:keletesen megoldhato, hogy egyes rendszerek a fentebb felsorolt
   problemak mindegyiket teljesen eltero" technikaval oldjak meg. A
   nagyon szemelyes rendszerekto"l es a nagyon ertektelen adatoktol
   eltekintve szinte egyertelmu"en kizart, hogy egyetlen technika
   kepes lefedni az o:sszes problemat.

   Kellektarunk nehany alapveto" eszko:ze:

     * Az egesz rendszer mentese, amit egy megbizhato helyre elzart,
       tartos adattarolora keszitu:nk. Ez tulajdonkeppen vedelmet
       biztosit a fentebb megemlitett o:sszes problema eseteben, de
       lassu es kenyelmetlen rola visszaallitani az adatokat. A
       ko:zelben es/vagy neten is tarthatunk erro"l masolatokat, de
       meg igy is kenyelmetlen az allomanyok visszaallitasa,
       ku:lo:no:sen az egyszeru" felhasznalok szamara.

     * Pillanatkepek keszitese az allomanyrendszerro"l. Ez valojaban
       csak olyan esetekben lehet a segitsegu:nkre, amikor
       veletlenu:l to:ro:ltu:nk allomanyokat, am ilyenkor
       hatarozottan jol jo:n, mivel igen gyorsan es ko:nnyen lehet
       vele dolgozni.

     * Az egesz allomanyrendszer es/vagy az o:sszes lemez masolata
       (peldaul az rsync(1) ido"szakos alkalmazasa a komplett gepre).
       Az altalaban az egyedi igenyekkel biro halozatok eseteben
       eshet a kezu:nkre. A lemezhiba ellen vedelemben ez a megoldas
       altalaban a RAID alatt all. A veletlenu:l to:ro:lt allomanyok
       visszaallitasanak tekinteteben az UFS pillanatkepeivel
       merheto" o:ssze, de ez leginkabb a sajat igenyeinkto"l fu:gg.

     * RAID alkalmazasa. A lemezek meghibasodasa eseten segiti
       minimalizalni vagy elkeru:lni a kiesest, ugyan gyakori
       lemezhibak aran (mivel ilyenkor to:bb lemezt hasznalunk) de
       kisebb su:rgo"sseggel.

     * Az allomanyok ujjlenyomatanak elleno"rzese. Az mtree(8)
       segedprogram nagyon hasznos tud lenni ebben az esetben. Habar
       ez nem egy mentesi technika, megis segit megallapitani, hogy
       mikor kell nyugdijba ku:ldenu:nk a biztonsagi menteseinket. Ez
       ku:lo:no:sen az aktiv nem hasznalt mentesekre vonatkozik,
       ezeket bizonyos ido" elteltevel mindig erdemes elleno"rizni.

   Nagyon ko:nnyu" lenne tovabbi technikakat is felsorolni, melyek
   legto:bbje az imentiek valamilyen kombinacioja lenne. A specialis
   igenyek altalaban specialis technikakat eredmenyeznek (peldaul egy
   eles adatbazis biztonsagi mentese altalaban az adott
   adatbaziskezelo" rendszer ko:zremu"ko:deset is elvarja). Mindig
   fontos tudni, hogy milyen veszelyek ellen vedekezu:nk es hogyan
   kezelju:k le ezeket.

     --------------------------------------------------------------

18.12. Alapveto" tudnivalok a biztonsagi mentesro"l

   A dump(8), tar(1) es cpio(1) a harom legfontosabb biztonsagi
   mentesekkel kapcsolatos program.

     --------------------------------------------------------------

  18.12.1. Mentes es helyreallitas

   A UNIX tipusu rendszerekben a biztonsagi mentest hagyomanyosan a
   dump es restore programok vegzik. A meghajtokat lemezblokkok
   o:sszesegekent kezelik, az allomanyrendszerek altal letrehozott
   allomanyok, linkek es ko:nyvtarak szintje alatt. Eltero"en mas,
   biztonsagi mentest vegzo" szoftverekto"l, a dump az adott
   eszko:zo:n egy egesz allomanyrendszert kepes lementeni. Nem kepes
   csak az allomanyrendszer vagy egy to:bb allomanyrendszerre
   kiterjedo" ko:nyvtarszerkezet egy reszet lementeni. A dump nem
   allomanyokat es ko:nyvtarakat ir a szalagra, hanem nyers
   adatblokkokat, amelyek allomanyokat es ko:nyvtarakat formaznak. A
   restore parancs az adatokat alapertelmezes szerint a /tmp
   ko:nyvtarba to:mo:riti ki. Ha nem lenne elegendo" helyu:nk a /tmp
   ko:nyvtarban, akkor a TMPDIR ko:rnyezeti valtozo atallitasaval
   ehelyett megadhatunk egy olyat, ahol mar kello" mennyisegu"
   teru:let all rendelkezesre a restore akadalytalan lefutasahoz.

     Megjegyzes: Ha a dump parancsot a gyo:ker ko:nyvtarban adjuk ki,
     akkor nem fogja lementeni a /home vagy /usr vagy barmilyen mas
     ko:nyvtarat, mivel ezek jellemzo" modon mas allomanyrendszerek
     csatlakozasi pontja vagy mas allomanyrendszerekre mutato
     szimbolikus linkek.

   A dump parancsnak vannak olyan rigolyai, amelyek meg az AT&T UNIX
   6. verziojabol (1975 ko:rnyekero"l) maradtak vissza. Az
   alapertelmezett parameterezese 9 savos szalagokat feltetelezi
   (6250 bpi), nem pedig a napjainkban elterjedt nagy
   irassu"ru"ssegu" (egeszen 62 182 ftpi-s) adathordozokat. Ezek az
   alapertelmezesek termeszetesen paranccsorbol felu:lbiralhatoak, es
   igy a manapsag alkalmazott szalagos meghajtok teljes kapacitasa is
   kihasznalhato vele.

   Emellett az rdump es rrestore programok segitsegevel halozaton
   keresztu:l is le tudjuk menteni az adatainkat egy masik
   szamitogepre csatlakoztatott szalagos egysegre. Mind a ket program
   az rcmd(3) es a ruserok(3) parancsokat hasznalja a tavoli szalagos
   meghajto eleresehez. Az rdump es rrestore parametereinek a tavoli
   szamitogep hasznalatahoz kell illeszkedniu:k. Amikor egy FreeBSD
   rendszeru" szamitogepet az rdump paranccsal egy Sun rendszeru",
   komodo nevu" szamitogepre mentu:nk, amelyhez egy Exabyte szalagos
   meghajto csatlakozik, akkor ezt a irjuk be:

 # /sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1

   Figyelem: az .rhosts allomanyon keresztu:l hitelesitesnek
   megvannak a maga biztonsagi kockazatai. Ne felejtsu:k el felmerni
   ezt a sajat ko:rnyezetu:nkben sem.

   A dump es restore parancsokat az ssh hasznalataval meg
   biztonsagosabba tehetju:k.

   Pelda 18-1. A dump hasznalata az ssh alkalmazassal

 # /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
           celfelhasznalo@cel.gep.hu dd of=/nagyallomanyok/dump-usr-l0.gz

   Vagy az RSH ko:rnyezeti valtozo megfelelo" beallitasaval
   hasznalhatjuk a dump beepitett modszeret:

   Pelda 18-2. A dump hasznalata az ssh alkalmazassal, az RSH
   ko:rnyezeti valtozo beallitasaval

 # RSH=/usr/bin/ssh /sbin/dump -0uan -f celfelhasznalo@cel.gep.hu:/dev/sa0 /usr

     --------------------------------------------------------------

  18.12.2. tar

   A tar(1) is az AT&T UNIX 6. verziojaig nyulik vissza (tehat
   nagyjabol 1975-ig). A tar az allomanyrendszerrel szoros
   egyu:ttmu"ko:desben dolgozik, allomanyokat es ko:nyvtarakat ir a
   szalagra. A tar ugyan nem ismeri a cpio(1) altal felkinalt o:sszes
   leheto"seget, de nincs is szu:ksege olyan szokatlan paranccsoros
   o:sszekapcsolasokra, mint a cpio parancsnak.

   A FreeBSD 5.3 vagy keso"bbi valtozataiban a GNU tar es az
   alapertelmezes szerinti bsdtar egyarant elerheto". A GNU valtozat
   a gtar paranccsal hivhato meg. Az rdump parancshoz hasonlo
   felirasban kepes kezelni a tavoli eszko:zo:ket. Tehat igy tudjuk
   hasznalni a tar parancsot a komodo nevu" Sun szamitogep Exabite
   szalagos meghajtojanak eleresere:

 # /usr/bin/gtar cf komodo:/dev/nsa8 . 2>&1

   Ugyanez elterheto" a bsdtar hasznalataval is, amikor az rsh
   programmal o:sszekapcsolva ku:ldu:nk at a tavoli szalagos
   egysegre.

 # tar cf - . | rsh halozati-nev dd of=szalagos-eszko:z obs=20b

   Ha a halozaton keresztu:l mentes soran fontos szamunkra a
   biztonsag, akkor az rsh parancs helyett az ssh parancsot
   hasznaljuk.

     --------------------------------------------------------------

  18.12.3. cpio

   A cpio(1) eredetileg a UNIX szalagos programjai es szalagos
   egysegei ko:zo:tt ko:zvetitett. A cpio parancs (to:bbek ko:zt)
   kepes a byte-ok sorrendjenek felcserelesere, to:bb ku:lo:nbo:zo"
   archivum formatuma szerint irni es adatokat ko:zvetiteni mas
   programok fele. Ez utobbi leheto"sege miatt a cpio kivaloan
   alkalmas a telepito"eszko:zo:k szamara. A cpio nem kepes bejarni a
   ko:nyvtarszerkezetet, es az allomanyok listajat a szabvanyos
   bemeneten keresztu:l kell megadni neki.

   A cpio nem tamogatja a biztonsagi mentes atku:ldeset a halozaton.
   Programok o:sszekapcsolasaval es az rsh hasznalataval tudunk
   adatokat ku:ldeni tavoli szalagos meghajtokra.

 # for f in ko:nyvtar_lista; do
 find $f >> mentesi.lista
 done
 # cpio -v -o --format=newc < backup.list | ssh felhasznalo@gep "cat > mento"eszko:z"

   Ahol a ko:nyvtar_lista a menteni kivant ko:nyvtarak listaja, a
   felhasznalo@gep a mentest vegzo" gep felhasznalojanak es halozati
   nevenek egyu:ttese, valamint a mento"eszko:z, ahova a mentes
   keru:l (peldaul /dev/nsa0).

     --------------------------------------------------------------

  18.12.4. pax

   A pax(1) az IEEE/POSIX valasza a tar es cpio programokra. Az evek
   soran a tar es a cpio ku:lo:nbo:zo" valtozatai egy kisse
   inkompatibilisse valtak. Ezert a szabvanyositasuk kiharcolasa
   helyett inkabb a POSIX letrehozott egy uj archivalo
   segedprogramot. A pax megprobalja irni es olvasni a cpio es tar
   formatumok legto:bb valtozatat, valamint emellett tovabbi sajat
   formatumokat is kezel. A parancskeszlete inkabb a cpio parancsera
   emlekeztet, mintsem a tar parancsera.

     --------------------------------------------------------------

  18.12.5. Amanda

   Az Amanda (Advanced Maryland Network Disk Archiver) egy
   kliens-szerver alapu mentesi rendszer, nem pedig egy o:nallo
   program. Az Amanda szerver menti tetszo"leges szamu szamitogep
   adatat egyetlen szalagra, melyek az Amanda klienst futtatjak es
   halozaton keresztu:l hozza csatlakoznak. A nagy mennyisegu" es
   nagy kapacitasu lemezekkel rendelkezo" rendszerekben ko:zvetlenu:l
   a menteshez szu:kseges ido" nem all rendelkezesre a feladat
   elvegzesehez. Az Amanda viszont kepes megoldani ezt a problemat.
   Az Amanda kepes egy "sajat lemez" hasznalataval egyszerre to:bb
   allomanyrendszerro"l is biztonsagi mentest kesziteni. Az Amanda
   "archivumkeszleteket" hoz letre: az Amanda konfiguracios
   allomanyaban megadott allomanyrendszerekro"l keszit teljes mentest
   egy adott ido" alatt egy adott mennyisegu" szalagra. Az
   "archivumkeszlet" ezenkivu:l meg tartalmaz egy napi inkrementalis
   (vagy ku:lo:nbo:zeti) mentest is minden egyes
   allomanyrendszerro"l. A seru:lt allomanyrendszerek
   visszaallitasahoz mindig a legujabb teljes biztonsagi mentesre es
   a hozzatartozo inkrementalis mentesekre van szu:ksegu:nk.

   A konfiguracios allomany segitsegevel preciz iranyitast
   gyakorolhatunk a letrehozott mentesek es az Amanda altal keltett
   halozati forgalom felett. Az Amanda a fentiek ko:zu:l barmelyik
   programmal kepes az adatokat szalagra ro:gziteni. Az Amanda
   portkent vagy csomagkent is elerheto", alapertelmezes szerint nem
   telepu:l.

     --------------------------------------------------------------

  18.12.6. Ne csinaljunk semmit

   A "Ne csinaljunk semmit" nem egy ujabb szamitogepes program, hanem
   egy igen gyakran alkalmazott mentesi strategia. Nem kell
   beruhazni. Nem kell semmilyen biztonsagi mentesi rendet ko:vetni.
   Egyszeru"en semmit se csinalunk. Ha veletlenu:l valami to:rtenne
   az adatainkkal, akkor csak mosolyogjunk es to:ro"dju:nk bele!

   Amennyiben az ido"nk es adataink keveset vagy eppen semmit se
   ernek, akkor a "Ne csinaljunk semmit" az elerheto" legjobb
   biztonsagi mentesi megoldas szamitogepu:nk szamara. De legyu:nk
   ovatosak, mert a UNIX egy igen hasznos eszko:z, es fel even belu:l
   ko:nnyen ugy talalhatjuk magunkat, hogy megis csak vannak ertekes
   adataink.

   A "Ne csinaljunk semmit" to:keletesen megfelelo" mentesi modszer a
   /usr/obj es a hozza hasonlo modon a szamitogepen automatikusan
   generalt ko:nyvtarak es allomanyok eseteben. Ugyanilyen pelda
   lehetne a keziko:nyv HTML vagy PostScript valtozata. Ezek a
   formatumok ugyanis az SGML forrasok alapjan keletkeznek, igy a
   HTML vagy PostScript allomanyok mentese nem eletbevago. Az SGML
   allomanyokat viszont mar annal inkabb mentsu:k!

     --------------------------------------------------------------

  18.12.7. Melyik a legjobb?

   dump(8) Pont. Elizabeth D. Zwicky komolyan letesztelte az itt
   felsorolt o:sszes programot. A UNIX allomanyrendszerek
   jellegzetessegeinek es rajtuk az o:sszes adatunk mego"rzesenek
   egyertelmu"en a dump felel meg a legjobban. Elizabeth a minden
   egyes program tesztjehez olyan allomanyrendszereket hozott letre,
   amelyek rengeteg ku:lo:nfele szokatlan helyzetet tartalmaztak
   (valamint nehany nem annyira szokatlant). Az erintett
   jellegzetessegek: lyukas allomanyok, lyukas allomanyok es egy
   halom nulla, allomanyok erdekes karakterekkel a nevu:kben,
   olvashatatlan es irhatatlan allomanyok, eszko:zo:k, a mentes
   ko:zben meretu:ket valtoztato allomanyok, a mentes ko:zben
   keletkezo" es megszu"no" allomanyok es meg sok minden mas. Az
   eredmenyeit a LISA V-ben jelentette meg 1991. oktobereben. Lasd A
   biztonsagi menteshez es archivalashoz hasznalt programok tesztje
   (angolul).

     --------------------------------------------------------------

  18.12.8. Az adatok helyreallitasa veszhelyzetben

    18.12.8.1. A katasztrofa elo"tt

   Csupan negy lepest kell megtennu:nk az esetleges katasztrofak
   beko:vetkezesenek esetere.

   Elo"szo:r is ket peldanyban nyomtassuk ki az egyes lemezek
   lemezcimkejet (peldaul a bsdlabel da0 | lpr paranccsal) valamint
   az allomanyrendszerek tablazatat (az /etc/fstab allomanyt) es az
   o:sszes rendszerinditaskor megjeleno" u:zenetet.

   Masodsorban gondoskodjunk rola, hogy a helyreallito lemezek
   (boot.flp es fixit.flp) hasznalatakor minden eszko:zu:nk lathato.
   Ezt a legko:nnyebben ugy tudjuk elleno"rizni, hogy ujrainditjuk a
   gepet a lemezro"l es atnezzu:k a rendszerinditas soran megjeleno"
   u:zeneteket. Ha szerepel bennu:k minden eszko:z es a rendszer
   indulasa utan mu"ko:do"kepesek, akkor jo:het a ko:vetkezo" lepes.

   Ellenkezo" esetben letre kell hoznunk ket sajat rendszerindito
   lemezt, amelyeken a rendszermag olyan valtozata talalhato, amely
   kepes csatlakoztatni az o:sszes lemezu:nket es el tudja erni a
   szalagos egysegu:nket. A floppykon a ko:vetkezo"knek kell
   meglennie: fdisk, bsdlabel, newfs, mount es a program, amellyel a
   biztonsagi menteseinket kezelju:k. Az o:sszes program legyen
   statikusan linkelt. Ha a dump programot hasznaljuk, akkor a
   lemezekro"l ne felejtsu:k le a restore programot sem.

   A harmadik lepesben igyekezzu:nk minel gyakrabban szalagra
   menteni. Mindig gondoljuk arra, hogy a legutolso mentes ota
   letrehozott valtozatasaink teljesen el fognak veszni. A menteseket
   tartalmazo szalagokat tegyu:k irasvedette.

   A negyedik lepesben elleno"rizzu:k a helyreallito lemezeket (vagy
   a boot.flp es fixit.flp allomanyokat, vagy a masodik lepesben
   keszitett sajat lemezeinket) es menteseket tartalmazo szalagokat.
   Jegyezzu:k le az eljarast. Ezeket a jegyzeteket is rakjuk el
   rendszerindito lemezekkel, a kinyomtatott adatokkal es a
   menteseket tartalmazo szalagokkal egyu:tt. Ezek a jegyzetek
   megvedenek minket attol, hogy a helyreallitas ko:zbeni
   ketsegbeesesu:nkben nehogy veletlenu:l to:nkretegyu:k a biztonsagi
   menteseinket. (Hogy mikent is? Peldaul ha a tar xvf /dev/sa0
   parancs helyett izgalmunkban a tar cvf /dev/sa0 parancsot
   gepelju:k be, akkor azzal felu:lirjuk a biztonsagi menteseinket).

   A fokozott biztonsag kedveert minden alkalommal keszitsu:nk
   rendszerindito lemezeket es legalabb ket mentest. Az egyiket
   valamilyen tavoli helyen taroljuk. Ez a tavoli hely NE ugyanannak
   az epu:letnek az alagsora legyen! Szamos ceg alaposan megtanulta
   ezt a szabalyt a Vilagkereskedelmi ko:zpont tragediaja kapcsan. Ez
   a tavoli hely szamitogepeinkbo"l es merevlemezes meghajtoinkol is
   fizikailag jol elku:lo:nitheto", jelento"s tavolsagban legyen.

   Pelda 18-3. A rendszerindito lemezek letrehozasahoz hasznalhato
   szkript

 #!/bin/sh
 #
 # Egy helyre&aacute;ll&iacute;t&oacute; lemez l&eacute;trehoz&aacute;sa.
 #
 # A lemez megform&aacute;z&aacute;sa.
 #
 PATH=/bin:/sbin:/usr/sbin:/usr/bin

 fdformat -q fd0
 if [ $? -ne 0 ]
 then
          echo "Rossz lemez, haszn&aacute;ljon m&aacute;sikat!"
          exit 1
 fi

 # A rendszerind&iacute;t&oacute; blokkok r&ouml;gz&iacute;t&eacute;se a lemezre.
 #
 bsdlabel -w -B /dev/fd0c fd1440

 #
 # Az egyetlen part&iacute;ci&oacute; l&eacute;trehoz&aacute;sa.
 #
 newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/fd0a

 #
 # A lemez csatlakoztat&aacute;sa.
 #
 mount /dev/fd0a /mnt

 #
 # A sz&uuml;ks&eacute;ges k&ouml;nyvt&aacute;rak l&eacute;trehoz&aacute;sa.
 #
 mkdir /mnt/dev
 mkdir /mnt/bin
 mkdir /mnt/sbin
 mkdir /mnt/etc
 mkdir /mnt/root
 mkdir /mnt/mnt                  # a rendszerind&iacute;t&oacute; part&iacute;ci&oacute;hoz
 mkdir /mnt/tmp
 mkdir /mnt/var

 #
 # A k&ouml;nyvt&aacute;rak felt&ouml;lt&eacute;se.
 #
 if [ ! -x /sys/compile/MINI/kernel ]
 then
          cat << EOM
 Ha m&eacute;g nem l&eacute;tezne a MINI rendszermag, akkor hozzunk l&eacute;tre egyet.
 &Iacute;me hozz&aacute; egy minta konfigur&aacute;ci&oacute;s &aacute;llom&aacute;ny:
 #
 # MINI -- Egylemezes FreeBSD rendszermag.
 #
 machine         "i386"
 cpu             "I486_CPU"
 ident           MINI
 maxusers        5

 options         INET                    # a k&ouml;vetkez&#245;kh&ouml;z kell:  _tcp _icmpstat _ipstat
                                         #    _udpstat _tcpstat _udb
 options         FFS                     # Berkeley Fast File System
 options         FAT_CURSOR              # k&ouml;v&eacute;r kurzor a syscons vagy pccons eset&eacute;n
 options         SCSI_DELAY=15           # legy&uuml;nk pesszimist&aacute;k a SCSI eszk&ouml;z&ouml;kkel szemben
 options         NCONS=2                 # 1 virtu&aacute;lis konzol
 options         USERCONFIG              # a -c XXX seg&iacute;ts&eacute;g&eacute;vel megadhat&oacute; felhaszn&aacute;l&oacute;i konfigur&aacute;ci&oacute;

 config          kernel  root on da0 swap on da0 and da1 dumps on da0

 device          isa0
 device          pci0

 device          fdc0    at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
 device          fd0     at fdc0 drive 0

 device          ncr0

 device          scbus0

 device          sc0     at isa? port "IO_KBD" tty irq 1 vector scintr
 device          npx0    at isa? port "IO_NPX" irq 13 vector npxintr

 device          da0
 device          da1
 device          da2

 device          sa0

 pseudo-device   loop            # az INET-hez kell
 pseudo-device   gzip            # gzip-pel t&ouml;m&ouml;r&iacute;tett a.out v&eacute;grehajt&aacute;sa
 EOM
          exit 1
 fi

 cp -f /sys/compile/MINI/kernel /mnt

 gzip -c -best /sbin/init > /mnt/sbin/init
 gzip -c -best /sbin/fsck > /mnt/sbin/fsck
 gzip -c -best /sbin/mount > /mnt/sbin/mount
 gzip -c -best /sbin/halt > /mnt/sbin/halt
 gzip -c -best /sbin/restore > /mnt/sbin/restore

 gzip -c -best /bin/sh > /mnt/bin/sh
 gzip -c -best /bin/sync > /mnt/bin/sync

 cp /root/.profile /mnt/root

 chmod 500 /mnt/sbin/init
 chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
 chmod 555 /mnt/bin/sh /mnt/bin/sync
 chmod 6555 /mnt/sbin/restore

 #
 # Egy minim&aacute;lis &aacute;llom&aacute;nyrendszeri t&aacute;bl&aacute;zat l&eacute;trehoz&aacute;sa.
 #
 cat > /mnt/etc/fstab <<EOM
 /dev/fd0a    /    ufs    rw  1  1
 EOM

 #
 # Egy mini&aacute;lis jelsz&oacute; &aacute;llom&aacute;ny l&eacute;trehoz&aacute;sa.
 #
 cat > /mnt/etc/passwd <<EOM
 root:*:0:0:Charlie &:/root:/bin/sh
 EOM

 cat > /mnt/etc/master.passwd <<EOM
 root::0:0::0:0:Charlie &:/root:/bin/sh
 EOM

 chmod 600 /mnt/etc/master.passwd
 chmod 644 /mnt/etc/passwd
 /usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd

 #
 # A lemez lev&aacute;laszt&aacute;sa &eacute;s err&#245;l a felhaszn&aacute;l&oacute; &eacute;rtes&iacute;t&eacute;se.
 #
 /sbin/umount /mnt
 echo "A lemezt lev&aacute;lasztottam &eacute;s most m&aacute;r k&eacute;sz."

     --------------------------------------------------------------

    18.12.8.2. A katasztrofa utan

   Az alapveto" kerdes: a hardver tulelte? Ha rendszeresen
   keszitettu:nk biztonsagi menteseket, akkor a szoftverek miatt
   egyaltalan nem kell aggodnunk.

   Ha a hardver megseru:lt, akkor a szamitogep hasznalatanak ujbol
   megkezdese elo"tt javasolt cserelni a meghibasodott alkatreszeket.

   Ha a hardverrel minden rendben talaltunk, akkor nezzu:k meg a
   floppykat. Ha sajat rendszerindito lemezt hasznalunk, akkor
   inditsuk el egyfelhasznalos modban (a boot: parancssornal irjuk
   be, hogy -s) es ugorjuk at a ko:vetkezo" bekezdest.

   Amennyiben viszont a boot.flp es fixit.flp allomanyok alapjan
   keszitettu:k a lemezeket, olvassunk tovabb. Helyezzu:k a boot.flp
   tartalmu lemezt az elso"dleges floppy meghajtoba es inditsuk el
   vele a szamitogepet. Az eredeti telepito"menu: jelenik meg ezutan
   a kepernyo"n. Innen valasszuk ki a Fixit -- Repair mode with CDROM
   or floppy ("Helyreallitas -- A rendszer helyreallitasa CD-ro"l
   vagy floppyrol") menu:pontot. Amikor keri a telepito", tegyu:k be
   a fixit.flp alapjan keszu:lt lemezt. A restore es az o:sszes
   to:bbi szamunkra fontos program a /mnt2/rescue ko:nyvtarban
   talalhato (vagy a FreeBSD 5.2-nel korabbi valtozatai eseten a
   /mnt2/stand ko:nyvtarban).

   Egyenkent allitsuk vissza az egyes allomanyrendszereket.

   A mount paranccsal probaljuk meg csatlakoztatni az elso" lemezu:nk
   rendszerindito particiojat (peldaul mount /dev/da0a /mt). Ha a
   lemezcimke megseru:lt, akkor bsdlabel alkalmazasaval
   particionaljuk ujra a lemezt es cimkezzu:k meg a korabban
   kinyomtatott cimke adatainak megfelelo"en. A newfs segitsegevel
   ujra hozzuk letre az allomanyrendszereket. Irhato-olvashato modban
   csatlakoztassuk ujra a floppy rendszerinito particiojat (mount -u
   -o rw /mnt). A biztonsag mentest vegzo" program es a biztonsagi
   mentest tartalmazo szalagok hasznalataval allitsuk helyre az
   allomanyrendszer tartalmat (peldaul restore vrf /dev/sa0).
   Valasszuk le az allomanyrendszert (peldaul umount /mnt). Mindegyik
   seru:lt allomanyrendszerre ismetelju:k a folyamatot.

   Ahogy mu"ko:do"kepesse valt a rendszeru:nk, mentsu:k az adatainkat
   uj szalagokra. Akarmi is okozta a rendszer o:sszeomlasat vagy az
   adatvesztest, ismet lecsaphat. Ha most aldozunk erre meg egy orat,
   akkor azzal a keso"bbiekben szamos kellemetlensegto"l ovhatjuk meg
   magunkat.

     --------------------------------------------------------------

18.13. Halozat, memoria es allomany alapu allomanyrendszerek

   Atdolgozta es feljavitotta: Marc Fonvieille.

   A szamitogepu:nkben letezo" fizikai lemezek, peldaul floppyk,
   CD-k, merevlemezek es egyebek mellett a lemezek egy masik formajat
   is kepes megerteni a FreeBSD -- a virtualis lemezeket.

   A virtualis lemeznek tekintheto"ek to:bbek ko:zt az olyan halozati
   allomanyrendszerek, mint peldaul a Halozati allomanyrendszer
   (Network File System, NFS) es a Coda, valamint a memoriaban es
   allomanyokban letrehozott allomanyrendszerek.

   Attol fu:ggo"en, hogy a FreeBSD melyik valtozatat hasznaljuk, az
   allomany es memoria alapu allomanyrendszerek letrehozasahoz,
   illetve hasznalatahoz ku:lo:nbo:zo" segedprogramokra lesz
   szu:ksegu:nk.

     Megjegyzes: A devfs(5) a felhasznalo szamara lathatatlan modon
     hozza letre az eszko:zo:k leiroit.

     --------------------------------------------------------------

  18.13.1. Allomany alapu allomanyrendszerek

   FreeBSD alatt az mdconfig(8) segedprogram segitsegevel tudunk
   memorialemezeket (md(4)) beallitani es engedelyezni. Az
   mdconfig(8) hasznalatahoz be kell to:ltenu:nk az md(4) modult vagy
   hozza kell tennu:nk a rendszermagunk beallitasait tartalmazo
   allomanyhoz:

 device md

   Az mdconfig(8) parancs haromfele memoria alapu virtualis lemezt
   ismer: a malloc(9), allomanyok vagy lapozoteru:let hasznalataval
   letrehozott memorialemezeket. Igy lehet peldaul csatlakoztatni a
   floppyk vagy CD-k allomanyokban tarolt image-eit.

   Egy meglevo" allomanyrendszer image-enek csatlakoztatasa:

   Pelda 18-4. Egy meglevo" allomanyrendszer image-enek
   csatlakoztatasa az mdconfig paranccsal

 # mdconfig -a -t vnode -f image -u 0
 # mount /dev/md0 /mnt

   Uj allomanyrendszer letrehozasa az mdconfig(8) hasznalataval:

   Pelda 18-5. Uj allomany alapu lemez letrehozasa az mdconfig
   paranccsal

 # dd if=/dev/zero of=uj-image bs=1k count=5k
 5120+0 records in
 5120+0 records out
 # mdconfig -a -t vnode -f uj-image -u 0
 # bsdlabel -w md0 auto
 # newfs md0a
 /dev/md0a: 5.0MB (10224 sectors) block size 16384, fragment size 2048
         using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes.
 super-block backups (for fsck -b #) at:
  160, 2720, 5280, 7840
 # mount /dev/md0a /mnt
 # df /mnt
 Filesystem 1K-blocks Used Avail Capacity  Mounted on
 /dev/md0a       4710    4  4330     0%    /mnt

   Ha az -u beallitassal nem adjuk meg az egyseg szamat, akkor az
   mdconfig(8) az md(4) automatikus kiosztasan keresztu:l fog egy
   hasznalatban meg nem levo" eszko:zt kivalasztani. Az igy kiosztott
   egyseg neve az md4 nevhez hasonloan jelenik meg a szabvanyos
   kimeneten. Az mdconfig(8) hasznalatanak reszleteiro"l olvassuk el
   a hozzatartozo man oldalt.

   Az mdconfig(8) egy nagyon sokoldalu segedeszko:z, habar
   hasznalatakor viszonylag sok parancsot kell kiadni egy allomany
   alapu allomanyrendszer letrehozasahoz. A FreeBSD azonban alapbol
   tartalmaz meg egy mdmfs(8) nevu" segedprogramot is, ami az md(4)
   lemezeket az mdconfig(8) segitsegevel allitja be, letrehoz rajtuk
   egy UFS tipusu allomanyrendszert a newfs(8) segitsegevel es
   csatlakoztatja a mount(8) paranccsal. Igy peldaul, ha az imenti
   allomanyrendszert akarjuk letrehozni es csatlakoztatni, akkor
   egyszeru"en csak gepelju:nk be ennyit:

   Pelda 18-6. Allomany alapu lemezek beallitasa es csatlakoztatasa
   az mdmfs paranccsal

 # dd if=/dev/zero of=uj-image bs=1k count=5k
 5120+0 records in
 5120+0 records out
 # mdmfs -F uj-image -s 5m md0 /mnt
 # df /mnt
 Filesystem 1K-blocks Used Avail Capacity  Mounted on
 /dev/md0        4718    4  4338     0%    /mnt

   Ha az md parametert az egyseg szama nelku:l adjuk meg, akkor
   mdmfs(8) az md(4) automatikus kiosztasara tamaszkodva fog egy
   addig meg nem hasznalt eszko:zt kivalasztani. A mdmfs(8)
   hasznalatanak pontos reszleteivel kapcsolatban lasd a hozzatartozo
   man oldalt.

     --------------------------------------------------------------

  18.13.2. Memoria alapu allomanyrendszerek

   A memoria alapu allomanyrendszerek eseteben altalaban a
   "lapozoallomany alapu" megko:zelitest alkalmazzak. A
   lapozoallomany alapusag nem arra utal, hogy a memorialemezt
   alapbol kilapozzak lemezre, hanem inkabb arra, hogy a memorialemez
   olyan teru:leten jo:n letre, amelyet szu:kseg eseten lemezre lehet
   lapozni. Memoria alapu lemezeket a (rendszermag szintu") malloc(9)
   hasznalataval is letre lehet hozni, de a malloc alapu
   memorialemezeknel, ku:lo:no:sen a nagyon nagyok eseteben, a
   rendszer ko:nnyen o:ssze tud omlani, ha kifut a rendelkezesere
   allo memoriabol.

   Pelda 18-7. Uj memoria alapu lemez letrehozasa az mdconfig
   paranccsal

 # mdconfig -a -t swap -s 5m -u 1
 # newfs -U md1
 /dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048
         using 4 cylinder groups of 1.27MB, 81 blks, 192 inodes.
         with soft updates
 super-block backups (for fsck -b #) at:
  160, 2752, 5344, 7936
 # mount /dev/md1 /mnt
 # df /mnt
 Filesystem 1K-blocks Used Avail Capacity  Mounted on
 /dev/md1        4718    4  4338     0%    /mnt

   Pelda 18-8. Uj memoria alapu lemez letrehozasa az mdmfs paranccsal

 # mdmfs -s 5m md2 /mnt
 # df /mnt
 Filesystem 1K-blocks Used Avail Capacity  Mounted on
 /dev/md2        4846    2  4458     0%    /mnt

     --------------------------------------------------------------

  18.13.3. Memorialemezek levalasztasa a rendszerro"l

   Amikor mar nem akarunk tovabb hasznalni egy memoria vagy allomany
   alapu allomanyrendszert, erdemes visszaadnunk az altaluk
   felhasznalt ero"forrasokat a rendszernek. Elso"kent valasszuk le
   magat az allomanyrendszert, majd az mdconfig(8) segitsegevel
   kapcsoljuk le a lemezt a rendszerro"l es szabaditsuk fel az altala
   felhasznalt ero"forrasokat.

   Peldaul az /dev/md4 eszko:zt igy lehet lekapcsolni es
   felszabaditani:

 # mdconfig -d -u 4

   A beallitott md(4) eszko:zo:kkel kapcsolatos to:bbi informaciot az
   mdconfig -l paranccsal tudjuk lekerdezni.

     --------------------------------------------------------------

18.14. Az allomanyrendszerek pillanatkepei

   Irta: Tom Rhodes.

   A FreeBSD a Soft Updates mellett felkinal egy masik leheto"seget:
   az allomanyrendszerekro"l keszitheto" pillanatfelveteleket.

   Ezek a pillanatkepek leheto"ve teszik a felhasznalok szamara, hogy
   adott allomanyrendszerekro"l kepeket hozzanak letre es azt
   allomanykent kezeljek. A pillanatkepeket az adott
   allomanyrendszerben kell letrehozni, es a felhasznalok
   allomanyrendszerenkent husznal to:bbet nem hozhatnak belo"lu:k
   letre. Az aktiv pillanatkepek a szuperblokkban keru:lnek
   ro:gzitesre, ezert az allomanyrendszerek levalasztasa es
   ujracsatlakoztatasa eseten is megmaradnak, meg ujrainditas utan
   is. Amikor egy pillanatkepre mar nincs tovabb szu:ksegu:nk, egy
   szimpla rm(1) paranccsal eltavolithato. A pillanatkepek
   tetszo"leges sorrendben eltavolithatoak, habar ilyenkor az o:sszes
   altaluk lefoglalt hely nem szabadul fel, mivel mas
   pillanatkepeknek meg szu:ksege lehet bizonyos blokkjaira.

   Miutan az mksnap_ffs(8) paranccsal letrehoztunk egy pillanatkepet
   tartalmazo allomanyt, beallitodik ra a modosithatatlansagot
   jelento" snapshot allomanyjelzo". Egyedu:l az unlink(1) parancs
   kepez ez alol kivetelt, mivel segitsegevel a pillanatkepek
   eltavolithatoak.

   A pillanatkepek a mount(8) paranccsal hozhatoak letre. A
   ko:vetkezo" modon tudjuk a /var egy pillanatkepet elkesziteni a
   /var/snapshot/snap allomanyban:

 # mount -u -o snapshot /var/snapshot/snap /var

   Vagy a mksnap_ffs(8) meghivasaval is keszithetu:nk
   pillanatkepeket:

 # mksnap_ffs /var /var/snapshot/snap

   Az allomanyrendszeren (peldaul /var) a pillanatkepeket tartalmazo
   allomanyokat a find(1) paranccsal kereshetju:k meg:

 # find /var -flags snapshot

   Ahogy elkeszitettu:nk egy pillanatkepet, to:bb mindenre is
   felhasznalhatjuk:

     * Egyes rendszergazdak a pillanatkepeket biztonsagi mentesekhez
       hasznaljak, mivel ezek gond nelku:l atteheto"ek CD-re vagy
       szalagra.

     * Az allomanyrendszerek sertetlenseget elleno"rzo" program, az
       fsck(8) is lefuttathato egy ilyen pillanatkepen. Felteve, hogy
       az allomanyrendszer csatlakoztatasakor tiszta volt, mindig egy
       tiszta (es valtozasokat nem tartalmazo) eredmenyt kell
       kapnunk. Ennek meglete elengedhetetlen a hatterben futtathato
       fsck(8) mu"ko:desehez.

     * Futassuk le a dump(8) segedprogramot a pillanatkepen. Az igy
       letrehozott mentes megegyezik az allomanyrendszer adott
       pillanatban felvett allapotaval. Az -L beallitas megadasaval
       maga a dump(8) is kepes egyetlen parancsban pillanatfelvetelt
       kesziteni, ebbo"l letrehozni a mentest, majd eltavolitani.

     * A pillanatkepet kepesek vagyunk a mount(8) paranccsal az
       allomanyrendszer befagyasztott valtozatakent csatlakoztatni:

 # mdconfig -a -t vnode -f /var/snapshot/snap -u 4
 # mount -r /dev/md4 /mnt

   Igy mar a /mnt ko:nyvtarba csatlakoztatva be tudjuk jarni a
   befagyasztott /var allomanyrendszert. Minden a pillanatfelvetel
   keszitesenek ido"pontjanak megfelelo" allapotban fog maradni. Az
   egyetlen kivetel talan annyi, hogy korabbi pillanatkepek nulla
   meretu" allomanykent fognak megjelenni. Mikor befejeztu:k a
   pillanatkepek hasznalatat, a umount(8) paranccsal le tudjuk
   valasztani:

 # umount /mnt
 # mdconfig -d -u 4

   A softupdates es az allomanyrendszerek pillanatkepeinek
   hasznalataval, illetve mu"szaki leirasukkal kapcsolatban
   latogassuk meg Marshall Kirk McKusick honlapjat a
   http://www.mckusick.com/ cimen (angolul).

     --------------------------------------------------------------

18.15. Az allomanyrendszerek kvotai

   A kvotak hasznalata az operacios rendszerben egy olyan valaszthato
   leheto"seg, aminek segitsegevel allomanyrendszerenkent korlatozni
   tudjuk az egyes felhasznalok vagy csoporttagok altal elhasznalt
   lemezteru:let es/vagy allomanyok mennyiseget. Ezt leggyakrabban
   olyan ido"osztasos rendszerekben hasznaljak ki, ahol szu:kseg
   lehet az egyes felhasznalokra vagy csoportokra eso" ero"forrasok
   mennyisegenek szabalyozasara. Ezzel tudjuk megakadalyozni, hogy a
   felhasznalok vagy csoportok elfogyasszak az o:sszes rendelkezesre
   allo lemezteru:letet.

     --------------------------------------------------------------

  18.15.1. A kvotak hasznalatanak beallitasa

   Mielo"tt nekilatnank a kvotak hasznalatanak, meg kell
   gyo"zo"dnu:nk rola, hogy a rendszermagunkban megvan hozza a
   szu:kseges tamogatas. A kvotakat a ko:vetkezo" sorral lehet
   engedelyezni a rendszermag beallitasait tartalmazo allomanyban:

 options QUOTA

   A gyari GENERIC rendszermag ezt alapbol nem engedelyezi, ezert
   ehhez mindenkeppen be kell allitani, le kell forditani es
   telepiteni egy kell sajat rendszermagot. A sajat rendszermag
   letrehozasahoz ko:vessu:k a 8 fejezet utasitasait.

   Ha ezzel megvagyunk, akkor a ko:vetkezo" sorral bo"vitsu:k ki az
   /etc/rc.conf allomanyt:

 enable_quotas="YES"

   A kvotakat kezelo" rendszer inditasanak finomabb szabalyozasara
   letezik meg egy tovabbi beallitasi leheto"seg is. A rendszer
   inditasa soran altalaban az egyes allomanyrendszerek kvotajat a
   quotacheck(8) program elleno"rzi. A quotacheck(8) gondoskodik
   rola, hogy a kvotakat tarolo adatbazis tenylegesen az
   allomanyrendszeren talalhato adatokat tu:kro:zi. Ez egy nagyon
   ido"igenyes folyamat, ami ranyomja belyeget a rendszer
   elindulasahoz szu:kseges ido" mennyisegere is. Amennyiben
   szeretnenk megtakaritani ezt a lepest, tegyu:k bele az
   /etc/rc.conf allomanyba a direkt erre a celra kialakitott
   beallitast:

 check_quotas="NO"

   Vegezetu:l az allomanyrendszereken az /etc/fstab megfelelo"
   modositasaval tudjuk egyenkent engedelyezni a lemezkvotak
   hasznalatat. Itt lehet bekapcsolni az allomanyrendszerek
   felhasznalokra vagy csoportokra, esetleg mind a ketto"ju:kre
   vonatkozo kvotaikat.

   Ha felhasznaloi szintu" kvotakat akarunk engedelyezni egy
   allomanyrendszeren, akkor az /etc/fstab allomanyban az
   allomanyrendszer beallitasai ko:ze vegyu:k fel a userquota opciot.
   Peldaul igy:

 /dev/da1s2g   /home    ufs rw,userquota 1 2

   Ehhez hasonloan tudjuk engedelyezni a userquota helyett a
   groupquota opcio hasznalataval a csoportszintu" kvotakat is. A
   felhasznaloi- es csoportszintu" kvotak egyu:ttes engedelyezesehez
   igy kell atirni az allomanyrendszer bejegyzeset:

 /dev/da1s2g    /home    ufs rw,userquota,groupquota 1 2

   Alapertelmezes szerint az allomanyrendszerekhez tartozo kvotak a
   gyo:keru:kben talalhato quota.user valamint quota.group
   allomanyokban tarolodnak. Erro"l reszletesebben az fstab(5) man
   oldalon olvashatunk. Noha meg az fstab(5) man oldala szerint is
   megadhato mas eleresi ut a kvotakat tarolo allomanyokhoz,
   semmikeppen sem javasoljuk ezt, mert ugy tu"nik, hogy a kvotakat
   kezelo" ku:lo:nbo:zo" segedprogramok ezzel nem kepesek rendesen
   megbirkozni.

   Most kell ujrainditani a rendszeru:nket az uj rendszermaggal. Az
   /etc/rc magatol le fogja futtatni a kezdeti kvotaallomanyok
   letrehozasahoz szu:kseges parancsokat az /etc/fstab allomanyban
   megadott allomanyrendszereken. Ennek megfelelo"en tehat nem
   neku:nk kell kezzel letrehoznunk ezeket az allomanyokat.

   Hetko:znapi esetben egyaltalan nem kell manualis futtatnunk a
   quotacheck(8), quotaon(8) vagy quotaoff(8) parancsokat. Habar ha
   tisztaban szeretnenk lenni a pontos mu"ko:desu:kkel, akkor
   mindenkeppen lapozzuk fel a hozzajuk tartozo man oldalakat.

     --------------------------------------------------------------

  18.15.2. A kvotak beallitasa

   Ahogy sikeru:lt beallitani a kvotak hasznalatat, egybo"l
   elleno"rizzu:k is a mu"ko:do"kepessegu:ket. Ezt legegyszeru"bben a
   ko:vetkezo" paranccsal tehetju:k meg:

 # quota -v

   Itt egy sorban o:sszefoglalva lathatjuk a jelenlegi
   lemezhasznalatot es az egyes allomanyrendszereken engedelyezett
   kvotak korlatait.

   Most mar keszenallunk arra, hogy az edquota(8) paranccsal vegre
   korlatokat is beallitsunk a kvotakhoz.

   Szamos beallitas all rendelkezesu:nkre a felhasznalok vagy
   csoportok altal lefoglalhato lemezteru:let vagy a letrehozhato
   allomanyok szamanak korlatozasat illeto"en. A helyfoglalast
   szabalyozhatjuk lemezteru:let alapjan (blokk kvota) vagy az
   allomanyok szama szerint (allomanyleiro kvota), esetleg a ketto"
   kombinaciojaval. A korlatok tovabbi ket kategoriara bonthatoak:
   ero"sre es gyengere.

   Az ero"s korlatot (hard limit) nem lehet tullepni. Ahogy a
   felhasznalo eleri a szamara kiszabott ero"s korlatot, semmilyen
   tovabbi teru:letet nem hasznalhat fel a kerdeses
   allomanyrendszeren. Peldaul, ha a felhasznalonak az
   allomanyrendszeren 500 kilobyte-os ero"s korlatot allitottunk be,
   es eppen 490 kilobyte-nal tart, akkor a felhasznalo innen mar csak
   10 kilobyte-nyi helyet foglalhat le. 11 kilobyte lefoglalasa mar
   nem fog sikerrel jarni.

   Ezzel szemben a gyenge korlatok (soft limit) egy adott ideig
   atlepheto"ek. Ezt az ido"t tu:relmi ido"nek (grace period)
   nevezik, ami alapertelmezes szerint egy het. Ha a felhasznalo a
   gyenge korlaton felu:l marad a tu:relmi ido" utan is, akkor ezt a
   gyenge korlat ero"sse valik es semmilyen tovabbi helyfoglalasra
   nem lesz leheto"sege. Amikor a felhasznalok ujra a gyenge korlat
   ala keru:l, a tu:relmi ido" is visszaall a beallitott ertekere.

   A most ko:vetkezo" peldaban az edquota(8) parancsot mutatjuk be.
   Amikor meghivjuk az edquota(8) parancsot, akkor elindul az EDITOR
   ko:rnyezeti valtozonak megfelelo" szo:vegszerkeszto", illetve
   ennek hianyaban a vi, es leheto"segu:nk nyilik a kvota korlatainak
   modositasara.

 # edquota -u teszt

 Quotas for user teszt:
 /usr: kbytes in use: 65, limits (soft = 50, hard = 75)
         inodes in use: 7, limits (soft = 50, hard = 60)
 /usr/var: kbytes in use: 0, limits (soft = 50, hard = 75)
         inodes in use: 0, limits (soft = 50, hard = 60)

   Normalis esetben minden kvotaval rendelkezo" allomanyrendszerhez
   ket sort kapunk. Ko:zu:lu:k az egyik sorban szerepelnek a blokkok
   korlatai, a masikban az allomanyleirok korlatai. Ha
   valamelyiku:ket meg akarjuk valtoztatni, akkor egyszeru"en csak at
   kell irnunk az adott korlat erteket. Peldaul no:velju:k meg a
   felhasznalok 50-es gyenge es 75-o:s ero"s blokk korlatjat 500-as
   gyenge es 600-as ero"s korlatra. Ehhez szerkesszu:k at a

 /usr: kbytes in use: 65, limits (soft = 50, hard = 75)

   sort erre:

 /usr: kbytes in use: 65, limits (soft = 500, hard = 600)

   Az uj korlatok akkor fognak ervenybe lepni, miutan kileptu:nk a
   szo:vegszerkeszto"bo"l.

   Neha hasznos lehet a korlatokat adott felhasznaloi azonositokhoz
   beallitani. Ezt az edquota(8) parancs -p parameterevel tudjuk
   elvegezni. Elo"szo:r is allitsuk be egy felhasznalonak a
   beallitani kivant korlatokat, majd futtassuk le az edquota -p
   teszt kezdo"uid-veguid parancsot. Peldaul ha a teszt nevu"
   felhasznalonak allitottuk be a szamunkra megfelelo" korlatokat,
   akkor a ko:vetkezo" paranccsal lehet a ra vonatkozo korlatokat
   kiterjeszteni a 10 000 es 19 999 ko:zo:tti azonositoju
   felhasznalokra:

 # edquota -p teszt 10000-19999

   Erro"l bo"vebben az edquota(8) man oldalan kaphatunk
   felvilagositast.

     --------------------------------------------------------------

  18.15.3. A kvotak korlatainak es a lemezhasznalat elleno"rzese

   A kvotak korlatait es a lemez jelenlegi kihasznaltsagat a quota(1)
   vagy repquota(8) parancsokkal is elleno"rizhetju:k. A quota(1)
   parancs segitsegevel elleno"rizheto" az egyes felhasznalok vagy
   csoportok kvotaja es lemezhasznalata. A felhasznalok csak a sajat
   adataikhoz ferhetnek hozza, illetve mindazon csoportokehoz, aminek
   tagjai. Egyedu:l a rendszeradminisztrator kepes latni az o:sszes
   felhasznalo es csoport kvotajat. A repquota(8) paranccsal
   kerdezheto" le az o:sszes kvota es lemezhasznalat ro:vid
   kimutatasa minden olyan allomanyrendszeren, ahol azok
   engedelyezettek.

   A ko:vetkezo" kimenet a quota -v parancstol szarmazik, ahol a
   felhasznalonak ket allomanyrendszeren is vannak kvotai:

 Disk quotas for user teszt (uid 1002):
      Filesystem  usage    quota   limit   grace   files   quota   limit   grace
            /usr      65*     50      75   5days       7      50      60
        /usr/var       0      50      75               0      50      60

   A fenti peldaban lathato, hogy a felhasznalo a /usr
   allomanyrendszeren pillanatnyilag 15 kilobyte-tal van az
   50 kilobyte-os gyenge korlatja felett es 5 napja van hatra a
   tu:relmi ido"bo"l. Vegyu:k eszre a szam mellett levo" csillagot
   (*), amivel a rendszer jelzi, hogy a felhasznalo tullepte a
   korlatjat.

   A quota(1) parancs kimeneteben altalaban nem jelennek meg azok az
   allomanyrendszerek, amelyeken a felhasznalonak ugyan vannak
   kvotai, de nem foglal rajtuk lemezteru:letet. A -v beallitas
   megadasaval ezek az allomanyrendszerek is lathatova valnak, mint
   ahogy azt a fenti peldaban is megfigyelhettu:k a /usr/var
   eseteben.

     --------------------------------------------------------------

  18.15.4. Kvotak NFS-en keresztu:l

   A kvotak az NFS szerver kvotakert felelo"s alrendszereben is
   engedelyezheto"ek. Az rpc.rquotad(8) demon teszi az NFS klienseken
   futtatott quota(1) parancsok szamara elerheto"ve a kvotakkal
   kapcsolatos informaciokat, aminek ko:szo:nheto"en a felhasznalok
   tavolrol is kepesek lekerdezni a kvotaikat.

   Az rpc.rquotad aktivilasahoz a ko:vetkezo"t kell beallitani az
   /etc/inetd.conf allomanyban:

 rquotad/1      dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad

   Majd ne felejtsu:k el ujrainditani az inetd demont sem:

 # /etc/rc.d/inetd restart

     --------------------------------------------------------------

18.16. A lemezparticiok titkositasa

   Irta: Lucky Green.

   A FreeBSD kitu"no" futasko:zbeni vedelmet ajanl fel az adatok
   illetektelen hozzaferese ellen. Az allomanyok engedelyei es a
   ko:telezo" hozzaferes-vezerles (Mandatory Access Control, MAC,
   lasd 16 fejezet) segitenek megvedeni erzekeny adatainkat az
   illektelenek ellen az operacios rendszer futasa es a szamitogep
   mu"ko:dese soran. Azonban az operacios rendszerben kezelt
   engedelyek teljesen hatastalanok abban az esetben, ha a tamado
   fizikailag is kepes hozzaferni a szamitogepu:nkho:z, eltavolitani
   a merevlemezt es egy masik operacios rendszer segitsegevel
   kielemezni a rajta talalhato fontos adatainkat.

   Fu:ggetlenu:l attol, hogy a tamado valojaban mikent is ferko"zo:tt
   hozza a merevlemezu:nkho:z, vagy mikent kapcsolta le a
   szamitogepu:nket, a FreeBSD megtalalhato GEOM alapu
   lemeztitkositas (gbde) es a geli titkositasi alrendszer egyarant
   kepes vedelmet nyujtani a szamitogepen talalhato
   allomanyrendszerek szamara az ertekes adatok utan kutato igen
   motivalt beto:ro"k ellen. A csupan egyes allomanyokra kiterjedo"
   ko:rmo:nfont titkositasi modszerekkel szemben a gbde es a geli az
   egesz allomanyrendszert eszrevetlen modon titkositja.
   Titkositatlan adat nem is keru:l a merevlemezre.

     --------------------------------------------------------------

  18.16.1. A lemez titkositasa a gbde hasznalataval

    1. Valjunk root felhasznalova

       A gbde beallitasahoz rendszeradminisztratori jogosultsagokra
       lesz szu:ksegu:nk.

 % su -
 Password:

    2. Adjuk hozza a gbde(4) tamogatasat a rendszermag konfiguracios
       allomanyahoz

       Tegyu:k a ko:vetkezo" sort a rendszermag beallitasait
       tartalmazo allomanyba:

       options GEOM_BDE

       Forditsuk ujra a rendszermagot a 8 fejezetben leirtak szerint.

       Inditsuk el a szamitogepet az uj rendszermaggal.

    3. A rendszermag ujraforditasa helyett a kldload paranccsal is
       beto:lthetju:k a gbde(4) moduljat:

 # kldload geom_bde

     --------------------------------------------------------------

    18.16.1.1. A titkositott merevlemez elo"keszitese

   A ko:vetkezo" pelda azt feltetelezi, hogy a rendszeru:nkho:z egy
   uj merevlemezt adunk hozza, amin egyetlen titkositott particio
   foglal helyet. Ezt a particiot a /private ko:nyvtarba fogjuk
   csatlakoztatni. A gbde hasznalhato a /home es a /var/mail
   titkositasara is, de ennek megvalositasa olyan bonyolult
   utasitasokat igenyel, amelyek meghaladjak ennek a bevezetesnek a
   kereteit.

    1. Az uj merevlemez hozzaadasa

       A 18.3 Szakaszban bemutatottak szerint adjuk hozza a
       rendszeru:nkho:z az uj merevlemezt. A peldaban az uj lemez
       particiojat a /dev/ad4s1c neven fogjuk tudni elerni. A
       /dev/ad0s1* eszko:zo:k a peldaban szereplo" FreeBSD rendszer
       szabvanyos particioit jelo:lik.

 # ls /dev/ad*
 /dev/ad0        /dev/ad0s1b     /dev/ad0s1e     /dev/ad4s1
 /dev/ad0s1      /dev/ad0s1c     /dev/ad0s1f     /dev/ad4s1c
 /dev/ad0s1a     /dev/ad0s1d     /dev/ad4

    2. Hozzunk letre egy ko:nyvtarat a gbde zarolasainak tarolasahoz

 # mkdir /etc/gbde

       A gbdenek azert van szu:ksege a zarolasokat ro:gzito"
       allomanyokra, hogy hozza tudjon ferni a titkositott
       particiokhoz. Amennyiben ezt nem tudja megtenni, a gbde
       anelku:l nem lesz kepes visszafejteni a titkositott
       particiokon tarolt adatokat, hogy az ezeket elerni akaro
       szoftvereknek ne kelljen jelento"sebb mertekben manualisan
       beavatkoznia. Mindegyik titkositott particio ku:lo:n zarolo
       allomanyt hasznal.

    3. A gbde particio inicializalasa

       A gbde altal hasznalt particiokat hasznalatuk elo"tt
       inicializalni kell. Ezt a mu"veletet azonban csak egyszer kell
       elvegezni:

 # gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c.lock

       A gbde(8) ekkor elindit egy szo:vegszerkeszto"t es benne egy
       sablon segitsegevel be tudjuk allitani a ku:lo:nbo:zo"
       konfiguracios ertekeket. Az UFS1 vagy UFS2 hasznalata eseten
       allitsuk a szektormeretet 2048-ra:

 $FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
 #
 # Sector size is the smallest unit of data which can be read or written.
 # Making it too small decreases performance and decreases available space.
 # Making it too large may prevent filesystems from working.  512 is the
 # minimum and always safe.  For UFS, use the fragment size
 #
 sector_size     =       2048
 [...]

       A megjegyzes forditasa:

 A szektormeret az adatok irasanak es olvasasanak legkisebb egysege.  Ha
 tulsagosan kicsire valasztjuk meg, akkor cso:kken a teljesitmeny es cso:kken a
 rendelkezesre allo hely.  Ha viszont tulsagosan nagyra hagyjuk, akkor azzal
 akadalyozzuk az allomanyrendszerek munkajat.  512 a legkisebb ertek, amely mindig
 megbizhato.  Az UFS eseten hasznaljuk a fragmensek meretet.

       A gbde(8) ketszer is ra fog kerdeni az adatok titkositasara
       hasznalt jelmondatra. A jelmondatnak termeszetesen mind a
       ketszer ugyanannak kell lennie. A gbde vedelmenek hatekonysaga
       teljesen mertekben az altalunk valasztott jelmondat
       mino"segeto"l fu:gg [11].

       A gbde init parancs letrehoz egy zarolo allomanyt a gbde
       particiohoz, amely ebben a peldaban az /etc/gbde/ad4s1c.lock
       neven keletkezett. A gbde zarolo allomanyainak ".lock" nevre
       kell vegzo"dniu:k, mivel az /etc/rc.d/gbde inditoszkript csak
       ebben az esetben eszleli rendesen.

         Figyelem: A gbde zarolo allomanyait a titkositott particiok
         tartalmaval egyu:tt kell lementeni. Miko:zben a zarolo
         allomany to:rlese nem tudja megakadalyozni, hogy az elszant
         tamado visszafejtse a gbde altal titkositott particiot,
         addig a zarolo allomany nelku:l a jogos tulajdonos orasi
         mennyisegu" munka befektetese nelku:l keptelen lesz
         hozzaferni a rajta levo" adatokhoz. Ez utobbitol egyebkent a
         gbde(8) es a rendszer tervezo"je is totalisan elhatarolja
         magat.

    4. A titkositott particio illesztese a rendszermaghoz

 # gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lock

       Ekkor a titkositott particio illesztesehez a rendszer kerni
       fogja az inicializalas soran valasztott jelmondatot. Ezutan az
       uj titkositott eszko:z megjelenik a /dev ko:nyvtarban
       /dev/eszko:znev.bde neven:

 # ls /dev/ad*
 /dev/ad0        /dev/ad0s1b     /dev/ad0s1e     /dev/ad4s1
 /dev/ad0s1      /dev/ad0s1c     /dev/ad0s1f     /dev/ad4s1c
 /dev/ad0s1a     /dev/ad0s1d     /dev/ad4        /dev/ad4s1c.bde

    5. Allomanyrendszer kialakitasa egy titkositott eszko:zo:n

       Ahogy sikeru:lt a titkositott eszko:zt illeszteni a
       rendszermaghoz, letre is tudunk hozni egy allomanyrendszert
       rajta. Erre a celra a newfs(8) remeku:l hasznalhato. Mivel egy
       uj UFS2 allomanyrendszerek inicializalasa sokkal gyorsabb a
       regi UFS1 allomanyrendszerek inicializalasanal, ezert a
       newfs(8) hasznalata eseten az -O2 beallitas megadasa ajanlott.

 # newfs -U -O2 /dev/ad4s1c.bde

         Megjegyzes: A newfs(8) parancsot egy illesztett gbde
         particion kell vegrehajtani, amit onnan ismerhetu:nk meg,
         hogy az eszko:z neveben szerepel a *.bde kiterjesztes.

    6. A titkositott particio csatlakoztatasa

       Hozzunk letre egy csatlakozasi pontot a titkositott
       allomanyrendszer szamara.

 # mkdir /privat

       Csatlakoztassuk a titkositott allomanyrendszert.

 # mount /dev/ad4s1c.bde /privat

    7. Elleno"rizzu:k a titkositott allomanyrendszer
       mu"ko:do"kepesseget

       A titkositott allomanyrendszert most mar latja a df(1) program
       es keszen all a hasznalatra.

 % df -H
 Filesystem        Size   Used  Avail Capacity  Mounted on
 /dev/ad0s1a      1037M    72M   883M     8%    /
 /devfs            1.0K   1.0K     0B   100%    /dev
 /dev/ad0s1f       8.1G    55K   7.5G     0%    /home
 /dev/ad0s1e      1037M   1.1M   953M     0%    /tmp
 /dev/ad0s1d       6.1G   1.9G   3.7G    35%    /usr
 /dev/ad4s1c.bde   150G   4.1K   138G     0%    /private

     --------------------------------------------------------------

    18.16.1.2. Letezo" titkositott allomanyrendszerek csatlakoztatasa

   A rendszer minden egyes inditasa utan az o:sszes titkositott
   allomanyrendszert tenyleges hasznalata elo"tt ujra illeszteni kell
   a rendszermaghoz, elleno"rizni az epseget es csatlakoztatni. Az
   ehhez szu:kseges parancsokat root felhasznalokent kell kiadni.

    1. A gbde particio illesztese a rendszermaghoz

 # gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lock

       A gbde particio inicializalasa soran megadott jelmondatot kell
       megadnunk a mu"velet elvegzesehez.

    2. Az allomanyrendszer epsegenek elleno"rzese

       Mivel a titkositott allomanyrendszerek az automatikus
       csatlakoztatashoz meg nem szerepeltetheto"ek az /etc/fstab
       allomanyban, ezert az ilyen allomanyrendszereket
       csatlakoztatasuk elo"tt manualisan elleno"riztetni kell a
       fsck(8) lefuttatasaval.

 # fsck -p -t ffs /dev/ad4s1c.bde

    3. A titkositott allomanyrendszer csatlakoztatasa

 # mount /dev/ad4s1c.bde /privat

       A titkositott allomanyrendszer most mar keszen all a
       hasznalatra.

     --------------------------------------------------------------

      18.16.1.2.1. A titkositott particiok o:nallo csatlakoztatasa

   Lehet irni olyan szkriptet, amely a titkositott particiokat
   magatol illeszti, elleno"rzi es csatlakoztatja, de biztonsagi
   megfontolasokbol semmi esetben sem szabad tartalmaznia a gbde(8)
   jelszavat. Ehelyett azt javasoljuk, hogy az ilyen szkripteknek
   ku:lo:n meg kelljen adni a jelszot konzolon vagy az ssh(1)
   hasznalatan keresztu:l.

   De hasznalhatjuk a mellekelt rc.d szkriptet is. A szkript
   parametereit az rc.conf(5) allomanyon keresztu:l adhatjuk meg,
   peldaul:

 gbde_autoattach_all="YES"
 gbde_devices="ad4s1c"
 gbde_lockdir="/etc/gbde"

   Ilyenkor a gbde altal hasznalt jelmondatot a rendszer inditasakor
   kell megadni. Miutan begepeltu:k a megfelelo" jelmondatot, a
   titkositott gbde particio magatol csatlakoztatasra keru:l. Ez
   akkor lehet hasznos, ha a gbde megoldasat hordozhato
   szamitogepeken alkalmazzuk.

     --------------------------------------------------------------

    18.16.1.3. A gbde altal alkalmazott titkositasi modszerek

   A gbde(8) a szektorok tartalmat 128 bites AES hasznalataval CBC
   modban titkositja. A lemezen talalhato minden egyes szektort
   eltero" AES kulccsal kodolja. A gbde kriptografiai felepiteset,
   valamint mindazt, hogy az egyes szektorok kulcsai mikent
   szarmaztathatoak a felhasznalo altal megadott jelmondatbol, a
   gbde(4) man oldalan olvashatjuk.

     --------------------------------------------------------------

    18.16.1.4. Kompatibilitasi problemak

   A sysinstall(8) nem kompatibilis a gbde altal titkositott
   eszko:zo:kkel. A sysinstall(8) inditasa elo"tt minden *.bde
   eszko:zt ki kell iktatni a rendszermagbol, ku:lo:nben az
   eszko:zo:k keresese soran o:ssze fog omlani. A peldankban hasznalt
   titkositott eszko:zt a ko:vetkezo" paranccsal kell lekapcsolni:

 # gbde detach /dev/ad4s1c

   Tovabba megjegyezzu:k azt is, hogy a vinum(4) nem hasznalja a
   geom(4) alrendszert, ezert a gbde alkalmazasa soran nem
   hasznalhatunk Vinum-ko:teteket.

     --------------------------------------------------------------

  18.16.2. A lemezek titkositasa a geli hasznalataval

   Irta: Daniel Gerzo.

   A FreeBSD 6.0 valtozatatol kezdve egy uj kriptografiai GEOM
   osztaly is a rendelkezesu:nkre all, melyet pillanatnyilag Pawel
   Jakub Dawidek <pjd@FreeBSD.org> fejleszt. A geli segedprogram
   nemileg ku:lo:nbo:zo" a gbde megoldasatol -- mas leheto"segeket
   kinal fel es a titkositast is egy eltero" sema menten valositja
   meg.

   A geli(8) legfontosabb jellemzo"i a ko:vetkezo"k:

     * A crypto(9) keretrendszeret hasznalja -- tehat ha
       rendelkezu:nk kriptografiai hardverrel, akkor a geli
       automatikusan hasznalni fogja.

     * To:bb kriptografiai algoritmust is ismer (melyek jelenleg az
       AES, Blowfish es a 3DES).

     * Segitsegevel a rendszerinditashoz hasznalt (gyo:ker) particio
       is titkosithato. Ilyenkor a szu:kseges jelmondatot a rendszer
       inditasakor kell megadni.

     * Ket fu:ggetlen kulcsot (peldaul egy "kulcsot" es egy "ceges
       kulcsot") is hasznalhatunk vele.

     * A geli gyors -- egyszeru"en csak szektorrol szektorra
       titkosit.

     * Leheto"ve teszi a mesterkulcsok menteset is visszaallitasat.
       Ha a felhasznalo veletlenu:l megsemmisitene a kulcsat, akkor a
       biztonsagi mentesbo"l helyreallitott kulcsok segitsegevel
       vissza tudjuk szerezni az adatainkat is.

     * Segitsegevel a lemezeket veletlenszeru", egyszeri jelszavakkal
       is illeszthetju:k -- ez ku:lo:no:sen fontos lapozoteru:letek
       es ideiglenes allomanyrendszerek eseteben.

   A geli altal felkinalt leheto"segekro"l a geli(8) man oldalan
   talalhatunk to:bbet.

   A ko:vetkezo" lepesek bemutatjak, hogyan lehet a FreeBSD
   rendszermagjaban engedelyezni a geli tamogatasat, es hogyan lehet
   letrehozni es hasznalni egy geli titkositassal rendelkezo"
   adathordozot.

   A geli alkalmazasahoz legalabb a FreeBSD 6.0-RELEASE vagy keso"bbi
   valtozatara van szu:ksegu:nk. Mivel a rendszermagot is
   modositanunk kell, ezert rendszeradminisztratori jogosultsagok
   kellenek a mu"veletek elvegzesehez.

    1. A geli tamogatasanak hozzaadasa a rendszermaghoz

       Vegyu:k hozza a ko:vetkezo" sorokat a rendszermag beallitasait
       tartalmazo allomanyhoz:

 options GEOM_ELI
 device crypto

       Forditsuk ujra a rendszermagot a 8 fejezetben leirtak szerint.

       Beto:lthetju:k a geli moduljat is a rendszer inditasakor.
       Ehhez a ko:vetkezo" sort kell betenni a /boot/loader.conf
       allomanyba:

 geom_eli_load="YES"

       A geli(8) most mar hasznalhato a rendszermagban.

    2. A mesterkulcs legeneralasa

       A most ko:vetkezo" peldaban egy kulcsot tartalmazo allomany
       letrehozasat illusztraljuk, amit a /privat ko:nyvtarba
       csatlakoztatott titkositott adathordozo mesterkulcsahoz fogunk
       hasznalni. A kulcs allomany a mesterkulcs titkositasahoz
       felhasznalt veletlenszeru" adatot fogja tartalmazni, valamint
       rajta kivu:l meg a mesterkulcsot egy jelmondattal is vedju:k.
       Az adathordozo szektormerete 4 kilobyte-os lesz. Emellett meg
       bemutatjuk, hogyan kell illeszteni egy geli-adathordozot,
       allomanyrendszert letrehozni rajta, csatlakoztatni, dolgozni
       vele es lekapcsolni.

       A nagyobb teljesitmeny erdekeben javasolt nagyobb
       szektormeretet valasztani (mint peldaul 4 kilobyte).

       A mesterkulcsot egy jelmondattal fogjuk vedeni es a kulcsok
       keszitesehez hasznalt adatforras a /dev/random lesz. A
       /dev/da2.eli, amelyet mit csak adathordozonak fogunk csak
       hivni, szektorainak merete 4 kilobyte lesz.

 # dd if=/dev/random of=/root/da2.key bs=64 count=1
 # geli init -s 4096 -K /root/da2.key /dev/da2
 Enter new passphrase:
 Reenter new passphrase:

       Nem ko:telezo" egyszerre hasznalni a jelmondatot es a kulcs
       allomanyt. A mesterkulcs elzarasanak bebiztositasara barmelyik
       modszer alkalmas.

       Ha a kulcs allomany a "-" parameterrel adjuk meg, akkor a
       szabvanyos bemenetro"l olvassa be a program. Ez a pelda to:bb
       kulcs hasznalatat mutatja be.

 # cat kulcs1 kulcs2 kulcs3 | geli init -K - /dev/da2

    3. Az adathordozo illesztese a generalt kulccsal

 # geli attach -k /root/da2.key /dev/da2
 Enter passphrase:

       Az uj titkositatlan eszko:z neve /dev/da2.eli lesz.

 # ls /dev/da2*
 /dev/da2  /dev/da2.eli

    4. Az uj allomanyrendszer kialakitasa

 # dd if=/dev/random of=/dev/da2.eli bs=1m
 # newfs /dev/da2.eli
 # mount /dev/da2.eli /privat

       A titkositott allomanyrendszer most mar df(1) szamara is
       latszik es hasznalhato:

 # df -H
 Filesystem     Size   Used  Avail Capacity  Mounted on
 /dev/ad0s1a    248M    89M   139M    38%    /
 /devfs         1.0K   1.0K     0B   100%    /dev
 /dev/ad0s1f    7.7G   2.3G   4.9G    32%    /usr
 /dev/ad0s1d    989M   1.5M   909M     0%    /tmp
 /dev/ad0s1e    3.9G   1.3G   2.3G    35%    /var
 /dev/da2.eli   150G   4.1K   138G     0%    /private

    5. Az adathordozo levalasztasa es lekapcsolasa

       Miutan befejeztu:k a munkat a titkositott particion, es a
       /privat particiora mar nincs tovabb szu:ksegu:nk, erdemes
       levalasztanunk es kiiktatnunk a geli titkositasu particiot a
       rendszermagbol.

 # umount /privat
 # geli detach da2.eli

   A geli(8) hasznalatarol bo"vebben a sajat man oldalan
   tajekozodhatunk.

     --------------------------------------------------------------

    18.16.2.1. A geli rc.d szkriptjenek hasznalata

   A geli mellett talalhatunk egy sajat rc.d szkriptet, amely
   jelento"sen leegyszeru"siti a geli hasznalatat. A geli peldaul igy
   parameterezheto" az rc.conf(5) allomanyon keresztu:l:

 geli_devices="da2"
 geli_da2_flags="-p -k /root/da2.key"

   Ennek segitsegevel a /dev/da2 eszko:zt geli adathordozokent
   allitjuk be a /root/da2.key allomanyban talalhato mesterkulcs
   felhasznalasaval, de az illeszteskor a geli nem ker jelmondatot
   (ezt csak akkor fogja tenni, ha a geli init parancs kiadasahoz
   hozzatesszu:k a -P beallitast). A rendszer leallitasa elo"tt pedig
   a geli adathordozo igy automatikusan levalasztasra keru:l.

   Az rc.d beallitasaval kapcsolatos tudnivalokat a keziko:nyv rc.d
   szkriptekro"l szolo szakaszaban ismerhetju:k meg.

     --------------------------------------------------------------

18.17. A lapozoteru:let titkositasa

   Irta: Christian Bru:ffer.

   A FreeBSD-ben a lapozoteru:let titkositasa nagyon ko:nnyen
   beallithato es mar a FreeBSD 5.3-RELEASE valtozata ota elerheto".
   Attol fu:ggo"en, hogy konkretan a FreeBSD melyik verziojat
   hasznaljuk, a konfiguraciohoz kapcsolodo beallitasok nemileg
   elterhetnek. A FreeBSD 6.0-RELEASE valtozatatol kezdo"do"en a
   gbde(8) es a geli(8) alrendszerek is hasznalhatoak a
   lapozoteru:let titkositasara. A korabbi verziokban egyedu:l csak a
   gbde(8) erheto" el. Mind a ket rendszer az encswap rc.d szkriptet
   hasznalja.

   Az elo"zo" szakaszban, vagyis a A lemezparticiok titkositasaban
   mar ro:viden o:sszefoglaltuk a ku:lo:nbo:zo" titkositassal
   foglalkozo alrendszereket.

     --------------------------------------------------------------

  18.17.1. Miert kellene titkositanunk a lapozoteru:letet?

   Hasonloan a lemezparticiok titkositasahoz, a lapozoteru:let
   titkositasanak is az a celja, hogy vedju:k az erzekeny
   informaciokat. Kepzelju:k el, hogy egy olyan alkalmazassal
   dolgozunk, amely jelszavakat kezel. Amig ezek a jelszavak a
   memoriaban maradnak, addig minden a legnagyobb rendben van.
   Azonban amikor az operacios rendszer nekilat a fizikai memoria
   felszabaditasahoz kilapozni ezeket az adatokat, a jelszavak
   titkositatlanul keru:lnek a lemez felu:letere es egy tamado
   szamara ko:nnyu" predava valnak. Ilyen helyzetekben csak
   lapozoteru:let titkositasa jelenthet megoldast.

     --------------------------------------------------------------

  18.17.2. Elo"keszu:letek

     Megjegyzes: A szakasz tovabbi reszeben a ad0s1b lesz a lapozasra
     hasznalt particio.

   Egeszen mostanaig nem titkositottuk a lapozoteru:letet. Igy
   elkepzelheto", hogy a lemezre mar titkositatlanul kikeru:ltek
   jelszavak vagy barmilyen mas erzekeny adatok. A csorba
   kiko:szo:ru:lesere a lapozoteru:leten talalhato o:sszes adatot
   irjuk felu:l veletlenszeru"en generalt szemettel:

 # dd if=/dev/random of=/dev/ad0s1b bs=1m

     --------------------------------------------------------------

  18.17.3. A lapozoteru:let titkositasa a gbde(8) hasznalataval

   Ha a FreeBSD 6.0-RELEASE vagy ujabb valtozatat hasznaljuk, akkor
   az /etc/fstab allomanyban tegyu:k hozza a .bde utotagot az a
   lapozoteru:lethez tartozo eszko:z nevehez.

 # Device                Mountpoint      FStype  Options         Dump    Pass#
 /dev/ad0s1b.bde         none            swap    sw              0       0
      

   A FreeBSD 6.0-RELEASE elo"tti kiadasok eseteben a ko:vetkezo" sort
   is hozza kell tennu:nk az /etc/rc.conf allomanyhoz:

 gbde_swap_enable="YES"

     --------------------------------------------------------------

  18.17.4. A lapozoteru:let titkositasa a geli(8) hasznalataval

   A gbde(8) hasznalatahoz hasonloan a geli(8) altal felajanlott
   titkositast is alkalmazhatjuk a lapozoteru:let vedelmere. Ilyenkor
   az /etc/fstab allomanyban az .eli utotagot kell hozzatenni a
   lapozoteru:lethez tartozo eszko:z nevhez.

 # Device                Mountpoint      FStype  Options         Dump    Pass#
 /dev/ad0s1b.eli         none            swap    sw              0       0
      

   Az geli(8) az AES algoritmust alapertelmezes szerint 256 bites
   kulccsal hasznalja.

   Ezek az alapertelmezesek megvaltoztathatoak az /etc/rc.conf
   allomanyban a geli_swap_flags beallitas hasznalataval. A
   ko:vetkezo" sor arra utasitja az encswap rc.d szkriptet, hogy a
   geli(8) es a Blowfish algoritmus hasznalataval hozzon letre egy
   lapozoparticiot 128 bites kulccsal, 4 kilobyte-os szektormerettel
   es a "detach on last close" ("lekapcsolas hasznalat utan")
   beallitassal:

 geli_swap_flags="-e blowfish -l 128 -s 4096 -d"

   A FreeBSD 6.2-RELEASE verzio elo"tti rendszerekben a ko:vetkezo"
   sort kell hasznalni:

 geli_swap_flags="-a blowfish -l 128 -s 4096 -d"

   A to:bbi beallitashoz a geli(8) man oldalan a onetime parancs
   leirasat erdemes attanulmanyozni.

     --------------------------------------------------------------

  18.17.5. Elleno"rizzu:k a mu"ko:deset

   Miutan ujrainditottuk a rendszert, a titkositott lapozoteru:let
   helyes mu"ko:deset a swapinfo paranccsal elleno"rizhetju:k le.

   A gbde(8) eseteben:

 % swapinfo
 Device          1K-blocks     Used    Avail Capacity
 /dev/ad0s1b.bde    542720        0   542720     0%
      

   Valamint a geli(8) eseteben:

 % swapinfo
 Device          1K-blocks     Used    Avail Capacity
 /dev/ad0s1b.eli    542720        0   542720     0%
      

     --------------------------------------------------------------

         Fejezet 19. GEOM: A modularis lemezszervezo" rendszer

   Irta: Tom Rhodes.

19.1. Attekintes

   Ez a fejezet a FreeBSD-ben talalhato GEOM rendszert mutatja be. Ez
   a rendszer to:mo:riti az altala is alkalmazott fontosabb
   RAID-vezerlo" segedprogramokat. A fejezet nem reszletezi, hogy a
   GEOM konkretan milyen modon kezeli es vezerli az I/O-t, ahogy azt
   sem, hogyan mu"ko:dik az alapjaul szolgalo alrendszer vagy hogy
   nez ki annak forraskodja. Az ilyen jellegu" informaciok a geom(4)
   man oldalon, valamint az ott felsorolt helyeken talalhatoak meg.
   Tovabba, ez a fejezet magukrol a RAID-konfiguraciokrol sem ad
   pontos tajekoztatast. Kizarolag csak a GEOM altal is tamogatott
   RAID-besorolasokrol esik szo.

   A fejezet elolvasasa soran megismerju:k:

     * a GEOM segitsegevel milyen fajtaju RAID tamogatast erhetu:nk
       el;

     * hogyan kell hasznalni a rendszer altal nyujtott alapveto"
       segedeszko:zo:ket a ku:lo:nfele RAID-szintek konfiguralasahoz,
       karbantartasahoz es kezelesehez;

     * hogyan kell a GEOM-on keresztu:l tu:kro:zni, csikozni,
       titkositani es tavolrol o:sszekapcsolni lemezes eszko:zo:ket;

     * hogyan kell a GEOM rendszerben o:sszekapcsolt lemezeknel
       felmeru:lo" hibakat felderiteni.

   A fejezet elolvasasahoz ajanlott:

     * megerteni, hogyan kezeli a FreeBSD a lemezes eszko:zo:ket (18
       fejezet);

     * ismerni, hogyan konfiguraljunk es telepitsu:nk egy uj FreeBSD
       rendszermagot (8 fejezet).

     --------------------------------------------------------------

19.2. A GEOM bemutatasa

   A GEOM rendszer adatszolgaltatokon vagy specialis
   /dev-allomanyokon keresztu:l hozzaferest es vezerlest tesz
   leheto"ve bizonyos osztalyokhoz -- Master Boot Recordokhoz,
   BSD-cimkekhez stb. Szamos szoftveres RAID konfiguracio
   tamogatasaval a GEOM transzparens elerest tesz leheto"ve mind az
   operacios rendszer, mind pedig az altala felkinalt segedprogramok
   szamara.

     --------------------------------------------------------------

19.3. RAID0 - Csikozas

   Irta: Tom Rhodes es Murray Stokely.

   A csikozas modszeret hasznaljuk abban az esetben, amikor to:bb
   lemezmeghajtot akarunk egyetlen ko:tette o:sszevonni. A GEOM
   lemezalrendszer szoftveres tamogatast nyujt a RAID0, mas neven a
   lemezcsikozas megvalositasahoz.

   Egy RAID0 rendszerben az adatokat blokkokra bontva irjuk fel a
   to:mbben talalhato lemezek ko:zo:tt szetosztva. Igy ahelyett, hogy
   meg kellene varnunk 256 kb-nyi adat egyetlen lemezre irasat, egy
   RAID0 rendszerben egyszerre irodik 64 kb-nyi adat negy
   ku:lo:nbo:zo" lemezre, es ezaltal gyorsabb elerest szolgaltat. Ez
   a gyorsasag tovabbi lemezvezerlo"k hasznalataval meg jobban
   fokozhato.

   Az egy RAID0-csikozasban resztvevo" lemezek mindegyikenek azonos
   meretu"nek kell lennie, mivel az irasra es olvasasra iranyulo
   I/O-keresek a parhuzamos kiszolgalas erdekeben o:sszefesu:lo"dnek.

   Pelda lemezcsikozasra

   Csikozas kialakitasa formazatlan ATA-lemezekkel

    1. To:ltsu:k be a geom_stripe.ko modult:

 # kldload geom_stripe

    2. Bizonyosodjuk meg rola, hogy a rendszeru:nkben talalhato egy
       szabad csatlakozasi pont. Ha majd ezt a ko:tetet szanjuk
       rendszeru:nk gyo:kerparticiojanak, hasznaljunk erre a celra
       egy masik ko:nyvtarat, peldaul a /mnt-ot:

 # mkdir /mnt

    3. Keressu:k meg a csikozasra felhasznalni kivant lemezek
       eszko:zneveit, es hozzunk letre belo"lu:k egy uj csikozott
       eszko:zt. Peldaul, ha ket hasznalatban nem levo",
       particionalatlan ATA-lemezt, nev szerint a /dev/ad2 es
       /dev/ad3 eszko:zo:ket akarjunk csikozni:

 # gstripe label -v st0 /dev/ad2 /dev/ad3
 Metadata value stored on /dev/ad2.
 Metadata value stored on /dev/ad3.
 Done.

    4. Az igy letrejo:tt uj ko:teten most hozzunk letre egy altalanos
       cimket, vagy mas neven egy particios tablat, es telepitsu:k
       fel ra a rendszer alapertelmezett rendszerindito programjat:

 # bsdlabel -wB /dev/stripe/st0

    5. Ezzel meg kellett jelennie tovabbi masik ket eszko:znek is a
       /dev/stripe ko:nyvtarban, a st0 eszko:z mellett. Ezek to:bbek
       ko:zt az st0a es az st0c. Itt mar ki is tudunk alakitani egy
       allomanyrendszert az st0a eszko:zo:n a newfs hasznalataval:

 # newfs -U /dev/stripe/st0a

       Sok-sok szamot fogunk latni cikazni a kepernyo"n, majd nehany
       masodperc mulva befejezo"dik a folyamat. Letrehoztuk a
       ko:tetet, ami most mar keszen all a becsatolasra.

   A kialakitott lemezcsikozast igy tudjuk kezzel csatlakoztatni:

 # mount /dev/stripe/st0a /mnt

   A csikozott allomanyrendszert a rendszerinditas folyaman
   automatikusan becsatlakoztathatjuk, ha elhelyezzu:k az alabbi
   ko:tetinformaciokat az /etc/fstab allomanyba. Erre a celra stripe
   neven letrehozunk egy allando csatlakozasi pontot:

 # mkdir /stripe
 # echo "/dev/stripe/st0a /stripe ufs rw 2 2" \
       >> /etc/fstab

   A geom_stripe.ko modult is automatikusan be kell to:lteni a
   rendszerinditas soran. Ehhez a ko:vetkezo" sort kell hozzaadni a
   /boot/loader.conf allomanyhoz:

 # echo 'geom_stripe_load="YES"' >> /boot/loader.conf

     --------------------------------------------------------------

19.4. RAID1 - Tu:kro:zes

   A tu:kro:zes szamos vallalatnal es haztartasban alkalmazott
   technologia, amely az adatok megszakitas nelku:li lementesere
   hasznalatos. Amikor tu:kro:zest hasznalunk, az egyszeru"en csak
   arra utal, hogy a B lemez ugyanazokat az adatokat tartalmazza,
   mint az A lemez. Vagy amikor a C es D lemez tartalma egyezik meg
   az A es B lemezekevel. Fu:ggetlenu:l a lemezek kiosztasatol, itt
   az a lenyeg, hogy az egyik lemez teljes teru:lete vagy az egyik
   particioja le van masolva. Keso"bb az ezen a modon lementett
   adatok ko:nnyen visszaallithatoak anelku:l, hogy ez a
   szolgaltatasban vagy az elerheto"segben barmilyen kimaradast
   okozna, es akar meg fizikailag is biztonsagosan tarolhatoak.

   Elo"szo:r is szereznu:nk kell ket egyforma meretu" lemezt,
   valamint a peldak feltetelezik, hogy ezek a lemezek ko:zvetlen
   eleresu" (da(4)) SCSI-lemezek.

     --------------------------------------------------------------

  19.4.1. Az elso"dleges lemezek tu:kro:zese

   Tegyu:k fel, hogy a FreeBSD az elso", da0 nevu" lemezmeghajton
   talalhato, es a gmirror(8) szamara ezt szeretnenk megadni az
   elso"dleges adatok tarolasahoz.

   A tu:kro:zes letrehozasanak megkezdese elo"tt a
   kern.geom.debugflags sysctl(8) valtozo megfelelo" beallitasaval
   engedelyezzu:nk tovabbi nyomko:vetesi informaciokat es hozzaferest
   az eszko:zho:z:

 # sysctl kern.geom.debugflags=17

   Most epitsu:k fel a tu:kro:zest. Kezdju:k az egeszet a metaadatok
   elhelyezesevel az elso"dleges lemezmeghajton, tehat tulajdonkeppen
   az alabbi parancs segitsegevel hozzuk letre a /dev/mirror/gm
   eszko:zt:

     Figyelem: A rendszerindito meghajtorol keszitett tu:kro:zes
     adatvesztest okozhat a lemez utolso szektoraban. Ennek kockazata
     cso:kkentheto", ha ko:zvetlenu:l a FreeBSD friss telepitese utan
     allitjuk be a tu:kro:zest.

 # gmirror label -vb round-robin gm0 /dev/da0

   Erre a rendszernek a ko:vetkezo" modon kell reagalnia:

 Metadata value stored on /dev/da0.
 Done.

   A GEOM inicializalasahoz szu:ksegu:nk lesz a
   /boot/kernel/geom_mirror.ko modul beto:ltesere:

 # gmirror load

     Megjegyzes: A parancs sikeres lefutasa utan a /dev/mirror
     ko:nyvtarban letrehoz egy gm0 eszko:zleirot.

   A geom_mirror.ko modul beto:lteset igy tudjuk engedelyezni a
   rendszer inditasakor:

 # echo 'geom_mirror_load="YES"' >> /boot/loader.conf

   Nyissuk meg az /etc/fstab allomanyt, es cserelju:k le benne az
   o:sszes korabbi da0 hivatkozast az ujonnan kialakitott gm0
   tu:kro:zes eszko:zleirojaval.

     Megjegyzes: Ha vi(1) szo:vegszerkeszto"t hasznaljuk, akkor a
     ko:vetkezo" modon tudjuk ezt egyszeru"en megtenni:

 # vi /etc/fstab

     A vi(1) inditasa utan a :w /etc/fstab.bak kiadasaval keszitsu:nk
     az fstab allomany jelenlegi tartalmarol masolatot. Ezutan a
     :%s/da/mirror\/gm/g parancs hasznalataval cserelju:k ki az
     o:sszes da0 hivatkozast a gm0 eszko:z nevere.

   Az igy keletkezo" fstab allomany nagyjabol ko:vetkezo" modon fog
   kinezni. Most teljesen fu:ggetlen, hogy SCSI vagy ATA meghajtokkal
   dolgozunk, a RAID eszko:z neve mindig gm lesz:

 # Eszko:z                Csatlakozasi pont   Tipus   Beallitasok  Dump   Menet
 /dev/mirror/gm0s1b      none                swap    sw           0      0
 /dev/mirror/gm0s1a      /                   ufs     rw           1      1
 /dev/mirror/gm0s1d      /usr                ufs     rw           0      0
 /dev/mirror/gm0s1f      /home               ufs     rw           2      2
 #/dev/mirror/gm0s2d     /store              ufs     rw           2      2
 /dev/mirror/gm0s1e      /var                ufs     rw           2      2
 /dev/acd0               /cdrom              cd9660  ro,noauto    0      0

   Inditsuk ujra a rendszert:

 # shutdown -r now

   Ennek megfelelo"en a rendszer inditasa ko:zben a da0 eszko:z
   helyett a gm0 eszko:zt fogjuk hasznalni. Miutan sikeresen
   befejezo"do:tt a rendszerinditas, a mount parancs kiadasaval a
   sajat szemu:nkkel is meggyo"zo"dhetu:nk az eredmenyro"l:

 # mount
 Filesystem         1K-blocks    Used    Avail Capacity  Mounted on
 /dev/mirror/gm0s1a   1012974  224604   707334    24%    /
 devfs                      1       1        0   100%    /dev
 /dev/mirror/gm0s1f  45970182   28596 42263972     0%    /home
 /dev/mirror/gm0s1d   6090094 1348356  4254532    24%    /usr
 /dev/mirror/gm0s1e   3045006 2241420   559986    80%    /var
 devfs                      1       1        0   100%    /var/named/dev

   A parancs kimenete az elvarasainknak megfelelo"en remeku:l nez ki.
   Zaraskeppen a szinkronizalas megkezdesehez a ko:vetkezo"
   paranccsal illesszu:k be a da1 eszko:zt a tu:kro:zesbe:

 # gmirror insert gm0 /dev/da1

   A tu:kro:zes allapota a letrejo:ttet ko:veto"en az alabbi
   paranccsal elleno"rizheto":

 # gmirror status

   Az imenti parancs eredmenyenek nagyjabol a ko:vetkezo"nek kell
   lennie miutan a felepitettu:k a tu:kro:zest es szinkronizaltuk az
   adatokat:

       Name    Status  Components
 mirror/gm0  COMPLETE  da0
                       da1

   Hiba eseten a tu:kro:zes tovabbra is folytatodik, azonban ilyenkor
   a peldaban szereplo" COMPLETE helyett a DEGRADED jelzest fogjuk
   latni.

     --------------------------------------------------------------

  19.4.2. Hibakereses

    19.4.2.1. A rendszer nem hajlando elindulni

   Ha a rendszeru:nk ehhez hasonlo modon indul:

 ffs_mountroot: can't find rootvp
 Root mount failed: 6
 mountroot>

   Inditsuk ujra a gepu:nket a kikapcsolo gomb vagy a reset
   segitsegevel. A rendszerindito menu:ben valasszuk a hatodik opciot
   (6). Ennek eredmenyekeppen megkapjuk a loader(8) parancssorat.
   To:ltsu:k be a modult manualisan:

 OK? load geom_mirror
 OK? boot

   Ha ez bevalik, akkor valamiert a modult nem sikeru:lt rendesen
   beto:lteni. Elleno"rizzu:k, hogy a /boot/loader.conf allomanyban a
   neki szereplo" megfelelo" bejegyzes helyesen szerepel. Amennyiben
   a problema tovabbra is fennall, helyezzu:k el a ko:vetkezo" sort a
   rendszermag konfiguracios allomanyaba, majd forditsuk ujra es
   telepitsu:k:

 options GEOM_MIRROR

   Ezzel varhatoan orvosoltuk a problemat.

     --------------------------------------------------------------

  19.4.3. A meghibasodott lemezek csereje

   A lemezek tu:kro:zesenek egyik legcsodalatosabb elo"nye, hogy a
   menet ko:zben meghibasodott meghajtokat gond, es igy felteheto"en
   adatvesztes nelku:l ki tudjuk cserelni.

   Vegyu:k az imenti RAID-1 konfiguraciot, es tetelezzu:k fel, hogy a
   da1 eszko:z felmondta a szolgaltatot es cserere szorul. A meghajto
   levaltasahoz keressu:k meg a hibas eszko:zt, majd allitsuk le a
   rendszert. Tegyu:k be a helyere az ujat es inditsuk ujra a
   rendszeru:nket. Miutan elindult az operacios rendszer, a
   ko:vetkezo" parancsok kiadasaval tudjuk logikailag is lecserelni a
   meghibasodott lemezt:

 # gmirror forget gm0
 # gmirror insert gm0 /dev/da1

   Innen a gmirror status parancsaval kiserhetju:k figyelemmel a
   tu:kro:zes ujraszervezesenek menetet. Csupan ennyi az egesz.

     --------------------------------------------------------------

19.5. Eszko:zo:k halozati illesztese a GEOM-ban

   A GEOM tavoli eszko:zo:k, peldaul lemezek, CD-meghajtok stb.
   hasznalatat is tamogatja a halozati illesztest szolgalo
   segedprogramjaival, hasonloan az NFS-hez.

   Kezdeskent letre kell hozni a megosztast elo"segito" allomanyt. Ez
   az allomany hatarozza meg, ki es milyen szinten jogosult hasznalni
   a megosztott ero"forrasokat. Peldaul ha megosztjuk az elso"
   SCSI-lemezen a negyedik slice-ot, az alabbi /etc/gg.exports
   allomany to:keletesen megfelel:

 192.168.1.0/24 RW /dev/da0s4d

   Ezzel a belso" halozaton levo" o:sszes szamitogep kepes lesz
   elerni a da0s4d particion talalhato allomanyrendszert.

   Az eszko:z megosztasahoz elo"szo:r gondoskodnunk kell rola, hogy
   ne legyen csatlakoztatva, majd ezutan inditsuk el a ggated(8)
   szerver demonjat:

 # ggated

   Ezt ko:veto"en a mount felhasznalasaval csatoljuk az eszko:zt a
   kliensen, az alabbi parancs kiadasaval:

 # ggatec create -o rw 192.168.1.1 /dev/da0s4d
 ggate0
 # mount /dev/ggate0 /mnt

   Innento"l kezdve az eszko:z elerheto" lesz a /mnt csatlakozasi
   ponton keresztu:l.

     Megjegyzes: Fontos kiemelnu:nk, hogy ez a mu"velet
     eredmenytelen, ha az adott eszko:zt vagy maga a szerver, vagy
     pedig valamelyik masik kliens mar korabban csatolta.

   Amikor az eszko:zre mar nincs tovabb szu:ksegu:nk, biztonsagosan
   le tudjuk valasztani az umount(8) paranccsal, hasonloan barmelyik
   mas lemezes eszko:zho:z.

     --------------------------------------------------------------

19.6. A lemezes eszko:zo:k cimkezese

   A rendszer inditasa ko:zben a FreeBSD rendszermagja a talalt
   eszko:zo:knek megfelelo"en mindegyiknek letrehoz egy-egy
   eszko:zleirot. Ezzel a probalgatasos modszerrel egyu:tt jar nehany
   gond, peldaul mi to:rtenik akkor, ha az uj lemezes eszko:zt USB-n
   keresztu:l adjuk a rendszerhez? Nagyon valoszinu", hogy ez az
   eszko:z megkapja a da0 nevet es ezzel az eredeti da0 eszko:z
   eltolodik a da1 nevhez. Ennek ko:szo:nheto"en az /etc/fstab
   allomanyban felsorolt allomanyrendszerek csatolasa veszelybe
   keru:l, aminek ko:vetkezteben akar meghiusulhat a rendszerindulas
   is.

   Az egyik lehetseges megoldasa a problemanak, ha sorbafu"zzu:k a
   SCSI eszko:zeinket, es igy a SCSI-kartyahoz kapcsolt ujabb eszko:z
   egy addig nem hasznalt szamot fog birtokba venni. Mi helyzet
   azonban az USB-s eszko:zo:kkel, amelyek kiu:thetik az elso"dleges
   SCSI-lemezeinket? Ez egyebkent azert to:rtenhet meg, mert az USB-s
   eszko:zo:ket altalaban hamarabb keresi a rendszer, mint a SCSI
   kartyan levo" eszko:zo:ket. Megoldhatjuk ugy ezt a gondot, hogy
   csak azutan csatlakoztatjuk az emlitett eszko:zo:ket, miutan a
   rendszer elindult. Megoldhatjuk viszont ugy is, hogy csak egyetlen
   ATA-meghajtot hasznalunk es soha nem soroljuk fel a SCSI
   eszko:zo:ket az /etc/fstab allomanyban.

   Ezeknel kinalkozik azonban egy jobb megoldas! A glabel nevu"
   segedprogrammal a rendszergazda vagy a felhasznalo ugy tudja
   cimkezni a lemezmeghajtokat, hogy azok a /etc/fstab allomanyban
   szereplo" cimkeket hasznaljak. Mivel a glabel a cimket az adott
   szolgaltato utolso szektoraban tarolja el, ez a cimke megmarad az
   ujrainditas utan is. Ha ezt a cimket eszko:zkent hasznaljuk, az
   allomanyrendszerek mindig ugyanarrol a meghajtorol fognak
   csatolodni, fu:ggetlenu:l attol, hogy milyen eszko:zleiron
   keresztu:l erju:k el ezeket.

     Megjegyzes: Egyaltalan nem allitottuk, hogy egy cimke csak
     allando lehet. A glabel segitsegevel egyarant letre lehet hozni
     allando es atmeneti cimkeket, de csak az allando cimke kepes az
     ujrainditas utan is megmaradni. A ket cimketipus ko:zti
     ku:lo:nbsegeket a glabel(8) man oldal targyalja reszletesebben.

     --------------------------------------------------------------

  19.6.1. Cimketipusok es peldak

   A cimkeknek ket tipusa letezik, az altalanos cimke es az
   allomanyrendszer-cimke. A cimkek lehetnek allandoak vagy
   ideiglenesek. Az allando cimkek a tunefs(8) vagy newfs(8)
   parancsokkal hozhatoak letre. Ezek a cimkek az adott
   allomanyrendszer tipusa alapjan elnevezett alko:nyvtarakban
   jo:nnek letre a /dev ko:nyvtaron belu:l. Peldaul az UFS2
   allomanyrendszer-cimkek a /dev/ufs ko:nyvtarban keletkeznek.
   Allando cimkek a glabel label paranccsal hozhatoak letre. Az ilyen
   cimkek nem fu:ggenek az allomanyrendszerek tipusatol, a /dev/label
   ko:nyvtarban jo:nnek letre.

   Az ideiglenes cimkek a ko:vetkezo" indulaskor elvesznek. Ezek a
   cimkek a /dev/label ko:nyvtarban keletkeznek, es idealisak a
   kiserletezgetesre. Ideiglenes cimkeket a glabel create paranccsal
   hozhatunk letre. Ezzel kapcsolatosan reszletesebb felvilagositast
   a glabel(8) man oldalon talalhatunk.

   Ha egy UFS2 allomanyrendszerre szeretnenk tenni egy allando cimket
   az adataink megsemmisitese nelku:l, adjuk ki a ko:vetkezo"
   parancsot:

 # tunefs -L home /dev/da3

     Figyelem: Ha az erintett allomanyrendszeren nincs u:res hely,
     ennek a parancsnak a hasznalata adatveszteshez vezethet. Ilyen
     esetben inkabb a felesleges allomanyok eltavolitasaval kellene
     to:ro"dnu:nk, nem pedig cimkek hozzaadasaval.

   Ezutan egy cimkenek kell megjelennie a /dev/ufs ko:nyvtarban,
   amelyet vegyu:nk is fel az /etc/fstab allomanyba:

 /dev/ufs/home           /home            ufs     rw              2      2

     Megjegyzes: Az allomanyrendszert tilos csatolni a tunefs
     futtatasa alatt!

   Most mar a megszokott modon csatolhatjuk az allomanyrendszert:

 # mount /home

   Etto"l a ponttol kezdve, amig a geom_label.ko modul beto:lto"dik a
   rendszerinditas soran a /boot/loader.conf allomanyon keresztu:l,
   vagy a GEOM_LABEL opcio megtalalhato a rendszermag konfiguracios
   allomanyaban, az eszko:zleiro a rendszerre nezve minden komolyabb
   ko:vetkezmeny nelku:l megvaltozhat.

   Allomanyrendszereket letrehozhatunk alapertelmezett cimkevel is a
   newfs -L parameterevel. Erro"l reszletesebben a newfs(8) man
   oldalon olvashatunk.

   Az alabbi paranccsal tudjuk to:ro:lni a cimket:

 # glabel destroy home

   A ko:vetkezo" peldaban azt lathatjuk, hogyan cimkezzu:k fel a
   rendszerindito lemezu:nk particioit.

   Pelda 19-1. Particiok cimkezese a rendszerindito lemezen

   A rendszerinditasra hasznalt lemezen levo" particiok
   felcimkezesevel a rendszer kepes lesz akkor is minden problema
   nelku:l elindulni, amikor athelyezzu:k egy masik vezerlo"re vagy
   atrakjuk egy masik szamitogepbe. Peldaul most tegyu:k fel, hogy
   van egy ATA csatolos lemezu:nk, amelyet a rendszer ad0 neven
   ismert fel. Tovabba azt is feltetelezzu:k, hogy a FreeBSD
   telepitese eseten megszokott particionalasi semat valasztottuk,
   ahol /, /var, /usr es /tmp allomanyrendszereink, valamint egy
   lapozoteru:letu:nk van.

   Inditsuk ujra a rendszeru:nket es a loader(8) menu:jeben a 4
   billentyu" lenyomasaval valasszuk az egyfelhasznalos modot. Ezt
   ko:veto"en adjuk ki a ko:vetkezo" parancsokat:

 # glabel label rootfs /dev/ad0s1a
 GEOM_LABEL: Label for provider /dev/ad0s1a is label/rootfs
 # glabel label var /dev/ad0s1d
 GEOM_LABEL: Label for provider /dev/ad0s1d is label/var
 # glabel label usr /dev/ad0s1f
 GEOM_LABEL: Label for provider /dev/ad0s1f is label/usr
 # glabel label tmp /dev/ad0s1e
 GEOM_LABEL: Label for provider /dev/ad0s1e is label/tmp
 # glabel label swap /dev/ad0s1b
 GEOM_LABEL: Label for provider /dev/ad0s1b is label/swap
 # exit

   A rendszer inditasa ezutan to:bbfelhasznalos modban folytatodik. A
   rendszerinditas befejezo"dese utan nyissuk meg az /etc/fstab
   allomanyt es irjuk at a hagyomanyos eszko:zneveket a hozzajuk
   tartozo cimkekre. Az /etc/fstab vegleges valtozata ennek
   megfelelo"en ko:ru:lbelu:l igy fog kinezni:

 # Eszko:z                 Csatlakozasi pont  Tipus   Beallitasok     Dump    Menet
 /dev/label/swap          none               swap    sw              0        0
 /dev/label/rootfs        /                  ufs     rw              1        1
 /dev/label/tmp           /tmp               ufs     rw              2        2
 /dev/label/usr           /usr               ufs     rw              2        2
 /dev/label/var           /var               ufs     rw              2        2

   A rendszer most mar ujraindithato. Ha mindent jol csinaltunk,
   akkor a rendszer inditasa problemaktol mentesen fog zajlani es a
   mount parancs eredmenye a ko:vetkezo" lesz:

 # mount
 /dev/label/rootfs on / (ufs, local)
 devfs on /dev (devfs, local)
 /dev/label/tmp on /tmp (ufs, local, soft-updates)
 /dev/label/usr on /usr (ufs, local, soft-updates)
 /dev/label/var on /var (ufs, local, soft-updates)

   A FreeBSD 7.2 kiadasatol kezdo"do"en a glabel(8) osztaly az UFS
   eseten tamogatja az ufsid, az allomanyrendszer egyedi
   rendszerszintu" azonositojabol szarmaztatott uj cimketipus
   hasznalatat. Ezek a cimkek a rendszer inditasa soran a /dev/ufsid
   ko:nyvtarban jo:nnek automatikusan letre. Az ufsid cimkeken
   keresztu:l tudunk az /etc/fstab allomanyban allomanyrendszereket
   csatlakoztatni. A jelenleg aktiv allomanyrendszereket es azok
   ufsid azonositoit a glabel status paranccsal tudjuk lekerdezni:

 % glabel status
                   Name  Status  Components
 ufsid/486b6fc38d330916     N/A  ad4s1d
 ufsid/486b6fc16926168e     N/A  ad4s1f

   Ebben a peldaban az ad4s1d kepviseli a /var allomanyrendszert, mig
   a ad4s1f a /usr allomanyrendszert. Az adott ufsid ertekek
   megadasaval az /etc/fstab allomanyban a ko:vetkezo"keppen tudjuk
   csatlakoztatni ezeket az allomanyrendszereket:

 /dev/ufsid/486b6fc38d330916        /var        ufs        rw        2      2
 /dev/ufsid/486b6fc16926168e        /usr        ufs        rw        2      2

   Minden ufsid cimkevel rendelkezo" particio csatlakoztathato ezen a
   modon. Ekkor nem kell manualisan letrehoznunk a szamunkra allando
   cimkeket, igy automatikusan elvethezhetju:k az eszko:znevto"l
   fu:ggetlen csatlakoztatas elo"nyeit.

     --------------------------------------------------------------

19.7. Naplozo UFS GEOM-on keresztu:l

   A FreeBSD 7.0-as verziojanak megjelenesevel egy reg vart
   kiegeszites, a naplozo UFS vegre elerheto"ve valik. Maga az
   implementacio a GEOM alrendszeren keresztu:l erheto" el, es a
   gjournal(8) segedprogram segitsegevel ko:nnyeden beallithato.

   Mit is jelent a naplozas? A naplozas tamogatasaval a rendszer egy
   naplot vezet az allomanyrendszert erinto" tranzakciokrol --
   peldaul az olyan valtoztatasokrol, amelyek egy komplett irasi
   mu"veletet eredmenyeznek -- mielo"tt meg a metaadatok es
   lemezirasi mu"veletek szabalyosan befejezo"dnenek. Ez a ko:nyveles
   keso"bb visszajatszhato az allomanyrendszerben lezajlott
   tranzakciok reprodukalasahoz, es ezzel megelo"zheto"ek az
   allomanyrendszerben keletkezo" esetleges ellentmondasok.

   Ez egy ujabb modszer az adatvesztes es az allomanyrendszerben
   elo"fordulo ellentmondasok elkeru:lesere. Eltero"en a Soft Updates
   modszerto"l, ahol a metaadatok frissiteset biztositjak es ko:vetik
   nyomon, vagy a Snapshots modszerto"l, ahol pillanatkepeket
   tarolunk az allomanyrendszerro"l, itt egy konkret naplot tarolunk
   a lemez erre a celra fenntartott reszen, amely bizonyos esetekben
   akar egy teljes ku:lo:n merevlemez is lehet.

   Ellentetben a to:bbi naplozo allomanyrendszerto"l, a gjournal
   modszere blokk alapu es nem az allomanyrendszer reszekent keru:lt
   implementalasra -- csupan a GEOM egyik bo"vitmenye.

   A gjournal tamogatasahoz a FreeBSD rendszermag konfiguracios
   allomanyaban be kell allitani a ko:vetkezo" opciot -- amely a 7.X
   rendszereken alapbeallitas:

 options UFS_GJOURNAL

   Amennyiben naplozassal rendelkezo" ko:teteket szeretnenk a
   rendszerinditas soran csatlakoztatni, a /boot/loader.conf
   allomanyban ko:vetkezo" sor hozzaadasaval to:ltessu:k be a
   geom_journal.ko modult:

 geom_journal_load="YES"

   Szu:kseg eseten ezt a funkciot akar a rendszermagba is
   beepithetju:k, ha felvesszu:k a ko:vetkezo" sort a rendszermag
   konfiguracios allomanyaba:

 options GEOM_JOURNAL

   Ha ezt aktivaltuk, egy szabad allomanyrendszeren az alabbi
   lepeseken keresztu:l tudunk letrehozni egy naplot, felteve, hogy a
   da4 egy uj SCSI-meghajto:

 # gjournal label /dev/da4
 # gjournal load

   Ennel a pontnal lennie kell egy /dev/da4 es egy /dev/da4.journal
   eszko:zleironak. Hozzunk letre egy allomanyrendszert ezen az
   eszko:zo:n:

 # newfs -O 2 -J /dev/da4.journal

   Ez a parancs letrehoz egy naplozo UFS2 allomanyrendszert.

   Csatoljuk is be a mount segitsegevel az eszko:zt kivant
   csatlakozasi pontra:

 # mount /dev/da4.journal /mnt

     Megjegyzes: Ha to:bb slice-unk is van, akkor a naplo mindegyik
     slice-hoz ku:lo:n letrejo:n. Peldaul, ha az ad4s1 es ad4s2
     egyarant slice-ok, akkor a gjournal legyartja az ad4s1.journal
     es ad4s2.journal eszko:zleirokat. Abban az esetben, ha ketszer
     futattjuk le a parancsot, az eredmeny "journals" lesz.

   Bizonyos ko:ru:lmenyek ko:zo:tt kivanatos lehet a naplot egy masik
   lemezen tartani. Ilyen esetekben a naplozas bekapcsolasahoz a
   naplot biztosito szolgaltatot vagy taroloeszko:zt a naplozni
   kivant eszko:z utan kell szerepeltetni. A naplozas akar az
   aktualisan hasznalt allomanyrendszeren is aktivalhato a tunefs
   hasznalataval. Az allomanyrendszer modositasakor viszont mindig
   erdemes biztonsagi masolatot kesziteni! Az esetek to:bbsegeben a
   gjournal hibat fog jelezni, mivel nem tudja letrehozni a naplot,
   azonban ez nem vedi meg az adatainkat a tunefs helytelen
   hasznalata altal okozott seru:lesekto"l.

   A rendszerindito lemezen is lehet naplozast hasznalni. Ennek
   reszleit a Naplozo UFS hasznalata asztali szamitogepeken cimu"
   cikkbo"l ismerhetju:k meg.

     --------------------------------------------------------------

               Fejezet 20. Tamogatott allomanyrendszerek

   Irta: Tom Rhodes.

20.1. Attekintes

   Az allomanyrendszerek szerves reszet kepezik napjaink operacios
   rendszereinek. Segitsegu:kkel a felhasznalok adatokat to:lthetnek
   fel es tarolhatnak a szamitogepen, szabalyozhatjak a
   hozzaferesu:ket, es termeszetesen mu"ko:dtethetik a
   merevlemezeiket. A ku:lo:nfele operacios rendszerekben altalaban
   azert annyi ko:zo:s, hogy mindannyiukhoz tartozik egy nativ,
   vagyis altaluk alapbol ismert allomanyrendszer. A FreeBSD eseteben
   ezt konkretan a Fast File System vagy ro:viden FFS, amely az
   eredeti Unix(TM) File System, vagy mas neven UFS megoldasain
   alapszik. A FreeBSD tehat a merevlemezeken ebben a nativ
   allomanyrendszerben tarol adatokat.

   A FreeBSD termeszetesen ezen kivu:l meg ismer szamos egyeb
   allomanyrendszert, ezaltal kepes adatokat olvasni mas operacios
   rendszerek reszero"l is kezelheto" particiokrol, peldaul helyi
   USB-eszko:zo:kro"l, flashkartyakrol es merevlemezekro"l. Tovabba
   ismeri nehany mas operacios rendszer nativ allomanyrendszeret,
   mint peldaul a Linux Extended File System (EXT) vagy eppen a Sun Z
   File System (ZFS).

   FreeBSD alatt az egyes allomanyrendszerek ismerete valtozo.
   Bizonyos esetekben elegendo" csupan egy megfelelo" modul
   beto:ltese, maskor viszont egy komplett eszko:zkeszlet
   segitsegevel tudunk velu:k dolgozni. Ez a fejezet igyekszik a
   Sun-fele Z allomanyrendszerrel kezdo"do"en bemutatni a FreeBSD
   felhasznaloi szamara mas allomanyrendszerek hasznalatat.

   A fejezet elolvasasa soran megismerju:k:

     * a nativ es tamogatott allomanyrendszerek ko:zti
       ku:lo:nbsegeket;

     * a FreeBSD altal ismert allomanyrendszereket;

     * hogyan engedelyezzu:nk, allitsunk be es erju:nk el nem nativ
       allomanyrendszereket.

   A fejezet elolvasasahoz ajanlott:

     * a UNIX es FreeBSD alapjainak ismerete (3 fejezet);

     * a rendszermag konfiguraciojanak es forditasanak alapveto"
       fogasainak ismerete (8 fejezet);

     * a ku:lo:nbo:zo" ku:lso" fejlesztesu" szoftverek telepitesenek
       ismerete (4 fejezet);

     * a lemezek es egyeb taroloeszko:zo:k, valamint a FreeBSD alatt
       az eszko:zo:k elnevezesenek minimalis ismerete (18 fejezet).

     Figyelem: Jelenleg a ZFS tamogatasa meg nem tekintheto"
     hetko:znapi hasznalatra alkalmasnak. Ennek ko:vetkezmenyekeppen
     bizonyos funkciok nem megfelelo"en vagy egyaltalan nem
     mu"ko:dnek. Ahogy ez a tamogatas megbizhatova valik, ugy fogjuk
     tovabb finomitani a dokumentaciot.

     --------------------------------------------------------------

20.2. A Z allomanyrendszer (ZFS)

   A Sun Z allomanyrendszere egy uj, ko:zo:s tarolasi modszeren
   nyugvo technologia. Ez annyit jelent a gyakorlatban, hogy mindig
   csak annyi helyet foglal, amennyire az adatoknak ko:zvetlenu:l
   szu:ksege van. Emellett ugy alakitottak ki, hogy az adatok epseget
   minel inkabb vedje, ezert peldaul megtalalhatjuk benne a
   pillanatkepek kesziteset, a masolatok letrehozasat es az adatok
   sertetlensegenek elleno"rzeset. Tovabba egy RAID-Z neven
   bemutatott uj replikacios modellt is tamogat. A RAID-Z alapveto"en
   a RAID-5 megoldasahoz hasonlit, azonban iras soran keletkezo"
   hibak ellen igyekszik vedelmet nyujtani.

     --------------------------------------------------------------

  20.2.1. A ZFS finomhangolasa

   A ZFS funkcioit megvalosito alrendszer alapertelmezes szerint
   megleheto"sen sok ero"forrast kivan, ezert nem art a legjobb
   hatekonysagra behangolnunk a mindennapokban felmeru:lo" igenyek
   menten. Mivel ez meg egy fejlesztes es teszteles alatt allo resze
   a FreeBSD-nek, elkepzelheto", hogy ez a jo:vo"ben valtozik,
   viszont jelen pillanatban a ko:vetkezo" lepeseket javasoljuk.

     --------------------------------------------------------------

    20.2.1.1. Memoria

   Hasznos, ha a rendszeru:nkben legalabb 1 GB memoria talalhato, de
   inkabb 2 vagy to:bb az ajanlott. Az itt szereplo" peldakban
   ehelyett azonban mindenhol csupan 1 GB-ot feltetelezu:nk.

   Nehanyaknak sikeru:lt 1 GB-nal kevesebb ko:zponti memoriaval is
   hasznalni ezt az allomanyrendszert, azonban ilyenkor nagyon
   ko:nnyen elo"fordulhat, hogy komolyabb terheles eseten a FreeBSD a
   memoria elfogyasa miatt egyszeru"en o:sszeomlik.

     --------------------------------------------------------------

    20.2.1.2. A rendszermag beallitasai

   A rendszermag konfiguracios allomanyabol javasolt eltavolitani az
   o:sszes nem hasznalt meghajtot es funkciot. A legto:bb meghajto
   egyebkent is elerheto" modul formajaban, es a /boot/loader.conf
   allomanyon keresztu:l minden gond nelku:l beto:ltheto"ek.

   Az i386 architekturanal szu:ksegu:nk lesz az alabbi konfiguracios
   beallitas megadasara, majd a rendszermag ujraforditasara, vegu:l a
   rendszer ujrainditasara:

 options         KVA_PAGES=512

   Ezzel az opcioval a rendszermag cimteret no:velju:k meg, aminek
   eredmenyekeppen a vm.kvm_size valtozot immaron az eredetileg
   1 GB-os (PAE hasznalata eseten pedig 2 GB-os) hatar fele tudjuk
   allitani. Az itt megadando erteket ugy tudjuk meghatarozni, ha a
   beallitani kivant meret MB-okban szamolt erteket elosztjuk
   neggyel. A peldaban tehat az 512 egy 2 GB nagysagu cimteret ad
   meg.

     --------------------------------------------------------------

    20.2.1.3. A rendszerto:lto" beallitasai

   A kmem cimteret az o:sszes FreeBSD altal ismert architektura
   eseteben erdemes megno:velnu:nk. A teszteleshez hasznalt
   rendszeren 1 GB fizikai memoria allt rendelkezesre, itt a
   /boot/loader.conf allomanyban a ko:vetkezo" ertekek megadasaval
   minden remeku:l mu"ko:do:tt:

 vm.kmem_size="330M"
 vm.kmem_size_max="330M"
 vfs.zfs.arc_max="40M"
 vfs.zfs.vdev.cache.size="5M"

   A ZFS finomhangolasaval kapcsolatos tovabbi javasolatokat a
   http://wiki.freebsd.org/ZFSTuningGuide cimen olvashatunk.

     --------------------------------------------------------------

  20.2.2. A ZFS hasznalata

   A Z allomanyrendszerhez letezik egy olyan mechanizmus, amelyen
   keresztu:l mar a FreeBSD inditasa soran el tudjuk vegezni a
   ko:zo:s tarolok csatlakoztatasat:

 # echo 'zfs_enable="YES"' >> /etc/rc.conf
 # /etc/rc.d/zfs start

   A leiras fennmarado reszeben feltetelezzu:k, hogy harom
   SCSI-lemezu:nk van, amelyeket rendre a da0, da1 es da2 eszko:zo:k
   formajaban tudunk elerni. Az IDE lemezek tulajdonosainak
   ertelemszeru"en itt majd az ad eszko:zneveket kell hasznalniuk a
   SCSI-eszko:zo:k hivatkozasai helyett.

     --------------------------------------------------------------

    20.2.2.1. Egyetlen ko:zo:s tarolo hasznalata

   A zpool kiadasaval egyetlen lemezen is letre tudunk hozni egy
   egyszeru", nem redundans ZFS particiot:

 # zpool create minta /dev/da0

   Az uj ko:zo:s tarteru:let a df parancs felhasznalasaval ro:gto:n
   lathatova valik:

 # df
 Filesystem  1K-blocks    Used    Avail Capacity  Mounted on
 /dev/ad0s1a   2026030  235230  1628718    13%    /
 devfs               1       1        0   100%    /dev
 /dev/ad0s1d  54098308 1032846 48737598     2%    /usr
 minta        17547136       0 17547136     0%    /minta

   A parancs kimeneteben tisztan lathatjuk, hogy a minta nevu" tarolo
   nem csak egyszeru"en elkeszu:lt, hanem egyuttal csatolodott.
   Innento"l mar a to:bbi allomanyrendszerhez hasonloan
   tetszo"legesen elerheto", az alabbi peldahoz hasonloan allomanyok
   hozhatoak rajta letre vagy listazhato a tartalma:

 # cd /minta
 # ls
 # touch proba
 # ls -al
 total 4
 drwxr-xr-x   2 root  wheel    3 Aug 29 23:15 .
 drwxr-xr-x  21 root  wheel  512 Aug 29 23:12 ..
 -rw-r--r--   1 root  wheel    0 Aug 29 23:15 proba

   Sajnos azonban ez a tarolo meg ki sem hasznalja a ZFS altal
   felkinalt leheto"segeket. Ezert most hozzunk letre egy
   allomanyrendszert ezen a tarolon belu:l es engedelyezzu:k rajta a
   to:mo:ritest:

 # zfs create minta/tomoritett
 # zfs set compression=gzip minta/tomoritett

   A minta/tomoritett most mar egy to:mo:ritett Z allomanyrendszer.
   Probaljuk ki mit tud, es masoljunk nehany nagyobb meretu"
   allomanyt a /minta/tomoritett ko:nyvtarba.

   Ezutan a to:mo:rites akar ki is kapcsolhato:

 # zfs set compression=off minta/tomoritett

   Az allomanyrendszer levalasztasahoz adjuk ki a lenti parancsot,
   majd elleno"rizzu:k az eredmenyet a df hasznalataval:

 # zfs umount minta/tomoritett
 # df
 Filesystem  1K-blocks    Used    Avail Capacity  Mounted on
 /dev/ad0s1a   2026030  235232  1628716    13%    /
 devfs               1       1        0   100%    /dev
 /dev/ad0s1d  54098308 1032864 48737580     2%    /usr
 minta        17547008       0 17547008     0%    /minta

   Tegyu:k ismet elerheto"ve es csatlakoztassuk ujra az
   allomanyrendszert, majd nezzu:k meg az eredmenyt a df paranccsal:

 # zfs mount minta/tomoritett
 # df
 Filesystem         1K-blocks    Used    Avail Capacity  Mounted on
 /dev/ad0s1a          2026030  235234  1628714    13%    /
 devfs                      1       1        0   100%    /dev
 /dev/ad0s1d         54098308 1032864 48737580     2%    /usr
 minta               17547008       0 17547008     0%    /minta
 minta/tomoritett    17547008       0 17547008     0%    /minta/tomoritett

   A ko:zo:s teru:let es az allomanyrendszer mellesleg a mount
   parancs kimenetebo"l is megfigyelheto":

 # mount
 /dev/ad0s1a on / (ufs, local)
 devfs on /dev (devfs, local)
 /dev/ad0s1d on /usr (ufs, local, soft-updates)
 minta on /minta (zfs, local)
 minta/tomoritett on /minta/tomoritett (zfs, local)

   Lathato, hogy a letrehozasuk utan a Z allomanyrendszerek teljesen
   hetko:znapi modon viselkednek, de termeszetesen tovabbi
   leheto"segek is elerheto"ek hozzajuk. A ko:vetkezo" peldaban adat
   neven keszitu:nk egy uj allomanyrendszert. Mivel ide majd nagyon
   fontos allomanyokat akarunk elhelyezni, allitsuk be, hogy minden
   adatblokkbol ket peldany legyen:

 # zfs create minta/adat
 # zfs set copies=2 minta/adat

   A df ujboli kiadasaval most mar lathato is ez az allomanyrendszer
   es annak tarfoglalasa:

 # df
 Filesystem         1K-blocks    Used    Avail Capacity  Mounted on
 /dev/ad0s1a          2026030  235234  1628714    13%    /
 devfs                      1       1        0   100%    /dev
 /dev/ad0s1d         54098308 1032864 48737580     2%    /usr
 minta               17547008       0 17547008     0%    /minta
 minta/tomoritett    17547008       0 17547008     0%    /minta/tomoritett
 minta/adat          17547008       0 17547008     0%    /minta/adat

   Vegyu:k eszre, hogy a ko:zo:s teru:leten levo" allomanyrendszerek
   mindegyiken ugyanannyi szabad teru:let van. A df segitsegevel a
   keso"bbiekben remeku:l megfigyelheto" lesz, hogy az egyes
   allomanyrendszerek mindig csak annyi teru:letet foglalnak el a
   ko:zo:s teru:letbo"l, amennyire abban a pillanatban tenylegesen
   szu:ksegu:nk van. A Z allomanyrendszerek eseten megszu"nik a
   particiok es ko:tetek fogalma, es to:bb allomanyrendszer tarolodik
   egyazon ko:zo:s teru:leten. Ha mar nem akarjuk hasznalni,
   egyszeru"en csak to:ro:lju:k le az allomanyrendszereket es ezt a
   ko:zo:s tarolot:

 # zfs destroy minta/tomoritett
 # zfs destroy minta/adat
 # zpool destroy minta

   Nyilvan tapasztalhattunk mar, hogy a lemezeink olykor
   menthetetlenu:l meghibasodnak. Amikor egy lemezes meghajto
   to:nkremegy, a rajta tarolt adatok altalaban elvesznek. Az ilyen
   jellegu" kellemetlensegek elkeru:lesenek egyik modja az un.
   RAID-to:mbo:k epitese. A ko:vetkezo" szakaszban bemutatjuk, hogy a
   Z allomanyrendszerek eseten hogyan tudunk ilyen to:mbo:ket
   kesziteni.

     --------------------------------------------------------------

    20.2.2.2. RAID-Z to:mbo:k

   Korabban mar utaltunk ra, hogy ebben a szakaszban harom
   SCSI-lemez, vagyis a da0, da1 es da2 eszko:zo:k hasznalatat
   feltetelezzu:k (vagy termeszetesen ad0 es igy tovabb, ha
   IDE-lemezeket hasznalunk). Egy RAID-Z formatumu ko:zo:s tarolo
   keszitesehez a ko:vetkezo" parancsot kell kiadni:

 # zpool create tarolo raidz da0 da1 da2

     Megjegyzes: A Sun ajanlasa szerint egy RAID-Z konfiguracioban
     legalabb harom, legfeljebb kilenc lemezt javasolt alkalmazni. Ha
     egyetlen ko:zo:s taroloban esetleg tiznel to:bb lemezt
     szeretnenk felhasznalni, akkor erdemes inkabb kisebb RAID-Z
     csoportokra felosztani ezeket. Ha viszont csak ket lemezu:nk
     van, de tovabbra is redundanciara lenne szu:ksegu:nk, hozzunk
     helyette letre egy ZFS tu:kro:zest. Ezzel kapcsolatban
     reszletesebben a zpool(8) man oldalon keresztu:l
     tajekozodhatunk.

   Ennek hatasara tehat keletkezik egy tarolo nevu" Z-tarolo. Ez a
   korabbiakhoz hasonlo modon elleno"rizheto" is a mount(8) es df(1)
   parancsokon keresztu:l. Termeszetesen az imenti listaba tovabbi
   lemezeszko:zo:k tetszo"legesen felveheto"ek. Most hozzunk letre
   ezen a ko:zo:s teru:leten egy felhasznalok nevu"
   allomanyrendszert, ahova majd a felhasznalok adatait fogjuk tenni:

 # zfs create tarolo/felhasznalok

   Miutan ezzel megvagyunk, az iment letrehozott allomanyrendszerre
   nyugodtan beallithatunk to:mo:ritest es biztonsagi masolatokat.
   Ebben az alabbi parancsok lesznek a segitsegu:nkre:

 # zfs set copies=2 tarolo/felhasznalok
 # zfs set compression=gzip tarolo/felhasznalok

   Ezt ko:veto"en ko:lto:ztessu:k at a felhasznalokat, vagyis
   masoljuk at az adataikat ide es hozzuk letre a megfelelo"
   szimbolikus linkeket:

 # cp -rp /home/* /tarolo/felhasznalok
 # rm -rf /home /usr/home
 # ln -s /tarolo/felhasznalok /home
 # ln -s /tarolo/felhasznalok /usr/home

   A felhasznalok adatai immaron a frissen letrehozott
   /tarolo/felhasznalok allomanyrendszeren tarolodnak. Probaljuk ki,
   hozzunk letre egy uj felhasznalot es jelentkezzu:nk be vele.

   Keszitsu:nk most egy pillanatkepet is, amelyet aztan keso"bb
   szu:kseg eseten vissza tudunk allitani:

 # zfs snapshot tarolo/felhasznalok@08-08-30

   A snapshot csak valos allomanyrendszerekkel mu"ko:dik,
   ko:nyvtarakra vagy allomanyokra nem. A neveben a @ karakter
   valasztja el egymastol a hozzatartozo cimket az allomanyrendszer
   vagy ko:tet neveto"l. Ha netalan a felhasznaloi ko:nyvtarak
   valamiert megseru:ltek volna, a ko:vetkezo" paranccsal allithatoak
   vissza:

 # zfs rollback tarolo/felhasznalok@08-08-30

   Az adott ido"pontban aktiv pillanatkepeket az adott
   allomanyrendszer .zfs/snapshot ko:nyvtaraban talalhatjuk meg.
   Peldaul az elo"bb keszitett pillanatkep az alabbi paranccsal
   nezheto" meg:

 # ls /tarolo/felhasznalok/.zfs/snapshot

   Ha ebbo"l elindulunk, akkor pillanatok alatt irhato egy olyan
   szkript, amely a felhasznalok adatairol havonta keszit egy
   pillanatkepet. Ilyenkor azonban fontos szamitasba vennu:nk, hogy
   az ido"vel felgyu:lemlo" pillanatkepek rengeteg helyet el tudnak
   foglalni. A korabbi pillanatkep igy tavolithato el:

 # zfs destroy tarolo/felhasznalok@08-08-30

   Miutan alaposan kiprobaltuk a /tarolo/felhasznalok neven
   letrehozott allomanyrendszeru:nket, allitsuk be veglegesen ez
   eddigi /home allomanyrendszer helyere:

 # zfs set mountpoint=/home tarolo/felhasznalok

   Ekkor a df es mount parancsok hasznalataval meggyo"zo"dhetu:nk
   rola, hogy ezt az allomanyrendszert innento"l mar valoban a /home
   ko:nyvtarnak tekintju:k:

 # mount
 /dev/ad0s1a on / (ufs, local)
 devfs on /dev (devfs, local)
 /dev/ad0s1d on /usr (ufs, local, soft-updates)
 tarolo on /tarolo (zfs, local)
 tarolo/felhasznalok on /home (zfs, local)
 # df
 Filesystem          1K-blocks    Used    Avail Capacity  Mounted on
 /dev/ad0s1a           2026030  235240  1628708    13%    /
 devfs                       1       1        0   100%    /dev
 /dev/ad0s1d          54098308 1032826 48737618     2%    /usr
 tarolo               26320512       0 26320512     0%    /tarolo
 tarolo/felhasznalok  26320512       0 26320512     0%    /home

   Ezzel lenyegeben befejeztu:k a RAID-Z to:mb konfiguraciojat. Az
   allomanyrendszerek allapotara vonatkozoan a periodic(8)
   alkalmazasaval akar naponta kerhetu:nk elleno"rzest:

 # echo 'daily_status_zfs_enable="YES"' >> /etc/periodic.conf

     --------------------------------------------------------------

    20.2.2.3. A RAID-Z helyreallitasa

   Minden szoftveres RAID implementacio kinal valamilyen megoldast az
   allapotanak elleno"rzesere, ez alol tulajdonkeppen a ZFS sem
   kivetel. A RAID-Z eszko:zo:k allapota a ko:vetkezo" paranccsal
   kerdezheto" le:

 # zpool status -x

   Ezt az u:zenetet lathatjuk, amikor minden tarolo kifogastalanul
   mu"ko:dik es semmilyen problema sincs:

 all pools are healthy

   Ha viszont valamilyen gond lenne valamelyik lemezzel, peldaul
   leallt, akkor az elo"bbi parancs eredmenye ehhez lesz hasonlo:

   pool: tarolo
  state: DEGRADED
 status: One or more devices has been taken offline by the administrator.
         Sufficient replicas exist for the pool to continue functioning in a
         degraded state.
 action: Online the device using 'zpool online' or replace the device with
         'zpool replace'.
  scrub: none requested
 config:

         NAME        STATE     READ WRITE CKSUM
         tarolo      DEGRADED     0     0     0
           raidz1    DEGRADED     0     0     0
             da0     ONLINE       0     0     0
             da1     OFFLINE      0     0     0
             da2     ONLINE       0     0     0

 errors: No known data errors

   A valasz szerint az eszko:zt az adminisztrator allitotta le. Ez
   ennel a peldanal valoban igaz. Lemezeket a ko:vetkezo" modon lehet
   leallitani:

 # zpool offline tarolo da1

   Igy miutan leallitottuk a rendszert, a da1 eszko:z cserelheto". A
   rendszer soron ko:vetkezo" inditasakor ezzel a paranccsal tudjuk
   jelezni logikailag is a lemez cserejet:

 # zpool replace tarolo da1

   Nezzu:k meg ujra a to:mb allapotat, de ezuttal a -x kapcsolo
   megadasa nelku:l, mivel csak igy fogjuk latni:

 # zpool status tarolo
  pool: tarolo
  state: ONLINE
  scrub: resilver completed with 0 errors on Sat Aug 30 19:44:11 2008
 config:

         NAME        STATE     READ WRITE CKSUM
         tarolo      ONLINE       0     0     0
           raidz1    ONLINE       0     0     0
             da0     ONLINE       0     0     0
             da1     ONLINE       0     0     0
             da2     ONLINE       0     0     0

 errors: No known data errors

   A pelda szerint minden megfelelo"en mu"ko:dik.

     --------------------------------------------------------------

    20.2.2.4. Az adatok elleno"rzese

   Elo"zetesen mar szo esett rola, hogy a ZFS kepes a tarolt adatok
   sertetlensegenek elleno"rzesere. Az uj allomanyrendszerek
   letrehozasanal ez a leheto"seg automatikusan aktivalodik, de
   tetszes szerint letilthato:

 # zfs set checksum=off tarolo/felhasznalok

   Ez a lepes viszont nem feltetlenu:l jo do:ntes, mivel az
   adatintegritas megtartasahoz felhasznalt elleno"rzo" o:sszegek
   nagyon keves helyet foglalnak es megleheto"sen hasznosak. Emellett
   semmilyen eszlelheto" lassulast nem okoznak az allomanyrendszer
   hasznalata soran. Ha engedelyezzu:k, a ZFS ilyen elleno"rzo"
   o:sszegek segitsegevel folyamatosan figyelni tudja az adatok
   epseget. Ezt az elleno"rzest a scrub paranccsal valthatjuk ki.
   Nezzu:k meg peldaul a tarolo eseteben:

 # zpool scrub tarolo

   Ez a vizsgalat a tarolt adatok mennyisegeto"l fu:ggo"en nagyon
   sokaig is eltarthat, illetve rengeteg lemezmu"veletet foglal
   magaban, ezert egyszerre csak egy ilyen futtatasa javasolt. Miutan
   befejezo"do:tt, a tarolo allapota az eredmenyenek megfelelo"en
   frissu:l, amelyet ko:zvetlenu:l utana le is kerdezhetu:nk:

 # zpool status tarolo
  pool: tarolo
  state: ONLINE
  scrub: scrub completed with 0 errors on Sat Aug 30 19:57:37 2008
 config:

         NAME        STATE     READ WRITE CKSUM
         tarolo      ONLINE       0     0     0
           raidz1    ONLINE       0     0     0
             da0     ONLINE       0     0     0
             da1     ONLINE       0     0     0
             da2     ONLINE       0     0     0

 errors: No known data errors

   A peldaban lathato az utolso elleno"rzes ideje. Ezen leheto"seg
   hasznalataval hosszu ido"n keresztu:l szavatolni tudjuk az
   adataink epseget.

   A Z allomanyrendszerrel kapcsolatos tovabbi beallitasi
   leheto"segekro"l a zfs(8) es zpool(8) man oldalakon olvashatunk.

     --------------------------------------------------------------

                   Fejezet 21. A Vinum ko:tetkezelo"

   Az eredeti valtozatot irta:Greg Lehey.

21.1. Attekintes

   Nem szamit, milyen lemezeink is vannak, ugyanis mindig adodnak
   velu:k kapcsolatban gondjaink:

     * Kicsik.

     * Lassuk.

     * Nem eleg megbizhatoak.

   Ezekre a problemakra javasoltak es meg is valositottak szamos
   megoldast. A felhasznalok egy resze altalaban ugy vedekezik
   ellenu:k, hogy to:bb, gyakran redundansan tarolo lemezt hasznal. A
   ku:lo:nfele kartyak es hardveres RAID-vezerlo"k tamogatasa mellett
   a FreeBSD alaprendszereben megtalalhato egy blokkos
   eszko:zmeghajtokent a Vinum ko:tetkezelo" is, amellyel virtualis
   lemezmeghajtokat lehet letrehozni. Tehat a Vinum egy olyan un.
   ko:tetkezelo", vagyis virtualis lemezkezelo", ami az emlitett
   harom problemara probal megoldast adni. A Vinum a hagyomanyos
   lemezes tarolasnal joval nagyobb rugalmassagot, teljesitmenyt es
   megbizhatosagot biztosit, valamint ismeri a RAID-0, RAID-1 es
   RAID-5 modelleket ku:lo:n-ku:lo:n es kombinalva is.

   Ebben a fejezetben o:sszefoglaljuk a hagyomanyos lemezes tarolas
   jellegzetes problemait es bemutatjuk a Vinum ko:tetkezelo"t.

     Megjegyzes: A FreeBSD 5-o:s verziojatol kezdve a Vinumot
     ujrairtak a GEOM-nak megfelelo"en (19 fejezet), megtartva az
     eredeti elgondolasokat, elnevezeseket es a lemezen tarolt
     metaadatok formatumat. Ezt az ujrairt valtozatot nevezik
     gvinumnak (GEOM vinum). A szo:vegben a Vinumra kizarolag csak
     altalanossagban hivatkozunk, fu:ggetlenu:l az
     implementaciojatol. Most mar az o:sszes parancsot a gvinum
     hasznalataval kell kiadni, illetve a hozzatartozo modul neve
     vinum.ko-rol geom_vinum.ko-ra valtozott es a megfelelo"
     eszko:zleirok a /dev/vinum ko:nyvtar helyett a /dev/gvinum
     ko:nyvtarban talalhatoak. A FreeBSD 6. verziojatol pedig a regi
     Vinum implementacio to:bbe mar nem is resze az alaprendszernek.

     --------------------------------------------------------------

21.2. Kicsik a lemezeink

   A lemezek kapacitasa ugyan no:vekszik, de velu:k egyu:tt a
   tarigenyek is. Ezert gyakran erezzu:k ugy, hogy a
   rendelkezesu:nkre allo lemezek tarkapacitasat meghalado
   allomanyrendszerre lenne szu:ksegu:nk. Ketsegtelen, hogy ez a
   problema messze nem akkora jelento"segu", mint peldaul tiz evvel
   ezelo"tt, de meg mindig fennall. Egyes rendszerek ezt ugy hidaltak
   at, hogy letrehoztak egy olyan absztrakt eszko:zt, amely az
   adatokat to:bb lemezen tarolja el.

     --------------------------------------------------------------

21.3. A hozzaferesi ido"k szu"k keresztmetszetei

   Napjaink rendszerei szinte allandoan egyszerre to:bb adathoz is
   hozza akarnak ferni. Peldaul egy nagy forgalmu FTP vagy HTTP
   szerver to:bb 100 Mbit/s sebessegu" kapcsolattal is csatlakozhat a
   vilaghalohoz, amelyeken keresztu:l parhuzamosan to:bbezernyi
   tranzakciot is folytathat, ami jelento"sen meghaladja a legto:bb
   lemez atlagos atviteli sebesseget.

   A jelenleg kaphato lemezek soros adatatviteli sebessege egeszen
   70 MB/s-ig is terjedhet, de ennek az erteknek keves a jelento"sege
   olyan ko:rnyezetekben, ahol to:bb, egymastol fu:ggetlenu:l futo
   program probal egyszerre hozzaferni, hiszen ilyen esetekben csak a
   to:redeket kepesek elerni. Ilyenkor sokkal erdekesebb a lemezt
   kezelo" alrendszer szempontjabol nezni a problemat: igy az egyes
   adatatviteli keresek terhelese lesz a meghatarozo parameter,
   vagyis az az ido", amit a keres teljesiteseben erintett meghajtok
   elto:ltenek a feldolgozassal.

   Barmelyik kerest is vesszu:k, a kiszolgalashoz a meghajtonak
   elo"szo:r a megfelelo" helyre kell mozgatnia az iro/olvaso
   fejeket, meg kell varni a fej alatt elhalado elso" szektort, majd
   vegrehajtani a megfelelo" mu"veletet. Ezek a mu"veletek
   szetvalaszthatatlanok: semmi ertelme nincs megszakitani ezeket.

   Tekintsu:nk egy atlagosnak mondhato, nagyjabol 10 kB meretu"
   adatatvitelt: a legujabb nagyteljesitmenyu" lemezek atlagosan
   3,5 ms alatt kepesek pozicionalni a fejeket. A leggyorsabb lemezek
   15 000  fordulatot tesznek meg percenkent (RPM), igy az atlagos
   forgasi kesleltetes (egy fel fordulat ideje) 2 ms. 70 MB/s-os
   sebesseg mellett az atvitel maga megko:zelito"leg 150 ms, ami
   szinte elhanyagolhato a pozicionalas idejehez kepest. Ilyen
   esetekben a tenyleges adatatviteli sebesseg 1 MB/s-nel alig
   valamivel to:bbre esik vissza, es tisztan latszik, hogy ero"sen
   fu:gg az atvitt adat mennyisegeto"l.

   A hagyomanyos es kezenfekvo" megoldasa ennek a problemanak "meg
   to:bb cseve" hasznalata: egyetlen nagy lemez helyett alkalmazzunk
   to:bb kisebb, de azonos tarkapacitasu lemezt. Mindegyik lemez
   kepes egymastol fu:ggetlenu:l mozgatni a fejeiket es az adatokat,
   aminek ko:szo:nheto"en a tenyleges adatatvitel merteke nagyjabol a
   lemezek szamaval aranyosan no:vekszik.

   Az adatatvitelben beko:vetkezo" javulas pontos aranya
   termeszetesen kisebb, mint a lemezek szama: habar az egyes
   meghajtok kepesek parhuzamosan mozgatni az adatokat, semmilyen
   modon garantalhatjuk, hogy a keresek egyenletesen oszlanak el
   ko:ztu:k. Emiatt szinte elkeru:lhetetlen, hogy az egyik meghajtot
   nagyobb terheles erje, mint a masikat.

   A lemezekre eso" terheles egyenletessege ero"sen fu:gg attol,
   hogyan osztjuk el az adatokat a meghajtok ko:zo:tt. Az itt
   hasznalt peldaban a lemezen tarolt adatokat egy ko:nyv oldalaikent
   erdemes elkepzelni, vagyis rengeteg szam szerint cimezheto"
   adatszektorkent. A virtualis lemezt ennek megfelelo"en a
   legegyszeru"bben ugy tudjuk felosztani az egymas utan ko:vetkezo"
   fu:ggetlen fizikai lemezek merete szerint es igy hasznalni, mintha
   egy nagy ko:nyvet kisebb reszekre teptu:nk volna. Ezt a modszert
   nevezik o:sszefu"zesnek, es elo"nye, hogy a resztvevo" lemezeknek
   nem kell azonos meretu"eknek lenniu:k. Ez a megoldas remeku:l
   mu"ko:dik abban az esetben, amikor a virtualis lemez hozzaferesei
   egyenletesen oszlanak el annak teljes teru:leten. Amikor viszont
   az eleres csak egy kisebb teru:letre korlatozodik, kevesebb
   javulas tapasztalhato. A 21-1 Abra mutatja be lemezek egy ilyen
   o:sszefu"zo:tt konfiguraciojat.

   Abra 21-1. Az o:sszefu"zo:tt szervezesi mod

   Feloszthatjuk a virtualis lemezu:nket kisebb azonos meretu"
   darabokra is, melyeket ku:lo:nbo:zo" eszko:zo:ko:n sorosan
   tarolunk el. Peldaul az elso" 256 szektort eltaroljuk az elso"
   lemezen, majd a ko:vetkezo" 256 szektort a ko:vetkezo" lemezen es
   igy tovabb. Az utolso lemez kito:ltese utan az egesz folyamat
   ismetlo"dik, egeszen az o:sszes lemez megto:lteseig. Ezt a
   lekepezest csikozasnak ("striping") vagy RAID-0-nak nevezzu:k
   [12]. A csikozas hasznalata soran valamivel bonyolultabba valik az
   adatok megtalalasa es to:bbletmunkat is jelenthet olyan esetekben,
   amikor az adatatvitel to:bb lemezt is erint, de ezzel egyido"ben
   sokkal jobban szetosztja a terhelest a lemezek ko:zo:tt. A 21-2
   Abra mutatja be a lemezek csikozott szervezeset.

   Abra 21-2. A csikozott szervezesi mod

     --------------------------------------------------------------

21.4. Adatintegritas

   A modern lemezhajtok utolso fontos problemaja, hogy nem elegge
   megbizhatoak. Annak ellenere, hogy a lemezek ezen a teren
   megleheto"sen sokat fejlo"dtek az utobbi par evben, egy szervernek
   meg mindig ezek azok a ko:zponti reszei, amelyek a leginkabb
   hajlamosak a meghibasodasra. Amikor ez beko:vetkezik, a hatasa
   akar egy katasztrofaval is felerhet: a seru:lt lemezmeghajtok
   csereje es az adatok visszaallitasa napokat is igenybe vehet.

   Ennek a problemanak a hagyomanyos megko:zelitese lenne a
   tu:kro:zes ("mirroring"), vagyis amikor ugyanarrol az adatrol
   tartunk ket peldanyt ket eltero" fizikai hardveren. A RAID-szintek
   beko:szo:ntevel ezt a technikat RAID level 1-nak vagy RAID-1-nek
   is nevezik. Amikor irunk a ko:tetre, mindenhova irunk, az olvasas
   pedig barmelyik eszko:zro"l elvegezheto". Igy ha az egyik meghajto
   to:nkremenne, egy masikon meg mindig megtalalhato az o:sszes adat.

   A tu:kro:zes ket problemat vet fel:

     * Ar. Legalabb ketszer annyiba keru:l, mint a nem redundansan
       tarolo megoldasok.

     * Teljesitmenycso:kkenes. Mivel az irast minden meghajton vegre
       kell hajtani, legalabb ketszer annyi savszelesseget is
       felemeszt, mint a nem tu:kro:zo:tt ko:tetek eseten. Az olvasas
       viszont nem veszit a sebessegebo"l: so"t, meg gyorsabbnak is
       tu"nhet.

   Az adatintegritas mego"rzesere egy masik megoldas a paritas
   hasznalata, melyet a 2, 3, 4 es 5 RAID-szintek valositanak meg.
   Ezek ko:zu:l talan a RAID-5 a legerdekesebb. A Vinumban egy olyan
   csikozott szervezesi modkent valositottak meg, ahol minden csikbol
   egy blokk az o:sszes to:bbi paritasi informaciojat tartalmazza. A
   RAID-5 altal megvalositott szervezes hasonlit a csikozashoz,
   azonban a RAID-5-ben mindegyik csik tartalmaz egy paritasi
   informaciot is. Tehat a Vinumban, ahogy azt RAID-5 a megko:veteli,
   a paritast tarolo blokkok helye az egyik csikrol a masikra
   valtozik. Az adatblokkokban talalhato szamok relativ blokkszamokat
   jelo:lnek.

   Abra 21-3. A RAID-5 szervezesi mod

   A RAID-5-nek a tu:kro:zeshez kepest megvan az az elo"nye, hogy
   jelento"sen kevesebb tarhelyet igenyel. Az olvasas hasonlo a
   csikozott szervezesekehez, azonban az iras joval lassabb, ko:zel
   25%-a az olvasas sebessegenek. Az egyik meghajto meghibasodasa
   eseten a to:mb cso:kkentett modban meg kepes folytatni a
   mu"ko:dest: a fennmarado meghajtokrol tovabbra is a megszokott
   modon lehet olvasni, viszont a seru:lt meghajtorol olvasott
   adatokat folyamatosan javitani kell a to:bbiro"l szarmazo
   segedinformaciok szerint.

     --------------------------------------------------------------

21.5. A Vinum objektumai

   A targyalt problemak orvoslasara a Vinumban egy negyszintu"
   objektumhierarchiat alakitottak ki:

     * A legjobban eszlelheto" objektum a virtualis lemez, amelyet
       ko:tetnek (volume) nevezu:nk. Ez a ko:tet lenyegeben
       ugyanazokkal a tulajdonsagokkal rendelkezik, mint egy UNIX-os
       lemezmeghajto, habar akadnak finomabb ku:lo:nbsegek. Merete
       korlatlan lehet.

     * A ko:tetek erekbo"l (plex) allnak, melyek a ko:tet teljes
       teru:letet kepviselik. Ennelfogva a hierarchia ezen szintje
       nyujtja a redundanciat. Az ereket legegyszeru"bben a
       tu:kro:zo:tt to:mbben helyet foglalo lemezekkent tudjuk
       elkepzelni, melyek ugyanazt az adatot tartalmazzak.

     * Mivel a Vinum a UNIX lemezes tarolast megvalosito
       alrendszereben helyezkedik el, a to:bblemezes erek
       felepitesehez hasznalhatnank a UNIX-os particiokat, azonban
       ehhez a feladathoz nem elegge rugalmasak, mivel a UNIX-os
       lemezek csak korlatozott szamu particiot tartalmazhatnak. A
       Vinum ehelyett allemeznek (subdisk) nevezett folytonos
       teru:letekre osztja fel az egyes UNIX-os particiokat (a
       meghajtokat), melyeket aztan az erek letrehozasara hasznal
       fel.

     * A Vinum altal letrehozott meghajtokon (drive) levo" allemezek
       lesznek valodi UNIX-os particiok. A Vinum-meghajtok
       tetszo"leges szamu allemezt tartalmazhatnak. Eltekintve a
       meghajto elejen talalhato apro teru:letto"l, melyen a
       beallitasokra es az allapotra vonatkozo informaciok
       tarolodnak, az egesz meghajto felhasznalhato adatok
       tarolasara.

   A most ko:vetkezo" szakaszokban ismertetju:k, hogy ezek az
   objektumok milyen modon szolgaltatjak a Vinum reszero"l elvart
   funkciokat.

     --------------------------------------------------------------

  21.5.1. A ko:tetek merete

   Az erek kepesek a Vinum konfiguraciojaban talalhato to:bb
   ku:lo:nbo:zo" meghajton elhelyezkedo" allemezeket is nyalabba
   ko:tni. Ennek ko:vetkezmenyekeppen az egyes meghajtok merete nem
   korlatozza az erek meretet, emiatt a ko:tetet sem.

     --------------------------------------------------------------

  21.5.2. Redundans adattarolas

   A Vinum a tu:kro:zest to:bb er egyetlen ko:tette olvasztasaval
   hozza letre. Az erek mindegyike a ko:teten talalhato adatokat
   kepviseli. Egy ko:tet legalabb egy, legfeljebb nyolc eret
   tartalmazhat.

   Habar egy er egy ko:tet teljes adatat abrazolja, elo"fordulhat
   olyan eset, hogy bizonyos reszei hianyoznak fizikai, kialakitasi
   (nem tarsitottunk allemezeket hozzajuk) okokbol adodoan vagy
   veletlenu:l (a hozzatartozo lemezteru:letek seru:ltek). Amig
   legalabb egy er kepes a ko:tet teljes tartalmat szolgaltatni,
   addig a ko:tet teljesen epnek tekintheto".

     --------------------------------------------------------------

  21.5.3. Teljesitmeny

   A Vinum az o:sszefu"zest es a csikozast is egyarant megvalositja
   az erek szintjen:

     * Az o:sszefu"zo:tt er allemezek teru:leteibo"l epitkezik.

     * A csikozott er felosztja az adatokat az allemezek ko:zo:tt. Az
       allemezek mindegyikenek ugyanakkoranak kell lennie, es
       legalabb ket allemeznek lennie kell, hogy elterjen az
       o:sszefu"zo:tt erto"l.

     --------------------------------------------------------------

  21.5.4. Hogyan szervezzu:k az ereket?

   A FreeBSD 7.2 verziojaban ket fajta erezesi megoldast talalhatunk:

     * Az o:sszefu"zo:tt erek a legrugalmasabbak: tetszo"leges szamu
       allemezt tartalmazhatnak, az allemezek merete pedig elterhet.
       Az er ujabb allemezek hozzaadasaval tovabb bo"vitheto".
       Kevesebb processzorido"t igenyel, mint egy csikozott er, habar
       a ketto" to:bbletko:ltsege ko:zti elteres nem merheto".
       Masreszro"l azonban nagyon erzekenyek a forgalmasabb pontokra,
       vagyis amikor az egyik lemez folyamatosan hasznalatban van,
       miko:zben a to:bbi u:resen jar.

     * A csikozott (RAID-0) erek legnagyobb elo"nye, hogy cso:kkentik
       a forgalmasabb pontok kialakulasat: a megfelelo" meretu"
       csikszelesseg (ami kb. 256 kB) valasztasaval el tudjuk
       egyengetni a to:mbben dolgozo meghajtok terheleset. Ennek a
       megko:zelitesnek a hatranya (reszben) a sokkal o:sszetettebb
       kod, valamint az allemezekre vonatkozo megszoritas, amely
       szerint meg kell egyezniu:k a meretu:knek, illetve az erhez
       annyira bonyolult ujabb allemezeket kapcsolni, hogy a Vinum
       jelenleg nem is kepes ra. Ezeken kivu: a Vinum meg tamaszt egy
       trivialis igenyt is: a csikozott erben legalabb ket allemeznek
       lennie kell, mivel maskepp nem ter el egy o:sszefu"zo:tt
       erto"l.

   A 21-1 Tablazat foglalja o:ssze az egyes erezesek elo"nyeit es
   hatranyait.

   Tablazat 21-1. Vinum erezesek

   Erezes tipusa  Legkevesebb Bo"vitheto" Megegyezo"    Alkalmazas    
                    allemez                 meret    
                                                     Sok adat         
                                                     tarolasa, ahol a 
                                                     hangsuly a       
   o:sszefu"zo:tt 1           igen        nem        rugalmassagon es 
                                                     a mersekelt      
                                                     teljesitmenyen   
                                                     van.             
                                                     Nagy             
                                                     teljesitmeny,    
   csikozott      2           nem         igen       nagy mennyisegu" 
                                                     egyideju"        
                                                     hozzaferes       
                                                     mellett          

     --------------------------------------------------------------

21.6. Peldak

   A Vinum a rendszerben ismert objektumokkal kapcsolatos
   informaciokat egy konfiguracios adatbazisban tartja fenn.
   Kezdetben a felhasznalo egy vagy to:bb konfiguracios allomany
   segitsegevel hozza letre ezt az adatbazist a gvinum(8)
   segedprogrammal. A Vinum ezt a konfiguracios adatbazist bemasolja
   mindegyik iranyitasa alatt allo slice-ba (melyek a Vinum
   eszko:znek hiv). Az adatbazis minden egyes allapotvaltas folyaman
   frissu:l, igy egy ujrainditas utan minden egyes Vinum-objektum
   allapota pontosan helyreallitodik.

     --------------------------------------------------------------

  21.6.1. A konfiguracios allomany

   A konfiguracios allomany irja le az egyes objektumokat. Egy
   egyszeru"bb ko:tet definicioja igy nezhet ki:

     drive a device /dev/da3h
     volume myvol
       plex org concat
         sd length 512m drive a

   Ez az allomany negy Vinum-objektumot definial:

     * A drive kezdetu" sor adja meg a lemez particiojat
       (meghajtojat) es a hardveren levo" elhelyezkedeset. Az a
       szimbolikus nevet kapta. A szimbolikus es a konkret
       eszko:znevek szetvalasztasaval leheto"ve valik, hogy a lemezek
       felreertesek nelku:l atkeru:lhessek egyik helyro"l a masikra.

     * A volume kezdetu" sor adja meg a ko:tetet. Itt az egyetlen
       szu:kseges jellemzo" a nev, ami ebben az esetben a myvol.

     * A plex kezdetu" sor adja meg az eret. Itt az egyetlen
       szu:kseges parameter a szervezesi mod, ami ebben az esetben a
       concat (o:sszefu"zo:tt). Nevet nem kell megadnunk, mivel a
       rendszer automatikusan letrehoz egy nevet a ko:tet nevebo"l a
       .px utotag hozzaadasaval, ahol az x az er szama lesz a
       ko:teten belu:l. Emiatt a most definialt er neve myvol.p0
       lesz.

     * Az sd kezdetu" sor adja meg az allemezt. Itt legalabb meg kell
       adnunk a meghajtonak a nevet, ahol tarolni akarjuk, ill. a
       meretet. Ahogy mar emlitettu:k az ereknel is, nevet nem
       ko:telezo" megadnunk, mivel a rendszer magatol rendel hozza
       nevet, amit a hozzatartozo er nevebo"l szarmaztat, hozzaadja a
       .sx utotagot, ahol az x az allemez eren belu:li sorszama lesz.
       Ennek ko:vetkezteben a Vinum ennek az allemeznek a myvol.p0.s0
       nevet adja.

   Miutan a gvinum(8) feldolgozta ezt az allomanyt, az alabbi
   kimenetet fogja adni:

       # gvinum -> create config1
       Configuration summary
       Drives:         1 (4 configured)
       Volumes:        1 (4 configured)
       Plexes:         1 (8 configured)
       Subdisks:       1 (16 configured)

         D a                     State: up       Device /dev/da3h        Avail: 2061/2573 MB (80%)

         V myvol                 State: up       Plexes:       1 Size:        512 MB

         P myvol.p0            C State: up       Subdisks:     1 Size:        512 MB

         S myvol.p0.s0           State: up       PO:        0  B Size:        512 MB

   Ez a kimenet a gvinum(8) egyszeru" listazasi formatumat mutatja.
   Grafikusan a 21-4 Abra mutatja be.

   Abra 21-4. Egyszeru" Vinum-ko:tet

   Ezen es az ezt ko:veto" abran egy ko:tetet lathatunk, amely ereket
   tartalmaz, amelyek pedig allemezeket. Ebben az alapveto" peldaban
   a ko:tet egyetlen eret tartalmaz, amiben pedig egyetlen allemez
   van.

   Az itt bemutatott ko:tetnek nincs semmilyen elo"nye a hagyomanyos
   lemezparticionalashoz kepest. Egyetlen eret tartalmaz, tehat nem
   is redundans. Az er egyetlen allemezt tartalmaz, tehat nem ter el
   a megszokott lemezparticiok helyfoglalasatol sem. A ko:vetkezo"
   szakaszokban sokkal erdekesebb konfiguracios modszereket is
   illusztralunk.

     --------------------------------------------------------------

  21.6.2. Megno:velt rugalmassag: tu:kro:zes

   A ko:tetek rugalmassaga tu:kro:zessel no:velheto". Egy
   tu:kro:zo:tt ko:tet kiosztasa soran feltetlenu:l gondoskodnunk
   kell arrol, hogy az egyes erekhez tartozo allemezek eltero"
   meghajtokon talalhatoak, igy az esetleges meghibasodasok nem
   karositjak mind a ket eret. Az alabbi konfiguracioban egy ko:tetet
   tu:kro:zu:nk:

         drive b device /dev/da4h
         volume mirror
       plex org concat
         sd length 512m drive a
           plex org concat
             sd length 512m drive b

   Ebben a peldaban mar nem kellett ujra megadnunk az a meghajtot,
   mivel a Vinum figyelemmel kiseri az o:sszes objektumot a sajat
   konfiguracios adatbazisaban. A definicio feldolgozasa utan a
   konfiguracio igy fog kinezni:

         Drives:         2 (4 configured)
         Volumes:        2 (4 configured)
         Plexes:         3 (8 configured)
         Subdisks:       3 (16 configured)

         D a                     State: up       Device /dev/da3h        Avail: 1549/2573 MB (60%)
         D b                     State: up       Device /dev/da4h        Avail: 2061/2573 MB (80%)

     V myvol                 State: up       Plexes:       1 Size:        512 MB
     V mirror                State: up       Plexes:       2 Size:        512 MB
 
     P myvol.p0            C State: up       Subdisks:     1 Size:        512 MB
     P mirror.p0           C State: up       Subdisks:     1 Size:        512 MB
     P mirror.p1           C State: initializing     Subdisks:     1 Size:        512 MB
 
     S myvol.p0.s0           State: up       PO:        0  B Size:        512 MB
         S mirror.p0.s0          State: up       PO:        0  B Size:        512 MB
         S mirror.p1.s0          State: empty    PO:        0  B Size:        512 MB

   A 21-5 Abra ugyanezt a szerkezetet grafikusan is.

   Abra 21-5. Tu:kro:zo:tt Vinum-ko:tet

   Ebben a peldaban minden er tartalmazza a teljes 512 MB-os
   teru:letet. Ahogy a korabbi pelda eseten, itt is mindegyik er csak
   egyetlen allemezt tartalmaz.

     --------------------------------------------------------------

  21.6.3. A teljesitmeny javitasa

   Az elo"bbi peldaban szereplo" tu:kro:zo:tt ko:tet egy
   tu:kro:zetlen ko:tetnel mar jobban ellenall a hibaknak, azonban a
   teljesitmenye is kisebb. A ko:teten minden egyes iras mind a ket
   meghajtora ervenyesu:l, ezaltal a lemezek teljes savszelesseget
   nagyobb aranyban hasznalja. A teljesitmenyre vonatkozo
   megfontolasaink egy masik megko:zelitest kivannak meg: a
   tu:kro:zes helyett inkabb csikozzuk szet az adatot a leheto"
   legto:bb lemezen. Az alabbi konfiguracio egy olyan ko:tetet mutat
   be, ahol egy eret negy lemezmeghajtoan keresztu:l csikozunk:

         drive c device /dev/da5h
         drive d device /dev/da6h
         volume stripe
         plex org striped 512k
           sd length 128m drive a
           sd length 128m drive b
           sd length 128m drive c
           sd length 128m drive d

   Mint ahogy azt mar korabban is emlitettu:k, nem szu:kseges meg
   egyszer megadni azokat a meghajtokat, amiket a Vinum mar ismer. A
   definicio feldolgozasa utan a konfiguracionk nagyjabol igy nez ki:

         Drives:         4 (4 configured)
         Volumes:        3 (4 configured)
         Plexes:         4 (8 configured)
         Subdisks:       7 (16 configured)

     D a                     State: up       Device /dev/da3h        Avail: 1421/2573 MB (55%)
     D b                     State: up       Device /dev/da4h        Avail: 1933/2573 MB (75%)
     D c                     State: up       Device /dev/da5h        Avail: 2445/2573 MB (95%)
     D d                     State: up       Device /dev/da6h        Avail: 2445/2573 MB (95%)

     V myvol                 State: up       Plexes:       1 Size:        512 MB
     V mirror                State: up       Plexes:       2 Size:        512 MB
     V striped               State: up       Plexes:       1 Size:        512 MB

     P myvol.p0            C State: up       Subdisks:     1 Size:        512 MB
     P mirror.p0           C State: up       Subdisks:     1 Size:        512 MB
     P mirror.p1           C State: initializing     Subdisks:     1 Size:        512 MB
     P striped.p1            State: up       Subdisks:     1 Size:        512 MB

     S myvol.p0.s0           State: up       PO:        0  B Size:        512 MB
     S mirror.p0.s0          State: up       PO:        0  B Size:        512 MB
     S mirror.p1.s0          State: empty    PO:        0  B Size:        512 MB
     S striped.p0.s0         State: up       PO:        0  B Size:        128 MB
     S striped.p0.s1         State: up       PO:      512 kB Size:        128 MB
     S striped.p0.s2         State: up       PO:     1024 kB Size:        128 MB
     S striped.p0.s3         State: up       PO:     1536 kB Size:        128 MB

   Abra 21-6. Csikozott Vinum-ko:tet

   Ez a ko:tet a 21-6 Abraban lathato. A csikok so:tetedese jelzi a
   helyu:ket az er teru:leteben: a vilagosabbak elo:l, a so:tetebbek
   hatul szerepelnek.

     --------------------------------------------------------------

  21.6.4. Rugalmassag es teljesitmeny

   Megfelelo" hardver birtokaban lehet olyan ko:teteket is epiteni,
   amelyek mind megno:velt rugalmassagot, mind pedig megno:velt
   teljesitmenyt mutatnak a szabvanyos UNIX-os particiokhoz kepest.
   Ennek a konfiguracios allomanya igy nezne ki:

         volume raid10
       plex org striped 512k
         sd length 102480k drive a
         sd length 102480k drive b
         sd length 102480k drive c
         sd length 102480k drive d
         sd length 102480k drive e
       plex org striped 512k
         sd length 102480k drive c
         sd length 102480k drive d
         sd length 102480k drive e
         sd length 102480k drive a
         sd length 102480k drive b

   A masodik er allemezei el vannak tolva az elso" er allemezeito"l
   ket meghajtonyival. Ez segit megelo"zni, hogy az irasi mu"veletek
   ne ugyanarra az allemezre vonatkozznak, meg akkor is, ha az
   adatatvitel ket meghajton is keresztu:livel.

   A 21-7 Abra illusztralja ennek a ko:tetnek a szerkezetet.

   Abra 21-7. Tu:kro:zo:tt, csikozott Vinum-ko:tet

     --------------------------------------------------------------

21.7. Az objektumok elnevezese

   Korabban mar megismerhettu:k, hogy a Vinum alapertelmezett neveket
   tarsit az erekhez es az allemezekhez, habar ezek a nevek
   felu:lbiralhatoak. Ez viszont egyaltalan nem ajanlott, mivel mar a
   VERITAS ko:tetkezelo", ahol tetszo"leges neveket rendelhetu:nk az
   objektumokhoz, hasznalata soran kideru:lt, hogy akkora merteku"
   rugalmassagot nem kinal fel, mint amennyi zavart kepes okozni.

   A nevek tartalmazhatnak barmilyen nem u:res karaktert, azonban
   erdemes inkabb csak betu"ket, szamjegyeket es az alahuzast
   hasznalni. A ko:tetek, erek es allemezek nevei akar 64
   karakteresek is lehetnek, a meghajtok nevei pedig 32 karakteresek.

   A Vinum objektumai a /dev/gvinum ko:nyvtaron belu:li hierarchiaban
   helyezkednek el eszko:zleirokkent. Az iment emlitett
   peldakonfiguracio hatasara a ko:vetkezo" eszko:zleirok jo:nnek
   letre:

     * Megjegyzes: Ez a resz csak a Vinum korabbi, elavult
         implementaciojara vonatkozik.

       A /dev/vinum/control es /dev/vinum/controld nevu"
       vezerlo"eszko:zo:k, melyeket a gvinum(8) es a Vinum demon
       hasznal.

     * Mindegyik ko:tethez egy eszko:zleiro tartozik. Ezek a Vinum
       szamara a ko:zponti eszko:zo:k, ezert az elo"bbi konfiguracio
       reven megjelennek a /dev/gvinum/myvol, /dev/gvinum/mirror,
       /dev/gvinum/striped, /dev/gvinum/raid5 es /dev/gvinum/raid10
       eszko:zo:k.

     * Megjegyzes: Ez a resz csak a Vinum korabbi, elavult
         implementaciojara vonatkozik.

       Az egyes meghajtokhoz tartozo leirok a /dev/vinum/drive
       ko:nyvtarban talalhatoak. Ezek valojaban szimbolikus linkek a
       megfelelo" lemezes eszko:zo:kre.

     * Minden ko:tethez ko:zvetlen leirok tartoznak /dev/gvinum
       ko:nyvtarban.

     * Az egyes erek es allemezek eszko:zleiroi a /dev/gvinum/plex es
       /dev/gvinum/sd ko:nyvtarakban jelennek meg.

   Peldaul tekintsu:k most az alabbi konfiguracios allomanyt:

         drive drive1 device /dev/sd1h
         drive drive2 device /dev/sd2h
         drive drive3 device /dev/sd3h
         drive drive4 device /dev/sd4h
     volume s64 setupstate
       plex org striped 64k
         sd length 100m drive drive1
         sd length 100m drive drive2
         sd length 100m drive drive3
         sd length 100m drive drive4

   Az allomany feldolgozasa utan az eszko:zleirokat a gvinum(8) az
   alabbi modon szervezi a /dev/gvinum ko:nyvtarban:

         drwxr-xr-x  2 root  wheel       512 Apr 13 16:46 plex
         crwxr-xr--  1 root  wheel   91,   2 Apr 13 16:46 s64
         drwxr-xr-x  2 root  wheel       512 Apr 13 16:46 sd

     /dev/vinum/plex:
     total 0
     crwxr-xr--  1 root  wheel   25, 0x10000002 Apr 13 16:46 s64.p0

     /dev/vinum/sd:
     total 0
     crwxr-xr--  1 root  wheel   91, 0x20000002 Apr 13 16:46 s64.p0.s0
     crwxr-xr--  1 root  wheel   91, 0x20100002 Apr 13 16:46 s64.p0.s1
     crwxr-xr--  1 root  wheel   91, 0x20200002 Apr 13 16:46 s64.p0.s2
     crwxr-xr--  1 root  wheel   91, 0x20300002 Apr 13 16:46 s64.p0.s3

   Jollehet, az ereket es allemezeket nem ajanlott ku:lo:n-ku:lo:n
   elnevezni, a Vinum meghajtoknak nevet kell adni. Ezzel
   megoldhatova valik, hogy az egyes meghajtok automatikusan
   felismerheto"ek legyenek abban az esetben is, amikor fizikailag
   athelyezzu:k ezeket. A meghajtok nevei legfeljebb 32 karakteresek
   lehetnek.

     --------------------------------------------------------------

  21.7.1. Allomanyrendszerek letrehozasa

   A ko:tetek egyetlen kivetellel teljesen azonosak a lemezekkel a
   rendszer szamara. Ugyanis a UNIX-os meghajtoktol eltero"en a Vinum
   nem particionalja a ko:teteket, es ezert nem is tarolnak particios
   tablat. Ez megko:vetelte nehany lemezkezelo" segedprogram,
   leginkabb a newfs(8) modositasat, mivel azok korabban megprobaltak
   a Vinum-ko:tetek nevenek utolso betu"it egy particio
   azonositojakent ertelmezni. Peldaul egy lemezes meghajto neve
   /dev/ad0a vagy /dev/da2h alaku. Az elo"bbi az elso" (0) IDE lemez
   elso" (a) particiojat, mig az utobbi a harmadik (2) SCSI lemez
   nyolcadik (h) particiojat jelo:li. Ezzel szemben azonban a
   Vinum-ko:tetek neve /dev/gvinum/concat alaku lesz, ahol a nev
   semmilyen kapcsolatban nem all a particio nevevel.

   Hetko:znapi esetben a newfs(8) megprobalja a lemez nevet
   ertelmezni, es panaszkodik, ha nem sikeru:l. Peldaul:

 # newfs /dev/gvinum/concat
 newfs: /dev/gvinum/concat: can't figure out file system partition

   A ko:teten a newfs(8) parancs kiadasaval tudunk allomanyrendszert
   letrehozni:

 # newfs /dev/gvinum/concat

     Megjegyzes: A FreeBSD 5.0 elo"tt verzioiban a newfs(8)
     parancsnak a regi elnevezesi sema hasznalata mellett meg at kell
     adni egy -v kapcsolot is:

 # newfs -v /dev/vinum/concat

     --------------------------------------------------------------

21.8. A Vinum beallitasa

   A GENERIC rendszermag nem tartalmazza a Vinumot. Habar kesziteni
   lehet olyan rendszermagot, amelyik tamogatja a Vinumot, megsem
   ajanlott. A Vinumot a szabvanyos modon modulkent (kld) indithatjuk
   el. Meg a kldload(8) hasznalatara sincs szu:kseg, mivel a
   gvinum(8) indulasa soran elleno"rzi a modul jelenletet es
   beto:lti, ha meg nem lenne jelen.

     --------------------------------------------------------------

  21.8.1. Inditas

   A Vinum alapveto"en ugyanugy tarolja a konfiguraciokat a
   slice-okban, mint maguk a konfiguracios allomanyok. A
   konfiguracios adatbazis beolvasasa soran a Vinum felismeri azokat
   a kulcsszavakat, amelyeknek nem szabad elo"fordulniuk az
   allomanyokban. Peldaul a lemezek beallitasa tartalmazhatja a
   ko:vetkezo" szo:veget:

 volume myvol state up
 volume bigraid state down
 plex name myvol.p0 state up org concat vol myvol
 plex name myvol.p1 state up org concat vol myvol
 plex name myvol.p2 state init org striped 512b vol myvol
 plex name bigraid.p0 state initializing org raid5 512b vol bigraid
 sd name myvol.p0.s0 drive a plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 0b
 sd name myvol.p0.s1 drive b plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 1048576b
 sd name myvol.p1.s0 drive c plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 0b
 sd name myvol.p1.s1 drive d plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 1048576b
 sd name myvol.p2.s0 drive a plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 0b
 sd name myvol.p2.s1 drive b plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 524288b
 sd name myvol.p2.s2 drive c plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1048576b
 sd name myvol.p2.s3 drive d plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1572864b
 sd name bigraid.p0.s0 drive a plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 0b
 sd name bigraid.p0.s1 drive b plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 4194304b
 sd name bigraid.p0.s2 drive c plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 8388608b
 sd name bigraid.p0.s3 drive d plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 12582912b
 sd name bigraid.p0.s4 drive e plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 16777216b

   Az elo"bbiekto"l nyilvanvaloan elter abban, hogy itt mar
   megjelennek a konkret poziciokra es elnevezesekre vonatkozo
   informaciok (melyeket a felhasznalo is megadhat, azonban ezt nem
   tanacsoljuk), valamint az allapotok (ezeket nem lathatja a
   felhasznalo). A Vinum a konfiguracioban nem tarolja a meghajtokat,
   helyette a beallitott lemezes meghajtok particioin fog
   Vinum-cimkeket keresni. Ennek ko:szo:nheto"en a Vinum meg akkor is
   kepes pontosan megtalalni a meghajtokat, amikor megvaltoznak a
   hozzatartozo UNIX-os meghajtok azonositoi.

     --------------------------------------------------------------

    21.8.1.1. Automatikus inditas

     Megjegyzes: Ez a resz csak a Vinum elavult implementaciojara
     vonatkozik. A loader.conf(5) ko:zvetitesevel a Gvinum mindig
     automatikusan elindul a hozzatartozo modul beto:ltesevel
     egyu:tt. Ha a rendszerinditaskor be akarjuk to:lteni a Gvinum
     modult, akkor a /boot/loader.conf allomanyba vegyu:k fel a
     geom_vinum_load="YES" sort.

   Az alabbi sort mindenkeppen hozza kell adnunk az /etc/rc.conf
   allomanyhoz, hogy a Vinum a rendszerinditas soran automatikusan
   elinduljon:

 start_vinum="YES"               # allitsuk YES-re az inditashoz

   Hozzuk letre es irjuk bele, ha nem lenne /etc/rc.conf nevu"
   allomanyunk. Ennek hatasara a rendszer az indulas soran beto:lti a
   Vinum kld modult, es a konfiguracioban szereplo" objektumokat
   elinditja. Ez meg az allomanyrendszerek csatlakoztatasa elo"tt
   to:rtenik meg, aminek reven a Vinum-ko:teteken talalhato
   allomanyrendszereket a rendszer automatikusan at tudja vizsgalni
   az fsck(8) segitsegevel, majd csatlakoztatja ezeket.

   Amikor a Vinumot a vinum start paranccsal inditjuk el, a Vinum
   beolvassa a konfiguracios adatbazist a Vinum-meghajtok egyikero"l.
   Normal ko:ru:lmenyek ko:zo:tt mindegyik meghajton megtalalhato a
   konfiguracios adatbazis egy peldanya, ezert szinte teljesen
   mindegy, melyik meghajtot is olvassa. Egy rendszer-o:sszeomlas
   utan azonban a Vinumnak meg kell tudnia allapitania, melyik
   meghajton talalhato meg az adatbazis legfrissebb peldanya, es ezt
   kell beolvasnia. Ezutan a lemaradt meghajtokon talalhato
   adatbazispeldanyokat szinkronizalja ehhez a valtozathoz.

     --------------------------------------------------------------

21.9. Rendszerinditas Vinum-ko:tetro"l

   Olyan szamitogepeknel, ahol a teljesen tu:kro:zo:tt Vinum-alapu
   allomanyrendszereket hasznalunk, kivanatos lehet magat a
   rendszerinditashoz hasznalt allomanyrendszert is tu:kro:zni. Egy
   ilyen konfiguracio o:sszeallitasa mar messze nem annyira
   egyszeru", mint egy tetszo"leges allomanyrendszer eseten, mivel:

     * Az inditashoz hasznalt allomanyrendszernek mar a folyamat
       nagyon korai szakaszaban rendelkezesre kell allnia, ezert a
       Vinumnak mar itt elerheto"nek kell lennie.

     * A rendszerindito allomanyrendszert tartalmazo ko:teten meg ott
       kell lennie a rendszerindito kodnak es a rendszermagnak is,
       melyeket a rendszer sajat eszko:zein (peldaul ilyen a BIOS a
       PC-knel) keresztu:l kell tudnunk beolvasni, amiket viszont nem
       tudunk felkesziteni a Vinumra.

   A soronko:vetkezo" szakaszokban "rendszerindito ko:tetkent" (root
   volume) fogunk altalanossagban veve hivatkozni a
   rendszerinditashoz hasznalt allomanyrendszert tartalmazo
   Vinum-ko:tetre. Ennek megfelelo"en valoszinu"leg jo o:tlet a
   "root" nevvel azonositani ezt a ko:tetet, habar technikai
   szempontbol ezt semmi nem ko:veteli meg. Az itt felsorakozo
   peldakban azonban ezt a nevet fogjuk hasznalni.

     --------------------------------------------------------------

  21.9.1. A Vinum kello"en korai inditasa

   Ennek kivaltasahoz szamos lepest kell megtennu:nk:

     * A rendszermagnak mar el kell ernie a Vinumot a rendszerinditas
       soran. Emiatt a 21.8.1.1 Szakaszban leirt automatikus inditasi
       modszer nem alkalmazhato erre a feladatra, es a start_vinum
       parametert nem is szabad hasznalni a most ismertetendo"
       konfiguracioban. A Vinumot statikusan bele is epithetju:k a
       rendszermagba es igy allandoan elerheto", de ez altalaban nem
       kielegito" megoldas. Megoldhatjuk ugy is, ha a /boot/loader-re
       (12.3.3 Szakasz) bizzuk a vinum modul beto:lteset, meg a
       rendszermag elo"tt. Ezt az alabbi sorral valthatjuk ki a
       /boot/loader.conf allomanyban:

 geom_vinum_load="YES"

     * Megjegyzes: A Gvinum hasznalata soran az o:sszes to:bbi
         beallitas automatikusan vegrehajtodik, amint a modul
         beto:lto"dik, ezert ilyenkor csak a fentebb leirt eljarasra
         van szu:kseg. Az itt felsoroltak csak az elavult Vinum
         implementaciora vonatkoznak, csupan a regebbi tipusu
         rendszerek kedveert emlitju:k meg.

       A Vinumot nagyon koran eletre kell keltenu:nk, hiszen a
       rendszerinditashoz hasznalt allomanyrendszert tartalmazo
       ko:tetet kell elesitenu:nk. Alapertelmezes szerint a Vinum
       rendszerszinten futo resze nem keres addig semmilyen
       Vinum-ko:tetinformacioval rendelkezo" meghajtot, amig a
       rendszergazda (vagy valamelyik rendszerindito szkript) ki nem
       adja a vinum start parancsot.

         Megjegyzes: A most ko:vetkezo" bekezdesek mutatjak be a
         szu:kseges lepeseket.

       Ha hozzaadjuk a ko:vetkezo" sort a /boot/loader.conf
       allomanyhoz, akkor azzal utasithatjuk a Vinumot, hogy a
       rendszermag inditasa soran vizsgalja at az o:sszes meghajtot:

 vinum.autostart="YES"

       Nem szu:kseges megmondani a rendszermagnak, merre keresse a
       rendszerinditashoz hasznalt allomanyrendszert. A /boot/loader
       megkeresi a hozzatartozo eszko:zt a /etc/fstab allomanyban es
       atadja ezt az informaciot a rendszermagnak. Amikor a
       csatlakoztatasara keru:l sor, a rendszermag az eszko:z
       nevebo"l meg tudja allapitani, melyik eszko:zmeghajtot kerje
       meg a belso" (fo"- es al)eszko:zazonosito lekepzesehez.

     --------------------------------------------------------------

  21.9.2. A Vinum-alapu rendszerindito ko:tet elerese a rendszerto:ltes
  soran

   Mivel a jelenlegi FreeBSD rendszerto:lto" csak 7,5 KB meretu" es
   egyebkent is csak az UFS allomanyrendszerro"l tud allomanyokat
   beolvasni (mint peldaul a /boot/loadert), teljesen lehetetlen meg
   a Vinum belso" szerkezetere is megtanitani, tehat a
   Vinum-konfiguraciok ertelmezesere es maganak a rendszerindito
   ko:tet elemeinek kielemzesere. Ezert be kell vetnu:nk nehany
   tru:kko:t ahhoz, hogy a rendszerindito kod szamara a
   rendszerinditashoz hasznalhato szabvanyos "a" particio kepzetet
   keltsu:k.

   Mindez csak akkor valik elerheto"ve, ha az alabbi ko:vetelmenyeket
   teljesiti a rendszerindito ko:tet:

     * Nem lehet csikozott vagy RAID-5 tipusu.

     * Erenkent nem tartalmazhat egynel to:bb o:sszefu"zo:tt
       allemezt.

   Lathatjuk, hogy hasznos es lehetseges is to:bb eret hasznalni,
   melyek mindegyike a rendszerindito allomanyrendszer egy-egy
   masolatat tartalmazza. Az indulas folyaman azonban ezen peldanyok
   ko:zu:l csak az egyiken fogja keresni a rendszer a
   rendszerto:lto"t es a to:bbi allomanyt egeszen addig, amig a
   rendszermag magat az allomanyrendszert nem csatlakoztatja. A
   latszat kedveert az ereken belu:l talalhato allemezek
   mindegyikenek lennie kell egy sajat "a" particiojanak, amivel
   lenyegeben alkalmassa valik a rendszerinditasra. Ezeknek a hamis
   "a" particioknak nem kell feltetlenu:l a to:bbiekkel megegyezo"
   poziciokon elhelyezkedniu:k, azonban a tevedesek elkeru:lese
   erdekeben valoszinu"leg hasznos olyan Vinum-ko:teteket letrehozni,
   ahol a keletkezo" tu:kro:zo:tt eszko:zo:k szimmetrikusak.

   A rendszerindito ko:tet egyes eszko:zo:ko:n talalhato "a"
   particioit az alabbiak segitsegevel allithatjuk be:

    1. A rendszerindito ko:tet reszekent megjeleno" eszko:zo:n
       talalhato allemez helyet (az eszko:z elejeto"l szamitott
       eltolasat) es meretet elleno"rizni kell az alabbi parancs
       segitsegevel:

 # gvinum l -rv root

       Ne felejtsu:k el, hogy a Vinum az eltolasokat es mereteket
       byte-okban meri. Ezekbo"l tehat ugy nyeru:nk a bsdlabel
       hasznalatahoz szu:kseges blokkszamokat, ha ezeket elosztjuk
       512-vel.

    2. Futassuk le a

 # bsdlabel -e eszko:znev

       parancsot minden olyan eszko:zo:n, amelyik reszt vesz a
       rendszerindito ko:tet kialakitasaban. Az eszko:znev legyen a
       slice (fdisk)-tablat nem tartalmazo lemezek eseten a lemez
       neve (mint peldaul da0), vagy ellenkezo" esetben a slice neve
       (peldaul ad0s1).

       Ha mar lenne egy "a" particio az eszko:zo:n (valoszinu"leg egy
       Vinum elo"tti rendszerindito allomanyrendszert tartalmaz),
       nevezzu:k at valami masra es igy tovabbra is elerheto" marad
       (biztos, ami biztos), viszont to:bbe mar nem lesz a rendszer
       szamara alapertelmezett rendszerindito eszko:z. Az aktiv
       particiok (mint peldaul az eppen csatlakoztatott
       rendszerindito allomanyrendszer) nem nevezheto"ek at, ezert
       ezt a lepest csak akkor tudjuk megtenni, ha a rendszeru:nket
       egy "Fixit" (Helyreallito) eszko:zro"l inditjuk, vagy egy
       olyan ketlepeses folyamat soran, ahol (tu:kro:zes eseten) a
       lemezro"l meg nem inditottuk el a rendszert.

       Ezt ko:veto"en az eszko:zo:n talalhato Vinum-particiot
       (amennyiben letezik) az eszko:zo:n levo" allemez eltolasahoz
       kell helyezni. Ennek eredmenye lesz az uj "a" particio
       "offset" erteke. A particio "size" (meret) erteke szo szerint
       atemelheto" a fenti szamitasbol. Az "fstype" legyen 4.2BSD. Az
       "fsize", "bsize" es "cpg" ertekeket a jelenlegi
       allomanyrendszerhez merten ajanlott megvalasztani, azonban itt
       most egyaltalan nem birnak jelento"seggel.

       Ezzel a modszerrel letesitettu:nk egy olyan uj "a" particiot,
       amely lefedi az eszko:zo:n talalhato Vinum-particiot.
       Jegyezzu:k meg, hogy a bsdlabel kizarolag csak abban az
       esetben fogja megengedi ezt az atfedest, ha a Vinum-particionk
       "vinum" tipussal van megjelo:lve.

    3. Keszen is vagyunk! Most mar van minden eszko:zo:n egy
       hamisitott "a" particionk, amelyeken megtalalhato a
       rendszerindito ko:tet egy-egy masolata. Hatarozottan ajanlott
       meg egyszer elleno"rizni a munkankat az alabbi parancs
       kiadasaval:

 # fsck -n /dev/eszko:zneva

   Figyelju:nk arra, hogy az o:sszes vezerlesi informaciot tartalmazo
   allomanynak a Vinum-ko:teten talalhato rendszerindito
   allomanyrendszerre kell vonatkoznia, ami viszont egy uj Vinum
   rendszerindito ko:tet beallitasa utan nem feltetlenu:l egyezik meg
   a jelenlegi aktiv allomanyrendszerrel. Ku:lo:no:sen az /etc/fstab
   es /boot/loader.conf allomanyokat kell ilyen szempontbol
   elleno"riznu:nk.

   A ko:vetkezo" inditas soran a rendszerto:lto" mar az uj
   Vinum-alapu rendszerindito allomanyrendszerro"l fogja o:sszeszedni
   a mu"ko:desehez szu:kseges adatokat es ezeknek megfelelo"en
   cselekedni. Vegu:l, a rendszermag inicializaloja utan, mikor az
   o:sszes eszko:zt felismerte, egy ehhez hasonlo feltu"no" u:zenet
   fogja jelezni a beallitas sikeresseget:

 Mounting root from ufs:/dev/gvinum/root

     --------------------------------------------------------------

  21.9.3. Egy Vinum-alapu rendszerindito allomanyrendszer peldaja

   Miutan sikeresen konfiguraltuk a rendszerindito Vinum-ko:tetet, a
   gvinum l -rv root kimenete nagyjabol igy fog kinezni:

 ...
 Subdisk root.p0.s0:
                 Size:        125829120 bytes (120 MB)
                 State: up
                 Plex root.p0 at offset 0 (0  B)
                 Drive disk0 (/dev/da0h) at offset 135680 (132 kB)

 Subdisk root.p1.s0:
                 Size:        125829120 bytes (120 MB)
                 State: up
                 Plex root.p1 at offset 0 (0  B)
                 Drive disk1 (/dev/da1h) at offset 135680 (132 kB)
        

   Itt (a /dev/da0h particiohoz kepesti) 135680-as eltoltas ertekekre
   kell figyelnu:nk. Ez kepzo"dik le a bsdlabel fogalmi rendszereben
   aztan 265 darab 512 byte-os blokkra a lemezen. Ehhez hasonloan a
   rendszerindito ko:tet merete 245 760 darab 512 byte-os blokk lesz.
   A rendszerindito ko:tet masodpeldanyat tartalmazo /dev/da1h
   ugyanilyen beallitasokkal rendelkezik.

   Az emlitett eszko:zo:k valahogy igy jelennek meg a bsdlabel
   szerint:

 ...
 8 partitions:
 #        size   offset    fstype   [fsize bsize bps/cpg]
   a:   245760      281    4.2BSD     2048 16384     0   # (Cyl.    0*- 15*)
   c: 71771688        0    unused        0     0         # (Cyl.    0 - 4467*)
   h: 71771672       16     vinum                        # (Cyl.    0*- 4467*)
        

   Megfigyelheto", hogy a hamis "a" particio "size" parameter erteke
   megegyezik a fentebb becsu:lt ertekkel, miko:zben az "offset"
   parameter erteke egyenlo" lesz a "h" Vinum-particion belu:li
   eltolas es az eszko:zo:n (vagy slice-on) belu:li eltolas
   o:sszegevel. Ez jellemzo"en egy olyan beallitas, amivel
   szu:ksegszeru"en el tudjuk keru:lni a 21.9.4.3 Szakaszban leirt
   hibajelenseget. Lathato tovabba az is, hogy az egesz "a" particio
   vegig az eszko:z o:sszes Vinum adatat tartalmazo "h" particiojaban
   foglal helyet.

   A peldaval kapcsolatban megjegyezzu:k, hogy itt az egesz eszko:zt
   a Vinum felu:gyelete ala bocsatottuk, tehat nem marad hatra
   semmilyen Vinum elo"tt hasznalt rendszerindito particio, hiszen ez
   egy olyan lemez, amelyet eleve egy Vinum-konfiguracioba szantunk.

     --------------------------------------------------------------

  21.9.4. Hibakereses

   Fontos tudunk, hogy problema eseten hogyan tudjuk helyreallitani a
   rendszeru:nket. A ko:vetkezo" felsorolasban bemutatunk nehany
   ismert buktatot es a megoldasaikat.

     --------------------------------------------------------------

    21.9.4.1. A rendszerto:lto" elindul, de a rendszer viszont mar nem

   Ha valamilyen okbol a rendszer nem indulna el, a 10 masodpercig
   tarto visszaszamlalas soran a rendszerto:lto"t meg meg tudjuk
   allitani a szoko:z lenyomasaval. Ekkor a beto:lto" altal hasznalt
   valtozok (mint peldaul a vinum.autostart) a show segitsegevel
   megvizsgalhatoak es a set vagy unset parancsokkal modosithatoak.

   Ha mindo:ssze az volt a problema, hogy a Vinum modulja nem
   szerepelt az automatikusan beto:ltendo" modulok ko:zo:tt, a load
   geom_vinum parancs kiadasaval beto:lthetju:k azt.

   Miutan vegeztu:nk, a rendszerinditas folyamata a boot -as
   paranccsal folytathato. A -as kapcsolok jelzik a rendszermag
   szamara, hogy kerdezzen ra a rendszerindito allomanyrendszerre a
   csatlakoztatasa elo"tt (-a) es csak egyfelhasznalos modban inditsa
   a rendszert (-s), ahol a rendszerindito allomanyrendszer
   irasvedett. Igy, ha csak egyetlen eret csatlakoztattunk egy
   to:bberes ko:tetbo"l, az erek meg veletlenu:l sem tudnak egymasnak
   ellentmondo allapotba keru:lni.

   Amikor megjelenik a csatlakoztatando rendszerindito
   allomanyrendszert bekerese, barmelyik ervenyes rendszerinditasra
   alkalmas allomanyrendszer megadhato. Amennyiben az /etc/fstab
   allomanyt jol beallitottuk, az alapertelmezett ertek egy
   ufs:/dev/gvinum/root ertekhez hasonlo alaku lesz. Itt altalaban
   egy ufs:da0d formatumu erteket lathatunk, amely felteheto"en egy
   Vinum hasznalata elo"tti rendszerindito allomanyrendszert
   tartalmazo particio. Legyu:nk ovatosak, ha itt egy olyan "a"
   particiot adunk meg, amely valojaban egy rendszerindito
   Vinum-eszko:z allemezeire hivatkozik, mivel egy tu:kro:zo:tt
   konfiguracio eseten csak az eszko:z egyik reszet fogjuk
   csatlakoztatni. Ha a keso"bbiekben ezt az allomanyrendszert mar
   nem csak irasvedett modban csatlakoztatjuk, mindenkeppen el kell
   tavolitanunk a rendszerindito Vinum-ko:tetbo"l a to:bbi eret,
   mivel masku:lo:nben nagy valoszinu"seggel eltero" adatokat fognak
   tartalmazni.

     --------------------------------------------------------------

    21.9.4.2. Csak az elso"dleges rendszerto:lto" indul el

   Amikor az elso"dleges rendszerto:lto" meg elindul, viszont a
   /boot/loader mar nem tud beto:lto"dni (ezt rendszerinditas
   megkezdese utan bal oldalt ro:gto:n megjeleno" forgo vonalbol
   vehetju:k eszre), a szoko:z lenyomasaval itt meg tehetu:nk egy
   kiserletet a beto:ltes megszakitasara. Ennek hatasara a
   rendszerto:ltes megall a masodik fazisban, lasd 12.3.2 Szakasz.
   Itt a rendszerinditashoz megprobalhatunk megadni egy masik
   particiot, peldaul egy olyat, amely a korabbi rendszerindito
   allomanyrendszert tartalmazza es amelyet az elo"bb atneveztu:nk az
   "a"-rol.

     --------------------------------------------------------------

    21.9.4.3. Semmi sem indul, a rendszerto:lto" hibakat ir

   Ez a helyzet akkor allhat elo", ha a Vinum telepitese soran
   to:nkretettu:k volna a rendszerto:lto"t. Sajnos a Vinum minden
   esetben 4 KB helyet hagy szabadon a particio elejen, a sajat
   fejlec informaciojanak ro:gzitese elo"tt. Az ide keru:lo" elso" es
   masodik fazisu rendszerto:lto"k, illetve a bsdlabel adatai azonban
   jelenleg 8 KB helyet kivannak meg. Igy ha a Vinum-particio egy
   rendszerinditasra szant slice vagy lemez 0. eltolasanal kezdo"dik,
   a Vinum beallitasai felu:l fogjak irni a rendszerto:lto"t.

   A rendszerto:lto" is ugyanigy felu:lirja a Vinum fejlecet es akkor
   a Vinum nem talalja a lemezeit, ha a fenti problemat orvosolva,
   peldaul egy "Fixit" (Helyreallito) lemez segitsegevel,
   ujratelepitju:k a rendszerto:lto"t a 12.3.2 Szakaszban bemutatott
   bsdlabel -B parancs segitsegevel. Noha a Vinum egyetlen konkret
   konfiguracios beallitasa vagy a ko:tetekben tarolt adat sem seru:l
   meg es vissza tudjuk allitani az o:sszes elveszett informaciot
   ugyannak a Vinum-konfiguracionak az ujboli megadasaval, a
   helyzetet magat nehez megoldani. A Vinum-fejlec es a
   rendszerto:lto" u:tko:zesenek megszu:ntetesehez ugyanis legalabb
   4 KB-tal arrebb kell mozgatnunk az egesz Vinum-particiot.

     --------------------------------------------------------------

                       Fejezet 22. Virtualizacio

   Irta: Murray Stokely.

22.1. Attekintes

   A virtualizacios szoftverek leheto"ve teszik, hogy ugyanazon a
   szamitogepen egyszerre to:bb operacios rendszert is futassunk.
   Ezeknek a programcsomagoknak gyakorta reszu:k egy gazda operacios
   rendszer is, amely a virtualizacios szoftvert futattja es ismer
   bizonyos vendeg operacios rendszereket.

   A fejezet elolvasasa soran megismerju:k:

     * a gazda- es a vendeg operacios rendszerek ko:zti
       ku:lo:nbsegeket;

     * hogyan telepitsu:nk FreeBSD-t egy Intel-alapu Apple Macintosh
       szamitogepre;

     * hogyan telepitsu:nk a Xen(TM) hasznalataval FreeBSD-t
       Linux-ra;

     * hogyan telepitsu:nk a Virtual PC hasznalataval FreeBSD-t
       Microsoft Windows-ra;

     * hogyan hozzuk ki a legto:bbet FreeBSD rendszeru:nkbo"l
       virtualizacio alatt.

   A fejezet elolvasasahoz ajanlott:

     * alapveto" UNIX-os es FreeBSD-s ismeretek (3 fejezet);

     * a FreeBSD telepitesenek ismerete (2 fejezet);

     * a halozati kapcsolatok beallitasanak ismerete (31 fejezet);

     * ku:lso"s alkalmazasok telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

22.2. A FreeBSD mint vendeg

  22.2.1. Parallelsszel Mac OS(R)-en

   A Parallels Desktop a Mac OS 10.4.6, vagy afeletti verziojat
   futatto, Intel-alapu Apple Mac szemelyi szamitogepekre fejlesztett
   kereskedelmi alkalmazas. A FreeBSD-t teljes mertekben tamogatja
   vendegkent. Miutan telepitettu:k a Parallels-t a Mac OS X-re, be
   kell allitanunk egy virtualis gepet, majd erre felraknunk a kivant
   vendeg operacios rendszert.

     --------------------------------------------------------------

    22.2.1.1. A FreeBSD telepitese Mac OS X/Parallelsre

   A FreeBSD Mac OS X/Parallels parosra telepitesehez elso" lepeskent
   keszitenu:nk kell egy uj virtualis szamitogepet. A letrehozas
   soran valasszuk a Guest OS Type-nak (a vendeg operacios rendszer
   tipusanak) a FreeBSD-t:

   Ezutan adjunk meg egy nagyjabol elfogadhato meretet a virtualis
   merevlemezu:nknek, valamint annyi memoriat, amennyire szu:ksegu:nk
   lehet a virtualis FreeBSD-nk hasznalata soran. Egy 4 GB-os lemez
   es 512 MB rendszermemoria a legto:bb esetben jo valasztasnak
   bizonyulhat a FreeBSD Parallels alatti hasznalata soran:

   Valasszuk ki a halozatkezeles tipusat es a halozati csatolot.

   Mentsu:k el es fejezzu:k be a konfiguralast.

   Miutan a FreeBSD-s virtualis gepu:nk elkeszu:lt, telepitenu:nk
   kell ra magat az operacios rendszert is. Ezt a legegyszeru"bben a
   hivatalosan FreeBSD telepito" CD-ro"l, vagy a hivatalos FTP
   oldalrol leto:ltheto" CD-keppel tehetju:k meg. Ha lemasoltuk a
   megfelelo" CD-kepet a Mac helyi allomanyrendszerere, vagy
   behelyeztu:k a telepito" CD-t a CD-meghajtoba, kattintsunk a
   FreeBSD-s Parallels ablakunk jobb also sarkaban talalhato lemez
   ikonjara. Ekkor feljo:n egy parbeszedablak, ahol
   o:sszerendelhetju:k a virtualis gepu:nk CD-meghajtojat egy lemezen
   talalhato keppel, vagy eppen a valodi CD-meghajtonkkal.

   Ahogy megtettu:k az iment emlitett o:sszerendelest, inditsuk is
   ujra a FreeBSD-s virtualis gepu:nket a megszokott modon, az
   ujrainditas ikonjara kattintva.

   Ekkor a rendszer megtalalja a FreeBSD telepito"lemezt es a
   sysinstall segitsegevel megkezdi a telepitest a 2 fejezetben
   leirtak szerint. Ha szu:ksegu:nk van ra, telepithetju:k az X11-et
   is, de egyelo"re meg ne probaljuk beallitani.

   A telepites befejezeset ko:veto"en inditsuk ujra a frissen
   telepitett FreeBSD-s virtualis gepu:nket.

     --------------------------------------------------------------

    22.2.1.2. A FreeBSD beallitasa Mac OS X/Parallelsen

   Miutan telepitettu:k a FreeBSD-t Mac OS X/Parallels-re, meg var
   rank nehany konfiguracios lepes a rendszer virtualizalt
   mu"ko:desenek optimalizalasa erdekeben.

    1. A rendszerbeto:lto" valtozoinak beallitasa

       A legfontosabb lepes a kern.hz valtozo ertekenek cso:kkentese,
       amivel igy a FreeBSD processzor-kihasznaltsagat is
       cso:kkentju:k a Parallels alatt. Ezt a ko:vetkezo" sor
       hozzadasaval tehetju:k meg a /boot/loader.conf allomanyban:

 kern.hz=100

       Enelku:l egy u:resjaratban levo" FreeBSD Parallels-vendeg az
       iMac(R) egy processzoranak durvan 15%-at foglalja le. A
       valtoztatas eletbe leptetese utan azonban ez megko:zelito"en
       5%-ra redukalhato.

    2. Egy uj konfiguracios allomany letrehozasa a rendszermaghoz

       Nyugodtan eltavolithatjuk az o:sszes SCSI, FireWire es USB
       eszko:zmeghajtot. A Parallels altal felkinalt virtualis
       halozati csatolot az ed(4) meghajton keresztu:l tudjuk elerni,
       ezert az ed(4) es miibus(4) meghajtokon kivu:l az o:sszes
       to:bbi elhagyhato.

    3. A halozati kapcsolat beallitasa

       Az alapveto" halozati beallitas a virtualis gepu:nko:n a DHCP
       aktivalasa, aminek segitsegevel csatlakozni tudunk arra a
       helyi halozatra, amelyen maga a gazda Mac is megtalalhato. Ezt
       az alabbi sor felvetelevel tudjuk megoldani az /etc/rc.conf
       allomanyba: ifconfig_ed0="DHCP". Bo"vebb informaciokert
       jaruljunk a 31 fejezet fejezethez.

     --------------------------------------------------------------

  22.2.2. Xen(TM)nel Linux(R)-on

   Irta: Fukang Chen (Loader).

   A Xen hipervisor egy nyilt forraskodu, paravirtualizaciot nyujto
   termek, amely mo:go:tt mostanra mar a XenSource kereskedelmi ceg
   all. Itt a vendeg operacios rendszereket a domU tartomanykent
   azonositjak, mig a gazda operacios rendszer a dom0. A FreeBSD
   Linux alatti virtualis futattasahoz elso"kent telepitenu:nk kell a
   Xen-t egy dom0-as Linuxra. A leirasban a gazda operacios rendszer
   a Slackware Linux disztribucio lesz.

     --------------------------------------------------------------

    22.2.2.1. A Xen 3 beallitasa egy Linux dom0-an

    1. To:ltsu:k le a Xen 3.0-at a XenSource-tol

       To:ltsu:k le a xen-3.0.4_1-src.tgz allomanyt a XenSource
       oldalarol.

    2. Bontsuk ki a csomagot

 # cd xen-3.0.4_1-src
 # KERNELS="linux-2.6-xen0 linux-2.6-xenU" make world
 # make install

         Megjegyzes: A rendszermagot igy tudjuk dom0 modban
         ujraforditani:

 # cd xen-3.0.4_1-src/linux-2.6.16.33-xen0
 # make menuconfig
 # make
 # make install

         A Xen regebbi verzioinal elkepzelheto", hogy igy kell
         megadni: make ARCH=xen menuconfig.

    3. Vegyu:k fel a megfelelo" pontot a GRUB menu:jebe

       Nyissuk meg a /boot/grub/menu.lst allomanyt es irjuk be a
       ko:vetkezo" sort:

 title Xen-3.0.4
 root (hd0,0)
 kernel /boot/xen-3.0.4-1.gz dom0_mem=262144
 module /boot/vmlinuz-2.6.16.33-xen0 root=/dev/hda1 ro

    4. Inditsuk ujra a gepet es aktivaljuk a Xent

       Elo"szo:r nyissuk meg az /etc/xen/xend-config.sxp allomanyt,
       majd adjuk hozza a ko:vetkezo" sort:

 (network-script 'network-bridge netdev=eth0')

       Ezutan el is indithatjuk a Xent:

 # /etc/init.d/xend start
 # /etc/init.d/xendomains start

       Lathatjuk, hogy a dom0 tartomany most mar aktiv:

 # xm list
 Name                                      ID   Mem VCPUs      State   Time(s)
 Domain-0                                   0   256     1     r-----  54452.9

     --------------------------------------------------------------

    22.2.2.2. A FreeBSD 7-CURRENT mint domU

   To:ltsu:k le a FreeBSD Xen 3.0-as domU rendszermagjat es a
   hozzatartozo lemezkepet a http://www.fsmware.com/ cimro"l:

     * kernel-current

     * mdroot-7.0.bz2

     * xmexample1.bsd

   Tegyu:k a xmexample1.bsd konfiguracios allomanyt a /etc/xen/
   ko:nyvtarba es irjuk at a relevans bejegyzeseket a rendszermag es
   a lemezkep eleresi utjanak megfelelo"en. Valahogy igy kellene
   kinezni az eredmenynek:

 kernel = "/opt/kernel-current"
 memory = 256
 name = "freebsd"
 vif = [ '' ]
 disk = [ 'file:/opt/mdroot-7.0,hda1,w' ]
 #on_crash    = 'preserve'
 extra = "boot_verbose"
 extra += ",boot_single"
 extra += ",kern.hz=100"
 extra += ",vfs.root.mountfrom=ufs:/dev/xbd769a"

   Az mdroot-7.0.bz2 allomanyt ki kell to:mo:riteni!

   Ezutan a kernel-current allomanyban talalhato __xen_guest reszt at
   kell irni ugy, hogy hozzaadjuk a Xen 3.0.3 szamara fontos
   VIRT_BASE erteket:

 # objcopy kernel-current -R __xen_guest
 # perl -e 'print "LOADER=generic,GUEST_OS=freebsd,GUEST_VER=7.0,XEN_VER=xen-3.0,BSD_SYMTAB,VIRT_BASE=0xC0000000\x00"' > tmp
 # objcopy kernel-current --add-section __xen_guest=tmp

 # objdump -j __xen_guest -s kernel-current

 kernel-current:     file format elf32-i386

 Contents of section __xen_guest:
  0000 4c4f4144 45523d67 656e6572 69632c47  LOADER=generic,G
  0010 55455354 5f4f533d 66726565 6273642c  UEST_OS=freebsd,
  0020 47554553 545f5645 523d372e 302c5845  GUEST_VER=7.0,XE
  0030 4e5f5645 523d7865 6e2d332e 302c4253  N_VER=xen-3.0,BS
  0040 445f5359 4d544142 2c564952 545f4241  D_SYMTAB,VIRT_BA
  0050 53453d30 78433030 30303030 3000      SE=0xC0000000.

   Most mar keszen allunk a domU letrehozasara es beinditasara:

 # xm create /etc/xen/xmexample1.bsd -c
 Using config file "/etc/xen/xmexample1.bsd".
 Started domain freebsd
 WARNING: loader(8) metadata is missing!
 Copyright (c) 1992-2006 The FreeBSD Project.
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
 The Regents of the University of California. All rights reserved.
 FreeBSD 7.0-CURRENT #113: Wed Jan  4 06:25:43 UTC 2006
     kmacy@freebsd7.gateway.2wire.net:/usr/home/kmacy/p4/freebsd7_xen3/src/sys/i386-xen/compile/XENCONF
 WARNING: DIAGNOSTIC option enabled, expect reduced performance.
 Xen reported: 1796.927 MHz processor.
 Timecounter "ixen" frequency 1796927000 Hz quality 0
 CPU: Intel(R) Pentium(R) 4 CPU 1.80GHz (1796.93-MHz 686-class CPU)
   Origin = "GenuineIntel"  Id = 0xf29  Stepping = 9
   Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,
   DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
   Features2=0x4400<CNTX-ID,<b14>>
 real memory  = 265244672 (252 MB)
 avail memory = 255963136 (244 MB)
 xc0: <Xen Console> on motherboard
 cpu0 on motherboard
 Timecounters tick every 10.000 msec
 [XEN] Initialising virtual ethernet driver.
 xn0: Ethernet address: 00:16:3e:6b:de:3a
 [XEN]
 Trying to mount root from ufs:/dev/xbd769a
 WARNING: / was not properly dismounted
 Loading configuration files.
 No suitable dump device was found.
 Entropy harvesting: interrupts ethernet point_to_point kickstart.
 Starting file system checks:
 /dev/xbd769a: 18859 files, 140370 used, 113473 free (10769 frags, 12838 blocks, 4.2% fragmentation)
 Setting hostname: demo.freebsd.org.
 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
           inet6 ::1 prefixlen 128
           inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
           inet 127.0.0.1 netmask 0xff000000
 Additional routing options:.
 Mounting NFS file systems:.
 Starting syslogd.
 /etc/rc: WARNING: Dump device does not exist.  Savecore not run.
 ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/X11R6/lib /usr/local/lib
 a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout
 Starting usbd.
 usb: Kernel module not available: No such file or directory
 Starting local daemons:.
 Updating motd.
 Starting sshd.
 Initial i386 initialization:.
 Additional ABI support: linux.
 Starting cron.
 Local package initialization:.
 Additional TCP options:.
 Starting background file system checks in 60 seconds.

 Sun Apr  1 02:11:43 UTC 2007

 FreeBSD/i386 (demo.freebsd.org) (xc0)

 login:

   A domU-ban a FreeBSD 7.0-CURRENT rendszermagnak kell futnia:

 # uname -a
 FreeBSD demo.freebsd.org 7.0-CURRENT FreeBSD 7.0-CURRENT #113: Wed Jan  4 06:25:43 UTC 2006    
 kmacy@freebsd7.gateway.2wire.net:/usr/home/kmacy/p4/freebsd7_xen3/src/sys/i386-xen/compile/XENCONF  i386

   Miutan erro"l megbizonyosodtunk, be tudjuk allitani a halozatot is
   domU-ban. A domU FreeBSD egy xn0 nevu" specialis eszko:zt hasznal
   erre a celra:

 # ifconfig xn0 10.10.10.200 netmask 255.0.0.0
 # ifconfig
 xn0: flags=843<UP,BROADCAST,RUNNING,SIMPLEX> mtu 1500
     inet 10.10.10.200 netmask 0xff000000 broadcast 10.255.255.255
     ether 00:16:3e:6b:de:3a
 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
       inet6 ::1 prefixlen 128
       inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
       inet 127.0.0.1 netmask 0xff000000

   Eko:zben a dom0 Slackware-en nehany Xen-fu:ggo" halozati
   csatolonak is meg kell jelennie:

 # ifconfig
 eth0      Link encap:Ethernet  HWaddr 00:07:E9:A0:02:C2 
           inet addr:10.10.10.130  Bcast:0.0.0.0  Mask:255.0.0.0
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:815 errors:0 dropped:0 overruns:0 frame:0
           TX packets:1400 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:0
           RX bytes:204857 (200.0 KiB)  TX bytes:129915 (126.8 KiB)

 lo        Link encap:Local Loopback 
           inet addr:127.0.0.1  Mask:255.0.0.0
           UP LOOPBACK RUNNING  MTU:16436  Metric:1
           RX packets:99 errors:0 dropped:0 overruns:0 frame:0
           TX packets:99 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:0
           RX bytes:9744 (9.5 KiB)  TX bytes:9744 (9.5 KiB)

 peth0     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
           RX packets:1853349 errors:0 dropped:0 overruns:0 frame:0
           TX packets:952923 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:2432115831 (2.2 GiB)  TX bytes:86528526 (82.5 MiB)
           Base address:0xc000 Memory:ef020000-ef040000

 vif0.1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
           RX packets:1400 errors:0 dropped:0 overruns:0 frame:0
           TX packets:815 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:0
           RX bytes:129915 (126.8 KiB)  TX bytes:204857 (200.0 KiB)

 vif1.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
           RX packets:3 errors:0 dropped:0 overruns:0 frame:0
           TX packets:2 errors:0 dropped:157 overruns:0 carrier:0
           collisions:0 txqueuelen:1
           RX bytes:140 (140.0 b)  TX bytes:158 (158.0 b)

 xenbr1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
           RX packets:4 errors:0 dropped:0 overruns:0 frame:0
           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:0
           RX bytes:112 (112.0 b)  TX bytes:0 (0.0 b)

 # brctl show
 bridge name     bridge id           STP enabled         interfaces
 xenbr1          8000.feffffffffff   no                  vif0.1
                                                         peth0
                                                         vif1.0

     --------------------------------------------------------------

  22.2.3. Virtual PC-vel Windows-on

   A Windows-ra fejlesztett Virtual PC a Microsoft egyik szabadon
   leto:ltheto" szoftvertermeke. A rendszerko:vetelmenyeit bo"vebben
   lasd a
   http://www.microsoft.com/windows/downloads/virtualpc/sysreq.mspx
   linken. Miutan telepitettu:k a Microsoft Windows-ra a Virtual PC
   alkalmazast, be kell allitanunk egy virtualis gepet, majd
   telepitenu:nk kell ra a kivant vendeg operacios rendszert.

     --------------------------------------------------------------

    22.2.3.1. A FreeBSD telepitese Virtual PC/Microsoft(R) Windows-ra

   Amikor a FreeBSD-t a Microsoft Windows es Virtual PC parosra
   akarjuk telepiteni, akkor kezdju:nk egy egy uj virtualis gep
   letrehozasaval. Ehhez valasszuk ki a menu:bo"l a Create a virtual
   machine (Virtualis gep letrehozasa) pontot.

   Majd valasszuk az Operating system (Operacios rendszer)
   beallitasanal az Other (Egyeb) opciot.

   Ezutan valasszuk ki a szandekainknak megfelelo"en a telepitendo"
   FreeBSD peldanyhoz mert memoria es lemezteru:let mennyiseget.
   Ahhoz, hogy a FreeBSD fusson Virtual PC alatt, 4 GB-nyi
   lemezteru:let es 512 MB RAM beallitasa a legto:bb esetben kivaloan
   megfelelo".

   Mentsu:k el es fejezzu:k be a konfiguraciot.

   Valasszuk ki a FreeBSD-s virtualis gepu:nket, majd kattintsunk a
   Settings (Beallitasok) menu:re es allitsuk be halozati csatolo es
   halozatkezeles tipusat.

   A FreeBSD-nek otthont ado virtualis gepu:nk letrehozasa utan
   telepitenu:nk is kell ra a rendszert. Ez legegyszeru"bben a
   hivatalos FreeBSD telepito" CD-vel vagy a hivatalos FTP oldalrol
   leto:ltheto" CD-keppel tehetju:k meg. Amikor leto:lto:ttu:k a
   megfelelo" CD-kepet a helyi Windows-os allomanyrendszeru:nkre vagy
   behelyeztu:k a telepiteshez hasznalhato CD-t a CD-meghajtonkba, a
   FreeBSD-s virtualis gepu:nk elinditasahoz kattintsunk ra duplan.
   Ezt ko:veto"en a Virtual PC ablakaban kattintsunk a CD menu:re es
   valasszuk ki belo"le a Capture ISO Image... (Lemezkep
   hasznalata...) pontot. Ennek hatasara megjelenik egy ablak, amiben
   a virtualis gepu:nk CD-meghajtoihoz tudunk csatlakoztatni
   lemezkepeket vagy akar letezo" CD-meghajtokat.

   Miutan sikeresen beallitottuk a telepito" CD forrasat, inditsuk
   ujra a virtualis gepet az Action (Mu"velet) menu:n belu:l a Reset
   (Ujrainditas) pont kivalasztasaval. Igy a Virtual PC ujrainditja a
   virtualis rendszert egy olyan specialis BIOS hasznalataval, amely
   a normalis BIOS-hoz hasonloan elo"szo:r megkeresi az elerheto"
   CD-meghajtokat.

   Ebben az esetben a FreeBSD telepito"eszko:zet fogja megtalalni es
   megkezdi a 2 fejezetben ismertetett szokasos, sysinstall programra
   alapulo telepitesi eljarast. Ennek soran az X11-et is
   feltelepithetju:k, habar egyelo"re meg ne allitsuk be.

   Ne felejtsu:k el kivenni a meghajtobol a telepiteshez hasznalt
   CD-t vagy elengedni a megfelelo" lemezkepet, amikor befejezo"do"tt
   a telepites. Vegezetu:l inditsuk ismet ujra a frissen telepitett
   FreeBSD-s virtualis gepu:nket.

     --------------------------------------------------------------

    22.2.3.2. A FreeBSD beallitasa a Microsoft Windows/Virtual PC-n

   Miutan a FreeBSD-t minden gond nelku:l telepitettu:k a
   Microsoft Windows-on futo Virtual PC-re, meg tovabbi beallitasi
   lepeseket is meg kell tennu:nk a rendszer virtualizalt
   mu"ko:desenek finomhangolasahoz.

    1. A rendszerto:lto" valtozoinak beallitasa

       A legfontosabb teendo"nk cso:kkenteni a kern.hz konfiguracios
       beallitas erteket, aminek ko:szo:nheto"en vissza tudjuk fogni
       a Virtual PC alatt futo FreeBSD processzorhasznalatat. Ezt ugy
       tudjuk megtenni, ha a /boot/loader.conf allomanyba felvesszu:k
       a ko:vetkezo" sort:

 kern.hz=100

       Enelku:l a Virtual PC alatt u:resjaratban futo FreeBSD vendeg
       operacios rendszer egy egyprocesszoros szamitogep idejenek
       durvan 40%-at foglalja le. A valtoztatas utan azonban ez az
       ertek pusztan ko:zel 3%-ra cso:kken le.

    2. Uj konfiguracios allomany letrehozasa a rendszermaghoz

       Nyugodtan eltavolithatjuk a SCSI, FireWire es USB
       eszko:zmeghajtokat. A Virtual PC altal felajanlott virtualis
       halozati csatolot a de(4) meghajton keresztu:l tudjuk
       hasznalni, ezert a de(4) es miibus(4) eszko:zo:n kivu:l az
       o:sszes to:bbi halozati eszko:z tamogatasa kiszedheto" a
       rendszermagbol.

    3. A halozati kapcsolat beallitasa

       A legalapveto"bb halozati beallitas csupan annyibol all, hogy
       DHCP-n keresztu:l csatlakoztatjuk a virtualis gepu:nket
       ugyanahhoz a helyi halozathoz, amiben a gazda
       Microsoft Windows-os gepu:nk is megtalalhato. Ezt ugy tudjuk
       elerni, ha a /etc/rc.conf allomanyba megadjuk a
       ifconfig_de0="DHCP" sort. A komolyabb halozati beallitasokat a
       31 fejezetben talalhatjuk.

     --------------------------------------------------------------

  22.2.4. VMware-rel MacOS-en

   A Mac-ek szamara fejlesztett VMWare Fusion egy olyan kereskedelmi
   termek, amit az Intel alapu Apple Mac gepekre tudunk telepiteni a
   Mac OS 10.4.9 es keso"bbi valtozatain. A FreeBSD itt egy teljesen
   tamogatott vendeg operacios rendszer. Miutan a VMWare Fusion
   felkeru:lt a Mac OS X rendszeru:nkre, be kell allitanunk a
   virtualis gepet es telepitenu:nk ra a vendeg operacios rendszert.

     --------------------------------------------------------------

    22.2.4.1. A FreeBSD telepitese a Mac OS X/VMWare-re

   Elo"szo:r inditsuk el a VMWare Fusion-t, aminek eredmenyekeppen
   beto:lto"dik a Virtual Machine Library. Egy uj virtualis gepre
   letrehozasahoz kattintsunk a "New" gombra:

   Ekkor bejo:n az uj gep o:sszeallitasat segito" New Virtual Machine
   Assistant, ahol a tovabblepeshez kattintsunk a Continue gombra:

   Az operacios rendszerek (Operating System) ko:zu:l valasszuk az
   "egyeb" (Other) kategoriat, majd a Version fu:lo:n a FreeBSD vagy
   a FreeBSD 64-bit valtozatot attol fu:ggo"en, hogy 32 bites vagy
   64 bites tamogatasra van szu:ksegu:nk:

   Adjuk meg a virtualis gep kepenek nevet es a ko:nyvtarat, ahova el
   akarjuk menteni:

   Valasszuk meg a virtualis gephez tartozo virtualis merevlemez
   meretet is:

   Mondjuk meg, hogy milyen modon szeretnenk telepiteni a virtualis
   gepre, ISO formatumu lemezkepro"l vagy CD-ro"l:

   Ahogy a Finish feliratu gombra kattintunk, a virtualis gep maris
   elindul:

   Telepitsu:k fel a FreeBSD-t a megszokott modon vagy a 2 fejezet
   utasitasai menten:

   Miutan befejezo"do:tt a telepites, modositsuk a virtualis gep
   beallitasait, peldaul a memoria mennyiseget:

     Megjegyzes: A virtualis gep hardveres beallitasai a futasa alatt
     nem valtoztathatoak meg.

   A virtualis gep altal hasznalhato processzorok szamat:

   A CD-meghajto allapotat. Altalaban leheto"segu:nk van a virtualis
   gepet levalasztani a CD-meghajtorol vagy ISO lemezkepro"l, ha mar
   nem hasznaljuk.

   A halozati csatlakozas a virtualis geppel kapcsolatban utolsokent
   beallitando tenyezo". Ha a befogado gepen kivu:l meg mas gepeket
   is el akarunk erni a virtualis gepro"l, akkor ehhez mindenkeppen a
   Connect directly to the physical network (Bridged) opciot
   valasszuk. Minden mas esetben a Share the host's internet
   connection (NAT) az ajanlott, mivel igy a virtualis gep eleri az
   internetet, de a halozatrol nem lehet azt elerni.

   Miutan befejeztu:k a beallitasok finomhangolasat, inditsuk is el a
   frissen telepitett FreeBSD-s virtualis gepu:nket.

     --------------------------------------------------------------

    22.2.4.2. A FreeBSD beallitasa a Mac OS X/VMWare-en

   Ahogy a FreeBSD-t sikeresen telepitettu:k a Mac OS X alatt futo
   VMWare-re, nehany konfiguracios lepest meg meg kell tennu:nk a
   virtualizalt rendszer teljesitmenyek optimalizalasa erdekeben.

    1. A rendszerto:lto" valtozoinak beallitasa

       A legfontosabb lepes talan a kern.hz valtozo ertekenek
       cso:kkentese, amivel a VMWare alatt futo FreeBSD
       processzorhasznalatat szorithatjuk vissza. Ezt a ko:vetkezo"
       sor hozzaadasaval erhetju:k el a /boot/loader.conf
       allomanyban:

 kern.hz=100

       Enelku:l az u:resjaratban zakatolo FreeBSD-s VMWare vendeg
       nagyjabol az iMac egyik processzoranak 15%-at emeszti fel.
       Ezzel a modositassal azonban ez lenyomhato ko:zel 5%-ra.

    2. Uj konfiguracios allomany letrehozasa a rendszermaghoz

       Nyugodtan to:ro:lhetju:k az o:sszes FireWire es USB eszko:z
       meghajtojat. A VMWare egy em(4) meghajton keresztu:l elerheto"
       virtualis halozati kartyat biztosit, igy az em(4) kivetelevel
       az o:sszes halozati eszko:z meghajtojat kivehetju:k a
       rendszermagbol.

    3. A halozat beallitasa

       A legegyszeru"bb halozati beallitas mindo:sszesen a DHCP
       hasznalatat igenyli, aminek reven a virtualis gepu:nk a
       befogado Mac-kel egy helyi halozatra keru:l. Ezt ugy tudjuk
       engedelyezni, ha az /etc/rc.conf allomanyba felvesszu:k az
       ifconfig_em0="DHCP" sort. Ha ennel komolyabb halozati
       beallitasok is erdekelnek minket, akkor olvassuk el a 31
       fejezetet.

     --------------------------------------------------------------

22.3. A FreeBSD mint gazda

   Gazda operacios rendszerkent a FreeBSD evekig nem kapott
   hivatalosan tamogatast egyetlen elterjedtebb virtualizacios
   megoldas reszero"l sem. Sokan erre a celra eddig a VMware korabbi
   es inkabb mar elavult, a Linux kompatibilitasi retegre epu:lo"
   valtozatait (mint peldaul emulators/vmware3) hasznaltak. Nem
   sokkal azonban a FreeBSD 7.2 megjelenese utan a Sun VirtualBox(TM)
   OSE (Open Source Edition) nativ FreeBSD alkalmazaskent bukkant fel
   a Portgyu"jtemenyben.

   A VirtualBox egy folyamatos fejlesztes alatt allo, komplett
   virtualizacios csomag, amely immaron elerheto" a legto:bb
   nepszeru" operacios rendszerre, mint a Windows, Mac OS, Linux es a
   FreeBSD. Egyarant kepes Windows es UNIX fajtaju vendegrendszerek
   futattasara. Nyilt- es zart forraskodu valtozatban is elerheto". A
   felhasznalok szempontjabol a ketto" ko:zti talan legfontosabb
   elteres, hogy a nyilt forraskodu valtozat nem tartalmaz USB
   tamogatast. A ku:lo:nbsegek teljes listaja megtalalhato a
   VirtualBox wiki "Editions" oldalan, a
   http://www.virtualbox.org/wiki/Editions cimen. FreeBSD alatt
   jelenleg csak a nyilt forraskodu valtozat erheto" el.

     --------------------------------------------------------------

  22.3.1. A VirtualBox(TM) telepitese

   A VirtualBox a emulators/virtualbox ko:nyvtarbol erheto" el
   portkent, es onnan a ko:vetkezo" parancsokkal telepitheto":

 # cd /usr/ports/emulators/virtualbox
 # make install clean

   A beallitasok ko:zt az egyik leghasznosabb a GuestAdditions nevu"
   programcsomag telepitese. A benne talalhato programokon keresztu:l
   a vendegkent futo operacios rendszer szamos hasznos szolgaltatasat
   el tudjuk erni, ugy mint az egermutato integraciojat (ekkor az
   egerkurzor zo:kkeno"mentesen hasznalhato a gazda es a vendeg
   rendszerben is) vagy a videomemoria gyorsabb elereset
   (ku:lo:no:sen Windows eseteben). A vendegekhez telepitheto" ilyen
   jellegu" kiegeszitesek az adott rendszer telepitese utan a Devices
   menu:bo"l erheto"ek el.

   A VirtualBox elso" inditasa elo"tt el kell meg vegeznu:nk nehany
   tovabbi beallitast. Fontos tudnunk, hogy a port a telepites soran
   a /boot/modules ko:nyvtarba tesz meg egy rendszermagmodult is,
   amelyet meg ku:lo:n be kell to:ltenu:nk:

 # kldload vboxdrv

   Ehhez meg vegyu:k fel a ko:vetkezo" sort a /boot/loader.conf
   allomanyba, igy a modul a rendszer minden egyes inditasakor
   magatol beto:lto"dik:

 vboxdrv_load="YES"

   A VirtualBox ezenkivu:l meg igenyli a proc allomanyrendszer
   csatlakoztatasat is:

 # mount -t procfs proc /proc

   Ha hozzaadjuk az alabbi sort a /etc/fstab allomanyhoz, akkor ez a
   beallitas is megmarad a rendszer ujrainditasa utan:

 proc     /proc   procfs  rw        0       0

     Megjegyzes: Nagyon valoszinu", hogy proc allomanyrendszerrel van
     gondunk, amikor a ko:vetkezo" hibau:zenetet kapjuk a VirtualBox
     inditasakor:

 VirtualBox: supR3HardenedExecDir: couldn't read "", errno=2 cchLink=-1

     Ilyenkor a mount parancs kiadasaval elleno"rizzu:k az
     allomanyrendszer sikeres csatlakoztatasat.

   A VirtualBox telepitese soran keletkezik meg egy vboxusers nevu"
   csoport. Ide azokat a felhasznalokat vegyu:k fel, akik reszere
   szeretnenk engedelyezni a VirtualBox hasznalatat. A csoportba uj
   tagokat peldaul a pw paranccsal tudunk felvenni:

 # pw groupmod vboxusers -m felhasznalonev

   Ezek utan a VirtualBox inditasahoz valasszuk a grafikus
   ko:rnyezetu:nk menu:jeben talalhato Sun VirtualBox menu:pontot,
   vagy egy terminalban gepelju:k be ezt a parancsot:

 % VirtualBox

   A VirtualBox beallitasanak tovabbi leheto"segeiro"l a
   http://www.virtualbox.org/ cimen elerheto" hivatalos holnapon
   olvashatunk. Tekintettel arra, hogy a FreeBSD port meg viszonylag
   friss es folyamatos fejlesztes alatt all, ehhez meg erdemes
   atolvasnunk a FreeBSD wikiben szereplo"
   http://wiki.FreeBSD.org/VirtualBox/ oldalt is, ahol a vele
   kapcsolatos legfrissebb informaciokat es egyeb tudnivalokat
   talalhatjuk.

     --------------------------------------------------------------

  22.3.2. Egyeb virtualizacios leheto"segek

   A FreeBSD Xen gazdarendszerkent is hamarosan elerheto" lesz.

     --------------------------------------------------------------

      Fejezet 23. Honositas: Az I18N/L10N hasznalata es beallitasa

   Irta: Andrey Chernov. Atdolgozta: Michael C. Wu.

23.1. Attekintes

   A FreeBSD felhasznaloi fo:ldrajzi elhelyezkedesu:ket tekintve
   mindenhol megtalalhatoak a vilagon. Ebben a fejezetben
   ismertetju:k a FreeBSD honositasahoz es idegennyelvre forditasahoz
   alkalmazhato eszko:zo:ket, amelyek segitsegevel az angolt nem,
   vagy csak kevesbe ismero" felhasznalok is kepesek lesznek
   komolyabban hasznalni. Az i18n megvalositasa rengeteg
   szemszo:gbo"l megko:zelitheto" rendszer es alkalmazas szintjen
   egyarant, ezert ahol szu:kseges, hivatkozni fogunk az odaillo"
   forrasokra.

   A fejezet elolvasasa soran megismerju:k:

     * milyen nyelveket es nyelvi beallitasokat talalhatunk napjaink
       operacios rendszereiben;

     * hogyan hasznaljuk a nyelvi beallitasokat a sajat
       parancsertelmezo"nkben;

     * hogyan allitsuk be a konzolt az angolon kivu:l mas nyelvekhez;

     * hogyan hasznaljuk tenylegesen az X Window Systemet a
       ku:lo:nbo:zo" nyelvekkel;

     * hol olvashatunk to:bbet az I18N-kompatibilis alkalmazasok
       fejlesztesero"l.

   A fejezet elolvasasahoz ajanlott:

     * ku:lso" alkalmazaok telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

23.2. Az alapok

  23.2.1. Mi az I18N/L10N?

   A fejleszto"k az I18N elnevezest az angol "internationalization"
   (idegennyelvu"seg) szobol szarmaztatjak, amiben a szam az elso" es
   utolso betu" (az "I" es "N") ko:zt allok mennyisegere utal. Ehhez
   hasonloan keletkezett az L10N a "localization" (honositas)
   kifejezesbo"l. Ezek hazassagabol jo:ttek letre az I18N/L10N
   modszerei, protokolljai es mindazon alkalmazasai, melyekkel a
   felhasznalok a valasztott nyelvu:ket hasznalni tudjak.

   Az I18N alkalmazasok celjak eleresehez fu:ggvenyko:nyvtarakban
   implementalt I18N keszleteket hasznalnak. Ezzel leheto"ve valik a
   fejleszto"ik szamara, hogy o:sszegyu"jtsek a programukban
   megjeleno" o:sszes szo:veget egyetlen allomanyba, majd azt ku:lo:n
   leforditsak a ku:lo:nbo:zo" nyelvekre. Mi is ezen konvencio
   ko:vetesere szeretnenk biztatni minden programozot.

     --------------------------------------------------------------

  23.2.2. Miert hasznaljuk az I18N/L10N-t?

   Az I18N/L10N mindenhol jol jo:het, ahol idegennyelvu" adatot
   akarunk megjeleniteni, bekerni vagy feldolgozni.

     --------------------------------------------------------------

  23.2.3. Milyen nyelveket tamogat az I18N?

   Az I18N es L10N nem korlatozodik a FreeBSD tudasara. Jelenleg a
   vilagban beszelt legelterjedtebb nyelvek mindegyiket hasznalhatjuk
   bennu:k. Csak hogy nehanyat emlitsu:nk ko:zu:lu:k: kinai, nemet,
   japan, koreai, francia, orosz, vietnami es meg sok mas.

     --------------------------------------------------------------

23.3. A honositas hasznalata

   Az I18N minden adottsagaval egyu:tt fu:ggetlen a FreeBSD-to"l, egy
   egyezmenyes rendszer. Mindenkit batoritunk arra, hogy segitse a
   FreeBSD-t ennek az egyezmenynek a betartasaban.

   A honositas beallitasai harom fo"bb reszre tagolhatoak: a nyelv
   kodja, az orszag kodja es a kodolas. A nyelvi beallitasok nevei is
   ezekbo"l allnak o:ssze, az alabbi sema szerint:

 NyelviKod_OrszagKod.Kodolas

     --------------------------------------------------------------

  23.3.1. A nyelv es az orszag kodja

   Ha a FreeBSD (vagy barmilyen mas, az I18N-t ismero") rendszert
   honositani akarunk az adott nyelvre, akkor a felhasznalonak
   ismernie kell az adott orszagra es nyelvre vonatkozo kodokat (az
   orszagkod fogja elarulni az alkalmazasnak, hogy a nyelv melyik
   valtozatat hasznalja). Ezenkivu:l a bo:ngeszo"k, SMTP/POP
   szerverek es webszerverek stb. is ennek alapjan fognak do:nteseket
   hozni. Ime nehany nyelv/orszag kodja:

        Nyelv/orszag kodja                      Leiras                
   en_US                         Angol - Egyesu:lt Allamok            
   ru_RU                         Orosz - Oroszorszag                  
   zh_TW                         Hagyomanyos kinai - Tajvan           

     --------------------------------------------------------------

  23.3.2. Kodolasok

   Bizonyos nyelvek 8 bites, szeles vagy to:bb byte-os, nem ASCII
   kodolasu karaktereket hasznalnak, melyekro"l a multibyte(3) man
   oldalan olvashatunk reszletesebben. Ezeket regebbi alkalmazasok
   egyaltalan nem ismerik fel, es hibasan vezerlo"karaktereknek
   tulajdonitjak. Az ujabbak altalaban mar felismerik a 8 bites
   karaktereket. A felhasznaloknak az alkalmazasokat a szeles vagy a
   to:bb byte-os karakterek hasznalatahoz vagy ujra kell forditaniuk,
   vagy pedig megfelelo"en be kell allitaniuk, az implementaciotol
   fu:ggo"en. A szeles vagy to:bb byte-os karakterek beolvasasahoz es
   feldolgozasahoz a FreeBSD Portgyu"jtemeny nyelvenkent tartalmaz
   ku:lo:nfele programokat. A konkret reszletek megertesehez olvassuk
   el az erintett FreeBSD portok I18N dokumentaciojat.

   Vagyis a felhasznaloknak at kell nezniu:k az alkalmazashoz tartozo
   dokumentaciot, mivel ebbo"l tudhatjak meg, hogyan allitsak be
   ezeket megfelelo"en vagy milyen ertekeket adjanak at a
   configure/Makefile/fordito harmasnak.

   Amiket esetleg erdemes lehet ezzel kapcsolatban eszben tartanunk:

     * A nyelvfu:ggo" egyszeru" karakteres keszletek (lasd
       multibyte(3)), peldaul ISO8859-1, ISO8859-15, KOI8-R, CP437.

     * A szeles vagy to:bb byte-os kodolasok, peldaul az EUC, Big5.

   A karakterkeszletek jelenleg elerheto" listajat meg tudjuk
   tekinteni az IANA adatbazisaban.

     Megjegyzes: A FreeBSD helyettu:k X11-kompatibilis nyelvi
     kodolasokat hasznal.

     --------------------------------------------------------------

  23.3.3. I18N alkalmazasok

   A FreeBSD port- es csomagrendszereben az I18N alkalmazasok a
   ko:nnyebb felismerheto"seg erdekeben a nevu:kben tartalmazzak az
   I18N megnevezest. Nem minden esetben tamogatjak a szu:kseges
   nyelvet.

     --------------------------------------------------------------

  23.3.4. A nyelvi beallitasok megadasa

   Altalaban elegendo" annyi, hogy a kivant nyelvi beallitas nevet
   exportaljuk az altalunk hasznalt parancsertelmezo" LANG
   ko:rnyezeti valtozojaba. Ez megteheto" a felhasznaloi
   ko:nyvtarunkban talalhato ~/.login_conf, vagy a felhasznaloi
   parancsertelmezo" indito allomanyaban (~/.profile, ~/.bashrc,
   ~/.cshrc). Nem szu:kseges a nyelvi beallitasok reszleteit, mint
   peldaul az LC_CTYPE, LC_CTIME valtozokat, megadni. A pontosabb
   reszleteket a FreeBSD adott nyelvre vonatkozo dokumentaciojaban
   talaljuk meg.

   A ko:vetkezo" ket ko:rnyezeti valtozot kell megadnunk az emlitett
   konfiguracios allomanyokban:

     * A LANG valtozot a POSIX setlocale(3) csaladjanak

     * A MM_CHARSET valtozot az alkalmazas MIME karakterkeszletehez

   Ez magaban foglalja a felhasznaloi parancsertelmezo", az adott
   alkalmazas es az X11 beallitasat.

     --------------------------------------------------------------

    23.3.4.1. A nyelvi beallitasok megadasanak modszerei

   Ket modszer letezik a nyelvi beallitasok megadasara, ezen
   ketto"ro"l fogunk a tovabbiakban beszelni. Az elso" (es egyben
   ajanlott) ezek ko:zu:l a bejelentkezesi osztalyban levo"
   ko:rnyezeti valtozok beallitasa, a masodik pedig ko:rnyezeti
   valtozok hozzaadasa a parancsertelmezo" rendszerszintu" indito
   allomanyahoz.

     --------------------------------------------------------------

      23.3.4.1.1. Beallitas a bejelentkezesi osztalyokkal

   Ezzel a modszerrel a nyelvi beallitas nevehez es a MIME
   karakterkeszlethez ko:to"do" ko:rnyezeti valtozokat az o:sszes
   letezo" parancsertelmezo" szamara csak egyszer kell megadnunk
   ahelyett, hogy ku:lo:n mindegyiku:k inditoallomanyaban
   szerepeltetnenk. A felhasznalo a sajat reszet maga is elvegezheti,
   mig a rendszer szintjen adminisztratori jogosultsagokat igenyel.

     --------------------------------------------------------------

        23.3.4.1.1.1. Felhasznaloi szintu" beallitas

   Ime pelda gyanant a felhasznalo ko:nyvtaraban egy egyszeru"
   .login_conf allomany, amiben mind a ket valtozot Latin-1 kodolasra
   allitottuk:

 me:\
         :charset=ISO-8859-1:\
         :lang=de_DE.ISO8859-1:

   Ebben a .login_conf peldaban a valtozokat BIG-5 kodolasu
   hagyomanos kinai nyelvre allitjuk. Eszrevehetju:k, hogy itt sokkal
   to:bb valtozo beallitasara van szu:ksegu:nk, mivel egyes
   szoftverek nem kezelik megfelelo"en a nyelvi beallitasokat kinai,
   japan es koreai nyelvek eseten.

 # Azok a felhasznalok, akik nem kivannak tajvani penz- vagy ido" formatumot
 # hasznalni, egyenkent irjak at a valtozokat
 me:\
         :lang=zh_TW.Big5:\
         :setenv=LC_ALL=zh_TW.Big:\
         :setenv=LC_COLLATE=zh_TW.Big5:\
         :setenv=LC_CTYPE=zh_TW.Big5:\
         :setenv=LC_MESSAGES=zh_TW.Big5:\
         :setenv=LC_MONETARY=zh_TW.Big5:\
         :setenv=LC_NUMERIC=zh_TW.Big5:\
         :setenv=LC_TIME=zh_TW.Big5:\
         :charset=big5:\
         :xmodifiers="@im=gcin": # a gcin beallitasa XIM szerverkent

   A to:bbit lasd a Rendszergazdai szintu" beallitasok resznel es a
   login.conf(5) man oldalon.

     --------------------------------------------------------------

        23.3.4.1.1.2. Rendszergazdai szintu" beallitas

   Elleno"rizzu:k, hogy a felhasznalo /etc/login.conf allomanyban
   szereplo" bejelentkezesi osztalya a megfelelo" nyelvet allitja be.
   Gyo"zo"dju:nk meg rola, hogy az alabbi beallitasok helyet kapnak
   az /etc/login.conf allomanyban:

 nyelv_neve:hozzaferes_megnevezese:\
         :charset=MIME_karakterkeszlet:\
         :lang=nyelvi_beallitas_neve:\
         :tc=default:

   Folytassuk tovabb az elo"bbi Latin-1-es peldank szerint:

 nemet:Nemet felhasznalok hozzaferesei:\
         :charset=ISO-8859-1:\
         :lang=de_DE.ISO8859-1:\
         :tc=default:

   Mielo"tt megvaltoztatnank a felhasznalok bejelentkezesi
   osztalyait, adjuk ki a ko:vetkezo" parancsot:

 # cap_mkdb /etc/login.conf

   Ezzel a /etc/login.conf uj tartalma lathatova valik a rendszer
   szamara.

      A bejelentkezesi osztaly megvaltoztatasa a vipw(8) programmal

   A vipw segedprogramot uj felhasznalok hozzaadasara hasznaljuk,
   aminek eredmenyekeppen egy ehhez hasonlo bejegyzest tudunk
   letrehozni:

 felhasznalo:jelszo:1111:11:nyelv:0:0:Felhasznalo neve:/home/felhasznalo:/bin/sh

      A bejelentkezesi osztaly megvaltoztatasa az adduser(8)-rel

   Az adduser-rel az alabbiak szerint tudunk uj felhasznalokat
   felvenni a rendszerbe:

     * Adjuk hozza a defaultclass = nyelv sort az
       /etc/adduser.conf-hoz. Ne felejtsu:k el, hogy ezutan minden
       olyan felhasznalonal a default bejelentkezesi osztalyt meg
       kell adni, akik nem ezt a nyelvet hasznaljak.

     * Egy masik megoldas lehet, hogy a adduser(8) hasznalata soran
       minden felhasznalo eseten ku:lo:n megadjuk a nyelvet az

 Enter login class: default []:

       resz megjelenesekor.

     * Vagy hasznalhatjuk az alabbit az egyes eltero" nyelvu"
       felhasznalok hozzaadasanal:

 # adduser -class nyelv

      A bejelentkezesi osztaly megvaltoztatasa a pw(8)-vel

   Amennyiben a pw(8)-t hasznaljuk uj felhasznalok hozzaadasara, igy
   erdemes meghivnunk:

 # pw useradd felhasznalo_neve -L nyelv

     --------------------------------------------------------------

      23.3.4.1.2. Beallitas a parancsertelmezo" indito allomanyaval

     Megjegyzes: Ezt a modszert nem javasoljuk, mivel
     parancsertelmezo"nkent eltero" beallitast kivan. Hasznaljuk
     helyette a bejelentkezesi osztalyokkal megvalositott modszert.

   A nyelvi beallitas nevenek es a MIME karakterkeszlet beallitasahoz
   egyszeru"en csak adjuk meg a lenti /etc/profile es/vagy
   /etc/csh.login parancsertelmezo" indito allomanyokban bemutatott
   ko:rnyezeti valtozot. Tovabbra is a nemet nyelvet hasznaljuk a
   peldankban:

   Az /etc/profile eseten:

 LANG=de_DE.ISO8859-1; export LANG
 MM_CHARSET=ISO-8859-1; export MM_CHARSET

   Vagy a /etc/csh.login eseten:

 setenv LANG de_DE.ISO8859-1
 setenv MM_CHARSET ISO-8859-1

   Ugy is megoldhatjuk ezt a feladatot, ha fenti utasitasokat a
   /usr/share/skel/dot.profile (hasonlo a fentebb emlitett
   /etc/profile allomanyhoz) vagy /usr/share/skel/dot.login (hasonlo
   a fentebb emlitett /etc/csh.login allomanyhoz) eseten hajtjuk
   vegre.

   X11 eseten:

   Adjuk meg a $HOME/.xinitrc allomanyban:

 LANG=de_DE.ISO8859-1; export LANG

   Vagy:

 setenv LANG de_DE.ISO8859-1

   Attol fu:ggo"en, milyen parancsertelmezo"t hasznalunk (lasd
   fentebb).

     --------------------------------------------------------------

  23.3.5. A konzol beallitasa

   Az o:sszes egyszeru" karakteres keszlet eseten a kerdeses nyelvhez
   megfelelo" konzolos betu"tipust az /etc/rc.conf allomanyban tudjuk
   beallitani:

 font8x16=betu"tipus_neve
 font8x14=betu"tipus_neve
 font8x8=betu"tipus_neve

   Itt a betu"tipus_neve az .fnt kiterjesztes elhagyasaval a
   /usr/share/syscons/fonts ko:nyvtarban talalhato allomanyok
   nevebo"l adhato meg.

   Mindezek mellett allitsuk be a megfelelo" billentyu"- es
   betu"kiosztast is a sysinstall (vagy /stand/sysinstall a FreeBSD
   5.2-nel regebbi valtozataiban) segitsegevel. Ahogy sikeru:lt
   elinditanunk a sysinstallt, valasszuk a Configure (Beallitasok)
   pontot, majd a Console (Konzol)-t! Vagy ehelyett beirhatjuk az
   alabbi sorokat a /etc/rc.conf allomanyba:

 scrnmap=betu"kiosztas_neve
 keymap=billentyu"kiosztas_neve
 keychange="funkciobillentyu"_sorszama szekvencia"

   Itt a betu"kiosztas_neve a /usr/share/syscons/scrnmaps
   ko:nyvtarban talalhato allomanyok nevebo"l szarmaztathato az .scm
   kiterjesztes elhagyasaval. A betu"kiosztasokat altalaban a 9 bites
   karaktermatrixszal rendelkezo" VGA megjelenito"k problemainak
   megoldasara lehet hasznalni, mivel igy az eredetileg 8 bittel
   abrazolt betu"ket ki lehet tolni az ilyen tipusu kartyak
   pszeudografikus teru:letero"l.

   Ha aktivaltuk a moused egerkezelo" demont az /etc/rc.conf
   allomanyban az alabbi sor megadasaval:

 moused_enable="YES"

   akkor a ko:vetkezo" bekezdesben ra is terhetu:nk az egermutato
   adatainak vizsgalatara.

   A syscons(4) meghajtoban talalhato egermutato alapertelmezes
   szerint a 0xd0 - 0xd3 karaktereket foglalja el a
   karakterkeszletben. Ha a nyelv ezeket hasznalja, arrebb kell
   ko:lto:ztetnu:nk ezt az egermutato altal elfoglalt savot. A
   FreeBSD-ben az /etc/rc.conf allomanyon keresztu:l erhetju:k el:

 mousechar_start=3

   A billentyu"kiosztas_neve a /usr/share/syscons/keymaps
   ko:nyvtarbol, a .kbd kiterjesztes elhagyasaval keletkezik. Ha nem
   vagyunk benne biztosak, melyik kiosztast is kellene hasznalnunk, a
   kbdmap(1) segitsegevel a rendszer ujrainditasa nelku:l
   kiprobalhatjuk a rendelkezesre allo billentyu"kiosztasokat.

   A keychange hasznalatara to:bbnyire a funkciobillentyu"k adott
   terminaltipushoz egyeztetesehez van szu:kseg, mert a
   funkciobillentyu"k szekvenciai nem adhatoak meg a
   billentyu"kiosztasban.

   Ezeken felu:l erdemes megbizonyosodnunk rola, hogy a /etc/ttys
   allomanyban jol allitjuk be a terminal tipusat minden ttyv*
   bejegyzes eseten. Az aktualisan elo"re beallitott kapcsolatok a
   ko:vetkezo"k:

               Karakterkeszlet                    Terminaltipus       
   ISO8859-1 vagy ISO8859-15                cons25l1                  
   ISO8859-2                                cons25l2                  
   ISO8859-7                                cons25l7                  
   KOI8-R                                   cons25r                   
   KOI8-U                                   cons25u                   
   CP437 (alapertelmezett VGA)              cons25                    
   US-ASCII                                 cons25w                   

   A szeles es to:bb byte-os karaktereket hasznalo nyelvek eseten
   hasznaljuk a /usr/ports/nyelv ko:nyvtarban megfelelo" FreeBSD
   portot. Egyes portok konzoloskent jelennek meg, miko:zben a
   rendszer soros virtualis terminalkent latja ezeket, ezert fenn
   kell tartanunk elegendo" virtualis terminalt mind az X11, mind
   pedig pszeudo-soros konzol szamara. Itt lathato a konzolon mas
   nyelvet hasznalo alkalmazasok reszleges listaja:

             Nyelv                             Hely                   
   Hagyomanyos kinai (BIG-5) chinese/big5con                          
   Japan                     japanese/kon2-16dot vagy                 
                             japanese/mule-freewnn                    
   Koreai                    korean/han                               

     --------------------------------------------------------------

  23.3.6. Az X11 beallitasa

   Habar az X11 nem resze a FreeBSD projektnek, megemlitu:nk vele
   kapcsolatban nehany hasznos informaciot a FreeBSD felhasznalok
   szamara is. Meg to:bb reszletet a Xorg honlapjarol vagy az
   altalunk hasznalt X11 szerver dokumentaciojabol tudhatunk meg.

   Az ~/.Xresources allomanyban tovabbi I18N beallitasokat
   finomithatunk alkalmazasonkent (peldaul betu"tipusok, menu:k
   stb.).

     --------------------------------------------------------------

    23.3.6.1. Betu"tipusok megjelenitese

   Telepitsu:k fel az Xorg (x11-servers/xorg-server) vagy az XFree86
   (x11-servers/XFree86-4-Server) szerverek valamelyiket, majd
   telepitsu:k a nyelvhez tartozo TrueType betu"tipusokat. Ezutan a
   megfelelo" nyelvi beallitasa megadasa reven mar latni fogjuk a
   kivalasztott nyelven megjeleno" menu:ket es egyeb szo:vegeket.

     --------------------------------------------------------------

    23.3.6.2. Idegennyelvu" karakterek bevitele

   Az X11 beviteli modszerenek (X11 Input Method, XIM) protokollja
   egy uj szabvany az o:sszes X11 klienshez. Minden X11 alkalmazast
   olyan XIM-klienskent kell elkesziteni, amelyek a bemeno" adatokat
   az XIM beviteli szerverekto"l kapjak. Ku:lo:nbo:zo" XIM szerverek
   erheto"ek el az eltero" nyelvekhez.

     --------------------------------------------------------------

  23.3.7. Nyomtatok beallitasa

   Egyes egyszeru" karakteres keszletek altalaban hardveresen
   beepitve megtalalhatoak a nyomtatokban. A szeles es to:bb byte-os
   karakterkeszletek azonban ku:lo:n beallitast igenyelnek, amire az
   apsfilter hasznalatat javasoljuk. A megfelelo" nyelvhez szabott
   eszko:zo:kkel at is lehet konvertalni PostScript vagy PDF
   formatumba a nyomtatni kivant dokumentumot.

     --------------------------------------------------------------

  23.3.8. A rendszermag es az allomanyrendszerek

   A FreeBSD gyors allomanyrendszere (Fast File System, FFS)
   szabalyosan kezeli a 8 bites karaktereket, tehat tetszo"leges
   egyszeru" karakteres keszlet (lasd multibyte(3)) hasznalhato vele,
   viszont a karakterkeszlet nevet nem tarolja el az
   allomanyrendszerben. Emiatt a neveket nyersen kezeli, semmit sem
   tud a kodolasukrol. Az FFS hivatalosan meg nem tamogat semmilyen
   fajta szeles vagy to:bb byte-os karakterkeszletet. Leteznek
   azonban fu:ggetlen javitasok az FFS-hez, amelyek leheto"ve teszik
   ilyen szeles vagy to:bb byte-os karakterek hasznalatat. Ezek csak
   atmeneti es nem hordozhato megoldasok, olyan modositasok,
   amelyekro"l ugy do:nto:ttu:nk, nem vesszu:k fel ezeket a
   forrasfaba. Az erintett nyelvek honlapjain elerhetju:k ezeket a
   javitasokat es to:bbet megtudhatunk roluk.

   A FreeBSD MS-DOS allomanyrendszere konfiguralhato ugy, hogy kepes
   legyen konvertalni az MS-DOS Unicode es a kivalasztott FreeBSD
   allomanyrendszerenek karakterkeszlete ko:zo:tt. Erro"l bo"vebben a
   mount_msdosfs(8) man oldalon olvashatunk.

     --------------------------------------------------------------

23.4. I18N programok forditasa

   Szamos FreeBSD port rendelkezik I18N tamogatassal. Ezek egy
   reszenek neveben szerepel az -I18N jelzes. Az ilyen es sok mas
   hasonlo program beepitetten ismeri az I18N-t, igy nem igenyelnek
   ku:lo:n beallitasokat.

   Nehany alkalmazas azonban, mint peldaul a MySQL, eseten az adott
   karakterkeszletnek megfelelo" modon kell beallitani a Makefile
   allomanyt. Ezt altalaban magaban a Makefile allomanyban tudjuk
   megtenni, vagy pedig a configure megfelelo" parameterezesevel.

     --------------------------------------------------------------

23.5. A FreeBSD honositasa adott nyelvekre

  23.5.1. Az orosz nyelv (KOI8-R kodolas)

   Eredetileg irta: Andrey Chernov.

   A KOI8-R kodolasrol bo"vebben a KOI8-R oldalan (orosz halozati
   karakterkeszlet) tajekozodhatunk.

     --------------------------------------------------------------

    23.5.1.1. A nyelvi beallitasok megadasa

   Irjuk a ko:vetkezo" sorokat a ~/.login_conf allomanyunkba:

 me:Az en hozzaferesem:\
         :charset=KOI8-R:\
         :lang=ru_RU.KOI8-R:

   Valamint lasd a fejezet korabbi reszeiben emlitett peldakat a
   nyelvi beallitasok megadasara.

     --------------------------------------------------------------

    23.5.1.2. A konzol beallitasa

     * Tegyu:k hozza a ko:vetkezo" sort az /etc/rc.conf
       allomanyunkhoz:

 mousechar_start=3

     * Illetve hasznaljuk az /etc/rc.conf allomanyban meg a
       ko:vetkezo" beallitasokat is:

 keymap="ru.koi8-r"
 scrnmap="koi8-r2cp866"
 font8x16="cp866b-8x16"
 font8x14="cp866-8x14"
 font8x8="cp866-8x8"

     * A /etc/ttys allomanyban szereplo" mindegyik ttyv* bejegyzesnel
       adjuk meg terminaltipusnak a cons25r-t.

   Valamint lasd a fejezet korabbi reszeben bemutatott peldakat a
   konzol beallitasara.

     --------------------------------------------------------------

    23.5.1.3. A nyomtatas beallitasa

   Mivel a legto:bb nyomtato hardveresen tartalmazza a CP866 kodlapot
   az orosz karakterek tamogatasahoz, hasznalnunk kell egy kimeneti
   szu"ro"t a KOI8-R kodolasu karakterek CP866 kodolasura
   konvertalasahoz. Egy ilyen szu"ro" alapertelmezes szerint
   telepitesre keru:l a /usr/libexec/lpr/ru/koi2alt allomanyba. Az
   orosz nyomtatohoz tartozo bejegyzes valahogy igy nez ki az
   /etc/printcap allomanyban:

 lp|Orosz helyi sornyomtato:\
         :sh:of=/usr/libexec/lpr/ru/koi2alt:\
         :lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:

   A bo"vebben magyarazathoz lasd a printcap(5) man oldalt.

     --------------------------------------------------------------

    23.5.1.4. Az MS-DOS allomanyrendszere es az orosz allomanynevek

   A most ko:vetkezo" pelda fstab(5) bejegyzes azt mutatja meg, hogy
   lehet bekapcsolni az orosz allomanynevek tamogatasat a
   csatlakoztatando MS-DOS allomanyrendszereken:

 /dev/ad0s2      /dos/c  msdos   rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0

   Az -L kapcsoloval kivalasztjuk a hasznalni kivant nyelvi beallitas
   nevet, es a -W kapcsoloval megadjuk a karakterek atvaltasahoz
   szu:kseges tablazatot. A -W kapcsolo hasznalata soran mindenkeppen
   csatlakoztassuk a /usr allomanyrendszert meg az MS-DOS particio
   elo"tt, mivel az atvaltashoz hasznalt tablazatok a
   /usr/libdata/msdosfs ko:nyvtarban talalhatoak meg! A reszleteket a
   mount_msdosfs(8) man oldalon talalhatjuk meg.

     --------------------------------------------------------------

    23.5.1.5. Az X11 beallitasa

    1. Adjuk meg elo"szo:r a leirtak szerint a nem X-es nyelvi
       beallitasokat.

    2. Ha Xorg-ot hasznalunk, telepitsu:k a
       x11-fonts/xorg-fonts-cyrillic csomagot.

       Elleno"rizzu:k a /etc/X11/xorg.conf allomanyban a "Files"
       szakaszt. Az alabbi sorokat mindegyik mas FontPath bejegyzes
       elo"tt kell szerepeltetnu:nk:

 FontPath   "/usr/X11R6/lib/X11/fonts/cyrillic/misc"
 FontPath   "/usr/X11R6/lib/X11/fonts/cyrillic/75dpi"
 FontPath   "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi"

       Ha nagy felbontasu megjelenitest hasznalunk, cserelju:k meg a
       75 es a 100 dpi-s sorokat.

         Megjegyzes: A portok ko:zo:tt talalhatunk meg tovabbi cirill
         betu"tipusokat.

    3. Az orosz billentyu"zet eletre keltesehez irjuk be a
       ko:vetkezo"ket az xorg.conf allomany "Keyboard" szakaszaba:

 Option "XkbLayout"   "us,ru"
 Option "XkbOptions"  "grp:toggle"

       Elleno"rizzu:k, hogy a XkbDisable ki van kapcsolva (ki van
       kommentezve) ebben a szakaszban.

       A grp:toggle beallitas eseten az orosz/latin (RUS/LAT)
       atkapcsolas gombja a jobb Alt lesz, mig a
       grp:ctrl_shift_toggle beallitasnal a Ctrl+Shift. A
       grp:caps_toggle eseten az orosz/latin valtas a CapsLock
       billentyu"vel to:rtenik. Ilyenkor (de csak latin modban) a
       megszokott CapsLock funkcio tovabbra is elerheto" a
       Shift+CapsLock kombinacioval. A grp:caps_toggle valamiert nem
       mu"ko:dik az Xorgban.

       Ha van "Windows" billentyu"nk a billentyu"zeten es azt
       tapasztaljuk, hogy egyes nem-alfabetikus billentyu"k rosszul
       keru:lnek kiosztasra orosz modban, adjuk hozza a ko:vetkezo"
       sort az xorg.conf allomanyhoz:

 Option "XkbVariant" ",winkeys"

         Megjegyzes: Az orosz XKB billentyu"zet egyes nem honositott
         alkalmazasok eseten nem mu"ko:dik.

     Megjegyzes: A kis mertekben honositott alkalmazasok eseten
     javasolt meghivni a XtSetLanuageProc(NULL, NULL, NULL);
     fu:ggvenyt valahol a program elejen.

     Az X11 alkalmazasok honositasahoz tovabbi utmutatasokat a KOI8-R
     X Window-ra cimu" leirasban talalhatunk.

     --------------------------------------------------------------

  23.5.2. Hagyomanyos kinai honositas tajvaniak szamara

   A FreeBSD-Taiwan projekt keszitett a FreeBSD-hez egy kinainak
   szolo hogyant, amely elerheto" a
   http://netlab.cse.yzu.edu.tw/~statue/freebsd/zh-tut/ cimen es
   szamos kinai portot hasznal. A FreeBSD kinai hogyan jelenlegi
   szerkeszto"je Shen Chuan-Hsing (<statue@freebsd.sinica.edu.tw>).

   Chuan-Hsing Shen (<statue@freebsd.sinica.edu.tw>) letrehozta a
   Kinai FreeBSD gyu"jtemenyt (Chinese FreeBSD Collection, CFC) a
   FreeBSD-Taiwan zh-L10N-tut munkajat felhasznalva. A hozzatartozo
   csomagok es szkriptek elerheto"ek a
   ftp://freebsd.csie.nctu.edu.tw/pub/taiwan/CFC/ cimen.

     --------------------------------------------------------------

  23.5.3. Honositas nemet (es minden mas ISO 8859-1 kodolasu) nyelvre

   Slaven Rezic (<eserte@cs.tu-berlin.de>) keszitett egy irast, amely
   elmagyarazza, hogyan hasznaljunk nemet nemzeti karaktereket a
   FreeBSD alatt. Ez a leiras nemetu:l keszu:lt es a
   http://user.cs.tu-berlin.de/~eserte/FreeBSD/doc/umlaute/umlaute.html
   cimen erheto" el.

     --------------------------------------------------------------

  23.5.4. Honositas go:ro:g nyelvre

   Nikos Kokkalis <nickkokkalis@gmail.com> egy teljes cikket irt a
   FreeBSD go:ro:g nyelvi tamogatasarol. Ez elerheto" a FreeBSD
   hivatalos go:ro:g nyelvu" dokumentaciojaban, a
   http://www.FreeBSD.org/doc/el_GR.ISO8859-7/articles/greek-language-support/index.html
   cimen. Felhivjuk a figyelmet, hogy az csak go:ro:g nyelven erheto"
   el.

     --------------------------------------------------------------

  23.5.5. Honositas japan es koreai nyelvekre

   A japan honositashoz lasd http://www.jp.FreeBSD.org/, a koreaihoz
   pedig lasd http://www.kr.FreeBSD.org/.

     --------------------------------------------------------------

  23.5.6. Idegennyelvu" FreeBSD dokumentacio

   Nehany FreeBSD felhasznalo leforditotta a FreeBSD
   dokumentaciojanak egyes reszeit mas nyelvekre is. Munkajuk
   elerheto" a fo"oldalon talalhato linkeken keresztu:l vagy a
   /usr/share/doc ko:nyvtarban.

     --------------------------------------------------------------

          Fejezet 24. A FreeBSD frissitese es frissen tartasa

   Atdolgozta, atrendezte es egyes reszeit aktualizalta: Jim Mock.
   Eredetileg irta: Jordan Hubbard, Poul-Henning Kamp, John Polstra,
   es Nik Clayton.

24.1. Attekintes

   A FreeBSD a kiadasok ko:zt is allando fejlo"desben van. Vannak
   felhasznalok, akik a hivatalosan kiadott valtozatokat hasznaljak,
   es vannak, akik szeretik folyamatosan nyomonko:vetni a
   fejleszteseket. Emellett viszont a hivatalos kiadasok eseteben
   szu:kseg lehet bizonyos biztonsagi frissitesek es kritikus
   javitasok alkalmazasara. Fu:ggetlenu:l a pillanatnyilag hasznalt
   valtozattol, a FreeBSD alaprendszereben megtalalhato minden olyan
   eszko:z, amellyel ko:nnyeden frissiteni tudunk a ku:lo:nbo:zo"
   verziok ko:zo:tt. Ebben a fejezetben segitu:nk do:nteni a
   fejleszto"i valtozat es a kiadasok hasznalata ko:zo:tt. Tovabba
   megismerhetju:k a rendszer frissitesehez hasznalhato alapveto"
   eszko:zo:ket.

   A fejezet elolvasasa soran megismerju:k:

     * milyen segedprogramokkal tudjuk frissiteni az alaprendszert es
       a Portgyu"jtemenyt;

     * hogyan tartsuk naprakeszen rendszeru:nket a freebsd-update,
       CVSup, CVS vagy CTM hasznalataval;

     * hogyan vessu:k o:ssze a telepitett rendszeru:nk aktualis
       allapotat egy ismert eredeti valtozattal;

     * hogyan frissitsu:k a dokumentaciot CVSup vagy dokumentacios
       portok segitsegevel.

     * a ket fejleszto"i ag, a FreeBSD-STABLE es a FreeBSD-CURRENT
       ko:zti ku:lo:nbseget;

     * a make buildworld (stb.) segitsegevel hogyan forditsuk es
       telepitsu:k ujra az egesz alaprendszert.

   A fejezet elolvasasahoz ajanlott:

     * a halozati kapcsolatunk helyes beallitasa (31 fejezet);

     * a ku:lso" szoftverek telepitesenek ismerete (4 fejezet).

     Megjegyzes: A fejezetben a FreeBSD forrasainak frissiteset a
     cvsup parancs segitsegevel fogjuk elvegezni. Ehhez telepitsu:k a
     net/cvsup-without-gui portot vagy csomagot, vagy ha mar a
     FreeBSD 6.2-RELEASE vagy keso"bbi valtozataval rendelkezu:nk,
     akkor elegendo" csak az alaprendszer reszekent elerheto" csup(1)
     programot hasznalnunk.

     --------------------------------------------------------------

24.2. A FreeBSD frissitese

   Irta: Tom Rhodes. A megirashoz felhasznalt jegyzeteket keszitette:
   Colin Percival.

   A biztonsagi javitasok telepitese minden szamitogepes szoftver,
   ku:lo:no:sen az operacios rendszerek szamara lenyeges mozzanat.
   Nagyon hosszu ideig ez a FreeBSD eseteben nem volt ko:nnyen
   megoldhato: a javitasokat ko:zvetlenu:l a forraskodon kellett
   elvegezni, ezekbo"l ujraforditani a rendszert, majd telepiteni.

   Ez a nehezseg mostanra viszont mar elharult, mivel a FreeBSD
   legfrissebb verzioi mar tartalmaznak egy freebsd-update nevu"
   segedprogramot, amellyel mindez leegyszeru"so:dik. Ez a program
   ket ku:lo:n funkciot lat el. Elo"szo:r is, leheto"ve teszi, hogy a
   FreeBSD alaprendszer ujraforditasa es -telepitese nelku:l
   javitsunk biztonsagi es egyeb apro hibakat, valamint masodsorban
   tamogatja a kisebb es nagyobb verzioju kiadasok ko:zti valtast.

     Megjegyzes: Ezek a binaris frissitesek azonban csak a FreeBSD
     biztonsagi csapata altal is felu:gyelt architekturak es kiadasok
     eseten erheto"ek el. Emellett bizonyos leheto"segek
     hasznalatahoz, peldaul a FreeBSD verzioi ko:zti atallas
     tamogatasahoz a freebsd-update(8) legujabb valtozata, valamint
     minimum a FreeBSD 6.3 kiadasa szu:ksegeltetik. Ezert ne
     felejtsu:k el alaposan atolvasni a legujabb kiadasokrol szolo
     bejelenteseket mielo"tt frissitenenk rajuk, mivel ezzel
     kapcsolatban fontos informaciokat tartalmazhatnak. Az emlitett
     bejelentesek a http://www.FreeBSD.org/releases/ cimen erheto"ek
     el.

   Ha a crontab mar hivatkozik a freebsd-update programra, akkor a
   most ko:vetkezo" mu"velet elkezdese elo"tt tiltsuk le.

     --------------------------------------------------------------

  24.2.1. A konfiguracios allomanyok

   Elo"fordulhat, hogy valtoztatni akarunk valamin a frissitesi
   folyamatban es ezert szeretnenk modositani a programhoz tartozo
   konfiguracios allomanyt. Az opciok reszletes ismertetessel
   rendelkeznek, habar nemelyiknel meg tovabbi magyarazat kellhet:

 # Az alaprendszerben frissiteni kivant komponensek
 Components src world kernel

   Ezzel a parameterrel hatarozhatjuk meg, hogy a FreeBSD mely reszei
   keru:ljenek frissitesre. Alapertelmezes szerint a program frissiti
   a forrasokat, a teljes alaprendszert es a rendszermagot.
   Komponenskent a telepitesnel valaszthato elemeket adhatjuk meg,
   peldaul "world/games" hozzaadasakor a games kategoria elemei is
   folyamatosan frissu:lni fognak. Az "src/bin" megadasakor pedig az
   src/bin ko:nyvtar tartalma frissu:l.

   Ezt a beallitast a legjobb meghagyni az alapertelmezett erteken,
   mivel a tovabbi elemek megadasanal egyenkent fel kell sorolni a
   frissitendo" komponenseket. Ha itt viszont kifelejtu:nk valamit,
   akkor ko:nnyen megeshet, hogy a forrasok es a binarisok verzioja
   elcsuszik egymastol.

 # Az IgnorePaths beallitas utan megadott szo:vegre illeszkedo" o:sszes
 # bejegyzes frissitese kimarad
 IgnorePaths

   Ennel a beallitasnal azokat a ko:nyvtarakat kell megadnunk,
   amelyeket (es tartalmukat) ki szeretnenk hagyni a frissites soran.
   Ezek lehetnek peldaul a /bin vagy az /sbin. Igy meg tudjuk
   akadalyozni, hogy freebsd-update esetleg felu:lirjon valamilyen
   helyi valtoztatast a rendszeru:nkben.

 # Az UpdateIfUnmodified beallitas utan megadott eleresi utvonalakon csak
 # a felhasznalo altal meg nem modositott allomanyok fognak frissu:lni
 # (hacsak a modositasokat o:ssze nem fesu:lju:k, lasd lentebb)
 UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile

   A megadott ko:nyvtarakban csak azokat a konfiguracios allomanyokat
   fogja frissiteni, amelyeket nem valtoztattuk meg. Amennyiben
   barmelyiku:k elter az eredetileg frissitendo" valtozattol, azt a
   program nem modositja. Letezik egy masik hasonlo beallitas, a
   KeepModifiedMetadata, amely hatasara a freebsd-update az
   o:sszefesu:les soran elmenti a valtoztatasokat.

 # A MergeChanges beallitasnal szereplo" allomanyok helyi modositasait
 # automatikusan o:sszefesu:lju:k a FreeBSD ujabb verziojara frissitese ko:zben
 MergeChanges /etc/ /var/named/etc/

   Itt azokat a ko:nyvtarakat adhatjuk meg, amelyekben a
   freebsd-update szamara engedelyezzu:k a konfiguracios allomanyok
   uj verziojanak o:sszefesu:leset a jelenlegi allapottal. Az
   o:sszefesu:les lenyegeben a mergemaster(8) hasznalatanal mar
   megszokott modon, diff(1) formatumban erkezo" modositasok sorozata
   alapjan to:rtenik. Ekkor egy szo:vegszerkeszto" segitsegevel
   felu:gyelhetju:k az o:sszefesu:les menetet vagy megallithatjuk a
   freebsd-update futasat. Ha ketsegeink adodnak, akkor egyszeru"en
   mentsu:k le az /etc ko:nyvtarat es fogadjuk el mindegyik
   o:sszefesu:les eredmenyet. A mergemaster mu"ko:desero"l a
   24.7.11.1 Szakasz ad reszletesebb tajekoztatast.

 # A FreeBSD frissitesekor ezt a ko:nyvtarat fogja a program hasznalni a
 # leto:lto:tt modositasok es az egyeb ideiglenes allomanyok tarolasara
 # WorkDir /var/db/freebsd-update

   Az itt megadott ko:nyvtarba fognak keru:lni az elvegzendo"
   modositasok es az egyeb ideiglenesen keletkezo" allomanyok. A
   verziok ko:zti valtas soran ebben a ko:nyvtarban ajanlott legalabb
   1 GB szabad tarteru:letnek lennie.

 # A kiadasok ko:zti valtas soran a Components beallitasnal megadott
 # elemek keru:ljenek csak frissitesre (StrictComponents yes), vagy a
 # program probalja meg magatol kitalalni, hogy milyen komponesek
 # *lehetnek* fenn a rendszeren es azokat frissitse (StrictComponents
 # no)?
 # StrictComponents no

   Ha ennel a beallitasnal a yes erteket adjuk meg, akkor a
   freebsd-update feltetelezni fogja, hogy a Components opcional
   felsoroltunk minden frissitendo" komponenst es nem probal meg mast
   is megvaltoztatni. Ilyenkor tehat a freebsd-update tulajdonkeppen
   egyedu:l csak a Components altal meghatarozott elemekhez tartozo
   allomanyokat fogja frissiteni.

     --------------------------------------------------------------

  24.2.2. Biztonsagi javitasok

   A biztonsagi javitasok mindig egy tavoli gepen tarolodnak, a
   ko:vetkezo" parancsok hasznalataval to:ltheto"ek le es
   telepitheto"ek:

 # freebsd-update fetch
 # freebsd-update install

   Amennyiben a rendszermagot is erintik javitasok, ugy a rendszert a
   mu"velet befejezo"desevel ujra kell inditanunk. Ha minden a
   megfelelo" modon to:rtent, akkor a rendszeru:nk mar tartalmazni
   fogja a korabban leto:lto:tt es telepitett javitasokat, es a
   freebsd-update akar beallithato egy naponta vegrehajtando cron(8)
   feladatnak. Ehhez mindo:ssze a ko:vetkezo" bejegyzest kell
   elhelyeznu:nk az /etc/crontab allomanyban:

 @daily                                  root    freebsd-update cron

   A bejegyzes szerint naponta egyszer le fog futni a freebsd-update.
   Ilyenkor, vagyis a cron parameter megadasakor a freebsd-update
   csak elleno"rzi, hogy vannak-e telepitendo" frissitesek. Ha talal,
   akkor automatikusan leto:lti ezeket a lemezre, de nem telepiti.
   Helyette levelben ertesiti a root felhasznalot, aki ezutan
   barmikor manualisan kerheti a telepitest.

   Problema eseten az alabbi paranccsal megkerhetju:k a
   freebsd-update programot a legutobb telepitett modositasok
   visszavonasara:

 # freebsd-update rollback

   Ha ez a visszavonas a rendszermagra vagy annak moduljaira is
   vonatkozott, akkor a rendszert ujra kell inditanunk a parancs
   futasanak befejezo"desevel. A FreeBSD csak ilyenkor kepes
   beto:lteni az uj binarisokat beto:lteni a memoriaba.

   A freebsd-update o:nmagatol csak a GENERIC tipusu rendszermagokat
   kepes frissiteni. Ha sajat rendszermagot hasznalunk, akkor azt a
   rendszer to:bbi komponensenek frissiteset ko:veto"en ujra kell
   forditanunk es telepitenu:nk. A freebsd-update azonban meg akkor
   is erzekelni es frissiteni fogja a GENERIC rendszermagot
   (amennyiben az letezik), ha az eppen nem az aktualis(an futo)
   rendszermag.

     Megjegyzes: Mindig erdemes tartani egy masolatot a GENERIC
     rendszermagrol a /boot/GENERIC ko:nyvtarban. Rengeteg
     ku:lo:nbo:zo" problema felderiteseben tud segiteni, illetve ez a
     24.2.3 Szakasz szakaszban leirt freebsd-update programmal
     vegzett frissiteseknel is hasznos lehet.

   Hacsak nem valtoztatjuk meg az /etc/freebsd-update.conf allomanyt,
   a freebsd-update a rendszermag forrasait is frissiti a to:bbivel
   egyu:tt. A sajat rendszermag ujraforditasa es telepitese ezutan a
   mar a megszokott modon elvegezheto".

     Megjegyzes: A freebsd-update altal terjesztett frissitesek nem
     mindig erintik a rendszermagot. Ha a rendszermag forrasai nem
     valtoznak egy freebsd-update install parancs kiadasa soran,
     akkor nem ko:telezo" ujraforditani a sajat rendszermagot. A
     freebsd-update viszont mindig modositani fogja a
     /usr/src/sys/conf/newvers.sh allomanyt. Itt az aktualis
     hibajavitas sorszama szerepel (amelyet a -p (mint "patch level"
     elo"taggal kapcsolnak a rendszer verziojahoz, es a uname -r
     paranccsal lehet lekerdezni). Ennek megfelelo"en tehat a sajat
     rendszermag ujraforditasa utan, meg ha semmi mas nem is
     valtozott, a uname(1) kepes pontosan jelezni a rendszerhez
     keszu:lt hibajavitas sorszamat. Ez ku:lo:no:sen fontos to:bb
     rendszer karbantartasa soran, mivel igy ko:nnyen es gyorsan
     tajekozodhatunk azok naprakeszsegero"l.

     --------------------------------------------------------------

  24.2.3. Valtas kisebb es nagyobb verziok ko:zo:tt

   Verziok ko:zti valtas soran a ku:lso" alkalmazasok mu"ko"deset
   akadalyozo regi targykodok es fu:ggvenyko:nyvtarak to:rlo"dni
   fognak. Ezert javasoljuk, hogy vagy to:ro:lju:k le az o:sszes
   portot es telepitsu:k ujra, vagy az alaprendszer frissitese utan
   hozzuk ezeket is naprakesz allapotba a ports-mgmt/portupgrade
   segedprogram segitsegevel. Elo"szo:r minden bizonnyal szeretnek
   kiprobalni a frissitest, ezt a ko:vetkezo" paranccsal tehetju:k
   meg:

 # portupgrade -af

   Ezzel gondoskodunk rola, hogy a minden a megfelelo"en
   telepito"djo:n ujra. Ha a BATCH ko:rnyezeti valtozot a yes ertekre
   allitjuk, akkor a folyamat soran megjeleno" o:sszes kerdesre
   automatikusan a yes valaszt adjuk, ezaltal o:nallositani tudjuk.

   Ha sajat rendszermagot hasznalunk, akkor ennel valamivel azert
   to:bb feladatunk van. Szu:ksegu:nk lesz a GENERIC rendszermagot
   egy peldanyara, amelyet masoljunk a /boot/GENERIC ko:nyvtarba.
   Amennyiben nincs GENERIC tipusu rendszermag a rendszeru:nko:n, a
   ko:vetkezo" modok valamelyiken keresztu:l tudunk szerezni:

     * Ha a sajat rendszermagot meg csak egyszer forditottuk, akkor a
       /boot/kernel.old ko:nyvtarban meg megtalalhato a GENERIC. Ezt
       nevezzu:k at egyszeru"en /boot/GENERIC ko:nyvtarra.

     * Ha fizikailag hozza tudunk ferni az erintett gephez, akkor a
       GENERIC egy peldanyat akar CD-ro"l is atmasolhatjuk.
       Helyezzu:k be a telepito"lemezt es adjuk ki a ko:vetkezo"
       parancsokat:

 # mount /cdrom
 # cd /cdrom/X.Y-RELEASE/kernels
 # ./install.sh GENERIC

       Itt a X.Y-RELEASE ko:nyvtar neveben ertelemszeru"en
       helyettesitsu:k be az altalunk hasznalt valtozatot. A GENERIC
       rendszermag ekkor alapertelmezes szerint a /boot/GENERIC
       ko:nyvtarba keru:l.

     * Ha az elo"bbiek ko:zu:l egyik sem lehetseges, akkor a GENERIC
       rendszermagot ko:zvetlenu:l akar forrasbol is lefordithatjuk
       es telepithetju:k:

 # cd /usr/src
 # env DESTDIR=/boot/GENERIC make kernel
 # mv /boot/GENERIC/boot/kernel/* /boot/GENERIC
 # rm -rf /boot/GENERIC/boot

       A freebsd-update akkor fogja ezt GENERIC rendszermagkent
       felismerni, ha a hozzatartozo konfiguracios allomanyt nem
       modositjuk. Tovabba javasoljuk, hogy semmilyen specialis
       beallitast ne alkalmazzunk a forditas soran (erdemes u:resen
       hagyni ehhez az /etc/make.conf allomanyt).

   Nem ko:telezo" ujrainditani a rendszert a GENERIC rendszermaggal.

   A freebsd-update kepes frissiteni rendszeru:nket egy adott
   kiadasra. Peldaul a ko:vetkezo" parameterek megadasaval valthatunk
   a FreeBSD 6.4 hasznalatara:

 # freebsd-update -r 6.4-RELEASE upgrade

   A parancs elindulasa utan nem sokkal, a valtashoz szu:kseges
   informaciok o:sszegyu"jtesehez a freebsd-update elemzi a
   konfiguracios allomanyaban megadott beallitasokat es a rendszer
   jelenleg hasznalt verziojat. A kepernyo"n ekkor sorban megjelennek
   a program reszero"l erzekelt es nem erzekelt komponensek. Mint
   peldaul ahogy itt lathato:

 Looking up update.FreeBSD.org mirrors... 1 mirrors found.
 Fetching metadata signature for 6.3-RELEASE 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

   Ekkor a freebsd-update megprobalja leto:lteni a verziok ko:zti
   valtashoz szu:kseges o:sszes allomanyt. Bizonyos esetekben
   kerdesekkel fordul a felhasznalo fele arra vonatkozoan, hogy miket
   telepitsen fel vagy mit csinaljon.

   A sajat rendszermag hasznalatakor az imenti lepes valamilyen ehhez
   hasonlo figyelmeztetest fog adni:

 WARNING: This system is running a "SAJAT RENDSZERMAG" kernel, which is not a
 kernel configuration distributed as part of FreeBSD 6.3-RELEASE.
 This kernel will not be updated: you MUST update the kernel manually
 before running "/usr/sbin/freebsd-update install"

   Ez a figyelmeztetes most nyugodtan figyelmen kivu:l hagyhato. A
   folyamat soran a frissitett GENERIC rendszermagot fogjuk
   hasznalni.

   A javitasok leto:lteset ko:veto"en megkezdo"dik a telepitesu:k. A
   valtas ezen lepese az adott gep aktualis terheleseto"l es
   sebessegeto"l fu:ggo"en valtozo hosszusagu lehet. Ezutan a
   konfiguracios allomanyok o:sszefesu:lese zajlik le -- itt
   altalaban a emberi felu:gyeletre is szu:kseg van az allomanyok
   o:sszefesu:lesenek iranyitasahoz, amelynek folyamatosan lathatoak
   az eredmenyei. A meghiusult vagy kihagyott o:sszefesu:lesek a
   teljes frissitesi folyamat leallasat vonjak maguk utan. Az /etc
   ko:nyvtarban tarolt fontosabb allomanyokrol, mint peldaul a
   master.passwd vagy group javasolt elo"zetesen biztonsagi mentest
   kesziteni es keso"bb kezzel hozzajuk adni a valtoztatasaikat.

     Megjegyzes: A rendszerben ekkor meg nem lesz jelen semmilyen
     konkret valtozas, az o:sszes emlitett javitas es o:sszefesu:les
     egy ku:lo:n ko:nyvtarban to:rtenik. A telepitett javitasokat es
     az o:sszefesu:lt konfiguracios allomanyokat a folyamat vegen
     maganak a felhasznalonak kell veglegesiteni.

   A frissitesi eljaras vegen a ko:vetkezo" parancs kiadasaval tudjuk
   tenylegesen ervenyesiteni az eddig elvegzett modositasokat:

 # freebsd-update install

   Elo"szo:r mindig a rendszermag es a hozzatartozo modulok
   cserelo"dnek le. Ahogy ez vegrehajtodott, ujra kell inditanunk a
   rendszert. Ha sajat rendszermagot hasznalunk, akkor a nextboot(8)
   parancs segitsegevel allitsuk be a ko:vetkezo" rendszerinditas
   soran beto:ltendo" rendszermagot a /boot/GENERIC ko:nyvtarban
   levo"re (ezt frissitettu:k):

 # nextboot -k GENERIC

     Figyelem: Mielo"tt ujrainditanank a gepu:nket a GENERIC
     rendszermaggal, gyo"zo"dju:nk meg rola, hogy szerepel benne
     minden olyan meghajto, amely elengedhetetlen a rendszer
     hianytalan inditasahoz (es kepes lesz ujra csatlakozni a
     halozathoz, ha eppen tavolrol adminisztraljuk). Ez ku:lo:no:sen
     olyan esetben fontos, amikor a sajat rendszermagunkban
     beepitetten szerepeltek bizonyos modulok. Ilyenkor a GENERIC
     rendszermag hasznalatakor ezeket a /boot/loader.conf allomanyon
     keresztu:l to:ltethetju:k be ideiglenesen. A frissites
     befejezeseig erdemes viszont minden nem letfontossagu
     szolgaltatast leallitani, levalasztani lemezeket es halozati
     megosztasokat stb.

   A rendszeru:nk most mar ujraindithato a frissitett rendszermaggal:

 # shutdown -r now

   A rendszer sikeres ujraindulasa utan ismet el kell inditanunk a
   freebsd-update programot, amely korabban mar elmentette a
   frissites allapotat, emiatt a legutobbi pontrol fog folytatodni,
   illetve to:rli az osztott ko:nyvtarak es targykodok regebbi
   valtozatait. Innen az alabbi paranccsal lephetu:nk tovabb:

 # freebsd-update install

     Megjegyzes: A fu:ggvenyko:nyvtarak verzioi ko:zti elteresek
     merteketo"l fu:ggo"en elkepzelheto", hogy a telepites az
     emlitett harom fazis helyett ketto"ben to:rtenik.

   Most pedig ujra kell forditanunk vagy telepitenu:nk az o:sszes
   altalunk korabban hasznalt ku:lso" alkalmazast. Erre azert van
   szu:ksegu:nk, mert bizonyos alkalmazasok a verziok ko:zti valtas
   soran to:ro:lt programko:nyvtaraktol fu:ggtek. Ennek
   automatizalasaban a ports-mgmt/portupgrade lesz segitsegu:nkre. Az
   alkalmazasok frissitesenek elinditasahoz a ko:vetkezo" parancsokat
   hasznaljuk:

 # portupgrade -f ruby
 # rm /var/db/pkg/pkgdb.db
 # portupgrade -f ruby18-bdb
 # rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db
 # portupgrade -af

   A parancsok lefutasat ko:veto"en a freebsd-update utolso hivasaval
   zarjuk le a frissitest. Ezzel a paranccsal tudunk tehat pontot
   tenni a frissitesi procedura vegere:

 # freebsd-update install

   Ha a GENERIC rendszermagot csak atmenetileg hasznaltuk, akkor most
   mar a megszokott modon fordithatunk es telepithetu:nk magunk egy
   sajat rendszermagot.

   Inditsuk ujra a rendszert a FreeBSD frissitett valtozataval. A
   folyamat ezzel veget ert.

     --------------------------------------------------------------

  24.2.4. Rendszerek allapotainak o:sszehasonlitasa

   A freebsd-update ragyogoan felhasznalhato a FreeBSD egy telepitett
   valtozatanak es egy altalunk garantaltan megbizhato peldanyanak
   o:sszevetesere. Ilyenkor a rendszerhez tartozo segedprogramokat,
   programko:nyvtarakat es konfiguracios allomanyokat
   elleno"riztethetju:k le. Az o:sszehasonlitast ezzel a paranccsal
   kezdhetju:k meg:

 # freebsd-update IDS >> eredmeny.idk

     Figyelem: Habar a parancs neve IDS (intrusion detection system),
     nem helyettesit semmilyen olyan behatolasjelzo" megoldast, mint
     amilyen peldaul a security/snort. Mivel a freebsd-update
     adatokat tarol a lemezen, teljesen kezenfekvo" a hamisitas
     leheto"sege. Mig ennek esheto"sege adott mertekben
     visszaszorithato a kern.securelevel cso:kkentesevel es a
     freebsd-update altal hasznalt adatok irasvedett
     allomanyrendszerre helyezesevel, erre a problemara az idealis
     megoldast megis egy teljes biztonsagban tudhato referencia
     rendszer jelentheti. Ennek tarolasara alkalmas lehet peldaul egy
     DVD vagy egy ku:lso" USB-egyseg.

   A parancs kiadasa utan megkezdo"dik a rendszer vizsgalata, es az
   elleno"rzes soran folyamatosan jelennek meg az atvizsgalt
   allomanyok a hozzajuk tartozo ismert es kiszamitott
   sha256(1)-kodjukkal egyu:tt. Mivel a kepernyo"n tulsagosan gyorsan
   elusznanak az eredmenyek, ezert ezeket egy eredmeny.idk nevu"
   allomanyba mentju:k a keso"bbi elemzesekhez.

   Az igy keletkezo" allomany sorai ugyan megleheto"sen hosszuak, de
   szerencsere viszonylag ko:nnyen ertelmezheto"ek. Peldaul az adott
   kiadasban szereplo" allomanyoktol eltero"eket ezzel a paranccsal
   kerdezhetju:k le:

 # cat eredmeny.idk | awk '{ print $1 }' | more
 /etc/master.passwd
 /etc/motd
 /etc/passwd
 /etc/pf.conf

   A peldaban most csak az elso" nehany allomanyt hagytuk meg,
   gyakran tapasztalhatunk viszont ennel to:bbet. Ezek ko:zu:l
   bizonyos allomanyok ertelemszeru"en elternek, mint itt peldaul az
   /etc/passwd, mert ido"ko:zben uj felhasznalokat adtunk a
   rendszerhez. Maskor egyeb allomanyok, peldaul modulok nevei is
   felbukkanhatnak, mert tegyu:k fel, hogy a freebsd-update mar
   frissitette ezeket. Ha ki szeretnenk zarni valamilyen allomanyokat
   vagy ko:nyvtarakat az elleno"rzesbo"l, egyszeru"en csak soroljuk
   fel ezeket az /etc/freebsd-update.conf allomanyban megjeleno"
   IDSIgnorePaths beallitasnal.

   A korabban targyaltaktol fu:ggetlenu:l ez a rendszer alkalmas
   bonyolultabb frissitesi folyamatok kisegitesere is.

     --------------------------------------------------------------

24.3. A Portgyu"jtemeny frissitese a Portsnap hasznalataval

   Irta: Tom Rhodes. A megirashoz felhasznalt jegyzeteket keszitette:
   Colin Percival.

   A FreeBSD alaprendszer a Portgyu"jtemeny frissitesehez is
   tartalmaz egy portsnap(8) elnevezesu" segedprogramot. Ez a program
   elinditasa utan csatlakozik egy tavoli gephez, elleno"rzi a
   biztonsagi kulcsat es leto:lti a portok legfrissebb valtozatait. A
   biztonsagi kulcs feladata a frissites ko:zben leto:lto:tt
   allomanyok sertetlensegenek szavatolasa, ezzel gondoskodik rola,
   hogy az adatok atvitelu:k ko:zben nem valtoztak meg. A
   Portgyu"jtemeny legujabb valtozatat igy erhetju:k el:

 # portsnap fetch
 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.

   A peldaban lathato, hogy a portsnap(8) eltereseket talalt a helyi
   es a tavoli rendszerekben fellelheto" portok ko:zo:tt, majd azokat
   elleno"rizte. Emellett az is megfigyelheto", hogy korabban mar
   futtatuk a programot, mivel ha most inditottuk volna az elso"
   alkalommal, akkor egyszeru"en leto:lto:tte volna a teljes
   Portgyu"jtemenyt.

   Ahogy a portsnap(8) sikeresen befejezi az iment kiadott fetch
   mu"velet vegrehajtasat, a helyi rendszeren mar telepitesre keszen
   fog varakozni a Portgyu"jtemeny es az hozzatartozo elleno"rzo:tt
   modositasok. A tenyleges telepitesu:ket a ko:vetkezo"keppen
   kerhetju:k:

 # portsnap extract
 /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
 ...

   Ezzel lezarult a portok frissitese, innento"l mar az aktualizalt
   Portgyu"jtemeny felhasznalasaval tetszo"legesen telepitheto"ek
   vagy frissitheto"ek az alkalmazasok.

   Az elo"bb emlitett mu"veleteket igy tudjuk egyetlen parancsba
   foglalni:

 # portsnap fetch update

     --------------------------------------------------------------

24.4. A dokumentacio frissitese

   Az alaprendszer es a Portgyu"jtemeny mellett a dokumentacio is a
   FreeBSD operacios rendszer szerves reszet kepezi. Noha a FreeBSD
   dokumentaciojanak legfrissebb valtozata folyamatosan elerheto" a
   FreeBSD honlapjarol, egyes felhasznalok ezt csak lassan vagy nem
   kepesek folyamatosan elerni. Szerencsere egy helyi masolat
   megfelelo" karbantartasaval az egyes kiadasokhoz tartozo
   dokumentacio is frissitheto".

     --------------------------------------------------------------

  24.4.1. A dokumentacio frissitese CVSup hasznalataval

   A FreeBSD telepitett dokumentaciojanak forrasai az
   alaprendszerehez hasonloan (lasd 24.7 Szakasz) a CVSup
   segitsegevel frissitheto"ek. Ebben a szakaszban megismerhetju:k:

     * hogyan telepitsu:k a dokumentacio elo"allitasahoz szu:kseges
       eszko:zo:ket, amelyekkel a forrasokbol ujra tudjuk generalni a
       FreeBSD dokumentaciojat;

     * hogyan to:ltsu:k le a dokumentacio forrasat CVSup segitsegevel
       a /usr/doc ko:nyvtarba;

     * a dokumentacio elo"allitasahoz alkalmazott rendszer milyen
       beallitasokkal rendelkezik, vagyis hogyan korlatozzuk a
       generalast bizonyos nyelvekre vagy formatumokra.

     --------------------------------------------------------------

  24.4.2. A CVSup es a dokumentacios eszko:zo:k telepitese

   Viszonylag sokfele eszko:zre lesz szu:ksegu:nk, ha a FreeBSD
   dokumentaciojat a forrasokbol akarjuk elo"allitani. Ezek az
   segedprogramok nem reszei a FreeBSD alaprendszerenek, mivel
   alapveto"en nagyon sok helyet foglalnak el, es leginkabb olyan
   FreeBSD felhasznalok szamara fontosak, akik folyamatosan a
   dokumentacioval dolgoznak vagy gyakran frissitik azt forrasbol.

   A feladathoz szu:kseges o:sszes eszko:z elerheto" a
   Portgyu"jtemenybo"l. Ebben a FreeBSD Dokumentacios Projekt
   o:sszeallitott egy textproc/docproj nevu" portot, amellyel az
   emlitett programok telepiteset es frissiteset igyekeztek
   megko:nnyiteni.

     Megjegyzes: Ha nem tartunk igenyt a dokumentacio PostScript vagy
     PDF valtozatara, akkor ehelyett inkabb erdemes megfontolnunk a
     textproc/docproj-nojadetex port telepiteset. Ebben a valtozatban
     a teTeX betu"szedo" rendszer kivetelevel az o:sszes segedprogram
     megtalalhato. Mivel a teTeX o:nmagaban nagyon sok segedeszko:z
     telepiteset jelenti, ezert amennyiben a PDF valtozat tenylegesen
     nem szu:kseges, erdemes eltekinteni a telepiteseto"l.

   A CVSup telepitesevel kapcsolatban pedig reszletesebb
   informaciokat a CVSup hasznalataval foglalkozo szakaszban
   olvashatunk.

     --------------------------------------------------------------

  24.4.3. A dokumentacio forrasanak frissitese

   A /usr/share/examples/cvsup/doc-supfile konfiguracios allomany
   segitsegevel a CVSup kepes leto:lteni a dokumentacio
   forrasallomanyainak legfrissebb peldanyait. Itt a frissitest
   alapertelmezes szerint egy nem letezo" gepto"l fogjuk kerni (mivel
   ezt ko:telezo" kito:lteni), azonban a cvsup(1) programnak egy
   parancssori parameter segitsegevel megadhatjuk melyik CVSup
   szerverro"l to:ltse le a forrasokat:

 # cvsup -h cvsup.FreeBSD.org -g -L 2 /usr/share/examples/cvsup/doc-supfile

   Ne felejtsu:k el a cvsup.FreeBSD.org helyere beirni a hozzank
   fo:ldrajzilag legko:zelebb elhelyezkedo" CVSup szervert. Ezek
   teljes listajat a A.6.7 Szakasz tartalmazza.

   Egy ideig eltarthat, amig elo"szo:r leto:ltju:k a forrasokat.
   Varjuk meg tu:relmesen, amig befejezo"dik a mu"velet.

   Keso"bb a forrasokat ugyanezzel a paranccsal tudjuk frissiteni. A
   CVSup ugyanis mindig csak a legutobbi futtatasa ota to:rtent
   valtozasokat to:lti le, ezert keso"bb mar ez a lepes jelento"sen
   felgyorsulhat.

   A forrasok leto:ltese utan a dokumentaciot peldaul az ekkor
   keletkezett /usr/doc ko:nyvtarban talalhato Makefile hasznalataval
   allithatjuk elo". Tehat miutan az /etc/make.conf allomanyban
   beallitottuk a SUP_UPDATE, SUPHOST es DOCSUPFILE valtozokat, le
   tudjuk futtatni a ko:vetkezo" parancsot:

 # cd /usr/doc
 # make update

   Az elo"bb emlitett make(1) valtozok jellemzo" ertekei:

 SUP_UPDATE= yes
 SUPHOST?= cvsup.freebsd.org
 DOCSUPFILE?= /usr/share/examples/cvsup/doc-supfile

     Megjegyzes: Mivel a SUPHOST es a DOCSUPFILE valtozok erteket a
     ?= szimbolummal allitottuk be, leheto"segu:nk van a
     parancssorbol ezeknek mas ertekeket adni. Az /etc/make.conf
     allomanyba altalaban igy erdemes felvenni a valtozokat, igy nem
     kell minden alkalommal modositani, amikor valamilyen uj
     beallitast akarunk kiprobalni.

     --------------------------------------------------------------

  24.4.4. A dokumentacio ku:lo:nbo:zo" beallitasai

   A FreeBSD dokumentaciojahoz tartozo, frissitest es elo"allitast
   vegzo" rendszernek van nehany olyan beallitasa, amelyekkel
   kerhetju:k kizarolag csak a dokumentacio egyes reszeinek
   frissiteset vagy bizonyos kimeneti formatumok hasznalatat. Ezek
   vagy globalisan az /etc/make.conf allomanyban, vagy pedig a
   parancssorbol, a make(1) program parameterekent adhatoak meg.

   Izelito"u:l nehany ko:zu:lu:k:

   DOC_LANG

           Az elo"allitando es telepitendo" nyelvu" dokumentacio
           felsorolasa, tehat peldaul csak az angol dokumentacio
           eseten ez en_US.ISO8859-1.

   FORMATS

           Az elo"allitando dokumentacio kimeneti formatumainak
           felsorolasa. Itt pillanatnyilag ertekkent a html,
           html-split, txt, ps, pdf es rtf jelenhet meg.

   SUPHOST

           A frissiteshez hasznalt CVSup szerver halozati neve.

   DOCDIR

           Az elkeszu:lt dokumentacio telepitesenek helye. Ez
           alapertelmezes szerint a /usr/share/doc.

   A folyamathoz kapcsolodoan tovabbi rendszerszintu" make(1)
   valtozokrol a make.conf(5) man oldalon olvashatunk.

   A FreeBSD dokumentaciojanak elo"allitasaert felelo"s rendszerben
   hasznalhato make(1) tovabbi valtozok bemutatasaval kapcsolatban
   pedig olvassuk el az A FreeBSD Dokumentacios Projekt iranyelvei
   kezdo"knek cimu" ko:nyvet.

     --------------------------------------------------------------

  24.4.5. A FreeBSD dokumentaciojanak telepitese forrasbol

   Miutan sikeru:lt leto:ltenu:nk a /usr/doc ko:nyvtarba a
   dokumentacio legfrissebb forrasait, keszen allunk a
   rendszeru:nko:n telepitett peldany frissitesere.

   A DOCLANG ertekekent megadott nyelven keszu:lt dokumentaciokat a
   ko:vetkezo" paranccsal tudjuk frissiteni:

 # cd /usr/doc
 # make install clean

   Ha a make.conf allomanyban korabban mar megadtuk a DOCSUPFILE,
   SUPHOST es SUP_UPDATE valtozok ertekeit, akkor a telepites fazisa
   ko:nnyeden o:ssze is vonathato a forrasok frissitesevel:

 # cd /usr/doc
 # make update install clean

   Ha pedig csak bizonyos nyelvekhez tartozo dokumentaciot szeretnenk
   frissiteni, akkor a make(1) akar a /usr/doc ko:nyvtaron belu:l az
   egyes nyelvekhez tartozo alko:nyvtarakon belu:l is meghivhato,
   peldaul:

 # cd /usr/doc/en_US.ISO8859-1
 # make update install clean

   A dokumentacio formatumat a FORMATS valtozo felhasznalasaval
   tudjuk meghatarozni:

 # cd /usr/doc
 # make FORMATS='html html-split' install clean

     --------------------------------------------------------------

  24.4.6. A dokumentacios portok hasznalata

   A szobanforgo megoldast fejlesztette: Marc Fonvieille.

   Ez elo"zo" szakaszban megmutattuk hogyan lehet a FreeBSD
   dokumentaciojat a forrasok felhasznalasaval frissiteni. A forrasok
   hasznalataval vegzett frissites azonban nem minden FreeBSD
   rendszer eseteben lehetseges vagy hatekony. Ha ugyanis a
   dokumentacios forrasbol akarjuk elo"allitani, viszonylag sok
   eszko:z es segedprogram, az un. dokumentacios eszko:zo:k
   hasznalataval kell tisztaban lennu:nk, valamint bizonyos mertekig
   ismernu:nk kell a CVS hasznalatat, tudunk kell kikerni a
   legfrissebb valtozatot es elo"allitatattnunk belo"le a vegleges
   valtozatot. Ezert ebben a szakaszban most szot ejtu:nk egy olyan
   modszerro"l, ahol a FreeBSD dokumentaciojat a Portgyu"jtemenyen
   keresztu:l tudjuk frissiteni, ezaltal:

     * anelku:l le tudjuk to:lteni es telepiteni a dokumentacio adott
       pillanatban generalt valtozatat, hogy a rendszeru:nko:n barmi
       tovabbi teendo"re szu:kseg lenne (ennek ko:szo:nheto"en nem
       kell telepitenu:nk a dokumentacios eszko:zo:ket);

     * leto:lthetju:k a dokumentacio forrasat es a Portgyu"jtemeny
       eszko:zeivel elo"allithatjuk belo"le a megfelelo" valtozatot
       (ez a forrasok beszerzeseben es feldolgozasaban segit
       valamelyest).

   A FreeBSD dokumentacio frissitesenek fentebb emlitett modjait
   tamogatjak tehat a dokumentacios portok, amelyeket a Documentation
   Engineering Team <doceng@FreeBSD.org> havi rendszeresseggel tart
   karban. Ezek a portok a FreeBSD Portgyu"jtemenyen belu:l a docs
   nevu" virtualis kategoriaban talalhatoak meg.

     --------------------------------------------------------------

    24.4.6.1. A dokumentacios portok forditasa es telepitese

   A dokumentacio ko:nnyebb elo"allitasahoz a dokumentacios portok a
   Portgyu"jtemeny leheto"segeit veszik igenybe. Segitsegu:kkel
   automatikussa teszik a dokumentacio forrasanak leto:lteset, a
   make(1) parancs meghivasat a megfelelo" ko:rnyezetben,
   beallitasokkal es parancssori parameterekkel. Rajtuk keresztu:l a
   dokumentacio eltavolitasa ugyanolyan egyszeru"en megteheto", mint
   akarmelyik masik FreeBSD port vagy csomag eseteben.

     Megjegyzes: Tovabba, amikor a dokumentacios portokat a sajat
     rendszeru:nko:n forditjuk, a dokumentacios eszko:zo:k
     fu:ggo"segkent automatikusan telepu:lni fognak.

   A dokumentacios portok a ko:vetkezo" modon szervezo"dnek:

     * Letezik egy un. "fo"port", a misc/freebsd-doc-en, ahol az
       o:sszes fontosabb allomany megtalalhato. Ez lenyegeben a
       dokumentacios portok ko:zo:s o"se. Alapertelmezes szerint
       kizarolag csak az angol nyelvu" dokumentaciot allitja elo".

     * Letezik egy "mindenes port", a misc/freebsd-doc-all, amely az
       o:sszes elerheto" nyelven es formatumban elo"allitja a
       dokumentaciot.

     * Vegezetu:l minden nyelvhez letezik egy-egy "alport", ilyen
       peldaul a magyar dokumentacio eseten a misc/freebsd-doc-hu
       port. Mindegyiku:k a fo"porttol fu:gg es az adott nyelvu"
       dokumentaciot telepitik.

   Az eddigi o:sszefoglaltaknak megfelelo"en a dokumentacios portokat
   forrasbol a ko:vetkezo" paranccsal lehet telepiteni (root
   felhasznalokent):

 # cd /usr/ports/misc/freebsd-doc-en
 # make install clean

   Ennek hatasara elo"all es telepito"dik a
   /usr/local/share/doc/freebsd ko:nyvtarba az angol nyelvu"
   dokumentacio allomanyokra bontott HTML formatumban (hasonloan a
   http://www.FreeBSD.org tartalmahoz).

     --------------------------------------------------------------

      24.4.6.1.1. Gyakori beallitasok

   A dokumentacios portok alapertelmezett viselkedese to:bb
   ku:lo:nbo:zo" opcio segitsegevel is befolyasolhato. Ezek ko:zu:l
   most o:sszefoglalunk nehanyat:

   WITH_HTML

           Minden dokumentum egyetlen HTML allomanyba keru:ljo:n. A
           vegeredmeny ekkor az adott dokumentum tipusanak
           megfelelo"en article.html (cikk) vagy book.html (ko:nyv)
           neven keletkezik (kepekkel egyu:tt).

   WITH_PDF

           Minden dokumentum Adobe Portable Document Format tipusu
           allomanyban jo:n letre. Ezek az allomanyok a Ghostscript
           vagy mas egyeb PDF nezegeto"kkel nyithatoak meg. Ekkor a
           dokumentacio konkret tipusatol fu:ggo"en az allomanyok
           article.pdf (cikk) vagy book.pdf (ko:nyv) neven allitodnak
           elo".

   DOCBASE

           A dokumentacio telepitesenek helye. Alapertelmezes szerint
           ez a /usr/local/share/doc/freebsd ko:nyvtar.

             Megjegyzes: U:gyelju:nk arra, hogy a telepites
             alapertelmezett celko:nyvtara elter a CVSup
             modszereto"l. Ugyanis mivel ilyenkor egy portot
             telepitu:nk, a tartalma alapertelmezes szerint a
             /usr/local ko:nyvtaron belu:lre keru:l. Ez azonban a
             PREFIX valtozo atallitasaval tetszo"leges
             megvaltoztathato.

   Az elo"bbieket most egy ro:vid peldan keresztu:l o:sszefoglaljuk.
   A ko:vetkezo" paranccsal tudjuk tehat a magyar nyelvu"
   dokumentacio Portable Document Format valtozatat telepiteni:

 # cd /usr/ports/misc/freebsd-doc-hu
 # make -DWITH_PDF DOCBASE=share/doc/freebsd/hu install clean

     --------------------------------------------------------------

    24.4.6.2. A dokumentacios csomagok hasznalata

   A dokumentacios portok elo"zo" szakaszban bemutatott forrasbol
   telepitesevel kapcsolatban mar emlitettu:k, hogy szu:kseges hozza
   a dokumentacios eszko:zo:k telepitese, valamint nemi szabad
   tarteru:let. Ha a dokumentacios eszko:zo:k telepitesehez nem
   elengedo"ek a rendelkezesre allo ero"forrasaink vagy a forrasok
   feldolgozasa tulsagosan sokat foglalna a rendszeru:nko:n, akkor
   leheto"segu:nk van a dokumentacios portok elo"re leforditott,
   csomagolt valtozatat hasznalni.

   A Documentation Engineering Team <doceng@FreeBSD.org> minden
   honapban elo"kesziti a FreeBSD dokumentacios csomagok legfrissebb
   valtozatat. Az igy karbantartott binaris csomagok azutan
   tetszo"legesen hasznalhatoak a szabvanyos csomagkezelo"
   eszko:zo:kkel, mint amilyen peldaul a pkg_add(1), pkg_delete(1) es
   igy tovabb.

     Megjegyzes: A binaris csomagok hasznalata eseten a FreeBSD
     dokumentacioja az adott nyelvhez az o:sszes elerheto"
     formatumban telepitesre keru:l.

   Peldaul az alabbi paranccsal a magyar nyelvu" dokumentaciohoz
   tartozo legfrissebb binaris csomagot tudjuk telepiteni:

 # pkg_add -r hu-freebsd-doc

     Megjegyzes: A csomagok elnevezese elter a hozzatartozo port
     neveto"l. Alakja a ko:vetkezo": nyelv-freebsd-doc, ahol a nyelv
     az adott nyelv ro:vid kodja, vagyis a magyar eseten a hu,
     illetve az egyszeru"sitett kinai eseten a zh_ch.

     --------------------------------------------------------------

    24.4.6.3. A dokumentacios portok frissitese

   Az elo"zetesen telepitett dokumentacios portok barmilyen portok
   frissitesere alkalmas eszko:zzel frissitheto"ek. Peldaul a
   telepitett magyar nyelvu" dokumentacio a ports-mgmt/portupgrade
   eszko:zo:n keresztu:l igy frissitheto" csomagok hasznalataval:

 # portupgrade -PP hu-freebsd-doc

     --------------------------------------------------------------

24.5. A fejleszto"i ag ko:vetese

   A FreeBSD-nek ket fejlesztesi aga van: a FreeBSD.current es a
   FreeBSD-STABLE. Ebben a szakaszban mindegyiku:kro"l monduk par
   szot, es megmutatjuk, mikent lehet az adott aghoz igazitani a
   rendszeru:nk frissiteset. Elo"szo:r a FreeBSD-CURRENT, majd a
   FreeBSD-STABLE valtozata keru:l targyalasra.

     --------------------------------------------------------------

  24.5.1. A FreeBSD friss valtozatanak hasznalata

   Ahogy arrol mar az iment is szo esett, nem szabad elfelejtenu:nk,
   hogy a FreeBSD-CURRENT a FreeBSD fejlesztesenek "frontvonala".
   Emiatt a FreeBSD-CURRENT hasznaloinak szakmailag jolkepzetteknek
   kell lenniu:k, es sosem szabad visszariadniuk a hasznalat ko:zben
   felmeru:lo" rendszerszintu" problemak o:nallo megoldasatol. Ha
   korabban meg nem foglalkoztunk FreeBSD-vel, ketszer is gondoljuk
   meg a telepiteset!

     --------------------------------------------------------------

    24.5.1.1. Mi a FreeBSD-CURRENT?

   A FreeBSD-CURRENT a FreeBSD mo:go:tt allo legfrissebb forraskodot
   kepviseli. Itt talalkozhatunk ku:lo:nfele olyan fejlesztes alatt
   allo reszekkel, kiserletezesekkel es atmeneti megoldasokkal,
   amelyek nem feltetlenu:l keru:lnek bele a szoftver ko:vetkezo"
   hivatalos kiadasaba. Noha a FreeBSD fejleszto"i a FreeBSD-CURRENT
   forraskodjat naponta forditjak, adodhatnak olyan ido"szakok,
   amikor a forrasok megsem hasznalhatoak maradektalanul. Az ilyen
   gondokat altalaban a leheto" leggyorsabban igyekeznek megoldani,
   azonban attol fu:ggo"en, hogy eppen a forraskod melyik verziojat
   sikeru:lt kifogni, a FreeBSD-CURRENT hasznalata kesz katasztrofa
   vagy akar a fejlo"desben igazi tovabblepes is lehet.

     --------------------------------------------------------------

    24.5.1.2. Kinek van szu:ksege a FreeBSD-CURRENT-re?

   A FreeBSD-CURRENT hasznalata elso"sorban az alabbi 3 csoportot
   erinti:

    1. A FreeBSD ko:zo:sseg azon tagjait, akik aktivan dolgoznak a
       forrasfa valamelyik reszen, es mindazokat, akik szamara a
       "legfrissebb" verzio hasznalata feltetlen elvaras.

    2. A FreeBSD ko:zo:sseg azon tagjait, akik aktivan tesztelnek, es
       a FreeBSD-CURRENT kordaban tartasahoz hajlandoak ido"t aldozni
       a menet ko:zben felbukkano problemak megoldasara. Vannak
       olyanok is, akik a FreeBSD valtozasaival es fejlesztesi
       iranyaval kapcsolatban kivannak javaslatokat tenni, melyeket
       javitasok es modositasok formajaban tesznek ko:zze.

    3. Mindazokat, akik pusztan kivancsiak a fejlesztesben zajlo
       esemenyekre, vagy hivatkozasi szandekkal to:ltik le a
       legfrissebb forrasokat (peldaul csak nezegetik, de nem
       futtatjak). Az ilyen emberek esetenkent megjegyzeseket fu"znek
       a fejleszteshez vagy kodot ku:ldenek be.

     --------------------------------------------------------------

    24.5.1.3. Mi nem a FreeBSD-CURRENT?

    1. Az olyan kiadas elo"tt allo funkciok kiprobalasanak egyszeru"
       modja, amelyekro"l hallottunk, hogy milyen remek ujdonsagokat
       hoznak es mi akarunk lenni az elso"k, akik ezt hasznalni is
       fogjak. Ne feledju:k azonban, hogy amikor mindenki elo"tt
       kezdu:nk el hasznalni egy ujitast, mi leszu:nk egyben az
       elso"k is, akik szembesu:lnek a benne rejlo" hibakkal.

    2. A gyors hibajavitasok eszko:ze. A FreeBSD-CURRENT szinte
       barmelyik valtozata pontosan ugyanakkora valoszinu"seggel hoz
       magaval uj hibakat, mint ahogy eltu:nteti a regieket.

    3. Akarmilyen ertelemben is "hivatalosan tamogatott".
       Kepessegeinkto"l fu:ggo"en o"szinten igyekszu:nk a leheto"
       legto:bbet megtenni a 3 "to:rvenyes" FreeBSD-CURRENT csoportba
       tartozo emberekert, azonban egyszeru"en nincs ido"nk komolyabb
       segitsegnyujtast adni. Ez viszont nem azt jelenti, hogy komisz
       es fukar emberek vagyunk, akik utalnak segiteni a masiknak (de
       masku:lo:nben nem tudna fejlo"dni a FreeBSD). Csupan a FreeBSD
       fejlesztese ko:zben fizikailag keptelenek vagyunk a naponta
       erkezo" ezernyi u:zenetet rendre megvalaszolni! A FreeBSD
       elo"remozditasa es a kiserleti stadiumban allo koddal
       kapcsolatos kerdesek megvalaszolasa ko:zu:l a fejleszto"k
       altalaban az elso"t reszesitik elo"nyben.

     --------------------------------------------------------------

    24.5.1.4. A FreeBSD-CURRENT hasznalata

    1. Iratkozzunk fel az freebsd-current es svn-src-head listakra.
       Ez nem egyszeru"en hasznos, hanem elengedhetetlen. Ha nem
       vagyunk a freebsd-current listan, akkor nem fogjuk latni a
       rendszer aktualis allapotara vonatkozo megjegyzeseket, es igy
       esetleg feleslegesen o:lju:k az ido"nket olyan problemak
       megoldasaba, amelyeket masok mar korabban megoldottak. Ami
       viszont ennel is fontosabb, hogy igy elszalasztjuk a
       rendszeru:nk folyamatos eletbentartasara vonatkozo
       letfontossagu bejelenteseket.

       Az svn-src-head listan lathatjuk az a forraskod egyes
       valtoztatasaihoz tartozo naplobejegyzeseket, a hozzajuk
       tartozo esetleges mellekhatasok ismertetesevel egyu:tt.

       A listakra vagy a http://lists.FreeBSD.org/mailman/listinfo
       oldalon talalhato to:bbi lista valamelyikere ugy tudunk
       feliratkozni, ha rakattintunk a nevere. A tovabbi lepesekro"l
       ezt ko:veto"en itt kapunk ertesitest. Amennyiben a teljes
       forrasfa valtozasai erdekelnek minket, javasoljuk az
       svn-src-all lista olvasasat.

    2. A tu:kro:zesek egyikero"l to:ltsu:k le a FreeBSD forrasat.
       Erre ket mod is kinalkozik:

         a. Hasznaljuk a cvsup programot a /usr/share/examples/cvsup
            ko:nyvtarban talalhato standard-supfile allomannyal. Ez a
            leginkabb ajanlott modszer, hiszen igy csak egyszer kell
            leto:lteni az egesz gyu"jtemenyt, majd ezutan mar csak a
            valtozasokat. Sokan a cvsup parancsot a cron parancson
            keresztu:l adjak ki, es ezzel mindig automatikusan
            frissitik a forrasaikat. A cvsup mu"ko:deset a fentebb
            emlitett minta supfile allomany megfelelo" modositasaval
            tudjuk a sajat ko:rnyezetu:nkho:z igazitani.

              Megjegyzes: Az emlitett standard-supfile allomany
              eredetileg nem a FreeBSD-CURRENT, hanem inkabb a
              FreeBSD biztonsagi problemait erinto" javitasok
              ko:vetesere hasznalatos. A FreeBSD-CURRENT forrasainak
              eleresehez a ko:vetkezo" sort kell kicserelnu:nk ebben
              az allomanyban:

 *default release=cvs tag=RELENG_X_Y

              Erre:

 *default release=cvs tag=.

              A tag parameterekent megadhato egyeb cimkekro"l a
              keziko:nyv CVS cimkek szakaszaban olvashatunk.

         b. Hasznaljuk a CTM alkalmazas nyujtotta leheto"segeket.
            Amennyiben nagyon rossz netkapcsolattal rendelkezu:nk
            (draga vagy csak levelezesre hasznalhato) a CTM megoldast
            jelenthet szamunkra. Legyu:nk azonban tekintettel arra,
            hogy helyenkent zu"ro:s lehet a hasznalata es neha hibas
            allomanyokat gyart. Emiatt viszont csak ritkan
            hasznaljak, igy elo"fordulhat, hogy hosszabb ideig nem is
            mu"ko:dik. A 9600 bps vagy annal nagyobb sebessegu"
            kapcsolatok eseten ezert inkabb a CVSup hasznalatat
            javasoljuk.

    3. Ha nem csak bo:ngeszesre, hanem forditasra is szedju:k a
       forrasokat, mindig to:ltsu:k le a FreeBSD-CURRENT egeszet, ne
       csak egyes reszeit. Ez azzal magyarazando, hogy a forraskod
       bizonyos reszei mas helyeken talalhato reszekto"l is
       fu:ggenek, es ezert az o:nallo forditasuk szinte garantaltan
       gondot fog okozni.

       A FreeBSD-CURRENT leforditasa elo"tt figyelmesen olvassuk at a
       /usr/src ko:nyvtarban talalhato Makefile allomanyt. A
       frissitesi folyamat reszekent elo"szo:r mindenkeppen erdemes
       telepiteni egy uj rendszermagot es ujraforditani az
       alaprendszert. Olvassuk el a FreeBSD-CURRENT levelezesi lista
       u:zeneteit es a /usr/src/UPDATING allomanyt, ahol
       megtalalhatjuk az ezzel kapcsolatos legujabb informaciokat,
       melyek egy-egy ujabb kiadas ko:zeledtevel egyre fontosabba
       valnak.

    4. Foglalkozzunk vele! Ha mar a FreeBSD-CURRENT valtozatat
       hasznaljuk, ne legyu:nk restek velemenyt formalni rola,
       ku:lo:no:sen abban az esetben, ha tovabbfejlesztesekro"l vagy
       hibakra van szo. Leginkabb a forraskoddal egyu:tt erkezo"
       javaslatoknak szoktak o:ru:lni a fejleszto"k!

     --------------------------------------------------------------

  24.5.2. A FreeBSD stabil valtozatanak hasznalata

    24.5.2.1. Mi a FreeBSD-STABLE?

   A FreeBSD-STABLE az a fejlesztesi ag, ahonnan az egyes kiadasok
   szarmaznak. Ebbe az agba mar mas u:temben keru:lnek a valtozasok,
   mivel altalanosan elfogadott, hogy ide a korabban mar kiprobalt
   modositasok vandorolnak at a FreeBSD-CURRENT agbol. Ez azonban meg
   mindig csak egy fejlesztesi ag, ami arra utal, hogy a
   FreeBSD-STABLE altal adott pillanatban kepviselt forrasok nem
   feltetlenu:l felelnek meg bizonyos celokra. Ez csupan egy ujabb
   fejlesztesi nyomvonal, nem pedig a vegfelhasznalok kenyere.

     --------------------------------------------------------------

    24.5.2.2. Kinek van szu:ksege a FreeBSD-STABLE-re?

   Ha szeretnenk figyelemmel kiserni vagy valamilyen modon
   kiegesziteni a FreeBSD fejlesztesi folyamatat, ku:lo:no:sen a
   FreeBSD ko:vetkezo" "nagyobb" kiadasat illeto"en, akkor erdemes
   ko:vetnu:nk a FreeBSD-STABLE forrasait.

   Habar a FreeBSD-STABLE agba is bekeru:lnek a biztonsagi jellegu"
   javitasok, etto"l meg nem kell feltetlenu:l ezt ko:vetnu:nk. A
   FreeBSD-hez kiadott biztonsagi figyelmeztetesek mindig leirjak,
   hogyan kell javitani a hibat az erintett kiadasokban [13] ,
   azonban az egesz fejlesztesi agat felesleges csak biztonsagi okbol
   kifolyolag ko:vetni, mivel igy olyan valtozasok is keru:lhetnek a
   rendszerbe, amire nincs szu:ksegu:nk.

   Habar igyekszu:nk gondoskodni a FreeBSD-STABLE agban talalhato
   forrasok lefordithatosagarol es mu"ko:do"kepessegero"l, nem minden
   esetben szavatolhato. Raadasul mivel a FreeBSD-STABLE agba
   keru:lo" kodokat elo"szo:r a FreeBSD-CURRENT agban fejlesztik ki,
   es mivel a FreeBSD-STABLE felhasznaloi to:bben vannak a
   FreeBSD-CURRENT valtozatenal, ezert szinte elkeru:lhetetlen, hogy
   ilyenkor a FreeBSD-STABLE valtozatban bizonyos hibak es
   szelso"seges esetek be ne ko:vetkezzenek, amelyek a
   FreeBSD-CURRENT hasznalata soran meg nem buktak ki.

   Ezert a FreeBSD-STABLE ag vakon ko:veteset senkinek sem ajanljuk,
   es ku:lo:no:sen fontos, hogy eles szervereken elo"zetes kimerito"
   tesztelesek nelku:l ne futassunk FreeBSD-STABLE rendszert.

   Ha ehhez nem rendelkezu:nk elegendo" ero"forrassal, akkor
   egyszeru"en hasznaljuk a FreeBSD legfrissebb kiadasat, es az egyes
   kiadasok ko:zo:tt pedig binaris frissitessel ko:zlekedju:nk.

     --------------------------------------------------------------

    24.5.2.3. A FreeBSD-STABLE hasznalata

    1. Iratkozzunk fel a freebsd-stable listara. Ezen keresztu:l
       ertesu:lhetu:nk a FreeBSD-STABLE hasznalata soran felmeru:lo"
       forditasi fu:ggo"segekro"l vagy mas, ku:lo:n figyelmet
       igenylo" problemakrol. Gyakran ezen a levelezesi listan
       elmelkednek a fejleszto"k a vitatott javitasokrol vagy
       frissitesekro"l, amibe a felhasznalok is beleszolhatnak, ha a
       szobanforgo valtoztatassal kapcsolatban barmilyen problemajuk
       vagy o:tletu:nk van.

       Iratkozzunk fel a ko:vetni kivant aghoz tartozo SVN levelezesi
       listara. Peldaul ha a 7-STABLE ag valtozasait ko:vetju:k,
       akkor az svn-src-stable-7 listara erdemes feliratkoznunk.
       Ennek segitsegevel elolvashatjuk az egyes valtoztatasokhoz
       tartozo naplobejegyzeseket, a rajuk vonatkozo esetleges
       mellekhatasok ismertetesevel egyu:tt.

       Ezekre, valamint a http://lists.FreeBSD.org/mailman/listinfo
       cimen elerheto" listak valamelyikere ugy tudunk feliratkozni,
       ha a nevu:kre kattintunk. A tovabbi teendo"k ezutan itt
       jelennek meg.

    2. Amennyiben egy uj rendszert akarunk telepiteni es a
       FreeBSD-STABLE havonta keszu:lt pillanatkepeit akarjuk rajta
       futtatni, akkor erro"l bo"vebb felvilagositast a Pillanatkepek
       honlapjan talalhatunk (angolul). Emellett a legfrissebb
       FreeBSD-STABLE kiadast telepithetju:k a tu:kro:zesek
       valamelyikero"l is, majd innen a lentebb talalhato utasitasok
       szerint tudunk hozzaferni a FreeBSD-STABLE forraskodjanak
       legfrissebb valtozatahoz.

       Ha mar fut a gepu:nko:n a FreeBSD egy korabbi kiadasa, es ezt
       akarjuk forrason keresztu:l frissiteni, akkor ezt a FreeBSD
       tu:kro:zeseivel ko:nnyeden megtehetju:k. Ket modon is:

         a. Hasznaljuk a cvsup programot a /usr/share/examples/cvsup
            ko:nyvtarbol szarmazo stable-supfile allomannyal. Ez a
            leginkabb ajanlott modszer, mivel igy csak egyszer kell
            leto:lteni a teljes gyu"jtemenyt, utana mar csak a
            hozzatartozo valtoztatasokra van szu:ksegu:nk. A cvsup
            parancsot sokan a cron segitsegevel futtatjak, es ezzel
            automatikusan frissu:lnek a forrasainak. A cvsup
            mu"ko:deset ko:rnyezetu:nkho:z az elo"bb emlitett minta
            supfile megfelelo" modositasaval tudjuk behangolni.

         b. Hasznaljuk a CTM programot. Ha nincs olcso vagy gyors
            internetkapcsolatunk, akkor erdemes ezt a modszert
            valasztani.

    3. Alapveto"en azonban ha gyorsan szeretnenk hozzajutni a
       forrasokhoz es a savszelesseg nem meghatarozo tenyezo", akkor
       helyette valasszuk a cvsup vagy az ftp hasznalatat, es csak
       minden mas esetben CTM-et.

    4. Mielo"tt leforditanank a FreeBSD-STABLE valtozatat,
       figyelmesen olvassuk at a /usr/src ko:nyvtarban levo" Makefile
       allomanyt. Az atallasi folyamat reszekent elo"szo:r minden
       bizonnyal telepitenu:nk kell egy uj rendszermagot es ujra kell
       forditanunk az alaprendszert. A FreeBSD-STABLE levelezesi
       lista valamint a /usr/src/UPDATING elolvasasabol
       ertesu:lhetu:nk azokrol az egyeb, gyakran nagyon fontos
       valtozasokrol, melyek elengedhetetlenek lesznek a ko:vetkezo"
       kiadas hasznalatahoz.

     --------------------------------------------------------------

24.6. A forras szinkronizalasa

   Az internet (vagy elektronikus levelek) hasznalatan keresztu:l
   szamos mod kinalkozik az FreeBSD Projekthez tartozo forrasok
   frissen tartasahoz egy adott, vagy eppen az o:sszes teru:leten
   attol fu:ggo"en, hogy mik erdekelnek minket. Ehhez elso"sorban az
   Anonim CVS, CVSup es CTM szolgaltatasokat ajanljuk fel.

     Figyelem: Habar lehetseges csupan a forrasfa egyes reszeit
     leto:lteni, a tamogatott frissitesi eljaras soran azonban
     szu:ksegu:nk lesz az egesz fa szinkronizalasara es a rendszerhez
     tartozo felhasznaloi programok (vagyis minden olyan program,
     amely a felhasznaloi terben fut, ilyeneket talalhatunk to:bbek
     ko:zt a /bin es /sbin ko:nyvtarakban) valamint rendszermag
     ujraforditasara is. Ha csak a felhasznaloi programok forrasait,
     vagy csak a rendszermagot, esetleg csupan a forrasfa egyes
     reszeit frissitju:k, akkor az gondokat okozhat. Az itt
     elo"fordulo problemak forditasi hibaktol kezdve
     rendszero:sszeomlasokon keresztu:l akar adatvesztesbe is
     torkollhatnak.

   Az Anonim CVS es a CVSup alkalmazasok un. lehuzassal frissitik a
   forrasokat. A CVSup hasznalatakor a felhasznalo (vagy a cron
   szkript) meghivja a cvsup programot, amely az allomanyok
   aktualizalasahoz felveszi a kapcsolatot egy mashol megtalalhato
   cvsupd szerverrel. Az igy nyert frissitesek az adott pillanatig
   visszemeno"leg erkeznek meg, de csak akkor, ha igenyelju:k ezeket.
   A frissitest ko:nnyeden le tudjuk szabalyozni a szamunkra erdekes
   egyes allomanyokra es ko:nyvtarakra. A frissiteseket a szerver
   hozza letre menet ko:zben annak megfelelo"en, hogy milyen
   verziokkal rendelkezu:nk, es mihez akarunk szinkronizalni. Az
   Anonim CVS a CVSupnal valamivel egyszeru"bb abban a tekintetben,
   hogy ez a CVS-nek egy olyan kiterjesztese, amely leheto"ve teszi a
   valtoztatasok ko:zvetlen lehuzasat egy tavoli CVS tarhazbol.
   Miko:zben a CVSup mindezt sokkal hatekonnyabb valositja meg, addig
   az Anonim CVS joval ko:nnyebben hasznalhato.

   Velu:k szemben a CTM nem hasonlitja o:ssze interaktivan a sajat es
   a ko:zponti szerveren tarolt forrasokat es nem is huzza at ezeket.
   Ehelyett egy olyan szkripto"l van szo, amely naponta to:bbszo:r
   megvizsgalja a ko:zponti CTM szerveren tarolt allomanyok a
   legutobbi futtatas ota keletkezett valtoztatasait, majd az eszlelt
   modosulasokat beto:mo:riti, felcimkezi egy sorozatszammal es
   (nyomtathato ASCII formatumban) elo"kesziti ezeket az e-mailen
   keresztu:li ku:ldesre. Az igy letrehozott "CTM deltak"
   megerkezesu:k utan a ctm_rmail(1) segedprogrammal keru:lnek
   feldolgozasra, amely magatol visszaalakitja, elleno"rzi es
   alkalmazza a valtoztatasokat a forrasfa felhasznalo birtokaban
   levo" masolatara. Ez a megoldas hatekonyabb a CVSup hasznalatanal,
   mert kisebb terhelest jelent a szerverek szamara, hiszen a
   frissiteshez nem a lehuzast, hanem a ku:ldest alkalmazzak.

   Termeszetesen minden emlitett eljarasnak megvannak a maga
   kompromisszumai. Ha veletlenu:l kito:ro:lju:k a forrasfank egyes
   reszeit, a CVSup kepes ezt eszrevenni es helyreallitani a seru:lt
   reszeket. A CTM ezzel szemben ezt nem vegzi el, szoval ha
   (biztonsagi mentes nelku:l) leto:ro:lju:k a forrasainkat, akkor az
   egesz szinkronizalast az elejero"l kell kezdenu:nk (pontosabban a
   legfrissebb CVS-es "alapdeltatol") es a CTM-mel ujraepiteni az
   egeszet, esetleg a Anonim CVS-sel leto:ro:lni a hibas adatokat es
   ujraszinkronizalni.

     --------------------------------------------------------------

24.7. Az alaprendszer ujraforditasa

   Miutan sikeru:lt a helyi forrasfankat a FreeBSD egy neku:nk
   szimpatikus (FreeBSD-STABLE, FreeBSD-CURRENT es igy tovabb)
   valtozatahoz igazitanunk, elerkezett az ido", hogy a segitsegevel
   ujraforditsuk az egesz rendszert.

     Keszitsu:nk biztonsagi mentest: Nem tudjuk elegge
     nyomatekositani, hogy mielo"tt nekikezdenenk, keszitsu:nk egy
     biztonsagi mentest a rendszeru:nkro"l. Mig az alaprendszer
     ujraforditasa nem tulsagosan bonyolult feladat (egeszen addig,
     amig a megadott utasitasokat ko:vetju:k), sajat magunk vagy
     masok hibajabol fakadoan kialakulhatnak olyan helyzetek, amikor
     a rendszer nem lesz kepes elindulni.

     Mindenkeppen gyo"zo:dju:nk meg rola, hogy tisztessegesen
     elvegeztu:k a mentest es akad a kezu:nk u:gyeben egy javitasra
     felhasznalhato rendszerindito floppy vagy CD. Valoszinu"leg soha
     nem lesz tenylegesen szu:ksegu:nk rajuk, azonban jobb felni,
     mint megijedni!

     Iratkozzunk fel a megfelelo" levelezesi listakra: A
     FreeBSD-STABLE es FreeBSD-CURRENT agak termeszetu:knel fogva
     fejlesztes alatt allnak. A FreeBSD fejleszteset is emberek
     vegzik, ezert elo"fordulhatnak benne tevedesek.

     Ezek a tevedesek gyakran csak artalmatlan aprosagok, amelyek
     hatasara kapunk peldaul egy ismeretlen diagnosztikai hibat. De
     ezzel szemben letrejo:hetnek pusztito ereju" hibak is, amelyek
     hatasara a rendszeru:nk nem lesz kepes elindulni, karosodnak az
     allomanyrendszerek (vagy meg rosszabb).

     Ha ilyen to:rtenik, akkor egy "felszolitast" (egy "heads up"
     temaju u:zenetet) ku:ldenek az erintett valtozatokhoz tartozo
     listakra, amelyben igyekeznek kifejteni a problema termeszetet
     es a rendszerre mert hatasat. Miutan "minden rendbejo:tt", a
     problema megoldasarol is ku:ldenek egy ertesitest.

     Ha a FreeBSD-STABLE levelezesi lista vagy a FreeBSD-CURRENT
     levelezesi lista olvasasa nelku:l probaljuk meg hasznalni a
     FreeBSD-STABLE es FreeBSD-CURRENT verziokat, akkor csak
     magunknak keressu:k a bajt.

     Ne hasznaljuk a make world parancsot: Rengeteg regebben keszu:lt
     dokumentacio erre a feladatra a make world parancs kiadasat
     javasolja. Ennek hasznalataval azonban atlepu:nk olyan fontos
     lepeseket, amelyek valojaban csak akkor lennenek kihagyhatoak,
     ha pontosan tudjuk mit csinalunk. Ezert az esetek do:nto"
     to:bbsegeben nem a make world hasznalatara van szu:ksegu:nk,
     hanem a most bemutatando eljarasra.

     --------------------------------------------------------------

  24.7.1. A rendszer frissitese diohejban

   A frissites megkezdese elo"tt erdemes elolvasnunk a
   /usr/src/UPDATING allomanyt, ahol a leto:lto:tt forrasok
   hasznalatahoz elvegzendo" elo"zetes intezkedesekro"l kaphatunk
   hirt. Ezutan ko:vessu:k az alabbiakban ko:rvonalazott modszer
   egyes lepeseit.

   Ezek a lepesek feltetelezik, hogy egy korabbi FreeBSD verziot
   hasznalunk, tehat a fordito, a rendszermag, az alaprendszer es a
   konfiguracios allomanyok valamelyik regebbi valtozatat.
   Alaprendszer alatt, amelyet sokszor csak a "world" neven
   hivatkozunk, a rendszer szamara alapveto" fontossagu binarisokat,
   programko:nyvtarakat es programfejleszteshez szu:kseges egyeb
   allomanyokat ertju:k. Maga a forditoprogram is resze ennek,
   azonban tartalmaz nehany specialis megszoritast.

   Mindezek mellett tovabba feltetelezzu:k, hogy elo"zetesen mar
   valamilyen modon leto:lto:ttu:k a friss forrasokat. Ha
   rendszeru:nko:n ezt meg nem tettu:k volna meg, akkor a 24.6
   Szakasz segitsegevel tajekozodhatunk reszletesen arrol, hogyan
   to:lthetju:k le a legfrissebb verziot.

   A rendszer forraskodon keresztu:li frissitese egy kicsivel
   ko:ru:lmenyesebb, mint amennyire elso"re latszik. A FreeBSD
   fejleszto"k az evek soran fontosnak talaltak, hogy a folyamatosan
   felszinre bukkano, elkeru:lhetetlen fu:ggo"segek tu:kreben
   megleheto"sen dramai modon megvaltoztassak az erre javasolt
   modszert. Ezert a szakasz tovabbi reszeben a pillanatnyilag
   javasolt frissitesi megoldas nyoman fogunk haladni.

   A sikeres frissitesek soran az alabbi akadalyokkal kell
   mindenkeppen szembeneznu:nk:

     * A fordito regebbi valtozata nem feltetlenu:l lesz kepes
       leforditani az uj rendszermagot. (Illetve a regebbi
       forditoprogramok tartalmazhatnak hibakat.) Ezert az uj
       rendszermagot mar a fordito uj valtozataval kell
       elo"allitanunk. Ebbo"l ko:vetkezik, hogy az uj rendszermag
       elkeszitesehez elo"szo:r a forditoprogram ujabb valtozatat
       kell leforditanunk. Ez viszont nem feltetlenu:l jelenti azt,
       hogy az uj rendszermag forditasa elo"tt az uj forditoprogramot
       telepitenu:nk is kellene.

     * Az uj alaprendszer esetenkent bizonyos uj funkciokat
       igenyelhet a rendszermagtol. Ezert a frissebb alaprendszer
       telepitese elo"tt telepitenu:nk kell a frissebb rendszermagot.

     * Ez az elo"bb emlitett ket akadaly kepzi az okat a ko:vetkezo"
       bekezdesekben bemutatott buildworld, buildkernel,
       installkernel, installworld sorozatnak. Termeszetesen leteznek
       tovabbi egyeb indokok is, amiert meg erdemes az itt leirtak
       szerint frissiteni a rendszeru:nket. Ezek ko:zu:l most
       vegyu:nk nehany kevesbe nyilvanvalobbat:

          * A regebbi alaprendszer nem minden esetben fog
            problemamentesen egyu:ttmu"ko:dni az uj rendszermaggal,
            ezert az alaprendszer ujabb valtozatat szinte azonnal az
            uj rendszermagot ko:veto"en kell telepitenu:nk.

          * Vannak olyan konfiguracios valtoztatasok, amelyeket meg
            az uj alaprendszer telepitese elo"tt el kell vegeznu:nk,
            a to:bbi viszont veszelyes lehet a korabbi
            alaprendszerre. Ezert a konfiguracios allomanyokat
            altalaban ket ku:lo:n lepesben kell frissiteni.

          * A frissites soran nagyreszt csak allomanyok cserelo"dnek
            el es ujabbak erkeznek, a korabbiak nem to:rlo"dnek. Ez
            bizonyos esetekben azonban gondokat okozhat. Ennek
            eredmenyekeppen a frissites soran ido"nkent
            elo"fordulhat, hogy magunknak kell manualisan nemely
            megadott allomanyokat to:ro:lnu:nk. Elkepzelheto", hogy
            ezt a jo:vo"ben meg majd automatizalni fogjak.

       Ezek a megfontolasok vezettek tehat az ismertetendo" eljaras
       kialakitasahoz. Etto"l fu:ggetlenu:l adodhatnak olyan
       helyzetek, amikor tovabbi lepeseket is be kell iktatnunk,
       viszont az itt bemutatott folyamat egy ideje mar viszonylag
       elfogadottnak tekintheto":

         1. make buildworld

            Elo"szo:r leforditja az uj forditoprogramot es nehany
            hozzatartozo eszko:zt, majd ennek felhasznalasaval
            elkesziti az alaprendszer to:bbi reszet. Az eredmeny a
            /usr/obj ko:nyvtarban keletkezik.

         2. make buildkernel

            Eltero"en a config(8) es make(1) programok korabban
            javasolt alkalmazasatol, ezzel a paranccsal mar a
            /usr/obj ko:nyvtarban letrehozott uj forditot hasznaljuk.
            Ez vedelmet nyujt a fordito es rendszermag valtozatai
            ko:zti elteresekbo"l fakado problemak ellen.

         3. make installkernel

            Telepiti a lemezre az uj rendszermagot es a hozzatartozo
            modulokat, ezaltal leheto"ve valik a frissitett
            rendszermag beto:ltese.

         4. Atvaltas egyfelhasznalos modba.

            Egyfelhasznalos modban a minimalisra cso:kkenthetju:k a
            futo szoftverek frissitesebo"l adodo bonyodalmakat. Ezzel
            egyu:tt minimalissa valik a regi alaprendszer es az uj
            rendszermag eltereseibo"l eredo" problemak elo"fordulasa
            is.

         5. mergemaster -p

            Az uj alaprendszer telepitesehez elvegzi a konfiguracios
            allomanyok reszero"l szu:kseges frissiteseket. Peldaul
            felvesz meg nem letezo" csoportokat vagy felhasznalokat.
            Ez gyakran elengedhetetlennek bizonyulhat, mivel ha a
            rendszer legutobbi frissitese ota ujabb csoportok vagy
            felhasznalok keru:ltek be az alaprendszerbe, a
            installworld csak akkor tud hibamentesen lefutni, ha ezek
            mar a futasakor is elerheto"ek.

         6. make installworld

            Atmasolja a /usr/obj ko:nyvtarbol a korabban elkeszitett
            uj alaprendszert. Lefutasa utan mar mind az uj
            rendszermag es az uj alaprendszer a megfelelo" helyen
            talalhato.

         7. mergemaster

            Feldolgozzuk a korabbi fazisbol fennmarado konfiguracios
            allomanyok frissiteset, mivel most mar elerheto" az uj
            alaprendszer.

         8. A rendszer ujrainditasa.

            Az uj rendszermag es az uj konfiguracios allomanyokkal
            futo alaprendszer hasznalatahoz teljesen ujra kell
            inditanunk a szamitogepu:nket.

       Ha a FreeBSD ugyanazon fejlesztesi agan belu:l frissitju:k a
       rendszeru:nket, peldaul a 7.0 kiadasrol a 7.1 kiadasra, akkor
       ertelemszeru"en nem kell az imenti eljaras minden lepeset
       szorosan ko:vetni, hiszen nagyon valoszinu"tlen, hogy komoly
       elteresek lennenek a forditoprogram, a rendszermag, az
       alaprendszer es a konfiguracios allomanyok ko:zo:tt. Ilyenkor
       akar nyugodtan kiadhatjuk a make world parancsot, majd
       kerhetju:k a rendszermag forditasat es telepiteset.

       A fejlesztesi agak ko:zti valtas soran azonban ko:nnyen
       erhetnek minket meglepetesek, ha nem a megadottak szerint
       jarunk el.

       Egyes valtasokhoz (peldaul 4.X es 5.0 ko:zo:tt) tovabbi
       lepesek megtetele is szu:kseges lehet (peldaul adott
       allomanyok to:rlese vagy atnevezese meg az installworld
       elo"tt). Ilyenkor mindig figyelmesen olvassuk at a
       /usr/src/UPDATING allomanyt, ku:lo:no:s tekintettel a vegere,
       mivel gyakran ott adjak meg a konkret verziovaltashoz
       szu:kseges teendo"ket.

       A szakaszban o:sszefoglalt lepesek egyfajta evolucios folyamat
       eredmenyei, melynek soran a fejleszto"k felismertek, hogy nem
       to:keletesen kivedeni az o:sszes frissitessel jaro problemat.
       A javasolt eljaras remelheto"leg viszont meg sokaig ervenyes
       marad.

         Megjegyzes: A FreeBSD 3.X vagy annal is korabbi valtozatok
         frissitese meg ennel is to:bb u:gyesseget kivan. Ha ilyen
         verziot akarunk frissiteni, akkor feltetlenu:l olvassuk el
         az UPDATING allomanyt!

       Ro:viden tehat a FreeBSD forraskodon keresztu:li frissiteset
       igy foglalhatjuk o:ssze:

 # cd /usr/src
 # make buildworld
 # make buildkernel
 # make installkernel
 # shutdown -r now

     Megjegyzes: Nehany ritka esetben a buildworld lepes elo"tt
     szu:ksegu:nk lehet a mergemaster -p parancs lefuttatasara is.
     Erro"l az UPDATING allomanybol tudakozodhatunk. Altalaban
     azonban nyugodt szivvel kihagyhatjuk ezt a lepest, kiveve, ha
     nem egy vagy to:bb fo"bb FreeBSD valtozatot ativelo" frissitest
     vegzu:nk.

   Miutan az installkernel sikeresen befejezte a munkajat, inditsuk
   ujra a szamitogepet egyfelhasznalos modban (a beto:lto"
   parancssoraban adjuk ki boot -s parancsot). Itt futtassuk a
   ko:vetkezo"ket:

 # adjkerntz -i
 # mount -a -t ufs
 # mergemaster -p
 # cd /usr/src
 # make installworld
 # mergemaster
 # reboot

     Olvassuk el a magyarazatokat: Az imenti leirt folyamat csupan
     ro:vid o:sszefoglalas, amivel nemi gyorstalpalast igyekeztu:nk
     adni. Az egyes lepesek megertesehez azonban javasolt atolvasni a
     most ko:vetkezo" szakaszokat is, ku:lo:no:sen abban az esetben,
     ha sajat rendszermagot akarunk hasznalni.

     --------------------------------------------------------------

  24.7.2. Nezzu:k meg a /usr/src/UPDATING allomanyt

   Mielo"tt barmihez is nekifognank, keressu:k meg a
   /usr/src/UPDATING (vagy hasonlo, a forraskod masolatunk tenyleges
   helyeto"l fu:ggo") allomanyt. Ebben adjak hiru:l az esetlegesen
   felmeru:lo" problemakra vonatkozo fontosabb informaciokat, vagy
   hatarozzak meg az egyes lefuttatando parancsok pontos sorrendjet.
   Amennyiben az UPDATING ellentmondana az itt olvasottaknak, az
   UPDATING tartalma a mervado.

     Fontos: A korabban targyaltak szerint az UPDATING elolvasasa nem
     helyettesiti a megfelelo" levelezesi listak figyelemmel
     kisereset. Ez a ket elvaras nem kizarja, hanem kiegesziti
     egymast.

     --------------------------------------------------------------

  24.7.3. Elleno"rizzu:k az /etc/make.conf allomanyt

   Vizsgaljuk at a /usr/share/examples/etc/make.conf es az
   /etc/make.conf allomanyokat. Az elo"bbi tartalmaz nehany
   alapertelmezett beallitast - ezek javareszet megjegyzesbe raktak.
   Ha hasznalni akarjuk a rendszer leforditasa soran, tegyu:k bele
   ezeket az /etc/make.conf allomanyba. Ne felejtsu:k el azonban,
   hogy minden, amit megadunk az /etc/make.conf allomanyba, a make
   minden egyes elinditasakor felhasznalasra keru:l. Eppen ezert
   olyanokat erdemes itt beallitani, amik az egesz rendszeru:nket
   erintik.

   A legto:bb felhasznalo szamara az /etc/make.conf allomanyhoz a
   /usr/share/examples/etc/make.conf allomanyban talalhato CFLAGS es
   NO_PROFILE sorokra lesz szu:ksege, melyeket kivehetu:nk a
   megjegyzesbo"l.

   A to:bbi definicio (COPTFLAGS, NOPORTDOCS es igy tovabb)
   hasznalatarol mar mindenki maga do:nt.

     --------------------------------------------------------------

  24.7.4. Frissitsu:k az /etc tartalmat

   Az /etc ko:nyvtar tartalmazza a rendszer beallitasaival
   kapcsolatos informaciok jelento"s reszet, valamint a rendszer
   inditasa soran lefuto szkripteket. Egyes szkriptek a FreeBSD
   verzioirol verzioira valtoznak.

   Nemely konfiguracios allomanyok a rendszer hetko:znapi
   mu"ko:deseben is szerepet jatszanak. Ilyen peldaul az /etc/group.

   Alkalmankent a make installworld parancs futasa soran igenyt tart
   adott nevu" felhasznalokra es csoportokra. A frissiteskor azonban
   ezek a felhasznalok vagy csoportok nem feltetlenu:l allnak
   rendelkezesre, ami gondokat okozhat. Ezert bizonyos esetekben a
   make buildworld elo"zetesen elleno"rzi az igenyelt felhasznalok es
   csoportok megletet.

   Erre peldaul szolgalhat a smmsp felhasznalo esete. Nelku:le a
   felhasznalok nem tudtak telepiteni az uj rendszert, mert hianyaban
   az mtree(8) nem volt kepes letrehozni a /var/spool/clientmqueue
   ko:nyvtarat.

   Ezt ugy lehetett megoldani, hogy meg az alaprendszer leforditasa
   (a buildworld) elo"tt meg kellett hivni a mergemaster(8) parancsot
   a -p parameterrel. Igy csak azokat az allomanyokat fogja
   o:sszehasonlitani, amelyek feltetlenu:l szu:ksegesek a buildworld
   vagy az installworld sikeres mu"ko:desehez. Amennyiben a
   mergemaster egy olyan verziojaval rendelkezu:nk, amely nem ismeri
   a -p parametert, akkor az elso" inditasakor hasznaljuk a
   forrasfaban talalhato ujabb verziojat:

 # cd /usr/src/usr.sbin/mergemaster
 # ./mergemaster.sh -p

     Tipp: Ha ku:lo:no:sen paranoiasak vagyunk, akkor a csoport
     to:rlese vagy atnevezese elo"tt az alabbi paranccsal
     elleno"rizni tudjuk az altala birtokolt allomanyokat:

 # find / -group GID -print

     Ez megmutatja GID (mely megadhato numerikus vagy nev formajaban
     is) jelzesu" csoporthoz tartozo o:sszes allomanyt a
     rendszeru:nkben.

     --------------------------------------------------------------

  24.7.5. Valtsunk egyfelhasznalos modba

   A rendszert egyfelhasznalos modban erdemes leforditani. A
   nyilvanvaloan erezheto" gyorsasag elo"nyei mellett azert is jobban
   jarunk, mert az uj rendszer telepitese soran szamos
   rendszerszintu" allomany is modositasra keru:l, beleertve a
   szabvanyos rendszerszintu" binarisokat, fu:ggvenyko:nyvtarakat,
   include allomanyokat es igy tovabb. Ha u:zemelo" rendszeren
   vegezzu:k el mindezen valtoztatasokat (ku:lo:no:sen amikor rajtunk
   kivu:l meg tovabbi felhasznalok is tartozkodnak a rendszerben), az
   csak a bajt hozza rank.

   Masik leheto"seg gyanant a rendszert magat lefordithatjuk
   to:bbfelhasznalos modban is, majd ezutan csak a telepitest hajtjuk
   vegre egyfelhasznalos u:zemmodban. Ha eszerint cselekszu:nk,
   egyszeru"en varjunk addig, amig az o:sszes forditas be nem
   fejezo"dik, es az egyfelhasznalosra valtast halasszuk a
   installkernel vagy installworld idejere.

   Egy mu"ko:do" rendszerben rendszeradminisztratorkent az alabbi
   parancs kiadasaval valthatunk at egyfelhasznalos modba:

 # shutdown now

   Ezt elerhetju:k ugy is, ha ujrainditjuk a rendszert es a rendszer
   inditasakor a "single user" pontot valasztjuk a menu:bo"l. Ekkor a
   rendszer egyfelhasznalos modban indul el. Miutan ez megto:rtent,
   adjuk ki a ko:vetkezo" parancsokat:

 # fsck -p
 # mount -u /
 # mount -a -t ufs
 # swapon -a

   Ezekkel a parancsokkal elo"szo:r elleno"rizzu:k az
   allomanyrendszereket, ezutan ujracsatlakoztatjuk a /
   allomanyrendszert irhato modban, csatlakoztatjuk az /etc/fstab
   allomanyban megadott o:sszes to:bbi UFS tipusu allomanyrendszert,
   majd bekapcsoljuk a lapozoallomany hasznalatat.

     Megjegyzes: Ha a gepu:nk orajat nem a greenwich-i, hanem a helyi
     ido" szerint allitottuk be (ez akkor all fenn, ha a date(1)
     parancs nem a helyes ido"t es ido"zonat jelzi ki), akkor meg
     erre is szu:ksegu:nk lehet:

 # adjkerntz -i

     Ezzel a helyi ido"zona beallitasait tudjuk jol beallitani --
     nelku:le keso"bb meg gondjaink akadhatnak.

     --------------------------------------------------------------

  24.7.6. To:ro:lju:k a /usr/obj ko:nyvtarat

   A rendszer egyes reszei forditasuk soran a /usr/obj ko:nyvtaron
   belu:lre keru:lnek (alapertelmezes szerint). Az itt talalhato
   ko:nyvtarak a /usr/src ko:nyvtarszerkezetet ko:vetik.

   Ha mindenesto"l to:ro:lju:k ezt a ko:nyvtarat, akkor no:veli
   tudjuk a make buildworld folyamat sebesseget es megmeneku:lu:nk
   nehany fu:ggo"segekkel kapcsolatos fejfajastol is.

   Egyes /usr/obj ko:nyvtaron belu:li allomanyoknal szerepelhet a
   "megvaltoztathatatlan" (immutable) allomanyjelzo" (lasd
   chflags(1)), amelyet a mu"velet elvegzesehez elo"szo:r el kell
   tavolitanunk.

 # cd /usr/obj
 # chflags -R noschg *
 # rm -rf *

     --------------------------------------------------------------

  24.7.7. Forditsuk ujra az alaprendszert

    24.7.7.1. A kimenet elmentese

   Jol jarunk azzal, ha a make(1) futasanak kimenetet elmentju:k egy
   allomanyba, mivel igy a hibak eseten lesz egy masolatunk a
   hibau:zenetro"l. Ha konkretan neku:nk nem is feltetlenu:l segit
   megtalalni a hiba tenyleges okat, masok viszont to:bbet tudnak
   rola mondani, ha beku:ldju:k ezt a FreeBSD egyik levelezesi
   listajara.

   Ezt egyebkent a legegyszeru"bben a script(1) parancs segitsegevel
   oldhatjuk meg, amelynek parametereu:l azt az allomanyt kell
   megadni, ahova menteni akarjuk a kimenetet. Ezt ko:zvetlenu:l a
   rendszer ujraforditasa elo"tt kell kiadnunk, majd miutan megallt,
   a exit paranccsal kilephetu:nk belo"le.

 # script /var/tmp/mw.out
 Script started, output file is /var/tmp/mw.out  
 # make TARGET
 ... fordit, fordit, fordit ... 
 # exit
 Script done, ...

   Ilyenkor soha ne a /tmp ko:nyvtarba mentsu:k a kimenetet, mert
   ennek a tartalma a ko:vetkezo" inditas soran magatol to:rlo"dik.
   Sokkal jobban tesszu:k, ha a /var/tmp ko:nyvtarba (ahogy tettu:k
   azt az elo"bbi peldaban is) vagy a root felhasznalo ko:nyvtaraba
   mentu:nk.

     --------------------------------------------------------------

    24.7.7.2. Az alaprendszer forditasa

   A /usr/src ko:nyvtarban kell allnunk:

 # cd /usr/src

   (kiveve termeszetesen, ha mashol van a forraskod, akkor abba a
   ko:nyvtarba menju:nk).

   Az alaprendszert a make(1) paranccsal fordithatjuk ujra. Ez a
   Makefile nevu" allomanybol olvassa be a FreeBSD programjainak
   ujraforditasat leiro utasitasokat, a forditasuk sorrendjet es igy
   tovabb.

   A begepelendo" paranccsor altalanos alakja tehat a
   ko:vetkezo"keppen nez ki:

 # make -x -DVALTOZO target

   A fenti peldaban a -x egy olyan a parameter, amelyet a make(1)
   programnak adunk at. A make(1) man oldalan megtalalhatjuk az
   o:sszes neki atadhato ilyen beallitast.

   A -DVALTOZO alaku parameterek ko:zvetlenu:l a Makefile allomanynak
   adnak at olyan valtozokat, amelyek segitsegevel vezerelheto" a
   viselkedese. Ezek ugyanazok a valtozok, mint amelyek az
   /etc/make.conf allomanyban is szerepelnek, es itt a beallitasuk
   egy masik modjat kapjuk. Igy a

 # make -DNO_PROFILE target

   paranccsal is megadhatjuk, hogy ne profilozott fu:ggko:nyvtarak
   jo:jjenek letre, ami pontosan megfelel a

 NO_PROFILE=    true     #    Avoid compiling profiled libraries

   sornak az /etc/make.conf allomanyban.

   A target arulja el a make(1) programnak, hogy mi a teendo"je.
   Minden egyes Makefile ku:lo:nbo:zo" "targeteket" definial, es a
   kivalasztott target mondja meg, pontosan mi is fog to:rtenni.

   Egyes targetek ugyan megjelennek a Makefile allomanyban, azonban
   nem feltetlenu:l hivatkozhatunk rajuk ko:zvetlenu:l. Ehelyett
   csupan arra valok, hogy a forditas folyamatanak lepeseit
   felbontsak meg kisebb allepesekre.

   A legto:bb esetben azonban semmilyen parametert nem kell atadnunk
   a make(1) parancsnak, ezert a teljes formaja igy fog kinezni:

 # make target

   ahol a target az egyik forditasi leheto"seget kepviseli. Az elso"
   ilyen targetnek mindig a buildworld-nek kell lennie.

   Ahogy a neve is mutatja, a buildworld leforditja az o:sszes
   forrast a /usr/obj ko:nyvtarba, majd a installworld mint masik
   target, telepiti az igy letrehozott elemeket a szamitogepre.

   A targetek szetvalasztasa ket okbol is elo"nyo:s. Elo"szo:r is
   leheto"ve teszi, hogy az uj rendszert biztonsagban lefordithassuk,
   miko:zben az a jelenleg futo rendszert nem zavarja. A rendszer
   tehat kepes "sajat magat ujraforditani". Emiatt a buildworld
   target akar to:bbfelhasznalos modban is mindenfele nem kivanatos
   hatas nelku:l hasznalhato. Ennek ellenere azonban tovabbra is azt
   javasoljuk, hogy a installworld reszt egyfelhasznalos modban
   futtassuk le.

   Masodreszt ezzel leheto"segu:nk nyilik NFS allomanyrendszer
   alkalmazasaval to:bb szamitogepre is telepiteni halozaton
   keresztu:l. Ha peldaul harom frissitendo" szamitogepu:nk van, az
   A, B es C, akkor az A gepen elo"szo:r adjuk ki a make buildworld,
   majd a make installworld parancsot. A B es C gepek ezutan NFS
   segitsegevel csatlakoztatjak az A /usr/src es /usr/obj
   ko:nyvtarait, amelyet ko:veto"en a make installworld paranccsal
   telepiteni tudjuk a forditas eredmenyet a B es C gepekre.

   Noha a world mint target meg mindig letezik, hasznalata
   hatarozottan ellenjavalt.

   A

 # make buildworld

   parancs kiadasakor a make parancsnak megadhato egy -j parameter
   is, amellyel parhuzamosithatjuk a folyamat egyes reszeit. Ez
   altalaban to:bbprocesszoros szamitogepeken nyer ertelmet, azonban
   mivel a forditas folyamatanak haladasat inkabb az
   allomanymu"veletek mintsem a processzor sebessege korlatozza,
   ezert alkalmazhato akar egyprocesszoros gepeken is.

   Tehat egy atlagos egyprocesszoros gepen igy adhato ki a parancs:

 # make -j4 buildworld

   Ennek hatasara make(1) egyszerre 4 szalon igyekszik mu"ko:dni. A
   levelezesi listakra beku:ldo:tt tapasztalati jellegu" bizonyitekok
   azt igazoljak, hogy altalaban ez a beallitas adja a legjobb
   teljesitmenyt.

   Ha to:bbprocesszoros geppel rendelkezu:nk es rajta SMP tamogatasu
   rendszermagot inditottunk el, akkor erdemes 6 es 10 ko:zo:tti
   ertekekkel kiserleteznu:nk.

     --------------------------------------------------------------

    24.7.7.3. Ido"igeny

   Szamos tenyezo" befolyasolja a forditas tenyleges ido"beli
   hosszat, de a FreeBSD-STABLE fa leforditasa mindenfele tru:kko:k
   es ro:viditesek nelku:l a legto:bb szamitogepen olyan egy vagy ket
   orara taksalhato. A FreeBSD-CURRENT fahoz ennel valamivel to:bb
   ido"re lesz szu:ksegu:nk.

     --------------------------------------------------------------

  24.7.8. Forditsunk es telepitsu:nk egy uj rendszermagot

   Az ujdonsu:lt rendszeru:nket csak akkor tudjuk igazan kihasznalni,
   ha egy uj rendszermagot is keszitu:nk hozza. Ez gyakorlati szinten
   tulajdonkeppen elvaras, mivel ko:nnyen elo"fordulhat, hogy
   bizonyos memoriabeli adatszerkezetek felepitese megvaltozott,
   ezert nemely programok, mint peldaul a ps(1) es top(1), egeszen
   addig nem lesznek kepesek normalisan mu"ko:dni, amig a rendszer es
   a rendszermag forraskodja nem illeszkedik egymashoz.

   Ennek legegyszeru"bb es egyben legbiztonsagosabb modja, ha a
   GENERIC beallitasai alapjan gyartunk es telepitu:nk egy
   rendszermagot. Meg ha a GENERIC beallitasai nem is tartalmazzak a
   rendszeru:nkben fellelheto" o:sszes eszko:zt, minden megtalalhato
   bennu:k ahhoz, hogy a rendszert sikeresen elindithassuk legalabb
   egyfelhasznalos modban. Ez mellesleg remek probaja az uj rendszer
   eletkepessegenek. Miutan elinditottuk a rendszert a GENERIC tipusu
   rendszermaggal es meggyo"zo"dtu:nk rola, hogy a rendszer tenyleg
   mu"ko:do"kepes, a megszokott rendszermagunk konfiguracios
   allomanya alapjan nyugodtan elkeszithetju:k ezutan azt is.

   FreeBSD alatt egy uj rendszermag epitese elo"tt fontos
   ujraforditani az alaprendszert.

     Megjegyzes: Ha sajat beallitasaink szerint akarunk rendszermagot
     letrehozni es mar van is ehhez egy konfiguracios allomanyunk,
     akkor erre hasznalhatjuk a KERNCONF=SAJATMAG parametert is,
     valahogy igy:

 # cd /usr/src
 # make buildkernel KERNCONF=SAJATMAG
 # make installkernel KERNCONF=SAJATMAG

   Hozzatennenk, hogy ha a kern.securelevel rendszervaltozo erteket 1
   fele allitottuk es a rendszermag allomanyanak beallitottunk noschg
   vagy hozza hasonlo allomanyjelzo"t, akkor az installkernel
   lefuttatasahoz mindenkeppen egyfelhasznalos modba kell valtanunk.
   Minden mas esetben tovabbi bonyodalmak nelku:l ki tudjuk adni az
   emlitett parancsokat. A kern.securelevel reszleteiro"l az init(8)
   oldalan, a ku:lo:nbo:zo" allomanyjelzo"kro"l pedig a chflags(1)
   oldalan olvashatunk.

     --------------------------------------------------------------

  24.7.9. Inditsuk ujra a rendszert egyfelhasznalos modban

   Az uj rendszermag mu"ko:desenek letesztelesehez inditsuk ujra a
   rendszert egyfelhasznalos modban. Ennek pontos reszleteit lasd
   24.7.5 Szakasz.

     --------------------------------------------------------------

  24.7.10. Telepitsu:k az uj rendszer binarisait

   Ha a FreeBSD friss valtozatat nemreg forditottuk le a make
   buildworld paranccsal, akkor utana az installworld segitsegevel
   tudjuk telepiteni a keletkezett programokat.

   Tehat irjuk be ezeket:

 # cd /usr/src
 # make installworld

     Megjegyzes: Amennyiben a paranccsorban a make buildworld
     hasznalata soran adtunk meg valtozokat, akkor ne felejtsu:k el
     ugyanazokat megadni a make installworld kiadasa soran sem. Ez
     viszont a to:bbi parameterre mar nem feltetlenu:l ervenyes.
     Peldaul a -j beallitast szigoruan tilos az installworld
     targettel egyu:tt hasznalni.

     Ennek megfelelo"en tehat ha korabban ezt irtuk be:

 # make -DNO_PROFILE buildworld

     akkor igy telepitsu:nk:

 # make -DNO_PROFILE installworld

     Masku:lo:nben azokat a profilozott fu:ggvenyko:nyvtarakat
     probaljuk meg telepiteni, amelyek a make buildworld futasa soran
     nem jo:ttek letre.

     --------------------------------------------------------------

  24.7.11. Frissitsu:k a make installworld altal kihagyott allomanyokat

   Az alaprendszer ujraforditasa nem regisztralja az uj vagy
   megvaltozott allomanyokat bizonyos ko:nyvtarakban (ku:lo:no:sen
   ertendo" ez az /etc, /var es /usr eseten).

   Az ilyen allomanyokat a legegyszeru"bben a mergemaster(8)
   hasznalataval tarthatjuk karban, de igeny szerint akar kezzel is
   elvegezhetju:k a szu:kseges aktualizalasokat. Fu:ggetlenu:l attol,
   hogy mit is valasztunk, mindenkeppen keszitsu:nk biztonsagi
   mentest az /etc ko:nyvtarrol arra az esetre, ha barmilyen
   szo:rnyu"seg to:rtenne.

     --------------------------------------------------------------

    24.7.11.1. A mergemaster

   Irta: Tom Rhodes.

   A mergemaster(8) segedprogram valojaban egy Bourne szkript, amely
   segit az /etc ko:nyvtarunkban es a forrasfaban levo" /usr/src/etc
   ko:nyvtarban elhelyezkedo" konfiguracios allomanyok ko:zti
   elteresek megallapitasaban. Ezt a modszert ajanljuk arra, hogy
   o:sszevessu:k a konfiguracios allomanyainkat a forrasfaban
   talalhato valtozataikkal.

   A hasznalatanak megkezdesehez egyszeru"en irjuk be, hogy
   mergemaster, majd varjunk egy kicsit, amig a mergemaster letrehoz
   maganak egy atmeneti ko:rnyezetet a / ko:nyvtarbol elindulva es
   megto:lti azt a ku:lo:nbo:zo" rendszerszintu" beallitasokat
   tartalmazo allomanyokkal. Ezeket az allomanyokat aztan
   o:sszehasonlitja a jelenleg ervenyben levo" valtozataikkal.
   Ilyenkor a ko:ztu:k talalt eltereseket a diff(1) formatumanak
   megfelelo"en modon mutatja meg, ahol a + jelo:li a hozzaadott vagy
   modositott sorokat, a - pedig a teljesen eltavolitando vagy
   cserelendo" sorokat. Erro"l a formatumrol bo"vebben a diff(1) man
   oldalan talalhatunk felvilagositast.

   A mergemaster(8) ezt ko:veto"en megmutatja az o:sszes olyan
   allomanyt, ahol elterest tapasztalt, es ezen a ponton van
   leheto"segu:nk leto:ro:lni (delete) az uj allomanyokat (amelyekre
   itt most ideiglenes allomanykent hivatkozik), telepiteni (install)
   a modositatlan ideiglenes (uj) allomanyt, valamint o:sszefesu:lni
   (merge) az ideiglenes (uj) es a jelenlegi allomanyokat, vagy ismet
   atnezni (view) a diff(1) altal jelzett ku:lo:nbsegeket.

   Ha az ideiglenes allomany to:rleset valasztjuk, akkor a
   mergemaster(8) ezt ugy ertelmezi, hogy valtozatlanul meg akarjuk
   tartani a jelenlegi valtozatot es to:ro:lni az ujat. Ezt
   alapveto"en nem javasoljuk, hacsak tenyleg nem latunk valamilyen
   okot erre. A mergemaster(8) parancssoraban a ? begepelesevel
   barmikor kerhetu:nk segitseget. Ha az allomany kihagyasat (skip)
   valasztjuk, akkor majd ismet felajanlja, amikor vegeztu:nk az
   o:sszes to:bbivel.

   A modositatlan ideiglenes allomany telepitesenek valasztasaval
   lecserelju:k a jelenleg verziot az ujra. Ha az aktualis verziot
   sem valtoztattuk meg, akkor szamunkra ez a legjobb megoldas.

   Az allomanyok o:sszefesu:lesenek kivalasztasakor kapunk egy
   szo:vegszerkeszto"t, benne a ket allomany tartalmaval. Ilyenkor
   tudjuk a kepernyo"n soronkent egyeztetni a ket allomanyt, majd a
   belo"lu:k a megfelelo" reszek o:sszevalogatasaval kialakitani az
   eredmenyt. Ebben a feldolgozasi modban az l (mint left, vagyis
   bal) billentyu" lenyomasara a bal oldalon lathato reszt, az r
   (mint right, vagyis jobb) lenyomasara pedig a jobb oldalon lathato
   reszt valasztjuk ki. Az igy keletkezo" eredmenyt ezutan egy
   allomanyba keru:l, amelyet telepiteni tudunk. Ez a megoldas olyan
   allomanyok eseteben hasznalhato, amikor a felhasznalo modositott
   az alapertelmezett beallitasokat.

   Ha a diff(1) szerinti alakban akarjuk atnezni a ku:lo:nbsegeket,
   akkor a mergemaster(8) ugyanugy megmutatja ezeket, mint a
   paranccsor megjelenitese elo"tt.

   Miutan a mergemaster(8) vegigment a rendszerszintu" allomanyokon,
   tovabbi opciokat mutat. Megkerdezheti, hogy ujra letre akarjuk-e
   hozni a jelszavakat tarolo allomanyt (rebuild), illetve a folyamat
   vegen a megmaradt ideiglenes allomanyok to:rlesere (remove) var
   valaszt.

     --------------------------------------------------------------

    24.7.11.2. Az allomanyok aktualizalasa kezzel

   Ha inkabb manualisan szeretnenk frissiteni, akkor nem masolhatjuk
   csak egyszeru"en at az allomanyokat a /usr/src/etc ko:nyvtarbol a
   /etc ko:nyvtarba es nem hagyhatjuk ezeket sorsukra. Egyes
   allomanyokat elo"szo:r "telepiteni" kell. Ez azert van igy, mert a
   /usr/src/etc ko:nyvtar nem pusztan az /etc ko:nyvtar egyszeru"
   masolata. Raadasul az /etc ko:nyvtarban vannak olyan allomanyok,
   amelyek a /usr/src/etc ko:nyvtarban nem is talalhatoak meg.

   Ha (az ajanlottak szerint) a mergemaster(8) segitsegevel
   dolgozunk, nyugodtan atlephetu:nk a ko:vetkezo" szakaszra.

   Sajat magunk a legegyszeru"bben ezt ugy tudjuk megoldani, ha
   telepitju:k az allomanyokat egy uj ko:nyvtarba es ezutan
   nekiallunk valtozasokat keresni.

     Az /etc meglevo" tartalmanak mentese: Habar elmeletileg magatol
     semmi sem fogja bantani ezt a ko:nyvtarat, azert etto"l
     fu:ggetlenu:l mindig erdemes biztosra menni. Ezert masoljuk az
     /etc ko:nyvtar tartalmat egy megbizhato helyre. Peldaul:

 # cp -Rp /etc /etc.old

     Az -R itt a rekurziv masolast jelenti, a -p pedig a datumok, az
     allomanyok es egyebek tulajdoni viszonyainak mego"rzeset.

   Az /etc uj valtozatanak telepitesehez szu:ksegu:nk lesz meg
   tovabbi ko:nyvtarakra is. Erre a feladatra a /var/tmp/root
   to:keletesen megfelel, ahol meg letre kell hoznunk nehany
   alko:nyvtarat.

 # mkdir /var/tmp/root
 # cd /usr/src/etc
 # make DESTDIR=/var/tmp/root distrib-dirs distribution

   Ezzel letrejo:n a szu:kseges ko:nyvtarszerkezet es telepu:lnek az
   allomanyok. Sok u:res alko:nyvtar is keletkezik a /var/tmp/root
   ko:nyvtaron belu:l, ezeket to:ro:lju:k. Ezt a legko:nnyebben igy
   tehetju:k meg:

 # cd /var/tmp/root
 # find -d . -type d | xargs rmdir 2>/dev/null

   Ezzel to:rlo"dnek az u:res ko:nyvtarak. (A szabvany hibakimenetet
   atiranyitottuk a /dev/null eszko:zre, es ezzel elnyomtuk a nem
   u:res ko:nyvtarak eseten keletkezo" hibau:zeneteket.)

   A /var/tmp/root most mar tartalmazza az o:sszes olyan allomanyt,
   amelyek normalis esetben a / ko:nyvtaron belu:l foglalnak helyet.
   Ezt ko:veto"en nincs mas dolgunk, csak vegigmenni az itt talalhato
   allomanyokon es megallapitani, miben ternek a meglevo"ekto"l.

   Vegyu:k eszre, hogy a /var/tmp/root ko:nyvtarba telepitett
   allomanyok nemelyikenek neve "."-tal kezdo"dik. Az iras
   pillanataban ezek csak a /var/tmp/root/ es /var/tmp/root/root/
   ko:nyvtarakban talalhato parancsertelmezo"ho:z tartozo indito
   allomanyok lehetnek, habar adodhatnak meg ilyenek (attol
   fu:ggo"en, mikor olvassuk ezt). Ezert a feldolgozasukhoz ne
   felejtsu:k el a ls -a parancsot hasznalni.

   A diff(1) alkalmazasaval legegyszeru"bben igy tudunk
   o:sszehasonlitani ket allomanyt:

 # diff /etc/shells /var/tmp/root/etc/shells

   Ennek hatasara megjelennek az /etc/shells es az uj
   /var/tmp/root/etc/shells allomanyok ko:zti ku:lo:nbsegek. A
   segitsegevel gyorsan el tudjuk do:nteni, hogy o:sszefesu:lju:k-e a
   ket allomanyt, vagy csak egyszeru"en irjuk felu:l a regebbi
   verziot az ujjal.

     Az uj ko:nyvtar (/var/tmp/root) nevebe irjuk bele a datumot is,
     igy ko:nnyeden o:ssze tudunk hasonlitani to:bb verziot is: A
     rendszer gyakori ujraforditasa az /etc szinten gyakori
     aktualizalasat is maga utan vonja, ami viszont faraszto lehet.

     Az imenti folyamatot fel tudjuk gyorsitani, hogy ha az /etc
     legutoljara o:sszefesu:lt valtozatat megtartjuk. A most
     ko:vetkezo" eljaras ennek mikentjet vazolja fel.

      1. A megszokottak szerint forditsuk le a rendszert. Majd amikor
         az /etc ko:nyvtarat es a to:bbit is frissiteni akarjuk, a
         celkent megadott ko:nyvtar neveben adjuk meg a datumot. Ha
         tehat peldaul 1998. februar 14. van, akkor irjuk ezt:

 # mkdir /var/tmp/root-19980214
 # cd /usr/src/etc
 # make DESTDIR=/var/tmp/root-19980214 \
     distrib-dirs distribution

      2. Fesu:lju:k o:ssze a ko:nyvtarban talalhato az allomanyokat a
         fentiekben ko:rvonalazottak szerint.

         Befejezes utan o"rizzu:k meg a /var/tmp/root-19980214
         ko:nyvtarat.

      3. Mikor ujra leto:ltju:k a legfrissebb forrasokat es
         megismetelju:k az elo"bbi lepeseket, haladjunk megint az
         elso" lepes szerint. Ekkor tehat letrejo:n egy ujabb
         ko:nyvtar, amelynek a neve ezuttal mar
         /var/tmp/root-19980221 lesz (ha peldaul hetente
         frissitu:nk).

      4. Most mar meg tudjuk vizsgalni a ko:zbeeso" heten szu:letett
         eltereseket, ha a ket ko:nyvtarra kiadunk egy rekurziv
         diff(1) hivast:

 # cd /var/tmp
 # diff -r root-19980214 root-19980221

         Altalaban igy kevesebb elterest kapunk, mint amennyi peldaul
         a /var/tmp/root-19980221/etc/ es az /etc o:sszehasonlitasa
         soran elkeru:lt volna. Mivel kisebb a keletkezett
         ku:lo:nbsegek szama, ezert ko:nnyebb lesz atvinnu:nk az /etc
         ko:nyvtarunkba is a modositasokat.

      5. Ezutan to:ro:lhetju:k a regebbi /var/tmp/root-* ko:nyvtarat:

 # rm -rf /var/tmp/root-19980214

      6. Az /etc o:sszefesu:lesekor mindig ismetelju:k meg ezeket a
         lepeseket.

     A date(1) meghivasaval akar automatikussa is tehetju:k a
     ko:nyvtarak nevadasat:

 # mkdir /var/tmp/root-`date "+%Y%m%d"`

     --------------------------------------------------------------

  24.7.12. Ujrainditas

   Ezzel keszen is vagyunk. Miutan elleno"riztu:k, hogy minden a
   megfelelo" helyere keru:lt, inditsuk ujra a rendszert. Ehhez egy
   egyszeru" shutdown(8) is elegendo":

 # shutdown -r now

     --------------------------------------------------------------

  24.7.13. Befejeztu:k!

   Gratulalunk, sikeru:lt frissitenu:nk a FreeBSD rendszeru:nket.

   Ha megis valami balul u:tne ki, ko:nnyen ujra tudjuk forditani a
   rendszer egyes reszeit. Peldaul, ha veletlenu:l leto:ro:ltu:k az
   /etc/magic allomanyt az /etc frissitese vagy o:sszefesu:lese
   soran, a file(1) parancs nem fog tudni rendesen mu"ko:dni.
   Ilyenkor a ko:vetkezo"ket kell tennu:nk a hiba kijavitasahoz:

 # cd /usr/src/usr.bin/file
 # make all install

     --------------------------------------------------------------

  24.7.14. Kerdesek

   24.7.14.1. Minden egyes valtoztatasnal ujra kell forditani a
   rendszert?

   24.7.14.2. A fordito rengeteg 11-es jelzest (signal 11) (vagy
   masfajta jelzeseket) dob hibaval. Mi to:rtenhetett?

   24.7.14.3. A forditasa befejezese utan to:ro:lhetem a /usr/obj
   ko:nyvtarat?

   24.7.14.4. Lehetseges a megszakadt forditas folytatasa?

   24.7.14.5. Hogyan tudjuk felgyorsitani a forditast?

   24.7.14.6. Mi tegyu:nk, ha valami nem megy rendesen?

   24.7.14.1. Minden egyes valtoztatasnal ujra kell forditani a
   rendszert?

   Nem ko:nnyu" valaszt adni erre a kerdesre, mivel ez alapveto"en a
   valtoztatas jellegeto"l fu:gg. Peldaul, ha elinditjuk a CVSup
   programot es csak az alabbi allomanyok frissu:lnek:

 src/games/cribbage/instr.c
 src/games/sail/pl_main.c
 src/release/sysinstall/config.c
 src/release/sysinstall/media.c
 src/share/mk/bsd.port.mk

   Ekkor valoszinu"leg nem eri meg ujraforditani a teljes rendszert.
   Elegendo" csupan belepni az erintett allomanyokat tartalmazo
   alko:nyvtarakba es ott rendre kiadni a make all install parancsot.
   Ha viszont mar valami komolyabb, peldaul az src/lib/libc/stdlib
   valtozott meg, akkor vagy az egesz rendszert, vagy legalabb azon
   reszeit forditsuk ujra, amely statikusan linkeltek (es minden mas
   ido"ko:zben meg hozzaadott statikusan linkelt dolgot).

   Hogy melyik megoldast valasztjuk, teljesen rajtunk all.
   Ujrafordithatjuk az egesz rendszert kethetente, mondvan, hadd
   gyu:ljenek fel szepen a modositasok, vagy a fu:ggo"segek pontos
   kielemzesevel csak azokat az elemeket forditjuk ujra, amelyek
   tenyleg meg is valtoztak.

   Termeszetesen az egesz attol fu:gg, hogy milyen gyakran es melyik
   rendszert, a FreeBSD-STABLE-t vagy a FreeBSD-CURRENT-et
   frissitju:k.

   24.7.14.2. A fordito rengeteg 11-es jelzest (signal 11) (vagy
   masfajta jelzeseket) dob hibaval. Mi to:rtenhetett?

   Ez altalaban hardveres meghibasodasra utal. A rendszer
   ujraforditasa alapjaiban veve egy remek modszer szamitogepu:nk
   alkatreszeinek terhelesere, ezert gyakorta elo"hozza a memoria mar
   meglevo" hibait. Ezek to:bbnyire abban fogalmazodnak meg, hogy a
   fordito rejtelyes modon leall mindenfele furcsa jelzesek hatasara.

   Erro"l biztosan ugy tudunk meggyo"zo"dni, ha ujrainditjuk a make
   programot es az a folyamat egy teljesen masik pontjan verzik el.

   Ilyenkor nem tudunk mast tenni, mint egymas utan kicserelgetju:k,
   kivesszu:k az alkatreszeket es igy probaljuk megallapitani,
   pontosan melyiku:k is okozza a gondokat.

   24.7.14.3. A forditasa befejezese utan to:ro:lhetem a /usr/obj
   ko:nyvtarat?

   Ro:viden: Igen.

   A /usr/obj tartalmazza a forditas folyamata soran keletkezo"
   o:sszes targykodot. Ennek to:rlese altalaban a make buildworld
   elso" lepesei ko:zo:tt szerepel. Ezert tulajdonkeppen a /usr/obj
   megtartasanak nincs tulsagosan sok ertelme, viszont eleg sok
   (jelenleg ugy kb. 340 MB) helyet fel tudunk igy szabaditani.

   Ha azonban ertju:k a dolgunkat, akkor megadhatjuk a make
   buildworld parancsnak, hogy hagyja ki ezt a lepest. Ennek hatasara
   a forditas sokkal hamarabb veget er, mivel a legto:bb forrast igy
   nem kell ujraforditani. U:ro:m az o:ro:mben, hogy ha netalan
   aprocska fu:ggo"segi problemak meru:lnenek fel, akkor az egesz
   forditas megfeneklik mindenfele ku:lo:no:s modokon. Emiatt gyakran
   irnak feleslegesen leveleket a FreeBSD levelezesi listaira, melyek
   a rendszer sikertelen ujraforditasarol panaszkodnak, miko:zben
   kideru:l, hogy az maguk az erintettek akartak lero:viditeni a
   folyamatot.

   24.7.14.4. Lehetseges a megszakadt forditas folytatasa?

   Ez attol fu:gg, hogy a problema beko:vetkezese elo"tt mennyire
   sikeru:lt eljutni a forditasban.

   Altalaban (tehat nem feltetlenu:l minden esetben) a make
   buildworld leforditja a forditashoz szu:kseges eszko:zo:k (peldaul
   a gcc(1) es make(1)) ujabb valtozatait es a rendszer
   fu:ggvenyko:nyvtarait, majd ezeket telepiti. Ezutan ezekkel az uj
   eszko:zo:kkel leforditattja sajat magukat es ismet telepiti. Ezt
   ko:veto"en forditja ujra az uj rendszerallomanyokkal az egesz
   rendszert (igy ezuttal mar az olyan szokasos felhasznaloi
   programokat is, mint peldaul az ls(1) es a grep(1)).

   Ha tudjuk, hogy az utolso fazisban alltunk le (mivel megneztu:k a
   forditashoz tartozo kimenetet), akkor (minden tovabbi nelku:l)
   eleg ennyi:

 ... kijavitjuk a hibat ...
 # cd /usr/src
 # make -DNO_CLEAN all

   Ezzel megmarad a korabbi make buildworld munkajanak eredmenye.

   Ha ezt az u:zenetet latjuk a make buildworld kimeneteben:

 --------------------------------------------------------------
 Building everything..
 --------------------------------------------------------------

   akkor ku:lo:no:sebb gond nelku:l megcsinalhatjuk.

   Amennyiben viszont nem latunk ilyen u:zenetet, vagy nem vagyunk
   benne biztosak, akkor meg mindig jobb elo"vigyazatosnak lenni,
   ezert kenytelenek leszu:nk teljesen elo:lro"l kezdeni a forditast.

   24.7.14.5. Hogyan tudjuk felgyorsitani a forditast?

   * Futtassuk egyfelhasznalos modban.

   * Tegyu:k a /usr/src es /usr/obj ko:nyvtarakat ku:lo:n
     allomanyrendszerekre, ku:lo:n lemezekre. So"t, ha lehetseges,
     akkor ezeket a lemezeket tegyu:k ku:lo:n lemezvezerlo"kre.

   * Meg mindig jobb, ha ezeket az allomanyrendszereket a ccd(4)
     (lemezek o:sszefu"zeset vezerlo" meghajto) segitsegevel
     kiterjesztju:k to:bb lemezes eszko:zre.

   * Kapcsoljuk ki a profilozast (az /etc/make.conf allomanyban a
     "NO_PROFILE=true" megadasaval). To:bbnyire ugy sem lesz ra
     szu:ksegu:nk.

   * Az /etc/make.conf allomanyban a CFLAGS valtozot allitsuk az -O
     -pipe ertekre. Az -O2 gyakran sokkal lassabb, az -O es -O2 alig
     ter el az optimalizalas mertekeben. A -pipe parameter hatasara
     pedig a forditoprogram atmeneti allomanyok helyett cso:veket
     hasznal a kommunikaciora, es igy megtakarit nemi
     lemezhasznalatot (a memoriahasznalat terhere).

   * Ha a make(1) parancsnak atadjuk a -jn parametert, akkor kepes
     to:bb mindent parhuzamosan futtatni. Ez sok esetben segit attol
     fu:ggetlenu:l, hogy egy- vagy to:bbprocesszoros gepu:nk van.

   * A /usr/src ko:nyvtarat tartalmazo allomanyrendszert
     csatlakoztathatjuk (vagy ujracsatlakoztathatjuk) a noatime
     beallitassal. Ilyenkor az allomanyrendszer nem ro:gziti a
     hozzaferes idejet. Erre az informaciora sincs igazabol
     szu:ksegu:nk.

 # mount -u -o noatime /usr/src

       Figyelem: A fenti pelda azt feltetelezi, hogy a /usr/src
       ko:nyvtarnak sajat allomanyrendszere van. Ha ez nem igy lenne
       (tehat peldaul a /usr resze), akkor itt azt kell megadnunk,
       nem pedig a /usr/src nevet.

   * A /usr/obj ko:nyvtarat tartalmazo allomanyrendszert
     csatlakoztathatjuk (vagy ujracsatlakoztathatjuk) az async
     beallitassal. Ennek hatasara a lemez irasa aszinkron modon
     to:rtenik. Magyarul az irasi mu"veletek azonnal befejezo"dnek,
     miko:zben az adat tenylegesen csak par masodperccel keso"bb
     keru:l ki a lemezre. Ezzel az irasi kerelmek gyo:nyo:ru"en
     o:sszegyu"jtheto"ek, ami nagymerteku" no:vekedest eredmenyez a
     teljesitmenyben.

       Figyelem: Ne felejtsu:k el azonban, hogy ezzel egyu:tt az
       allomanyrendszeru:nk is seru:lekenyebbe valik. Ezen beallitas
       hasznalataval megno" annak az eselye, hogy egy aramkimaradast
       ko:veto" inditasnal az allomanyrendszer helyreallithatatlan
       allapotba keru:l.

       Ha egyedu:l csak a /usr/obj talalhato ezen az
       allomanyrendszeren, akkor ez nem jelent akkora veszelyt.
       Amikor viszont rajta kivu:l meg ertekes adat is talalhato az
       allomanyrendszeren, a beallitas ervenyesitese elo"tt
       mindenkeppen keszitsu:nk rola friss menteseket.

 # mount -u -o async /usr/obj

       Figyelem: Ahogy arrol az elo"bb is szo esett, ha a /usr/obj
       nem egy ku:lo:nallo allomanyrendszeren talalhato, akkor a
       peldaban szereplo" csatlakozasi pontot cserelju:k ki a
       megfelelo"re.

   24.7.14.6. Mi tegyu:nk, ha valami nem megy rendesen?

   Egyertelmu"en bizonyosodjunk meg rola, hogy a korabbi
   forditasokbol nem maradtak vissza semmifele kobor allomanyok.
   Ennyi sokszor pontosan eleg.

 # chflags -R noschg /usr/obj/usr
 # rm -rf /usr/obj/usr
 # cd /usr/src
 # make cleandir
 # make cleandir

   Igen, a make cleandir parancsot tenyleg ketszer kell kiadni.

   Ezutan a make buildworld parancstol indulva kezdju:k ujra a
   forditast.

   Ha meg ezek utan is fennall a problema, ku:ldju:k el a hibat
   tartalmazo kimenetet es a uname -a parancs eredmenyet a FreeBSD
   general questions levelezesi lista cimere. Ne lepo"dju:nk meg, ha
   a beallitasainkra vonatkozoan meg kapunk tovabbi kerdeseket is!

     --------------------------------------------------------------

24.8. A forrasok ko:vetese to:bb geppel

   Irta: Mike Meyer.

   Ha egyszerre to:bb szamitogeppel is szeretnenk ko:vetni ugyanannak
   a forrasfanak a valtozasait es ezert mindegyikre leto:ltju:k a
   forrasokat majd ujraforditjuk ezeket, akkor sok ero"forrast, de
   leginkabb lemezteru:letet, halozati savszelesseget es
   processzorido"t, feleslegesen hasznalunk. Ezekkel ugy tudunk
   sporolni, ha valojaban csak egyetlen geppel vegeztetju:k el a
   munka legto:bb reszet, miko:zben a to:bbi NFS hasznalataval
   dolgozik. Ez a szakasz ezt a modszert foglalja o:ssze.

     --------------------------------------------------------------

  24.8.1. Elo"keszu:letek

   Elo"szo:r is szedju:k o:ssze az egyezo" binarisokat futtato
   gepeket, melyekre a tovabbiakban csak forditasi csoport neven
   hivatkozunk. Minden gepnek lehet sajat rendszermagja, viszont a
   felhasznaloi programok mindegyiko"ju:k eseteben ugyanazok. Ebbo"l
   a csoportbol valasszuk ki egy fordito gepet. Ez lesz az a gep,
   amelyen a rendszer es a rendszermag leforditasra keru:l. Idealis
   esetben ez a leggyorsabb gep, amelynek elegendo" a
   processzorkapacitasa arra, hogy lefuttassa a make buildworld es
   make buildkernel parancsokat. Erdemes meg rajta kivu:l
   kivalasztanunk egy tesztelo" gepet is, ahol a veglegesites elo"tt
   kiprobalhatjuk a szoftverfrissiteseket. Ennek egy olyan gepnek
   kell lennie, amely akar hosszabb ideig is nelku:lo:zheto" a
   csoportbol. Lehet akar maga a forditast vegzo" gep is, de nem
   elvaras.

   A forditasi csoportban levo" o:sszes gepnek ugyanarrol a gepro"l
   es ugyanarra a pontra kell csatlakoztatnia a /usr/obj es /usr/src
   ko:nyvtarakat. Ezek optimalis esetben a forditassal foglalkozo gep
   ket ku:lo:n lemezmeghajtojan vannak, melyek egyarant elerheto"ek
   NFS-en keresztu:l. Ha to:bb forditasi csoportunk is van, akkor az
   /usr/src ko:nyvtarnak elegendo" csak egyetlen fordito gepen
   meglennie, a to:bbi pedig csatlakoztassa NFS-en keresztu:l.

   Vegu:l gyo"zo:dju:nk meg rola, hogy az /etc/make.conf es a
   /etc/src.conf allomanyok tartalma a forditasi csoport mindegyik
   gepenel megegyezik a fordito gepevel. Ez azt jelenti, hogy a
   fordito gepnek az alaprendszer ugyanazon reszeit es ugyanugy kell
   letrehozni, mint amelyet a forditasi csoport akarmelyik gepere
   telepiteni is akarunk. Ezenkivu:l meg a forditasi csoportban levo"
   minden egyes gep /etc/make.conf allomanyaban a KERNCONF ertekenek
   a sajat rendszermagjara vonatkozo konfiguraciot kell megadni,
   illetve a forditassal foglakozo gep KERNCONF valtozojanal pedig az
   egyu:tt o:sszeset, a sajatjaval kezdve. Ennek megfelelo"en a
   fordito gepnek a rendszermagok leforditasahoz rendelkeznie kell az
   egyes gepek /usr/src/sys/arch/conf ko:nyvtaraban meglevo"
   allomanyaival.

     --------------------------------------------------------------

  24.8.2. Az alaprendszer

   Most, miutan mindent megfelelo"en elo"keszitettu:nk, keszen allunk
   a munkara. A 24.7.7.2 Szakaszban leirtak szerint forditsuk le a
   rendszermagokat es az alaprendszert a fordito gepen, de utana meg
   nem telepitsu:nk semmit se. Ha befejezo"do:tt a forditas, lepju:nk
   be a tesztelo" gepre es telepitsu:k a frissen forditott
   rendszermagot. Ha ez a gep NFS-en keresztu:l eri a /usr/src es
   /usr/obj ko:nyvtarakat, akkor az egyfelhasznalos modban aktivalni
   kell a halozatot, majd csatlakoztatni ezeket. Ezt legko:nnyebben
   ugy tudjuk megcsinalni, ha a gepet elo"szo:r elinditjuk
   to:bbfelhasznalos modban, majd a shutdown now paranccsal
   egyfelhasznalos modba valtunk. Ha eljuttunk ide, telepitsu:nk az
   uj rendszermagot es rendszert, illetve a megszokott modon
   futtassuk a mergemaster parancsot. Amikor ezt befejeztu:k, ezen a
   gepen terju:nk vissza a hetko:znapi to:bbfelhasznalos mu"ko:desi
   modba.

   Miutan a tesztelesre szant gepen elleno"riztu:k, hogy minden a
   megfelelo" modon mu"ko:dik, az elo"bb targyalt eljarassal
   telepitsu:k fel a forditasi csoportban levo" o:sszes to:bbi gepre
   is az uj szoftvereket.

     --------------------------------------------------------------

  24.8.3. Portok

   Ugyanezt a gondolatmenet alkalmazhato a portfa eseteben is. Az
   elso" es egyben legfontosabb lepes a /usr/ports csatlakoztatasa
   ugyanarrol a gepro"l a forditasi csoport minden gepere. Az
   /etc/make.conf megfelelo" beallitasaval meg a terjesztesi
   allomanyokat is meg tudjuk osztani. A DISTDIR erteket egy olyan
   ko:zo:sen hasznalt ko:nyvtarra allitsuk, amely irhato az NFS-en
   keresztu:l megosztott allomanyrendszeru:nkben a root
   felhasznalokent tevekenykedo"k szamara. A WRKDIRPREFIX valtozot
   minden gepen egy helyi forditasi ko:nyvtarra allitsuk. Zaraskeppen
   meg hozzatesszu:k, hogy ha csomagokat akarunk kesziteni es masok
   szamara is elerheto"ve tenni, akkor ne felejtsu:k el a PACKAGES
   valtozot a DISTDIR valtozohoz hasonloan beallitani.

     --------------------------------------------------------------

                           Fejezet 25. DTrace

   Irta: Tom Rhodes.

25.1. Attekintes

   A DTrace, vagy mas neven Dynamic Tracing technologiat a Sun
   dolgozta ki szerverek teljesitmenyeben jelentkezo" szu"k
   keresztmetszetek felderitesenek megko:nnyitesere. Ez nem egy
   nyomko:vetesre szolgalo megoldast takar, hanem inkabb a rendszer
   valos ideju" elemzeset es teljesitmenyenek vizsgalatat elo"segito"
   eszko:zt.

   A DTrace figyelemre melto elemzo"eszko:z, rengeteg rendkivu:l
   hasznos kepesseggel rendelkezik a rendszerben felbukkano problemak
   diagnosztizalasara. Elo"re programozott szkriptek segitsegevel
   pedig ezen kepessegek tovabbi elo"nyeit tudjuk kihasznalni,
   ugyanis a DTrace programozhato egy un. D nyelven, amelynek reven a
   ku:lo:nbo:zo" vizsgalatokat ko:nnyen a sajat igenyeink szerint
   tudjuk alakitani.

   A fejezet elolvasasa soran megismerju:k:

     * mi is az a DTrace es milyen leheto"segei vannak;

     * a Solaris es FreeBSD operacios rendszereken megtalalhato
       DTrace implementaciok ko:zti eltereseket;

     * a DTrace FreeBSD alatt hogyan engedelyezheto" es hasznalhato.

   A fejezet elolvasasahoz ajanlott:

     * a UNIX es FreeBSD alapveto" ismerete (3 fejezet);

     * a rendszermag konfiguraciojanak es forditasanak alapveto"
       ismerete (8 fejezet);

     * az operacios rendszerek es azon belu:l a FreeBSD biztonsagi
       fogalmainak minimalis ismerete (14 fejezet);

     * a FreeBSD forrasainak megszerzesenek es azok leforditasanak
       ismerete (24 fejezet).

     Figyelem: Ez a funkcio meg folyamatos teszteles alatt all.
     Bizonyos reszei meg egyaltalan nem, vagy csak korlatozottan
     erheto"ek el. A dokumentacio annak megfelelo"en fog majd
     valtozni, hogy ezek az elemek fokozatosan elerik az eles
     felhasznalashoz szu:kseges szintet.

     --------------------------------------------------------------

25.2. Elteresek az implementacioban

   Noha a FreeBSD alatt megtalalhato DTrace implementacio nagyon
   hasonlo az eredeti, Solaris alatt futo valtozathoz, tartalmaz
   bizonyos ku:lo:nbsegeket, amelyeket a tovabblepes elo"tt
   mindenkeppen erdemes megemlitenu:nk. Az egyik legfontosabb ilyen
   szembetu"no" ku:lo:nbseg, hogy a FreeBSD eseten a DTrace
   hasznalatat ku:lo:n engedelyezni kell. A DTrace megfelelo"
   mu"ko:desehez tehat a rendszermag konfiguracios allomanyaban meg
   kell adnunk bizonyos beallitasokat es modulokat kell
   beto:ltenu:nk. Ezekro"l hamarosan szo lesz.

   A rendszermag konfiguracios allomanyaban a DDB_CTF opcio
   segitsegevel tudjuk engedelyezni un. CTF adatok beto:lteset mind a
   rendszermag moduljaibol, mind pedig magabol a rendszermagbol
   egyarant. A CTF a Solaris "Compact Type Format" elnevezesu"
   formatumara utal, amellyel peldaul a DWARF megoldasahoz hasonlo
   modon tarolhatunk to:mo:ritett alakban ku:lo:nbo:zo" tipusu
   nyomko:vetesi informaciokat. Ilyen CTF adatok to:bbek ko:zt a
   ctfconvert es a ctfmerge hasznalataval rendelheto"ek hozza binaris
   allomanyokhoz. A ctfconvert segedprogram a forditoprogram altal az
   ELF allomanyokban szereplo" DWARF tipusu szakaszokban tarolt
   informaciokat kepes beolvasni, es a ctfmerge a targykodban
   talalhato CTF tipusu ELF szakaszokat tudja vegrehajthato
   allomanyokka vagy osztott ko:nyvtarakka o:sszefu"zni. Ro:viden
   beszelni fogunk arrol, hogyan lehet mindezeket a FreeBSD
   alaprendszerebe es rendszermagjaba is beepiteni.

   FreeBSD es Solaris eseten elo"fordulhat, hogy mas fajta providerek
   allnak rendelkezesu:nkre. Ezek ko:zu:l talan a legfontosabb a
   dtmalloc, amely a FreeBSD rendszermagjaban tipus szerint teszi
   leheto"ve a malloc() fu:ggveny ko:veteset.

   FreeBSD alatt kizarolag csak a root tudja hasznalni a DTrace-t.
   Ennek oka a ket operacios rendszer biztonsagi megoldasai ko:zti
   ku:lo:nbsegekben keresendo", mivel a Solaris eseten letezik nehany
   olyan alacsonyszintu" elleno"rzes, amely a FreeBSD-nel meg nincs.
   Ezert peldaul a /dev/dtrace/dtrace eszko:z szigoruan csak a root
   szamara erheto" el.

   Vegezetu:l megemlitju:k, hogy a DTrace felhasznalasara a Sun CDDL
   licence vonatkozik. A Common Development and Distribution License
   FreeBSD a /usr/src/cddl/contrib/opensolaris/OPENSOLARIS.LICENSE
   allomanyban talalhato, vagy interneten keresztu:l a
   http://www.opensolaris.org/os/licensing cimen.

   Ezen licenc ertelmeben a DTrace tamogatassal keszitett FreeBSD
   rendszermagok tovabbra is BSD licencu"ek maradnak, azonban a
   rendszerrel terjesztett binarisok futtatasakor vagy a modulok
   beto:ltesekor mar a CDDL ervenyesu:l.

     --------------------------------------------------------------

25.3. A DTrace tamogatasanak engedelyezese

   A DTrace altal felkinalt leheto"segeket a ko:vetkezo" sorok
   hozzaadasaval tudjuk engedelyezni a rendszermag konfiguracios
   allomanyaban:

 options         KDTRACE_HOOKS
 options         DDB_CTF

     Megjegyzes: AMD64 architekturan ezeken kivu:l meg az alabbi sor
     is kelleni fog:

 options         KDTRACE_FRAME

     Ezzel a beallitassal az FBT ("function boundary tracing")
     reszere nyujtunk tamogatast. A DTrace ugyan enelku:l is kepes
     lesz mu"ko:dni, de akkor csak korlatozott mertekben tudunk ilyen
     tipusu vizsgalatokat vegezni.

   Az egesz rendszert ujra kell forditanunk a CTF hasznalataval.
   Ennek elvegzesehez a ko:vetkezo" parancsokat kell kiadnunk:

 # cd /usr/src
 # make WITH_CTF=1 kernel

   A forditas befejezo"dese utan inditsuk ujra a rendszeru:nket.

   A rendszer ujraindulasa es az uj rendszermag beto:lto"dese utan
   szu:ksegu:nk lesz egy Korn-fele parancsertelmezo"re is, mivel a
   DTrace eszko:ztaraban rengeteg, a ksh programra epu:lo" eszko:zt
   fogunk talalni. Ezert tehat telepitsu:k a shells/ksh93 csomagot,
   de megjegyezzu:k, hogy ugyanezen eszko:zo:k szamara a shells/pdksh
   vagy shells/mksh csomagok is megfelelnek.

   Vegu:l to:ltsu:k le a DTrace eszko:ztaranak legfrissebb
   valtozatat. Az aktualis verzio a
   http://www.opensolaris.org/os/community/dtrace/dtracetoolkit/
   cimen erheto" el. Kepes o:nmagat telepiteni, de a benne talalhato
   eszko:zo:k hasznalatahoz nem ko:telezo" ezt elvegezni.

     --------------------------------------------------------------

25.4. A DTrace hasznalata

   A DTrace funkcioinak alkalmazasahoz leteznie kell egy DTrace
   eszko:znek. Ennek letrehozasahoz be kell to:ltenu:nk a megfelelo"
   modult:

 # kldload dtraceall

   Innento"l mar mu"ko:desre kesz a DTrace.
   Rendszeradminisztratorkent a ko:vetkezo" modon kerdezhetju:k le a
   rendelkezesre allo vizsgalatokat:

 # dtrace -l | more

   Mivel lekerdezes eredmenye pillanatok alatt beto:ltene az egesz
   kepernyo"t, ezert az egeszet meg atiranyitjuk a more parancshoz.
   Ha ez rendesen lefut, akkor a DTrace tenylegesen hasznalhatonak
   tekintheto". Ezt ko:veto"en tekintsu:k at a hozzatartozo
   eszko:zkeszletet.

   Ez a mellekelt eszko:zkeszlet lenyegeben a rendszerrel kapcsolatos
   informaciok o:sszegyu"jtesere alkalmas szkripteket tartalmaz.
   Vannak szkriptek, amelyekkel a megnyitott allomanyokat, a
   memoriat, a processzorhasznalatot es meg sok minden mast
   kerdezhetu:nk le. A szkriptek a ko:vetkezo" parancs segitsegevel
   to:mo:ritheto"ek ki:

 # gunzip -c DTraceToolkit* | tar xvf -

   A cd parancs segitsegevel lepju:nk be az igy keletkezo"
   ko:nyvtarba, es a kisbetu"s nevvel rendelkezo" allomanyok
   engedelyeit allitsuk be a 755 modra.

   Mindegyik szkriptben el kell vegeznu:nk nemi modositast: a
   /usr/bin/ksh hivatkozasokat irjuk at mindenhol a
   /usr/local/bin/ksh nevre, illetve a /usr/bin/sh hivatkozasokat
   /bin/sh nevre, majd vegezetu:l pedig a /usr/bin/perl
   hivatkozasokat a /usr/local/bin/perl nevre.

     Fontos: Itt meg egyszer kiemelnenk, hogy a FreeBSD-ben jelenleg
     megtalalhato DTrace tamogatas meg nem teljes es kiserleti
     jelleggel szerepel. Ezert bizonyos szkriptek nem fognak
     mu"ko:dni, vagy azert, mert tulsagosan Solaris leheto"segeihez
     igazodnak, vagy pedig azert, mert a jelenlegi implementacio
     altal meg nem ismert vizsgalatokra tamaszkodnak.

   Jelenlegi ismereteink szerint a FreeBSD egyelo"re csak ket
   szkriptet tamogat teljes mertekben, ezek a hotkernel es a
   procsystime. A szakasz tovabbi reszeben ezzel a ketto"vel fogunk
   reszletesebben foglalkozni.

   A hotkernel feladata segiteni beazonositani azokat a
   fu:ggvenyeket, amelyek a legto:bb ido"t veszik igenybe a
   rendszermagon belu:l. A szkript futtatasakor nagyjabol a
   ko:vetkezo"t csinalja:

 # ./hotkernel
 Sampling... Hit Ctrl-C to end.

   A folyamat Ctrl+C billentyu"kombinacio hatasara allithato meg. A
   szkript futasanak befejezo"desekor ku:lo:nbo:zo" rendszermagbeli
   fu:ggvenyek es a hozzajuk tartozo ido"k jelennek meg, az utobbi
   szerint no:vekvo" sorrendben:

 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%

   Ez a szkript modulok eseten is alkalmazhato. Ezt a modjat a -m
   kapcsolo megadasaval aktivalhatjuk:

 # ./hotkernel -m
 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%

   A procsystime szkript egy adott azonositoval vagy nevvel
   rendelkezo" programhoz tudja megadni az altala kezdemenyezett
   rendszerhivasok altal felhasznalt ido"t. A most ko:vetkezo"
   peldaban elinditjuk a /bin/csh egy ujabb peldanyat. A procsystime
   elindul, majd megvarja, amig kiadunk nehany parancsot a csh
   frissen inditott masolataban. A teszt eredmenyei tehat a
   ko:vetkezo"k lesznek:

 # ./procsystime -n csh
 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

   Jol megfigyelheto", hogy (nanomasodpercekben merve) a legto:bb
   ido"t a read(), a legkevesebb ido"t pedig a getpid() rendszerhivas
   vette igenybe.

     --------------------------------------------------------------

25.5. A D nyelv

   A DTrace eszko:ztaraban megtalalhato szamos szkript a DTrace sajat
   programozasi nyelven irodott. Ezt a nyelvet nevezik a Sun
   implementaciojaban "a D nyelvnek". Ennek ismertetesere itt most
   ku:lo:n nem teru:nk ki, azonban a
   http://wikis.sun.com/display/DTrace/Documentation cimen igen
   reszletesen olvashatunk rola.

                       IV. Halozati kommunikacio

   A FreeBSD az egyik legelterjedtebb operacios rendszer a legnagyobb
   halozati teljesitmenyt nyujto kiszolgalok ko:reben. Az itt
   talalhato fejezetek temai:

     * Soros kommunikacio

     * PPP es PPP Etherneten keresztu:l (PPPoE)

     * Elektronikus levelezes

     * Halozati kiszolgalok futattasa

     * Tu"zfalak

     * Egyeb halado halozati temak

   Ezek a fejezetek nem allnak egymassal szoros kapcsolatban, csupan
   egy adott temarol adnak ismereteket. Ennelfogva nem ko:telezo"
   ezeket sorrendben elolvasni, valamint egyaltalan nem is kell
   mindegyiko"ju:ket atolvasni ahhoz, hogy a FreeBSD-t halozati
   ko:rnyezetben is hasznalni tudjuk.

   Tartalom

   26. Soros vonali kommunikacio

   27. A PPP es a SLIP

   28. Elektronikus levelezes

   29. Halozati szerverek

   30. Tu"zfalak

   31. Egyeb halado halozati temak

     --------------------------------------------------------------

                 Fejezet 26. Soros vonali kommunikacio

26.1. Attekintes

   A UNIX mindig is tamogatta a soros vonali kommunikaciot.
   Tulajdonkeppen az elso" UNIX-os gepek is soros vonalon kaptak a
   felhasznaloktol a bemenetet es ugyanigy ku:ldtek vissza a
   kimenetet. Az ido"k azota mar sokat valtoztak, hogy egy atlagos
   "terminal" mindo:ssze egy 10 karakter per masodperc sebessegu"
   soros nyomtatobol es egy billentyu"zetbo"l allt. Ebben a
   fejezetben ismertetu:nk nehany olyan megoldast, amellyel a FreeBSD
   kepes soros vonalon keresztu:l kommunikalni.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan kapcsoljunk terminalokat a FreeBSD rendszeru:nkre;

     * hogyan tarcsazzunk modem segitsegevel tavoli szamitogepeket;

     * hogyan tegyu:k leheto"ve gepu:nkre a bejelentkezest tavoli
       felhasznalok szamara;

     * hogyan inditsuk a rendszeru:nket soros konzolrol.

   A fejezet elolvasasahoz ajanlott:

     * egy uj rendszermag beallitasanak es telepitesenek ismerete (8
       fejezet);

     * a UNIX-os engedelyek es a UNIX alatt futtatott programok
       mu"ko:dtetesenek megertese (3 fejezet);

     * annak a soros vonali hardvernek (modemnek vagy to:bbportos
       kartyanak a) keziko:nyve, amelyet a FreeBSD-vel hasznalni
       szeretnenk

     --------------------------------------------------------------

26.2. Bevezetes

  26.2.1. Alapfogalmak

   bps

           Bit per masodperc -- az adatatvitel sebessege

   DTE

           Adatterminal eszko:z (Data Terminal Equipment) -- ez
           peldaul a szamitogepu:nk

   DCE

           Adatkommunikacios eszko:z (Data Communications Equipment)
           -- ez a modem

   RS-232

           a hardveres soros vonali kommunikaciohoz szu:kseges EIA
           szabvanyu kabel

   Amikor ebben a fejezetben az adatatvitel sebessegero"l beszelu:nk,
   akkor szandekosan nem hasznaljuk a "baud" fogalmat. A baud ugyanis
   a kommunikacios eszko:zben adott ido" alatt lezajlo jelvaltasok
   mennyiseget jelo:li, miko:zben itt a "bps" (bit per masodperc)
   kifejezes hasznalata a helyes (vagy legalabb is a
   szo"rszalhasogatok egyelo"re megnyugodhatnak).

     --------------------------------------------------------------

  26.2.2. Kabelek es portok

   Ha a FreeBSD rendszeru:nkho:z egy modemet vagy egy terminalt
   akarunk csatlakoztatni, akkor ahhoz a szamitogepu:nkben szu:kseg
   lesz egy szabad soros portra es egy megfelelo" tipusu kabelre. Ha
   mar tisztaban vagyunk a rendelkezesre allo hardverrel es a
   hozzatartozo kabellel, akkor nyugodtan atlephetju:k ezt a reszt.

     --------------------------------------------------------------

    26.2.2.1. A kabelek fajtai

   A soros kabeleknek to:bb ku:lo:nbo:zo" tipusa van. Ko:zu:lu:k a
   celjainknak leginkabb megfelelo" ket legismertebb valtozatuk az
   un. null-modem es a szabvanyos ("egyenes") RS-232-es soros
   kabelek. A hardverhez tartozo dokumentacioban megtalaljuk, hogy
   pontosan melyik tipus tartozik hozza.

     --------------------------------------------------------------

      26.2.2.1.1. A null-modem kabelek

   Egy null-modem kabel bizonyos jeleket, to:bbek ko:zt a "fo:ldet"
   (Signal Ground, SG), egyenesen ku:ldi, masokat viszont
   felcserelten. Peldaul az "atku:ldo:tt adat" (Transmitted Data, TD)
   jelzesu" tu" a kabel masik vegen a "fogadott adat" (Received Data,
   RD) tu"ho:z fut be.

   A terminalokhoz akar sajat magunk is le tudunk gyartani egy
   null-modem kabelt (peldaul ha a boltiakkal nem lennenk
   megelegedve). A ko:vetkezo" tablazatban az RS-232C jeleit es
   erintkezo"inek szamozasat lathatjuk egy DB-25-o:s csatlakozo
   eseteben. A szabvany a kabel ket 1-es tu"jet o:sszekapcsolo
   vonalat vedo"fo:ldnek (Protective Ground, PD) nevezi, de ezt
   gyakran el is hagyjak. Nemely terminal remeku:l mu"ko:dik
   mindo:ssze a 2-es, 3-as es 7-es tu"k hasznalataval, miko:zben
   masok az imenti peldatol eltero" kiosztast igenyelnek.

   Tablazat 26-1. A DB-25 DB-25 ko:zti null-modem kabel

   Jel          Tu"                          Tu"          Jel         
   SG           7            parja:          7            SG          
   TD           2            parja:          3            RD          
   RD           3            parja:          2            TD          
   RTS          4            parja:          5            CTS         
   CTS          5            parja:          4            RTS         
   DTR          20           parja:          6            DSR         
   DTR          20           parja:          8            DCD         
   DSR          6            parja:          20           DTR         
   DCD          8            parja:          20           DTR         

   Ime a mostansag elterjedt masik ket sema.

   Tablazat 26-2. A DB-9 DB-9 ko:zti null-modem kabel

   Jel          Tu"                          Tu"          Jel         
   RD           2            parja:          3            TD          
   TD           3            parja:          2            RD          
   DTR          4            parja:          6            DSR         
   DTR          4            parja:          1            DCD         
   SG           5            parja:          5            SG          
   DSR          6            parja:          4            DTR         
   DCD          1            parja:          4            DTR         
   RTS          7            parja:          8            CTS         
   CTS          8            parja:          7            RTS         

   Tablazat 26-3. DB-9 DB-25 ko:zti null-modem kabel

   Jel          Tu"                          Tu"          Jel         
   RD           2            parja:          2            TD          
   TD           3            parja:          3            RD          
   DTR          4            parja:          6            DSR         
   DTR          4            parja:          8            DCD         
   SG           5            parja:          7            SG          
   DSR          6            parja:          20           DTR         
   DCD          1            parja:          20           DTR         
   RTS          7            parja:          5            CTS         
   CTS          8            parja:          4            RTS         

     Megjegyzes: Amikor egy tu" az atellenes oldalon ket masik
     tu"ho:z csatlakozik, akkor azt altalaban ugy valositjak meg,
     hogy a ket tu"t a sajat oldalukon o:sszeko:tik, majd ezt
     kapcsoljak hozza a harmadik tu"ho:z.

   Ezek a megoldasok a legnepszeru"bbek. Termeszetesen a tu"k
   o:sszeko:tesenek to:bb mas variacioja is letezik (ezekro"l az
   RS-232 Made Easy c. ko:nyvben olvashatunk bo"vebben), ahol az SG
   parja az SG, a TD parja az RD, az RTS es a CTS parja az DCD, a DTR
   parja a DSR es ugyanezek forditva.

     --------------------------------------------------------------

      26.2.2.1.2. Szabvanyos RS-232C kabelek

   A szabvanyos soros kabel az o:sszes RS-232C jelet ko:zvetlenu:l
   atku:ldi. Vagyis a kabel egyik vegen levo" "atku:ldo:tt adat" tu"
   a masik vegen is az "atku:ldo:tt adat" tu"ho:z csatlakozik. Az
   ilyen tipusu kabeleket to:bbnyire a szamitogepek es a modemek
   ko:zo:tt alkalmazzak, de egyes terminaltipusok eseteben is
   szu:ksegu:nk lehet ra.

     --------------------------------------------------------------

    26.2.2.2. A portok

   A soros port olyan eszko:z, amelyen keresztu:l a FreeBSD-s gep es
   a terminal ko:zo:tt adatokat tudunk ko:zvetiteni. Ebben a
   szakaszban az ilyen portok ku:lo:nfele tipusait es ezek
   hasznalatat ismertetju:k FreeBSD alatt.

     --------------------------------------------------------------

      26.2.2.2.1. A portok tipusai

   A soros portoknak to:bb tipusa letezik. Mielo"tt vasarolnank egy
   keszitenenk egy soros kabelt, mindenkeppen gyo"zo:dju:nk meg rola,
   hogy csatlakoztatni tudjuk majd a FreeBSD-s rendszeru:nkho:z es a
   terminalhoz egyarant.

   A legto:bb terminalon DB-25-o:s portot talalunk. A szemelyi
   szamitogepek, ko:ztu:k azok, amelyeken FreeBSD fut, DB-25-o:s es
   DB-9es portokkal rendelkeznek. Ha a gepu:nkben egy to:bbportos
   soros kartya van, akkor ezeken kivu:l meg RJ-12-es es RJ-45-o:s
   portjaink is lehetnek.

   A hardverhez tartozo dokumentaciobol tudjuk kideriteni az adott
   port konkret fajtajat, de gyakran a port vizualis vizsgalata is
   segithet eldo:nteni a kerdest.

     --------------------------------------------------------------

      26.2.2.2.2. A portok nevei

   FreeBSD alatt az egyes soros portokat a /dev ko:nyvtarban
   talalhato eszko:zleirokon keresztu:l tudjuk elerni. Ezeknek ket
   tipusa van:

     * A behivashoz hasznalt portok nevei /dev/ttydN alakuak, ahol az
       N a port sorszama, ami nullatol indul. A behivo portok
       alapveto"en a terminal eseteben hasznalatosak. A behivo portok
       hasznalatahoz a soros vonalon az "vonal eszlelese" (Data
       Carrier Detect, DCD) jelnek kell megbizhatoan mu"ko:dnie.

     * A hivashoz hasznalt portok nevei /dev/cuadN alakuak. A hivo
       portokat terminalok eseteben ritkan alkalmazzak, helyettu:k
       inkabb csak modemekhez hasznaljak. A hivo portokat akkor
       erdemes hasznalni, ha a soros kabel vagy a terminal nem ismeri
       a DCD jelet.

   Ha a terminalt az elso" soros portra (ami MS-DOS-ban a COM1)
   csatlakoztattuk, akkor a /dev/ttyd0 segitsegevel fogunk ra
   hivatkozni. Ha viszont a masodik soros porton (mas neven COM2)
   talalhato, akkor a /dev/ttyd1 eszko:zt hasznaljuk, es igy tovabb.

     --------------------------------------------------------------

  26.2.3. A rendszermag beallitasa

   A FreeBSD alapbol negy soros portot tamogat. Az MS-DOS vilagban
   ezeket rendre COM1, COM2, COM3 es COM4 portoknak nevezik. A
   FreeBSD jelen pillanatban ismeri meg a "butabb" to:bbportos soros
   csatolokartyakat is, peldaul a BocaBoard 1008 es 2016 tipusokat,
   valamint to:bb intelligensebb to:bbportos kartyat, peldaul a
   Digiboard es a Stallion Technologies gyartmanyait. Az alap
   rendszermag azonban csak a szabvanyos COM portokat keresi.

   Ha elleno"rizni akarjuk, hogy a rendszermag rendben megtalalta a
   soros portokat, akkor figyelmesen olvassuk el a rendszerinditas
   soran megjeleno" u:zeneteket, vagy az /sbin/dmesg parancs
   kiadasaval kerdezzu:k vissza a rendszermag u:zeneteit.
   Ku:lo:no:sen a sio kezdetu" sorokra kell figyelnu:nk.

     Tipp: Az alabbi paranccsal tudjuk leszu"rni a sio szo:vegreszt
     tartalmazo sorokat:

 # /sbin/dmesg | grep 'sio'

   Peldaul, ha negy soros port talalhato a rendszeru:nkben, akkor a
   rajuk vonatkozo rendszeru:zenetek a ko:vetkezo"k lesznek:

 sio0 at 0x3f8-0x3ff irq 4 on isa
 sio0: type 16550A
 sio1 at 0x2f8-0x2ff irq 3 on isa
 sio1: type 16550A
 sio2 at 0x3e8-0x3ef irq 5 on isa
 sio2: type 16550A
 sio3 at 0x2e8-0x2ef irq 9 on isa
 sio3: type 16550A

   Ha a rendszermagunk nem ismerte volna fel az o:sszes soros portot,
   akkor valoszinu"leg a /boot/device.hints allomanyt kell
   modositanunk. Tegyu:k megjegyzesbe vagy akar teljesen tavolitsuk
   is el azokat az eszko:zo:ket, amelyekkel nem rendelkezu:nk.

   A soros portok es a to:bbportos kartyak beallitasaval kapcsolatban
   a sio(4) man oldalat olvassuk el. Ovatosan banjunk a FreeBSD
   megelo"zo" valtozataibol szarmazo konfiguracios allomanyokkal,
   mert az eszko:zo:k vonatkozo beallitasokat es azok formatuma
   megvaltozhatott azota.

     Megjegyzes: Az port IO_COM1 a port 0x3f8, az IO_COM2 a 0x2f8, az
     IO_COM3 a 0x3e8 es az IO_COM4 a 0x2e8 beallitast helyettesiti.
     Ezek az adott porthoz tartozo gyakori cimeket kepviselik. A
     4-es, 3-as, 5-o:s es 9 megszakitasok is igen altalanosak
     ezeknel. A hagyomanyos soros portok viszont az ISA buszos PC-k
     eseteben nem kepesek a megszakitasokon osztozni. (A to:bbportos
     kartyak azonban leheto"ve teszik az 16550A szamara, hogy
     mindo:ssze egy vagy ket megszakitast hasznaljon.)

     --------------------------------------------------------------

  26.2.4. Specialis eszko:zallomanyok

   A rendszermagban talalhato legto:bb eszko:z az un. "specialis
   eszko:zallomanyokon" keresztu:l erheto" el, melyek a /dev
   ko:nyvtarban talalhatoak. A sio eszko:zo:k a /dev/ttydN (behivo
   portok) es /dev/cuadN (hivo portok) allomanyok hasznalataval
   erheto"ek el. A FreeBSD ezenkivu:l meg ku:lo:n eszko:zallomanyokat
   biztosit az inicializaciohoz (/dev/cuadN.init) es a zarolashoz
   (/dev/cuadN.lock). Az inicializacios allomanyok a port
   megnyitasakor hasznalhatoak a hozzatartozo parameterek
   beallitasara, peldaul igy tudjuk elku:ldeni a crtscts utasitast az
   olyan modemeknek, amelyek a forgalom iranyitasat RTS/CTS
   jelzeseken keresztu:l valositjak meg. A zarolo allomanyokkal a
   portokra vonatkozo zarolasokat allithatjuk be, igy a felhasznalok
   vagy a programok nem lesznek kepesek bizonyos parametereket
   megvaltoztatni. A termios(4), sio(4) es stty(1) man oldalakon
   olvashatunk reszletesebben a terminalok beallitasairol, valamint
   az eszko:zo:k zarolasarol es inicializalasarol.

     --------------------------------------------------------------

  26.2.5. A soros port beallitasa

   A ttydN (vagy cuadN) lesz az az eszko:z, amit majd az
   alkalmazasainkbol el akarunk erni. Amikor egy futo program megnyit
   egy ilyen eszko:zt, mindig tartoznak hozza alapertelmezett
   terminal I/O beallitasok. Ezeket a ko:vetkezo" paranccsal tudjuk
   lekerdezni:

 # stty -a -f /dev/ttyd1

   Ha megvaltoztatjuk az eszko:z beallitasait, akkor azok egeszen
   addig ervenyben is maradnak, amig le nem zarjuk. Ha tehat ezutan
   ujra megnyitjuk, akkor minden visszaall az alapertelmezett
   allapotra. Az alapertelmezett beallitasok megvaltoztatasahoz a
   "kezdeti allapotot" szimbolizalo eszko:zt kell megnyitnunk es
   atallitanunk. Peldaul, ha alapbol engedelyezni akarjuk a CLOCAL
   modot, a 8 bites kommunikaciot es a XON/XOFF tipusu
   forgalomiranyitast a ttyd5 eszko:zo:n, akkor a ko:vetkezo"t
   gepelju:k be:

 # stty -f /dev/ttyd5.init clocal cs8 ixon ixoff

   A soros eszko:zo:k rendszerszintu" inicializalasat az
   /etc/rc.d/serial allomany vezerli. Lenyegeben ez hatarozza meg az
   o:sszes soros eszko:z alapertelmezett beallitasat.

   Ha bizonyos beallitasok megvaltoztatasat tiltani szeretnenk az
   alkalmazasok fele, akkor azt a "zarolt allapotot" tartalmazo
   eszko:zben kell ro:gzitenu:nk. Peldaul, ha a ttyd5 eszko:z
   sebesseget fixen 57600 bps-ra akarjuk beallitani, akkor irjuk be
   ezt:

 # stty -f /dev/ttyd5.lock 57600

   Ezutan ha egy alkalmazas megnyitja a ttyd5 eszko:zt es megprobalja
   a port sebesseget atallitani, akkor az tovabbra is 57600 bps
   marad.

   A kezdeti es a zarolt allapotot kepezo" eszko:zo:ket altalaban
   csak a root felhasznalo szamara szabad irhatova tenni.

     --------------------------------------------------------------

26.3. Terminalok

   Keszitette: Sean Kelly.

   A terminalok olyankor kinalnak kenyelmes es ko:ltseghatekony
   hozzaferest a FreeBSD rendszeru:nkho:z, amikor sem a gep
   konzoljat, sem pedig a hozzatartozo halozatot nem erju:k el. Ebben
   a szakaszban olvashatjuk, mikent kell terminalokat hasznalni
   FreeBSD alatt.

     --------------------------------------------------------------

  26.3.1. A terminalok alkalmazasai es tipusai

   Az eredeti UNIX rendszereknek nem voltak konzoljaik. Ehelyett az
   emberek a soros portokra csatlakoztatott terminalokon keresztu:l
   jelentkeztek be es igy futtattak rajtuk programokat. Ez nagyon
   hasonlit ahhoz, mint amikor egy modem es egy terminalprogram
   felhasznalasaval betarcsazunk egy tavoli gepre es vele szo:veges
   modban dolgozunk.

   Napjaink szemelyi szamitogepein azonban talalhatunk mar akar nagy
   felbontasu megjelenitessel megaldott konzolokat is, habar a soros
   porton keresztu:li bejelentkezes leheto"sege meg mind a mai napig
   elerheto" a legto:bb UNIX-alapu rendszerben. Ez alol a FreeBSD sem
   kivetel. Ha rako:tu:nk egy terminalt a gepu:nk egyik u:res soros
   portjara, akkor a megszokott modon kepesek vagyunk bejelentkezni a
   rendszerbe es futtatni barmilyen szo:veges programot, hasonloan
   ahhoz, ahogy azt a konzolban vagy az X Window Systemben egy xterm
   ablakban megtehetju:k.

   Ha egy irodaban vagyunk, akkor egy FreeBSD rendszerre to:bb
   terminalt is kapcsolhatunk, melyek az alkalmazottak asztalain
   foglalnak helyet. Otthoni hasznalat eseten egy kio:regedett
   szamitogep, peldaul egy regi IBM PC vagy egy Macintosh is
   rako:theto" egy gyorsabb FreeBSD rendszerre. Ennek segitsegevel az
   egyebkent egyfelhasznalos szamitogepu:nket egy valodi
   to:bbfelhasznalos rendszerre alakithatjuk.

   A FreeBSD eseten haromfele terminalrol beszelhetu:nk:

     * A buta (dumb) terminalok

     * A terminalkent funkcionalo szemelyi szamitogepek

     * Az X terminalok

   A most ko:vetkezo" alszakaszokban ezeket fejtju:k ki
   reszletesebben.

     --------------------------------------------------------------

    26.3.1.1. A buta terminalok

   A buta terminal alatt olyan specializalt eszko:zt ertu:nk,
   amellyel soros vonalon keresztu:l csatlakozunk szamitogepekhez.
   Azert nevezik ezeket "butanak", mert csupan annyi szamitasi
   teljesitmenyt zsufoltak beleju:k, hogy szo:veget legyenek kepesek
   ku:ldeni, fogadni es megjeleniteni. Semmilyen program nem kepes
   rajtuk futni. Helyette az a szamitogep fogja a
   szo:vegszerkeszto"t, forditoprogramot, levelezo" klienst, jatekot
   es a to:bbit futtatni, amelyre vele kapcsolodtunk.

   A buta terminaloknak to:bbszaz, ku:lo:nbo:zo" gyartmanyu fajtaja
   letezik. Ilyenek peldaul a Digital Equipment VT-100 vagy a Wyse
   WY-75 tipusu terminaljai. A FreeBSD szinte mindegyiku:ket ismeri.
   Egyes dragabb terminalok meg grafikus megjelenitesre is kepesek,
   de ezeket a leheto"segeket csak bizonyos szoftverek tudjak
   tenylegesen kihasznalni.

   A buta terminalok leginkabb olyan munkahelyeken terjedtek el, ahol
   az alkalmazottaknak nincs szu:ksegu:k grafikus alkalmazasok, tehat
   peldaul az X Window System hasznalatara.

     --------------------------------------------------------------

    26.3.1.2. Szemelyi szamitogepek mint terminalok

   Ha egy buta terminal csupan szo:veg ku:ldesere, fogadasara es
   megjelenitesere kepes, akkor barmelyik szemelyi szamitogep utana
   tudja mindezt csinalni. Ehhez mindo:ssze egy megfelelo" kabelre es
   az adott gepen futo terminal emulacios szoftverre van
   szu:ksegu:nk.

   Az ilyen fajta megoldas nagyon elterjedt az otthoni hasznalat
   eseten. Peldaul, ha valamelyik csaladtagunk eppen szorgalmasan
   dolgozik a FreeBSD rendszerkonzoljan, akkor a rakapcsolt
   terminalon keresztu:l meg mi magunk is el tudunk vegezni
   valamennyi szo:veges felu:letet igenylo" munkat.

   Az alap FreeBSD rendszerben legalabb ket segedprogram hasznalhato
   a soros vonali kapcsolaton keresztu:li munkara: a cu(1) es a
   tip(1).

   Egy FreeBSD rendszeru" kliensro"l igy tudunk csatlakozni egy masik
   rendszerre:

 # cu -l soros-vonali-eszko:z

   Ahol a "soros-vonali-eszko:z" a rendszeru:nkben a soros portot
   jelo:lo" specialis eszko:z neve. Az ilyen eszko:zo:k neve
   /dev/cuadN.

   Az eszko:z neveben az "N"-es resz a soros port sorszamat adja meg.

     Megjegyzes: A FreeBSD-ben az eszko:zo:k sorszamozasa nullatol
     kezdo"dik, nem pedig egyto"l (ellentetben tehat azzal, ahogy azt
     az MS-DOS rendszerekben es leszarmazottaikban mar
     megszokhattuk). Ez azt jelenti, hogy amit az MS-DOS alapu
     rendszerekben COM1-nek hivnak, az a FreeBSD-ben altalaban a
     /dev/cuad0.

     Megjegyzes: Egyes emberek mas, to:bbnyire a Portgyu"jtemenybo"l
     is elerheto" programokat szeretnek inkabb hasznalni. A portok
     ko:zo:tt talalhatunk eleg sok olyan szoftvert, amely a cu(1) es
     a tip(1) programokhoz hasonloan mu"ko:dik. Ilyen peldaul a
     comms/minicom.

     --------------------------------------------------------------

    26.3.1.3. Az X terminalok

   Az X terminalok a terminalok ko:zu:l a legfejlettebbek. Altalaban
   nem is soros porton, hanem halozaton, peldaul Etherneten
   keresztu:l csatlakoznak. Termeszetesen nem csak szo:veges
   alkalmazasokat, hanem lenyegeben barmilyen X alkalmazast kepesek
   megjeleniteni.

   Az X terminalokrol itt most csak a teljesseg kedveert szolunk, de
   ebben a fejezetben nem szandekozunk targyalni az X terminalok
   csatlakoztatasat, beallitasat es hasznalatat.

     --------------------------------------------------------------

  26.3.2. Beallitas

   Ebben a fejezetben ismertetju:k mindazt, ami ahhoz kell, hogy a
   FreeBSD rendszeru:nko:n engedelyezni tudjuk a terminalon
   keresztu:li bejelentkezeseket. Feltetelezzu:k, hogy a
   rendszermagunk tamogatja a terminalok altal hasznalt soros
   portokat, illetve, hogy ezeket mar csatlakoztattuk is.

   Ha visszagondolunk a 12 fejezetre, akkor eszu:nkbe juthat, hogy a
   rendszer inditasakor az init nevu" program felelo"s az o:sszes
   futo program iranyitasaert es inicializalodasaert. Az init egyik
   feladata, hogy beolvassa az /etc/ttys allomanyt es neki
   megfelelo"en az elerheto" terminalokon elinditsa a getty
   programot. A getty felelo"s a bejelentkezeshez szu:kseges
   azonosito beolvasasaert es a login program elinditasaert.

   Ennek megfelelo"en tehat, ha a FreeBSD rendszeru:nko:n
   terminalokat akarunk beallitani, akkor ehhez a ko:vetkezo"
   lepeseket kell megtennu:nk root felhasznalokent:

    1. Az /etc/ttys allomanyba vegyu:nk fel egy bejegyzest a soros
       porthoz tartozo /dev ko:nyvtarbeli eszko:zho:z, ha meg nem
       szerepelne benne.

    2. A porthoz adjuk meg a /usr/libexec/getty programot, majd hozza
       az /etc/gettytab allomanybol valasszuk ki a megfelelo" getty
       tipust.

    3. Adjuk meg a terminal alapertelmezett tipusat.

    4. Allitsuk a portot "on" (bekapcsolt) allapotura.

    5. Adjuk meg, hogy a port "secure" (biztonsagos) legyen-e.

    6. Mondjuk meg az init programnak, hogy olvassa ujra az /etc/ttys
       allomanyt.

   A masik lepes kiegeszito" lepesekent az /etc/gettytab allomanyban
   mi magunk is letrehozhatunk egy sajat getty tipust. A fejezetben
   ehhez ugyan nem adunk segitseget, de ha erdekel minket a tema,
   akkor ezzel kapcsolatban a gettytab(5) es getty(8) man oldalakat
   erdemes elolvasni.

     --------------------------------------------------------------

    26.3.2.1. Egy bejegyzes felvetele az /etc/ttys allomanyba

   Az /etc/ttys allomanyban talalhatjuk meg az o:sszes portot,
   ahonnan a FreeBSD rendszeru:nk engedelyezi a bejelentkezest.
   Peldaul a ttyv0, az elso" virtualis konzol is szerepel benne. Ezen
   a bejegyzesen keresztu:l tudunk bejelentkezni a konzolra. Ebben az
   allomanyban talaljuk meg meg a to:bbi virtualis konzol, soros port
   es pszeudoterminal bejegyzeseit is. A ro:gzitett terminalok eseten
   egyszeru"en csak adjuk meg a soros porthoz tartozo /dev
   ko:nyvtarbeli eszko:zt a /dev elo"tag nelku:l (igy peldaul a
   /dev/ttyv0 ttyv0 neven fog megjelenni).

   Az alap FreeBSD telepitesben egy olyan /etc/ttys allomany
   talalhato, amely tartalmazza az elso" negy soros portot, a ttyd0
   eszko:zto"l kezdve a ttyd3 eszko:zig. Ha tehat ezekre a portokra
   csatlakoztatnunk egy terminalt, akkor mar nem kell egy ujabb
   bejegyzest felvennu:nk hozzajuk.

   Pelda 26-1. Terminalok felvetele az /etc/ttys allomanyba

   Tegyu:k fel, hogy ket eszko:zt szeretnenk a rendszeru:nkho:z
   csatlakoztatni: egy Wyse-50-es terminalt es egy regi 286-os IBM
   PC-t, amelyen a Procomm terminalszoftverrel emulalunk egy
   VT-100-as terminalt. A Wyse terminalt a masodik soros portunkra
   ko:tju:k, mig a 286-ost a hatodik soros portra (peldaul egy
   to:bbportos soros vonali kartyan). A nekik megfelelo" /etc/ttys
   allomanybeli bejegyzesek igy fognak kinezni:

 ttyd1(1)  "/usr/libexec/getty std.38400"(2)  wy50(3)  on(4)  insecure(5)
 ttyd5   "/usr/libexec/getty std.19200"  vt100  on  insecure
          

   (1)
           Az elso" mezo"ben altalaban a terminalhoz tartozo eszko:zt
           nevezzu:k meg, amely a /dev ko:nyvtarban talalhato.
   (2)
           A masodik mezo" a vonalhoz tartozo vegrehajtando parancs,
           ami altalaban a getty(8). A getty mu"ko:desbe helyezi es
           megnyitja a vonalat, beallitja a sebesseget, bekeri a
           felhasznalo nevet, majd elinditja a login(1) programot.

           A getty program egy (opcionalis) parametert fogad el a
           parancssoraban, ami a getty tipusa. Egy ilyen getty tipus
           szabja meg a terminalhoz tartozo vonal jellemzo"it,
           peldaul az adatatviteli sebesseget es a paritast. A getty
           ezeket a jellemzo"ket az /etc/gettytab allomanybol olvassa
           be.

           A /etc/gettytab egyarant tartalmaz bejegyzeseket a regi es
           uj tipusu terminalokhoz. Az std szo:veggel kezdo"do"
           bejegyzesek szinte majdnem minden esetben mu"ko:dnek a
           hardveres terminalokkal. Az ilyen bejegyzesek figyelmen
           kivu:l hagyjak a paritast. 110 es 115 200 bps ko:zo:tt
           minden adatatviteli sebesseghez tartozik egy-egy std
           bejegyzes. Termeszetesen ebbe az allomanyba akar a sajat
           bejegyzeseinket is elkeszithetju:k. A gettytab(5) man
           oldal nyujt ehhez atfogo segitseget.

           Amikor az/etc/ttys allomanyban megadjuk a getty tipusat,
           akkor elleno"rizzu:k, hogy a beallitasai megfelelnek a
           terminalenak.

           A peldanknal maradva: a Wyse-50 nem hasznal paritast es
           38 400 bps-en u:zemel. A 286-os gep szinten nem dolgozik
           paritassal es 19200 bps-sel kapcsolodik.

   (3)
           A harmadik mezo"ben adjuk meg altalaban a vonalra
           csatlakozo terminal tipusat. Ez a betarcsazos portok
           eseteben to:bbnyire az unknown vagy a dialup, mivel ezeken
           keresztu:l a felhasznalok gyakorlatilag szinte barmilyen
           tipusu terminallal vagy szoftverrel be tudnak jelentkezni.
           A hardveres terminaloknal a terminal tipusa azonban nem
           valtozik, ezert a termcap(5) adatbazisban keressu:k ki a
           nekik megfelelo"t es adjuk meg ebben a mezo"ben.

           A peldankban a Wyse-50 egy valos terminaltipust hasznal,
           miko:zben a 286-oson futo Procomm egy VT-100-as tipusu
           terminalt emulal.

   (4)
           A negyedik mezo" azt mondja meg, hogy a port
           engedelyezett-e vagy sem. Ha itt a on erteket adjuk meg,
           akkor az init elinditja a masodik mezo"ben szereplo" getty
           programot. Ha viszont itt az off szerepel, akkor a getty
           nem fog elindulni, igy ezen a porton be sem fogunk tudni
           jelentkezni.
   (5)
           Az utolso mezo"ben a port megbizhatosagat kell
           megjelo:lnu:nk. Ha biztonsagosnak (secure) allitjuk be a
           portot, akkor rajta keresztu:l a root (vagy barmelyik
           nullas felhasznaloi azonositoval rendelkezo") felhasznalo
           be tud jelentkezni. Amikor viszont nem biztonsagos
           (insecure), akkor elo"szo:r egy normal felhasznaloval kell
           bejelentkeznu:nk, majd a su(1) programmal vagy egy hozza
           hasonlo megoldassal kell rendszeradminisztratorra valnunk.

           Leginkabb az insecure beallitast javasoljuk, meg het lakat
           alatt o"rzo:tt terminalok eseteben is. Valojaban sokkal
           egyszeru"bb bejelentkezni, majd kiadni egy su parancsot,
           ha netalan rendszeradminisztratori jogosultsagokra lenne
           szu:ksegu:nk.

     --------------------------------------------------------------

    26.3.2.2. A init utasitasa az /etc/ttys ujraolvasasara

   Miutan az /etc/ttys allomanyban elvegeztu:k a megfelelo"
   modositasokat, a konfiguracios allomany ujraolvasasahoz ku:ldju:nk
   egy SIGHUP (bontas) jelzest az init programnak. Mint peldaul:

 # kill -HUP 1

     Megjegyzes: Mivel mindig az init indul el elso"kent a
     rendszerben, ezert a hozzatartozo azonosito az 1 lesz.

   Ha mindent jol allitottunk be, a kabelek is a helyu:ko:n vannak es
   a terminalokat is bekapcsoltuk, akkor minden terminalhoz elindul
   egy getty program, es mindegyiko"ju:ko:n megjelenik a
   bejelentkezo" kepernyo".

     --------------------------------------------------------------

  26.3.3. A terminalokkal kapcsolatos hibajelensegek

   Olykor hiaba igyekszu:nk a leheto" legaprolekosabban u:gyelni
   minden apro reszletre, ko:nnyen elo"fordulhat, hogy valamiert a
   terminal megsem mu"ko:dik rendesen. Ko:vetkezzen most egy lista
   nehany ismert tu:netro"l es azok javasolt gyogymodjairol.

     --------------------------------------------------------------

    26.3.3.1. Nem jelenik meg a bejelentkezo" kepernyo"

   Elleno"rizzu:k, hogy a terminalt rendesen csatlakoztattuk es aram
   ala helyeztu:k. Amikor egy szemelyi szamitogepet hasznalunk
   terminalnak, akkor nezzu:k meg, hogy a terminal emulacios program
   a megfelelo" soros porton fut.

   Vizsgaljuk meg, hogy a kabel mind a ket vege pontosan illeszkedik
   a portokba. Gyo"zo"dju:nk meg rola, hogy valoban a megfelelo"
   tipusu kabelt hasznaljuk.

   Nezzu:k meg, hogy a terminal es a FreeBSD is ugyanazon az
   adatatviteli sebessegen es paritasi beallitassal megy. Ha
   kepernyo"vel rendelkezo" terminalunk van, akkor a kontrasztot es
   fenyero"sseget is elleno"rizzu:k. Ha nyomtatos terminalunk van,
   akkor vizsgaljuk meg a papir es a tinta allapotat.

   Gyo"zo"dju:nk meg rola, hogy a getty valoban fut es rendesen
   kiszolgalja a terminalt. Peldaul a ps paranccsal listazzuk ki az
   o:sszes jelenleg futo programot es keressu:k meg ko:ztu:k a getty
   programot:

 # ps -axww|grep getty

   Ekkor latnunk kell a terminalhoz tartozo bejegyzest. Peldaul, ha a
   getty masodik soros portot jelkepezo" ttyd1 eszko:zo:n fut, es az
   /etc/gettytab allomanybol az std.38400 nevu" bejegyzest hasznalja,
   akkor ez jelenik meg:

 22189  d1  Is+    0:00.03 /usr/libexec/getty std.38400 ttyd1

   Amennyiben semmilyen getty nem fut, akkor elleno"rizzu:k, hogy
   valoban engedelyeztu:k-e a portot az /etc/ttys allomanyban. A ttys
   allomany atirasa utan ne felejtsu:k el kiadni a kill -HUP 1
   parancsot sem.

   Ha a getty fut, de a terminalon tovabbra sem latjuk a
   bejelentkezo" kepernyo"t, vagy megjelenik, de nem tudunk gepelni,
   akkor elo"fordulhat, hogy a terminal vagy kabel nem tamogatja a
   hardveres kezfogast (handshaking). Probaljuk meg az /etc/ttys
   allomanyban levo" std.38400 bejegyzest az 3wire.38400 bejegyzesre
   kicserelni (de utana ne felejtsu:k el kiadni a kill -HUP 1
   parancsot). A 3wire nagyon hasonlit az std bejegyzeshez, de
   elhagyja a hardveres kezfogast. A 3wire alkalmazasakor viszont a
   puffer telito"desenek megelo"zese erdekeben probalkozzunk az
   adatatviteli sebesseg cso:kkentesevel vagy engedelyezzu:k a
   szoftveres forgalomiranyitast.

     --------------------------------------------------------------

    26.3.3.2. Amikor mindenfele szemet jelenik meg a kepernyo"n

   Elleno"rizzu:k, hogy a FreeBSD es a terminal ugyanazt az
   adatatviteli sebesseget es paritasi beallitast hasznalja. Nezzu:k
   meg a futo getty programokat, es hogy a megfelelo" getty tipussal
   mennek-e. Ha nem, modositsuk az /etc/ttys allomanyt es adjuk ki a
   kill -HUP 1 parancsot.

     --------------------------------------------------------------

    26.3.3.3. A karakterek duplan jelennek meg, a jelszo begepelesekor
    lathato

   Allitsuk at a terminalt (vagy a terminal emulacios szofvert) "half
   duplex" vagy "local echo" modrol "full duplex" modra.

     --------------------------------------------------------------

26.4. Betarcsazos szolgaltatasok

   Keszitette: Guy Helmer. Kiegeszitette: Sean Kelly.

   Amikor egy FreeBSD rendszert akarunk betarcsazos szolgaltatasokhoz
   beallitani, akkor az nagyon hasonlit a terminalok
   csatlakoztatasahoz, azzal a elteressel, hogy ilyenkor a terminalok
   helyett modemekkel kell dolgoznunk.

     --------------------------------------------------------------

  26.4.1. Ku:lso" kontra belso" modemek

   A ku:lso" modemek sokkal kenyelmesebbnek tu"nnek betarcsazas
   szempontjabol, mivel az ilyenek gyakran a statikus memoriajukban
   tarolt parameterek reven tulajdonkeppen felig elo"re be vannak
   allitva es sok esetben a fontosabb RS-232 jeleket ku:lo:n
   lampacskakkal mutatjak. A villogo lampak ko:nnyen elkapraztatjak a
   laikusokat, de emellett igen fontosak a modem
   mu"ko:do"kepessegenek megallapitasaban is.

   Ezzel szemben a belso" modemeken nem talalhato statikus memoria,
   ezert a parametereik csak DIP kapcsolokkal modosithatoak. Meg ha
   egy belso" modemem latunk is lampakat, akkor sem ko:nnyu" figyelni
   rajuk, mert a gepu:nk burkolata ugyis eltakarja ezeket.

     --------------------------------------------------------------

    26.4.1.1. Modemek es kabelek

   Ha ku:lso" modemet hasznalunk, akkor mindenkeppen szu:ksegu:nk
   lesz hozza meg egy megfelelo" kabelre is. Egy szabvanyos RS-232-es
   soros kabel erre to:keletesen megfelel egeszen addig, amig a
   normal jeleket igy ko:to:ttek be rajta:

   Tablazat 26-4. A jelek neve

   Ro:vidites Elnevezes                                               
   RD         Received Data (fogadott adat)                           
   TD         Transmitted Data (ku:ldo:tt adat)                       
   DTR        Data Terminal Ready (adatterminal kesz)                 
   DSR        Data Set Ready (adatbeallitas kesz)                     
   DCD        Data Carrier Detect (vonal eszlese -- az RS-232         
              fogadast erzekelo" vonala)                              
   SG         Signal Ground (fo:ld)                                   
   RTS        Request to Send (ku:ldes kerese)                        
   CTS        Clear to Send (ku:ldes engedelyezese)                   

   A FreeBSD-nek 2400 bps felett a forgalom iranyitasahoz az RTS es
   CTS jelekre van szu:ksege. A CD jellel allapitja meg, hogy a hivas
   letrejo:tt vagy a bontottak a vonalat, es a DTR jel hozza
   alapallapotba a modemet a munkamenet befejezese utan. Egyes
   kabelekben nem mindegyik jelet vezettek at, igy ha peldaul
   gondjaink akadnak a bejelentkezo" kepernyo"vel amikor a vonalat
   bontjuk, akkor erdemes atneznu:nk a kabelt.

   A to:bbi UNIX-szeru" operacios rendszerhez hasonloan a FreeBSD is
   hardveres jelek segitsegevel igyekszik kideriteni, hogy a hivas
   megvalosult vagy bontottak a vonalat, valamint a hivas befejezese
   utan igy bontja a vonalat es allitja vissza a modemet. A FreeBSD
   igyekszik elkeru:lni a parancsok ku:ldeset a modem fele, vagy a
   modem allapotanak folyamatos elleno"rzeset. Ha mar van nemi
   tapasztalatunk a PC-alapu BBS-ek modemes elereset illeto"en, akkor
   valoszinu"leg ertju:k ezek okait.

     --------------------------------------------------------------

  26.4.2. A soros vonali felu:lettel kapcsolatos megfontolasok

   A FreeBSD ismeri az NS8250-, NS16450-, NS16550- es NS16550A alapu
   EIA RS-232C (CCITT V.24) szabvanyu kommunikacios felu:leteket. A
   8250-es es a 16450-es eszko:zo:k egykarakteres pufferrel
   rendelkeznek. A 16550-es eszko:zo:k 16 karakteres puffert
   tartalmaznak, amellyel jobb teljesitmeny erheto" el. (A sima
   16550-esben levo" hibak miatt azonban ez a 16 karakteres puffer
   nem hasznalhato ki rendesen, ezert leheto"leg a 16550A verziot
   hasznaljuk). Mivel az operacios rendszer reszero"l az
   egykarakteres eszko:zo:k joval to:bb to:ro"dest igenyelnek, mint a
   16 karakteres eszko:zo:k, ezert inkabb a 16550A alapu soros
   felu:leti kartyakat ajanljuk. Amikor a rendszer egyszerre to:bb
   soros portot is kezel, vagy ero"s terheles alatt all, akkor a
   16550A alapu kartyakrol altalaban az is elmondhato, hogy kisebb
   hibaval dolgoznak.

     --------------------------------------------------------------

  26.4.3. Egy gyors attekintes

   Ahogy arrol mar a terminalok eseteben szo esett, az init az
   o:sszes betarcsazos kapcsolathoz tartozo soros porthoz elindit egy
   getty programot. Peldaul, ha a modemet a /dev/ttyd0 eszko:zre
   kapcsoltuk, akkor a ps ax parancs kimeneteben ezt lathatjuk:

  4850 ??  I      0:00.09 /usr/libexec/getty V19200 ttyd0

   Amikor egy felhasznalo felhivja a modemet es az kapcsolodik, akkor
   a modem egy CD (Carrier Detect) jelet ku:ld. A rendszermag ekkor
   tudomasul veszi a vonal eszleleset es a getty segitsegevel
   meginditja a kommunikaciot. A getty egy login: szo:veget ku:ld at
   a vonalhoz megadott sebesseggel. A getty elkezdi figyelni, hogy a
   ertelmes karakterek erkeznek-e vissza, es egy atlagos
   konfiguracioban, ha ezt szemetnek talalja (mert peldaul a modem
   nem a getty szamara beallitott sebesseggel csatlakozott), akkor
   megprobalja egeszen addig hangolni a vonal sebesseget, amig
   feldolgozasra alkalmas karaktereket nem kap.

   Miutan a felhasznalo megadta a felhasznaloi nevet, a getty
   elinditja a /usr/bin/login programot, amely befejezi a beleptetest
   a felhasznalo jelszavanak bekeresevel es annak elfogadasa eseten a
   hozzatartozo parancsertelmezo" elinditasaval.

     --------------------------------------------------------------

  26.4.4. A konfiguracios allomanyok

   FreeBSD rendszeru:nkben a betarcsazos kapcsolatok engedelyezesehez
   az /etc ko:nyvtarban harom allomany modositasara lesz
   szu:ksegu:nk. Ko:zu:lu:k az elso", az /etc/gettytab a
   /usr/libexec/getty demon beallitasait tartalmazza. A masodik, az
   /etc/ttys az /sbin/init szamara mondja meg, hogy melyik tty
   eszko:zo:kho:z tartozik getty. Vegezetu:l a portok
   inicializalasahoz ko:to"do" beallitasokat az /etc/rc.d/serial
   szkriptben kell megadnunk.

   Ket "iskola" jo:tt letre aszerint, hogy UNIX alatt hogyan
   hasznaljak a betarcsazos modemeket. Az egyik csoport ugy szereti
   beallitani a modemeit es rendszerit, hogy a tavoli felhasznalo
   altal valasztott sebessegto"l fu:ggetlenu:l a szamitogep es a
   modem ko:zti RS-232 felu:let egy fix sebessegen fut. Ennek a
   beallitasnak megvan az az elo"nye, hogy a tavoli felhasznalo
   ilyenkor szinte azonnal megkapja a bejelentkezo" kepernyo"t. A
   hatranya viszont, hogy ebben az esetben a rendszer nem ismeri a
   felhasznalo valodi adatatviteli sebesseget, ezert az olyan teljes
   kepernyo"s alkalmazasok, mint peldaul az Emacs, nem lesznek
   kepesek a lassabb kapcsolatokhoz szabni a megjelenitesu:ket.

   A masik csoport a modemek RS-232-es felu:letet a tavoli
   felhasznalo kapcsolodasi sebessege szerint allitja be. Igy peldaul
   egy V.32bis (14,4 Kbps) kapcsolat eseten a modemhez tartozo RS-232
   felu:let 19,2 Kbps-on fog menni, miko:zben a 2400 bps sebessegu"
   kapcsolatokhoz egy vele azonos sebessegu" RS-232-es felu:let fog
   tartozni. Mivel a getty nem kepes kommunikalni a modemek altal
   lejelentett csatlakozasi sebessegen, ezert ugy probalja azt
   megallapitani, hogy elku:ldi a login: szo:veget az alap
   sebesseggel, majd figyeli a valaszul erkezo" karaktereket. Ha a
   felhasznalo ilyenkor szemetet lat, akkor feltetelezik, hogy addig
   fogja nyomkodni az Enter billentyu"t, amig valami ertelmes
   szo:veget meg nem lat. Amikor az adatatviteli sebesseg elter,
   akkor a getty ebbo"l csupan csak annyit vesz eszre, hogy a
   felhasznalo "szemetet" ku:ld, ezert egy ujabb sebesseggel
   megprobalja megint elku:ldeni a login: szo:veget. Hivatalosan ez a
   folyamat ismetlo"dik orrverzesig, de altalaban csak egy-ket
   billentyu"t kell leu:tni a megfelelo" beallitasokhoz. Nyilvanvalo,
   hogy ilyenkor a bejelentkezes messze nem olyan zavartalan, mint a
   "ro:gzitett sebessegu"" esetben, de igy a lassabb kapcsolattal
   rendelkezo" felhasznalok is jobb hasznalatosagot kapnak a teljes
   kepernyo"s programokkal.

   Ebben a szakaszban egy valamennyire kiegyensulyozott beallitast
   igyekszu:nk bemutatni, de reszben elfogunk hajlani abban az
   iranyba, amikor a modem a kapcsolat sebesseget ko:veti.

     --------------------------------------------------------------

    26.4.4.1. /etc/gettytab

   A /etc/gettytab egy termcap(5)-szeru" allomany, amely a getty(8)
   beallitasait tartalmazza. A gettytab(5) man oldalon olvashatunk az
   allomany pontos felepitesero"l es benne felsorolt beallitasokrol.

     --------------------------------------------------------------

      26.4.4.1.1. A ro:gzitett sebessegu" beallitas

   Ha a modem kommunikacios sebesseget ro:gziteni akarjuk, akkor
   ehhez to:bbnyire semmit sem kell megvaltoztatnunk az /etc/gettytab
   allomanyban.

     --------------------------------------------------------------

      26.4.4.1.2. Az alkalmazkodo sebessegu" beallitas

   Az /etc/gettytab allomanyban letre kell hoznunk egy olyan
   bejegyzest, amelyen keresztu:l a getty tudni fogja, hogy milyen
   sebessegeken akarjuk hasznalni a modemet. Ha egy 2400 bps
   sebessegu" modemu:nk van, akkor hozza a mar meglevo" D2400-as
   bejegyzest kell hasznalnunk.

 #
 # A gyors betarcsazos terminalokhoz ime egy 2400/1200/300-as valtas
 # (barhonnan kezdo"dhet):
 #
 D2400|d2400|Fast-Dial-2400:\
         :nx=D1200:tc=2400-baud:
 3|D1200|Fast-Dial-1200:\
         :nx=D300:tc=1200-baud:
 5|D300|Fast-Dial-300:\
         :nx=D2400:tc=300-baud:

   Ha ennel gyorsabb modemu:nk van, akkor mar mindenkeppen fel kell
   vennu:nk hozza egy uj bejegyzest az /etc/gettytab allomanyba.
   Ezzel a beallitassal egy 14,4 Kbps sebessegu" modemet tudunk
   legfeljebb 19,2 Kbps-en hasznalni:

 #
 # Kiegeszitesek egy V.32bis modemhez:
 #
 um|V300|High Speed Modem at 300,8-bit:\
         :nx=V19200:tc=std.300:
 un|V1200|High Speed Modem at 1200,8-bit:\
         :nx=V300:tc=std.1200:
 uo|V2400|High Speed Modem at 2400,8-bit:\
         :nx=V1200:tc=std.2400:
 up|V9600|High Speed Modem at 9600,8-bit:\
         :nx=V2400:tc=std.9600:
 uq|V19200|High Speed Modem at 19200,8-bit:\
         :nx=V9600:tc=std.19200:

   Ennek eredmenye egy 8 bites, paritasmentes kapcsolat lesz.

   A fenti peldaban a kommunikaciot 19,2 Kbps-en (V.32bis
   kapcsolaton) kezdju:k, majd utana haladunk vegig a 9600 bps
   (V.32), 2400 , 1200 bps es 300 bps sebessegu" kapcsolatokon, majd
   vissza ismet a 19,2 Kbps-re. Az adatatviteli sebesseg ilyen tipusu
   valtogatasat az nx= ("next table", azaz "ko:vetkezo" tablazat")
   tulajdonsag segitsegevel valositjak meg. Minden sorban lathato meg
   egy tc= ("table continuation", vagyis "a tablazat folytatasa")
   bejegyzes is, amivel az adott adatatviteli sebesseg "szabvanyos"
   beallitasait adjuk meg.

   Ha egy 28,8 Kbps sebessegu" modemu:nk van es/vagy egy 14,4 Kbps
   sebessegu" modemen akarunk to:mo:ritest hasznalni, akkor a
   19,2 Kbps-nel nagyobb kommunikacios sebesseget kell hasznalnunk.
   Ime egy olyan gettytab. ami 57,6 Kbps-ro"l indit:

 #
 # A V.32bis vagy V.34 modemekhez kiegeszites,
 # 57,6 Kbps-ro"l indulunk:
 #
 vm|VH300|Very High Speed Modem at 300,8-bit:\
         :nx=VH57600:tc=std.300:
 vn|VH1200|Very High Speed Modem at 1200,8-bit:\
         :nx=VH300:tc=std.1200:
 vo|VH2400|Very High Speed Modem at 2400,8-bit:\
         :nx=VH1200:tc=std.2400:
 vp|VH9600|Very High Speed Modem at 9600,8-bit:\
         :nx=VH2400:tc=std.9600:
 vq|VH57600|Very High Speed Modem at 57600,8-bit:\
         :nx=VH9600:tc=std.57600:

   Ha lassu a processzorunk, vagy a rendszeru:nk tulsagosan terhelt
   es nincs 16550A tipusu soros portunk, akkor 57,6 Kbps-en "sio"
   "silo" hibak keletkezhetnek.

     --------------------------------------------------------------

    26.4.4.2. /etc/ttys

   Az /etc/ttys allomany beallitasarol mar a 26-1 Pelda adott kepet.
   Ez a modemek eseteben sem ter el ku:lo:no:sebben, habar a getty
   programnak mas terminaltipust es -beallitasokat kell atadnunk.
   Akar ro:gzitett, akar alkalmazkodo sebesseget akarunk beallitani,
   ennek altalanos alakja az alabbi:

 ttyd0   "/usr/libexec/getty xxx"   dialup on

   A sorban lathato elso" elem a megfelelo" specialis eszko:z neve --
   jelen esetben ez a ttyd0, amely a /dev/ttyd0 eszko:zre vonatkozik
   es ezt fogja a getty figyelni. A masodik elem, vagyis a
   "/usr/libexec/getty xxx" (ahol a xxx helyere kell beirni a
   megfelelo" gettytab allomanybeli bejegyzest nevet) lesz az a
   parancs, amelyet az init meghiv. A harmadik elem, a dialup a
   terminalok alapertelmezett tipusa. A negyedik parameter, az on
   jelzi az init programnak, hogy aktivalja a vonalat. A sorban
   megjelenhetne tovabba meg egy o:to:dik parameter is, a secure, de
   ezt csak olyan terminalok eseteben erdemes megadni, amelyek
   fizikailag megbizhatoak (peldaul a rendszerkonzol).

   Az alapertelmezett terminaltipus (vagyis a fenti peldaban a
   dialup) a helyi beallitasoktol fu:gg. A betarcsazos vonalak
   eseteben hagyomanyosan a dialup a terminal alapertelmezett tipusa,
   amit aztan a felhasznalok a bejelentkezeskor lefuto szkriptjeiken
   keresztu:l a automatikusan at tudnak allitani a nekik megfelelo"
   terminalra. A szerzo" sajat rendszereben azonban inkabb a vt102
   terminaltipust volt erdemes megadni alapertelmezettkent, mivel ott
   a felhasznalok csak ilyen tipusu terminalokat hasznalnak.

   Miutan az /etc/ttys allomanyban elvegeztu:k a szu:kseges
   modositasokat, egy HUP jelzessel figyelmeztessu:k az init
   programot az ujboli beolvasasara. Ehhez a ko:vetkezo" parancs
   ajanlott:

 # kill -HUP 1

   Ha meg csak allitjuk be elo"szo:r a rendszeru:nket, akkor az init
   figyelmeztetese elo"tt legyu:nk tu:relmesek, es varjuk meg, amig a
   modemek befejezik az inicializalast es kapcsolodnak a vonalakra.

     --------------------------------------------------------------

      26.4.4.2.1. A ro:gzitett sebessegu" beallitas

   A ro:gzitett sebesseg beallitasanal a ttys allomanyban a getty
   parameterekent egy szinten ro:gzitett sebessegu" bejegyzest kell
   megadnunk. Peldaul az olyan modemeknel, ahol a sebesseget
   19,2 Kbps-re ro:gzitju:k, a ttys igy fog kinezni:

 ttyd0   "/usr/libexec/getty std.19200"   dialup on

   Amennyiben a modemu:nk nem ezen a sebessegen u:zemelne, akkor az
   std.sebesseg parametert hasznaljuk az std.19200 helyett. Elo"tte
   azonban ne felejtsu:k el elleno"rizni, hogy a megadott tipus
   szerepel-e az /etc/gettytab allomanyban.

     --------------------------------------------------------------

      26.4.4.2.2. Az alkalmazkodo sebessegu" beallitas

   Az alkalmazkodo sebessegu" beallitasnal a ttys allomanyban az
   /etc/gettytab allomanybol a megfelelo" "auto-baud" (sic) kell
   megadnunk. Peldaul, ha modemu:nk kezdo"sebessege 19,2 Kbps (es a
   gettytab ehhez tartalmaz egy V19200 nevu" bejegyzest), akkor a
   ttys igy fog kinezni:

 ttyd0   "/usr/libexec/getty V19200"   dialup on

     --------------------------------------------------------------

    26.4.4.3. /etc/rc.d/serial

   A gyorsabb, mint peldaul a V.32, V.32bis es V.34 modemeknel meg
   kell adnunk a hardveres forgalomiranyitas (RTS/CTS) hasznalatat
   is. Az /etc/rc.d/serial allomanyban tudjuk megadni a FreeBSD
   rendszermagban a vonal hasznalatahoz szu:kseges vezerlesi
   beallitasokra vonatkozo stty parancsokat.

   Peldaul allitsuk be az 1-es sorszamu (vagyis a COM2) soros porton
   a crtscts termios beallitast a behivashoz es a hivashoz hasznalt
   eszko:zo:k inicializalasakor. Ehhez a ko:vetkezo" sorokat kell
   felvennu:nk az /etc/rc.d/serial allomanyba:

 # A soros portok kezdeti beallitasai:
 stty -f /dev/ttyd1.init crtscts
 stty -f /dev/cuad1.init crtscts

     --------------------------------------------------------------

  26.4.5. A modemek beallitasai

   Ha olyan modemeink vannak, amelyek parametereit egy statikus
   memoriaban taroltak le, akkor ezek beallitasahoz egy
   terminalprogramot kell hasznalnunk (amilyen peldaul MS-DOS alatt a
   Telix vagy FreeBSD alatt a tip). A modemet a getty programnak
   megadott kezdeti sebessegen csatlakoztassuk es az alabbi elvarasok
   alapjan allitsuk be a parametereit:

     * Kapcsolodaskor CD jelzese.

     * Mu"ko:deskor DTR jelzese. A DTR ku:ldesekor bontsa a vonalat
       es hozza alapallapotba a modemet.

     * CTS vezerlesu" kimeno" adatforgalom.

     * A XON/XOFF forgalomvezerles tiltasa.

     * RTS vezerlesu" bejo:vo" adatforgalom.

     * Csendes mod (ne adjon ertesitest az eredmenyekro"l).

     * A parancsokat ne irja vissza.

   A modemhez tartozo dokumentacioban kell utanajarnunk, hogy milyen
   parancsok es/vagy DIP kapcsolok atallitasaval lehet mindezeket
   elerni.

   Peldaul, ha a fenti parametereket egy U.S. Robotics(R)
   Sportster(R) 14400-as ku:lso" modem eseteben a ko:vetkezo" neki
   kiku:ldo:tt paranccsal lehet beallitani:

 ATZ
 AT&C1&D2&H1&I0&R2&W

   Ilyenkor meg akar mas egyeb parametereket is beallithatunk,
   peldaul a V.42bis es/vagy az MNP5 to:mo:ritest.

   Az U.S. Robotics Sportster 14400 ku:lso" modemen ezenkivu:l meg
   talalunk nehany DIP kapcsolot is. Az ilyen modemek eseteben
   peldaul ezeket a beallitasokat tudjuk hasznalni:

     * 1. kapcsolo: FEL -- normalis DTR

     * 2. kapcsolo: N/A (verbalis/numerikus eredmenyjelzo" kodok)

     * 3. kapcsolo: FEL -- az eredmenyjelzo" kodok ku:ldesenek
       tiltasa

     * 4. kapcsolo: LE -- nem ku:ldi vissza a parancsokat

     * 5. kapcsolo: FEL -- automatikus valasz

     * 6. kapcsolo: FEL -- normalis Carrier Detect

     * 7. kapcsolo: FEL -- a memoriaban tarolt alapertelmezesek
       beto:ltese

     * 8. kapcsolo: N/A (intelligens/buta mod)

   A modemeknel az eredmenyjelzo" kodok kikapcsolasa/letiltasa ezert
   fontos, mert igy el tudunk keru:lni az olyan problemakat, hogy a
   getty tevesen egy login: promptot ku:ld a parancs modban levo"
   modemnek, amikor az visszaku:ldi a parancsot es az eredmeny
   kodjat. Ennek eredmenye egy hosszura nyulo, zavaros tarsalgas lesz
   a getty es a modem ko:zo:tt.

     --------------------------------------------------------------

    26.4.5.1. A ro:gzitett sebessegu" beallitas

   A ro:gzitett sebessegu" konfiguracio hasznalata eseten ugy kell
   beallitanunk a modemet, hogy a konkret adatatviteli sebssegto"l
   fu:ggetlenu:l is egy allando sebessegu" kapcsolat alljon fenn a
   szamitogep es a modem ko:zo:tt. A U.S. Robotics Sportster 14400-as
   ku:lso" modem eseteben a most ko:vetkezo" parancsokkal tudjuk
   ro:gziteni a kapcsolat sebesseget:

 ATZ
 AT&B1&W

     --------------------------------------------------------------

    26.4.5.2. Az alkalmazkodo sebessegu" beallitas

   Amikor valtozo sebessegu" konfiguracioval dolgozunk, akkor a
   modemet ugy kell beallitani, hogy a bejo:vo" hivasnak megfelelo"
   adatatviteli sebessegre valtson a soros portjan. A U.S. Robotics
   Sportster 14400-as ku:lso" modem eseteben az alabbi parancsokkal
   ro:gzitju:k a modemnek ku:ldo:tt hibamentesitett parancsok
   sebesseget, miko:zben engedelyezzu:k, hogy a soros port sebessege
   valtozhasson a nem hibamentesitett kapcsolatoknal:

 ATZ
 AT&B2&W

     --------------------------------------------------------------

    26.4.5.3. A modem beallitasainak elleno"rzese

   A legto:bb nagysebessegu" modem biztosit valamilyen leheto"seget
   arra, hogy emberi formaban is le tudjuk kerdezni a belso"
   mu"ko:desenek parametereit. A U.S. Robotics Sportster 14400-as
   ku:lso" modem eseteben az ATI5 parancs a statikus memoriaban
   tarolt beallitasokat mutatja meg. A modem valos mu"ko:desi
   parametereit (amit ugyebar befolyasolnak a DIP kapcsolok allasai
   is) viszont az ATZ majd ATI4 parancsok ku:ldesevel tudjuk lekerni.

   Ha azonban masmilyen markaju modemu:nk lenne, akkor a modem
   leirasaban probaljunk tajekozodni arrol, mikent tudjuk a modem
   beallitasait elleno"rizni.

     --------------------------------------------------------------

  26.4.6. Hibaelharitas

   Ebben a szakaszban bemutatunk nehany lepest, amelyeken keresztu:l
   elleno"rizhetju:k a rendszeru:nkho:z csatlakoztatott modemet.

     --------------------------------------------------------------

    26.4.6.1. A FreeBSD rendszer elleno"rzese

   Csatlakoztassuk a modemet a FreeBSD rendszerre, inditsuk be a
   gepet, majd ezutan figyelju:k a modemu:nk allapotat jelzo"
   lampakat, hogy ko:zu:lu:k a DTR vilagit-e, amikor a login: felirat
   megjelenik a rendszerkonzolon. Amennyiben erre a valasz igen,
   akkor az arra utal, hogy a FreeBSD a hozzatartozo kommunikacios
   porton elinditotta a megfelelo" getty programot es a modem varja a
   hivasokat.

   Amikor viszont a DTR lampa nem vilagit, a konzolon keresztu:l
   jelentkezzu:nk be a FreeBSD rendszerbe es adjuk ki egy ps ax
   parancsot, amivel igy elleno"rizni tudjuk, hogy a porthoz tartozo
   getty elindult. A futo programok ko:zo:tt tehat valami ilyesmit
   kell majd latnunk:

   114 ??  I      0:00.10 /usr/libexec/getty V19200 ttyd0
   115 ??  I      0:00.10 /usr/libexec/getty V19200 ttyd1

   Ha viszont peldaul ezt latjuk:

   114 d0  I      0:00.10 /usr/libexec/getty V19200 ttyd0

   es modem meg nem fogadott hivast, akkor ez azt jelenit, hogy a
   getty megnyitotta a kommunikacios csatornat. Ez utalhat egyarant
   egy hibas kabelre vagy a modem helytelen beallitasara, mivel a
   getty egeszen addig nem lesz kepes megnyitni az adott portot, amig
   a modem vissza nem ku:ld neki egy CD (Carrier Detect) jelet.

   Ha a listaban az adott ttydN eszko:zho:z semmilyen getty programot
   nem talalunk, akkor ujra nezzu:k at az /etc/ttys allomanyban
   szereplo" bejegyzeseket, mert elo"fordulhat, hogy azokban
   vetettu:nk valamilyen hibat. Emellett meg a /var/log/messages
   naploban is erdemes utananezni, hatha az init vagy a getty
   ku:ldo:tt valamilyen hibarol ertesitest. Ha meg ezek utan sem
   talalunk semmit, akkor megint kezdju:k el keresni hibakat, hianyzo
   bejegyzeseket vagy eszko:zo:ket az /etc/ttys, /etc/gettytab es a
   megfelelo" /dev/ttydN allomanyokban.

     --------------------------------------------------------------

    26.4.6.2. A betarcsazas kiprobalasa

   Probaljunk meg bejutni a rendszeru:nkbe. Ehhez a tavoli rendszeren
   ne felejtsu:k el beallitani a 8 bites adatatvitelt es az 1
   stopbitet, illetve a paritast kikapcsolni. Ha erre ko:zvetlenu:l
   nem kapunk egy bejelentkezesi kepernyo"t vagy csak szemet jelenik
   meg, akkor kb. masodpercenkent egyszer nyomjuk le az Enter
   billentyu"t. Ha meg ezutan sem latjuk a bejelentkezesi kepernyo"t
   felbukkani, akkor probaljunk kiku:ldeni egy BREAK parancsot. Ha a
   hivashoz nagysebessegu" modemet hasznalunk, akkor probaljuk meg a
   modem sebesseget ro:gziteni es ugy tarcsazni (ezt peldaul a U.S.
   Robotics Sportster modemnel az AT&B1 paranccsal tudjuk elerni):

   Ha viszont meg ezek utan sem kapjuk meg a bejelentkezo"
   kepernyo"t, akkor a /etc/gettytab allomanyban megint nezzu:k at az
   o:sszes beallitast:

     * Az /etc/ttys allomanyban megadott alaptulajdonsag neve egyezik
       az /etc/gettytab allomanyban talalhatoval.

     * Mindegyik nx= bejegyzes utan egy masik gettytab tulajdonsag
       neve jo:n.

     * Mindegyik tc= bejegyzes utan egy masik gettytab tulajdonsag
       neve ko:vetkezik.

   Ha hivunk, de a FreeBSD rendszeru:nkre kapcsolt modem tovabbra sem
   veszi fel, akkor a modem beallitasai ko:zo:tt elleno"rizzu:k, hogy
   a DTR jel ku:ldesekor a modem fogadja-e a hivast. Ha ugy tu"nik,
   hogy a modem minden ezzel kapcsolatos beallitasa stimmel, akkor
   nezzu:k meg, hogy a modem lampai ko:zu:l a DTR vilagit-e (mar ha
   van ilyen).

   Ha mindent to:bbszo:r is vegigneztu:nk es meg mindig nem lelju:k a
   megoldast, akkor tartsunk egy kis szu:netet es terju:nk vissza a
   problemahoz keso"bb. Ha meg ezutan sem tudjuk mu"ko:desre birni,
   akkor ku:ldju:nk egy levelet a FreeBSD general questions
   levelezesi lista cimere, amelyben leirjuk a modemu:nket es a vele
   kapcsolatos problemat, es a lista tagjai majd megprobalnak neku:nk
   segiteni.

     --------------------------------------------------------------

26.5. A betarcsazos szolgaltatasok hasznalata

   A ko:vetkezo"kben arra vonatkozoan igyekszu:nk tanacsokat adni,
   amikor mi magunk akarunk modemmel csatlakozni valamilyen
   szamitogephez. Ezek tehat olyan esetekben hasznosak, amikor egy
   tavoli geppel akarunk terminalkapcsolatot letesiteni.

   A BBS-ek hasznalatara is ervenyes.

   Ez ilyen tipusu kapcsolatok kifejezetten hasznosak tudnak lenni
   olyan esetekben, amikor az interneten el akarunk erni egy
   allomanyt, de gondjaink akadtak a PPP hasznalataval. Ha peldaul
   egy allomanyt akarunk leto:lteni, de a PPP valamiert nem
   mu"ko:dik, akkor ezt a terminal alapu kapcsolaton keresztu:l is
   meg tudjuk tenni. Ilyenkor egy zmodem segitsegevel tudjuk
   atto:lteni a szamitogepu:nkre.

     --------------------------------------------------------------

  26.5.1. A gyari Hayes-modem erre nem alkalmas, mihez tudunk vele
  kezdeni?

   A tip man oldala valojaban mar nem is teljesen aktualis, ugyanis
   tartalmaz egy beepitett Hayes-tarcsazot. Ugy tudjuk engedelyezni,
   ha az /etc/remote allomanyban megadjuk az at=hayes beallitast.

   A Hayes-eszko:zo:k meghajtoja nem eleg u:gyes ahhoz, hogy
   felismerje az ujabb modemek altal felkinalt fejlettebb
   leheto"segeket -- peldaul a BUSY, NO DIALTONE vagy a CONNECT
   115200 u:zenetek csak megzavarjak. Ezert a tip hasznalata soran
   kapcsoljuk ki ezeket az u:zeneteket (az ATXO&W paranccsal).

   Emellett meg erdemes tudni, hogy a tip a hivaskor 60 masodpercig
   var. A modemu:nko:n ennel kisebb ido"t kell beallitanunk,
   masku:lo:nben a tip azt hiszi, hogy valamilyen kommunikacios
   problema meru:lt fel. Ehhez probalkozzunk az ATS7=45&W paranccsal.

     --------------------------------------------------------------

  26.5.2. Hogyan adjuk meg ezeket az AT parancsokat?

   Az /etc/remote allomanyban hozzunk letre egy "direct" bejegyzest.
   Peldaul, ha a modemu:nk az elso" soros porton, vagyis a /dev/cuad0
   eszko:zo:n tanyazik, akkor a ko:vetkezo" sort kell beleirnunk:

 cuad0:dv=/dev/cuad0:br#19200:pa=none

   A br tulajdonsagnal a modem altal ismert legnagyobb adatatviteli
   sebesseget adjuk meg. Ezutan gepelju:k be a tip cuad0 parancsot es
   mar kapcsolodunk is a modemhez.

   Vagy root felhasznalokent a cu parancsot is hasznalhatjuk:

 # cu -lvonal -ssebesseg

   Itt a vonal a soros port (peldaul /dev/cuad0) es a sebesseg annak
   sebessege (peldaul 57600) lesz. Miutan befejeztu:k az AT parancsok
   kiadasat, az ~. begepelesevel tudunk kilepni.

     --------------------------------------------------------------

  26.5.3. A pn tulajdonsagnal a @ jel nem hasznalhato!

   A pn ("phone number") tulajdonsag ertekeben szereplo" @ jel
   segitsegevel az /etc/phones allomanyban tudunk hivatkozni egy
   telefonszamra. A @ a tulajdonsagokat tarolo allomanyok azonban,
   igy peldaul az /etc/remote allomany eseten is megku:lo:nbo:ztetett
   jelentessel birnak. Ezert itt csak egy visszaper jellel tudjuk
   beirni:

 pn=\@

     --------------------------------------------------------------

  26.5.4. Hogyan hivjunk fel egy szamot parancssorbol?

   Tegyu:nk egy "altalanos" bejegyzest az /etc/remote allomanyunkba.
   Peldaul egy ilyet:

 tip115200|Dial any phone number at 115200 bps:\
         :dv=/dev/cuad0:br#115200:at=hayes:pa=none:du:
 tip57600|Dial any phone number at 57600 bps:\
         :dv=/dev/cuad0:br#57600:at=hayes:pa=none:du:

   Ezutan mar ilyet is tudni fogunk:

 # tip -115200 5551234

   Ha viszont a tip helyett inkabb a cu programot hasznalnank
   szivesen, akkor ehhez keszitsu:nk egy altalanos bejegyzest:

 cu115200|Use cu to dial any number at 115200bps:\
         :dv=/dev/cuad1:br#57600:at=hayes:pa=none:du:

   Majd gepelju:k be ezt:

 # cu 5551234 -s 115200

     --------------------------------------------------------------

  26.5.5. Ehhez minden adando alkalommal meg kell adnom a sebesseget is?

   Hozzunk letre egy tip1200 vagy cu1200 nevu" bejegyzest, de a br
   tulajdonsagnal adjuk meg a hasznalni kivant sebesseget. Mivel a
   tip szerint az 1200 bps egy megfelelo" alapertelmezes, ezert
   alapbol a tip1200 bejegyzest fogja keresni. Ez termeszetesen nem
   jelenti azt, hogy ilyen sebsseggel is akarunk dolgozni.

     --------------------------------------------------------------

  26.5.6. A terminalszerveren keresztu:l to:bb mas gepet is elerek

   Ahelyett, hogy minden alkalommal megvarnank a kapcsolodas
   befejezest es begepelnenk a CONNECT gep parancsot, hasznaljuk a cm
   tulajdonsagat. Peldaul nezzu:k meg ilyen bejegyzest az /etc/remote
   allomanyban:

 pain|pain.deep13.com|Forrester's machine:\
         :cm=CONNECT pain\n:tc=deep13:
 muffin|muffin.deep13.com|Frank's machine:\
         :cm=CONNECT muffin\n:tc=deep13:
 deep13:Gizmonics Institute terminal server:\
         :dv=/dev/cuad2:br#38400:at=hayes:du:pa=none:pn=5551234:

   Ennek hatasara eleg csak annyit megadnunk, hogy tip pain vagy tip
   muffin, es mar kapcsolodunk is a pain vagy muffin gepekhez. A tip
   deep13 paranccsal pedig egyenesen a terminalszerverhez jutunk el.

     --------------------------------------------------------------

  26.5.7. To:bb vonalon is lehet egy gephez csatlakozni?

   Ez gyakran okoz gondot olyan esetekben, amikor egy egyetemnek
   to:bb betarcsazo vonala van, es azokon keresztu:l to:bbezer
   hallgato probal meg dolgozni.

   Vegyu:k fel az egyetemet az /etc/remote allomanyba es hasznaljuk a
   pn tulajdonsag megadasanal a @ jelet:

 nagy-egyetem:\
         :pn=\@:tc=dialout
 dialout:\
         :dv=/dev/cuad3:br#9600:at=courier:du:pa=none:

   Ezutan adjuk hozza az /etc/phones allomanyhoz az egyetem
   telefonszamait:

 nagy-egyetem 5551111
 nagy-egyetem 5551112
 nagy-egyetem 5551113
 nagy-egyetem 5551114

   A tip mindegyik telefonszamot az adott sorrendben probalja
   tarcsazni es vegen feladja a probalkozast. Ha folyamatosan akarjuk
   ezeket a szamokat hivni, akkor tip parancsot tegyu:k egy ciklusba.

     --------------------------------------------------------------

  26.5.8. Miert kell ketszer lenyomni a Ctrl+P gombokat, hogy egyszer
  elku:ldje a Ctrl+P kombinaciot?

   A Ctrl+P billentyu"kombinacio alapertelmezes szerint a
   "kikenyszeritest" jelenti, amivel a tip programnak tudunk szolni,
   hogy a ko:vetkezo" adat szo szerint ertendo". A ~s szekvenciaval
   barmelyik masik karakternek at tudjuk adni ezt a szerepet, ami egy
   valtozo beallitasat jelenti ("set a variable").

   Gepelju:k be, hogy ~sforce=egyetlen-karakter es zarjuk le egy
   ujsorral. Az egyetlen-karakter helyere tetszo"leges, egykarakteres
   szimbolumot megadhatunk. Ha itt nem adunk meg semmit, akkor a
   kikenyszerito" karakter a nul lesz, amit a Ctrl+2 vagy a
   Ctrl+Szoko:z lenyomasaval tudunk elo"hozni. Az egyetlen-karakter
   szerepere peldaul to:keletes a Shift+Ctrl+6, amit csak nagyon
   keves terminalszerver alkalmaz.

   A kikenyszeritest vegzo" karaktert az $HOME/.tiprc allomanyban
   tetszo"leges karakterre at tudjuk allitani:

 force=egyetlen-karakter

     --------------------------------------------------------------

  26.5.9. Miert lett hirtelen minden begepelt betu" nagybetu"s??

   Valoszinu"leg sikeru:lt lenyomnunk a Ctrl+A gombkombinaciot, ami a
   tip "betu"mod valtas" funkciojanak felel meg. Ezt olyanok szamara
   dolgoztak ki, akiknel nem mu"ko:dik a Caps Lock billentyu". Az
   elo"bb bemutatott ~s hasznalataval allitsuk at a raisechar
   valtozot valami masra. Tulajdonkeppen akar ugyanarra is
   allithatjuk, mint a kikenyszerito" karaktert, ha nem all
   szandekunkban hasznalni.

   Ebben a peldaban egy olyan .tiprc allomany szerepel, amely
   to:keletesen megfelel azon Emacs felhasznalok szamara, akik sokat
   hasznaljak a Ctrl+2 es Ctrl+A kombinaciokat:

 force=^^
 raisechar=^^

   A ^^ a Shift+Ctrl+6 billentyu"kombinaciot jelenti.

     --------------------------------------------------------------

  26.5.10. Hogyan mozgassunk allomanyokat a tip hasznalataval?

   Amikor mas UNIX rendszerekkel vesszu:k fel a kapcsolatot, akkor
   allomanyokat a ~p (mint put, vagyis adni) es ~t (mint take, vagyis
   venni) hasznalataval tudunk mozgatni. Ezek a parancsok a tavoli
   rendszeren a cat es az echo felhasznalasaval fogadnak es ku:ldenek
   allomanyokat. Alakjuk a ko:vetkezo":

   ~p helyi-allomany [tavoli-allomany]

   ~t tavoli-allomany [helyi-allomany]

   Ilyenkor nincs hibaelleno"rzes, ezert inkabb egy masik protokollt,
   peldaul zmodemet erdemes hasznalnunk.

     --------------------------------------------------------------

  26.5.11. Hogyan lehet zmodemet hasznalni a tip programban?

   Allomanyokat ugy tudunk fogadni, ha elo"tte a kapcsolat tavolabbi
   vegen elinditjuk a ku:ldest vegzo" programot. Ezutan a ~C rz
   parancs kiadasaval kezdhetju:k meg helyben a fogadasat.

   Allomanyokat ugy tudunk ku:ldeni, ha elo"tte a kapcsolat masik
   vegen elinditjuk a fogado programot. Ezutan a ~C sz allomanyok
   parancs kiadasaval tudjuk megkezdeni a ku:ldest.

     --------------------------------------------------------------

26.6. A soros vonali konzol beallitasa

   Keszitette: Kazutaka YOKOTA. Az alapjan szolgalo irast keszitette:
   Bill Paul.

     --------------------------------------------------------------

  26.6.1. Bevezetes

   A FreeBSD kepes ugy is elindulni, ha konzolkent mindo:ssze egy
   buta terminalt kapcsolunk ra soros porton keresztu:l. Az ilyen
   tipusu konfiguracios alapveto"en ket tipus szamara bizonyul
   hasznosnak: azon rendszergazdak szamara, akik billentyu"zettel es
   monitorral nem rendelkezo" gepekre akarnak FreeBSD-t telepiteni,
   es olyan fejleszto"k szamara, akik a rendszermag vagy
   ku:lo:nbo:zo" eszko:zmeghajtok mu"ko:deset akarjak nyomon
   ko:vetni.

   Ahogy arrol mar a 12 fejezetben is szo esett, a FreeBSD harom
   inditasi fokozattal rendelkezik. Az elso" ket fokozat a
   rendszerindito blokk kodjaban foglal helyet, amely pedig a lemezen
   talalhato FreeBSD slice elejen. A rendszer indulasakor ez a blokk
   beto:lto"dik es lefuttatja a harmadik fokozatot kepviselo"
   rendszerto:lto"t (a /boot/loader allomanyt).

   Ha soros vonali konzol beallitasahoz tehat be kell allitanunk a
   rendszerindito blokkot, a rendszerto:lto"t es a rendszermagot.

     --------------------------------------------------------------

  26.6.2. A soros konzol beallitasa, ro:viditett valtozat

   Ebben a szakaszban azt feltetelezzu:k, hogy az alap beallitasokkal
   dolgozunk es csupan egy gyors attekintesre van szu:ksegu:nk a
   soros vonali konzolrol.

    1. Csatlakoztassunk egy soros kabelt a COM1 portra es a
       terminalra.

    2. Rendszeradminisztratorkent a ko:vetkezo" parancs kell kiadnunk
       ahhoz, hogy a soros konzolon lathassuk az o:sszes
       rendszerinditashoz tartozo u:zenetet:

 # echo 'console="comconsole"' >> /boot/loader.conf

    3. Nyissuk meg az /etc/ttys allomanyt, es a ttyd0 eszko:zho:z
       tartozo sorban irjuk at az off parametert az on ertekre es a
       dialup parametert a vt100 ertekre. Ha nem ezeket allitjuk be,
       akkor a soros konzol keresztu:l jelszo megadasa nelku:l is be
       tudunk jelentkezni, ami viszont egy biztonsagi res veszelyevel
       fenyeget.

    4. A valtoztatasok ervenyesitesehez inditsuk ujra a
       rendszeru:nket.

   Ha etto"l eltero" beallitasokra lenne szu:ksegu:nk, akkor a
   folyamat egyes lepeseibe a 26.6.3 Szakaszban kaphatunk melyebb
   betekintest.

     --------------------------------------------------------------

  26.6.3. A soros vonali konzol beallitasa

    1. Keszitsu:k elo" a soros kabelt.

       Vagy a null-modem kabelre vagy pedig egy szabvanyos soros
       kabelre es egy null-modem atalakitora lesz szu:ksegu:nk. A
       soros kabelekkel kapcsolatosan a 26.2.2 Szakaszt erdemes
       elolvasni.

    2. Huzzuk ki a billentyu"zetet.

       A legto:bb szemelyi szamitogep az inditasa (vagyis a Power-On
       Self-Test, POST) soran hibat jelez, ha nem erzekel
       billentyu"zetet. Egyes gepek hangosan panaszoljak a
       billentyu"zet hianyat, es nem is hajlandoak egeszen addig
       elindulni, amig nem csatlakoztatunk egyet.

       Ha a szamitogepu:nk hibat ku:ld, de ennek ellenere megis
       elindul, akkor semmit nem kell csinalnunk. (Nemelyik Phonix
       BIOS-os gepen ilyenkor megjelenik a "Keyboard failed"
       hibau:zenet, de etto"l meg rendesen elindul a gep.)

       Amennyiben a szamitogepu:nk nem hajlando billentyu"zet nelku:l
       elindulni, allitsuk be a BIOS-ban a "hiba" figyelmen kivu:l
       hagyasat (mar ha ez lehetseges). Az alaplap leirasaban
       talalhatjuk meg ennek pontos reszleit.

         Tipp: A BIOS parameterei ko:zo:tt a billentyu"zetet allitsuk
         "Not installed" allapotura. Ilyenkor meg tovabbra is
         hasznalhato a billentyu"zet, ezzel mindo:ssze csak a BIOS
         szamara tiltjuk le az inditaskori elleno"rzest, ezert nem
         fog panaszkodni a hianya miatt. Tehat a billentyu"zetet meg
         a "Not installed" beallitasa eseten is nyugodtan
         csatlakoztatjuk, mert mu"ko:dni fog.

         Megjegyzes: Ha a rendszeru:nko:n PS/2(R)-es eger is
         talalhato, akkor jo esellyel a billentyu"zettel egyu:tt az
         egeret is ki tudjuk huzni. Mivel a PS/2-es eger osztozik a
         billentyu"zettel bizonyos hardvereken, ezert ha nem huzzuk
         ki az egeret is, akkor az alaplap meg tovabbra is kepes azt
         gondolni, hogy a billentyu"zet ott van. Peldaul az AMI
         BIOS-os Gateway 2000-as 90 MHz-es Pentium rendszer pontosan
         igy mu"ko:dik. Altalaban veve azonban ez nem szokott gondot
         okozni, mivel az eger billentyu"zet nelku:l ugy sem er
         tulsagosan sokat.

    3. Csatlakoztassunk egy buta terminalt a COM1 (sio0) portra.

       Ha nem rendelkezu:nk buta terminallal, akkor erre celra
       ugyanugy alkalmas egy regi XT-s PC valamilyen modemprogrammal
       vagy egy soros porton csatlakozo masik UNIX-os gep. Ha nincs
       COM1 (sio0) portunk, akkor szerezzu:nk egyet. Jelen
       pillanatban a rendszerindito blokk ujraforditasa nelku:l a
       COM1 porton kivu:l nem tudunk masikat valasztani. Ha a COM1
       portra mar raktunk valamilyen masik eszko:zt, akkor azt
       ideiglenesen huzzuk le, majd a FreeBSD telepitese es
       elinditasa utan tegyu:nk fel egy masik rendszerindito blokkot.
       (Egyebkent feltetelezzu:k, hogy a COM1 elerheto" egy
       allomany/szamito/terminalszerveren -- ha valoban valamilyen
       masik celra szu:ksegu:nk lenne a COM1 portra (es semmikeppen
       sem tudjuk atrakni a COM2 (sio1) portra), akkor valoszinu"leg
       nem is ezzel kellene elso"kent foglalkoznunk.)

    4. Gondoskodjunk rola, hogy a rendszermag beallitasait tartalmazo
       allomanyban a COM1 (sio0) eszko:zho:z megadtuk a megfelelo"
       parametereket.

       Ezek az alabbiak:

            0x10

                    A konzolos mu"ko:desi mod engedelyezese az adott
                    egyseghez. Ha megadjuk ezt a parametert, akkor a
                    to:bbit a rendszer figyelmen kivu:l hagyja.
                    Pillanatnyilag legfeljebb egy egyseg
                    birtokolhatja ezt a beallitast. Ha to:bb ilyet
                    adtunk volna meg, akkor (a feliras sorrendje
                    szerint) az elso" kap ilyen szerepet. Ez a
                    beallitas o:nmagaban meg nem teszi a soros portot
                    konzolla. Ehhez meg szu:ksegu:nk van a
                    ko:vetkezo" beallitasra, vagy a -h megadasara is.

            0x20

                    Az egyseg konzolla nyilvanitasa (hacsak nincs egy
                    to"le nagyobb prioritasu konzol), fu:ggetlenu:l a
                    lentebb ismertetendo" -h opciotol. A 0x20 erteket
                    a 0x10 ertekkel egyu:tt kell megadni.

            0x40

                    (A 0x10 ertekkel egyu:tt) az egyseget kivonja a
                    normalis eleres alol. Ezt a beallitast ne
                    hasznaljuk, ha soros vonali konzolt akarunk
                    u:zemeltetni az adott porton. Ezzel az egyseget
                    csak a rendszermag tavoli nyomko:vetesehez tudjuk
                    hasznalni. A tavoli nyomko:vetesro"l a
                    fejleszto"k keziko:nyveben olvastunk bo"vebben.

       Pelda:

 device sio0 at isa? port IO_COM1 flags 0x10 irq 4

       A tovabbi reszletekro"l a sio(4) man oldal tud felvilagositast
       nyujtani.

       Ha nem allitottuk be a megfelelo" parametereket, akkor (egy
       masik konzolon) futtassuk a UserConfig programot vagy
       forditsuk ujra a rendszermagot.

    5. Hozzunk letre egy boot.config allomanyt a rendszer inditasahoz
       hasznalt meghajto a particiojanak gyo:kereben.

       Ez az allomany mondja meg a rendszerindito blokkban talalhato
       kodnak, hogy mikent akarjuk inditani a rendszeru:nket. A soros
       vonali konzol eletrekeltesehez a most ko:vetkezo" opciok
       ko:zu:l kell megadnunk egyet vagy to:bbet -- amennyiben
       to:bbet akarunk megadni, akkor mindegyiket egyetlen sorban
       szerepeltessu:k:

            -h

                    A belso" es a soros vonali konzolok ko:zti
                    atkapcsolas. Ezzel tudunk a konzolos eszko:zo:k
                    ko:zo:tt valtani. Peldaul, ha egy belso" (video)
                    konzolrol inditjuk a rendszert, akkor a
                    rendszerto:lto"nek es a rendszermagnak atadott -h
                    parameterrel arra tudjuk ezeket utasitani, hogy
                    konzolkent a soros portot hasznaljak. Vagy ha
                    soros porton keresztu:l inditjuk a rendszert,
                    akkor -h megadasaval megkerhetju:k a
                    rendszerto:lto"t es a rendszermagot, hogy ezutan
                    mar a videokartyat hasznalja konzolkent.

            -D

                    Az egy- es ketkonzolos beallitasok ko:zti valtas.
                    Az egykonzolos konfiguracioban a konzol lehet
                    belso" (video) vagy soros vonali, attol
                    fu:ggo"en, hogy mikent hasznaltuk a fenti -h
                    opciot. A ketkonzolos konfiguracioban azonban a
                    videokartyan es a soros vonalon keresztu:l is
                    egyszerre megjelenik a konzol, fu:ggetlenu:l a -h
                    hatasatol. Ilyenkor viszont vegyu:k figyelembe,
                    hogy ez a ketkonzolos konfiguracio csak a
                    rendszerindito blokk futasa alatt el. Amint a
                    rendszerindito megkapja a vezerlest, a -h altal
                    megadott konzol valik az egyedu:live.

            -P

                    A rendszerindito blokk megprobalja megkeresni a
                    billentyu"zetet. Ha nem talalja, akkor magatol
                    beallitja a -D es -h opciokat.

                      Megjegyzes: Tarbeli korlatozasok miatt a
                      rendszerindito blokk jelenlegi valtozata a -P
                      parameterrel csak a kiterjesztett
                      billentyu"zeteket kepes kezelni. A 101 gombnal
                      kevesebbel (tehat F11 es F12 gombokkal nem)
                      rendelkezo" billentyu"zeteket ezert nem
                      feltetlenu:l fogja eszlelni. Ugyanezen
                      korlatozas miatt egyes laptopokon sem minden
                      esetben sikeru:l erzekelni a billentyu"zetet.
                      Ha ez a rendszeru:nko:n problemahoz vezetne,
                      akkor egyszeru"bb lesz elhagyni a -P
                      hasznalatat. Sajnos, jelenleg semmilyen
                      megoldas nincs erre.

       Vagy a -P opcioval allitassuk be automatikusan a konzolt, vagy
       pedig a -h opcioval engedelyezzu:k a soros vonali konzolt.

       Termeszetesen itt a boot(8) man oldalon szereplo" o:sszes
       to:bbi parametert is megadhatjuk.

       A -P kivetelevel az o:sszes opcio a rendszerto:lto"nek
       (/boot/loader) keru:l atadasra. A rendszerto:lto" egyedu:l a
       -h allapotabol do:nti el, hogy mely belso" videoeszko:zo:n
       vagy soros porton legyen a konzol. Ez azt jelenti, hogy a
       /boot.config allomanyban ha megadjuk a -D opciot, de mellette
       nem szerepel a -h, akkor a soros vonali konzolt csak a
       rendszerindito blokk futasa alatt tudjuk elerni -- a
       rendszerto:lto" ugyanis alapbol a videokartyat hasznalja
       konzolkent.

    6. Kapcsoljuk be a szamitogepu:nket.

       Amikor elinditjuk a FreeBSD-s gepu:nket, a rendszerindito
       blokk kiirja a /boot.config tartalmat a konzolra. Peldaul igy:

 /boot.config: -P
 Keyboard: no

       A masodik sor csak olyankor jelenik meg, ha a /boot.config
       allomanyban a -P beallitas is szerepel, es a billentyu"zet
       jelenletet (yes) vagy hianyat (no) jelzi. A /boot.config
       tartalmatol fu:ggo"en ezek az u:zenetek vagy a soros vonali
       vagy a belso" konzolon jelennek meg, esetleg mind a ketto"n.

       Beallitas                    Ahol megjelenik                   
       nincs                        belso" konzol                     
       -h                           soros vonali konzol               
       -D                           soros vonali es belso" konzol     
       -Dh                          soros vonali es belso" konzol     
       -P, van billentyu"zet        belso" konzol                     
       -P, nincs billentyu"zet      soros vonali konzol               

       Az imenti u:zenetek felbukkanasa utan a tovabbi konzolos
       u:zenetek ku:ldeseben egy ro:vid szu:net ko:vetkezik, amig a
       rendszerindito blokk a rendszerto:lto" beto:ltesevel folytatja
       a rendszer inditasat. Normalis ko:ru:lmenyek ko:zo:tt ezt a
       folyamatot nem kell megszakitanunk, de esetleg olyankor megis
       erdemes lehet, ha le akarjuk elleno"rizni a beallitasainkat.

       A rendszerinditasi folyamat felbeszakitasahoz az Enter
       billentyu"n kivu:l nyomjuk le valamelyik masikat. Ekkor a
       rendszerindito blokk megall es varja a tovabbi parancsokat.
       Ekkor valami ilyesmit lathatunk:

 >> FreeBSD/i386 BOOT
 Default: 0:ad(0,a)/boot/loader
 boot:

       Nezzu:k meg, hogy /boot.config beallitasainak megfelelo"en a
       fenti u:zenet a soros vonali konzolon vagy a belso" konzolon,
       illetve mind a ketto"n megjelenik-e. Ha az u:zenet a
       megfelelo" konzolon megjelenik, akkor az Enter lenyomasaval
       folytathatjuk a rendszer inditasat.

       Ha neku:nk a soros vonali konzolra lenne szu:ksegu:nk, de
       semmi nem jelenik meg a soros terminalon, akkor valamit
       valoszinu"leg nem jol allitottunk be. A rendszerindito
       blokktol kapott parancssorban a -h begepelesevel es az Enter
       vagy Return lenyomasaval (ha lehetseges) jelezzu:k neki (es
       igy a rendszerto:lto"nek es a rendszermagnak is) a soros
       vonali konzol kivalasztasat. Miutan befejezo"do:tt a rendszer
       inditasa, menju:nk vissza es elleno"rizzu:k a megfelelo"
       parametereket.

   Ahogy sikeru:lt elinditani a rendszerto:lto"t es a rendszerinditas
   harmadik fokozataba leptu:nk, a rendszerto:lto" megfelelo"
   ko:rnyezeti valtozoin keresztu:l meg mindig van leheto"segu:nk
   valtani a soros vonali es a belso" konzol ko:zo:tt, lasd 26.6.6
   Szakasz.

     --------------------------------------------------------------

  26.6.4. O:sszefoglalas

   Itt most ro:viden o:sszefoglaljuk az eddig targyalt ku:lo:nbo:zo"
   beallitasokat es tenylegesen kivalasztott konzolt.

     --------------------------------------------------------------

    26.6.4.1. 1. eset: a sio0 eszko:znel a 0x10 beallitast adjuk meg

 device sio0 at isa? port IO_COM1 flags 0x10 irq 4

   A /boot.config Konzol a             Konzol a        Konzol a       
   beallitasai    rendszerindito blokk rendszerto:lto" rendszermagban 
                  alatt                alatt           
   nincsenek      belso"               belso"          belso"         
   -h             soros vonali         soros vonali    soros vonali   
   -D             soros vonali es      belso"          belso"         
                  belso"                               
   -Dh            soros vonali es      soros vonali    soros vonali   
                  belso"                               
   -P, van        belso"               belso"          belso"         
   billentyu"zet                                       
   -P, nincs      soros vonali es      soros vonali    soros vonali   
   billentyu"zet  belso"                               

     --------------------------------------------------------------

    26.6.4.2. 2. eset: a sio0 eszko:znel 0x30 beallitasa

 device sio0 at isa? port IO_COM1 flags 0x30 irq 4

   A /boot.config Konzol a             Konzol a        Konzol a       
   beallitasai    rendszerindito blokk rendszerto:lto" rendszermagban 
                  alatt                alatt           
   nincsenek      belso"               belso"          soros vonali   
   -h             soros vonali         soros vonali    soros vonali   
   -D             soros vonali es      belso"          soros vonali   
                  belso"                               
   -Dh            soros vonali es      soros vonali    soros vonali   
                  belso"                               
   -P, van        belso"               belso"          soros vonali   
   billentyu"zet                                       
   -P, nincs      soros vonali es      soros vonali    soros vonali   
   billentyu"zet  belso"                               

     --------------------------------------------------------------

  26.6.5. Tanacsok a soros vonali konzol hasznalatahoz

    26.6.5.1. Nagyobb soros vonali sebesseg beallitasa

   A soros port alapertelmezesei a ko:vetkezo"k: 9600 baud, 8 bites
   atvitel, paritas nincs es 1 stopbit. Ha a konzol alapsebesseget
   meg akarjuk valtoztatni, akkor ahhoz a ko:vetkezo"ket kell
   tennu:nk:

     * Forditsuk ujra a rendszerindito blokkokat ugy, hogy a
       BOOT_COMCONSOLE_SPEED valtozoban a konzolnak egy masik
       sebesseget adunk meg. Az uj rendszerindito blokkok
       forditasarol es telepitesero"l a 26.6.5.2 Szakaszban kapunk
       reszletes leirast.

       Ha a soros vonali konzolt nem a -h opcioval allitottuk be,
       vagy ha a rendszermag a rendszerindito blokkoktol eltero"
       modon eri el a soros vonali konzolt, akkor a rendszermag
       beallitasai ko:ze meg az alabbit is fel kell vennu:nk, majd
       ujra kell forditanunk:

 options CONSPEED=19200

     * A rendszermagnak adjuk at a -S rendszerinditasi parametert. A
       -S parancssori opcio a /boot.config allomanyban is megadhato.
       A boot(8) man oldalon tudhatjuk meg, hogy a /boot.config
       beallitasai ko:ze hogyan tudjuk felvenni es ott milyen tovabbi
       leheto"segeink vannak meg.

     * A /boot/loader.conf allomanyban engedelyezzu:k a
       comconsole_speed beallitast.

       Ez a beallitas a szinten a /boot/loader.conf allomanyban
       megadhato console, boot_serial es boot_multicons valtozoktol
       fu:gg. A soros vonali konzol sebesseget tehat peldaul igy
       tudjuk megvaltoztatni a comconsole_speed megadasaval:

 boot_multicons="YES"
 boot_serial="YES"
 comconsole_speed="115200"
 console="comconsole,vidconsole"

     --------------------------------------------------------------

    26.6.5.2. Soros vonali konzol a sio0 porton kivu:l mashol

   Ha valamilyen okbol kifolyolag nem a sio0 porton keresztu:l
   akarjuk hasznalni a konzolt, akkor ahhoz a rendszerindito blokkok,
   a rendszerto:lto" es a rendszermag forrasait ujra kell forditanunk
   az alabbiak szerint:

    1. Szerezzu:k be a rendszermag forrasat. (Lasd 24 fejezet)

    2. Irjuk at a /etc/make.conf allomanyban a BOOT_COMCONSOLE_PORT
       cimet az altalunk hasznalt porthoz tartozoera (0x3F8, 0x2F8,
       0x3E8 vagy 0x2E8). Itt csak a sio0 es sio3 (COM1 es COM4)
       ko:zti portok hasznalhatoak -- a to:bportos soros kartyak
       cimei nem adhatoak meg. A megszakitasokat nem kell
       beallitanunk.

    3. Keszitsu:nk egy sajat rendszermag beallitasait tartalmazo
       allomanyt, es vegyu:k fel bele a hasznalni kivant soros port
       megfelelo" parametereit. Peldaul, ha a sio1 (COM2) eszko:zt
       akarjuk konzolkent hasznalni:

 device sio1 at isa? port IO_COM2 flags 0x10 irq 3

       vagy

 device sio1 at isa? port IO_COM2 flags 0x30 irq 3

       A konzolra vonatkozo beallitasokat a to:bbi soros portnal ne
       adjuk meg.

    4. Forditsuk ujra es telepitsu:k a rendszerindito blokkot es a
       rendszerto:lto"t:

 # cd /sys/boot
 # make clean
 # make
 # make install

    5. Forditsuk es telepitsu:k ujra a rendszermagot.

    6. A bsdlabel(8) segitsegevel masoljuk az uj rendszerindito
       blokkot a rendszer inditasat vegzo" lemezre es to:ltsu:k be az
       uj rendszermagot.

     --------------------------------------------------------------

    26.6.5.3. A DDB elerese a soros vonalrol

   Ha a soros vonali konzolrol akarjuk hasznalni a rendszermagba
   epitett nyomko:veto"t (ami hasznos lehet tavoli vizsgalodaskor, de
   egyben veszelyes is, ha a soros porton tevesen kiku:ldu:nk egy
   BREAK jelzest!), akkor a rendszermagot a ko:vetkezo"
   beallitasokkal kell forditanunk:

 options BREAK_TO_DEBUGGER
 options DDB

     --------------------------------------------------------------

    26.6.5.4. A bejelentkezo" kepernyo" elerese a soros vonali konzolrol

   Habar erre nincs feltetlenu:l szu:ksegu:nk, a rendszer
   u:zeneteinek es a rendszermag nyomko:veto"jenek elerese utan akar
   be is tudunk jelentkezni a soros vonalon keresztu:l. Ime!

   Nyissuk meg az /etc/ttys allomanyt a kedvenc
   szo:vegszerkeszto"nkkel es keressu:k meg a ko:vetkezo" sorokat:

 ttyd0 "/usr/libexec/getty std.9600" unknown off secure
 ttyd1 "/usr/libexec/getty std.9600" unknown off secure
 ttyd2 "/usr/libexec/getty std.9600" unknown off secure
 ttyd3 "/usr/libexec/getty std.9600" unknown off secure

   A ttyd0 es ttyd3 ko:zti sorok pontosan a COM1 es COM4 ko:zti
   portoknak felelnek meg. A hasznalni kivant port soraban szereplo"
   off parametert irjuk at az on ertekre. Ha a soros port sebesseget
   is megvaltoztattuk, minden bizonnyal a std.9600 helyett is az
   adott sebesseghez illeszkedo" parametert kell megadnunk, peldaul
   az std.19200 ertekkel.

   Erdemes tovabba meg az unknown helyett megadni az adott terminal
   tipusat.

   Az allomany modositasat ko:veto"en a valtozatasok ervenyesitesehez
   ki kell adnunk a kill -HUP 1 parancsot is.

     --------------------------------------------------------------

  26.6.6. A konzol megvaltoztatasa a rendszerto:lto"bo"l

   A korabbi szakaszokban arrol beszeltu:nk, hogy mikent allitsuk be
   a soros vonali konzolt a rendszerindito blokk megpiszkalasaval.
   Ebben a szakaszban viszont azt mutatjuk meg, hogy ku:lo:nbo:zo"
   parancsokon es ko:rnyezeti valtozokon keresztu:l mikent tudjuk
   megadni a konzolt a rendszerto:lto"ben. Mivel a rendszerto:lto"re
   a rendszerinditas harmadik fokozataban keru:l sor, az ott megadott
   ertekekkel felu:l tudjuk biralni a rendszerindito blokk
   beallitasait.

     --------------------------------------------------------------

    26.6.6.1. A soros vonali konzol beallitasa

   A rendszerto:lto" es a rendszermag az /boot/loader.conf allomanyon
   keresztu:l eleg ko:nnyen raveheto" a soros vonali konzol
   hasznalatara:

 set console="comconsole"

   Ez a rendszerindito blokk elo"zo" szakaszban targyalt
   beallitasaitol fu:ggetlenu:l ervenyesu:l.

   A fenti sort a /boot/loader.conf allomany elejere erdemes
   tennu:nk, igy a soros vonali konzolon mar a leheto" leghamarabb
   megjelennek a rendszer u:zenetei.

   Ehhez hasonlo modon a belso" konzolt is megadhatjuk:

 set console="vidconsole"

   Ha a rendszerto:lto"ben nem adjuk meg a console ko:rnyezeti
   valtozo erteket, akkor a rendszerto:lto", es igy a rendszermag is,
   a rendszerindito blokkban a -h opcio altal meghatarozott konzolt
   fogja hasznalni.

   A konzol a /boot/loader.conf.local vagy a /boot/loader.conf
   allomanyokban adhato meg.

   A reszletekkel kapcsolatban lasd a loader.conf(5) man oldalt.

     Megjegyzes: Jelen pillanatban a rendszerto:lto"nek nincs a -P
     parameterrel ekvivalens erteku" beallitasa, ezert a
     billentyu"zet jelenlete alapjan nem kepes magatol valasztani a
     belso" es a soros vonali konzol ko:zo:tt.

     --------------------------------------------------------------

    26.6.6.2. Soros vonali konzol a sio0 porton kivu:l mashol

   A rendszerto:lto"t ne a sio0 eszko:zzel forditsuk ujra a soros
   vonali konzolhoz. Ehhez ko:vessu:k a 26.6.5.2 Szakaszban leirt
   eljaras lepeseit.

     --------------------------------------------------------------

  26.6.7. Figyelmeztetesek

   A szakaszban szereplo" o:tletek alapjan sokan igy most mar
   ko:nnyen be tudnak allitani egy billentyu"zet es grafikus hardver
   nelku:li dedikalt szervert. Sajnos azonban a legto:bb rendszer nem
   engedi a billentyu"zet nelku:li inditast, es akad nehany olyan is,
   amely pedig a grafikus kartya hianyaban nem is indul el. Az AMI
   BIOS-os gepeknel a grafikus kartya nelku:li inditashoz elegendo"
   csupan a beallitasok ko:zo:tt a grafikus kartyat ("graphics
   adapter") "Not installed" (nem telepitett) allapotura allitani. Ha
   ilyen opcio nem talalhato a BIOS-ban, akkor helyette keressu:k a
   "Halt on Error" (leallas hiba eseten) valtozatot. Ha ezt a "All
   but Keyboard" (a billentyu"zet kivetelevel minden) vagy akar a "No
   Error" (soha) ertekre allitjuk, az elo"bbi eredmenyt kapjuk.

   Ennek ellenere elo"fordulhat azonban, hogy egyes gepeken
   egyaltalan nem talalunk ilyen leheto"seget es videokartya nelku:l
   nem indulnak el. Ezekben az esetekben tegyu:nk a gepbe valamilyen
   kartyat (ehhez eleg egy egyszeru" tipus is), de monitort mar ne
   ko:ssu:nk ra. Esetleg megprobalkozhatunk meg AMI BIOS
   telepitesevel is.

     --------------------------------------------------------------

                      Fejezet 27. A PPP es a SLIP

   Atdolgozta, atrendezte es aktualizalta: Jim Mock.

27.1. Attekintes

   A FreeBSD szamos modon kepes o:sszeko:tni ket szamitogepet. Ha
   betarcsazos modemmel akarunk halozati vagy internetes kapcsolatot
   felepiteni, esetleg azt szeretnenk, hogy masok kepesek legyenek
   minket ilyen modon elerni, akkor ahhoz PPP-t, illetve SLIP-et kell
   hasznalnunk. Ebben a fejezetben a modemes kommunikacio
   beallitasait mutatjuk be reszletesebben.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan allitsunk be felhasznaloi PPP-t;

     * hogyan allitsunk be rendszerszintu" PPP-t;

     * hogyan allitsunk be egy PPPoE (PPP over Ethernet, vagyis "PPP
       Ethernet felett") kapcsolatot;

     * hogyan allitsunk be egy PPPoA (PPP over ATM, vagyis "PPP ATM
       felett") kapcsolatot;

     * hogyan allitsunk be SLIP klienst es szervert.

   A fejezet elolvasasahoz ajanlott:

     * az alapveto" halozati technologiak ismerete;

     * a betarcsazos kapcsolatok, a PPP es/vagy SLIP alapjainak es
       celjainak megertese.

   Talan erdekli a kedves olvasot, hogy mi az alapveto" ku:lo:nbseg a
   felhasznaloi es a rendszerszintu" PPP ko:zo:tt. A valasz
   egyszeru": a felhasznaloi PPP a beerkezo" es kimeno" adatokat nem
   a rendszermagban, hanem a felhasznaloi szinten dolgozza fel. Ez
   ko:ltseges abbol a szempontbol, hogy emiatt adatokat kell
   masolgatni a rendszer es a felhasznaloi szint ko:zo:tt, azonban
   egy sokkal to:bbet tudo PPP implementacionak ad ezzel utat. A
   felhasznaloi PPP a tun eszko:zo:n keresztu:l kommunikal a
   ku:lvilaggal, miko:zben a rendszermagban talalhato PPP mindezt a
   ppp eszko:zzel valositja meg.

     Megjegyzes: A fejezetben a felhasznaloi PPP-t egyszeru"en csak
     ppp neven fogjuk hivatkozni, hacsak nem lesz szu:kseges
     ku:lo:nbseget tennu:nk ko:zte es mas PPP szoftverek, mint
     peldaul a pppd ko:zo:tt. Ha mast nem mondunk, akkor a fejezetben
     ismertetett o:sszes parancsot root felhasznalokent kell kiadni.

     --------------------------------------------------------------

27.2. A felhasznaloi PPP alkalmazasa

   Frissitette es javitotta: Tom Rhodes. Eredetileg keszitette: Brian
   Somers. Segitett meg: Nik Clayton, Dirk Fro:mberg, es Peter
   Childs.

  27.2.1. A felhasznaloi PPP

    27.2.1.1. Elo"feltetelek

   A leiras feltetelezi, hogy rendelkezu:nk a ko:vetkezo"kkel:

     * Olyan internet-elo"fizetes, ahol PPP-n keresztu:l csatlakozunk

     * Egy modem vagy mas olyan rendszeru:nkho:z csatlakozo eszko:z,
       amelyen keresztu:l el tudjuk erni az internet-szolgaltatonkat

     * Az internet-elo"fizetes betarcsazasahoz szu:kseges
       telefonszamok

     * A bejelentkezesi nevu:nk es jelszavunk. (Vagy a megszokott
       UNIX-os felhasznaloi nev es jelszo paros, vagy egy PAP esetleg
       CHAP bejelentkezesi nev es jelszo.)

     * Egy vagy to:bb nevszerver IP-cime. Ehhez az
       internet-szolgaltatok altalaban ket IP-cimet adnak meg. Ha
       egyet sem kaptunk, akkor a ppp.conf allomanyban erre a celra
       hasznalhatjuk az enable dns parancsot, es ekkor a ppp majd
       automatikusan be fogja allitani neku:nk a nevszervereket. Ezt
       a leheto"seget az befolyasolja, hogy az internet-szolgaltato
       oldalan mu"ko:do" PPP implementacio tamogatja-e a nevfeloldas
       egyezteteset (DNS negotiation).

   A ko:vetkezo" informaciokat is megkaphatjuk az
   internet-elo"fizetesu:nkho:z, de nem feltetlenu:l szu:ksegesek:

     * Az internet-szolgaltato atjarojanak IP-cime. Az atjaro az a
       gep, amelyen keresztu:l a gepu:nk csatlakozik es szamara ez
       lesz az alapertelmezett atjaro. Ha nem rendelkezu:nk ezzel az
       informacioval, akkor csak allitsunk be valamit, es majd a
       csatlakozaskor a szolgaltato PPP szervere felu:lirja a
       megfelelo" beallitasokkal.

       Erre a cimre a ppp HISADDR neven hivatkozik.

     * A hasznalando halozati maszk. Amennyiben a szolgaltato ezt nem
       adta meg, nyugodtan hasznaljuk erre a 255.255.255.255 erteket.

     * Ha a szolgaltatonk statikus IP-cimet es ro:gzitett halozati
       nevet is biztosit neku:nk, ezt is megadhatjuk. Minden mas
       esetben egyszeru"en csak hagyjuk, hogy a rendszer
       automatikusan valasszon neku:nk egyet.

   Ha a szu:kseges informacioknak nem vagyunk birtokaban, akkor
   vegyu:k fel a kapcsolatot az internet-szolgaltatokkal.

     Megjegyzes: Ebben a szakaszban a peldakban szereplo"
     konfiguracios allomanyok sorait szamozva lathatjuk. Ezek a
     sorszamok a bemutatas es a targyalas megko:nnyitese erdekeben
     szerepelnek, es nem az eredeti allomanyok reszei. Mindezek
     mellett a tabulatorok es szoko:zo:k megfelelo" hasznalata is
     fontos.

     --------------------------------------------------------------

    27.2.1.2. A PPP automatikus beallitasa

   A ppp es a pppd (a PPP rendszerszintu" megvalositasa) egyarant az
   /etc/ppp ko:nyvtarban talalhato konfiguracios allomanyokat
   hasznalja. A felhasznaloi PPP-hez ezenkivu:l meg a
   /usr/share/examples/ppp/ ko:nyvtarban vannak peldak.

   A ppp parancs beallitasa az igenyeinkto"l fu:ggo"en szamos
   allomany modositasat igenyelheti. A tartalmukat nagyban
   befolyasolja, hogy a szolgaltatonk reszero"l a cimeket kiosztasa
   statikus (vagyis egy adott cimet kapunk es folyamatosan azt
   hasznaljuk) esetleg dinamikus (vagyis az IP-cimu:nk minden egyes
   kapcsolodaskor mas es mas).

     --------------------------------------------------------------

      27.2.1.2.1. PPP statikus IP-cimmel

   Ebben az esetben az /etc/ppp/ppp.conf konfiguracios allomanyt kell
   atszerkesztenu:nk. Tartalma az alabbi peldahoz hasonlithato.

     Megjegyzes: A : karakterrel vegzo"do" sorok mindig az elso"
     oszlopban kezdo"dnek (tehat a sor elejen), mig az o:sszes to:bbi
     sort tabulatorok vagy szoko:zo:k hasznalataval bentebb kell
     raknunk.

 1     default:
 2       set log Phase Chat LCP IPCP CCP tun command
 3       ident user-ppp VERSION (built COMPILATIONDATE)
 4       set device /dev/cuad0
 5       set speed 115200
 6       set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \
 7                 \"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CONNECT"
 8       set timeout 180
 9       enable dns
 10
 11    szolgaltato:
 12      set phone "(123) 456 7890"
 13      set authname ize
 14      set authkey mize
 15      set login "TIMEOUT 10 \"\" \"\" gin:--gin: \\U word: \\P col: ppp"
 16      set timeout 300
 17      set ifaddr x.x.x.x y.y.y.y 255.255.255.255 0.0.0.0
 18      add default HISADDR

   1. sor:

           Ez azonositja be az alapertelmezett bejegyzest. Az itt
           szereplo" parancsok a ppp minden egyes futasakor magukbol
           vegrehajtodnak.

   2. sor:

           Beallitja a naplozas parametereit. Amikor a beallitasaink
           mar kifogastalanul mu"ko:dnek, akkor ezt a sort erdemes
           atirni a ko:vetkezo"re:

 set log phase tun

           Ezzel jelento"s mertekben vissza tudjuk fogni a naplozas
           merteket.

   3. sor:

           Ezzel mondjuk meg a PPP-nek, hogy a to:bbiek fele mikent
           azonositsa magat. A PPP akkor azonositja magat a tarsak
           fele, ha valamilyen gondja akad az egyeztetesekkel es a
           kapcsolat beallitasaval. Az igy tovabbitott informaciok a
           masik oldal rendszergazdai szamara nyujthatnak segitseget
           az ilyen jellegu" problemak felderiteseben.

   4. sor:

           Itt adjuk meg az eszko:zt, amelyre a modem csatlakozik. A
           COM1 neve /dev/cuad0, a COM2 neve pedig /dev/cuad1.

   5. sor:

           A csatlakozas sebesseget adjuk meg. Ha a 115 200-as ertek
           itt nem mu"ko:dne (ez egyebkent minden ujabb gyartmanyu
           modem eseteben elfogadhato), akkor helyette hasznaljuk a
           38400-as beallitast.

   6. es 7. sorok:

           A hivashoz hasznalt karakterlanc. A felhasznaloi PPP a
           chat(8) programhoz hasonlo "ku:ldo:k-varok" tipusu
           szerkesztest alkalmaz. A kihasznalhato leheto"segekro"l a
           man oldalan olvashatunk reszletesebben.

           Az olvashatosag kedveert a parancs a ko:vetkezo" sorban
           folytatodik. A ppp.conf allomanyban barmelyik parancs,
           ahol a \ karakterrel zarjuk a sort, az ugyanigy
           folytathato a ko:vetkezo"ben.

   8. sor:

           A kapcsolathoz tartozo u:resjarati ido"t allitja be. Ennek
           erteke alapbol 180 masodperc, igy ez a sor pusztan csak az
           ertheto"seget szolgalja.

   9. sor:

           Arra utasitja a PPP-t, hogy a to:bbiekto"l kerdezze le a
           helyi nevfeloldo beallitasait. Ha sajat nevszervert
           futtatunk, akkor ezt a sort tegyu:k inkabb megjegyzesbe
           vagy to:ro:lju:k ki.

   10. sor:

           Ez az u:res sor az atlathatosag kedveert keru:lt bele. A
           PPP az o:sszes u:res sort figyelmen kivu:l hagyja.

   11. sor:

           Itt kezdo"dik a "szolgaltato" nevu" szolgaltatohoz tartozo
           bejegyzes. Ezt keso"bb akar ki is cserelhetju:k az
           internet-szolgaltatonk nevere, igy a load szolgaltato
           beallitassal tudjuk majd beinditani a kapcsolatot.

   12. sor:

           Beallitjuk a szolgaltatohoz tartozo telefonszamot. A
           ketto"spont (:) vagy a cso"vezetek (|) karakterekkel
           elvalasztva to:bb telefonszamot is meg tudunk adni. A
           ppp(8) oldalon olvashatunk a ket elvalaszto ko:zti
           ku:lo:nbsegekro"l. Ro:viden ezeket ugy foglalhatnank
           o:ssze, hogy ha valtogatni akarunk a szamok ko:zo:tt,
           akkor hasznaljuk a ketto"spontot. Ha mindig az elso"kent
           megadott szamot akarjuk hivni es a to:bbit csak akkor, ha
           ez nem mu"ko:dik, akkor a cso"vezetek karakterre lesz
           szu:ksegu:nk. Ahogy a pelda is mutatja, az o:sszes
           telefonszamot tegyu:k mindig idezo"jelek ko:ze.

           Ha a telefonszamban egyebkent is szerepelnek szoko:zo:k,
           akkor is idezo"jelek (") ko:ze kell tennu:nk. Ennek
           elhagyasaval egy egyszeru", amde kenyes hibat ejtu:nk.

   13. es 14. sor:

           A felhasznaloi nevet es jelszot tartalmazza. Amikor egy
           UNIX fajtaju bejelentkezest kapunk, akkor ezekre az
           ertekekre a set login parancsban \U es \P valtozokkal
           tudunk hivatkozni. Ha PAP vagy CHAP hasznalataval
           jelentkezu:nk be, akkor ezek az ertekek a hitelesiteskor
           keru:lnek felhasznalasra.

   15. sor:

           Ha a PAP vagy CHAP protokollok valamelyiket hasznaljuk,
           akkor nem lesz szu:ksegu:nk a login valtozora, ezert ezt
           megjegyzesbe is tehetju:k, vagy akar ki is to:ro:lhetju:k.
           A PAP es CHAP hitelesitesro"l szolo reszben olvashatjuk
           ennek tovabbi reszleteit.

           A bejelentkezeshez hasznalt karakterlanc hasonlit a
           behivashoz hasznalt, chat-szeru" felepitessel rendelkezo"
           karakterlanchoz. A peldaban lathato karakterlanc egy olyan
           szolgaltatashoz illeszkedik, ahol a bejelentkezes valahogy
           igy nez ki:

 A Vilag Legjobb Szolgaltatoja
 login: ize
 password: mize
 protocol: ppp

           Ezt a szkriptet alakitsuk a sajat igenyeinkhez. Ha
           elo"szo:r probalkozunk ilyen szkript irasaval, akkor
           leheto"leg kapcsoljuk be a rendszerek ko:zo:tt lezajlo
           "beszelgetes" naplozasat, hogy elleno"rizni tudjuk minden
           a megfelelo"en modon to:rtenik-e.

   16. sor:

           Beallitjuk a kapcsolathoz tartozo alapertelmezett
           ido"korlatot (masodpercben). Itt a kapcsolat automatikusan
           lezarul 300 masodperc tetlenseget ko:veto"en. Ha nem
           akarunk ilyen korlatot szabni, akkor ezt az erteket
           allitsuk nullara vagy hasznaljuk a -ddial paranccsori
           kapcsolot.

   17. sor:

           A felu:lethez tartozo cimeket allitja be. A x.x.x.x
           helyere a szolgaltato altal kiosztott IP-cimet kell
           beirnunk. A y.y.y.y helyett pedig a szolgaltato atjaroja
           keru:l be (lenyegeben az a gep, amelyhez csatlakozunk).
           Amennyiben az internet-szolgaltatonk nem adott meg
           semmilyen atjarot, erre a celra a 10.0.0.2/0 cimet is
           hasznalhatjuk. Amikor "neku:nk kell kitalalnunk" ezeket a
           cimeket, akkor ne felejtsu:nk el letrehozni hozzajuk egy
           bejegyzest az /etc/ppp/ppp.linkup allomanyban a PPP
           dinamikus IP-cimmel szakaszban szereplo"ek szerint. Ha nem
           adjuk meg ezt a sort, akkor a ppp parancs nem kepes -auto
           modban mu"ko:dni.

   18. sor:

           A szolgaltato atjarojahoz felvesz egy alapertelmezett
           utvonalat. A HISADDR kulcsszot a 17. sorban megadott
           atjaro cimevel helyettesitju:k. Ezert fontos, hogy ez a
           17. sor utan szerepeljen, ku:lo:nben a HISADDR nem lesz
           kepes inicializalodni.

           Ha a ppp parancsot nem akarjuk -auto modban futtatni,
           akkor ezt a sort a ppp.linkup allomanyba is atrakhatjuk.

   Ha statikus IP-cimmel rendelkezu:nk es a ppp -auto modban fut,
   akkor a ppp.linkup allomanyba egeszen addig nem kell semmit sem
   irnunk, amig a csatlakozas elo"tt az utvalasztasi tablazatokban a
   megfelelo" adatok talalhatoak. Olyankor is jol jo:het, amikor a
   csatlakozast ko:veto"en meg akarunk hivni bizonyos programokat.
   Ezt majd a sendmailes peldaban fogjuk bo"vebben kifejteni.

   Erre peldakat a /usr/share/examples/ppp/ ko:nyvtarban talalhatunk.

     --------------------------------------------------------------

      27.2.1.2.2. PPP dinamikus IP-cimmel

   Ha az internet-szolgaltatonktol nem kaptunk statikus IP-cimet,
   akkor a ppp paranccsal is be tudjuk allitani a helyi es tavoli
   cimeket. Ez az IP-cimek "kitalalasaval" to:rtenik, valamint ugy,
   hogy a ppp szamara a csatlakozas utan leheto"ve tesszu:k az IP
   konfiguracios protocol (IP Configuration Protocol, IPCP)
   hasznalatat. A ppp.conf tartalma szinte teljesen megegyezik a PPP
   statikus IP-cimmel reszben szereplo"vel, egyetlen apro
   ku:lo:nbseggel:

 17      set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.255

   Ismet szeretnenk elmondani, hogy a sorszamot ne irjuk bele, hiszen
   az csak hivatkozasi cellal szerepel. Legalabb egy szoko:zzel
   kezdju:nk bentebb.

   17. sor:

           A / utan megjeleno" szam azoknak a biteknek a szamat adja
           meg, amire a ppp tamaszkodik. A ko:rnyezetu:nknek jobban
           megfelelo" IP-cimeket is megadhatunk, de a fenti pelda
           minden esetben mu"ko:dni fog.

           Az utolso parameterrel (0.0.0.0) azt mondjuk a PPP-nek,
           hogy az egyeztetest ne a 10.0.0.1, hanem a 0.0.0.0 cimmel
           kezdje meg, amire egyes szolgaltatok eseten szu:ksegu:nk
           is lesz. A set ifaddr elso" parameterekent azonban soha ne
           adjuk meg a 0.0.0.0 cimet, mivel ezzel a PPP -auto modban
           nem tudja beallitani a kezdeti utvonalat.

   Ha nem -auto modban inditjuk, akkor az /etc/ppp/ppp.linkup
   allomanyban meg kell adnunk meg egy bejegyzest is. A ppp.linkup
   allomanyt a kapcsolat letrejo:tte utan dolgozzuk fel. Itt mar a
   ppp megkapta a felu:lethez tartozo cimeket, igy az utvalasztasi
   tablazatba fel tudjuk venni hozzajuk a megfelelo" bejegyzeseket:

 1     szolgaltato:
 2      add default HISADDR

   1. sor:

           A kapcsolat felepitese soran a ppp a ppp.linkup
           allomanyban a ko:vetkezo" szabalyok szerint fogja keresni
           a bejegyzeseket: elo"szo:r a ppp.conf allomanyban megadott
           cimket probalja megtalalni. Ha ez nem sikeru:l, akkor az
           atjaronknak megfelelo" bejegyzest kezdi el keresni. Ez egy
           negy byte-bol allo, felirasaban az IP-cimekhez hasonlito
           cimke. Ha meg ez a cimke sem talalhato, akkor a MYADDR
           bejegyzest keresi.

   2. sor:

           Ez a sor mondja meg a ppp programnak, hogy vegyen fel egy
           HISADDR cimre vonatkozo alapertelmezett utvonalat. A
           HISADDR cimet az IPCP altal egyeztetett atjaro IP-cimere
           cserelju:k ki.

   Ha erre a reszletesebb peldat akarunk latni, akkor a
   /usr/share/examples/ppp/ppp.conf.sample es
   /usr/share/examples/ppp/ppp.linkup.sample allomanyokban a pmdemand
   bejegyzest nezzu:k meg.

     --------------------------------------------------------------

      27.2.1.2.3. A bejo:vo" hivasok fogadasa

   Amikor egy helyi halozathoz csatlakozo gepen akarjuk a ppp
   programot beallitani a bejo:vo" hivasok fogadasara, akkor azt is
   el kell do:ntenu:nk, hogy engedelyezzu:k-e a csomagok
   tovabbku:ldeset a belso" halozat fele. Amennyiben igen, akkor a
   becsatlakozo gepenek a belso" halozatunkon ki kell osztani egy
   ku:lo:n cimet es az /etc/ppp/ppp.conf allomanyban, es meg kell
   adnunk az enable proxy parancsot. Emellett meg az /etc/rc.conf
   allomanyban se feleljtsu:k el megadni a ko:vetkezo" sort:

 gateway_enable="YES"

     --------------------------------------------------------------

      27.2.1.2.4. Melyik getty?

   A FreeBSD beallitasa betarcsazos kapcsolatokhoz nagyon jol
   bemutatja a betarcsazos szolgaltatasok beallitasat a getty(8)
   segitsegevel.

   A getty helyett egyebkent az mgetty, a getty egy u:gyesebb
   valtozata is hasznalhato, ami kifejezetten a betarcsazos
   vonalakhoz keszu:lt.

   A mgetty hasznalatanak to:bbek ko:zt az egyik elo"nye, hogy
   aktivan tartja a kapcsolatot a modemekkel, tehat hogy ha az
   /etc/ttys allomanyban letiltjuk a modemet, akkor nem is fog
   valaszolni a hivasokra.

   Emellett az mgetty keso"bbi valtozatai (a 0.99 beta valtozatatol
   kezdve) meg a PPP folyamok automatikus eszleleset is tamogatjak,
   ezaltal a kliensek szkriptek nelku:l is kepesek elerni a
   szerveru:nket.

   Ha erro"l to:bbet akarunk megtudni, akkor az mgetty paranccsal
   kapcsolatban olvassuk el Az mgetty es az AutoPPP cimu" szakaszt.

     --------------------------------------------------------------

      27.2.1.2.5. A PPP engedelyei

   A ppp parancsot altalaban root felhasznalokent kell futtatni. Ha
   viszont a ppp parancsot tetszo"leges felhasznaloval akarjuk
   szerver modban futtatni az imentiek szerint, akkor ahhoz fel kell
   vennu:nk az /etc/group allomanyban szereplo" network csoportba.

   Ezeken kivu:l meg az allow paranccsal is engedelyeznu:nk kell
   konfiguracios allomany egy vagy to:bb reszenek elereset is:

 allow users fred mary

   Ha ezt a parancsot a default bejegyzesnel adjuk meg, akkor az igy
   megadott felhasznalok mindenhez hozza tudnak ferni.

     --------------------------------------------------------------

      27.2.1.2.6. PPP shellek a dinamikus IP-cimek hasznaloinak

   Hozzunk letre egy /etc/ppp/ppp-shell nevu" allomanyt, amelyben a
   ko:vetkezo"k szerepelnek:

 #!/bin/sh
 IDENT=`echo $0 | sed -e 's/^.*-\(.*\)$/\1/'`
 CALLEDAS="$IDENT"
 TTY=`tty`

 if [ x$IDENT = xdialup ]; then
         IDENT=`basename $TTY`
 fi

 echo "PPP for $CALLEDAS on $TTY"
 echo "Starting PPP for $IDENT"

 exec /usr/sbin/ppp -direct $IDENT

   Ez a szkript legyen vegrehajthato. Ezutan az alabbi paranccsal
   ppp-dialup neven keszitsu:nk egy szimbolikus linket erre a
   szkriptre:

 # ln -s ppp-shell /etc/ppp/ppp-dialup

   Ez a szkript lesz az o:sszes betarcsazo felhasznalonk shellje. A
   most ko:vetkezo" pelda az /etc/passwd allomanyban szereplo",
   pchilds nevu" PPP felhasznalo bejegyzeset mutatja be (ne
   felejtsu:k el, hogy soha ne ko:zvetlenu:l szerkesszu:k a
   jelszavakat tarolo allomanyt, hanem a vipw(8) segitsegevel).

 pchilds:*:1011:300:Peter Childs PPP:/home/ppp:/etc/ppp/ppp-dialup

   Hozzunk letre egy /home/ppp nevu" ko:nyvtarat a ko:vetkezo" barki
   altal olvashato 0 byte-os allomanyokkal:

 -r--r--r--   1 root     wheel           0 May 27 02:23 .hushlogin
 -r--r--r--   1 root     wheel           0 May 27 02:22 .rhosts

   Ezek hatasara az /etc/motd allomany tartalma nem jelenik meg.

     --------------------------------------------------------------

      27.2.1.2.7. PPP shellek a statikus IP-cimek hasznaloinak

   Az imentiekhez hasonlo modon keszitsu:k el a ppp-shell allomanyt,
   es mindegyik statikus IP-vel rendelkezo" hozzafereshez csinaljunk
   egy szimbolikus linket a ppp-shell szkriptre.

   Peldaul, ha harom betarcsazos u:gyfelu:nk van, fred, sam es mary,
   feleju:k 24 bites CIDR halozatokat ko:zvetitu:nk, akkor a
   ko:vetkezo"ket kell begepelnu:nk:

 # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-fred
 # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-sam
 # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-mary

   A fentebb szereplo" betarcsazos felhasznalok elereseihez tartozo
   shelleket allitsuk be az itt letrehozott szimbolikus linkekre (igy
   tehat mary shellje az /etc/ppp/ppp-mary lesz).

     --------------------------------------------------------------

      27.2.1.2.8. A ppp.conf beallitasa a dinamikus IP-cimek
      hasznaloinak

   Az /etc/ppp/ppp.conf allomanyban a ko:vetkezo" sorok
   valamelyikenek kellene szerepelnie:

 default:
   set debug phase lcp chat
   set timeout 0

 ttyd0:
   set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
   enable proxy

 ttyd1:
   set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
   enable proxy

     Megjegyzes: A bentebb kezdett sorokat mi is kezdju:nk bentebb.

   A default: szakasz minden kapcsolat eseten beto:lto"dik. Az
   /etc/ttys allomanyban engedelyezett mindegyik betarcsazos vonal
   letrehoz a fenti ttyd0: szakaszhoz hasonlo bejegyzest. Minden
   vonal kap egy egyedi IP-cimet a dinamikus felhasznalok szamara
   szant cimtartomanybol.

     --------------------------------------------------------------

      27.2.1.2.9. A ppp.conf beallitasa a statikus IP-vel rendelkezo"k
      szamara

   A /usr/share/examples/ppp/ppp.conf allomanyban szereplo" tartalom
   mellett az o:sszes statikus kiosztasu IP-cimmel rendelkezo"
   betarcsazo felhasznalohoz meg hozza kell tennu:nk egy szakaszt. A
   peldankban ezek tovabbra is fred, sam es mary.

 fred:
   set ifaddr 203.14.100.1 203.14.101.1 255.255.255.255

 sam:
   set ifaddr 203.14.100.1 203.14.102.1 255.255.255.255

 mary:
   set ifaddr 203.14.100.1 203.14.103.1 255.255.255.255

   Amennyiben szu:kseges, az /etc/ppp/ppp.linkup tartalmazhat tovabbi
   utvalasztasi informaciokat is az egyes statikus IP-cimmel
   rendelkezo" felhasznalokhoz. A lentebb bemutatott sor a kliens ppp
   o:sszeko:tettesen keresztu:l vesz fel egy utvonalat a
   203.14.101.0/24 halozat fele.

 fred:
   add 203.14.101.0 netmask 255.255.255.0 HISADDR

 sam:
   add 203.14.102.0 netmask 255.255.255.0 HISADDR

 mary:
   add 203.14.103.0 netmask 255.255.255.0 HISADDR

     --------------------------------------------------------------

      27.2.1.2.10. Az mgetty es az AutoPPP

   Ha az mgetty programot az AUTO_PPP beallitassal forditjuk le,
   akkor azzal az mgetty kepesse valik a PPP kapcsolatok LCP fazisat
   eszlelni es magatol letrehozni hozza egy ppp shellt. Mivel az
   alapertelmezett nev/jelszo paros azonban ilyenkor nem jelenik meg,
   a felhasznalokat a PAP vagy a CHAP protokollon keresztu:l lehet
   hitelesiteni.

   Ez a szakasz most feltetelezi, hogy a sikeresen beallitottuk,
   leforditottuk es telepitettu:k az mgetty valamelyik (0.99 beta
   vagy keso"bbi) valtozatat az AUTO_PPP opcio engedelyezesevel.

   Az /usr/local/etc/mgetty+sendfax/login.config allomanyban ne
   felejtsu:k elleno"rizni, hogy szerepel a ko:vetkezo":

 /AutoPPP/ -     -                     /etc/ppp/ppp-pap-dialup

   Ezzel utasitjuk az mgetty programot arra, hogy az eszlelt PPP
   kapcsolatokhoz futtassa le a ppp-pap-dialup szkriptet.

   Hozzunk letre az /etc/ppp/ppp-pap-dialup nevu" allomanyt, amelyben
   majd a ko:vetkezo"k fognak szerepelni (az allomany legyen
   vegrehajthato):

 #!/bin/sh
 exec /usr/sbin/ppp -direct pap$IDENT

   Az /etc/ttys allomanyban engedelyezett o:sszes betarcsazos
   vonalhoz keszitsu:k el a megfelelo" bejegyzest az
   /etc/ppp/ppp.conf allomanyban. Ezek remeku:l meg fognak ferni az
   iment keszitett definiciokkal.

 pap:
   enable pap
   set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
   enable proxy

   Minden olyan felhasznalonak, aki ezzel a modszerrel jelentkezik
   be, szu:ksege lesz egy nev/jelszo kombinaciora az
   /etc/ppp/ppp.secret allomanyban, vagy az alabbi beallitas
   megadasaval valaszthatjuk azt is, hogy a felhasznalokat az
   /etc/passwd allomanyon keresztu:l a PAP protokoll segitsegevel
   azonositjuk.

 enable passwdauth

   Ha statikus IP-cimet akarunk kiosztani nemely felhasznaloknak,
   akkor az /etc/ppp/ppp.secret allomanyban ezt megadhatjuk a
   harmadik parameternek. Erro"l bo"vebben a
   /usr/share/examples/ppp/ppp.secret.sample allomanyban lathatunk
   peldat.

     --------------------------------------------------------------

      27.2.1.2.11. A Microsoft kiterjesztesei

   A PPP ugy is beallithato, hogy keresre DNS es NetBIOS tipusu
   nevfeloldashoz is szolgaltasson informaciokat.

   A PPP 1.x valtozataval ugy lehet engedelyezni ezeket a
   kiterjeszteseket, ha az /etc/ppp/ppp.conf allomany megfelelo"
   reszeibe felvesszu:k a ko:vetkezo" sorokat:

 enable msext
 set ns 203.14.100.1 203.14.100.2
 set nbns 203.14.100.5

   A PPP masodik es keso"bbi valtozataiban pedig:

 accept dns
 set dns 203.14.100.1 203.14.100.2
 set nbns 203.14.100.5

   Ezzel a kliens megkapja az elso"dleges es masodlagos nevszerverek
   cimeit, valamint a NetBIOS nevszervert.

   Ha a masodik es az azt ko:veto" verziokban a set dns sort
   elhagyjuk, akkor a PPP az /etc/resolv.conf allomanyban talalhato
   ertekeket fogja hasznalni.

     --------------------------------------------------------------

      27.2.1.2.12. A PAP es CHAP hitelesites

   Egyes internet-szolgaltatok ugy allitjak be a rendszeru:ket, hogy
   a kapcsolat felepitese soran a hitelesites a PAP vagy CHAP
   mechanizmusok valamelyikevel to:rtenik. Ilyenkor a szolgaltato nem
   egy login: sorral fogja bekerni a szu:kseges adatokat, hanem
   ko:zvetlenu:l a PPP kapcsolatot kezdi el hasznalni.

   A PAP nem olyan biztonsagos, mint a CHAP, de itt a biztonsag nem
   is annyira fontos, mivel a jelszavak, amelyeket ugyan a PAP
   titkositatlan formaban ku:ld tovabb, csak egy soros vonalon
   haladnak at. A rossz indulatu tamadok itt nem sok mindent tudnak
   "lehallgatni".

   A PPP statikus IP-cimmel es a PPP dinamikus IP cimmel cimu"
   szakaszokhoz kepest a ko:vetkezo" modositasokat kell elvegeznu:nk:

 13      set authname AFelhasznaloiNevem
 14      set authkey AJelszavam
 15      set login

   13. sor:

           Ebben a sorban adjuk meg a PAP/CHAP felhasznaloi
           nevu:nket, amelyet AFelhasznaloiNevem helyett kell beirni.

   14. sor:

           Ebben a sorban adjuk meg a PAP/CHAP jelszavunkat,
           AJelszavam helyett. Szandenkunk egyertelmu"sitese
           erdekeben ezek mellett meg egy tovabbi sort is erdemes
           felvennu:nk, tehat:

 16      accept PAP

           vagy

 16      accept CHAP

           Alapertelmezes szerint a PAP es CHAP is egyarant
           elfogadott.

   15. sor:

           A PAP es CHAP alkalmazasakor altalaban nem is kell
           bejelentkeznu:nk a szolgaltato szerverere. Ezert a "set
           login" parancsnal hasznalt karakterlancot le is kell
           tiltanunk.

     --------------------------------------------------------------

      27.2.1.2.13. A ppp beallitasainak megvaltoztatasa menet ko:zben

   A hatterben futo ppp programhoz menet ko:zben is tudunk beszelni,
   de csak olyankor, amikor az ehhez szu:kseges portot megadtuk. Ezt
   ugy tudjuk megtenni, ha beallitasok ko:ze felvesszu:k az alabbit:

 set server /var/run/ppp-tun%d DiagnosticPassword 0177

   Igy a PPP az elo"re megadott UNIX tartomanybeli socketen
   keresztu:l fogja varni a kapcsolodasunkat, es a konkret
   hozzafereshez jelszot ker. A nevben szereplo" %d a hasznalatban
   levo" tun eszko:z sorszamat jelo:li.

   Miutan a csatlakozas beallitodott, a szkriptekben a pppctl(8)
   program hasznalhato a futo program vezerlesehez.

     --------------------------------------------------------------

    27.2.1.3. A PPP halozati cimforditasi kepessegenek kihasznalasa

   A PPP kepes a rendszermag rasegitese nelku:l kepes halozati
   cimforditast vegezni. Ezt a leheto"seget a ko:vetkezo" sor
   hozzaadasaval tudjuk aktivalni az /etc/ppp/ppp.conf allomanyban:

 nat enable yes

   A PPP-be epitett halozati cimforditas a -nat parancssori
   parameterrel is bekapcsolhato. Az /etc/rc.conf allomanyban is
   talalhato hozza egy ppp_nat valtozo, amely alapertelmezes szerint
   engedelyezett.

   Amikor hasznaljuk ezt a leheto"seget, az /etc/ppp/ppp.conf
   allomanyban a ko:vetkezo" opciokkal engedelyezhetju:k a bejo:vo"
   kapcsolatok tovabbitasat:

 nat port tcp 10.0.0.2:ftp ftp
 nat port tcp 10.0.0.2:http http

   vagy egyaltalan ne bizzunk meg a ku:lvilagban:

 nat deny_incoming yes

     --------------------------------------------------------------

    27.2.1.4. A rendszer vegso" beallitasa

   Mostanra ugyan mar beallitottuk a ppp programot, azonban meg
   nehany dolgot be kell allitanunk, mielo"tt tenylegesen nekilatnank
   hasznalni. Ezek mindegyike az /etc/rc.conf allomany modositasat
   igenyli.

   Az allomanyt fentro"l lefele fogjuk feldolgozni, de elo"tte ne
   felejtsu:nk el erteket adni a hostname= valtozonak, peldaul:

 hostname="ize.minta.com"

   Amennyiben a szolgaltatonk statikus IP-cimet es nevet biztosit
   szamunkra, az lesz a legjobb, ha itt a to"le kapott nevet adjuk
   meg.

   Keressu:k meg a network_interfaces valtozot. Ha a rendszeru:nkben
   keresre akarjuk tarcsazni a szolgaltatonkat, akkor a tun0 eszko:zt
   mindenkeppen vegyu:k fel az ertekebe, minden mas esetben pedig
   tavolitsuk el.

 network_interfaces="lo0 tun0"
 ifconfig_tun0=

     Megjegyzes: Az ifconfig_tun0 valtozonak u:res erteket kell
     megadnunk, es letre kell hoznunk egy /etc/start_if.tun0 nevu"
     allomanyt. Ebben a ko:vetkezo" sornak kell szerepelnie:

 ppp -auto arendszerem

     Ez a szkript a halozat beallitasakor fut le, es a ppp demont
     automatikus modban inditja el. Ha az adott gep egy helyi halozat
     atjaroja is egyben, akkor az -alias kapcsolot is erdemes
     megadnunk mellette. A pontosabb reszletek tekinteteben olvassuk
     el a megfelelo" man oldalt.

   Az /etc/rc.conf allomanyban a NO ertek megadasaval tiltsuk le az
   utvalasztast vegzo" program hasznalatat:

 router_enable="NO"

   Fontos, hogy a routed demon ne induljon el, mivel routed hajlamos
   to:ro:lni a ppp altal letrehozott alapertelmezett utvalasztasi
   bejegyzeseket.

   Ezenkivu:l meg a sendmail_flags valtozorol szolo sorbol is erdemes
   kivenni a -q opciot, masku:lo:nben a sendmail minden mu"velet
   megkezdese elo"tt nekiall felderiteni a halozatot, es ezzel
   meginditja a tarcsazast. Probaljuk meg igy atirni az erteket:

 sendmail_flags="-bd"

   Ezert cserebe viszont a sendmail programot a ppp kapcsolat
   letrejo:ttekor mindig utasitanunk kell, hogy ujbol elleno"rizze a
   levelezesi sort. Ezt a ko:vetkezo"k begepelesevel erhetju:k el:

 # /usr/sbin/sendmail -q

   Ugyanezt automatikusan is meg tudjuk tenni a !bg paranccsal a
   ppp.linkup allomanyban:

 1     szolgaltato:
 2       delete ALL
 3       add 0 0 HISADDR
 4       !bg sendmail -bd -q30m

   Ha nem felelne meg ez a megoldas, akkor egy "dfilter" is
   beallithato az SMTP forgalom szu"resere. A peldak ko:zo:tt
   megtalaljuk ennek pontos minkentjet.

   Ezutan mar csak a gepu:nk ujrainditasa maradt hatra. Az
   ujrainditas utan mar be is gepelhetju:k:

 # ppp

   ahol a dial szolgaltato parancs kiadasaval meg tudjuk kezdeni a
   PPP kapcsolat felepiteset, vagy a ppp programot megkerhetju:k
   arra, hogy automatikusan kezdje el, amint van kimeno" forgalom (es
   nem keszitettu:k el a start_if.tun0 szkriptet). Ekkor gepelju:k be
   ezt:

 # ppp -auto szolgaltato

     --------------------------------------------------------------

    27.2.1.5. O:sszefoglalas

   Gyorsan foglaljuk o:ssze, hogy az ppp beallitasahoz milyen lepesek
   megtetele szu:kseges az elso" alkalommal:

   A kliens oldalan:

    1. Gyo"zo"dju:nk meg rola, hogy a tun eszko:z benne van a
       rendszermagban.

    2. Elleno"rizzu:k, hogy a tunN eszko:zho:z tartozo allomany
       rendelkezesre all a /dev ko:nyvtarban.

    3. Hozzunk letre egy bejegyzest az /etc/ppp/ppp.conf allomanyban.
       A pmdemand peldabol a legto:bb szolgaltato eseteben ki tudunk
       indulni.

    4. Ha dinamikus IP-cimet kapunk, akkor az /etc/ppp/ppp.linkup
       allomanyba is vegyu:nk fel egy bejegyzest.

    5. Frissitsu:k az /etc/rc.conf allomanyunkat.

    6. Ha igeny szerint akarunk tarcsazni, akkor hozzunk letre
       start_if.tun0 neven egy szkriptet.

   A szerver oldalan:

    1. Gondoskodjunk rola, hogy a tun eszko:z tamogatasa szerepel
       rendszermagban.

    2. Gyo"zo"dju:nk meg rola, hogy a tunN eszko:z megtalalhato a
       /dev ko:nyvtarban.

    3. Az /etc/passwd allomanyban (a vipw(8) program hasznalataval)
       hozzunk letre bejegyzeseket.

    4. A felhasznalok ko:nyvtaraiban hozzunk letre egy olyan profilt,
       amely ppp -direct direct-server vagy egy ehhez hasonlo
       parancsot futtat le.

    5. Az /etc/ppp/ppp.conf allomanyban adjuk meg egy bejegyzest. A
       direct-server pelda ehhez egy remek alapot biztosit.

    6. Az /etc/ppp/ppp.linkup allomanyban hozzunk letre egy
       bejegyzest.

    7. Frissitsu:k az /etc/rc.conf allomanyunkat.

     --------------------------------------------------------------

27.3. A rendszerszintu" PPP alkalmazasa

   Egyes reszeit keszitette: Gennady B. Sorokopud es Robert Huff.

  27.3.1. A rendszerszintu" PPP beallitasa

   Mielo"tt a gepu:nko:n nekikezdu:nk a PPP beallitasanak,
   elleno"rizzu:k, hogy a pppd megtalalhato a /usr/sbin ko:nyvtarban
   es az /etc/ppp ko:nyvtar letezik.

   A pppd ket modban kepes mu"ko:dni:

    1. "klienskent" -- a gepu:nket soros vonali vagy modemes PPP
       kapcsolaton keresztu:l csatlakoztatjuk a ku:lvilaghoz

    2. "szerverkent" -- a szamitogepu:nk egy halozat resze, ahol a
       to:bbieket a PPP hasznalataval kapcsoljuk o:ssze

   Mind a ket esetben egy konfiguracios allomany tartalmat kell
   o:sszeallitanunk (ez az /etc/ppp/options vagy a ~/.ppprc, ha a
   gepu:nko:n to:bb felhasznalo is PPP-t akar hasznalni).

   Egy modemes vagy soros vonali szoftverre is szu:ksegu:nk lesz (ez
   to:bbnyire a comms/kermit), amellyel tavoli gepeket tudunk
   felhivni es feleju:k kapcsolatot felepiteni.

     --------------------------------------------------------------

  27.3.2. A pppd mint kliens

   Az alapjaul szolgalo informaciokat adta: Trev Roydhouse.

   A most ko:vetkezo" /etc/ppp/options allomannyal egy Cisco terminal
   szerverhez tudunk kapcsolodni egy PPP vonalon keresztu:l.

 crtscts         # a hardveres forgalomiranyitas engedelyezese
 modem           # modem vezerlo"vonal
 noipdefault     # a tavoli PPP szervernek kell IP-cimet adnia
                 # ha az IPCP alapu egyeztetes soran a tavoli gep nem ku:ld
                 # neku:nk IP-cimet, akkor vegyu:k ki ezt a beallitast
 passive         # LCP csomagokat varunk
 domain ppp.ize.com      # ide irjuk be a halozati nevu:nket

 :tavoli_ip    # ide kell irni a tavoli PPP szerver IP-cimet
                 # a PPP kapcsolaton keresztu:l erre fogjuk tovabbku:ldeni a csomagokat
                 # ha nem adtuk meg "noipdefault" beallitast, akkor ezt a sort
                 # irjuk at helyi_ip:tavoli_ip alakura

 defaultroute    # adjuk meg ezt a sort is, ha a PPP szerveru:nket egyben az
                 # alapertelmezett atjaronak is be akarjuk allitani

   Igy kapcsolodunk:

    1. Tarcsazzuk a tavoli gepet a Kermit (vagy barmilyen mas modemes
       program) elinditasaval, majd adjuk meg a felhasznaloi
       nevu:nket es jelszavunkat (vagy barmi mast, amivel a tavoli
       gepen engedelyezni tudjuk a PPP hasznalatat).

    2. Lepju:nk ki a Kermit programbol (anelku:l, hogy bontanank a
       vonalat).

    3. Irjuk be a ko:vetkezo"ket:

 # /usr/sbin/pppd /dev/tty01 19200

       Ne felejtsu:k el megadni a megfelelo" sebesseget es eszko:zt.

   A szamitogepu:nk most mar PPP-n keresztu:l csatlakozik. Ha
   valamilyen okbol nem sikeru:lne felepiteni a kapcsolatot, akkor
   vegyu:k fel a debug beallitast is az /etc/ppp/options allomanyba,
   majd a konzolra erkezo" u:zenetek segitsegevel probaljuk meg
   felderiteni a problema okat.

   Az alabbi /etc/ppp/pppup szkript mind a harom fazist automatikussa
   teszi:

 #!/bin/sh
 pgrep -l pppd
 pid=`pgrep pppd`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing pppd, PID=' ${pid}
         kill ${pid}
 fi
 pgrep -l kermit
 pid=`pgrep kermit`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing kermit, PID=' ${pid}
         kill -9 ${pid}
 fi

 ifconfig ppp0 down
 ifconfig ppp0 delete

 kermit -y /etc/ppp/kermit.dial
 pppd /dev/tty01 19200

   Az /etc/ppp/kermit.dial egy olyan Kermit szkript, amivel tarcsazni
   tudunk es a tavoli gepen elvegezni az o:sszes szu:kseges
   hitelesitest (a leiras vegen talalhatunk is egy ilyen szkriptet
   peldakent).

   Az alabbi /etc/ppp/pppdown szkripttel tudjuk bontani a PPP
   vonalat:

 #!/bin/sh
 pid=`pgrep pppd`
 if [ X${pid} != "X" ] ; then
         echo 'killing pppd, PID=' ${pid}
         kill -TERM ${pid}
 fi

 pgrep -l kermit
 pid=`pgrep kermit`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing kermit, PID=' ${pid}
         kill -9 ${pid}
 fi

 /sbin/ifconfig ppp0 down
 /sbin/ifconfig ppp0 delete
 kermit -y /etc/ppp/kermit.hup
 /etc/ppp/ppptest

   A /usr/etc/ppp/ppptest elinditasaval elleno"rizni tudjuk, hogy a
   pppd meg mindig fut. Ez valahogy igy nez ki:

 #!/bin/sh
 pid=`pgrep pppd`
 if [ X${pid} != "X" ] ; then
         echo 'pppd running: PID=' ${pid-NONE}
 else
         echo 'No pppd running.'
 fi
 set -x
 netstat -n -I ppp0
 ifconfig ppp0

   A vonal bontasahoz az /etc/ppp/kermit.hup szkriptet kell
   elinditanunk, amiben a ko:vetkezo" szerepelnek:

 set line /dev/tty01     ; ide irjuk be a sajat modemu:nket
 set speed 19200
 set file type binary
 set file names literal
 set win 8
 set rec pack 1024
 set send pack 1024
 set block 3
 set term bytesize 8
 set command bytesize 8
 set flow none

 pau 1
 out +++
 inp 5 OK
 out ATH0\13
 echo \13
 exit

   A kermit helyett a chat programot is hasznalhatjuk:

   A ko:vetkezo" ket allomany mar eleg egy kapcsolat letrehozasahoz
   pppd hasznalataval:

   /etc/ppp/options:

 /dev/cuad1 115200

 crtscts         # a hardveres forgalomiranyitas engedelyezese
 modem           # modemes vezerlo"vonal
 connect "/usr/bin/chat -f /etc/ppp/login.chat.script"
 noipdefault     # a tavoli PPP kiszolgalonak adnia kell egy IP-cimet
                 # ha a tavoli gep nem ku:ldi az IP-cimu:nk az IPCP alapu egyeztetes soran
                 # akkor tavolitsuk el ezt a beallitast
 passive         # LCP csomagokat varunk
 domain sajat.tartomany  # ide irjuk be a sajat tartomanynevu:nket

 :               # a tavoli PPP kiszolgalo IP-cimet tegyu:k ide
                 # ezen keresztu:l fogjuk tovabbku:ldeni a PPP kapcsolaton athalado csomagokat
                 # nem adtuk meg a "noipdefault" beallitast, akkor ezt
                 # sort irjuk at helyi_ip:tavoli_ip alakura

 defaultroute    # ez a sor akkor kell, ha a PPP szerver lesz az
                 # alapertelmezett atjaronk is

   /etc/ppp/login.chat.script:

     Megjegyzes: A most ko:vetkezo"t egyetlen sorba kell irnunk.

 ABORT BUSY ABORT 'NO CARRIER' "" AT OK ATDTtelefon.szam
   CONNECT "" TIMEOUT 10 ogin:-\\r-ogin: bejelentkezesi-azonosito
   TIMEOUT 5 sword: jelszo

   Miutan ezeket telepitettu:k es a megfelelo"keppen modositottuk,
   mar csak a pppd parancsot kell kiadnunk, valahogy igy:

 # pppd

     --------------------------------------------------------------

  27.3.3. A pppd mint szerver

   Az /etc/ppp/options allomanyban nagyjabol a ko:vetkezo"knek kell
   szerepelnie:

 crtscts                         # hardveres forgalomiranyitas
 netmask 255.255.255.0           # halozati maszk (nem ko:telezo")
 192.114.208.20:192.114.208.165  # a helyi es tavoli gepek IP-cimei
                                 # a helyi IP-nek el kell ternie az Ethernet
                                 # (vagy mas egyeb) felu:lethez tartozo cimto"l.
                                 # a tavoli IP a tavoli gephez rendelt IP-cim
 domain ppp.ize.com              # a sajat tartomanyunk
 passive                         # az LCP csomagok varasa
 modem                           # modemes vonal

   Az alabbi /etc/ppp/pppserv szkript a pppd demont szervernek
   allitja be:

 #!/bin/sh
 pgrep -l pppd
 pid=`pgrep pppd`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing pppd, PID=' ${pid}
         kill ${pid}
 fi
 pgrep -l kermit
 pid=`pgrep kermit`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing kermit, PID=' ${pid}
         kill -9 ${pid}
 fi

 # reset ppp interface
 ifconfig ppp0 down
 ifconfig ppp0 delete

 # enable autoanswer mode
 kermit -y /etc/ppp/kermit.ans

 # run ppp
 pppd /dev/tty01 19200

   A szerver leallitasara a ko:vetkezo" /etc/ppp/pppservdown
   szkriptet kell hasznalnunk:

 #!/bin/sh
 pgrep -l pppd
 pid=`pgrep pppd`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing pppd, PID=' ${pid}
         kill ${pid}
 fi
 pgrep -l kermit
 pid=`pgrep kermit`
 if [ "X${pid}" != "X" ] ; then
         echo 'killing kermit, PID=' ${pid}
         kill -9 ${pid}
 fi
 ifconfig ppp0 down
 ifconfig ppp0 delete

 kermit -y /etc/ppp/kermit.noans

   A ko:vetkezo" Kermit szkript (/etc/ppp/kermit.ans) engedelyezi
   vagy tiltja le a modem automatikus valaszadasat. Ko:ru:lbelu:l igy
   epu:l fel:

 set line /dev/tty01
 set speed 19200
 set file type binary
 set file names literal
 set win 8
 set rec pack 1024
 set send pack 1024
 set block 3
 set term bytesize 8
 set command bytesize 8
 set flow none

 pau 1
 out +++
 inp 5 OK
 out ATH0\13
 inp 5 OK
 echo \13
 out ATS0=1\13   ; "ATS0=0\13"-ra irjuk at, ha le akarjuk tiltani az
                 ; automatikus valaszadast
 inp 5 OK
 echo \13
 exit

   Az /etc/ppp/kermit.dial elnevezesu" szkriptet hasznalhatjuk arra,
   hogy tarcsazzunk tavoli gepeket es hitelesitsu:k magunkat rajtuk.
   Irjuk at az igenyeinknek megfelelo"en, tegyu:k bele a
   bejelentkezeshez szu:kseges azonositot es jelszot, illetve a
   modemu:nk es a tavoli gep valaszai szerint modositsuk az input
   utasitasokat.

 ;
 ; irjuk ide azt a com vonalat, amire a modemu:nk csatlakozik:
 ;
 set line /dev/tty01
 ;
 ; ide keru:l a modem sebessege:
 ;
 set speed 19200
 set file type binary            ; teljes 8 bites allomany-atvitel
 set file names literal
 set win 8
 set rec pack 1024
 set send pack 1024
 set block 3
 set term bytesize 8
 set command bytesize 8
 set flow none
 set modem hayes
 set dial hangup off
 set carrier auto                ; adjuk meg a SET CARRIER utasitast is, ha kell
 set dial display on             ; adjuk meg a SET DIAL utasitast is, ha kell
 set input echo on
 set input timeout proceed
 set input case ignore
 def \%x 0                       ; a bejelentkezes szamlaloja
 goto slhup

 :slcmd                          ; tegyu:k a modemet parancs modba
 echo Tegyuk a modemet parancs modba.
 clear                           ; to:ro:lju:k a be nem olvasott karaktereket a bemeneti pufferbo"l
 pause 1
 output +++                      ; a Hayes-fele helyettesitesi szekvenciak hasznalata
 input 1 OK\13\10                ; varjuk meg az OK jelzest
 if success goto slhup
 output \13
 pause 1
 output at\13
 input 1 OK\13\10
 if fail goto slcmd              ; ha a modem nem valaszol OK-val, akkor probalkozzunk ujra

 :slhup                          ; bontsuk a vonalat
 clear                           ; to:ro:lju:k ki a be nem olvasott karaktereket a bemeneti pufferbo"l
 pause 1
 echo A vonal bontasa.
 output ath0\13                  ; a kapcsolat letrejo:ttet jelzo" Hayes-parancs
 input 2 OK\13\10
 if fail goto slcmd              ; ha nincs OK valasz, akkor tegyu:k a modemet parancs modba

 :sldial                         ; tarcsazzuk a szamot
 pause 1
 echo Dialing.
 output atdt9,550311\13\10       ; ide irjuk a telefonszamot
 assign \%x 0                    ; nullazzuk le az ido"zito"t

 :look
 clear                           ; to:ro:lju:k az olvasatlan karaktereket a bemeneti pufferbo"l
 increment \%x                   ; szamoljuk a masodperceket
 input 1 {CONNECT }
 if success goto sllogin
 reinput 1 {NO CARRIER\13\10}
 if success goto sldial
 reinput 1 {NO DIALTONE\13\10}
 if success goto slnodial
 reinput 1 {\255}
 if success goto slhup
 reinput 1 {\127}
 if success goto slhup
 if < \%x 60 goto look
 else goto slhup

 :sllogin                        ; bejelentkezes
 assign \%x 0                    ; nullazzuk le az ido"zito"t
 pause 1
 echo A bejelentkezes keresese.

 :slloop
 increment \%x                   ; szamoljuk a masodperceket
 clear                           ; to:ro:lju:k az olvasatlan karaktereket a bemeneti pufferbo"l
 output \13
 ;
 ; ide irjuk be a varhato bejelentkezesi sablont:
 ;
 input 1 {Felhasznaloi nev: }
 if success goto sluid
 reinput 1 {\255}
 if success goto slhup
 reinput 1 {\127}
 if success goto slhup
 if < \%x 10 goto slloop      ; tizszer probalkozzunk a bejelentkezessel
 else goto slhup                 ; 10 sikertelen probalkozas utan bontsuk a vonalat es kezdju:k ujra

 :sluid
 ;
 ; ide irjuk be a felhasznaloi azonositonkat:
 ;
 output ppp-login\13
 input 1 {Jelszo: }
 ;
 ; ide tegyu:k a hozzatartozo jelszot:
 ;
 output ppp-password\13
 input 1 {Atvaltas SLIP modba.}
 echo
 quit

 :slnodial
 echo \7Nincs vonal.  Ellenorizzuk a telefonvonalat!\7
 exit 1

 ; local variables:
 ; mode: csh
 ; comment-start: "; "
 ; comment-start-skip: "; "
 ; end:

     --------------------------------------------------------------

27.4. PPP kapcsolatok hibaelharitasa

   Keszitette: Tom Rhodes.

   Ebben a szakaszban o:sszefoglalunk nehany olyan problemat, ami a
   PPP modemen keresztu:li hasznalata soran keletkezhet. Peldaul
   pontosan tisztaban kell lennu:nk azzal, hogy a tarcsazott rendszer
   milyen adatokat es hogyan fog to"lu:nk bekerni. Egyes szolgaltatok
   egy ssword promptot, mig masok egy password promptot adnak. Ha a
   ppp szkript nem illeszkedik ezekhez az elvarasokhoz, akkor nem
   tudunk bejelentkezni. A ppp csatlakozasok nyomonko:vetesenek egyik
   leggyakoribb modja a manualis kapcsolodas. A ko:vetkezo"kben ezert
   a manualis csatlakozasokra vonatkozo legszu:ksegesebb ismereteket
   mutatjuk be lepesro"l lepesre.

     --------------------------------------------------------------

  27.4.1. Az eszko:zleirok elleno"rzese

   Ha sajat rendszermagot hasznalunk, ne felejtsu:k el felvenni a
   ko:vetkezo" sort a konfiguracios allomanyba:

 device   sio

   A GENERIC rendszermag a sio eszko:zt mar alapertelmezes szerint
   tartalmazza, ezert ilyenkor mar nincs to:bb teendo"nk. Egyszeru"en
   csak a dmesg parancs kimeneteben keressu:k meg a modemes
   eszko:zho:z tartozo adatokat:

 # dmesg | grep sio

   Ennek eredmenyekeppen kapunk egy ro:vid o:sszefoglalast a sio
   tipusu eszko:zo:kro"l. Ezek lesznek a szamunkra fontos COM portok.
   Amennyiben a modemu:nk egy szabvanyos soros portkent mu"ko:dik,
   akkor a sio1 vagy COM2 neven kell keresnu:nk. Ha megtalaltuk,
   akkor nem kell uj rendszermagot forditanunk. Amikor a soros vonali
   modemu:nk a sio1 vagy COM2 porton csatlakozik DOS-ban, akkor itt a
   neki megfelelo" eszko:z a /dev/cuad1 lesz.

     --------------------------------------------------------------

  27.4.2. Kapcsolodas manualisan

   A ppp kezi iranyitasaval gyorsan, egyszeru"en es minden
   fajdalomtol mentesen tudunk csatlakozni az internethez, de
   olyankor is hasznos, ha ki akarjuk deriteni, hogy az
   internet-szolgaltatonk milyen modon kezeli a kliensek ppp
   csatlakozasait. Nos, akkor ehhez inditsuk is el a PPP alkalmazast
   a paranccsorbol. Az alabbi peldakban rendre a pelda nevvel
   hivatkozunk a PPP-t mu"ko:dteto" gepre. A ppp tehat a ppp parancs
   begepelesevel indithato:

 # ppp

   Ezzel elinditottuk a ppp programot.

 ppp ON pelda> set device /dev/cuad1

   Beallitjuk a modemu:nket, ami ebben az esetben a cuad1.

 ppp ON pelda> set speed 115200

   Beallitjuk a csatlakozas sebesseget, ami ebben az esetben 115 200
   kbit/mp.

 ppp ON pelda> enable dns

   Azt mondjuk a ppp programnak, hogy allitsa be a nevfeloldot es az
   /etc/resolv.conf allomanyt egeszitse ki a megfelelo"
   nevszerverekkel. Ha a ppp nem kepes megallapitani a gepu:nk nevet,
   akkor keso"bb ezt meg kezzel is be tudjuk allitani.

 ppp ON pelda> term

   Valtsunk "terminal" modba, igy mi iranyitjuk a modemet.

 deflink: Entering terminal mode on /dev/cuad1
 type '~h' for help

 at
 OK
 atdt123456789

   Az at paranccsal hozzuk alaphelyzetbe a modemet, majd a atdt
   paranccsal es egy telefonszam megadasaval megkezdju:k a
   szolgaltato tarcsazasat.

 CONNECT

   Ezzel jelez vissza a kapcsolodas megkezdesero"l. Ha itt barmilyen
   hardverto"l fu:ggetlen csatlakozasi problema meru:lne fel, akkor
   ezen a ponton tudunk ellene tenni valamit.

 ISP Login:felhasznalonev

   Itt kell megadnunk a felhasznaloi nevu:nket, ami megegyezik a
   szolgaltato altal adott azonositonkkal.

 ISP Pass:jelszo

   Ezuttal a jelszavunkat kell megadni, amit szinten a szolgaltato
   bocsatott rendelkezesu:nkre az azonosito mellett. Akarcsak amikor
   bejelentkezu:nk a FreeBSD-be, itt sem fog latszodni a jelszavunk.

 Shell or PPP:ppp

   Szolgaltatotol fu:ggo"en elo"fordulhat, hogy ez a sor soha nem is
   jelenik meg. Itt kerdezik meg, hogy a szolgaltatonal egy shellt
   akarunk hasznalni, vagy csak elinditani egy ppp kapcsolatot. Ebben
   a peldaban termeszetesen a ppp opciot valasztjuk, mivel egy
   internet-elo"fizetes birtokosai vagyunk.

 Ppp ON pelda>

   Figyelju:k meg, hogy az elso" p nagybetu"sse valt. Ezzel jelzi a
   program, hogy sikeresen csatlakoztunk a szolgaltatonkhoz.

 PPp ON pelda>

   Sikeresen azonositottuk magunkat a szolgaltato fele es varjuk az
   IP-cimu:nket.

 PPP ON pelda>

   Megkaptuk az IP-cimu:nket es ezzel sikeresen felepu:lt a
   kapcsolat.

 PPP ON pelda>add default HISADDR

   Itt adjuk hozza az alapertelmezett utvonalat, amire mindenkeppen
   szu:ksegu:nk van ahhoz, hogy a ku:lvilaggal is kapcsolatban
   tudjunk lepni, mivel jelenleg csak a vonal masik vegen levo" gepet
   erju:k el. Ha ezt bizonyos, mar meglevo" utvonalak miatt nem
   sikeru:l felvenni, akkor az add ele tegyu:nk egy ! jelet. Ezt
   viszont a kapcsolat felepitese elo"tt is megtehetju:k, igy menet
   ko:zben az uj utvonalat felveszi a to:bbi ko:ze.

   Ha eddig minden remeku:l ment, akkor ezen ponton mar egy elo"
   internet-kapcsolattal rendelkezu:nk, es a programot a CTRL+z
   lenyomasaval a hatterbe is tehetju:k. Ha a PPP felirat ismet a ppp
   feliratra valtana, akkor az arra utal, hogy elvesztettu:k a
   kapcsolatot. Erre nem art figyelni, mivel ezzel jelzi az aktualis
   kapcsolat allapotat. A nagybetu"s P-k jelo:lik, hogy az adott
   szinten megvan a kapcsolat a szolgaltato fele, a kisbetu"s p-k
   pedig arra utalnak, hogy azon a szinten a kapcsolat valamiert
   megszu"nt. A ppp csak ezt a ket allapotot ismeri.

     --------------------------------------------------------------

    27.4.2.1. Nyomko:vetes

   Ha ko:zvetlen vonalunk van es megsem sikeru:l kapcsolatot
   letesiteni, akkor tiltsuk le a hardveres CTS/RTS
   forgalomiranyitast a set ctsrts off paranccsal. Ez leginkabb akkor
   fordul elo", ha csatlakoztunk egy olyan terminalszerverhez, amely
   valamennyire kepes kezelni a PPP kapcsolatokat, de a PPP megall,
   mikor adatot probal irni a kommunikacios csatornara, mivel arra a
   CTS (Clear To Send -- "lehet ku:ldeni") jelzesre var, amely soha
   nem fog megerkezni. Ha megis ezt a beallitast akarjuk hasznalni,
   akkor a set accmap beallitasra is szu:ksegu:nk lesz, mivel ez kell
   bizonyos karakterek hardverfu:ggo" atku:ldesenek
   felu:lbiralasahoz, legto:bb esetben a XON/XOFF miatt. A ppp(8) man
   oldalon talalhatunk erro"l es ennek hasznalatarol reszletesebb
   leirast.

   Ha egy regebbi gyartmanyu modemu:nk van, akkor a set parity even
   beallitas alkalmazasa is javasolt. Alapertelmezes szerint ugyanis
   nincs paritas, de a regebbi modemek es (a forgalom no:vekedesevel)
   egyes szolgaltatok meg hasznaljak hibaelleno"rzesre. Ha Compuserve
   elo"fizetesu:nk van, mindenkeppen kapcsoljuk be.

   Amikor a PPP nem ter vissza parancs modba, akkor gyanithatoan az
   egyeztetesben lesz valahol problema, mivel a szolgaltato a
   kliensu:kto"l varja a kezdemenyezeset. Ezen a ponton a ~p
   paranccsal utasithatjuk a ppp programot a konfiguracios
   informaciok atku:ldesenek megkezdesere.

   Ha egyaltalan nem kapunk promptot a bejelentkezeshez, akkor nagy a
   aloszinu"sege, hogy az imenti UNIX stilusu hitelesites helyett PAP
   vagy CHAP protokollt kell hasznalnunk. A PAP vagy CHAP
   hasznalatahoz mindo:ssze a ko:vetkezo" beallitasokat kell
   megadnunk PPP programnak a terminal mod aktivalasa elo"tt:

 ppp ON pelda> set authname felhasznalonev

   ahol a felhasznalonev helyett a szolgaltatotol kapott azonositot
   kell beirnunk.

 ppp ON pelda> set authkey jelszo

   ahol a jelszo helyett a szolgaltatotol kapott jelszot kell
   megadnunk.

   Ha sikeresen csatlakoztunk, de meg nem talalunk semmilyen
   tartomanynevet, akkor a ping(8) es IP-cim segitsegevel tudjuk
   megvizsgalni, hogy mu"ko:do"kepes-e a kapcsolat. Ha 100 szazalekos
   (100%) csomagvesztest (packet loss) tapasztalunk, akkor szinte
   biztos, hogy nincs meg az alapertelmezett utvonal. Nezzu:k meg
   ujra, hogy az add default HISADDR beallitast megadtuk-e a
   kapcsolat felepitesekor. Ha viszont mar el tudunk erni egy tavoli
   IP-cimet, akkor nagyon valoszinu", hogy az /etc/resolv.conf
   allomanyba nem keru:lt bele a megfelelo" nevfeloldo cime. Az
   emlitett allomanynak valahogy igy kellene kineznie:

 domain minta.com
 nameserver x.x.x.x
 nameserver y.y.y.y

   Ahol az x.x.x.x es y.y.y.y cimeket a szolgaltatonk nevszervereinek
   cimevel kell behelyettesiteni. Ez nem minden esetben talalhato meg
   az elo"fizeto"i szerzo"desben, de ha felhivjuk a szolgaltatonkat,
   akkor minden bizonnyal elaruljak ezeket a cimeket.

   A syslog(3) is alkalmas a PPP kapcsolatok naplozasara. Ehhez
   csupan ennyit kell megadnunk az /etc/syslog.conf allomanyban:

 !ppp
 *.*     /var/log/ppp.log

   A legto:bb esetben ez a leheto"seg mar eleve adott.

     --------------------------------------------------------------

27.5. A PPP hasznalata Ethernet felett (PPPoE)

   Keszitette (a
   http://node.to/freebsd/how-tos/how-to-freebsd-pppoe.html alapjan):
   Jim Mock.

   Ebben a szakaszban azt ismertetju:k, hogyan allitsuk be a PPP-t
   Ethernet felett (PPP over Ethernet, PPPoE).

     --------------------------------------------------------------

  27.5.1. A rendszermag beallitasa

   A PPPoE mu"ko:desehez most mar semmilyen modositasra nincs
   szu:kseg a rendszermag beallitasaiban. Amennyiben a hozza
   szu:kseges Netgraph tamogatas nem talalhato a rendszermagban,
   akkor azt a ppp o:nmu"ko:do"en beto:lti.

     --------------------------------------------------------------

  27.5.2. A ppp.conf beallitasa

   Ime egy mu"ko:do" ppp.conf allomany:

 default:
   set log Phase tun command # itt akar egy reszletesebb naplozast is be tudunk allitani
   set ifaddr 10.0.0.1/0 10.0.0.2/0

 a_szolgaltato_neve:
   set device PPPoE:xl1 # az xl1 helyere irjuk be a sajat Ethernet eszko:zu:nket
   set authname FELHASZNALONEV
   set authkey JELSZO
   set dial
   set login
   add default HISADDR

     --------------------------------------------------------------

  27.5.3. A ppp futtatasa

   root felhasznalokent adjuk ki az alabbi parancsot:

 # ppp -ddial a_szolgaltato_neve

     --------------------------------------------------------------

  27.5.4. A ppp inditasa a rendszerinditas soran

   Az /etc/rc.conf allomanyba vegyu:k fel a ko:vetkezo"ket:

 ppp_enable="YES"
 ppp_mode="ddial"
 ppp_nat="YES"   # csak akkor, ha cimforditas kell a helyi halozaton, masku:lo:nben "NO"
 ppp_profile="a_szolgaltato_neve"

     --------------------------------------------------------------

  27.5.5. A szolgaltatasi cimkek hasznalata

   Bizonyos esetekben szolgaltatasi cimket (service tag) is
   hasznalnunk kell a kapcsolat letrehozasahoz. A szolgaltatasi
   cimkek segitsegevel tudjuk megku:lo:nbo:ztetni az adott halozaton
   elerheto" ku:lo:nbo:zo" PPPoE szervereket.

   A szolgaltatotol kapott dokumentacioban szerepelnie kell minden
   ehhez kapcsolodo informacionak. Amennyiben nem talaljuk,
   erdeklo"dju:nk a szolgaltatonal.

   Utolso remenykent megprobalhatjuk a Portgyu"jtemenyben talalhato
   Roaring Penguin PPPoE nevu" program altal javasolt modszert. Ennel
   vegyu:k azonban szamitasba, hogy felre tudja programozni a
   modemu:nket, amito"l akar hasznalhatatlanna is valhat, ezert
   ketszer is gondoljuk meg, mielo"tt hasznalni kezdju:k. Egyszeru"en
   csak tegyu:k fel a szolgaltatotol a modemu:nk melle kapott
   szoftvert. Ezutan lepju:nk be a program System menu:jebe. Itt kell
   lennie a megfelelo" profilnak, ami altalaban az ISP.

   A profil neve (a szolgaltatas cimkeje) a ppp.conf allomanyban a
   PPPoE bejegyzes reszekent jelenik meg a set device parancsban
   (ennek pontos reszleteit lasd a ppp(8) man oldalon). Tehat
   nagyjabol igy nez ki:

 set device PPPoE:xl1:ISP

   Az xl1 eszko:z nevet ne felejtsu:k el a megfelelo" Ethernet
   kartyahoz tartozo eszko:z nevere kicserelni.

   Az ISP helyett pedig irjuk be az iment kideritett profil nevet.

   A temaval kapcsolatban az alabbi helyeken talalhatunk tovabbi
   informaciokat:

     * Cheaper Broadband with FreeBSD on DSL, irta: Renaud Waldura
       (angolul).

     * Nutzung von T-DSL und T-Online mit FreeBSD, irta: Udo
       Erdelhoff (nemetu:l).

     --------------------------------------------------------------

  27.5.6. PPPoE es a 3Com(R) HomeConnect(R) ADSL Modem Dual Link

   Ez a modem nem felel meg az RFC 2516 elo"irasainak (A Method for
   transmitting PPP over Ethernet (PPPoE), irta: L. Mamakos, K. Lidl,
   J. Evarts, D. Carrel, D. Simone es R. Wheeler). Helyette az
   Ethernet keretekben eltero" csomagtipus kodokat hasznal. A
   3Com-nal panaszkodjunk, ha szerintu:nk is be kellene tartaniuk a
   PPPoE specifikaciojat.

   A FreeBSD is csak akkor lesz kepes egyu:ttmu"ko:dni ezzel az
   eszko:zzel, ha beallitjuk a megfelelo" sysctl valtozot. Ezt a
   rendszerinditas soran automatikusan meg tudjuk tenni az
   /etc/sysctl.conf modositasaval:

 net.graph.nonstandard_pppoe=1

   vagy ko:zvetlenu:l az alabbi paranccsal:

 # sysctl net.graph.nonstandard_pppoe=1

   Sajnos, mivel ez egy rendszerszintu" beallitas, ezert a 3Com
   HomeConnect(R) ADSL Modem es mas normalis PPPoE kliens vagy
   szerver egyszerre nem hasznalhato.

     --------------------------------------------------------------

27.6. PPP ATM felett (PPPoA)

   Most a PPP ATM feletti (PPP over ATM, PPPoA) beallitasat fogjuk
   bemutatni. A PPPoA az europai DSL szolgaltatok ko:reben igen nagy
   nepszeru"segnek o:rvend.

     --------------------------------------------------------------

  27.6.1. PPPoA hasznalata az Alcatel SpeedTouch(TM) USB-vel

   Az ilyen eszko:zo:kho:z tartozo PPPoA tamogatas a FreeBSD-ben
   portkent all rendelkezesre, mivel az ehhez szu:kseges firmware
   csak az Alcatel licencelesi feltetelei szerint terjesztheto",
   ezert nem lehet resze az alap FreeBSD rendszernek.

   A szoftver telepitesehez ezert a Portgyu"jtemenyt kell
   hasznalnunk. Telepitsu:k a net/pppoa portot es ko:vessu:k a
   mellekelt utasitasokat.

   Sok mas USB-s eszko:zho:z hasonloan az Alcatel SpeedTouch(TM)
   USB-nek a gepu:nkro"l kell leto:ltenie a mu"ko:desehez szu:kseges
   firmware-t. Ez a folyamat FreeBSD alatt automatizalhato, tehat ez
   a masolas minden esetben megto:rtenik, amikor az eszko:zt az USB
   portra csatlakoztatjuk. Ehhez az /etc/usbd.conf allomanyba a
   ko:vetkezo" adatokat kell beletennu:nk. Az allomanyt root
   felhasznalokent tudjuk csak szerkeszteni.

 device "Alcatel SpeedTouch USB"
     devname "ugen[0-9]+"
     vendor 0x06b9
     product 0x4061
     attach "/usr/local/sbin/modem_run -f /usr/local/libdata/mgmt.o"

   Az usbd, vagyis az USB demon engedelyezesehez az /etc/rc.conf
   allomanyba tegyu:k bele az alabbit:

 usbd_enable="YES"

   Emellett meg a ppp kapcsolatot is be tudjuk allitani az inditas
   soran. Ehhez mindo:ssze a ko:vetkezo" sort kell megadnunk az
   /etc/rc.conf allomanyban. Ismet megemlitju:k, hogy ezt a
   mu"veletet csak a root felhasznaloval tudjuk vegrehajtani.

 ppp_enable="YES"
 ppp_mode="ddial"
 ppp_profile="adsl"

   Ezutan ugy tudjuk szora birni a kapcsolatot, ha a net/pppoa
   porthoz mellekelt ppp.conf allomanyt hasznaljuk fel kiindulaskent.

     --------------------------------------------------------------

  27.6.2. Az mpd hasznalata

   Az mpd segitsegevel to:bbfele szolgaltatashoz, ko:ztu:k a PPTP-hez
   hozza tudunk ferni. Az mpd a Portgyu"jtemenyben net/mpd neven
   talalhato meg. Sok ADSL modemnek szu:ksege van egy PPTP tunnelre
   ko:zte es gep ko:zo:tt. Ilyen modem peldaul az Alcatel SpeedTouch
   Home is.

   Elo"szo:r magat a portot kell telepitenu:nk, majd ezutan mar be
   tudjuk allitani az mpd-t a sajat es a szolgaltatonk igenyei
   szerint. A port a rengeteg leirassal megtu"zdelt minta
   konfiguracios allomanyait a PREFIX/etc/mpd/ ko:nyvtarba teszi. Itt
   a PREFIX azt a ko:nyvtarat jelo:li, ahova a portok keru:lnek. Ez
   alapbol a /usr/local/. Az mpd beallitasarol szolo teljes
   dokumentacio a telepites utan elerheto" HTML formatumban a
   PREFIX/share/doc/mpd/ ko:nyvtarban. Ime egy pelda az mpd
   beallitasara ADSL kapcsolatok eseteben. Az ezzel kapcsolatos
   beallitasaink ket allomanyra bomlanak, melyek ko:zu:l az elso" az
   mpd.conf:

 default:
     load adsl

 adsl:
     new -i ng0 adsl adsl
     set bundle authname felhasznalonev (1)
     set bundle password jelszo (2)
     set bundle disable multilink

     set link no pap acfcomp protocomp
     set link disable chap
     set link accept chap
     set link keep-alive 30 10

     set ipcp no vjcomp
     set ipcp ranges 0.0.0.0/0 0.0.0.0/0

     set iface route default
     set iface disable on-demand
     set iface enable proxy-arp
     set iface idle 0

     open

   (1)
           A felhasznaloi azonosito, amellyel a szolgaltato fele
           hitelesitju:k magunkat.
   (2)
           Az azonositohoz tartozo jelszo, amelyet szinten a
           szolgaltatol kaptunk.

   Az mpd.links allomany tartalmazza a felepitendo" kapcsolatra vagy
   kapcsolatokra vonatkozo informaciokat. Peldaul az elo"bbiekhez
   tartozo mpd.links tartalma ez:

 adsl:
     set link type pptp
     set pptp mode active
     set pptp enable originate outcall
     set pptp self 10.0.0.1 (1)
     set pptp peer 10.0.0.138 (2)

   (1)
           A FreeBSD-s szamitogepu:nk cime, ahonnan az mpd indul.
   (2)
           Az ADSL modemu:nk IP-cime. Az Alcatel SpeedTouch Home
           eseten ez a cim alapertelmezes szerint a 10.0.0.138.

   A kapcsolat ezek utan pillanatok alatt felepitheto", ha a root
   felhasznaloval kiadjuk a ko:vetkezo" parancsot:

 # mpd -b adsl

   A kapcsolat allapotat a ko:vetkezo" paranccsal tudjuk ezutan
   elleno"rizni:

 % ifconfig ng0
 ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500
      inet 216.136.204.117 --> 204.152.186.171 netmask 0xffffffff

   FreeBSD alatt az mpd hasznalata ajanlott az ADSL szolgaltatasok
   eleresehez.

     --------------------------------------------------------------

  27.6.3. A pptpclient hasznalata

   FreeBSD alatt a net/pptpclient segitsegevel is tudunk PPPoA tipusu
   szolgaltatasokhoz kapcsolodni.

   A net/pptpclient felhasznalasaval ugy tudunk DSL szolgaltatasokat
   elerni, ha feltelepitju:k a hozzatartozo portot vagy csomagot,
   majd modositjuk az /etc/ppp/ppp.conf allomanyt. Mind a ket
   mu"veletet csak root felhasznalokent tudjuk lebonyolitani. Ehhez
   egy ppp.conf allomanyt lentebb adtunk meg. A ppp.conf allomanyban
   talalhato tovabbi beallitasi leheto"segekro"l a ppp(8) man oldalon
   olvashatunk.

 adsl:
  set log phase chat lcp ipcp ccp tun command
  set timeout 0
  enable dns
  set authname felhasznalonev (1)
  set authkey jelszo (2)
  set ifaddr 0 0
  add default HISADDR

   (1)
           A DSL szolgaltatonktol kapott felhasznaloi nev.
   (2)
           Az elo"fizeteshez tartozo jelszo.

     Figyelem: Mivel az elo"fizeteshez tartozo jelszot a ppp.conf
     allomanyba titkositatlan formaban kell szerepeltetnu:nk, ezert
     gondoskodjunk rola, hogy senki sem kepes olvasni a tartalmat. A
     most ko:vetkezo" parancsokkal beallitjuk, hogy ez az allomany
     csak a root felhasznalo szamara legyen olvashato. A reszletekert
     lasd a chmod(1) es chown(8) man oldalakat.

 # chown root:wheel /etc/ppp/ppp.conf
 # chmod 600 /etc/ppp/ppp.conf

   Ezzel a paranccsal a DSL utvalasztonk fele nyitunk egy tunnelt a
   PPP kapcsolathoz. Az Ethernetes DSL modemek altalaban egy elo"re
   beallitott helyi halozati IP-cimmel rendelkeznek, amelyhez tudunk
   csatlakozni. Az Alcatel SpeedTouch Home eseteben ez a cim a
   10.0.0.138. Az utvalasztohoz adott dokumentacioban keressu:k meg,
   hogy az eszko:zu:nkho:z konkretan milyen cim tartozik. A tunnel
   megnyitasahoz es a PPP kapcsolat meginditasahoz a ko:vetkezo"
   parancsot kell kiadnunk:

 # pptp cim adsl

     Tipp: Az imenti parancs vegere meg erdemes odatenni az "et"
     jelet ("&") is, mivel igy a pptp mu"ko:deset a hatterben
     folytatja.

   A parancs hatasara a virtualis tunnelt megtestesito" tun eszko:z
   jo:n letre a pptp es ppp programok ko:zo:tt. Miutan visszakaptuk a
   parancssort, vagy a pptp program megero"sitette a kapcsolodas
   sikeresseget, a keletkezett jaratot igy tudjuk elleno"rizni:

 % ifconfig tun0
 tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
         inet 216.136.204.21 --> 204.152.186.171 netmask 0xffffff00
         Opened by PID 918

   Ha nem tudnank valamiert csatlakozni, akkor elo"szo:r nezzu:k meg
   az utvalasztonk beallitasait, ami altalaban a telnet vagy egy
   bo:ngeszo" segitsegevel elerheto". Ha meg mindig nem vagyunk
   kepesek csatlakozni, akkor a pptp parancs kimeneteben es ppp
   /var/log/ppp.log neven elerheto" naplojaban kereshetu:nk arulkodo
   nyomokat.

     --------------------------------------------------------------

27.7. A SLIP hasznalata

   Eredetileg keszitette: Satoshi Asami. A hozzavalokat biztositotta:
   Guy Helmer es Piero Serini.

     --------------------------------------------------------------

  27.7.1. A SLIP kliensek beallitasa

   A ko:vetkezo"kben azt mutatjuk be, hogy egy FreeBSD-s gepet mikent
   tudunk egy halozaton statikus nevvel beallitani a SLIP
   hasznalataval. A dinamikus halozati nevek hasznalatakor (vagyis
   amikor a cimu:nk minden egyes tarcsazaskor megvaltozhat) egy
   valamivel bonyolultabb beallitasra van szu:ksegu:nk.

   Elo"szo:r is allapitsuk meg, hogy a modemu:nk melyik soros portra
   csatlakozik. Sokan /dev/modem neven egy szimbolikus linket hoznak
   letre a valodi eszko:zre, peldaul a /dev/cuadN leirora. Ennek
   ko:szo:nheto"en az eszko:z tenyleges neveto"l el tudunk
   vonatkoztatni es soha nem kell modositanunk semmit, ha a modemet
   peldaul egy masik portra kell atraknunk. Ugyanis ko:nnyeden
   kacifantossa tud valni a helyzet, amikor egyszerre kell
   megvaltoztatnunk egy rakat dolgot az /etc ko:nyvtarban es
   modositanunk az o:sszes .kermrc allomanyt!

     Megjegyzes: A /dev/cuad0 a COM1 port, a /dev/cuad1 a COM2 es igy
     tovabb.

   A rendszermag beallitasait tartalmazo allomanyban a ko:vetkezo"nek
   mindenkeppen szerepelnie kell:

 device   sl

   Mivel ez altalaban a GENERIC rendszermagban megtalalhato, igy ez
   nem okoz semmilyen gondot, kiveve, hogy ha korabban mar
   kito:ro:ltu:k.

     --------------------------------------------------------------

    27.7.1.1. Amiket csak egyszer kell megtenni

    1. Vegyu:k fel az otthoni gepu:nket, az atjaronkat es a
       nevszervereket az /etc/hosts allomanyba. Erre alljon itt egy
       konkret pelda:

 127.0.0.1               localhost loghost
 136.152.64.181          water.CS.Example.EDU water.CS water
 136.152.64.1            inr-3.CS.Example.EDU inr-3 slip-gateway
 128.32.136.9            ns1.Example.EDU ns1
 128.32.136.12           ns2.Example.EDU ns2

    2. Figyelju:nk oda, hogy az /etc/nsswitch.conf allomanyban
       szereplo" hosts szakaszban a dns szo elo"tt a files szonak
       kell megjelennie. Ezek nelku:l mokas dolgok tudnak to:rtenni
       rendszeru:nkben.

    3. Szerkesszu:k at az /etc/rc.conf allomanyt.

         1. A halozati nevu:nket a ko:vetkezo" sorban tudjuk megadni:

 hostname="az.en.nevem"

            Ide a gepu:nk teljes internetes halozati nevet kell
            beirnunk.

         2. Az alapertelmezett atjarot az alabbi sor modositasaval
            tudjuk beallitani ugy, hogy a

 defaultrouter="NO"

            valtozo erteket atirjuk:

 defaultrouter="slip-gateway"

    4. Keszitsu:k el az /etc/resolv.conf allomanyt, amelyben majd a
       ko:vetkezo"k legyenek:

 domain CS.Example.EDU
 nameserver 128.32.136.9
 nameserver 128.32.136.12

       Lathato, hogy ezek a nevfeloldasert felelo"s szerverek cimei.
       Termeszetesen a tenylegesen beirando tartomany (domain) neve
       es a nevszerverek cimei mindig az adott ko:rnyezetu:nkto"l
       fu:ggenek.

    5. Allitsuk be egy jelszot a root es toor felhasznaloknak (es
       mindenki masnak, akinek meg nem lenne).

    6. Inditsuk ujra a szamitogepu:nket es utana gyo"zo"dju:nk meg
       rola, hogy a megfelelo" halozati nevvel rendelkezik.

     --------------------------------------------------------------

    27.7.1.2. A SLIP kapcsolatok felepitese

    1. Tarcsazzunk es gepelju:k be a slip parancsot, majd ezt
       ko:veto"en a gepu:nk nevet es a jelszot. Ez leginkabb a
       konkret ko:rnyezetto"l fu:gg. Ha a Kermit nevu" programot
       hasznaljuk, akkor egy ilyen szkripttel is probalkozhatunk:

 # a kermit beallitasa
 set modem hayes
 set line /dev/modem
 set speed 115200
 set parity none
 set flow rts/cts
 set terminal bytesize 8
 set file type binary
 # a ko:vetkezo" makro felelo"s a tarcsazasert es a bejelentkezesert
 define slip dial 643-9600, input 10 =>, if failure stop, -
 output slip\x0d, input 10 Azonosito:, if failure stop, -
 output silvia\x0d, input 10 Jelszo:, if failure stop, -
 output ***\x0d, echo \x0aCONNECTED\x0a

       Termeszetesen a felhasznaloi nevet es a jelszot a sajatunkra
       kell benne kicserelnu:nk. Miutan ezzel is megvagyunk, a Kermit
       paranccsoraban a csatlakozashoz egyszeru"en csak irjuk be,
       hogy slip.

         Megjegyzes: Nem javasoljuk, hogy az allomanyrendszeren a
         jelszavakat titkositatlan formaban taroljuk. Mindeki csak a
         sajat felelo"ssegere tegyen ilyet.

    2. Hagyjuk el a Kermit programot (a Ctrl-z
       billentyu"kombinacioval barmikor fel tudjuk fu:ggeszteni a
       futasat) es root felhasznalokent irjuk be a ko:vetkezo"t:

 # slattach -h -c -s 115200 /dev/modem

       Ha ezutan mar kepesek vagyunk a ping paranccsal elerni az
       utvalaszto masik oldalan talalhato gepet, akkor az azt
       jelenti, hogy sikeru:lt csatlakoznunk! Ha viszont itt meg nem
       jarnank sikerrel, akkor az slattach parancsnak ne a -c
       parametert adjuk meg, hanem a -a parametert.

     --------------------------------------------------------------

    27.7.1.3. Hogyan bontsunk egy kapcsolatot

   Tegyu:k a ko:vetkezo"ket:

 # kill -INT `cat /var/run/slattach.modem.pid`

   Ez leallitja az slattach programot. Ne felejtsu:k el azonban, hogy
   ezt csak a root felhasznaloval tudjuk vegrehajtani. Ezutan
   terju:nk vissza a kermit programhoz (ha felfu:ggesztettu:k volna,
   akkor ehhez a fg parancsra lesz szu:ksegu:nk), es lepju:nk ki
   belo"le (q).

   Az slattach(8) man oldala ehhez a ifconfig sl0 down parancsot
   javasolja, amellyel lenyegeben leallitjuk a hozzatartozo
   felu:letet. Igazabol a ketto" ko:zo:tt nincs semmilyen komolyabb
   elteres (mivel az (ifconfig sl0 is ugyanezt eredmenyezi.)

   Neha elo"fordulhat, hogy a modem egyszeru"en nem hajlando eldobni
   a vonalat. Ilyen esetekben inditsuk el a kermit programot es
   lepju:nk ki megint. Masodjara altalaban mar sikeru:l.

     --------------------------------------------------------------

    27.7.1.4. Hibaelharitas

   Ha valamiert ez megsem valna be, akkor csak nyugodtan
   kerdezo"sko:dju:nk a freebsd-net levelezesi listan. A
   tapasztalatok szerint az embereknek eddig a ko:vetkezo"kkel voltak
   problemaik:

     * Az slattach meghivasakor sem a -c, sem pedig a -a parametert
       nem adtak meg. (Ez ugyan nem vegzetes hiba, de egyes
       felhasznalok szerint ez segitett megoldani a gondokat.)

     * Az sl0 helyett s10-et irtak be (egyes betu"tipusoknal ko:nnyen
       o:ssze lehet teveszteni ezeket).

     * Az ifconfig sl0 segitsegevel elleno"rizheto" a felu:let
       allapota. Peldaul ilyet lathatunk:

 # ifconfig sl0
 sl0: flags=10<POINTOPOINT>
         inet 136.152.64.181 --> 136.152.64.1 netmask ffffff00

     * Ha a ping(8) "no route to host" hibau:zenetet ad, akkor az
       utvalasztasi tablazattal van a gond. A netstat -r paranccsal
       gyorsan ki tudjuk listazni a rendszeru:nkben jelenleg
       nyilvantartott utakat:

 # netstat -r
 Routing tables
 Destination      Gateway            Flags     Refs     Use  IfaceMTU    Rtt    Netmasks:

 (root node)
 (root node)

 Route Tree for Protocol Family inet:
 (root node) =>
 default          inr-3.Example.EDU  UG          8   224515  sl0 -      -
 localhost.Exampl localhost.Example. UH          5    42127  lo0 -       0.438
 inr-3.Example.ED water.CS.Example.E UH          1        0  sl0 -      -
 water.CS.Example localhost.Example. UGH        34 47641234  lo0 -       0.438
 (root node)

       Az elo"zo" peldakat egy viszonylag forgalmas rendszerbo"l
       ragadtuk ki. A rendszeru:nko:n megjeleno" szamok a halozati
       aktivitas mertekenek fu:ggvenyei.

     --------------------------------------------------------------

  27.7.2. A SLIP szerverek beallitasa

   Ebben a leirasban igyekszu:nk bemutatni hogyan kell egy FreeBSD
   tipusu rendszer alatt SLIP szervert beallitani, ami altalaban
   annyit jelent, hogy a rendszeru:nben a tavoli SLIP kliensek
   csatlakozasakor automatikusan elinditjuk a kapcsolatokat.

     --------------------------------------------------------------

    27.7.2.1. Elo"feltetelek

   Ez a szakasz igen szakmai jellegu", ezert az olvaso reszero"l
   feltetelezu:nk a temaban nemi alapismeretet. Ez alatt alapveto"en
   a TPC/IP halozati protokollt ertju:k, ku:lo:no:s hangsullyal a
   halozatok es halozati csomopontok cimzeseen, a halozati maszkokon,
   alhalozatokon, utvalasztason, az olyan utvalasztasi protokollokon,
   mint peldaul a RIP. A SLIP beallitasa egy betarcsazos szerveren
   mindezen fogalmak ismeretet igenyli, es ha ezekkel meg nem lennenk
   tisztaban, akkor olvassuk el peldaul Craig Hunt TCP/IP Network
   Administration cimu" ko:nyvet (O'Reilly & Associates, Inc.; ISBN:
   0-937175-82-X) vagy Douglas Comer TCP/IP protokollrol szolo
   ko:nyveit.

   Mindezek mellett meg feltetelezzu:k, hogy mar beallitottuk a
   modem(ek)et es a rajtuk keresztu:li bejelentkezeshez szu:kseges
   allomanyokat. Ha meg nem keszitettu:k volna fel erre a
   rendszeru:nket, akkor a 26.4 Szakasz ad reszletes tajekoztatast a
   betarcsazos szolgaltatasok beallitasarol. A soros vonali
   eszko:zmeghajtoval kapcsolatban tovabba erdemes atolvasni a sio(4)
   oldalt, valamint a ttys(5), gettytab(5), getty(8) es init(8)
   oldalakat a bejelentkezesek modemen keresztu:li fogadasarol,
   illetve talan az stty(1) oldalt a soros port parametereinek
   megfelelo" beallitasarol (mint peldaul a clocal a ko:zvetlenu:l
   csatlakozo soros felu:letek eseteben).

     --------------------------------------------------------------

    27.7.2.2. Gyors attekintes

   A FreeBSD SLIP szerverkent altalaban a ko:vetkezo" modon u:zemel:
   a SLIP felhasznalo tarcsazza a FreeBSD-s SLIP szerveru:nket, majd
   bejelentkezik egy specalis SLIP bejelentkezesi azonosito
   hasznalataval, amely a /usr/sbin/sliplogin shellt hasznalja. A
   sliplogin program az /etc/sliphome/slip.hosts allomanyban
   megkeresi a specialis felhasznalohoz tartozo sort, es ha talal egy
   ilyet, akkor csatlakoztatja a soros vonalat egy rendelkezesre allo
   SLIP felu:letre, amelyen aztan a SLIP felu:ltet beallitasahoz
   lefuttatja az /etc/sliphome/slip.login shell szkriptet.

     --------------------------------------------------------------

      27.7.2.2.1. Pelda SLIP szerveren keresztu:li bejelentkezesre

   Peldaul, ha a SLIP felhasznalo azonositoja Shelmerg, akkor az
   /etc/master.passwd allomanyban a hozzatartozo bejegyzest nagyjabol
   ilyen:

 Shelmerg:password:1964:89::0:0:Guy Helmer - SLIP:/usr/users/Shelmerg:/usr/sbin/sliplogin

   Amikor Shelmerg bejelentkezik, a sliplogin az
   /etc/sliphome/slip.hosts allomanyban keresni fog egy felhasznalo
   azonositojahoz illeszkedo" sort. Peldaul tegyu:k fel, hogy az
   /etc/sliphome/slip.hosts allomanyban szerepel egy ilyen sor:

 Shelmerg        dc-slip sl-helmer       0xfffffc00                autocomp

   A sliplogin ezt a sor fogja megtalalni, majd a soros vonalat a
   ko:vetkezo" elerheto" SLIP felu:lethez kapcsolja, amelyen ezutan
   vegrehajtja az /etc/sliphome/slip.login szkriptet a ko:vetkezo"
   modon:

 /etc/sliphome/slip.login 0 19200 Shelmerg dc-slip sl-helmer 0xfffffc00 autocomp

   Ha minden jol megy, akkor az /etc/sliphome/slip.login kiad egy
   ifconfig parancsot azon a SLIP felu:leten, amelyre a sliplogin
   magat csatlakoztatta (amely a fenti peldaban a 0. SLIP felu:let
   volt, es amelyet meg is adtunk slip.login elso" parameterekent),
   es igy beallitja a helyi IP-cimet (dc-slip), a tavoli IP-cimet
   (sl-helmer), a SLIP felu:lethez tartozo halozati maszkot
   (0xfffffc00) valamint a tovabbi opciokat (autocomp). Ha valami
   rosszul su:lne el, akkor a sliplogin ezekro"l altalaban nagyon jo
   mino"segu", informaciodus u:zeneteket keszit, amelyeket a syslogd
   demon pedig a /var/log/messages allomanyba ro:gzit. (A syslogd(8)
   es syslog.conf(5) man oldalak es talan maga az /etc/syslog.conf
   segithet kideriteni, hogy a syslogd jelenleg naploz-e, es ha igen,
   akkor hova.)

     --------------------------------------------------------------

    27.7.2.3. A rendszermag beallitasa

   A FreeBSD alap (vagyis a GENERIC) rendszermagja tamogatja a SLIP
   (sl(4)) hasznalatat. Ha viszont sajat rendszermagunk van, akkor
   elo"fordulhat, hogy beallitasok ko:ze fel kell vennu:nk a
   ko:vetkezo" sort is:

 device   sl

   Alapertelmezes szerint a FreeBSD nem tovabbit semmilyen csomagot.
   Amennyiben a FreeBSD SLIP szerveru:nket utvalasztokent is
   mu"ko:dtetni akarjuk, ugy az /etc/rc.conf allomanyban a
   gateway_enable valtozot at kell allitanunk a YES ertekre. Ennek
   hatasara az ujrainditas utan is megmarad a csomagok tovabbitasa.

   A valtoztatasok azonnali eletbeleptetesehez adjuk ki root
   felhasznalokent a ko:vetkezo" parancsot:

 # /etc/rc.d/routing start

   Ha a FreeBSD rendszermag beallitasa soran segitsegre szorulnank,
   akkor olvassuk el 8 fejezetet.

     --------------------------------------------------------------

    27.7.2.4. A sliplogin beallitasa

   Ahogy arra mar korabban is utaltunk, az /etc/sliphome ko:nyvtarban
   harom allomany felelo"s a /usr/sbin/sliplogin beallitasaert (lasd
   sliplogin(8)): a slip.hosts, amelyekben a SLIP felhasznalokat es a
   hozzajuk tartozo IP-cimeket adjuk meg; a slip.login, amely
   altalaban csak a SLIP felu:letet allitja be; (az elhagyhato)
   slip.logout, amely a soros vonal bontasakor a slip.login hatasat
   igyekszik visszaforditani.

     --------------------------------------------------------------

      27.7.2.4.1. A slip.hosts beallitasa

   Az /etc/sliphome/slip.hosts soraiban whitespace karakterekkel
   tagoltan legalabb negy elem szerepel:

     * a SLIP felhasznalo bejelentkezesi azonositoja

     * a SLIP kapcsolat helyi cime (a SLIP szerverehez kepest)

     * a SLIP kapcsolat tavoli cime

     * halozati maszk

   A helyi es tavoli cimek lehetnek halozati nevek is (amelyeket vagy
   az /etc/hosts, vagy pedig az /etc/nsswitch.conf allomanyban
   szereplo" beallitasok alapjan tudunk feloldani IP-cimre), illetve
   a halozati maszk is lehet egy olyan nev, amelyet az /etc/networks
   fel tud oldani. A peldakent bemutatott rendszeru:nkben az
   /etc/sliphome/slip.hosts allomany nagyjabol igy epu:l fel:

 #
 # login helyi-cim       tavoli-cim      maszk            opc1    opc2
 #                                               (normal,compress,noicmp)
 #
 Shelmerg  dc-slip       sl-helmerg      0xfffffc00      autocomp

   A sorok vegen az alabbi opciok ko:zu:l egy vagy to:bb szerepelhet:

     * normal -- a fejleceket nem to:mo:ritju:k

     * compress -- a fejlecek to:mo:ritese

     * autocomp -- ha a tavoli vegpont engedi, akkor to:mo:ritsu:k a
       fejleceket

     * noicmp -- az ICMP csomagok tiltasa (igy peldaul a "ping" altal
       generalt csomagok is eldobodnak a savszelesseg felemesztese
       helyett)

   A SLIP kapcsolathoz tartozo helyi es tavoli cimek megvalasztasa
   fu:gg attol, hogy egy ku:lo:n TCP/IP alhalozatot szentelu:nk-e
   neki, vagy a SLIP szerveru:nko:n egy "ARP proxy"-t hasznalunk
   (amely tulajdonkeppen nem egy "valodi" ARP proxy, de ebben a
   szakaszban igy fogunk ra hivatkozni). Ha nem vagyunk biztosak
   benne, hogy melyik modszert valasszuk vagy hogy mikent osszuk ki
   az IP-cimeket, akkor nezzu:nk utana ezekenek a SLIP hasznalataval
   kapcsolatos elo"feltetelek ko:zo:tt megemlitett ko:nyvekben
   (27.7.2.1 Szakasz) es/vagy konzultaljunk a halozatunk
   karbantartojaval.

   Ha a SLIP klienseknek ku:lo:n alhalozatokat osztunk ki, akkor a
   sajat IP-cimu:nkbo"l kell letrehoznunk es kiadnunk ezeket. Ezutan
   valoszinu"leg a SLIP szerveru:nko:n keresztu:l meg meg kell adnunk
   egy statikus utvonalat legko:zelebbi IP utvalaszto fele.

   Minden mas esetben az "ARP proxy" modszert kell alkalmaznunk, ahol
   a SLIP kliensek IP-cimeit a SLIP szerver Ethernet alhalozatabol
   osztjuk ki, es ennek megfelelo"en az /etc/sliphome/slip.login es
   /etc/sliphome/slip.logout szkripteket modositanunk kell ugy, hogy
   az arp(8) segitsegevel kepesek legyenek a SLIP szerver ARP
   tablazataban kezelni a "proxy ARP" bejegyzeseket.

     --------------------------------------------------------------

      27.7.2.4.2. A slip.login beallitasa

   Egy atlagos /etc/sliphome/slip.login allomany ko:ru:lbelu:l ilyen:

 #!/bin/sh -
 #
 #       @(#)slip.login  5.1 (Berkeley) 7/1/90

 #
 # Egy altalanos slip vonali bejelentkezesi allomany. A sliplogin ezt az alabbi
 # parameterekkel hivja meg:
 #      1        2         3        4          5         6     7-n
 #   slipegys. ttyseb.  azonosito helyi-cim tavoli-cim maszk egyeb-pmek.
 #
 /sbin/ifconfig sl$1 inet $4 $5 netmask $6

   Ez a slip.login allomany az ifconfig segitsegevel pusztan
   beallitja a megfelelo" SLIP felu:lethez tartozo helyi, valamint
   tavoli cimet es a halozati maszkot.

   Ha ehelyett azonban az "ARP proxy" modszeret valasztottuk volna
   (tehat a SLIP kliensekenek nem akarunk egesz alhalozatokat
   kiutalni), akkor az /etc/sliphome/slip.login allomany ekeppen
   alakul:

 #!/bin/sh -
 #
 #       @(#)slip.login  5.1 (Berkeley) 7/1/90

 #
 # Egy altalanos slip vonali bejelentkezesi allomany. A sliplogin ezt az alabbi
 # parameterekkel hivja meg:
 #      1        2         3        4          5         6     7-n
 #   slipegys. ttyseb.  azonosito helyi-cim tavoli-cim maszk egyeb-pmek.
 #
 /sbin/ifconfig sl$1 inet $4 $5 netmask $6
 # A SLIP kliensre vonatkozo ARP kereseket a mi Ethernet cimu:nkkel
 # valaszoljuk meg:
 /usr/sbin/arp -s $5 00:11:22:33:44:55 pub

   Lathatjuk, hogy az elo"bbi slip.login allomany egy arp -s $5
   00:11:22:33:44:55 pub paranccsal egeszu:lt ki, ami a SLIP szerver
   ARP tablazataban hoz letre egy ARP bejegyzest. Ez az ARP bejegyzes
   gondoskodik rola, hogy a SLIP szerver valaszoljon a sajat
   Ethernetes MAC-cimevel, amikor egy masik IP csomopont a SLIP
   kliens IP-cime felo"l erdeklo"dik.

   Amikor a fenti peldabol indulunk ki, a benne megadott MAC-cimet
   (00:11:22:33:44:55) feltetlenu:l cserelju:k a rendszeru:nk
   Ethernet kartyajanak MAC-cimevel, mert ku:lo:nben az "ARP proxy"
   egyaltalan nem fog mu"ko:dni! A SLIP szerveru:nk MAC-cimet a
   netstat -i paranccsal derithetju:k ki, amelynek a kimeneteben a
   masodik sor valahogy igy nez ki:

 ed0   1500  <Link>0.2.c1.28.5f.4a         191923  0   129457     0   116

   Ebbo"l deru:l ki, hogy az adott rendszer valodi MAC-cime a
   00:02:c1:28:5f:4a -- az arp(8) szamara azonban a netstat -i
   kimeneteben szereplo" pontokat ketto"spontokra kell cserelni, es a
   tagokat ki kell egesziteni ketkarakteres hexadecimalis szamokka.
   Az arp(8) man oldalan tudhatunk meg ennek reszleteiro"l to:bbet.

     Megjegyzes: Amikor letrehozzuk az /etc/sliphome/slip.login es
     /etc/sliphome/slip.logout allomanyokat, akkor ne felejtsu:k el
     hozzajuk beallitani a "vegrehajtast" engedelyezo" bitet sem
     (tehat ilyenkor mindig adjuk ki a chmod 755
     /etc/sliphome/slip.login /etc/sliphome/slip.logout parancsokat
     is), ku:lo:nben a sliplogin ezeket nem tudja majd elinditani.

     --------------------------------------------------------------

      27.7.2.4.3. A slip.logout beallitasa

   Az /etc/sliphome/slip.logout allomanyra nincs feltetlenu:l
   szu:ksegu:nk (hacsak nem egy "ARP proxy"-t akarunk csinalni), de
   ha valamiert megis el akarjuk kesziteni, akkor ehhez a ko:vetkezo"
   alapveto" slip.logout szkript hasznalhato:

 #!/bin/sh -
 #
 #       slip.logout

 #
 # Egy logout allomany a slip vonalhoz. A sliplogin ezt a szkriptet a
 # ko:vetkezo" parameterekkel hivja:
 #      1        2         3        4          5         6     7-n
 #   slipegys. ttyseb.   login helyi-cim  tavoli-cim   maszk opc-pmek.
 #
 /sbin/ifconfig sl$1 down

   Ha az "ARP proxy" modszert hasznaljuk, es az
   /etc/sliphome/slip.logout felhasznalasaval akarjuk a SLIP
   klienshez tartozo ARP bejegyzest to:ro:lni, akkor ebbo"l induljunk
   ki:

 #!/bin/sh -
 #
 #       @(#)slip.logout

 #
 # Egy logout allomany a slip vonalhoz. A sliplogin ezt a szkriptet a
 # ko:vetkezo" parameterekkel hivja:
 #      1        2         3        4          5         6     7-n
 #   slipegys. ttyseb.   login helyi-cim  tavoli-cim   maszk opc-pmek.
 #
 sbin/ifconfig sl$1 down
 # Ne valaszoljunk to:bbet a SLIP kliensre vonatkozo ARP keresekre
 /usr/sbin/arp -d $5

   Az arp -d $5 parancs eltavolitja az "ARP proxy" mu"ko:desehez
   bejegyzest, amelyet meg a slip.login szkripttel vettu:nk fel a
   SLIP kliens bejelentkezesekor.

   Talan felesleges ismetelgetesnek tu"nhet: az
   /etc/sliphome/slip.logout allomanynak letrehozasa utan allitsuk be
   a vegrehajtasra szolo bitet (vagyis adjuk ki a chmod 755
   /etc/sliphome/slip.logout parancsot).

     --------------------------------------------------------------

    27.7.2.5. Az utvalasztassal kapcsolatos megfontolasok

   Ha a halozatunk to:bbi resze (lenyegeben az internet) es a SLIP
   klienseink ko:zo:tt nem az "ARP proxy" modszerrel ko:zvetitju:k a
   csomagokat, akkor a legko:zelebbi alapertelmezett atjarokhoz
   minden bizonnyal fel kell vennu:nk statikus utvonalakat, igy a
   SLIP kliensek alhalozatai a SLIP szerveru:nko:n keresztu:l ki
   tudnak jutni.

     --------------------------------------------------------------

      27.7.2.5.1. Statikus utvonalak

   A legko:zelebbi alapertelmezett atjarok fele nem minden esetben
   ko:nnyu" felvenni statikus utvonalakat (vagy egyes esetekben pedig
   egyenesen lehetetlen, mivel nincsenek meg hozza a jogaink). Ha az
   intezmenyu:nko:n belu:l to:bb atjaro is megtalalhato, akkor
   bizonyos utvalasztok, peldaul a Cisco es Proteon gyartmanyuak
   eseteben nem csak a SLIP alhalozatok fele kell beallitanunk
   statikus utvonalakat, hanem azt is meg kell mondanunk, hogy
   ezekro"l milyen mas utvalasztok is tudjanak. Pontosan emiatt a
   statikus utvalasztas beu:zemelesehez szu:ksegu:nk lesz egy kis
   utanajarasra es probalgatasra.

     --------------------------------------------------------------

                   Fejezet 28. Elektronikus levelezes

   Eredetileg keszitette: Bill Lloyd. Atdolgozta: Jim Mock.

28.1. Attekintes

   Az "elektronikus levelezes", mas neven e-mail, a kommunikacio
   egyik legjobban elterjedt formaja. Ebben a fejezetben bemutatjuk,
   hogyan futtassunk FreeBSD-n levelezo" szervert, illetve hogyan
   ku:ldju:nk es fogadjunk e-maileket a FreeBSD hasznalataval. Ez
   azonban semmikeppen sem tekintheto" egy teljes referencianak es
   tulajdonkeppen szamos fontos tenyezo"ro"l szot sem ejtu:nk. A
   temara ugy kaphatunk egy sokkal atfogobb ralatast, ha a B
   Fu:ggelekben felsorolt remek ko:nyveket is elolvassuk.

   A fejezet elolvasasa soran megismerju:k:

     * milyen szoftverkomponensek jatszanak szerepet az elektronikus
       levelek ku:ldeseben es fogadasaban;

     * FreeBSD-ben hol talalhatoak a sendmail konfiguracios
       allomanyai;

     * mi a ku:lo:nbseg a helyi es tavoli postaladak ko:zo:tt;

     * hogyan akadalyozzuk meg, hogy a levelezo" szerveru:nk a
       keretlen levelszemetet tovabbitson;

     * rendszeru:nko:n hogyan telepitsu:nk es allitsunk be mas
       levelezo" szervereket a sendmail helyett;

     * hogyan oldjuk meg a levelezo" szerverekkel kapcsolatban
       felmeru:lo" altalanos problemakat;

     * hogyan hasznaljuk az SMTP protokollt az UUCP protokollal;

     * hogyan kell rendszeru:ket csak levelku:ldesre beallitani;

     * hogyan levelezzu:nk betarcsazos kapcsolattal;

     * hogyan no:velju:k rendszeru:nk vedelmet az SMTP
       hitelesitesenek engedelyezesevel;

     * hogyan telepitsu:nk es hasznaljunk a levelek ku:ldesere es
       fogadasara peldaul a mutthoz hasonlo levelezo" klienseket;

     * hogyan to:ltsu:k le leveleinket egy tavoli POP vagy IMAP
       szerverro"l;

     * hogyan alkalmazzunk automatikusan adott szabalyokat vagy
       szu"ro"ket az erkezo" levelekre.

   A fejezet elolvasasa elo"tt ajanlott:

     * az internet-csatlakozasunk megfelelo" beallitasa (31 fejezet);

     * a nevfeloldas beallitasa (29 fejezet);

     * a ku:lso" fejlesztesu" alkalmazasok telepitesenek ismerete (4
       fejezet).

     --------------------------------------------------------------

28.2. Az elektronikus levelezes hasznalata

   O:t fontosabb reszre bonthatjuk a levelezest. Ezek: a felhasznaloi
   program (mail user agent), a levelku:ldo" demon (mail transfer
   agent), a nevfeloldas, a helyi vagy tavoli postalada es
   termeszetesen maga a levelezo" szerver (mail host).

     --------------------------------------------------------------

  28.2.1. A felhasznaloi program

   Ide soroljuk a ku:lo:nbo:zo" parancssoros programokat, mint
   peldaul a mutt, pine, elm es mail, valamint a ku:lo:nfele grafikus
   alkalmazasokat, mint peldaul a balsa es az xfmail, csak hogy
   felsoroljuk nehany ujabb, egy webbo:ngeszo"ho:z hasonloan
   "kifinomult" eszko:zt is. Ezek a programok egyszeru"en atku:ldik
   az elektronikus levelekkel kapcsolatos tranzakciokat a helyi
   "levelezo" szervernek" vagy meghivjak valamelyik levelku:ldo"
   demont, esetleg ko:zvetlenu:l a TCP protokollon keresztu:l
   kezbesitenek.

     --------------------------------------------------------------

  28.2.2. A levelku:ldo" demon

   A FreeBSD alapbol a sendmail nevu" programot ajanlja fel erre a
   celra, de tamogat mas levelezo" szervereket is, ezek ko:zu:l meg
   is emlitu:nk nehanyat izelito"kent:

     * exim

     * postfix

     * qmail

   Ez a demon altalaban ket feladatot lat el -- a beerkezo" levelek
   fogadasaert es a kimeno" levelek elku:ldeseert felelo"s. Nem
   tartozik azonban a feladatai ko:ze, hogy a POP vagy IMAP
   protokollokhoz hasonloan olvashatova tegye a leveleinket, illetve
   csatlakozni engedjen a helyi mbox vagy Maildir formatumu
   postaladainkhoz. Ezekhez a mu"veletekhez egy ku:lo:n demon
   szu:ksegeltetik.

     Figyelem: A sendmail regebbi valtozatai tartalmaznak olyan
     komoly biztonsagi hibakat, amelyek kihasznalasaval az
     illetektelen behatolok helyi es/vagy tavoli hozzaferest tudnak
     szerezni a gepu:nko:n. Az ilyen jellegu" problemak elkeru:lese
     erdekeben igyekezzu:nk mindig a legfrissebb verziojat hasznalni.
     Vagy a FreeBSD Portgyu"jtemenyebo"l telepitsu:nk fel egy masik
     levelku:ldo" demont.

     --------------------------------------------------------------

  28.2.3. Az elektronikus levelek es a nevfeloldas

   A nevfeloldas (Domain Name System, DNS) es a hozzatartozo named
   demon nagy szerepet jatszik az elektronikus levelek
   tovabbitasaban. A demon a leveleket ugy ku:ldi at az egyik gepro"l
   a masikra, hogy a nevfeloldason keresztu:l megkeresi azt a tavoli
   gepet, amelynek a leveleket cimeztek. Ez a folyamat szinten
   vegbemegy, amikor egy tavoli gepro"l levelet ku:ldenek a mi
   szerveru:nkre.

   A DNS valositja meg a halozati nevek es az IP-cimek
   o:sszerendeleset valamint ez tarolja el a levelku:ldesre vonatkozo
   informaciokat is, amelyeket MX rekordoknak hivnak. Az MX (Mail
   eXchanger, "levelvalto") rekord adja meg azt a gepet vagy azokat a
   gepeket, amelyek az adott nevtartomanyban fogadjak a leveleket. Ha
   a halozati nevu:nkho:z vagy tartomanyunkhoz nem tartozik MX
   rekord, akkor a level ko:zvetlenu:l a gepu:nkre vandorol felteve,
   hogy rendelkezik olyan A rekorddal, amely o:sszerendeli a gepu:nk
   nevet az IP-cimevel.

   A host(1) parancs hasznalataval az alabbi peldahoz hasonloan
   tetszo"leges tartomany MX rekordjat meg tudjuk nezni:

 % host -t mx
 FreeBSD.org FreeBSD.org mail is handled (pri=10) by
 mx1.FreeBSD.org

     --------------------------------------------------------------

  28.2.4. Az elektronikus levelek fogadasa

   A tartomanyunkhoz tartozo leveleket fogadasat a levelezo" szerver
   vegzi. O:sszegyu"jti a tartomanyunkba ku:ldo:tt o:sszes levelet es
   ezeket a beallitasainktol fu:ggo"en vagy mbox (a levelek
   tarolasanak alapertelmezett modja) vagy pedig Maildir formatumban
   eltarolja. Ahogy eltarolt egy levelet, ugy helyben egybo"l el is
   tudjuk olvasni peldaul a mail(1) vagy a mutt hasznalataval,
   illetve tavolrol a POP vagy IMAP es a hasonlo protokollokkal
   tudjuk elerni es begyu"jteni. Ezert tehat ha csak a helyi gepen
   kivanjuk olvasni a leveleinket, akkor ahhoz egyaltalan nem kell
   POP vagy IMAP szervert telepitenu:nk.

     --------------------------------------------------------------

    28.2.4.1. Tavoli postaladak elerese a POP es IMAP hasznalataval

   A tavoli postaladak eleresehez tudnunk kell csatlakozni egy POP
   vagy IMAP szerverhez. Ezeken a protokollokon keresztu:l tudjak a
   felhasznalok minden ku:lo:no:sebb nehezseg nelku:l elerni tavolrol
   a helyi postaladaikat. Noha a POP es az IMAP segitsegevel egyarant
   el tudjuk igy erni a postaladakat, az IMAP hasznalatanak megis
   to:bb elo"nye van, ime nehany ko:zu:lu:k:

     * Az IMAP a levelek leszedese mellett tarolni is kepes a tavoli
       szerveren.

     * Az IMAP tamogat parhuzamos lekereseket.

     * Az IMAP hihetetlenu:l hasznos tud lenni lassabb
       o:sszeko:ttetesek eseteben, mivel leheto"ve teszi a
       felhasznalok szamara, hogy csak az u:zenetek vazat to:ltsek le
       es ne az egeszet. Tovabba a szerver es a kliens ko:zti
       adatmozgas cso:kkentese erdekeben kepes bizonyos feladatokat a
       szerveren elvegezni, peldaul keresni.

   Egy POP vagy IMAP szerver telepitesehez az alabbi lepesek
   megtetele szu:kseges:

    1. Valasszuk ki az igenyeinket legjobban kielegito" IMAP vagy POP
       szervert. A ko:vetkezo" POP es IMAP szerverek elegge
       elterjedtek es egyben remek peldak:

          * qpopper

          * teapop

          * imap-uw

          * courier-imap

    2. A Portgyu"jtemenybo"l telepitsu:k fel a kivalasztott POP vagy
       IMAP demont.

    3. Ha szu:kseges, akkor a POP vagy IMAP szerver beto:ltesehez
       irjuk at az /etc/inetd.conf allomanyt.

     Figyelem: Meg kell emlitenu:nk, hogy mind a POP es az IMAP az
     o:sszes informaciot, tehat belertve a felhasznalok neveit es
     jelszavait titkositatlan formaban tovabbitja. Ez azt jelenti,
     hogy ha ezeket a protokollokat biztonsagos modon szeretnenk
     elerni, akkor az ssh(1) hasznalataval hozzunk letre hozza egy
     tunnelt es azon keresztu:l hasznaljuk. Erro"l reszletesebben a
     14.11.8 Szakaszban olvashatunk.

     --------------------------------------------------------------

    28.2.4.2. A helyi postaladak elerese

   A helyi postaladakat a szerveren levo" levelezo" kliensek
   ko:zvetlen hasznalataval erhetju:k el. Ilyen alkalmazasok peldaul
   a mutt vagy a mail(1).

     --------------------------------------------------------------

  28.2.5. A levelezo" szerver

   A levelezo" szerver az a szerver, amely a gepu:nk vagy akar az
   egesz halozatunk iranyaba erkezo" levelek fogadasaert es
   elku:ldeseert felelo"s.

     --------------------------------------------------------------

28.3. A sendmail beallitasa

   Irta: Christopher Shumway.

   A sendmail(8) a FreeBSD alapertelmezett leveltovabbito u:gyno:ke
   (Mail Transfer Agent, MTA). A sendmail feladata fogadni a
   levelezo" kliensekto"l (Mail User Agent, MUA) erkezo" leveleket es
   kezbesiteni azokat a konfiguracios allomanyaban megadott
   megfelelo" levelezo"nek. A sendmail halozati kapcsolatokat is
   fogad, kepes a helyi postaladakba vagy akar mas programoknak is
   leveleket tovabbitani.

   A sendmail a ko:vetkezo" allomanyban tarolja beallitasait:

            Allomany                          Szerep                  
   /etc/mail/access           A sendmail altal engedelyezett          
                              hozzafereseket tarolo adatbazis         
   /etc/mail/aliases          A postaladak alnevei                    
   /etc/mail/local-host-names Azon nevek felsorolasa, amelyek szamara 
                              a sendmail leveleket fogad              
   /etc/mail/mailer.conf      A levelezo" programok beallitasai       
   /etc/mail/mailertable      A levelezo" programok kezbesitesi       
                              tablazata                               
   /etc/mail/sendmail.cf      A sendmail ko:zponti beallitasait       
                              tarolo allomany                         
   /etc/mail/virtusertable    Virtualis felhasznalok es tartomanyok   
                              tablazatai                              

     --------------------------------------------------------------

  28.3.1. /etc/mail/access

   Az engedelyezett hozzafereseket tarolo adatbazis tartalmazza
   milyen halozati neveken vagy IP-cimeken lehet elerni a helyi
   levelezo" szervert es azok milyen tipusu hozzaferest kapnak. A
   gepek az OK (rendben), REJECT (visszautasit), RELAY (tovabbitas)
   beallitasokat alkalmazhatjuk, vagy egyszeru"en meghivhatjuk
   hozzajuk a sendmail hibakezelo" rutinjat egy adott kezbesitesi
   hibaval. Ha egy gepet az OK beallitassal veszu:k fel a listara,
   ami egyebkent alapertelmezes, akkor ez a gep levelet tud ku:ldeni
   egeszen addig, amig a vegso" cel a helyi gep marad. A REJECT
   beallitassal felsorolt gepek szamara semmifele levelezes nem
   engedelyezett. Ha pedig egy gep mellett a RELAY beallitas jelenik
   meg, akkor a szerveren keresztu:l tetszo"leges cimre ku:ldhet.

   Pelda 28-1. A sendmail elereset szabalyozo adatbazis beallitasa

 cyberspammer.com                550 Nem szeretjuk a spammereket
 FREE.STEALTH.MAILER@            550 Nem szeretjuk a spammereket
 another.source.of.spam          REJECT
 okay.cyberspammer.com           OK
 128.32                          RELAY

   Ebben a peldaban o:t bejegyzest lathatunk. A tablazat bal felenek
   valamelyik sorara illeszkedo" ku:ldo"kre a tablazatban a sor jobb
   felen megjeleno" cselekves ervenyesu:l. Az elso" ket sorban a
   sendmail hibakezelo" rutinjanak adunk at hibakodokat. A
   hozzatartozo u:zenet akkor fog megjelenni a tavoli gepen, amikor a
   to"le erkezo" level illeszkedik a bal oldali szabalyra. Az ezeket
   ko:veto" bejegyzesben visszalo:ku:nk minden olyan levelet, amely
   az internetro"l egy adott szamitogepto"l erkezik, peldaul az
   another.source.of.spam cimro"l. A ko:vetkezo" bejegyzesben az
   okay.cyberspammer.com cimro"l elfogadjuk a kapcsolodast, ami
   viszont sokkal pontosabb megjelo:les a fentebb szereplo"
   cyberspammer.com sornal. A pontosabban kifejtett nevek
   felu:lbiraljak a kevesbe pontosan megnevezetteket. Vegu:l az
   utolso bejegyzesben engedelyezzu:k a levelek tovabbku:ldeset
   minden olyan gep szamara, amelynek cime a 128.32 elo"taggal
   kezdo"dik. Ezek tehat kepesek ezen a levelezo" szerveren
   keresztu:l barhova leveleket ku:ldeni.

   Az allomany modositasa utan az adatbazis frissitesehez mindig le
   kell futtatnunk egy make parancsot az /etc/mail/ ko:nyvtarban.

     --------------------------------------------------------------

  28.3.2. /etc/mail/aliases

   Az alneveket tartalmazo adatbazis virtualis postaladakat sorol
   fel, amelyek mas felhasznalokra, allomanyokra, programokra vagy
   tovabbi alnevekre vonatkozhatnak. Ime nehany pelda az
   /etc/mail/aliases allomanyban szereplo" bejegyzesekre:

   Pelda 28-2. Virtualis postaladak

 root: localuser
 ftp-bugs: joe,eric,paul
 bit.bucket:  /dev/null
 procmail: "|/usr/local/bin/procmail"

   A formai szabalyok egyszeru"ek: a ketto"spont bal oldalara kell
   irni azt a postaladat, amely a jobb oldalan levo" celokra bomlik.
   A pelda elso" soraban egyszeru"en megfeleltetju:k a root
   postaladajat a localuser postaladajanak, majd ezt a nevet
   keressu:k az alnevek adatbazisaban. Ha nem talalunk mar ra
   illeszkedest, akkor az u:zenetet a localuser nevu" helyi
   felhasznalonak tovabbitjuk. A ko:vetkezo" sorban cimek listajat
   lathatjuk. Ennek megfelelo"en a ftp-bugs postalada cimere
   ku:ldo:tt levelek harom tovabbi helyi postaladara mennek tovabb:
   ezek nev szerint a joe, eric es paul felhasznalok postaladai. Itt
   a tavoli postaladak <felhasznalo@pelda.hu> alakban adhatoak meg. A
   ko:vetkezo" sor az allomanyok hasznalatat peldazza, ahol konkretan
   a /dev/null allomanyba iranyitjuk at az adott cimre erkezo"
   leveleket. Az utolso sorban pedig a programok hasznalatara
   lathatunk peldat, ahol ebben az esetben a level egy UNIX-os
   cso:vo:n keresztu:l a /usr/local/bin/procmail szabvanyos
   bemenetere keru:l.

   Ha megvaltoztatjuk ezt az allomanyt, akkor utana az adatbazis
   frissitesehez ne felejtsu:k el meghivni a make parancsot az
   /etc/mail/ ko:nyvtarban.

     --------------------------------------------------------------

  28.3.3. /etc/mail/local-host-names

   Ebben az allomanyban adhatjuk meg, hogy a sendmail(8) milyen
   halozati neveket fogadjon el helyi halozati nevkent. Ide kell
   raknunk azokat a tartomanyokat vagy cimeket, amelyekto"l a
   sendmail leveleket fogad el. Peldaul, ha a levelezo" szerver az
   minta.com tartomanybol es a level.minta.com cimro"l fogad el
   leveleket, akkor a local-host-names valahogy igy fog kinezni:

 minta.com
 level.minta.com

   Az allomany modositasakor a sendmail(8) programot ujra kell
   inditani a valtozasok ervenyesitesehez.

     --------------------------------------------------------------

  28.3.4. /etc/mail/sendmail.cf

   Ahogy a sendmail ko:zponti konfiguracios allomanya, a sendmail.cf
   iranyitja a sendmail atfogo viselkedeset, beleertve mindent az
   e-mail cimek atirasatol kezdve a tavoli szervereknek ku:ldo:tt
   elutasito u:zenetek ku:ldeseig. Mivel ennyire sokfajta szerepet
   to:lt be egyszerre, ezert ez a konfiguracios allomany
   megleheto"sen o:sszetett es a reszletezese meghaladna ennek a
   leirasnak a hatarait. Szerencsere az atlagos levelezo" szerverek
   eseteben ezt az allomanyt nagyon ritkan kell modositani.

   A sendmail ko:zponti konfiguracios allomanya a sendmail
   leheto"segeit es viselkedeset meghatarozo m4(1) makrokbol
   epitheto" fel. A pontosabb reszleteket a
   /usr/src/contrib/sendmail/cf/README allomanyban talaljuk meg.

   Az allomany megvaltoztatasa utan a modositasok ervenyesitesehez
   ujra kell inditani a sendmail programot.

     --------------------------------------------------------------

  28.3.5. /etc/mail/virtusertable

   A virtusertable allomany kepezi le a virtualis tartomanyokhoz
   tartozo cimeket valodi postaladak cimeire. Ezek a postaladak
   lehetnek helyiek, tavoliak, az /etc/mail/aliases allomanyban
   megadott alnevek vagy allomanyok.

   Pelda 28-3. Pelda a virtualis tartomanyok lekepezesere

 root@minta.com                root
 postmaster@minta.com          postmaster@noc.minta.net
 @minta.com                    joe

   A fenti peldaban megadtunk egy lekepezest a minta.com
   tartomanyhoz. Ez az allomany ugy dolgozodik fel, hogy fentro"l
   lefele illeszto"dnek a cimek, egeszen az elso" egyezesig. Az elso"
   bejegyzes szerint a <root@minta.com> a helyi root felhasznalo
   postaladajara kepzo"dik le. A ko:vetkezo" bejegyzes szerint a
   <postmaster@minta.com> a noc.minta.net cimen talalhato postmaster
   nevu" felhasznalo postaladajara kepzo"dik le. Vegezetu:l, ha a
   minta.com cimro"l eddig meg semmi sem illeszkedett volna, akkor az
   utolso lekepezes veszi at, amely az minta.com tartomanyon belu:l
   az o:sszes to:bbi cimre ku:ldo:tt levelet a helyi joe nevu"
   felhasznalo postaladajara kepezi le.

     --------------------------------------------------------------

28.4. A leveltovabbito u:gyno:k megvaltoztatasa

   Irta: Andrew Boothman. Levelei segitsegu:l szolgaltak: Gregory
   Neil Shapiro.

   Ahogy arrol mar korabban szo esett, a FreeBSD alapbol tartalmazza
   a sendmail programot mint leveltovabbito u:gyno:ko:t (MTA, Mail
   Transfer Agent). Ennelfogva alapertelmezes szerint ez a felelo"s a
   kimeno" es beerkezo" levelek kezeleseert.

   Szamtalan okbol eredo"en egyes rendszergazdak azonban megis
   szeretnek lecserelni a rendszeru:kho:z tartozo leveltovabbitot.
   Ennek oka lehet egyszeru"en csak annyi, hogy ki akarunk probalni
   egy masik programot vagy eppen egy olyan eszko:zre van
   szu:ksegu:nk, amely kizarolag csak mashol talalhato meg.
   Szerencsere a FreeBSD megko:nnyiti ezt a valtast.

     --------------------------------------------------------------

  28.4.1. Az uj leveltovabbito telepitese

   A leveltovabbitok szeles ko:re elerheto". A FreeBSD
   Portgyu"jtemenyebo"l elindulva sok ilyen programot talalhatunk.
   Termeszetesen teljesen mindegy, hogy melyik leveltovabbitot
   valasztjuk egeszen addig, amig kepesek vagyunk FreeBSD alatt
   rendesen futtatni.

   Kezdju:k tehat az uj leveltovabbito telepitesevel. Miutan
   sikeru:lt telepiteni, leheto"segu:nk van eldo:nteni, hogy valoban
   eleget tesz-e az igenyeinknek, so"t az uj szoftvert meg az elo"tt
   be tudjuk allitani, hogy atvenne a sendmail helyet. Vigyazzunk
   azonban, hogy az uj szoftver telepitesekor ne irjon felu:l olyan
   rendszerszintu" binarisokat, mint peldaul a /usr/bin/sendmail.
   Masreszt az uj levelezo" szoftvert szolgalatba helyezese elo"tt
   mindenkeppen fontos megfelelo"en beallitanunk.

   A kivalasztott leveltovabbito beallitasaval kapcsolatban olvassuk
   el a hozzatartozo dokumentaciot.

     --------------------------------------------------------------

  28.4.2. A sendmail letiltasa

     Figyelem: Amikor letiltjuk a sendmail kimeno" level
     szolgaltatasat, soha ne felejtsu:k el potolni valamilyen mas
     levelezo" rendszerrel. Ha nem igy cselekszu:nk, akkor peldaul a
     periodic(8) es a hozza hasonlo programok nem lesznek kepesek a
     to"lu:k megszokott modon e-mailben elku:ldeni a futasuk
     eredmenyet. A rendszer bizonyos reszei raadasul egy mu"ko:do",
     sendmail-kompatibilis rendszert felteteleznek. Ha letiltasa utan
     az alkalmazasok tovabbra is a sendmail segitsegevel probalnak
     levelet ku:ldeni, akkor ez a level a sendmail inaktiv soraba
     keru:lhet, ahonnan soha nem keru:l kezbesitesre.

   A sendmail teljes leallitasahoz, beleertve a kimeno" levelekhez
   tartozo szolgaltatast is, a ko:vetkezo"ket kell megadni az
   /etc/rc.conf allomanyban:

 sendmail_enable="NO"
 sendmail_submit_enable="NO"
 sendmail_outbound_enable="NO"
 sendmail_msp_queue_enable="NO"

   Ha csak a sendmail beerkezo" levelekre vonatkozo szolgaltatasat
   akarjuk tiltani, akkor ahhoz az /etc/rc.conf allomanyban a
   ko:vetkezo"t allitsuk be:

 sendmail_enable="NO"

   A sendmail inditasaval kapcsolatos tovabbi beallitasokat az
   rc.sendmail(8) man oldalon talaljuk.

     --------------------------------------------------------------

  28.4.3. Az uj leveltovabbito elinditasa a rendszerrel egyu:tt

   Az uj leveltovabbitot ugy tudjuk elinditani a rendszerrel egyu:tt,
   ha az /etc/rc.conf allomanyba felvesszu:k a ko:vetkezo" sort,
   peldaul a postfix eseteben:

 # echo 'postfix_enable="YES"' >> /etc/rc.conf

   Az uj leveltovabbito igy most mar magatol el fog indulni a
   rendszer inditasakor.

     --------------------------------------------------------------

  28.4.4. A sendmail mint a rendszer alapertelmezett levelezo"
  eszko:zenek lecserelese

   A sendmail annyira elterjedt szabvanyos szoftver a UNIX
   rendszereken, hogy egyes szoftverek egyszeru"en feltetelezik a
   jelenletet. Emiatt sok leveltovabbitohoz tartozik egy sendmail
   kompatibilis parancssoros felu:let is, amellyel igyekeznek
   megko:nnyiteni a sendmail "gyors" lecsereleset.

   Ennek ko:vetkezteben tehat, ha egy masik levelezo" eszko:zt
   hasznalunk, akkor valamilyen modon meg kell bizonyosodnunk rola,
   hogy a szabvanyos sendmail binarisok, mint peldaul a
   /usr/bin/sendmail, valoban a kivalasztott leveltovabbitot fogjak
   aktivalni. Szerencsere a FreeBSD pontosan emiatt tartalmaz egy
   mailwrapper(8) nevu" rendszert.

   Amikor a sendmail telepitese szerint mu"ko:dik, valami hasonlot
   fogunk talalni az /etc/mail/mailer.conf allomanyban:

 sendmail        /usr/libexec/sendmail/sendmail
 send-mail       /usr/libexec/sendmail/sendmail
 mailq           /usr/libexec/sendmail/sendmail
 newaliases      /usr/libexec/sendmail/sendmail
 hoststat        /usr/libexec/sendmail/sendmail
 purgestat       /usr/libexec/sendmail/sendmail

   Ez azt jelenti, hogy amikor az itt felsorolt altalanos parancsok
   ko:zu:l lefuttatjuk valamelyiket (peldaul magat a sendmail
   parancsot), akkor a rendszer magatol meghivja a sendmail neven
   szereplo" wrapper programot, amely pedig a mailer.conf alapjan
   kideriti, hogy az adott esetben a /usr/libexec/sendmail/sendmail
   hivasara van szu:kseg. Ez a rendszer megko:nnyiti az
   alapertelmezett sendmail funkciok helyeben lefuttatando binarisok
   atallitasat.

   Igy tehat, ha a /usr/local/supermailer/bin/sendmail-compat
   allomanyt akarjuk futtatni a megszokott sendmail helyeben, akkor
   az /etc/mail/mailer.conf allomanyt a ko:vetkezo"keppen kell
   modositanunk:

 sendmail        /usr/local/kedvenclevelezo"/bin/sendmail-compat
 send-mail       /usr/local/kedvenclevelezo"/bin/sendmail-compat
 mailq           /usr/local/kedvenclevelezo"/bin/mailq-compat
 newaliases      /usr/local/kedvenclevelezo"/bin/newaliases-compat
 hoststat        /usr/local/kedvenclevelezo"/bin/hoststat-compat
 purgestat       /usr/local/kedvenclevelezo"/bin/purgestat-compat

     --------------------------------------------------------------

  28.4.5. A mu"velet befejezese

   Ahogy a celjainknak megfelelo"en mindent beallitottunk, akkor vagy
   egyszeru"en leallitjuk a sendmail neve alatt futo programokat es
   helyettu:k elinditjuk az uj szoftverhez tartozokat, vagy csak
   ujrainditjuk a gepet. Az ujrainditassal mellesleg
   elleno"rizhetju:k azt is, hogy jol allitottuk be a rendszeru:nket
   es az uj levelku:ldo" tenyleg elindul a rendszeru:nkkel egyu:tt.

     --------------------------------------------------------------

28.5. A hibak elharitasa

   28.5.1. Miert kell teljes halozati neveket megadni a gepemen?

   28.5.2. A sendmail szerint "a level a sajat farkaba harap"

   28.5.3. Hogyan tudok levelezo" szervert futtatni egy betarcsazos
   PPP kapcsolat eseteben?

   28.5.4. Miert kapok folyton "Relaying Denied" hibat, amikor mas
   gepekro"l ku:ldo:k levelet?

   28.5.1. Miert kell teljes halozati neveket megadni a gepemen?

   Elo"fordulhat, hogy a hivatkozni kivant gep valojaban egy masik
   tartomanyban szerepel. Peldaul, ha az ize.mize.edu gepen vagyunk
   es a vagyis nevu" gepet akarjunk innen elerni a mize.edu
   tartomanyban, akkor a teljes halozati nevevel, vagyis a
   vagyis.mize.edu neven kell ra hivatkoznunk, nem pedig egyszeru"en
   csak vagyis neven.

   Regebben egyebkent ezt a BSD-tipusu BIND nevfeloldok megengedtek.
   A FreeBSD jelenlegi valtozatai azonban mar olyan BIND verziot
   tartalmaznak, amelyek alapertelmezes szerint mar nem engedik a
   tartomanyunkon kivu:li relativ nevek hasznalatat. Tehat a vagyis
   vagy a vagyis.ize.mize.edu gep lesz, vagy a legfelso", gyo:ker
   tartomanyban keresi a rendszer.

   Ez elter a korabbi viselkedesto"l, ahol a kereses folytatodott a
   vagyis.mize.edu es vagyis.edu tartomanyokban is. Az RFC 1535
   elolvasasabol ki fog deru:lni, hogy miert nem valt be ez a
   gyakorlat es hogy miert tekintheto" meg akar biztonsagi resnek is.

   Ezt a problemat egyebkent megoldhatjuk annyival, hogy az
   /etc/resolv.conf allomanyba a

 search ize.mize.edu mize.edu

   sor helyett a

 domain ize.mize.edu

   sort irjuk be. Arra viszont u:gyelju:nk, hogy a keresesi rend ne
   lepje at a "helyi es nyilvanos adminisztracio ko:zo:tt meghuzodo
   hatart", ahogy azt az RFC 1535 nevezi.

   28.5.2. A sendmail szerint "a level a sajat farkaba harap"

   Ezt a sendmail gyakran ismertelt kerdesei ko:zo:tt a
   ko:vetkezo"keppen valaszoltak meg:

 A ko:vetkezo" hibau:zenetet kapom:

 553 MX list for taromany.net points back to fele.tartomany.net
 554 felhasznalo@tartomany.net... Local configuration error

 Hogyan oldhato meg ez a problema?

 Azt kertu:k, hogy a tartomanyba (peldaul tartomany.net) ku:ldo:tt level
 az MX rekord felhasznalasaval egy adott gepre legyen atiranyitva
 (ebben az esetben ez a fele.tartomany.net), de a tovabbitast vegzo" gep
 nem ismeri fel magat a tartomany.net cimen. Vegyu:k fel a tartomany.net
 tartomanyt az /etc/mail/local-host-names allomanyba [melyet a 8.10 elo"tti
 verziokban /etc/sendmail.cw allomanynak hivnak] (ha a
 FEATURE(use_cw_file) beallitast hasznaljuk) vagy tegyu:k hozza a
 "Cw tartomany.net" sort az /etc/mail/sendmail.cf
 allomanyhoz.

   A sendmail GYIK a http://www.sendmail.org/faq/ cimen talalhato meg
   (angolul) es mindenkeppen javasolt elolvasni, ha "fel szeretnenk
   piszkalni" a levelezo" rendszeru:nk beallitasait.

   28.5.3. Hogyan tudok levelezo" szervert futtatni egy betarcsazos
   PPP kapcsolat eseteben?

   Egy helyi halozaton levo" FreeBSD-s gepet akarunk tehat az
   internethez kapcsolni. Ez a FreeBSD-s gep lesz a helyi halozat
   leveleket tovabbito atjaroja. A PPP kapcsolat nem dedikalt.

   Legalabb ket modon meg tudjuk oldani. Az egyik modszer szerint az
   UUCP hasznalatara lesz szu:ksegu:nk.

   A masik modszer szerint szereznu:nk kell egy ejjel-nappal
   u:zemelo" internetes szervert, amely majd szolgaltatja a
   masodlagos MX rekordot a tartomanyunkhoz. Peldaul, ha a cegu:nk
   tartomanya a ceg.hu es az internet-szolgaltatonk a szolgaltato.net
   nevre beallitotta a tartomanyunkhoz a masodlagos MX rekordokat:

 ceg.hu.          MX        10      ceg.hu.
                  MX        20      szolgaltato.net.

   Vegso" cimzettkent csak egy gepet kell megadni (az
   /etc/mail/sendmail.cf allomanyba a ceg.hu cimhez tegyu:k hozza a
   Cw ceg.hu sort).

   Amikor a leveleket ku:ldeni akaro sendmail megprobal kezbesiteni,
   elo"szo:r hozzank (ceg.hu) probal csatlakozni a modemes
   o:sszeko:ttetesen keresztu:l. Ez valoszinu"leg ido"tullepessel
   befejezo"dik, mivel nem vagyunk fenn minden pillanatban a neten. A
   sendmail ekkor automatikusan a masodlagos MX rekord altal megadott
   cimre ku:ldi a levelet, tehat a szolgaltatonkhoz
   (szolgaltato.net). Ez a masodlagos MX cim probalja majd
   ido"legesen elerni a gepu:nket es kezbesiteni a leveleket az
   elso"dleges MX rekord altal megadott gepre (ceg.hu).

   A bejelentkezeskor ezert egy hasonlo szkriptet kell lefuttatnunk:

 #!/bin/sh
 # Tegyu:k a /usr/local/bin/pppmyisp allomanyba:
 ( sleep 60 ; /usr/sbin/sendmail -q ) &
 /usr/sbin/ppp -direct pppmyisp

   Ha keszitu:nk egy ku:lo:n bejelentkezo" szkriptet a felhasznalok
   szamara, akkor a sendmail -qRceg.hu parancsot is hasznalhatjuk a
   fenti szkript helyett. Ezzel a ceg.hu soraban talalhato o:sszes
   level azonnal feldolgozasra keru:l.

   A helyzetet igy lehetne meg jobban pontositani:

   Az alabbi u:zenet a FreeBSD Internet service provider's levelezesi
   lista archivumabol szarmazik.

 > we provide the secondary MX for a customer. The customer connects to
 > our services several times a day automatically to get the mails to
 > his primary MX (We do not call his site when a mail for his domains
 > arrived). Our sendmail sends the mailqueue every 30 minutes. At the
 > moment he has to stay 30 minutes online to be sure that all mail is
 > gone to the primary MX.
 >
 > Is there a command that would initiate sendmail to send all the mails
 > now? The user has not root-privileges on our machine of course.

 In the "privacy flags" section of sendmail.cf, there is a
 definition Opgoaway,restrictqrun

 Remove restrictqrun to allow non-root users to start the queue processing.
 You might also like to rearrange the MXs. We are the 1st MX for our
 customers like this, and we have defined:

 # If we are the best MX for a host, try directly instead of generating
 # local config error.
 OwTrue

 That way a remote site will deliver straight to you, without trying
 the customer connection.  You then send to your customer.  Only works for
 "hosts", so you need to get your customer to name their mail
 machine "customer.com" as well as
 "hostname.customer.com" in the DNS.  Just put an A record in
 the DNS for "customer.com".

   Az idezet forditasa:

 > Masodlagos MX rekordot biztositunk az u:gyfeleinknek.  Az u:gyfelek ezutan automatikusan
 > csatlakoznak naponta akar to:bbszo:r is a szolgaltatasunkhoz es leszedik az elso"dleges MX
 > rekordhoz tartozo leveleket.  (Nem szolunk neki, amikor a tartomanyahoz level
 > erkezik.) A sendmail programunk minden 30 percben elku:ldi a sorban felhalmozodott
 > leveleket.  Tehat jelen pillanatban legalabb 30 percig fenn kell lennie az u:gyfelnek, hogy
 > rendben megkapja az elso"dlegesre MX rekordra.
 >
 > Letezik valamilyen parancs a sendmail programhoz, amellyel azonnal lekerhetju:k az o:sszes
 > levelu:nket?  A felhasznalomnak termeszetesen nincsenek rendszergazdai jogosultsagai az adott
 > gepen.

 A sendmail.cf "privacy flags" beallitasai ko:zo:tt van egy definicio, az
 Opgoaway,restrictqrun.

 Vegyu:k ki innen a restrictqrun beallitast, amivel a nem root felhasznalok is megindithatjak a
 sor feldolgozasat.  Valoszinu"leg az MX-ek atrendezesere is szu:kseg lesz.  Mi vagyunk az elso" MX
 az ilyen tipusu u:gyfelek szamara, es ezt adtuk meg:

 # Ha mi vagyunk a legjobb MX a level szamara, akkor ne generaljunk
 # helyi beallitasi hibat, hanem probalkozzunk ko:zvetlenu:l.
 OwTrue

 Ezzel mar a tavoli gep ko:zvetlenu:l neku:nk ku:ld anelku:l, hogy probalkozna az u:gyfel kapcsolataval.
 Ezt majd tovabbku:ldju:nk az u:gyfelnek.  Ez csak halozati nevek eseteben mu"ko:dik, tehat az u:gyfelu:nknek
 el kell neveznie a leveleket fogado gepet "customer.com"-nak, valamint a fel kell venni a
 "hostname.customer.com" cimet is a DNS-be.  Ehhez egyszeru"en csak elegendo" egy A rekordot
 betenni a "customer.com"-hoz.

   28.5.4. Miert kapok folyton "Relaying Denied" hibat, amikor mas
   gepekro"l ku:ldo:k levelet?

   A FreeBSD alapertelmezett telepitese soran a sendmail ugy
   allitodik be, hogy csak arrol a gepro"l ku:ldhetu:nk vele levelet,
   ahol fut. Peldaul, ha POP szerver is elerheto", akkor a
   felhasznalok meg tudjak nezni a leveleiket az iskolabol, munkabol
   vagy barmilyen mas tavoli helyro"l, de leveleket onnan tovabbra
   sem tudnak ku:ldeni. Altalaban par pillanattal a probalkozas utan
   a MAILER-DAEMON ku:ldeni fog egy "5.7 Relaying Denied" ("5.7 A
   tovabbitas nem engedelyezett") u:zenetet.

   To:bb leheto"segu:nk is van ennek megkeru:lesere. Az a
   legegyszeru"bb modszer, ha az internet-szolgaltatonk cimet
   felvesszu:k az /etc/mail/relay-domains allomanyba. Peldaul igy:

 # echo "az.internet.szolgaltato.net" > /etc/mail/relay-domains

   Az allomany letrehozasa vagy modositasa utan ujra kell inditanunk
   a sendmail programot. Ez remeku:l mu"ko:dik abban az esetben, ha
   rendszergazdak vagyunk es nem akarunk a helyi gepro"l levelet
   ku:ldeni, vagy egy masik gepen vagy akar masik
   internet-szolgaltatoval akarunk valamilyen kattingatos levelezo"
   programot hasznalni. Olyankor is nagyon hasznos lehet, amikor csak
   egy vagy ket e-mail hozzaferest allitottunk be. Ha egyszerre to:bb
   cimet is fel szeretnenk venni, akkor nyissuk meg ezt az allomanyt
   a kedvenc szo:vegszerkeszto"nkkel es irjuk be a tartomanyokat,
   soronkent egyet:

 sajat.internet.szolgaltato.net
 masik.internet.szolgaltato.com
 felhasznalok-internet.szolgaltato.ja
 www.minta.org

   Innento"l kezdve a listaban szereplo" barmelyik gepro"l tudunk
   levelet ku:ldeni (felteve, hogy az adott felhasznalo hozzafer a
   gepu:nkho:z). Ezzel gyo:nyo:ru"en megoldhatjuk, hogy a
   felhasznaloink kepesek legyenek tavolrol is levelet ku:ldeni a
   rendszeru:nko:n keresztu:l anelku:l, hogy masok pedig szemetet
   ku:ldenenek at rajtunk.

     --------------------------------------------------------------

28.6. Komolyabb temak

   A ko:vetkezo" szakaszban szoba keru:lnek olyan komolyabb temak,
   mint peldaul a levelek konfiguracioja es a levelezes beallitasa az
   egesz tartomany szamara.

     --------------------------------------------------------------

  28.6.1. Alapveto" beallitasok

   Alapbol kepesnek kell lennu:nk leveleket ku:ldeni ku:lso" gepekre
   egeszen addig, amig az /etc/resolv.conf allomany a megfelelo"
   beallitasokat tartalmazza vagy egy sajat nevszervert futtatunk. Ha
   szeretnenk, hogy a gepu:nkre erkezo" levelek elerjek a FreeBSD-s
   gepu:nko:n futo leveltovabbito u:gyno:ko:t (peldaul a sendmail
   programot), akkor erre ket modszer kinalkozik:

     * Futtassunk sajat nevszervert es hozzunk letre magunknak egy
       tartomanyt. Peldaul FreeBSD.org.

     * Ko:zvetlenu:l a gepu:nkre ku:ldessu:k a leveleket. Ezt ugy
       tehetju:k meg, ha egybo"l a gepu:nkho:z tartozo DNS nevre
       ku:ldetju:k a leveleket. Peldaul az enyem.FreeBSD.org cimre.

   Fu:ggetlenu:l attol, hogy a fentiek ko:zu:l melyik megoldast
   valasztjuk, a levelek csak akkor tudnak eljutni ko:zvetlenu:l a
   gepu:nkre, ha allando, statikus IP-cimmel rendelkezu:nk (tehat nem
   dinamikus cimmel, amit altalaban a betarcsazos PPP kapcsolatokhoz
   szoktak kiosztani). Ha tu"zfal mo:go:tt vagyunk, akkor valamilyen
   modon felenk kell iranyitani az SMTP forgalmat is. Ha
   ko:zvetlenu:l a gepu:nko:n akarjuk fogadni a leveleket, akkor a
   ko:vetkezo" ketto" ko:zu:l az egyik mindenkeppen kelleni fog:

     * Gondoskodjunk rola, hogy a hozzank tartozo DNS-ben (legkisebb
       sorszamu) MX rekord a gepu:nk IP-cimere mutat.

     * Gondoskodjunk rola, hogy a hozzank tartozo DNS-ben nincs
       semmilyen MX rekord a gepu:nkho:z.

   A fentiek ko:zu:l barmelyik eleg ahhoz, hogy ko:zvetlenu:l a
   gepu:nkre erkezzen meg a level.

   Probaljuk ki:

 # hostname
 enyem.FreeBSD.org
 # host enyem.FreeBSD.org
 enyem.FreeBSD.org has address 204.216.27.XX

   Ha ezt latjuk, akkor minden gond nelku:l lehet ku:ldeni levelet a
   <nevem@enyem.FreeBSD.org> a cimre (feltetelezve, hogy a sendmail
   megfelelo"en mu"ko:dik az enyem.FreeBSD.org cimen).

   Ha viszont ehhez hasonlot tapasztalunk:

 # host enyem.FreeBSD.org
 enyem.FreeBSD.org has address 204.216.27.XX
 enyem.FreeBSD.org mail is handled (pri=10) by kozpont.FreeBSD.org

   A gepu:nkre (enyem.FreeBSD.org) ku:ldo:tt o:sszes levelet a
   kozpont szedi o:ssze ugyanazon felhasznaloi nevvel ahelyett, hogy
   ko:zvetlenu:l a gepu:nkre ku:ldeni ezeket.

   Az imenti adatokat a DNS szerver hatarozza meg. A levelek
   tovabbitasaval kapcsolatos informaciokat az MX mint Mail eXchange
   DNS-rekord tarolja. Ha nincs ilyen MX rekord, akkor az IP-cim
   alapjan ko:zvetlenu:l az adott gephez keru:l a level.

   Peldaul a freefall.FreeBSD.org MX rekordja hajdanan igy nezett ki:

 freefall                MX      30      mail.crl.net
 freefall                MX      40      agora.rdrop.com
 freefall                MX      10      freefall.FreeBSD.org
 freefall                MX      20      who.cdrom.com

   Lathatjuk, hogy a freefall eseteben to:bb MX bejegyzes is
   szerepel. A legalacsonyabb MX-szamu gep fogja kapni az erre a
   cimre beerkezo" leveleket, amennyiben elerheto". Ha valamilyen
   okbol nem erheto" el, akkor helyette ideiglenesen a to:bbiek
   (melyeket neha csak "tartalek MX-eknek" neveznek) veszik at a
   levelet es atadjak a legalacsonyabb szamunak, amint az ujra
   elerheto"ve valik.

   A tartalek jelleggel megadott MX gepek akkor ernek tenylegesen
   valamit, ha teljesen mashonnan csatlakoznak az internethez. Az
   internet szolgaltato vagy egy ismero"su:nk gepe valoszinu"leg
   minden tovabbi nelku:l segit ennek megoldasaban.

     --------------------------------------------------------------

  28.6.2. Egy egesz tartomany leveleinek kezelese

   Egy levelezo" szerver beallitasahoz valahogy meg kell tudnunk
   oldalni, hogy a ku:lo:nbo:zo" munkaallomasokra ku:ldo:tt levelek
   ko:zvetlenu:l hozza fussanak be. Alapveto"en tehat arrol lenne
   szo, hogy a tartomanyunkon (ez ebben az esetben a *.FreeBSD.org)
   belu:li gepekre cimzett levelekre ez a gep "tart igenyt" es igy
   ezek ide iranyitodnak at, majd a felhasznalok erro"l a ko:zponti
   levelezo" szerverro"l kapjak meg a leveleiket.

   Az eletu:nk megko:nnyitesehez minden felhasznalonak letrehozzuk a
   sajat felhasznaloi nevet a levelezo" szerveren is. Ezt az
   adduser(8) paranccsal gyorsan el is vegezhetju:k.

   A levelezo" szerver lesz a halozat o:sszes munkaallomasahoz
   kirendelt levelvalto. Ezt a DNS beallitasai ko:zo:tt igy adhatjuk
   meg:

 enyem.FreeBSD.org       A       204.216.27.XX           ; Munkaallomas
                         MX      10 kozpont.FreeBSD.org  ; Levelezo" szerver

   Ezzel lenyegeben az A rekord figyelmen kivu:l hagyasaval
   atiranyitjuk a munkaallomasok szamara erkezo" o:sszes levelet a
   levelezo" szerverre. A levelek tehat az MX rekord altal mutatott
   cimre mennek ki.

   Ezt o:nalloan nem tudjuk elvegezni, hacsak nem futattunk egy sajat
   DNS szervert. Ha nincsen vagy nem is tudunk DNS szervert futtatni,
   akkor ebben a kerdesben egyeztessu:nk az internet-szolgaltatonkkal
   vagy barkivel, aki a DNS beallitasaiert felelo"s.

   Ha virtualis e-mail cimket is kezelu:nk, akkor a most ko:vetkezo"
   informacio meg a hasznunkra lehet. A pelda kedveert most
   feltesszu:k, hogy a tartomanyunkban van egy u:gyfelu:nk, jelen
   esetben az ugyfel1.org, es azt akarjuk, hogy az ugyfel1.org cimere
   ku:ldo:tt levelek a sajat levelezo" szerveru:nkre keru:ljenek at,
   a level.sajat.com cimre. A DNS-t ehhez igy kell beallitani:

 ugyfel1.org             MX      10      level.sajat.com

   Ha csak az ugyfel1.org levelezeset akarjuk kezelni, akkor ahhoz
   nem kell ku:lo:n A rekord.

     Megjegyzes: Vigyazzunk, mert az ugyfel1.org csak akkor
     pingelheto", ha letezik hozza A rekord.

   Befejezesu:l a levelezo" szerveru:nko:n futo sendmail szamara is
   fel kell tarnunk, hogy milyen tartomanyokhoz es/vagy halozati
   nevekhez fogadjon leveleket. Ezt to:bb modon is elvegezhetju:k. A
   ko:vetkezo"k barmelyik megfelel erre a celra:

     * A FEATURE(use_cw_file) hasznalata eseten vegyu:k fel a cimeket
       az /etc/mail/local-host-names allomanyba. Ha a sendmail 8.10
       elo"tti valtozatai eseteben ehhez az /etc/sendmail.cw
       allomanyra lesz szu:ksegu:nk.

     * Tegyu:k be a Cwsajat.cimunk.com sort az /etc/sendmail.cf vagy
       a sendmail 8.10 es keso"bbi valtozatai eseten az
       /etc/mail/sendmail.cf allomanyba.

     --------------------------------------------------------------

28.7. SMTP es az UUCP

   A FreeBSD-hez tartozo sendmail olyan gepek szamara lett
   kialakitva, amelyek ko:zvetlenu:l az internethez csatlakoznak. Az
   UUCP hasznalataval levelezo" rendszerek szamara egy masik
   konfiguracios allomanyt kell telepiteni a sendmail szamara.

   Az /etc/mail/sendmail.cf allitasa kezzel egyaltalan nem ko:nnyu".
   A sendmail 8. valtozata raadasul a konfiguracios allomanyokat az
   m4(1) elo"feldolgozo segitsegevel gyartja le, ahol a tenyleges
   beallitasok egy magasabb absztrakcios szinten jelennek meg. Az
   m4(1) tipusu konfiguracios allomanyok a /usr/share/sendmail/cf
   ko:nyvtarban talalhatoak. A cf alko:nyvtarban levo" README
   allomany igyekszik a felhasznalot bevezetni az m4(1) alapu
   beallitasok vilagaba.

   A mailertable nevu" leheto"seg hasznalataval tudjuk a legjobban
   tamogatni az UUCP protokollon keresztu:li kezbesitest. Ezzel
   felepu:l egy olyan adatbazis, amelyet a sendmail fel tud hasznalni
   a tovabbitast erinto" do:ntesekben.

   Ehhez elso"kent hozzuk is letre a sajat .mc allomanyunkat. Ehhez a
   /usr/share/sendmail/cf/cf ko:nyvtar tartalmaz nehany peldat.
   Hivjuk most ezt az allomnyunkat ize.mc neven. A ko:vetkezo"
   modszerrel tudjuk egy valos sendmail.cf allomannya alakitani:

 # cd /etc/mail
 # make ize.cf
 # cp ize.cf /etc/mail/sendmail.cf

   Egy atlagos .mc allomany egyebkent valahogy igy epu:l fel:

 VERSIONID(`verzioszam') OSTYPE(bsd4.4)

 FEATURE(accept_unresolvable_domains)
 FEATURE(nocanonify)
 FEATURE(mailertable, `hash -o /etc/mail/mailertable')

 define(`UUCP_RELAY', sajat.uucp.relay)
 define(`UUCP_MAX_SIZE', 200000)
 define(`confDONT_PROBE_INTERFACES')

 MAILER(local)
 MAILER(smtp)
 MAILER(uucp)

 Cw    sajat.al.nev
 Cw    azuucpgepneve.UUCP

   Az accept_unresolvable_domains, nocanonify es
   confDONT_PROBE_INTERFACES leheto"segekre hivatkozo sorok
   megakadalyozzak, hogy a level kezbesiteseben a DNS is szerepet
   jatsszon. Az UUCP_RELAY az UUCP alapu kezbesites tamogatasat
   engedelyezi. Egyszeru"en csak irjunk ide egy internetes halozati
   nevet, amely kepes feldolgozni az .UUCP altartomany cimeit. Az
   esetek to:bbsegeben ide az internet-szolgaltatonk levelek
   tovabbku:ldeseert felelo"s gepe keru:l.

   Miutan ezzel vegeztu:nk, szu:ksegu:nk lesz meg az
   /etc/mail/mailertable allomanyra is. Ha a ku:lvilag fele csak
   egyetlen o:sszeko:ttetest hasznalunk a levelekhez, akkor az alabbi
   pontosan megfelel:

 #
 # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
 .                             uucp-dom:sajat.uucp.relay

   Egy bonyolultabb pelda pedig igy nez ki:

 #
 # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
 #
 horus.interface-business.de   uucp-dom:horus
 .interface-business.de        uucp-dom:if-bus
 interface-business.de         uucp-dom:if-bus
 .heep.sax.de                  smtp8:%1
 horus.UUCP                    uucp-dom:horus
 if-bus.UUCP                   uucp-dom:if-bus
 .                             uucp-dom:

   Az elso" harom sor azokat a specialis eseteket kezeli, ahol a
   tartomany fele ku:ldo:tt levelek nem az alapertelmezett uton
   visszu:k tovabb, hanem valamelyik UUCP szomszed fele es igy "le
   tudjuk ro:viditeni" a kezbesites utvonalat. Az ezeket ko:veto" sor
   dolgozza fel a helyi Ethernet tartomany fele STMP protokollal
   tovabbithato leveleket. Vegu:l az UUCP szomszedokat is felsoroljuk
   az .UUCP altartomany jelo:lese szerint, igy megengedju:k, hogy a
   uucp-szomszed! cimzett felu:lbiralja az alapertelmezett
   szabalyokat. Az utolso sorban mindig egyetlen pont szerepel, ami
   minden masra illeszkedik, igy az UUCP kezbesites egy olyan UUCP
   szomszed fele halad, amely a vilag fele egy univerzalis levelezo"
   atjaronak tekintheto". A uucp-dom: kulcsszo mo:go:tt szereplo"
   o:sszes csomopont nevenek ervenyes UUCP szomszedra kell utalnia,
   amelyet a uuname paranccsal le is tudunk elleno"rizni.

   A feladatbol mar csak annyi maradt hatra, hogy hasznalat elo"tt
   ezt az allomanyt at kell alakitani DBM adatbazis formatumba. Az
   ehhez szu:kseges parancsot erdemes mailertable allomany elejere
   bejegyzesben felirni. A mailertable megvaltoztatasakor mindig le
   kell futtatni ezt a parancsot.

   Utolso jotanacs: ha nem lennenk biztosak valamelyik kezbesitesi
   utvonal mu"ko:deseben, ne felejtsu:k el a sendmail -bt
   beallitasat. Ezzel a sendmail az un. cimtesztelo" modban (address
   test mode) indul el. Gepelju:k be, hogy 3,0, majd irjuk be a
   tesztelni kivant cimet. Az utolso sorban lathatjuk a felhasznalt
   belso" leveltovabbito u:gyno:ko:t, a celgepet, amellyel ezt
   meghivjuk, es a (valoszinu"leg az atforditott) cimet. Innen a
   Ctrl+D billentyu"kombinacioval lephetu:nk ki.

 % sendmail -bt
 ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
 Enter <ruleset> <address>
 > 3,0 ize@pelda.com
 canonify           input: ize @ pelda . com
 ...
 parse            returns: $# uucp-dom $@ sajat.uucp.relay $: ize < @ pelda . com . >
 > ^D

     --------------------------------------------------------------

28.8. Csak ku:ldes beallitasa

   Keszitette: Bill Moran.

   Gyakran elo"fordulhat, hogy csak leveleket akarunk tovabbku:ldeni.
   Mint peldaul:

     * Asztali szamitogepu:nk van, de hasznalni akarunk olyan
       programokat, mint peldaul a send-pr(1). Ehhez az
       internet-szolgaltaton keresztu:l kell tovabbku:ldeni a
       levelet.

     * A szamitogepu:nk egy olyan szerver, amely nem helyben kezeli a
       leveleket, ezert az o:sszeset atku:ldi feldolgozasra.

   Szinte barmelyik levelku:ldo" u:gyno:k kepes beto:lteni ezt az
   u"rt. Sajnos elegge bonyolult helyesen beallitani ugy egy barmire
   kepes levelku:ldo"t, hogy egyszeru"en csak szabaduljon meg a
   levelekto"l. Ilyenkor a sendmail vagy a postfix hasznalataval
   tulajdonkeppen agyuval lo:vu:nk verebre.

   Tovabba, ha egy atlagos internet-hozzaferessel rendelkezu:nk,
   adodhat, hogy a szerzo"des egyszeru"en tiltja a "levelezo"
   szerver" futtatasat.

   Legegyszeru"bben ugy tudjuk kielegiteni az ilyen jellegu"
   igenyeket, ha feltelepitju:k a mail/ssmtp portot. A root
   felhasznaloval adjuk ki a ko:vetkezo" parancsokat:

 # cd /usr/ports/mail/ssmtp
 # make install replace clean

   Telepitese utan a mail/ssmtp portot a mindo:ssze negysoros
   /usr/local/etc/ssmtp/ssmtp.conf allomannyal allithatjuk be:

 root=valodiemail@minta.com
 mailhub=level.minta.com
 rewriteDomain=minta.com
 hostname=_GEPNEV_

   A root felhasznalo szamara feltetlenu:l egy valodi e-mail cimet
   adjuk meg. A level.minta.com helyere az internet-szolgaltatonk
   kimeno" leveleket tovabbito szerveret adjuk meg (bizonyos
   szolgaltatok ezt "kimeno" levelezo" szervernek" vagy "SMTP
   szervernek" nevezik).

   Ne felejtsu:k el sendmail demont sem letiltani, beleertve a
   kimeno" levelek kezeleset. Ennek reszleteit lasd a 28.4.2
   Szakaszban.

   A mail/ssmtp hasznalatanal meg adhatunk meg tovabbi beallitasokat
   is. A /usr/local/etc/ssmtp allomanyban vagy az ssmtp man oldalan
   talalhatunk peldakat es olvashatunk bo"vebben a temarol.

   Az ssmtp ilyen fajta beallitasaval a szamitogepu:nko:n levo"
   szoftverek is helyesen fognak mu"ko:dni, miko:zben nem sertju:k
   meg az internet-szolgaltato elo"irasait es nem tesszu:k leheto"ve,
   hogy a szamitogepu:nkro"l levelszemetet ku:ldhessenek.

     --------------------------------------------------------------

28.9. Levelezes betarcsazos kapcsolattal

   Ha statikus IP-cimu:nk van, akkor az alapertelmezett beallitasok
   to:keletesen megfelelo"ek szamunkra. Csupan a gepu:nkho:z tartozo
   internetes cimet kell megadnunk a gepu:nk nevenek es a sendmail
   elvegzi a to:bbit.

   Ha viszont dinamikusan kiosztott IP-cimmel rendelkezu:nk es
   betarcsazos PPP kapcsolaton keresztu:l csatlakozunk az
   internethez, akkor valoszinu"leg az internet-szolgaltato levelezo"
   szerveren van egy postaladank. Most tegyu:k fel, hogy a
   internet-szolgaltato tartomanya a szolgaltato.net es a
   felhasznaloi nev a felhasznalo, a gepu:nk neve pedig otthoni.bsdm,
   valamint az internet-szolgaltato reszero"l levelezesre a
   relay.szolgaltato.net gepet hasznalhatjuk.

   A postaladankbol ugy tudjuk leto:lteni a leveleket, ha telepitu:nk
   hozza egy programot. Erre a feladatra a fetchmail hibatlanul
   alkalmas, mivel to:bb ku:lo:nbo:zo" protokollt ismer. Ez a program
   csomagkent vagy a Portgyu"jtemenybo"l (mail/fetchmail) is
   elerheto". Az internet-szolgaltatok erre altalaban a POP
   protokollt ajanljak fel. Ha a felhasznaloi PPP alkalmazast
   hasznaljuk, allitsuk be az /etc/ppp/ppp.linkup allomanyt a
   ko:vetkezo" modon es igy a csatlakozaskor maguktol leto:lto"dnek a
   leveleink:

 MYADDR:
   !bg su felhasznalo -c fetchmail

   Ha a sendmail segitsegevel ku:ldju:k tovabb a leveleket a nem
   helyi hozzaferesek fele (ahogy azt lentebb is lathatjuk), akkor
   minden bizonnyal a csatlakozaskor arra is szu:ksegu:nk lesz, hogy
   a leveleket tarolo sor is feldolgozodjon. Ezt ugy oldhatjuk meg,
   ha az /etc/ppp/ppp.linkup allomanyba a fetchmail parancs utan a
   ko:vetkezo"t tesszu:k:

   !bg su felhasznalo -c "sendmail -q"

   Ez a pelda feltetelezi, hogy az otthoni.bsdm gepen van egy
   felhasznalo nevu" felhasznalonk. Az otthoni.bsdm gepen a
   felhasznalo felhasznaloi ko:nyvtaraban hozzunk letre egy
   .fetchmailrc allomanyt:

 poll szolgaltato.net protocol pop3 fetchall pass TitkosJelszo

   Ezt az allomanyt csak es kizarolag a felhasznalo olvashatja, mivel
   szerepel benne a hozzatartozo TitkosJelszo.

   Ugy tudunk a megfelelo" from: fejleccel ku:ldeni, ha
   felvilagositjuk a sendmail programot, hogy ne az
   <felhasznalo@otthoni.bsdm> cimet, hanem a
   <felhasznalo@szolgaltato.net> cimet hasznalja. So"t, a gyorsitas
   kedveert a sendmail szamara erdemes elarulni, hogy a
   relay.szolgaltato.net cimen keresztu:l ku:ldjo:n.

   A munka elvegzesehez elegendo" az alabbi .mc allomany:

 VERSIONID(`otthoni.bsdm.mc 1.0')
 OSTYPE(bsd4.4)dnl
 FEATURE(nouucp)dnl
 MAILER(local)dnl
 MAILER(smtp)dnl
 Cwlocalhost
 Cwotthoni.bsdm
 MASQUERADE_AS(`szolgaltato.net')dnl
 FEATURE(allmasquerade)dnl
 FEATURE(masquerade_envelope)dnl
 FEATURE(nocanonify)dnl
 FEATURE(nodns)dnl
 define(`SMART_HOST', `relay.szolgaltato.net')
 Dmotthoni.bsdm
 define(`confDOMAIN_NAME',`otthoni.bsdm')dnl
 define(`confDELIVERY_MODE',`deferred')dnl

   Az elo"zo" szakaszban talalhatjuk meg annak a modjat, hogy mikent
   varazsoljunk ebbo"l az .mc allomanybol egy sendmail.cf allomanyt.
   A sendmail.cf frissitese utan pedig ne felejtsu:k el a sendmail
   ujrainditasat!

     --------------------------------------------------------------

28.10. Az SMTP hitelesitese

   Irta: James Gorham.

   Levelezo" szerveru:nko:n az SMTP protokoll hitelesitesenek (SMTP
   Authentication) engedelyezese to:bb szempontbol is elo"nyo:kkel
   bir. Az SMTP hitelesitesenek bekapcsolasa egy ujabb reteget kepez
   a sendmail vedelmeben, es az olyan allandoan mozgasban levo"
   felhasznalok szamara is megoldast nyujt, akik anelku:l kepesek
   hasznalni ugyanazt a levelezo" szervert, hogy minden alkalommal
   ujrakonfiguralnak a levelezo" kliensu:ket.

    1. Telepitsu:k fel a security/cyrus-sasl2 portot. A
       security/cyrus-sasl2 port to:bb forditasi ideju" beallitast
       tamogat. Itt most az SMTP hitelesiteset fogjuk hasznalni,
       ezert gondoskodjunk a LOGIN opcio engedelyezesero"l.

    2. A security/cyrus-sasl2 telepites utan nyissuk meg
       szerkesztesre a /usr/local/lib/sasl2/Sendmail.conf allomanyt
       (vagy ha meg nem letezne, hozzuk letre), es benne vegyu:k fel
       a ko:vetkezo" sort:

 pwcheck_method: saslauthd

    3. Ezt ko:veto"en telepitsu:k a security/cyrus-sasl2-saslauthd
       portot, es tegyu:k bele az /etc/rc.conf allomanyba ezt a sort:

 saslauthd_enable="YES"

       Vegezetu:l inditsuk el a saslauthd demont:

 # /usr/local/etc/rc.d/saslauthd start

       Ez a demon fog ko:zvetiteni a sendmail es a FreeBSD passwd
       adatbazisa ko:zti hitelesitesben. Ezzel elkeru:lhetju:k az uj
       felhasznaloi nevek es jelszavak felvetelet az SMTP hitelesites
       hasznalatahoz, igy a hozzaferesek es a levelezes jelszava
       ugyanaz marad.

    4. Most pedig irjuk hozza az alabbi sorokat az /etc/make.conf
       allomanyhoz:

 SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
 SENDMAIL_LDFLAGS=-L/usr/local/lib
 SENDMAIL_LDADD=-lsasl2

       Ezek a sorok allitjak be a sendmail szamara, hogy forditas
       ko:zben a cyrus-sasl2 fu:ggvenyeit hasznalja. A sendmail
       ujraforditasa elo"tt mindenkeppen legyen fenn a cyrus-sasl2
       port.

    5. A sendmail ujraforditasat a ko:vetkezo" parancsok
       vegrehajtasaval intezhetju:k el:

 # cd /usr/src/lib/libsmutil
 # make cleandir && make obj && make
 # cd /usr/src/lib/libsm
 # make cleandir && make obj && make
 # cd /usr/src/usr.sbin/sendmail
 # make cleandir && make obj && make && make install

       A sendmail forditasa eseten semmilyen problemanak nem szabadna
       elo"fordulnia, kiveve ha a /usr/src ko:nyvtarat es a
       szu:kseges osztott ko:nyvtarakat nem valtoztatjuk ido"ko:zben
       tulsagosan gyakran.

    6. A sendmail leforditasa es ujratelepitese utan szerkesszu:k at
       az /etc/mail/freebsd.mc allomanyt (vagy azt az .mc allomanyt,
       amelyet eppen hasznalunk). Sok rendszergazda a hostname(1)
       parancs valaszat hasznalja fel az .mc tipusu allomanyok egyedi
       elnevezesehez). Irjuk bele a ko:vetkezo" sorokat:

 dnl set SASL options
 TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
 define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl

       Ezek allitjak be a sendmail szamara a felhasznalok
       hitelesitesere alkalmas ku:lo:nbo:zo" modszereket. Ha a
       pwcheck modszer helyett valami mast akarunk hasznalni, akkor
       jarjunk utana a dokumentacioban.

    7. Zarasul futassuk le a make(1) parancsot az /etc/mail
       ko:nyvtarban. Igy lefut az uj .mc allomanyunk es letrejo:n egy
       freebsd.cf (vagy amilyen nevet az .mc allomanynak megadtunk)
       .cf allomany. Ezutan a make install restart parancs kiadasaval
       masoltassuk at ezt a sendmail.cf helyere es szabalyosan
       inditassuk ujra a sendmail szolgaltatast. A folyamatrol
       reszletesebb tajekoztatast az /etc/mail/Makefile allomany tud
       nyujtani.

   Ha eddig minden a legnagyobb rendben to:rtent, akkor most mar
   kepesek vagyunk bejelentkezesi informaciot is atadni a levelezo"
   kliensnek es elku:ldeni egy tesztu:zenetet. A hibak kiszu"resehez
   allitsuk a sendmail LogLevel opciojat az 13 ertekre es figyelju:k
   a /var/log/maillog allomanyt.

   Tovabbi felvilagositasert olvassuk el a sendmail SMTP
   hitelesitessel foglalkozo oldalat (angolul).

     --------------------------------------------------------------

28.11. Levelezo" kliensek

   Keszitette: Marc Silver.

   A levelezo" kliens (Mail User Agent, MUA) egy olyan alkalmazas,
   amelyik elektronikus levelek ku:ldesere es fogadasara hasznalhato.
   Azonkivu:l, ahogy az e-mail "fejlo"dik" es egyre bonyolultabba
   valik, a levelezo" kliensek is egyre inkabb ero"sebbe valnak abban
   a tekintetben, ahogy az e-maileket kezelik. Ezzel egyu:tt a
   felhasznalok is egyre to:bb leheto"seget es rugalmassagot kapnak.
   A FreeBSD szamos levelezo" klienst tamogat, mindegyiku:k
   ko:nnyeden telepitheto" a FreeBSD Portgyu"jtemenye segitsegevel. A
   felhasznalok valaszthatnak a grafikus kliensek, mint peldaul az
   evolution vagy a balsa es a konzolos kliensek, peldaul a mutt,
   pine vagy mail ko:zo:tt, esetleg hasznalhatjak a nagyobb
   szervezetek reszero"l felkinalt webes felu:leteket is.

     --------------------------------------------------------------

  28.11.1. mail

   A mail(1) a FreeBSD alapertelmezett levelezo" kliense. Egy olyan
   konzolos alkalmazas, amelyben elerhetju:k az e-mailek ku:ldesehez
   es fogadasahoz szu:kseges o:sszes alapveto" funkciot, habar a
   csatolmanyokat csak korlatozottan kepes kezelni es csak a helyi
   postaladakat kezeli.

   Annak ellenere, hogy a mail o:nmaga nem kepes kommunikalni POP
   vagy IMAP szerverekkel, az ilyen postaladak tartalmat egy
   fetchmail-szeru" alkalmazassal (lasd 28.12 Szakasz) le tudjuk
   to:lteni a szamara is elerheto" helyi mbox allomanyba.

   A levelek ku:ldesehez es fogadasahoz egyszeru"en hivjuk be a mail
   programot a ko:vetkezo" modon:

 % mail

   Ezutan a /var/mail ko:nyvtarban talalhato felhasznaloi postaladank
   tartalmat automatikusan beolvassa a mail segedprogram. Ha a
   postalada u:res, akkor a program egybo"l befejezi futasat es
   ko:zli, hogy nem talalt levelet. Amikor viszont tudott beolvasni
   leveleket, megjelenik egy felu:let, ahol a beerkezett u:zenetek
   listajat lathatjuk. Az u:zenetek automatikusan sorszamozodnak,
   ahogy ezt az alabbi pelda is szemlelteti:

 Mail version 8.1 6/6/93.  Type ? for help.
 "/var/mail/marcs": 3 messages 3 new
 >N  1 root@localhost        Mon Mar  8 14:05  14/510   "proba"
  N  2 root@localhost        Mon Mar  8 14:05  14/509   "felhasznaloi hozzaferes"
  N  3 root@localhost        Mon Mar  8 14:05  14/509   "minta"

   Az u:zenetek olvasasanak a t paranccsal kezdhetu:nk neki, amelyet
   az elolvasando u:zenet sorszama ko:vet. Ebben a peldaban az elso"
   e-mailt nyitjuk meg:

 & t 1
 Message 1:
 From root@localhost  Mon Mar  8 14:05:52 2004
 X-Original-To: marcs@localhost
 Delivered-To: marcs@localhost
 To: marcs@localhost
 Subject: proba
 Date: Mon,  8 Mar 2004 14:05:52 +0200 (SAST)
 From: root@localhost (Charlie Root)

 Ezt az uzenetet probabol kuldom, valaszolj ra, ha megkaptad.

   Ahogy az a fenti peldabol is latszik, a t billentyu" hatasara az
   u:zenet a teljes fejlecevel egyu:tt jelenik meg. Az u:zenetek
   listajat a h billentyu"vel hozhatjuk vissza.

   Ha egy levelre valaszolni szeretnenk, akkor ezt a mail paranccsal
   is megtehetju:k, vagy az R vagy az r parancsokkal. Az R arra
   utasitja a mail programot, hogy csak az u:zenet ku:ldo"jenek
   valaszoljon, mig az r hatasara nem csupan a ku:ldo", hanem az
   u:zenet o:sszes cimzettje megkapja a valaszunkat. A parancshoz
   hozzatu"zhetju:k egy level sorszamat is, ekkor az adott levelre
   fogunk valaszolni. Miutan kiadtuk a parancsot, irjuk meg a
   valaszunkat es uj sorban kezdve zarjuk le az u:zenetet egyetlen .
   beirasaval. Valahogy igy:

 & R 1
 To: root@localhost
 Subject: Re: proba

 Koszonom, megkaptam a leveledet.
 .
 EOT

   Uj levelet az m segitsegevel tudunk ku:ldeni, ami utan meg kell
   adnunk a cimzettet. Egyszerre to:bb cimzettet is meg tudunk adni,
   ha a cimzett helyen cimeiket egy , karakterrel elvalasztva
   soroljuk fel. Ezutan a level temaja is megadhato, amit vegu:l a
   level szo:vege ko:vet. Az u:zenetet egy uj sorban megadott
   egyetlen . segitsegevel zarhatjuk le.

 & mail root@localhost
 Subject: Elsajatitottam a mail hasznalatat

 Most mar en is tudok levelet irni es fogadni a mail hasznalataval... :)
 .
 EOT

   Amikor a mail segedprogramban vagyunk, a ? hasznalataval barmikor
   segitseget kerhetu:nk, valamint a mail mu"ko:desevel kapcsolatban
   a mail(1) man oldalat erdemes felkeresni.

     Megjegyzes: Ahogy azt mar korabban is emlitettu:k, a mail(1)
     parancsot eredetileg nem keszitettek fel az csatolt allomanyok
     kezelesere, ezert igen gyengen banik velu:k. Az ujabb levelezo"
     kliensek, mint peldaul a mutt, a csatolt allomanyokat sokkal
     intelligensebb modon kezelik. Ha viszont ragaszkodunk a mail
     hasznalatahoz, akkor a converters/mpack port hasznalatat erdemes
     megfontolnunk.

     --------------------------------------------------------------

  28.11.2. mutt

   A mutt apro merete ellenere egy igen komoly levelezo" kliens es
   remek leheto"segeket ajanl fel. Ime izeliteskeppen ko:zu:lu:k
   nehany:

     * Kepes az u:zeneteket szalakba rendezni

     * Az e-mailek titkositasara es elektronikus alairasara tamogatja
       a PGP hasznalatat

     * MIME tamogatas

     * Maildir tamogatas

     * Nagyfoku testreszabhatosag

   Ezen leheto"segei reven a mutt ez egyik legfejlettebb levelezo"
   kliens. A mutt reszletesebb bemutatasat a http://www.mutt.org
   cimen talaljuk (angolul).

   A mutt stabil valtozata a mail/mutt port hasznalataval
   telepitheto" fel, miko:zben a fejlesztes alatt levo" valtozatot a
   mail/mutt-devel port telepiti. Miutan a portot sikeru:lt
   felraknunk, a mutt az alabbi parancs begepelesevel indithato el:

 % mutt

   A mutt indulasa utan automatikusan beolvassa a /var/mail
   ko:nyvtarban megtalalhato felhasznaloi postaladat es ha
   lehetseges, akkor megjeleniti a tartalmat. Ha nincsen level a
   felhasznalo postaladajaban, akkor a mutt a felhasznalo parancsaira
   var. Ezen a kepen a mutt u:zenetlistaja lathato:

   A levelek elolvasasahoz egyszeru"en csak valasszuk ki a kurzorral
   es nyomjuk meg az Enter billentyu"t. Ezutan a mutt igy mutatja a
   levelet:

   Ahogy azt mar a mail(1) parancsnal is megszokhattuk, a mutt is
   leheto"ve teszi, hogy vagy csak a ku:ldo"nek, vagy pedig rajta
   kivu:l meg az o:sszes cimzettnek is valaszoljunk. A level
   ku:ldo"jenek az r lenyomasaval tudunk valaszolni. A csoportos
   valaszadashoz pedig, ahol tehat a ku:ldo"n kivu:l a cimzettek is
   megkapjak a levelu:nket, a g billentyu"t kell hasznalni.

     Megjegyzes: A mutt az e-mailek letrehozasahoz es
     megvalaszolasahoz a vi(1) szo:vegszerkeszto"t hasznalja. Ezt ugy
     tudjuk atallitani, ha a ko:nyvtarunkban talalhato .muttrc
     allomanyban atirjuk az editor valtozot, vagy erteket adunk az
     EDITOR ko:rnyezeti valtozonak. A mutt beallitasarol to:bbet a
     http://www.mutt.org cimen tudhatunk meg.

   Egy uj level megirasahoz nyomjuk le az m gombot. Miutan ellattuk
   ervenyes temaval a levelet, a mutt elinditja a vi(1)
   szo:vegszerkeszto"t es nekilathatunk a level szo:vegenek. Amint
   befejeztu:k, mentsu:k el es lepju:nk ki a vi szerkeszto"bo"l.
   Ezutan visszakapjuk a mutt felu:letet, ahol a ku:ldendo" e-mail
   o:sszefoglalasat lathatjuk. A levelet vegu:l az y lenyomasaval
   ku:ldhetju:k el. Erre a ko:vetkezo" kepen lathatunk egy peldat:

   A mutt ezenkivu:l meg rengeteg segitseget is tartalmaz, amelyet a
   legto:bb menu:bo"l a ? gomb lenyomasaval erhetu:nk el. A felso"
   sorban mindig lathatjuk a kiadhato parancsok ro:vid
   o:sszefoglalasat.

     --------------------------------------------------------------

  28.11.3. pine

   A pine alapveto"en a kezdo" felhasznalok szamara irodott, de
   szamos komolyabb leheto"seget is tamogat.

     Figyelem: A pine szoftverrel kapcsolatban a multban mar rengeteg
     tavolrol kihasznalhato sebezheto"seg latott napvilagot, es ennek
     ko:szo:nheto"en a tamadok megfelelo"en elo"keszitett e-mailek
     segitsegevel tetszo"leges kodot tudnak futtatni a rendszeren
     levo" helyi felhasznalokon keresztu:l. Noha az o:sszes ilyen
     ismert hibat javitottak, de a FreeBSD biztonsagi tisztje szerint
     a pine kodjat biztonsag szempontjabol annyira hanyag modon
     irtak, hogy tovabbi, eddig meg felfedezetlen sebezheto"segeket
     is magaban rejt. Ennek megfelelo"en tehat a pine hasznalata
     mindenkinek csak sajat felelo"ssegre javasolt.

   A pine jelenlegi verzioja a mail/pine4 porton keresztu:l
   telepitheto". A telepites lezajlasa utan a pine a ko:vetkezo"
   paranccsal indithato:

 % pine

   A pine elso" futtatasa soran egy u:dvo:zlo" u:zenetet es egy
   ro:vid bemutatkozast jelenit meg, valamint a pine fejleszto"i arra
   kerik a felhasznalokat, hogy ku:ldjenek nekik egy nevtelen
   u:zenetet, amibo"l le tudjak szu"rni mennyien hasznaljak a
   kliensu:ket. A nevtelen u:zenet elku:ldesehez a Enter lenyomasaval
   jarulhatunk hozza vagy az E hasznalataval enelku:l tudunk kilepni
   a kepernyo"ro"l. Ezt az u:dvo:zlo" kepernyo"t itt lathatjuk:

   A felhasznalo ezutan a fo"menu:be keru:l, ahol a
   kurzorbillentyu"kkel minden gond nelku:l tudunk mozogni. Ebben a
   fo"menu:ben a levelek megirasara, a leveleket tarolo ko:nyvtarak
   tallozasara vagy eppen a cimjegyzek karbantartasara
   gyorsbillentyu"ket is hasznalhatuk. A fo"menu: alatt szerepel az
   adott menu:ben vegrehajthato feladatokhoz tartozo gyorsbillentyu"k
   ro:vid felsorolasa.

   A pine alapertelmezes szerint az inbox ko:nyvtarat nyitja meg. A
   bennelevo" u:zenetek listajanak megtekintesehez nyomjuk a I gombot
   vagy valasszuk ki a lentihez hasonlo modon a MESSAGE INDEX
   menu:pontot:

   Az u:zenetek listajaban az adott ko:nyvtarban talalhato u:zenetek
   lathatjuk, es ko:ztu:k a kurzorbillentyu"kkel mozoghatunk. A
   kiemelt u:zenet az Enter lenyomasaval olvashato el.

   A lenti kepen egy ilyen pelda u:zenetet lathatunk a pine
   programban. A rendelkezesu:nkre allo gyorsbillentyu"k ilyenkor is
   a kepernyo" aljan megjelennek referenciakent. Ilyen
   gyorsbillentyu" to:bbek ko:zt az r gomb, amelynek hatasara a
   klienssel megvalaszolhatjuk a eppen lathato u:zenetet.

   A pine kliensen belu:l a pico szo:vegszerkeszto" segitsegevel
   tudunk megvalaszolni egy e-mailt, amely alapbol a pine melle
   telepu:l. A pico megko:nnyiti a navigaciot az u:zenetekben es
   sokkal elnezo"bb a kezdo" felhasznalokkal, mint peldaul a vi(1)
   vagy a mail(1). Ha befejeztu:k a valaszt, az u:zenetet a Ctrl+X
   billentyu"kombinacioval tudjuk elku:ldeni. A pine erre
   megero"sitest fog kerni.

   A pine alkalmazas a fo"menu:bo"l elerheto" SETUP menu:pont
   meghivasaval szabhato testre. A tovabbi reszleteket a
   http://www.washington.edu/pine oldalon talalhatjuk (angolul).

     --------------------------------------------------------------

28.12. A fetchmail hasznalata

   Irta: Marc Silver.

   A fetchmail egy mindentudo IMAP es POP kliens, amely leheto"ve
   teszi a felhasznalok szamara, hogy automatikusan to:ltsenek le
   leveleket tavoli IMAP es POP szerverekro"l es lementsek azokat a
   helyi postaladaikba. Igy a levelek sokkal ko:nnyebben elerheto"ek.
   A fetchmail a mail/fetchmail port segitsegevel telepitheto", es
   szamos leheto"seget ajanl fel, to:bbek ko:zt:

     * A POP3, APOP, KPOP, IMAP, ETRN es az ODMR protokollok
       ismerete.

     * Kepes SMTP hasznalataval levelet tovabbitani, es ennek reven a
       szu"res, tovabbku:ldes es az alnevek hasznalata a megszokott
       modon mu"ko:dik.

     * Demonkent futtatva kepes adott ido"ko:zo:nkent elleno"rizni a
       frissen erkezo" u:zeneteket.

     * Kepes egyszerre to:bb postaladat is kezelni, majd ezek
       tartalmat a beallitasainak megfelelo"en tovabbku:ldeni a
       ku:lo:nbo:zo" helyi felhasznaloknak.

   Noha a fetchmail o:sszes leheto"segenek aprolekos bemutatasa
   meghaladna ennek a leirasnak a kereteit, azert szot keritu:nk
   nehany alapveto" funkciojara. A fetchmail segedprogramnak a
   megfelelo" mu"ko:deshez egy .fetchmailrc nevu" konfiguracios
   allomanyra van szu:ksege. Ez az allomany tarolja a szerverekre
   vonatkozo, valamint a bejelentkezeshez szu:kseges informaciokat.
   Az allomany kenyes tartalmara tekintettel azt javasoljuk, hogy
   csak a tulajdonosanak engedelyezzu:k az olvasasat:

 % chmod 600 .fetchmailrc

   Az alabb ismertetesre keru:lo" .fetchmailrc allomanyban azt
   lathatjuk, ahogy egyetlen felhasznalo postaladajat erju:k el a POP
   protokoll hasznalataval. Arra utasitja a fetchmail programot, hogy
   csatlakozzon a levelezes.com cimre a joska felhasznaloval es az
   XXX jelszoval. Ebben a peldaban feltetelezzu:k, hogy a joska nevu"
   felhasznalo letezik a rendszeru:nkben is.

 poll levelezes.com protocol pop3 username "joska" password "XXX"

   A ko:vetkezo" peldaban to:bb POP es IMAP szerverhez csatlakozunk
   es ahol lehet, to:bb helyi felhasznalonak iranyitjuk at a
   leveleket:

 poll levelezes.com proto pop3:
 user "joska", with password "XXX", is "jozsi" here;
 user "andrea", with password "XXXX";
 poll levelezes2.net proto imap:
 user "jani", with password "XXXXX", is "hardstuff" here;

   A fetchmail program a -d beallitas megadasaval demonkent is
   elindithato, amely utan meg kell adni (masodpercekben) azt az
   ido"ko:zt, aminek elteltevel a fetchmail lekerdi a .fetchmailrc
   allomanyban felsorolt szervereket. Az alabbi peldaban a fetchmail
   600 masodpercenkent keri el a leveleket:

 % fetchmail -d 600

   A fetchmail tovabbi leheto"segeiro"l es mu"ko:desero"l a
   http://fetchmail.berlios.de/ oldalon olvashatunk (angolul).

     --------------------------------------------------------------

28.13. A procmail hasznalata

   Irta: Marc Silver.

   A procmail segedprogram egy hihetetlenu:l ero"s alkalmazas,
   mellyel a beerkezo" leveleinket tudjuk szu"rni. A felhasznalok
   szamara olyan "szabalyok" megadasat teszi leheto"ve, amelyekre
   aztan a rendszer illeszti a bejo:vo" leveleket, es az eredmenynek
   megfelelo"en elvegez bizonyos feladatokat vagy atiranyitja a
   levelet mas postaladakba es/vagy e-mail cimekre. A procmail a
   mail/procmail porttal telepitheto" fel. Miutan ez sikeru:lt, akar
   ko:zvetlenu:l be is epithetju:k a legto:bb levelezo" kliensbe.
   Erro"l az adott levelezo" kliens dokumentaciojaban olvashatunk
   to:bbet. A procmail ugy is integralhato, ha a felvesszu:k a
   ko:vetkezo" sort a procmail szolgaltatara igenyt tarto felhasznalo
   ko:nyvtaraban talalhato .forward allomanyba:

 "|exec /usr/local/bin/procmail || exit 75"

   A ko:vetkezo" szakaszban lathatjuk a procmail nehany alapveto"
   szabalyat, valamint ezek ro:vid leirasat. Ezeket a szabalyokat a
   .procmailrc allomanyba kell beleirni, amely szinten a felhasznalo
   ko:nyvtaraban leledzik.

   Ezen szabalyok to:bbsege a procmailex(5) man oldalon is olvashato.

   A <felhasznalo@levelezes.com> cimro"l erkezo" leveleket iranyitsuk
   at a <jocim@levelezes2.com> ku:lso" cimre:

 :0
 * ^From.*felhasznalo@levelezes.com
 ! jocim@levelezes2.com

   Minden 1000 byte-nal kisebb levelet ku:ldju:nk at a
   <jocim@levelezes2.com> ku:lso" cimre:

 :0
 * < 1000
 ! jocim@levelezes2.com

   Ku:ldju:k at az o:sszes <masik@levelezes.com> cimre ku:ldo:tt
   levelet a masik postaladaba:

 :0
 * ^TOmasik@levelezes.com
 masik

   Ku:ldju:k az o:sszes olyan levelet a /dev/null eszko:zre, amelyek
   a temajaban szerepel a "Spam" szo:

 :0
 ^Subject:.*Spam
 /dev/null

   Egy hasznos szabaly, amellyel el tudjuk kapni a FreeBSD.org
   levelezesi listairol erkezo" leveleket es el tudjuk raktarozni
   ezeket a sajat postaladajukba:

 :0
 * ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG
 {
         LISTNAME=${MATCH}
         :0
         * LISTNAME??^\/[^@]+
         FreeBSD-${MATCH}
 }

     --------------------------------------------------------------

                     Fejezet 29. Halozati szerverek

   Atdolgozta: Murray Stokely.

29.1. Attekintes

   Ebben a fejezetben a UNIX tipusu rendszerekben leggyakrabban
   alkalmazott halozati szolgaltatasok ko:zu:l fogunk nehanyat
   bemutatni. Ennek soran megismerju:k a halozati szolgaltatasok
   ku:lo:nbo:zo" tipusainak telepiteset, beallitasat, teszteleset es
   karbantartasat. A fejezet tartalmat folyamatosan peldakkal
   igyekszu:nk illusztralni.

   A fejezet elolvasasa soran megismerju:k:

     * hogyan dolgozzunk az inetd demonnal;

     * hogyan allitsuk be a halozati allomanyrendszereket;

     * hogyan allitsunk be egy halozati informacios szervert a
       felhasznaloi hozzaferesek megosztasara;

     * hogyan allitsuk be automatikusan a halozati hozzaferesu:nket a
       DHCP hasznalataval;

     * hogyan allitsunk be nevfeloldo szervereket;

     * hogyan allitsuk be az Apache webszervert;

     * hogyan allitsuk be az allomanyok atviteleert felelo"s (FTP)
       szervert;

     * a Samba hasznalataval hogyan allitsunk be Windows-os kliensek
       szamara allomany- es nyomtatoszervert;

     * az NTP protokoll segitsegevel hogyan egyeztessu:k az ido"t es
       datumot, hogyan allitsunk be egy ido"szervert;

     * a szabvanyos naplozo demon, a syslogd beallitasat halozati
       keresztu:li naplozasra.

   A fejezet elolvasasahoz ajanlott:

     * az /etc/rc szkriptek alapjainak ismerete;

     * az alapveto" halozati fogalmak ismerete;

     * a ku:lso" szoftverek telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

29.2. Az inetd "szuperszerver"

   Keszitette: Chern Lee. A FreeBSD 6.1-RELEASE valtozatahoz
   igazitotta: A FreeBSD Dokumentacios Projekt.

  29.2.1. Attekintes

   Az inetd(8) demont gyakran csak "internet szuperszerverkent"
   nevezik, mivel a helyi szolgaltatasok kapcsolatainak kezeleseert
   felelo"s. Amikor az inetd fogad egy csatlakozasi kerelmet, akkor
   eldo:nti rola, hogy ez melyik programhoz tartozik es elindit egy
   peldanyt belo"le, majd atadja neki a socketet (az igy meghivott
   program a szabvany bemenetehez, kimenetehez es hibajelzesi
   csatornajahoz kapja meg a socket leiroit). Az inetd hasznalataval
   ugy tudjuk cso:kkenteni a rendszeru:nk terheleset, hogy a csak
   alkalmankent meghivott szolgaltatasokat nem futtatjuk teljesen
   fu:ggetlen o:nallo modban.

   Az inetd demont elso"sorban mas demonok elinditasara hasznaljuk,
   de nehany trivialis protokollt ko:zvetlenu:l is kepes kezelni,
   mint peldaul a chargen, auth es a daytime.

   Ebben a fejezetben az inetd beallitasanak alapjait foglaljuk
   o:ssze mind parancssoros modban, mind pedig az /etc/inetd.conf
   konfiguracios allomanyon keresztu:l.

     --------------------------------------------------------------

  29.2.2. Beallitasok

   Az inetd mu"ko:dese az rc(8) rendszeren keresztu:l
   inicializalhato. Az inetd_enable ugyan alapbol a NO erteket veszi
   fel, vagyis tiltott, de a sysinstall hasznalataval mar akar a
   telepites soran bekapcsolhato attol fu:ggo"en, hogy a felhasznalo
   milyen konfiguraciot valasztott. Ha tehat a:

 inetd_enable="YES"

   vagy

 inetd_enable="NO"

   sort tesszu:k az /etc/rc.conf allomanyba, akkor azzal az inetd
   demont indithatjuk el vagy tilthatjuk le a rendszer inditasa
   soran. Az

 # /etc/rc.d/inetd rcvar

   paranccsal lekerdezhetju:k a pillanatnyilag ervenyes beallitast.

   Emellett meg az inetd demonnak az inetd_flags valtozon keresztu:l
   ku:lo:nbo:zo" parancssori parametereket is at tudunk adni.

     --------------------------------------------------------------

  29.2.3. Parancssori parameterek

   Hasonloan a legto:bb szerverhez, az inetd viselkedeset is
   befolyasolni tudjuk a parancssorban atadhato ku:lo:nbo:zo"
   parameterekkel. Ezek teljes listaja a ko:vetkezo":

   inetd [-d] [-l] [-w] [-W] [-c maximum] [-C arany] [-a cim | nev]
   [-p allomany] [-R arany] [-s maximum] [konfiguracios allomany]

   Ezek a parameterek az /etc/rc.conf allomanyban az inetd_flags
   segitsegevel adhatoak meg az inetd reszere. Alapertelmezes szerint
   az inetd_flags erteke -wW -C 60, ami az inetd altal biztositott
   szolgaltatasok TCP protokollon keresztu:li wrappeleset kapcsolja
   be, illetve egy IP-cimro"l nem engedi a felkinalt szolgaltatasok
   elereset percenkent hatvannal to:bbszo:r.

   A kezdo" felhasznalok o:ro:mmel nyugtazhatjak, hogy ezeket az
   alapbeallitasokat nem szu:kseges modositaniuk, habar a
   keso"bbiekben majd feny deru:l arra, hogy a kiszolgalas
   gyakorisaganak szabalyozasa remek vedekezest nyujthat tulzottan
   nagy mennyisegu" kapcsolodasi kerelem ellen. A megadhato
   parameterek teljes listaja az inetd(8) man oldalan olvashato.

   -c maximum

           Az egyes szolgaltatasokhoz egyszerre felepitheto"
           kapcsolatok alapertelmezett maximalis szamat adja meg.
           Alapbol ezt a demont nem korlatozza. A max-child
           beallitassal ez akar szolgaltatasonkent ku:lo:n is
           megadhato.

   -C arany

           Korlatozza, hogy egyetlen IP-cimro"l alapbol hanyszor
           hivhatoak meg az egyes szolgaltatasok egy percen belu:l.
           Ez az ertek alapbol korlatlan. A
           max-connections-per-ip-per-minute beallitassal ez
           szolgaltatasonkent is definialhato.

   -R arany

           Megadja, hogy egy szolgaltatast egy perc alatt mennyiszer
           lehet meghivni. Ez az ertek alapertelmezes szerint 256. A
           0 megadasaval elto:ro:lju:k ezt a tipusu korlatozast.

   -s maximum

           Annak maximumat adja meg, hogy egyetlen IP-cimro"l
           egyszerre az egyes szolgaltatasokat mennyiszer tudjuk
           elerni. Alapbol ez korlatlan. Szolgaltatasonkent ezt a
           max-child-per-ip parameterrel tudjuk felu:lbiralni.

     --------------------------------------------------------------

  29.2.4. Az inetd.conf allomany

   Az inetd beallitasat az /etc/inetd.conf konfiguracios allomanyon
   keresztu:l vegezhetju:k el.

   Amikor az /etc/inetd.conf allomanyban modositunk valamit, az inetd
   demont a ko:vetkezo" paranccsal meg kell kernu:nk, hogy olvassa
   ujra:

   Pelda 29-1. Az inetd konfiguracios allomanyanak ujraolvasasa

 # /etc/rc.d/inetd reload

   A konfiguracios allomany minden egyes sora egy-egy demont ir le. A
   megjegyzeseket egy "#" jel vezeti be. Az /etc/inetd.conf allomany
   bejegyzeseinek formatuma az alabbi:

 szolgaltatas-neve
 socket-tipusa
 protokoll
 {wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-ip]]]
 felhasznalo[:csoport][/bejelentkezesi-osztaly]
 szerver-program
 szerver-program-parameterei

   Az IPv4 protokollt hasznalo ftpd(8) demon bejegyzese peldaul igy
   nez ki:

 ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l

   szolgaltatas-neve

           Ez az adott demon altal kepviselt szolgaltatast nevezi
           meg, amelynek szerepelnie kell az /etc/services
           allomanyban. Ez hatarozza meg, hogy az inetd milyen porton
           figyelje a beerkezo" kapcsolatokat. Ha egy uj
           szolgaltatast hozunk letre, akkor azt elo"szo:r az
           /etc/services allomanyba kell felvennu:nk.

   csatlakozas-tipusa

           Ennek az erteke stream, dgram, raw, vagy seqpacket lehet.
           A stream tipust hasznalja a legto:bb kapcsolat-orientalt
           TCP demon, miko:zben a dgram tipus az UDP szallitasi
           protokollt alkalmazo demonok eseteben hasznalatos.

   protokoll

           Valamelyik a ko:vetkezo"k ko:zu:l:

                  Protokoll                 Magyarazat          
           tcp, tcp4               TCP IPv4                     
           udp, udp4               UDP IPv4                     
           tcp6                    TCP IPv6                     
           udp6                    UDP IPv6                     
           tcp46                   TCP IPv4 es v6               
           udp46                   UDP IPv4 es v6               

   {wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-ip]]]

           A wait|nowait beallitas mondja meg, hogy az inetd demonbol
           meghivott demon sajat maga kepes-e kezelni kapcsolatokat.
           A dgram tipusu kapcsolatok eseteben egyertelmu"en a wait
           beallitast kell hasznalni, miko:zben a stream eseten, ahol
           altalaban to:bb szalon dolgozunk, a nowait megadasa
           javasolt. A wait hatasara altalaban egyetlen demonnak
           adunk at to:bb socketet, mig a nowait minden sockethez egy
           ujabb peldanyt indit el.

           Az inetd altal indithato peldanyokat a max-child
           megadasaval korlatozhatjuk. Ha tehat peldaul az adott
           demon szamara legfeljebb peldany letrehozasat
           engedelyezzu:k, akkor a nowait utan /10 beallitast kell
           megadnunk. A /0 hasznalataval korlatlan mennyisegu"
           peldanyt engedelyezhetu:nk.

           A max-child mellett meg tovabbi ket masik beallitas jo:het
           szamitasba az egyes demonok altal kezelheto" kapcsolatok
           maximalis szamanak korlatozasaban. A
           max-connections-per-ip-per-minute az egyes IP-cimekro"l
           befuto lekezelheto" kapcsolatok percenkenti szamat
           szabalyozza, igy peldaul ha itt a tizes erteket adjuk meg,
           akkor az adott szolgaltatashoz egy IP-cimro"l percenkent
           csak tizszer ferhetu:nk hozza. A max-child-per-ip az egyes
           IP-cimekhez egyszerre elindithato peldanyok szamara ir
           elo" egy korlatot. Ezek a parameterek segitenek megovni
           rendszeru:nket az ero"forrasok akaratos vagy akaratlan
           kimeriteseto"l es a DoS (Denial of Service) tipusu
           tamadasoktol.

           Ebben a mezo"ben a wait vagy nowait valamelyiket
           ko:telezo" megadni. A max-child,
           max-connections-per-ip-per-minute es max-child-per-ip
           parameterek ellenben elhagyhatoak.

           A stream tipusu to:bb szalon futo demonok a max-child,
           max-connections-per-ip-per-minute vagy max-child-per-ip
           korlatozasa nelku:l egyszeru"en csak igy adhatoak meg:
           nowait.

           Ha ugyanezt a demont tiz kapcsolatra lekorlatozzuk, akkor
           a ko:vetkezo"t kell megadnunk: nowait/10.

           Amikor pedig IP-cimenkent 20 kapcsolatot engedelyezu:nk
           percenkent es mindo:ssze 10 peldanyt, akkor: nowait/10/20.

           Az imenti beallitasok a fingerd(8) demon alapertelmezett
           parametereinel is megtalalhatoak:

 finger stream  tcp     nowait/3/10 nobody /usr/libexec/fingerd fingerd -s

           Vegezetu:l engedelyezzu:k 100 peldanyt, melyek ko:zu:l
           IP-cimenkent 5 hasznalhato: nowait/100/0/5.

   felhasznalo

           Ezzel azt a felhasznalot adjuk meg, akinek a neveben az
           adott demon futni fog. Az esetek tulnyomo reszeben a
           demonokat a root felhasznalo futtatja. Lathatjuk azonban,
           hogy biztonsagi okokbol bizonyos demonok a daemon vagy a
           legkevesebb joggal rendelkezo" nobody felhasznaloval
           futnak.

   szerver-program

           A kapcsolat felepu:lesekor az itt teljes eleresi uttal
           megadott demon indul el. Ha ezt a szolgaltatast maga az
           inetd belso"leg valositja meg, akkor ebben a mezo"ben az
           internal erteket adjuk meg.

   szerver-program-parameterei

           Ez a szerver-program beallitassal egyu:tt mu"ko:dik, es
           ebben a mezo"ben a demon meghivasakor alkalmazando
           parametereket tudjuk ro:gziteni, amelyet a demon nevevel
           kezdu:nk. Ha a demont a parancssorbol a sajatdemon -d
           paranccsal hivnank meg, akkor a sajatdemon -d lesz
           szerver-program-parameterei beallitas helyes erteke is.
           Termeszetesen, ha a demon egy belso"leg megvalositott
           szolgaltatas, akkor ebben a mezo"ben is az internal fog
           megjelenni.

     --------------------------------------------------------------

  29.2.5. Vedelem

   Attol fu:ggo"en, hogy a telepites soran mit valasztottunk, az
   inetd altal tamogatott szolgaltatasok egyes resze talan alapbol
   engedelyezett is. Amennyiben egy adott demont konkretan nem
   hasznalunk, akkor erdemes megfontolni a letiltasat. A kerdeses
   demon soraba tegyu:nk egy "#" jelet az /etc/inetd.conf allomanyba,
   majd olvastassuk ujra az inetd beallitasait. Egyes demonok, mint
   peldaul az fingerd hasznalata egyaltalan nem ajanlott, mivel a
   tamadok szamara hasznos informaciokat tudnak kiszivarogtatni.

   Mas demonok nem u:gyelnek a vedelemre, es a kapcsolatokhoz rendelt
   lejarati ideju:k tulsagosan hosszu vagy eppen nincs is. Ezzel a
   tamadonak leheto"sege van lassu kapcsolatokkal leterhelni az adott
   demont, ezaltal kimeriteni a rendszer ero"forrasait. Ha ugy
   talaljuk, hogy tulsagosan sok az ilyen kapcsolat, akkor jo
   o:tletnek bizonyulhat a demonok szamara a
   max-connections-per-ip-per-minute, max-child vagy max-child-per-ip
   korlatozasok elrendelese.

   Alapertelmezes szerint a TCP kapcsolatok wrappelese engedelyezett.
   A hosts_access(5) man oldalon talalhatjuk meg az inetd altal
   meghivhato ku:lo:nfele demonok TCP-alapu korlatozasainak
   leheto"segeit.

     --------------------------------------------------------------

  29.2.6. Egyeb leheto"segek

   A daytime, time, echo, discard, chargen es auth szolgaltatasok
   feladatainak mindegyiket maga az inetd is kepes ellatni.

   Az auth szolgaltatas a halozati keresztu:l azonositast teszi
   leheto"ve es bizonyos mertekig beallithato. A to:bbit egyszeru"en
   csak kapcsoljuk ki vagy be.

   A temaban az inetd(8) man oldalan tudunk meg jobban elmeru:lni.

     --------------------------------------------------------------

29.3. A halozati allomanyrendszer (NFS)

   Atdolgozta es javitotta: Tom Rhodes. Irta: Bill Swingle.

   A FreeBSD to:bb allomanyrendszert ismer, ko:ztu:k a halozati
   allomanyrendszert (Network File System, NFS) is. Az NFS allomanyok
   es ko:nyvtarak megosztasat teszi leheto"ve a halozaton keresztu:l.
   Az NFS hasznalataval a felhasznalok es a programok kepesek majdnem
   ugy elerni a tavoli rendszereken talalhato allomanyokat, mintha
   helyben leteznenek.

   Ime az NFS nehany legjelento"sebb elo"nye:

     * A helyi munkaallomasok kevesebb tarteru:letet hasznalnak,
       mivel a ko:zo:s adatokat csak egyetlen szamitogepen taroljuk
       es megosztjuk mindenki ko:zo:tt.

     * A felhasznaloknak nem kell a halozat minden egyes gepen
       ku:lo:n felhasznaloi ko:nyvtarral rendelkezniu:k. Ezek ugyanis
       az NFS segitsegevel akar egy szerveren is beallithatoak es
       elerheto"ve teheto"ek a halozaton keresztu:l.

     * A ku:lo:nbo:zo" hattertarak, mint peldaul a floppy lemezek,
       CD-meghajtok es Zip(R) meghajtok a halozaton to:bb szamitogep
       ko:zo:tt megoszthatoak. Ezzel cso:kkenteni tudjuk a
       halozatunkban szu:kseges cserelheto" lemezes eszko:zo:k
       szamat.

     --------------------------------------------------------------

  29.3.1. Ahogy az NFS mu"ko:dik

   Az NFS legalabb ket fo" reszbo"l rakhato o:ssze: egy szerverbo"l
   es egy vagy to:bb kliensbo"l. A kliensek a szerver altal
   megosztott adatokhoz kepesek tavolrol hozzaferni. A megfelelo"
   mu"ko:deshez mindo:ssze csak nehany programot kell beallitani es
   futtatni.

   A szervernek a ko:vetkezo" demonokat kell mu"ko:dtetnie:

    Demon                            Leiras                           
   nfsd    Az NFS demon, amely kiszolgalja az NFS kliensekto"l        
           erkezo" kereseket.                                         
   mountd  Az NFS csatlakoztato demonja, amely vegrehajtja az nfsd(8) 
           altal atku:ldo:tt kereseket.                               
   rpcbind Ez a demon leheto"ve teszi az NFS kliensek szamara, hogy   
           fel tudjak deriteni az NFS szerver altal hasznalt portot.  

   A kliensen is futnia kell egy demonnak, amelynek a neve nfsiod. Az
   nfsiod demon az NFS szerver felo"l erkezo" kereseket szolgalja ki.
   A hasznalata teljesen opcionalis, csupan a teljesitmenyt hivatott
   javitani, de a normalis es helyes mu"ko:deshez nincs ra
   szu:ksegu:nk. Az nfsiod(8) man oldalan erro"l to:bbet is
   megtudhatunk.

     --------------------------------------------------------------

  29.3.2. Az NFS beallitasa

   Az NFS beallitasa viszonylag egyertelmu"en adja magat. A
   mu"ko:desehez szu:kseges programok automatikus elinditasa csupan
   nehany apro modositast igenyel az /etc/rc.conf allomanyban.

   Az NFS szerveren gondoskodjunk rola, hogy az alabbi beallitasok
   szerepeljenek az /etc/rc.conf allomanyban:

 rpcbind_enable="YES"
 nfs_server_enable="YES"
 mountd_flags="-r"

   A mountd magatol el fog indulni, ha az NFS szervert
   engedelyezzu:k.

   A kliensen a ko:vetkezo" beallitast kell felvennu:nk az
   /etc/rc.conf allomanyba:

 nfs_client_enable="YES"

   Az /etc/exports allomany adja meg, hogy az NFS milyen
   allomanyrendszereket exportaljon (vagy maskeppen szolva "osszon
   meg"). Az /etc/exports allomanyban tehat a megosztani kivant
   allomanyrendszereket kell szerepeltetnu:nk, es azt, hogy melyik
   szamitogepekkel tudjuk ezeket elerni. A gepek megnevezese mellett
   a hozzaferesre tovabbi megszoritasokat irhatunk fel. Ezek
   reszletes leirasat az exports(5) man oldalon talaljuk meg.

   Lassunk nehany peldat az /etc/exports allomanyban megjeleno"
   bejegyzesekre:

   A most ko:vetkezo" peldakban az allomanyrendszerek exportalasanak
   finomsagait igyekszu:nk erzekeltetni, noha a konkret beallitasok
   gyakran a rendszeru:nkto"l es a halozati konfiguraciotol
   fu:ggenek. Peldaul, ha a /cdrom ko:nytarat akarjuk harom gep
   szamara megosztani, akik a szerverrel megegyezo" tartomanyban
   talalhatoak (ezert nem is kell megadnunk a tartomanyt) vagy mert
   egyszeru"en megtalalhatok az /etc/hosts allomanyunkban. Az -ro
   beallitas az exportalt allomanyrendszereket irasvedette teszi.
   Ezzel a beallitassal a tavoli rendszerek nem lesznek kepesek
   modositani az exportalt allomanyrendszer tartalmat.

 /cdrom -ro gep1 gep2 gep3

   A ko:vetkezo" sorban a /home ko:nyvtarat harom gep szamara osztjuk
   meg, melyeket IP-cimekkel adtunk meg. Ez olyan helyi halozat
   eseten hasznos, ahol nem allitottunk be nevfeloldast. Esetleg a
   belso" halozati neveket az /etc/hosts allomanyban is tarolhatjuk.
   Ezzel utobbival kapcsolatban a hosts(5) man oldalt erdemes
   fellapoznunk. Az -alldirs beallitas leheto"ve teszi, hogy az
   alko:nyvtarak is csatlakozasi pontok lehessenek. Mas szoval, nem
   fogja csatlakoztatni az alko:nyvtarakat, de megengedi a kliensek
   szamara, hogy csak azokat a ko:nyvtarakat csatlakoztassak,
   amelyeket kell vagy amelyekre szu:ksegu:nk van.

 /home  -alldirs  10.0.0.2 10.0.0.3 10.0.0.4

   A ko:vetkezo" sorban az /a ko:nyvtarat ugy exportaljuk, hogy az
   allomanyrendszerhez ket ku:lo:nbo:zo" tartomanybol is hozza
   lehessen ferni. A -maproot=root beallitas hatasara a tavoli
   rendszer root felhasznaloja az exportalt allomanyrendszeren
   szinten root felhasznalokent fogja irni az adatokat. Amennyiben a
   -maproot=root beallitast nem adjuk meg, akkor a tavoli rendszeren
   hiaba root az adott felhasznalo, az exportalt allomanyrendszeren
   nem lesz kepes egyetlen allomanyt sem modositani.

 /a  -maproot=root  gep.minta.com doboz.haz.org

   A kliensek is csak a megfelelo" engedelyek birtokaban kepesek
   elerni a megosztott allomanyrendszereket. Ezert a klienst ne
   felejtsu:k el felvenni a szerver /etc/exports allomanyaba.

   Az /etc/exports allomanyban az egyes sorok az egyes
   allomanyrendszerekre es az egyes gepekre vonatkoznak. A tavoli
   gepek allomanyrendszerenkent csak egyszer adhatoak meg, es csak
   egy alapertelmezett bejegyzesu:k lehet. Peldaul tegyu:k fel, hogy
   a /usr egy o:nallo allomanyrendszer. Ennek megfelelo"en az alabbi
   bejegyzesek az /etc/exports allomanyban ervenytelenek:

 # Nem hasznalhato, ha a /usr egy allomanyrendszer:
 /usr/src   kliens
 /usr/ports kliens

   Egy allomanyrendszerhez, vagyis itt a /usr particiohoz, ket export
   sort is megadtunk ugyanahhoz a kliens nevu" gephez. Helyesen igy
   kell megoldani az ilyen helyzeteket:

 /usr/src /usr/ports  kliens

   Az adott gephez tartozo egy allomanyrendszerre vonatkozo
   exportoknak mindig egy sorban kell szerepelniu:k. A kliens nelku:l
   felirt sorok egyetlen gephez tartozonak fognak szamitani. Ezzel az
   allomanyrendszerek megosztasat tudjuk szabalyozni, de legto:bbek
   szamara nem jelent gondot.

   Most egy ervenyes exportlista ko:vetkezik, ahol a /usr es az
   /exports mind helyi allomanyrendszerek:

 # Osszuk meg az src es ports ko:nyvtarakat a kliens01 es kliens02 reszere, de csak a
 # kliens01 ferhessen hozza rendszeradminisztratori jogokkal:
 /usr/src /usr/ports -maproot=root    kliens01
 /usr/src /usr/ports               kliens02
 # A kliensek az /exports ko:nyvtarban teljes joggal rendelkeznek es azon belu:l
 # barmit tudnak csatlakoztatni. Rajtuk kivu:l mindenki csak irasvedetten kepes
 # elerni az /exports/obj ko:nyvtarat:
 /exports -alldirs -maproot=root      kliens01 kliens02
 /exports/obj -ro

   A mountd demonnal az /etc/exports allomanyt minden egyes
   modositasa utan ujra be kell olvastatni, mivel a valtoztatasaink
   csak igy fognak ervenyesu:lni. Ezt megcsinalhatjuk ugy is, hogy
   ku:ldu:nk egy HUP (hangup, avagy felfu:ggesztes) jelzest a mar
   futo demonnak:

 # kill -HUP `cat /var/run/mountd.pid`

   vagy meghivjuk a mountd rc(8) szkriptet a megfelelo" parameterrel:

 # /etc/rc.d/mountd onereload

   Az 11.7 Szakaszban tudhatunk meg reszleteket az rc szkriptek
   hasznalatarol.

   Ezek utan akar a FreeBSD ujrainditasaval is aktivalhatjuk a
   megosztasokat, habar ez nem feltetlenu:l szu:kseges. Ha root
   felhasznalonkent kiadjuk a ko:vetkezo" parancsokat, akkor azzal
   minden szu:kseges programot elinditunk.

   Az NFS szerveren tehat:

 # rpcbind
 # nfsd -u -t -n 4
 # mountd -r

   Az NFS kliensen pedig:

 # nfsiod -n 4

   Ezzel most mar minden keszen all a tavoli allomanyrendszer
   csatlakoztatasara. A peldakban a szerver neve szerver lesz,
   valamint a kliens neve kliens. Ha csak ideiglenesen akarunk
   csatlakoztatni egy allomanyrendszert vagy egyszeru"en csak ki
   akarjuk probalni a beallitasainkat, a kliensen root
   felhasznalokent az alabbi parancsot hajtsuk vegre:

 # mount szerver:/home /mnt

   Ezzel a szerveren talalhato /home ko:nyvtarat fogjuk a kliens /mnt
   ko:nyvtaraba csatlakoztatni. Ha mindent jol beallitottunk, akkor a
   kliensen most mar be tudunk lepni az /mnt ko:nyvtarba es lathatjuk
   a szerveren talalhato allomanyokat.

   Ha a szamitogep inditasaval automatikusan akarunk halozati
   allomanyrendszereket csatlakoztatni, akkor vegyu:k fel ezeket az
   /etc/fstab allomanyba. Erre ime egy pelda:

 szerver:/home   /mnt    nfs     rw      0       0

   Az fstab(5) man megtalalhatjuk az o:sszes to:bbi beallitast.

     --------------------------------------------------------------

  29.3.3. Zarolasok

   Bizonyos alkalmazasok (peldaul a mutt) csak akkor mu"ko:dnek
   megfelelo"en, ha az allomanyokat a megfelelo" modon zaroljak. Az
   NFS eseteben az rpc.lockd hasznalhato az ilyen zarolasok
   megvalositasara. Az engedelyezesehez mind a szerveren es a
   kliensen vegyu:k fel a ko:vetkezo" sort az /etc/rc.conf allomanyba
   (itt mar feltetelezzu:k, hogy az NFS szervert es klienst korabban
   beallitottuk):

 rpc_lockd_enable="YES"
 rpc_statd_enable="YES"

   A ko:vetkezo" modon indithatjuk el:

 # /etc/rc.d/lockd start
 # /etc/rc.d/statd start

   Ha nincs szu:ksegu:nk valodi zarolasra az NFS kliensek es az NFS
   szerver ko:zo:tt, akkor megcsinalhatjuk azt is, hogy az NFS
   kliensen a mount_nfs(8) programnak az -L parameter atadasaval csak
   helyileg vegzu:nk zarolast. Ennek tovabbi reszletero"l a
   mount_nfs(8) man oldalon kaphatunk felvilagositast.

     --------------------------------------------------------------

  29.3.4. Gyakori felhasznalasi modok

   Az NFS megoldasat a gyakorlatban rengeteg esetben alkalmazzak.
   Ezek ko:zu:l most felsoroljuk a legelterjedtebbeket:

     * To:bb gep ko:zo:tt megosztunk egy telepito"lemezt vagy mas
       telepito"eszko:zt. Ez igy sokkal olcsobb es gyakorta kenyelmes
       megoldas abban az esetben, ha egyszerre to:bb gepre akarjuk
       ugyanazt a szoftvert telepiteni.

     * Nagyobb halozatokon sokkal kenyelmesebb lehet egy ko:zponti
       NFS szerver hasznalata, ahol a felhasznalok ko:nyvtarait
       taroljuk. Ezek a felhasznaloi ko:nyvtarak aztan megoszthatoak
       a halozaton keresztu:l, igy a felhasznalok mindig ugyanazt a
       ko:nyvarat kapjak fu:ggetlenu:l attol, hogy milyen
       munkaallomasrol is jelentkeztek be.

     * To:bb geppel is kepes igy osztozni az /usr/ports/distfiles
       ko:nyvtaron. Ezen a modon sokkal gyorsabban tudunk portokat
       telepiteni a gepekre, mivel nem kell ku:lo:n mindegyikre
       leto:lteni az ehhez szu:kseges forrasokat.

     --------------------------------------------------------------

  29.3.5. Automatikus csatlakoztatas az amd hasznalataval

   Keszitette: Wylie Stilwell. Ujrairta: Chern Lee.

   Az amd(8) (automatikus csatlakoztato demon, az automatic mounter
   daemon) o:nmu"ko:do"en csatlakoztatja a tavoli
   allomanyrendszereket, amikor azokon belu:l valamelyik allomanyhoz
   vagy ko:nyvtarhoz probalunk hozzaferni. Emellett az amd az egy
   ideje mar inaktiv allomanyrendszereket is automatikusan
   levalasztja. Az amd hasznalata egy remek alternativat kinal az
   altalaban az /etc/fstab allomanyban megjeleno" allandoan
   csatlakoztatott allomanyrendszerekkel szemben.

   Az amd ugy mu"ko:dik, hogy kapcsolodik egy NFS szerver /host es
   /net ko:nyvtaraihoz. Amikor egy allomanyt akarunk elerni ezeken a
   ko:nyvtarakon belu:l, az amd kikeresi a megfelelo" tavoli
   csatlakoztatast es magatol csatlakoztatja. A /net segitsegevel egy
   IP-cimro"l tudunk exportalt allomanyrendszereket csatlakoztatni,
   miko:zben a /host a tavoli gep halozati neve eseteben hasznalatos.

   Ha tehat a /host/izemize/usr ko:nyvtarban akarunk elerni egy
   allomanyt, akkor az amd demonnak ahhoz elo"szo:r az izemize nevu"
   gepro"l exportalt /usr ko:nyvtarat kell csatlakoztatnia.

   Pelda 29-2. Egy exportalt allomanyrendszer csatlakoztatasa az amd
   hasznalataval

   Egy tavoli szamitogep altal rendelkezesre bocsatott megosztasokat
   a showmount paranccsal tudjuk lekerdezni. Peldaul az izemize gepen
   elerheto" exportalt allomanyrendszereket igy lathatjuk:

 % showmount -e izemize
 Exports list on izemize:
 /usr                               10.10.10.0
 /a                                 10.10.10.0
 % cd /host/izemize/usr

   Ahogy a peldaban latjuk is, a showmount parancs a /usr ko:nyvtarat
   mutatja megosztaskent. Amikor tehat belepu:nk a /host/izemize/usr
   ko:nyvtarba, akkor amd magatol megprobalja feloldani az izemize
   halozati nevet es csatlakoztatni az elerni kivant exportalt
   allomanyrendszert.

   Az amd az indito szkripteken keresztu:l az /etc/rc.conf alabbi
   beallitasaval engedelyezheto":

 amd_enable="YES"

   Emellett meg az amd_flags hasznalataval tovabbi parameterek is
   atadhato az amd fele. Alapertelmezes szerint az amd_flags
   tartalmaz az alabbi:

 amd_flags="-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map"

   Az /etc/amd.map allomany adja meg az exportalt allomanyrendszerek
   alapertelmezett beallitasait. Az /etc/amd.conf allomanyban az amd
   tovabbi leheto"segeit konfiguralhatjuk..

   Ha to:bbet is szeretnenk tudni a temarol, akkor az amd(8) es az
   amd.conf(5) man oldalakat javasolt elolvasnunk.

     --------------------------------------------------------------

  29.3.6. Problemak mas rendszerek hasznalatakor

   Keszitette: John Lind.

   Nemely PC-s ISA buszos Ethernet kartyakra olyan korlatozasok
   ervenyesek, melyek komoly halozati problemak keletkezesehez
   vezethetnek, ku:lo:no:sen az NFS eseteben. Ez a nehezseg nem
   FreeBSD-fu:ggo", de a FreeBSD rendszereket is erinti.

   Ez gond altalaban majdnem mindig akkor meru:l fel, amikor egy
   (FreeBSD-s) PC egy halozatba keru:l to:bbek ko:zt a Silicon
   Graphic es a Sun Microsystems altal gyartott nagyteljesitmenyu"
   munkaallomasokkal. Az NFS csatlakoztatasa es bizonyos mu"veletek
   meg hibatlanul vegrehajtodnak, azonban hirtelen a szerver
   latszolag nem valaszol to:bbet a kliens fele ugy, hogy a to:bbi
   rendszerto"l folyamatosan dolgozza felfele a kereseket. Ez a
   kliens rendszeren tapasztalhato csak, amikor a kliens FreeBSD vagy
   egy munkaallomas. Sok rendszeren egyszeru"en rendesen le sem lehet
   allitani a klienst, ha a problema egyszer mar felu:to:tte a fejet.
   Egyedu:li megoldas gyakran csak a kliens ujrainditasa marad, mivel
   az NFS-ben kialakult helyzetet mashogy nem lehet megoldani.

   Noha a "helyes" megoldas az lenne, ha beszereznenk egy nagyobb
   teljesitmenyu" es kapacitasu kartyat a FreeBSD rendszer szamara,
   azonban egy joval egyszeru"bb keru:lo"ut is talalhato a kielegito"
   mu"ko:des eleresehez. Ha a FreeBSD rendszer kepviseli a szervert,
   akkor a kliensnel adjuk meg a -w=1024 beallitast is a
   csatlakoztatasnal. Ha a FreeBSD rendszer a kliens szerepet to:lti
   be, akkor az NFS allomanyrendszert az -r=1024 beallitassal
   csatlakoztassuk rola. Ezek a beallitasok az fstab allomany
   negyedik mezo"jeben is megadhatoak az automatikus
   csatlakoztatashoz, vagy manualis esetben a mount(8) parancsnak a
   -o parameterrel.

   Hozza kell azonban tennu:nk, hogy letezik egy masik problema, amit
   gyakran ezzel tevesztenek o:ssze, amikor az NFS szerverek es
   kliensek nem ugyanabban a halozatban talalhatoak. Ilyen esetekben
   mindenkeppen gyo"zo"dju:nk meg rola, hogy az utvalasztok rendesen
   tovabbku:ldik a mu"ko:deshez szu:kseges UDP informaciokat,
   ku:lo:nben nem sokat tudunk tenni a megoldas erdekeben.

   A most ko:vetkezo" peldakban a gyorsvonat lesz a
   nagyteljesitmenyu" munkaallomas (felu:let) neve, illetve a freebsd
   pedig a gyengebb teljesitmenyu" Ethernet kartyaval rendelkezo"
   FreeBSD rendszer (felu:let) neve. A szerveren az /osztott nevu"
   ko:nyvtarat fogjuk NFS allomanyrendszerkent exportalni (lasd
   exports(5)), amelyet majd a /projekt ko:nyvtarba fogunk
   csatlakoztatni a kliensen. Minden esetben erdemes lehet meg
   megadnunk a hard vagy soft, illetve bg opciokat is.

   Ebben a peldaban a FreeBSD rendszer (freebsd) lesz a kliens, es az
   /etc/fstab allomanyaban igy szerepel az exportalt
   allomanyrendszer:

 gyorsvonat:/osztott /projekt nfs rw,-r=1024 0 0

   Es igy tudjuk manualisan csatlakoztatni:

 # mount -t nfs -o -r=1024 gyorsvonat:/osztott /projekt

   Itt a FreeBSD rendszer lesz a szerver, es a gyorsvonat /etc/fstab
   allomanya igy fog kinezni:

 freebsd:/osztott /projekt nfs rw,-w=1024 0 0

   Manualisan igy csatlakoztathatjuk az allomanyrendszert:

 # mount -t nfs -o -w=1024 freebsd:/osztott /projekt

   Szinte az o:sszes 16 bites Ethernet kartya kepes mu"ko:dni a fenti
   irasi vagy olvasasi korlatozasok nelku:l is.

   A kivancsibb olvasok szamara elaruljuk, hogy pontosan miert is
   ko:vetkezik be ez a hiba, ami egyben arra is magyarazatot ad, hogy
   miert nem tudjuk helyrehozni. Az NFS altalaban 8 kilobyte-os
   "blokkokkal" dolgozik (habar kisebb meretu" darabkakat is tud
   kesziteni). Mivel az Ethernet altal kezelt legnagyobb meret
   nagyjabol 1500 byte, ezert az NFS "blokkokat" to:bb Ethernet
   csomagra kell osztani -- meg olyankor is, ha ez a program felso"bb
   retegeiben osztatlan egysegkent latszik -- ezt aztan fogadni kell,
   o:sszerakni es nyugtazni mint egyseget. A nagyteljesitmenyu"
   munkaallomasok a szabvany altal meg eppen megengedett szorossaggal
   kepesek ontani magukbol az egy egyseghez tartozo csomagokat,
   ko:zvetlenu:l egymas utan. A kisebb, gyengebb teljesitmenyu"
   kartyak eseteben azonban az egymashoz tartozo, keso"bb erkezo"
   csomagok rafutnak a korabban megkapott csomagokra meg pontosan
   azelo"tt, hogy elernek a gepet, igy az egysegek nem allithatoak
   o:ssze vagy nem nyugtazhatoak. Ennek eredmenyekeppen a
   munkaallomas egy adott ido" mulva megint probalkozik, de ismet az
   egesz 8 kilobyte-os blokkot ku:ldi el, ezert ez a folyamat a
   vegtelensegig ismetlo"dik.

   Ha a ku:ldendo" egysegek meretet az Ethernet altal kezelt csomagok
   maximalis merete ala cso:kkentju:k, akkor biztosak lehetu:nk
   benne, hogy a teljes Ethernet csomag egyben megerkezik es
   nyugtazodik, igy elkeru:lju:k a holtpontot.

   A nagyteljesitmenyu" munkaallomasok termeszetesen tovabbra is
   ku:ldhetnek a PC-s rendszerek fele tulfuto csomagokat, de egy jobb
   kartyaval az ilyen tulfutasok nem erintik az NFS altal hasznalt
   "egysegeket". Amikor egy ilyen tulfutas beko:vetkezik, az erintett
   egyseget egyszeru"en ujra elku:ldik, amelyet a rako:vetkezo"
   alkalommal nagy valoszinu"seggel mar tudunk rendesen fogadni,
   o:sszerakni es nyugtazni.

     --------------------------------------------------------------

29.4. Halozati informacios rendszer (NIS/YP)

   Irta: Bill Swingle. Irta: Eric Ogren es Udo Erdelhoff.

  29.4.1. Mi ez?

   A halozati informacios szolgaltatast (Network Information Service,
   avagy NIS) a Sun Microsystems fejlesztette ki a UNIX (eredetileg
   SunOS) rendszerek ko:zpontositott karbantartasahoz. Mostanra mar
   lenyegeben ipari szabvannya no"tte ki magat, hiszen az o:sszes
   nagyobb UNIX-szeru" rendszer (a Solaris, HP-UX, AIX(R), Linux,
   NetBSD, OpenBSD, FreeBSD stb.) tamogatja a NIS hasznalatat.

   A NIS regebben sarga oldalak (Yellow Pages) neven volt ismert, de
   a ku:lo:nbo:zo" jogi problemak miatt keso"bb ezt a Sun
   megvaltoztatta. A regi elnevezest (es a yp ro:viditest) azonban
   meg napjainkban is lehet nehol latni.

   Ez egy RPC alapjan mu"ko:do", kliens/szerver felepitesu" rendszer,
   amely az egy NIS tartomany belu:l levo" szamitogepek szamara teszi
   leheto"ve ugyanazon konfiguracios allomanyok hasznalatat.
   Segitsegevel a rendszergazda a NIS klienseket a leheto"
   legkevesebb adat hozzaadasaval, eltavolitasaval vagy modositasaval
   kepes egyetlen helyro"l beallitani.

   Hasonlo a Windows NT(R) tartomanyaihoz, es habar a belso"
   implementaciot tekintve mar akadnak ko:ztu:k jelento"s elteresek
   is, az alapveto" funkciok szintjen megis o:sszevetheto"ek.

     --------------------------------------------------------------

  29.4.2. A temahoz tartozo fogalmak es programok

   A NIS telepitese szamos fogalom es fontos felhasznaloi program
   keru:l elo" FreeBSD-n, akar egy NIS szervert akarunk beallitani,
   akar csak egy NIS klienst:

       Fogalom                           Leiras                       
                    A NIS ko:zponti szerverei es az o:sszes hozzajuk  
                    tartozo kliens (beleertve az alarendelt           
                    szervereket) rendelkezik egy NIS tartomanynevvel. 
   NIS tartomanynev Hasonlo a Windows NT altal hasznalt               
                    tartomanynevekhez, de a NIS tartomanynevei        
                    semmilyen kapcsolatban nem allnak a               
                    nevfeloldassal.                                   
                    Az RPC (Remote Procedure Call, a NIS altal        
                    hasznalt egyik halozati protokoll)                
   rpcbind          engedelyezesehez lesz ra szu:ksegu:nk. Ha az      
                    rpcbind nem fut, akkor sem NIS szervert, sem      
                    pedig NIS klienst nem tudunk mu"ko:dtetni.        
                    A NIS klienst "ko:ti o:ssze" a hozzatartozo NIS   
                    szerverrel. A NIS tartomanynevet a rendszerto"l   
                    veszi, es az RPC hasznalataval csatlakozik a      
   ypbind           szerverhez. Az ypbind a NIS ko:rnyezet kliens es  
                    szerver ko:zti kommunikaciojanak magjat alkotja.  
                    Ha az ypbind leall a kliens gepen, akkor nem      
                    tudjuk elerni a NIS szervert.                     
                    Csak a NIS szervereken szabad futnia, mivel ez    
                    maga a NIS szerver programja. Ha az ypserv(8)     
                    leall, akkor a szerver nem lesz kepes tovabb      
                    kiszolgalni a NIS kereseket (szerencsere az       
                    alarendelt szerverek kepesek atvenni ezeket). A   
   ypserv           NIS bizonyos valtozatai (de nem az, amelyik a     
                    FreeBSD-ben is megjelenik) nem probalnak meg mas  
                    szerverekhez csatlakozni, ha bedo:glik az         
                    aktualis hasznalt szerver. Ezen gyakran egyedu:l  
                    csak a szervert kepviselo" program (vagy akar az  
                    egesz szerver) ujrainditasa segithet, illetve az  
                    ypbind ujrainditasa a kliensen.                   
                    Ez egy olyan program, amelyet csak a NIS          
                    ko:zponti szerverein kell csak futtatni. Ez a     
                    demon a NIS kliensek szamara a NIS jelszavaik     
   rpc.yppasswdd    megvaltoztatasat teszi leheto"ve. Ha ez a demon   
                    nem fut, akkor a felhasznalok csak ugy tudjak     
                    megvaltoztatni a jelszavukat, ha bejelentkeznek a 
                    ko:zponti NIS szerverre.                          

     --------------------------------------------------------------

  29.4.3. Hogyan mu"ko:dik?

   A NIS ko:rnyezetekben haromfele gep letezik: a ko:zponti
   szerverek, az alarendelt szerverek es a kliensek. A szerverek
   kepezik a gepek konfiguracios informacioinak ko:zponti tarhelyet.
   A ko:zponti szerverek taroljak ezen informaciok hiteles masolatat,
   mig ezt az alarendelt szerverek redundansan tu:kro:zik. A kliensek
   a szerverekre tamaszkodnak ezen informaciok beszerzesehez.

   Sok allomany tartalma megoszthato ezen a modon. Peldaul a
   master.passwd, a group es hosts allomanyokat meg szoktak osztani
   NFS-en. Amikor a kliensen futo valamelyik programnak olyan
   informaciora lenne szu:ksege, amely altalaban ezekben az
   allomanyokban nala megtalalhato lenne, akkor helyette a NIS
   szerverhez fordul.

     --------------------------------------------------------------

    29.4.3.1. A gepek tipusai

     * A ko:zponti NIS szerver. Ez a szerver, amely leginkabb a
       Windows NT elso"dleges tartomanyvezerlo"jehez hasonlithato
       tartja karban az o:sszes, NIS kliensek altal hasznalt
       allomanyt. A passwd, group, es o:sszes to:bbi ehhez hasonlo
       allomany ezen a ko:zponti szerveren talalhato meg.

         Megjegyzes: Egy gep akar to:bb NIS tartomanyban is lehet
         ko:zponti szerver. Ezzel a leheto"seggel viszont itt most
         nem foglalkozunk, mivel most csak egy viszonylag kis meretu"
         NIS ko:rnyezetet feltetelezu:nk.

     * Az alarendelt NIS szerverek. A Windows NT tartalek
       tartomanyvezerlo"ihez hasonlitanak, es az alarendelt NIS
       szerverek feladata a ko:zponti NIS szerveren tarolt adatok
       masolatainak karbantartasa. Az alarendelt NIS szerverek a
       redundancia megvalositasaban segitenek, aminek leginkabb a
       fontosabb ko:rnyezetekben van szerepe. Emellett a ko:zponti
       szerver terhelesenek kiegyenliteset is elvegzik. A NIS
       kliensek elso"kent mindig ahhoz a NIS szerverhez csatlakoznak,
       amelyto"l elo"szo:r valaszt kapnak, legyen akar az egy
       alarendelt szerver.

     * A NIS kliensek. A NIS kliensek, hasonloan a Windows NT
       munkaallomasokhoz, a NIS szerveren (amely a Windows NT
       munkaallomasok eseteben a tartomanyvezerlo") keresztu:l
       jelentkeznek be.

     --------------------------------------------------------------

  29.4.4. A NIS/YP hasznalata

   Ebben a szakaszban egy pelda NIS ko:rnyezetet allitunk be.

     --------------------------------------------------------------

    29.4.4.1. Tervezes

   Tegyu:k fel, hogy egy aprocska egyetemi labor rendszergazdai
   vagyunk. A labor, mely 15 FreeBSD-s gepet tudhat magaenak, jelen
   pillanatban meg semmilyen ko:zpontositott adminisztracio nem
   letezik. Mindegyik gep sajat /etc/passwd es /etc/master.passwd
   allomannyal rendelkezik. Ezeket az allomanyokat sajat kezu"leg
   kell szinkronban tartani. Tehat ha most felveszu:nk egy
   felhasznalot a laborhoz, akkor az adduser parancsot mind a 15
   gepen ki kell adni. Egyertelmu", hogy ez igy nem maradhat, ezert
   ugy do:nto:ttu:k, hogy a laborban NIS-t fogunk hasznalni, es ket
   gepet kinevezu:nk szervernek.

   Az imentieknek megfelelo"en a labor most valahogy igy nez ki:

      A gep neve            IP-cim               A gep szerepe        
   ellington         10.0.0.2             ko:zponti NIS               
   coltrane          10.0.0.3             alarendelt NIS              
   basie             10.0.0.4             tanszeki munkaallomas       
   bird              10.0.0.5             kliensgep                   
   cli[1-11]         10.0.0.[6-17]        a to:bbi kliensgep          

   Ha meg nincs tapasztalatunk a NIS rendszerek o:sszeallitasaban,
   akkor elo"szo:r jo o:tlet lehet vegiggondolni, mikent is akarjuk
   kialakitani. A halozatunk mereteto"l fu:ggetlenu:l is akadnak
   olyan do:ntesek, amelyeket mindenkeppen meg kell hoznunk.

     --------------------------------------------------------------

      29.4.4.1.1. A NIS tartomanynev megvalasztasa

   Ez nem az a "tartomanynev", amit megszokhattunk. Ennek a pontos
   neve "NIS tartomanynev". Amikor a kliensek kernek valamilyen
   informaciot, akkor megadjak annak a NIS tartomanynak a nevet is,
   amelynek reszei. Igy tud egy halozaton to:bb szerver arrol
   do:nteni, hogy melyiku:k melyik kerest valaszolja meg. A NIS altal
   hasznalt tartomanynevre tehat inkabb ugy erdemes gondolni, mint
   egy valamilyen modon o:sszetartozo gepek ko:zo:s nevere.

   Elo"fordul, hogy egyes szervezetek az interneten is nyilvantartott
   tartomanynevu:ket valasztjak NIS tartomanynevnek. Ez alapveto"en
   nem ajanlott, mivel a halozati problemak felderitese ko:zben
   felreerteseket szu:lhet. A NIS tartomanynevnek a halozatunkon
   belu:l egyedinek kell lennie, es leheto"leg minel jobban irja le
   az altala csoportba sorolt gepeket. Peldaul a Kis Kft. u:zleti
   osztalyat tegyu:k a "kis-uzlet" NIS tartomanyba. Ebben a peldaban
   most a proba-tartomany nevet valasztottuk.

   A legto:bb operacios rendszer azonban (ko:ztu:k a SunOS) a NIS
   tartomanynevet hasznalja internetes tartomanynevkent is. Ha a
   halozatunkon egy vagy to:bb ilyen gep is talalhato, akkor a NIS
   tartomany nevenek az internetes tartomanynevet kell megadnunk.

     --------------------------------------------------------------

      29.4.4.1.2. A szerverek fizikai elvarasai

   Nem art nehany dolgot fejben tartani, amikor a NIS szervernek
   hasznalt gepet kivalasztjuk. Az egyik ilyen szerencsetlen dolog az
   a szintu" fu:ggo"seg, ami a NIS kliensek felo"l megfigyelheto" a
   szerverek fele. Ha egy kliens nem tudja a NIS tartomanyon belu:l
   felvenni a kapcsolatot valamelyik szerverrel, akkor az a gep
   ko:nnyen megbizhatatlanna valhat. Felhasznaloi- es
   csoportinformaciok nelku:l a legto:bb rendszer egy ido"re le is
   merevedik. Ennek figyelembevetelevel tehat olyan gepet kell
   szervernek valasztanunk, amelyet nem kell gyakran ujrainditani, es
   nem vegzu:nk rajta semmilyen komoly munkat. A celnak legjobban
   megfelelo" NIS szerverek valojaban olyan gepek, amelyek egyedu:li
   feladata csak a NIS keresek kiszolgalasa. Ha a halozatunk nem
   annyira leterhelt, akkor meg a NIS szerver mellett mas programokat
   is futtathatunk, de ne feledju:k, hogy ha a NIS szolgaltatas
   megszu"nik, akkor az az o:sszes NIS kliensen ereztetni fogja
   kedvezo"tlen hatasat.

     --------------------------------------------------------------

    29.4.4.2. A NIS szerverek

   A NIS rendszerben tarolt o:sszes informacio altalanos peldanya
   egyetlen gepen talalhato meg, amelyet a ko:zponti NIS szervernek
   hivunk. Az informaciok tarolasara szant adatbazis pedig NIS
   tablazatoknak (NIS map) nevezzu:k. FreeBSD alatt ezek a tablazatok
   a /var/yp/tartomanynev ko:nyvtarban talalhatoak, ahol a
   tartomanynev a kiszolgalt NIS tartomanyt nevezi meg. Egyetlen NIS
   szerver egyszerre akar to:bb tartomanyt is kiszolgalhat, igy itt
   to:bb ko:nyvtar is talalhato, minden tamogatott tartomanyhoz egy.
   Minden tartomany sajat, egymastol fu:ggetlen tablazatokkal
   rendelkezik.

   A ko:zponti es alarendelt NIS szerverek az ypserv demon
   segitsegevel dolgozzak fel a NIS kereseket. Az ypserv felelo"s a
   NIS kliensekto"l befuto keresek fogadasaert, es a kert tartomany
   valamint tablazat nevebo"l meghatarozza az adatbazisban tarolt
   allomanyt, majd innen visszaku:ldi a hozzatartozo adatot a
   kliensnek.

     --------------------------------------------------------------

      29.4.4.2.1. A ko:zponti NIS szerver beallitasa

   A ko:zponti NIS szerver beallitasa viszonylag magatol erteto"do",
   de a nehezseget az igenyeink szabjak meg. A FreeBSD alapbol
   tamogatja a NIS hasznalatat. Ezert mindo:ssze annyit kell
   tennu:nk, hogy a ko:vetkezo" sorokat betesszu:k az /etc/rc.conf
   allomanyba, es a FreeBSD gondoskodik a to:bbiro"l.

    1. nisdomainname="proba-tartomany"

       Ez a sor adja meg a halozati beallitasok (vagy peldaul az
       ujrainditas) soran a NIS tartomany nevet, amely a korabbiak
       szerint itt most a proba-tartomany.

    2. nis_server_enable="YES"

       Ezzel utasitjuk a FreeBSD-t, hogy a halozati alkalmazasok
       ko:vetkezo" inditasakor a NIS szervert is aktivalja.

    3. nis_yppasswdd_enable="YES"

       Ezzel engedelyezzu:k az rpc.yppasswdd demont, amely a korabban
       emlitettek szerint leheto"ve teszi a felhasznalok szamara,
       hogy a ko:zvetlenu:l a kliensekro"l valtoztassak meg a NIS
       jelszavukat.

     Megjegyzes: A konkret NIS beallitasainktol fu:ggo"en tovabbi
     bejegyzesek felvetelere is szu:ksegu:nk lehet. Erre keso"bb meg
     az olyan NIS szervereknel, amelyek egyben NIS kliensek, vissza
     fogunk terni.

   Most mindo:ssze annyit kell tennu:nk, hogy
   rendszeradminisztratorkent kiadjuk az /etc/netstart parancsot. Az
   /etc/rc.conf allomanyban szereplo" adatok alapjan mindent beallit
   magatol.

     --------------------------------------------------------------

      29.4.4.2.2. A NIS tablazatok inicializalasa

   A NIS tablazatok lenyegeben a /var/yp ko:nyvtarban tarolt
   adatbazisok. A ko:zponti NIS szerver /etc ko:nyvtaraban talalhato
   konfiguracios allomanyokbol allitodnak elo", egyetlen kivetellel:
   ez az /etc/master.passwd allomany. Ennek megvan a maga oka, hiszen
   nem akarjuk a root es az o:sszes to:bbi fontosabb felhasznalohoz
   tartozo jelszot az egesz NIS tartomannyal megosztani. Ennek
   megfelelo"en a NIS tablazatok inicializalasahoz a ko:vetkezo"t
   kell tennu:nk:

 # cp /etc/master.passwd /var/yp/master.passwd
 # cd /var/yp
 # vi master.passwd

   El kell tavolitanunk az o:sszes rendszerszintu" (bin, tty, kmem,
   games, stb), es minden olyan egyeb hozzaferest, amelyeket nem
   akarjuk ko:zvetiteni a NIS kliensek fele (peldaul a root es minden
   mas nullas, vagyis rendszeradminisztratori azonositoval ellatott
   hozzaferest).

     Megjegyzes: Gondoskodjunk rola, hogy az /var/yp/master.passwd
     allomany sem a csoport, sem pedig barki mas szamara nem
     olvashato (600-as engedely)! Ennek beallitasahoz hasznaljuk az
     chmod parancsot, ha szu:kseges.

   Ha vegeztu:nk, akkor mar tenyleg itt az ideje inicializalni NIS
   tablazatainkat. A FreeBSD erre egy ypinit nevu" szkriptet ajanl
   fel (erro"l a sajat man oldalan tudhatunk meg to:bbet). Ez a
   szkript egyebkent a legto:bb UNIX tipusu operacios rendszeren
   megtalalhato, de nem az o:sszesen. A Digital UNIX/Compaq Tru64
   UNIX rendszereken ennek a neve ypsetup. Mivel most a ko:zponti NIS
   szerver tablazatait hozzuk letre, azert az ypinit szkriptnek at
   kell adnunk a -m opciot is. A NIS tablazatok elo"allitasanal
   feltetelezzu:k, hogy a fentebb ismertetett lepeseket mar
   megtettu:k, majd kiadjuk ezt a parancsot:

 ellington# ypinit -m proba-tartomany
 Server Type: MASTER Domain: proba-tartomany
 Creating an YP server will require that you answer a few questions.
 Questions will all be asked at the beginning of the procedure.
 Do you want this procedure to quit on non-fatal errors? [y/n: n] n
 Ok, please remember to go back and redo manually whatever fails.
 If you don't, something might not work.
 At this point, we have to construct a list of this domains YP servers.
 rod.darktech.org is already known as master server.
 Please continue to add any slave servers, one per line. When you are
 done with the list, type a <control D>.
 master server   :  ellington
 next host to add:  coltrane
 next host to add:  ^D
 The current list of NIS servers looks like this:
 ellington
 coltrane
 Is this correct?  [y/n: y] y

 [ .. a tablazatok generalasa .. ]

 NIS Map update completed.
 ellington has been setup as an YP master server without any errors.

   Az u:zenetek forditasa:

 A szerver tipusa: KO:ZPONTI, tartomany: proba-tartomany
 Az YP szerver letrehozasahoz meg kell valaszolni nehany kerdest az
 eljaras megkezdese elo"tt.
 Szeretnenk, ha az eljaras megszakadna a nem vegzetes hibak eseten is? [i/n: n] n
 Rendben, akkor ne felejtsu:k el manualisan kijavitani a hibat, ha
 valamivel gond lenne.  Ha nem tesszu:k meg, akkor elo"fordulhat, hogy
 valami nem fog rendesen mu"ko:dni.  Most o:ssze kell allitanunk egy listat
 a tartomany YP szervereiro"l.
 Jelenleg a rod.darktech.org a ko:zponti szerver.
 Kerju:nk, adjon meg tovabbi alarendelt szervereket, soronkent egyet.
 Amikor ezt befejeztu:k, a <control D> lenyomasaval tudunk
 kilepni.
 ko:zponti szerver : ellington
 ko:vetkezo" gep    : coltrane
 ko:vetkezo" gep    : ^D
 A NIS szerverek listaja jelenleg a ko:vetkezo":
 ellington
 coltrane
 Ez megfelelo"?  [i/n: i] i

 [ .. a tablazatok generalasa .. ]

 A NIS tablazatok sikeressen frissu:ltek.
 Az elligon szervert minden hiba nelku:l sikeru:lt ko:zponti szerverkent
 beallitani.

   Az ypinit a /var/yp/Makefile.dist allomanybol letrehozza a
   /var/yp/Makefile allomanyt. Amennyiben ez letrejo:tt, az allomany
   feltetelezi, hogy csak FreeBSD-s gepek reszvetelevel akarunk
   kialakitani egy egyszerveres NIS ko:rnyezetet. Mivel a
   proba-tartomany meg egy alarendelt szervert is tartalmaz, ezert at
   kell irnunk a /var/yp/Makefile allomanyt:

 ellington# vi /var/yp/Makefile

   Ezt a sort kell megjegyzesbe tennu:nk:

 NOPUSH = "True"

   (ha meg nem lenne ugy).

     --------------------------------------------------------------

      29.4.4.2.3. Az alarendelt NIS szerverek beallitasa

   Az alarendelt NIS szerverek beallitasa meg a ko:zpontinal is
   egyszeru"bb. Jelentkezzu:nk be az alarendelt szerverre es az
   eddigieknek megfelelo"en irjuk at az /etc/rc.conf allomanyt. Az
   egyetlen ku:lo:nbseg ezuttal csupan annyi lesz, hogy az ypinit
   lefuttatasakor a -s opciot kell megadnunk (mint slave, vagyis
   alarendelt). A -s opcio hasznalatahoz a ko:zponti NIS szerver
   nevet is at kell adnunk, ezert a konkret parancs valahogy igy fog
   kinezni:

 coltrane# ypinit -s ellington proba-tartomany

 Server Type: SLAVE Domain: test-domain Master: ellington

 Creating an YP server will require that you answer a few questions.
 Questions will all be asked at the beginning of the procedure.

 Do you want this procedure to quit on non-fatal errors? [y/n: n]  n

 Ok, please remember to go back and redo manually whatever fails.
 If you don't, something might not work.
 There will be no further questions. The remainder of the procedure
 should take a few minutes, to copy the databases from ellington.
 Transferring netgroup...
 ypxfr: Exiting: Map successfully transferred
 Transferring netgroup.byuser...
 ypxfr: Exiting: Map successfully transferred
 Transferring netgroup.byhost...
 ypxfr: Exiting: Map successfully transferred
 Transferring master.passwd.byuid...
 ypxfr: Exiting: Map successfully transferred
 Transferring passwd.byuid...
 ypxfr: Exiting: Map successfully transferred
 Transferring passwd.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring group.bygid...
 ypxfr: Exiting: Map successfully transferred
 Transferring group.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring services.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring rpc.bynumber...
 ypxfr: Exiting: Map successfully transferred
 Transferring rpc.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring protocols.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring master.passwd.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring networks.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring networks.byaddr...
 ypxfr: Exiting: Map successfully transferred
 Transferring netid.byname...
 ypxfr: Exiting: Map successfully transferred
 Transferring hosts.byaddr...
 ypxfr: Exiting: Map successfully transferred
 Transferring protocols.bynumber...
 ypxfr: Exiting: Map successfully transferred
 Transferring ypservers...
 ypxfr: Exiting: Map successfully transferred
 Transferring hosts.byname...
 ypxfr: Exiting: Map successfully transferred

 coltrane has been setup as an YP slave server without any errors.
 Don't forget to update map ypservers on ellington.

   Most mar lennie kell egy /var/yp/proba-tartomany nevu"
   ko:nyvtarunknak is. A ko:zponti NIS szerver tablazatainak masolata
   itt fognak tarolodni. Ezeket soha ne felejtsu:k el frissen
   tartani. Az alarendelt szervereken a ko:vetkezo" /etc/crontab
   bejegyzesek pontosan ezt a feladatot latjak el:

 20      *       *       *       *       root   /usr/libexec/ypxfr passwd.byname
 21      *       *       *       *       root   /usr/libexec/ypxfr passwd.byuid

   Ez a ket sor gondoskodik rola, hogy az alarendelt szerverek ne
   felejtsek el egyeztetni a tablazataikat a ko:zponti szerver
   tablazataival. Habar ezek a bejegyzesek nem nelku:lo:zhetetlenek a
   megfelelo" mu"ko:deshez, mivel a ko:zponti szerver mindig
   igyekszik az alarendelt szervereknek elku:ldeni a NIS
   tablazataiban letrejo:tt valtozasokat. Mivel azonban a jelszavak
   letfontossaguak a szerverto"l fu:ggo" rendszerek szamara, ezert jo
   o:tlet lehet explicit modon is elo"irni a frissitest. Ez a
   forgalmasabb halozatokon nagyobb jelento"seggel bir, mivel ott a
   tablazatok frissitese nem mindig fejezo"dik be rendesen.

   Most pedig futassuk le a /etc/netstart parancsot az alarendelt
   szervereken is, amivel igy elindul a NIS szerver.

     --------------------------------------------------------------

    29.4.4.3. A NIS kliensek

   A NIS kliens az ypbind demon segitsegevel egy ko:tesnek (bind)
   nevezett kapcsolatot epit ki egy adott NIS szerverrel. Az ypbind
   elleno"rzi a rendszer alapertelmezett tartomanyat (ezt a
   domainname paranccsal allitottunk be), majd RPC kereseket kezd
   szorni a helyi halozaton. Ezek a keresek annak a tartomanynak a
   nevet tartalmazzak, amelyhez az ypbind megprobal ko:test
   letrehozni. Ha az adott tartomany kiszolgalasara beallitott
   szerver eszleli ezeket a kereseket, akkor valaszol az ypbind
   demonnak, amely pedig feljegyzi a szerver cimet. Ha to:bb szerver
   is elerheto" (peldaul egy ko:zponti es to:bb alarendelt), akkor az
   ypbind az elso"kent valaszolo cimet fogja ro:gziteni. Innento"l
   kezdve a kliens ko:zvetlenu:l ennek a szervernek fogja ku:ldeni a
   NIS kereseit. Az ypbind ido"nkent "megpingeli" a szervert, hogy
   meggyo"zo"djo:n az elerheto"segero"l. Ha az ypbind egy adott ido"n
   belu:l nem kap valaszt a ping kereseire, akkor megszu:nteti a
   ko:test a tartomanyhoz es nekilat keresni egy masik szervert.

     --------------------------------------------------------------

      29.4.4.3.1. A NIS kliensek beallitasa

   Egy FreeBSD-s gepet NIS klienskent megleheto"sen egyszeru"en lehet
   beallitani.

    1. Nyissuk meg az /etc/rc.conf allomanyt es a NIS tartomanynev
       beallitasahoz, valamint az ypbind elinditasahoz a
       ko:vetkezo"ket irjuk bele:

 nisdomainname="proba-tartomany"
 nis_client_enable="YES"

    2. A NIS szerveren talalhato jelszavak importalasahoz tavolitsuk
       el az o:sszes felhasznaloi hozzaferest az /etc/master.passwd
       allomanyunkbol es a vipw segitsegevel adjuk hozza az alabbi
       sort az allomany vegehez:

 +:::::::::

         Megjegyzes: Ez a sor beenged barkit a rendszeru:nkre, akinek
         a NIS szervereken van ervenyes hozzaferese. A NIS klienseket
         ezzel a sorral sokfele modon tudjuk allitani. A halozati
         csoportokrol szolo szakaszban talalunk majd erro"l to:bb
         informaciot. A tema melyebb megismeresehez az O'Reilly
         Managing NFS and NIS cimu" ko:nyvet ajanljuk.

         Megjegyzes: Legalabb helyi hozzaferest (vagyis amit nem
         NIS-en keresztu:l importalunk) azonban mindenkeppen hagyjunk
         meg az /etc/master.passwd allomanyunkban, es ez a hozzaferes
         legyen a wheel csoport tagja. Ha valami gond lenne a NIS
         hasznalataval, akkor ezen a hozzaferesen keresztu:l tudunk a
         gepre tavolrol bejelentkezni, majd innen root felhasznalora
         valtva megoldani a felmeru:lt problemakat.

    3. A NIS szerverro"l az o:sszes lehetseges csoport-bejegyzest az
       /etc/group allomanyban igy tudjuk importalni:

 +:*::

   Miutan elvegeztu:k ezeket a lepeseket, kepesek leszu:nk futtatni
   az ypcat passwd parancsot, es latni a NIS szerver jelszavakat
   tartalmazo tablazatat.

     --------------------------------------------------------------

  29.4.5. A NIS biztonsaga

   Altalaban tetszo"leges tavoli felhasznalo ku:ldhet RPC kereseket
   az ypserv(8) szamara es kerheti le a NIS tablazatok tartalmat,
   felteve, hogy ismeri a tartomany nevet. Az ilyen hitelesites
   nelku:li mu"veletek ellen az ypserv(8) ugy vedekezik, hogy
   tartalmaz egy "securenets" nevu" leheto"seget, amellyel az
   elerheto"segu:ket tudjuk leszu"kiteni gepek egy csoportjara. Az
   ypserv(8) inditasakor ezeket az informaciokat a /var/yp/securenets
   allomanybol probalja meg beto:lteni.

     Megjegyzes: Az eleresi utvonala megadhato a -p opcio
     hasznalataval. Ez az allomany olyan bejegyzeseket tartalmaz,
     amelyekben egy halozati cim es to"le lathatatlan karakterekkel
     elvalasztva egy halozati maszk szerepel. A "#" karakterrel
     kezdo"do" sorokat megjegyzesnek nyilvanitjuk. Egy minta
     securenets allomany valahogy igy nezne ki:

 # Engedelyezzu:k o:nmagunkrol a csatlakozast -- kell!
 127.0.0.1     255.255.255.255
 # Engedelyezzu:k a 192.168.128.0 halozatrol erkezo" csatlakozasokat:
 192.168.128.0 255.255.255.0
 # Engedelyezzu:k a laborban talalhato 10.0.0.0 es 10.0.15.255 ko:zti
 # cimekkel rendelkezo" gepek csatlakozasat:
 10.0.0.0      255.255.240.0

   Ha az ypserv(8) olyan cimro"l kap kerest, amely illeszkedik az
   elo"irt cimek valamelyikere, akkor a szokasos modon feldolgozza
   azt. Ellenkezo" esetben a kerest figyelmen kivu:l hagyja es egy
   figyelmeztetest vesz fel hozza a naploba. Ha a /var/yp/securenets
   allomany nem letezik, akkor az ypserv tetszo"leges gepro"l
   engedelyezi a csatlakozast.

   Az ypserv leheto"seget ad a Wietse Venema altal fejlesztett TCP
   Wrapper csomag hasznalatara is. Ezzel a rendszergazda a
   /var/yp/securenets allomany helyett a TCP Wrapper konfiguracios
   allomanyai alapjan kepes szabalyozni az elerheto"seget.

     Megjegyzes: Miko:zben mind a ket modszer nyujt valamilyen fajta
     vedelmet, de a privilegizalt portok tesztelesehez hasonloan az
     "IP alcazasaval" (IP spoofing) sebezheto"ek. Ezert az o:sszes
     NIS-hez tartozo forgalmat tu"zfallal kell blokkolnunk.

     Az /var/yp/securenets allomanyt hasznalo szerverek nem kepesek
     az elavult TCP/IP implementaciokat hasznalo ervenyes klienseket
     rendesen kiszolgalni. Egyes ilyen implementaciok a cimben a
     gephez tartozo biteket nullara allitjak az u:zenetszorashoz,
     es/vagy ezert az u:zenetszorashoz hasznalt cim kiszamitasakor
     nem tudja eszleli a halozati maszkot. A legto:bb ilyen problema
     megoldhato a kliens konfiguraciojanak megvaltoztatasaval, mig
     mas problemak megoldasa a kerdeses kliensek nyugdijazasat
     kivanjak meg, vagy a /var/yp/securenets hasznalatanak
     elhagyasat.

     Egy regebbi TCP/IP implementacioval u:zemelo" szerveren pedig a
     /var/yp/securenets allomany hasznalata kifejezetten rossz
     o:tlet, es a halozatunk nagy reszeben kepes hasznalhatatlanna
     tenni a NIS funkcioit.

     A TCP Wrapper csomag alkalmazasa a NIS szerveru:nk valaszadashoz
     szu:kseges idejet is segit cso:kkenteni. Az ilyenkor jelentkezo"
     plusz keslekedes mellesleg eleg nagy lehet ahhoz, hogy a
     klienseknel ido"tullepes ko:vetkezzen be, ku:lo:no:sen a
     terheltebb halozatokon vagy a lassu NIS szerverek eseteben. Ha
     egy vagy to:bb kliensu:nk is ilyen tu:neteket mutat, akkor
     erdemes a kerdeses kliens rendszereket alarendelt NIS
     szerverekke alakitani es o:nmagukhoz rendelni.

     --------------------------------------------------------------

  29.4.6. Egyes felhasznalok bejelentkezesenek megakadalyozasa

   A laborunkban van egy basie nevu" gep, amely a tanszek egyetlen
   munkaallomasa. Ezt a gepet nem akarjuk kivenni a NIS tartomanybol,
   de a ko:zponti NIS szerver passwd allomanya megis egyarant
   tartalmazza a hallgatok es az oktatok elereseit. Mit lehet
   ilyenkor tenni?

   Adott felhasznalok eseteben le tudjuk tiltani a bejelentkezest a
   gepen meg olyankor is, ha leteznek a NIS adatbazisaban. Ehhez
   mindo:ssze a kliensen az /etc/master.passwd allomany vegere be
   kell tennu:nk egy -felhasznalonev sort, ahol a felhasznalonev
   annak a felhasznalonak a neve, akit nem akarunk beengedni a gepre.
   Ezt leginkabb a vipw hasznalatan keresztu:l erdemes megtennu:nk,
   mivel a vipw az /etc/master.passwd allomany alapjan vegez nemi
   elleno"rzest, valamint a szerkesztes befejeztevel magatol
   ujrageneralja a jelszavakat tarolo adatbazist. Peldaul, ha a bill
   nevu" felhasznalot ki akarjuk tiltani a basie nevu" gepro"l,
   akkor:

 basie# vipw
 [vegyu:k fel a -bill sort a vegere, majd lepju:nk ki]
 vipw: rebuilding the database...
 vipw: done

 basie# cat /etc/master.passwd

 root:[jelszo]:0:0::0:0:The super-user:/root:/bin/csh
 toor:[jelszo]:0:0::0:0:The other super-user:/root:/bin/sh
 daemon:*:1:1::0:0:Owner of many system processes:/root:/sbin/nologin
 operator:*:2:5::0:0:System &:/:/sbin/nologin
 bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/sbin/nologin
 tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin
 kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin
 games:*:7:13::0:0:Games pseudo-user:/usr/games:/sbin/nologin
 news:*:8:8::0:0:News Subsystem:/:/sbin/nologin
 man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/sbin/nologin
 bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin
 uucp:*:66:66::0:0:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico
 xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/sbin/nologin
 pop:*:68:6::0:0:Post Office Owner:/nonexistent:/sbin/nologin
 nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/sbin/nologin
 +:::::::::
 -bill

 basie#

     --------------------------------------------------------------

  29.4.7. A halozati csoportok alkalmazasa

   Keszitette: Udo Erdelhoff.

   Az elo"zo" szakaszban ismertetett modszer viszonylag jol mu"ko:dik
   olyan esetekben, amikor nagyon keves felhasznalora es/vagy
   szamitogepre kell alkalmaznunk specialis megszoritasokat. A
   nagyobb halozatokban szinte biztos, hogy elfelejtu:nk kizarni
   egyes felhasznalokat az erzekeny gepekro"l, vagy az o:sszes gepen
   egyenkent kell ehhez a megfelelo" beallitasokat elvegezni, es
   ezzel lenyegeben elvesztju:k a NIS legfontosabb elo"nyet, vagyis a
   ko:zpontositott karbantarthatosagot.

   A NIS fejleszto"i erre a problemara a halozati csoportokat
   letrehozasaval valaszoltak. A celjuk es mu"ko:desu:k szempontjabol
   leginkabb a UNIX-os allomanyrendszerekben talalhato csoportokhoz
   merheto"ek. A legnagyobb elteres a numerikus azonositok hianyaban
   mutatkozik meg, valamint a halozati csoportokat a felhasznalokon
   kivu:l tovabbi halozati csoportok megadasaval is ki lehet
   alakitani.

   A halozati csoportok a nagyobb, bonyolultabb, to:bbszaz
   felhasznalos halozatok szamara jo:ttek letre. Egy reszro"l ez
   nagyon jo dolog, ku:lo:no:sen akkor, ha egy ilyen helyzettel kell
   szembeneznu:nk. Masreszro"l ez a merteku" bonyolultsag szinte
   teljesen lehetetlenne teszi a halozati csoportok egyszeru"
   bemutatasat. A szakasz tovabbi reszeben hasznalt pelda is ezt a
   problemat igyekszik illusztralni.

   Tetelezzu:k fel, hogy laborunkban a NIS sikeres bevezetese
   felkeltette a fo"no:keink figyelmet. Igy a ko:vetkezo" feladatunk
   az lett, hogy terjesszu:k ki a NIS tartomanyt az egyetemen
   talalhato nehany masik gepre is. Az alabbi ket tablazatban az uj
   felhasznalok es az uj szamitogep neveit talaljuk, valamint a
   ro:vid leirasukat.

        Felhasznalok nevei                     Leiras                 
   alpha, beta                  az IT tanszek hetko:znapi dolgozoi    
   charlie, delta               az IT tanszek ujdonsu:lt dolgozoi     
   echo, foxtrott, golf, ...    atlagos dolgozok                      
   able, baker, ...             o:szto:ndijasok                       

          Gepek nevei                         Leiras                  
   haboru, halal, ehseg,     A legfontosabb szervereink. Csak az IT   
   szennyezes                tanszek dolgozoi ferhetnek hozzajuk.     
   buszkeseg, kapzsisag,     Kevesbe fontos szerverek. Az IT tankszek 
   irigyseg, harag, bujasag, o:sszes tagja el tudja erni ezeket a     
   lustasag                  gepeket.                                 
   egy, ketto, harom, negy,  Atlagos munkaallomasok. Egyedu:l csak a  
   ...                       valodi dolgozok jelentkezhetnek be       
                             ezekre a gepekre.                        
                             Egy nagyon regi gep, semmi ertekes adat  
   szemetes                  nincs rajta. Akar meg az o:szo:ndijasok  
                             is nyuzhatjak.                           

   Ha ezeket az igenyeket ugy probaljuk meg teljesiteni, hogy a
   felhasznalokat egyenkent blokkoljuk, akkor minden rendszer passwd
   allomanyaba ku:lo:n fel kell vennu:nk a -felhasznalo sorokat a
   letiltott felhasznalokhoz. Ha csak egyetlen bejegyzest is
   kihagyunk, akkor ko:nnyen bajunk szarmazhat belo"le. Ez a rendszer
   kezdeti beallitasa soran meg talan nem okoz gondot, de az uj
   felhasznalokat biztosan el fogjuk felejteni felvenni a megfelelo"
   csoportokba. Elvegre Murphy is optimista volt.

   A halozati csoportok hasznalata ilyen helyzetekben szamos elo"nyt
   rejt. Nem kell az egyes felhasznalokat ku:lo:n felvenni, egy
   felhasznalot felveszu:nk valamelyik csoportba vagy csoportokba, es
   a csoportok o:sszes tagjanak egyszerre tudjuk tiltani vagy
   engedelyezni a hozzafereseket. Ha hozzaadunk egy uj gepet a
   halozatunkhoz, akkor mindo:ssze a halozati csoportok
   bejelentkezesi korlatozasait kell beallitani. Ha uj felhasznalot
   veszu:nk fel, akkor a felhasznalot kell vennu:nk egy vagy to:bb
   halozati csoportba. Ezek a valtoztatasok fu:ggetlenek egymastol,
   es nincs szu:kseg "minden felhasznalo es minden gep o:sszes
   kombinaciojara". Ha a NIS beallitasainkat elo"zetesen
   ko:ru:ltekinto"en megterveztu:k, akkor egyetlen ko:zponti
   konfiguracios allomanyt kell modositani a gepek eleresenek
   engedelyezesehez vagy tiltasahoz.

   Az elso" lepes a halozati csoportokat tartalmazo NIS tablazat
   inicializalasa. A FreeBSD ypinit(8) programja alapertelmezes
   szerint nem hozza letre ezt a tablazatot, de ha keszitu:nk egy
   ilyet, akkor a NIS implementacioja kepes kezelni. Egy ilyen u:res
   tablazat elkeszitesehez ennyit kell begepelni:

 ellington# vi /var/yp/netgroup

   Ezutan elkezdhetju:k felvenni a tartalmat. A peldank szerint
   legalabb negy halozati csoportot kell csinalnunk: az IT
   dolgozoinak, az IT uj dolgozoinak, a normal dolgozoknak es az
   o:szo:ndijasoknak.

 IT_DOLG       (,alpha,proba-tartomany)    (,beta,proba-tartomany)
 IT_UJDOLG     (,charlie,proba-tartomany)  (,delta,proba-tartomany)
 FELHASZNALO   (,echo,proba-tartomany)     (,foxtrott,proba-tartomany) \
               (,golf,proba-tartomany)
 OSZTONDIJAS   (,able,proba-tartomany)     (,baker,proba-tartomany)

   Az IT_DOLG, IT_UJDOLG stb. a halozati csoportok nevei lesznek.
   Minden egyes zarojelezett csoport egy vagy to:bb felhasznaloi
   hozzaferest tartalmaz. A csoportokban szereplo" harom mezo" a
   ko:vetkezo":

    1. Azon gepek neve, amelykre a ko:vetkezo" elemek ervenyesek. Ha
       itt nem adunk meg neveket, akkor a bejegyzes az o:sszes gepre
       vonatkozik. Ha megadjuk egy gep nevet, akkor jutalmunk a
       teljes so:tetseg, a rettegetes es totalis megtebolyodas.

    2. A csoporthoz tartozo hozzaferes neve.

    3. A hozzafereshez kapcsolodo NIS tartomany. A csoportba mas NIS
       tartomanyokbol is at tudunk hozni hozzafereseket, ha netalan
       eppen olyan szerencsetlenek lennenk, hogy to:bb NIS tartomanyt
       is felu:gyelnu:nk kell.

   A mezo"k mindegyike tartalmazhat dzsokerkaraktereket. Erro"l
   reszletesebben a netgroup(5) man oldalon olvashatunk.

     Megjegyzes: A halozati csoportoknak leheto"leg ne adjunk 8
     karakternel hosszabb nevet, ku:lo:no:sen abban az esetben, ha a
     NIS tartomanyban mas operacios rendszereket is hasznalunk. A
     nevekben elternek a kis- es nagybetu"k. Ha a halozati
     csoportokat nevet nagybetu"kkel irjuk, akkor ko:nnyen
     ku:lo:nbseget tudunk tenni a felhasznalok, gepek es halozati
     csoportok nevei ko:zo:tt.

     Egyes (nem FreeBSD alapu) NIS kliensek nem kepesek kezelni a
     nagyon sok bejegyzest tartalmazo halozati csoportokat. Peldaul a
     SunOS nehany korabbi verzioja fennakad rajta, ha egy halozati
     csoport 15 bejegyzesnel to:bbet tartalmaz. Az ilyen korlatozasok
     alol ugy tudunk kibujni, ha 15 felhasznalonkent ujabb halozati
     csoportokat hozunk letre, amelyekkel az eredeti halozati
     csoportot epitju:k fel:

 NAGYCSP1  (,joe1,tartomany)  (,joe2,tartomany)  (,joe3,tartomany) [...]
 NAGYCSP2  (,joe16,tartomany)  (,joe17,tartomany) [...]
 NAGYCSP3  (,joe31,tartomany)  (,joe32,tartomany)
 NAGYCSOPORT  NAGYCSP1 NAGYCSP2 NAGYCSP3

     Ugyanez a folyamat javasolt olyan esetekben is, ahol 225
     felhasznalonal to:bbre lenne szu:kseg egyetlen halozati
     csoporton belu:l.

   Az igy letrehozott uj NIS tablazat szetku:ldese megleheto"sen
   ko:nnyu" feladat:

 ellington# cd /var/yp
 ellington# make

   Ez a parancs letrehoz harom NIS tablazatot: netgroup,
   netgroup.byhost es netgroup.byuser. Az ypcat(1) paranccsal
   elleno"rizni is tudjuk az uj NIS tablazatainkat:

 ellington% ypcat -k netgroup
 ellington% ypcat -k netgroup.byhost
 ellington% ypcat -k netgroup.byuser

   Az elso" parancs kimenete a /var/yp/netgroup allomany tartalmara
   emlekeztethet minket. A masodik parancsnak nincs semmilyen
   kimenete, hacsak nem adtunk meg valamilyen gepfu:ggo" halozati
   csoportot. A harmadik parancs a halozati csoportokat listazza ki a
   felhasznalokhoz.

   A kliensek beallitasa tehat nagyon egyszeru". A haboru nevu"
   szerver beallitasahoz inditsuk el a vipw(8) programot, es
   cserelju:k a

 +:::::::::

   sort erre:

 +@IT_DOLG:::::::::

   Innento"l kezdve kizarolag csak az IT_DOLG csoportban talalhato
   felhasznalok fognak bekeru:lni a haboru jelszo adatbazisaba, es
   csak ezek a felhasznalok tudnak ide bejelentkezni.

   Sajnos ez a korlatozas a parancsertelmezo" ~ funkciojara es
   o:sszes olyan rutinra is vonatkozik, amelyet a felhasznaloi nevek
   es azok numerikus azonosito ko:zo:tt kepez le. Mas szoval a cd
   ~felhasznalo parancs nem fog mu"ko:dni, es az ls -l parancs
   kimeneteben a felhasznaloi nevek helyett csak numerikus azonositok
   jelennek meg, tovabba afind . -user joe -print "No such user"
   ("Nincs ilyen felhasznalo") hibat fog visszaadni. Ez ugy tudjuk
   megjavitani, ha ugy importaljuk a szerverre az o:sszes felhasznalo
   bejegyzeset, hogy ko:zben tiltjuk a hozzaferesu:ket.

   Ehhez vegyu:nk fel egy ujabb sort az /etc/master.passwd
   allomanyba. A sor valahogy igy fog kinezni:

   +:::::::::/sbin/nologin, amely annyit tesz, hogy "importaljuk az
   o:sszes bejegyzest, de a hozzajuk tartozo parancsertelmezo" a
   /sbin/nologin legyen". A passwd allomanyban tetszo"leges mezo"
   tartalmat le tudjuk ugy cserelni, ha megadunk neki egy
   alapertelmezett erteket az /etc/master.passwd allomanyban.

     Figyelem: Vigyazzunk, hogy a +:::::::::/sbin/nologin sort az
     +@IT_DOLG::::::::: sor utan irjuk. Ha nem igy teszu:nk, akkor a
     NIS-bo"l importalt o:sszes felhasznaloi hozzaferes a
     /sbin/nologin parancsertelmezo"t kapja.

   Miutan elvegeztu:k ezt a valtoztatast, minden ujabb dolgozo
   felvetele utan csupan egyetlen tablazatot kell megvaltoztatnunk.
   Ugyanezt a taktikat ko:vethetju:k a kevesbe fontosabb szerverek
   eseteben is, hogy ha a helyi /etc/master.passwd allomanyukban a
   korabbi +::::::::: bejegyzest valami ilyesmivel helyettesitju:k:

 +@IT_DOLG:::::::::
 +@IT_UJDOLG:::::::::
 +:::::::::/sbin/nologin

   Az egyszeru" munkaallomasok eseteben pedig ezekre a sorokra lesz
   szu:ksegu:nk:

 +@IT_DOLG:::::::::
 +@FELHASZNALOK:::::::::
 +:::::::::/sbin/nologin

   Minden remeku:l u:zemel egeszen addig, amig nehany het mulva ismet
   valtozik a hazirend: az IT tanszekre o:szto:ndijasok erkeznek. Az
   IT o:szto:ndijasai a munkaallomasokat es a kevesbe fontosabb
   szervereket tudjak hasznalni. Az uj IT dolgozok mar a ko:zponti
   szerverekre is bejelentkezhetnek. Igy tehat letrehozunk egy uj
   halozati csoportot IT_OSZTONDIJAS neven, majd felvesszu:k ide az
   uj IT o:szto:ndijasokat, es nekilatunk vegigzongorazni az o:sszes
   gep o:sszes konfiguracios allomanyat... Ahogy azonban egy regi
   mondas is tartja: "A ko:zpontositott tervezesben ejtett hibak
   teljes kaoszhoz vezetnek".

   A NIS az ilyen helyzeteket ugy igyekszik elkeru:lni, hogy
   megengedi ujabb halozati csoportok letrehozasat mas halozati
   csoportokbol. Egyik ilyen leheto"seg a szerep alapu halozati
   csoportok kialakitasa. Peldaul, ha a fontosabb szerverek
   bejelentkezesi korlatozasai szamara hozzunk letre egy NAGYSRV
   nevu" csoportot, valamint egy masik halozati csoportot KISSRV
   neven a kevesbe fontosabb szerverekhez, vegu:l MUNKA neven egy
   harmadik halozati csoportot a munkaallomasokhoz. Mindegyik ilyen
   halozati csoport tartalmazza azokat a csoportokat, amelyek
   engedelyezik a gepek elereset. A halozati csoportok leirasat
   tartalmazo NIS tablazat most valahogy igy fog kinezni:

 NAGYSRV  IT_DOLG IT_UJDOLG
 KISSRV   IT_DOLG IT_UJDOLG IT_OSZTONDIJAS
 MUNKA    IT_DOLG IT_OSZTONDIJAS FELHASZNALOK

   A bejelentkezesi megszoritasok ilyen tipusu megadasa viszonylag
   jol mu"ko:dik, hogy ha azonos korlatozasok ala eso" gepek
   csoportjait akarjuk felirni. Banatunk ez a kivetel, es nem a
   szabaly. Az esetek nagy to:bbsegeben ugyanis a bejelentkezesre
   vonatkozo korlatozasokat gepenkent kell egyesevel megadni.

   A halozati csoportok gepfu:ggo" megadasa tehat az imenti
   hazirendhez tarsulo igenyek kielegitesenek egyik modja. Ebben a
   forgatoko:nyvben az /etc/master.passwd allomany minden
   szamitogepen ket "+"-os sorral kezdo"dik. Ko:zu:lu:k az elso" a
   gepen engedelyezett hozzafereseket tartalmazo halozati csoportra
   vonatkozik, a masodik pedig az o:sszes to:bbi hozzafereshez az
   /sbin/nologin parancsertelmezo"t kapcsolja hozza. Itt jo o:tlet,
   ha a gep nevenek "VEGIG-NAGYBETU"S" valtozatat adjuk meg a
   hozzatartozo halozati csoport nevenek:

 +@GEPNEV:::::::::
 +:::::::::/sbin/nologin

   Miutan elvegeztu:k ezt a feladatot minden egyes gepen, az
   /etc/master.passwd allomany helyi valtozatait soha to:bbe nem kell
   modositanunk. Az o:sszes to:bbi valtoztatast a NIS tablazaton
   keresztu:l tudjuk keresztu:l vinni. Ime a felvazolt
   forgatoko:nyvho:z tartozo halozati csoportok kiepitesenek egyik
   lehetseges valtozata, egy-ket finomsaggal kiegeszitve:

 # Elo"szo:r a felhasznalok csoportjait adjuk meg:
 IT_DOLG         (,alpha,proba-tartomany)    (,beta,proba-tartomany)
 IT_UJDOLG       (,charlie,proba-tartomany)  (,delta,proba-tartomany)
 TANSZ1          (,echo,proba-tartomany)     (,foxtrott,proba-tartomany)
 TANSZ2          (,golf,proba-taromany)      (,hotel,proba-tartomany)
 TANSZ3          (,india,proba-taromany)     (,juliet,proba-tartomany)
 IT_OSZTONDIJAS  (,kilo,proba-tartomany)     (,lima,proba-tartomany)
 D_OSZTONDIJAS   (,able,proba-tartomany)     (,baker,proba-tartomany)
 #
 # Most pedig hozzunk letre csoportokat szerepek szerint:
 FELHASZNALOK     TANSZ1   TANSZ2          TANSZ3
 NAGYSRV          IT_DOLG  IT_UJDOLG
 KISSRV           IT_DOLG  IT_UJDOLG       IT_OSZTONDIJAS
 MUNKA            IT_DOLG  IT_OSZTONDIJAS  FELHASZNALOK
 #
 # Ko:vetkezzenek a specialis feladatokhoz tartozo csoportok:
 # Az echo es a golf tudja elerni a virusvedelemert felelo"s gepet:
 VEDELEM          IT_DOLG  (,echo,proba-tartomany)  (,golf,proba-tartomany)
 #
 # Gep alapu halozati csoportok
 # A fo" szervereink:
 HABORU      NAGYSRV
 EHSEG       NAGYSRV
 # Az india nevu" felhasznalo hozza szeretne ehhez ferni:
 SZENNYEZES  NAGYSRV  (,india,proba-tartomany)
 #
 # Ez valoban fontos es komolyan szabalyoznunk kell:
 HALAL       IT_DOLG
 #
 # Az elo"bb emlitett virusvedelmi gep:
 EGY         VEDELEM
 #
 # Egyetlen felhasznalora korlatozzuk le ezt a gepet:
 KETTO       (,hotel,proba-tartomany)
 # [...es itt folytatodik a to:bbi csoporttal]

   Ha a felhasznaloi hozzafereseinket valamilyen adatbazisban
   taroljuk, akkor a tablazat elso" reszet akar az adatbazis
   lekerdezesein keresztu:l is elo" tudjuk allitani. Ezzel a
   modszerrel az uj felhasznalok automatikusan hozzafernek a
   gepekhez.

   Legyu:nk viszont ovatosak: nem mindig javasolt gepeken alapulo
   halozati csoportokat kesziteni. Ha a hallgatoi laborokba egyszerre
   to:bb tucat vagy akar to:bb szaz azonos konfiguracioju gepet
   telepitu:nk, akkor a gep alapu csoportok helyett inkabb szerep
   alapu csoportokat epitsu:nk fel, mivel igy a NIS tablazatok
   meretet egy elfogadhato mereten tudjuk tartani.

     --------------------------------------------------------------

  29.4.8. Amit feltetlenu:l eszben kell tartanunk

   Meg mindig akad nehany olyan dolog, amit maskeppen kell csinalnunk
   azutan, hogy most mar NIS ko:rnyezetben vagyunk.

     * Amikor egy uj felhasznalot akarunk felvenni a laborba, akkor
       csak a ko:zponti NIS szerverre kell felvennu:nk, es ujra kell
       generaltatnunk a NIS tablazatokat. Ha ezt elfelejtju:k
       megtenni, akkor az uj felhasznalo a ko:zponti NIS szerveren
       kivu:l sehova sem lesz kepes bejelentkezni. Peldaul, ha fel
       akarjuk venni a jsmith nevu" felhasznalot a laborba, akkor ezt
       kell tennu:nk:

 # pw useradd jsmith
 # cd /var/yp
 # make proba-tartomany

       Vagy a pw useradd jsmith parancs helyett az adduser jsmith
       parancsot is hasznalhatjuk.

     * A rendszergazdai szintu" hozzafereseket ne taroljuk a NIS
       tablazatokban. Olyan gepekre egyaltalan ne is ku:ldju:nk olyan
       karbantartashoz hasznalt hozzafereseket, amelynek a
       felhasznaloi hivatalosan nem is ferhetnenek hozzajuk.

     * A ko:zponti NIS szervert es az alarendelt szervereket ovjuk
       minel jobban, es igyekezzu:nk minimalizalni a kieseseiket. Ha
       valaki felto:ri vagy egyszeru"en csak kikapcsolja ezeket a
       gepeket, akkor ezzel lenyegeben mindenkit megakadalyoz abban,
       hogy be tudjon jelentkezni a laborban.

       Ezek a ko:zpontositott vezerlesu" rendszerek legfo"bb
       gyengesegei. Ha nem vedju:k kello"en a NIS szervereinket,
       akkor azzal nagyon ellenseget szerezhetu:nk magunknak!

     --------------------------------------------------------------

  29.4.9. Kompatibilitas a NIS elso" valtozataval

   A FreeBSD-ben megtalalhato ypserv szolgaltatas valamennyire kepes
   ellatni a NIS elso" valtozatat hasznalo klienseket is. A FreeBSD
   NIS implementacioja csak a NIS v2 protokollt hasznalja, azonban
   mivel mas implementaciok kompatibilisek kivannak maradni a regebbi
   rendszerekkel, ismerik a v1 protokollt is. Az ilyen rendszerekhez
   tartozo ypbind demonok meg olyankor is megprobalnak v1-es NIS
   szerverekhez ko:test letrehozni, amikor valojaban nincs is ra
   szu:ksegu:k (es gyakran meg akkor is ilyet keresnek, amikor az
   u:zenetu:kre mar valaszolt egy v2-es szerver). Hozzatennenk, hogy
   bar az ypserver ezen valtozata a normal klienshivasokat kepes
   feldolgozni, a tablazatokat mar nem tudja atku:ldeni a v1-es
   klienseknek. Ebbo"l ko:vetkezik, hogy a ko:zponti vagy alarendelt
   szerverek nem tudnak egyu:ttmu"ko:dni olyan NIS szerverekkel,
   amelyek csak a v1-es protokollt beszelik. Szerencsere ilyen
   szervereket manapsag mar alig hasznalnak.

     --------------------------------------------------------------

  29.4.10. NIS szerverek, melyek egyben NIS kliensek

   Ovatosan kell bannunk az ypserv elinditasaval olyan to:bbszerveres
   tartomanyokban, ahol a szerverek maguk is NIS kliensek.
   Alapveto"en nincs abban semmi kivetnivalo, ha a szervereket sajat
   magukhoz ko:tju:k ahelyett, hogy engednenk nekik a ko:tesi keresek
   ku:ldeset es igy egymashoz ko:tnenk ezeket. Ku:lo:no:s hibak
   tudnak szarmazni olyan helyzetekben, amikor az egyik szerver
   leall, miko:zben a to:bbiek pedig fu:ggenek to"le. Vegu:l is
   ilyenkor minden kliens szepen kivarja a szu:kseges ido"t, aztan
   megprobal mas szerverekhez ko:to"dni, de az itt fellepo"
   keslekedes jelento"s mennyisegu" lehet, es ez a hibajelenseg ismet
   fennallhat, mivel elo"fordulhat, hogy a szerverek megint egymashoz
   kapcsolodnak.

   A klienst ugy tudjuk egy adott szerverhez ko:tni, ha az ypbind
   parancsot a -S beallitassal inditjuk. Ha mindezt nem akarjuk
   manualisan megtenni a NIS szerver minden egyes ujrainditasakor,
   akkor vegyu:k fel a ko:vetkezo" sorokat az /etc/rc.conf
   allomanyba:

 nis_client_enable="YES" # elinditjuk a klienst is
 nis_client_flags="-S NIS tartomany,szerver"

   Reszletesebb lasd az ypbind(8) man oldalat.

     --------------------------------------------------------------

  29.4.11. A jelszavak formatuma

   A NIS rendszerek kiepitese soran az emberek leggyakrabban a
   jelszavak formatumaval kapcsolatban tapasztalnak nehezsegeket. Ha
   a szerveru:nk DES titkositasu jelszavakat hasznal, akkor csak
   olyan klienseket fog tudni tamogatni, amelyek szinten igy kodoljak
   ezeket. Peldaul, ha a halozaton vannak Solaris rendszeru" NIS
   klienseink, akkor szinte biztos, hogy DES titkositast kell
   hasznalnunk.

   A szerverek es a kliensek altal hasznalt formatumokat az
   /etc/login.conf allomanyba tekintve derithetju:k ki. Ha a gepek
   to:bbsegen a DES titkositast latjuk, akkor a default osztalynak
   egy ilyen bejegyzest kell tartalmaznia:

 default:\
         :passwd_format=des:\
         :copyright=/etc/COPYRIGHT:\
         [a to:bbit most nem mutatjuk]

   A passwd_format tulajdonsag tovabbi lehetseges ertekei lehetnek a
   blf es az md5 (melyek rendre a Blowfish es MD5 titkositasu
   jelszavakat adjak meg).

   Ha valtoztattunk valamit az /etc/login.conf allomanyban, akkor a
   bejelentkezesi tulajdonsagok adatbazisat is ujra kell generalni,
   melyet root felhasznalokent a ko:vetkezo" modon tehetu:nk meg:

 # cap_mkdb /etc/login.conf

     Megjegyzes: Az /etc/master.passwd allomanyban jelenlevo"
     jelszavak formatuma azonban nem frissito"dik egeszen addig, amig
     a felhasznalok a bejelentkezesi adatbazis ujrageneralasa utan
     meg nem valtoztatjak a jelszavaikat.

   Ugy tudjuk meg biztositani, hogy a jelszavak megfelelo"
   formatumban kodolodjanak, ha az /etc/auth.conf allomanyban
   megkeressu:k a crypt_default sort, amelyben a valaszthato
   jelszoformatumok felhasznalasai sorrendjet talalhatjuk meg. Itt
   tehat mindo:ssze annyit kell tennu:nk, hogy a kiszemelt formatumot
   a lista elejere tesszu:k. Peldaul, ha a DES titkositasu
   jelszavakat akarunk hasznalni, akkor ez a bejegyzes igy fog
   kinezni:

 crypt_default   =       des blf md5

   Ha a fenti lepeseket ko:vetju:k az o:sszes FreeBSD alapu NIS
   szervernel es kliensnel, akkor biztosra mehetu:nk abban, hogy a
   halozatunkon belu:l ugyanazt a jelszoformatumot fogjak hasznalni.
   Ha gondunk akadna a NIS kliensek hitelesitesevel, akkor itt
   erdemes kezdeni a hiba felderiteset. Ne felejtsu:k: ha egy NIS
   szervert egy heterogen halozatba akarunk telepiteni, akkor
   valoszinu"leg az o:sszes rendszeren a DES titkositast kell
   valasztani, mivel altalaban ez a ko:zo:s nevezo" ebben a
   tekintetben.

     --------------------------------------------------------------

29.5. A halozat automatikus beallitasa (DHCP)

   Irta: Greg Sutter.

  29.5.1. Mi az a DHCP?

   A Dinamikus allomaskonfiguracios protokoll, avagy Dynamic Host
   Configuration Protocol (DHCP) annak eszko:zeit irja le, hogy egy
   rendszer mikent tud csatlakozni egy halozathoz es mikent tudja
   azon belu:l megszerezni a kommunikaciohoz szu:kseges
   informaciokat. A FreeBSD 6.0 elo"tti valtozatai az ISC (Internet
   Systems Consortium, vagyis az internetes rendszerkonzorcium) altal
   kidolgozott DHCP kliens (dhclient(8)) implementaciojat
   tartalmazzak. A keso"bbi verziokban pedig az OpenBSD 3.7
   verziojabol atvett dhclient paranccsal dolgozhatunk. Ebben a
   szakaszban a dhclient parancsra vonatkozo o:sszes informacio
   egyarant ervenyes az ISC es az OpenBSD altal fejlesztett DHCP
   kliensekre. A DHCP szerver az ISC-to"l szarmazik.

     --------------------------------------------------------------

  29.5.2. Mivel foglalkozik ez a szakasz

   Ebben a szakaszban az ISC es az OpenBSD DHCP klienseinek kliens-
   es szerver oldali komponsenseit mutatjuk be. A kliens oldali
   program neve a dhclient, amely a FreeBSD reszekent erkezik, es a
   szerver oldali elem pedig a net/isc-dhcp3-server porton keresztu:l
   erheto" el. A lentebb emlitett hivatkozasok mellett a temaban meg
   a dhclient(8), dhcp-options(5) es a dhclient.conf(5) man adhatnak
   bo"vebb felvilagositast a temaban.

     --------------------------------------------------------------

  29.5.3. Ahogyan mu"ko:dik

   Amikor a dhclient, vagyis a DHCP kliens elindul egy kliensgepen,
   akkor a halozaton u:zenetszorassal probalja meg elkerni a
   konfiguraciojahoz szu:kseges adatokat. Alapertelmezes szerint ezek
   a keresek a 68-as UDP porton keresztu:l mennek. A szerver ezekre a
   67-es UDP porton valaszol, ahol visszaad a kliensnek egy IP-cimet
   es a halozat hasznalatahoz szu:kseges tovabbi informaciokat, mint
   peldaul a halozati maszkot, az alapertelmezett atjaro es a
   nevfeloldasert felelo"s szerverek cimet. Az o:sszes ilyen jellegu"
   adat egy DHCP "berlet" (lease) formajaban erkezik meg, amely csak
   egy adott ideig ervenyes (ezt a DHCP szerver karbantartoja allitja
   be). Igy a halozaton a kliens nelku:li IP-cimeket egy ido" utan
   automatikusan visszanyerju:k.

   A DHCP kliensek rengeteg informaciot kepes elkerni a szerverto"l.
   Ezek teljes listajat a dhcp-options(5) man oldalan olvashatjuk el.

     --------------------------------------------------------------

  29.5.4. Hasznalat a FreeBSD-n belu:l

   A FreeBSD teljes egeszeben tartalmazza az ISC vagy az OpenBSD DHCP
   klienset, a dhclient programot (attol fu:ggo"en, hogy a FreeBSD
   melyik valtozatat hasznaljuk). A DHCP kliensek tamogatasa a
   telepito"ben es az alaprendszerben is megtalalhato, es ezzel
   mentesu:lu:nk minden konkret halozati beallitas alol a DHCP
   szervereket alkalmazo halozatokon. A dhclient a FreeBSD 3.2
   valtozata ota megtalalhato a rendszerben.

   DHCP hasznalatat a sysinstall is leheto"ve teszi. Amikor egy
   halozati felu:letet a sysinstall programon belu:l allitunk be,
   akkor a masodik kerdes mindig ez szokott lenni: "Do you want to
   try DHCP configuration of the interface?" ("Megprobaljuk DHCP
   hasznalataval beallitani a felu:letet?") Ha erre igennel
   valaszolunk, akkor azzal lenyegeben a dhclient parancsot inditjuk
   el, es ha mindez sikerrel zarul, akkor szinte magatol kito:lto"dik
   az o:sszes halozati beallitasunk.

   A DHCP hasznalatahoz ket dolgot kell beallitanunk a
   rendszeru:nko:n:

     * Gondoskodjunk rola, hogy a bpf eszko:z resze a
       rendszermagunknak. Ha meg nem lenne benne, akkor a rendszermag
       beallitasait tartalmazo allomanyba vegyu:k fel a device bpf
       sort es forditsuk ujra a rendszermagot. A rendszermagok
       forditasarol a 8 fejezetben tudhatunk meg to:bbet.

       A bpf eszko:z alapbol megtalalhato a GENERIC rendszermagokban,
       igy ha ezt hasznaljuk, akkor nem kell sajat verziot
       keszitenu:nk a DHCP hasznalatahoz.

         Megjegyzes: Azok szamara viszont, akik biztonsagi
         szempontbol aggodnak a rendszeru:k miatt, meg kell
         emlitenu:nk, hogy a bpf egyben az az eszko:z, amely a
         csomagok lehallgatasat is leheto"ve teszi (habar az
         ilyeneket root felhasznalokent lehet csak elinditani). A bpf
         kell a DHCP hasznalatahoz, azonban ha nagyon fontos neku:nk
         a rendszeru:nk biztonsaga, akkor a bpf eszko:zt erdemes
         kivennu:nk a rendszermagbol, ha meg pillanatnyilag nem
         hasznalunk ilyet.

     * Az /etc/rc.conf allomanyunkat az alabbiak szerint kell
       modositani:

 ifconfig_fxp0="DHCP"

         Megjegyzes: Az fxp0 eszko:zt ne felejtsu:k el kicserelni
         arra a felu:letre, amelyet automatikusan akarunk beallitani.
         Ennek mikentje a 11.8 Szakaszban olvashato.

       Ha a dhclient a rendszeru:nkben mashol talalhato, vagy
       egyszeru"en csak tovabbi beallitasokat akarunk atadni a
       dhclient parancsnak, akkor adjuk meg a ko:vetkezo"t is
       (valtoztassuk meg igenyeink szerint):

 dhclient_program="/sbin/dhclient"
 dhclient_flags=""

   A DHCP szerver, a dhcpd a net/isc-dhcp3-server port reszekent
   erheto" el. Az a port tartalmazza az ISC DHCP szerveret es a
   hozzatartozo dokumentaciot.

     --------------------------------------------------------------

  29.5.5. Allomanyok

     * /etc/dhclient.conf

       A dhclient mu"ko:desehez szu:kseg lesz egy konfiguracios
       allomanyra, aminek a neve /etc/dhclient.conf. Ez az allomany
       altalaban csak megjegyzeseket tartalmaz, mivel az
       alapertelmezett ertekek to:bbnyire megfelelo"ek. Ezt a
       konfiguracios allomanyt a dhclient.conf(5) man oldal irja le.

     * /sbin/dhclient

       A dhclient statikusan linkelt es az /sbin ko:nyvtarban
       talalhato. A dhclient(8) man oldal tud rola reszletesebb
       felvilagositast adni.

     * /sbin/dhclient-script

       A dhclient-script a FreeBSD-ben levo" DHCP kliens
       konfiguracios szkriptje. Mu"ko:deset a dhclient-script(8) man
       oldal irja le, de a felhasznalok reszero"l semmilyen
       modositast nem igenyel.

     * /var/db/dhclient.leases

       A DHCP kliens az ervenyes berleteket tartja nyilvan ezekben az
       allomanyban es naplokent hasznalja. A dhclient.leases(5) man
       oldal ezt valamivel bo"vebben kifejti.

     --------------------------------------------------------------

  29.5.6. Tovabbi olvasnivalok

   A DHCP protokoll mu"ko:deset az RFC 2131 mutatja be. A temahoz
   kapcsolodoan itt tudunk meg leirasokat talalni.

     --------------------------------------------------------------

  29.5.7. A DHCP szerverek telepitese es beallitasa

    29.5.7.1. Miro"l szol ez a szakasz

   Ebben a szakaszban arrol olvashatunk, hogy mikent kell egy FreeBSD
   tipusu rendszert DHCP szervernek beallitani, ha az ISC (internetes
   rendszerkonzorcium) DHCP szerveret hasznaljuk.

   Ez a szerver nem resze a FreeBSD-nek, ezert a szolgaltatas
   elinditasahoz elo"szo:r fel kell raknunk a net/isc-dhcp3-server
   portot. A Portgyu"jtemeny hasznalatara vonatkozoan a 4 fejezet
   lehet segitsegu:nkre.

     --------------------------------------------------------------

    29.5.7.2. A DHCP szerver telepitese

   Ha a FreeBSD rendszeru:nket DHCP szerverkent akarjuk beallitani,
   akkor ehhez elso"kent a bpf(4) eszko:z jelenletet kell biztositani
   a rendszermagban. Ehhez vegyu:k fel a device bpf sort a
   rendszermagunk beallitasait tartalmazo allomanyba, majd forditsuk
   ujra a rendszermagot. A rendszermag leforditasarol a 8 fejezetben
   olvashatunk.

   A bpf eszko:z a FreeBSD-hez alapbol adott GENERIC rendszermag
   resze, ezert a DHCP hasznalatahoz nem kell feltetlenu:l ujat
   forditanunk.

     Megjegyzes: A biztonsagi szempontok miatt aggodo felhasznalok
     reszere megjegyezzu:k, hogy a bpf eszko:z egyben a csomagok
     lehallgatasat is leheto"ve teszi (habar az ilyen temaju
     programok futtatasahoz megfelelo" jogokra is szu:kseg van). A
     bpf hasznalata ko:telezo" a DHCP mu"ko:dtetesehez, de ha nagyon
     kenyesek vagyunk a biztonsagot illeto"en, akkor minden olyan
     esetben, amikor nem hasznaljuk ki ezt a leheto"seget, tavolitsuk
     el a rendszermagbol.

   A ko:vetkezo" lepesben at kell szerkesztenu:nk a mintakent
   mellekelt dhcpd.conf allomanyt, amelyet a net/isc-dhcp3-server
   port rakott fel. Ez alapertelmezes szerint a
   /usr/local/etc/dhcpd.conf.sample neven talalhato meg, es mielo"tt
   barmit is valtoztatnank rajta, masoljuk le
   /usr/local/etc/dhcpd.conf neven.

     --------------------------------------------------------------

    29.5.7.3. A DHCP szerver beallitasa

   A dhcpd.conf az alhalozatokat illetve a gepeket erinto"
   deklaraciokat tartalmazza, es talan a legko:nnyebben a ko:vetkezo"
   pelda alapjan mutathato be:

 option domain-name "minta.com";(1)
 option domain-name-servers 192.168.4.100;(2)
 option subnet-mask 255.255.255.0;(3)

 default-lease-time 3600;(4)
 max-lease-time 86400;(5)
 ddns-update-style none;(6)

 subnet 192.168.4.0 netmask 255.255.255.0 {
   range 192.168.4.129 192.168.4.254;(7)
   option routers 192.168.4.1;(8)
 }

 host mailhost {
   hardware ethernet 02:03:04:05:06:07;(9)
   fixed-address levelezes.minta.com;(10)
 }

   (1)
           Ez a beallitas adja meg a kliensek szamara az
           alapertelmezett keresesi tartomanyt (search domain). A
           resolv.conf(5) tud ezzel kapcsolatban reszletesebb
           informaciokat adni.
   (2)
           Ez a beallitas adja meg a kliensek altal hasznalt
           nevfeloldo szerverek vesszo"vel elvalasztott felsorolasat.
   (3)
           A kliensekhez tartozo halozati maszk.
   (4)
           A kliens egy adott ido"re kerhet berleti jogot, egyebkent
           a szerver do:nt a berlet lejarati idejero"l
           (masodpercekben).
   (5)
           Ez az a maximalis ido", amennyire a szerver hajlando berbe
           adni IP-cimet. A kliens ugyan hosszabb ido"re is kerheti
           es meg is kapja, de legfeljebb csak max-lease-time
           masodpercig lesz ervenyes.
   (6)
           Ez a beallitas hatarozza meg, hogy a DHCP szervernek
           frissitse-e a nevoldasi informaciokat a berlesek
           elfogadasanal vagy visszamondasanal. Az ISC
           implementaciojanal ez a beallitas ko:telezo".
   (7)
           Ezzel adjuk meg milyen tartomanybol tudunk IP-cimeket
           kiosztani a kliensek szamara. A kezdo" cimet is beleertve,
           innen fogunk kiutalni egyet a klienseknek.
   (8)
           A kliensek fele elku:ldo:tt alapertelmezett atjaro cime.
   (9)
           A gep hardveres MAC-cime (igy a DHCP szerver kepes
           felismerni a keres ku:ldo"jet).
   (10)
           Ennek megadasaval a gepek mindig ugyanazt az IP-cimet
           kapjak. Itt mar megadhatunk egy halozati nevet, mivel a
           berlethez tartozo informaciok visszaku:ldese elo"tt maga a
           DHCP szerver fogja feloldani a gep nevet.

   Miutan befejeztu:k a dhcpd.conf modositasat, a DHCP szerver az
   /etc/rc.conf allomanyban tudjuk engedelyezni, vagyis tegyu:k bele
   a ko:vetkezo"t:

 dhcpd_enable="YES"
 dhcpd_ifaces="dc0"

   A dc0 felu:let nevet helyettesitsu:k annak a felu:letnek (vagy
   whitespace karakterekkel elvalasztott felu:leteknek) a nevevel,
   amelyen keresztu:l a DHCP szerver varni fogja a kliensek kereseit.

   Ezutan a ko:vetkezo" parancs kiadasaval inditsuk el a szervert:

 # /usr/local/etc/rc.d/isc-dhcpd.sh start

   Amikor a jo:vo"ben valamit valtoztatunk a konfiguracios
   allomanyon, akkor ezzel kapcsolatban fontos megemliteni, hogy ha
   csak egy SIGHUP jelzest ku:ldu:nk a dhcpd demonnak, akkor az a
   to:bbi demontol eltero"en o:nmagaban meg nem eredmenyezi a
   konfiguracios adatok ujraolvasasat. Helyette a SIGTERM jelzessel
   kell leallitani a programot, majd ujrainditani a fenti paranccsal.

     --------------------------------------------------------------

    29.5.7.4. Allomanyok

     * /usr/local/sbin/dhcpd

       A dhcpd statikusan linkelt es a /usr/local/sbin ko:nyvtarban
       talalhato. A porttal egyu:tt felkeru:lo" dhcpd(8) man oldal ad
       reszletesebb utmutatast dhcpd hasznalatarol.

     * /usr/local/etc/dhcpd.conf

       Mielo"tt a dhcpd megkezdhetne mu"ko:deset, egy konfiguracios
       allomanyra is szu:ksegu:nk lesz, amely a
       /usr/local/etc/dhcpd.conf. Ez az allomany tartalmazza az
       o:sszes olyan informaciot, ami kell a kliensek megfelelo"
       kiszolgalasahoz valamint a szerver mu"ko:desehez. Ez a
       konfiguracios allomany porthoz tartozo dhcpd.conf(5) man
       oldalon keru:l ismertetesre.

     * /var/db/dhcpd.leases

       A DHCP szerver ebben az allomanyba tartja nyilvan a kiadott
       berleteket, egy naplo formajaban. A porthoz kapcsolodo
       dhcpd.leases(5) man oldalon erro"l to:bbet is megtudhatunk.

     * /usr/local/sbin/dhcrelay

       A dhcrelay allomanynak olyan komolyabb ko:rnyezetekben van
       szerepe, ahol a DHCP szerver a kliensekto"l erkezo" kereseket
       egy masik halozaton talalhato DHCP szerverhez tovabbitja. Ha
       szu:kseg lenne erre a leheto"segre, akkor telepitsu:k fel a
       net/isc-dhcp3-relay portot. A porthoz tartozo dhcrelay(8) man
       oldal ennek reszleteit taglalja.

     --------------------------------------------------------------

29.6. Nevfeloldas (DNS)

   Keszitette: Chern Lee, Tom Rhodes, es Daniel Gerzo.

  29.6.1. Attekintes

   A FreeBSD alapertelmezes szerint a BIND (Berkeley Internet Name
   Domain) egyik verziojat tartalmazza, amely a nevfeloldasi (Domain
   Name System, DNS) protokoll egyik elterjedt implementacioja. A DNS
   protokollon keresztu:l tudunk az IP-cimekhez neveket rendelni es
   forditva. Peldaul a www.FreeBSD.org nevre a FreeBSD Projekt
   webszerverenek IP-cimet kapjuk meg, miko:zben a ftp.FreeBSD.org
   pedig a hozzatartozo FTP szerver IP-cimet fogja visszaadni. Ehhez
   hasonloan a forditottja is megto:rtenhet, vagyis egy IP-cimhez is
   kerhetju:k a halozati nev feloldasat. A nevfeloldasi keresek
   kiszolgalasahoz nem feltetlenu:l szu:kseges nevszervert futtatni a
   rendszeru:nko:n.

   A FreeBSD jelen pillanatban alapbol a BIND9 nevszervert
   tartalmazza. A benne szereplo" valtozata to:bb biztonsagi
   javitast, uj allomanyrendszeri kiosztast es automatizalt chroot(8)
   beallitast is magaban foglal.

   Az interneten keresztu:li nevfeloldast legfelso" szintu"
   tartomanyoknak (Top Level Domain, TLD) nevezett hitelesitett
   to:vek nemileg bonyolult rendszeren alapszik, valamint mas egyeb
   olyan nevszervereken, amelyek tovabbi egyeni informaciokat
   tarolnak es taraznak.

   A BIND fejleszteset jelenleg az Internet Systems Consortium
   (http://www.isc.org/) felu:gyeli.

     --------------------------------------------------------------

  29.6.2. Alapfogalmak

   A leiras megertesehez be kell mutatnunk nehany nevfeloldassal
   kapcsolatos fogalmat.

      Fogalom                        Meghatarozas                     
   Ko:zvetlen                                                         
   nevfeloldas   A halozati nevek lekepezese IP-cimekre.
   (forward DNS) 
   O"s (origin)  Egy adott zona allomanyban szereplo" tartomanyra     
                 vonatkozik.                                          
   named, BIND   A FreeBSD-n belu:li BIND nevszerver ku:lo:nbo:zo"    
                 megnevezesei.                                        
   Nevfeloldo    Az a program a rendszerben, amelyhez a halozaton     
   (resolver)    levo" gepek a zonak adatainak eleresevel             
                 kapcsolatban fordulnak.                              
   Inverz                                                             
   nevfeloldas   Az IP-cimek lekepzese halozati nevekre.
   (reverse DNS) 
                 Az interneten talalhato zonak hierarchiajanak to:ve. 
   Gyo:kerzona   Minden zona ebbe a gyo:kerzonaba esik, ahhoz         
   (root zone)   hasonloan, ahogy egy allomanyrendszerben az          
                 allomanyok a gyo:kerko:nyvtarba.                     
                 Egy ku:lo:nallo tartomany, altartomany vagy a        
   Zona (zone)   nevfeloldas azon resze, amelyet egyazon fennhatosag  
                 alatt tartanak karban.                               

   Peldak zonakra:

     * A gyo:kerzonara a leirasokban altalaban . neven szoktak
       hivatkozni.

     * A org. egy legfelso" szintu" tartomany (TLD) a gyo:kerzonan
       belu:l.

     * A minta.org. a org. TLD tartomany alatti zona.

     * A 1.168.192.in-addr.arpa egy olyan zona, amelyek a 192.168.1.*
       IP-cimtartomanyban szereplo" o:sszes cimet jelo:li.

   Mint lathatjuk, a halozati nevek balrol kiegeszu:lve pontosodnak.
   Tehat peldaul a minta.org. sokkal pontosabb meghatarozas, mint a
   org., ahogy az org. maganal a gyo:kerzonanal jelent to:bbet. A
   halozati nevek felosztasa leginkabb egy allomanyrendszerhez
   hasonlithato, peldaul a /dev ko:nyvtar a gyo:keren belu:l
   talalhato, es igy tovabb.

     --------------------------------------------------------------

  29.6.3. Miert erdemes nevszervert futtatni

   A nevszerverek altalaban ket alakban jelennek meg. Egyiku:k a
   hitelesitett nevszerver, a masikuk a gyorsitotarazo nevszerver.

   Egy hitelesitett nevszerverre akkor van szu:ksegu:nk, ha:

     * a vilag to:bbi resze fele akarunk hiteles nevfeloldasi
       informaciokat szolgaltatni;

     * regisztraltunk egy tartomanyt (peldaul minta.org) es az alatta
       levo" halozati nevekhez is szeretnenk IP-cimeket rendeltetni;

     * a IP-cimtartomanyunkban szu:kseg van inverz nevfeloldasi
       bejegyzesekre (amely IP-cimbo"l ad meg halozati nevet) is;

     * a keresek teljesitesehez egy tartalek avagy masodik,
       alarendelt (slave) nevszerver kell.

   A gyorsitotarazo nevszerverre akkor van szu:ksegu:nk, ha:

     * egy helyi nevfeloldo szerver felhasznalasaval fel akarjuk
       gyorsitani az egyebkent a ku:lso" nevszerver fele iranyulo
       keresek kiszolgalasat.

   Amikor valaki lekerdezi a www.FreeBSD.org cimet, akkor a
   nevfeloldo elo"szo:r altalaban a kapcsolatot rendelkezesre bocsato
   internet-szolgaltato nevszerveret kerdezi meg es onnan kapja meg a
   valaszt. Egy helyi, gyorsitotarazo nevszerver hasznalata eseten
   azonban egy ilyen kerest csak egyszer kell kiadni a ku:lso"
   nevszervernek. Ezutan mar minden tovabbi ilyen keres el sem hagyja
   a belso" halozatunkat, mivel a valasz szerepel a gyorsitotarban.

     --------------------------------------------------------------

  29.6.4. Ahogyan mu"ko:dik

   FreeBSD alatt a BIND demon nyilvanvalo okokbol named neven erheto"
   el.

          Allomany                          Leiras                    
   named(8)               A BIND demon.                               
   rndc(8)                A nevszervert vezerlo" segedprogram.        
   /etc/namedb            A BIND altal kezelt zonak adatait tarolo    
                          ko:nyvtar.                                  
   /etc/namedb/named.conf A demon konfiguracios allomanya.            

   Attol fu:ggo"en, hogy mikent allitjuk be az adott zonat a
   szerveren, a hozzatartozo allomanyok a /etc/namedb ko:nyvtaron
   belu:l a master, slave vagy dynamic alko:nyvtarban foglalnak
   helyet. Az itt tarolt allomanyokban levo" nevfeloldasi informaciok
   alapjan valaszol a nevszerver a fele intezett keresekre.

     --------------------------------------------------------------

  29.6.5. A BIND elinditasa

   Mivel a BIND alapbol elerheto" a rendszerben, viszonylag ko:nnyen
   be tudjuk allitani.

   A named alapertelmezett beallitasa szerint egy chroot(8)
   ko:rnyezetben futo egyszeru" nevfeloldast vegzo" szerver, amely a
   helyi IPv4 interfeszen (127.0.0.1) fogadja a kereseket. Ezzel a
   beallitassal a ko:vetkezo" parancson keresztu:l tudjuk elinditani:

 # /etc/rc.d/named onestart

   Ha engedelyezni akarjuk a named demont minden egyes
   rendszerinditaskor, tegyu:k a ko:vetkezo" sort az /etc/rc.conf
   allomanyba:

 named_enable="YES"

   Ertelemszeru"en az /etc/namedb/named.conf tele van olyan
   beallitasi leheto"segekkel, amelyek meghaladjak ennek a leirasnak
   a kereteit. Ha viszont kivancsiak vagyunk a FreeBSD-ben a named
   inditasahoz hasznalt beallitasokra, akkor az /etc/defaults/rc.conf
   allomanyban nezzu:k meg named_* valtozokat es olvassuk at az
   rc.conf(5) man oldalt. Emellett meg a 11.7 Szakaszt is hasznos
   lehet elolvasni.

     --------------------------------------------------------------

  29.6.6. A konfiguracios allomanyok

   A named beallitasait tartalmazo allomanyok pillanatnyilag az
   /etc/namedb ko:nyvtarban talalhatoak es hacsak nem egy egyszeru"
   nevfeloldora tartunk igenyt, akkor a hasznalata elo"tt
   modositanunk is kell. Itt ejtju:k meg a beallitasok nagy reszet.

     --------------------------------------------------------------

    29.6.6.1. /etc/namedb/named.conf

 // $FreeBSD$
 //
 // Reszletesebb leirast a named.conf(5) es named(8) man oldalakon, valamint
 // a /usr/share/doc/bind9 ko:nyvtarban talalhatunk.
 //
 // Ha egy hitelesitett szervert akarunk beallitani, akkor igyekezzu:nk
 // a nevfeloldas o:sszes finom reszletevel pontosan tisztaban lenni.
 // Ugyanis meg a legkisebb hibakkal is egyreszt elvaghatunk gepeket az
 // internet-lereseto"l, vagy masreszt felesleges forgalmat tudunk
 // generalni
 //

 options {
         // A chroot ko:nyvtarhoz relativ eleresi ut, amennyiben letezik
         directory       "/etc/namedb";
         pid-file        "/var/run/named/pid";
         dump-file       "/var/dump/named_dump.db";
         statistics-file "/var/stats/named.stats";

 // Ha a named demont csak helyi nevfeloldokent hasznaljuk, akkor ez
 // egy biztonsagos alapbeallitas. Ha viszont a named demon az egesz
 // halozatunkat is kiszolgalja, akkor ezt a beallitast tegyu:k
 // megjegyzesbe, vagy adjunk meg egy rendes IP-cimet, esetleg
 // to:ro:lju:k ki.
         listen-on       { 127.0.0.1; };

 // Ha rendszeru:nko:n engedelyezett az IPv6 hasznalata, akkor a helyi
 // nevfeloldo hasznalatahoz ezt a sort vegyu:k ki a megjegyzesbo"l.
 // A halozatunk to:bbi reszero"l pedig ugy lehet elerni, ha itt megadunk
 // egy IPv6 cimet, vagy az "any" kulcsszot.
 //      listen-on-v6    { ::1; };

 // Az alabbi zonakat mar a lentebb talalhato u:res zonak eleve lefedik.
 // Ha tehat a lenti u:res zonakat kivesszu:k a konfiguraciobol, akkor
 // ezeket a sorokat is tegyu:k megjegyzesbe.
         disable-empty-zone "255.255.255.255.IN-ADDR.ARPA";
         disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";
         disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";

 // Ha a szolgaltatonk nevszervert is elerheto"ve tett szamunkra, akkor
 // itt adjuk meg annak az IP-cimet es engedelyezzu:k az alabbi sort.
 // Ezzel egyben kihasznaljuk a gyorsitotarat is, igy mersekelju:k az
 // internet fele mozgo nevfeloldasokat.
 /*
         forwarders {
                 127.0.0.1;
         };
 *

 // Ha a 'forwarders' resz nem u:res, akkor alapertelmezes szerint a
 // 'forward first' ertekkel rendelkezik.  Ekkor a kerest a helyi szerver
 // kapja abban az esetben, amikor a 'forwarders' reszben megadott
 // szerverek nem tudjak megvalaszolni.  Emellett a nevszerverben a
 // ko:vetkezo" sor hozzaadasaval letilthatjuk, hogy o:nmagatol ne
 // kezdemenyezzen kereseket:
 //     forward only;

 // Ha a keresek tovabbitasat az /etc/resolv.conf allomanyban megadott
 // bejegyzesek menten szeretnenk automatikusan konfiguralni, akkor vegyu:k
 // ki a megjegyzesbo"l az alabbi sort es adjuk hozza az /etc/rc.conf
 // allomanyhoz a name_auto_forward=yes sort.  Emellett hasznalhato meg a
 // named_auto_forward_only beallitas is (amely fentebb leirt funkciot
 // valositja meg).
 //     include "/etc/namedb/auto_forward.conf";

   Ahogy arrol a megjegyzesekben is szo esik, ugy tudjuk aktivalni a
   gyorsitotarat, ha megadjuk a forwarders beallitast. Normalis
   ko:ru:lmenyek ko:zo:tt a nevszerver az interneten az egyes
   nevszervereket rekurzivan fogja keresni egeszen addig, amig meg
   nem talalja a keresett valaszt. Az imenti beallitas
   engedelyezesevel azonban elo"szo:r a szolgaltato nevszerveret
   (vagy az altala kijelo:lt nevszervert) fogjuk megkerdezni, a sajat
   gyorsitotarabol. Ha a szolgaltato kerdeses nevszervere egy gyakran
   hasznalt, gyors nevszerver, akkor ezt erdemes bekapcsolnunk.

     Figyelem: Itt a 127.0.0.1 megadasa nem mu"ko:dik. Mindenkeppen
     irjuk at a szolgaltatonk nevszerverenek IP-cimere.

         /*
            A BIND legujabb valtozataiban alapertelmezes szerint minden egyes
            kimeno" keresnel mas, veletlenszeru"en valasztott UDP portot
            hasznalnak, ezaltal jelento"s mertekben cso:kkentheto" a gyorsitotar
            meghamisithatosaganak (cache poisoning) eselye.  Javasoljuk
            mindenkinek, hogy hasznaljak ki ezt a leheto"seget es eszerint
            allitsak be a tu"zfalakat.

            Ha nem sikeru:l a tu"zfalat hozzaigazitani ehhez a
            viselkedeshez AKKOR ES CSAK IS AKKOR engedelyezzu:k a lenti
            beallitast.  Alkalmazasaval sokkal kevesbe lesz ellenallo a
            nevszerver a ku:lo:nbo:zo" hamisitasi kiserletekkel szemben,
            ezert leheto"seg szerint keru:lju:k el.

            Az NNNNN helyere egy 49160 es 65530 ko:zti szamot kell
            beirnunk.
          */
          // query-source address * port NNNNN;
 };

 // Ha engedelyezzu:k a helyi nevszervert, akkor az /etc/resolv.conf
 // allomanyban elso" helyen megadni a 127.0.0.1 cimet. So"t, az
 // /etc/rc.conf allomanybol se felejtsu:k ki.

 // A hagyomanyos "root-hints" megoldas.  Hasznaljuk ezt VAGY a lentebb
 // megadott alarendelt zonakat.
 zone "." { type hint; file "named.root"; };

 /*      To:bb szempontbol is elo"nyo:s, ha a ko:vetkezo" zonakat alarendelju:k a
         gyo:ker nevfeloldo szervereknek:
         1. A helyi felhasznalok kereseit gyorsabban tudjuk feloldalni.
         2. A gyo:kerszerverek fele nem megy semmilyen hamis forgalom.
         3. A gyo:kerszerverek meghibasodasa vagy elosztott DoS tamadas
            eseten rugalmasabban tudunk reagalni.

         Masfelo:l azonban ez a modszer a "hints" allomany alkalmazasaval
         szemben to:bb felu:gyeletet igenyel, mivel figyelnu:nk kell, nehogy
         egy varatlan meghibasodas mu"ko:deskeptelenne tegye a
         szerveru:nket.  Ez a megoldas leginkabb a sok klienst kiszolgalo
         nevszerverek eseten bizonyulhat jo:vedelmezo"bbnek.  Ovatosan
         banjunk vele!

         A modszer alkalmazasahoz vegyu:k ki a megjegyzesbo"l a ko:vetkezo"
         bejegyzeseket es tegyu:k megjegyzesbe a fenti hint zonat.
 */

 zone "." {
         type slave;
         file "slave/root.slave";
         masters {
                 192.5.5.241;    // F.ROOT-SERVERS.NET.
         };
         notify no;
 };

 zone "arpa" {
         type slave;
         file "slave/arpa.slave";
         masters {
                 192.5.5.241;    // F.ROOT-SERVERS.NET.
         };
         notify no;
 }

 zone "in-addr.arpa" {
         type slave;
         file "slave/in-addr.arpa.slave";
         masters {
                 192.5.5.241;    // F.ROOT-SERVERS.NET.
         };
         notify no;
 };
 */

 /*      Az alabbi zonak helyi kiszolgalasaval meg tudjuk akadalyozni, hogy
         a belo"lu:k inditott keresek elhagyjak a halozatunkat es a elerju:k
         a gyo:ker nevfeloldo szervereket.  Ez a megko:zelites ket komoly
         elo"nnyel rendelkezik:
         1. A helyi felhasznalok kereseit gyorsabban tudjuk
            megvalaszolni.
         2. A gyo:kerszerverek fele nem tovabbitodik semmilyen hamis
            forgalom.
 */
 // RFC 1912
 zone "localhost"        { type master; file "master/localhost-forward.db"; };
 zone "127.in-addr.arpa" { type master; file "master/localhost-reverse.db"; };
 zone "255.in-addr.arpa" { type master; file "master/empty.db"; };

 // A helyi IPv6 cimek reszere letrehozott RFC 1912-szeru" zona
 zone "0.ip6.arpa"       { type master; file "master/localhost-reverse.db"; };

 // "Ez" a halozat (RFC 1912 es 3330)
 zone "0.in-addr.arpa"           { type master; file "master/empty.db"; };

 // Magancelu halozatok (RFC 1918)
 zone "10.in-addr.arpa"          { type master; file "master/empty.db"; };
 zone "16.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "17.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "18.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "19.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "20.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "21.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "22.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "23.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "24.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "25.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "26.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "27.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "28.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "29.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "30.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "31.172.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "168.192.in-addr.arpa"     { type master; file "master/empty.db"; };

 // Helyi link/APIPA (RFC 3330 es 3927)
 zone "254.169.in-addr.arpa"     { type master; file "master/empty.db"; };

 // Dokumentacios probahalozat (RFC 3330)
 zone "2.0.192.in-addr.arpa"     { type master; file "master/empty.db"; };

 // Utvalasztasi teljesitmeny tesztelesere (RFC 3330)
 zone "18.198.in-addr.arpa"      { type master; file "master/empty.db"; };
 zone "19.198.in-addr.arpa"      { type master; file "master/empty.db"; };

 // Az IANA reszere fentartott - a regi E osztalyu cimter
 zone "240.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "241.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "242.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "243.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "244.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "245.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "246.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "247.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "248.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "249.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "250.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "251.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "252.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "253.in-addr.arpa"         { type master; file "master/empty.db"; };
 zone "254.in-addr.arpa"         { type master; file "master/empty.db"; };

 // Hozzarendeles nelku:li IPv6-cimek (RFC 4291)
 zone "1.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "3.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "4.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "5.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "6.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "7.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "8.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "9.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "a.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "b.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "c.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "d.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "e.ip6.arpa"               { type master; file "master/empty.db"; };
 zone "0.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "1.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "2.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "3.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "4.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "5.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "6.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "7.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "8.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "9.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "a.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "b.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "0.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "1.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "2.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "3.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "4.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "5.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "6.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "7.e.f.ip6.arpa"           { type master; file "master/empty.db"; };

 // IPv6 ULA (RFC 4193)
 zone "c.f.ip6.arpa"             { type master; file "master/empty.db"; };
 zone "d.f.ip6.arpa"             { type master; file "master/empty.db"; };

 // IPv6 helyi link (RFC 4291)
 zone "8.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "9.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "a.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "b.e.f.ip6.arpa"           { type master; file "master/empty.db"; };

 // Elavult IPv6 helyi cimek (RFC 3879)
 zone "c.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "d.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "e.e.f.ip6.arpa"           { type master; file "master/empty.db"; };
 zone "f.e.f.ip6.arpa"           { type master; file "master/empty.db"; };

 // Az IP6.INT mar elavult (RFC 4159)
 zone "ip6.int"                  { type master; file "master/empty.db"; };

 // FONTOS: Ne hasznaljuk ezeket az IP-cimeket, mert nem valodiak,
 // csupan illusztracios es dokumentacios celokbol adtuk meg!
 //
 // Az alarendelt zonak beallitasaira vonatkozo bejegyzesek. Erdemes
 // ilyet beallitani legalabb ahhoz a zonahoz, amelyhez a tartomanyunk is
 // tartozik. Az elso"dleges nevszerverhez tartozo IP-cimet erdeklo"dju:k meg
 // az illetekes halozati rendszergazdatol.
 //
 // Soha ne felejtsu:nk el megadni zonat az inverz kereseshez!  A neve az IP-cim
 // tagjainak forditott sorrendjebo"l // szarmazik, amelyhez hozzatoldunk meg egy
 // ".IN-ADDR.ARPA" (illetve IPv6 eseten ".IP6.ARPA") reszt.
 //
 // Mielo"tt nekilatnank egy elso"dleges zona beallitasanak, gondoljuk
 // vegig, hogy tenyleg a megfelelo" szinten ismerju:k a nevfeloldas es
 // a BIND mu"ko:deset. Gyakran ugyanis egyaltalan nem nyilvanvalo
 // csapdakba tudunk esni.  Egy alarendelt zona beallitasa altalaban sokkal egyszeru"bb feladat.
 //
 // FONTOS: Ne ko:vessu:k vakon a most ko:vetkezo" peldat :-) Helyette inkabb
 // valodi neveket es cimeket adjunk meg.

 /* Pelda dinamikus zonara
 key "mintaorgkulcs" {
         algorithm hmac-md5;
         secret "sf87HJqjkqh8ac87a02lla==";
 };
 zone "minta.org" {
         type master;
         allow-update {
                 key "mintaorgkulcs";
         };
         file "dynamic/minta.org";
 };
 */

 /* Pelda inverz alarendelt zonakra
 zone "1.168.192.in-addr.arpa" {
         type slave;
         file "slave/1.168.192.in-addr.arpa";
         masters {
                 192.168.1.1;
         };
 };
 */

   A named.conf allomanyban tehat igy adhatunk meg ko:zvetlen es
   inverz alarendelt zonakat.

   Minden egyes ujabb kiszolgalt zonahoz az egy uj bejegyzest kell
   felvenni a named.conf allomanyban.

   Peldaul a minta.org cimhez tartozo legegyszeru"bb ilyen bejegyzes
   igy nez ki:

 zone "minta.org" {
         type master;
         file "master/minta.org";
 };

   Ez egy ko:zponti zona, ahogy arrol a type mezo", vagyis a tipusa
   is arulkodik. Tovabba a file mezo"ben lathatjuk, hogy a
   hozzatartozo informaciokat az /etc/namedb/master/minta.org
   allomanyban tarolja.

 zone "minta.org" {
         type slave;
         file "slave/minta.org";
 };

   Az alarendelt esetben a zonahoz tartozo informaciokat a zona
   ko:zponti szervereto"l kapjuk meg es megadott allomanyban mentju:k
   el. Ha valamiert a ko:zponti szerver leall vagy nem erheto" el,
   akkor az alarendelt szerver az atku:ldo:tt zona informaciok
   alapjan kepes helyette kiszolgalni a kereseket.

     --------------------------------------------------------------

    29.6.6.2. A zona allomanyok

   A minta.org cimhez tartozo pelda ko:zponti zona allomany (amely az
   /etc/namedb/master/neven.org erheto" el) tartalma az alabbi:

 $TTL 3600        ; alapertelmezes szerint 1 ora
 minta.org.      IN      SOA      ns1.minta.org. admin.minta.org. (
                                 2006051501      ; sorozatszam
                                 10800           ; frissites
                                 3600            ; ismetles
                                 604800          ; lejarat
                                 300             ; TTL negativ valasz
                         )

 ; nevszerverek
                 IN      NS      ns1.minta.org.
                 IN      NS      ns2.minta.org.

 ; MX rekordok
                 IN      MX 10   mx.minta.org.
                 IN      MX 20   levelezes.minta.org.

                 IN      A       192.168.1.1

 ; a gepek nevei
 localhost       IN      A       127.0.0.1
 ns1             IN      A       192.168.1.2
 ns2             IN      A       192.168.1.3
 mx              IN      A       192.168.1.4
 levelezes       IN      A       192.168.1.5

 ; alnevek
 www             IN      CNAME   minta.org.

   A "."-ra vegzo"do" halozati nevek abszolut nevek, mig minden mas
   "." nelku:li nev az o"sere vezeheto" vissza (tehat relativ).
   Peldaul az ns1 nevbo"l az ns1.minta.org keletkezik.

   A zona allomanyok felepitese a ko:vetkezo":

 rekordnev      IN rekordtipus   ertek

   A nevfeloldasban leggyakrabban alkalmazott rekordok tipusai:

   SOA

           a zona fennhatosaganak kezdete

   NS

           egy hitelesitett nevszerver

   A

           egy gep cime

   CNAME

           egy alnev kanonikus neve

   MX

           levelvalto

   PTR

           mutato a tartomanynevre (az inverz feloldas hasznalja)

 minta.org. IN SOA ns1.minta.org. admin.minta.org. (
                         2006051501      ; sorozatszam
                         10800           ; 3 orankent frissitsu:nk
                         3600            ; 1 ora utan probalkozzunk ujra
                         604800          ; 1 het utan jar le
                         300 )           ; TTL negativ valasz

   minta.org.

           a tartomany neve, amely egyben a zona o"se

   ns1.minta.org.

           a zona elso"dleges/hitelesitett nevszervere

   admin.minta.org.

           a zonaert felelo"s szemely neve, akinek az e-mail cimet a
           "@" behelyettesitesevel kapjuk meg. (Tehat a
           <admin@example.org> cimbo"l admin.example.org lesz.)

   2006051501

           az allomany sorozatszama. Ezt a zona allomany
           modositasakor mindig no:velnu:nk kell. Manapsag a
           rendszergazdak a sorozatszamot eeeehhnnvv alakban adjak
           meg. A 2006051501 tehat azt jelenti, hogy az allomanyt
           2006. majus 15-en modositottak utoljara, es a 01 pedig
           arra utal, hogy aznap elo"szo:r. A sorozatszam megadasa
           fontos az alarendelt nevszerverek szamara, mivel igy
           tudjak megallapitani, hogy a zona mikor valtozott
           utoljara.

                 IN NS           ns1.minta.org.

   Ez egy NS bejegyzes. A zonahoz tartozo minden hitelesitett
   nevszervernek lennie kell legalabb egy ilyen bejegyzesenek.

 localhost       IN      A       127.0.0.1
 ns1             IN      A       192.168.1.2
 ns2             IN      A       192.168.1.3
 mx              IN      A       192.168.1.4
 levelezes       IN      A       192.168.1.5

   Az A rekord egy gep nevet adja meg. Ahogy a fenti peldabol is
   kideru:l, az ns1.minta.org nev a 192.168.1.2 cimre kepzo"dik le.

                 IN      A       192.168.1.1

   Ez a sor 192.168.1.1 cimet rendeli az aktualis o"sho:z, amely
   jelen esetu:nkben az example.org.

 www             IN CNAME        @

   A kanonikus neveket tarolo rekordokat altalaban egy gep alneveihez
   hasznaljuk. Ebben a peldaban a www a "fo"gep" egyik alneve, amely
   itt eppenseggel a minta.org (192.168.1.1) tartomanyneve. A CNAME
   rekordok melle mas tipusu rekordokat ugyanarra a halozati nevre
   soha ne adjunk meg.

                 IN MX   10      levelezes.minta.org.

   Az MX rekord adja meg, hogy milyen levelezo" szerverek felelo"sek
   a zonaba erkezo" levelek fogadasaert. A levelezes.minta.org a
   levelezo" szerver halozati neve, ahol a 10 az adott levelezo"
   szerver prioritasa.

   To:bb levelezo" szerver is megadhato 10-es, 20-as stb.
   prioritasokkal. A minta.org tartomanyon belu:l elo"szo:r mindig a
   legnagyobb MX prioritassal rendelkezo" levelezo" szervernek
   probaljuk meg tovabbitani a leveleket (a legkisebb prioritasi
   ertekkel rendelkezo" rekord), majd ezutan a masodik legnagyobbnak
   stb. egeszen addig, amig a levelet tovabb nem ku:ldtu:k.

   Az in-addr.arpa zona allomanyok (inverz DNS) eseten ugyanez a
   felepites, kiveve, hogy a PTR tipusu bejegyzesek szerepelnek az A
   es CNAME helyett.

 $TTL 3600

 1.168.192.in-addr.arpa. IN SOA ns1.minta.org. admin.minta.org. (
                         2006051501      ; sorozatszam
                         10800           ; frissites
                         3600            ; ismetles
                         604800          ; lejarat
                         300 )           ; TTL negativ valasz

         IN      NS      ns1.minta.org.
         IN      NS      ns2.minta.org.

 1       IN      PTR     minta.org.
 2       IN      PTR     ns1.minta.org.
 3       IN      PTR     ns2.minta.org.
 4       IN      PTR     mx.minta.org.
 5       IN      PTR     levelezes.minta.org.

   Ez az allomany irja le tehat a kitalalt tartomanyunkon belu:l az
   IP-cimek es halozati nevek o:sszerendeleset.

   Erdemes megemliteni, hogy a PTR rekordok jobb oldalan allo nevek
   mindegyikenek teljes halozati nevnek kell lennie (vagyis "."
   karakterrel kell vegzo"dnie).

     --------------------------------------------------------------

  29.6.7. A gyorsitotarazo nevszerver

   A gyorsitotarazo nevszerver az a nevszerver, amely elso"dleges
   feladata a rekurziv keresek kiszolgalasa. Egyszeru"en tovabbitja a
   beerkezo" kereseket, majd megjegyzi azokat, igy keso"bb
   ko:zvetlenu:l tud valaszolni.

     --------------------------------------------------------------

  29.6.8. Biztonsag

   Habar a nevfeloldas szempontjabol a BIND a legelterjedtebb, a
   biztonsagossagaval azert akadnak gondok. Gyakran talalnak benne
   potencialis es kihasznalhato biztonsagi reseket.

   A FreeBSD azonban a named demont automatikusan egy chroot(8)
   ko:rnyezetbe helyezi. Emellett meg leteznek tovabbi mas vedelmi
   mechanizmusok is, amelyek segitsegevel el tudjuk keru:lni a
   nevfeloldast celzo esetleges tamadasokat.

   Sosem art olvasgatni a CERT altal kiadott biztonsagi
   figyelmezteteseket es feliratkozni a FreeBSD security
   notifications levelezesi lista cimere, hogy folyamatosan
   ertesu:lju:nk az interneten es a FreeBSD-ben talalt ku:lo:nbo:zo"
   biztonsagi hibakrol.

     Tipp: Ha valamilyen gondunk tamadna, akkor esetleg probalkozzunk
     meg a forrasaink frissitesevel es a named ujraforditasaval.

     --------------------------------------------------------------

  29.6.9. Egyeb olvasnivalok

   A BIND/named man oldalai: rndc(8) named(8) named.conf(5)

     * Az ISC BIND hivatalos honlapja (angolul)

     * Az ISC BIND hivatalos foruma (angolul)

     * O'Reilly DNS and BIND 5th Edition

     * RFC1034 - Domain Names - Concepts and Facilities

     * RFC1035 - Domain Names - Implementation and Specification

     --------------------------------------------------------------

29.7. Az Apache webszerver

   Keszitette: Murray Stokely.

     --------------------------------------------------------------

  29.7.1. Attekintes

   A FreeBSD szolgalja ki a legforgalmasabb honlapok nagy reszet
   szerte a vilagban. A mo:go:ttu:k allo webszerverek altalaban az
   Apache webszervert alkalmazzak. Az Apache hasznalatahoz szu:kseges
   csomagok megtalalhatoak a FreeBSD telepito"lemezen is. Ha a
   FreeBSD elso" telepitesekor meg nem telepitettu:k volna az Apache
   szerveret, akkor a www/apache13 vagy www/apache12 portbol tudjuk
   feltenni.

   Az Apache szervert sikeres telepiteset ko:veto"en be kell
   allitanunk.

     Megjegyzes: Ebben a szakaszban az Apache webszerver 1.3.X
     valtozatat mutatjuk be, mivel ezt hasznaljak a legto:bben
     FreeBSD alatt. Az Apache 2.X rengeteg uj technologiat vezetett
     be, de ezekkel itt most nem foglalkozunk. Az Apache 2.X
     valtozataval kapcsolatban keressu:k fel a
     http://httpd.apache.org/ oldalt.

     --------------------------------------------------------------

  29.7.2. Beallitas

   Az Apache webszerver konfiguracios allomanya FreeBSD alatt
   /usr/local/etc/apache/httpd.conf neven talalhato. Ez az allomany
   egy szokvanyos UNIX-os szo:veges konfiguracios allomany, ahol a
   megjegyzeseket egy # karakterrel vezetju:k be. Az itt hasznalhato
   o:sszes lehetseges beallitasi leheto"seg atfogo ismertetese
   meghaladna az egesz keziko:nyv hatarait, ezert most csak a
   leggyakrabban modositott direktivakat fogjuk ismertetni.

   ServerRoot "/usr/local"

           Ez adja meg az Apache szamara az alapertelmezett
           ko:nyvtarat. A binarisai ezen belu:l a bin es sbin
           alko:nyvtarakban, a konfiguracios allomanyai pedig az
           etc/apache ko:nyvtarban tarolodnak.

   ServerAdmin sajat@cimu:nk.az.interneten

           Erre a cimre ku:ldhetik neku:nk a szerverrel kapcsolatos
           hibakat. Ez a cim egyes szerver altal generalt oldalakon
           jelenik meg, peldaul hibak eseteben.

   ServerName www.minta.com

           A ServerName segitsegevel meg tudjuk adni, hogy milyen
           nevet ku:ldjo:n vissza a szerver a klienseknek olyankor,
           ha az nem egyezne meg a jelenlegivel (vagyis a www nevet
           hasznaljuk a gepu:nk valodi neve helyett).

   DocumentRoot "/usr/local/www/data"

           A DocumentRoot adja meg azt a ko:nyvtarat, ahonnan
           kiszolgaljuk a dokumentumokat. Alapertelmezes szerint az
           o:sszes keres erre a ko:nyvtarra fog vonatkozni, de a
           szimbolikus linkek es az alnevek akar mas helyekre is
           mutathatnak.

   A valtoztatasok vegrehajtasa elo"tt mindig is jo o:tlet biztonsagi
   masolatot kesziteni az Apache konfiguracios allomanyairol. Ahogy
   sikeru:lt o:sszerakni egy szamunkra megfelelo" konfiguraciot,
   keszen is allunk az Apache futtatasara.

     --------------------------------------------------------------

  29.7.3. Az Apache futtatasa

   A to:bbi halozati szerverto"l eltero"en az Apache nem az inetd
   szuperszerverbo"l fut. A kliensekto"l erkezo" HTTP keresek minel
   gyorsabb kiszolgalasanak erdekeben ugy allitottuk be, hogy
   o:nalloan fusson. Ehhez egy szkriptet is mellekeltu:nk, amellyel
   igyekeztu:nk a leheto" legjobban leegyszeru"siteni a szerver
   inditasat, leallitasat es ujrainditasat. Az Apache elso"
   inditasahoz adjuk ki a ko:vetkezo" parancsot:

 # /usr/local/sbin/apachectl start

   Igy pedig a szervert barmikor leallithatjuk:

 # /usr/local/sbin/apachectl stop

   Ha valamilyen okbol megvaltoztattuk volna a szerver beallitasait,
   akkor ezen a modon tudjuk ujrainditani:

 # /usr/local/sbin/apachectl restart

   Ha a jelenleg megnyitott kapcsolatok felbontasa nelku:l akarjuk
   ujrainditani az Apache szervert, akkor ezt irjuk be:

 # /usr/local/sbin/apachectl graceful

   Mindezekro"l az apachectl(8) man oldalon talalunk bo"vebb leirast.

   Amennyiben szu:ksegu:nk lenne az Apache elinditasara a rendszer
   inditasakor, akkor a ko:vetkezo" sort vegyu:nk fel az /etc/rc.conf
   allomanyba:

 apache_enable="YES"

   Az Apache 2.2 eseteben:

 apache22_enable="YES"

   Amikor az Apache httpd nevu" programjanak szeretnenk tovabbi
   paranccsori parametereket atadni a rendszer inditasa soran, akkor
   ezeket igy tudjuk megadni az rc.conf allomanyban:

 apache_flags=""

   Most, miutan a webszerveru:nk mu"ko:dik, a bo:ngeszo"nkkel mindezt
   elleno"rizni is tudjuk a http://localhost/ cim beirasaval.
   Ilyenkor az alapertelmezes szerinti /usr/local/www/data/index.html
   allomany tartalmat lathatjuk.

     --------------------------------------------------------------

  29.7.4. Virtualis nevek

   Az Apache a virtualis nevek hasznalatanak ket ku:lo:nbo:zo" modjat
   ismeri. Ezek ko:zu:l az elso" modszer a nev alapu virtualizacio
   (Name-based Virtual Hosting). Ilyenkor a kliens HTTP/1.1
   fejlecebo"l probalja meg a szerver megallapitani a hivatkozasi
   nevet. Segitsegevel to:bb tartomany is osztozhat egyetlen
   IP-cimen.

   Az Apache nev alapu virtualizaciojanak beallitasahoz az alabbi
   beallitast kell hozzatennu:nk a httpd.conf allomanyhoz:

 NameVirtualHost *

   Ha a webszerveru:nk neve www.tartomany.hu, es hozza egy
   www.valamilyenmasiktartomany.hu virtualis nevet akarunk megadni,
   akkor azt a ko:vetkezo"keppen tehetju:k meg a httpd.conf
   allomanyon belu:l:

 <VirtualHost *>
 ServerName www.tartomany.hu
 DocumentRoot /www/tartomany.hu
 </VirtualHost>

 <VirtualHost *>
 ServerName www.valamilyenmasiktartomany.hu
 DocumentRoot /www/valamilyenmasiktartomany.hu
 </VirtualHost>

   A cimek es eleresi utak helyere helyettesitsu:k be a hasznalni
   kivant cimeket es eleresi utakat.

   A virtualis nevek beallitasanak tovabbi reszleteivel kapcsolatosan
   keressu:k fel az Apache hivatalos dokumentaciojat a
   http://httpd.apache.org/docs/vhosts/ cimen (angolul).

     --------------------------------------------------------------

  29.7.5. Apache-modulok

   Az alap szerver kepessegeinek kiegeszitesehez to:bb ku:lo:nbo:zo"
   Apache modul all rendelkezesu:nkre. A FreeBSD Portgyu"jtemenye az
   Apache telepitese mellett leheto"seget ad a nepszeru"bb
   bo"vitmenyeinek telepitesere is.

     --------------------------------------------------------------

    29.7.5.1. mod_ssl

   A mod_ssl modul az OpenSSL ko:nyvtar hasznalataval valosit meg
   ero"s titkositast a biztonsagos socket reteg masodik, illetve
   harmadik verziojaval (Secure Sockets Layer, SSL v2/v3) es a
   biztonsagos szallitasi retegbeli (Transport Layer Security v1)
   protokoll segitsegevel. Ez a modul mindent biztosit ahhoz, hogy a
   megfelelo" hatosagok altal alairt tanusitvanyokat tudjunk kerni,
   es ezaltal egy vedett webszervert futtassunk FreeBSD-n.

   Ha meg nem telepitettu:nk volna fel az Apache szervert, akkor a
   www/apache13-modssl porton keresztu:l a mod_ssl modullal egyu:tt
   is fel tudjuk rakni az Apache 1.3.X valtozatat. Az SSL tamogatasa
   pedig mar az Apache 2.X www/apache22 porton keresztu:l elerheto"
   valtozataiban alapertelmezes szerint engedelyezett.

     --------------------------------------------------------------

    29.7.5.2. Kapcsolodas nyelvekhez

   Mindegyik nagyobb szkriptnyelvhez letezik egy ku:lo:n
   Apache-modul, amelyek segitsegevel komplett Apache-modulokat
   tudunk kesziteni az adott nyelven. Gyakran a dinamikus honlapok is
   igy probaljak a szerverbe epitett belso" ertelmezo"n keresztu:l a
   ku:lso" ertelmezo" inditasabol es benne a szkriptek lefuttatasabol
   fakado ko:ltsegeket megsporolni, ahogy erro"l a ko:vetkezo"
   szakaszokban olvashatunk.

     --------------------------------------------------------------

  29.7.6. Dinamikus honlapok

   Az utobbi evtizedben egyre to:bb vallalkozas fordult az internet
   fele beveteleik es reszesedeseinek no:velesenek remenyeben, amivel
   egyre jobban megno"tt az igeny a dinamikus honlapokra is.
   Miko:zben bizonyos cegek, mint peldaul a Microsoft, a sajat
   fejlesztesu" termekeikbe epitettek be ehhez tamogatast, addig a
   nyilt forrasokkal foglalkozo ko:zo:sseg sem maradt tetlen es
   felvette a kesztyu"t. A dinamikus tartalom letrehozasahoz to:bbek
   ko:zt Django, Ruby on Rails, a mod_perl es a mod_php modulok
   hasznalhatoak.

     --------------------------------------------------------------

    29.7.6.1. Django

   A Django egy BSD tipusu licensszel rendelkezo" keretrendszer,
   amelynek hasznalataval nagy teljesitmenyu" es elegans webes
   alkalmazasokat tudunk gyorsan kifejleszteni. Tartalmaz egy
   objektum-relacios lekepezo"t, igy az adattipusokat
   Python-objektumokkent tudjuk leirni, es ezekhez az objektumokhoz
   egy sokretu", dinamikus adatbazis hozzaferest nyujto
   alkalmazasfejleszto"i felu:letet, igy a fejleszto"knek egyetlen
   SQL utasitast sem kell megirniuk. Talalhatunk meg benne tovabba
   egy bo"vitheto" sablonrendszert, amelynek ko:szo:nheto"en az
   alkalmazas belso" mu"ko:dese elvalaszthato a HTML-beli
   megjeleneseto"l.

   A Django mu"ko:desehez a mod_python modulra, az Apache szerverre
   es egy tetszo"legesen valasztott SQL alapu adatbazisrendszerre van
   szu:kseg. A hozzatartozo FreeBSD port mindezeket automatikusan
   telepiti a megadott beallitasok szerint.

   Pelda 29-3. A Django telepitese az Apache, mod_python3 es a
   PostgreSQL hasznalataval

 # cd /usr/ports/www/py-django; make all install clean -DWITH_MOD_PYTHON3 -DWITH_POSTGRESQL

   Miutan a Django es a hozza szu:kseges komponensek felkeru:ltek
   rendszeru:nkre, hozzunk letre egy ko:nyvtarat a leendo" Django
   projektu:nknek es allitsuk be az Apache szervert, hogy az oldalunk
   belu:l a megadott linkekre a sajat alkalmazasunkat hivja meg a
   beagyazott Python-ertelmezo"n keresztu:l.

   Pelda 29-4. Az Apache beallitasa a Django es mod_python
   hasznalatahoz

   A ko:vetkezo" sort kell hozzatennu:nk a httpd.conf allomanyhoz,
   hogy az Apache bizonyos linkeket a webes alkalmazas fele
   iranyitson at:

 <Location "/">
     SetHandler python-program
     PythonPath "['/a/django/csomagok/helye/'] + sys.path"
     PythonHandler django.core.handlers.modpython
     SetEnv DJANGO_SETTINGS_MODULE azoldalam.beallitasai
     PythonAutoReload On
     PythonDebug On
 </Location>

     --------------------------------------------------------------

    29.7.6.2. Ruby on Rails

   A Ruby on Rails egy olyan masik nyilt forraskodu keretrendszer,
   amivel lenyegeben egy teljes fejleszto"i keszletet kapunk es
   amelyet kifejezetten arra eleztek ki, hogy segitsegevel a
   webfejleszto"k sokkal gyorsabban tudjanak haladni es a komolyabb
   alkalmazasok gyorsabb elkeszitese se okozzon nekik gondot. A
   Portrgyu"jtemenybo"l pillanatok alatt telepitheto".

 # cd /usr/ports/www/rubygem-rails; make all install clean

     --------------------------------------------------------------

    29.7.6.3. mod_perl

   Az Apache es Perl egyesitesen faradozo projekt a Perl programozasi
   nyelv es az Apache webszerver erejenek o:sszehangolasan dolgozik.
   A mod_perl modulon keresztu:l Perlben vagyunk kepesek modulokat
   kesziteni az Apache szerverhez. Raadasul a szerverben egy belso"
   allando ertelmezo" is talalhato hozza, ezzel igyekeznek
   megsporolni a ku:lso" ertelmezo" es a Perl inditasabol keletkezo"
   to:bbletko:ltsegeket.

   A mod_perl to:bb ku:lo:nbo:zo" modon allithato munkaba. A mod_perl
   hasznalatahoz nem szabad elfelejtenu:nk, hogy a mod_perl 1.0-as
   verzioja csak az Apache 1.3 valtozataval mu"ko:dik, es a mod_perl
   2.0-as valtozata pedig csak az Apache 2.X valtozataival. A
   mod_perl 1.0 a www/mod_perl portbol telepitheto", valamint a
   statikusan beepitett valtozata a www/apache13-modperl portban
   talalhato. A mod_perl 2.0 a www/mod_perl2 portbol rakhato fel.

     --------------------------------------------------------------

    29.7.6.4. mod_php

   Irta: Tom Rhodes.

   A PHP, vagy masik neven "PHP, a hipertext feldolgozo" egy
   altalanos celu szkriptnyelv, amelyet kifejezetten honlapok
   fejlesztesehez hoztak letre. A szabvanyos HTML agyazhato nyelv
   felepiteseben a C, Java es Perl nyelveket o:tvo:zi annak elerese
   erdekeben, hogy ezzel segitse a fejleszto"ket a dinamikusan
   generalt oldalak minel gyorsabb megirasaban.

   A PHP5 tamogatasat ugy tudjuk hozzaadni az Apache webszerverhez,
   ha telepitju:k a lang/php5 portot.

   Ha a lang/php5 portot most telepitju:k elo"szo:r, akkor a vele
   kapcsolatos beallitasokat tartalmazo OPTIONS menu: automatikusan
   megjelenik. Ha ezzel nem talalkoznank, mert peldaul valamikor
   korabban mar felraktuk volna a lang/php5 portot, akkor a port
   ko:nyvtaraban ko:vetkezo" parancs kiadasaval tudjuk ujra
   visszahozni:

 # make config

   A beallitasok ko:zo:tt jelo:lju:k be az APACHE opciot, amelynek
   eredmenyekeppen letrejo:n az Apache webszerverhez hasznalhato
   mod_php5 beto:ltheto" modul.

     Megjegyzes: A PHP4 modult meg ma is rengeteg szerver hasznalja
     to:bb ku:lo:nbo:zo" okbol (peldaul kompatibilitasi problemak
     vagy a mar korabban kiadott tartalom miatt). Ha tehat a mod_php5
     helyett inkabb a mod_php4 modulra lenne szu:ksegu:nk, akkor a
     lang/php4 portot hasznaljuk. A lang/php4 portnal is
     megtalalhatjuk a lang/php5 forditasi ideju" beallitasainak nagy
     reszet.

   Az imentiek reven telepu:lnek es beallitodnak a dinamikus PHP
   alkalmazasok tamogatasahoz szu:kseges mouldok. Az
   /usr/local/etc/apache/httpd.conf allomanyban elleno"rizni is
   tudjuk, hogy az alabbi reszek megjelentek-e:

 LoadModule php5_module        libexec/apache/libphp5.so

 AddModule mod_php5.c
     <IfModule mod_php5.c>
         DirectoryIndex index.php index.html
     </IfModule>
     <IfModule mod_php5.c>
         AddType application/x-httpd-php .php
         AddType application/x-httpd-php-source .phps
     </IfModule>

   Ahogy befejezo"do:tt a mu"velet, a PHP modul beto:ltesehez
   mindo:sszesen az apachectl paranccsal kell ovatosan ujrainditanunk
   a webszervert:

 # apachectl graceful

   A PHP jo:vo"beni frissiteseihez mar nem lesz szu:ksegu:nk a make
   config parancsra, mivel a korabban kivalasztott OPTIONS menu:n
   belu:li beallitasainkat a FreeBSD Portgyu"jtemenyehez tartozo
   keretrendszer automatikusan elmenti.

   A PHP FreeBSD-ben megtalalhato tamogatasa kifejezetten modularis,
   ezert az alap telepitese igencsak korlatozott. A tovabbi elemek
   hozzaadasahoz a lang/php5-extensions portot tudjuk hasznalni. A
   port egy menu:vezerelt felu:letet nyujt a PHP ku:lo:nbo:zo"
   bo"vitmenyeinek telepitesehez. Az egyes bo"vitmenyeket azonban a
   megfelelo" portok hasznalataval is fel tudjuk rakni.

   Peldaul PHP5 modulhoz ugy tudunk tamogatast adni a MySQL adatbazis
   szerverhez, ha feltelepitju:k a databases/php5-mysql portot.

   Miutan telepitettu:nk egy bo"vitmenyt, az Apache szerverrel ujra
   be kell to:ltetnu:nk a megvaltozott beallitasokat:

 # apachectl graceful

     --------------------------------------------------------------

29.8. Allomanyok atvitele (FTP)

   Keszitette: Murray Stokely.

     --------------------------------------------------------------

  29.8.1. Attekintes

   Az adatallomany atviteli protokoll (File Transfer Protocol, FTP) a
   felhasznalok szamara leheto"seget ad az un. FTP szerverekre
   allomanyokat felto:lteni, illetve onnan allomanyokat leto:lteni. A
   FreeBSD alaprendszere is tartalmaz egy ilyen FTP szerverprogramot,
   ftpd neven. Ezert FreeBSD alatt egy FTP szerver beallitasa
   megleheto"sen egyszeru".

     --------------------------------------------------------------

  29.8.2. Beallitas

   A beallitas legfontosabb lepese, hogy eldo:ntsu:k milyen
   hozzafereseken at lehet elerni az FTP szervert. Egy hetko:znapi
   FreeBSD rendszerben rengeteg hozzaferes a ku:lo:nbo:zo" demonokhoz
   tartozik, de az ismeretlen felhasznalok szamara nem kellene
   megengednu:nk ezek hasznalatat. Az /etc/ftpusers allomanyban
   szerepelnek azok a felhasznalok, akik semmilyen modon nem erhetik
   el az FTP szolgaltatast. Alapertelmezes szerint itt talalhatjuk az
   elo"bb emlitett rendszerszintu" hozzafereseket is, de ide minden
   tovabbi nelku:l felvehetju:k azokat a felhasznalokat, akiknel nem
   akarjuk engedni az FTP elereset.

   Mas esetekben elo"fordulhat, hogy csak korlatozni akarjuk egyes
   felhasznalok FTP elereset. Ezt az /etc/ftpchroot allomanyon
   keresztu:l tehetju:k meg. Ebben az allomanyban a lekorlatozni
   kivant felhasznalokat es csoportokat irhatjuk bele. Az
   ftpchroot(5) man oldalan olvashatjuk el ennek reszleteit, ezert
   ennek pontos reszleteit itt most nem targyaljuk.

   Ha az FTP szerveru:nkho:z nevtelen (anonim) hozzaferest is
   engedelyezni akarunk, akkor ahhoz elo"szo:r keszitenu:nk kell egy
   ftp nevu" felhasznalot a FreeBSD rendszeru:nkben. A felhasznalok
   ezutan az ftp vagy anonymous nevek, valamint egy tetszo"leges
   jelszo (ez a hagyomanyok szerint a felhasznalo e-mail cime)
   hasznalataval is kepesek lesznek bejelentkezni. Az FTP szerver
   ezutan a nevtelen felhasznalok eseteben meghivja a chroot(2)
   rendszerhivast, es ezzel lekorlatozza hozzaferesu:ket az ftp
   felhasznalo ko:nyvtarara.

   Ket szo:veges allomanyban adhatunk meg a becsatlakozo FTP kliensek
   szamara u:dvo:zlo" u:zeneteket. Az /etc/ftpwelcome allomany
   tartalmat meg a bejelentkezes elo"tt latni fogjak a felhasznalok,
   a sikeres bejelentkezest ko:veto"en pedig az /etc/ftpmotd allomany
   tartalmat latjak. Vigyazzunk, mert ennek az allomanynak mar a
   bejelentkezesi ko:rnyezethez kepest relativ az elerese, ezert a
   nevtelen felhasznalok eseteben ez konkretan az ~ftp/etc/ftpmotd
   allomany lesz.

   Ahogy beallitottuk az FTP szervert, az /etc/inetd.conf allomanyban
   is engedelyeznu:nk kell. Itt mindo:ssze annyira lesz szu:ksegu:nk,
   hogy eltavolitsuk a megjegyzest jelzo" "#" karaktert a mar
   meglevo" ftpd sor elo"l:

 ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l

   Ahogy arrol mar a 29-1 Pelda szot ejtett, az inetd beallitasait
   ujra be kell olvastatnunk a konfiguracios allomany megvaltoztatasa
   utan. A 29.2.2 Szakasz irja le az inetd engedelyezesenek
   reszleteit.

   Az ftpd o:nallo szerverkent is elindithato. Ehhez mindo:ssze
   elegendo" csak a megfelelo" valtozot beallitani az /etc/rc.conf
   allomanyban:

 ftpd_enable="YES"

   Miutan megadtuk az imenti valtozot, a szerver el fog indulni a
   rendszer ko:vetkezo" inditasa soran. Szu:kseg eseten termeszetesen
   root felhasznalokent a ko:vetkezo" paranccsal is ko:zvetlenu:l
   elindithato:

 # /etc/rc.d/ftpd start

   Most mar be is tudunk jelentkezni az FTP szerverre:

 % ftp localhost

     --------------------------------------------------------------

  29.8.3. Karbantartas

   Az ftpd demon a syslog(3) hasznalataval naplozza az u:zeneteket.
   Alapertelmezes szerint a rendszernaplozo demon az FTP mu"ko:desere
   vonatkozo u:zeneteket az /var/log/xferlog allomanyba irja. Az FTP
   naploinak helyet az /etc/syslog.conf allomanyban tudjuk
   modositani:

 ftp.info      /var/log/xferlog

   Legyu:nk ko:ru:ltekinto"ek a nevtelen FTP szerverek
   u:zemeltetesekor. Azt pedig ketszer is gondoljuk meg, hogy
   engedelyezzu:k-e a nevtelen felhasznalok szamara allomanyok
   felto:lteset, hiszen ko:nnyen azon kaphatjuk magunkat, hogy az FTP
   oldalunk illegalis allomanycserek szintereve valik vagy esetleg
   valami sokkal rosszabb to:rtenik. Ha mindenkeppen szu:ksegu:nk
   lenne erre a leheto"segre, akkor allitsunk be olyan engedelyeket a
   felto:lto:tt allomanyokra, hogy a to:bbi nevtelen felhasznalo
   ezeket a tartalmuk tu:zetes elleno"rzeseig ne is olvashassa.

     --------------------------------------------------------------

29.9. Allomany- es nyomtatasi szolgaltatasok Microsoft Windows kliensek
szamara (Samba)

   Keszitette: Murray Stokely.

     --------------------------------------------------------------

  29.9.1. Attekintes

   A Samba egy olyan elterjedt nyilt forraskodu szoftver, ami
   Microsoft Windows kliensek szamara tesz leheto"ve allomany- es
   nyomtatasi szolgaltatasokat. Az ilyen kliensek altala helyi
   meghajtokent kepesek elerni a FreeBSD allomanyrendszeret, vagy
   helyi nyomtatokent a FreeBSD altalt kezelt nyomtatokat.

   A Samba csomagja altalaban megtalalhato a FreeBSD
   telepito"eszko:zen. Ha a FreeBSD-vel egyu:tt nem raktuk fel a
   Samba csomagjat, akkor ezt keso"bb net/samba3 port vagy csomag
   telepitesevel potolhatjuk.

     --------------------------------------------------------------

  29.9.2. Beallitas

   A Samba konfiguracios allomanya a telepites utan
   /usr/local/share/examples/samba/smb.conf.default neven talalhato
   meg. Ezt kell lemasolnunk /usr/local/etc/smb.conf neven, amelyet
   aztan a Samba tenyleges hasznalata elo"tt modositanunk kell.

   Az smb.conf allomany a Samba futasahoz hasznalt beallitasokat
   tartalmazza, mint peldaul Windows kliensek szamara felkinalt a
   nyomtatok es "megosztasok" adatait. A Samba csomagban ezen kivu:l
   talalhatunk meg egy swat nevu" webes eszko:zt, amellyel egyszeru"
   modon tudjuk az smb.conf allomanyt allitgatni.

     --------------------------------------------------------------

    29.9.2.1. A Samba webes adminisztracios eszko:ze (SWAT)

   A Samba webes adminisztracios segedeszko:ze (Samba Web
   Administration Tool, SWAT) az inetd demonon keresztu:l fut
   demonkent. Ennek megfelelo"n az /etc/inetd.conf allomanyban a
   ko:vetkezo" sort kell kivennu:nk megjegyzesbo"l, mielo"tt a swat
   segitsegevel megkezdenenk a Samba beallitasat:

 swat   stream  tcp     nowait/400      root    /usr/local/sbin/swat    swat

   Ahogy azt a 29-1 Pelda is mutatja, az inetd demont ujra kell
   inditanunk a megvaltozott konfiguracios allomanyanak ujboli
   beolvasasahoz.

   Miutan az inetd.conf allomanyban a swat engedelyezesre keru:lt, a
   bo:ngeszo"nk segitsegevel probaljunk meg a http://localhost:901
   cimre csatlakozni. Elo"szo:r a rendszer root hozzaferesevel kell
   bejelentkeznu:nk.

   Miutan sikeresen bejelentkeztu:nk a Samba beallitasait targyalo
   lapra, el tudjuk olvasni a rendszer dokumentaciojat, vagy a
   Globals fu:lre kattintva nekilathatunk a beallitasok elvegzesenek.
   A Globals reszben talalhato opciok az /usr/local/etc/smb.conf
   allomany [global] szekciojaban talalhato valtozokat tu:kro:zik.

     --------------------------------------------------------------

    29.9.2.2. Altalanos beallitasok

   Akar a swat eszko:zzel, akar a /usr/local/etc/smb.conf ko:zvetlen
   modositasaval dolgozunk, a Samba beallitasa soran a
   ko:vetkezo"kkel mindenkeppen o:ssze fogunk futni:

   workgroup

           A szervert elerni kivano szamitogepek altal hasznalt NT
           tartomany vagy munkacsoport neve.

   netbios name

           A Samba szerver NetBIOS neve. Alapertelmezes szerint ez a
           nev a gep halozati nevenek elso" tagja.

   server string

           Ez a szo:veg jelenik meg akkor, ha peldaul a net view
           paranccsal vagy valamilyen mas halozati segedprogrammal
           kerdezzu:k le a szerver beszedesebb leirasat.

     --------------------------------------------------------------

    29.9.2.3. Biztonsagi beallitasok

   A /usr/local/etc/smb.conf allomanyban a ket legfontosabb beallitas
   a valasztott biztonsagi modell es a kliensek felhasznaloi
   jelszavainak tarolasahoz hasznalt formatum. Az alabbi direktivak
   vezerlik ezeket:

   security

           Itt a ket leggyakoribb beallitas a security = share es a
           security = user. Ha a kliensek a FreeBSD gepen talalhato
           felhasznaloi neveiket hasznaljak, akkor felhasznaloi
           szintu" vedelemre van szu:ksegu:nk (tehat a user
           beallitasra). Ez az alapertelmezett biztonsagi hazirend es
           ilyenkor a klienseknek elo"szo:r be kell jelentkezniu:k a
           megosztott ero"forrasok eleresehez.

           A megosztas (share) szintu" vedelem eseteben, a
           klienseknek nem kell a szerveren ervenyes felhasznaloi
           nevvel es jelszoval rendelkezniu:k a megosztott
           ero"forrasok eleresehez. Ez volt az alapbeallitas a Samba
           korabbi valtozataiban.

   passdb backend

           A Samba szamos ku:lo:nbo:zo" hitelesitesi modellt ismer. A
           klienseket LDAP, NIS+, SQL adatbazis vagy esetleg egy
           modositott jelszo allomannyal is tudjuk hitelesiteni. Az
           alapertelmezett hitelesitesi modszer a smbpasswd, igy itt
           most ezzel foglalkozunk.

   Ha feltesszu:k, hogy az alapertelmezett smbpasswd formatumot
   valasztottuk, akkor a Samba ugy fogja tudni hitelesiteni a
   klienseket, ha elo"tte letrehozzuk a /usr/local/private/smbpasswd
   allomanyt. Ha a Windows-os kliensekkel is el akarjuk erni a
   UNIX-os felhasznaloi hozzafereseinket, akkor hasznaljuk a
   ko:vetkezo" parancsot:

 # smbpasswd -a felhasznalonev

     Megjegyzes: A Samba a 3.0.23c verziojatol kezdo"do"en a
     hitelesiteshez szu:kseges allomanyokat a /usr/local/etc/samba
     ko:nyvtarban tarolja. A felhasznaloi hozzaferesek hozzaadasara
     innento"l mar a tdbsam parancs hasznalata javasolt:

 # pdbedit -a -u felhasznalonev

   A hivatalos Samba HOGYAN ezekro"l a beallitasokrol szolgal tovabbi
   informaciokkal (angolul). Viszont az itt vazolt alapok viszont mar
   elegendo"ek a Samba elinditasahoz.

     --------------------------------------------------------------

  29.9.3. A Samba elinditasa

   A net/samba3 port a Samba iranyitasara egy uj indito szkriptet
   tartalmaz. A szkript engedelyezesehez, tehat altala a Samba
   elinditasanak, leallitasanak es ujrainditasanak leheto"ve
   tetelehez vegyu:k fel a ko:vetkezo" sort az /etc/rc.conf
   allomanyba:

 samba_enable="YES"

   Ha meg finomabb iranyitasra vagyunk:

 nmbd_enable="YES"

 smbd_enable="YES"

     Megjegyzes: Ezzel egyben a rendszer inditasakor automatikusan be
     is inditjuk a Samba szolgaltatast.

   A Samba a ko:vetkezo"kkel barmikor elindithato:

 # /usr/local/etc/rc.d/samba start
 Starting SAMBA: removing stale tdbs :
 Starting nmbd.
 Starting smbd.

   Az rc szkriptekkel kapcsolatban a 11.7 Szakaszt ajanljuk
   elolvasasra.

   A Samba jelen pillanatban harom ku:lo:nallo demonbol all.
   Lathatjuk is, hogy az nmbd es smbd demonokat elinditotta a samba
   szkript. Ha az smb.conf allomanyban engedelyeztu:k a winbind
   nevfeloldasi szolgaltatast is, akkor lathatjuk, hogy ilyenkor a
   winbindd demon is elindul.

   A Samba igy allithato le akarmikor:

 # /usr/local/etc/rc.d/samba stop

   A Samba egy o:sszetett szoftvercsomag, amely a Microsoft Windows
   halozatokkal kapcsolatos szeles ko:ru" egyu:ttmu"ko:dest tesz
   leheto"ve. Az altala felkinalt alapveto" leheto"segeken tul a
   to:bbit a http://www.samba.org honlapon ismerhetju:k meg
   (angolul).

     --------------------------------------------------------------

29.10. Az orak egyeztetese az NTP hasznalataval

   Keszitette: Tom Hukins.

     --------------------------------------------------------------

  29.10.1. Attekintes

   Ido"vel a szamitogep oraja hajlamos elmaszni. A halozati ido"
   protokoll (Network Time Protocol, NTP) az egyik modja az orank
   pontosan tartasanak.

   Rengeteg internetes szolgaltatas elvarja vagy eppen elo"nyben
   reszesiti a szamitogep orajanak pontossagat. Peldaul egy
   webszerverto"l megkerdezhetik, hogy egy allomanyt adott ideje
   modositottak-e. A helyi halozatban az egyazon allomanyszerveren
   megosztott allomanyok ellentmondasmentes datumozasa erdekeben
   szinte elengedhetetlen az orak szinkronizalasa. Az olyan
   szolgaltatasok, mint a cron(8) is komolyan epitkeznek a pontosan
   jaro rendszerorara, amikor egy adott pillanatban kell lefuttatniuk
   parancsokat.

   A FreeBSD alapbol az ntpd(8) NTP szervert tartalmazza, amellyel
   mas NTP szerverek segitsegevel tudjuk beallitani gepu:nk orajat,
   vagy eppen ido"vel kapcsolatos informaciokat szolgaltatni
   masoknak.

     --------------------------------------------------------------

  29.10.2. A megfelelo" NTP szerverek kivalasztasa

   Az orank egyeztetesehez egy vagy to:bb NTP szerverre lesz
   szu:ksegu:nk. Elo"fordulhat, hogy a halozati rendszergazdank vagy
   az internet-szolgaltatonk mar beallitott egy ilyen szervert erre a
   celra. Ezzel kapcsolatban olvassuk el a megfelelo" leirasokat. A
   nyilvanosan elerheto" NTP szerverekro"l keszu:lt egy lista,
   ahonnan ko:nnyeden ki tudjuk keresni a szamunkra leginkabb
   megfelelo" (hozzank legko:zelebbi) szervert. Ne hagyjuk figyelmen
   kivu:l a szerverre vonatkozo hazirendet es kerju:nk engedelyt a
   hasznalatahoz, amennyiben ez szu:kseges.

   To:bb, egymassal ko:zvetlen kapcsolatban nem allo NTP szerver
   valasztasaval jarunk jol, ha netalan az egyiku:k varatlanul
   elerhetetlenne vagy az oraja pontatlanna valna. Az ntpd(8) a
   visszakapott valaszokat intelligensen hasznalja fel, mivel
   esetu:kben a megbizhato szervereket reszesiti elo"nyben.

     --------------------------------------------------------------

  29.10.3. A gepu:nk beallitasa

     --------------------------------------------------------------

    29.10.3.1. Alapveto" beallitasok

   Ha a szamitogepu:nk inditasakor akarjuk egyeztetni az orankat,
   akkor erre az ntpdate(8) nevu" programot hasznalhatjuk. Ez olyan
   asztali gepek szamara megfelelo" valasztas, amelyeket gyakran
   inditanak ujra es csak ido"nkent kell szinkronizalnunk. A legto:bb
   gepnek viszont az ntpd(8) hasznalatara van szu:ksege.

   Az ntpdate(8) elinditasa olyan esetekben is hasznos, ahol az
   ntpd(8) is fut. Az ntpd(8) az orat fokozatosan allitja, ellenben
   az ntpdate(8) az elteres merteketo"l es iranyatol fu:ggetlenu:l
   egyszeru"en atallitja a gep orajat a pontos ido"re.

   Az ntpdate(8) elinditasat ugy tudjuk engedelyezni a rendszer
   inditasakor, ha az /etc/rc.conf allomanyba berakjuk az
   ntpdate_enable="YES" sort. Emellett meg ntpdate_flags valtozoban
   meg kell adnunk az alkalmazott beallitasok mellett azokat a
   szervereket, amelyekkel szinkronizalni akarunk.

     --------------------------------------------------------------

    29.10.3.2. Altalanos beallitasok

   Az NTP az /etc/ntp.conf allomanyon keresztu:l allithato, amelyek
   felepiteset az ntp.conf(5) man oldal targyalja. Ime erre egy
   egyszeru" pelda:

 server ntplocal.minta.com prefer
 server timeserver.minta.org
 server ntp2a.minta.net

 driftfile /var/db/ntp.drift

   A server beallitas adja meg az egyezteteshez hasznalt szervereket,
   soronkent egyet. Ha egy szerver mellett szerepel meg a prefer
   parameter is, ahogy azt a peldaban a ntplocal.minta.com mellett
   lathattuk, akkor a to:bbivel szemben azt a szervert fogjuk
   elo"nyben reszesiteni. Az igy kiemelt szerverto"l erkezo" valaszt
   abban az esetben viszont eldobjuk, hogy a to:bbi szerverto"l
   kapott valasz jelento"s mertekben elter to"le. Minden mas esetben
   a o" valasza lesz a mervado. A prefer parametert altalaban olyan
   NTP szerverekhez hasznaljak, amelyek ko:zismerten nagy
   pontossaguak, tehat peldaul ku:lo:n erre a celra szant
   felu:gyeleti eszko:zt is tartalmaznak.

   A driftfile beallitassal azt az allomanyt adjuk meg, amiben a
   rendszerora frekvencia eltolodasait taroljuk. Az ntpd(8) program
   ezzel ellensulyozza automatikusan az ora termeszetes elmaszasat,
   ezaltal leheto"ve teve, hogy egy viszonylag pontos ido"t kapjuk
   meg abban az esetben is, amikor egy kis ido"re ku:lso"
   ido"forrasok nelku:l maradnank.

   A driftfile beallitassal egyben azt az allomanyt jelo:lju:k ki,
   amely az NTP szerverto"l kapott korabbi valaszokat tarolja. Ez az
   NTP mu"ko:desehez szu:kseges belso" adatokat tartalmaz, ezert
   semmilyen mas programnak nem szabad modositania.

     --------------------------------------------------------------

    29.10.3.3. A szerveru:nk eleresenek szabalyozasa

   Alapertelmezes szerint az NTP szerveru:nket barki kepes elerni az
   interneten. Az /etc/ntp.conf allomanyban szereplo" restrict
   beallitas segitsegevel azonban meg tudjuk mondani, milyen gepek
   erhetik el a szerveru:nket.

   Ha az NTP szerveru:nk fele mindenfele probalkozast el akarunk
   utasitani, akkor az /etc/ntp.conf allomanyba a ko:vetkezo" sort
   kell felvennu:nk:

 restrict default ignore

     Megjegyzes: Ezzel egyben azonban a helyi beallitasainkban
     szereplo" szerverek elereset is megakadalyozzuk. Ha ku:lso" NTP
     szerverekkel is szeretnenk szinkronizalni, akkor itt is
     engedelyezu:nk kell ezeket. Erro"l bo"vebben lasd az ntp.conf(5)
     man oldalon.

   Ha csak a belso" halozatunkban levo" gepek szamara szeretnenk
   elerheto"ve tenni az orak egyezteteset, de sem a szerver
   allapotanak modositasat nem engedelyezzu:k, sem pedig azt, hogy a
   vele egyenrangu szerverekkel szinkronizaljon, akkor az imenti
   helyett a

 restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

   sort irjuk bele, ahol a 192.168.1.0 a belso" halozatunk IP-cime es
   a 255.255.255.0 a hozzatartozo halozati maszk.

   Az /etc/ntp.conf to:bb restrict tipusu beallitast is tartalmazhat.
   Ennek reszleteiro"l az ntp.conf(5) man oldalon, az Access Control
   Support cimu" szakaszban olvashatunk.

     --------------------------------------------------------------

  29.10.4. Az NTP futtatasa

   Ugy tudjuk az NTP szervert elinditani a rendszeru:nkkel egyu:tt,
   ha az /etc/rc.conf allomanyban szerepeltetju:k az
   ntpd_enable="YES" sort. Ha az ntpd(8) szamara tovabbi
   beallitasokat is at akarunk adni, akkor az /etc/rc.conf
   allomanyban adjuk meg az ntpd_flags parametert.

   Ha a gepu:nk ujrainditasa nelku:l akarjuk elinditani a szerver,
   akkor az ntpd parancsot adjuk ki az /etc/rc.conf allomanyban a
   ntpd_flags valtozohoz megadott parameterekkel. Mint peldaul:

 # ntpd -p /var/run/ntpd.pid

     --------------------------------------------------------------

  29.10.5. Az ntpd hasznalati ido"leges internet csatlakozassal

   Az ntpd(8) program megfelelo" mu"ko:desehez nem szu:kseges allando
   internet kapcsolat. Ha azonban igeny szerinti tarcsazassal
   epitju:nk fel ideiglenes kapcsolatot, akkor erdemes letiltani az
   NTP forgalmat, nehogy feleslegesen aktivalja vagy tartsa eletben a
   vonalat. Ha PPP tipusu kapcsolatunk van, akkor az
   /etc/ppp/ppp.conf allomanyban a filter direktivaval tudjuk ezt
   leszabalyozni. Peldaul:

  set filter dial 0 deny udp src eq 123
  # Nem engedju:k az NTP altal ku:ldo:tt adatoknak, hogy tarcsazast
  # kezdemenyezzenek:
  set filter dial 1 permit 0 0
  set filter alive 0 deny udp src eq 123
  # Nem engedju:k az NTP adatainak, hogy fenntartsak a kapcsolatot:
  set filter alive 1 deny udp dst eq 123
  set filter alive 2 permit 0/0 0/0

   Mindenezekro"l reszletesebb felvilagositast a ppp(8) man oldal
   PACKET FILTERING cimu" szakaszaban es a /usr/share/examples/ppp/
   ko:nyvtarban talalhato peldakban kaphatunk.

     Megjegyzes: Egyes internet-szolgaltatok blokkoljak az
     alacsonyabb portokat, ezaltal az NTP nem hasznalhato, mivel a
     valaszok nem fogjak elerni a gepu:nket.

     --------------------------------------------------------------

  29.10.6. Tovabbi olvasnivalok

   Az NTP szerver dokumentacioja HTML formatumban a
   /usr/share/doc/ntp/ ko:nyvtarban talalhato.

     --------------------------------------------------------------

29.11. Tavoli gepek naplozasa syslogd hasznalataval

   Keszitette: Tom Rhodes.

   A rendszernaplokkal kapcsolatos mu"veletek egyarant fontosak a
   biztonsag es a karbantartas szempontjabol. Ha ko:zepes vagy
   nagyobb meretu", esetleg ku:lo:nbo:zo" tipusu halozatokban
   adminisztralunk to:bb gepet, akkor ko:nnyen atlathatatlanna valhat
   a naplok rendszeres felu:gyelete. Ilyen helyzetekben a tavoli
   naplozas beallitasaval az egesz folyamatot sokkal kenyelmesebbe
   tehetju:k.

   Nemileg kepesek vagyunk enyhiteni a naploallomanyok kezelesenek
   terhet, ha egyetlen ko:zponti szerverre ku:ldju:k at az adatokat.
   Ekkor a FreeBSD alaprendszereben megtalalhato alapeszko:zo:kkel,
   mint peldaul a syslogd(8) vagy a newsyslog(8) felhasznalasaval
   egyetlen helyen be tudjuk allitani a naplok o:sszegyu"jteset,
   o:sszefesu:leset es cserejet. A most ko:vetkezo" pelda
   konfiguracioban az A gep, a naploszerver.minta.com fogja gyu"jteni
   a helyi halozatrol erkezo" naploinformaciokat. A B gep, a
   naplokliens.minta.com pedig a szervernek ku:ldi a naplozando
   adatokat. Eles ko:rnyezetben mind a ket gepnek rendelkeznie kell
   megfelelo" DNS bejegyzesekkel, vagy legalabb szerepelniu:k kell
   egymas /etc/hosts allomanyaiban. Ha ezt elmulasztjuk, a szerver
   nem lesz hajlando adatokat fogadni.

     --------------------------------------------------------------

  29.11.1. A naploszerver beallitasa

   A naploszerverek olyan gepek, amelyeket ugy allitottunk be, hogy
   naplozasi informaciokat tudjanak fogadni tavoli szamitogepekro"l.
   A legto:bb esetben igy egyszeru"siteni tudunk a konfiguracion,
   vagy olykor egyszeru"en csak hasznos, ha ezt a megoldast
   alkalmazzuk. Fu:ggetlenu:l attol, hogy miert hasznaljuk, a
   tovabblepes elo"tt nehany elo"keszu:letet meg kell tennu:nk.

   Egy rendesen beallitott naploszervernek legalabb a ko:vetkezo"
   ko:vetelmenyeknek kell eleget tennie:

     * az 514-es UDP portot engedelyezni kell mind a kliensen, mind
       pedig a szerveren futo tu"zfal szabalyrendszereben;

     * a syslogd(8) kepes legyen a tavoli kliens gepekro"l erkezo"
       u:zeneteket fogadni;

     * a syslogd(8) szervernek es az o:sszes kliensnek rendelkeznie
       kell ervenyes DNS (ko:zvetlen es inverz) bejegyzesekkel vagy
       szerepelnie kell az /etc/hosts allomanyban.

   A naploszerver beallitasahoz mindegyik klienst fel kell vennu:nk
   az /etc/syslog.conf allomanyba, valamint meg kell adnunk a
   megfelelo" funkciot (facility):

 +naplokliens.minta.com
 *.*     /var/log/naplokliens.log

     Megjegyzes: A syslog.conf(5) man oldalan megtalalhatjuk a
     ku:lo:nbo:zo" tamogatott es elerheto" funkciokat.

   Miutan beallitottuk, az o:sszes adott funkciohoz tartozo u:zenet
   az elo"bb megadott allomanyba (/var/log/naplokliens.log) fog
   keru:lni.

   A szerveren tovabba meg kell adnunk a ko:vetkezo" sort az
   /etc/rc.conf allomanyban:

 syslogd_enable="YES"
 syslogd_flags="-a naplokliens.minta.com -vv"

   Az elso" sorral engedelyezzu:k a syslogd elinditasat a
   rendszerinditas soran, majd a masodik sorral engedelyezzu:k, hogy
   a kliens naplozni tudjon a szerverre. Itt meg lathato a -vv opcio,
   amellyel a naplozott u:zenetek reszletesseget tudjuk no:velni.
   Ennek nagyon fontos a szerepe a naplozasi funkciok behangolasakor,
   mivel igy a rendszergazdak pontosan lathatjak milyen tipusu
   u:zenetek milyen funkcioval keru:ltek ro:gzitesre a naploban.

   Befejezeskeppen hozzuk letre a naploallomanyt. Teljesen mindegy,
   hogy erre milyen megoldast alkalmazunk, peldaul a touch(1)
   remeku:l megfelel:

 # touch /var/log/naplokliens.log

   Ezutan inditsuk ujra es elleno"rizzu:k a syslogd demont:

 # /etc/rc.d/syslogd restart
 # pgrep syslog

   Ha valaszul megkapjuk a futo demon azonositojat, akkor sikeru:lt
   ujrainditanunk, elkezdhetju:k a kliens beallitasat. Ha valamiert
   nem indult volna ujra a szerver, az /var/log/messages allomanybol
   probaljuk meg kideriteni az okat.

     --------------------------------------------------------------

  29.11.2. A naplokliens beallitasa

   A naplokliens az a gep, amely egy helyi naplopeldany karbantartasa
   mellett tovabbku:ldni a naplozando informaciokat egy
   naploszervernek.

   Hasonloan a naploszerverekhez, a klienseknek is teljesitenie
   bizonyos alapveto" elvarasokat:

     * a syslogd(8) demon ku:ldjo:n bizonyos tipusu u:zeneteket a
       naploszervernek, amely ezeket pedig kepes legyen fogadni;

     * a hozzatartozo tu"zfal engedje at a forgalmat az 514-es UDP
       porton;

     * rendelkezzen mind ko:zvetlen, mind pedig inverz DNS
       bejegyzessel, vagy szerepeljenek az /etc/hosts allomanyban.

   A kliens beallitasa sokkal egyszeru"bb a szerverhez kepest. A
   kliensen adjuk hozza a ko:vetkezo" sorokat az /etc/rc.conf
   allomanyhoz:

 syslogd_enabled="YES"
 syslogd_flags="-s -vv"

   A szerver beallitasaihoz hasonloan itt is engedelyezzu:k a syslogd
   demont es megno:velju:k a naplozott u:zenetek reszletesseget. A -s
   kapcsoloval pedig megakadalyozzuk, hogy a kliens mas gepekro"l is
   hajlando legyen naplou:zeneteket elfogadni.

   A funkciok a rendszernek azon reszet irjak le, amelyhez letrejo:n
   az adott u:zenet. Tehat peldaul az ftp es ipfw egyarant ilyen
   funkciok. Amikor keletkezik egy naplou:zenet valamelyiku:kho:z,
   altalaban megjelenik a nevu:k. A funkciokhoz tartozik meg egy
   prioritas vagy szint is, amellyel az adott u:zenet fontossagat
   jelzik. Ezek ko:zu:l a leggyakoribb a warning (mint
   "figyelmeztetes") es info (mint "informacio"). A hasznalhato
   funkciok es a hozzajuk tartozo prioritasok teljes listajat a
   syslog(3) man oldalan olvashatjuk.

   A naploszervert meg kell adnunk a kliens /etc/syslog.conf
   allomanyaban. Itt a @ szimbolummal jelezzu:k, hogy az adatokat egy
   tavoli szerverre szeretnenk tovabbku:ldeni, valahogy igy:

 *.*               @naploszerver.minta.com

   Ezutan a beallitas ervenyesitesehez ujra kell inditanunk a syslogd
   demont:

 # /etc/rc.d/syslogd restart

   A logger(1) hasznalataval probaljuk ki a kliensro"l a
   aplou:zenetek halozaton keresztu:li ku:ldeset, es ku:ldju:nk
   valamit a syslogd demonnak:

 # logger "Udvozlet a naplokliensrol"

   A parancs kiadasa utan az u:zenetnek mind a kliens, mind pedig a
   szerver /var/log/messages allomanyaban meg kell jelennie.

     --------------------------------------------------------------

  29.11.3. Hibakereses

   Elo"fordulhat, hogy a naploszerver valamiert nem kapja meg
   rendesen az u:zeneteket, ezert valamilyen modon meg kell
   keresnu:nk a hiba okat. Ez to:bb minden lehet, de altalaban ket
   leggyakoribb ok valamilyen halozati kapcsolodasi vagy DNS
   beallitasi hiba. Ezek tesztelesehez gondoskodjunk rola, hogy a
   gepek ko:lcso:no:sen elerheto"ek egymasrol az /etc/rc.conf
   allomanyban megadott halozati nevu:k szerint. Ha ezzel latszolag
   minden rendben van, akkor probaljuk meg modositani a syslogd_flags
   erteket az /etc/rc.conf allomanyban.

   A most ko:vetkezo" peldaban a /var/log/naplokliens.log teljesen
   u:res, illetve a /var/log/messages allomany semmilyen hibara utalo
   okot nem tartalmaz. A hibakereseshez meg to:bb informaciot a
   syslogd_flags atirasaval tudunk kerni:

 syslogd_flags="-d -a naploklien.minta.com -vv"

   Termeszetesen ne felejtsu:k el ujrainditani a szervert:

 # /etc/rc.d/syslogd restart

   A demon ujrainditasa utan ko:zvetlenu:l az alabbiakhoz hasonlo
   u:zenetek arasztjak el a kepernyo"t:

 logmsg: pri 56, flags 4, from naploszerver.minta.com, msg syslogd: restart
 syslogd: restarted
 logmsg: pri 6, flags 4, from naploszerver.minta.com, msg syslogd: kernel boot file is /boot/kernel/kernel
 Logging to FILE /var/log/messages
 syslogd: kernel boot file is /boot/kernel/kernel
 cvthname(192.168.1.10)
 validate: dgram from IP 192.168.1.10, port 514, name naplokliens.minta.com;
 rejected in rule 0 due to name mismatch.

   A diagnosztikai u:zeneteket vegigolvasva nyilvanvalo valik, hogy
   azert dobja el az u:zeneteket a szerver, mert nem megfelelo" a gep
   neve. Miutan atnezzu:k a beallitasainkat, felfedezhetu:nk az
   /etc/rc.conf allomanyban egy apro hibat:

 syslogd_flags="-d -a naploklien.minta.com -vv"

   Lathatjuk, hogy ebben a sorban a naplokliens nevnek kellene
   szerepelni, nem pedig a naploklien nevnek. Miutan elvegeztu:k a
   szu:kseges javitasokat, inditsuk ujra a szervert es vizsgaljuk meg
   az eredmenyt:

 # /etc/rc.d/syslogd restart
 logmsg: pri 56, flags 4, from naploszerver.minta.com, msg syslogd: restart
 syslogd: restarted
 logmsg: pri 6, flags 4, from naploszerver.minta.com, msg syslogd: kernel boot file is /boot/kernel/kernel
 syslogd: kernel boot file is /boot/kernel/kernel
 logmsg: pri 166, flags 17, from naploszerver.minta.com, msg Dec 10 20:55:02 <syslog.err> naploszerver.minta.com syslogd: exiting on signal 2
 cvthname(192.168.1.10)
 validate: dgram from IP 192.168.1.10, port 514, name naplokliens.minta.com;
 accepted in rule 0.
 logmsg: pri 15, flags 0, from naplokliens.minta.com, msg Dec 11 02:01:28 pgj: Masodik teszt uzenet
 Logging to FILE /var/log/naplokliens.log
 Logging to FILE /var/log/messages

   Itt mar minden u:zenet rendben megerkezett es a megfelelo"
   allomanyokba keru:lt (a /var/log/messages a kliensen, es a
   /var/log/naplokliens.log a szerveren)).

     --------------------------------------------------------------

  29.11.4. Biztonsagi megfontolasok

   Mint minden halozati szolgaltatas eseten, ilyenkor is figyelembe
   kell vennu:nk bizonyos biztonsagi megfontolasokat a tenyleges
   konfiguracio kiepitese elo"tt. Olykor elo"fordulhat, hogy a naplok
   ku:lo:nbo:zo" kenyes informaciokat tartalmaznak, mint peldaul a
   helyi rendszeren futo szolgaltatasok nevei, felhasznaloi nevek
   vagy egyeb konfiguracios adatok. A kliens es a szerver ko:zo:tt
   halozaton utazo adatok viszont se nem titkositottak, se nem
   jelszoval vedettek. Ha titkositast szeretnenk hasznalni, akkor
   javasoljuk peldaul a security/stunnel portot, amellyel egy
   titkositott tunnelen keresztu:l tudunk adatokat ku:ldeni a
   halozaton.

   A helyi rendszer biztonsaganak szavatolasa is fontos lehet. A
   naplok sem a hasznalat soran, sem pedig a lecserelesu:k utan nem
   keru:lnek titkositasra. Emiatt a helyi rendszerhez hozzafero"
   felhasznalok kedvu:kre nyerhetnek ki belo"lu:k a rendszeru:nket
   erinto" konfiguracios informaciokat. Ezert ilyenkor nagyon fontos,
   hogy mindig a megfelelo" engedelyeket allitsuk be a naplokra. A
   newsyslog(8) segedprogrammal be tudjuk allitani a frissen
   letrehozott es a lecserelt naplok engedelyeit. Tehat ko:nnyen
   megakadalyozhatjuk a helyi felhasznalok kivancsiskodasat, ha itt a
   naplok engedelyeit peldaul a 600 koddal adjuk meg.

     --------------------------------------------------------------

                         Fejezet 30. Tu"zfalak

   Irta: Joseph J. Barbish. SGML formatumura alakitotta es
   aktualizalta: Brad Davis.

     --------------------------------------------------------------

30.1. Bevezetes

   A tu"zfalakkal a rendszeru:nko:n keresztu:lfolyo bejo:vo" es
   kimeno" forgalmat tudjuk szu"rni. A tu"zfalak egy vagy to:bb
   "szabalyrendszer" alapjan vizsgaljak az eppen erkezo" vagy tavozo
   halozati csomagokat, es vagy tovabbengedik ezeket vagy
   megallitjak. A tu"zfalak szabalyai a csomagok egy vagy to:bb
   jellemzo"jet veszik szemu:gyre, amelyek lehetnek peldaul a
   protokoll tipusa, a forras vagy cel halozati cime, esetleg a
   forras- vagy a celport.

   A tu"zfalak jelento"s mertekben kepesek gyarapitani egy gep vagy
   egy halozat vedelmet. Leginkabb a ko:vetkezo"kre tudjuk
   felhasznalni:

     * A belso" halozatunkban futo alkalmazasok, szolgaltatasok,
       gepek megvedesere es elszigetelesere az internetro"l erkezo"
       nem kivant forgalom ellen

     * A belso" halozatban levo" gepek elereset tudjuk korlatozni
       vagy letiltani az interneten elerheto" szolgaltatasok fele

     * A halozati cimforditas (Network Address Translation, NAT)
       beallitasahoz, ahol a belso" halozatunk privat IP-cimeket
       hasznalnak es egy ko:zo:s kapcsolaton keresztu:l erik el az
       internetet (egyetlen IP-cimmel, vagy pedig automatikusan
       kiosztott publikus cimekkel).

   A fejezet elolvasasa soran megismerju:k:

     * hogyan adjuk meg helyesen a csomagok szu"reset leiro
       szabalyokat;

     * a FreeBSD-be epitett tu"zfalak ko:zti ku:lo:nbsegeket;

     * hogyan allitsuk be es hasznaljuk az OpenBSD PF tu"zfalat;

     * hogyan allitsuk be es hasznaljuk az IPFILTER tu"zfalat;

     * hogyan allitsuk be es hasznaljuk az IPFW tu"zfalat.

   A fejezet elolvasasa elo"tt ajanlott:

     * a FreeBSD-hez es az internethez ko:to"do" alapveto" fogalmak
       ismerete.

     --------------------------------------------------------------

30.2. Ro:viden a tu"zfalakrol

   A tu"zfalak szabalyrendszereit alapveto"en ketfelekeppen tudjuk
   o:sszeallitani: "inkluziv", vagyis megengedo", illetve "exkluziv"
   vagyis kizaro modon. Az exkluziv tu"zfalak minden forgalmat
   atengednek, amiro"l nem rendelkeznek a tu"zfal szabalyai. Az
   inkluziv tu"zfalak ennek pontosan az ellenkezo"jet teszik. Csak
   azt a forgalmat engedik at, amiro"l van szabaly es minden mast
   blokkolnak.

   Az inkluziv tu"zfalak alkalmazasaval sokkal jobban
   kezu:nkbentudjuk tartani a halozatunk kimeno" forgalmat, ezert
   leginkabb az internetes szolgaltatasokat futtato rendszerek
   eseteben bizonyulhat jobb valasztasnak. Emellett az internetro"l a
   halozatunk fele iranyulo forgalmat is kepes szabalyozni. Ekkor az
   egyetlen szabalyra sem illeszkedo" csomagokat egyszeru"en eldobjuk
   es naplozzuk. Az inkluziv tu"zfalak altalaban biztonsagosabbak az
   exkluziv tipusu tarsaiknal, mivel esetu:kben jelento"s mertekben
   visszaszorul a nem kivanatos atfolyo forgalom.

     Megjegyzes: Hacsak nem emelju:k ki ku:lo:n, a fejezet tovabbi
     reszeben minden peldakent megadott szabalyrendszer inkluziv
     tu"zfalat hoz letre.

   Ez a tipusu vedelem meg tovabb fokozhato az "allapottarto
   tu"zfalak" (stateful firewall) hasznalataval. Az ilyen tipusu
   tu"zfalak szemmel tartjak a rajtuk keresztu:l megnyitott
   kapcsolatokat, es vagy csak a mar meglevo" kapcsolathoz tartozo
   forgalmat engedik at vagy nyitnak egy ujat. Az allapottarto
   tu"zfalak hatranya, hogy a "Denial of Service" (DoS) tipusu
   tamadasokkal szemben sokkal seru:lekenyebbek olyan helyzetekben,
   amikor az uj kapcsolatok nagyon gyorsan jo:nnek letre. A legto:bb
   tu"zfal eseteben azonban tudjuk vegyiteni az allapottarto es nem
   allapottarto viselkedest, es ezzel egy idealis beallitast
   kialakitani.

     --------------------------------------------------------------

30.3. Tu"zfalak

   A FreeBSD alaprendszerebe harom ku:lo:nbo:zo" tu"zfalat epitettek
   be, melyek a ko:vetkezo"k: az IPFILTER (masik neven IPF), az
   IPFIREWALL (mas neven IPFW) es az OpenBSD csomagszu"ro"je (Packet
   Filter, azaz PF). A forgalom szabalyozasara (vagyis alapveto"en a
   savszelesseg kihasznaltsaganak vezerlesere) a FreeBSD ket
   beepitett csomagot tartalmaz: ez az altq(4) es a dummynet(4).
   Altalaban a Dummynet az IPFW, mig az ALTQ a PF partnere. Az
   IPFILTER eseteben maga az IPFILTER vegzi a cimforditast es a
   szu"rest, a savszelesseget pedig az IPFW a dummynet(4) vagy a PF
   az ALTQ segitsegevel. Az IPFW es a PF szabalyokkal rendelkezik a
   rendszeru:nkbe erkezo" vagy onnan tavozo csomagokrol, habar
   megoldasaik teljesen mashogy mu"ko:dnek es a szabalyok megadasi
   modja is elter.

   A FreeBSD azert tartalmaz egyszerre ennyifele tu"zfalat, mert az
   emberek elvarasai es igenyei elternek. Egyiku:k sem tekintheto" a
   legjobbnak.

   A szerzo" egyebkent az IPFILTER megoldasat reszesiti elo"nyben,
   mivel egy halozati cimforditast alkalmazo ko:rnyezetben sokkal
   ko:nnyebb vele megfogalmazni az allapottarto szabalyokat, valamint
   tartalmaz egy beepitett FTP proxyt is, amivel igy a kimeno" FTP
   kapcsolatok beallitasa meg tovabb egyszeru"so:dik.

   Mivel az o:sszes tu"zfal a csomagok fejlecenek bizonyos mezo"inek
   alapjan dolgozik, ezert a tu"zfal szabalyrendszeret megalkoto
   egyennek teljesen tisztaban kell lennie a TCP/IP mu"ko:desevel,
   tovabba azzal, hogy ezekben a mezo"kben milyen ertekek
   szerepelhetnek es ezeket hogyan hasznaljak egy atlagos kapcsolat
   alatt. Ebben a temaban a http://www.ipprimer.com/overview.cfm
   cimen talalhatunk egy remek ismerteto"t (angolul).

     --------------------------------------------------------------

30.4. Az OpenBSD csomagszu"ro"je (PF) es az ALTQ

   Atnezte es aktualizalta:John Ferrell.

   2003 juliusaban az OpenBSD PF neven ismert csomagszu"ro"jet
   atirtak FreeBSD-re es elerheto"ve tettek a FreeBSD
   Portgyu"jtemenyenek reszekent. A PF programot beepitetten
   tartalmazo elso" kiadas pedig 2004 novembereben a FreeBSD 5.3
   volt. A PF egy teljes, mindentudo tu"zfal, amely tamogatja az un.
   ALTQ (Alternate Queuing, vagyis a "valtobesorolas") megoldast. Az
   ALTQ leheto"ve teszi a savszelesseg korlatozasat a szolgaltatas
   mino"sege (Quality of Service, QoS) alapjan.

   Az OpenBSD Projekt kivalo munkat vegez a PF felhasznaloi
   utmutatojanak karbantartasaval. A keziko:nyv ezen szakasza ezert
   elso"sorban azzal foglalkozik, hogyan kell a PF-et FreeBSD alatt
   hasznalni, miko:zben igyekszik egy altalanos o:sszefoglalast adni
   a temarol. A reszletesebb informaciokkal kapcsolatban azonban
   feltetlenu:l nezzu:k meg a felhasznaloi utmutatot.

   A http://pf4freebsd.love2party.net/ cimen olvashatunk to:bbet
   arrol (angolul), hogy a PF-et hogyan hasznaljunk FreeBSD-n.

     --------------------------------------------------------------

  30.4.1. A PF rendszermagmodul hasznalata

   A FreeBSD 5.3 megjelenese ota a PF az alaprendszer resze mint
   futas ko:zben beto:ltheto" rendszermagmodul. A rendszer indulaskor
   tehat kepes automatikusan beto:lteni, ha az rc.conf(5) allomanyban
   megadjuk a pf_enable="YES" sort. A PF modul azonban csak akkor fog
   mu"ko:desbe lepni, ha talal hozzatartozo szabalyrendszert, amely
   alapertelmezes szerint az /etc/pf.conf allomanyban talalhato.
   Amennyiben a PF szabalyrendszere a mi esetu:nkben mashol
   talalhato, akkor az rc.conf allomanyban ne felejtsu:k megadni a
   pf_rules="/eleresi/utvonal/pf.szabalyok" sor hasznalataval.

     Megjegyzes: A FreeBSD 7.0 kiadassal a minta pf.conf allomany az
     /etc ko:nyvtarbol atkeru:lt a /usr/share/examples/pf
     ko:nyvtarba. A FreeBSD 7.0 elo"tti kiadasokban alapertelmezes
     szerint talalhato egy pf.conf allomany az /etc ko:nyvtarban.

   A PF modul parancssorbol akar kezzel is beto:ltheto":

 # kldload pf.ko

   A beto:ltheto" modul tartalmazza a pflog(4) tamogatasat, amely
   segitsegevel naplozni is tudunk. Amennyiben a PF tovabbi
   szolgaltatasaira is szu:ksegu:nk lenne, akkor a PF tamogatasat be
   kell epitenu:nk a rendszermagba.

     --------------------------------------------------------------

  30.4.2. A PF rendszermagbeli beallitasai

   Noha egyaltalan nem szu:kseges beepitenu:nk a PF tamogatasat a
   rendszermagba, abban az esetben megis szu:ksegu:nk lehet ra,
   amikor a PF olyan komolyabb leheto"segeit szeretnenk kiaknazni,
   amelyek mar nem reszei a modulnak. Ilyen peldaul a pfsync(4),
   amely a PF altal hasznalt allapottablazatok bizonyos valtozasainak
   megjelenitesere alkalmas pszeudoeszko:z. A carp(4) megoldasaval
   parositva igy akar hibatu"ro" tu"zfalak is kialakithatoak a
   PF-fel. A CARP megoldasarol a keziko:nyvben bo"vebb ismertetest a
   31.13 Szakasz ad.

   A PF rendszermag konfiguracios beallitasai a
   /usr/src/sys/conf/NOTES allomanyban talalhatoak:

 device pf
 device pflog
 device pfsync

   A device pf beallitas engedelyezi a csomagszu"ro" tu"zfalat
   (pf(4)).

   A device pflog megadasaval keletkezik egy pflog(4) pszeudo
   halozati eszko:z, amellyel egy bpf(4) eszko:zre erkezo" forgalmat
   tudunk naplozni. Ezutan a pflogd(8) demon hasznalhato to"le
   szarmazo naplozott adatok ro:gzitesere.

   A device pfsync engedelyezi a pfsync(4) pszeudo halozati eszko:z
   letrejo:ttet, amely az un. "allapotvaltasok" megfigyelesere
   alkalmas.

     --------------------------------------------------------------

  30.4.3. Az rc.conf allomanyban elerheto" beallitasok

   A ko:vetkezo" rc.conf(5) beallitasok aktivaljak a rendszerinditas
   soran a PF es a pflog(4) hasznalatat:

 pf_enable="YES"                 # a PF engedelyezese (a modul beto:ltese, ha kell)
 pf_rules="/etc/pf.conf"         # a pf szabalyait tartalmazo allomany
 pf_flags=""                     # a pfctl inditasahoz szu:kseges tovabbi parameterek
 pflog_enable="YES"              # a pflogd(8) elinditasa
 pflog_logfile="/var/log/pflog"  # hol tartsa a pflogd az naploit
 pflog_flags=""                  # a pflogd inditasahoz szu:kseges parameterek

   Ha a tu"zfalunk mo:go:tt egy helyi halozat is meghuzodik, akkor az
   ott levo" gepek szamara valamilyen modon tudnunk kell tovabbitani
   a csomagokat vagy cimforditast kell vegezni, igy ez is
   mindenkeppen kelleni fog:

 gateway_enable="YES"            # az atjaro funkciok engedelyezese

     --------------------------------------------------------------

  30.4.4. A szu"resi szabalyok megfogalmazasa

   A PF a beallitasait a pf.conf(5) allomany tarolja (amely
   alapertelmezes szerint az /etc/pf.conf helyen talalhato), es az
   ebben talalhato szabalyok alapjan modositja, dobja el vagy eppen
   engedi at a csomagokat. A FreeBSD rendszeru:nkben ehhez
   talalhatunk nehany peldat a /usr/share/examples/pf/ ko:nyvtarban.
   A PF altal hasznalt szabalyokrol minden reszletre kiterjedo"en a
   PF felhasznaloi utmutatojaban olvashatunk.

     Figyelem: A PF felhasznaloi utmutatojanak olvasasakor ne
     feledkezzu:nk meg rola, hogy a ku:lo:nbo:zo" FreeBSD verziok
     ku:lo:nbo:zo" PF verziokat tartalmaznak:

       * FreeBSD 5.X -- OpenBSD 3.5 PF

       * FreeBSD 6.X -- OpenBSD 3.7 PF

       * FreeBSD 7.X -- OpenBSD 4.1 PF

   A FreeBSD packet filter levelezesi lista remek hely a PF tu"zfal
   beallitasaval es futtatasaval kapcsolatos kerdesekre. A kerdezes
   elo"tt azonban ne felejtsu:k el alaposan atnezni az archivumot!

     --------------------------------------------------------------

  30.4.5. A PF hasznalata

   A PF a pfctl(8) segitsegevel vezerelheto". Az alabbiakban ezzel
   kapcsolatban most o:sszefoglalunk nehany hasznos parancsot (de ne
   felejtsu:k el megnezni a pfctl(8) man oldalon talalhato to:bbi
   leheto"seget sem):

           Parancs                           Leiras                   
   pfctl -e                 A PF engedelyezese                        
   pfctl -d                 A PF tiltasa                              
   pfctl -F all -f          Az o:sszes (cimforditasi, szu"resi,       
   /etc/pf.conf             allapottartasi stb.) szabaly to:rlese, es 
                            az /etc/pf.conf allomany ujrato:ltese     
   pfctl -s [ rules | nat | A szu"resi (rules), cimforditasi (nat) es 
   state ]                  allapottartasi (state) informaciok        
                            lekerdezese                               
   pfctl -vnf /etc/pf.conf  Az /etc/pf.conf allomany elleno"rzese a   
                            benne levo" szabalyok beto:ltese nelku:l  

     --------------------------------------------------------------

  30.4.6. Az ALTQ engedelyezese

   Az ALTQ kizarolag csak ugy hasznalhato, ha a konfiguracios
   beallitasokon keresztu:l beepitju:k a FreeBSD rendszermagjaba. Az
   ALTQ alkalmazasat nem minden halozati kartya meghajtoja tamogatja,
   ezert ezt a altq(4) man oldalon elleno"rizzu:k.

   A ko:vetkezo" rendszermag konfiguracios beallitasokkal
   engedelyezhetju:k az ALTQ hasznalatat es bo"vithetju:k azt tovabbi
   leheto"segekkel:

 options         ALTQ
 options         ALTQ_CBQ        # osztalyozas alapu besorolas (Class Bases Queuing, CBQ)
 options         ALTQ_RED        # veletlen korai eszleles (Random Early Detection, RED)
 options         ALTQ_RIO        # RED befele/kifele
 options         ALTQ_HFSC       # hiearchikus csomagu:temezo" (Hierarchical Packet Scheduler, HFSC)
 options         ALTQ_PRIQ       # prioritasos besorolas (Priority Queuing, PRIQ)
 options         ALTQ_NOPCC      # az SMP eseten kell

   Az options ALTQ az ALTQ rendszert engedelyezi.

   Az options ALTQ_CBQ engedelyezi a osztalyozas alapu besorolast
   (Class Based Queuing, CBQ). A CBQ hasznalataval a kapcsolatunkhoz
   tartozo savszelesseget ku:lo:nbo:zo" osztalyokra vagy sorokra
   tudjuk bontani es a szu"resi szabalyoknak megfelelo"en osztalyozni
   segitsegu:kkel a forgalmat.

   Az options ALTQ_RED a veletlen korai eszleles (Random Early
   Detection, RED) hasznalatat engedelyezi. A RED a halozati
   forgalomban keletkezo" torlodasok elkeru:lesere alkalmas. A RED
   ezt a problemat ugy oldja meg, hogy meri a sorok hosszat es
   o:sszeveti a hozzatartozo minimalis es maximalis
   ku:szo:bertekekkel. Ha a sor hossza meghaladja a szamara elo"irt
   maximalis erteket, akkor az uj csomagokat eldobja. Nevehez hu"en a
   RED az eldobasra itelt csomagokat veletlenszeru"en valasztja ki.

   Az options ALTQ_RIO engedelyezi a RED hasznalatat mind a ket
   iranyba, tehat be- es kifele.

   Az options ALTQ_HFSC a partatlan hierachikus szolgaltatasi go:rbe
   alapu csomagu:temezo"t (Hierarchical Fair Service Curve Packet
   Scheduler, HFSC) engedelyezi. Vele kapcsolatban a
   http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html cimen talalhatunk
   bo"vebben olvasnivalot (angolul).

   Az options ALTQ_PRIQ a prioritasos besorolast (Priority Queuing,
   PRIQ) teszi elerheto"ve. A PRIQ mindig elso"kent a nagyobb erteku"
   sorban levo" forgalmat tovabbitja.

   Az options ALTQ_NOPCC az ALTQ SMP, vagyis to:bbprocesszoros
   tamogatasat adja meg. Ilyen tipusu rendszerekben ez ko:telezo".

     --------------------------------------------------------------

30.5. Az IPFILTER (IPF) tu"zfal

   Az IPFILTER szerzo"je Darren Reed. Az IPFILTER nem ko:to"dik egyik
   rendszerhez sem: ez egy olyan nyilt forraskodu alkalmazas, amelyet
   atirtak FreeBSD, NetBSD, OpenBSD, SunOS, HP/UX es Solaris
   operacios rendszerekre. Az IPFILTER karbantartasa es tamogatasa
   pillanatnyilag is aktiv, folyamatosan jelennek meg ujabb
   valtozatai.

   Az IPFILTER egy rendszermag oldalan mu"ko:do" tu"zfalazasi es egy
   cimforditasi mechanizmusra alapszik, amelyet felhasznaloi
   programokkal tudunk felu:gyelni es vezerelni. A tu"zfal szabalyai
   az ipf(8) segedprogrammal allithatoak be vagy to:ro:lheto"ek. A
   halozati cimforditasra vonatkozo szabalyokat az ipnat(1)
   segedprogrammal allithatjuk be vagy to:ro:lhetju:k. Az ipfstat(8)
   segedprogram kepes futas ko:zben statisztikakat kesziteni az
   IPFILTER rendszermagban elhelyezkedo" reszeinek viselkedesero"l.
   Az ipmon(8) program pedig az IPFILTER cselekveseit kepes a
   rendszernaplokba feljegyezni.

   Az IPF eredetileg olyan szabalyfeldolgozasi modszer szerint
   keszu:lt, amelyben "az utolso egyezo" szabaly nyer" es csak
   allapotnelku:li szabalyokat ismert. Az ido" mulasaval az IPF
   reszeve valt a "quick" opcio es a "keep state" opcion keresztu:l
   az allapottartas is, melyek dramai mertekben korszeru"sitettek a
   szabalyok feldolgozasanak elvet. Az IPF hivatalos dokumentacioja
   csak a regi szabalyok letrehozasat es azok feldolgozasanak
   leirasat tartalmazza. A korszeru"sitett funkciok csak
   kiegesziteskeppen jelennek meg, es az altaluk felkinalt elo"nyo:k
   megertese egy sokkal magasabb szintu" es biztonsagosabb tu"zfal
   megepiteset teszik leheto"ve.

   A szakaszban szereplo" utasitasokban olyan szabalyok szerepelnek,
   amelyek kihasznaljak a "quick" es "keep state" opciokat. Ezek az
   inkluziv tu"zfalszabalyok letrehozasanak alapjai.

   A regi tipusu szabalyokrol a
   http://www.obfuscation.org/ipf/ipf-howto.html#TOC_1 es
   http://coombs.anu.edu.au/~avalon/ip-filter.html cimeken
   olvashatunk (angolul).

   Az IPF gyakran ismetelt kerdesei a
   http://www.phildev.net/ipf/index.html cimen erheto"ek el
   (angolul).

   A nyilt forrasu IPFILTER levelezesi lista keresheto" archivumait a
   http://marc.theaimsgroup.com/?l=ipfilter cimen talaljuk (angolul).

     --------------------------------------------------------------

  30.5.1. Az IPF engedelyezese

   Az IPF megtalalhato a FreeBSD alaptelepiteseben mint menet ko:zben
   ku:lo:n beto:ltheto" modul. Ha az rc.conf allomanyba beirjuk a
   ipfilter_enable="YES" sort, akkor ez a modul dinamikusan
   beto:lto"dik. A beto:ltheto" modul alapbol naploz es a default
   pass all beallitast tartalmazza. Ha helyette a block all szabalyt
   akarjuk hasznalni, akkor emiatt meg nem kell feltetlenu:l
   ujraforditanunk a FreeBSD rendszermagjat, eleg ha egyszeru"en csak
   a szabalyrendszeru:nk vegere beszurjuk.

     --------------------------------------------------------------

  30.5.2. A rendszermag beallitasai

   Az IPF hasznalatahoz nem ko:telezo" a ko:vetkezo" beallitasokkal
   ujraforditani a FreeBSD rendszermagjat, itt csupan
   hatterinformaciokent szerepel. Amikor az IPF a rendszermagba
   keru:l, a beto:lheto" modulra nem lesz szu:kseg.

   Az IPF a rendszermag forrasai ko:zo:tt talalhato
   /usr/src/sys/conf/NOTES allomanyban megadott beallitasai a
   ko:vetkezo" modon foglalhatoak o:ssze:

 options IPFILTER
 options IPFILTER_LOG
 options IPFILTER_DEFAULT_BLOCK

   Az options IPFILTER engedelyezi az "IPFILTER" tu"zfal tamogatasat.

   Az options IPFILTER_LOG hatasara az IPF az ipl csomagnaplozo
   pszeudo eszko:zre jegyzi fel a forgalmat -- minden olyan szabaly
   eseten, ahol megjelenik a log kulcsszo.

   Az options IPFILTER_DEFAULT_BLOCK megvaltoztatja az
   alapertelmezett viselkedest, tehat minden olyan csomag, amely nem
   illeszkedik a tu"zfal valamelyik pass tipusu (atengedo")
   szabalyara, blokkolasra keru:l.

   Ezek a beallitasok csak azt ko:veto"en ervenyesu:lnek, ha
   forditottunk es telepitettu:nk velu:k egy uj rendszermagot.

     --------------------------------------------------------------

  30.5.3. Az rc.conf allomany beallitasai

   Az /etc/rc.conf allomanyban a ko:vetkezo" utasitasokra lesz
   szu:ksegu:nk az IPF mu"ko:desbe hozasara a rendszer inditasa
   soran:

 ipfilter_enable="YES"             # az ipf tu"zfal inditasa
 ipfilter_rules="/etc/ipf.rules"   # beto:lti a szabalyokat tartalmazo szo:veges allomanyt
 ipmon_enable="YES"                # elinditja az IP monitor naplozasat
 ipmon_flags="-Ds"                 # D = inditas demonkent
                                   # s = naplozas a syslog hasznalataval
                                   # v = a tcp ablak, ack, seq csomagok naplozasa
                                   # n = az IP-cimek es portok feloldasa

   Ha olyan helyi halozat all meg a tu"zfal mo:go:tt, amely egy
   fenntartott privat IP-cimtartomanyt hasznal, akkor meg a
   ko:vetkezo" utasitasokra is szu:ksegu:nk lesz a cimforditas
   bekapcsolasahoz:

 gateway_enable="YES"              # a helyi halozat atjaroja
 ipnat_enable="YES"                # az ipnat funkcio elinditasa
 ipnat_rules="/etc/ipnat.rules"    # az ipnat mu"ko:desehez szu:kseges definiciok

     --------------------------------------------------------------

  30.5.4. IPF

   Az ipf(8) parancs hasznalhato a szabalyokat tartalmazo allomany
   beto:ltesere. Altalaban egy allomanyba irjuk o:ssze a tu"zfal
   szabalyait es ezzel a paranccsal cserelju:k le egyszerre a
   tu"zfalban levo" jelenlegi szabalyokat:

 # ipf -Fa -f /etc/ipf.rules

   Az -Fa az o:sszes belso" szabaly to:rleset jelenti.

   Az -f jelzi, hogy egy allomanybol kell beolvasni a beto:ltendo"
   szabalyokat.

   Ezzel mintegy leheto"segu:nk van valtoztatni a korabban
   o:sszeallitott szabalyainkon, futtatni a fenti IPF parancsot es
   ezen keresztu:l ugy frissiteni a szabalyok friss masolataval a mar
   mu"ko:do" tu"zfalat, hogy nem is kell ujrainditanunk a rendszert.
   Ez a modszer igen kenyelmes az uj szabalyok kiprobalasahoz, mivel
   barmikor tetszo"legesen vegrehajthato.

   Az ipf(8) man oldala tartalmazza a parancsnak megadhato tovabbi
   beallitasokat.

   Az ipf(8) parancs a szabalyokat tarolo allomanyt egy szabvanyos
   szo:veges allomanynak tekinti, semmilyen szimbolikus
   helyettesitest alkalmazo szkriptet nem fogad el.

   Leheto"segu:nk van azonban olyan IPF szabalyokat kesziteni,
   amelyek kiaknazzak a szkriptek szimbolikus helyettesitesenek
   leheto"segeit. Erro"l bo"vebben lasd 30.5.9 Szakasz.

     --------------------------------------------------------------

  30.5.5. Az IPFSTAT

   Az ipfstat(8) alapertelmezes szerint a arra hasznalatos, hogy le
   tudjuk kerdezni es megjeleniteni a tu"zfalhoz tartozo szamlalok
   ertekeit, amelyek a legutobbi inditas vagy az ipf -Z parancs altal
   kiadott lenullazasuk ota a bejo:vo" vagy kimeno" forgalombol a
   megadott szabalyoknak megfelelo" csomagok alapjan gyu"jtenek
   o:ssze statisztikakat.

   A parancs mu"ko:desenek reszleteit az ipfstat(8) man oldalon
   olvashatjuk.

   Az ipfstat(8) meghivasa alapbol igy nez ki:

 input packets: blocked 99286 passed 1255609 nomatch 14686 counted 0
  output packets: blocked 4200 passed 1284345 nomatch 14687 counted 0
  input packets logged: blocked 99286 passed 0
  output packets logged: blocked 0 passed 0
  packets logged: input 0 output 0
  log failures: input 3898 output 0
  fragment state(in): kept 0 lost 0
  fragment state(out): kept 0 lost 0
  packet state(in): kept 169364 lost 0
  packet state(out): kept 431395 lost 0
  ICMP replies: 0 TCP RSTs sent: 0
  Result cache hits(in): 1215208 (out): 1098963
  IN Pullups succeeded: 2 failed: 0
  OUT Pullups succeeded: 0 failed: 0
  Fastroute successes: 0 failures: 0
  TCP cksum fails(in): 0 (out): 0
  Packet log flags set: (0)

   Az -i mint bejo:vo" (inbound), vagy az -o mint kimeno" (outbound)
   forgalomra vonatkozo parameterek megadasaval a rendszermagban az
   adott oldalon jelenleg telepitett es alkalmazott szabalyokat
   kerhetju:k le es jelenithetju:k meg.

   Az ipfstat -in parancs igy a bejo:vo" forgalomra vonatkozo belso"
   szabalyokat mutatja a szabalyok szamaval.

   Az ipfstat -on parancs a kimeno" forgalmat erinto" belso"
   szabalyokat mutatja a szabalyok szamaval.

   Az eredmeny ko:ru:lbelu:l ilyen lesz:

 @1 pass out on xl0 from any to any
 @2 block out on dc0 from any to any
 @3 pass out quick on dc0 proto tcp/udp from any to any keep state

   Az ipfstat -ih a bejo:vo" forgalomhoz tartozo belso" szabalyokat
   mutatja es mindegyik ele odairja, hogy eddig mennyi csomag
   illeszkedett rajuk.

   Az ipfstat -oh ugyanigy a kimento" forgalom eseten mutatja a
   belso" szabalyokat es mindegyik elo"tt feltu:nteti, hogy az adott
   pillanatig mennyi csomag illeszkedett rajuk.

   A kimenete nagyjabol ilyen lesz:

 2451423 pass out on xl0 from any to any
 354727 block out on dc0 from any to any
 430918 pass out quick on dc0 proto tcp/udp from any to any keep state

   Az ipfstat parancs talan egyik legfontosabb funkcioja a -t
   kapcsoloval csalhato elo", melynek hatasara a rendszerben aktiv
   allapotok tablazatat mutatja meg ugyanugy, ahogy a top(1) a
   FreeBSD rendszerben futo programokat. Amikor a tu"zfalunk tamadas
   alatt all, ezzel a funkcioval tudjuk a problemat beazonositani,
   leasni a melyebe es latni a tamadotol erkezo" csomagokat. A
   kiegesziteskeppen megadhato alkapcsolok megadasaval
   kivalaszthatjuk azt a cel vagy forras IP-cimet, portot vagy
   protokollt, amelyet valos ido"ben meg akarunk figyelni. Ennek
   reszleteit az ipfstat(8) man oldalan lathatjuk.

     --------------------------------------------------------------

  30.5.6. Az IPMON

   Az ipmon megfelelo" mu"ko:desehez be kell kapcsolnunk a
   rendszermag IPFILTER_LOG beallitasat. Ez a parancs ket
   ku:lo:nbo:zo" modban hasznalhato. Ha parancsot a -D opcio nelku:l
   gepelju:k be, akkor ezek ko:zu:l alapbol a nativ modot kapjuk meg.

   A demon mod abban az esetben hasznos, ha folyamatosan naplozni
   akarjuk a rendszerben zajlo esemenyeket, majd keso"bb ezeket
   atnezni. Igy kepes egymassal egyu:ttmu"ko:dni a FreeBSD es az
   IPFILTER. A FreeBSD beepitve tartalmaz olyan leheto"seget, aminek
   reven magatol csereli a rendszernaplokat. Ezert ha atku:ldju:k a
   syslogd(8) demonnak a naplozando u:zeneteket, akkor sokkal jobban
   jarunk, mintha egyszeru"en csak mezei allomanyba naploznank. Az
   rc.conf alapertelmezesei ko:zo:tt az ipmon_flags beallitas a -Ds
   kapcsolokat ro:gziti:

 ipmon_flags="-Ds" # D = inditas demonkent
                   # s = naplozas a syslog hasznalataval
                   # v = a tcp ablak, ack, seq csomagok naplozasa
                   # n = az IP-cimek es portok nevenek feloldasa

   Ennek a viselkedesnek az elo"nyei minden bizonnyal egyertelmu"ek.
   Segitsegevel kepesek vagyunk az esetek megto:rtente utan atnezni,
   hogyan milyen csomagokat dobott el a rendszer, azok milyen
   cimekro"l erkeztek es hova szantak. Ez egy komoly fegyver a
   tamadok lenyomozasaban.

   Hiaba engedelyezzu:k a naplozast, az IPF o:nszantabol semmilyen
   naplozasi szabalyt nem fog gyartani. A tu"zfal gazdajanak kell
   eldo:ntenie, hogy a szabalyokat ko:zu:l melyiket akarja naplozni,
   es igy neki kell megadnia a log kulcsszot ezekben az esetekben.
   Normalis esetben csak a deny szabalyokat naplozzak.

   Egyaltalan nem ritka, hogy a szabalyrendszer vegen egy
   alapertelmezes szerint mindent eldobo szabaly all, amely naploz.
   Ezzel leheto"segu:nk nyilik ro:gziteni azokat a csomagokat,
   amelyek egyetlen szabalyra sem illeszkedtek.

     --------------------------------------------------------------

  30.5.7. Naplozas az IPMON hasznalataval

   A syslogd egy sajat modszert alkalmaz a naplozott adatok
   elku:lo:nitesere. Egy "funkciok" (facility) es "szintek" (level)
   segitsegevel kialakitott specialis csoportositast alkalmaz. Az
   IPMON -Ds modja a security (biztonsag) "funkciot" hasznalja. Tehat
   az IPMON altal naplozott o:sszes adat a security csoportjaba
   keru:l. Ezen tul a ko:vetkezo" szinteken ku:lo:nithetju:k el
   igenyeinknek megfelelo"en a naplozott adatokat:

 LOG_INFO - az atengedes vagy blokkolas helyett a "log" kulcsszoval ellatott csomagok
 LOG_NOTICE - az at is engedett csomagok
 LOG_WARNING - a blokkolt csomagok
 LOG_ERR - a naplozott csomagok ko:zu:l azok, amelyek tulsagosan kicsik (hibas a fejlecu:k)

   Az IPFILTER csak akkor tud naplozni a /var/log/ipfilter.log
   allomanyba, ha elo"tte letrehozzuk. Az alabbi parancs erre
   to:keletesen megfelelo":

 # touch /var/log/ipfilter.log

   A syslogd(8) mu"ko:deset az /etc/syslog.conf allomanyban szereplo"
   definiciok vezerlik. A syslog.conf allomany szamottevo" mertekben
   kepes meghatarozni azt, ahogy a syslog az IPF es a hozza hasonlo
   alkalmazasoktol kapott rendszerszintu" u:zeneteket kezeli.

   Az /etc/syslog.conf allomanyba az alabbi sor kell felvennu:nk:

 security.* /var/log/ipfilter.log

   A security.* megadasaval az o:sszes ilyen tipusu u:zenet egy
   elo"re ro:gzitett helyre keru:l.

   Az /etc/syslog.conf allomanyban elvegzett modositasokat ugy
   leptethetju:k ervenybe, ha ujrainditjuk a szamitogepet vagy az
   /etc/rc.d/syslogd reload paranccsal megkerju:k a syslogd(8)
   demont, hogy olvassa ujra az /etc/syslog.conf allomanyt.

   Az iment letrehozott naplot ne felejtsu:k el megadni az
   /etc/newsyslog.conf allomanyban sem, es akkor ezzel a cserejet is
   megoldjuk.

     --------------------------------------------------------------

  30.5.8. A naplozott u:zenetek formatuma

   Az ipmon altal letrehozott u:zenetek whitespace karakterekkel
   elvalasztott adatmezo"kbo"l allnak. A ko:vetkezo" mezo"k az
   o:sszes u:zenet eseteben megjelennek:

    1. A csomag megerkezesenek datuma

    2. A csomag megerkezesenek ido"pontja. OO:PP:MM.E alakban
       jelennek meg az orak, percek, masodpercek es ezredmasodpercek
       (ez to:bb szamjegy hosszu is lehet) szerint

    3. Azon interfesz a neve, ahol a csomag feldolgozasra keru:lt,
       peldaul dc0

    4. A szabalyhoz tartozo csoport es sorszam, peldaul @0:17

   Ezek az ipfstat -in paranccsal nezheto"ek meg.

    1. Cselekves: a p mint atment (passed), b mint blokkolt
       (blocked), S mint ro:vid csomag (short packet), n mint egyik
       szabalyra sem illeszkedett (not match), L mint naplozas (log).
       A modositok megjelenitesenek sorrendje: S, p, b, n, L. A
       nagybetu"s P es B azt jelzi, hogy a csomagot egy felso"bb
       szintu" beallitas miatt naploztak, nem egy szabaly hatasara.

    2. Cimek: ez tulajdonkeppen harom mezo"t takar: a forras cimet es
       portot (melyet egy vesszo" valaszt el), a -> jelet es cel
       cimet es portot. Peldaul: 209.53.17.22,80 ->
       198.73.220.17,1722.

    3. A PR utan a protokoll neve vagy szama olvashato, peldaul PR
       tcp.

    4. A len csomaghoz tartozo fejlec es to:rzsenek teljes hosszat
       jelo:li, peldaul len 20 40.

   Amennyiben a csomag TCP, egy ko:to"jellel kezdo"do"en tovabbi
   mezo"k is megjelenhetnek a beallitott opcioknak megfelelo" betu"k
   kepeben. A betu"ket es beallitasaikat az ipmon(8) man oldalan
   olvashatjuk.

   Amennyiben a csomag ICMP, a sort ket mezo" zarja, melyek ko:zu:l
   az elso" tartalma mindig "ICMP", es ezt egy perjellel elvalasztva
   az ICMP u:zenet tipusa es altipusa ko:veti. Tehat peldaul az ICMP
   3/3 a "nem elerheto" port" u:zenetet hordozza.

     --------------------------------------------------------------

  30.5.9. A szabalyok felirasa szimbolikus helyettesitessel

   Az IPF hasznalataban gyakorlott felhasznalok ko:zu:l nehanyan
   kepesek olyan stilusu szabalyrendszert kesziteni, ahol szimbolikus
   helyettesitest hasznalnak. Ennek az egyik legnagyobb elo"nye az,
   hogy ilyenkor eleg csak a szimbolikus nevhez tartozo erteket
   megvaltoztatni es amikor a szkript lefut, akkor az o:sszes ra
   hivatkozo szabalyba ez keru:l be. Szkript leven a szimbolikus
   helyettesitessel ki tudjuk emelni a gyakran hasznalt ertekeket es
   behelyettesiteni ezeket to:bb helyre. Ezt a most ko:vetkezo"
   peldaban lathatjuk.

   Az itt alkalmazott feliras kompatibilis az sh(1), csh(1) es
   tcsh(1) parancsertelmezo"kkel.

   A szimbolikus helyettesitest egy dollarjellel fejezzu:k ki: $.

   A szimbolikus mezo"kben nem szerepel a $ jelo:les.

   A szimbolikus mezo" tartalmat ketto"s idezo"jelbe (") tesszu:k.

   Kezdju:k igy el a szabalyok irasat:

 ######### Az IPF szabalyait tartalmazo szkript eleje ###########

 oif="dc0"            # a kimeno" interfesz neve
 odns="192.0.2.11"    # az internet szolgaltato nevszerverenek IP-cime
 myip="192.0.2.7"     # a szolgaltatotol kapott statikus IP-cimu:nk
 ks="keep state"
 fks="flags S keep state"

 # Valaszthatunk, hogy az /etc/ipf.rules allomanyt ebbo"l a szkriptbo"l
 # hozzuk letre vagy futtathatjuk "magat" a szkriptet.
 #
 # Egyszerre csak az egyik sort hasznaljuk.
 #
 # 1) Ezzel gyarhatjuk le az /etc/ipf.rules allomanyt:
 #cat > /etc/ipf.rules << EOF
 #
 # 2) Ezzel futtathajuk "magat" a szkriptet:
 /sbin/ipf -Fa -f - << EOF

 # Engedelyezzu:k a szolgaltato nevszerverenek elereset.
 pass out quick on $oif proto tcp from any to $odns port = 53 $fks
 pass out quick on $oif proto udp from any to $odns port = 53 $ks

 # Engedelyezzu:k kifele a titkositatlan www funkciot.
 pass out quick on $oif proto tcp from $myip to any port = 80 $fks

 # Engedelyezzu:k kifele a TLS SSL felett u:zemelo" titkositott www funkciot.
 pass out quick on $oif proto tcp from $myip to any port = 443 $fks
 EOF
 ################## Itt az IPF szkript vege ########################

   Ennyi lenne. A peldaban szereplo" szabalyok most nem annyira
   lenyegesek, a hangsuly most igazabol a szimbolikus helyettesitesen
   es annak hasznalatan van. Ha a fenti peldat az
   /etc/ipf.rules.script allomanyba mentju:k, akkor ezeket a
   szabalyokat a ko:vetkezo" paranccsal ujra tudjuk to:lteni:

 # sh /etc/ipf.rules.script

   Egyetlen aprocska gond van a beagyazott szimbolumokat tartalmazo
   allomanyokkal: az IPF maga nem kepes megerteni a
   helyettesiteseket, azert ko:zvetlenu:l nem olvassa a szkriptet.

   Ez a szkript ket modon hasznosithato:

     * Vegyu:k ki megjegyzesbo"l a cat paranccsal kezdo"do" sort, es
       tegyu:k megjegyzesbe az /sbin/ipf kezdetu"t. A megszokottak
       szerint tegyu:k az ipfilter_enable="YES" sort az /etc/rc.conf
       allomanyba, majd minden egyes modositasa utan futtassuk le a
       szkriptet az /etc/ipf.rules allomany letrehozasahoz vagy
       frissitesehez.

     * Tiltsuk le az IPFILTER aktivalasat a rendszerinditaskor, tehat
       irjuk bele az ipfilter_enable="NO" sort (ami mellesleg az
       alapertelmezett erteke) az /etc/rc.conf allomanyba.

       Tegyu:nk egy, az alabbi szkripthez hasonlot az
       /usr/local/etc/rc.d/ ko:nyvtarba. A szkriptnek adjuk
       valamilyen ertelmes nevet, peldaul ipf.loadrules.sh. Az .sh
       kiterjesztes hasznalata ko:telezo".

 #!/bin/sh
 sh /etc/ipf.rules.script

       A szkript engedelyeit allitsuk be ugy, hogy a root
       tulajdonaban legyen es kepes legyen olvasni, irni valamint
       vegrehajtani.

 # chmod 700 /usr/local/etc/rc.d/ipf.loadrules.sh

   Most miutan a rendszer elindult, az IPF szabalyai be fognak
   to:lto"dni.

     --------------------------------------------------------------

  30.5.10. Szabalyrendszerek az IPF-ben

   Az IPF eseteben a szabalyrendszer olyan szabalyokbol all, amelyek
   a csomagokrol tartalmuk alapjan eldo:ntik, hogy at kell engedni
   vagy vissza kell tartani. A gepek ko:zt ket iranyban aramlo
   csomagok egy munkamenet alapu tarsalgast kepeznek. A tu"zfalhoz
   tartozo szabalyrendszer egyarant feldolgozza a internetro"l a
   halozatunk fele igyekvo" csomagokat, illetve a halozatunk ezekre
   adott valaszait. Az egyes TCP/IP szolgaltatasokat (mint peldaul
   telnet, www, levelezes stb.) a hozzajuk tartozo protokol es
   szabvanyos (fogado) portszam irja le. Ezekre a forrasrol altalaban
   valamilyen nem szabvanyos (magasabb erteku") portrol erkeznek
   csomagok. Ekkor a kommunikacio o:sszes parametere (vagyis a portok
   es cimek) barmelyike alapjan definialhatunk blokkolast vagy
   tovabbengedest leiro szabalyokat.

   Az IPF eredetileg ugy irodott, hogy a szabalyokat "az utolso
   illeszkedo" szabaly nyer" stilusban dolgozza fel es csak allapot
   nelku:li szabalyokat ismert. Az ido"k folyaman az IPF szabalyai
   kiegeszu:ltek a "quick" es az allapottartasra vonatkozo "keep
   state" opciokkal, amelynek ko:szo:nheto"en oriasi mertekben
   korszeru"so:do:tt a szabalyok feldolgozasa.

   A szakaszban szereplo" utasitasok olyan szabalyokat alkalmaznak,
   amelyekben egyarant szerepel a "quick" es az allapottartasert
   felelo"s "keep state" beallitas. Ez az inkluziv tu"zfalak
   letrehozasanak egyik alapeszko:ze.

     Figyelem: A tu"zfal szabalyainak o:sszeallitasa soran nagyon
     ovatosnak kell lennu:nk! Bizonyos beallitasok hatasara akar ki
     is zarhatjuk magunkat a szerveru:nkro"l. Az ebbo"l fakado
     esetleges kellemetlensegek elkeru:lese erdekeben javasoljuk,
     hogy a tu"zfal alapjait elo"szo:r helyi konzolrol epitsu:k fel,
     ne pedig tavolrol, peldaul ssh segitsegevel.

     --------------------------------------------------------------

  30.5.11. A szabalyok felepitese

   A szabalyok felepitesenek bemutatasat itt most leszu"kitju:k a
   modern allapottarto szabalyokra es az "elso" illeszkedo" szabaly
   nyer" tipusu feldolgozasra. A szabalyok felirasanak regebbi modjai
   az ipf(8) man oldalon talalhatoak.

   A # karakterrel egy megjegyzes kezdetet jelezzu:k, es altalaban a
   sor vegen vagy egy ku:lo:n sorban bukkan fel. Az u:res sorokat a
   rendszer nem veszi figyelembe.

   A szabalyok kulcsszavakat tartalmaznak. Ezeknek a kulcsszavaknak
   balrol jobbra haladva adott sorrendben kell szerepelniu:k. A
   kulcsszavakat kiemeltu:k. Egyes kulcsszavakhoz tovabbi beallitasok
   is tartozhatnak, amelyek maguk is kulcsszavak lehetnek, es meg
   tovabbi opciokkal rendelkezhetnek. Az alabbi nyelvtan mindegyik
   elemet kiemeltu:k es az alabbiakban egyenkent kifejtju:k a
   reszleteiket.

   CSELEKVES BE-KI OPCIOK SZU"RES ALLAPOTTARTO PROTOKOLL
   FORRAS_CIM,CEL_CIM OBJEKTUM PORTSZAM TCP_BEALLITAS ALLAPOTTARTO

   CSELEKVES = block | pass

   BE-KI = in | out

   OPCIOK = log | quick | on interfesz

   SZU"RES = proto ertek | forras/cel IP | port = szam | flags
   beallitas

   PROTOKOLL = tcp/udp | udp | tcp | icmp

   FORRAS_CIM,CEL_CIM = all | from objektum to objektum

   OBJEKTUM = IP-cim | any

   PORTSZAM = portszam

   TCP_BEALLITAS = S

   ALLAPOTTARTO = keep state

     --------------------------------------------------------------

    30.5.11.1. CSELEKVES

   A cselekves hatarozza meg, hogy mit kell tenni azokkal a
   csomagokkal, amelyek illeszkednek a szabaly to:bbi reszere. Minden
   szabalyhoz tartoznia kell egy cselekvesnek. A ko:vetkezo"
   cselekvesek ko:zu:l valaszthatunk:

   A block megadasaval a szabalyban szereplo" szu"resi feltetelre
   illeszkedo" csomagot eldobjuk.

   A pass megadasaval a szabalyban szereplo" szu"resi feltetelre
   illeszkedo" csomagot atengedju:k a tu"zfalon.

     --------------------------------------------------------------

    30.5.11.2. BE-KI

   Az o:sszes szu"resi szabaly eseteben ko:telezo" egyertelmu"en
   nyilatkozunk arrol, hogy a bemeno" vagy a kimeno" forgalomra
   vonatkozik. Ezert a ko:vetkezo" kulcsszo vagy az in vagy pedig az
   out, de ko:zu:lu:k egyszerre csak az egyiket szabad hasznalni,
   masku:lo:nben a szabaly hibasnak mino"su:l.

   Az in jelenti, hogy a szabalyt az internet felo"l az adott
   interfeszen beerkezo" csomagokra kell alkalmazni.

   Az out jelenti, hogy a szabalyt az internet fele az adott
   interfeszen kiku:ldo:tt csomagokra kell alkalmazni.

     --------------------------------------------------------------

    30.5.11.3. OPCIOK

     Megjegyzes: Ezek az opciok csak a lentebb bemutatott sorrendben
     hasznalhatok.

   A log jelzi, hogy illeszkedes eseten a csomag fejlecet az ipl
   eszko:zo:n keresztu:l naplozni kell (lasd a naplozasrol szolo
   szakaszt).

   A quickjelzi, hogy illeszkedes eseten ez lesz a legutolsonak
   elleno"rzo:tt szabaly es igy egy olyan "ro:vidzarat" tudunk
   kepezni a feldolgozasban, amellyel elkeru:lju:k a csomagra
   egyebkent vonatkozo to:bbi szabaly illeszteset. Ez az opcio a
   korszeru"sitett szabalyfeldolgozas kihasznalasahoz
   elengedhetetlen.

   Az on hasznalataval a szu"res feltetelei ko:ze bevonhatjuk a
   csomaghoz tartozo halozati interfeszt. Itt az interfeszek az
   ifconfig(8) altal megjelenitett formaban adhatoak meg. Az opcio
   megadasaval csak az adott interfeszen az adott iranyba
   (befele/kifele) ko:zlekedo" csomagokra fog illeszkedni a szabaly.
   Ez az opcio a korszeru"sitett szabalyfeldolgozas kihasznalasahoz
   nelku:lo:zhetetlen.

   Amikor naplozunk egy csomagot, akkor a hozzatartozo fejlec az IPL
   csomagnaplozo pszeudo eszko:zho:z keru:l. A log kulcsszo utan
   ko:zvetlenu:l a ko:vetkezo" mino"sito"k szerepelhetnek (a
   ko:vetkezo" sorrendben):

   A body jelzi, hogy a csomag tartalmanak elso" 128 byte-jat meg
   jegyezzu:k fel a fejlec melle.

   A first mino"sito"t akkor erdemes hasznalnunk, amikor a log
   kulcsszot a keep state opcioval egyu:tt alkalmazzuk, mivel
   ilyenkor csak a szabalyt kialakito csomag keru:l naplozasra es nem
   minden olyan, ami illeszkedik az allapottartasi feltetelekre.

     --------------------------------------------------------------

    30.5.11.4. SZU"RES

   Ebben a szakaszban olyan kulcsszavak jelenhetnek meg, amelyekkel a
   csomagok ku:lo:nfele tulajdonsagai alapjan itelkezhetu:nk azok
   illeszkedesero"l. Itt adott egy kiindulo kulcsszo, amelyhez
   tovabbi kulcsszavak is tartoznak, es amelyek ko:zu:l csak egyet
   valaszthatunk. Az alabbi altalanos tulajdonsagok alapjan tudjuk
   szu"rni a csomagokat, ebben a sorrendben:

     --------------------------------------------------------------

    30.5.11.5. PROTOKOLL

   A proto egy olyan kulcsszo, amelyhez hozza kell rendelnu:nk meg
   valamelyik opciojat is. Ez az opcio segit az adott protokolloknak
   megfelelo"en valogatni a csomagok ko:zo:tt. A korszeru"sitett
   szabalyfeldolgozas leheto"segeinek kihasznalasahoz
   nelku:lo:zhetetlen.

   Opciokent a tcp/udp | udp | tcp | icmp, vagy barmelyik, az
   /etc/protocols allomanyban megtalalhato kulcsszo felhasznalhato. A
   tcp/udp ebbo"l a szempontbol specialisnak tekintheto", mivel
   hatasara egyszerre illesztheto"ek a szabalyra a TCP es UDP
   csomagok, es igy a protokolltol eltekintve azonos szabalyok
   felesleges to:bbszo:ro:zeset keru:lhetju:k el.

     --------------------------------------------------------------

    30.5.11.6. FORRAS_CIM/CEL_CIM

   Az all kulcsszo gyakorlatilag a "from any to any" ("barhonnan
   barhova") szinonimaja es nem tartozik hozza parameter.

   A from forras to cel felepitese: a from es to kulcsszavak az
   IP-cimek illesztesere hasznalhatoak. Ilyenkor a szabalyokban a
   forras es a cel parametereknek is szerepelniu:k kell. Az any egy
   olyan specialis kulcsszo, amely tetszo"leges IP-cimre illeszkedik.
   Nehany pelda az alkalmazasara: from any to any vagy from 0.0.0.0/0
   to any, from any to 0.0.0.0/0, from 0.0.0.0/0 to any vagy from any
   to 0.0.0.0.

   Az IP-cimek megadhatoak pontozott numerikus formaban a halozati
   maszk bitekben mert hosszaval egyu:tt, vagy akar egyetlen
   pontozott numerikus IP-cimkent.

   Nincs leheto"seg olyan IP-cimtartomanyok illesztesere, amelyek nem
   adhatoak meg kenyelmesen ponttal elvalasztott szamok es maszk
   hosszaval. A net-mgmt/ipcalc port az ilyen szamitasokat ko:nnyiti
   meg. A halozati maszkok hosszanak megallapitasban segithet az
   emlitett segedprogram (angol nyelvu") honlapja:
   http://jodies.de/ipcalc.

     --------------------------------------------------------------

    30.5.11.7. PORT

   Amikor portra vonatkozo illeszkedest irunk elo", megadhatjuk a
   forrasra es celra, amit aztan vagy csak TCP vagy pedig csak UDP
   csomagokra alkalmazunk. A portok felteteleinek megfogalmazasanal
   hasznalhatjuk a portok szamat vagy az /etc/services allomanyban
   szereplo" nevu:ket. Amikor a port egy from tipusu objektum
   leirasaban jelenik meg, akkor automatikusan a forrasportot
   jelenti, mig a to objektum leirasaban pedig a celportot. A to
   objektumoknal a port megadasa elengedhetetlen a korszeru"sitett
   szabalyfeldolgozas elo"nyeinek kihasznalasahoz. Pelda: from any to
   any port = 80.

   Az egyes portokat ku:lo:nbo:zo" mu"veletek segitsegevel,
   numerikusan hasonlithatjuk o:ssze, ahol akar porttartomanyt is
   megadhatunk.

   port "=" | "!=" | "<" | ">" | "<=" | ">=" | "eq" | "ne" | "lt" |
   "gt" | "le" | "ge".

   A porttartomanyok megadasahoz hasznaljuk a port "<>" | "><"
   felirasi modot.

     Figyelem: A forrasra es celra vonatkozo parameterek utan
     szereplo" masik ket parameter nelku:lo:zhetetlen a
     korszeru"sitett szabalyfeldolgozas mu"ko:desehez.

     --------------------------------------------------------------

    30.5.11.8. TCP_BEALLITAS

   A beallitasok csak a TCP forgalom szu"resenel ervenyesu:lnek. A
   betu"k jelo:lik azokat a lehetseges beallitasokat, amelyek a TCP
   csomagok fejleceben megvizsgalhatoak.

   A korszeru"sitett szabalyfeldolgozas a flags S parameter
   segitsegevel ismeri fel a TCP munkameneteket kezdemenyezo"
   kereseket.

     --------------------------------------------------------------

    30.5.11.9. ALLAPOTTARTO

   A keep state jelzi, hogy a szabaly parametereinek megfelelo"
   barmely csomag aktivalja az allapottarto szu"res hasznalatat.

     Megjegyzes: Ez a beallitas feltetlenu:l szu:kseges a
     korszeru"sitett szabalyfeldolgozas megfelelo" kihasznalasahoz.

     --------------------------------------------------------------

  30.5.12. Allapottarto csomagszu"res

   Az allapottarto szu"res a csomagok ketiranyu aramlasat egy
   letrejo:tt kapcsolatba sorolja be. Amikor aktivalodik, az
   allapottarto szabaly elo"re dinamikusan letrehozza a ketiranyu
   kommunikacioban megfordulo csomagokhoz a megfelelo" belso"
   szabalyokat. Olyan vizsgalatokat vegez, amelyek segitsegevel ki
   tudja deriteni, hogy a csomag ku:ldo"je es cimzettje ko:zo:tt
   fennallo ketiranyu kapcsolat ervenyes szabalyok szerint zajlik-e.
   Minden olyan csomagot, amely nem illeszkedik megfelelo"en a
   kapcsolatra vonatkozo semara, csalasnak tekintju:k es
   automatikusan eldobjuk.

   Az allapottartas reven leheto"segu:nk van a TCP vagy UDP
   kapcsolatokhoz tartozo ICMP csomagokat is atengedni a tu"zfalon.
   Tehat ha kapunk egy 3-as tipusu, 4-es kodu ICMP valaszt valamilyen
   bo:ngeszesre hasznalt allapottarto szabalyon keresztu:l
   kiku:ldo:tt keresre, akkor az automatikusan bejo:het. Amelyik
   csomagot az IPF egyertelmu"en kepes besorolni az aktiv
   kapcsolatba, meg ha az eltero" protokollt is hasznal, beengedi.

   Ami ilyenkor to:rtenik:

   Az internethez csatlakozo interfeszen keresztu:l kifele halado
   csomagokat elo"szo:r egy dinamikus allapottabla alapjan
   illesztju:k, es ha a csomag illeszkedik az aktiv kapcsolatban
   ko:vetkezo"kent vart csomagra, akkor atmegy a tu"zfalon es a
   dinamikus allapottablaban frissu:l a kapcsolat allapota. Az aktiv
   munkameneten kivu:l csomagok pedig egyszeru"en a kimeno"
   szabalyrendszer szerint keru:lnek elleno"rzesre.

   Hasonloan az elo"zo"ho:z, az internethez csatlakozo interfeszen
   keresztu:l befele halado csomagokat elo"szo:r egy dinamikus
   allapottabla alapjan illesztju:k, es ha a csomag illeszkedik az
   aktiv kapcsolatban ko:vetkezo"kent vart csomagra, akkor atmegy a
   tu"zfalon es a dinamikus allapottablaban frissu:l a kapcsolat
   allapota. Az aktiv munkamenethez nem tartozo csomagok pedig
   egyszeru"en a bejo:vo" szabalyrendszer szerint keru:lnek
   elleno"rzesre.

   Amikor egy kapcsolat befejezo"dik, automatikusan to:rlo"dik a
   dinamikus allapottablabol.

   Az allapottarto csomagszu"res hasznalataval az ujonnan keletkezo"
   kapcsolatok elutasitasara vagy engedelyezesere tudunk
   koncentralni. Ha engedelyeztu:k egy uj kapcsolat letrejo:ttet,
   akkor a rako:vetkezo" o:sszes to:bbi csomag automatikusan atmegy a
   tu"zfalon es minden mas hamis csomag eldobodik. Ha tiltjuk az uj
   kapcsolatot, akkor egyetlen rako:vetkezo" csomag sem juthat at. Az
   allapottarto szu"res altal felkinalt fejlett elemzesi leheto"segek
   kepesek vedelmet nyujtani a behatolok reszero"l alkalmazott
   megannyi ku:lo:nbo:zo" tamadasi modszer ellen.

     --------------------------------------------------------------

  30.5.13. Pelda inkluziv szabalyrendszerre

   A most ko:vetkezo" szabalyrendszer arra mutat peldat, hogyan
   programozzunk le egy nagyon biztonsagos inkluziv tu"zfalat. Az
   inkluziv tu"zfalak csak a szabalyainak megfelelo" szolgaltatasokat
   engedik keresztu:l, es alapertelmezes szerint minden mast
   blokkolnak. Egy halozat gepeit vedo" tu"zfalnak, amelyet gyakran
   "halozati tu"zfalnak" (network firewall) is neveznek, legalabb ket
   halozati interfesszel kell rendelkeznie. Ezeket az interfeszeket
   altalaban ugy allitjak be, hogy to:keletesen megbiznak az egyik
   oldalban (a helyi halozatban), a masikban (az internetben) pedig
   egyaltalan nem. A tu"zfalat egyebkent ugy is beallithatjuk, hogy
   csak a tu"zfalat mu"ko:dteto" gepet vedje -- ezt "egyrendszeres
   tu"zfalnak" (host based firewall) nevezik. Az ilyen tipusu
   megoldasokat nem biztonsagos halozaton keresztu:l kommunikalo
   szervereknel alkalmaznak.

   Mindegyik UNIX-tipusu rendszert, ko:ztu:k a FreeBSD-t is ugy
   alakitottak ki, hogy az operacios rendszeren belu:li kommunikacio
   az lo0 interfeszen es a 127.0.0.1 IP-cimen keresztu:l to:rtenik. A
   tu"zfal szabalyai ko:zo:tt feltetlenu:l szerepelniu:k kell
   olyanoknak, amelyek leheto"ve teszik ezen a specialis intefeszen a
   csomagok zavartalan mozgasat.

   Az internetre csatlakozo interfeszhez kell rendelni a kifele es
   befele halado forgalom hitelesiteset e a hozzaferesenek
   vezerleset. Ez lehet a felhasznaloi PPP altal letrehozott tun0
   interfesz vagy a DSL-, illetve kabelmodemhez csatlakozo halozati
   kartya.

   Ahol egy vagy to:bb halozati kartya is csatlakozik to:bb
   ku:lo:nbo:zo" helyi halozathoz, ugy kell beallitani a hozzajuk
   tartozo interfeszeket, hogy egymas fele es az internet fele
   kepesek legyenek ku:ldeni es fogadni.

   A szabalyokat elo"szo:r harom nagy csoportba kell szerveznu:nk:
   elo"szo:r jo:nnek a megbizhato interfeszek, ezeket ko:vetik az
   internet fele mutato interfeszek, vegu:l internet felo"l jo:vo",
   nem megbizhato interfeszeke.

   Az egyes csoportokban szereplo" szabalyokat ugy kell megadni, hogy
   ko:zu:lu:k elo"re keru:ljenek a leggyakrabban alkalmazottak, es a
   csoport utolso szabalya blokkoljon es naplozzon minden csomagot az
   adott interfeszen es iranyban.

   A kimeno" forgalomat vezerlo" szabalyrendszer csak pass (tehat
   atengedo") szabalyokat tartalmazhat, amelyek bentro"l az
   interneten elerheto" szolgaltatasokat azonositjak egyertelmu"en.
   Az o:sszes ilyen szabalyban meg kell jelenni a quick, on, proto,
   port es keep state beallitasoknak. A proto tcp szabalyok eseteben
   meg kell adni a flag opciot is, amivel fel tudjuk ismertetni a
   kapcsolatok keletkezeset es ezen keresztu:l aktivalni az
   allapottartast.

   A bejo:vo" forgalmat vezerlo" szabalyrendszerben elo"szo:r az
   eldobni kivant csomagokat kell megadni, aminek ket eltero" oka
   van. Elo"szo:r is elo"fordulhat, hogy a veszelyes csomagok
   reszleges illeszkedes miatt szabalyosnak tu"nnek. Az ilyen
   csomagokat ertelemszeru"en nem lenne szabad beengedni a szabalyok
   reszleges megfelelese alapjan. A masodszor az eleve ismerten
   problemas es ertelmetlen csomagokat csendben el kellene vetni,
   mielo"tt a szakaszhoz tartozo utolso szabaly fogna meg es
   naplozna. Ez az utolso szabaly egyebkent szu:kseg eseten
   felhasznalhato a tamadok elleni bizonyitekok begyu"jtesere.

   A masik, amire meg oda kell figyelnu:nk, hogy a blokkolt csomagok
   eseteben semmilyen valasz nem keletkezzen, egyszeru"en csak
   tu"njenek el. Igy a tamado nem fogja tudni, hogy a csomagjai vajon
   elertek-e a rendszeru:nket. Minel kevesebb informaciot tudnak
   o:sszegyu"jteni a rendszeru:nkro"l a tamadok, annal to:bb ido"t
   kell szanniuk csinyteveseik kieszelesere. A log first opciot
   tartalmazo szabalyok csak az illeszkedesnel fogjak naplozni a
   hozzajuk tartozo esemenyt. Erre lathatunk peldat az nmap OS
   fingerprint szabalynal. Az security/nmap segedprogramot a tamadok
   gyakran alkalmazzak a megtamadni kivant szerver operacios
   rendszerenek felderitesere.

   Minden log first opcioval megadott szabaly illeszkedesenel a
   ipfstat -hio parancs meghatarozodik az eddigi illeszkedesek
   aktualis szama. Nagyobb ertekek eseteben ko:vetkeztethetu:nk arra,
   hogy a rendszeru:nket megtamadtak (vagyis csomagokkal arasztjak
   eppen el).

   Az ismeretlen portszamok felderitesere az /etc/services allomany,
   esetleg a http://www.securitystats.com/tools/portsearch.php (angol
   nyelvu") honlap hasznalhato.

   Erdemes tovabba megnezni a trojai programok altal hasznalt
   portokat a http://www.simovits.com/trojans/trojans.html cimen
   (angolul).

   A ko:vetkezo" szabalyrendszer egy olyan biztonsagos "inkluziv"
   tipusu tu"zfal, amelyet eles rendszeren is hasznalnak. Ezt a
   rendszeru:nko:n nem hasznalt szolgaltatasokra vonatkozo pass
   szabalyok to:rlesevel ko:nnyeden a sajat igenyeink szerint
   alakithatjuk.

   Ha nem akarunk latni bizonyos u:zeneteket, akkor vegyu:nk fel
   hozzajuk egy block tipusu szabalyt a befele iranyulo forgalomhoz
   tartozo szabalyok ko:ze.

   A szabalyokban irjuk at a dc0 interfesz nevet annak a halozati
   kartyanak az interfeszere, amelyen keresztu:l csatlakozunk az
   internethez. A felhasznaloi PPP eseteben ez a tun0 lesz.

   Tehat a ko:vetkezo"ket kell beirni az /etc/ipf.rules allomanyba:

 #################################################################
 # A helyi halozatunkon zajlo forgalmat ne korlatozzuk.
 # Csak akkor kell, ha helyi halozathoz is csatlakozunk.
 #################################################################

 #pass out quick on xl0 all
 #pass in quick on xl0 all

 #################################################################
 # A belso" interfeszen szinten ne korlatozzunk semmit.
 #################################################################
 pass in quick on lo0 all
 pass out quick on lo0 all

 #################################################################
 # Az internet fele forgalmazo interfesz (kimeno" kapcsolatok)
 # A sajat halozatunkrol belu:lro"l vagy erro"l az atjarorol
 # kezdemenyezett kapcsolatokat vizsgaljuk az internet fele.
 #################################################################

 # Engedelyezzu:k az internet szolgaltatok nevszerverenek elereset,
 # az "xxx" helyett a nevszervet IP-cimet kell megadni.
 # Masoljuk le ezeket a sorokat, ha a szolgaltatonknak to:bb
 # nevszerveret is beakarjuk allitani. A cimeiket az /etc/resolv.conf
 # allomanyban talaljuk.
 pass out quick on dc0 proto tcp from any to xxx port = 53 flags S keep state
 pass out quick on dc0 proto udp from any to xxx port = 53 keep state

 # DSL vagy kabeles halozatoknal engedelyezzu:k a
 # szolgaltatonk DHCP szerverenek elereset.
 # Ez a szabaly nem kell, ha "felhasznaloi PPP"-vel
 # kapcsolodunk az internethez, ilyenkor tehat az egesz
 # csoport to:ro:lheto".
 # Hasznaljuk az alabbi szabalyt es keressu:k meg a naploban az
 # IP-cimet. Ha megtalaltuk, akkor tegyu:k bele a megjegyzesben
 # szereplo" szabalyba es to:ro:lju:k az elso" szabalyt.
 pass out log quick on dc0 proto udp from any to any port = 67 keep state
 #pass out quick on dc0 proto udp from any to z.z.z.z port = 67 keep state

 # Kifele engedelyezzu:k a szabvanyos nem biztonsagos WWW funkciokat.
 pass out quick on dc0 proto tcp from any to any port = 80 flags S keep state

 # Kifele engedelyezzu:k a biztonsagos WWW funkciokat TLS SSL
 # protokollal.
 pass out quick on dc0 proto tcp from any to any port = 443 flags S keep state

 # Kifele engedelyezzu:k az e-mailek ku:ldeset es fogadasat.
 pass out quick on dc0 proto tcp from any to any port = 110 flags S keep state
 pass out quick on dc0 proto tcp from any to any port = 25 flags S keep state

 # Kifele engedelyezzu:k az ido" szolgaltatast.
 pass out quick on dc0 proto tcp from any to any port = 37 flags S keep state

 # Kifele engedelyezzu:k az nntp hireket.
 pass out quick on dc0 proto tcp from any to any port = 119 flags S keep state

 # Kifele engedelyezzu:k az atjarorol es a helyi halozatrol a nem
 # biztonsagos FTP hasznalatat (passziv es akiv modokban is). Ez a
 # funkcio a mu"ko:desehez a nat szabalyokat tartalmazo allomanyban
 # hivatkozott FTP proxyt hasznalja. Amennyiben a pkg_add paranccsal
 # csomagokat akarunk telepiteni az atjarora, erre a szabalyra
 # mindenkeppen szu:ksegu:nk lesz.
 pass out quick on dc0 proto tcp from any to any port = 21 flags S keep state

 # Kifele engedelyezzu:k az ssh/sftp/scp # (biztonsagos telnet/rlogin/FTP)
 # szolgaltatasok # elereset az SSH (secure shell) hasznalataval.
 pass out quick on dc0 proto tcp from any to any port = 22 flags S keep state

 # Kifele engedelyezzu:k a nem biztonsagos telnet elereset.
 pass out quick on dc0 proto tcp from any to any port = 23 flags S keep state

 # Kifele engedelyezzu:k FreeBSD CVSUp funkciojat.
 pass out quick on dc0 proto tcp from any to any port = 5999 flags S keep state

 # Kifele engedelyezzu:k a pinget.
 pass out quick on dc0 proto icmp from any to any icmp-type 8 keep state

 # Kifele engedelyezzu:k a helyi halozatrol erkezo" whois kereseket.
 pass out quick on dc0 proto tcp from any to any port = 43 flags S keep state

 # Minden mast eldobunk es naplozzuk az elso" elo"fordulasukat.
 # Ez a szabaly blokkol alapertelmezes szerint mindent.
 block out log first quick on dc0 all

 #################################################################
 # Az internet felo"li interfesz (bejo:vo" kapcsolatok)
 # A sajat halozatunk fele vagy erre az atjarora
 # nyitott kapcsolatokat vizsgaljuk az internet felo"l.
 #################################################################

 # Eldobjuk az o:sszes olyan bejo:vo" forgalmat, amit hivatalosan nem
 # lehetne tovabbitani vagy fenntartott cimteru:lethez tartozik.
 block in quick on dc0 from 192.168.0.0/16 to any    #RFC 1918: privat IP
 block in quick on dc0 from 172.16.0.0/12 to any     #RFC 1918: privat IP
 block in quick on dc0 from 10.0.0.0/8 to any        #RFC 1918: privat IP
 block in quick on dc0 from 127.0.0.0/8 to any       #helyi
 block in quick on dc0 from 0.0.0.0/8 to any         #helyi
 block in quick on dc0 from 169.254.0.0/16 to any    #DHCP
 block in quick on dc0 from 192.0.2.0/24 to any      #dokumentacios celokra fenntartva
 block in quick on dc0 from 204.152.64.0/23 to any   #Sun klaszterek o:sszeko:tesere hasznalt
 block in quick on dc0 from 224.0.0.0/3 to any       #D es E osztalyu multicast

 ##### Itt eldobunk egy rakas csuf dolgot ############
 # Ezeket nem akarjuk a naploban latni:

 # Eldobjuk a to:redekcsomagokat.
 block in quick on dc0 all with frags

 # Eldobjuk a tulsagosan ro:vid TCP csomagokat.
 block in quick on dc0 proto tcp all with short

 # Eldobjuk a forras altal ko:zvetitett (source routed) csomagokat.
 block in quick on dc0 all with opt lsrr
 block in quick on dc0 all with opt ssrr

 # Elutasitjuk az "OS fingerprint" kereseket.
 # Naplozzuk az elso" elo"fordulast, igy nalunk lesz a kivancsiskodo
 # egyen IP-cime.
 block in log first quick on dc0 proto tcp from any to any flags FUP

 # Eldobunk mindent, aminek specialis beallitasai vannak.
 block in quick on dc0 all with ipopts

 # Elutasitjuk a publikus pinget.
 block in quick on dc0 proto icmp all icmp-type 8

 # Elutasitjuk az ident kereseket.
 block in quick on dc0 proto tcp from any to any port = 113

 # Blokkoljuk az o:sszes Netbios szolgaltatast: 137=nev, 138=datagram,
 # 139=session. A Netbios az MS Windows megosztasat implementalja.
 # Blokkoljuk az MS Windows hosts2 nevszerver kereseit is a 81-es
 # porton.
 block in log first quick on dc0 proto tcp/udp from any to any port = 137
 block in log first quick on dc0 proto tcp/udp from any to any port = 138
 block in log first quick on dc0 proto tcp/udp from any to any port = 139
 block in log first quick on dc0 proto tcp/udp from any to any port = 81

 # Engedelyezzu:k a szolgaltatonk DHCP szervereto"l erkezo" forgalmat.
 # Ebben a szabalyban meg kell adnunk a szolgaltato DHCP szerverenek
 # IP-cimet, mivel itt csak a hiteles forrasbol fogadunk el csomagokat.
 # Erre csak DSL- es kabelmodemes kapcsolat eseteben van szu:kseg, a
 # "felhasznaloi PPP" alkalmazasa soran szu:ksegtelen. Ez az IP-cim
 # megegyezik a kimeno" kapcsolatoknal megadott cimmel.
 pass in quick on dc0 proto udp from z.z.z.z to any port = 68 keep state

 # Befele engedelyezzu:k a szabvanyos WWW funkciot, mivel webszerveru:nk
 # van.
 pass in quick on dc0 proto tcp from any to any port = 80 flags S keep state

 # Befele engedelyezzu:k az internetro"l erkezo" nem biztonsagos telnet
 # kapcsolatokat. Azert nem biztonsagos, mert az azonositokat es
 # jelszavakat titkositatlan formaban ko:zli az interneten keresztu:l.
 # To:ro:lju:k ezt a szabalyt, ha nem hasznalunk telnet szervert.
 #pass in quick on dc0 proto tcp from any to any port = 23 flags S keep state

 # Befele engedelyezzu:k az internetro"l # erkezo" ssh/sftp/scp (biztonsagos
 # telnet/rlogin/FTP) # kapcsolatokat az SSH (secure shell) hasznalataval.
 pass in quick on dc0 proto tcp from any to any port = 22 flags S keep state

 # Minden mast dobjuk el es naplozzuk az elso" elo"fordulasukat.
 # Az elso" alkalom naplozasaval elejet tudjuk venni a "Denial of
 # Service" tipusu tamadasoknak, amivel egyebkent lehetseges lenne a
 # naplo elarasztasa.
 # Ez a szabaly blokkol alapertelmezes szerint mindent.
 block in log first quick on dc0 all
 ################### Itt van a szabalyok vege ##############################

     --------------------------------------------------------------

  30.5.14. NAT

   A NAT jelentese Network Address Translation, vagyis halozati
   cimforditas. A Linux eseteben ezt "IP masqueradingnak", vagyis IP
   maszkolasnak hivjak. A halozati cimforditas es az IP maszkolas
   lenyegben ugyanazt takarja. Az IPF cimforditasert felelo"s
   funkciojanak ko:szo:nheto"en kepesek vagyunk a tu"zfal mo:go:tt
   elhelyezkedo" helyi halozat szamara megosztani az
   internet-szolgaltatol kapott publikus IP-cimet.

   Sokakban felmeru:lhet a kerdes, hogy erre vajon mi szu:ksegu:nk
   lehet. Az internet-szolgaltatok a maganszemelyeknek altalaban
   dinamikus IP-cimeket osztanak ki. A dinamikus itt arra utal, hogy
   a cimu:nk minden alkalommal valtozik, amikor betarcsazunk a
   szolgaltatohoz vagy amikor ki- es bekapcsoljuk a modemu:nket. Ez a
   dinamikus IP-cim fog azonositani minket az interneten.

   Most tegyu:k fel, hogy o:t gepu:nk van otthon, viszont csak
   egyetlen elo"fizetessel rendelkezu:nk. Ebben az esetben o:t
   telefonvonalat kellene hasznalnunk es mindegyik gephez elo"fizetni
   az internetre.

   A halozati cimforditas alkalmazasaval azonban mindo:ssze egyetlen
   elo"fizetes kell. A gepek ko:zu:l negyet hozzako:tu:nk egy
   switch-hez es a switch-et pedig a fennmarado gephez, amelyen
   FreeBSD fut. Ez utobbi lesz az igy kialakitott helyi halozatunk
   atjaroja. A tu"zfalban mu"ko:do" cimforditas segitsegevel a helyi
   halozaton talalhato gepek IP-cimeit eszrevetlenu:l at tudjuk
   forditani a halozatunk publikus IP-cimere, ahogy a csomagok
   elhagyjak az atjarot. A beerkezo" csomagok eseteben mindez
   visszafele to:rtenik meg.

   Az IP-cimek ko:zu:l adott egy tartomany, amit a cimforditast
   hasznalo helyi halozatok reszere tartanak fenn. Az RFC 1918
   szerint az alabbi IP-cimtartomanyok hasznalhatok a helyi
   halozatban, mivel ezeken keresztu:l ko:zvetlenu:l sosem lehet
   kijutni az internetre:

   Kezdo" IP: 10.0.0.0    -                  Zaro IP: 10.255.255.255  
   Kezdo" IP: 172.16.0.0  -                  Zaro IP: 172.31.255.255  
   Kezdo" IP: 192.168.0.0 -                  Zaro IP: 192.168.255.255 

     --------------------------------------------------------------

  30.5.15. IPNAT

   A cimforditasra vonatkozo szabalyokat az ipnat paranccsal tudjuk
   beto:lteni. Az ilyen tipusu szabalyokat altalaban az
   /etc/ipnat.rules allomanyban talaljuk. A reszleteket lasd az
   ipnat(1) man oldalan.

   Amikor a cimforditas u:zembe helyezese utan meg akarjuk
   valtoztatni a cimforditas szabalyait, elo"szo:r a cimforditas
   szabalyait tartalmazo allomanyt modositsuk, majd a belso"
   cimforditasi szabalyok es a cimforditasi tablazatban szereplo"
   aktiv bejegyzesek to:rlesehez futassuk le az ipnat parancsot a -CF
   beallitassal.

   A cimforditasi szabalyok ujrato:lteset egy ehhez hasonlo
   paranccsal tudjuk elvegezni:

 # ipnat -CF -f /etc/ipnat.szabalyok

   A cimforditashoz tartozo statisztikakat ezzel a paranccsal tudjuk
   lekerdezni:

 # ipnat -s

   A cimforditasi tablazatban pillanatnyilag szereplo"
   o:sszerendeleseket a ko:vetkezo" paranccsal tudjuk listazni:

 # ipnat -l

   A szabalyok feldolgozasaval es az aktiv
   szabalyokkal/bejegyzesekkel kapcsolatos informaciok reszletezeset
   igy engedelyezhetju:k:

 # ipnat -v

     --------------------------------------------------------------

  30.5.16. A cimforditasi szabalyok

   A cimforditasi szabalyok nagyon rugalmasak es rengeteg olyan
   funkciot meg tudunk velu:k valositani, ami az u:zleti es otthoni
   felhasznalok szamara egyarant hasznos.

   Itt most a szabalyok felepiteset csak egyszeru"sitve mutatjuk be,
   leginkabb a nem u:zleti ko:rnyezetek tekinteteben. A szabalyok
   komplett formai leirasat az ipnat(5) man oldalan talaljuk.

   Egy cimforditasi szabaly tehat valahogy igy nez ki:

 map INTERFESZ HELYI_IP_TARTOMANY -> PUBLIKUS_CIM

   A szabalyt a map kulcsszo kezdi.

   A INTERFESZ helyere az internet fele mutato ku:lso" interfesz
   nevet irjuk be.

   A HELYI_IP_TARTOMANY lesz az, amelyben a kliensek cimeznek. Ez
   peldaul a 192.168.1.0/24.

   A PUBLIKUS_CIM lehet egy ku:lso" IP-cim vagy a 0/32 specialis
   kulcsszo, amellyel a FELU:LET-hez rendelt IP-cimre hivatkozunk.

     --------------------------------------------------------------

  30.5.17. Hogyan mu"ko:dik a halozati cimforditas

   A publikus cel fele halado csomag megerkezik a helyi halozatrol.
   Miutan a kimeno" kapcsolatokra vonatkozo szabalyok atengedik, a
   cimforditas kapja meg a szerepet es fentro"l lefele haladva
   nekilat alkalmazni a sajat szabalyait, ahol az elso" egyezo"
   szerint cselekszik. A cimforditas a szabalyokat a csomaghoz
   tartozo interfeszre es a forras IP-cimere illeszti. Amikor a
   csomag interfeszenek neve illeszkedik egy cimforditasi szabalyra,
   akkor ezutan a csomag forras (vagyis a helyi halozaton belu:li)
   IP-cimero"l igyekszik eldo:nteni, hogy a szabaly nyilanak bal
   oldalan szereplo" tartomanyba esik-e. Ha erre is illeszkedik,
   akkor a forras IP-cimet atirjuk a 0/32 kulcsszo alapjan
   felderitett publikus IP-cimre. A cimfordito rutin ezt feljegyzi a
   sajat belso" tablazataba, igy amikor a csomag visszater az
   internetro"l, akkor kepes lesz visszaforditani az eredeti belso"
   IP-cimere es feldolgozasra atadni a tu"zfal szabalyainak.

     --------------------------------------------------------------

  30.5.18. A cimforditas engedelyezese

   A cimforditas eletre keltesehez a ko:vetkezo"ket kell beallitanunk
   az /etc/rc.conf allomanyban.

   Elo"szo:r engedelyezzu:k a gepu:nknek, hogy ko:zvetitsen forgalmat
   az interfeszek ko:zo:tt:

 gateway_enable="YES"

   Minden alkalommal inditsuk el a cimforditasert felelo"s IPNAT
   programot:

 ipnat_enable="YES"

   Adjuk meg az IPNAT szamara a beto:ltendo" szabalyokat:

 ipnat_rules="/etc/ipnat.rules"

     --------------------------------------------------------------

  30.5.19. Halozati cimforditas nagyon nagy helyi halozatok eseteben

   Az olyan helyi halozatokban, ahol rengeteg PC talalhato vagy to:bb
   alhalozatot is tartalmaz, az o:sszes privat IP-cim egyetlen
   publikus IP-cimbe to:mo:ritese igen komoly problemava tud dagadni
   es az azonos portok gyakori hasznalata a helyi halozatra ko:to:tt
   szamitogepek ko:zo:tt u:tko:zeseket okoz. Ket modon tudunk
   megoldast nyujtani erre a problemara.

     --------------------------------------------------------------

    30.5.19.1. A hasznalhato portok kiosztasa

   Egy normalis cimforditasi szabaly valahogy igy nezne ki:

 map dc0 192.168.1.0/24 -> 0/32

   A fenti szabalyban a csomag forrasportjat az IPNAT valtozatlanul a
   feldolgozas utan hagyja. Ha ehhez meg hozzatesszu:k a portmap
   kulcsszot, akkor ezzel utasitani tudjuk az IPNAT-ot, hogy csak az
   adott tartomanyban kepezze le a forrasportokat. Peldaul a
   ko:vetkezo" szabaly hatasara az IPNAT a forrasportokat egy adott
   tartomanyon belu:l fogja modositani:

 map dc0 192.168.1.0/24 -> 0/32 portmap tcp/udp 20000:60000

   Ha viszont meg inkabb meg akarjuk ko:nnyiteni a dolgunkat, akkor
   itt egyszeru"en csak adjuk meg az auto kulcsszot, amellyel az
   IPNAT o:nmagatol megallapitja, hogy milyen portokat tud hasznalni:

 map dc0 192.168.1.0/24 -> 0/32 portmap tcp/udp auto

     --------------------------------------------------------------

    30.5.19.2. To:bb publikus cim hasznalata

   Minden nagyobb helyi halozat eseteben elerkezu:nk ahhoz a ponthoz,
   ahol mar egyetlen publikus cim nem eleg. Ha to:bb publikus
   IP-cimmel is rendelkezu:nk, akkor ezekbo"l a cimekbo"l egy
   "ko:zo:s keszletet" hozhatunk letre, amibo"l majd az IPNAT
   valogathat miko:zben a csomagok cimeit atirja kifele menetben.

   Peldaul ahelyett, hogy a csomagokat egyetlen publikus IP-cimre
   kepeznenk le, ahogy itt tesszu:k:

 map dc0 192.168.1.0/24 -> 204.134.75.1

   A halozati maszk segitsegevel meg tudjuk adni IP-cimek egy
   tartomanyat is:

 map dc0 192.168.1.0/24 -> 204.134.75.0/255.255.255.0

   CIDR-jelo:lessel:

 map dc0 192.168.1.0/24 -> 204.134.75.0/24

     --------------------------------------------------------------

  30.5.20. A portok atiranyitasa

   Gyakran elo"fordul, hogy van webszerveru:nk, levelezo"
   szerveru:nk, adatbazis szerveru:nk es nevszerveru:nk, melyek a
   helyi halozat ku:lo:nbo:zo" gepein futnak. Ebben az esetben a
   szerverekhez tartozo forgalmat is forditanunk kell, illetve
   valamilyen modon a bejo:vo" forgalmat is at kell iranyitanunk a
   helyi halozat megfelelo" gepeihez. Az IPNAT ezt a gondot a
   halozati cimforditas atiranyitast tamogato funkcioival szu:nteti
   meg. Tegyu:k fel, hogy a 10.0.10.25 belso" cimen van egy
   webszerveru:nk, amelyhez a 20.20.20.5 publikus IP tartozik.
   Ilyenkor a ko:vetkezo" szabalyt adjuk meg:

 rdr dc0 20.20.20.5/32 port 80 -> 10.0.10.25 port 80

   vagy:

 rdr dc0 0.0.0.0/0 port 80 -> 10.0.10.25 port 80

   Igy tudjuk beallitani a 10.0.10.33 cimmel rendelkezo" nevszervert
   a kintro"l erkezo" nevfeloldasi keresek fogadasara:

 rdr dc0 20.20.20.5/32 port 53 -> 10.0.10.33 port 53 udp

     --------------------------------------------------------------

  30.5.21. Az FTP es a cimforditas

   Az FTP egy olyan o"sko:vu:let, amely meg az internet egy regi
   korszakabol maradt fenn, amikor az egyetemek ko:zo:tt meg berelt
   vonal letezett es az FTP szolgalt a kutatok ko:zt az allomanyok
   megosztasara. Ez meg abban az ido"ben to:rtent, amikor a biztonsag
   egyaltalan nem volt lenyeges szempont. Az evek elo"rehaladtaval az
   FTP protokoll beleivodott a felto:rekvo" internet gerincebe es a
   titkositatlanul ku:ldo:tt azonositoival es jelszavaival tovabbra
   is ugyanolyan vedtelen maradt. Az FTP ket valtozatban, aktiv es
   passziv modban kepes mu"ko:dni. Az elteres ketteju:k ko:zo:tt az
   adatcsatorna megallapitasaban van. A passziv mod sokkal
   biztonsagosabb, mivel ilyenkor az adatcsatornat az FTP kapcsolatot
   kezdemenyezo" allitja be. Az FTP ku:lo:nbo:zo" modjainak
   magyarazatat es a ko:ztu:k levo" ku:lo:nbseget a
   http://www.slacksite.com/other/ftp.html cimen ismerhetju:k meg
   reszleteiben (angolul).

     --------------------------------------------------------------

    30.5.21.1. Az IPNAT szabalyai

   Az IPNAT egy specialis beepitett FTP proxyval rendelkezik, amelyre
   a halozati cimforditas lekepezesei ko:zo:tt hivatkozhatunk. Kepes
   figyelni az o:sszes aktiv vagy passziv FTP kapcsolathoz tartozo
   kimeno" kerest es ezekhez dinamikusan letrehozni olyan ideiglenes
   szu"resi szabalyokat, amelyek valoban csak az adatcsatornahoz
   felhasznalt portokat tartalmazzak. Ezzel ki tudjuk ku:szo:bo:lni
   az FTP azon karos hatasat a tu"zfalra nezve, hogy egyszerre
   tulsagosan sok magasabb tartomanybeli port legyen nyitva.

   Ez a szabaly a belso" halozat o:sszes FTP forgalmat lekezeli:

 map dc0 10.0.10.0/29 -> 0/32 proxy port 21 ftp/tcp

   Ez a szabaly pedig az atjarorol erkezo" FTP forgalommal birkozik
   meg:

 map dc0 0.0.0.0/0 -> 0/32 proxy port 21 ftp/tcp

   Ez a szabaly kezeli a belso" halozatrol erkezo" o:sszes nem FTP
   tipusu forgalmat:

 map dc0 10.0.10.0/29 -> 0/32

   Az FTP lekepzesere vonatkozo szabaly a szokasos lekepzesi szabaly
   ele keru:l. Az o:sszes csomag fentro"l haladva az elso"
   illeszkedo" szabaly alapjan keru:l feldolgozasra. Elo"szo:r az
   interfesz nevet vizsgaljuk, majd a belso" halozatbeli forras IP-t,
   vegu:l azt, hogy a csomag egy FTP kapcsolat resze. Ha minden
   parametereben megfelel, akkor az FTP proxy keszit egy ideiglenes
   szu"resi szabalyt hozza, amellyel az FTP kapcsolathoz tartozo
   csomagok mind a ket iranyba kepesek lesznek vandorolni,
   termeszetesen a cimforditassal egyu:tt. Az o:sszes to:bbi bentro"l
   erkezo" csomag atlep ezen a szabalyon es megall a harmadiknal,
   ahol az interfesznek es forras IP-nek megfelelo"en atforditjuk a
   cimet.

     --------------------------------------------------------------

    30.5.21.2. Az IPNAT szu"resi szabalyai FTP-re

   Az FTP eseteben csak egyetlen szu"resi szabalyra van szu:ksegu:nk
   a halozati cimforditasba epitett FTP proxy hasznalatahoz.

   FTP proxy nelku:l az alabbi harom szabaly kellene:

 # Kifele engedelyezzu:k a belso" gepek FTP elerest az internet iranyaba,
 # aktiv es passziv modokban.
 pass out quick on rl0 proto tcp from any to any port = 21 flags S keep state

 # Kifele engedelyezzu:k a passziv modhoz tartozo magasabb tartomanybeli
 # adatcsatornakat.
 pass out quick on rl0 proto tcp from any to any port > 1024 flags S keep state

 # Aktiv modban beengedju:k az FTP szerverto"l erkezo" adatcsatornat.
 pass in quick on rl0 proto tcp from any to any port = 20 flags S keep state

     --------------------------------------------------------------

30.6. IPFW

   Az IPFIREWALL (IPFW) a FreeBSD altal tamogatott tu"zfalazo
   alkalmazas, melyet a FreeBSD Projektben resztvevo" o:nkentesek
   fejlesztettek ki es tartanak karban. Regi tipusu, allapottartas
   nelku:li szabalyokat hasznal, es az itt hasznalatos szabalyirasi
   technikat "egyszeru" allapottarto megoldasnak" nevezzu:k.

   Az IPFW szabvany FreeBSD-ben levo", mintakent szolgalo
   szabalyrendszere (ez az /etc/rc.firewall es /etc/rc.firewall6
   allomanyokban talalhato meg) annyira egyszeru", hogy komolyabb
   modositasok nelku:l nem ajanlatos hasznalni. Ez a pelda nem
   tartalmaz allapottarto szu"rest, ami viszont a legto:bb esetben
   kivanatos lenne, ezert ezt a szakaszt nem erre alapozzuk.

   Az IPFW allapottartas nelku:li szabalyainak felepiteseben olyan
   technikailag kifinomult levalogatasi kepessegek bujnak meg,
   amelyek jocskan meghaladjak az atlagos tu"zfalepito"k tudasat. Az
   IPFW elso"sorban olyan szakemberek vagy szakmailag elo"rehaladott
   felhasznalok szamara keszu:lt, akiknek specialis csomagszu"resi
   igenyeik vannak. A ku:lo:nbo:zo" protokollok hasznalatanak es a
   hozzajuk tartozo fejlecinformaciok mindenre kiterjedo" ismerete
   szinte nelku:lo:zhetetlen az IPFW valodi erejenek kihasznalasahoz.
   Ez a szint azonban tulmutat a keziko:nyv ezen szakaszanak
   keretein.

   Az IPFW het komponensbo"l epu:l fel, melyek ko:zu:l az elso"dleges
   a rendszermag tu"zfalazasert felelo"s szabalyfeldolgozo es a
   hozzatartozo csomagnyilvantartas, majd ezt ko:veti a naplozas, a
   halozati cimforditast aktivalo divert szabaly, valamint a
   komolyabb celok megvalositasara alkalmas leheto"segek: a forgalom
   korlatozasaert felelo"s dummynet, a tovabbku:ldesre alkalmas fwd
   rule szabaly, a halozati hidak tamogatasa, illetve az ipstealth.
   Az IPFW egyarant hasznalhato IPv4 es IPv6 eseten.

     --------------------------------------------------------------

  30.6.1. Az IPFW engedelyezese

   Az IPFW az alap FreeBSD telepitesben ku:lo:n, futas ido"ben
   beto:ltheto" modulkent erheto" el. Ha az rc.conf allomanyban
   megadjuk a firewall_enable="YES" beallitast, akkor a rendszer
   indulasakor ezt a modult dinamikusan beto:lti. Az IPFW-t csak
   akkor kell a FreeBSD rendszermagjaba beepitenu:nk, ha szu:ksegu:nk
   van a cimforditasi funkciojara is.

   Ha tehat az rc.conf allomanyban megadtuk a firewall_enable="YES"
   sort es ujrainditottuk a szamitogepu:nket, akkor a ko:vetkezo"
   feherrel kiemelt u:zenet fog megjelenni a rendszerinditas soran:

 ipfw2 initialized, divert disabled, rule-based forwarding disabled, default to deny, logging disabled

   A "logging disabled" u:zenetbo"l kideru:l, hogy a modul nem vegez
   naplozast. A naplozast es a hozzatartozo reszletesseg szintjet ugy
   tudjuk beallitani, ha az /etc/sysctl.conf allomanyba felvesszu:k a
   ko:vetkezo" sorokat, amivel a ko:vetkezo" inditaskor mar mu"ko:dni
   fog:

 net.inet.ip.fw.verbose=1
 net.inet.ip.fw.verbose_limit=5

     --------------------------------------------------------------

  30.6.2. A rendszermag beallitasai

   Ha nem akarjuk kihasznalni az IPFW altal felkinalt cimforditasi
   leheto"segeket, akkor egyaltalan nem szu:kseges a FreeBSD
   rendszermagjaba beleforditani a tamogatasat. Ezert az alabbiakat
   csak kiegeszito" informaciokent tu:ntettu:k fel.

 options    IPFIREWALL

   Ez a beallitas engedelyezi az IPFW hasznalatat a rendszermag
   reszekent.

 options    IPFIREWALL_VERBOSE

   Ezzel es a log kulcsszoval tudjuk az IPFW szabalyain
   keresztu:lhalado csomagokat naplozni.

 options    IPFIREWALL_VERBOSE_LIMIT=5

   Ez az ertek korlatozza a syslogd(8) segitsegevel naplozott azonos
   bejegyzesek maximalis szamat. Ezt a beallitast olyan veszelyes
   ko:rnyezetekben erdemes hasznalnunk, ahol naplozni akarunk.
   Segitsegevel meg tudjuk akadalyozni, hogy a rendszernaplo
   elarasztasaval megakasszak a rendszeru:nket.

 options    IPFIREWALL_DEFAULT_TO_ACCEPT

   Ezen beallitas hatasara a tu"zfal alapertelmezes szerint mindent
   atenged, ami altalaban akkor jo:het jol, amikor elo"szo:r
   beallitjuk a tu"zfalat.

 options    IPDIVERT

   Ezzel a beallitassal engedelyezzu:k a cimforditas hasznalatat.

     Megjegyzes: Ha nem adjuk meg az IPFIREWALL_DEFAULT_TO_ACCEPT
     beallitast, vagy ha nem engedelyezzu:k a bejo:vo" csomagokat,
     akkor a gepu:nkre semmilyen csomag nem lesz kepes bejutni,
     illetve onnan kijutni.

     --------------------------------------------------------------

  30.6.3. Az /etc/rc.conf beallitasai

   Igy tudjuk engedelyezni a tu"zfalat:

 firewall_enable="YES"

   A FreeBSD-hez mellekelt alapertelmezett tu"zfaltipusok ko:zu:l az
   /etc/rc.firewall allomany atolvasasaval tudunk valasztani, es
   megadni az alabbi helyett:

 firewall_type="open"

   A ko:vetkezo" ertekek allnak rendelkezesu:nkre:

     * open -- atengedi az o:sszes forgalmat

     * client -- csak ezt a gepet vedi

     * simple -- az egesz halozatot vedi

     * closed -- a helyi interfesz kivetelevel minden IP alapu
       forgalmat tilt

     * UNKNOWN -- tiltja a tu"zfal szabalyainak beto:lteset

     * allomanynev -- a tu"zfal szabalyait tartalmazo allomany
       abszolut eleresi utvonala

   Ket ku:lo:nbo:zo" modon lehet beto:lteni a sajat ipfw
   szabalyainkat. Az egyik ko:zu:lu:k, ha a firewall_type valtozoban
   megadjuk a tu"zfal szabalyait tartalmazo allomany abszolut eleresi
   utvonalat, az ipfw(8) parancssori beallitasai nelku:l. Az alabbi
   peldaban egy olyan egyszeru" szabalyrendszert lathatunk, amely
   blokkolja az o:sszes bejo:vo" es kimeno" forgalmat:

 add deny in
 add deny out

   Masreszro"l az firewall_script valtozoban is megadhatjuk azt a
   szkriptet, amelyben a rendszerinditas soran meghivjuk ipfw
   parancsot. Az imenti szabalyrendszert az alabbi szkripttel tudjuk
   kivaltani:

 #!/bin/sh

 ipfw -q flush

 ipfw add deny in
 ipfw add deny out

     Megjegyzes: Ha a firewall_type valtozo client vagy simple
     erteket hasznaljuk, akkor az /etc/rc.firewall allomanyban
     talalhato alapertelmezett szabalyokat erdemes atvizsgalnunk,
     hogy kello"en illeszkednek-e az adott gephez. Hozzatennenk, hogy
     a fejezetben szereplo" peldak azt feltetelezik, hogy a
     firewall_script erteke az /etc/ipfw.rules allomany.

   A naplozas igy engedelyezheto":

 firewall_logging="YES"

     Figyelem: A firewall_logging valtozo egyedu:l csak annyit tesz,
     hogy beallitja a net.inet.ip.fw.verbose sysctl valtozonak az 1
     erteket (lasd 30.6.1 Szakasz). A naplo korlatozasara nincs
     ku:lo:n valtozo az rc.conf allomanyon belu:l, de az
     /etc/sysctl.conf allomany segitsegevel es manualisan be tudjuk
     allitani a hozzatartozo valtozot:

 net.inet.ip.fw.verbose_limit=5

   Amennyiben a gepu:nk atjarokent viselkedik, tehat a natd(8)
   segitsegevel cimforditast vegez, a 31.9 Szakaszban olvashatunk
   utana, hogy ehhez az /etc/rc.conf allomanyban milyen beallitasokat
   kell megadnunk.

     --------------------------------------------------------------

  30.6.4. Az IPFW parancs

   Normal esetben az ipfw parancs hasznalatos arra, hogy a tu"zfal
   mu"ko:dese ko:zben az aktiv belso" szabalyai ko:ze vegyu:nk fel
   vagy to:ro:lju:nk ko:zu:lu:k manualisan bejegyzeseket. Ennek a
   modszernek az egyedu:li hatranya, hogy az igy vegrehajtott
   modositasok el fognak veszni a rendszer leallitasaval. Itt inkabb
   azt a megoldast javasoljuk, hogy az o:sszes szabalyt tegyu:k bele
   egy allomanyba es a rendszerinditas soran ezt to:ltsu:k be, majd
   ha valtoztatni akarunk a tu"zfalon, akkor ezt az allomanyt
   modositsuk es a regiek to:rlesevel to:ltsu:k be ujra az egesz
   szabalyrendszert.

   Az ipfw parancs mellesleg remeku:l hasznalhato a jelenleg futo
   tu"zfalszabalyok megjelenitesere a konzolon. Az IPFW
   nyilvantartasaban az egyes szabalyokhoz dinamikusan jo:nnek letre
   szamlalok, amelyek a ra illeszkedo" csomagokat szamoljak. A
   tu"zfal tesztelese folyaman a szabalyok es hozzatartozo szamlalok
   lekerdezese a megfelelo" mu"ko:des elleno"rzesenek egyik
   lehetseges modja.

   A szabalyokat igy tudjuk egymas utan felsoroltatni:

 # ipfw list

   A szabalyokat igy tudjuk az utolso illeszkedesu:k idejevel egyu:tt
   megjeleniteni:

 # ipfw -t list

   A ko:vetkezo" peldaban a nyilvantartasi informaciokat kerdezzu:k
   le, ekkor a szabalyok mellett az illeszkedo" csomagok szama is
   lathatova valik. Az elso" sorban a szabaly szama szerepel, majd
   ezt ko:veti rendre az illeszkedo" kimeno" es bejo:vo" csomagok
   mennyisege, valamint vegu:l maga a szabaly.

 # ipfw -a list

   A statikus szabalyok mellett a dinamikusakat igy lehet kilistazni:

 # ipfw -d list

   A lejart dinamikus szabalyokat is meg tudjuk nezni:

 # ipfw -d -e list

   A szamlalok nullazasa:

 # ipfw zero

   Csak a SZAM sorszamu szabalyhoz tartozo szamlalok nullazasa:

 # ipfw zero SZAM

     --------------------------------------------------------------

  30.6.5. Szabalyrendszerek az IPFW-ben

   Az IPFW eseteben a szabalyrendszer olyan szabalyokbol all, amelyek
   a csomagokrol tartalmuk alapjan eldo:ntik, hogy at kell engedni
   vagy vissza kell tartani. A gepek ko:zt ket iranyban aramlo
   csomagok egy munkamenet alapu tarsalgast kepeznek. A tu"zfalhoz
   tartozo szabalyrendszer egyarant feldolgozza a internetro"l a
   halozatunk fele igyekvo" csomagokat, illetve a halozatunk ezekre
   adott valaszait. Az egyes TCP/IP szolgaltatasokat (mint peldaul
   telnet, www, levelezes stb.) a hozzajuk tartozo protokol es
   szabvanyos (fogado) portszam irja le. Ezekre a forrasrol altalaban
   valamilyen nem szabvanyos (magasabb erteku") portrol erkeznek
   csomagok. Ekkor a kommunikacio o:sszes parametere (vagyis a portok
   es cimek) barmelyike alapjan definialhatunk blokkolast vagy
   tovabbengedest leiro szabalyokat.

   Amikor egy csomag eleri a tu"zfalat, a szabalyrendszer elso"
   szabalyaval keru:l o:sszehasonlitasra es amig nem illeszkedik
   valamelyikre, addig lefut ra a to:bbi szabaly is fentro"l lefele
   egyesevel, a sorszamuknak megfelelo" no:vekvo" sorrendben. Ha a
   csomag megfelel valamelyik szabaly levalogatasi parametereinek,
   akkor a benne megnevezett cselekves zajlik le, es szamara a
   feldolgozas befejezo"dik. Ezt a viselkedest neveztu:k "az elso"
   illeszkedes nyer" tipusu keresesnek. Amennyiben a csomag egyetlen
   szabalyra sem illeszkedik, akkor az IPFW 65535-o:s sorszamu
   allando szabalya fogja elcsipni, amely feladata szerint eldobja az
   o:sszes hozza beerkezo" csomagot anelku:l, hogy barmit is
   valaszolna a csomag feladojanak.

     Megjegyzes: A kereses a count, skipto es tee szabalyok utan meg
     folytatodik.

   Az itt szereplo" utasitasok ku:lo:nbo:zo" allapottartasra
   vonatkozo opciokat, peldaul a keep state, limit, in, out es via
   kulcsszavakat tartalmazo szabalyokon alapulnak. Lenyegeben ezt
   tekinthetju:k az inkluziv tipusu tu"zfalak kiindulasi alapjakent.

     Figyelem: A tu"zfal szabalyainak beallitasa soran nem art
     ovatosnak lennu:nk, mert figyelmetlensegu:nk reven ko:nnyen
     kizarathatjuk magunkat a gepu:nkro"l.

     --------------------------------------------------------------

    30.6.5.1. A szabalyok felepitese

   Az itt bemutatasra keru:lo" szabalyok felepiteset csak olyan
   mertekig reszletezzu:k, ami elengedo" a szabvanyos inkluziv tipusu
   tu"zfalak kialakitasahoz. A szabalyok felepitesenek pontos
   leirasat az ipfw(8) man oldalan talalhatjuk meg.

   A szabalyok kulcsszavakat tartalmaznak. Ezeket a kulcsszavakat
   soronkent egy elo"re ro:gzitett sorrendben kell szerepeltetni. A
   kulcsszavakat a szo:vegben kiemeltu:k. Bizonyos kulcsszavakhoz
   tovabbi opciokhoz is tartozhatnak, amelyek gyakran maguk is
   kulcsszavak es szinten tovabbi opciokat tartalmazhatnak.

   A # egy megjegyzes kezdetet jelzi, mely egyarant megjelenhet egy
   ku:lo:n sorban, vagy egy szabalyt tartalmazo sor vegen. Az u:res
   sorok nem vesznek reszt a feldolgozasban.

   PARANCS SZABALY_SZAM CSELEKVES NAPLOZAS SZU"RES ALLAPOTTARTAS

     --------------------------------------------------------------

      30.6.5.1.1. PARANCS

   Minden uj szabaly elo"ttt az add (mint hozzaadas) parancsnak kell
   szerepelni, amellyel a belso" tablazatba tudjuk felvenni.

     --------------------------------------------------------------

      30.6.5.1.2. SZABALY_SZAM

   A szabalyokhoz mindig tartozik egy sorszam is.

     --------------------------------------------------------------

      30.6.5.1.3. CSELEKVES

   A szabalyhoz az alabbi cselekvesek valamelyike kapcsolhato, amely
   akkor hajtodik vegre, amikor a csomag megfelel a hozzatartozo
   szu"resi felteteleknek.

   allow | accept | pass | permit

   A fentiek ko:zu:l mindegyik ugyanazt jelenti, vagyis hatasukra az
   illeszkedo" csomag kilep a tu"zfalbol. Ez a szabaly megallitja a
   keresest.

   check-state

   A csomagot a dinamikus szabalyokat tarolo tablazattal veti o:ssze.
   Ha itt egyezest talal, akkor vegrehajtja az egyezo" dinamikus
   szabalyhoz tartozo cselekvest, minden mas esetben tovabblep a
   ko:vetkezo" szabalyra. Ennek a szabalynak nincs illesztheto"
   parametere. Ha a szabalyrendszerben nem szerepel ilyen, akkor a
   dinamikus szabalyok vizsgalatat az elso" keep-state vagy limit
   hasznalatanal vonja be a rendszer.

   deny | drop

   Mind a ket szo ugyanarra utal, vagyis a szabalyra illeszkedo"
   csomagokat el kell dobni. Ebben az esetben a kereses befejezo"dik.

     --------------------------------------------------------------

      30.6.5.1.4. NAPLOZAS

   log vagy logamount

   Amikor egy csomag egy log kulcsszot tartalmazo szabalyra
   illeszkedik, akkor a rendszernaploban egy u:zenet keletkezik a
   security (biztonsag) funkcion keresztu:l. A naploba tenylegesen
   csak akkor keru:l bele az u:zenet, ha az adott szabaly meg nem
   haladta meg a hozzatartozo logamount parameter erteket. Ha ezt nem
   adtuk meg, akkor az itt ervenyes korlat a
   net.inet.ip.fw.verbose_limit sysctl valtozobol fog szarmazni. A
   nulla ertek mind a ket esetben megszu:nteti ezt a korlatozast. Ha
   elertu:k a korlatot, akkor a naplozast ugy tudjuk ujra
   engedelyezni, ha to:ro:lju:k a naplozashoz tartozo szamlalo
   erteket, lasd az ipfw reset log parancsot.

     Megjegyzes: A naplozas mindig az o:sszes parameter
     illeszkedesenek elleno"rzese utan to:rtenik, de meg a cselekves
     (accept, deny) elvegzese elo"tt. Teljesen rajtunk mulik, hogyan
     milyen szabalyokat naplozunk.

     --------------------------------------------------------------

      30.6.5.1.5. SZU"RES

   Ebben a szakaszban azok a kulcsszavak talalhatoak, amelyek
   segitsegevel a csomagok ku:lo:nbo:zo" tulajdonsagait tudjuk
   megvizsgalni es eldo:nteni, hogy illeszkedik-e a szabalyra vagy
   sem. A ko:vetkezo" altalanos tulajdonsagokat tudjuk megvizsgalni,
   ebben a ko:to:tt sorrendben:

   udp | tcp | icmp

   Barmilyen mas olyan protokoll is megadhato, amely megtalalhato az
   /etc/protocols allomanyban. Ezzel adjuk a csomaghoz tartozo
   protokollt. Hasznalata ko:telezo".

   from forras to cel

   Mind a from es to kulcsszavak IP-cimek illesztesere alkalmasak. A
   szabalyoknak tartalmazniuk kell a forras ES a cel parametereket
   is. Az any egy olyan kulcsszo, amely tetszo"leges IP-cimre
   illeszkedik. A me pedig egy olyan specialis kulcsszo, amely a
   tu"zfalat mu"ko:dteto" FreeBSD-s gep (tehat ez a gep) adott
   interfeszhez tartozo IP-cimet jelo:li, mint ahogy a from me to
   any, from any to me, from 0.0.0.0/0 to any, from any to 0.0.0.0/0,
   from 0.0.0.0 to any, from any to 0.0.0.0 vagy from me to 0.0.0.0
   parameterekben. Az IP-cimek numerikus pontozott formaban a
   halozati maszk hosszaval egyu:tt (CIDR-jelo:lessel), vagy
   egyszeru"en csak pontozott formaban adhatoak meg. A halozati
   maszkok megallapitasaban a net-mgmt/ipcalc port lehet
   segitsegu:nkre. Erro"l bo"vebb informaciokat a segedprogram
   honlapjan, a http://jodies.de/ipcalc cimen talalhatunk (angolul).

   port szam

   A portszamokat is ismero" protokollok eseteben (mint peldaul a TCP
   vagy UDP) adhatjuk meg. Fontos, hogy itt annak a szolgaltatasnak a
   portszamat adjuk meg, amelyre a szabaly vonatkozik. A szolgaltatas
   (az /etc/services allomanybol szarmazo) nevet is megadhatjuk a
   port szama helyett.

   in | out

   A beerkezo" valamint a kimeno" csomagokat adhatjuk meg ezen a
   modon. Itt az in es out kulcsszavak, melyeket ko:telezo" megadni a
   szabaly reszekent.

   via interfesz

   Nev szerint az adott interfeszen keresztu:l halado csomagokat
   tudjuk szu"rni. A via kulcsszo hatasara a hasznalt interfesz is
   szamitani fog a csomag feldolgozasa soran.

   setup

   Ez a kulcsszo a TCP csomagok eseteben a kapcsolatok felepitesere
   vonatkozo kereseket segit beazonositani.

   keep-state

   Ez egy ko:telezo" kulcsszo. Feldolgozasakor a tu"zfal letrehoz
   dinamikus szabalyt, amely alapertelmezes szerint az egyazon
   protokollt hasznalo forras es cel IP/port parosok ko:zti ketiranyu
   forgalomra fog automatikusan illeszkedni.

   limit {forrascim | forrasport | celcim | celport}

   A tu"zfal csak N darab, a szabalynak megfelelo" azonos parameteru"
   kapcsolatot fog atengedi. Itt egy vagy to:bb forras- es celcim
   valamint forras- es celport adhato meg. A limit es a keep-state
   egy szabalyon belu:l nem hasznalhato. A limit ugyanazokat az
   allapottarto funkciokat kepviseli, mint a keep-state, csak a sajat
   kiegesziteseivel megtoldva.

     --------------------------------------------------------------

    30.6.5.2. ALLAPOTTARTAS

   Az allapottarto szu"res a ketiranyu csomagvaltasokat egy
   letrejo:tt kapcsolatba sorolja. Olyan vizsgalatokat vegez, amivel
   kepes megallapitani, hogy a csomag ku:ldo"je es cimzettje ko:zo:tt
   kialakult kommunikacio ko:vet-e valamilyen ketiranyu
   csomagku:ldesre ervenyes folyamatot. Az igy felallitott sablontol
   eltero" o:sszes csomag hamisnak mino"su:l es automatikusan
   eldobasra keru:l.

   A check-state segitsegevel elleno"rizhetju:k, hogy az adott csomag
   a IPFW szerint megfelel-e valamelyik dinamikusan lekepzett
   szabalynak. Ha egyezik valamelyiko"ju:kkel, akkor a csomag a
   tu"zfalbol kilepve folytatja utjat es a kommunikacioban soron
   ko:vetkezo" csomag szamara letrejo:n egy masik dinamikus szabaly.
   Ha nincs egyezes, akkor csomag feldolgozasa a szabalyrendszer
   ko:vetkezo" szabalyanal folytatodik.

   A dinamikus szabalyokat kezelo" rutin sebezheto", mivel ha
   egyszerre nagy mennyisegu" SYN csomagot ku:ldu:nk, akkor olyan sok
   dinamikus bejegyzes keletkezik, hogy egyszeru"en kifogyunk a
   rendelkezesre allo ero"forrasokbol. A FreeBSD fejleszto"i azonban
   az ilyen termeszetu" tamadasok kivedesere is felkeszitettek, es
   kialakitottak belo"le a limit opciot. Alkalmazasaval le tudjuk
   korlatozni az egyszerre folyo parhuzamos kapcsolatok szamat a
   forras vagy a cel a limit parameternel megadott mezo"inek es a
   csomag IP-cime alapjan. Igy az adott szabalyhoz es IP-cimhez csak
   elo"re ro:gzitett mennyisegu" nyitott allapotu dinamikus szabaly
   letezhet egy ido"ben. Ha ezt a korlatot atlepju:k, a csomag
   eldobodik.

     --------------------------------------------------------------

    30.6.5.3. A tu"zfal u:zeneteinek naplozasa

   A naplozas elo"nyei nyilvanvaloak. Ha engedelyezzu:k, aktivalasa
   utan kepesek leszu:nk olyan informacioknak utananezni, mint
   peldaul milyen csomagokat dobtunk el, honnan erkeztek, hova
   tartottak. Ez egy komoly fegyveru:nk lehet a potencialis
   tamadokkal szemben.

   Azonban hiaba engedelyezzu:nk o:nmagaban a naplozast, attol az
   IPFW meg sajat magatol nem fog naplozast elo"iro szabalyokat
   gyartani. A tu"zfal karbantartoinak maguknak kell eldo:ntenie,
   hogy a szabalyrendszerben mely szabalyokhoz tartozzon naplozas,
   nekik kell felvenni ezekhez a log kulcsszot. Altalaban csak az
   eldobassal jaro deny tipusu szabalyokat vagy a bejo:vo" ICMP
   pingeket szoktak naplozni. Gyakran ugy oldjak meg ezt, hogy a
   szabalyrendszer utolso szabalyakent lemasoljak az ipfw
   alapertelmezett "mindent eldobunk" szabalyat es a naplozast adjak
   meg benne. Ezen a modon feny deru:l azokra a csomagokra, amelyek a
   szabalyrendszerben semmire sem illeszkedtek.

   A naplozas azonban egy ketelu" fegyver, mivel ha nem vagyunk eleg
   ko:ru:ltekinto"ek, akkor a sok naploinformacio ko:zo:tt ko:nnyen
   el tudunk veszni es a lemezu:nk is gyorsan betelhet a mindent
   elfoglalo naploktol. Mellesleg a naplok megdagasztasat celzo DoS
   tipusu tamadas a rendszerek lebenitasara alkalmazott egyik
   lego"sibb technika. Ezek az u:zenetek nem csak a rendszernaploba
   keru:lnek bele, hanem az elso"dleges konzol kepernyo"jere is
   kiirodnak, ami egy ido" utan idegesito" tud lenni.

   A rendszermag IPFIREWALL_VERBOSE_LIMIT=5 beallitasaval azonban
   kepesek vagyunk korlatozni azokat a rendszernaplo fele ku:ldo:tt
   egymas utan ko:vetkezo" u:zeneteket, amelyek ugyanarra a szabalyra
   vonatkoznak. Amikor ezt a beallitast megadjuk a rendszermag
   forditasanal, akkor az egyes szabalyokhoz az altala meghatarozott
   erteken felu:l nem jo:n letre to:bb hasonlo u:zenet. Hiszen semmi
   sem deru:l ki 200 teljesen azonos naplou:zenetbo"l. Peldaul, ha az
   egyes szabalyokhoz legfeljebb o:t egymast ko:veto" u:zenetet
   engedelyezu:nk, akkor a to:bbi fennmarado azonos u:zenetet
   o:sszeszamolja a rendszer es a ko:vetkezo" modon ko:zvetiti a
   rendszernaplozo szolgaltatas fele:

 last message repeated 45 times

   Ami magyarul igy hangzik:

 az utolso u:zenet 45 alkalommal ismetlo"do:tt meg

   Az o:sszes csomagokkal kapcsolatos naplozas alapertelmezes szerint
   a /var/log/security allomanyba keru:l, amelyet az /etc/syslog.conf
   allomany definial.

     --------------------------------------------------------------

    30.6.5.4. Szabalyokat tartalmazo szkript keszitese

   A rutinosabb IPFW felhasznalok a szabalyokat egy allomanyban
   programozzak le olyan stilusban, hogy szkriptkent is futtathato
   legyen. Ennek az egyik legnagyobb elo"nye, hogy a tu"zfal
   szabalyai igy egyszerre cserelheto"ek a rendszer ujrainditasa
   nelku:l. Ez a modszer nagyon kenyelmes az uj szabalyok
   kiprobalasanal, mivel tetszo"leges alkalommal vegrehajthatjuk.
   Mivel ez egy szkript, ki tudjuk hasznalni az itt megszokott
   szimbolikus helyettesites altal felkinalt leheto"segeket, es ezzel
   a gyakran hasznalt ertekeket is egyszerre to:bb szabalyban tudjuk
   helyettesiteni. Erre a ko:vetkezo"kben fogunk egy konkret peldat
   latni.

   A szkript felepitese kompatibilis a sh(1), csh(1) es tcsh(1)
   parancsertelmezo"kkel. A szimbolikus mezo"k helyettesiteset a $
   vagyis dollarjel vezeti be. Maguk a szimbolikus mezo"k nem
   tartalmazzak a $ elo"tagot. A szimbolikus mezo"k ertekeit "ketto"s
   idezo"jelek" ko:zo:tt kell megadni.

   A szabalyok o:sszeirasat kezdju:k el igy:

 ####### itt kezdo"dik az ipfw szabalyait tartalmazo szkript ######
 #
 ipfw -q -f flush       # to:ro:lju:k az o:sszes aktualis szabalyt
 # Set defaults
 oif="tun0"             # a kimeno" interfesz
 odns="192.0.2.11"      # az internet szolgaltato nevszerverenek IP-cime
 cmd="ipfw -q add "     # a szabalyok hozzaadasahoz szu:kseges elemek
 ks="keep-state"        # csupan a lustasag miatt
 $cmd 00500 check-state
 $cmd 00502 deny all from any to any frag
 $cmd 00501 deny tcp from any to any established
 $cmd 00600 allow tcp from any to any 80 out via $oif setup $ks
 $cmd 00610 allow tcp from any to $odns 53 out via $oif setup $ks
 $cmd 00611 allow udp from any to $odns 53 out via $oif $ks
 #### itt fejezo"dik be az ipfw szabalyait tartalmazo szkript ######

   Ezzel keszen is vagyunk. Most ne to:ro"dju:nk a peldaban szereplo"
   szabalyokkal, itt most a szimbolikus helyettesites hasznalatat
   igyekeztu:k bemutatni.

   Ha az imenti peldat az /etc/ipfw.rules allomanyba mentettu:k el,
   akkor az alabbi parancs kiadasaval tudjuk ujrato:lteni a benne
   szereplo" szabalyokat:

 # sh /etc/ipfw.rules

   Az /etc/ipfw.rules allomanyt egyebkent tetszo"leges neven
   hivhatjuk es barhova rakhatjuk.

   Ugyanez termeszetesen elerheto" a ko:vetkezo" parancsok egymas
   utani begepelesevel is:

 # ipfw -q -f flush
 # ipfw -q add check-state
 # ipfw -q add deny all from any to any frag
 # ipfw -q add deny tcp from any to any established
 # ipfw -q add allow tcp from any to any 80 out via tun0 setup keep-state
 # ipfw -q add allow tcp from any to 192.0.2.11 53 out via tun0 setup keep-state
 # ipfw -q add 00611 allow udp from any to 192.0.2.11 53 out via tun0 keep-state

     --------------------------------------------------------------

    30.6.5.5. Allapottarto szabalyrendszerek

   A most ko:vetkezo" cimforditas nelku:li szabalyrendszer arra mutat
   peldat, hogyan valositsunk meg egy biztonsagos "inkluziv"
   tu"zfalat. Az inkluziv tu"zfalak csak a szabalyainak megfelelo"
   szolgaltatasokat engedik at, minden mast alapertelmezes szerint
   tiltanak. A komplett halozati szegmensek vedelmere o:sszeallitott
   tu"zfalaknak legalabb ket interfeszu:k van, amelyek mindegyikehez
   tartoznia kell szabalyoknak a megfelelo" mu"ko:deshez.

   Az UNIX mintaju operacios rendszer, ko:ztu:l a FreeBSD is olyan,
   hogy a rendszerben belu:li kommunikaciot a lo0 nevu" interfeszen
   es a 127.0.0.1 IP-cimen bonyolitja le. A tu"zfalban mindenkeppen
   szerepelniu:k kell olyan szabalyoknak, amelyek gondoskodnak ezen
   specialis belso" csomagok zavartalan ko:zlekedesero"l.

   Az internet fele csatlakozo interfesz lesz az, amelyen keresztu:l
   a kifele meno" kereseket hitelesitju:k es vezerelju:k az internet
   elereset, valamint ahol szu"rju:k az internet felo"l erkezo"
   kereseket. Ez lehet a PPP eseteben a tun0 eszko:z, vagy a DSL-,
   illetve kabelmodemhez csatlakozo halozati kartya.

   Abban az esetben, amikor egy vagy to:bb halozati kartyaval
   csatlakozunk a tu"zfal mo:go:tt talalhato belso" helyi halozatra,
   szinten gondoskodnunk kell a helyi halozaton belu:l mozgo csomagok
   akadalymentes tovabbitasarol.

   A szabalyokat elo"szo:r harom nagyobb osztalyba kell sorolnunk: az
   o:sszes szabadon forgalmazo interfesz, a publikus kimeno" es a
   publikus bejo:vo" interfesz csoportjaba.

   A publikus interfeszekhez tartozo csoportokban ugy kell
   rendeznu:nk a szabalyokat, hogy elo"re keru:ljenek a gyakrabban
   hasznaltak es hatra a kevesbe hasznaltak, valamint a csoportok
   utolso szabalya blokkoljon es naplozzon minden csomagot az adott
   interfeszen es iranyban.

   A ko:vetkezo" szabalyrendszerben szereplo", a kimeno"
   kapcsolatokat tartalmazo csoport csak olyan allow tipusu
   szabalyokat tartalmaz, amelyek szu"resi feltetelei egyertelmu"en
   azonositjak az interneten elerheto" szolgaltatasokat. Az o:sszes
   szabalyban megjelennek a proto, port, in/out, via es keep state
   opciok. A proto tcp szabalyokban emellett szerepel meg egy setup
   opcio is, amellyel a kapcsolatokat kezdemenyezo" csomagokat tudjuk
   azonositani es felvenni az allapottartasert felelo"s dinamikus
   szabalyok ko:ze.

   A bejo:vo" forgalmat vezerlo" szabalyrendszerben elo"szo:r az
   eldobni kivant csomagokat kell megadni, aminek ket eltero" oka
   van. Elo"szo:r is elo"fordulhat, hogy a veszelyes csomagok
   reszleges illeszkedes miatt szabalyosnak tu"nnek. Az ilyen
   csomagokat ertelemszeru"en nem lenne szabad beengedni a szabalyok
   reszleges megfelelese alapjan. A masodszor az eleve ismerten
   problemas es ertelmetlen csomagokat csendben el kellene vetni,
   mielo"tt a szakaszhoz tartozo utolso szabaly fogna meg es
   naplozna. Ez az utolso szabaly egyebkent szu:kseg eseten
   felhasznalhato a tamadok elleni bizonyitekok begyu"jtesere.

   A masik, amire meg oda kell figyelnu:nk, hogy a blokkolt csomagok
   eseteben semmilyen valasz nem keletkezzen, egyszeru"en csak
   tu"njenek el. Igy a tamado nem fogja tudni, hogy a csomagjai vajon
   elertek-e a rendszeru:nket. Minel kevesebb informaciot tudnak
   o:sszegyu"jteni a rendszeru:nkro"l a tamadok, annal
   biztonsagosabbnak tekintheto". Amikor ismeretlen portokra erkezo"
   csomagokat naplozunk, erdemes az /etc/services/ allomanyban vagy
   http://www.securitystats.com/tools/portsearch.php cimen (angolul)
   utananezni a porthoz tartozo szolgaltatasnak. A ku:lo:nbo:zo"
   trojai programok altal portok szamai ezen a linken erheto"ek el
   (angolul): http://www.simovits.com/trojans/trojans.html.

     --------------------------------------------------------------

    30.6.5.6. Pelda egy inkluziv szabalyrendszerre

   A most ko:vetkezo", cimforditast nem tartalmazo szabalyrendszer
   teljesen inkluziv tipusu. Eles rendszereken is nyugodtan
   alkalmazhatjuk. Egyszeru"en csak annyit kell tennu:nk, hogy
   megjegyzesbe tesszu:k az olyan szolgaltatasokra vonatkozo
   szabalyokat, amelyeket nem akarunk engedelyezni. Amikor pedig
   olyan u:zenetek jelennek meg a naploban, amelyeket nem akarunk
   tovabb latni, a bejo:vo" kapcsolatokhoz vegyu:nk fel egy deny
   tipusu szabalyt hozzajuk. Minden szabalyban cserelju:k ki a dc0
   interfeszt arra a halozati kartyara, amely ko:zvetlenu:l
   csatlakoztatja rendszeru:nket az internethez. A felhasznaloi PPP
   eseteben ez a tun0.

   A szabalyok hasznalataban felfedezhetu:nk egyfajta
   rendszerszeru"seget:

     * Mindegyik sorban, ahol az internet fele nyitunk meg egy
       kapcsolatot, a keep-state opciot hasznaljuk.

     * Az internetro"l az o:sszes hitelesitett szolgaltatas elerese
       tartalmazza a limit opciot az elarasztasok kivedese miatt.

     * Az o:sszes szabalyban az in vagy az out parameterrel megadjuk
       szu"rni kivant forgalom iranyat.

     * Az o:sszes szabalyban szerepel a via parameterrel a csomagokat
       tovabbito interfesz neve.

   Az alabbi szabalyokat tegyu:k az /etc/ipfw.rules allomanyba.

 ############## Itt kezdo"dnek az IPFW szabalyai ##########################
 # Kezdes elo"tt to:ro:lju:k az o:sszes aktiv szabalyt.
 ipfw -q -f flush

 # Allitsuk be a parancsok tovabbi szu:kseges opciot.
 cmd="ipfw -q add"
 pif="dc0"     # az internethez csatlakozo
               # interfesz neve

 #################################################################
 # A belso" halozat szamara ne korlatozzunk semmit se.
 # Ha nincs helyi halozatunk, akkor erre nincs szu:ksegu:nk.
 # Az 'xl0' nevet irjuk at a helyi halozatra csatlakozo
 # interfesz nevere.
 ################################################################
 #$cmd 00005 allow all from any to any via xl0

 ################################################################
 # A rendszer belso" interfeszet se szu"rju:k.
 ################################################################
 $cmd 00010 allow all from any to any via lo0

 ################################################################
 # A csomagot engedju:k at a tu"zfalon, ha korabban mar felvettu:nk
 # hozza egy dinamikus szabalyt a keep-state opcioval.
 ################################################################
 $cmd 00015 check-state

 ################################################################
 # Az internet fele forgalmazo interfesz (kimeno" kapcsolatok)
 # A sajat halozatunkrol belu:lro"l vagy erro"l az atjarorol
 # kezdemenyezett kapcsolatokat vizsgaljuk az internet fele.
 ################################################################

 # Kifele engedelyezzu:k az internet-szolgaltatonk nevszerverenek
 # elereset. Az x.x.x.x a szolgaltatonk nevszerverenek IP-cime
 # legyen. Ha a szolgaltatonak to:bb nevszervere is van, akkor
 # masoljuk le ezeket a sorokat es az /etc/resolv.conf
 # allomanyban talalhato IP-cimeket helyettesitsu:k be.
 $cmd 00110 allow tcp from any to x.x.x.x 53 out via $pif setup keep-state
 $cmd 00111 allow udp from any to x.x.x.x 53 out via $pif keep-state

 # Kabel/DSL konfiguraciok eseteben kifele engedelyezzu:k a
 # szolgaltatonk DHCP szerverenek elereset. Ha a "felhasznaloi
 # PPP"-t hasznaljuk, akkor erre nem lesz szu:ksegu:nk, az egesz
 # csoportot to:ro:lhetju:k. Az alabbi szaballyal csiphetju:k el a
 # beirando IP-cimet. Ha a naploban megtalaltuk, akkor vegyu:k
 # ki az elso" szabalyt, a masodikba irjuk bele a cimet es
 # engedelyezzu:k.
 $cmd 00120 allow log udp from any to any 67 out via $pif keep-state
 #$cmd 00120 allow udp from any to x.x.x.x 67 out via $pif keep-state

 # Kifele engedelyezzu:k a szabvany nem biztonsagos WWW
 # funkcio elereset.
 $cmd 00200 allow tcp from any to any 80 out via $pif setup keep-state

 # Kifele engedelyezzu:k a biztonsagos HTTPS funkcio
 # elereset TLS SSL hasznalataval.
 $cmd 00220 allow tcp from any to any 443 out via $pif setup keep-state

 # Kifele engedelyezzu:k a e-mailek ku:ldeset es fogadasat.
 $cmd 00230 allow tcp from any to any 25 out via $pif setup keep-state
 $cmd 00231 allow tcp from any to any 110 out via $pif setup keep-state

 # Kifele engedelyezzu:k a FreeBSD (a make install es a CVSUP)
 # funkcioit. Ezzel lenyegeben a rendszeradminisztratornak
 # ,,ISTENI'' jogokat adunk.
 $cmd 00240 allow tcp from me to any out via $pif setup keep-state uid root

 # Kifele engedelyezzu:k a pinget.
 $cmd 00250 allow icmp from any to any out via $pif keep-state

 # Kifele engedelyezzu:k az ido" szolgaltatast.
 $cmd 00260 allow tcp from any to any 37 out via $pif setup keep-state

 # Kifele engedelyezzu:k az nntp news szolgaltatast
 # (vagyis a hircsoportokat)
 $cmd 00270 allow tcp from any to any 119 out via $pif setup keep-state

 # Kifele engedelyezzu:k a biztonsagos FTP, telnet es SCP
 # elereset az SSH (secure shell) hasznalataval.
 $cmd 00280 allow tcp from any to any 22 out via $pif setup keep-state

 # Kifele engedelyezzu:k a whois szolgaltatast.
 $cmd 00290 allow tcp from any to any 43 out via $pif setup keep-state

 # Dobjuk el es naplozzunk mindent, ami megprobal kijutni.
 # Ez a szabaly gondoskodik rola, hogy alapertelmezes szerint
 # mindent blokkoljunk.
 $cmd 00299 deny log all from any to any out via $pif

 ################################################################
 # Az internet felo"li interfesz (bejo:vo" kapcsolatok)
 # A sajat halozatunk fele vagy erre az atjarora
 # nyitott kapcsolatokat vizsgaljuk az internet felo"l.
 ################################################################

 # Blokkoljunk minden olyan bejo:vo" forgalmat, amely a fenntartott
 # cimtartomanyok fele tart.
 $cmd 00300 deny all from 192.168.0.0/16 to any in via $pif  #RFC 1918: privat IP
 $cmd 00301 deny all from 172.16.0.0/12 to any in via $pif   #RFC 1918: privat IP
 $cmd 00302 deny all from 10.0.0.0/8 to any in via $pif      #RFC 1918: privat IP
 $cmd 00303 deny all from 127.0.0.0/8 to any in via $pif     #helyi
 $cmd 00304 deny all from 0.0.0.0/8 to any in via $pif       #helyi
 $cmd 00305 deny all from 169.254.0.0/16 to any in via $pif  #DHCP
 $cmd 00306 deny all from 192.0.2.0/24 to any in via $pif    #dokumentacios celokra fenntartott
 $cmd 00307 deny all from 204.152.64.0/23 to any in via $pif #Sun klaszterek o:sszeko:tesere hasznalt
 $cmd 00308 deny all from 224.0.0.0/3 to any in via $pif     #D es E osztalyu multicast

 # A nyilvanos pingek tiltasa.
 $cmd 00310 deny icmp from any to any in via $pif

 # Az ident szolgaltatas tiltasa.
 $cmd 00315 deny tcp from any to any 113 in via $pif

 # Blokkoljuk az o:sszes Netbios szolgaltatast: 137=nev, 138=datagram,
 # 139=session. A Netbios az MS Windows megosztasat implementalja.
 # Blokkoljuk az MS Windows hosts2 nevszerver kereseit is a 81-es
 # porton.
 $cmd 00320 deny tcp from any to any 137 in via $pif
 $cmd 00321 deny tcp from any to any 138 in via $pif
 $cmd 00322 deny tcp from any to any 139 in via $pif
 $cmd 00323 deny tcp from any to any 81 in via $pif

 # Eldobjuk az o:sszes keso"n erkezo" csomagot.
 $cmd 00330 deny all from any to any frag in via $pif

 # Eldobjuk azokat az ACK csomagokat, amelyek egyik dinamikus
 # szabalynak sem felelnek meg.
 $cmd 00332 deny tcp from any to any established in via $pif

 # Befele engedelyezzu:k a szolgaltato DHCP szerverenek valaszat. Ebben
 # a szabalyban csak a DHCP szerver IP-cime szerepelhet, mivel ez az
 # egyetlen olyan hitelesitett forras, ami ilyen csomagokat ku:ldhet.
 # Ez csak a kabeles es DSL tipusu kapcsolatok eseteben szu:kseges.
 # Amikor a "felhasznaloi PPP"-vel csatlakozunk az internethez, nem
 # kell ez a szabaly. Ugyanazt az IP-cimet kell megadnunk, amelyet a
 # kimeno" kapcsolatoknal is.
 #$cmd 00360 allow udp from any to x.x.x.x 67 in via $pif keep-state

 # Befele engedelyezzu:k a szabvany WWW funkciot, mivel webszerveru:nk
 # is van.
 $cmd 00400 allow tcp from any to me 80 in via $pif setup limit src-addr 2

 # Befele engedelyezzu:k a biztonsagos FTP, telnet es SCP
 # tipusu kapcsolatokat az internetro"l.
 $cmd 00410 allow tcp from any to me 22 in via $pif setup limit src-addr 2

 # Befele engedelyezzu:k az internetro"l erkezo" nem biztonsagos telnet
 # kapcsolatokat. Azert tekintju:k nem biztonsagosnak, mert az
 # azonositok es a jelszavak az interneten titkositatlanul vandorolnak.
 # To:ro:lju:k ezt a csoportot, ha nincs telnet szolgaltatasunk.
 $cmd 00420 allow tcp from any to me 23 in via $pif setup limit src-addr 2

 # Dobjuk el es naplozzuk az o:sszes to:bbi kintro"l erkezo" csomagot.
 $cmd 00499 deny log all from any to any in via $pif

 # Alapertelmezes szerint dobjuk el mindent. Az ide erkezo"
 # csomagokat is naplozzuk, amibo"l to:bbet is ki tudunk majd
 # deriteni.
 $cmd 00999 deny log all from any to any
 ############# Itt fejezo"dnek be az IPFW szabalyai #####################

     --------------------------------------------------------------

    30.6.5.7. Pelda halozati cimforditasra es allapottartasra

   Az IPFW cimfordito funkciojanak kihasznalasahoz tovabbi
   konfiguracios beallitasok alkalmazasara is szu:ksegu:nk lesz. A
   rendszermagban opcio ko:zo:tt meg kell adnunk az option IPDIVERT
   sort a to:bbi IPFIREWALL sor mellett, es forditanunk egy sajat
   verziot.

   Emellett meg az /etc/rc.conf allomanyban is engedelyezni kell az
   IPFW alapveto" funkcioit.

 natd_enable="YES"                   # engedelyezzu:k a cimforditasert felelo"s demont
 natd_interface="rl0"                # az internet fele mutato halozati kartya neve
 natd_flags="-dynamic -m"            # -m = a portszamok megtartasa, ha lehetseges

   Az allapottarto szabalyok hasznalata a divert natd cimforditasi
   opcioval egyu:tt nagyban no:veli a szabalyrendszer
   leprogramozasanak bonyolultsagat. A check-state es divert natd
   szabalyok helye kritikus a megfelelo" mu"ko:des tekinteteben. Az
   eddig megszokott egyszeru" viselkedes itt mar nem ervenyesu:l.
   Bevezetu:nk egy uj cselekvest is, amelynek a neve skipto. A skipto
   parancs hasznalatahoz elengedhetetlen a szabalyok sorszamozasa,
   mivel pontosan tudnunk kell, hogy a skipto hatasara hova kell
   ugrania a vezerlesnek.

   A ko:vetkezo" peldaban nem fogunk sok megjegyzest latni, mivel
   benne az egyik lehetseges programozasi stilust probaljuk
   erzekeltetni es a csomagok szabalyrendszerek ko:zti aramlasat
   magyarazzuk.

   A feldolgozas a szabalyokat tartalmazo allomany tetejen talalhato
   elso" szaballyal kezdo"dik, es innen egyesevel pereg vegig lefele
   a feldolgozas egeszen addig, amig a csomag a szu"resi feltetelek
   valamelyikenek eleget nem tesz es tavozik a tu"zfalbol. Leginkabb
   a 100-as, 101-es, 450-es, 500-as es 510-es sorszamu szabalyokat
   emelnenk ki. Ezek vezerlik kimeno" es bejo:vo" csomagok
   forditasat, ezert a hozzajuk tartozo dinamikus allapottarto
   bejegyzesek mindig a helyi halozat IP-cimeire hivatkoznak. Amit
   meg erdemes megfigyelnu:nk, hogy az o:sszes atereszto" es eldobo
   szabalyban szerepel a csomag haladasi iranya (tehat kimeno" vagy
   eppen bejo:vo") es az erintett interfeszt megnevezese. Emellett
   azt is vegyu:k eszre, hogy az o:sszes kifele iranyulo
   kapcsolatletrehozasi keres az 500-as sorszamu szabalyhoz fog
   ugrani a cimforditas elvegzesehez.

   Tegyu:k fel, hogy a helyi halozatunkon levo" felhasznalok
   szeretnek honlapokat nezgetni az interneten. A honlapok a 80-as
   porton keresztu:l kommunikalnak. Tehat amikor egy ilyen csomag
   eleri a tu"zfalat, nem fog illeszkedni a 100-as szabalyra, mert a
   fejlece szerint kifele halad es nem befele. A 101-es szabalyon is
   atlep, mivel ez az elso" csomag, igy a dinamikus allapottarto
   tablazatban sem szerepel meg. A csomag vegu:l a 125-o:s szabalyra
   fog illeszkedni: kifele halad az internetre csatlakozo halozati
   kartyan. A csomagban azonban meg mindig az eredeti forras IP-cime
   talalhato, amely a helyi halozat egyik gepere hivatkozik. A
   szabaly illeszkedesekor ket cselekves is vegbemegy. A keep-state
   opcio hatasara ez a szabaly felveszi ezt a kapcsolatot az
   allapottarto dinamikus szabalyok ko:ze es vegrehajtja a masik
   megadott feladatot. Ez a feladat resze a dinamikus tablazatba
   ro:gzitett bejegyzesnek, ami ebben az esetben a skipto 500
   ("ugorjunk az 500-as szabalyra") lesz. Az 500-as szabaly a
   tovabbku:ldes elo"tt leforditja a csomag forras IP-cimet. Ezt ne
   felejtsu:k el, nagyon fontos! A csomag ezutan eljut a celjahoz, es
   visszaterve ismet belep a szabalyrendszer tetejen. Ezuttal
   illeszkedni fog a 100-as szabalyra es a cel IP-cimet
   visszaforditjuk a helyi halozatunk megfelelo" gepenek cimere.
   Ezutan a check-state szabalyhoz keru:l, amely megtalalja a
   dinamikus szabalyok ko:zo:tt es tovabbengedi a belso" halozatra.
   Ezzel visszakeru:l a ku:ldo" gephez, amely egy ujabb csomagot
   ku:ld egy ujabb adatszeletet kerve a tavoli szerverto"l. Ekkor mar
   a check-state szabaly megtalalja a hozzatartozo bejegyzest a
   dinamikus szabalyok ko:zo:tt es vegrehajtodik a korabban letarolt
   skipto 500 mu"velet. A csomag erre az 500-as szabalyra ugrik, ahol
   leforditjuk a cimet es tovabbku:ldju:k.

   Az bejo:vo" oldalon minden, ami egy korabban kialakult kapcsolat
   reszekent erkezik, automatikusan a check-state es a megfelelo"
   helyre rakott divert natd szabalyok altal dolgozodik fel. Itt
   mindo:ssze a rossz csomagok eldobasaval es a hitelesitett
   szolgaltatasok eleresenek biztositasaval kell foglalkoznunk.
   Peldaul a tu"zfalon egy webszerver fut, es azt szeretnenk, hogy az
   internetro"l kepesek legyenek elerni a rajta levo" oldalakat. Az
   ujonnan beerkezo" kapcsolatepitesi kerelem a 100-as szabalyra fog
   illeszkedni, amelynek a cel IP-cimet a tu"zfal helyi halozaton
   talalhato cimere fogjuk lekepezni. A csomagot ezutan meg
   megvizsgaljuk, nem tartalmaz-e valamilyen huncutsagot, majd vegu:l
   a 425-o:s szabalynal fog kiko:tni. Az egyezeskor ket dolog
   to:rtenhet: a csomaghoz felveszu:nk egy dinamikus szabalyt, de
   ezuttal az adott forras IP-cimro"l erkezo" kapcsolatkeresek szamat
   2-re lekorlatozzuk. Ezzel az adott szolgaltatas portjan meg tudjuk
   ovni a tu"zfalat u:zemelteto" gepet a DoS tipusu tamadasoktol. A
   csomagot ezutan hozzatartozo cselekves szerint tovabbengedju:k a
   belso" halozat fele. Visszatereskor a tu"zfal felismeri, hogy a
   csomag egy mar meglevo" kapcsolathoz tartozik, ezert ko:zvetlenu:l
   az 500-as szabalyhoz keru:l cimforditasra, majd a kimeno"
   interfeszen keresztu:l tovabbku:ldju:k.

   Ime az elso" pelda egy ilyen szabalyrendszerre:

 #!/bin/sh
 cmd="ipfw -q add"
 skip="skipto 500"
 pif=rl0
 ks="keep-state"
 good_tcpo="22,25,37,43,53,80,443,110,119"

 ipfw -q -f flush

 $cmd 002 allow all from any to any via xl0  # nem szu"rju:k a belso" halozatot
 $cmd 003 allow all from any to any via lo0  # nem szu"rju:k a helyi interfeszt

 $cmd 100 divert natd ip from any to any in via $pif
 $cmd 101 check-state

 # A kimeno" csomagok hitelesitese:
 $cmd 120 $skip udp from any to xx.168.240.2 53 out via $pif $ks
 $cmd 121 $skip udp from any to xx.168.240.5 53 out via $pif $ks
 $cmd 125 $skip tcp from any to any $good_tcpo out via $pif setup $ks
 $cmd 130 $skip icmp from any to any out via $pif $ks
 $cmd 135 $skip udp from any to any 123 out via $pif $ks


 # Az o:sszes olyan csomagot eldobjuk, amely a fenntartott
 # cimtartomanyokba tart:
 $cmd 300 deny all from 192.168.0.0/16  to any in via $pif  #RFC 1918: privat IP
 $cmd 301 deny all from 172.16.0.0/12   to any in via $pif  #RFC 1918: privat IP
 $cmd 302 deny all from 10.0.0.0/8      to any in via $pif  #RFC 1918: privat IP
 $cmd 303 deny all from 127.0.0.0/8     to any in via $pif  #helyi
 $cmd 304 deny all from 0.0.0.0/8       to any in via $pif  #helyi
 $cmd 305 deny all from 169.254.0.0/16  to any in via $pif  #DHCP
 $cmd 306 deny all from 192.0.2.0/24    to any in via $pif  #dokumentacios celokra fenntartott
 $cmd 307 deny all from 204.152.64.0/23 to any in via $pif  #Sun klaszter
 $cmd 308 deny all from 224.0.0.0/3     to any in via $pif  #D es E osztalyu multicast

 # Az erkezo" csomagok hitelesitese:
 $cmd 400 allow udp from xx.70.207.54 to any 68 in $ks
 $cmd 420 allow tcp from any to me 80 in via $pif setup limit src-addr 1


 $cmd 450 deny log ip from any to any

 # Ide ugrunk a kimeno" allapottarto szabalyoknal:
 $cmd 500 divert natd ip from any to any out via $pif
 $cmd 510 allow ip from any to any

 ##################### a szabalyok vege ##################

   A ko:vetkezo" pelda teljesen megegyezik az elo"zo"vel, azonban itt
   mar dokumentacios szandekkal szerepelnek megjegyzesek is, melyek a
   tapasztalatlan IPFW szabalyiroknak segitik jobban megerteni a
   szabalyok pontos mu"ko:deset.

   A masodik pelda:

 #!/bin/sh
 ############# Az IPFW szabalyai itt kezdo"dnek ###########################
 # Kezdes elo"tt to:ro:lju:k az o:sszes jelenleg aktiv szabalyt:
 ipfw -q -f flush

 # Beallitjuk a parancsok megfelelo" elo"tagjait:
 cmd="ipfw -q add"
 skip="skipto 800"
 pif="rl0"     # az internethez csatlakozo
               # halozati interfesz neve

 #################################################################
 # A belso" halozat szamara ne korlatozzunk semmit se.
 # Ha nincs helyi halozatunk, akkor erre nincs szu:ksegu:nk.
 # Az 'xl0' nevet irjuk at a helyi halozatra csatlakozo
 # interfesz nevere.
 #################################################################
 $cmd 005 allow all from any to any via xl0

 #################################################################
 # A rendszer belso" interfeszet se szu"rju:k.
 #################################################################
 $cmd 010 allow all from any to any via lo0

 #################################################################
 # Elleno"rizzu:k, hogy ez egy beerkezo" csomag es ha igen, akkor
 # forditsuk a cimet.
 #################################################################
 $cmd 014 divert natd ip from any to any in via $pif

 #################################################################
 # Ha ehhez a csomaghoz korabban mar vettu:k fel dinamikus
 # szabalyt a keep-state opcio reven, akkor engedju:k tovabb.
 #################################################################
 $cmd 015 check-state

 #################################################################
 # Az internet fele forgalmazo interfesz (kimeno" kapcsolatok)
 # A sajat halozatunkrol belu:lro"l vagy erro"l az atjarorol
 # kezdemenyezett kapcsolatokat vizsgaljuk az internet fele.
 #################################################################

 # Kifele engedelyezzu:k az internet-szolgaltatonk nevszerverenek
 # elereset. Az x.x.x.x a szolgaltato nevszerverenek IP-cime
 # lesz. Ha a szolgaltatonknak to:bb nevszervere is van, akkor
 # az /etc/resolv.conf allomanybol nezzu:k ki a cimeiket es
 # masoljuk le az alabbi sor mindegyiku:kho:z.
 $cmd 020 $skip tcp from any to x.x.x.x 53 out via $pif setup keep-state


 # A kabeles es DSL kapcsolatok eseten engedelyezzu:k a szolgaltato
 # DHCP szerverenek elereset.
 $cmd 030 $skip udp from any to x.x.x.x 67 out via $pif keep-state

 # Kifele engedelyezzu:k a szabvany nem biztonsagos WWW funkciot
 $cmd 040 $skip tcp from any to any 80 out via $pif setup keep-state

 # Kifele engedelyezzu:k a biztonsagos HTTPS funkciot a TLS SSL
 # hasznalataval.
 $cmd 050 $skip tcp from any to any 443 out via $pif setup keep-state

 # Kifele engedelyezzu:k az e-mailek ku:ldeset es fogadasat.
 $cmd 060 $skip tcp from any to any 25 out via $pif setup keep-state
 $cmd 061 $skip tcp from any to any 110 out via $pif setup keep-state

 # Kifele engedelyezzu:k a FreeBSD (make install es CVSUP) funkcioit.
 # Ezzel a rendszeradminisztratornak ,,ISTENI'' jogokat adunk.
 $cmd 070 $skip tcp from me to any out via $pif setup keep-state uid root

 # Kifele engedelyezzu:k a pinget.
 $cmd 080 $skip icmp from any to any out via $pif keep-state

 # Kifele engedelyezzu:k az ido" szolgaltatast.
 $cmd 090 $skip tcp from any to any 37 out via $pif setup keep-state

 # Kifele engedelyezzu:k az nntp news szolgaltatast (tehat a
 # hircsoportokat).
 $cmd 100 $skip tcp from any to any 119 out via $pif setup keep-state

 # Kifele engedelyezzu:k a biztonsagos FTP, telnet es SCP
 # funkciokat az SSH (secure shell) hasznalataval.
 $cmd 110 $skip tcp from any to any 22 out via $pif setup keep-state

 # Kifele engedelyezzu:k ki a whois kereseket.
 $cmd 120 $skip tcp from any to any 43 out via $pif setup keep-state

 # Kifele engedelyezzu:k az NTP ido"szerver elereset.
 $cmd 130 $skip udp from any to any 123 out via $pif keep-state

 #################################################################
 # Az internet felo"li interfesz (bejo:vo" kapcsolatok)
 # A sajat halozatunk fele vagy erre az atjarora
 # nyitott kapcsolatokat vizsgaljuk az internet felo"l.
 #################################################################

 # Tiltsuk a fenntartott cimtartomanyok fele halado o:sszes beerkezo"
 # forgalmat.
 $cmd 300 deny all from 192.168.0.0/16  to any in via $pif  #RFC 1918: privat IP
 $cmd 301 deny all from 172.16.0.0/12   to any in via $pif  #RFC 1918: privat IP
 $cmd 302 deny all from 10.0.0.0/8      to any in via $pif  #RFC 1918: privat IP
 $cmd 303 deny all from 127.0.0.0/8     to any in via $pif  #helyi
 $cmd 304 deny all from 0.0.0.0/8       to any in via $pif  #helyi
 $cmd 305 deny all from 169.254.0.0/16  to any in via $pif  #DHCP
 $cmd 306 deny all from 192.0.2.0/24    to any in via $pif  #dokumentacios celokra fenntartott
 $cmd 307 deny all from 204.152.64.0/23 to any in via $pif  #Sun klaszter
 $cmd 308 deny all from 224.0.0.0/3     to any in via $pif  #D es E osztalyu multicast

 # Az ident tiltasa.
 $cmd 315 deny tcp from any to any 113 in via $pif

 # Blokkoljuk az o:sszes Netbios szolgaltatast: 137=nev, 138=datagram,
 # 139=session. A Netbios az MS Windows megosztasat implementalja.
 # Blokkoljuk az MS Windows hosts2 nevszerver kereseit is a 81-es
 # porton.
 $cmd 320 deny tcp from any to any 137 in via $pif
 $cmd 321 deny tcp from any to any 138 in via $pif
 $cmd 322 deny tcp from any to any 139 in via $pif
 $cmd 323 deny tcp from any to any 81  in via $pif

 # Dobjuk el a keso"n erkezo" csomagokat.
 $cmd 330 deny all from any to any frag in via $pif

 # Dobjuk el azokat az ACK csomagokat, amelyekre nincs
 # dinamikus szabaly.
 $cmd 332 deny tcp from any to any established in via $pif

 # Engedelyezzu:k a szolgaltato DHCP szervereto"l erkezo" forgalmat. Ennek
 # a szabalynak tartalmaznia kell a DHCP szerver cimet, mert csak to"le
 # fogadunk el ilyen tipusu csomagokat. Egyedu:l csak kabeles vagy DSL
 # konfiguraciok eseten hasznalatos, a "felhasznaloi PPP" eseteben
 # to:ro:lhetju:k. Ez ugyanaz az IP-cim, amelyet a kimeno" kapcsolatoknal
 # megadtunk.
 $cmd 360 allow udp from x.x.x.x to any 68 in via $pif keep-state

 # Befele engedelyezzu:k a szabvany WWW funkciot, mivel van
 # webszerveru:nk.
 $cmd 370 allow tcp from any to me 80 in via $pif setup limit src-addr 2

 # Befele engedelyezzu:k a biztonsagos FTP, telnet es SCP
 # hasznalatat az internetro"l.
 $cmd 380 allow tcp from any to me 22 in via $pif setup limit src-addr 2

 # Befele engedelyezzu:k a nem biztonsagos telnet elereset az
 # internetro"l. Azert nem tekintju:k biztonsagosnak, mert az
 # azonositokat es a jelszavakat az interneten titkositatlanul
 # ko:zvetiti. Ha nincs telnet szolgaltatasunk, akkor to:ro:lhetju:k is ezt
 # a csoportot.
 $cmd 390 allow tcp from any to me 23 in via $pif setup limit src-addr 2

 # Dobjuk el es naplozzuk az o:sszes internetro"l erkezo" hitelesitetlen kapcsolatot.
 $cmd 400 deny log all from any to any in via $pif

 # Dobjuk el es naplozzuk az o:sszes internetre meno" hitelesitetlen kapcsolatot.
 $cmd 450 deny log all from any to any out via $pif

 # Ez lesz a kimeno" szabalyokhoz tartozo "skipto" celja.
 $cmd 800 divert natd ip from any to any out via $pif
 $cmd 801 allow ip from any to any

 # Minden mast alapertelmezes szerint tiltunk es naplozunk.
 $cmd 999 deny log all from any to any
 ############# Az IPFW szabalyai itt fejezo"dnek be #####################

     --------------------------------------------------------------

                Fejezet 31. Egyeb halado halozati temak

31.1. Attekintes

   Ebben a fejezetben szamos komolyabb halozati temat fogunk
   targyalni.

   A fejezet elolvasasa soran megismerju:k:

     * az atjarok es az utvalasztas alapjait;

     * hogyan allitsunk be IEEE(R) 802.11 es Bluetooth eszko:zo:ket;

     * a FreeBSD segitsegevel hogyan tudunk ket halozatot
       o:sszeko:tni halozati hidakon keresztu:l;

     * hogyan inditsuk halozatrol egy lemez nelku:li gepet;

     * hogyan allitsunk be halozati cimforditast;

     * hogyan kapcsoljunk o:ssze ket szamitogepet PLIP hasznalataval;

     * hogyan allitsuk be az IPv6 hasznalatat egy FreeBSD-s gepen

     * hogyan allitsuk be az ATM hasznalatat;

     * hogyan engedelyezzu:k es hasznaljuk a Ko:zo:s cimredundancia
       protokollt FreeBSD-ben.

   A fejezet elolvasasahoz ajanlott:

     * az /etc/rc ko:nyvtarban talalhato szkriptek mu"ko:desenek
       ismerete;

     * az alapveto" halozati fogalmak ismerete;

     * egy uj FreeBSD rendszermag beallitasanak es telepitesenek
       ismerete (8 fejezet);

     * a ku:lso" szoftverek telepitesenek ismerete (4 fejezet).

     --------------------------------------------------------------

31.2. Atjarok es az utvalasztas

   Keszitette: Coranth Gryphon.

   Egy gep egy masikat ugy tud megtalalni a halozaton, ha erre
   letezik egy olyan mechanizmus, amely leirja, hogyan tudunk eljutni
   az egyikto"l a masikig. Ezt hivjuk utvalasztasnak (routing). Az
   "utvonal" (route) cimek egy parjakent adhato meg, egy "cellal"
   (destination) es egy "atjaroval" (gateway). Ez a paros mondja meg,
   hogy ha el akarjuk erni ezt a celt, akkor ezen az atjaron
   keresztu:l kell tovabbhaladnunk. A celoknak harom tipusa lehet:
   egyeni gepek, alhalozatok es az "alapertelmezett". Az
   "alapertelmezett utvonalat" (default route) abban az esetben
   alkalmazzuk, ha semelyik mas utvonal nem megfelelo". Az
   alapertelmezett utvonalakrol a keso"bbiekben meg beszelni fogunk.
   Harom tipusa van az atjaroknak: egyeni gepek, felu:letek (avagy
   "linkek") es a hardveres Ethernet cimek (MAC-cimek).

     --------------------------------------------------------------

  31.2.1. Pelda

   Az utvalasztas ku:lo:nbo:zo" teru:leteit a ko:vetkezo" netstat
   parancs alapjan fogjuk bemutatni:

 % netstat -r
 Routing tables

 Destination      Gateway            Flags     Refs     Use     Netif Expire

 default          outside-gw         UGSc       37      418      ppp0
 localhost        localhost          UH          0      181       lo0
 test0            0:e0:b5:36:cf:4f   UHLW        5    63288       ed0     77
 10.20.30.255     link#1             UHLW        1     2421
 example.com      link#1             UC          0        0
 host1            0:e0:a8:37:8:1e    UHLW        3     4601       lo0
 host2            0:e0:a8:37:8:1e    UHLW        0        5       lo0 =>
 host2.example.com link#1             UC          0        0
 224              link#1             UC          0        0

   Az elso" ket sorban az alapertelmezett utvonalat (melyro"l
   reszleteiben majd a ko:vetkezo" szakaszban fogunk szolni) es a
   localhost utvonalat lathatjuk.

   A localhost cimhez az utvalasztasi tablazatban a lo0 eszko:z
   tartozik (a Netif oszlopban), amelyet loopback eszko:znek is
   neveznek. Ez arra utasitja a rendszert, hogy az ide ku:ldo:tt
   csomagokat ne a helyi halozaton ku:ldje keresztu:l, hanem csak
   ezen a belso" felu:leten, mivel ugyis oda jutnanak vissza, ahonnan
   indultak.

   A tablazatban a ko:vetkezo" sor egy 0:e0 kezdetu" cimet tartalmaz.
   Ez egy hardveres Ethernet cim, mas neven MAC-cim. A FreeBSD
   magatol kepes beazonositani tetszo"leges gepet (ebben a peldaban a
   test0 gepet) a helyi Ethernetes halozaton es felvenni hozza egy
   utvonalat, ko:zvetlenu:l az ed0 Ethernetes csatolofelu:leten
   keresztu:l. Ehhez a tipusu utvonalhoz tartozik meg egy lejarati
   ido" is (a Expire oszlop), amely akkor kap szerepet, ha ennyi ido"
   elteltevel nem kapunk semmilyen hirt a gepro"l. Amikor ilyen
   to:rtenik, az gephez eddig nyilvantartott utvonal automatikusan
   to:rlo"dik. Ezek a gepek a RIP (utvonal-informacios protokoll,
   Routing Information Protocol) nevu" mechanizmuson keresztu:l
   azonositodnak, mely a legro:videbb ut kiszamitasa alapjan
   hatarozza meg a helyi gepekhez vezeto" utvonalat.

   A FreeBSD a helyi alhalozat (10.20.30.255 es example.com, az
   alhalozathoz tartozo nev) eseteben is felvesz utvonalakat. A
   link#1 megnevezes a gepben talalhato elso" Ethernet-kartyat
   jelo:li. Megfigyelhetju:k, hogy rajta kivu:l nincs is to:bb
   felu:lete.

   Mindegyik csoport (a helyi halozati gepek es a helyi
   alhalozatokatok) utvonalait a routed nevu" demon tartja
   automatikusan karban. Ha ez nem fut, akkor csak a statikusan
   definialt (vagyis az elo"re megadott) utvonalak fognak letezni.

   A host1 sor a sajat gepu:nkre vonatkozik, amelyet az Ethernet cime
   szerint ismeru:nk. Mivel mi vagyunk ku:ldo" gep, a FreeBSD tudni
   fogja, hogy ilyenkor az Ethernetes felu:let helyett a loopback
   eszko:zt (lo0) kell hasznalnia.

   A ket host2 sor arra mutat peldat, amikor az ifconfig(8)
   paranccsal alneveket hozunk letre (ennek konkret okait lasd az
   Ethernetro"l szolo reszben). A lo0 felu:let neve utan szereplo" =>
   szimbolum azt jelzi, hogy ez nem csak egy loopback felu:let (mivel
   a cime szinten a helyi gepre mutat), hanem a felu:let egy masik
   neve. Ilyen utvonalak csak az alneveket ismero" gepeknel jelennek
   meg. A helyi halozaton minden mas gepnel egyszeru"en csak a link#1
   jelenik meg az ilyen utvonalak eseteben.

   Az utolso sor (a 224 cellal rendelkezo" alhalozat) a multicastre
   (to:bbesku:ldesre) szolgal, amellyel majd egy masik szakaszban
   foglalkozunk.

   Vegezetu:l az utvonalakhoz tartozo ku:lo:nfele tulajdonsagok a
   Flags oszlopban lathatoak. Az alabbi ro:vid tablazatban
   o:sszefoglaltunk ko:zu:lu:k nehanyat:

   U Up: az utvonal aktiv                                             
   H Host: az utvonal egyetlen gepre mutat                            
   G Gateway: az adott cel fele ezen a gepen keresztu:l ku:ldju:nk,   
     amely majd kitalalja, hogy merre ku:ldje tovabb                  
   S Static: ez az utvonal statikus, nem a rendszer hozta letre       
     automatikusan                                                    
     Clone: ebbo"l az utvonalbol szarmaztatunk uj utvonalat azokhoz a 
   C gepekhez, amelyekhez csatlakozunk. Ilyen utvonalakat altalaban a 
     helyi halozatokban talalhatunk                                   
     WasCloned: azt jelzi, hogy ezt az utvonalat egy helyi halozatra  
   W mutato (klon, avagy Clone tipusu) utvonal alapjan hoztuk letre   
     automatikusan                                                    
   L Link: az utvonal Ethernetes hardverhez kapcsolodik               

     --------------------------------------------------------------

  31.2.2. Alapertelmezett utvonalak

   Amikor a helyi rendszernek fel kell vennie a kapcsolatot egy
   tavoli geppel, elleno"rzi az utvalasztasi tablazatban, hogy
   letezik-e mar hozza valamilyen utvonal. Ha a tavoli gep egy olyan
   alhalozatba esik, amelyet mar el tudunk erni (klonozott
   utvonalak), akkor a rendszer megnezi, hogy a hozzatartozo
   felu:leten kepes-e kapcsolatot letesiteni.

   Ha minden ismert utvonal cso"do:t mond, akkor a rendszeru:nknek
   marad meg egy utolso eselye: az "alapertelmezett" utvonal
   hasznalata. Ez az utvonal egy specialis atjaro utvonal (ebbo"l
   altalaban csak egyetlen egy letezik a rendszerben) es
   tulajdonsagai ko:zo:tt mindig szerepel a c. A helyi halozat gepei
   ko:zu:l ez az atjaro az legyen, amelyik ko:zvetlenu:l kapcsolodik
   a ku:lso" vilaghoz (PPP o:sszeko:ttetessel, DSL, kabelmodem, T1
   vagy barmilyen mas halozati felu:leten keresztu:l).

   Amikor pedig magat a ku:lso" vilag fele atjarokent szolgalo gepet
   allitjuk be, az alapertelmezett utvonal az internet-szolgaltatonk
   altal megadott gep cime lesz.

   Vegyu:nk egy peldat az alapertelmezett utvonalakra. Egy tipikus
   konfiguracio:

 [Helyi2]  <--ether-->  [Helyi1]  <--PPP--> [ Szolg. ]  <--ether-->  [T1-AJ]
      

   A Helyi1 es Helyi2 gepek a halozatunk tagjai. A Helyi1 az
   internet-szolgaltatot eri el egy betarcsazos PPP kapcsolaton
   keresztu:l. A PPP szerver a ku:lso" felu:leten keresztu:l a helyi
   halozaton pedig egy masik atjarohoz csatlakozik.

   Az egyes gepek alapertelmezett utvonalai igy alakulnak:

         Gep            Alapertelmezett atjaro          Felu:let      
   Helyi2           Helyi1                          Ethernet          
   Helyi1           T1-AJ                           PPP               

   Gyakran felmeru:l a kerdes, hogy "Miert (es hogy-hogy) a T1-AJ a
   Helyi1 gep szamara az alapertelmezett atjaro es nem a szolgaltato
   azon szervere, amelyhez csatlakozott?"

   Ne felejtsu:k el, hogy a PPP felu:let a szolgaltato helyi
   halozataban a mi reszu:nkre kap cimet, es a itt az o:sszes to:bbi
   gephez tartozo utvonal automatikusan letrejo:n. Emiatt mar eleve
   el tudjuk erni a T1-AJ gepet, ezert amikor a szolgaltaton
   keresztu:l ku:ldu:nk, nincs szu:ksegu:nk egy tovabbi lepcso"re.

   Altalaban a X.X.X.1 cimet szoktak a helyi halozat atjarojanak
   kiosztani. Ezert (az elo"bbi peldat ujrahasznositva) ha a helyi
   halozatunkon a C osztalyu 10.20.30 cimtartomanyt hasznaljuk, es a
   szolgaltatonkhoz a 10.9.9 cimtartomany tartozik, akkor az
   alapertelmezett utvonalak a ko:vetkezo"k lesznek:

                   Gep                     Alapertelmezett utvonal    
   Helyi2 (10.20.30.2)                  Helyi1 (10.20.30.1)           
   Helyi1 (10.20.30.1, 10.9.9.30)       T1-AJ (10.9.9.1)              

   Az /etc/rc.conf allomanyon keresztu:l ko:nnyen meg tudjuk adni az
   alapertelmezett utvonalat. A peldankban a Helyi2 gep /etc/rc.conf
   allomanyaba kell felvennu:nk a ko:vetkezo" sort:

 defaultrouter="10.20.30.1"

   A route(8) parancs hasznalataval viszont akar ko:zvetlenu:l is
   megtehetju:k mindezt:

 # route add default 10.20.30.1

   A route(8) man oldalon olvashatunk arrol bo"vebben, hogy a
   halozati utvalasztasi tablazatokat kezzel hogyan tudjuk
   modositani.

     --------------------------------------------------------------

  31.2.3. Ketto"s halozatu gepek

   Egy masik tipusu konfiguraciorol is szot kell ejtenu:nk, ahol a
   gep egyszerre ket halozatnak is tagja. Gyakorlatilag az atjarokent
   u:zemelo" szamitogepek (mint peldaul az, amelyik a fenti peldaban
   PPP kapcsolattal csatlakozott) ilyen ketto"s halozatu gepnek
   tekintheto"ek. Ez a kifejezes azonban igazabol csak azokra az
   esetekre illik, ahol a gep egyszerre ket helyi halozatban is
   megjelenik.

   Az egyik esetben a gepben ket Ethernet kartya talalhato, melyek
   mindegyike birtokol egy-egy halozati cimet az egyes alhalozatokon.
   De elo"fordulhat az is, hogy a gepu:nkben csupan egyetlen Ethernet
   kartya van es az ifconfig(8) segitsegevel alneveket hoztunk letre
   hozza. Az elo"bbi altalaban ket fizikailag elku:lo:no:lo" Ethernet
   alapu halozat eseteben to:rtenik, mig az utobbinal csak egyetlen
   fizikai halozati szegmensro"l van szo, amely viszont logikailag
   ket ku:lo:n alhalozatot tartalmaz.

   Akarmelyiket is vesszu:k, az utvalasztasi tablazatok ugy jo:nnek
   letre, hogy bennu:k a gep a masik alhalozat fele atjarokent
   (bejo:vo" utvonalkent) lesz nyilvantartva. Ebben a konfiguracioban
   a gep a ket alhalozat ko:zo:tt utvalasztokent fog tevekenykedni,
   es gyakran valamelyik vagy eppen mind a ket iranyba be kell
   allitanunk valamilyen csomagszu"rest vagy tu"zfalazast.

   Ha azt szeretnenk, hogy ez a gep a ket felu:let ko:zo:tt
   tovabbitson csomagokat, akkor a FreeBSD-ben ku:lo:n engedelyezni
   kell ezt a leheto"seget. A ko:vetkezo" szakaszban ennek reszleteit
   tarjuk fel.

     --------------------------------------------------------------

  31.2.4. Az utvalasztok beallitasa

   A halozati utvalaszto nem csinal mast, csak tovabbku:ldi az egyik
   felu:leten beerkezo" csomagokat egy masik felu:letere. Az
   internetes szabvanyok es a sokeves merno:ki tapasztalat azonban
   nem engedik, hogy a FreeBSD Projekt alapertelmezes szerint is
   elerheto"ve tegye ezt a FreeBSD rendszerekben. Ezt a leheto"seget
   az alabbi valtozo YES erteku"re allitasaval lehet engedelyezni az
   rc.conf(5) allomanyban:

 gateway_enable="YES"          # Ez legyen YES, ha atjarokent akarunk u:zemelni

   Ezzel lenyegeben a net.inet.ip.forwarding sysctl(8) valtozo
   erteket allitjuk 1-re. Ha valamiert egy ido"re szu:neteltetni
   akarjuk a csomagok tovabbku:ldeset, akkor allitsuk a valtozo
   erteket 0-ra.

   Az uj utvalasztonak nem art arrol sem tudnia, hogy merre
   tovabbitsa a forgalmat. Ha eleg egyszeru" a halozatunk, akkor akar
   statikus utvonalakat is hasznalhatunk. A FreeBSD alapbol
   tartalmazza a BSD-k eseten szabvanyos routed(8) utvalaszto demont,
   amely a RIP (v1 es v2) valamint az IRDP megoldasokat ismeri. A BGP
   v4, OSPF v2 es a to:bbi fejlettebb utvalasztasi protokoll a
   net/zebra csomagban erheto" el. Az etto"l bonyolultabb halozati
   utvalasztasi feladatokhoz olyan kereskedelmi termekek is
   elerheto"ek, mint peldaul a GateD(R).

     --------------------------------------------------------------

  31.2.5. Statikus utvonalak beallitasa

   Irta: Al Hoang.

    31.2.5.1. Manualis konfiguracio

   Tegyu:k fel, hogy halozatunk a ko:vetkezo":

     INTERNET
       | (10.0.0.1/24) alapertelmezett atjaro internet fele
       |
       |az xl0 felu:let
       |10.0.0.10/24
    +------+
    |      | A-utvalaszto
    |      | (FreeBSD atjaro)
    +------+
       | az xl1 felu:let
       | 192.168.1.1/24
       |
   +--------------------------------+
    1. belso" halozat    | 192.168.1.2/24
                        |
                    +------+
                    |      | B-utvalaszto
                    |      |
                    +------+
                        | 192.168.2.1/24
                        |
                      2. belso" halozat
        

   Ebben a forgatoko:nyvben az A-utvalaszto a mi FreeBSD-s gepu:nk,
   amely az internet fele vezeto" utvalaszto szerepet jatssza.
   Szamara az alapertelmezett utvonal a 10.0.0.1, amelyen keresztu:l
   a ku:lso" vilagot tudja elerni. Feltetelezzu:k, hogy a
   B-utvalaszto nevu" gepet mar eleve jol allitottuk be, ezert tudja
   merre kell mennie. (A kep alapjan egyszeru": csak vegyu:nk fel egy
   alapertelmezett utvonalat a B-utvalaszto gephez, ahol igy a
   192.168.1.1 lesz az atjaro.)

   Ha megnezzu:k most az A-utvalaszto utvalasztasi tablazatat, akkor
   nagyjabol a ko:vetkezo"ket fogjuk latni:

 % netstat -nr
 Routing tables

 Internet:
 Destination        Gateway            Flags    Refs      Use  Netif  Expire
 default            10.0.0.1           UGS         0    49378    xl0
 127.0.0.1          127.0.0.1          UH          0        6    lo0
 10.0.0/24          link#1             UC          0        0    xl0
 192.168.1/24       link#2             UC          0        0    xl1

   Az A-utvalaszto utvalasztasi tablazata alapjan jelen helyzetben
   nem lehet elerni a 2. belso" halozatot. Nincs ugyanis olyan
   utvonal, amely a 192.168.2.0/24 alhalozat fele vezetne. Ezt
   peldaul ugy tudjuk megoldani, ha manualisan felvesszu:k ezt az
   utvonalat. Az alabbi paranccsal hozzaadjuk a 2. belso" halozat
   elereset az A-utvalaszto utvalasztasi tablazatahoz, ahol a
   192.168.1.2 lesz a ko:vetkezo" ugrasi pont (next hop):

 # route add -net 192.168.2.0/24 192.168.1.2

   Most mar az A-utvalaszto barmelyik gepet kepes elerni a
   192.168.2.0/24 halozaton.

     --------------------------------------------------------------

    31.2.5.2. Ro:gzitett konfiguracio

   A fenti pelda to:keletesen szemlelti a statikus utvonalak
   felvetelet egy mu"ko:do" rendszeren. Azonban ezzel az a gond, hogy
   az igy megadott utvalasztasi informacio nem marad meg a gep
   ujrainditasa utan. Ezert az elo"bbihez hasonlo statikus
   utvonalakat inkabb az /etc/rc.conf allomanyban ro:gzitsu:k:

 # A 2. belso" halozat elereset felvesszu:k statikus utvonalkent
 static_routes="belsohalo2"
 route_belsohalo2="-net 192.168.2.0/24 192.168.1.2"

   A static_routes konfiguracios valtozo karakterlancok szoko:zzel
   tagolt felsorolasat tartalmazza. Mindegyik karakterlanc egy
   utvonal neve. Az imenti peldaban csak egyetlen ilyen nev szerepelt
   a static_routes ertekeben, amely a belsohalo2 volt. Utana beirtunk
   meg egy konfiguracios valtozot is, amelynek a neve
   route_belsohalo2. Ide helyeztu:k a route(8) parancsnak atadando
   beallitas o:sszes parameteret. Ez pontosan olyan, mintha a
   ko:vetkezo" parancsot adtuk volna ki:

 # route add -net 192.168.2.0/24 192.168.1.2

   Ezert kellett a "-net 192.168.2.0/24 192.168.1.2".

   Ahogy mar korabban is emlitettu:k, a static_routes ertekeben to:bb
   karakterlancot is megadhatunk, aminek segitsegevel egyszerre to:bb
   statikus utvonalat is letrehozhatunk. A ko:vetkezo" sorok arra
   mutatnak peldat, hogy a 192.168.0.0/24 es 192.168.1.0/24 halozatok
   szamara mikent allitsunk be statikus utvonalakat a kepzeletbeli
   utvalasztonkon:

 static_routes="net1 net2"
 route_net1="-net 192.168.0.0/24 192.168.0.1"
 route_net2="-net 192.168.1.0/24 192.168.1.1"

     --------------------------------------------------------------

  31.2.6. Az utvonalak terjedese

   Azt mar tudjuk, hogyan adjuk meg a ku:lvilag fele vezeto"
   utvonalakat, azonban arrol meg nem beszeltu:nk, hogy kivu:lro"l
   mikent talalnak meg bennu:nket.

   Annyit mar megismertu:nk, hogy az utvalasztasi tablazatokban
   megadhatjuk a halozaton azt a gepet, amelyen keresztu:l az adott
   cimtartomany (a peldaban egy C osztalyu alhalozat) fele
   ku:ldhetu:nk, amely pedig tovabbku:ldi a hozza erkezo" csomagokat.

   Amikor a csatlakozunk az internet-szolgaltatonkhoz, a nala levo"
   utvalasztasi tablazatok ugy allitodnak be, hogy az alhalozatunk
   fele igyekvo" adatok a korabban letrejo:tt PPP o:sszeko:ttetesen
   keresztu:l jutnak el hozzank. A vilag to:bbi reszen levo"
   rendszerek viszont honnan fogjak tudni, hogy a mi
   internet-szolgaltatonknak ku:ldjenek?

   Van egy rendszer (ez leginkabb a nevszerverek elosztott
   informacios adatbazisahoz hasonlit), ami nyilvantartja a
   pillanatnyilag kiosztott cimtartomanyokat es megadja a
   csatlakozasi pontjukat az internet gerinchalozatan. Ez a "gerinc"
   tulajdonkeppen olyan fo"vonalakbol all, amelyen keresztu:l a
   vilagban az orszagok ko:zo:tt mozog az internet forgalma. A
   gerinchalozat mindegyik gepe tarolja a ko:zponti utvalasztasi
   tablazatok egy masolatat, ami a forgalmat egy adott halozatrol a
   megadott gerincbeli hordozora iranyitja at, vegig az
   internet-szolgaltatok lancan egeszen addig, amig az el nem eri a
   halozatunkat.

   A szolgaltatonk feladata, hogy a gepu:nk fele leagazaskent (es igy
   a felenk vezeto" utkent) beregisztalja magat a gerinchalozat
   gepein. Ezt nevezik az utvonal terjedesenek.

     --------------------------------------------------------------

  31.2.7. Hibaelharitas

   Neha gondok lehetnek az utvonal terjedesevel, es egyes gepek nem
   kepesek elerni minket. A traceroute(8) parancs mind ko:zu:l talan
   az egyik leghasznosabb ilyen helyzetekben, mivel ezzel fel tudjuk
   deriteni, hogy az utvalasztas hol akad meg. Ugyanilyen jol
   hasznosithato azokban az esetekben, amikor latszolag nem tudunk
   elerni egy tavoli gepet (tehat a ping(8) cso"do:t mond).

   A traceroute(8) parancsnak annak a tavoli gepnek a nevet kell
   megadnunk, amelyhez csatlakozni akarunk. Futasa ko:zben
   megjeleniti azokat az atjarokat, amelyeken keresztu:l csatlakozni
   probal, akar sikeru:lt elerni a celgepet, akar a kapcsolat hianya
   miatt kudarcot vall.

   A parancs hasznalatarol es mu"ko:desero"l reszletesebb
   informaciokat a traceroute(8) man oldalan talalunk.

     --------------------------------------------------------------

  31.2.8. Utvalasztas multicast eseten

   A FreeBSD alapbol tamogatja mind a multicastet hasznalo
   alkalmazasokat, mind pedig a multicasthez tartozo utvalasztast.
   Multicast eseteben semmilyen specialis beallitas nem
   szu:ksegeltetik, az ilyen alkalmazasok egybo"l el tudjak erni ezt
   a leheto"seget. A multicast keresek utvalasztasahoz azonban be
   kell epitenu:nk nemi tamogatast a rendszermagba:

 options MROUTING

   Emellett meg el kell inditanunk az mrouted(8) demont is, amelyhez
   az /etc/mrouted.conf allomanyban meg be kell allitanunk tunneleket
   es a DVMRP hasznalatat. A multicasthez tartozo tovabbi
   beallitasokat az mrouted(8) man oldalan talalhatjuk.

     Megjegyzes: A FreeBSD 7.0 megjelenesevel a mrouted(8) demont
     kivettek az alaprendszerbo"l. Azt a DVMRP to:bbesku:ldesi
     protokollt valositja meg, amelyet a legto:bb alkalmazasban
     mostansag mar a pim(4) segitsegevel oldanak meg. Ennek
     megfelelo"en a hozzatartozo multicast protokollt valositja meg,
     amelyet a legto:bb alkalmazasban mostansag mar a pim(4)
     segitsegevel oldanak meg. Ennek megfelelo"en a hozzatartozo
     map-mbone(8) es mrinfo(8) segedprogramok is eltavolitasra
     keru:ltek. Ezek a programok attol a kiadastol kezdo"do"en a
     Portgyu"jtemeny reszekent erheto"ek el a net/mrouted portban.

     --------------------------------------------------------------

31.3. Vezetek nelku:li halozatok

   Loader, Marc Fonvieille, es Murray Stokely.

     --------------------------------------------------------------

  31.3.1. A vezetek nelku:li halozatok alapjai

   A legto:bb vezetek nelku:li halozat az IEEE 802.11 szabvanyon
   nyugszik. Az alapveto" vezetek nelku:li halozatokban to:bb olyan
   allomast talalhatunk, amelyek egymassal radiojelek szorasaval
   kommunikalnak a 2,4 GHz vagy 5 GHz frekvenciatartomanyban (noha ez
   a helyi viszonyoknak megfelelo"en valtozhat, es a 2,3 GHz, illetve
   a 4,9 GHz tartomanyokban is lehetseges a kommunikacio).

   A 802.11 szabvanyu halozatok ketfelekeppen szervezo"dnek.
   Elo"szo:r is infrastrukturalisan, (infrastructural mode) ahol az
   egyik allomast kinevezzu:k a ko:zpontnak es a to:bbi pedig ehhez
   fog tartozni. Az ilyen halozatokat BSS-nek nevezzu:k es az iment
   emlitett ko:zpont neve hozzaferesi pont (Access Point, AP) lesz. A
   BSS-ben az o:sszes kommunikacio a hozzaferesi pontokon keresztu:l
   halad meg abban az esetben is, amikor az egyik allomas egy masik
   vezetek nelku:li allomassal akarja felvenni a kapcsolatot. Az
   ilyen jellegu" halozatok masik tipusu szervezo"desi modjaban
   nincsenek kijelo:lt ko:zpontok es a kommunikacio az allomasok
   ko:zo:tt ko:zvetlenu:l zajlik. A halozat ezen formajat IBBS-nek
   nevezzu:k, vagy ismeretebb neven ad-hoc halozatnak (ad-hoc
   network).

   A 802.11 alapu halozatok elso"kent a 2,4 GHz-es savot hoditottak
   meg, es az IEEE 802.11 valamint 802.11b szabvanyokban ro:gzitett
   protokollokat hasznaltak. Ezekben a specifikaciokban
   megtalalhatjuk a mu"ko:desi frekvenciat, a ko:zeghozzaferesi reteg
   jellemzo"inek leirasat, beleertve a keretezest es az atviteli
   sebessegeket (a kommunikacio ugyanis eltero" sebessegekkel is
   to:rtenhet). A keso"bb kiadott 802.11a szabvany azt specifikalja,
   hogy az 5 GHz-es tartomanyban mikent mu"ko:djenek, ahol to:bbek
   ko:zt megtalalhatjuk a ku:lo:nfele jelkezelesi mechanizmusokat es
   a nagyobb atviteli sebessegek hasznalatat. Ezt meg a 802.11g
   szabvany ko:vette, ami a 802.11b halozatokkal kompatibilis modon
   leheto"ve tette a 802.11a jelkezelesenek es atviteli modszereinek
   hasznalatat a 2,4 GHz-es savban.

   A 802.11 alapu halozatok mindenfele atviteli technikaitol
   eltekintve to:bbfele biztonsagi megoldassal talalkozhatunk. Az
   korai 802.11 dokumentumok egy nagyon egyszeru" biztonsagi
   protokollt, a WEP-et emlitenek. Ez a protokoll a halozaton mozgo
   adatokat egy ro:gzitett es ismert osztott kulccsal kodolja le az
   RC4 titkositassal. A kommunikaciohoz az o:sszes allomasnak elo"re
   meg kell egyeznie ebben a kulcsban. Erro"l a semarol ido"ko:zben
   kideru:lt, hogy ko:nnyen felto:rheto" es manapsag mar csak nagyon
   ritkan alkalmazzak, kiveve talan csak a kobor felhasznalok
   elijesztesere. A jelenleg ervenyes biztonsagi elo"irasokat az IEEE
   802.11i specifikacio adja meg, amely uj kriptografiai
   titkositasokat definial valamint egy tovabbi protokollt az
   allomasok azonositasara es a kulcsok cserejere. Emellett a
   titkositashoz hasznalt kulcsok ido"szakosan frissu:lnek es ku:lo:n
   eszko:zo:k allnak rendelkezesre a beto:resi kiserletek eszlelesere
   (es azok elharitasara). A vezetek nelku:li halozatok eseteben
   masik elterjedt titkositasi protokoll a WPA. Ez igazabol 802.11i
   elo"djenek tekintheto", amelyet egy ipari csoport definialt, amig
   a 802.11i mino"sites alatt allt. A WPA ennek megfelelo"en
   teljesiti a 802.11i szabvany elvarasainak egy reszet es
   kifejezetten a regi hardverek szamara keszu:lt. A WPA
   mu"ko:desehez egyedu:l a TKIP titkositasra van szu:ksegu:nk, amely
   az eredeti WEP titkositasbol szarmazik. A 802.11i engedi a TKIP
   hasznalatat, de az adatok kodolasara egy ero"sebb titkositas, az
   AES-CCM ismeretet is igenyli. (Az AES a WPA eseteben nem kell,
   mivel a regi eszko:zo:k eseteben tulsagosan ko:ltsegesnek iteltek
   meg a hasznalatat.)

   A fenti szabvanyokon kivu:l a 802.11e a masik fontos szabvany,
   amire tekintettel kell lennu:nk. Ez irja le a 802.11 halozatokon a
   multimedias alkalmazasok ko:zvetitesehez, mint peldaul a videok
   valos ideju" lejatszasahoz vagy a VoIP (voice over IP)
   megvalositasahoz tartozo protokollokat. A 802.11i szabvanyhoz
   hasonloan a 802.11e is magaban foglal egy elo"zetes specifikaciot,
   amelyet WME (keso"bb pedig mar WMM)-nek neveznek. Ezt szinten egy
   ipari csoport definialta a 802.11e reszekent, amivel a 802.11e
   vegso" elfogadasaig tudjak a multimedias igenyeket kiszolgalni.
   Amit a 802.11e es WME/WMM megoldasaival kapcsolatban erdemes
   tudnunk: a QoS (Quality of Service) protokoll es mas egyeb fejlett
   ko:zeghozzaferesi protokollok segitsegevel a vezetek nelku:li
   halozatokban leheto"ve teszik a forgalom prioritas szerinti
   u:temezeset. Ezen protokollok megfelelo" implementaciojanak
   segitsegevel tehat a fontosabb adatok nagy sebessegu" ku:ldeset es
   aramoltatasat vagyunk kepesek elerni.

   A FreeBSD a 6.0 verzio ota ismeri a 802.11a, 802.11b es 802.11g
   szabvanyokon alapjan mu"ko:do" halozatokat. A WPA es 802.11i
   biztonsagi protokollok (a 11a, 11b es 11g szabvanyok barmelyike
   eseten) hasonlokeppen tamogatottak, valamint a WME/WMM protokollok
   mu"ko:desehez szu:kseges QoS csak bizonyos vezetek nelku:li
   eszko:zo:k eseteben.

     --------------------------------------------------------------

  31.3.2. Kezdeti beallitasok

    31.3.2.1. A rendszermag beallitasa

   A vezetek nelku:li halozatok hasznalatahoz egy vezetek nelku:li
   halozati kartyara lesz szu:ksegu:nk, valamint a rendszermagban is
   be kell allitani ehhez a megfelelo" tamogatast. Ez utobbit to:bb
   ku:lo:nbo:zo" modulra szedtek szet, es ezek ko:zu:l csak azokat
   kell beallitani, amelyeket tenyleg hasznalni is fogunk.

   Elo"szo:r is tehat kell egy vezetek nelku:li eszko:z. Az
   elterjedtebb tipusaik altalaban az Atheos altal gyartott
   alkatreszeket tartalmazzak. Az ilyen fajtaju eszko:zo:ket az
   ath(4) meghajto kezeli, melyet ugy tudunk a rendszer inditasakor
   beto:lteni, ha a /boot/loader.conf allomanyba felvesszu:k a
   ko:vetkezo" sort:

 if_ath_load="YES"

   Az Atheos meghajtoja harom ku:lo:nallo reszre oszlik: maga a
   meghajto (ath(4)), a hardveres reteg, ami a chipfu:ggo" funkciokat
   kezeli (ath_hal(4)) es a keretek ku:ldesevel kapcsolatban az
   atviteli sebesseg megvalasztasat leheto"ve tevo" algoritmus (ez
   itt most az ath_rate_sample). Amikor ezt a tamogatast modulkent
   to:ltju:k be, ezek a fu:ggo"segek automatikusan feloldodnak. Ha az
   Atheos eszko:zo:k helyett valamelyik masikhoz tartozo modult
   szeretnenk hasznalni, akkor peldaul az Intersil Prism eseteben a
   wi(4) meghajtot kell megadnunk:

 if_wi_load="YES"

     Megjegyzes: A leiras tovabbi reszeiben az ath(4) eszko:zt fogjuk
     hasznalni, minden mas esetben ennek a nevet kell csak
     lecserelu:nk a peldakban. A rendszerben elerheto" vezetek
     nelku:li meghajtok a wlan(4) man oldal elejen talalhatoak. Ha a
     vezetek nelku:li eszko:zu:nkho:z nem letezik nativ FreeBSD-s
     meghajto, akkor az NDIS meghajto segitsegevel akar ko:zvetlenu:l
     a Windows-os meghajtojat is hasznalhatjuk.

   Az eszko:zmeghajto beallitasaval egyu:tt a 802.11 halozatok
   tamogatasat is be kell to:ltenu:nk a rendszermagba. Ez az ath(4)
   meghajto eseteben a legalabb a wlan(4), wlan_scan_ap es
   wlan_scan_sta modulok beto:lteset jelenti. A wlan(4) modul a
   vezeteknelku:li eszko:z meghajtoprogramjaval egyu:tt to:lto"dik
   be, mig a to:bbi modult a /boot/loader.conf allomany hasznalataval
   kell a rendszerinditas soran beto:ltenu:nk:

 wlan_scan_ap_load="YES"
 wlan_scan_sta_load="YES"

     Megjegyzes: A FreeBSD 7.X valtozataiban mind a wlan_scan_ap es
     wlan_scan_sta modulokra szu:ksegu:nk van, mas verziok eseten nem
     kell megadnunk ezeket.

   Emellett meg azokra a modulokra is szu:ksegu:nk van, amelyek a
   hasznalni kivant biztonsagi protokollokhoz nyujtanak kriptografiai
   tamogatast. Ezek hivatalosan a wlan(4) modul keresere
   automatikusan beto:lto"dnek, azonban itt most manualisan allitjuk
   be. Erre a celra a ko:vetkezo" modulokat talaljuk: wlan_wep(4),
   wlan_ccmp(4) es wlan_tkip(4). A wlan_ccmp(4) es wlan_tkip(4)
   meghajtok csak akkor fognak kelleni, ha a WPA es/vagy a 802.11i
   biztonsagi protokollokat hasznaljuk. Amennyiben a halozatunk
   teljesen nyitott (azaz nincs titkositas), akkor meg a wlan_wep(4)
   tamogatas sem kell. Ezeket a modulok ugy lehet beto:lteni a
   rendszerinditasnal, ha felvesszu:k a ko:vetkezo" sorokat a
   /boot/loader.conf allomanyba:

 wlan_wep_load="YES"
 wlan_ccmp_load="YES"
 wlan_tkip_load="YES"

   Miutan ezt megcsinaltuk, egyszeru"en csak inditsuk ujra a
   gepu:nket. Ha meg nem akarjuk ujrainditani a gepet, akkor a
   kldload(8) parancs segitsegevel akar kezzel is beto:lthetju:k az
   elo"bb felsorolt modulokat.

     Megjegyzes: Ha nem akarunk modulokat hasznalni, a mu"ko:deshez
     szu:kseges meghajtokat a rendszermagba is be tudjuk epiteni a
     ko:vetkezo" sorok megadasaval a rendszermag beallitasait
     tartalmazo allomanyban:

 device ath                 # Atheros IEEE 802.11 vezetek nelku:li halozati meghajto
 device ath_hal             # az Atheros meghajto hardveres retege
 device ath_rate_sample     # SampleRate forgalomvezerlesi algoritmus
 device wlan                # a 802.11 tamogatasa
 options AH_SUPPORT_AR5416  # az AR5416 tx/rx leirok engedelyezese
 device wlan_scan_ap        # a 802.11 AP modu kereses
 device wlan_scan_sta       # a 802.11 STA modu kereses
 device wlan_wep            # 802.11 WEP  tamogatas
 device wlan_ccmp           # 802.11 CCMP tamogatas
 device wlan_tkip           # 802.11 TKIP tamogatas

     Hozzatesszu:k, hogy a FreeBSD 7.X valtozataban a wlan_scan_ap es
     wlan_scan_sta modulok megadasa egyarant ko:telezo", mas
     verzioknal viszont nem.

     Az elo"bbiek megadasaval forditsuk ujra es telepitsu:k a
     rendszermagot, majd inditsuk ujra a szamitogepu:nket.

   Miutan a rendszeru:nk ujra elindult, a rendszer inditas soran
   generalt u:zenetei ko:zo:tt talalnunk kell valamennyi informaciot
   a felismert vezetek nelku:li eszko:zo:kro"l. Peldaul:

 ath0: <Atheros 5212> mem 0xff9f0000-0xff9fffff irq 17 at device 2.0 on pci2
 ath0: Ethernet address: 00:11:95:d5:43:62
 ath0: mac 7.9 phy 4.5 radio 5.6

     --------------------------------------------------------------

  31.3.3. Az infrastrukturalis mu"ko:desi mod

   Altalaban az infrastrukturalis avagy a BBS mod hasznalata a
   gyakori. Ebben a mu"ko:desi modban adott szamu vezetek nelku:li
   hozzaferesi pont csatlakozik a hagyomanyos halozatra. Mindegyik
   vezetek nelku:li halozatnak sajat neve van, amit a halozat
   SSID-jenek hivunk. A vezetek nelku:li kliensek ezekhez a vezetek
   nelku:li hozzaferesi pontokhoz kapcsolodnak.

     --------------------------------------------------------------

    31.3.3.1. A FreeBSD-s kliensek hasznalata

      31.3.3.1.1. Hogyan keressu:nk hozzaferesi pontokat

   A halozatok keresesehez az ifconfig paranccsal tudunk nekifogni.
   Egy ilyen keres kiszolgalasa eltarthat nehany pillanatig, mivel
   ekkor a rendszernek vegig kell boklasznia az o:sszes elerheto"
   frekvenciat es azokon hozzaferesi pontok utan kutatni. Egyedu:l a
   rendszeradminisztrator kezdemenyezheti ezeket a kereseseket:

 # ifconfig ath0 up scan
 SSID            BSSID              CHAN RATE  S:N   INT CAPS
 dlinkap         00:13:46:49:41:76    6   54M 29:3   100 EPS  WPA WME
 freebsdap       00:11:95:c3:0d:ac    1   54M 22:1   100 EPS  WPA

     Megjegyzes: Csak up jelzesu" felu:leten tudunk halozatokat
     keresni. Tovabbi keresesekre mar nincs szu:kseg a felu:let up
     allapotban tartasahoz.

   A kereses soran keletkezo" listaban lathatjuk megtalalt BBS vagy
   IBBS fajtaju halozatokat. A halozatok neve es SSID-ja mellett meg
   megjelenik egy BSSID oszlop is, ahol a hozzaferesi pontok MAC-cime
   szerepel. A CAPS oszlop az egyes allomasok tulajdonsagait adja
   meg:

   E

           Extended Service Set (ESS): az allomas egy
           infrastrukturalis vagyis BBS halozat resze.

   I

           IBSS/ad-hoc halozat: az allomas egy ad-hoc halozat resze.

   P

           Privacy: a BBS-en belu:l minden keretet titkositani kell.
           Tehat a BSS arra ko:telezi az allomast, hogy WEP, TKIP
           vagy AES-CCMP titkositas hasznalataval kodolja a halozat
           tagjai ko:zo:tt ko:zlekedo" kereteket.

   S

           Short Preamble: a halozatban ro:vid bevezeto"jeleket
           hasznalnak (a 802.11b High Rate/DSSS PHY elo"irasai
           szerint), ahol a szokvanyos 128 bites szinkronizacios
           mezo" hossza csak 56 bit.

   s

           Short Slot Time: a 802.11g halozat ro:vid slotido"t
           hasznal, mivel nem talalhatoak benne regi (802.11b
           szabvanyu) allomasok.

   A jelenleg ismert halozatok listajat igy tudjuk lekerdezni:

 # ifconfig ath0 list scan

   Ezt az informaciot maga az adapter automatikusan, vagy a
   felhasznalo tudja frissiteni a scan keres kiadasaval. Az elavult
   adatok maguktol to:rlo"dnek a gyorsitotarbol, igy ido"vel a lista
   zsugorodni fog, hacsak nem keresu:nk folyamatosan halozatokat.

     --------------------------------------------------------------

      31.3.3.1.2. Alapveto" beallitasok

   Ebben a szakaszban arra mutatunk peldakat, hogy mikent tudunk
   FreeBSD alatt titkositas nelku:l hasznalni egy vezetek nelku:li
   halozati kartyat. Miutan elsajatitottuk az itt szereplo"
   ismereteket, hatarozottan javasoljuk, hogy a vezetek nelku:li
   halozatunkat WPA hasznalataval allitsuk be.

   A vezetek nelku:li halozatok beallitasa harom elemi lepesbo"l
   epu:l fel: a hozzaferesi pont kivalasztasa, az allomasunk
   hitelesitese es az IP-cim beallitasa. A ko:vetkezo"kben ezeket a
   lepeseket vitatjuk meg.

     --------------------------------------------------------------

        31.3.3.1.2.1. A hozzaferesi pont kivalasztasa

   A legto:bb esetben hagyjuk, hogy a rendszer valassza ki maganak a
   ku:lo:nbo:zo" heurisztikak alapjan a leginkabb megfelelo"
   hozzaferesi pontot. Ez az alapertelmezett tevekenyseg, amikor
   aktivaljuk a felu:letet vagy valamilyen mas modon, peldaul
   az/etc/rc.conf allomanybol hivatkozunk ra:

 ifconfig_ath0="DHCP"

   Ha viszont to:bb hozzaferesi pont ko:zu:l mi magunk akarunk
   kivalasztani egyet, akkor ezt az SSID megadasaval tehetju:k meg:

 ifconfig_ath0="ssid sajat_ssid DHCP"

   Amikor olyan ko:rnyezetben vagyunk, ahol to:bb hozzaferesi pontnak
   is megegyezik az SSID-ja (gyakran igy probaljak egyszeru"siteni
   azt, hogy automatikusan valtani lehessen ko:ztu:k), akkor
   szu:ksegu:nk lehet ezt egy adott eszko:zho:z hozzarendelni. Ebben
   az esetben a hozzaferesi pont BSSID-jat is definialni kell (es az
   SSID-t akar el is hagyhatjuk):

 ifconfig_ath0="ssid sajat_ssid bssid xx:xx:xx:xx:xx:xx DHCP"

   Mas modokon is kepesek vagyunk szabalyozni a hozzaferesi pontok
   megvalasztasat, peldaul a rendszeru:nk altal vizsgalt
   frekvenciasavok megadasaval. Ez olyankor tud hasznos lenni, ha
   to:bbsavos vezetek nelku:li kartyank van, es az o:sszes tartomany
   vegigpasztazasa tulsagosan sok ido"t venne el. Ezt a mu"velet a
   mode parameter megadasaval lehet egy konkret savra leszu"kiteni,
   peldaul a

 ifconfig_ath0="mode 11g ssid sajat_ssid DHCP"

   beallitas hatasara a kartya 802.11g modban fog u:zemelni, ami
   kizarolag csak 2,4 GHz-es frekvenciakon hasznalhato, igy az
   5 GHz-es csatornakat egyszeru"en figyelmen kivu:l hagyjuk.
   Ugyanezt a channel parameterrel is meg tudjuk oldani, mivel igy a
   mu"ko:dest egy adott frekvenciara korlatozzuk, valamint a chanlist
   parameterrel, ahol a pasztazando csatornakat sorolhatjuk fel.
   Ezekro"l a parameterekro"l reszletesebb leirast az ifconfig(8) man
   oldalon talalhatunk.

     --------------------------------------------------------------

        31.3.3.1.2.2. Hitelesites

   Miutan sikeresen kivalasztottuk a szamunkra megfelelo" hozzaferesi
   pontot, az adatok ku:ldesehez az allomasunknak valamilyen modon
   hitelesitenie kell magat. A hitelesites to:bb modon to:rtenhet.
   Erre a leggyakrabban alkalmazott semat nyilt hitelesitesnek (open
   authentication) nevezik, ahol a halozathoz tetszo"leges allomas
   csatlakozhat es kommunikalhat vele. Ezt a tipusu hitelesitest
   akkor erdemes hasznalni, amikor a vezetek nelku:li halozatunkat
   tesztelju:k. Mas semakban az adatfolyam meginditasahoz egy
   titkositasi kezfogas szu:kseges, vagy elo"re megosztott kulcsok
   esetleg jelszavak segitsegevel, vagy bonyolultabb semak eseteben
   itt meg olyan ku:lo:nbo:zo" hatterszolgaltatasok is megjelennek,
   mint peldaul a RADIUS. A legto:bb felhasznalo a nyilt hitelesitest
   hasznalja, ami egyben az alapertelmezes is. A masik
   legelterjedtebb beallitas a WPA-PSK, avagy WPA Personal, amelyro"l
   lentebb meg szolni fogunk.

     Megjegyzes: Ha Apple AirPort(R) Extreme Base Station tipusu
     hozzaferesi pontunk van, akkor az osztott kulcsu hitelesites
     mellett egy WEP kulcsot is be allitanunk. Ezt az /etc/rc.conf
     allomanyban vagy a wpa_supplicant(8) programban tehetju:k meg.
     Ha egyetlen AirPort bazisallomasunk van, akkor az elerest
     valahogy igy tudjuk beallitani:

 ifconfig_ath0="authmode shared wepmode on weptxkey 1 wepkey 01234567 DHCP"

     Altalanossagban veve elmondhatjuk, hogy az osztott kulcsu
     hitelesitest inkabb keru:lju:k el, mivel WEP kulcsok
     hasznalatara alapszik es raadasul olyan modon, hogy nagyon
     ko:nnyu" felto:rni. Ha mar mindenkeppen a WEP mellett kell
     do:ntenu:nk (peldaul a regebbi eszko:zo:kkel igy tudunk csak
     kompatibilisek maradni), akkor jobban jarunk, ha a nyilt
     hitelesiteshez alkalmazzuk. A WEP hasznalatat erinto" tovabbi
     informaciokat a 31.3.3.1.4 Szakaszban talaljuk.

     --------------------------------------------------------------

        31.3.3.1.2.3. IP-cim szerzese DHCP hasznalataval

   Miutan kivalasztottunk egy hozzaferesi pontot es beallitottuk a
   hitelesites parametereit, egy IP-cim is kelleni fog a
   kommunikaciohoz. Az esetek tulnyomo reszeben DHCP-n keresztu:l
   kapunk IP-cimet a vezetek nelku:li kapcsolatunkhoz. Ezt ugy
   erhetju:k el, ha egyszeru"en megnyitjuk az /etc/rc.conf allomanyt
   es az alabbihoz hasonlo modon felvesszu:k a DHCP parametert az
   eszko:zu:nk beallitasaihoz:

 ifconfig_ath0="DHCP"

   Igy mar keszen is allunk a vezetek nelku:li felu:let hasznalatara:

 # /etc/rc.d/netif start

   Ahogy a felu:let mu"ko:do"kepesse valik, az ifconfig parancs
   segitsegevel elleno"rizni is tudjuk az ath0 felu:let allapotat:

 # ifconfig ath0
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
         inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
         inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
         ether 00:11:95:d5:43:62
         media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps)
         status: associated
         ssid dlinkap channel 6 bssid 00:13:46:49:41:76
         authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100

   A status: associated azt jelenti, hogy sikeresen csatlakoztunk egy
   vezetek nelku:li halozathoz (jelen esetben ez a dlinkap). A bssid
   00:13:46:49:41:76 resz a hozzaferesi pont MAC-cimet tartalmazza.
   Az authmode pedig arrol szamol be, hogy a kommunikacio nem
   titkositott (OPEN).

     --------------------------------------------------------------

        31.3.3.1.2.4. Statikus IP-cim

   Ha valami okbol nem tudjuk az IP-cimu:nket DHCP szerveren
   keresztu:l lekerni, beallithatunk ro:gzitett IP-cimet is. Ehhez
   nem kell mast tennu:nk, mint a korabban bemutatott DHCP kulcsszot
   kicserelni egy konkret cimmel. A hozzaferesi ponthoz megadott
   to:bbi parametert azonban feltetlenu:l hagyjuk meg:

 ifconfig_ath0="ssid sajat_ssid inet 192.168.1.100 netmask 255.255.255.0"

     --------------------------------------------------------------

      31.3.3.1.3. WPA

   A WPA (Wi-Fi Protected Access, vagyis vedett wi-fi hozzaferes) a
   802.11 szabvanyokban hasznalatos biztonsagi protokoll, amelyet a
   WEP gyengesegeinek es megfelelo" hitelesitesenek ellensulyozasara
   dolgoztak ki. A WPA a 802.1X hitelesitesi protokolljait ero"siti
   es az adat sertetlensegenek mego"rzesere a WEP helyett to:bb
   titkositasi algoritmust is felhasznal. A WPA altal igenyelt
   egyetlen titkositas a TKIP (Temporary Key Integrity Protocol,
   vagyis az ideiglenes kulcs integritasi protokoll), amely a WEP
   altal az integritas elleno"rzesere es a bejutasok eszlelesere es
   azok reagalasara szant alap RC4 titkositast bo"viti ki. A TKIP a
   regebbi hardvereken csupan szoftveres modositassal
   mu"ko:do"kepesse teheto". Ez a kompromisszum a vedelmet ugyan
   no:veli, de meg mindig keves a tamadasok megfelelo" elharitasahoz.
   A WPA a TKIP mellett tartalmazza meg az AES-CCMP titkositast is,
   es ennek a hasznalata javasolt. Ezt a specifikaciot gyakran WPA2
   (vagy RSN) neven emlegetik.

   A WPA definial hitelesitesi es titkositasi protokollokat. A
   hitelesites altalaban a ko:vetkezo" ket technika egyike alapjan
   to:rtenik: vagy 802.1X es egy hatterszolgaltatas, peldaul a RADIUS
   segitsegevel, vagy egy elo"re megosztott kulcsot alkalmazo
   minimalis kezfogassal az allomas es a hozzaferesi pont ko:zo:tt.
   Az elo"bbit gyakran WPA Enterprise-nak, mig az utobbit WPA
   Personalnak hivjak. Mivel a legto:bben nem allitanak be egy
   komplett RADIUS alapu szervert a vezetek nelku:li halozatukhoz,
   ezert a WPA-PSK a WPA leginkabb elterjedten hasznalt valtozata.

   A vezetek nelku:li kapcsolat es a hitelesites (kulcs alapjan vagy
   szerverrel) vezerleset a wpa_supplicant(8) segedprogram vegzi.
   Ennek a programnak mu"ko:desehez egy konfiguracios allomanyra van
   szu:ksege, amely az /etc/wpa_supplicant.conf neven erheto" el.
   Erro"l az allomanyrol bo"vebb informaciot a wpa_supplicant.conf(5)
   man oldalan lelhetu:nk.

     --------------------------------------------------------------

        31.3.3.1.3.1. WPA-PSK

   A WPA-PSK, mas neven WPA-Personal, egy adott jelszo alapjan
   generalt elo"re megosztott kulcssal (pre-shared key, PSK)
   mu"ko:dik, amit a vezetek nelku:li halozatokban mesterkulcsent
   hasznalnak. Ez azt jelenti, hogy minden egyes vezetek nelku:li
   felhasznalo ugyanazon a kulcson osztozik. A WPA-PSK olyan kis
   meretu" halozatok eseteben megfelelo", ahol a hitelesitest
   elvegzo" szerver hasznalata nem lehetseges vagy nem oldhato meg.

     Figyelem: Mindig igyekezzu:nk ero"s jelszavakat hasznalni,
     melyek kello"en hosszuak es sokfele karaktert tartalmaznak, es
     igy nehezebben fejtheto"ek meg vagy to:rheto"ek fel.

   Elo"szo:r az /etc/wpa_supplicant.conf allomanyban allitsuk be az
   SSID-t es a halozatunkhoz tartozo elo"re megosztott kulcsot:

 network={
   ssid="freebsdap"
   psk="freebsdmall"
 }

   Ezutan az /etc/rc.conf allomanyban jelezzu:k, hogy a vezetek
   nelku:li eszko:zt a WPA segitsegevel allitjuk be es az IP-cimet a
   DHCP szerverto"l kerju:k el:

 ifconfig_ath0="WPA DHCP"

   Innento"l mar fel is tudjuk eleszteni a felu:letet:

 # /etc/rc.d/netif start
 Starting wpa_supplicant.
 DHCPDISCOVER on ath0 to 255.255.255.255 port 67 interval 5
 DHCPDISCOVER on ath0 to 255.255.255.255 port 67 interval 6
 DHCPOFFER from 192.168.0.1
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPACK from 192.168.0.1
 bound to 192.168.0.254 -- renewal in 300 seconds.
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/36Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA privacy ON deftxkey UNDEF TKIP 2:128-bit txpowmax 36
       protmode CTS roaming MANUAL bintval 100

   Kezzel is megprobalhatjuk elinditani az elo"bb elkeszitett
   /etc/wpa_supplicant.conf allomany hasznalataval:

 # wpa_supplicant -i ath0 -c /etc/wpa_supplicant.conf
 Trying to associate with 00:11:95:c3:0d:ac (SSID='freebsdap' freq=2412 MHz)
 Associated with 00:11:95:c3:0d:ac
 WPA: Key negotiation completed with 00:11:95:c3:0d:ac [PTK=TKIP GTK=TKIP]

   A ko:vetkezo" parancs a dhclient inditasa legyen, amivel
   megszerezzu:k a DHCP szerverto"l az IP-cimu:nket:

 # dhclient ath0
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPACK from 192.168.0.1
 bound to 192.168.0.254 -- renewal in 300 seconds.
 # ifconfig ath0
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/48Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA privacy ON deftxkey UNDEF TKIP 2:128-bit txpowmax 36
       protmode CTS roaming MANUAL bintval 100

     Megjegyzes: Ha az /etc/rc.conf allomanyban szerepel a
     ifconfig_ath0="DHCP" sor, akkor egyaltalan nem szu:kseges a
     dhclient parancs manualis kiadasa, mivel a dhclient magatol el
     fog indulni, miutan a wpa_supplicant egyeztette a kulcsokat.

   Amikor a DHCP nem hasznalhato, megadhatunk a statikus IP-cimet is,
   miutan a wpa_supplicant sikeresen lebonyolitotta a hitelesitest:

 # ifconfig ath0 inet 192.168.0.100 netmask 255.255.255.0
 # ifconfig ath0
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.100 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/36Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA privacy ON deftxkey UNDEF TKIP 2:128-bit txpowmax 36
       protmode CTS roaming MANUAL bintval 100

   Ha egyaltalan nem hasznalunk DHCP szervert, akkor neku:nk kell
   beallitani az alapertelmezett atjarot es a nevszervert is:

 # route add default alapertelmezett_atjaro
 # echo "nameserver nevszerver" >> /etc/resolv.conf

     --------------------------------------------------------------

        31.3.3.1.3.2. WPA es EAP-TLS

   A masik mod, ahogy a WPA hasznalhato, az a 802.1X hitelesitesi
   szerveren keresztu:l to:rtenik, es ebben az esetben a WPA neve
   WPA-Enterprise. Ez sokkal biztonsagosabb a WPA-Personal elo"re
   kiosztott kulcsaival szemben. A WPA-Enterprise az EAP (Extensible
   Authentication Protocol, azaz Bo"vitheto" hitelesitesi protokoll)
   hasznalatan alapszik.

   Az EAP o:nmaga nem vegez titkositast, mivel ugy alakitottak ki,
   hogy magat az EAP protokollt kell egy titkositott jaraton
   keresztu:l bujtatni. Az EAP hitelesitesi modszereinek to:bb
   tipusat is kidolgoztak, melyek ko:zu:l a legismertebbek az
   EAP-TLS, EAP-TTLS valamint a EAP-PEAP.

   Az EAP-TLS (EAP szallitasi retegbeli vedelemmel) a vezetek
   nelku:li vilagban egy nagyon jol tamogatott hitelesitesi
   protokoll, mivel ez volt az elso" EAP modszer, amit a Wi-fi
   szo:vetseg jovahagyott. Az EAP-TLS mu"ko:desehez harom tanusitvany
   kell: egy hitelesito" hatosagtol (Certificate Authority, CA), egy
   a hitelesitest vegzo" szerverto"l es egy a kliensto"l. Ezzel az
   EAP modszerrel mind a hitelesito" szerver, mind a vezetek nelku:li
   kliens ku:lo:n kepviselik a sajat tanusitvanyaikat, es ezeket a
   szervezetu:nket hitelesito" hatosag alairasa alapjan elleno"rzik.

   A korabbiaknak megfelelo"en a beallitasokat szinten az
   /etc/wpa_supplicant.conf allomanyon keresztu:l vegezzu:k el:

 network={
   ssid="freebsdap" (1)
   proto=RSN  (2)
   key_mgmt=WPA-EAP (3)
   eap=TLS (4)
   identity="loader" (5)
   ca_cert="/etc/certs/cacert.pem" (6)
   client_cert="/etc/certs/clientcert.pem" (7)
   private_key="/etc/certs/clientkey.pem" (8)
   private_key_passwd="freebsdmallclient" (9)
 }

   (1)
           Ez a mezo" adja meg a halozat nevet (SSID).
   (2)
           Itt az RSN (IEEE 802.11i), vagyis a WPA2 protokollt
           hasznaljuk.
   (3)
           A key_mgmt sor a kulcskezelesi protokollt adja meg. A mi
           esetu:nkben ez a WPA lesz, EAP hitelesitessel: WPA-EAP.
   (4)
           Ebben a mezo"ben az EAP modszert nevezzu:k meg a
           kapcsolathoz.
   (5)
           Az identity mezo" az EAP eseten hasznalt azonositot
           tartalmazza.
   (6)
           A ca_cert mezo" a hitelesito" hatosag tanusitvanyat tarolo
           allomany eleresi utvonalat adja meg. Ezt a szerver
           tanusitvanyanak hitelesitesehez hasznaljuk.
   (7)
           A client_cert sor a kliens tanusitvanyat tartalmazo
           allomany eleresi utvonalat adja meg. Ennek a vezetek
           nelku:li halozat minden egyes kliense eseteben egyedinek
           kell lennie.
   (8)
           A private_key mezo" a kliens tanusitvanaynak privat
           kulcsat tarolo allomany eleresi utjat adja meg.
   (9)
           A private_key_passwd mezo" a privat kulcshoz tartozo
           jelmondatot ro:gziti.

   Az /etc/rc.conf allomanyba vegyu:k fel a ko:vetkezo" sort:

 ifconfig_ath0="WPA DHCP"

   A ko:vetkezo" lepes a felu:let felebresztese lesz az rc.d eszko:z
   segitsegevel:

 # /etc/rc.d/netif start
 Starting wpa_supplicant.
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPACK from 192.168.0.20
 bound to 192.168.0.254 -- renewal in 300 seconds.
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (DS/11Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA2/802.11i privacy ON deftxkey UNDEF TKIP 2:128-bit
       txpowmax 36 protmode CTS roaming MANUAL bintval 100

   Termeszetesen, ahogy azt mar az elo"bbiekben is megmutattuk,
   mindezt manualisan is el tudjuk vegezni a wpa_supplicant es az
   ifconfig parancsok segitsegevel.

     --------------------------------------------------------------

        31.3.3.1.3.3. WPA es EAP-TTLS

   Az EAP-TLS hasznalatakor mind a hitelesitest vegzo" szervernek es
   kliensnek is kell tanusitvany, azonban az EAP-TTLS ( szallitasi
   retegbeli vedelem EAP tunnelen keresztu:l) eseteben a kliensnel ez
   elhagyhato. Ez a modszer nagyjabol olyan, mint amit a webes
   oldalak csinalnak, ahol a webszerverek egy vedett SSL tunnelt
   kepeznek meg akkor is, amikor a latogatok nem rendelkeznek kliens
   oldali tanusitvannyal. Az EAP-TTLS egy titkositott TLS tunnelen
   keresztu:l vedi le a hitelesitesi adatok forgalmat.

   Ezt ismet az /etc/wpa_supplicant.conf allomanyon keresztu:l tudjuk
   beallitani:

 network={
   ssid="freebsdap"
   proto=RSN
   key_mgmt=WPA-EAP
   eap=TTLS (1)
   identity="test" (2)
   password="test" (3)
   ca_cert="/etc/certs/cacert.pem" (4)
   phase2="auth=MD5" (5)
 }

   (1)
           Ebben a mezo"ben az EAP modszert allitjuk be a
           kapcsolathoz.
   (2)
           Az identity mezo" a titkositott TLS tunnelen keresztu:l az
           EAP hitelesitesnel felhasznalt azonositot adja meg.
   (3)
           A password tartalmazza az EAP hitelesitesnel hasznalt
           jelmondatot.
   (4)
           A ca_cert mezo" hivatkozik a hitelesito" hatosag
           tanusitvanyat tartalmazo allomanyra. Ez az allomany kell a
           szerver tanusitvanyanak elleno"rzesehez.
   (5)
           Ebben a mezo"ben a titkositott TLS tunnelben hasznalt
           hitelesitesi modszer nevezzu:k meg. Jelen esetu:nkben ez
           az EAP MD5-Challenge hasznalataval. A "belso" hitelesites"
           fazisat gyakran csak "phase2"-nak (2. fazisnak) hivjak.

   Mindezek mellett meg a ko:vetkezo" sort is vegyu:k fel az
   /etc/rc.conf allomanyba:

 ifconfig_ath0="WPA DHCP"

   Ezutan hozzuk mu"ko:desbe a felu:letet:

 # /etc/rc.d/netif start
 Starting wpa_supplicant.
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPACK from 192.168.0.20
 bound to 192.168.0.254 -- renewal in 300 seconds.
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (DS/11Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA2/802.11i privacy ON deftxkey UNDEF TKIP 2:128-bit
       txpowmax 36 protmode CTS roaming MANUAL bintval 100

     --------------------------------------------------------------

        31.3.3.1.3.4. WPA es EAP-PEAP

   A PEAP (Vedett EAP) az EAP-TTLS egyik alternativajakent jo:tt
   letre. A PEAP modszernek ket valtozata van, melyek ko:zu:l a
   leggyakoribb a PEAPv0/EAP-MSCHAPv2. A leiras tovabbi reszeben a
   PEAP elnevezessel erre az EAP modszerre fogunk hivatkozni. A PEAP
   az EAP-TLS utan a leginkabb alkalmazott szabvany, mas szoval, ha a
   halozatunkban to:bbfele operacios rendszer is megtalalhato, akkor
   az EAP-TLS utan valoszinu"leg a PEAP lesz a masik, amit mindegyik
   ismerni fog.

   A PEAP hasonlo az EAP-TTLS-hez: szerver oldali tanusitvanyokkal
   hitelesiti a klienseket es titkositott TLS tunnelt hoz letre a
   kliens es a hitelesitest vegzo" szerver ko:zo:tt, amivel segiti
   megovni a hitelesitesi informaciokat. Biztonsag szempontjabol az
   EAP-TTLS es a PEAP ko:zo:tt az a ku:lo:nbseg, hogy a PEAP
   hitelesites a felhasznaloi nevet titkositatlanul ku:ldi es csak a
   jelszo megy at a titkositott TLS tunnelen. Az EAP-TTLS egyarant a
   TLS tunnelt hasznalja mind a felhasznaloi nev, mind a jelszo
   eseteben.

   Az EAP-PEAP beallitasait az /etc/wpa_supplicant.conf allomanyba
   kell felvenni:

 network={
   ssid="freebsdap"
   proto=RSN
   key_mgmt=WPA-EAP
   eap=PEAP (1)
   identity="test" (2)
   password="test" (3)
   ca_cert="/etc/certs/cacert.pem" (4)
   phase1="peaplabel=0" (5)
   phase2="auth=MSCHAPV2" (6)
 }

   (1)
           Ebben a mezo"ben megadjuk, az EAP modszert hasznaljuk a
           kapcsolathoz.
   (2)
           Az identity mezo" az EAP hitelesites soran a titkositott
           TLS tunnelben atku:ldo:tt azonositot tartalmazza.
   (3)
           A password mezo" az EAP hitelesites soran hasznalt
           jelmondatot definialja.
   (4)
           A ca_cert mezo" a hitelesito" hatosag tanusitvanyat
           tartalmazo allomany eleresi utjat adja meg. Ez az allomany
           kell a szerver tanusitvanyanak elleno"rzesehez.
   (5)
           Ez a mezo" a hitelesites elso" fazisanak (vagyis a TLS
           tunnel) parametereit tartalmazza. A hitelesitest vegzo"
           szerverto"l fu:ggo"en a hitelesiteshez meg kell adnunk
           bizonyos cimkeket. A legto:bb esetben a cimke a "kliens
           oldali EAP titkositas" lesz, amit a peaplabel=0
           hasznalataval allitunk be. A reszleteket a
           wpa_supplicant.conf(5) man oldalon olvashatjuk.
   (6)
           Ebben a mezo"ben a titkositott TLS tunnelben alkalmazott
           hitelesitest protokollt nevezzu:k meg. A PEAP eseteben ez
           az auth=MSCHAPV2 lesz.

   A ko:vetkezo"ket kell meg hozzatennu:nk az /etc/rc.conf
   allomanyhoz:

 ifconfig_ath0="WPA DHCP"

   Ezutan mar mu"ko:desbe is hozhatjuk a felu:letet:

 # /etc/rc.d/netif start
 Starting wpa_supplicant.
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPREQUEST on ath0 to 255.255.255.255 port 67
 DHCPACK from 192.168.0.20
 bound to 192.168.0.254 -- renewal in 300 seconds.
 ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
       inet 192.168.0.254 netmask 0xffffff00 broadcast 192.168.0.255
       ether 00:11:95:d5:43:62
       media: IEEE 802.11 Wireless Ethernet autoselect (DS/11Mbps)
       status: associated
       ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
       authmode WPA2/802.11i privacy ON deftxkey UNDEF TKIP 2:128-bit
       txpowmax 36 protmode CTS roaming MANUAL bintval 100

     --------------------------------------------------------------

      31.3.3.1.4. WEP

   A WEP (Wired Equivalent Privacy, azaz kabellel egyenerteku"
   titkossag) az eredeti 802.11 szabvany resze. Nincs ku:lo:n
   hitelesitesi mechanizmusa, csupan a hozzaferes-vezerles egy gyenge
   formajaval talalkozhatunk benne, amit azonban ko:nnyen fel lehet
   to:rni.

   A WEP ifconfig parancs hasznalatan keresztu:l allithato be:

 # ifconfig ath0 ssid sajat_halozat wepmode on weptxkey 3 wepkey 3:0x3456789012 \
             inet 192.168.1.100 netmask 255.255.255.0

     * A weptxkey utal arra, hogy a ku:ldes soran WEP kulcsot
       hasznalunk. Itt most egy harmadik kulcsot hasznaltunk,
       amelynek egyeznie kell a hozzaferesi pont beallitasaival. Ha
       nem tudjuk pontosan, hogy milyen kulcsot hasznal a hozzaferesi
       pont, akkor probalkozzunk az 1 ertek (vagyis az elso" kulcs)
       megadasaval.

     * A wepkey utan ko:vetkezik a kivalasztott WEP kulcs.
       index:kulcs alakban kell megadni, es ha itt nem adunk meg
       indexet, akkor azzal az 1 indexu" kulcsot allitjuk be. Ugyis
       fogalmazhatnank, hogy az indexet csak olyankor kell megadni,
       amikor nem az elso" kulcsot akarjuk hasznalni.

         Megjegyzes: A 0x3456789012 erteket a hozzaferesi pontnal
         beallitott kulcsra kell beallitani.

   Ha erdekelnek minket a tovabbi reszletek, akkor batran lapozzuk
   fel az ifconfig(8) parancs man oldalat.

   A wpa_supplicant segedprogramot is bevonhatjuk a vezetek nelku:li
   felu:letek WEP alapu hasznalataba. A fenti peldat a ko:vetkezo"
   modon tudjuk leirni az /etc/wpa_supplicant.conf allomanyban:

 network={
   ssid="sajat_halozat"
   key_mgmt=NONE
   wep_key3=3456789012
   wep_tx_keyidx=3
 }

   Majd:

 # wpa_supplicant -i ath0 -c /etc/wpa_supplicant.conf
 Trying to associate with 00:13:46:49:41:76 (SSID='dlinkap' freq=2437 MHz)
 Associated with 00:13:46:49:41:76

     --------------------------------------------------------------

  31.3.4. Az ad-hoc mu"ko:desi mod

   Az IBSS vagy mas neven ad-hoc modot pont-pont tipusu kapcsolatok
   kialakitasara terveztek. Peldaul, ha az A es a B gepek ko:zo:tt
   egy ad-hoc tipusu halozatot akarunk letesiteni, akkor egyszeru"en
   csak ki kell valasztanunk ket IP-cimet es egy SSID-t.

   Igy allitjuk be az A gepet:

 # ifconfig ath0 ssid freebsdap mediaopt adhoc inet 192.168.0.1 netmask 255.255.255.0
 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
           inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
           inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4
           ether 00:11:95:c3:0d:ac
           media: IEEE 802.11 Wireless Ethernet autoselect <adhoc> (autoselect <adhoc>)
           status: associated
           ssid freebsdap channel 2 bssid 02:11:95:c3:0d:ac
           authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100

   Az adhoc parameterrel utalunk arra, hogy a felu:let most IBSS
   modban mu"ko:dik.

   A B gepen ezutan mar kepesek vagyunk eszlelni az A gepet:

 # ifconfig ath0 up scan
   SSID            BSSID              CHAN RATE  S:N   INT CAPS
   freebsdap       02:11:95:c3:0d:ac    2   54M 19:3   100 IS

   A kimenetben szereplo" I is megero"siti, hogy az A gepet ad-hoc
   modban erju:k el. Igy mar csak a B gepet kell beallitanunk egy
   masik IP-cimmel:

 # ifconfig ath0 ssid freebsdap mediaopt adhoc inet 192.168.0.2 netmask 255.255.255.0
 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
           inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
           inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255
           ether 00:11:95:d5:43:62
           media: IEEE 802.11 Wireless Ethernet autoselect <adhoc> (autoselect <adhoc>)
           status: associated
           ssid freebsdap channel 2 bssid 02:11:95:c3:0d:ac
           authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100

   Most mar mind az A es mind a B keszen all az adatok cserejere.

     --------------------------------------------------------------

  31.3.5. FreeBSD alapu hozzaferesi pontok

   A FreeBSD kepes hozzaferesi pontkent (Access Point, AP) is
   u:zemelni, igy nem kell ku:lo:n hardveres hozzaferesi pontot
   vasarolnunk vagy ad-hoc halozatot hasznalnunk. Ez ku:lo:no:sen
   akkor hasznos, amikor a FreeBSD gepet egy masik halozat (peldaul
   az internet) fele allitottuk be atjaronak.

     --------------------------------------------------------------

    31.3.5.1. Alapveto" beallitasok

   Mielo"tt nekiallnank a FreeBSD-s gepu:nket hozzaferesi pontnak
   beallitani, egy olyan rendszermagra lesz szu:ksegu:nk, amely
   tartalmazza a megfelelo" vezetek nelku:li tamogatast a
   kartyankhoz. Emellett az alkalmazni kivant biztonsagi protokollok
   tamogatasat is bele kell epitenu:nk. Ennek reszleteit lasd a
   31.3.2 Szakaszban.

     Megjegyzes: Jelenleg az NDIS meghajton keresztu:l hasznalt
     Windows-os meghajtok nem teszik leheto"ve hozzaferesi pontok
     kialakitasat. Egyedu:l a vezetek nelku:li eszko:zo:k nativ
     FreeBSD-s meghajtoi ismerik a hozzaferesi pont modot.

   Ahogy beto:lto:ttu:k a vezetek nelku:li halozatok tamogatasat,
   egybo"l elleno"rizni is tudjuk, hogy a vezetek nelku:li
   eszko:zu:nk hasznalhato-e hozzaferesi pontkent (avagy "hostap"
   modban):

 # ifconfig ath0 list caps
 ath0=783ed0f<WEP,TKIP,AES,AES_CCM,IBSS,HOSTAP,AHDEMO,TXPMGT,SHSLOT,SHPREAMBLE,MONITOR,TKIPMIC,WPA1,WPA2,BURST,WME>

   A fenti kimenetben lathatjuk a kartyank tulajdonsagait. A HOSTAP
   szo arrol tanuskodik, hogy a vezetek nelku:li kartyank kepes
   hozzaferesi pontkent viselkedni. Mellette meg a ku:lo:nfele
   tamogatott titkositasi modszerek is lathatoak: WEP, TKIP, WPA2
   stb. Ezekbo"l az informaciokbol tudjuk kideriteni, hogy a
   hozzaferesi pontunkon milyen titkositasi protokollokat tudunk
   hasznalni.

   A vezetek nelku:li eszko:zu:nket most mar atallithatjuk
   hozzaferesi pontnak, amihez megadunk meg egy SSID-t es egy
   IP-cimet:

 # ifconfig ath0 ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0

   Az ifconfig parancs ismetelt hasznalataval le is tudjuk kerdezni
   az ath0 felu:let allapotat:

 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
           inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
           inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4
           ether 00:11:95:c3:0d:ac
           media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
           status: associated
           ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
           authmode OPEN privacy OFF txpowmax 38 bmiss 7 protmode CTS burst dtimperiod 1 bintval 100

   A hostap parameterbo"l kideru:l, hogy a felu:let hozzaferesi pont
   modban van.

   Ha az /etc/rc.conf allomanyban megadjuk a ko:vetkezo" sort, akkor
   a felu:let beallitasa a rendszer inditasakor magatol megto:rtenik:

 ifconfig_ath0="ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0"

     --------------------------------------------------------------

    31.3.5.2. Hitelesites vagy titkositas nelku:li hozzaferesi pontok

   Habar a hozzaferesi pontok mu"ko:dtetese nem javasolt hitelesites
   vagy titkositas nelku:l, ebben a modban ko:nnyen meg tudunk
   gyo"zo"dni a hozzaferesi pontunk hasznalhatosagarol. Ez a tipusu
   konfiguracio ezenkivu:l meg fontos szerepet jatszik a klienseken
   felbukkano hibak kiszu"reseben is.

   Miutan sikeru:lt az elo"bbiekben bemutatottak alapjan beallitani a
   hozzaferesi pontunkat, egy masik vezetek nelku:li gepro"l ro:gto:n
   meg is kezdhetju:k a kereseset:

 # ifconfig ath0 up scan
 SSID            BSSID              CHAN RATE  S:N   INT CAPS
 freebsdap       00:11:95:c3:0d:ac    1   54M 22:1   100 ES

   Lathatjuk, hogy a kliens megtalalta a hozzaferesi pontot es tudunk
   is ra kapcsolodni:

 # ifconfig ath0 ssid freebsdap inet 192.168.0.2 netmask 255.255.255.0
 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
           inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1
           inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255
           ether 00:11:95:d5:43:62
           media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps)
           status: associated
           ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
           authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100

     --------------------------------------------------------------

    31.3.5.3. WPA titkositast hasznalo hozzaferesi pontok

   Ebben a szakaszban a FreeBSD-s hozzaferesi pontunkat WPA
   titkositassal allitjuk be. A WPA es a WPA alapu kliensek
   beallitasanak reszleteit a 31.3.3.1.3 Szakaszban talaljuk.

   A WPA titkositast hasznalo hozzaferesi pontokon a hostapd demon
   foglalkozik a kliensek hitelesitesevel es a kulcsok kezelesevel.

   A tovabbiakban az o:sszes beallitast egy olyan FreeBSD-s gepen
   vegezzu:k el, amely hozzaferesi pontkent mu"ko:dik. Ahogy
   sikeru:lt beallitanunk a hozzaferesi pont modot, az /etc/rc.conf
   allomanyban a ko:vetkezo" sor segitsegevel ko:nnyen meg tudjuk
   oldani, hogy az hostapd demon a rendszerrel egyu:tt magatol
   elinduljon:

 hostapd_enable="YES"

   Mielo"tt megprobalnank beallitani a hostapd demont, ne felejtsu:k
   el elvegezni a 31.3.5.1 Szakaszban emlitett alapveto"
   beallitasokat sem.

     --------------------------------------------------------------

      31.3.5.3.1. WPA-PSK

   A WPA-PSK hasznalatat olyan kis meretu" halozatok szamara szanjak,
   ahol egy ku:lo:n hitelesito" szervert alkalmazasa nem lehetseges
   vagy nem kivanatos.

   A konfiguracio az /etc/hostapd.conf allomanyon keresztu:l
   to:rtenik:

 interface=ath0 (1)
 debug=1 (2)
 ctrl_interface=/var/run/hostapd (3)
 ctrl_interface_group=wheel (4)
 ssid=freebsdap (5)
 wpa=1 (6)
 wpa_passphrase=freebsdmall (7)
 wpa_key_mgmt=WPA-PSK (8)
 wpa_pairwise=CCMP TKIP (9)

   (1)
           Ebben a mezo"ben jelo:lju:k ki a hozzaferesi pontkent
           hasznalt vezetek nelku:li felu:letet.
   (2)
           Ebben a mezo"ben adjuk meg a hostapd futtatasa soran
           keletkezo" u:zenetek reszletesseget. A peldaban szereplo"
           1 ertek ennek a legkisebb szintjet jelo:li.
   (3)
           A ctrl_interface mezo" megadja a hostapd altal hasznalt
           ko:nyvtar eleresi utvonalat, amiben azokat a
           tartomanyokhoz tartozo socketeket taroljuk, amelyeken
           keresztu:l olyan programokkal tudunk kommunikalni, mint
           peldaul a hostapd_cli(8). Itt az alapertelmezett erteket
           irtuk be.
   (4)
           A ctrl_interface_group sor beallitja azt a csoportot (ez
           jelen esetben a wheel), amin keresztu:l a vezerlo"felu:let
           (control interface) allomanyaihoz hozza tudunk ferni.
   (5)
           Ebben a mezo"ben a halozat nevet allitjuk be.
   (6)
           A wpa mezo"vel engedelyezzu:k a WPA hasznalatat es
           megadjuk, hogy melyik WPA hitelesitesi protokollt
           alkalmazzuk. Az itt szereplo" 1 ertek a WPA-PSK
           hitelesites allitja be a hozzaferesi pont szamara.
   (7)
           A wpa_passphrase mezo" a WPA hitelesiteshez szu:kseges
           ASCII jelmondatot tartalmazza.

             Figyelem: Leheto"leg mindig ero"s jelszavakat
             hasznaljunk, amelyek kello"en hosszuak es sokfele
             karaktert tartalmaznak, igy nehezebben fejtheto"ek meg
             vagy to:rheto"ek fel.

   (8)
           A wpa_key_mgmt sor a kulcsok kezelesere hasznalt
           protokollt definialja. Ez a mi esetu:nk most a WPA-PSK.
   (9)
           A wpa_pairwise mezo" a hozzaferesi pont altal elfogadott
           titkositasi algoritmusokat hatarozza meg. A peldaban a
           TKIP (WPA) es CCMP (WPA2) titkositast is tamogatjuk. A
           CCMP titkositas a TKIP egyik alternativaja, es leheto"seg
           szerint hasznaljuk ezt. A TKIP csak olyan allomasok
           eseteben javasolt, amelyek nem tamogatjak a CCMP
           hasznalatat.

   A ko:vetkezo" lepes a hostapd elinditasa:

 # /etc/rc.d/hostapd forcestart

 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2290
           inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
           inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4
           ether 00:11:95:c3:0d:ac
           media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
           status: associated
           ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
           authmode WPA2/802.11i privacy MIXED deftxkey 2 TKIP 2:128-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100

   A hozzaferesi pont mostantol mu"ko:dik, innento"l a kliensek mar
   kepesek csatlakozni hozza, bo"vebben lasd a 31.3.3.1.3 Szakaszban.
   A hozzaferesi ponthoz tartozo allomasokat az ifconfig ath0 list
   sta paranccsal tudjuk listazni.

     --------------------------------------------------------------

    31.3.5.4. WEP titkositast hasznalo hozzaferesi pontok

   A WEP titkositast nem javasoljuk a hozzaferesi pontok eseteben,
   mivel nem tartalmaz semmilyen hitelesitesi mechanizmust es
   ko:nnyen felto:rheto". Egyes regebbi vezetek nelku:li kartyak
   azonban csak a WEP altal nyujtott vedelmet ismerik, ezert az
   ilyenek csak olyan hozzaferesi pontokhoz tudnak csatlakozni,
   amelyek vagy nem hasznalnank hitelesitest es titkositast, vagy
   erre a WEP protokollt hasznaljak.

   A vezetek nelku:li eszko:zt tegyu:k hozzaferesi pont modba es
   allitsuk be neki a megfelelo" SSID-t es IP-cimet:

 # ifconfig ath0 ssid freebsdap wepmode on weptxkey 3 wepkey 3:0x3456789012 mode 11g mediaopt hostap \
         inet 192.168.0.1 netmask 255.255.255.0

     * A weptxkey beallitas utan adjuk meg a ku:ldeshez hasznalt WEP
       kulcsot. Itt a harmadik kulcsot adtuk meg (vegyu:k eszre, hogy
       a kulcsok szamozasa az 1 ertekkel kezdo"dik). Ez a parametert
       az adatok tenyleges titkositasahoz kell megadni.

     * A wepkey a kivalasztott WEP kulcs beallitasat jelo:li, aminek
       a formatuma index:kulcs. Ha itt nem adunk meg indexet, akkor
       automatikusan az elso" kulcsot allitjuk be. Ezert talan
       mondanunk sem kell, hogy az indexet csak akkor kell megadni,
       ha nem az elso" kulcsot akarjuk hasznalni.

   A ath0 felu:let allapotanak megtekintesehez adjuk ki megint az
   ifconfig parancsot:

 # ifconfig ath0
   ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
           inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
           inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4
           ether 00:11:95:c3:0d:ac
           media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
           status: associated
           ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac
           authmode OPEN privacy ON deftxkey 3 wepkey 3:40-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100

   Egy masik vezetek nelku:li gepro"l most mar megprobalhatjuk
   megkeresni a hozzaferesi pontot:

 # ifconfig ath0 up scan
 SSID            BSSID              CHAN RATE  S:N   INT CAPS
 freebsdap       00:11:95:c3:0d:ac    1   54M 22:1   100 EPS

   Lathatjuk, hogy a kliens megtalalta a hozzaferesi pontot, es a
   megfelelo" parameterekkel (kulcs stb.) kepes kapcsolodni hozza a
   31.3.3.1.4 Szakaszban leirtak szerint.

     --------------------------------------------------------------

  31.3.6. Hibaelharitas

   Ha valamilyen gondunk lenne a vezetek nelku:li halozatok
   hasznalataval, akad nehany lepes, amivel esetleg fel tudjuk
   deriteni a hiba okat.

     * Ha nem latjuk a hozzaferesi pontot a pasztazas utan,
       elleno"rizzu:k, hogy a vezetek nelku:li eszko:zt veletlenu:l
       nem korlatoztuk-e le bizonyos csatornakra.

     * Ha nem tudunk csatlakozni a hozzaferesi ponthoz, akkor
       egyeztessu:k vele az allomas egyes parametereit, beleertve a
       hitelesitesi semat es a biztonsagi protokollokat. Minel jobban
       egyszeru"sitsu:k le a konfiguraciokat. Ha WPA vagy WEP
       titkositast hasznalunk, akkor a hozzaferesi ponton allitsunk
       be nyilt hitelesitest es kapcsoljuk ki a titkositast, majd
       nezzu:k meg, hogy igy eljut-e hozzank valamilyen forgalom.

     * Ahogy sikeru:lt csatlakozunk a hozzaferesi ponthoz, a
       biztonsagi beallitasokat olyan egyszeru" eszko:zo:kkel
       probaljuk meg diagnosztizalni, mint peldaul a ping(8).

       A wpa_supplicant segedprogrammal tudunk nyomko:vetest vegezni.
       A -dd opcio megadasaval inditsuk el manualisan es
       elleno"rizzu:k a rendszernaplokat.

     * Vannak alacsonyabb szintu" nyomko:vetesi leheto"segek is. A
       802.11 protokollt tamogato retegben is tudunk engedelyezni
       nyomko:vetesi u:zeneteket a /usr/src/tools/tools/net80211
       ko:nyvtarban talalhato wlandebug program segitsegevel. Peldaul
       a

 # wlandebug -i ath0 +scan+auth+debug+assoc
   net.wlan.0.debug: 0 => 0xc80000<assoc,auth,scan>

       paranccsal a hozzaferesi pontok keresesehez es a 802.11
       protokollon belu:l a kapcsolat megszervezesehez szu:kseges
       kezfogasokhoz kapcsolodo konzolu:zeneteket tudjuk
       engedelyezni.

       A 802.11 retegben rengeteg hasznos statisztikat talalhatunk.
       Mindezeket a wlanstats eszko:zzel tudjuk kiiratni. Ezeknek a
       statisztikaknak a 802.11 reteg o:sszes hibajat be kell tudniuk
       azonositaniuk. Vigyazzunk azonban, mert az eszko:zmeghajtokban
       a 802.11 reteg alatt rejlo" bizonyos hibak ilyenkor nem
       jelennek meg. Az eszko:zfu:ggo" problemak felderitesevel
       kapcsolatban a megfelelo" meghajto dokumentaciojat olvassuk
       at.

   Amennyiben a fenti tanacsok menten sem sikeru:l orvosolnunk a
   hibat okat, ku:ldju:nk egy hibajelentest es mellekelju:k hozza a
   fentebb targyalt eszko:zo:k altal gyartott kimeneteket.

     --------------------------------------------------------------

31.4. Bluetooth

   Irta: Pav Lucistnik.

     --------------------------------------------------------------

  31.4.1. Bevezetes

   A Bluetooth egy olyan vezetek nelku:li technologia, amellyel a
   2,4 GHz-es frekvenciatartomanyban tudunk szemelyi halozatokat
   letrehozni 10 meteren belu:l. Az ilyen tipusu halozatok altalaban
   alkalmi jelleggel keletkeznek ku:lo:nfele hordozhato eszko:zo:k,
   mint peldaul mobiltelefonok, kezi szamitogepek es laptopok
   ko:zo:tt. Eltero"en mas nepszeru" vezetek nelku:li
   technologiaktol, peldaul a wi-fito"l, a Bluetooth magasabb szintu"
   szolgaltasi profilokat is felajanl: FTP-szeru"
   allomanyszervereket, az allomanyok attolasat, hang atku:ldeset,
   soros vonali emulaciot es meg sok minden mast.

   A FreeBSD-ben megvalositott Bluetooth protokollkeszlet a Netgraph
   rendszerre epitkezik (lasd netgraph(4)). A Bluetooth alapu USB-s
   hardverzarak szeles ko:ret tamogatja az ng_ubt(4) meghajto. A
   Broadcom BCM2033 chipre epitett Bluetooth eszko:zo:ket az
   ubtbcmfw(4) es az ng_ubt(4) meghajtok tamogatjak. A 3Com Bluetooth
   PC Card 3CRWB60-A eszko:zt az ng_bt3c(4) meghajto tamogatja. A
   soros es UART alapu Bluetooth eszko:zo:ket a sio(4), ng_h4(4) es
   hcseriald(8) ismeri. Ebben a szakaszban a Bluetooth alapu USB-s
   hardverzarak hasznalatat mutatjuk be.

     --------------------------------------------------------------

  31.4.2. Az eszko:z csatlakoztatasa

   Alapertelmezes szerint a Bluetooth eszko:zmeghajtok modulkent
   erheto"ek el. Az eszko:z csatlakoztatasa elo"tt a megfelelo"
   meghajtot be kell to:ltenu:nk a rendszermagba:

 # kldload ng_ubt

   Ha a Bluetooth eszko:z mar a rendszer inditasakor is jelen van,
   akkor a modult az /boot/loader.conf allomanyon keresztu:l is
   beto:lthetju:k:

 ng_ubt_load="YES"

   Dugjuk be az USB-s hardverzarunkat. Az alabbihoz hasonlo kimenet
   fog keletkezni a konzolon (vagy a rendszernaploban):

 ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2
 ubt0: Interface 0 endpoints: interrupt=0x81, bulk-in=0x82, bulk-out=0x2
 ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3,
       wMaxPacketSize=49, nframes=6, buffer size=294

   Az /etc/rc.d/bluetooth szkript fogja vegezni a Bluetooth
   hasznalatahoz szu:kseges protokollkeszlet elinditasat es
   leallitasat. Jo o:tlet leallitani az eszko:z eltavolitasa elo"tt,
   de ha elhagyjuk, (altalaban) nem okoz vegzetes hibat. Az
   inditaskor a ko:vetkezo" kimenetet kapjuk:

 # /etc/rc.d/bluetooth start ubt0
 BD_ADDR: 00:02:72:00:d4:1a
 Features: 0xff 0xff 0xf 00 00 00 00 00
 <3-Slot> <5-Slot> <Encryption> <Slot offset>
 <Timing accuracy> <Switch> <Hold mode> <Sniff mode>
 <Park mode> <RSSI> <Channel quality> <SCO link>
 <HV2 packets> <HV3 packets> <u-law log> <A-law log> <CVSD>
 <Paging scheme> <Power control> <Transparent SCO data>
 Max. ACL packet size: 192 bytes
 Number of ACL packets: 8
 Max. SCO packet size: 64 bytes
 Number of SCO packets: 8

     --------------------------------------------------------------

  31.4.3. Host Controller Interface (HCI)

   A Host Controller Interface (HCI) egy parancsfelu:letet nyujt a
   mu"ko:desi sav vezerlo"jehez (baseband controller) es az
   o:sszeko:ttetesek kezelo"jehez (link manager), valamint
   hozzaferest a hardverallapot es -vezerlo" regiszterekhez. Ez a
   felu:let egy egyseges modszert szolgaltat a Bluetooth mu"ko:desi
   savjahoz tartozo tulajdonsagok eleresehez. Az eszko:zo:n u:zemelo"
   HCI reteg a Bluetooth hardverben talalhato HCI firmware-rel valt
   adatokat es parancsokat. A Host Controller Transport Layer (vagyis
   a fizikai busz) meghajtoja mind a ket HCI reteget es a ketteju:k
   ko:zti informaciocseret is elerheto"ve teszi.

   Az egyes Bluetooth eszko:zo:kho:z letrejo:n egy-egy hci tipusu
   Netgraph-beli csomopont. Ez a HCI csomopont altalaban a Bluetooth
   eszko:zmeghajto csomopontjahoz (lefele) es az L2CAP csomoponthoz
   (felfele) csatlakozik. Az o:sszes HCI mu"veletet a HCI csomoponton
   kell elvegezni es nem az eszko:zmeghajtohoz tartozon. A HCI
   csomopont alapertelmezett neve a "devicehci". Ezekro"l to:bbet az
   ng_hci(4) man oldalan tudhatunk meg.

   Az egyik legaltalanosabb feladat a Bluetooth eszko:zo:k eseteben a
   ko:zelben levo" tovabbi eszko:zo:k felderitese. Ezt a mu"veletet
   tudakozodasnak ("inquiry") nevezik. A tudakozodast es az o:sszes
   to:bbi HCI-hez kapcsolodo mu"veletet a hccontrol(8)
   segedprogrammal tudjuk elvegezni. A lentebb lathato pelda azt
   mutatja meg, hogyan tudunk Bluetooth eszko:zo:ket keresni egy
   adott tavolsagon belu:l. Az elerheto" eszko:zo:k listajat nehany
   masodpercen alatt megkapjuk. A tavoli azonban eszko:zo:k csak
   akkor fognak valaszolni, ha felderitheto" ("discoverable") modban
   vannak.

 % hccontrol -n ubt0hci inquiry
 Inquiry result, num_responses=1
 Inquiry result #0
        BD_ADDR: 00:80:37:29:19:a4
        Page Scan Rep. Mode: 0x1
        Page Scan Period Mode: 00
        Page Scan Mode: 00
        Class: 52:02:04
        Clock offset: 0x78ef
 Inquiry complete. Status: No error [00]

   A BD_ADDR a Bluetooth eszko:z egyedi cime, hasonlo a halozati
   kartyak MAC-cimehez. Erre a cimre lesz szu:kseg ahhoz, hogy a
   tovabbiakban kommunikalni tudjunk az eszko:zzel. Emberek szamara
   ertelmezheto" nevet is hozza tudunk rendelni a BD_ADDR cimhez. Az
   /etc/bluetooth/hosts allomany tartalmazza a Bluetooth eszko:zo:kre
   vonatkozo informaciokat. A ko:vetkezo" peldaban azt lathatjuk,
   hogyan tudunk beszedesebb nevet adni egy tavoli eszko:znek:

 % hccontrol -n ubt0hci remote_name_request 00:80:37:29:19:a4
 BD_ADDR: 00:80:37:29:19:a4
 Name: Pav T39-ese

   Amikor tudakozodni kezdu:nk a tavoli Bluetooth eszko:zo:k
   jelenlete felo"l, a gepu:nket "sajat.gep.nev (ubt0)" neven fogjak
   latni. Ez a helyi eszko:zho:z rendelt nev barmikor
   megvaltoztathato.

   A Bluetooth rendszer leheto"seg ad pont-pont (termeszetesen csak
   ket Bluetooth egyseg ko:zo:tt) vagy pont-multipont tipusu
   kapcsolatok kiepitesere. A pont-multipont kapcsolat eseten a
   kapcsolaton to:bb Bluetooth eszko:z osztozik. A most ko:vetkezo"
   peldaban meglathatjuk, hogyan kell az aktiv mu"ko:desi savban
   lekerdezni a helyi eszko:z letrejo:tt kapcsolatait:

 % hccontrol -n ubt0hci read_connection_list
 Remote BD_ADDR    Handle Type Mode Role Encrypt Pending Queue State
 00:80:37:29:19:a4     41  ACL    0 MAST    NONE       0     0 OPEN

   A kapcsolat azonositoja (connection handle) akkor hasznos, amikor
   egy savbeli kapcsolatot akarunk lezarni. Ezt altalaban nem kell
   kezzel megcsinalni. A rendszer magatol lezarja az inaktiv savbeli
   kapcsolatokat.

 # hccontrol -n ubt0hci disconnect 41
 Connection handle: 41
 Reason: Connection terminated by local host [0x16]

   A hccontrol help paranccsal tudjuk lekerdezni az elerheto" HCI
   parancsokat. A legto:bb HCI parancs vegrehajtasahoz nem kellenek
   rendszeradminisztratori jogosultsagok.

     --------------------------------------------------------------

  31.4.4. Logical Link Control and Adaptation Protocol (L2CAP)

   A Logical Link Control and Adaptation Protocol (L2CAP) a
   kapcsolat-orientalt es a kapcsolat nelku:li adatszolgaltatasokert
   felelo"s a felso"bb retegek fele, valamit tamogatja a protokollok
   to:bbszo:ro:zeset, a darabolast es az o:sszerakast. Az L2CAP a
   magasabb szintu" protokollok es az alkalmazasok szamara egeszen
   64 kilobyte meretig leheto"ve teszi az adatcsomagok ku:ldeset es
   fogadasat.

   A L2CAP a csatorna (channel) fogalmara epitkezik. A csatorna egy
   logikai kapcsolatot kepvisel a mu"ko:desi savon belu:li kapcsolat
   felett. Mindegyik csatornahoz egyetlen protokoll ko:to"dik, egy a
   to:bbho:z alapon. To:bb csatorna is tarthozhat ugyanahhoz a
   protokollhoz, de egy csatornan nem hasznalhatunk to:bb protokollt.
   A csatornakon keresztu:l erkezo" L2CAP csomagok ezutan a
   megfelelo" felso"bb retegbeli protokollokhoz keru:lnek. To:bb
   csatorna osztozhat ugyanazon a savbeli kapcsolaton.

   Minden Bluetooth eszko:zho:z letrejo:n egy l2cap tipusu
   Netgraph-csomopont. Az L2CAP csomopont altalaban egy Bluetooth HCI
   csomoponthoz (lefele) es egy Bluetooth sockethez (felfele)
   kapcsolodik. Az L2CAP csomopont alapertelmezett neve
   "devicel2cap". Erro"l reszletesebben az ng_l2cap(4) man oldal
   vilagosit fel minket.

   Ezen a szinten hasznos parancsnak bizonyulhat az l2ping(8), amivel
   mas eszko:zo:ket tudunk pingelni. Elo"fordulhat, hogy egyes
   Bluetooth implementaciok nem valaszolnak semmilyen feleju:k
   ku:ldo:tt adatra, igy az alabbi peldaban is szereplo" 0 bytes
   teljesen normalis.

 # l2ping -a 00:80:37:29:19:a4
 0 bytes from 0:80:37:29:19:a4 seq_no=0 time=48.633 ms result=0
 0 bytes from 0:80:37:29:19:a4 seq_no=1 time=37.551 ms result=0
 0 bytes from 0:80:37:29:19:a4 seq_no=2 time=28.324 ms result=0
 0 bytes from 0:80:37:29:19:a4 seq_no=3 time=46.150 ms result=0

   Az l2control(8) segedprogram hasznalhato az L2CAP csomopontok
   ku:lo:nbo:zo" mu"veleteinek kivitelezesere. Ebben a peldaban a
   helyi eszko:zho:z tartozo logikai kapcsolatokat (csatornak) es
   savokat kerdezzu:k le:

 % l2control -a 00:02:72:00:d4:1a read_channel_list
 L2CAP channels:
 Remote BD_ADDR     SCID/ DCID   PSM  IMTU/ OMTU State
 00:07:e0:00:0b:ca    66/   64     3   132/  672 OPEN
 % l2control -a 00:02:72:00:d4:1a read_connection_list
 L2CAP connections:
 Remote BD_ADDR    Handle Flags Pending State
 00:07:e0:00:0b:ca     41 O           0 OPEN

   Masik ugyanilyen diagnosztikai eszko:z a btsockstat(1). Ha a
   viselkedeset tekintju:k, akkor leginkabb a netstat(1) programra
   hasonlit, de a Bluetooth halozatban megjeleno" adatszerkezetekkel
   dolgozik. Az alabbi pelda az imenti l2control(8) parancs
   kimeneteben szereplo" logikai kapcsolatokat mutatja:

 % btsockstat
 Active L2CAP sockets
 PCB      Recv-Q Send-Q Local address/PSM       Foreign address   CID   State
 c2afe900      0      0 00:02:72:00:d4:1a/3     00:07:e0:00:0b:ca 66    OPEN
 Active RFCOMM sessions
 L2PCB    PCB      Flag MTU   Out-Q DLCs State
 c2afe900 c2b53380 1    127   0     Yes  OPEN
 Active RFCOMM sockets
 PCB      Recv-Q Send-Q Local address     Foreign address   Chan DLCI State
 c2e8bc80      0    250 00:02:72:00:d4:1a 00:07:e0:00:0b:ca 3    6    OPEN

     --------------------------------------------------------------

  31.4.5. Az RFCOMM protokoll

   Az RFCOMM protokoll a soros portok emulaciojat valositja meg az
   L2CAP protokollon keresztu:l. A protokoll az ETSI TS 07.10. RFCOMM
   szabvanyan alapszik, es egy egyszeru" atviteli protokoll, amelyet
   a 9 tu"s RS-232 (EIATIA-232-E) soros portok emulaciojara
   keszitettek fel. Az RFCOMM protokoll legfeljebb 60 kapcsolat
   (RFCOMM csatorna) parhuzamos hasznalatat tamogatja ket Bluetooth
   eszko:z ko:zo:tt.

   Az RFCOMM szamara a teljes kommunikacios utvonal ket ku:lo:nbo:zo"
   eszko:zo:n futo alkalmazast (kommunikacios vegpontot) es ko:ztu:k
   levo" kommunikacios szegments foglalja magaban. Az RFCOMM az adott
   eszko:zo:n a soros portot hasznalo alkalmazasok reszere keszu:lt.
   A kommunikacios szegmens az egyik eszko:zto"l a masikig vezeto"
   Bluetooth alapu o:sszeko:ttetes (ko:zvetlen kapcsolat).

   Ko:zvetlen kapcsolat eseten az RFCOMM csak az eszko:zo:k ko:zti
   kapcsolattal foglalkozik, valamint halozati kapcsolat eseten az
   eszko:z es a modem ko:zti kapcsolattal. Az RFCOMM mas
   konfiguraciokat is tamogat, peldaul olyan modulokat, amelyek az
   egyik oldalon a Bluetooth vezetek nelku:li technologian keresztu:l
   kommunikalnak, mig a masik oldalon egy vonalas felu:letet
   nyujtanak.

   A FreeBSD-ben az RFCOMM protokollt Bluetooth foglalatok retegeben
   valositottak meg.

     --------------------------------------------------------------

  31.4.6. Az eszko:zo:k parositasa

   Alapertelmezes szerint a Bluetooth kommunikacio nem hitelesito"dik
   es barmelyik eszko:z kepes barmelyik masikkal felvenni a
   kapcsolatot. Egy Bluetooth eszko:z (peldaul egy mobiltelefon) egy
   adott szolgaltatashoz igenyelhet hitelesitest (peldaul
   betarcsazashoz). A Bluetooth alapu hitelesites to:bbnyire PIN
   kodokkal to:rtenik. A PIN kod egy legfeljebb 16 karakterbo"l allo
   ASCII karakterlanc. A felhasznaloknak mind a ket eszko:zo:n
   ugyanazt a PIN kodot kell megadniuk. Miutan megadtuk a PIN kodot,
   az eszko:zo:k letrehoznak hozzajuk egy o:sszeko:tettesbeli kulcsot
   (link key). Ezutan ezt a kulcsot vagy az eszko:zo:ko:n taroljuk
   vagy pedig valamilyen tartos tarolon. A ko:vetkezo" alkalommal
   mind a ket eszko:zt ezt a korabban elkeszitett kulcsot fogja
   hasznalni. Ezt az eljarast nevezik parositasnak (pairing). Ha
   valamelyik eszko:z elveszti az o:ssszeko:ttetes kulcsat, akkor a
   parositast meg kell ismetelni.

   A hcsecd(8) demon felelo"s az o:sszes Bluetooth alapu hitelesitesi
   keres lekezeleseert. Az alapertelmezett konfiguracios allomanya az
   /etc/bluetooth/hcsecd.conf. Peldaul igy tudjuk benne egy
   mobiltelefonhoz megadni az "1234" PIN kodot:

 device {
         bdaddr  00:80:37:29:19:a4;
         name    "Pav T39-ese";
         key     nokey;
         pin     "1234";
       }

   Semmilyen korlatozas nincs a PIN kodokra (a meretu:kto"l
   eltekintve). Egyes eszko:zo:kbe (peldaul a Bluetooth fejhallgatok)
   elo"re ro:gzitett PIN kodot epitettek bele. A -d kapcsolo hatasara
   a hcsecd(8) demont az elo"terben lehet futtatni, igy ko:nnyebben
   lathatjuk mi to:rtenik. A tavoli eszko:zt allitsuk be a parositas
   elfogadasara es kezdemenyezzu:nk fele egy Bluetooth kapcsolatot. A
   tavoli eszko:znek erre azt kell valaszolnia, hogy elfogadta a
   parositast, majd kerni fogja a PIN kodot. Adjuk meg ugyanazt a PIN
   kodot, mint amit a hcsecd.conf allomanyba is beirtunk. Most mar a
   gepu:nk es a tavoli eszko:z parban vannak. A parositast a tavoli
   eszko:zro"l is kezdemenyezhetju:k.

   A FreeBSD 5.5, 6.1 es ujabb valtozataiban az /etc/rc.conf
   allomanyba a ko:vetkezo" sort kell felvenni a hcsecd automatikus
   inditasahoz:

 hcsecd_enable="YES"

   Ez pedig a hcsecd demon altal generalt kimenetre pelda:

 hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4
 hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', link key doesn't exist
 hcsecd[16484]: Sending Link_Key_Negative_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4
 hcsecd[16484]: Got PIN_Code_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4
 hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', PIN code exists
 hcsecd[16484]: Sending PIN_Code_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4

     --------------------------------------------------------------

  31.4.7. Service Discovery Protocol (SDP)

   A Service Discovery Protocol (SDP) segitsegevel a kliens
   alkalmazasok kepes felderiteni, hogy a szerver alkalmazasok
   reszero"l milyen szolgaltatasok erheto"ek el, valamint ezek a
   szolgaltatasok milyen tulajdonsagokkal rendelkeznek. A
   szolgaltatasok tulajdonsagi ko:ze soroljuk to:bbek ko:zo:tt a
   felajanlott szolgaltatas tipusat vagy osztalyat, illetve a
   szolgaltatas kihasznalasahoz szu:kseges mechanizmusra vagy
   protokollra vonatkozo informaciokat.

   Az SDP az SDP szerver es az SDP kliens ko:zti kommunikaciot
   foglalja magaban. A szerver karbantart egy listat azokrol a
   szolgaltatasi rekordokrol, amelyek a szerverhez tartozo
   szolgaltatasok jellemzo"it irjak le. Mindegyik ilyen szolgaltatasi
   rekord egyetlen szolgaltatas adatait tartalmazza. A kliensek egy
   SDP keressel ezeket a szolgaltatasi rekordokat kerhetik el az SDP
   szerverto"l. Amennyiben a kliens, vagy a hozzatartozo alkalmazas a
   szolgaltatas hasznalata mellett do:nt, akkor a szolgaltatas
   hasznalatahoz a megfelelo" szolgaltato fele nyitnia kell egy
   ku:lo:n kapcsolatot. Az SDP csak a szolgaltatasok es azok
   tulajdonsagainak felderitesehez ad segitseget, de semmilyen
   eszko:zt nem tartalmaz a felhasznalasukra.

   Altalaban az SDP kliensek altalaban valamilyen szamunkra kello"
   tulajdonsag alapjan keresnek szolgaltatasokat. Raadasul adodhatnak
   olyan alkalmak is, amikor a szolgaltatasok elo"zetes ismerete
   nelku:l szeretnenk felderiteni a rendelkezesre allo szolgaltatasok
   tipusait. A felajanlott szolgaltatasok ilyen tipusu feldolgozasat
   nevezzu:k bo:ngeszesnek (browsing).

   Az sdpd(8) Bluetooth SDP szerver es a parancssoros sdpcontrol(8)
   kliens az alap FreeBSD telepites resze. Az alabbi peldaban egy SDP
   bo:ngeszesi kerest adunk ki:

 % sdpcontrol -a 00:01:03:fc:6e:ec browse
 Record Handle: 00000000
 Service Class ID List:
         Service Discovery Server (0x1000)
 Protocol Descriptor List:
         L2CAP (0x0100)
                 Protocol specific parameter #1: u/int/uuid16 1
                 Protocol specific parameter #2: u/int/uuid16 1

 Record Handle: 0x00000001
 Service Class ID List:
         Browse Group Descriptor (0x1001)

 Record Handle: 0x00000002
 Service Class ID List:
         LAN Access Using PPP (0x1102)
 Protocol Descriptor List:
         L2CAP (0x0100)
         RFCOMM (0x0003)
                 Protocol specific parameter #1: u/int8/bool 1
 Bluetooth Profile Descriptor List:
         LAN Access Using PPP (0x1102) ver. 1.0

   es igy tovabb. Mindegyik szolgaltatashoz hozzatartozik a
   tulajdonsagok egy listaja (peldaul RFCOMM csatorna). Lehetseges,
   hogy szolgaltatastol fu:ggo"en bizonyos tulajdonsagokat kell
   figyelnu:nk. Egyes Bluetooth implementaciok nem tamogatjak a
   szolgaltatasok bo:ngeszeset es ezert egy u:res listat adnak
   vissza. Ebben az esetben egy konkret szolgaltatasra tudunk
   rakeresni. A ko:vetkezo" peldaban az OBEX Object Push (OPUSH)
   szolgaltatast keressu:k:

 % sdpcontrol -a 00:01:03:fc:6e:ec search OPUSH

   FreeBSD alatt az sdpd(8) szerverrel tudunk szolgaltatasokat
   felajanlani a Bluetooth klienseknek. A FreeBSD 5.5, 6.1 vagy
   keso"bbi valtozataiban ehhez a ko:vetkezo" sort kell megadnunk az
   /etc/rc.conf allomanyban:

 sdpd_enable="YES"

   Ezutan az sdpd demon igy indithato el:

 # /etc/rc.d/sdpd start

   A tavoli kliensek reszere Bluetooth szolgaltatasokat felajanlani
   kivano helyi szerver alkalmazasoknak regisztralniuk kell magukat a
   helyi SDP demonnal. Peldaul az egyik ilyen alkalmazas az
   rfcomm_pppd(8), es elinditasa utan regisztralni fogja a Bluetooth
   LAN szolgaltatast a helyi SDP demonnal.

   A helyi SDP szerveren regisztralt szolgaltatasokat a helyi
   vezerlesi csatornan keresztu:l egy browse keressel tudjuk
   lekerdezni:

 # sdpcontrol -l browse

     --------------------------------------------------------------

  31.4.8. A betarcsazos halozati es a PPP halozati hozzaferesi (LAN)
  profilok

   A betarcsazos halozati (Dial-Up Networking, DUN) profil
   leggyakrabban a modemek es mobiltelefonok ko:zo:tt tu"nik fel. Ez
   a profil a ko:vetkezo" forgatoko:nyveket dolgozza fel:

     * A szamitogepu:nkkel egy mobiltelefont vagy modemet vezetek
       nelku:li modemkent hasznalunk, amivel az internethez vagy mas
       halozatokhoz csatlakozunk betarcsazassal.

     * A szamitogepu:nkkel egy mobiltelefonon vagy modemen keresztu:l
       fogadunk adathivasokat.

   A PPP halozati hozzaferesi (LAN) profil a ko:vetkezo"
   helyezetekben alkalmazhato:

     * LAN hozzaferes egyetlen Bluetooth eszko:zho:z

     * LAN hozzaferes to:bb Bluetooth eszko:zho:z

     * Ket gep o:sszeko:tese (a soros vonali kapcsolat emulacioval
       PPP-n keresztu:l)

   FreeBSD alatt mind a ket profilt a ppp(8) es az rfcomm_pppd(8)
   valositja meg -- egy olyan wrapper eszko:z, amely az RFCOMM
   Bluetooth kapcsolatokat a PPP szamara is ertelmesse alakitja at.
   Mielo"tt meg barmelyik profilt elkezdenenk hasznalni, egy uj PPP
   cimket kell letrehozni az /etc/ppp/ppp.conf allomanyban. Erre
   peldat az rfcomm_pppd(8) man oldalon talalhatunk.

   A ko:vetkezo" peldaban az rfcomm_pppd(8) programot fogjuk
   hasznalni arra, hogy egy RFCOMM tipusu kapcsolatot nyissunk a
   00:80:37:29:19:a4 cimmel rendelkezo" tavoli Bluetooth eszko:z
   fele. A tenyleges RFCOMM csatorna szamat SDP-n keresztu:l a tavoli
   eszko:zto"l kapjuk. Az RFCOMM csatorna kezzel is megadhato, es
   ilyen esetekben az rfcomm_pppd(8) nem fog SDP kerest ku:ldeni. A
   sdpcontrol(8) hasznalataval tudjuk lekerdezni a tavoli eszko:zo:n
   letrejo:tt RFCOMM csatornat.

 # rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup

   A PPP halozati eleres (LAN) szolgaltatas beinditasahoz futni kell
   a sdpd(8) szervernek. A helyi halozaton keresztu:l csatlakozo
   kliensekhez letre kell hozni egy uj bejegyzest az
   /etc/ppp/ppp.conf allomanyban. Az rfcomm_pppd(8) man oldalon
   talalhatunk erre peldakat. Vegezetu:l inditsuk el az RFCOMM PPP
   szervert egy ervenyes RFCOMM csatornaszammal. Az RFCOMM PPP
   szerver ekkor automatikusan regisztralja a Bluetooth LAN
   szolgaltatast a helyi SDP demonnal. A ko:vetkezo" peldaban
   megmutatjuk, hogyan lehet elinditani egy RFCOMM PPP szervert:

 # rfcomm_pppd -s -C 7 -l rfcomm-server

     --------------------------------------------------------------

  31.4.9. Az OBEX Object Push (OPUSH) profil

   Az OBEX egy szeles ko:rben alkalmazott protokoll a mobileszko:zo:k
   ko:zti egyszeru" allomanyvitelre. Legfo"keppen az infravo:ro:s
   kommunikacioban alkalmazzak, ahol a laptopok vagy PDA-k ko:zti
   altalanos allomanyatvitelre hasznaljak, illetve nevjegykartyak
   vagy naptarbejegyzesek atku:ldesere mobiltelefonok ko:zo:tt es
   egyeb PIM alkalmazast futtato eszko:zo:k eseteben.

   Az OBEX szervert es klienst egy ku:lso" csomag, az obexapp
   valositja meg, amelyet az comms/obexapp portbol erhetu:nk el.

   Az OBEX kliens hasznalhato objektumok attolasara vagy lehuzasara
   az OBEX szerverhez. Ez az objektum lehet peldaul egy nevjegykartya
   vagy egy megbeszelt talalkozo. Az OBEX kliens SDP-n keresztu:l tud
   maganak RFCOMM csatornaszamot szerezni. Ezt ugy tehetju:k meg, ha
   a szolgaltatas neve helyett egy RFCOMM csatorna szamat adjuk meg.
   A tamogatott szolgaltatasok: IrMC, FTRN es OPUSH. Szamkent RFCOMM
   csatorna is megadhato. Az alabbi peldaban egy OBEX munkamenetet
   lathatunk, ahol az eszko:z informacios objektumat huzzuk le a
   mobiltelefonrol es egy uj objektumot (egy nevjegykartyat) tolunk
   fel a telefon ko:nyvtaraba.

 % obexapp -a 00:80:37:29:19:a4 -C IrMC
 obex> get telecom/devinfo.txt devinfo-t39.txt
 Success, response: OK, Success (0x20)
 obex> put new.vcf
 Success, response: OK, Success (0x20)
 obex> di
 Success, response: OK, Success (0x20)

   Az OBEX objektumok tologatasanak tamogatasahoz az sdpd(8)
   szervernek kell futnia. Tovabba a beerkezo" objektumok tarolasahoz
   letre kell hoznunk meg egy ko:nyvtarat is. Ez az ko:nyvtar
   alapertelmezes szerint a /var/spool/obex. Vegu:l inditsuk el az
   OBEX szervert egy ervenyes RFCOMM csatorna szamanak megadasaval.
   Az OBEX szerver ezutan automatikusan regisztralja az "OBEX Object
   Push" nevu" szolgaltatast a helyi SDP demonnal. Ebben a peldaban
   lathatjuk az OBEX szerver inditasat:

 # obexapp -s -C 10

     --------------------------------------------------------------

  31.4.10. Soros vonali profil (SPP)

   A soros vonali profil (Serial Port Profile, SPP) hasznalataval
   RS232 (vagy ahhoz hasonlo) vonali adatatvitelt tudunk emulalni. Ez
   a profil a regebben fejlesztett alkalmazasokkal birkozik meg, es a
   Bluetooth technologiaval valodi kabel helyett egy virtualis soros
   portot kepez le.

   Az rfcomm_sppd(1) segedprogram ezt a soros vonali profilt
   valositja meg. Igy egy pszeudo terminalt tudunk virtualis soros
   portkent hasznalni. Ha nem adunk meg RFCOMM csatornat, akkor az
   rfcomm_sppd(1) kepes SDP-n keresztu:l kerni egyet maganak a tavoli
   eszko:zto"l. Ha ezt felu:l kivanjuk biralni, akkor a parancssorban
   megadhatunk akar egy konkret RFCOMM csatornat is.

 # rfcomm_sppd -a 00:07:E0:00:0B:CA -t /dev/ttyp6
 rfcomm_sppd[94692]: Starting on /dev/ttyp6...

   Miutan csatlakoztunk, a pszeudo terminalt tudjuk soros portkent
   hasznalni:

 # cu -l ttyp6

     --------------------------------------------------------------

  31.4.11. Hibaelharitas

    31.4.11.1. Nem tudunk csatlakozni a tavoli eszko:zzel

   Egyes Bluetooth eszko:zo:k nem tamogatjak a szerepek cserejet
   (role switch). Alapertelmezes szerint amikor a FreeBSD elfogad egy
   uj kapcsolatot, megprobal rajta szerepet cserelni es mesterre
   valni. Azok az eszko:zo:k, amelyek ezt nem tamogatjak, nem lesznek
   kepesek emiatt csatlakozni. Ez a szerepvaltas az uj kapcsolatok
   felepitese soran zajlik le, ezert egy tavoli eszko:zto"l nem lehet
   megtudni, hogy ismeri-e ezt a leheto"seget. A helyi oldalon a
   ko:vetkezo" HCI opcioval lehet kikapcsolni a szerepcseret:

 # hccontrol -n ubt0hci write_node_role_switch 0

     --------------------------------------------------------------

    31.4.11.2. Valami nem megy. Lehet latni valahogy, pontosan mi is
    to:rtenik?

   Persze, igen. Egy ku:lso" csomag, a hcidump segitsegevel, amely a
   comms/hcidump portbol erheto" el. A hcidump segedprogram a
   tcpdump(1) programhoz hasonlithato. Ezzel lehet a Bluetooth
   csomagok tartalmat megnezni a terminalon vagy elmenteni ezeket egy
   allomanyba.

     --------------------------------------------------------------

31.5. Halozati hidak

   Irta: Andrew Thompson.

  31.5.1. Bevezetes

   Gyakran hasznos lehet anelku:l felosztani egy fizikai halozatot
   (peldaul egy Ethernet szegmenst) ket ku:lo:n halozati szegmensre,
   hogy ku:lo:n IP-alhalozatot kellene letrehozunk es o:sszeko:tnu:nk
   ezeket egy utvalasztoval. A ket ilyen modon kialakitott halozatot
   o:sszeko:to" eszko:zt nevezzu:k "halozati hidnak" (bridge). A
   legalabb ket halozati felu:lettel rendelkezo" FreeBSD rendszerek
   kepesek halozati hid szerepet beto:lteni.

   A halozati hid az eszko:zo:k adatkapcsolati retegben a
   hozzatartozo felu:letein megjeleno" (vagyis Ethernet) cimenek
   megtanulasaval mu"ko:dik. A ket halozat ko:zo:tt csak akkor
   ko:zvetit forgalmat, amikor a forras es cel nem ugyanabban a
   halozatban talalhato.

   A halozati hidak bizonyos szempontbol lenyegeben nagyon keves
   porttal rendelkezo" Ethernet switch-ek.

     --------------------------------------------------------------

  31.5.2. A halozati hidak tipikus alkalmazasai

   Napjainkban akad nehany igen jellemzo" szituacio, ahol szu:kseg
   van a halozati hidak alkalmazasara.

     --------------------------------------------------------------

    31.5.2.1. Halozatok o:sszeko:tese

   A halozati hidak alapveto" feladata ket vagy to:bb halozati
   szegmens o:sszeko:tese. Az egyszeru" halozati ko:rnyezet
   felallitasa helyett to:bb okbol is felmeru:lhet a hidak
   letrehozasa: kabelezesi megszoritasok, tu"zfalazas vagy pszeudo
   halozatok, peldaul virtualis gepek felu:letenek csatlakoztatasa
   miatt. Egy hid hasznalataval raadasul o:ssze tudunk ko:tni egy
   vezetek nelku:li hozzaferesi pontkent u:zemelo" felu:letet egy
   vezetekes halozattal.

     --------------------------------------------------------------

    31.5.2.2. Szu"res vagy forgalomkorlatozas tu"zfallal

   Sokszor elo"fordulhat, hogy utvalasztas vagy halozati cimforditas
   (NAT) nelku:l szeretnenk tu"zfalat hasznalni.

   Peldakent kepzelju:nk el egy olyan kis meretu" ceget, amely egy
   DSL vagy ISDN vonalon kapcsolodik az internet-szolgaltatojahoz. A
   szolgaltatotol 13, mindenki altal hasznalhato IP-cimet kaptak es a
   halozatukban 10 gep van. Ebben a helyzetben egy utvalasztast
   vegzo" tu"zfal mu"ko:dtetese nehezkesse valna az alhalozatok
   problemai miatt.

   Egy hidkent viselkedo" tu"zfallal azonban minden IP szamozasi
   problema nelku:l egyszeru"en be tudjuk dobni a gepeket a DSL/ISDN
   utvalaszto mo:ge.

     --------------------------------------------------------------

    31.5.2.3. A halozat megcsapolasa

   Egy halozati hiddal ugy kapcsolunk o:ssze ket halozati szegmenst,
   hogy ko:zben meg tudjuk vizsgalni a ketteju:k ko:zo:tt mozgo
   Ethernet kereteket. Ezt a hid felu:leten a bpf(4) valamint a
   tcpdump(1) segitsegevel tudjuk megoldani, vagy ugy, ha egy masik
   felu:leten elku:ldju:k az o:sszes keret masolatat (span, vagyis
   feszito" port).

     --------------------------------------------------------------

    31.5.2.4. VPN az adatkapcsolati retegben

   A ket Ethernet halozatot egy IP alapu o:sszeko:ttetesen keresztu:l
   is o:ssze tudunk ko:tni, ha a halozatokat egy EtherIP jaraton
   keresztu:l ko:tju:k o:ssze hiddal, vagy egy OpenVPN-hez hasonlo
   tap(4) alapu megoldassal.

     --------------------------------------------------------------

    31.5.2.5. Redundancia az adatkapcsolati retegben

   A halozatokat to:bb linken keresztu:l ko:tju:k o:ssze es a
   redundans utvonalakat a feszito"fa protokollal (Spanning Tree
   Protocol, STP). Az Ethernetes halozatok eseteben a megfelelo"
   mu"ko:deshez a ket eszko:z ko:zo:tt csak egyetlen aktiv utvonal
   letezhet, igy a feszito"fa protokoll eszleli a hurkokat es a
   redundans o:sszeko:tteteseket blokkolt allapotba teszi. Amikor
   azonban az aktiv linkek egyike meghibasodik, akkor a protokoll
   ujraszamolja a fat es a halozati pontjai ko:zti konnektivitast
   megprobalja helyreallitani az addig blokkolt linkek ismetelt
   engedelyezesevel.

     --------------------------------------------------------------

  31.5.3. A rendszermag beallitasai

   Ebben a szakaszban az if_bridge(4) halozati hid implementacioval
   foglalkozunk, de a Netgraph segitsegevel is tudunk hidakat
   epiteni. Ez utobbirol az ng_bridge(4) man oldalon olvashatunk.

   Amikor letrehozunk egy halozati hidat, az ifconfig(8)
   automatikusan beto:lti a hozzatartozo meghajtot. Ha viszont a
   rendszermag beallitasait tartalmazo allomanyba felvesszu:k a
   device if_bridge sort, akkor akar be is epithetju:k a
   rendszermagba.

   A csomagszu"res minden olyan tu"zfallal hasznalhato, amely a
   pfil(9) rendszerre kapcsolodik. Maga a tu"zfal is beto:ltheto"
   modulkent, vagy belefordithato a rendszermagba.

   A halozati hiddal forgalmat is tudunk szabalyozni az altq(4) vagy
   a dummynet(4) segitsegevel.

     --------------------------------------------------------------

  31.5.4. A halozati hid engedelyezese

   Halozati hidak felu:letek klonozasaval hozhatoak letre. A hid
   letrehozasahoz hasznaljuk az ifconfig(8) programot, es a
   megfelelo" meghajto automatikusan beto:lto"dik, ha nem lenne meg
   elerheto" a rendszermagban.

 # ifconfig bridge create
 bridge0
 # ifconfig bridge0
 bridge0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
         ether 96:3d:4b:f1:79:7a
         id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
         maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
         root id 00:00:00:00:00:00 priority 0 ifcost 0 port 0

   Ekkor letrejo:n a halozati hidhoz tartozo felu:let es
   veletlenszeru"en generalodik hozza egy Ethernetes cim. A maxaddr
   es a timeout parameterek vezerlik, hogy a hid mennyi MAC-cimet
   tartson meg a keretek tovabbitasaert felelo"s tablazatban es
   mennyi masodperc utan to:ro:ljo:n automatikusan egy bejegyzest a
   legutolso hasznalat utan. A to:bbi parameter a feszito"fa
   mu"ko:deset iranyitja.

   Vegyu:k fel a hidhoz tartozo halozati tagfelu:leteket. A hid csak
   akkor fog a tagfelu:letek ko:zo:tt csomagokat tovabbku:ldeni,
   amikor a hid es a tagok is up allapotban vannak:

 # ifconfig bridge0 addm fxp0 addm fxp1 up
 # ifconfig fxp0 up
 # ifconfig fxp1 up

   A hid most mar atku:ldi az Ethernet kereteket a fxp0 es fxp1
   felu:letek ko:zo:tt. Az imentiekkel megegyezo" konfiguraciot az
   /etc/rc.conf allomanyban igy alakithatjuk ki:

 cloned_interfaces="bridge0"
 ifconfig_bridge0="addm fxp0 addm fxp1 up"
 ifconfig_fxp0="up"
 ifconfig_fxp1="up"

   Ha a hidhoz IP-cimet is rendelni akarunk, akkor inkabb maganal a
   hidnal adjuk meg, ne a tagoknal. Ezt statikusan vagy DHCP
   hasznalataval is megtehetju:k:

 # ifconfig bridge0 inet 192.168.0.1/24

   A hidhoz IPv6 cimet is hozza tudunk rendelni.

     --------------------------------------------------------------

  31.5.5. Tu"zfalazas

   Ha engedelyezzu:k a csomagszu"rest, a hidon athalado csomagok
   elo"szo:r a ku:ldo" felu:let erkezesi oldalara keru:lnek, majd a
   hidra, vegu:l a megfelelo" iranyban levo" felu:let ku:ldesi
   oldalara. Barmelyik fazis letilthato. Amikor a csomagok
   aramlasanak iranya fontos szamunkra, akkor jobban jarunk, ha nem
   magara a hidra, hanem csak a tagfelu:letekre allitjuk be a
   tu"zfalat.

   A hid szamos modosithato beallitassal rendelkezik a nem-IP es ARP
   csomagok atku:ldesere, valamint arra, hogy az IPFW tu"zfal
   adatkapcsolati reteg szintjen mu"ko:dhessen. Az if_bridge(4) man
   oldal ennek reszleteit tarja fel.

     --------------------------------------------------------------

  31.5.6. Feszito"fak

   A hid meghajtoja a gyors feszito"fa protokollt (Rapid Spanning
   Tree Protocol, RSTP avagy 802.1w) valositja meg, ami visszafele
   kompatibilis a korabban emlitett feszito"fa protokollal. A
   feszito"fakat a halozati topologiaban felbukkano hurkok
   eszlelesere es eltavolitasara alkalmazzak. Az RSTP azonban a
   hagyomanyos STP-nel valamivel gyorsabb konvergenciat iger, mivel
   itt a szomszedos switch-ek kicserelik egymas ko:zo:tt az
   adataikat, es igy ujabb hurkok letrehozasa nelku:l kepesek
   viszonylag gyorsan egyik allapotbol atvaltani a masikba.

   Az alabbi tablazat a tamogatott mu"ko:desi modokat lathatjuk:

        Operacios rendszer           STP modok       Alapertelmezes   
   FreeBSD 5.4--FreeBSD 6.2      STP               STP                
   FreeBSD 6.3+                  RSTP vagy STP     STP                
   FreeBSD 7.0+                  RSTP vagy STP     RSTP               

   A tagfelu:leteken az stp paranccsal tudjuk engedelyezni a
   feszito"fak hasznalatat. Az fxp0 es fxp1 felu:leteket o:sszeko:to"
   hidfelu:let eseteben tehat igy:

 # ifconfig bridge0 stp fxp0 stp fxp1
 bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         ether d6:cf:d5:a0:94:6d
         id 00:01:02:4b:d4:50 priority 32768 hellotime 2 fwddelay 15
         maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
         root id 00:01:02:4b:d4:50 priority 32768 ifcost 0 port 0
         member: fxp0 flags=1c7<LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP>
                 port 3 priority 128 path cost 200000 proto rstp
                 role designated state forwarding
         member: fxp1 flags=1c7<LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP>
                 port 4 priority 128 path cost 200000 proto rstp
                 role designated state forwarding

   Lathatjuk, hogy a hid a feszito"faban megkapta a
   00:01:02:4b:d4:50-es azonositot es a 32768-as prioritast. Mivel
   root id erteke is ugyanez, elmondhatjuk, hogy ez a fa gyo:kerekent
   funkcionalo hid.

   Ha a halozaton mar valahol letezik egy masik hid:

 bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         ether 96:3d:4b:f1:79:7a
         id 00:13:d4:9a:06:7a priority 32768 hellotime 2 fwddelay 15
         maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
         root id 00:01:02:4b:d4:50 priority 32768 ifcost 400000 port 4
         member: fxp0 flags=1c7<LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP>
                 port 4 priority 128 path cost 200000 proto rstp
                 role root state forwarding
         member: fxp1 flags=1c7<LEARNING,DISCOVER,STP,AUTOEDGE,PTP,AUTOPTP>
                 port 5 priority 128 path cost 200000 proto rstp
                 role designated state forwarding

   A root id 00:01:02:4b:d4:50 priority 32768 ifcost 400000 port 4
   sor mutatja, hogy a fa gyo:keret kepezo" hid most a
   00:01:02:4b:d4:50 azonositoval rendelkezik, es ezt a hidat
   400000-res ko:ltseggel eri el a port 4 (a 4. porton) keresztu:l,
   amely jelen esetben az fxp0 felu:let.

     --------------------------------------------------------------

  31.5.7. Komolyabb hidak epitese

    31.5.7.1. A forgalom aramlasanak atszerkesztese

   A hidak tamogatjak az un. megfigyelesi modot, ahol a csomagokat a
   bpf(4) feldolgozasuk utan eldobja, igy nem folytatodik a
   feldolgozasuk vagy nem haladnak tovabb. Ennek kihasznalasaval a
   ket vagy to:bb felu:leten erkezo" adatokat egyetlen bpf(4)
   folyamma tudjuk alakitani. Ez olyan halozati csapok forgalmanak
   atszerkeszteseben hasznos, ahol a ket ku:lo:nbo:zo" felu:leten
   keresztu:l ku:ldju:k ki az RX/TX (fogadas/ku:ldes) jeleket.

   Az alabbi paranccsal tudjuk megoldani, hogy negy felu:letro"l
   erkezo" adatot legyu:nk kepesek egyetlen folyamkent olvasni:

 # ifconfig bridge0 addm fxp0 addm fxp1 addm fxp2 addm fxp3 monitor up
 # tcpdump -i bridge0

     --------------------------------------------------------------

    31.5.7.2. Feszito" portok

   A hidhoz befuto Ethernet keretek mindegyikero"l keszu:l egy
   masolat, ami egy megadott feszito" porton keresztu:l megy tovabb.
   Hidankent vegtelen szamu ilyen feszito" port letezhet, es ha egy
   felu:letet feszito" portnak adtunk meg, akkor hagyomanyos portkent
   mar nem hasznalhatjuk. Ez leginkabb akkor hasznos, amikor
   passzivan akarjuk megfigyelni a hiddal rendelkezo" halozatot a hid
   valamelyik feszito" portjara csatlakozo gepro"l.

   Ku:ldessu:k az o:sszes keretro"l egy masolatot az fxp4 felu:letre:

 # ifconfig bridge0 span fxp4

     --------------------------------------------------------------

    31.5.7.3. Privat felu:letek

   A privat felu:letek (private interface) csak mas privat felu:letek
   fele ku:ldenek tovabb adatot. Igy feltetel nelku:l tudjuk
   korlatozni a forgalmat, es sem Ethernet keretek, sem pedig ARP nem
   megy keresztu:l rajtuk. Ha viszont szelektiven akarjuk korlatozni
   a forgalmat, akkor helyette hasznaljunk tu"zfalat.

     --------------------------------------------------------------

    31.5.7.4. Tapados felu:letek

   Ha a hid egyik tagfelu:letet tapadosnak (sticky) adjuk meg, akkor
   a dinamikusan megtanult cimek bejegyzesei a gyorsitotarba
   keru:lesu:k utan allandosulnak. A tapados bejegyzesek soha nem
   evu:lnek el vagy cserelo"dnek le, meg abban az esetben sem, ha
   utana az adott cimet egy masik felu:letro"l latjuk. Igy a
   tovabbitasra vonatkozo tablazatot nem kell elo"re felto:ltenu:nk,
   es a hid egyik oldalan meglatott kliensek nem kepesek atvandorolni
   egy masik halozati szegmensbe.

   Masik ilyen pelda a tapados cimek hasznalatara az lehetne, amikor
   a hidat VLAN-nal kombinaljuk, es igy egy olyan utvalasztot hozunk
   letre, ahol az u:gyfeleink az IP-cimtartomany pocseklasa nelku:l
   zarhatoak el egymastol. Tegyu:k fel, hogy az A-ugyfel a vlan100,
   es a B-ugyfel a vlan101 felu:leten csatlakozik. A hid IP-cime
   192.168.0.1, amely maga is egy internet fele mutato utvalaszto.

 # ifconfig bridge0 addm vlan100 sticky vlan100 addm vlan101 sticky vlan101
 # ifconfig bridge0 inet 192.168.0.1/24

   Mind a ket kliens a 192.168.0.1 cimet latja alapertelmezett
   atjarokent, es mivel a hid gyorsitotara tapados bejegyzeseket
   tartalmaz, a MAC-cimeik meghamisitasaval nem tudjak elcsipni a
   masikuk forgalmat.

   A VLAN-ok ko:zti barminemu" kommunikaciot privat felu:letek
   letrehozasaval akadalyozzuk meg (vagy egy tu"zfallal):

 # ifconfig bridge0 private vlan100 private vlan101

   Ezzel a megoldassal az u:gyfeleinket teljesen elszigetelju:k
   egymastol ugy, hogy ko:zben az egesz /24 cimtartomany ku:lo:n
   alhalozatok kialakitasa nelku:l kioszthato.

     --------------------------------------------------------------

    31.5.7.5. Cimek korlatozasa

   Korlatozhatoak az egy felu:let mo:gu:l ku:ldeni kepes egyedi
   MAC-cimek. Amikor ezen a hataron felu:l erkeznek ismeretlen
   feladotol csomagok, egeszen addig eldobjuk ezeket, amig egy
   korabban mar regisztralt bejegyzest a rendszer ki nem to:ro:l vagy
   ki nem veszu:nk a gyorsitotarbol.

   A ko:vetkezo" peldaban az vlan100 felu:leten csatlakozo A-ugyfel
   szamara korlatozzuk le 10-re az Ethernet eszko:zo:k szamat:

 # ifconfig bridge0 ifmaxaddr vlan100 10

     --------------------------------------------------------------

    31.5.7.6. SNMP felu:gyelet

   A hidak es az STP parameterei az alap FreeBSD rendszerben
   megtalalhato SNMP demonnal felu:gyelheto"ek. A hidhoz exportalt
   felu:gyeleti informaciok (Management Information Base, MIB)
   megfelelnek az IETF altal elo"irt szabvanyoknak, igy akar
   tetszo"leges SNMP kliens vagy barmilyen mas felu:gyeleti szoftver
   alkalmas az olvasasukra.

   A hidat mu"ko:dteto" gepen az /etc/snmp.config allomanyban
   engedelyezzu:k a begemotSnmpdModulePath."bridge" =
   "/usr/lib/snmp_bridge.so" sort es inditsuk el a bsnmpd demont. Itt
   meg szu:kseg lehet mas beallitasok, peldaul a ko:zo:ssegek nevenek
   (community name) vagy a hozzaferesi listak (access list)
   modositasara is. Ezzel kapcsolatban a bsnmpd(1) es az
   snmp_bridge(3) man oldalakat lapozzuk fel.

   A ko:vetkezo" peldaban a Net-SNMP nevu" szoftver
   (net-mgmt/net-snmp) fogjuk hasznalni a hid eleresere, de ugyanerre
   a net-mgmt/bsnmptools port is alkalmas. Az SNMP klienst hasznalo
   gepen egeszitsu:k ki az $HOME/.snmp/snmp.conf allomanyt a hid
   felu:gyeleti informacioinak importalasaval az Net-SNMP
   rendszerebe:

 mibdirs +/usr/share/snmp/mibs
 mibs +BRIDGE-MIB:RSTP-MIB:BEGEMOT-MIB:BEGEMOT-BRIDGE-MIB

   Az IETF BRIDGE-MIB (RFC 4188) hasznalatan keresztu:l igy tudjuk
   elinditani egy hid felu:gyeletet:

 % snmpwalk -v 2c -c public bridge1.example.com mib-2.dot1dBridge
 BRIDGE-MIB::dot1dBaseBridgeAddress.0 = STRING: 66:fb:9b:6e:5c:44
 BRIDGE-MIB::dot1dBaseNumPorts.0 = INTEGER: 1 ports
 BRIDGE-MIB::dot1dStpTimeSinceTopologyChange.0 = Timeticks: (189959) 0:31:39.59 centi-seconds
 BRIDGE-MIB::dot1dStpTopChanges.0 = Counter32: 2
 BRIDGE-MIB::dot1dStpDesignatedRoot.0 = Hex-STRING: 80 00 00 01 02 4B D4 50
 ...
 BRIDGE-MIB::dot1dStpPortState.3 = INTEGER: forwarding(5)
 BRIDGE-MIB::dot1dStpPortEnable.3 = INTEGER: enabled(1)
 BRIDGE-MIB::dot1dStpPortPathCost.3 = INTEGER: 200000
 BRIDGE-MIB::dot1dStpPortDesignatedRoot.3 = Hex-STRING: 80 00 00 01 02 4B D4 50
 BRIDGE-MIB::dot1dStpPortDesignatedCost.3 = INTEGER: 0
 BRIDGE-MIB::dot1dStpPortDesignatedBridge.3 = Hex-STRING: 80 00 00 01 02 4B D4 50
 BRIDGE-MIB::dot1dStpPortDesignatedPort.3 = Hex-STRING: 03 80
 BRIDGE-MIB::dot1dStpPortForwardTransitions.3 = Counter32: 1
 RSTP-MIB::dot1dStpVersion.0 = INTEGER: rstp(2)

   A peldaban latszik, hogy a dot1dStpTopChanges.0 erteke ketto", ami
   arra utal, hogy az STP hid topologiaja ketszer valtozott. A
   topologia valtozasa pedig azt jelenti, hogy a halozaton belu:l egy
   vagy to:bb link allapota megvaltozott vagy egyszeru"en
   meghibasodott es ezert egy uj fat kellett szamolni. A
   dot1dStpTimeSinceTopologyChange.0 ertek adja meg, hogy ez pontosan
   mikor is to:rtent.

   To:bb hid felu:letenek felu:gyeletehez a belso" BEGEMOT-BRIDGE-MIB
   parancsot is hasznalhatjuk:

 % snmpwalk -v 2c -c public bridge1.example.com
 enterprises.fokus.begemot.begemotBridge
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge0" = STRING: bridge0
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge2" = STRING: bridge2
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge0" = STRING: e:ce:3b:5a:9e:13
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge2" = STRING: 12:5e:4d:74:d:fc
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge0" = INTEGER: 1
 BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge2" = INTEGER: 1
 ...
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge0" = Timeticks: (116927) 0:19:29.27 centi-seconds
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge2" = Timeticks: (82773) 0:13:47.73 centi-seconds
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge0" = Counter32: 1
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge2" = Counter32: 1
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge0" = Hex-STRING: 80 00 00 40 95 30 5E 31
 BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge2" = Hex-STRING: 80 00 00 50 8B B8 C6 A9

   Igy tudjuk megadni, hogy a hidat mib-2.dot1dBridge reszfan
   keresztu:l akarjuk megfigyelni:

 % snmpset -v 2c -c private bridge1.example.com
 BEGEMOT-BRIDGE-MIB::begemotBridgeDefaultBridgeIf.0 s bridge2

     --------------------------------------------------------------

31.6. Linkek o:sszefu"zese es hibatu"rese

   Irta: Andrew Thompson.

     --------------------------------------------------------------

  31.6.1. Bevezetes

   A lagg(4) felu:let leheto"ve teszi, hogy to:bb halozati felu:letet
   egyetlen virtualis felu:letkent fu"zzu:nk o:ssze, es ezzel egy
   hibatu"ro" es nagysebessegu" o:sszeko:ttetest alakitsunk ki.

     --------------------------------------------------------------

  31.6.2. Mu"ko:desi modok

   failover

           Csak az elso"dlegeskent kijelo:lt porton keresztu:l fogad
           es ku:ld adatokat. Amikor ez az elso"dleges port
           elerhetetlenne valik, a ko:vetkezo" aktiv portot fogja
           hasznalni. Az elso"kent felvett felu:let valik
           automatikusan az elso"dleges portta, es az utana felvett
           o:sszes to:bbit pedig csak hiba eseten hasznaljuk.

   Cisco(R) Fast EtherChannel(R)

           A Cisco Fast EtherChannel (FEC) technologia tamogatasa. Ez
           egy statikus beallitas, es nem egyezteti az o:sszefu"zest
           a to:bbiekkel vagy a linkek felu:gyeletehez nem valt
           kereteket. Ha a switch tamogatja az LACP hasznalatat,
           akkor inkabb azt valasszuk.

           A FEC a kimeno" forgalmat a fejlecekben szereplo"
           protokollok alapjan szamolt hasitokoddal probalja
           szetosztani az aktiv portok ko:zo:tt, es tetszo"leges
           aktiv porton fogad beerkezo" adatokat. Az emlitett
           hasitokodban egy Ethernetes forras- es celcim szerepel,
           valamint ha elerheto", akkor egy VLAN cimke, illetve az
           IPv4/IPv6 forras- es celcim.

   LACP

           Az IEEE 802.3ad Link Aggregation Control Protocol (LACP)
           es a Marker Protcol tamogatasa. Az LACP megprobalja
           egyeztetni a to:bbi geppel az o:sszefu"zheto" linkeket egy
           vagy to:bb csoportban (Link Aggregated Group, LAG).
           Mindegyik ilyen csoportban ugyanolyan sebessegu" portokat
           talalunk, full-duplex mu"ko:desi modban. A forgalmat igy a
           legnagyobb o:sszsebesseggel rendelkezo" csoportban
           megtalalhato portok ko:zo:tt osztja el, ami a legto:bb
           esetben az o:sszes portot magaban foglalo csoport. A
           fizikai konnektivitas megvaltozasa eseten a linkek
           o:sszefu"zo"dese igen gyorsan alkalmazkodik az uj
           konfiguraciohoz.

           Az LACP a kimeno" forgalmat az aktiv portok ko:zo:tt
           osztja szet fejlecekben szereplo" protokollok alapjan
           szamolt hasitokoddal, es barmelyik aktiv portrol fogad
           bejo:vo" forgalmat. A hasitokodban megtalalhato az
           Ethernetes forras- es celcim, valamint ha elerheto", akkor
           a VLAN cimke, illetve az IPv4/IPv6 forras- es celcimek.

   Loadbalance

           Ez a FEC mod masik neve.

   Round-Robin

           A kimeno" forgalmat egy ko:rko:ro:s (Round-Robin) elvu"
           u:temezo"vel osztja szet az aktiv portok ko:zo:tt es
           tetszo"leges aktiv portrol fogad bejo:vo" forgalmat. Ez a
           mu"ko:desi mod megserti az Ethernet keretek rendezeset es
           csak nagy ko:ru:ltekintes mellett alkalmazzuk.

     --------------------------------------------------------------

  31.6.3. Peldak

   Pelda 31-1. LACP alapu o:sszefu"zes egy Cisco(R) switch-csel

   Ebben a peldaban egy FreeBSD-s gep ket felu:letet kapcsoljuk
   o:ssze switch-csel egy egyszeru" terheles-kiegyenlitessel es
   hibatu"ressel beallitott linken keresztu:l. Mivel az Ethernet
   keretek sorrendje do:nto" fontossagu, ezert a ket allomas ko:zo:tt
   egyazon fizikai linken zajlo forgalom maximalis sebesseget az
   adott felu:let kapacitasa korlatozza. A ku:ldesi algoritmus a
   leheto" legto:bb informacio alapjan probalja egymastol
   megku:lo:nbo:ztetni a forgalmakat es elosztani ezeket a
   rendelkezesre allo felu:letek ko:zo:tt.

   A Cisco switch-en vegyu:nk fel a FastEthernet0/1 es
   FastEthernet0/2 interfeszeket az 1 csoportba (channel group):

 interface FastEthernet0/1
  channel-group 1 mode active
  channel-protocol lacp
 !
 interface FastEthernet0/2
  channel-group 1 mode active
  channel-protocol lacp

   A FreeBSD-s gepen pedig a fxp0 es fxp1 hasznalataval hozzunk letre
   a lagg(4) interfeszt:

 # ifconfig lagg0 create
 # ifconfig lagg0 up laggproto lacp laggport fxp0 laggport fxp1

   Elleno"rizzu:k a felu:let allapotat:

 # ifconfig lagg0

   A ACTIVE jelzesu", vagyis aktiv allapotu portok az o:sszefu"zeshez
   kialakitott csoport azon tagjai, amelyeknel felepu:lt a kapcsolat
   a tavoli switch fele es keszen allnak a ku:ldesre es fogadasra. Ha
   az ifconfig(8) programtol reszletesebb kimenetet keru:nk, akkor
   lathatjuk a csoportok azonositoit is:

 lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         options=8<VLAN_MTU>
         ether 00:05:5d:71:8d:b8
         media: Ethernet autoselect
         status: active
         laggproto lacp
         laggport: fxp1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
         laggport: fxp0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>

   A show lacp neighbor paranccsal kerdezhetju:k le a portok
   allapotat:

 switch# show lacp neighbor
 Flags:  S - Device is requesting Slow LACPDUs
         F - Device is requesting Fast LACPDUs
         A - Device is in Active mode       P - Device is in Passive mode

 Channel group 1 neighbors

 Partner's information:

                   LACP port                        Oper    Port     Port
 Port      Flags   Priority  Dev ID         Age     Key     Number   State
 Fa0/1     SA      32768     0005.5d71.8db8  29s    0x146   0x3      0x3D
 Fa0/2     SA      32768     0005.5d71.8db8  29s    0x146   0x4      0x3D

   Reszletesebb kijelzest a show lacp neighbor detail paranccsal
   kaphatunk.

   Pelda 31-2. A hibatu"res beallitasa

   A hibatu"resi mod arra alkalmas, hogy amikor az elso"dleges porton
   elvesztju:k a kapcsolatot, helyette egy masodlagos interfesz
   hasznalatara tudunk atterni. Hozzuk letre es allitsuk be a lagg0
   interfeszt, ahol az fxp0 legyen a fo"interfesz, az fxp1 pedig a
   tartalek interfesz:

 # ifconfig lagg0 create
 # ifconfig lagg0 up laggproto failover laggport fxp0 laggport fxp1

   Az igy letrejo:vo" interfesz nagyjabol az alabbi lesz, ahol
   elteres a MAC-cim es az eszko:z neve:

 # ifconfig lagg0
 lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         options=8<VLAN_MTU>
         ether 00:05:5d:71:8d:b8
         media: Ethernet autoselect
         status: active
         laggproto failover
         laggport: fxp1 flags=0<>
         laggport: fxp0 flags=5<MASTER,ACTIVE>

   A forgalom kezdetben az fxp0 felu:leten keresztu:l erkezik es
   tavozik. Ha az fxp0 felu:leten valamiert megszakadna a kapcsolat,
   helyette az fxp1 lesz az aktiv link. Ha keso"bb helyreall a
   kapcsolat az elso"dleges felu:leten, akkor ujra az lesz aktiv
   link.

     --------------------------------------------------------------

31.7. Lemez nelku:li mu"ko:des

   Frissitette: Jean-Franc,ois Dockcs. Atdolgozta es javitotta: Alex
   Dupre.

   A FreeBSD kepes halozaton keresztu:l elindulni es helyi lemez
   nelku:l egy NFS szerver altal megosztott allomanyrendszer
   csatlakoztatasaval mu"ko:dni. Ehhez a szabvanyos konfiguracios
   allomanyok modositasan kivu:l semmi masra nincs szu:ksegu:nk. Egy
   ilyen rendszert viszonylag ko:nnyu" beallitani, mivel az o:sszes
   hozzavalo szinte keszen elerheto":

     * Ro:gto:n adott legalabb ket modszer, ha a rendszermagot
       halozaton keresztu:l akarjuk beto:lteni:

          * PXE: az Intel altal fejlesztett Preboot eXecution
            Environment ("inditas elo"tti vegrehajtasi ko:rnyezet")
            nevu" rendszer a halozati kartyakba vagy alaplapokba
            epitett ROM segitsegevel teszi leheto"ve az intelligens
            rendszerinditast. A pxeboot(8) man oldalan olvashatunk
            erro"l reszletesebben.

          * Az Etherboot port (net/etherboot) olyan ROM-ba
            programozhato kodot keszit, amellyel rendszermagokat
            tudunk halozaton keresztu:l beto:lteni. Ez a kod egyarant
            felhasznalhato egy halozati rendszerindito PROM
            beegetesehez, vagy beto:ltheto" a helyi floppy (esetleg
            merev)lemezro"l, illetve MS-DOS rendszer alol. Eleg sok
            halozati kartya tamogatja ezt a modot.

     * Egy mintaszkript (/usr/share/examples/diskless/clone_root) is
       probalja megko:nnyiteni a szerveren a munkaallomas
       rendszerindito allomanyrendszerenek letrehozasat es
       karbantartasat. Ezt a szkriptet valoszinu"leg nemileg
       modositani kell, de igy is sokat segit az elindulasban.

     * Az /etc ko:nyvtarban talalhato szabvanyos rendszerinditashoz
       hasznalt allomanyok, amelyekkel a lemez nelku:li indulast
       lehet detektalni es segiteni.

     * A lapozas, amennyiben szu:kseges, NFS vagy helyi lemez
       segitsegevel oldhato meg.

   Szamos modon allithatunk be egy lemez nelku:li munkaallomast.
   Rengeteg reszbo"l tevo"dik o:ssze, es ezek legto:bbje remeku:l
   testreszabhato az igenyeinknek. A tovabbiakban egy teljes rendszer
   o:sszeallitasanak lehetseges variacioit ismertetju:k, ku:lo:no:s
   hangsulyt fektetu:nk arra, hogy egyszeru"ek es a hagyomanyos
   FreeBSD inditoszkriptekkel kompatibilisek maradjanak. A
   bemutatando rendszer a ko:vetkezo" jellemzo"kkel bir:

     * A lemez nelku:li munkaallomasok megosztott / es /usr
       allomanyrendszereket hasznalnak.

       A rendszer inditasahoz hasznalt gyo:ker allomanyrendszer a
       szabvany FreeBSD-s gyo:ker (ez altalaban a szervere), ahol
       nehany allomanyt felu:lirtunk a lemez nelku:li mu"ko:deshez
       vagy azert, mert egyszeru"en az adott munkaallomashoz
       tartozik.

       A gyo:ker azon reszeit, amelyeket irhatova kivanunk tenni,
       md(4) alapu allomanyrendszerekkel lapoljuk felu:l. Ilyenkor
       azonban barmilyen rajtuk ejtett valtoztatas a rendszer
       ujrainditasaval elveszik.

     * A rendszermagot vagy az Etherboot vagy a PXE hasznalataval
       ku:ldessu:k at es to:ltsu:k be, mivel egyes helyzetekben
       ezekre szu:kseg lesz.

     Figyelem: A bemutatott rendszer nem biztonsagos. Helyezzu:k a
     halozatunk egy jol vedett reszere, es a to:bbi gep ne tekintse
     megbizhatonak.

   A szakaszban szereplo" o:sszes informaciot a FreeBSD 5.2.1-RELEASE
   valtozataval teszteltu:k.

     --------------------------------------------------------------

  31.7.1. Hatterinformaciok

   A lemez nelku:li munkaallomasok beallitasa egyszerre adja magat es
   ko:nnyen is elvetheto". Az elko:vetett hibakat olykor szamos okbol
   kifolyolag nehez felismerni. Peldaul:

     * A forditasi ido"ben megadott beallitasok mast eredmenyeznek
       futasi ido"ben.

     * A hibau:zenetek gyakran titokzatosak vagy esetleg teljesen el
       is maradnak.

   Ezert ha valamennyire tisztaban vagyunk a hatterben zajlo
   folyamatokkal, akkor sokkal to:bb esellyel leszu:nk kepesek
   megoldani a menet ko:zben felmeru:lo" problemakat.

   A rendszernek a sikeres felkapaszkodashoz to:bb mu"veletet is
   vegre kell hajtania:

     * A gepnek szu:ksege van olyan indulo parameterekhez, mint
       peldaul az IP-cim, a vegrehajthato allomany neve, a szerver
       neve, a gyo:ker eleresi utja. Ezeket a DHCP vagy a BOOTP
       protokollok hasznalataval adhatjuk meg. A DHCP a BOOTP
       kompatibilis kiterjesztese, ezert ugyanazokat a portokat es
       alapveto" csomagformatumot alkalmazza.

       A rendszeru:ket kizarolag BOOTP hasznalataval is
       beallithatjuk. A bootpd(8) szerver az alap FreeBSD rendszer
       resze.

       A DHCP azonban rengeteg elo"nnyel rendelkezik a BOOTP
       protokollal szemben (attekintheto"bb konfiguracios allomanyok,
       a PXE hasznalatanak leheto"sege, illetve sok minden mas, ami
       nem csak a lemez nelku:li mu"ko:deshez kellhet), ezert itt
       alapveto"en egy DHCP alapu konfiguraciot mutatunk be, de ahol
       megoldhato, megemlitju:k a bootpd(8) eseten alkalmas peldakat
       is. A mintakent szolgalo konfiguracio az ISC DHCP
       szoftvercsomagot hasznalja (a tesztszerverre ennek a 3.0.1.r12
       verziojat telepitetu:k fel).

     * A gepnek egy vagy to:bb programot kell a sajat memoriajaba
       atto:ltenie. Erre vagy a TFTP vagy pedig az NFS alkalmas. A
       TFTP es az NFS ko:zo:tt sok helyen forditasi ido"ben tudunk
       valasztani. Gyakori hibaforras a protokollhoz rosszul megadott
       allomanynevek hasznalata: a TFTP altalaban az o:sszes
       allomanyt a szerverro"l egyetlen ko:nyvtarbol to:lti at, ezert
       arra szamit, hogy a neveiket ehhez viszonyitva adjuk meg. Az
       NFS hasznalata soran azonban abszolut eleresi utakat kell
       megadnunk.

     * A rendszer inditasat leheto"ve tevo" ko:zbenso" programokat es
       a rendszermagot valahogy inicializalni kell es elinditani.
       Ezen a teru:leten to:bb fontos valtozat kapott helyet:

          * A PXE a pxeboot(8) kodjat fogja beto:lteni, ez lenyegeben
            a FreeBSD beto:lto" harmadik fokozatanak egy modositott
            valtozata. A loader(8) a mu"ko:desehez szu:kseges
            parametereket a rendszer inditasakor kapja meg, majd a
            vezerles atadasa elo"tt ezeket a rendszermag
            ko:rnyezeteben hagyja. Ebben az esetben akar a GENERIC
            rendszermag is hasznalhato.

          * Az Etherboot kevesebb elo"keszitessel ko:zvetlenu:l magat
            a rendszermagot to:lti be. Ehhez azonban egy sajat
            rendszermagot kell epiteni, ku:lo:n beallitasokkal.

       A PXE es az Etherboot egyarant jol hasznalhato. Mivel azonban
       a rendszermagok altalaban a loader(8) kodjara hagyjak a munka
       legnagyobb reszet, ezert ahol lehetseges, a PXE megoldasat
       erdemes alkalmazni.

       Tehat ha az alaplapi BIOS es a halozati kartya is tamogatja a
       PXE hasznalatat, akkor valasszunk inkabb azt.

     * Vegezetu:l a gepnek valamilyen modon hozza kell tudnia fernie
       az allomanyrendszerekhez. Erre to:bbnyire az NFS jo:het szoba.

   A tovabbi reszleket lasd a diskless(8) man oldalon.

     --------------------------------------------------------------

  31.7.2. Beallitasi utmutato

    31.7.2.1. Beallitas a ISC DHCP hasznalataval

   Az ISC DHCP szervere kepes a BOOTP es DHCP kereseket is
   megvalaszolni.

   Az ISC DHCP 3.0 nem az alaprendszer resze, ezert a hasznalatahoz
   elo"szo:r telepitenu:nk kell a net/isc-dhcp30-server portot vagy a
   neki megfelelo" csomagot.

   Ahogy feltelepitettu:k, le kell futtatnunk az ISC DHCP
   konfiguracios allomanyat (ezt altalaban /usr/local/etc/dhcpd.conf
   neven talaljuk meg). A most ko:vetkezo", megjegyzesekkel
   kiegeszitett peldaban egy margaux nevu" gep az Etherboot, valamint
   egy corbieres nevu" gep PXE hasznalataval akar kapcsolodni:

 default-lease-time 600;
 max-lease-time 7200;
 authoritative;

 option domain-name "minta.com";
 option domain-name-servers 192.168.4.1;
 option routers 192.168.4.1;

 subnet 192.168.4.0 netmask 255.255.255.0 {
   use-host-decl-names on; (1)
   option subnet-mask 255.255.255.0;
   option broadcast-address 192.168.4.255;

   host margaux {
     hardware ethernet 01:23:45:67:89:ab;
     fixed-address margaux.minta.com;
     next-server 192.168.4.4; (2)
     filename "/data/misc/kernel.diskless"; (3)
     option root-path "192.168.4.4:/data/misc/diskless"; (4)
   }
   host corbieres {
     hardware ethernet 00:02:b3:27:62:df;
     fixed-address corbieres.minta.com;
     next-server 192.168.4.4;
     filename "pxeboot";
     option root-path "192.168.4.4:/data/misc/diskless";
   }
 }

   (1)
           Ez a beallitas arra utasitja a dhcpd demont, hogy a lemez
           nelku:li gep halozati nevekent a host deklaracioban
           megadott erteket ku:ldje el. Ezt ugyis meg lehet csinalni,
           hogy felvesszu:nk egy option host-name margaux reszt a
           host deklaraciok ko:ze.
   (2)
           A next-server direktiva a beto:lto" vagy a rendszermag
           beto:lteseert felelo"s TFTP vagy NFS szervert jelo:li ki
           (alapertelmezes szerint ez megegyezik a DHCP szerverrel).
   (3)
           A filename direktiva azt az allomanyt adja meg, amelyet az
           Etherboot vagy a PXE a ko:vetkezo" vegrehajtasi lepesben
           beto:lt. Ezt a kivalasztott atviteli modnak megfelelo"en
           kell megadni. Az Etherboot lefordithato az NFS vagy a TFTP
           hasznalataval is. A FreeBSD port alapbol az NFS
           tamogatasat tartalmazza. A PXE a TFTP protokollt
           hasznalja, ezert itt relativ allomanyneveket adunk meg (ez
           persze a TFTP szerver beallitasaitol fu:gg, de altalaban
           ez a jellemzo"). So"t, a PXE a pxeboot allomanyt to:lti
           be, nem is a rendszermagot. Leteznek tovabbi erdekes
           leheto"segek is, mint peldaul a pxeboot allomany
           beto:ltese a FreeBSD CD-jen talalhato /boot ko:nyvtarbol
           (mivel a pxeboot(8) a GENERIC rendszermagot kepes
           beto:lteni, ezert a PXE hasznalataval akar egy tavoli
           CD-meghajtorol is indithatjuk a rendszert).
   (4)
           A root-path opcio a rendszer inditasahoz hasznalt gyo:ker
           allomanyrendszert nevezi meg, amelyet to:bbnyire az NFS
           jelo:lesi modszere szerint kell megadni. A PXE hasznalata
           soran el lehet hagyni a gep IP-cimet egeszen addig, amig
           nem engedelyezzu:k a rendszermagban a BOOTP beallitast. Az
           NFS szerver ekkor megegyzik a TFTP szerverrel.

     --------------------------------------------------------------

    31.7.2.2. Beallitas a BOOTP hasznalataval

   Itt a bootpd (egyetlen kliensre korlatozott) beallitasat
   lathatjuk. Ezt az /etc/bootptab allomanyba tegyu:k.

   Ne feledju:k, hogy a BOOTP hasznalatahoz az Etherboot portot a
   NO_DHCP_SUPPORT beallitassal kell forditanunk, miko:zben a PXE
   eseteben kell a DHCP. Egyebkent a bootpd egyedu:li nyilvanvalo
   elo"nye csupan annyi, hogy az alaprendszer resze.

 .def100:\
   :hn:ht=1:sa=192.168.4.4:vm=rfc1048:\
   :sm=255.255.255.0:\
   :ds=192.168.4.1:\
   :gw=192.168.4.1:\
   :hd="/tftpboot":\
   :bf="/kernel.diskless":\
   :rp="192.168.4.4:/data/misc/diskless":

 margaux:ha=0123456789ab:tc=.def100

     --------------------------------------------------------------

    31.7.2.3. A rendszer elo"keszitese az Etherboot szamara

   Az Etherboot honlapjan talalhatunk egy minden reszletre kiterjedo"
   dokumentaciot (angolul), amely elso"sorban ugyan a Linux tipusu
   rendszerek szamara irodott, de etto"l fu:ggetlenu:l meg hasznos
   informaciokat tartalmaz. A tovabbiakban csak annyit szeretnenk
   ko:rvonalazni, hogy az Etherboot mikent birhato mu"ko:desre
   FreeBSD rendszerekkel.

   Elo"szo:r telepitenu:nk kell a net/etherboot csomagot vagy portot.

   Az Etherboot beallitasat (vagyis a TFTP hasznalatanak megadasat az
   NFS helyett) az Etherboot forrasat tartalmazo ko:nyvtarban
   talalhato Config allomany megfelelo" atirasaval tudjuk megtenni.

   Itt most floppyrol fogjuk inditani a rendszert. A to:bbi
   modszerrel (PROM vagy MS-DOS program) kapcsolatban olvassuk el az
   Etherboot dokumentaciojat.

   A rendszerindito lemez elkeszitesehez tegyu:nk egy lemezt annak a
   gepnek a meghajtojaba, ahova az Etherboot felkeru:lt. Valtsunk az
   Etherboot ko:nyvtaran belu:l az src alko:nyvtarba es gepelju:k be:

 # gmake bin32/eszko:ztipus.fd0

   Az eszko:ztipus a lemez nelku:li munkaallomas Ethernet kartyajatol
   fu:gg. Az ugyanebben a ko:nyvtarban talalhato NIC allomanybol
   tudjuk kiolvasni, hogy az adott kartyahoz melyik eszko:ztipus
   tartozik.

     --------------------------------------------------------------

    31.7.2.4. A rendszer inditasa PXE hasznalataval

   Alapertelmezes szerint a pxeboot(8) beto:lto" a rendszermagot
   NFS-en keresztu:l to:lti be. Ha az /etc/make.conf allomanyban a
   LOADER_TFTP_SUPPORT beallitast adjuk meg, akkor TFTP tamogatassal
   is lefordithato. Ezzel kapcsolatban a
   /usr/share/examples/etc/make.conf allomanyban talalhato
   megjegyzeseket erdemes elolvasnunk.

   A make.conf allomanyban meg tovabbi ket masik hasznos opciot is
   talalhatunk a soros vonali konzollal u:zemelo" lemez nelku:li
   gepek szamara: az egyik a BOOT_PXELDR_PROBE_KEYBOARD, a masik
   pedig a BOOT_PXELDR_ALWAYS_SERIAL.

   A gep inditasakor ugy tudjuk beu:zemelni a PXE hasznalatat, ha a
   BIOS beallitasai ko:zo:tt a Boot from network opciot valasztjuk
   ki, vagy a gep bekapcsolasa utan lenyomjuk hozza a megfelelo"
   funkciobillentyu"t.

     --------------------------------------------------------------

    31.7.2.5. A TFTP es NFS szerverek beallitasa

   Ha a PXE vagy az Etherboot a TFTP protokollt hasznalja, akkor az
   allomanyszerveren a tftpd demont kell elinditani:

    1. Keszitsu:nk egy ko:nyvtarat, ahonnan majd a tftpd ku:ldi az
       allomanyokat, peldaul legyen ez a /tftpboot.

    2. Vegyu:k fel a ko:vetkezo" sort az /etc/inetd.conf
       allomanyunkba:

 tftp    dgram   udp     wait    root    /usr/libexec/tftpd      tftpd -l -s /tftpboot

         Megjegyzes: A tapasztalat szerint egyes PXE verziok a TFTP
         TCP alapu valtozatat hasznaljak. Ebben az esetben vegyu:nk
         fel meg egy masodik sort is, ahol a dgram udp reszt stream
         tcp-re cserelju:k.

    3. Mondjuk meg az inetd demonnak, hogy olvassa ujra a
       konfiguracios allomanyat. Az alabbi parancs megfelelo"
       mu"ko:desehez Az inetd_enable="YES" sornak szerepelnie kell az
       /etc/rc.conf allomanyban:

 # /etc/rc.d/inetd restart

   A tftpboot ko:nyvtarat barhova rakhatjuk a szerveren. Viszont az
   inetd.conf es dhcpd.conf allomanyokban ezt ne felejtsu:k fel
   megadni.

   Minden esetben engedelyeznu:nk kell az NFS hasznalatat es vele
   egyu:tt exportalni az NFS szerverro"l elerni kivant
   allomanyrendszereket.

    1. Az /etc/rc.conf allomanyba tegyu:k bele a ko:vetkezo"t:

 nfs_server_enable="YES"

    2. Az /etc/exports allomanyban a lemez nelku:li rendszereknek
       szant gyo:kerko:nyvtarat tegyu:k elerheto"ve (a peldaban irjuk
       at a ko:tet csatlakozasi pontjat es a margaux corbieres
       helyere allitsuk be a sajat lemez nelku:li munkaallomasaink
       neveit:

 /data/misc -alldirs -ro margaux corbieres

    3. Kerju:k meg a mountd demont, hogy olvassa ujra a konfiguracios
       allomanyat. Elo"fordulhat azonban, hogy ehhez elo"szo:r az NFS
       szolgaltatast kell engedelyezni az /etc/rc.conf allomanybol es
       ujrainditani a gepet.

 # /etc/rc.d/mountd restart

     --------------------------------------------------------------

    31.7.2.6. Lemez nelku:li rendszermag forditasa

   Ha az Etherboot hasznalata mellett do:ntu:nk, akkor a lemez
   nelku:li kliensek szamara a rendszermagot a ko:vetkezo"
   beallitasok hasznalataval kell ujraforditani (a megszokottak
   mellett):

 options     BOOTP          # BOOTP-n keresztu:l keru:nk IP-cimet es halozati nevet
 options     BOOTP_NFSROOT  # a BOOTP-to"l kapott informaciok alapjan csatoljuk a gyo:keret NFS-en keresztu:l

   Ezek mellett valoszinu"leg szu:ksegu:nk lesz a BOOTP_NFSV3,
   BOOT_COMPAT es BOOTP_WIRED_TO beallitasok megadasara is (lasd a
   NOTES allomanyt).

   A beallitasok nevei regro"l szarmaznak es nemileg felrevezeto"ek
   lehetnek, mivel valojaban semmit sem valtoztatnak a rendszermagban
   levo" DHCP vagy a BOOTP rutinok hasznalataban (egyebkent meg lehet
   adni vagy az egyik vagy a masik protokoll kizarolagos hasznalatat
   is).

   Forditsuk le a rendszermagot (lasd 8 fejezet), es masoljuk a
   dhcpd.conf allomanyban megadott helyre.

     Megjegyzes: Amikor a PXE protokollt hasznaljuk, a rendszermagot
     nem fontos az iment felsorolt parameterekkel forditanunk (habar
     ajanlatos). Az engedelyezesu:kkel to:bb DHCP keres keletkezik a
     rendszermag elindulasa ko:zben, ezert kisebb a kockazata annak,
     hogy a pxeboot(8) altal bizonyos esetekben megszerzett es az uj
     ertekek ko:zo:tt valamilyen ellentmondas jo:n letre. A
     hasznalatuk egyik elo"nye, hogy igy mellekhataskent a halozati
     nevu:nket is megkapjuk. Ellenkezo" esetben erre is talalnunk
     kellene valamilyen modot, peldaul fenntartani egy-egy rc.conf
     allomanyt minden kliensen.

     Megjegyzes: Az Etherboot csak akkor lesz kepes beto:lteni a
     rendszermagot, ha device hinteket is beepitu:nk. Ezt a
     ko:vetkezo" beallitassal tudjuk megoldani (erro"l bo"vebben lasd
     a NOTES allomany megjegyzeseit):

 hints           "GENERIC.hints"

     --------------------------------------------------------------

    31.7.2.7. A rendszerindito allomanyrendszer elo"keszitese

   A dhcpd.conf allomany root-path beallitasanak megfelelo"en hozzunk
   letre a rendszer inditasara alkalmas gyo:ker allomanyrendszert.

     --------------------------------------------------------------

      31.7.2.7.1. Az allomanyrendszer felto:ltese a make world
      paranccsal

   Ezzel a modszerrel a DESTDIR ko:nyvtarba pillanatok alatt
   telepiteni tudunk egy teljes szu"z rendszert (es nem csak a
   rendszerindito allomanyrendszert). Ehhez mindo:ssze csak annyit
   kell tenni, hogy lefuttatjuk a ko:vetkezo" szkriptet:

 #!/bin/sh
 export DESTDIR=/data/misc/diskless
 mkdir -p ${DESTDIR}
 cd /usr/src; make buildworld && make buildkernel
 cd /usr/src/etc; make distribution

   Miutan vegzett, mar csak a DESTDIR ko:nyvtarban talalhato
   /etc/rc.conf es /etc/fstab allomanyokat kell az igenyeinkhez
   igazitani.

     --------------------------------------------------------------

    31.7.2.8. A lapozoteru:let beallitasa

   Amennyiben szu:kseges, a szerveren talalhato lapozoallomanyt
   NFS-en keresztu:l el tudjuk erni.

     --------------------------------------------------------------

      31.7.2.8.1. Lapozas NFS-sel

   A rendszermag maga nem tamogatja az NFS alapu lapozas
   engedelyezeset a rendszer inditasakor. A lapozoallomanyt ezert a
   rendszerindito szkripteken keresztu:l aktivaljuk, amelyekben
   csatlakoztatunk egy irhato allomanyrendszert, ahol letrehozzuk es
   engedelyezzu:k a lapozoallomanyt. Tetszo"leges meretu"
   lapozoallomanyt peldaul igy tudunk kesziteni:

 # dd if=/dev/zero of=/a/lapozoallomany/helye bs=1k count=1 oseek=100000

   Az engedelyezesehez pedig a ko:vetkezo" sort kell felvenni az
   rc.conf allomanyba:

 swapfile=/a/lapozoallomany/helye

     --------------------------------------------------------------

    31.7.2.9. Egyeb problemak

      31.7.2.9.1. Irasvedett /usr hasznalata

   Ha a lemez nelku:li munkaallomason X szervert akarunk futtatni,
   akkor az XDM konfiguracios allomanyait kicsit modositanunk kell,
   mert alapertelmezes szerint a /usr ko:nyvtarban hozza letre a
   naplokat.

     --------------------------------------------------------------

      31.7.2.9.2. Nem FreeBSD-s szerver hasznalata

   Amikor a rendszer inditasahoz hasznalt allomanyrendszert nem egy
   FreeBSD alapu szamitogepen taroljuk, akkor elo"szo:r ezt egy
   FreeBSD-s gepen kell elkesziteni, majd a tar vagy cpio
   segitsegevel atmasolni a megfelelo" helyre.

   Ilyen helyzetekben gyakran gondok adodhatnak olyan specialis
   allomanyokkal, mint peldaul amelyek a /dev ko:nyvtarban
   talalhatoak, mivel a fo"- es aleszko:zazonositok tarolasara szant
   meret ku:lo:nbo:zhet. Ezt ugy oldhatjuk meg, ha exportalunk egy
   ko:nyvtarat a nem FreeBSD alapu szerveren, ezt csatlakoztatjuk a
   FreeBSD-s gepen, majd a devfs(5) segitsegevel a eszko:zleirokat a
   felhasznalo szamara eszrevetlen modon foglaljuk le.

     --------------------------------------------------------------

31.8. ISDN

   Az ISDN technologiai es hardveres hatterero"l sokat megtudhatunk
   Dan Kegel ISDN-ro"l szolo oldalan (angolul).

   Az ISDN hasznalatat ro:viden igy foglalhatnank o:ssze:

     * Ha Europaban elu:nk, akkor minden bizonnyal az ISDN kartyakkal
       foglalkozo szakaszt erdemes elolvasnunk.

     * Ha elso"sorban betarcsazos ISDN-nel szeretnenk csatlakozni az
       internetre egy internet-szolgaltaton keresztu:l, akkor a
       terminal adaptereket targyalo szakaszt nezzu:k meg. A
       szolgaltatok valtasakor ezzel jar a legto:bb rugalmassag es a
       legkevesebb problema.

     * Ha ket helyi halozat o:sszeko:tesere hasznaljuk, vagy az
       internethez egy berelt ISDN vonalon keresztu:l kapcsolodunk,
       akkor egy o:nallo utvalaszto vagy halozati hid beallitasaban
       erdemes gondolkodnunk.

   A ko:ltseg fontos szerepet jatszik az elfogadhato megoldas
   kivalasztasaban. A most ko:vetkezo" leheto"segeket a legolcsobbtol
   indulva kezdju:k el felsorolni egeszen a legdragabbig.

     --------------------------------------------------------------

  31.8.1. ISDN kartyak

   Keszitette: Hellmuth Michaelis.

   A FreeBSD-ben megtalalhato ISDN implementacio csak a DSS1/Q.931
   (mas neven Euro-ISDN) szabvany szerint gyartott passziv kartyakat
   tamogatja. Ismer azonban egyes olyan aktiv kartyakat is,
   amelyeknel a firmware tovabbi mas jelkezelesi protokollokat is
   tamogat. Ilyen to:bbek ko:zt az elso"kent tamogatott Primary Rate
   (PRI) ISDN kartya.

   Az isdn4bsd szoftver segitsegevel kapcsolodni tudunk mas ISDN
   utvalasztokhoz IP-n keresztu:l a nyers HDLC felett, vagy szinkron
   PPP hasznalataval. Mindezeket a rendszermagban talalhato PPP-re
   vagy az isppp-re epitkezik.

   FreeBSD alatt egyre to:bb PC-s ISDN kartyahoz keszu:l el a
   tamogatas, es a visszajelzesek azt mutatjak, hogy Europaban es a
   vilag minden reszen sikerrel hasznaljak ezeket.

   A passziv ISDN kartyak ko:zu:l is leginkabb az Infineon (korabban
   Siemens) gyartmanyu ISAC/HSCX/IPAC ISDN chipkeszletek
   tamogatottak, de a Cologne chippel rendelkezo" (de csak ISA
   buszos) ISDN kartyak, a Winbond W6692 chipes PCI buszos kartyak,
   es a Tiger300/320/ISAC chipkeszletek egyes valtozatai, valamint
   nehany gyartofu:ggo" chipkeszlettel rendelkezo" kartya, mint
   peldaul az AVM Fritz!Card PCI V.1.0 es az AVM Fritz!Card PnP is
   remeku:l mu"ko:dik.

   Jelenleg a ko:vetkezo" aktiv ISDN kartyakat tamogatja a rendszer:
   AVM B1 (ISA es PCI) BRI kartyak es az AVM T1 PCI PRI kartyak.

   Az isdn4bsd dokumentaciojat a rendszeru:nko:n belu:l a
   /usr/share/examples/isdn/ ko:nyvtarban talalhatjuk meg, vagy
   ko:zvetlenu:l az isdn4bsd honlapjan, ahol to:bb hivatkozast is
   talalunk tippekre, hibajegyzekekre es bo"segesebb dokumentaciora,
   peldaul az isdn4bsd sajat keziko:nyvere.

   Ha szeretnenk egy masik ISDN protokoll tamogatasanak
   kifejleszteseben resztvenni, vagy egy jelenleg meg nem tamogatott
   ISDN kartyat hasznalhatova tenni, esetleg valamilyen mas modon
   segiteni az isdn4bsd u:gyet, vegyu:k fel a kapcsolatot Hellmuth
   Michaelis <hm@FreeBSD.org> fejleszto"vel.

   Az isdn4bsd telepitesevel, beallitasaval es hibaelharitasaval
   kapcsolatos kerdeseinket a freebsd-isdn levelezesi listan
   tehetju:k fel.

     --------------------------------------------------------------

  31.8.2. ISDN terminal adapterek

   Az ISDN szamara olyanok a terminal adapterek, mint a hagyomanyos
   telefonvonalak szamara a modemek.

   A legto:bb terminal adapter a Hayes-modemek szabvanyos AT
   parancskeszletet hasznalja, es ko:nnyen be lehet iktatni egy modem
   helyett.

   A terminal adapterek alapveto"en ugyanugy mu"ko:dnek, mint a
   modemek, kiveve, hogy egy atlagos modemnel joval nagyobb
   adatatviteli sebessegre kepesek. Ezert a PPP kapcsolatunkat
   pontosan ugyanugy kell beallitani, mint a modemek eseteben. Ne
   felejtsu:k a soros pont sebesseget a maximalis ertekre allitani.

   A terminal adapterek hasznalatanak egyik legnagyobb elo"nye, hogy
   segitsegu:kkel dinamikus PPP-n keresztu:l tudunk az
   internet-szolgaltatonkhoz kapcsolodni. Mivel az IP-cimtartomany
   egyre inkabb szu"ko:sebb, a legto:bb szolgaltato nem szivesen oszt
   ki barkinek is statikus IP-cimet. A legto:bb o:nallo utvalaszto
   azonban nem kepes alkalmazkodni az IP-cimek dinamikus
   kiosztasahoz.

   A terminal adapter az elerheto" leheto"segeket es a kapcsolat
   stabilitasat tekintve teljesen a PPP demontol fu:gg. Emiatt egy
   FreeBSD-s gepet ko:nnyu" modemro"l atallitani az ISDN
   hasznalatara, ha mar egyszer beallitottuk a PPP demont. Ezzel
   egyu:tt azonban a PPP hasznalata soran tapasztalt problemak
   ugyanugy ismet felmeru:lnek.

   Ha a maximalis stabilitasra van szu:ksegu:nk, akkor a rendszermag
   PPP beallitasat hasznaljuk, es ne a felhasznaloi PPP megoldast.

   A FreeBSD hivatalosan az alabbi terminal adaptereket ismeri:

     * Motorola BitSurfer es Bitsurfer Pro

     * Adtran

   Valoszinu"leg a to:bbi terminal adapterrel is kepes
   egyu:ttmu"ko:dni, mivel a terminal adapterek gyartoi altalaban
   igyekeznek a termekeiket a szabvanyos modemes AT
   parancskeszletevel kompatibilissa tenni.

   Az igazi problema a ku:lso" terminal adapterekkel adodik, mivel,
   akarcsak a modemek eseteben, egy nagyon jo soros kartyat
   igenyelnek.

   A soros eszko:zo:k mu"ko:desenek reszleteit valamint az aszinkron
   es szinkron soros portok ko:zti ku:lo:nbsegeket a FreeBSD soros
   hardverekro"l szolo cikkeben olvashatjuk.

   A terminal adaptereken keresztu:l elerheto" sebesseget a PC-kben
   talalhato szabvanyos (aszinkron) soros port 115,2 Kb/mp-re
   korlatozza, meg 128 Kb/mp-es adatatvitelu" kapcsolatok eseteben
   is. Az ISDN altal nyujtott 128 Kb/mp kihasznalasahoz a terminal
   adaptert egy szinkron soros kartyaval kell o:sszeko:tnu:nk.

   Ne higyju:k, hogy egy belso" terminal adapter megvasarlasaval
   megmeneku:lu:nk etto"l a gondtol. A belso" terminal adapterekbe
   egyszeru"en csak egy sima szabvanyos PC-s soros portot epitettek
   bele. Mindo:ssze egy soros kabelt es egy konnektort takaritunk meg
   velu:k.

   A terminal adapterhez csatlakozo szinkron kartyak legalabb olyan
   gyorsak, mint egy o:nallo utvalaszto, es egy egyszeru" 386-osra
   epu:lo" FreeBSD rendszerrel talan meg rugalmasabban is
   kezelheto"ek.

   A terminal adapter plusz szinkron kartya kontra o:nallo utvalaszto
   kerdese mar hitkerdesse fajult, amiro"l igen sokat vitatkoztak
   szerte a levelezesi listakon. A teljes okfejtes elolvasasahoz az
   archivum bo:ngeszeset javasoljuk.

     --------------------------------------------------------------

  31.8.3. O:nallo ISDN halozati hidak es utvalasztok

   Az ISDN hidak vagy utvalasztok nem egeszen a FreeBSD vagy
   operacios rendszerek teru:letehez tartoznak. Az utvalasztas es a
   halozatok hidak alapjainak a szamitogepes halozatokrol szolo
   szakirodalomban jarhatunk utana.

   Ebben a szakaszban a halozati hid es az utvalaszto kifejezeseket
   egymas szinonimajakent fogjuk hasznalni.

   Ahogy az olcsobb ISDN utvalasztok es hidak arai egyre jobban
   cso:kkennek, ezert egyre inkabb nepszeru"bbe valnak. Az ISDN
   utvalaszto egy apro doboz, amelyet ko:zvetlenu:l a helyi Ethernet
   halozatunkra tudunk csatlakoztatni, es a to:bbi utvalasztohoz vagy
   hidhoz kapcsolodik. A benne talalhato szoftverrel kepes
   kommunikalni a PPP vagy mas egyeb nepszeru" protokollokon
   keresztu:l.

   Az utvalaszto egy szabvanyos terminal adapternel sokkal nagyobb
   adatatvitelt tesz leheto"ve, mivel a teljes szinkron ISDN
   kapcsolatot kepes kihasznalni.

   Az ISDN utvalasztokkal es hidakkal kapcsolatban az egyik
   legnagyobb problemat a ku:lo:nbo:zo" gyartok ko:zti elteresek
   jelenthetik. Ha egy szolgaltatohoz akarunk ezen a modon
   csatlakozni, akkor erdemes elo"zetesen egyeztetni az igenyeinket
   velu:k.

   Ha ket helyi halozati szegmenst akarunk o:sszekapcsolni, mint
   peldaul az otthoni es az irodai halozatot, akkor ez a megoldas jar
   a legkevesebb karbantartasi ko:ltseggel. Mivel ekkor mi magunk
   vasaroljuk a kapcsolat mind a ket oldalara a felszerelest,
   biztosak lehetu:nk benne, hogy az igy letrehozott o:sszeko:tettes
   mu"ko:dni fog.

   Peldaul, ha egy otthon vagy a vallalat egy fiokjanal levo" gepet
   akarjuk o:sszeko:tni az igazgatosag halozataval, akkor a
   ko:vetkezo" felallast erdemes ko:vetnu:nk:

   Pelda 31-3. Egy otthoni vagy egy fiokbeli halozat

   A halozat busz topologiaju es 10 Base 2 Ethernetet hasznal
   ("thinnet"). Ha szu:kseges, akkor az utvalasztot egy AUI/10BT
   ado-vevo"vel csatlakoztassuk a halozati kabelre.

 ---Sun munkaallomas
 |
 ---FreeBSD
 |
 ---Windows 95
 |
 az o:nallo utvalaszto
    |
 ISDN BRI vonal

   Ha az otthoni vagy fiokbeli szamitogep az egyedu:li, akkor egy
   keresztko:tesu" sodrott erpar kabellel akar ko:zvetlenu:l is
   csatlakozhatunk az utvalasztohoz.

   Pelda 31-4. Az igazgatosagi iroda vagy egy masik helyi halozat

   A halozat csillag topologiaju, es 10 Base T Ethernet kabelezesu"
   ("sodrott erpar").

     -------Novell szerver
     | H |
     |   ---Sun
     |   |
     | U ---FreeBSD
     |   |
     |   ---Windows 95
     | B |
     |___---az o:nallo utvalaszto
                 |
         ISDN BRI vonal

   A legto:bb utvalaszto/hid elo"nye, hogy egyszerre 2 egymastol
   fu:ggetlen PPP kapcsolatot tudunk felepiteni velu:k 2 egymastol
   fu:ggetlen geppel. Ezt a legto:bb terminal adapter nem tamogatja,
   kiveve azok a (altalaban draga) tipusok, amelyek ket soros porttal
   rendelkeznek. Ezt ne tevesszu:k o:ssze a csatornak nyalabolasaval,
   az MPP-vel es a to:bbivel.

   Ez nagyon hasznos lehet peldaul olyan esetekben, amikor van egy
   dedikalt ISDN kapcsolatunk az irodaban, amelyet ugyan szeretnenk
   megcsapolni, de nem szeretnenk a masik ISDN vonalat is elrabolni.
   Az irodaban levo" A utvalaszto kepes a dedikalt B csatornaju
   kapcsolaton (64 Kb/mp) keresztu:l elerni az internetet, miko:zben
   a masik B csatornat etto"l fu:ggetlen adatkapcsolatra hasznalja. A
   masodik B csatorna igy hasznalhato betarcsazasra, kitarcsazasra
   vagy a masik B csatornaval egyu:tt dinamikus nyalabolasra (MPP
   stb.) a nagyobb savszelesseg elerese erdekeben.

   Az Ethernetes hid nem IP alapu forgalmat is kepes tovabbitani,
   ezert rajta keresztu:l akar IPX vagy SPX es mas egyeb
   protokollokat is hasznalni tudunk.

     --------------------------------------------------------------

31.9. Halozati cimforditas

   Irta: Chern Lee.

  31.9.1. Attekintes

   A FreeBSD halozati cimforditasert felelo"s demonprogramja, a
   natd(8) (Network Address Translation daemon), a beerkezo" nyers IP
   csomagokat dolgozza fel, es a helyi gepek forrascimet kicserelve
   visszailleszti ezeket a csomagokat a kimeno" folyamba. A natd(8)
   mindezt ugy teszi a forras IP-cimekkel es portokkal, hogy amikor
   az adat visszaerkezik, akkor kepes lesz megmondani a csomag
   eredeti ku:ldo"jet es visszaku:ldeni neki a valaszt.

   A halozati cimforditast altalaban az internet-kapcsolatok
   megosztasanal alkalmazzuk.

     --------------------------------------------------------------

  31.9.2. A halozat felepitese

   Az IPv4 vilagaban egyre jobban fogyo IP-cimek es az egyre
   no:vekvo" szamu, nagysebessegre vagyo, peldaul kabeles vagy DSL-es
   fogyasztok miatt az igeny is egyre nagyobb az internet-kapcsolatok
   megosztasara. Ha to:bb szamitogeppel szeretnenk egyetlen
   kapcsolaton es egy IP-cimen keresztu:l kapcsolodni az internetre,
   akkor ehhez a natd(8) to:keletes valasztas.

   Az esetek to:bbsegeben a felhasznalok egy kabeles vagy DSL vonalra
   csatlakoznak, melyhez egyetlen IP-cim tartozik, es ezen a gepen
   keresztu:l szeretnek elerni az internetet a helyi halozaton levo"
   to:bbi gepro"l.

   Ezt ugy tudjuk elerni, ha az internethez kapcsolodo FreeBSD-s
   gepet atjaronak allitjuk be. Ebben az atjaroban legalabb ket
   halozati felu:letnek kell leteznie -- az egyikkel az internetes
   utvalasztohoz, a masikkal pedig a helyi halozathoz kapcsolodik. A
   belso" halozaton levo" gepek egy hub vagy egy switch segitsegevel
   csatlakoznak egymashoz.

     Megjegyzes: To:bb modon is el tudjuk erni a belso" halozatrol az
     internetet egy FreeBSD-s atjaron keresztu:l. Ebben a peldaban
     most csak olyan atjarokkal foglalkozunk, amelyekben legalabb ket
     halozati kartya talalhato.

   _______       __________       ________
  |       |     |          |     |        |
  |  Hub  |-----| B kliens |-----| Utval. |----- Internet
  |_______|     |__________|     |________|
      |
  ____|_____
 |          |
 | A kliens |
 |__________|

   Egy ehhez hasonlo beallitas igen gyakori a megosztott
   internet-kapcsolatok eseteben. A helyi halozat egyik gepe
   csatlakozik az internetre. A to:bbi gep ezen az "atjaron"
   keresztu:l eri el az internetet.

     --------------------------------------------------------------

  31.9.3. A rendszerbeto:lto" beallitasa

   A natd(8) mu"ko:desehez szu:kseges cimforditasi tamogatast a
   GENERIC tipusu rendszermagok nem tartalmazzak, viszont a
   /boot/loader.conf megfelelo" parameterezesevel a rendszer
   beto:ltese ko:zben ezt hozza tudjuk adni:

 ipfw_load="YES"
 ipdivert_load="YES"

   Valamint a net.inet.ip.fw.default_to_accept valtozot allitsuk az 1
   ertekre.

 net.inet.ip.fw.default_to_accept="1"

     Megjegyzes: Ez utobbi beallitast leginkabb a tu"zfal es a
     cimforditast vegzo" atjaro probalgatasakor erdemes alkalmazni.
     Ilyenkor ugyanis az ipfw(8) alapertelmezett modon az allow ip
     from any to any (minden forgalom engedelyezett) szabalyt
     ko:veti, es nem pedig a kevesbe baratsagos deny ip from any to
     any (minden forgalom tiltott) szabalyt. A rendszer
     ujrainditasakor igy valamivel nehezebb lesz kizarnunk magunkat a
     szabalyok megadasa soran.

     --------------------------------------------------------------

  31.9.4. A rendszermag beallitasa

   Amikor viszont nincs leheto"segu:nk modulok hasznalatara, vagy
   szeretnenk minden igenyelt funkciot beepiteni a rendszermagba,
   akkor a rendszermag beallitasait tartalmazo allomanyban a
   ko:vetkezo"ket kell megadnunk:

 options IPFIREWALL
 options IPDIVERT

   A fentiek mellett meg ezeket a leheto"segeket tudjuk valasztani:

 options IPFIREWALL_DEFAULT_TO_ACCEPT
 options IPFIREWALL_VERBOSE

     --------------------------------------------------------------

  31.9.5. A rendszerinditas beallitasa

   A tu"zfal es a halozati cimforditas beinditasahoz a
   ko:vetkezo"knek kell az /etc/rc.conf allomanyban lennie:

 gateway_enable="YES" (1)
 firewall_enable="YES" (2)
 firewall_type="OPEN" (3)
 natd_enable="YES"
 natd_interface="fxp0" (4)
 natd_flags="" (5)

   (1)
           A gepet atjaronak allitja be. Hatasa megegyezik a sysctl
           net.inet.ip.forwarding=1 parancs kiadasaval.
   (2)
           A rendszer inditasakor engedelyezi az /etc/rc.firewall
           allomanyban szereplo" tu"zfalszabalyok hasznalatat.
   (3)
           Egy olyan elo"re definialt tu"zfalat ad meg, amely alapbol
           mindent beenged. Az /etc/rc.firewall allomanyban
           talalhatjuk a to:bbi tipust.
   (4)
           Megadja, hogy melyik felu:leten tovabbitsunk csomagokat az
           internet fele (ez a felu:let csatlakozik az internetre).
   (5)
           Itt szerepel minden tovabbi parameter, amelyet meg az
           inditaskor at kell adnunk a natd(8) demonnak.

   Amikor megadjuk ezeket a beallitasokat az /etc/rc.conf
   allomanyban, pontosan ugyanaz to:rtenik, mintha a natd -interface
   fxp0 parancsot adtunk volna ki a rendszer inditasakor. Ez tehat
   manualisan is elindithato.

     Megjegyzes: Ha tulsagosan sok parametert akarunk egyszerre
     beallitani natd(8) hasznalatahoz, akkor akar egy ku:lo:n
     konfiguracios allomanyt is megadhatunk. Ebben az esetben a
     konfiguracios allomanyt a ko:vetkezo" modon kell megjelo:lni az
     /etc/rc.conf allomanyban:

 natd_flags="-f /etc/natd.conf"

     Ekkor a /etc/natd.conf allomany fogja tartalmazni a
     beallitasokat, soronkent egyet. Peldaul a ko:vetkezo" szakaszban
     ez lesz a tartalma:

 redirect_port tcp 192.168.0.2:6667 6667
 redirect_port tcp 192.168.0.3:80 80

     A konfiguracios allomanyrol es az -f opcio hasznalataval
     kapcsolatban olvassuk el a natd(8) man oldalat.

   A helyi halozaton mindegyik gepnek az RFC 1918 altal megadott
   privat IP-cimterekbo"l szarmazo cimet kell hasznalnia, es az
   alapertelmezett atjaronak mindenhol a natd demont futtato gep
   IP-cimet kell megadni.

   Peldaul a belso" halozaton talalhato A es B kliensek IP-cimei
   rendre 192.168.0.2 es 192.168.0.3, mig a natd(8) demont futtato
   gep belso" cime 192.168.0.1. Az A es a B kliens alapertelmezett
   atjarojat a natd gepre, vagyis a 192.168.0.1 cimre kell
   beallitanunk. A natd gep ku:lso", avagy internetes felu:lete
   semmilyen tovabbi modositast nem igenyel a natd(8) mu"ko:desehez.

     --------------------------------------------------------------

  31.9.6. A portok atiranyitasa

   A natd(8) alkalmazasanak hatranya, hogy a belso" halozatra
   csatlakozo kliensek az internetro"l nem erheto"ek el. Tehat a
   helyi halozat kliensei kepesek elerni a ku:lvilagot, de az
   visszafele mar nem igaz. Ez akkor jelent igazabol problemat, ha az
   egyik belso" kliensen szolgaltatasokat akarunk futtatni. A
   problema egyik egyszeru" megoldasa, ha a natd hasznalataval az
   internet felo"l egyszeru"en atiranyitunk bizonyos portokat a
   megfelelo" belso" kliensre.

   Peldaul tegyu:k fel, hogy az A kliens egy IRC szervert, mig a B
   kliens egy webszervert futtat. Ez akkor fog mu"ko:dni, ha a
   szolgaltatasokhoz tartozo 6667 (IRC) es 80 (web) portokat
   atiranyitjuk a hozzajuk tartozo gepek fele.

   Ehhez a natd(8) demonnak a -redirect_port parametert kell atadni.
   A pontos feliras igy nez ki:

      -redirect_port protokoll celIP:celPORT[-celPORT]
                  [ku:lso"IP:]ku:lso"PORT[-ku:lso"PORT]
                  [tavoliIP[:tavoliPORT[-tavoliPORT]]]

   A fenti peldaban tehat ezt kell megadnunk:

     -redirect_port tcp 192.168.0.2:6667 6667
     -redirect_port tcp 192.168.0.3:80 80

   Igy az egyes ku:lso" tcp portokat atiranyitjuk a belso" halozat
   gepei fele.

   A -redirect_port parameternek akar egesz porttartomanyokat is
   megadhatunk. Peldaul a tcp 192.168.0.2:2000-3000 2000-3000
   megadasaval az o:sszes 2000-to"l 3000-ig terjedo" port
   csatlakozasat lekepezzu:k az A kliens 2000 es 3000 ko:zti
   portjaira.

   Ezek a beallitasok a natd(8) ko:zvetlen futtatasakor adhatoak meg,
   esetleg az /etc/rc.conf allomanyban az natd_flags="" opcio
   keresztu:l, vagy egy ku:lo:n konfiguracios allomanyban.

   A to:bbi beallitasi leheto"seget a natd(8) man oldalan
   ismerhetju:k meg.

     --------------------------------------------------------------

  31.9.7. A cimek atiranyitasa

   A cimek atiranyitasa abban az esetben hasznos, amikor to:bb IP-cim
   all rendelkezesu:nkre, de ezek egy gephez tartoznak. Ilyenkor az
   natd(8) kepes a belso" halozat egyes gepeihez sajat ku:lso"
   IP-cimet rendelni. A natd(8) a belso" halozat kliensei altal
   ku:ldo:tt csomagokban kicsereli a cimu:ket a megfelelo" ku:lso"
   IP-cimmel, illetve az ezekre a cimekre erkezo" forgalmat
   tovabbitja a megfelelo" belso" kliens iranyaba. Ezt a megoldast
   statikus halozati cimforditasnak is nevezzu:k. Peldaul a 128.1.1.2
   es a 128.1.1.3 IP-cimek a natd demont futtato atjarohoz tartoznak.
   A 128.1.1.1 cim hasznalhato a natd alapu atjaro ku:lso"
   IP-cimekent, miko:zben a 128.1.1.2 es a 128.1.1.3 cimeket a belso"
   halozaton elerheto" A es B kliensek fele ko:zvetitju:k.

   A -redirect_address felirasa tehat a ko:vetkezo":

 -redirect_address helyiIP publikusIP

   helyiIP       A helyi halozaton talalhato kliens sajat IP-cime.    
   publikusIP    A klienshez tartozo megfelelo" ku:lso" IP-cim.       

   Az imenti peldaban a pontos parameterek ezek lesznek:

 -redirect_address 192.168.0.2 128.1.1.2
 -redirect_address 192.168.0.3 128.1.1.3

   A -redirect_port opciohoz hasonloan ez is megadhato az
   /etc/rc.conf allomanyban az natd_flags="" beallitason keresztu:l
   vagy egy ku:lo:n konfiguracios allomanyban. A cimek
   atiranyitasaval nincs szu:ksege a portok atiranyitasara, mivel az
   adott IP-cimhez tartozo o:sszes forgalmat atiranyitjuk.

   A natd demont futtato gepen a ku:lso" IP-cimeket aktivalni kell es
   a ku:lso" felu:letehez kell rendelni. A rc.conf(5) man oldalon
   jarhatunk utana, hogy mindezt hogyan is tudjuk megcsinalni.

     --------------------------------------------------------------

31.10. Parhuzamos vonali IP (PLIP)

   A parhuzamos vonali IP (Parallel Line IP, PLIP) a TCP/IP protokoll
   hasznalatat valositja meg parhuzamos porton keresztu:l. Olyan
   gepek szamara lehet hasznos, amelyekben nincs halozati kartya,
   vagy esetleg laptopoknal. Ebben a szakaszban a ko:vetkezo"ket
   targyaljuk:

     * Parhuzamos (laplink) kabel keszitese

     * Ket szamitogep o:sszekapcsolasa a PLIP segitsegevel

     --------------------------------------------------------------

  31.10.1. Parhuzamos kabel keszitese

   Parhuzamos kabelt a legto:bb szamitastechnikai boltban tudunk
   vasarolni. Ha megsem tudnank sehol sem beszerezni, vagy
   egyszeru"en tudni szeretnenk, hogyan lehet ilyet kesziteni, akkor
   az alabbi tablazatban lathatjuk, hogy mikent tudunk egy
   hetko:znapi nyomtatokabelt atalakitani a celjainkra.

   Tablazat 31-1. A parhuzamos kabel halozati hasznalatra alkalmas
   beko:tese

   A-nev  A-veg B-veg  Leiras   Post/Bit 
   DATA0  2     15    Adat      0/0x01   
   -ERROR 15    2               1/0x08   
   DATA1  3     13    Adat      0/0x02   
   +SLCT  13    3               1/0x10   
   DATA2  4     12    Adat      0/0x04   
   +PE    12    4               1/0x20   
   DATA3  5     10    Val. imp. 0/0x08   
   -ACK   10    5               1/0x40   
   DATA4  6     11    Adat      0/0x10   
   BUSY   11    6               1/0x80   
   GND    18-25 18-25 Fo:ld     -        

     --------------------------------------------------------------

  31.10.2. A PLIP beallitasa

   Elo"szo:r is szereznu:nk kell valahonnan egy laplink kabelt. Ha ez
   megvan, akkor mind a ket gepen elleno"rizzu:k, hogy a rendszermag
   tartalmazza az lpt(4) meghajtot:

 # grep lp /var/run/dmesg.boot
 lpt0: <Printer> on ppbus0
 lpt0: Interrupt-driven port

   A parhuzamos portnak megszakitassal vezereltnek kell lennie
   ("interrupt driven"), es az /boot/device.hints allomanyban
   szerepelnie kell nagyjabol a ko:vetkezo" soroknak:

 hint.ppc.0.at="isa"
 hint.ppc.0.irq="7"

   Ezutan nezzu:k meg, hogy a rendszermag beallitasait tartalmazo
   allomanyban megjelenik-e a device plip sor, vagy a plip.ko modul
   beto:lto"do:tt-e. Akarmelyik is to:rtent, a parhuzamos halozati
   felu:let most mar a rendelkezesu:nkre all, es az ifconfig(8)
   paranccsal ezt meg is tudjuk nezni:

 # ifconfig plip0
 plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500

   A laplink kabelt csatlakoztassuk mind a ket szamitogephez.

   Mind a ket a halozati felu:let parametereit root felhasznalokent
   hangoljuk be. Peldaul, ha az egyikgep nevu" gepet akarjuk a
   masikgep nevu" gephez csatlakoztatni:

               egyikgep <-----> masikgep
 IP-cim        10.0.0.1      10.0.0.2

   Az egyikgep felu:letet igy allitsuk be:

 # ifconfig plip0 10.0.0.1 10.0.0.2

   A masikgep felu:letet igy allitsuk be:

 # ifconfig plip0 10.0.0.2 10.0.0.1

   Ezt ko:veto"en mar egy mu"ko:do" kapcsolatnak kell felepu:lnie. Az
   egyeb reszletek kapcsan az lp(4) es az lpt(4) man oldalait nezzu:k
   at.

   Ezt a ket gepet vegyu:k fel az /etc/hosts allomanyba is:

 127.0.0.1               localhost.sajat.tartomany localhost
 10.0.0.1                egyikgep.sajat.tartomany egyikgep
 10.0.0.2                masikgep.sajat.tartomany

   A kapcsolat mu"ko:do"kepessegero"l ugy tudunk meggyo"zo"dni, ha az
   egyik gepro"l megprobaljuk pingelni a masikat. Peldaul az egyikgep
   eseteben:

 # ifconfig plip0
 plip0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
         inet 10.0.0.1 --> 10.0.0.2 netmask 0xff000000
 # netstat -r
 Routing tables

 Internet:
 Destination        Gateway          Flags     Refs     Use      Netif Expire
 masikgep           egyikgep         UH          0       0       plip0
 # ping -c 4 masikgep
 PING masikgep (10.0.0.2): 56 data bytes
 64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.774 ms
 64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.530 ms
 64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.556 ms
 64 bytes from 10.0.0.2: icmp_seq=3 ttl=255 time=2.714 ms

 --- masikgep ping statistics ---
 4 packets transmitted, 4 packets received, 0% packet loss
 round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms

     --------------------------------------------------------------

31.11. Az IPv6

   Eredetileg irta: Aaron Kaplan. Atszervezte es kiegeszitette: Tom
   Rhodes. Tovabb bo"vitette: Brad Davis.

   Az IPv6 (masik neven az IPng, vagy a "az internet ko:vetkezo"
   generacios protokollja", "IP next generation") a jol ismert IP
   protokoll (avagy az IPv4) uj valtozata. Hasonloan a jelenleg
   mu"ko:do" o:sszes to:bbi BSD rendszerhez, a FreeBSD is tartalmazza
   a KAME IPv6 referencia implementaciot. Ezert ha ezzel szeretnenk
   kiserletezni, akkor ehhez a FreeBSD minden eszko:z biztosit
   szamunkra. Ez a szakasz az IPv6 beallitasat es hasznalatat mutatja
   be.

   Az 1990-es evek elejen az IPv4-es cimterek rohamos merteku"
   kimeru:leset figyeltek meg. Az internet jelenlegi bo"vu:lesi
   u:teme mellett ket nagyobb aggodalomnak adott okot:

     * A cimek elfogyasa. Napjainkban efelo"l egyre kevesebb a
       ketseg, mivel az RFC 1918 altal megfogalmazott privat cimterek
       (10.0.0.0/8, 172.16.0.0/12, es 192.168.0.0/16), valamint a
       halozati cimforditas (Network Address Translation, NAT)
       hasznalata igen elterjedt.

     * Az utvalasztasi tablazatok meretenek no:vekedese. Ez meg
       manapsag is aggaszto.

   Az IPv6 ezeket es meg mas egyeb problemakat a ko:vetkezo" modon
   igyekszik megoldani:

     * A 128 bites cimter hasznalata. Mas szoval, elmeletben
       o:sszesen 340 282 366 920 938 463 463 374 607 431 768 211 456
       darab cimet kepes kiosztani. Ez azt jelenti, hogy bolygonk
       minden egyes negyzetmeterere megko:zelito"leg 6,67 * 10^27
       IPv6 tipusu cim jut.

     * Az utvalasztok a sajat tablazataikban csak a halozatok
       o:sszevont cimeit taroljak el, ezaltal egy atlagos
       utvalasztasi tablazatban talalhato bejegyzesek szama 8192 ala
       cso:kken.

   Az IPv6 emellett meg rengeteg mas elo"nyo:s leheto"seget is kinal:

     * A cimek automatikus beallitasa (lasd RFC 2462)

     * Anycast (barkiku:ldes, vagyis "egy a sokbol")

     * Ko:telezo" (mandatory) multicast

     * IPsec (IP szintu" vedelem)

     * Egyszeru"sitett fejlec

     * Mobil IP

     * IPv6-IPv4 ko:zti atjarhatosag

   Ha mindezekro"l to:bbet szeretnenk megtudni, akkor erre erdemes
   tovabblepnu:nk:

     * Az IPv6 attekintese a playground.sun.com honlapon

     * KAME.net

     --------------------------------------------------------------

  31.11.1. Az IPv6 cimek hattere

   Az IPv6 cimeknek to:bb tipusa letezik: a unicast (egyesku:ldes),
   az anycast (barkiku:ldes) es a multicast (to:bbesku:ldes).

   A unicasthez hasznalt cimek jol ismert cimek. Az igy elku:ldo:tt
   csomag pontosan ahhoz a felu:lethez erkezik meg, amelyhez az adott
   cim tartozik.

   Az anycasthez hasznalt cimek felirasukban to:keletesen megegyeznek
   a unicast esetevel, de valojaban felu:letek egy csoportjat
   cimezik. Az anycastre beallitott cimekre ku:ldo:tt csomagok mindig
   a(z utvalaszto szerinti) legko:zelebb levo" felu:lethez erkeznek
   meg. Az anycastet az utvalasztok szamara talaltak ki.

   A multicasthez hasznalt cimek felu:letek egy csoportjat nevezik
   meg. A multicast cimekre erkezo" csomagokat a csoport minden egyes
   tagja megkapja.

     Megjegyzes: Az IPv4 eseteben az u:zenetszorasra szant (altalaban
     az xxx.xxx.xxx.255 formatumu) cimeket az IPv6 eseteben multicast
     cimekkel fejezzu:k ki.

   Tablazat 31-2. Fenntartott IPv6 cimek

                    Az elo"tag                                        
       IPv6 cim       hossza        Leiras            Megjegyzes
                    (bitekben)                   
                                                 Vo:. a 0.0.0.0       
   ::               128 bit    nem specifikalt   cimmel az IPv4       
                                                 eseteben.            
                                                 Vo:. a 127.0.0.1     
   ::1              128 bit    sajat cim         cimmel az IPv4       
                                                 eseteben.            
                                                 Az also 32 bit egy   
                                                 IPv4 formatumu cim.  
   ::00:xx:xx:xx:xx 96 bit     IPv4 beagyazasa   Ezt "IPv4            
                                                 kompatibilis IPv6    
                                                 cimnek" is nevezik.  
                                                 Az also 32 bit egy   
                                                 IPv4 cimet jelo:l.   
   ::ff:xx:xx:xx:xx 96 bit     IPv4-re lekepzett Olyan gepeknel       
                               IPv6 cimek        hasznalatos, amelyek 
                                                 nem tamogatjak az    
                                                 IPv6 protokollt.     
   fe80:: - feb::   10 bit     helyi             Vo:. az IPv4         
                               o:sszeko:ttetes   loopback cimeivel.   
   fec0:: - fef::   10 bit     helyi cim                              
   ff::             8 bit      multicast                              
                                                 Az o:sszes globalis  
                                                 unicast cimet ebbo"l 
   001 (2-es alapu) 3 bit      globalis unicast  a tartomanybol       
                                                 osztjuk ki. Az elso" 
                                                 3 bit erteke"001".   

     --------------------------------------------------------------

  31.11.2. Az IPv6 cimek olvasasa

   Az IPv6 cimek kanonikus formaja igy abrazolhato: x:x:x:x:x:x:x:x,
   ahol mindegyik "x" egy 16 bites hexadecimalis ertek. Peldaul:
   FEBC:A574:382B:23C1:AA49:4592:4EFE:9982.

   Gyakran a cimek hosszu nullakbol allo sorozatokat tartalmaznak,
   ezert mindegyik ilyen sorozatot ro:viditeni tudjuk a "::"
   jelo:lessel. Rajtuk kivu:l meg az egyes hexadecimalis csoportokban
   a bevezeto" nullak is elhagyhatoak. Peldaul az fe80::1 cim
   kanonikus formaja: fe80:0000:0000:0000:0000:0000:0000:0001.

   A harmadik forma szerint az utolso 32 bites reszt irjuk fel a
   megszokott (decimalis) IPv4 stilusu pontozassal, ahol tehat a "."
   valasztja el a tagokat. Igy peldaul a 2002::10.0.0.1 feliras a
   2002:0000:0000:0000:0000:0000:0a00:0001 kanonikus (hexadecimalis)
   abrazolasnak feleltetheto" meg, ami pedig egyszeru"en 2002::a00:1
   alakban is megadhato.

   Mostanra mar minden bizonnyal a kedves olvaso erteni fogja a
   ko:vetkezo"t:

 # ifconfig

 rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
          inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255
          inet6 fe80::200:21ff:fe03:8e1%rl0 prefixlen 64 scopeid 0x1
          ether 00:00:21:03:08:e1
          media: Ethernet autoselect (100baseTX )
          status: active

   A fe80::200:21ff:fe03:8e1%rl0 cim az automatikusan beallitott
   helyi o:sszeko:ttetes cime. Ez az automatikus beallitas reszekent
   a MAC-cimbo"l jo:tt letre.

   Az IPv6 cimek szerkezetero"l tovabbi reszleteket az RFC 3513-ban
   talalunk.

     --------------------------------------------------------------

  31.11.3. Kapcsolodas

   Jelenleg negy modon tudunk mas IPv6-os gephez es halozathoz
   csatlakozni:

     * Kerju:nk a halozati eleresu:nkert felelo"s illetekesekto"l
       IPv6 alapu halozatot. A reszletek tekinteteben vegyu:k fel a
       kapcsolatot az internet-szolgaltatonkkal.

     * A SixXS a vilag minden tajan kinal vegpontokkal rendelkezo"
       tunneleket.

     * Egy 6-bol-4 (RFC 3068) tipusu tunnellel.

     * Ha betarcsazos kapcsolatunk van, akkor hasznaljuk a
       net/freenet6 portot.

     --------------------------------------------------------------

  31.11.4. A nevek feloldasa az IPv6 vilagaban

   IPv6 alatt regebben ket tipusa volt a nevek feloldasaert felelo"s
   rekordoknak. Az IETF az A6 rekordokat ido"ko:zben elavultnak
   nyilvanitotta. Ezert manapsag mar az AAAA rekordok tekintheto"ek
   szabvanyosnak.

   Az AAAA rekordok hasznalata magatol erteto"dik. A halozati
   nevu:kho:z az alabbi modon tudunk IPv6 cimet rendelni az
   elso"dleges zonat leiro allomanyban:

 SAJATNEV           AAAA    SAJATIPv6CIM

   Ha nem rendelkezu:nk sajat nevfeloldasi zonaval, akkor erre
   kerju:k meg a nevfeloldast vegzo" szolgaltatonkat. A bind
   jelenlegi valtozatai (8.3 es 9), valamint a dns/djbdns (IPv6
   tamogatasara vonatkozo javitassal) tamogatjak az AAAA rekordokat.

     --------------------------------------------------------------

  31.11.5. Az /etc/rc.conf szu:kseges modositasai

    31.11.5.1. Az IPv6 kliensek beallitasai

   Ezek a beallitasok egy helyi halozaton levo" gepre vonatkoznak,
   nem pedig egy utvalasztora. Az rtsol(8) az alabbi megadasaval
   fogja automatikusan beallitani a felu:leteinket a rendszer
   inditasakor:

 ipv6_enable="YES"

   Ha az fxp0 felu:lethez statikusan akarunk IP-cimet rendelni,
   peldaul a 2001:471:1f11:251:290:27ff:fee0:2093 cimet, akkor ehhez
   a ko:vetkezo"t kell megadni:

 ipv6_ifconfig_fxp0="2001:471:1f11:251:290:27ff:fee0:2093"

   Az /etc/rc.conf allomanyban az alapertelmezett atjarot a
   ko:vetkezo" modon tudjuk a 2001:471:1f11:251::1 cimre beallitani:

 ipv6_defaultrouter="2001:471:1f11:251::1"

     --------------------------------------------------------------

    31.11.5.2. Az IPv6 utvalasztok es atjarok beallitasa

   Itt most a tunnelt biztosito szolgaltato altal mutatott iranyt
   ko:vetju:k, es olyan formara alakitjuk, amely megmarad az
   ujrainditas utan is. A rendszer inditasakor az /etc/rc.conf
   allomanyban valami ilyesmit kell megadni a jarat
   visszaallitasahoz:

   Soroljuk fel a beallitando altalanos tunnel alapu felu:leteket,
   ilyen lehet peldaul a gif0:

 gif_interfaces="gif0"

   A felu:letnek allitsunk be egy helyi vegpontot a SAJAT_IPv4_CIM
   megadasaval, valamint egy tavoli vegpontot a TAVOLI_IPv4_CIM
   megadasaval:

 gifconfig_gif0="SAJAT_IPv4_CIM TAVOLI_IPv4_CIM"

   Az IPv6 tunnelu:nk vegpontjahoz kapott cim aktivalasahoz az
   alabbit kell meg megadnunk:

 ipv6_ifconfig_gif0="SAJAT_KAPOTT_IPv6_TUNNEL_VEGPONTJANAK_CIME"

   Ezutan mar csak az alapertelmezett utvonalat kell beallitani az
   IPv6 szamara. Ez az IPv6 jarat masik oldala:

 ipv6_defaultrouter="SAJAT_IPv6_TAVOLI_TUNNEL_VEGPONTJANAK_CIME"

     --------------------------------------------------------------

    31.11.5.3. Az IPv6 tunnel beallitasai

   Amennyiben a szerver IPv6 alapu forgalmat ko:zvetit a halozatunk
   es a vilag ko:zo:tt, az /etc/rc.conf allomanyba a ko:vetkezo"t
   kell felvennu:nk:

 ipv6_gateway_enable="YES"

     --------------------------------------------------------------

  31.11.6. Az utvalasztok kihirdetese es automatikus konfiguracioja

   Ebben a szakaszban az rtadvd(8) beallitasaval fogjuk az
   alapertelmezett IPv6 utvonalat kihirdetni.

   Az rtadvd(8) engedelyezesehez az alabbi sort kell betennu:nk az
   /etc/rc.conf allomanyba:

 rtadvd_enable="YES"

   Emellett meg fontos megadnunk azt a felu:letet, ahol az IPv6
   utvalaszto kerelmezeset vegezzu:k. Ha erre a feladatra peldaul az
   fxp0 felu:letet valasztjuk, akkor erro"l az rtadvd(8) igy
   ertesitheto":

 rtadvd_interfaces="fxp0"

   Most pedig keszitenu:nk kell hozza egy konfiguraciot is, vagyis az
   /etc/rtadvd.conf allomanyt. Ime erre egy pelda:

 fxp0:\
         :addrs#1:addr="2001:471:1f11:246::":prefixlen#64:tc=ether:

   Az fxp0 felu:letet termeszetesen cserelju:k ki a sajatunkkal.

   Ezutan a 2001:471:1f11:246:: cimre helyere irjuk be a sajat
   kiosztasunk elo"tagjat.

   Egy egesz /64 alhalozat eseten nem is kell to:bbet megadni. Minden
   mas helyezetben az elo"tag hosszara prefixlen# vonatkozo erteket
   is be kell meg allitanunk.

     --------------------------------------------------------------

31.12. Az Aszinkron adatatviteli mod (ATM)

   Keszitette: Harti Brandt.

  31.12.1. A klasszikus IP-cimek beallitasa ATM felett (allando)

   A klasszikus IP ATM felett (Classical IP over ATM, CLIP) a
   legegyszeru"bb modszer az IP-cimek hasznalatara az Aszinkron
   adatatviteli moddal (Asynchronous Transfer Mode, ATM) egyu:tt.
   Kapcsolt es allando kapcsolatok (Switched Virtual Channel, SVC es
   Permanent Virtual Channel, PVC) eseten egyarant megfelelo". Ebben
   a szakaszban ez utobbival fogunk foglalkozni.

     --------------------------------------------------------------

    31.12.1.1. A teljesen haloszeru" konfiguraciok

   A CLIP beallitasat allando csatornakon peldaul ugy tudjuk
   megoldani, ha az o:sszes gepet ku:lo:n ezekre a celokra szant
   allando csatornakkal o:sszekapcsoljuk egymassal. Ez az egyszeru"
   megoldas azonban nagyobb szamu gep eseteben mar nem elegge
   hatekony. A ko:vetkezo" peldaban csupan negy gepet ko:tu:nk
   halozatba, melyik mindegyike egy ATM kartyaval csatlakozik az ATM
   halozatra. Ehhez elso"kent tervezzu:k meg az IP-cimek kiosztasat
   es a gepek ko:zti ATM kapcsolatokat. A peldaban ez az alabbiak
   szerint alakul:

                 Gep                             IP-cim               
   A-gep                            192.168.173.1                     
   B-gep                            192.168.173.2                     
   C-gep                            192.168.173.3                     
   D-gep                            192.168.173.4                     

   A teljes halozat felepitesehez minden egyes par ko:zo:tt egy-egy
   ATM kapcsolatra lesz szu:ksegu:nk:

                 Gepek                         VPI.VCI par            
   A-gep - B-gep                     0.100                            
   A-gep - C-gep                     0.101                            
   A-gep - D-gep                     0.102                            
   B-gep - C-gep                     0.103                            
   B-gep - D-gep                     0.104                            
   C-gep - D-gep                     0.105                            

   A kapcsolatok egyes vegein szereplo" VPI es VCI ertekek
   termeszetesen elterhetnek, de ezeket mi most az egyszeru"seg
   kedveert egyenlo"nek tekintettu:k. A ko:vetkezo" lepesben minden
   gepen allitsuk be az ATM felu:let:

 A-gep# ifconfig hatm0 192.168.173.1 up
 B-gep# ifconfig hatm0 192.168.173.2 up
 C-gep# ifconfig hatm0 192.168.173.3 up
 D-gep# ifconfig hatm0 192.168.173.4 up

   Ha feltetelezzu:k, hogy minden gepen a hatm0 az ATM felu:let neve.
   Most pedig az A-gep-en allitsuk be az allando csatornakat. (Itt
   most feltesszu:k, hogy az ATM switch-eken mindezt mar elvegeztu:k.
   A switch keziko:nyveben erro"l reszletesebb leirast is
   talalhatunk.)

 A-gep# atmconfig natm add 192.168.173.2 hatm0 0 100 llc/snap ubr
 A-gep# atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr
 A-gep# atmconfig natm add 192.168.173.4 hatm0 0 102 llc/snap ubr

 B-gep# atmconfig natm add 192.168.173.1 hatm0 0 100 llc/snap ubr
 B-gep# atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr
 B-gep# atmconfig natm add 192.168.173.4 hatm0 0 104 llc/snap ubr

 C-gep# atmconfig natm add 192.168.173.1 hatm0 0 101 llc/snap ubr
 C-gep# atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr
 C-gep# atmconfig natm add 192.168.173.4 hatm0 0 105 llc/snap ubr

 D-gep# atmconfig natm add 192.168.173.1 hatm0 0 102 llc/snap ubr
 D-gep# atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr
 D-gep# atmconfig natm add 192.168.173.3 hatm0 0 105 llc/snap ubr

   Termeszetesen nem csak UBR hasznalhato, hanem minden mas olyan
   forgalmazasi beallitas, amit az ATM kartyaink ismernek. Itt most a
   forgalmi beallitas nevet a hozzatartozo konkret parameterek
   ko:vetik. Az atmconfig(8) segedprogram hasznalatahoz igy
   kerhetu:nk segitseget:

 # atmconfig help natm add

   Olvassuk el az atmconfig(8) man oldalat.

   Ugyanez a beallitas az /etc/rc.conf allomany hasznalataval is
   elvegezheto". Az A-gep eseteben mindez igy nezne ki:

 network_interfaces="lo0 hatm0"
 ifconfig_hatm0="inet 192.168.173.1 up"
 natm_static_routes="B-gep C-gep D-gep"
 route_B-gep="192.168.173.2 hatm0 0 100 llc/snap ubr"
 route_C-gep="192.168.173.3 hatm0 0 101 llc/snap ubr"
 route_D-gep="192.168.173.4 hatm0 0 102 llc/snap ubr"

   A CLIP utvonalak pillanatnyi allapota igy kerdezheto" le:

 A-gep# atmconfig natm show

     --------------------------------------------------------------

31.13. A Ko:zo:s cim redundancia protokoll (CARP)

   Irta: Tom Rhodes.

   A Ko:zo:s cim redundancia protokoll (Common Address Redundancy
   Protocol, avagy CARP) segitsegevel to:bb gep kepes egyazon
   IP-cimen osztozni. Bizonyos konfiguraciokban ez a terheles
   elosztasara (terheles-kiegyenlitesre) vagy a rendelkezesre allas
   no:velesere (hibatu"resre) alkalmazhato. A benne szereplo" gepek
   akar eltero" IP-cimmel is rendelkezhetnek, ahogy azt majd a
   peldaban is lathatjuk.

   A CARP tamogatasanak engedelyezesehez a FreeBSD rendszermagjat a
   ko:vetkezo" beallitassal kell ujraforditanunk:

 device  carp

   A CARP altal biztositott leheto"segek ezutan mar elerheto"ek, es
   szamos sysctl valtozon keresztu:l allithatoak:

              Valtozo                           Leiras                
                                  A beerkezo" CARP csomagok           
   net.inet.carp.allow            elfogadasa. Alapertelmezes szerint  
                                  engedelyezett.                      
                                  Ezzel a beallitassal az adott gepen 
                                  az o:sszes CARP felu:let leall, ha  
   net.inet.carp.preempt          ko:zu:lu:k barmelyik is             
                                  mu"ko:deskeptelenne valik.          
                                  Alapertelmezes szerint tiltott.     
                                  A 0 ertekkel kikapcsoljuk a         
                                  naplozast. Az 1 ertekkel a rossz    
                                  CARP csomagok naplozasat            
   net.inet.carp.log              engedelyezzu:k. Az etto"l nagyobb   
                                  ertekek eseten pedig a CARP         
                                  felu:letek valtozasait naplozzuk.   
                                  Az alapertelmezett erteke az 1.     
                                  Az ARP protokoll segitsegevel       
                                  probalja meg a helyi halozati       
   net.inet.carp.arpbalance       forgalmat mentesiteni a             
                                  terhelesto"l. Alapertelmezes        
                                  szerint tiltott.                    
                                  Ez a valtozo irasvedett, es a       
                                  megszakitas elnyomasanak allapotat  
                                  mutatja. A megszakitas elnyomhato,  
   net.inet.carp.suppress_preempt ha a felu:let egyik linkje nem      
                                  mu"ko:dik. A 0 ertek arra utal,     
                                  hogy a megszakitast nem nyomtak el. 
                                  Minden problema no:veli ennek a     
                                  valtozonak az erteket.              

   A CARP eszko:zo:k maguk az ifconfig paranccsal keszitheto"ek el:

 # ifconfig carp0 create

   Egy valos ko:rnyezetben az ilyen felu:leteknek egy VHID neven
   ismert egyedi azonositoval kell rendelkezniu:k. Ez a VHID vagy mas
   neven a virtualis gepazonosito (azaz Virtual Host Identification)
   fogja a gepu:nket a halozat to:bbi elemeto"l megku:lo:nbo:ztetni.

     --------------------------------------------------------------

  31.13.1. A CARP felhasznalasa a rendelkezesre allas javitasaban

   A CARP hasznalatanak egyik modja, ahogy arra mar korabban is
   utaltunk, a szerverek rendelkezesre allasanak feljavitasa. Ebben a
   peldaban harom geppel fogunk hibatu"rest biztositani, melyik
   mindegyike egyedi IP-cimmel rendelkezik es ugyanazt a webes
   tartalmat szolgaltatjak. A gepeket egy Round Robin rendszeru"
   (ko:rbejaro) nevfeloldassal egyu:tt hasznaljuk. A tartalek
   gepu:nknek lesz meg tovabbi ket CARP felu:lete, ku:lo:n a szerver
   IP-cimeihez tartozo egyes webes tartalmakhoz. Amikor valami
   meghibasodik, a tartalek szerver atveszi a meghibasodott gep
   IP-cimet. Ilyenkor a hiba teljesen eszrevetlen marad a
   felhasznalok szamara. A tartalek szerveren a to:bbi szerverrel
   egyezo" tartalomnak es szolgaltatasoknak kell megjelennie, hogy
   barmikor at tudja to"lu:k venni a forgalmat.

   A halozati neveikto"l es a virtualis azonositoiktol eltekintve a
   ket gepet ugyanugy kell beallitani. Ebben a peldaban a gepeket
   most az a-gep.minta.org es b-gep.minta.org nevekkel lattuk el.
   Elo"szo:r is a CARP beallitasahoz el kell helyeznu:nk a megfelelo"
   hivatkozasokat az rc.conf allomanyban. Az a-gep.minta.org eseteben
   az rc.conf allomany a ko:vetkezo" sorokat tartalmazza:

 hostname="a-gep.minta.org"
 ifconfig_fxp0="inet 192.168.1.3 netmask 255.255.255.0"
 cloned_interfaces="carp0"
 ifconfig_carp0="vhid 1 pass testpass 192.168.1.50/24"

   Miko:zben a b-gep.minta.org az rc.conf allomanyaban ezeket adjuk
   meg:

 hostname="b-gep.minta.org"
 ifconfig_fxp0="inet 192.168.1.4 netmask 255.255.255.0"
 cloned_interfaces="carp0"
 ifconfig_carp0="vhid 2 pass testpass 192.168.1.51/24"

     Megjegyzes: Nagyon fontos, hogy az ifconfig parancs pass
     parameterevel megadott jelszavak megegyezzenek. A carp
     eszko:zo:k csak a megfelelo" jelszot birtoklo gepeket fogadjak
     el. A virtualis gepazonositonak azonban minden esetben el kell
     ternie.

   A harmadik, szolgaltato.minta.org cimmel rendelkezo" gepet fogjuk
   felkesziteni az elo"bbi gepek meghibasodasara felkesziteni. Ennek
   a gepnek ket carp eszko:zre lesz szu:ksege, melyek az egyes
   gepeket kezelik. Az ehhez illeszkedo" sorok valahogy igy fognak
   kinezni az rc.conf allomanyban:

 hostname="szolgaltato.minta.org"
 ifconfig_fxp0="inet 192.168.1.5 netmask 255.255.255.0"
 cloned_interfaces="carp0 carp1"
 ifconfig_carp0="vhid 1 advskew 100 pass testpass 192.168.1.50/24"
 ifconfig_carp1="vhid 2 advskew 100 pass testpass 192.168.1.51/24"

   Ket carp eszko:z hasznalataval a szolgaltato.minta.org kepes
   eszlelni es atvenni barmelyik olyan gep IP-cimet, amely nem
   valaszol.

     Megjegyzes: Az alap FreeBSD rendszermag hasznalata eseten
     elo"fordulhat, hogy a megszakitas (a "preemption" opcio)
     engedelyezett. Amennyiben igy lenne, a szolgaltato.minta.org nem
     fogja minden esetben fogja rendesen visszaadni az IP-cimet az
     eredeti tulajdonosanak. Ilyenkor a rendszergazdanak kell ezt
     manualisan megtennie. Tehat a ko:vetkezo" parancsot kell kiadnia
     a szolgaltato.minta.org gepen:

 # ifconfig carp0 down && ifconfig carp0 up

     Ezt az adott gephez tartozo carp felu:lettel kell megcsinalni.

   Innento"l a CARP mar teljesen engedelyezheto" es keszen all a
   tesztelesre. A teszteleshez vagy a halozati rendszert kell
   ujrainditani, vagy a gepeket.

   Tovabbi informaciokat a carp(4) man oldalan talalhatunk.

                              V. Fu:ggelek

   Tartalom

   A. A FreeBSD beszerzese

   B. Irodalomjegyzek

   C. Forrasok az interneten

   D. PGP-kulcsok

     --------------------------------------------------------------

                   Fu:ggelek A. A FreeBSD beszerzese

A.1. CD es DVD kiadok

  A.1.1. Kiskereskedelmi dobozos termekek

   A FreeBSD beszerezheto" szamos kiskereskedo"to"l dobozos termek
   formajaban is (FreeBSD CD-k, egyeb szoftverek es nyomtatott
   dokumentacio):

     *     CompUSA
           WWW: http://www.compusa.com/
         

     *     Frys Electronics
           WWW: http://www.frys.com/
         

     --------------------------------------------------------------

  A.1.2. CD- es DVD-keszletek

   FreeBSD CD- es DVD-keszletek rengeteg helyro"l rendelheto"ek:

     *   FreeBSD Mall, Inc.
         700 Harvest Park Ste F
         Brentwood, CA  94513
         Egyesu:lt Allamok
         Telefon: +1 925 240-6652
         Fax: +1 925 674-0821
         e-mail: <info@freebsdmall.com>
         WWW: http://www.freebsdmall.com/

     *   Dr. Hinner EDV
         St. Augustinus-Str. 10
         D-81825 Mu:nchen
         Nemetorszag
         Telefon: (089) 428 419
         WWW: http://www.hinner.de/linux/freebsd.html

     *   Ikarios
         22-24 rue Voltaire
         92000 Nanterre
         Franciaorszag
         WWW: http://ikarios.com/form/#freebsd

     *   JMC Software
         Irorszag
         Telefon: 353 1 6291282
         WWW: http://www.thelinuxmall.com

     *   The Linux Emporium
         Hilliard House, Lester Way
         Wallingford
         OX10 9TA
         Egyesu:lt Kiralysag
         Telefon: +44 1491 837010
         Fax: +44 1491 837016
         WWW: http://www.linuxemporium.co.uk/products/bsd/

     *   Linux+ DVD Magazine
         Lewartowskiego 6
         Warsaw
         00-190
         Lengyelorszag
         Telefon: +48 22 860 18 18
         e-mail: <editors@lpmagazine.org>
         WWW: http://www.lpmagazine.org/

     *   Linux System Labs Australia
         21 Ray Drive
         Balwyn North
         VIC - 3104
         Ausztralia
         Telefon: +61 3 9857 5918
         Fax: +61 3 9857 8974
         WWW: http://www.lsl.com.au

     *   LinuxCenter.Ru
         Galernaya utca, 55
         Szentpetervar
         190000
         Oroszorszag
         Telefon: +7-812-3125208
         e-mail: <info@linuxcenter.ru>
         WWW: http://linuxcenter.ru/shop/freebsd

     --------------------------------------------------------------

  A.1.3. Terjeszto"k

   Ha viszonteladok vagyunk es szeretnenk CD-s FreeBSD termekeket
   forgalmazni, akkor az alabbi terjeszto"k valamelyikevel vegyu:k
   fel a kapcsolatot:

     *     Cylogistics
           809B Cuesta Dr., #2149
           Mountain View, CA 94040
           Egyesu:lt Allamok
           Telefon: +1 650 694-4949
           Fax: +1 650 694-4953
           e-mail: <sales@cylogistics.com>
           WWW: http://www.cylogistics.com/
         

     *     Ingram Micro
           1600 E. St. Andrew Place
           Santa Ana, CA  92705-4926
           Egyesu:lt Allamok
           Telefon: 1 (800) 456-8000
           WWW: http://www.ingrammicro.com/
         

     *     Kudzu, LLC
           7375 Washington Ave. S.
           Edina, MN 55439
           Egyesu:lt Allamok
           Telefon: +1 952 947-0822
           Fax: +1 952 947-0876
           e-mail: <sales@kudzuenterprises.com>
         

     *     LinuxCenter.Kz
           Uszty-Kamenogorszk
           Kazahsztan
           Telefon: +7-705-501-6001
           e-mail: <info@linuxcenter.kz>
           WWW: http://linuxcenter.kz/page.php?page=fr
         

     *     LinuxCenter.Ru
           Galernaya utca, 55
           Szentpetervar
           190000
           Oroszorszag
           Telefon: +7-812-3125208
           e-mail: <info@linuxcenter.ru>
           WWW: http://linuxcenter.ru/freebsd
         

     *     Navarre Corp
           7400 49th Ave South
           New Hope, MN 55428
           Egyesu:lt Allamok
           Telefon: +1 763 535-8333
           Fax: +1 763 535-0341
           WWW: http://www.navarre.com/
         

     --------------------------------------------------------------

A.2. FTP oldalak

   A FreeBSD hivatalos forrasai anonim FTP-n keresztu:l is
   elerheto"ek ku:lo:nfele tu:kro:zesekro"l. Az
   ftp://ftp.FreeBSD.org/pub/FreeBSD/ oldal ugyan jo mino"segu"
   kapcsolattal rendelkezik es rengeteg felhasznalot is enged
   egyideju"leg kapcsolodni, azonban valoszinu"leg jobban jarunk, ha
   egy "hozzank ko:zelebbi" tu:kro:zest valasztunk (ku:lo:no:sen
   abban az esetben, amikor mi magunk is egy tu:kro:zest akarunk
   kesziteni).

   A FreeBSD tu:kro:zesek adatbazisaban az itt megtalalhatonal sokkal
   pontosabb leltart kaphatunk az elerheto" tu:kro:zesekro"l, mivel
   ko:zvetlenu:l a nevfeloldas segitsegevel allapitja meg a
   szu:kseges adatokat es nem egy ro:gzitett listat tarol.

   Emellett az alabbi tu:kro:zesekro"l a FreeBSD elerheto" anonim
   FTP-n keresztu:l is. Amennyiben az anonim FTP hasznalata mellett
   do:ntenenk, igyekezzu:nk a hozzank legko:zelebb levo" szervert
   hasznalni. Az "Elso"dleges tu:kro:zesekkent" feltu:ntetett oldalak
   altalaban a teljes FreeBSD archivumot tartalmazzak (az o:sszes
   jelenleg elerheto" valtozatot az o:sszes architekturara), de a
   ko:rnyeku:nko:n vagy orszagunkban elhelyezkedo"
   tu:ko:rszerverekro"l to:bbnyire gyorsabban tudunk majd leto:lteni.
   A regionalis oldalakon gyakorta csak a nepszeru"bb architekturakon
   futo nepszeru"bb valtozatokat talaljuk meg, nem a teljes FreeBSD
   archivumot. Minden szerver elerheto" anonim FTP-vel, de ko:zu:lu:k
   nehany meg tovabbi mas modszereket is tamogat. Az egyes oldalak
   altal ismert konkret modszereket a nevu:k utan zarojelben
   ko:zu:lju:k.

   Ko:zponti szerverek, Elso"dleges tu:kro:zesek, Amerikai Egyesu:lt
   Allamok, Argentina, Ausztralia, Ausztria, Brazilia, Bulgaria, Cseh
   Ko:ztarsasag, Dania, Del-Afrika, Egyesu:lt Kiralysag, Esztorszag,
   Finnorszag, Franciaorszag, Go:ro:gorszag, Hollandia, Hongkong,
   Horvatorszag, Indonezia, Irorszag, Izland, Izrael, Japan, Kanada,
   Kina, Korea, Lengyelorszag, Lettorszag, Litvania, Magyarorszag,
   Nemetorszag, Norvegia, Olaszorszag, O:rmenyorszag, Oroszorszag,
   Portugalia, Romania, Spanyolorszag, Svajc, Svedorszag,
   Szaud-Arabia, Szingapur, Szlovak Ko:ztarsasag, Szlovenia, Tajvan,
   To:ro:korszag, Uj-Zeland, Ukrajna.

   (Datum: 2009/05/21 21:02:58 UTC)

   Ko:zponti szerverek

              * ftp://ftp.FreeBSD.org/pub/FreeBSD/ (ftp)

   Elso"dleges tu:kro:zesek

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <mirror-admin@FreeBSD.org>.

              * ftp://ftp1.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp7.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp8.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp9.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp10.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp11.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp12.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp13.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp14.FreeBSD.org/pub/FreeBSD/ (ftp)

   Amerikai Egyesu:lt Allamok

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@us.FreeBSD.org>.

              * ftp://ftp1.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.us.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6)

              * ftp://ftp5.us.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp6.us.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp7.us.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp8.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp9.us.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp10.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp11.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp12.us.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp13.us.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp14.us.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp15.us.FreeBSD.org/pub/FreeBSD/ (ftp)

   Argentina

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ar.FreeBSD.org>.

              * ftp://ftp.ar.FreeBSD.org/pub/FreeBSD/ (ftp)

   Ausztralia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@au.FreeBSD.org>.

              * ftp://ftp.au.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.au.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.au.FreeBSD.org/pub/FreeBSD/ (ftp)

   Ausztria

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@at.FreeBSD.org>.

              * ftp://ftp.at.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp2.at.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

   Brazilia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@br.FreeBSD.org>.

              * ftp://ftp.br.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp2.br.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.br.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp4.br.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.br.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.br.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp7.br.FreeBSD.org/pub/FreeBSD/ (ftp)

   Bulgaria

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@bg.FreeBSD.org>.

              * ftp://ftp.bg.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp2.bg.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

   Cseh Ko:ztarsasag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@cz.FreeBSD.org>.

              * ftp://ftp.cz.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp2.cz.FreeBSD.org/pub/FreeBSD/ (ftp / http)

   Dania

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@dk.FreeBSD.org>.

              * ftp://ftp.dk.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6)

              * ftp://ftp2.dk.FreeBSD.org/pub/FreeBSD/ (ftp)

   Del-Afrika

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@za.FreeBSD.org>.

              * ftp://ftp.za.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.za.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.za.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.za.FreeBSD.org/pub/FreeBSD/ (ftp)

   Egyesu:lt Kiralysag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@uk.FreeBSD.org>.

              * ftp://ftp.uk.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp3.uk.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.uk.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.uk.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.uk.FreeBSD.org/pub/FreeBSD/ (ftp)

   Esztorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ee.FreeBSD.org>.

              * ftp://ftp.ee.FreeBSD.org/pub/FreeBSD/ (ftp)

   Finnorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@fi.FreeBSD.org>.

              * ftp://ftp.fi.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.fi.FreeBSD.org/pub/FreeBSD/ (ftp)

   Franciaorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@fr.FreeBSD.org>.

              * ftp://ftp.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp1.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp7.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp8.fr.FreeBSD.org/pub/FreeBSD/ (ftp)

   Go:ro:gorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@gr.FreeBSD.org>.

              * ftp://ftp.gr.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.gr.FreeBSD.org/pub/FreeBSD/ (ftp)

   Hollandia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@nl.FreeBSD.org>.

              * ftp://ftp.nl.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp2.nl.FreeBSD.org/pub/FreeBSD/ (ftp)

   Hongkong

              * ftp://ftp.hk.FreeBSD.org/pub/FreeBSD/ (ftp)

   Horvatorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@hr.FreeBSD.org>.

              * ftp://ftp.hr.FreeBSD.org/pub/FreeBSD/ (ftp)

   Indonezia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@id.FreeBSD.org>.

              * ftp://ftp.id.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

   Irorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ie.FreeBSD.org>.

              * ftp://ftp.ie.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.ie.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp3.ie.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

   Izland

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@is.FreeBSD.org>.

              * ftp://ftp.is.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

   Izrael

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@il.FreeBSD.org>.

              * ftp://ftp.il.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6)

   Japan

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@jp.FreeBSD.org>.

              * ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp7.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp8.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp9.jp.FreeBSD.org/pub/FreeBSD/ (ftp)

   Kanada

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ca.FreeBSD.org>.

              * ftp://ftp.ca.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.ca.FreeBSD.org/ (ftp)

              * ftp://ftp3.ca.FreeBSD.org/pub/FreeBSD/ (ftp)

   Kina

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@cn.FreeBSD.org>.

              * ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.cn.FreeBSD.org/pub/FreeBSD/ (ftp)

   Korea

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@kr.FreeBSD.org>.

              * ftp://ftp.kr.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp2.kr.FreeBSD.org/pub/FreeBSD/ (ftp)

   Lengyelorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@pl.FreeBSD.org>.

              * ftp://ftp.pl.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.pl.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.pl.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.pl.FreeBSD.org/pub/FreeBSD/ (ftp)

   Lettorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@lv.FreeBSD.org>.

              * ftp://ftp.lv.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp2.lv.FreeBSD.org/pub/FreeBSD/ (ftp)

   Litvania

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@lt.FreeBSD.org>.

              * ftp://ftp.lt.FreeBSD.org/pub/FreeBSD/ (ftp)

   Magyarorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@hu.FreeBSD.org>.

              * ftp://ftp.hu.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp2.hu.FreeBSD.org/pub/FreeBSD/ (ftp)

   Nemetorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <de-bsd-hubs@de.FreeBSD.org >.

              * ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.de.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp3.de.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.de.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp5.de.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.de.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp7.de.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp8.de.FreeBSD.org/pub/FreeBSD/ (ftp)

   Norvegia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@no.FreeBSD.org>.

              * ftp://ftp.no.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

              * ftp://ftp3.no.FreeBSD.org/pub/FreeBSD/ (ftp)

   Olaszorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@it.FreeBSD.org>.

              * ftp://ftp.it.FreeBSD.org/pub/FreeBSD/ (ftp)

   O:rmenyorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@am.FreeBSD.org>.

              * ftp://ftp1.am.FreeBSD.org/pub/FreeBSD/ (ftp)

   Oroszorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ru.FreeBSD.org>.

              * ftp://ftp.ru.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp2.ru.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp3.ru.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.ru.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.ru.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp6.ru.FreeBSD.org/pub/FreeBSD/ (ftp)

   Portugalia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@pt.FreeBSD.org>.

              * ftp://ftp.pt.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.pt.FreeBSD.org/pub/freebsd/ (ftp)

              * ftp://ftp4.pt.FreeBSD.org/pub/ISO/FreeBSD/ (ftp)

   Romania

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ro.FreeBSD.org>.

              * ftp://ftp.ro.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp1.ro.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6)

   Spanyolorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@es.FreeBSD.org>.

              * ftp://ftp.es.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.es.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.es.FreeBSD.org/pub/FreeBSD/ (ftp)

   Svajc

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@ch.FreeBSD.org>.

              * ftp://ftp.ch.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.ch.FreeBSD.org/pub/FreeBSD/ (ftp)

   Svedorszag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@se.FreeBSD.org>.

              * ftp://ftp.se.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.se.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp3.se.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.se.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

   Szaud-Arabia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <ftpadmin@isu.net.sa>.

              * ftp://ftp.isu.net.sa/pub/mirrors/ftp.freebsd.org/
                (ftp)

   Szingapur

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@sg.FreeBSD.org>.

              * ftp://ftp.sg.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

   Szlovak Ko:ztarsasag

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@sk.FreeBSD.org>.

              * ftp://ftp.sk.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 /
                http / httpv6 / rsync / rsyncv6)

   Szlovenia

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@si.FreeBSD.org>.

              * ftp://ftp.si.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp2.si.FreeBSD.org/pub/FreeBSD/ (ftp)

   Tajvan

           Barmilyen gond eseten a ko:vetkezo" cimet kell ertesiteni:
           <hostmaster@tw.FreeBSD.org>.

              * ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 /
                rsync / rsyncv6)

              * ftp://ftp2.tw.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 /
                http / httpv6 / rsync / rsyncv6)

              * ftp://ftp3.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp5.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp6.tw.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp7.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp8.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp9.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp10.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp11.tw.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp12.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp13.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp14.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp15.tw.FreeBSD.org/pub/FreeBSD/ (ftp)

   To:ro:korszag

              * ftp://ftp.tr.FreeBSD.org/pub/FreeBSD/ (ftp / http /
                rsync)

              * ftp://ftp2.tr.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)

   Uj-Zeland

              * ftp://ftp.nz.FreeBSD.org/pub/FreeBSD/ (ftp)

   Ukrajna

              * ftp://ftp.ua.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp2.ua.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp7.ua.FreeBSD.org/pub/FreeBSD/ (ftp)

              * ftp://ftp8.ua.FreeBSD.org/pub/FreeBSD/ (ftp / http)

              * ftp://ftp11.ua.FreeBSD.org/pub/FreeBSD/ (ftp)

     --------------------------------------------------------------

A.3. BitTorrent

   Az egyes kiadasokhoz tartozo alap CD-keszletek BitTorrent
   segitsegevel is elerheto"ek. A lemezek kepeire hivatkozo torrent
   allomanyokat a http://torrents.freebsd.org:8080 cimro"l
   to:lthetju:k le.

   A BitTorrent kliens telepitheto" a net-p2p/py-bittorrent portbol
   vagy csomagbol.

   Miutan sikeresen leto:lto:ttu:k BitTorrenten keresztu:l a
   lemezkepeket, a 18.6.3 Szakasz nyujthat segitseget abban, hogy
   kell ezeket lemezre irni.

     --------------------------------------------------------------

A.4. Anonim CVS

  A.4.1. Bevezetes

   Az anonim CVS (vagy mas neven anoncvs) a FreeBSD-hez mellekelt
   CVS-es segedprogramok altal nyujtott olyan leheto"seg, amivel
   tavoli CVS repositorykkal tudunk szinkronizalni. To:bb mas dolog
   mellett leheto"ve teszi a FreeBSD felhasznaloi szamara, hogy
   kiemelt jogosultsagok nelku:l kepesek legyenek olvasassal
   kapcsolatos CVS mu"veleteket vegrehajtani a FreeBSD Projekt
   hivatalos anoncvs szerverein. A hasznalatahoz egyszeru"en csak a
   kivalasztott anoncvs szervert kell beallitani a CVSROOT
   ko:rnyezeti valtozo ertekenek, ahol aztan a cvs login parancsnak a
   szerver altal ismert "anoncvs" jelszot kell megadni. Ezutan a
   cvs(1) paranccsal a to:bbi CVS szerverhez hasonloan leheto"segu:nk
   nyilik hozzaferni.

     Megjegyzes: A cvs login parancs a bejelentkezesekhez szu:kseges
     jelszavakat a HOME ko:nyvtarunkban levo" .cvspass allomanyban
     tarolja. Ha ez az allomany nem letezik, akkor a cvs login elso"
     hasznalatakor hibat kapunk. Ilyenkor csak hozzunk letre egy
     u:res .cvspass allomanyt, majd probalkozzunk ujra.

   Habar azt mondhatnank, hogy a CVSup es az anoncvs lenyegeben
   egyazon feladatot oldjak meg, mind a ket esetben leteznek olyan
   kompromisszumok, amelyek befolyasolhatjak a felhasznalo
   valasztasat a ket szinkronizacios modszer ko:zo:tt. Diohejban ezt
   ugy tudnank o:sszefoglalni, hogy a CVSup a halozati ero"forrasokat
   hatekonyabban kihasznalja es ketteju:k ko:zu:l ez a fejlettebb,
   azonban ennek meg kell fizetnu:nk az arat. A CVSup hasznalatahoz
   elo"szo:r ugyanis telepitenu:nk kell es be kell allitanunk egy
   specialis klienst, illetve az adatokat a CVSup altal
   gyu"jtemenyeknek (collection) nevezett, viszonylag nagy meretu"
   egyesegekben erhetju:k el.

   Ezzel szemben az anoncvs hasznalata soran a megfelelo" CVS modul
   nevenek felhasznalasaval tetszo"legesen megvizsgalhatunk o:nallo
   allomanyokat vagy akar programokat (mint az ls vagy a grep).
   Termeszetesen az anoncvs segitsegevel csupan az olvasast igenylo"
   CVS mu"veleteket vegezhetju:k el, ezert ha a FreeBSD Projekt
   keretein belu:l fejleszteni is szeretnenk, akkor inkabb erdemes a
   CVSup alkalmazast valasztani.

     --------------------------------------------------------------

  A.4.2. Az anonim CVS hasznalata

   A cvs(1) parancsot nagyon ko:nnyu" beallitani az anonim CVS
   repositoryk hasznalatahoz, hiszen mindo:ssze annyit kell tennu:nk,
   hogy a CVSROOT ko:rnyezeti valtozo ertekenek megadjuk a FreeBSD
   Projekt valamelyik anoncvs szerveret. Ezen sorok irasanak
   pillanataban a ko:vetkezo" szerverek erheto"ek el:

     * Franciaorszag:
       :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver (a
       jelszo "anoncvs"), ssh (nincs jelszo))

     * Japan: :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (a
       cvs login hasznalatanal a jelszo "anoncvs".)

     * Tajvan: :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
       (pserver (a cvs login hasznalataval tetszo"leges jelszo
       megadhato), ssh (nincs jelszo))

 SSH2 HostKey: 1024 e8:3b:29:7b:ca:9f:ac:e9:45:cb:c8:17:ae:9b:eb:55 /etc/ssh/ssh_host_dsa_key.pub

     * Egyesu:lt Allamok:
       freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (csak ssh --
       nincs jelszo)

 SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
 SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub

     * Egyesu:lt Allamok: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs
       (csak ssh2 -- nincs jelszo)

 SSH2 HostKey: 2048 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62 /etc/ssh/ssh_host_dsa_key.pub

   Mivel a CVS hasznalataval "kikerhetju:k" (check out)
   tulajdonkeppen a FreeBSD forrasainak akarmelyik eddigi (vagy majd
   ezutan keletkezo") valtozatat, erdemes megismerkednu:nk a cvs(1)
   altal alkalmazott revizio (revision) (az -r opcioval allithato)
   fogalmaval es a FreeBSD Projekt repositoryjain belu:l
   engedelyezett ertekeivel.

   Cimkeket (tag) ket esetben hasznalhatunk: a reviziok es az agak
   eseten. A revizios cimkek mindig egy adott reviziora hivatkoznak,
   ami allandoan ugyanazt jelenti. Ezzel szemben az agak cimkei a
   fejlesztes adott iranyu menetenek az adott pillanatban legfrissebb
   reviziojat hivatkozzak. Mivel az agak cimkei nem egy adott
   reviziora vonatkoznak, ezert elmondhatjuk roluk, hogy naponta
   valtozik a jelentesu:k.

   Az A.7 Szakasz tartalmazza a felhasznalok szamara fontos revizios
   cimkeket. Ezek azonban nem igazak a Portgyu"jtemenyre, mivel a
   Portgyu"jtemenynek nincs egyszerre to:bb fejlesztesi iranya.

   Egy ag cimkejenek megadasaval altalaban az adott iranyhoz tartozo
   allomanyok legfrissebb valtozatat kapjuk meg. Ha viszont az
   allomanyok egy korabbi valtozatara lenne szu:ksegu:nk, akkor a -D
   datum opcio megadasaval meg tudjuk adni annak ido"pontjat. Erro"l
   reszletesebben a cvs(1) man oldalan olvashatunk.

     --------------------------------------------------------------

  A.4.3. Peldak

   Habar a tovabbhaladashoz mindenkeppen javasoljuk a cvs(1) man
   oldalanak reszletes attanulmanyozasat, mutatunk nehany gyors
   peldat az anonim CVS hasznalatanak to:mo:r illusztralasara:

   Pelda A-1. Valami (az ls(1)) kikerese a -CURRENT agbol

 % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
 % cvs login
 "Jelszokent" ezutan barmit megadhatunk.
 % cvs co ls
          

   Pelda A-2. Az src/ fa kikerese SSH-n keresztu:l

 % cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
 The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
 DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
 Are you sure you want to continue connecting (yes/no)? yes
 Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.

   Pelda A-3. Az ls(1) 6-STABLE agban szereplo" valtozatanak kikerese

 % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
 % cvs login
 Amikor keri,  "jelszokent" barmit megadhatunk.
 % cvs co -rRELENG_6 ls
          

   Pelda A-4. Az ls(1) valtozasainak (Unified Diff formatumu)
   listazasa

 % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
 % cvs login
 Itt "jelszokent" barmit megadhatunk.
 % cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
          

   Pelda A-5. A hasznalhato modulok nevenek kideritese

 % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
 % cvs login
 Ezutan  "jelszokent" barmit megadhatunk.
 % cvs co modules
 % more modules/modules
          

     --------------------------------------------------------------

  A.4.4. Egyeb helyek

   A ko:vetkezo" helyeken talalhatunk meg hasznos informaciokat a CVS
   hasznalatarol:

     * A CVS bemutatasa (irta: Cal Poly).

     * A CVS honlapja, a CVS fejlesztesevel es alkalmazasaval
       foglalkozo ko:zo:sseg oldala.

     * A CVSweb a FreeBSD Projekt altal hasznalt CVS rendszerenek
       webes felu:lete.

     --------------------------------------------------------------

A.5. A CTM hasznalata

   A CTM hasznalatava a tavoli ko:nyvtarakat tudunk egy ko:zponti
   valtozattal szinkronban tartani. Eredetileg a FreeBSD forrasaihoz
   fejlesztettek ki, de ido"vel masok mas celokra is alkalmasnak
   talalhatjak majd. Az elteresek (deltak) feldolgozasaval
   kapcsolatban keveske dokumentacio all rendelkezesre, ezert a
   ctm-users levelezesi listat erdemes felkeresni, ha to:bbet
   szeretnenk megtudni a CTM egyeb celu alkalmazasairol.

     --------------------------------------------------------------

  A.5.1. Miert hasznalnank a CTM-et?

   A CTM segitsegevel a FreeBSD forrasainak helyi masolatat hozhatjuk
   letre. A forrasok to:bb ku:lo:nbo:zo" "kivitelben" is
   hozzaferheto"ek. A CTM minden esetben kepes eleget tenni az
   igenyeinknek, akar az egesz CVS fat, akar annak egy reszet
   kivanjuk csak figyelemmel ko:vetni. Ha netalan FreeBSD fejleszto"k
   lennenk, es hijan vagyunk vagy eppen gyenge TCP/IP kapcsolattal
   rendelkezu:nk, esetleg egyszeru"en csak automatikusan ertesu:lni
   szeretnenk a valtozasokrol, a CTM-et neku:nk talaltak ki. A
   leggyorsabban fejlo"do" agakbol is naponta legfeljebb harom deltat
   fogunk kapni, azonban erdemes megfontolni a valtozasok automatikus
   elku:ldeset levelben. A szu:kseges frissitesek meretet mindig
   igyekszu:nk minimalizalni. Ez egyebkent altalaban alig 5 KB, de
   neha (tizbo"l egyszer) elo"fordul, hogy 10 es 50 KB ko:zo:tt van,
   es ido"nkent 100 KB vagy afeletti mennyisegu" frissites is
   erkezhet.

   Amikor a fejleszto"k altal hasznalt forrasokat to:ltju:k le,
   magunknak kell gondoskodnunk a menet ko:zben felmeru:lo"
   ku:lo:nbo:zo" problemak megoldasarol. Ez kivaltkepp igaz abban az
   esetben, amikor az aktualis, vagy hivatalos neven "CURRENT" agat
   ko:vetju:k. Mielo"tt azonban egy ilyenbe belevagnank, erdemes
   fellapozni a FreeBSD legfrissebb valtozatanak hasznalatarol szolo
   fejezetet.

     --------------------------------------------------------------

  A.5.2. Mire van szu:ksegu:nk a CTM hasznalatahoz?

   A mu"ko:deshez ket komponens szu:ksegeltetik: a CTM
   kliensprogramja es hozza a kezdeti deltak (amivel majd leto:ltju:k
   a "CURRENT" forrasait).

   A CTM program mar a 2.0 kiadastol kezdve a FreeBSD resze, es a
   forrasok ko:zo:tt a /usr/src/usr.sbin/ctm ko:nyvtarban talaljuk
   meg (amennyiben felraktuk).

   A CTM mu"ko:desehez kello" "deltakat" ket modon, FTP-n vagy
   e-mailen keresztu:l szerezhetju:k be. Ha el tudunk erni interneten
   levo" FTP oldalakat, akkor az alabbi FTP helyeken talalunk a
   CTM-hez hasznalhato adatokat:

   ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/

   valamint lasd a tu:kro:zeseket.

   FTP-n keresztu:l lepju:nk be a ko:nyvtarba, to:ltsu:k le a README
   nevu" allomanyt es ko:vessu:k a benne szereplo" utasitasokat.

   Ha viszont e-mailen keresztu:l akarjuk megszerezni a deltakat:

   Iratkozzunk fel a CTM terjesztesi listainak egyikere. A
   ctm-cvs-cur lista az egesz CVS-fat, mig a ctm-src-cur a fo"
   fejlesztesi agat teszi elerheto"ve. A ctm-src-4 a 4.X kiadasaihoz
   agakat tartalmazza, es igy tovabb. (Ha nem tudjuk, hogyan kell
   feliratkozni egy levelezesi listara, akkor kattintsunk a lista
   nevere vagy ko:vessu:k a http://lists.FreeBSD.org/mailman/listinfo
   linket, majd kattintsunk arra a listara, ahova fel akarunk
   iratkozni. Ezen az oldalon az o:sszes, a feliratkozashoz
   nelku:lo:zhetetlen informacionak szerepelnie kell.)

   Miutan elkezdenek megerkezni a CTM-frissiteseket tartalmazo
   levelek, a tartalmukat a ctm_rmail programmal tudjuk kicsomagolni
   es felhasznalni. Az /etc/aliases allomanyba akar ko:zvetlenu:l is
   beirhatjuk a ctm_rmail programot, es ezzel a o:nallositani tudjuk
   a levelben erkezo" frissitesek feldolgozasat. A ctm_rmail man
   oldalan olvashatjuk ennek reszleteit.

     Megjegyzes: Nem szamit, milyen modon jutunk hozza a CTM altal
     hasznalt deltakhoz, minden esetben fel kell iratkoznunk a
     ctm-announce levelezesi listara. Az elko:vetkezendo"kben ez lesz
     az egyetlen hely, ahova a CTM rendszer mu"ko:dtetesevel
     kapcsolatos bejelentesek beku:ldesre keru:lnek. A
     feliratkozashoz kattinsunk a fenti lista nevere es ko:vessu:k a
     mellette szereplo" utasitasokat.

     --------------------------------------------------------------

  A.5.3. A CTM elso" hasznalata

   Mielo"tt nekilatnank a CTM-hez tartozo deltak hasznalatanak,
   elo"szo:r el kell jutnunk egy kiindulasi ponthoz, ahonnan majd
   letre tudjuk hozni a rako:vetkezo" deltakat.

   Ehhez elso"kent vegyu:k szamba, pontosan mink is van. Altalaban
   mindenki egy "u:res" ko:nyvtarral kezd. Ilyenkor egy kezdeti
   "Empty" (mint "u:res") elnevezesu" deltaval tudjuk megkezdeni az
   CTM altal ismert fa szinkronizalasat. Erre a celra lesznek majd
   szinten alkalmasak a "megkezdett" deltak is, amelyek valamikor a
   CD-re fognak felkeru:lni.

   Mivel a fak maguk to:bb tiz megabyte-nyi meretu"ek, ezert erdemes
   inkabb valami keznel levo" eszko:zzel megkezdeni a folyamatot. Ha
   van -RELEASE verzioju CD-nk, akkor masoljuk le rola es bontsuk ki
   a kiindulaskent hasznalt forrasokat. Ezzel jelento"s mennyisegu"
   adat atvitelet takarithatjuk meg.

   A "kezdo"" deltakat ko:nnyen megismerju:k a szam utan X
   karakterrel levalasztott nevu:kro"l (peldaul
   src-cur.3210XEmpty.gz). Az X utan szereplo" megnevezes a kezdeti
   "kiindulas" (seed) fokanak felel meg. Az Empty egy u:res
   ko:nyvtarra utal. A szabalyok szerint az Empty allapotbol 100
   deltankent jo:n letre ujabb (kiindulasra alkalmas) alapvaltozat.
   Ezek azonban nagyon nagyok is lehetnek. A 70 vagy 80 megabyte-os
   gzippel csomagolt adatok gyakoriak az XEmpty deltak eseten.

   Miutan kivalasztottuk a szamunkra megfelelo" alapvaltozatot,
   szu:ksegu:nk lesz a to"le nagyobb sorszamu o:sszes deltara is.

     --------------------------------------------------------------

  A.5.4. A CTM hasznalata a hetko:znapokban

   A deltak felhasznalasahoz egyszeru"en csak ennyit kell tennu:nk:

 # cd /ahol/tarolni/akarjuk/az/adatokat
 # ctm -v -v /ahol/taroljuk/a/deltakat/src-xxx.*

   A CTM kepes ertelmezni a gzip altal csomagolt adatokat, ezert
   nincs szu:kseg a deltak elo"zetes kito:mo:ritesere, amivel
   tarhelyet tudunk sporolni.

   Hacsak nem tekinti to:keletesen biztonsagosnak az egesz
   folyamatot, akkor a CTM nem fog modositani a fan. A deltakat a CTM
   -c kapcsolojaval is elleno"rizhetju:k, aminek soran egyaltalan nem
   fog modosulni a forrasfa. Ekkor egyszeru"en csak elleno"rzi a
   deltak sertetlenseget es megnezi, hogy minden rendben zajlana-e az
   alkalmazasuk soran.

   A CTM-nek vannak meg tovabbi kapcsoloi is, melyekro"l bo"vebben a
   man oldalakbol es a forraskodokbol tajekozodhatunk.

   Most mar minden megvan, ami kellhet. Amikor kapunk egy ujabb
   deltat, a forrasaink frissitesehez csak futtassuk at a CTM-en.

   Ne to:ro:lju:k le azokat a deltakat, melyeket nehezen tudtunk
   leto:lteni. Helyette erdemes inkabb megtartani ezeket arra az
   esetre, ha valami rossz to:rtenne. Meg ha csak floppylemezek is
   allnak rendelkezesu:nkre, mindenkeppen masoljuk le ezeket az
   fdwrite paranccsal.

     --------------------------------------------------------------

  A.5.5. A sajat valtoztatasaink megtartasa

   Fejleszto"kent biztosan szeretnenk kiserletezni es allomanyokat
   megvaltoztatni a forrasfaban. A CTM a helyben elko:vetett
   valtoztatasokat csak korlatozottan tamogatja: az ize nevu"
   allomany megletenek vizsgalata elo"tt az ize.ctm allomanyt fogja
   keresni. Ha letezik, akkor a CTM az ize helyett ezen fog dolgozni.

   Ezzel a viselkedessel nyerju:k a sajat valtoztatasaink
   megtartasanak egyszeru" modjat: csak masoljuk le .ctm
   kiterjesztessel a modositani tervezett allomanyokat. Ezutan mar
   szabadon modosithatjuk a forrasokat, miko:zben a CTM a .ctm
   kiterjesztesu" allomanyokat folyamatosan szinkronban tartja.

     --------------------------------------------------------------

  A.5.6. A CTM egyeb erdekes beallitasai

    A.5.6.1. Deritsu:k ki pontosan miket is fog erinteni a frissites

   A CTM altal a forrasokon elvegzendo" valtoztatasok listajat az -l
   kapcsoloval kerdezhetju:k le.

   Ez akkor esik kezre, ha szeretnenk feljegyezni a beko:vetkezo"
   valtozasokat, vagy barmilyen modon elo"- vagy utofeldolgozni a
   modositott allomanyokat, esetleg szimplan elo"vigyazatosak akarunk
   lenni.

     --------------------------------------------------------------

    A.5.6.2. Biztonsagi masolat keszitese a frissites elo"tt

   Neha egyszeru"en csak szeretnenk az o:sszes erintett allomanyrol
   biztonsagi masolatot kesziteni a CTM altal elvegzett frissites
   elo"tt.

   A -B mentes-allomany beallitas megadasaval az adott CTM delta
   altal modositando o:sszes allomany tarolasra keru:l a
   mentes-allomany nevu" allomanyba.

     --------------------------------------------------------------

    A.5.6.3. A frissitheto" allomanyok korlatozasa

   Egyes esetekben erdeku:nkben allhat leszu"kiteni a CTM altal
   eszko:zo:lt frissitesek hatasko:ret, vagy egyszeru"en csak nehany
   allomany szinkronizalasara van szu:ksegu:nk.

   A CTM szamara feldolgozhato allomanyok listajat regularis
   kifejezes formajaban az -e es -x opciok menten hatarozhatjuk meg.

   Peldaul ha a lib/libc/Makefile allomany az o:sszegyu"jto:tt CTM
   deltak szerinti legfrissebb verziojahoz kivanunk hozzajutni, akkor
   futtassuk az alabbi parancsot:

 # cd /akarhova/ahova/ki/akarjuk/bontani/
 # ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*

   A CTM deltakban megadott minden egyes allomany eseten az -e az -x
   opciok a parancssorban to:rtent megadasuk sorrendjeben keru:lnek
   feldolgozasra. Egy allomanyt kizarolag csak akkor dolgoz fel a
   CTM, ha az az -e es -x opciok kiertekelese utan is indokolt.

     --------------------------------------------------------------

  A.5.7. Tovabbi tervek a CTM-mel kapcsolatban

   Rengeteg van:

     * Valamifele hitelesites bevezetese a CTM rendszerbe, amivel
       eszlelheto"ek a meghamisitott CTM-frissitesek.

     * A CTM beallitasainak letisztazasa, mivel elegge megteveszto"ek
       es nehezkesen hasznalhatoak.

     --------------------------------------------------------------

  A.5.8. Egyebek

   Leteznek deltak a portok gyu"jtemenyehez is, azonban meg nem
   mutatkozott tulzottan nagy erdeklo"des irantuk.

     --------------------------------------------------------------

  A.5.9. CTM tu:kro:zesek

   A CTM/FreeBSD anonim FTP-n keresztu:l elerheto" az alabbi
   tu:ko:roldalak valamelyikero"l. Amennyiben ezen a modon kivanjuk
   leto:lteni a CTM rendszerhez tartozo allomanyokat, elo"szo:r
   probalkozzunk a hozzank legko:zelebb levo" szerverrel.

   Ha barmilyen gond meru:lne fel, ertesitsu:k a ctm-users levelezesi
   listat.

   Kalifornia, Bay Area (hivatalos forras)

              * ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CTM/

   Del-Afrika (a korabbi deltak biztonsagi masolatai)

              * ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/

   Tajvan/R.O.C.

              * ftp://ctm.tw.FreeBSD.org/pub/FreeBSD/development/CTM/

              * ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/development/CTM/

              * ftp://ctm3.tw.FreeBSD.org/pub/FreeBSD/development/CTM/

   Ha nem talaltunk volna hozzank ko:zel eso" tu:kro:zest, vagy ha
   talalt tu:ko:r nem eleg friss, akkor probalkozzunk egy olyan
   kereso"motor hasznalataval, mint peldaul az alltheweb.

     --------------------------------------------------------------

A.6. A CVSup hasznalata

  A.6.1. Bevezetes

   A CVSup tavoli szervereken talalhato ko:zponti repositorykban
   levo" forrasfak terjesztesere es a rajtuk keresztu:li frissitesre
   alkalmas programcsomag. A FreeBSD forrasait egy CVS repositoryban
   tartjak karban Kaliforniaban egy fejleszteseket tarolo ko:zponti
   szamitogepen. A CVSup segitsegevel a FreeBSD felhasznaloi ko:nnyen
   szinkronban tudjak vele tartani a sajat forrasaikat.

   A CVSup az un. lehuzassal frissit. Ilyenkor a kliensek csak akkor
   kernek a szerverto"l frissiteseket, amikor szu:ksegu:k van ra,
   miko:zben a szerver passzivan varja a frissitesi kerelmeket. Ennek
   megfelelo"en tehat minden esetben a kliens kezdemenyezi a
   frissitest, a szerver pedig o:nmagatol sosem ku:ld ilyeneket
   keretlenu:l. A felhasznaloknak igy vagy maguknak kell meghivniuk a
   CVSup klienset, vagy a frissitesek rendszeres automatikus
   leto:ltesehez be kell allitaniuk a cron rendszerprogramot.

   A CVSup kifejezes ebben az irasmodban az egesz programcsomagra
   utal. Fo" alkotoreszei a a felhasznalo gepen futo cvsup nevu"
   kliens, es a FreeBSD tu:ko:roldalain futo cvsupd nevu" szerver.

   A FreeBSD dokumentaciojanak es levelezesi listainak fu:rkeszese
   soran rengeteg hivatkozast talalhatunk egy sup nevu" alkalmazasra.
   A sup a CVSup elo"dje volt, es hasonlo celokat szolgalt. A CVSup
   hasznalat tekinteteben nagyon hasonlit a sup-hoz, es ami azt
   illeti, a a sup konfiguracios allomanyaival visszafele
   kompatibilis formatumot hasznal. Mivel a CVSup sokkal gyorsabb es
   rugalmasabb, a supot mar nem hasznalja a FreeBSD Projekt.

     Megjegyzes: A csup a CVSup C nyelven ujrairt valtozata.
     Legnagyobb elo"nye, hogy gyorsabb es nincs szu:ksege a Modula-3
     nyelv futtato ko:rnyezetere, ezert azt nem kell a hasznalatahoz
     telepiteni. Raadasul, ha a FreeBSD 6.2 vagy annal keso"bbi
     valtozatat hasznaljuk, akkor minden tovabbi nelku:l a
     rendelkezesu:nkre all, hiszen az alaprendszer resze. A FreeBSD
     korabbi verzioinak alaprendszerei ugyan nem tartalmazzak a
     csup(1) parancsot, viszont a net/csup port vagy csomag
     segitsegevel pillanatok alatt telepiteni tudjuk. Emellett a csup
     segedprogram nem tamogatja a CVS modot sem. Teljes repositoryk
     tu:kro:zesehez ezert tovabbra is a CVSup kell hasznalnunk.
     Amennyiben a csup mellett tennenk le a voksunkat, a szakasz
     fennmarado reszeben egyszeru"en hagyjuk ki a CVSup
     telepitesero"l szolo lepeseket es a CVSup hivatkozasait
     helyettesitsu:k a csup programmal.

     --------------------------------------------------------------

  A.6.2. Telepites

   A CVSup telepitesenek legegyszeru"bb modja a FreeBSD
   csomaggyu"jtemenyeben talalhato elo"reforditott net/cvsup csomag
   hasznalata. Ha viszont inkabb forrasbol akarjuk telepiteni a
   CVSupot, akkor helyette hasznaljuk a net/cvsup portot. De legyu:nk
   elo"vigyazatosak: a net/cvsup portnak szu:ksege van a Modula-3
   rendszerre, aminek leto:ltese es leforditasa pedig megleheto"sen
   sok ido"t es tarhelyet igenyel.

     Megjegyzes: Ha olyan gepen akarjuk hasznalni a CVSupot, ahol
     nincs XFree86, Xorg vagy barmilyen mas ilyen szerver, akkor
     hasznaljuk a net/cvsup-without-gui portot, ami nem tartalmazza a
     hozzatartozo grafikus felu:letet.

   Ha a FreeBSD 6.1 vagy korabbi valtozatain szeretnenk telepiteni a
   csupot, hasznaljuk a FreeBSD csomaggyu"jtemenyeben megtalalhato
   net/csup csomagot. Ha viszont forrasbol kivanjuk telepiteni a csup
   programot, akkor helyette hasznaljuk a net/csup portot.

     --------------------------------------------------------------

  A.6.3. A CVSup beallitasa

   A CVSup mu"ko:deset a supfile elnevezesu" allomany vezerli. A
   /usr/share/examples/cvsup/ ko:nyvarban talalhatunk nehany peldat a
   supfile allomanyokra.

   A supfile allomanyban szereplo" informaciok a CVSup hasznalataval
   kapcsolatban a ko:vetkezo" kerdeseket valaszoljak meg:

     * Milyen allomanyokat akarunk leto:lteni?

     * Milyen verzioikra van szu:ksegu:nk?

     * Honnan akarjuk ezeket beszerezni?

     * Hova akarjuk rakni a szamitogepu:nko:n?

     * Hova akarjuk rakni az allapotot tarolo allomanyokat?

   Az iment feltett kerdesekre a ko:vetkezo" szakaszokban
   o:sszeallitando supfile segitsegevel fogunk valaszolni. Ehhez
   elo"szo:r bemutatjuk a supfile formatumu allomanyok altalanos
   szerkezetet.

   A supfile allomanyok szo:veget tartalmaznak. A megjegyzesek #
   karakterrel kezdo"dnek es a sor vegeig tartanak. A kizarolag csak
   megjegyzeseket tartalmazo vagy u:res sorok nem keru:lnek
   feldolgozasra.

   Az o:sszes to:bbi fennmarado sorban pedig azokat az allomanyokat
   irjuk le, amelyeket a felhasznalo le akar to:lteni. Az ilyen
   fajtaju sorok egy "gyu"jtemeny" (collection) nevevel kezdo"dnek,
   ami allomanyok egy szerver altal meghatarozott logikai csoportjara
   utal. A gyu"jtemeny neve ennek megfelelo"en elarulja a szervernek,
   hogy pontosan milyen allomanyokra van szu:ksegu:nk. Ezutan
   ko:vetkezik whitespace-szel elvalasztva nulla vagy to:bb mezo",
   amelyek a korabban feltett kerdeseinket valaszoljak meg rendre.
   Ezeknek a mezo"knek ket tipusa letezik: a beallitasokat es a
   konkret erteket tarolo mezo"k. A beallitasokat tarolo mezo"k
   ku:lo:nbo:zo" kulcsszavakat tartalmaznak, peldaul a delete
   (to:rles) vagy compress (to:mo:rites). Az erteket tarolo mezo"k is
   egy kulcsszoval kezdo"dnek, azonban utana ko:zvetlenu:l egy =
   (egyenlo"segjel) jo:n, amelyet egy masodik szo ko:vet szorosan.
   Igy peldaul a release=cvs pontosan egy ilyen ertekmezo" lesz.

   Egy supfile altalaban egynel to:bb gyu"jtemeny leto:lteset irja
   le. Ezert az ilyen allomanyok felepitesenek egyik modja, ha az
   egyes gyu"jtemenyhez explicite megadjuk a hozzatartozo mezo"ket.
   Azonban igy a supfile allomanyok gyorsan megno:vekednek es
   kenyelmetlenne valnak, mivel a legto:bb gyu"jtemeny eseten szinte
   ugyanazokat a mezo"ket kellene megadnunk. A CVSup az ilyen tipusu
   bonyodalmak elkeru:lesere egy alapertelmezesi megoldast javasol. A
   *default nevu" algyu"jtemennyel kezdo"do" sorok segitsegevel meg
   tudunk adni olyan beallitasokat es ertekeket, amelyek az utana
   ko:vetkezo" gyu"jtemenyek szamara alapertelmezesnek fognak
   szamitani a supfile allomanyban. Az itt megadott alapertelmezesek
   termeszetesen az egyes gyu"jtemenyekben tetszo"leges modon
   felu:lbiralhatoak, a mezo"k magan a gyu"jtemenyen belu:li
   megadasaval. Az allomanyban az alapertelmezesek is
   megvaltoztathatoak vagy bo"vitheto"ek tovabbi *default sorok
   hozzaadasaval.

   Mindezek tudataban most mar megkezdhetju:k a FreeBSD-CURRENT ag
   tartalmanak leto:ltesere es frissen tartasara alkalmas supfile
   allomany o:sszeallitasat.

     * Milyen allomanyokat akarunk leto:lteni?

       A CVSupon keresztu:l elerheto" allomanyok "gyu"jtemenyeknek"
       hivott nevesitett csoportokra bontva erheto"ek el. A
       hivatkozhato gyu"jtemenyek leirasat a ko:vetkezo" szakaszban
       talaljuk. Ebben a peldaban most szeretnenk leto:lteni az egesz
       FreeBSD rendszer forrasat. Ezt a src-all nevu" gyu"jtemenyre
       hivatkozva erhetju:k el. A supfile allomanyunk letrehozasanak
       elso" lepesekent soronkent egyet megadva felsoroljuk a
       leto:lteni kivant gyu"jtemenyeket (jelen esetu:nkben csak
       egyetlen egyet):

 src-all

     * Milyen verzioikra van szu:ksegu:nk?

       A CVSup hasznalataval tulajdonkeppen a forrasok o:sszes valaha
       letezett verziojahoz hozza tudunk ferni. Ez annak
       ko:szo:nheto", hogy a cvsupd szerver ko:zvetlenu:l a CVS
       repositorybol dolgozik, ami pedig az o:sszes verziot
       tartalmazza. A tag= es date= ertekmezo"k segitsegevel adhatjuk
       meg az igenyelt verziokat.

         Figyelem: Legyu:nk ovatosak azonban a tag= mezo"k helyes
         megadasaval. Egyes cimkek ugyanis csak bizonyos
         allomanygyu"jtemenyek eseten elnek. Ha hibas vagy elirt
         cimket adunk meg, akkor a CVSup to:ro:lni fog olyan
         allomanyokat, amelyeket valoszinu"leg nem kellene. A ports-*
         gyu"jtemenyek eseteben pedig kifejezetten csak a tag=.
         mezo"k hasznalhatoak!

       A tag= mezo"k a tarhazban talalhato szimbolikus cimkeket
       nevezik meg. A cimkeknek ket tipusa van: a reviziokhoz es az
       agakhoz tartozo cimkek. A revizios cimkek mindig egy adott
       reviziot hivatkoznak, jelentesu:k allando. Ezzel szemben az
       agak cimkei egy adott fejlesztesi ag adott ido"pontjaban
       elerheto" reviziot cimkezi. Mivel az agak cimkei nem egy
       konkret reviziora vonatkoznak, ezert akar olyanra is
       utalhatnak, ami pillanatnyilag meg nem is letezik.

       Az A.7 Szakaszban megtalalhatjuk a fontosabb agak cimkeit. A
       CVSup konfiguracios allomanyaban a cimkeket a tag= elo"taggal
       kell bevezetni (igy tehat a RELENG_4 cimke hivatkozasa
       tag=RELENG_4 lesz). Ne felejtsu:k el, hogy a Portgyu"jtemeny
       eseteben csak tag=. mezo" megadasanak van ertelme.

         Figyelem: Igyekezzu:nk pontosan lemasolni a cimkek neveit,
         mivel a CVSup nem kepes megku:lo:nbo:ztetni az ervenyes es
         az ervenytelen cimkeket. Ha veletlen elirjuk a cimket, akkor
         a CVSup ugy fog viselkedni, mintha olyan ervenyes cimkere
         hivatkozhatunk volna, amihez nem tartoznak allomanyok. Ennek
         ko:vetkezteben pedig egyszeru"en leto:rli a mar meglevo"
         forrasainkat.

       Egy ag cimkejenek megadasa soran altalaban az adott
       fejlesztesi vonal legfrissebb verziojat kapjuk meg. Ha viszont
       az adott ag valamelyik korabbi valtozatara lenne szu:ksegu:nk,
       akkor a date= ertekmezo" felhasznalasaval meg tudjuk adni a
       hozzatartozo datumot. Ennek mu"ko:desero"l a cvsup(1) man
       oldala reszletesebben ertekezik.

       A peldaban mi most a FreeBSD-CURRENT verziot akarjuk
       leto:lteni. Ezert a ko:vetkezo" sort tesszu:k a supfile
       allomanyunk elejere:

 *default tag=.

       Ha nem adunk meg sem tag=, sem pedig date= mezo"ket, akkor egy
       fontos eset ko:vetkezik be. Ilyenkor ugyanis egy konkret
       verzio helyett ko:zvetlenu:l a szerver CVS repositoryjabol
       kapjuk meg az allomanyokat, az o:sszes kiegeszito"
       informaciojukkal egyu:tt. A fejleszto"k altalaban ezt a tipusu
       megoldast kedvelik, mivel igy a sajat rendszeru:ko:n is
       ko:nnyen karban tudnak tartani egy peldanyt, amiben tudnak
       keresni a reviziok ko:zo:tt es ki tudjak kerni akar az
       allomanyok korabbi valtozatait is. Termeszetesen ennek
       fu:ggvenyeben joval to:bb tarhelyre van szu:ksegu:k.

     * Honnan akarjuk ezeket beszerezni?

       A host= mezo" beallitasaval ko:zo:lju:k a cvsup klienssel,
       honnan to:ltse le a frissiteseket. A CVSup tu:kro:zesek
       ko:zu:l barmelyik megfelel erre a celra, habar leginkabb azt
       erdemes valasztani, ami a kiberterben a hozzank legko:zelebb
       esik. A peldaban most egy kitalalt FreeBSD terjesztesi oldalt
       valasztunk, a cvsup99.FreeBSD.org-ot:

 *default host=cvsup99.FreeBSD.org

       A CVSup futtatasa elo"tt tehat ne felejtsu:k el megvaltoztatni
       ezt a letezo" szamitogep halozati nevere. A cvsup futtatasakor
       a -h halozati nev opcio megadasaval leheto"segu:nk ennek
       felu:lbiralasara.

     * Hova akarjuk rakni a szamitogepu:nko:n?

       A prefix= mezo" adja meg a cvsup szamara, hogy hova tegye a
       kapott allomanyokat. A peldaban a forrasokat ko:zvetlenu:l a
       forrasokat tarolo ko:zponti ko:nyvtarba, a /usr/src
       ko:nyvtarba tettu:k. Mivel a src ko:nyvtar neve mar
       hallgatolagosan benne foglaltatik a leto:ltesre kivalasztott
       gyu"jtemeny neveben, ezert itt csak ennyit kell megadnunk:

 *default prefix=/usr

     * Hova akarjuk rakni az allapotot tarolo allomanyokat?

       A CVSup kliens egy "bazisnak" (base) nevezett ko:nyvtarban
       folyamatosan fenntart bizonyos allomanyokban allapotokat
       (status file). Ezek a mar leto:lto:tt allomanyok
       nyilvantartasaval segitik a CVSup hatekony munkavegzeset. Mi
       most a szabvanyos bazist, a /var/db ko:nyvtarat fogjuk
       hasznalni:

 *default base=/var/db

       Amennyiben meg nem letezne a baziskent hasznalni kivant
       ko:nyvtar, ideje letrehoznunk. A cvsup ugyanis egy nem letezo"
       ko:nyvtar eseten nem lesz hajlando mu"ko:dni.

     * Tovabbi beallitasok a supfile allomanyban:

       Altalaban meg egy sor szokott szerepelni a supfile
       allomanyokban:

 *default release=cvs delete use-rel-suffix compress

       A release=cvs mezo" jelzi, hogy a szervernek a FreeBSD fo" CVS
       repositorybol kell kikeresnie az informaciokat. Tulajdonkeppen
       majdnem mindig erro"l van szo, es az itt megadhato to:bbi
       leheto"seg ismertetese most egyebkent is meghaladna a szakasz
       hatarait.

       A delete hatasara a CVSup kepes lesz allomanyokat to:ro:lni.
       Mindig erdemes megadnunk, hiszen a CVSup csak igy tudja teljes
       mertekben frissentartani a forrasokat. A CVSup termeszetesen
       csak azokat az allomanyokat igyekszik leto:ro:lni, amelyek
       miatt valoban felelo"s. A kobor allomanyokat nem fogja
       bantani.

       A use-rel-suffix hatasa egy igazi... Rejtely. Ha tenyleg
       erdekel minket a mu"ko:dese, lapozzuk fel batran a cvsup(1)
       man oldalat. Nyugodtan adjuk meg es ku:lo:no:sebben ne
       to:ro"dju:nk vele.

       A compress beallitas segitsegevel a kommunikacios csatornan
       vandorlo adatokat tudjuk gzip-szeru" modon to:mo:riteni. Ha a
       halozati kapcsolatunk sebessege meghaladja a 1,5 Mbitet
       masodpercenkent (T1), akkor ezt mar nem erdemes hasznalni,
       viszont minden mas esetben lenyeges gyorsulast hozhat.

     * O:sszegezzu:k az eddigieket:

       Ime a peldakent o:sszerakott supfile allomanyunk teljes
       tartalma:

 *default tag=.
 *default host=cvsup99.FreeBSD.org
 *default prefix=/usr
 *default base=/var/db
 *default release=cvs delete use-rel-suffix compress

 src-all

     --------------------------------------------------------------

    A.6.3.1. A refuse allomany

   Ahogy arrol mar korabban szo esett, a CVSup lehuzassal frissit. Ez
   alapveto"en annyit jelent, hogy feltarcsazunk egy CVSup szervert,
   aki a ko:vetkezo"t mondja neku:nk: "A ko:vetkezo"ket tudod to"lem
   leto:lteni...", amire a kliensu:nk ezt valaszolja: "Rendben, akkor
   nekem kell ez, ez, ez meg ez." Alapertelmezes szerint a CVSup
   kliense azokat az allomanyokat fogja leto:lteni, amelyeket a
   konfiguracios allomanyban szereplo" gyu"jtemenyek es cimkek altal
   megneveztu:nk. Ez azonban nem mindig felel meg az igenyeinknek,
   ku:lo:no:sen akkor, amikor a doc, ports vagy www fakat akarjuk
   leto:lteni -- az emberek to:bbsege ugyanis nem beszel negy vagy
   o:t nyelven, ezert nincs is szu:ksegu:k a nyelvfu:ggo" allomanyok
   leto:ltesere. A Portgyu"jtemeny leto:ltese soran a ports-all
   helyett egyszeru"en egyenkent is felsorolhatjuk a szamunkra
   erdekes kategoriakat (peldaul ports-astrology, ports-biology stb).
   Azonban mivel a doc es a www fakhoz nincsenek nyelvfu:ggo"
   gyu"jtemenyek, ezert elo" kell halasznunk a CVSup egyik remek
   funkciojat, a refuse allomanyt.

   A refuse allomannyal lenyegeben arra utasitjuk a CVSup
   alkalmazast, hogy a gyu"jtemenyekbo"l ne to:ltse le az o:sszes
   allomanyt. Ugy is fogalmazhatnank, hogy javaslatara a kliens
   visszautasit (refuse) bizonyos szerverto"l erkezo" allomanyokat.
   Ezeket a visszautasitasokat tarolo refuse allomanyt a bazis/sup/
   ko:nyvtarban talalhatjuk meg (illetve ha meg nincsenek, akkor ide
   kell rakunk ezeket). Itt a bazis a supfile allomanyban megadott
   base= mezo"re utal, ami a peldankban a /var/db ko:nyvtar volt.
   Ennek megfelelo"en tehat a refuse allomany a /var/db/sup/refuse
   lesz.

   A refuse allomany felepitese igen egyszeru": a leto:lteni nem
   kivant allomanyok es ko:nyvtarak neveit tartalmazza. Peldaul ha az
   angolul mellett esetleg meg beszelu:nk egy keves nemetet is, de
   nincs szu:ksegu:nk az angol dokumentacio nemet forditasara sem,
   akkor a ko:vetkezo"ket irjuk a refuse allomanyba:

 doc/bn_*
 doc/da_*
 doc/de_*
 doc/el_*
 doc/es_*
 doc/fr_*
 doc/hu_*
 doc/it_*
 doc/ja_*
 doc/mn_*
 doc/nl_*
 doc/no_*
 doc/pl_*
 doc/pt_*
 doc/ru_*
 doc/sr_*
 doc/tr_*
 doc/zh_*

   es igy tovabb a to:bbi nyelvre is (melyeket a FreeBSD CVS
   repository bo:ngeszesevel derithetju:k ki).

   Ezzel az alkalmas funkcioval a lassu vagy draga internetes
   kapcsolattal rendelkezo" felhasznalok nagyon jol tudnak
   gazdalkodni, mivel igy nem kell leto:lteniu:k az egyaltalan nem
   hasznalt allomanyokat. A refuse allomanyokrol es a CVSup mas
   hasonloan elegans funkcioirol a sajat man oldalarol tudhatunk meg
   to:bbet.

     --------------------------------------------------------------

  A.6.4. A CVSup futtatasa

   Most mar keszen allunk egy proba frissites elvegzesere. A
   parancssorban nem sok mindent kell beirnunk ehhez:

 # cvsup supfile

   ahol a supfile a frissen letrehozott supfile allomanyunk neve
   lesz. Feltetelezve, hogy a parancsot X11 alatt adtunk ki, az cvsup
   erre feldob egy grafikus ablakot nehany gombbal. Nyomjuk meg a go
   feliratu gombot es do"lju:nk hatra.

   Mivel a peldaban a /usr/src ko:nyvtarunk frissiteset allitottuk
   be, az allomanyok aktualizalasahoz szu:kseges jogosultsagok
   biztositasahoz a cvsup programot root felhasznalokent kell
   elinditanunk. Teljesen ertheto", ha egy kicsit izgatottak vagyunk
   ezekben a pillanatokban, hiszen az elo"bb hoztunk letre egy
   altalunk eddig ismeretlen programhoz egy konfiguracios allomanyt.
   Ezert megemlitenenk, hogy ilyenkor elo"szo:r mindig probaljuk ki a
   konfiguraciokat, mielo"tt azok barmilyen modositast vegeznenek a
   fontos allomanyainkon. Ehhez hozzunk letre valahol egy u:res
   ko:nyvtarat, majd adjuk meg a parancssorban ennek a nevet:

 # mkdir /var/tmp/proba
 # cvsup supfile /var/tmp/proba

   Az igy megadott ko:nyvtarba keru:lnek a frissites eredmenyekeppen
   keletkezo" allomanyok. A CVSup elo"szo:r megvizsgalja a /usr/src
   ko:nyvtarban talalhato allomanyokat, viszont egyiku:ket sem
   modositja vagy to:rli. A frissitesek ehelyett a
   /var/tmp/proba/usr/src ko:nyvtarba fognak keru:lni. A CVSup
   emellett meg a bazisko:nyvtaraban tarolt allapotokat sem fogja
   megvaltoztatni. A modositott allomanyok uj valtozatai a megadott
   ko:nyvtarba jo:nnek letre. Mivel a /usr/src ko:nyvtart ehhez csak
   olvasni fogjuk, a proba lefuttatasahoz meg root felhasznalonak sem
   kell lennu:nk.

   Ha nem hasznalunk X11-et vagy egyszeru"en csak nincs szu:ksegu:nk
   a grafikus felu:letre, a parancssorban par tovabbi opcio
   megadasaval igy is kiadhatjuk a cvsup parancsot:

 # cvsup -g -L 2 supfile

   A -g hatasara a CVSup nem hozza be a grafikus felu:letet. Ha nem
   talal X11-et, akkor ez termeszetesen automatikus, de ellenkezo"
   esetben ezt is meg kell adnunk.

   Az -L 2 megadasaval a CVSup az o:sszes elvegzendo" frissitesro"l
   reszletes ertesitest ad. A reszletessegnek harom foka van, -L
   0-tol indulva egeszen -L 2-ig. Itt az alapertelmezett ertek a 0,
   amivel a hibau:zenetek kivetelevel egyetlen u:zenetet sem kapunk.

   Rengeteg egyeb beallitas adhato meg meg, ezeket a cvsup -H
   kiadasaval kerdezhetju:k le. A beallitasok pontosabb leirasat a
   man oldalon talaljuk meg.

   Miutan elegedetten tapasztaltuk, hogy a frissites remeku:l
   mu"ko:dik, a cron(8) segitsegevel probaljuk meg az egesz
   folyamatot o:nmu"ko:do:ve tenni a CVSup szabalyos ido"ko:zo:nkenti
   futtatasaval. Ekkor viszont magatol erteto"dik, hogy a CVSup
   szamara ne engedju:k hasznalni a grafikus felu:letet.

     --------------------------------------------------------------

  A.6.5. A CVSup allomanygyu"jtemenyei

   A CVSup reven elerheto" allomanygyu"jtemenyek egy hierarchikus
   rendszert alkotnak. Van nehany nagyobb allomanygyu"jtemeny,
   amelyek kisebb al-allomanygyu"jtemenyekre bonthatoak. A nagyobb
   gyu"jtemenyek leto:ltese ezert a kisebb algyu"jtemenyek
   leto:ltesevel egyenlo". A gyu"jtemenyek ko:zt fennallo
   hierarchikus rendszer a lentebb szereplo" lista behuzasaiban
   erheto" tetten.

   A leggyakrabban hasznalt gyu"jtemenyek a src-all es a ports-all
   neveket viselik. A to:bbi gyu"jtemenyt altalaban csak kevesen es
   csak specialis celokra hasznaljak, ezert egyes tu:kro:zeseken nem
   feltetlenu:l talaljuk meg mindegyiku:ket.

   cvs-all release=cvs

           A FreeBSD fo" CVS repositoryja, beleertve a titkositashoz
           tartozo kodokat is.

                distrib release=cvs

                        A FreeBSD terjesztesehez es tu:kro:zesehez
                        kapcsolodo allomanyok.

                doc-all release=cvs

                        A FreeBSD keziko:nyvenek es a to:bbi
                        dokumentacio forrasai. Nem tartalmazza a
                        FreeBSD honlapjanak forrasait.

                ports-all release=cvs

                        A FreeBSD portgyu"jtemenye.

                          Fontos: Ha nem akarjuk a ports-all egeszet
                          (vagyis a teljes portfat) frissiteni, csak
                          a lentebb szereplo" egyes algyu"jtemenyeket
                          leto:lteni, akkor soha ne feledkezzu:nk meg
                          a ports-base megadasarol! Amikor valami
                          valtozik a portok mu"ko:deseben, akkor a
                          ports-base altal kepviselt algyu"jtemenyben
                          szereplo" allomanyokat igen gyorsan
                          elkezdik hasznalni a "valodi" portok. Ezert
                          ha csak a "valodi" portokat frissitju:k,
                          amelyek viszont igenyt tartanak nehany
                          ujabb funkciora is, akkor ko:nnyen
                          forditasi hibara vagy ku:lo:nbo:zo"
                          rejtelyes hibau:zenetekbe futhatunk. Emiatt
                          legeslegelo"szo:r mindig tegyu:nk rola,
                          hogy a ports-base algyu"jtemenyu:nk a
                          leheto" legfrissebb legyen.

                          Fontos: Ha a ports/INDEX allomany egy sajat
                          peldanyat kivanjuk letrehozni, akkor ahhoz
                          a ports-all gyu"jtemenyt (tehat a teljes
                          portfat) le kell kernu:nk. A ports/INDEX
                          allomanyt a portfa egy resze alapjan nem
                          keszithetju:k el. Erro"l bo"vebben lasd a
                          GYIK-ot.

                             ports-accessibility release=cvs

                                    A fogyatekos felhasznalokat
                                    segito" szoftverek.

                             ports-arabic release=cvs

                                    Arab nyelvi tamogatas.

                             ports-archivers release=cvs

                                    Archivalo eszko:zo:k.

                             ports-astro release=cvs

                                    Csillagaszathoz tartozo portok.

                             ports-audio release=cvs

                                    Hangtamogatas.

                             ports-base release=cvs

                                    A Portgyu"jtemeny sajat
                                    infrastrukturaja -- az Mk/,
                                    Tools/ es /usr/ports ku:lo:nfele
                                    alko:nyvtaraiban elhelyezkedo"
                                    allomanyok.

                                      Megjegyzes: Ne hagyjuk
                                      figyelmen kivu:l a fenti fontos
                                      figyelmeztetest sem: ezt az
                                      algyu"jtemenyt mindig a FreeBSD
                                      Portgyu"jtemenyevel egyu:tt
                                      frissitsu:k!

                             ports-benchmarks release=cvs

                                    Teljesitmenytesztek.

                             ports-biology release=cvs

                                    Biologia.

                             ports-cad release=cvs

                                    Szamitogepes tervezo"eszko:zo:k
                                    (CAD).

                             ports-chinese release=cvs

                                    Kinai nyelvi tamogatas.

                             ports-comms release=cvs

                                    Kommunikacios szoftverek.

                             ports-converters release=cvs

                                    Karakterkodolasok ko:zti
                                    atalakitok.

                             ports-databases release=cvs

                                    Adatbazisok.

                             ports-deskutils release=cvs

                                    A szamitogep feltalalasa elo"tt
                                    is mar letezo" eszko:zo:k.

                             ports-devel release=cvs

                                    Fejleszto"eszko:zo:k.

                             ports-dns release=cvs

                                    Nevfeloldassal kapcsolatos
                                    szoftverek.

                             ports-editors release=cvs

                                    Szo:vegszerkeszto"k.

                             ports-emulators release=cvs

                                    Mas operacios rendszerek
                                    emulatorai.

                             ports-finance release=cvs

                                    Penzu:gyi, gazdasagi es hasonlo
                                    alkalmazasok.

                             ports-ftp release=cvs

                                    FTP kliensek es szerverek.

                             ports-games release=cvs

                                    Jatekok.

                             ports-german release=cvs

                                    Nemet nyelvi tamogatas.

                             ports-graphics release=cvs

                                    Grafikus segedeszko:zo:k.

                             ports-hebrew release=cvs

                                    Heber nyelvi tamogatas.

                             ports-hungarian release=cvs

                                    Magyar nyelvi tamogatas.

                             ports-irc release=cvs

                                    IRC-vel kapcsolatos programok.

                             ports-japanese release=cvs

                                    Japan nyelvi tamogatas.

                             ports-java release=cvs

                                    Java segedeszko:zo:k.

                             ports-korean release=cvs

                                    Koreai nyelvi tamogatas.

                             ports-lang release=cvs

                                    Programozasi nyelvek.

                             ports-mail release=cvs

                                    Levelezo" programok.

                             ports-math release=cvs

                                    Numerikus szamitasokkal
                                    foglalkozo programok.

                             ports-mbone release=cvs

                                    MBone alkalmazasok.

                             ports-misc release=cvs

                                    Egyeb segedprogramok.

                             ports-multimedia release=cvs

                                    Multimedias szoftverek.

                             ports-net release=cvs

                                    Halozati szoftverek.

                             ports-net-im release=cvs

                                    U:zenetku:ldo" (Instant
                                    Messaging, IM) szoftverek.

                             ports-net-mgmt release=cvs

                                    Halozati karbantarto szoftverek.

                             ports-net-p2p release=cvs

                                    Egyenrangu (Peer to Peer, P2P)
                                    halozatok.

                             ports-news release=cvs

                                    USENET hirszoftverek.

                             ports-palm release=cvs

                                    A Palm(TM) sorozat szoftveres
                                    tamogatasa.

                             ports-polish release=cvs

                                    Lengyel nyelvi tamogatas.

                             ports-ports-mgmt release=cvs

                                    A portok es csomagok
                                    karbantartasat vegzo"
                                    segedeszko:zo:k.

                             ports-portuguese release=cvs

                                    Portugal nyelvi tamogatas.

                             ports-print release=cvs

                                    Nyomdai programok.

                             ports-russian release=cvs

                                    Orosz nyelvi tamogatas.

                             ports-science release=cvs

                                    Tudomanyos programok.

                             ports-security release=cvs

                                    Biztonsagi segedprogramok.

                             ports-shells release=cvs

                                    Parancsertelmezo"k.

                             ports-sysutils release=cvs

                                    Rendszerprogramok.

                             ports-textproc release=cvs

                                    Szo:vegfeldolgozast segito"
                                    eszko:zo:k (kiveve az asztali
                                    kiadvanyszerkesztest).

                             ports-ukrainian release=cvs

                                    Ukran nyelvi tamogatas.

                             ports-vietnamese release=cvs

                                    Vietnami nyelvi tamogatas.

                             ports-www release=cvs

                                    A vilaghalohoz tartozo
                                    szoftverek.

                             ports-x11 release=cvs

                                    Az X Window System mu"ko:deset
                                    segito" portok.

                             ports-x11-clocks release=cvs

                                    X11 orak.

                             ports-x11-drivers release=cvs

                                    X11 meghajtok.

                             ports-x11-fm release=cvs

                                    X11 allomanykezelo"k.

                             ports-x11-fonts release=cvs

                                    X11 betu"tipusok es a hozzajuk
                                    tartozo segedprogramok.

                             ports-x11-toolkits release=cvs

                                    X11 eszko:zrendszerek.

                             ports-x11-servers release=cvs

                                    X11 szerverek.

                             ports-x11-themes release=cvs

                                    X11 temak.

                             ports-x11-wm release=cvs

                                    X11 ablakkezelo"k.

                projects-all release=cvs

                        A FreeBSD projektek forrasainak repositoryja.

                src-all release=cvs

                        A FreeBSD fontosabb forrasai, a titkositashoz
                        tartozo kodokkal egyu:tt.

                             src-base release=cvs

                                    A /usr/src ko:nyvtarban levo"
                                    egyeb allomanyok.

                             src-bin release=cvs

                                    Az egyfelhasznalos modban
                                    hasznalhato segedeszko:zo:k
                                    (/usr/src/bin).

                             src-cddl release=cvs

                                    A CDDL licenc szerint terjesztett
                                    segedprogramok es
                                    fu:ggvenyko:nyvtarak
                                    (/usr/src/cddl).

                             src-contrib release=cvs

                                    A FreeBSD Projekten kivu:l
                                    fejlesztett segedprogramok es
                                    fu:ggvenyko:nyvtarak, viszonylag
                                    keves modositassal
                                    (/usr/src/contrib).

                             src-crypto release=cvs

                                    A FreeBSD Projekten kivu:l
                                    fejlesztett, titkositassal
                                    kapcsolatos segedprogramok es
                                    fu:ggvenyko:nyvtarak, viszonylag
                                    keves modositassal
                                    (/usr/src/crypto).

                             src-eBones release=cvs

                                    Kerberos es DES
                                    (/usr/src/eBones). A FreeBSD
                                    jelenlegi valtozatai nem
                                    hasznaljak.

                             src-etc release=cvs

                                    A rendszer beallitasait
                                    tartalmazo allomanyok
                                    (/usr/src/etc).

                             src-games release=cvs

                                    Jatekok (/usr/src/games).

                             src-gnu release=cvs

                                    A GPL licenc szerint terjesztett
                                    segedprogramok (/usr/src/gnu).

                             src-include release=cvs

                                    (C nyelvi) Header allomanyok
                                    (/usr/src/include).

                             src-kerberos5 release=cvs

                                    A Kerberos5 biztonsagi csomag
                                    (/usr/src/kerberos5).

                             src-kerberosIV release=cvs

                                    A KerberosIV biztonsagi csomag
                                    (/usr/src/kerberosIV).

                             src-lib release=cvs

                                    Fu:ggvenyko:nyvtarak
                                    (/usr/src/lib).

                             src-libexec release=cvs

                                    Mas programok altal futtatott
                                    rendszerprogramok
                                    (/usr/src/libexec).

                             src-release release=cvs

                                    A FreeBSD kiadasok elkeszitesehez
                                    szu:kseges allomanyok
                                    (/usr/src/release).

                             src-rescue release=cvs

                                    Statikusan linkelt programok
                                    veszhelyzet esetere, lasd
                                    rescue(8) (/usr/src/rescue).

                             src-sbin release=cvs

                                    Egyfelhasznalos modban
                                    hasznalhato rendszereszko:zo:k
                                    (/usr/src/sbin).

                             src-secure release=cvs

                                    Titkositassal foglalkozo
                                    fu:ggvenyko:nyvtarak es parancsok
                                    (/usr/src/secure).

                             src-share release=cvs

                                    To:bb rendszer ko:zo:tt
                                    megoszthato allomanyok
                                    (/usr/src/share).

                             src-sys release=cvs

                                    A rendszermag (/usr/src/sys).

                             src-sys-crypto release=cvs

                                    A rendszermagban levo"
                                    titkositassal foglalkozo kod
                                    (/usr/src/sys/crypto).

                             src-tools release=cvs

                                    A FreeBSD karbantartasara valo
                                    ku:lo:nbo:zo" segedprogramok
                                    (/usr/src/tools).

                             src-usrbin release=cvs

                                    Felhasznaloi segedprogramok
                                    (/usr/src/usr.bin).

                             src-usrsbin release=cvs

                                    Rendszerszintu" segedprogramok
                                    (/usr/src/usr.sbin).

                www release=cvs

                        A FreeBSD Projekt honlapjanak forraskodja.

   distrib release=self

           A CVSup szerver sajat konfiguracios allomanyai. A CVSup
           tu:kro:zesei hasznaljak.

   gnats release=current

           A GNATS hibanyilvantarto adatbazis.

   mail-archive release=current

           A FreeBSD levelezesi listainak archivuma.

   www release=current

           A FreeBSD Projekt honlapjanak generalt allomanyai (de nem
           a forrasai). A WWW tu:kro:zesek hasznaljak.

     --------------------------------------------------------------

  A.6.6. Bo"vebb informaciok

   A CVSup reszletesebb bemutatasat es a hozzatartozo GYIK-ot A CVSup
   honlapjan talaljuk meg.

   A CVSup FreeBSD-re vonatkozo targyalasa a FreeBSD technical
   discussions levelezesi listan to:rtenik. Itt es az FreeBSD
   announcements levelezesi listan jelentik be a szoftver ujabb
   valtozatait.

   A CVSup alkalmazassal kapcsolatos kerdeseket es hibajelenteseket
   illeto"en a CVSup GYIK-ot erdemes megneznu:nk.

     --------------------------------------------------------------

  A.6.7. CVSup oldalak

   A FreeBSD CVSup szerverei az alabbi oldalakon erheto"ek el:

   Ko:zponti szerverek, Elso"dleges tu:kro:zesek, Amerikai Egyesu:lt
   Allamok, Argentina, Ausztralia, Ausztria, Brazilia, Bulgaria,
   Costa Rica, Cseh Ko:ztarsasag, Dania, Del-Afrika, Egyesu:lt
   Kiralysag, Esztorszag, Finnorszag, Franciaorszag,
   Fu:lo:p-szigetek, Go:ro:gorszag, Hollandia, Indonezia, Irorszag,
   Izland, Izrael, Japan, Kanada, Kina, Kirgizisztan, Korea, Kuvait,
   Lengyelorszag, Lettorszag, Litvania, Magyarorszag, Nemetorszag,
   Norvegia, Olaszorszag, O:rmenyorszag, Oroszorszag, Portugalia,
   Romania, San Marino, Spanyolorszag, Svajc, Svedorszag, Szingapur,
   Szlovak Ko:ztarsasag, Szlovenia, Tajvan, Thaifo:ld, To:ro:korszag,
   Uj-Zeland, Ukrajna.

   (Datum: 2009/05/21 21:02:58 UTC)

   Ko:zponti szerverek

              * cvsup.FreeBSD.org

   Elso"dleges tu:kro:zesek

              * cvsup1.FreeBSD.org

              * cvsup2.FreeBSD.org

              * cvsup3.FreeBSD.org

              * cvsup4.FreeBSD.org

              * cvsup5.FreeBSD.org

              * cvsup6.FreeBSD.org

              * cvsup7.FreeBSD.org

              * cvsup8.FreeBSD.org

              * cvsup9.FreeBSD.org

              * cvsup10.FreeBSD.org

              * cvsup11.FreeBSD.org

              * cvsup12.FreeBSD.org

              * cvsup13.FreeBSD.org

              * cvsup14.FreeBSD.org

              * cvsup15.FreeBSD.org

              * cvsup16.FreeBSD.org

              * cvsup18.FreeBSD.org

   Amerikai Egyesu:lt Allamok

              * cvsup1.us.FreeBSD.org

              * cvsup2.us.FreeBSD.org

              * cvsup3.us.FreeBSD.org

              * cvsup4.us.FreeBSD.org

              * cvsup5.us.FreeBSD.org

              * cvsup6.us.FreeBSD.org

              * cvsup7.us.FreeBSD.org

              * cvsup8.us.FreeBSD.org

              * cvsup9.us.FreeBSD.org

              * cvsup10.us.FreeBSD.org

              * cvsup11.us.FreeBSD.org

              * cvsup12.us.FreeBSD.org

              * cvsup13.us.FreeBSD.org

              * cvsup14.us.FreeBSD.org

              * cvsup15.us.FreeBSD.org

              * cvsup16.us.FreeBSD.org

              * cvsup18.us.FreeBSD.org

   Argentina

              * cvsup.ar.FreeBSD.org

   Ausztralia

              * cvsup.au.FreeBSD.org

   Ausztria

              * cvsup.at.FreeBSD.org

              * cvsup2.at.FreeBSD.org

   Brazilia

              * cvsup.br.FreeBSD.org

              * cvsup2.br.FreeBSD.org

              * cvsup3.br.FreeBSD.org

              * cvsup4.br.FreeBSD.org

              * cvsup5.br.FreeBSD.org

   Bulgaria

              * cvsup.bg.FreeBSD.org

   Costa Rica

              * cvsup1.cr.FreeBSD.org

   Cseh Ko:ztarsasag

              * cvsup.cz.FreeBSD.org

   Dania

              * cvsup.dk.FreeBSD.org

              * cvsup2.dk.FreeBSD.org

   Del-Afrika

              * cvsup.za.FreeBSD.org

              * cvsup2.za.FreeBSD.org

   Egyesu:lt Kiralysag

              * cvsup.uk.FreeBSD.org

              * cvsup2.uk.FreeBSD.org

              * cvsup3.uk.FreeBSD.org

              * cvsup4.uk.FreeBSD.org

   Esztorszag

              * cvsup.ee.FreeBSD.org

   Finnorszag

              * cvsup.fi.FreeBSD.org

              * cvsup2.fi.FreeBSD.org

   Franciaorszag

              * cvsup.fr.FreeBSD.org

              * cvsup1.fr.FreeBSD.org

              * cvsup2.fr.FreeBSD.org

              * cvsup3.fr.FreeBSD.org

              * cvsup4.fr.FreeBSD.org

              * cvsup5.fr.FreeBSD.org

              * cvsup8.fr.FreeBSD.org

   Fu:lo:p-szigetek

              * cvsup1.ph.FreeBSD.org

   Go:ro:gorszag

              * cvsup.gr.FreeBSD.org

              * cvsup2.gr.FreeBSD.org

   Hollandia

              * cvsup.nl.FreeBSD.org

              * cvsup2.nl.FreeBSD.org

              * cvsup3.nl.FreeBSD.org

   Indonezia

              * cvsup.id.FreeBSD.org

   Irorszag

              * cvsup.ie.FreeBSD.org

              * cvsup2.ie.FreeBSD.org

   Izland

              * cvsup.is.FreeBSD.org

   Izrael

              * cvsup.il.FreeBSD.org

   Japan

              * cvsup.jp.FreeBSD.org

              * cvsup2.jp.FreeBSD.org

              * cvsup3.jp.FreeBSD.org

              * cvsup4.jp.FreeBSD.org

              * cvsup5.jp.FreeBSD.org

              * cvsup6.jp.FreeBSD.org

   Kanada

              * cvsup1.ca.FreeBSD.org

   Kina

              * cvsup.cn.FreeBSD.org

              * cvsup2.cn.FreeBSD.org

              * cvsup3.cn.FreeBSD.org

              * cvsup4.cn.FreeBSD.org

              * cvsup5.cn.FreeBSD.org

   Kirgizisztan

              * cvsup.kg.FreeBSD.org

   Korea

              * cvsup.kr.FreeBSD.org

              * cvsup2.kr.FreeBSD.org

              * cvsup3.kr.FreeBSD.org

   Kuvait

              * cvsup1.kw.FreeBSD.org

   Lengyelorszag

              * cvsup.pl.FreeBSD.org

              * cvsup2.pl.FreeBSD.org

              * cvsup3.pl.FreeBSD.org

   Lettorszag

              * cvsup.lv.FreeBSD.org

              * cvsup2.lv.FreeBSD.org

   Litvania

              * cvsup.lt.FreeBSD.org

              * cvsup2.lt.FreeBSD.org

              * cvsup3.lt.FreeBSD.org

   Magyarorszag

              * cvsup.hu.FreeBSD.org

   Nemetorszag

              * cvsup.de.FreeBSD.org

              * cvsup2.de.FreeBSD.org

              * cvsup3.de.FreeBSD.org

              * cvsup4.de.FreeBSD.org

              * cvsup5.de.FreeBSD.org

              * cvsup6.de.FreeBSD.org

              * cvsup7.de.FreeBSD.org

              * cvsup8.de.FreeBSD.org

   Norvegia

              * cvsup.no.FreeBSD.org

   Olaszorszag

              * cvsup.it.FreeBSD.org

   O:rmenyorszag

              * cvsup1.am.FreeBSD.org

   Oroszorszag

              * cvsup.ru.FreeBSD.org

              * cvsup2.ru.FreeBSD.org

              * cvsup3.ru.FreeBSD.org

              * cvsup4.ru.FreeBSD.org

              * cvsup5.ru.FreeBSD.org

              * cvsup6.ru.FreeBSD.org

              * cvsup7.ru.FreeBSD.org

   Portugalia

              * cvsup.pt.FreeBSD.org

              * cvsup2.pt.FreeBSD.org

              * cvsup3.pt.FreeBSD.org

   Romania

              * cvsup.ro.FreeBSD.org

              * cvsup1.ro.FreeBSD.org

              * cvsup2.ro.FreeBSD.org

              * cvsup3.ro.FreeBSD.org

   San Marino

              * cvsup.sm.FreeBSD.org

   Spanyolorszag

              * cvsup.es.FreeBSD.org

              * cvsup2.es.FreeBSD.org

              * cvsup3.es.FreeBSD.org

   Svajc

              * cvsup.ch.FreeBSD.org

   Svedorszag

              * cvsup.se.FreeBSD.org

              * cvsup3.se.FreeBSD.org

   Szingapur

              * cvsup.sg.FreeBSD.org

   Szlovak Ko:ztarsasag

              * cvsup.sk.FreeBSD.org

   Szlovenia

              * cvsup.si.FreeBSD.org

              * cvsup2.si.FreeBSD.org

   Tajvan

              * cvsup.tw.FreeBSD.org

              * cvsup3.tw.FreeBSD.org

              * cvsup4.tw.FreeBSD.org

              * cvsup5.tw.FreeBSD.org

              * cvsup6.tw.FreeBSD.org

              * cvsup7.tw.FreeBSD.org

              * cvsup8.tw.FreeBSD.org

              * cvsup9.tw.FreeBSD.org

              * cvsup10.tw.FreeBSD.org

              * cvsup11.tw.FreeBSD.org

              * cvsup12.tw.FreeBSD.org

              * cvsup13.tw.FreeBSD.org

              * cvsup14.tw.FreeBSD.org

   Thaifo:ld

              * cvsup.th.FreeBSD.org

   To:ro:korszag

              * cvsup.tr.FreeBSD.org

              * cvsup2.tr.FreeBSD.org

   Uj-Zeland

              * cvsup.nz.FreeBSD.org

              * cvsup2.nz.FreeBSD.org

   Ukrajna

              * cvsup2.ua.FreeBSD.org

              * cvsup3.ua.FreeBSD.org

              * cvsup4.ua.FreeBSD.org

              * cvsup5.ua.FreeBSD.org

              * cvsup6.ua.FreeBSD.org

              * cvsup7.ua.FreeBSD.org

     --------------------------------------------------------------

A.7. CVS cimkek

   Meg kell adnunk egy revizio cimkejet, amikor a cvs vagy CVSup
   hasznalataval leto:ltju:k vagy frissitju:k a forrasokat. A
   revizios cimkek a FreeBSD egyik fejlesztesi iranyat vagy egy adott
   ido"pontbeli allapotat hivatkozzak. Az elo"bbi egy "ag cimkeje",
   mig az utobbi pedig egy "kiadas cimkeje".

     --------------------------------------------------------------

  A.7.1. Az agak cimkei

   A HEAD kivetelevel (amely mindig egy ervenyes cimke) az o:sszes
   cimke csak a src/ fara vonatkozik. A ports/, doc/ es www/ fak nem
   tartalmaznak agakat.

   HEAD

           A fo" fejlesztesi ag, avagy a FreeBSD-CURRENT szimbolikus
           neve. Ha nem adunk meg reviziot, ez lesz az
           alapertelmezes.

           A CVSup szamara ezt . cimke jelzi (itt most nem mondatvegi
           pontot jelo:li, hanem a . karaktert).

             Megjegyzes: A CVS szamara ez lesz az alapertelmezett
             ertek, ha nem adunk meg konkret revizios cimket.
             To:bbnyire nem tulzottan jo o:tlet egy STABLE valtozatot
             hasznalo gepen a CURRENT verzioju forrasok kikerese,
             kiveve hacsak nem ez a szandekunk.

   RELENG_7

           A FreeBSD-7.X fejlesztesi aga, mas neven a FreeBSD
           7-STABLE

   RELENG_7_2

           A FreeBSD-7.2 kiadas aga, ahova csak a biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_7_1

           A FreeBSD-7.1 kiadas aga, ahova csak a biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_7_0

           A FreeBSD-7.0 kiadas aga, ahova csak a biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_6

           A FreeBSD-6.X fejlesztesi aga, mas neven a FreeBSD
           6-STABLE

   RELENG_6_4

           A FreeBSD-6.4 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_6_3

           A FreeBSD-6.3 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_6_2

           A FreeBSD-6.2 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_6_1

           A FreeBSD-6.1 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_6_0

           A FreeBSD-6.0 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_5

           A FreeBSD-5.X fejlesztesi ag, mas neven a FreeBSD
           5-STABLE.

   RELENG_5_5

           A FreeBSD-5.5 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_5_4

           A FreeBSD-5.4 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_5_3

           A FreeBSD-5.3 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_5_2

           A FreeBSD-5.2 es FreeBSD-5.2.1 kiadasok aga, ahova csak
           biztonsagi frissitesek es a kritikus hibajavitasok
           keru:lnek.

   RELENG_5_1

           A FreeBSD-5.1 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_5_0

           A FreeBSD-5.0 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4

           A FreeBSD-4.X fejlesztesi aga, mas neven a FreeBSD
           4-STABLE.

   RELENG_4_11

           A FreeBSD-4.11 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_10

           A FreeBSD-4.10 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_9

           A FreeBSD-4.9 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_8

           A FreeBSD-4.8 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_7

           A FreeBSD-4.7 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_6

           A FreeBSD-4.6 es FreeBSD-4.6.2 kiadasok aga, ahova csak
           biztonsagi frissitesek es a kritikus hibajavitasok
           keru:lnek.

   RELENG_4_5

           A FreeBSD-4.5 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_4

           A FreeBSD-4.4 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_4_3

           A FreeBSD-4.3 kiadas aga, ahova csak biztonsagi
           frissitesek es a kritikus hibajavitasok keru:lnek.

   RELENG_3

           A FreeBSD-3.X fejlesztesi aga, mas neven a 3.X-STABLE.

   RELENG_2_2

           A FreeBSD-2.2.X fejlesztesi aga, mas neven a 2.2-STABLE.
           Ez az ag manapsag mar elavult.

     --------------------------------------------------------------

  A.7.2. A kiadasok cimkei

   Ezek a cimkek a FreeBSD egyes kiadasainak datumara hivatkoznak.
   Egy kiadas elo"keszitesenek es terjesztesenek folyamatarol
   reszleteiben a kiadasokat o:sszefoglalo laprol es a kiadasok
   epitesero"l szolo cikkbo"l tajekozodhatunk. Az src faban RELENG_
   kezdetu" cimkeket talalunk. A ports es doc fakban a cimkek nevei a
   RELEASE elo"taggal kezdo"dnek. Vegezetu:l a www faban nincsenek
   kiadasokhoz tartozo cimkek.

   RELENG_7_2_0_RELEASE

           FreeBSD 7.2

   RELENG_7_1_0_RELEASE

           FreeBSD 7.1

   RELENG_7_0_0_RELEASE

           FreeBSD 7.0

   RELENG_6_4_0_RELEASE

           FreeBSD 6.4

   RELENG_6_3_0_RELEASE

           FreeBSD 6.3

   RELENG_6_2_0_RELEASE

           FreeBSD 6.2

   RELENG_6_1_0_RELEASE

           FreeBSD 6.1

   RELENG_6_0_0_RELEASE

           FreeBSD 6.0

   RELENG_5_5_0_RELEASE

           FreeBSD 5.5

   RELENG_5_4_0_RELEASE

           FreeBSD 5.4

   RELENG_4_11_0_RELEASE

           FreeBSD 4.11

   RELENG_5_3_0_RELEASE

           FreeBSD 5.3

   RELENG_4_10_0_RELEASE

           FreeBSD 4.10

   RELENG_5_2_1_RELEASE

           FreeBSD 5.2.1

   RELENG_5_2_0_RELEASE

           FreeBSD 5.2

   RELENG_4_9_0_RELEASE

           FreeBSD 4.9

   RELENG_5_1_0_RELEASE

           FreeBSD 5.1

   RELENG_4_8_0_RELEASE

           FreeBSD 4.8

   RELENG_5_0_0_RELEASE

           FreeBSD 5.0

   RELENG_4_7_0_RELEASE

           FreeBSD 4.7

   RELENG_4_6_2_RELEASE

           FreeBSD 4.6.2

   RELENG_4_6_1_RELEASE

           FreeBSD 4.6.1

   RELENG_4_6_0_RELEASE

           FreeBSD 4.6

   RELENG_4_5_0_RELEASE

           FreeBSD 4.5

   RELENG_4_4_0_RELEASE

           FreeBSD 4.4

   RELENG_4_3_0_RELEASE

           FreeBSD 4.3

   RELENG_4_2_0_RELEASE

           FreeBSD 4.2

   RELENG_4_1_1_RELEASE

           FreeBSD 4.1.1

   RELENG_4_1_0_RELEASE

           FreeBSD 4.1

   RELENG_4_0_0_RELEASE

           FreeBSD 4.0

   RELENG_3_5_0_RELEASE

           FreeBSD-3.5

   RELENG_3_4_0_RELEASE

           FreeBSD-3.4

   RELENG_3_3_0_RELEASE

           FreeBSD-3.3

   RELENG_3_2_0_RELEASE

           FreeBSD-3.2

   RELENG_3_1_0_RELEASE

           FreeBSD-3.1

   RELENG_3_0_0_RELEASE

           FreeBSD-3.0

   RELENG_2_2_8_RELEASE

           FreeBSD-2.2.8

   RELENG_2_2_7_RELEASE

           FreeBSD-2.2.7

   RELENG_2_2_6_RELEASE

           FreeBSD-2.2.6

   RELENG_2_2_5_RELEASE

           FreeBSD-2.2.5

   RELENG_2_2_2_RELEASE

           FreeBSD-2.2.2

   RELENG_2_2_1_RELEASE

           FreeBSD-2.2.1

   RELENG_2_2_0_RELEASE

           FreeBSD-2.2.0

     --------------------------------------------------------------

A.8. AFS oldalak

   A FreeBSD a ko:vetkezo" szerverein erheto" el AFS:

   Svedorszag

           Az allomanyok a ko:vetkezo" helyen erheto"ek el:
           /afs/stacken.kth.se/ftp/pub/FreeBSD/

 stacken.kth.se         # Stacken Computer Club, KTH, Svedorszag
 130.237.234.43         #hot.stacken.kth.se
 130.237.237.230        #fishburger.stacken.kth.se
 130.237.234.3          #milko.stacken.kth.se

           Karbantarto: <ftp@stacken.kth.se>

     --------------------------------------------------------------

A.9. Rsync oldalak

   A most ko:vetkezo" oldalakon a FreeBSD-t erhetju:k el az rsync
   protokollal. Az rsync segedprogram mu"ko:deseben leginkabb a
   rcp(1) parancshoz hasonlit, de sokkal to:bb beallitassal
   rendelkezik, es az rsync tavoli frissiteseket kezelo" protokollja
   segitsegevel csak az allomanyok csoportjai ko:zo:tt levo"
   eltereseket ku:ldi at, amivel a halozaton keresztu:li
   szinkronizacio rendkivu:l felgyorsithato. Ez olyankor jelent
   szamunkra a legto:bbet, ha a FreeBSD FTP szerverenek vagy CVS
   repositoryjanak egyik tu:kro:zeset tartjuk karban. Az rsync to:bb
   operacios rendszerre is elerheto", es FreeBSD-n a net/rsync port
   vagy csomag tartalmazza.

   Cseh Ko:ztarsasag

           rsync://ftp.cz.FreeBSD.org/

           Elerheto" gyu"jtemenyek:

              * ftp: a FreeBSD FTP szerverenek reszleges tu:kro:zese.

              * FreeBSD: a FreeBSD FTP szerverenek teljes
                tu:kro:zese.

   Hollandia

           rsync://ftp.nl.FreeBSD.org/

           Elerheto" gyu"jtemenyek:

              * FreeBSD: a FreeBSD FTP szerverenek teljes
                tu:kro:zese.

   Oroszorszag

           rsync://cvsup4.ru.FreeBSD.org

           Elerheto" gyu"jtemenyek:

              * FreeBSD-gnats: A GNATS hibanyilvantarto adatbazis.

   Tajvan

           rsync://ftp.tw.FreeBSD.org/

           rsync://ftp2.tw.FreeBSD.org/

           rsync://ftp6.tw.FreeBSD.org/

           Elerheto" gyu"jtemenyek:

              * FreeBSD: a FreeBSD FTP szerverenek teljes
                tu:kro:zese.

   Egyesu:lt Kiralysag

           rsync://rsync.mirrorservice.org/

           Elerheto" gyu"jtemenyek:

              * sites/ftp.freebsd.org: a FreeBSD FTP szerverenek
                teljes tu:kro:zese.

   Amerikai Egyesu:lt Allamok

           rsync://ftp-master.FreeBSD.org/

           Ezt a szervert csak az elso"dleges FreeBSD tu:kro:zeseknek
           szabad hasznalniuk.

           Elerheto" gyu"jtemenyek:

              * FreeBSD: a FreeBSD FTP szerverenek ko:zponti
                archivuma.

              * acl: a FreeBSD ko:zponti ACL listaja.

           rsync://ftp13.FreeBSD.org/

           Elerheto" gyu"jtemenyek:

              * FreeBSD: a FreeBSD FTP szerver teljes tu:kro:zese.

     --------------------------------------------------------------

                      Fu:ggelek B. Irodalomjegyzek

   Mig a man oldalak a FreeBSD operacios rendszer egyes o:nallo
   reszeit targyaljak, ismert a teny, hogy arrol egyaltalan nem
   szolnak, mikeppen illeszkednek egymashoz ezek az alkotoelemek, es
   ezaltal hogyan mu"ko:dik maga az operacios rendszer. Erre a celra
   egyedu:l csak egy jo UNIX-os rendszeradminisztracios szakko:nyv es
   egy jo felhasznaloi keziko:nyv alkalmas.

     --------------------------------------------------------------

B.1. A FreeBSD-ro"l szolo ko:nyvek es folyoiratok

   Idegennyelvu" ko:nyvek es folyoiratok:

     * Using FreeBSD (kinai). Drmaster, 1997. ISBN 9-578-39435-7.

     * FreeBSD Unleashed (kinai forditas). China Machine Press. ISBN
       7-111-10201-0.

     * FreeBSD From Scratch (1. kiadas, kinai). China Machine Press.
       ISBN 7-111-07482-3.

     * FreeBSD From Scratch (2. kiadas, kinai). China Machine Press.
       ISBN 7-111-10286-X.

     * FreeBSD Handbook (2. kiadas, kinai). Posts & Telecom Press.
       ISBN 7-115-10541-3.

     * FreeBSD 3.x Internet (kinai). Tsinghua University Press. ISBN
       7-900625-66-6.

     * FreeBSD & Windows (kinai). China Railway Publishing House.
       ISBN 7-113-03845-X

     * FreeBSD Internet Services HOWTO (kinai). China Railway
       Publishing House. ISBN 7-113-03423-3

     * FreeBSD for PC 98'ers (japan). SHUWA System Co, LTD. ISBN
       4-87966-468-5 C3055 P2900E.

     * FreeBSD (japan). CUTT. ISBN 4-906391-22-2 C3055 P2400E.

     * Complete Introduction to FreeBSD (japan). Shoeisha Co., Ltd.
       ISBN 4-88135-473-6 P3600E.

     * Personal UNIX Starter Kit FreeBSD (japan). ASCII. ISBN
       4-7561-1733-3 P3000E.

     * FreeBSD Handbook (japan forditas). ASCII. ISBN 4-7561-1580-2
       P3800E.

     * FreeBSD mit Methode (nemet). Computer und Literatur
       Verlag/Vertrieb Hanser, 1998. ISBN 3-932311-31-0.

     * FreeBSD 4 - Installieren, Konfigurieren, Administrieren
       (nemet). Computer und Literatur Verlag, 2001. ISBN
       3-932311-88-4.

     * FreeBSD 5 - Installieren, Konfigurieren, Administrieren
       (nemet). Computer und Literatur Verlag, 2003. ISBN
       3-936546-06-1.

     * FreeBSD de Luxe (nemet). Verlag Modere Industrie, 2003. ISBN
       3-8266-1343-0.

     * FreeBSD Install and Utilization Manual (japan). Mainichi
       Communications Inc., 1998. ISBN 4-8399-0112-0.

     * Onno W Purbo, Dodi Maryanto, Syahrial Hubbany, Widjil Widodo
       Building Internet Server with FreeBSD (indonez nyelven). Elex
       Media Komputindo.

     * Absolute BSD: The Ultimate Guide to FreeBSD (kinai forditas).
       GrandTech Press, 2003. ISBN 986-7944-92-5.

     * The FreeBSD 6.0 Book (kinai). Drmaster, 2006. ISBN
       9-575-27878-X.

   Angol nyelvu" ko:nyvek es folyoiratok:

     * Absolute BSD: The Ultimate Guide to FreeBSD. No Starch Press,
       2002. ISBN: 1886411743

     * The Complete FreeBSD. O'Reilly, 2003. ISBN: 0596005164

     * The FreeBSD Corporate Networker's Guide. Addison-Wesley, 2000.
       ISBN: 0201704811

     * FreeBSD: An Open-Source Operating System for Your Personal
       Computer. The Bit Tree Press, 2001. ISBN: 0971204500

     * Teach Yourself FreeBSD in 24 Hours. Sams, 2002. ISBN:
       0672324245

     * FreeBSD 6 Unleashed. Sams, 2006. ISBN: 0672328755

     * FreeBSD: The Complete Reference. McGrawHill, 2003. ISBN:
       0072224096

     --------------------------------------------------------------

B.2. Felhasznaloi keziko:nyvek

     * Computer Systems Research Group, UC Berkeley. 4.4BSD User's
       Reference Manual. O'Reilly & Associates, Inc., 1994. ISBN
       1-56592-075-9

     * Computer Systems Research Group, UC Berkeley. 4.4BSD User's
       Supplementary Documents. O'Reilly & Associates, Inc., 1994.
       ISBN 1-56592-076-7

     * UNIX in a Nutshell. O'Reilly & Associates, Inc., 1990. ISBN
       093717520X

     * Mui, Linda. What You Need To Know When You Can't Find Your
       UNIX System Administrator. O'Reilly & Associates, Inc., 1995.
       ISBN 1-56592-104-6

     * Ohio Allami Egyetemnek van egy Alapozo UNIX kurzusa, amely az
       Interneten keresztu:l is elerheto" HTML es PostScript
       formatumokban.

       Ennek a dokumentumnak egy olasz forditasa is elerheto" az
       Olasz FreeBSD Dokumentacios Projekt kereteben.

     * Jpman Project, Japanese FreeBSD User's Group. FreeBSD User's
       Reference Manual (japan forditas). Mainichi Communications
       Inc., 1998. ISBN4-8399-0088-4 P3800E.

     * Az Edinburghi Egyetemen keszitettek az ujoncok szamara egy
       Internetes keziko:nyvet a UNIX ko:rnyezetekhez.

     --------------------------------------------------------------

B.3. Rendszeradminisztratori keziko:nyvek

     * Albitz, Paul and Liu, Cricket. DNS and BIND (4. kiadas).
       O'Reilly & Associates, Inc., 2001. ISBN 1-59600-158-4

     * Computer Systems Research Group, UC Berkeley. 4.4BSD System
       Manager's Manual. O'Reilly & Associates, Inc., 1994. ISBN
       1-56592-080-5

     * Costales, Brian es masok. Sendmail (2. kiadas). O'Reilly &
       Associates, Inc., 1997. ISBN 1-56592-222-0

     * Frisch, AEleen. Essential System Administration (2. kiadas).
       O'Reilly & Associates, Inc., 1995. ISBN 1-56592-127-5

     * Hunt, Craig. TCP/IP Network Administration (2. kiadas).
       O'Reilly & Associates, Inc., 1997. ISBN 1-56592-322-7

     * Nemeth, Evi. UNIX System Administration Handbook (3. kiadas).
       Prentice Hall, 2000. ISBN 0-13-020601-6

     * Stern, Hal. Managing NFS and NIS. O'Reilly & Associates, Inc.,
       1991. ISBN 0-937175-75-7

     * Jpman Project, Japan FreeBSD Users Group. FreeBSD System
       Administrator's Manual (japan forditas). Mainichi
       Communications Inc., 1998. ISBN4-8399-0109-0 P3300E.

     * Dreyfus, Emmanuel. Cahiers de l'Admin: BSD (2. kiadas,
       franciaul). Eyrolles, 2004. ISBN 2-212-11463-X

     --------------------------------------------------------------

B.4. Programozoi keziko:nyvek

     * Asente, Paul, Converse, Diana, and Swick, Ralph. X Window
       System Toolkit. Digital Press, 1998. ISBN 1-55558-178-1

     * Computer Systems Research Group, UC Berkeley. 4.4BSD
       Programmer's Reference Manual. O'Reilly & Associates, Inc.,
       1994. ISBN 1-56592-078-3

     * Computer Systems Research Group, UC Berkeley. 4.4BSD
       Programmer's Supplementary Documents. O'Reilly & Associates,
       Inc., 1994. ISBN 1-56592-079-1

     * Harbison, Samuel P. and Steele, Guy L. Jr. C: A Reference
       Manual (4. kiadas). Prentice Hall, 1995. ISBN 0-13-326224-3

     * Kernighan, Brian and Dennis M. Ritchie. The C Programming
       Language (2. kiadas). PTR Prentice Hall, 1988. ISBN
       0-13-110362-8

     * Lehey, Greg. Porting UNIX Software. O'Reilly & Associates,
       Inc., 1995. ISBN 1-56592-126-7

     * Plauger, P. J. The Standard C Library. Prentice Hall, 1992.
       ISBN 0-13-131509-9

     * Spinellis, Diomidis. Code Reading: The Open Source
       Perspective. Addison-Wesley, 2003. ISBN 0-201-79940-5

     * Spinellis, Diomidis. Code Quality: The Open Source
       Perspective. Addison-Wesley, 2006. ISBN 0-321-16607-8

     * Stevens, W. Richard and Stephen A. Rago. Advanced Programming
       in the UNIX Environment (2. kiadas). Reading, Mass. :
       Addison-Wesley, 2005. ISBN 0-201-43307-9

     * Stevens, W. Richard. UNIX Network Programming (2. kiadas), PTR
       Prentice Hall, 1998. ISBN 0-13-490012-X

     * Wells, Bill. "Writing Serial Drivers for UNIX". Dr. Dobb's
       Journal. 19(15), 1994. december, 68-71. es 97-99. oldal.

     --------------------------------------------------------------

B.5. Az operacios rendszerek belso" mu"ko:desero"l

     * Andleigh, Prabhat K. UNIX System Architecture. Prentice-Hall,
       Inc., 1990. ISBN 0-13-949843-5

     * Jolitz, William. "Porting UNIX to the 386". Dr. Dobb's
       Journal. 1991. januar - 1992. julius.

     * Leffler, Samuel J., Marshall Kirk McKusick, Michael J Karels
       es John Quarterman. The Design and Implementation of the
       4.3BSD UNIX Operating System. Reading, Mass. : Addison-Wesley,
       1989. ISBN 0-201-06196-1

     * Leffler, Samuel J., Marshall Kirk McKusick. The Design and
       Implementation of the 4.3BSD UNIX Operating System: Answer
       Book. Reading, Mass. : Addison-Wesley, 1991. ISBN
       0-201-54629-9

     * McKusick, Marshall Kirk, Keith Bostic, Michael J Karels es
       John Quarterman. The Design and Implementation of the 4.4BSD
       Operating System. Reading, Mass. : Addison-Wesley, 1996. ISBN
       0-201-54979-4

       (A ko:nyv 2. fejezete elerheto" online a FreeBSD Dokumentacios
       Projekt reszekent, valamint itt a 9. fejezet.)

     * Marshall Kirk McKusick, George V. Neville-Neil. The Design and
       Implementation of the FreeBSD Operating System. Boston, Mass.
       : Addison-Wesley, 2004. ISBN 0-201-70245-2

     * Stevens, W. Richard. TCP/IP Illustrated, Vol 1: The Protocols.
       Reading, Mass. : Addison-Wesley, 1996. ISBN 0-201-63346-9

     * Schimmel, Curt. UNIX Systems for Modern Architectures.
       Reading, Mass. : Addison-Wesley, 1994. ISBN 0-201-63338-8

     * Stevens, W. Richard. TCP/IP Illustrated, Vol 3: TCP for
       Transactions, HTTP, NNTP and the UNIX Domain Protocols.
       Reading, Mass. : Addison-Wesley, 1996. ISBN 0-201-63495-3

     * Vahalia, Uresh. UNIX Internals -- The New Frontiers. Prentice
       Hall, 1996. ISBN 0-13-101908-2

     * Wright, Gary R. es W. Richard Stevens. TCP/IP Illustrated, Vol
       2: The Implementation. Reading, Mass. : Addison-Wesley, 1995.
       ISBN 0-201-63354-X

     --------------------------------------------------------------

B.6. Biztonsagrol szolo irasok

     * Cheswick, William R. es Steven M. Bellovin. Firewalls and
       Internet Security: Repelling the Wily Hacker. Reading, Mass. :
       Addison-Wesley, 1995. ISBN 0-201-63357-4

     * Garfinkel, Simson es Gene Spafford. Practical UNIX & Internet
       Security (2. kiadas). O'Reilly & Associates, Inc., 1996. ISBN
       1-56592-148-8

     * Garfinkel, Simson. PGP Pretty Good Privacy. O'Reilly &
       Associates, Inc., 1995. ISBN 1-56592-098-8

     --------------------------------------------------------------

B.7. Hardverrel foglalkozo irasok

     * Anderson, Don es Tom Shanley. Pentium Processor System
       Architecture (2. kiadas). Reading, Mass. : Addison-Wesley,
       1995. ISBN 0-201-40992-5

     * Ferraro, Richard F. Programmer's Guide to the EGA, VGA, and
       Super VGA Cards (3. kiadas). Reading, Mass. : Addison-Wesley,
       1995. ISBN 0-201-62490-7

     * Az Intel altal gyartott processzorokrol es chipsetekro"l,
       valamint az altaluk kialakitott szabvanyokrol a sajat
       fejleszto"i oldalukon, altalaban PDF allomanyok formajaban
       kaphatunk informaciokat.

     * Shanley, Tom. 80486 System Architecture (3. kiadas). Reading,
       Mass. : Addison-Wesley, 1995. ISBN 0-201-40994-1

     * Shanley, Tom. ISA System Architecture (3. kiadas). Reading,
       Mass. : Addison-Wesley, 1995. ISBN 0-201-40996-8

     * Shanley, Tom. PCI System Architecture (4. kiadas). Reading,
       Mass. : Addison-Wesley, 1999. ISBN 0-201-30974-2

     * Van Gilluwe, Frank. The Undocumented PC (2. kiadas). Reading,
       Mass: Addison-Wesley Pub. Co., 1996. ISBN 0-201-47950-8

     * Messmer, Hans-Peter. The Indispensable PC Hardware Book (4.
       kiadas). Reading, Mass: Addison-Wesley Pub. Co., 2002. ISBN
       0-201-59616-4

     --------------------------------------------------------------

B.8. UNIX to:rtenelem

     * Lion, John. Lion's Commentary on UNIX (6. kiadas,
       forraskoddal). ITP Media Group, 1996. ISBN 1573980137

     * Raymond, Eric S. The New Hacker's Dictionary (3. kiadas). MIT
       Press, 1996. ISBN 0-262-68092-0. Vagy Zsargon fajlkent is
       ismert.

     * Salus, Peter H. A quarter century of UNIX. Addison-Wesley
       Publishing Company, Inc., 1994. ISBN 0-201-54777-5

     * Simon Garfinkel, Daniel Weise, Steven Strassmann. The
       UNIX-HATERS Handbook. IDG Books Worldwide, Inc., 1994. ISBN
       1-56884-203-1. Kifogyott, de elerheto" ezen a linken.

     * Don Libes, Sandy Ressler. Life with UNIX -- ku:lo:nkiadas.
       Prentice-Hall, Inc., 1989. ISBN 0-13-536657-7

     * The BSD family tree.
       http://www.FreeBSD.org/cgi/cvsweb.cgi/src/share/misc/bsd-family-tree
       vagy egy telepitett FreeBSD rendszeren a
       /usr/share/misc/bsd-family-tree allomany.

     * Networked Computer Science Technical Reports Library.
       http://www.ncstrl.org/

     * Old BSD releases from the Computer Systems Research group
       (CSRG). http://www.mckusick.com/csrg/Ez a 4 CD-s keszlet
       tartalmazza az o:sszes BSD verziot a 1BSD-to"l kezdve a 4.4BSD
       es 4.4BSD-Lite2-ig (de nem a 2.11BSD-t sajnos nem). Az utolso
       lemezen megtalalhatoak a vegleges forrasok, illetve az SCCS
       allomanyok.

     --------------------------------------------------------------

B.9. Magazinok es folyoiratok

     * The C/C++ Users Journal. R&D Publications Inc. ISSN 1075-2838

     * Sys Admin -- The Journal for UNIX System Administrators.
       Miller Freeman, Inc. ISSN 1061-2688

     * freeX -- Das Magazin fu:r Linux - BSD - UNIX (nemet).
       Computer- und Literaturverlag GmbH. ISSN 1436-7033

     --------------------------------------------------------------

                  Fu:ggelek C. Forrasok az interneten

   A FreeBSD gyors u:temu" fejlo"dese a nyomtatott mediat
   alkalmatlanna teszi a legfrissebb fejlesztesek nyomonko:vetesere.
   Ezzel szemben az elektronikus ero"forrasok a biztos, ha gyakran
   nem is csak az egyetlen, modjai a legujabb elo"relepesek
   figyelemmel ko:vetesenek. Mivel a FreeBSD-t to:bbsegeben
   o:nkentesek fejlesztik, az o"t ko:ru:lvevo" felhasznaloi
   ko:zo:sseg o:nmaga is egyfajta "szakmai segelynyujto egyletkent"
   funkcional, amelyet leghatekonyabban elektronikus levelben, webes
   forumokon vagy USENET hircsoportokon keresztu:l erhetu:nk el.

   A tovabbiakban a FreeBSD felhasznalok ko:zo:ssegenek ku:lo:nbo:zo"
   fajtaju elerheto"segeit vazoljuk fel nagyvonalakban. Ha ugy
   erezzu:k, hogy ebbo"l a felsorolasban kimaradt volna valami, akkor
   ne habozzunk rola ertesitest ku:ldeni a FreeBSD Dokumentacios
   Projekt levelezesi lista cimere (angolul), hogy felvehessu:k a
   to:bbi ko:ze.

     --------------------------------------------------------------

C.1. Levelezesi listak

   A FreeBSD ko:re csoportosulokat levelezesi listakon keresztu:l
   tudjuk ko:zvetlenu:l elerni, ezen a modon tehetu:nk fel
   kerdeseket, vethetu:nk fel temakat. Ezek ko:zo:tt to:bb
   ku:lo:nbo:zo" teru:lettel foglalkozo listat talalhatunk. Ezert
   celszeru" mindig a hozzaszolasainkat a temankhoz legko:zelebb allo
   listara ku:ldeni, mert enelku:l szinte biztos, hogy nem kapunk
   pontos vagy gyors valaszt.

   A ku:lo:nbo:zo" listak temajanak ro:vid leirasa a dokumentum aljan
   olvashato. Szeretnenk mindenkit megkerni, hogy mielo"tt
   feliratkozik vagy levelet ku:ld valamelyik listara, figyelmesen
   olvassa el ezeket. Az egyes listak tagjai mar igy is naponta
   to:bbszaz FreeBSD-vel kapcsolatos u:zenetet kapnak, miko:zben a
   listak tematikajanak es szabalyainak lefektetesevel igyekszu:nk a
   jel-zaj aranyt minel kedvezo"bb szinten tartani. Ezek nelku:l a
   levelezesi listak a Projekt szamara haszontalan kommunikacios
   eszko:zo:kke valnanak.

     Megjegyzes: A freebsd-test cimet hasznaljuk, ha ki akarjuk
     probalni, hogy tudunk-e levelet ku:ldeni a FreeBSD listaira. A
     to:bbi listara viszont leheto"leg ne ku:ldju:nk teszt jellegu"
     u:zeneteket.

   Ha nem tudjuk eldo:nteni, hogy pontosan melyik listat is kellene
   megcimeznu:nk kerdesu:nkkel, olvassuk el a Hogyan kapjunk
   ertekelheto" valaszt a FreeBSD-questions levelezesi listarol cimu"
   leirast (angolul).

   Mielo"tt akarmelyik listara is levelet ku:ldenenk, olvassuk el a
   Levelezesi listak Gyakran Ismetelt Kerdeseit (angolul), amivel
   elkeru:lhetju:k a gyakran feltett kerdesek es temak ismetelt
   felhozasat.

   A levelezesi listak tartalma folyamatosan archivalodik, es ezekben
   az archivumokban a FreeBSD honlapjan tudunk keresni. Az itt
   elerheto", kulcsszavak alapjan to:rteno" kereses remek modjat
   nyujtja a gyakran felmeru:lo" kerdesek egyszeru" es gyors
   megvalaszolasanak, ezert ilyen esetekben elo"szo:r mindig ezt
   javasolt hasznalni. Ez egyben mellesleg azt is jelenti, hogy a
   FreeBSD levelezesi listaira ku:ldo:tt u:zenetek fennmaradnak az
   o:ro:kkevalosagig. Ha a beku:ldendo" u:zenet bizalmas
   informaciokat tartalmaz, erdemes megfontolni egy eldobhato anonim
   e-mail cim hasznalatat es kizarolag csak a publikus reszet
   beku:ldeni.

     --------------------------------------------------------------

  C.1.1. A listak o:sszefoglalasa

   Altalanos listak: A ko:vetkezo" altalanos celu listakhoz szabadon
   (es nyugodtan) csatlakozhatunk:

               Lista                           Tartalom               
   freebsd-advocacy               A FreeBSD igejenek terjesztese      
   freebsd-announce               Fontosabb esemenyek es              
                                  elo"relepesek a projektek eleteben  
   freebsd-arch                   Architekturalis es tervezesi        
                                  kerdesek targyalasa                 
                                  A FreeBSD hibabejelenteseit tarolo  
   freebsd-bugbusters             adatbazis es a kapcsolodo           
                                  eszko:zo:k karbantartasara          
                                  vonatkozo megbeszelesek             
   freebsd-bugs                   Hibajelentesek                      
   freebsd-chat                   A FreeBSD ko:zo:sseg nem szakmai    
                                  jellegu" dolgai                     
   freebsd-current                A FreeBSD-CURRENT hasznalatanak     
                                  targyalasa                          
   freebsd-isp                    A FreeBSD-t alkalmazo               
                                  internet-szolgaltatok foruma        
   freebsd-jobs                   FreeBSD-s munkaleheto"segek         
                                  A FreeBSD fejlo"deset iranyito      
   freebsd-policy                 csoport (Core Team) do:nteseiro"l   
                                  tajekoztato lista. A forgalma       
                                  kicsi, csak olvashato.              
   freebsd-questions              A felhasznalok kerdesei es szakmai  
                                  segitsegnyujtas                     
   freebsd-security-notifications Biztonsagi figyelmeztetesek         
   freebsd-stable                 A FreeBSD-STABLE hasznalatat        
                                  illeto" kerdesek                    
   freebsd-test                   Ide lehet ku:ldeni a                
                                  probau:zeneteket                    

   Szakmai listak: A ko:vetkezo" listak szakmai jellegu" temakat
   kepviselnek. Mielo"tt barmelyiku:kre levelet ku:ldenenk vagy
   feliratkoznank, figyelmesen olvassuk el a tartalmukat es celjaikat
   bemutato ro:vid leirasukat.

           Lista                           Tartalom                   
   freebsd-acpi           Az ACPI es energiagazdalkodas tamogatas     
                          fejlesztese                                 
   freebsd-afs            Az AFS portolasa FreeBSD-re                 
   freebsd-aic7xxx        Az Adaptec AIC 7xxx sorozat meghajtoinak    
                          fejlesztese                                 
   freebsd-alpha          A FreeBSD Alpha portja                      
   freebsd-amd64          A FreeBSD AMD64 portja                      
   freebsd-apache         Az Apache es hozzatartozo portok targyalasa 
   freebsd-arm            A FreeBSD ARM(R) portja                     
   freebsd-atm            FreeBSD hasznalata ATM halozatokkal         
   freebsd-audit          A forraskod elleno"rzesero"l szolo projekt  
   freebsd-binup          A binaris frissitesekkel foglalkozo         
                          rendszer tervezese es fejlesztese           
   freebsd-bluetooth      A Bluetooth technologia hasznalata a        
                          FreeBSD-ben                                 
   freebsd-cluster        A FreeBSD klaszteres ko:rnyezetben          
   freebsd-cvsweb         A CVSweb karbantartasa                      
   freebsd-database       Adatbazisok hasznalata es fejlesztese       
                          FreeBSD alatt                               
   freebsd-doc            FreeBSD-ro"l szolo leirasok keszitese       
   freebsd-drivers        Eszko:zmeghajtok irasa FreeBSD-re           
                          Az Eclipse integralt fejleszto"i            
   freebsd-eclipse        ko:rnyezet, eszko:zeinek, gazdag kliens     
                          alkalmazasinak es portjainak FreeBSD alatti 
                          hasznalata                                  
   freebsd-embedded       A FreeBSD hasznalata beagyazott             
                          alkalmazasokban                             
                          Olyan FreeBSD-s szoftverek fu:ggetlen       
   freebsd-eol            tovabbfejlesztese, amelyeket hivatalosan    
                          mar nem tamogatnak                          
   freebsd-emulation      Linux/MS-DOS/Windows es hasonlo rendszerek  
                          emulacioja                                  
   freebsd-firewire       A FreeBSD es a FireWire(R) (iLink, IEEE     
                          1394) kapcsolatanak technikai kerdesei      
   freebsd-fs             Allomanyrendszerek                          
   freebsd-gecko          A Gecko Rendering Engine alkalmazasaval     
                          kapcsolatos problemak                       
   freebsd-geom           A GEOM-hoz tartozo temak es implementaciok  
   freebsd-gnome          A GNOME es GNOME-alkalmazasok portolasa     
   freebsd-hackers        Altalanos szakmai temak                     
   freebsd-hardware       A FreeBSD futtatasara szolgalo hardverekkel 
                          foglalkozo temak                            
   freebsd-i18n           A FreeBSD honositasa                        
   freebsd-ia32           A FreeBSD hasznalata az IA-32 (Intel x86)   
                          platformon                                  
   freebsd-ia64           A FreeBSD portolasa az Intel ko:vetkezo"    
                          IA64 rendszereire                           
   freebsd-ipfw           Az IP tu"zfal kodjanak ujratervezeset       
                          erinto" szakmai megbeszelesek               
   freebsd-isdn           ISDN fejleszto"k levelei                    
   freebsd-jail           A jail(8) segedprogram                      
   freebsd-java           Java fejleszto"k kerdesei es a JDK-k        
                          atu:ltetese FreeBSD-re                      
   freebsd-kde            A KDE es KDE-alkalmazasok portolasa         
   freebsd-lfs            Az LFS portolasa FreeBSD-re                 
   freebsd-libh           A masodik generacios telepito"- es          
                          csomagrendszer                              
   freebsd-mips           A FreeBSD portolasa MIPS(R)-re              
   freebsd-mobile         A mobil szamitogepekkel kapcsolatos         
                          megbeszelesek                               
   freebsd-mono           Mono es C# alkalmazasok FreeBSD alatt       
   freebsd-mozilla        A Mozilla atu:ltetese FreeBSD-re            
   freebsd-multimedia     Multimedia alkalmazasok                     
   freebsd-new-bus        A buszarchitekturaval kapcsolatos szakmai   
                          megbeszelesek                               
   freebsd-net            A TCP/IP forraskodjaval es                  
                          halozatkezelessel kapcsolatos kerdesek      
   freebsd-openoffice     A OpenOffice.org es StarOffice alkalmazasok 
                          portolasa FreeBSD-re                        
   freebsd-performance    Nagy terhelesu" es teljesitmenyu"           
                          rendszerek teljesitmenyhangolasi kerdesei   
   freebsd-perl           A rengeteg Perl alapu port karbantarsa      
   freebsd-pf             A csomagszu"ro" mu"ko:desevel kapcsolatos   
                          kerdesek es megbeszelesek                   
   freebsd-platforms      Portolas nem Intel architekturaju           
                          platformokra                                
   freebsd-ports          A Portgyu"jtemeny mu"ko:dese                
   freebsd-ports-bugs     A portokhoz tartozo hibak es hibajelentesek 
                          megbeszelese                                
   freebsd-ppc            A FreeBSD portolasa PowerPC(R)-re           
   freebsd-proliant       HP ProLiant szerverek es a FreeBSD          
                          kapcsolata                                  
   freebsd-python         A Python FreeBSD-n futo valtozatanak        
                          problemai                                   
   freebsd-qa             A mino"segbiztositas megbeszelese,          
                          ku:lo:no:sen a kiadasok ko:zeledtevel       
   freebsd-rc             Az rc.d rendszer es annak fejlo"dese        
   freebsd-realtime       A FreeBSD valosideju" kiterjeszteseinek     
                          fejlesztese                                 
   freebsd-ruby           A Ruby hasznalata FreeBSD rendszereken      
   freebsd-scsi           A SCSI alrendszer                           
   freebsd-security       A FreeBSD mu"ko:deset fenyegeto" biztonsagi 
                          problemak                                   
                          A FreeBSD hasznalata beagyazott             
   freebsd-small          alkalmazasokban (elavult; helyette a        
                          freebsd-embedded cimet hasznaljuk)          
                          Az [A]Szimmetrikus to:bbszalu               
   freebsd-smp            feldolgozashoz ([A]Symmetric                
                          MultiProcessing) tartozo tervezesi          
                          megbeszelesek                               
   freebsd-sparc64        A FreeBSD portolasa Sparc(R) alapu          
                          rendszerekre                                
   freebsd-standards      A FreeBSD megfelelese a C99 es POSIX        
                          szabvanyoknak                               
   freebsd-sun4v          A FreeBSD portolasa UltraSPARC T1 alapu     
                          rendszerekre                                
   freebsd-threads        A FreeBSD szalkezelese                      
   freebsd-testing        A FreeBSD teljesitmeny- es megbizhatosagi   
                          tesztjei                                    
   freebsd-tokenring      A Token Ring tamogatasa a FreeBSD-ben       
   freebsd-usb            USB tamogatas a FreeBSD-ben                 
                          A FreeBSD reszero"l tamogatott              
   freebsd-virtualization ku:lo:nbo:zo" virtualizacios technologiak   
                          targyalasa                                  
   freebsd-vuxml          A VuXML infrastruktura targyalasa           
   freebsd-x11            Az X11 karbantartasa es tamogata FreeBSD    
                          alatt                                       
   freebsd-xen            A Xen FreeBSD portjanak (implementaciok,    
                          hasznalat) targyalasa                       

   Korlatozott listak: (Limited lists) A ko:vetkezo" listak sokkal
   jobban specializalodott (es igenyesebb) ko:zo:ssegnek szolnak, nem
   a nagyko:zo:nsegnek. Ezert mielo"tt egy ilyen listara
   feliratkoznank, erdemes nemi tapasztalatot gyu"jtenu:nk a szakmai
   temaju listakon, igy megismerju:k az itt alkalmazott kommunikacios
   szabalyokat.

          Lista                           Tartalom                    
   freebsd-hubs        A tu:kro:zesek u:zemelteto"i szamara           
                       (infrastrukturalis tamogatas)                  
   freebsd-user-groups A felhasznaloi csoportok o:sszefogasa          
   freebsd-vendors     A forgalmazok koordinalasa a kiadasok elo"tt   
   freebsd-wip-status  A FreeBSD-vel kapcsolatos folyamatban levo"    
                       fejlesztesek helyzetjelentesei                 
   freebsd-www         A www.FreeBSD.org karbantartoi szamara         

   Kivonatolt listak: (Digest lists) Az eddig emlitett listak
   elerheto"ek kivonatolt formaban is. Miutan feliratkoztunk egy
   listara, a hozzaferesu:nk beallitasainal kivalaszthatjuk, hogy
   kivonatolt formatumban kivanjuk-e kapni a leveleket.

   CVS es SVN listak: (CVS & SVN lists) A ko:vetkezo" listak a
   forrasfa ku:lo:nbo:zo" reszeinek valtoztatasarol es a hozzajuk
   tartozo u:zenetekro"l adnak ertesitest. Ezek a listak csak
   olvasasra vannak, nem szabad rajuk levelet ku:ldeni.

          Lista           Forraskod teru:lete     A teru:let leirasa  
                                                  (minek a forrasa)   
                                                 A faban vegzett      
   cvs-all              /usr/(CVSROOT|doc|ports) akarmelyik modositas 
                                                 (az o:sszes CVS      
                                                 lista egyu:tt)       
   cvs-doc              /usr/(doc|www)           A doc es www agak    
                                                 valtozasai           
   cvs-ports            /usr/ports               A portfa valtozasai  
   cvs-projects         /usr/projects            A projektek          
                                                 valtozasai           
                                                 A rendszer           
                                                 forrasanak           
   cvs-src              /usr/src                 valtozasai (az svn   
                                                 es cvs ko:zti        
                                                 importer mu"ko:dese  
                                                 alapjan generalodik) 
                                                 A Subversion         
   svn-src-all          /usr/src                 repositoryk          
                                                 valtozasai (kiveve a 
                                                 user es a projects)  
                                                 A Subversion         
                                                 repository           
   svn-src-head         /usr/src                 "fo"aganak" (a       
                                                 FreeBSD-CURRENT      
                                                 forrasainak)         
                                                 valtozasai           
                                                 A projects           
                                                 valtozasai a         
   svn-src-projects     /usr/projects            forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A releases           
                                                 valtozasai a         
   svn-src-release      /usr/src                 forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A releng agak        
                                                 (biztonsagi          
                                                 frissitesek es       
   svn-src-releng       /usr/src                 kiadasok) valtozasai 
                                                 a forrasokat tarolo  
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A stabil verziokhoz  
                                                 tartozo agak         
   svn-src-stable       /usr/src                 valtozasai a         
                                                 forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:le  
                                                 A stable/6 ag        
                                                 valtozasai a         
   svn-src-stable-6     /usr/src                 forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A stable/7 ag        
                                                 valtozasai a         
   svn-src-stable-7     /usr/src                 forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A Subversion         
                                                 repositoryban        
   svn-src-stable-other /usr/src                 talalhato korabbi    
                                                 stable agak          
                                                 valtozasai           
                                                 A forrasokat tarolo  
                                                 Subversion           
                                                 repositoryhoz        
   svn-src-svnadmin     /usr/src                 tartozo szkriptek es 
                                                 egy konfiguracios    
                                                 allomanyok           
                                                 valtozasai           
                                                 A user valtozasai a  
   svn-src-user         /usr/src                 forrasokat tarolo    
                                                 Subversion           
                                                 repositoryn belu:l   
                                                 A vendor valtozasai  
   svn-src-vendor       /usr/src                 a forrasokat tarolo  
                                                 Subversion           
                                                 repositoryn belu:l   

     --------------------------------------------------------------

  C.1.2. Hogyan iratkozzunk fel

   Ha fel akarunk iratkozni valamelyik listara, kattintsunk a nevere,
   vagy menju:nk a http://lists.FreeBSD.org/mailman/listinfo cimre es
   a valasszuk ki onnan a keresett listat. A lista oldalan
   megtalalunk minden feliratkozassal kapcsolatos utasitast.

   Tenylegesen ugy tudunk u:zenni egy listara, ha levelet ku:ldu:nk
   az <listanev@FreeBSD.org> cimre, amely ezutan a lista tagjai
   ko:zo:tt kezbesitesre keru:l a vilagban.

   A listarol ugy tudunk leiratkozni, ha a rola kapott valamelyik
   level aljan talalhato URL-re kattintunk. Masik megoldas, ha magunk
   ku:ldu:nk egy levelet a <listanev-unsubscribe@FreeBSD.org> cimre.

   Meg egyszer szeretnenk kerni, hogy a szakmai temaju levelezesi
   listakon folyo tarsalgasokat igyekezzu:nk az adott teman belu:l
   tartani. Ha csupan a fontosabb bejelentesekre vagyunk kivancsiak,
   akkor a kisforgalmu FreeBSD announcements levelezesi lista
   hasznalatat valasszuk.

     --------------------------------------------------------------

  C.1.3. A listak tematikaja

   Minden FreeBSD-s levelezesi lista rendelkezik bizonyos
   alapszabalyokkal, amelyek minden tagnak el kell fogadnia. Az
   ismeretett iranyelvek elleni vetkezes a FreeBSD postamesterenek
   <postmaster@FreeBSD.org> ket (2, azaz ketto") irasos
   figyelmezteteset vonja maga utan, amelyek figyelmen kivu:l
   hagyasaval, tehat a harmadik szabalysertes alkalmaval, a ku:ldo"
   eltavolitasra keru:l a FreeBSD o:sszes levelezesi listajarol es a
   tovabbiakban szu"rni fogjak a leveleit. Sajnaljuk, hogy ilyen
   szabalyokat es szankciokat kellett bevezetnu:nk, de napjaink
   internetes technologiai igen elvadultak es ahogy az lathato is,
   sokan egyszeru"en nem fogjak fel, mennyire seru:lekenyek egyes
   reszei.

   Ko:zlekedesi szabalyok:

     * Minden beku:ldo:tt level temajanak meg kell felelnie az adott
       lista tartalmanak, tehat peldaul a szakmai kerdesekkel
       foglalkozo listakon csak szakmai temaju leveleknek szabad
       megjelenniu:k. Az oda nem illo" csevereszes es ertelmetlen
       vitazas csak a lista erteket cso:kkenti, ezert ezt senkito"l
       sem tu"rju:k. A ko:tetlenebb, konkret tema nelku:li
       megbeszeleseket inkabb a FreeBSD chat levelezesi lista cimen
       folytassuk.

     * 2 listanal to:bbre ne ku:ldju:k be ugyanazt a levelet, es 2
       listara is csak akkor ku:ldju:k, ha az egyertelmu"en es
       nyilvanvaloan indokolt. A legto:bb listanal igy is rengeteg az
       atfedes, kiveve a legtitkosabb kombinaciokat (peldaul "-stable
       es -scsi"), ezert nem tul sok ertelme van egyszerre egynel
       to:bb listat is ertesiteni. Ha olyan u:zenetet kapunk,
       amelynek a Cc (masolat) mezo"jeben to:bb lista cime is
       szerepel, akkor tovabbku:ldes vagy valaszadas soran
       to:ro:lju:k ezeket. Az altalunk ku:ldo:tt levelekert tovabbra
       is mi magunk vagyunk a felelo"sek, fu:ggetlenu:l attol, hogy
       ki volt a level eredeti feladoja.

     * Tilos (vita ko:zben) szemelyeskedni vagy karomkodni, beleertve
       a felhasznalokat es a fejleszto"ket is. A netikett
       megszegeset, peldaul a privat levelezes elo"zetes engedely
       nelku:li tovabbku:ldeset vagy egyes reszleteinek ko:zleset,
       elitelju:k, de nyiltan nem tiltjuk. Nagyon ritka esetekben
       azonban elo"fordulhat, hogy a serto" tartalom o:nmagaban
       ellenkezik a lista elveivel es figyelmeztetest (esetleg
       kitiltast) von maga utan.

     * A FreeBSD-hez nem ko:to"do" termekek vagy szolgaltatasok
       reklamozasa szigoruan tilos, es ha bebizonyosodik, hogy a
       ku:ldo" szandekosan ku:ldte szet, akkor azonnali kitiltasban
       reszesu:l.

   Az egyes listak tematikaja:

   freebsd-acpi

           Az ACPI es energiagazdalkodas tamogatasanak fejlesztese

   freebsd-afs

           Andrew File System

           Ez a lista a CMU/Transarc AFS portolasarol szol

   freebsd-announce

           Fontosabb esemenyek / nagyobb lepesek

           Olyan emberek szamara ajanlott ez a levelezesi lista, akik
           csak a FreeBSD jelento"sebb esemenyei bejelentesei irant
           erdeklo"dnek. Ide ertendo"k a ku:lo:nbo:zo" ido"ko:zi es
           egyeb kiadasok, a FreeBSD ujitasainak bejelentesei.
           Ido"nkent o:nkentesek toborzasara stb. is hasznaljak. A
           forgalma nagyon kicsi, tartalma szigoruan elleno"rzo"tt.

   freebsd-arch

           Architekturalis es tervezesi kerdesek

           Ez a lista a FreeBSD architekturajat erinto" megbeszelesek
           szintere. Az itt megjeleno" u:zenetek szigoruan szakmai
           jellegu"ek. Nehany idevago tema:

              * Hogyan alakitsuk ugy at a forditasi rendszert, hogy
                egyszerre to:bb ku:lo:nbo:zo" parameteru" forditas is
                kepes legyen futni.

              * Mit kellene javitani a VFS-en a Heidemann-retegek
                mu"ko:desehez.

              * Hogyan tudnank ugy atalakitani az eszko:zmeghajtok
                felu:letet, hogy ugyanazok a meghajtok minden gond
                nelku:l kepesek legyenek to:bb buszon es
                architekturan is mu"ko:dni.

              * Hogyan irjunk meghajtot halozati eszko:zo:kho:z.

   freebsd-audit

           A forraskod vizsgalatat vegzo" projekt

           Ez a levelezesi lista a FreeBSD forraskodjanak
           vizsgalataval foglalkozik. Habar eredetileg csak a
           biztonsagot erinto" valtoztatasok elleno"rzesere jo:tt
           letre, napjainkra mar a forraskod mindenfele valtozasat
           felu:lvizsgalja.

           Erre a listara rengeteg javitas erkezik, amelyek
           valoszinu"leg egy atlag FreeBSD felhasznalo szamara nem
           tulzottan erdekesek. A kod valtozasatol fu:ggetlen
           biztonsagi kerdesek megvitatasa a freebsd-security listan
           to:rtenik. Viszont az o:sszes fejleszto"nek javasoljuk,
           hogy ku:ldjek be felu:lvizsgalatra a javitasaikat,
           ku:lo:no:sen abban az esetben, amikor a forraskod olyan
           reszehez nyulnak, ahol az adott hiba javitasa a rendszer
           egeszenek mu"ko:desere kihatassal lehet.

   freebsd-binup

           A FreeBSD binaris frissitesevel foglalkozo projekt

           Ez a lista ad otthont a binup vagy mas neven a binaris
           frissitesi rendszer (binary update system) ko:ru:l
           felmeru:lo" problemak targyalasanak. Tervezesi kerdesek,
           implementacios reszletek, javitasok, hiba- es
           allapotjelentesek, funkciok igenylese, a kod valtozasainak
           naplozasa es minden, ami a binuppal kapcsolatos.

   freebsd-bluetooth

           Bluetooth a FreeBSD-ben

           Ez a Bluetooth-os FreeBSD felhasznalok gyu:lekezo"helye.
           Tervezesi es implementacios kerdesek, javitasok, hiba- es
           allapotjelentesek, funkciok igenylese, minden, ami
           Bluetooth.

   freebsd-bugbusters

           A hibajelentesek kezelesenek o:sszefogasa

           A lista celja a Bugmeister es az o" Bugbustereinek,
           valamint a hibajelentesek adatbazisai iranti kifejezetten
           erdeklo"do" szemelyek egyu:ttmu"ko:desenek es
           kapcsolattartasanak elo"segitese. Ez a lista nem az egyes
           hibakrol, javitasokrol vagy azok jelentesero"l szol.

   freebsd-bugs

           Hibajelentesek

           Ezen a levelezesi listan lehet a FreeBSD hibait
           bejelenteni. Ha lehet, akkor a hibakat a send-pr(1)
           paranccsal vagy a webes felu:leten keresztu:l ku:ldju:k
           be.

   freebsd-chat

           A FreeBSD ko:zo:sseg nem szakmai jellegu" dolgai

           Erre a listara keru:l minden olyan nem szakmai jellegu",
           tarsadalmi erintkezessel kapcsolatos informacio, ami a
           to:bbi listarol kimaradt: Jordan mennyire hasonlit a
           rajzfilmeken lathato vadaszgo:renyre, kis- vagy
           nagybetu"vel irjuk-e, ki iszik sok kavet, hol fo"zik a
           legjobb so:ro:ket, ki fo"z so:rt az alagsoraban es igy
           tovabb. Elvetve felbukkannak olyan fontosabb esemenyek is
           (bulik, lakodalmak, gyermekaldas, uj munkahely stb),
           amelyek ugyan szakmai temajuak, de a folyomanyaik mar
           inkabb a -chat listara tartoznak.

   freebsd-core

           A FreeBSD iranyitasat vegzo" csapat

           Ezt a belso" levelezesi listat a Core Team tagjai
           hasznaljak. Akkor erdemes ide levelet ku:ldeni, ha
           FreeBSD-vel kapcsolatos fontos u:gyekben lenne
           szu:ksegu:nk do:ntesre vagy velemenyre.

   freebsd-current

           A FreeBSD-CURRENT hasznalataval kapcsolatos megbeszelesek

           A FreeBSD-CURRENT felhasznaloinak levelezesi listaja. Itt
           ertesu:lhetu:nk a -CURRENT felhasznalokat erinto" friss
           ujdonsagairol, es azokrol az utasitasokrol, amelyek
           ko:vetesevel mu"ko:dekepesen tarthatjuk a -CURRENT
           rendszeru:nket. Aki a "-CURRENT" verziot hasznalja,
           mindenkeppen iratkozzon fel erre a listara. Ez is egy
           szakmai jellegu" lista, ahova csak szigoruan ilyen temakat
           varnak.

   freebsd-cvsweb

           A FreeBSD CVSweb projekt

           A FreeBSD CVSweb szolgaltatasanak hasznalatarol,
           fejlesztesero"l es karbantartasarol szolo megbeszelesek.

   freebsd-doc

           A dokumentacios projekt

           Ez a levelezesi lista a FreeBSD-ro"l szolo ku:lo:nbo:zo"
           dokumentumok keszitesevel kapcsolatos problemak es
           projektek targyalasait o:leli fel. A levelezesi lista
           tagjait egyu:ttesen a "FreeBSD Dokumentacios Projekt"-nek
           nevezik. Ez egy nyilt lista, csatlakozzunk hozza batran!

   freebsd-drivers

           Eszko:zmeghajtok irasa FreeBSD-re

           A FreeBSD-hez keszu:lo" eszko:zmeghajtokrol szolo szakmai
           forum. Elso"sorban itt tehetik fel a meghajtok keszito"i a
           FreeBSD rendszermagjaban megtalalalhato API-kra vonatkozo
           kerdeseiket.

   freebsd-eclipse

           Az Eclipse integralt fejleszto"i ko:rnyezetenek,
           segeprogramjainak, kliensalkalmazasainak es portjainak
           FreeBSD felhasznalok szamara meghirdetett foruma.

           A lista azzal a szandekkal jo:tt letre, hogy ko:lcso:no:s
           tamogatast nyujtson az Eclipse fejleszto"i ko:rnyezet, a
           hozzatartozo segedeszko:zo:k, kliensalkalmazasok FreeBSD
           valtozatanak megvalasztasaban, telepiteseben es
           hasznalataban. Emellett az Eclipse ko:rnyezet es
           pluginjainak FreeBSD-re to:rteno" portolasarol is szo
           esik.

           Valamint igyekszik minel to:bbet profitalni az Eclipse es
           a FreeBSD ko:re csoportosulo ko:zo:ssegek ko:lcso:no:s
           informaciocserejebo"l.

           Habar a lista elso"dlegesen az Eclipse felhasznaloinek
           igenyeire koncentral, azok szamara is taptalajt ad, akik
           az Eclipse keretrendszer segitsegevel FreeBSD specifikus
           alkalmazasokat szeretnenek kifejleszteni.

   freebsd-embedded

           A FreeBSD hasznalata beagyazott alkalmazasokban

           Ez a lista a FreeBSD beagyazott rendszerekben to:rteno"
           hasznalatat igyekszik megvitatni. Ez egy szakmai jellegu"
           lista, ezert ide szigoruan csak ilyen temaju leveleket
           varunk. A listan targyalt beagyazott rendszereknek
           tekintu:nk minden olyan szamitasi eszko:zt, amely az
           altalanos szamitasi ko:rnyezetekkel szemben egyetlen
           feladatot lat el. Nem feltetlenu:l csak ilyenek, de
           peldaul a ku:lo:nfele telefonok, illetve halozati
           eszko:zo:k, mint peldaul utvalasztok, switchek, PBX-ek,
           tavoli mero"eszko:zo:k, PDA-k, eladasi rendszerek es igy
           tovabb.

   freebsd-emulation

           A Linux/MS-DOS/Windows rendszerek emulacioja

           Ezen a listan arrol ertekezhetu:nk es olvashatunk, hogy
           FreeBSD alatt mikent futtassunk mas operacios rendszerekre
           irt programokat.

   freebsd-eol

           O:sszefogas a FreeBSD Projekt altal tovabb mar tamogatott,
           FreeBSD-hez tartozo szoftverekert

           Ezen a listan kap vagy kaphat helyet a FreeBSD Projekt
           altal hivatalosan tovabb mar nem fejlesztett szoftverek
           felhasznaloi o:sszefogason alapulo tamogatasa (peldaul
           biztonsagi figyelmeztetesek vagy javitasok formajaban).

   freebsd-firewire

           FireWire (iLink, IEEE 1394)

           Ez a levelezesi lista foglalkozik a FreeBSD FireWire (azaz
           IEEE 1394, avagy iLink) alrendszerenek implementaciojaval.
           Az itt felmeru:lo" temak to:bbek ko:zt a szabvanyok,
           buszos eszko:zo:k es a hozzajuk tartozo protokollok,
           vezerlo"kartyak es chipkeszletek, valamint a
           mu"ko:dtetesu:kre szant programok felepitese es
           megvalositasa.

   freebsd-fs

           Allomanyrendszerek

           A FreeBSD-ben megjeleno" allomanyrendszerek kivesezese.
           Mivel ez egy szakmai jellegu" lista, ide hatarozottan csak
           ilyen jellegu" leveleket varunk.

   freebsd-gecko

           Gecko Rendering Engine

           Ezen a levelezesi listan a Gecko FreeBSD rendszerekre
           portolt valtozataval kapcsolatos forumot talaljuk.

           Az itt felmeru:lo" temak to:bbsegu:kben a Gecko alapu
           alkalmazasokrol, telepitesu:kro"l, es a FreeBSD alatti
           fejlesztesu:kro"l, tamogatasukrol szolnak.

   freebsd-geom

           GEOM

           A GEOM es a vele kapcsolatos implementacio megbeszelesei.
           Szakmai jellegu" lista, ezert erre tekintettel csak ilyen
           temaju leveleket postazzunk ide.

   freebsd-gnome

           GNOME

           A GNOME asztalko:rnyezet FreeBSD rendszereket erinto"
           hasznalatarol szolo lista. Mu"szaki jellegu", ezert
           szigoruan csak ilyen temakban tarsgalodjunk itt.

   freebsd-ipfw

           IP tu"zfalak

           A FreeBSD-ben levo" IP tu"zfal ujratervezesevel foglalkozo
           elgondolasok es szakmai temaju megbeszelesek otthona. Ide
           szigoruan csak ilyen temaju leveleket ku:ldju:nk!

   freebsd-ia64

           A FreeBSD portolasa I64-re

           Ez a levelezesi lista a FreeBSD az Intel IA-64
           platformjara keszitett portjaval foglalkozo egyenek
           kommunikacios eszko:ze, ahol az ezzel kapcsolatos
           problemak es azok ku:lo:nbo:zo" megoldasai keru:lnek
           teritekre. A tema irant erdeklo"do"ket is szivesen latjuk.

   freebsd-isdn

           ISDN kommunikacio

           Ez a levelezesi lista a FreeBSD ISDN tamogatasarol szol.

   freebsd-java

           Java alapu fejlesztesek

           A levelezesi listan a nagyobb Java alkalmazasok FreeBSD
           alapu fejleszteset, valamint a JDK-k portolasarol es
           karbantartasat beszelik meg.

   freebsd-jobs

           Munkat keres/kinal

           Erre a forumra tudjuk beku:ldeni a kifejezetten
           FreeBSD-hez kapcsolodo munkaajanlatokat es
           o:neletrajzokat, tehat ez a megfelelo" hely, ha FreeBSD-s
           munkat keresu:nk, vagy eppen FreeBSD szakerto"ket. Ez
           azonban nem egy altalanos celu allasbo:rze, mert arra
           megvannak a megfelelo" helyek.

           Szeretnenk hozzatenni, hogy ez a lista, a to:bbi
           FreeBSD.org levelezesi listahoz hasonloan, vilagmeretekben
           mu"ko:dik. Ezert ne felejtsu:k sosem pontosan megjelo:lni
           a munkavegzes helyet, illetve hogy milyen kommunikacios es
           esetlegesen ko:lto:zesi leheto"segeket javaslunk.

           A leveleket csak nyilt formatumban ku:ldju:k --
           elso"sorban szo:veges formatumban, de az egyszeru"bb PDF,
           HTML vagy meg nehany mas hozzajuk hasonlo formatumot is
           alkalmazhatunk. Az olyan zart formatumok, mint peldaul a
           Microsoft Word (.doc) azonban nem fognak tovabbitodni.

   freebsd-kde

           KDE

           A KDE es FreeBSD kapcsolatarol szolo lista. Szigoruan
           szakmai jellegu", ezert csak ilyen temaju levelek ku:ldese
           elfogadott.

   freebsd-hackers

           Szakmai kerdesek

           Ez a FreeBSD szakmai jellegu" kerdeseivel foglalkozo
           forum. Ez az elso" szamu" szakmai levelezesi lista. A
           FreeBSD fejlesztesevel aktivan foglalkozo egyenek szamara
           ajanljuk, hiszen itt vethetik fel problemaikat, itt
           kereshetnek rajuk megoldasokat. Az ilyen tipusu
           megbeszeleseket figyelemmel ko:veto" egyeneket is szivesen
           fogadjuk. Mivel ez egy ero"sen szakmai jellegu" lista,
           ezert csak ilyen temaju leveleket varunk ide.

   freebsd-hardware

           A FreeBSD es a hardverek kapcsolatarol altalaban

           Ezen a listan keru:l megvitatasra minden olyan hardver,
           amelyen a FreeBSD mu"ko:dik: milyen gondok adodhatnak,
           milyen hardvereket erdemes beszereznu:nk vagy
           elkeru:lnu:nk.

   freebsd-hubs

           Tu:kro:zesek

           A FreeBSD tu:kro:zeseit karbantarto egyenek szamara fontos
           bejelentesek es megbeszelesek.

   freebsd-isp

           Az internet-szolgaltatok foruma

           Ezen a levelezesi listan a FreeBSD-t hasznalo
           internet-szolgaltatok tehetik fel kerdeseiket. Szigoruan
           csak szakmai jellegu" kerdesek engedelyezettek.

   freebsd-mono

           Mono es C# alkalmazasok FreeBSD alatt

           Ezen a levelezesi listan a Mono fejleszto"i keretrendszer
           FreeBSD alatt futo valtozataval kapcsolatos megbeszelesek
           folynak. Ez egy szakmai jellegu" lista. Itt a Mono vagy
           mas C# alkalmazasok FreeBSD valtozatanak elkeszitesen
           dolgozo egyenek tudnak problemakat felvetni vagy
           megvitatni a ku:lo:nbo:zo" megoldasokat. Rajtuk kivu:l
           viszont szeretettel varunk minden erdeklo"do"t a tema
           irant.

   freebsd-openoffice

           OpenOffice.org

           Az OpenOffice.org es StarOffice portolasaval es
           karbantartasaval kapcsolatos megbeszelesek.

   freebsd-performance

           A FreeBSD hangolasanak es gyorsitasanak targyalasa

           Ezen a levelezesi listan van leheto"segu:k a hackereknek,
           rendszergazdaknak es/vagy az erintett feleknek a FreeBSD
           teljesitmenyevel kapcsolatos temakban kifejteni a
           velemenyu:ket. Leginkabb nagy terheles alatt levo", vagy
           teljesitmenybeli problemakkal ku:szko:do", esetleg meg
           to:bbet tudo FreeBSD rendszerek targyalasa a cel.
           Leheto"leg az erintett gyartokkal es szallitokkal
           egyu:ttesen probaljuk kidolgozni a FreeBSD
           teljesitmenyenek no:velesere tett kiserleteinket, ezert
           o"ket is szivesen latjuk ezen a listan. Ez a kifejezetten
           szakmai jellegu" lista to:bbsegeben a tapasztalt FreeBSD
           felhasznalok, hackerek vagy rendszergazdak szamara tarja
           fel a gyors, megbizhato es skalazhato FreeBSD rendszerek
           leheto"segeit. Ez alapveto"en nem egy kerdezgeto"s lista,
           ahol a dokumentaciok elolvasasat tudjuk megsporolni, hanem
           egy olyan hely, ahol a teljesitmenyt erinto"
           megvalaszolatlan kerdesek es elo"remutato fejlesztesek
           nyernek teret.

   freebsd-pf

           A csomagszu"ro" tu"zfalrendszerrel kapcsolatos kerdesek

           A FreeBSD csomagszu"ro"jehez (packet filter, pf) tartozo
           tu"zfalrendszer megbeszeleseit o:sszefoglalo lista.
           Szakmai jellegu" fejtegetesek es felhasznaloi kerdesek
           egyarant jo:hetnek. Tovabba ezen a listan foglalkozunk az
           ALTQ rendszer mu"ko:desevel is.

   freebsd-platforms

           Portolas nem Intel plaformokra

           A FreeBSD ku:lo:nbo:zo", nem az Intel architekturara
           epitkezo" portjainak inditvanyozasa es altalanos jellegu"
           megvitatasa. Ez egy kiemelten szakmai jellegu" lista,
           ezert ide csak ilyen temaju leveleket varunk.

   freebsd-policy

           Az Core Team szabalyozasai

           Alacsony forgalmu, csak olvashato lista, ahol a FreeBSD
           fejleszteset iranyito csoport ku:lo:nbo:zo" do:nteseiro"l
           olvashatunk.

   freebsd-ports

           A "portok" megbeszelese

           A FreeBSD "portgyu"jtemenyevel" (/usr/ports), a portok
           infrastrukturajaval es a portok fejlesztesenek
           iranyitasaval kapcsolatos megbeszelesek. Ero"sen szakmai
           jellegu" lista, ezert ide csak ilyen temaban irjunk.

   freebsd-ports-bugs

           A "portok" hibainak targyalasa

           A FreeBSD "portgyu"jtemenyenek" (/usr/ports), a
           bejelentett portok es azok modositasahoz ko:to"do"
           hibajelentesekkel foglalkozo lista. Ez egy szakmai
           jellegu" lista, ahol csak ilyen jellegu" temakra
           szamitunk.

   freebsd-proliant

           A FreeBSD es a HP ProLiant szerverek kapcsolatat erinto"
           szakmai megbeszelesek

           Ezen a levelezesi listan a FreeBSD HP ProLiant szervereken
           to:rteno" hasznalatat celozzuk meg, beleertve a
           ProLianthoz tartozo eszko:zmeghajtokat, karbantarto es
           konfiguracios szoftvereket es BIOS-frissiteseket. Ennek
           megfelelo"en tehat a hpasmd, hpasmcli es hpacucli modulok
           is elso"sorban itt keru:lnek felboncolasra.

   freebsd-python

           A FreeBSD es a Python

           A lista a FreeBSD Python tamogatasanak fejlesztesero"l
           folytatott szakmai megbeszeleseket foglalja o:ssze.
           Elso"sorban a Python portolasaval foglalkozo egyenek,
           valamint a ku:lso" fejleszto"k altal keszitett modulok es
           a Zope FreeBSD-s alkalmazasaval foglalkozik. Az emlitett
           temak iranti erdeklo"do"ket is szeretettel varjuk.

   freebsd-questions

           Felhasznaloi kerdesek

           Ez a levelezesi lista a FreeBSD-vel kapcsolatos
           kerdesekro"l szol. Leheto"leg ne ku:ldju:nk "hogyan"
           temaju kerdeseket erre a szakmai listara, hacsak nem
           kifejezetten szakmai jellegu"nek szanjuk.

   freebsd-ruby

           A Ruby hasznalata FreeBSD rendszereken

           Ezen a listan a FreeBSD Ruby tamogatasaval foglalkozunk,
           temajat tekintve teljesen szakmai jellegu". Elso"sorban a
           Ruby portokon, ku:lso" Ruby ko:nyvtarakon es rendszereken
           dolgozo fejleszto"k figyelmebe ajanljuk.

           Mindenkit szeretettel varunk, aki ezekkel kapcsolatos
           szakmai targyu temakat szeretne megvitatni.

   freebsd-scsi

           A SCSI alrendszer

           Ezt a levelezesi listat a FreeBSD alatt a SCSI
           alrendszerrel foglalkozok szamara tarjuk fenn. Mivel ez
           egy ero"sen szakmai jellegu" lista, ezert rajta csak
           szakmai temak megengedettek.

   freebsd-security

           Biztonsagi problemak

           A FreeBSD biztonsagat illeto" kerdesek (DES, Kerberos,
           biztonsagi resek es javitasaik, stb.) Szakmai jellegu"
           lista, ezert ide csak a temahoz szorosan kapcsolodo
           leveleket szabad beku:ldeni. Alapveto"en nem
           kerdezz-felelek tipusu a lista mu"ko:dese, habar a
           GYIK-hoz minden hozzajarulast (kerdest ES valaszt
           EGYARANT) szivesen veszu:nk.

   freebsd-security-notifications

           Biztonsagi figyelmeztetesek

           A FreeBSD-t erinto" biztonsagi problemakrol es
           javitasaikrol szolo ertesitesek. Megbeszelesekkel,
           vitakkal nem foglalkozik, mivel azok a FreeBSD-security
           listan folynak.

   freebsd-small

           A FreeBSD hasznalata beagyazott alkalmazasokban

           A szokatlanul kis meretu" vagy beagyazott FreeBSD
           rendszerekhez kapcsolodo megbeszelesek szinhelye. Szakmai
           jellegu" lista, ezert szigoruan csak a temahoz tartozo
           leveleket fogad.

             Megjegyzes: Ezt a listat ido"ko:zben felvaltotta a
             freebsd-embedded lista.

   freebsd-stable

           A FreeBSD-STABLE hasznalatarol szolo lista

           Ez a FreeBSD-STABLE hasznaloinak levelezesi listaja. Ide
           keru:lnek beku:ldesre a -STABLE agat futtato
           felhasznalokat erinto" friss valtozasok, valamint hozzajuk
           ko:to"do"en a -STABLE hasznalatahoz szu:kseges elvegzendo"
           lepesek. Aki a "STABLE" jelzesu" valtozatot hasznalja,
           mindenkeppen iratkozzon fel ra. Szigoruan szakmai jellegu"
           lista, ezert csak szakmai temaju leveleket var.

   freebsd-standards

           C99 es POSIX megfeleles

           Ez a forum foglalkozik a FreeBSD es a C99, valamint a
           POSIX szabvanyok szerinti megfelelesevel.

   freebsd-usb

           A FreeBSD USB tamogatasa

           Ez a levelezesi lista fogja o:sszes a FreeBSD USB
           tamogatasaval foglalkozo szakmai temakat.

   freebsd-user-groups

           A felhasznaloi csoportokat iranyito lista

           Ez a levelezesi lista az egyes teru:leteken mu"ko:do"
           felhasznaloi csoportok az iranyitast vegzo" ko:zponti
           csoport tagjai altali o:sszehangolasahoz tartozo problemak
           megbeszelesere valo. Ez a lista leginkabb a gyu"lesek
           letisztazasara es a to:bb csoporton ativelo" nagyobb
           projektek szervezesehez hasznalatos.

   freebsd-vendors

           Gyartok

           A FreeBSD projekt es a hozza ko:to:do" hardver- es
           szoftvergyartok egyu:ttmu"ko:deset elo"segito" lista.

   freebsd-virtualization

           A FreeBSD reszero"l tamogatott ku:lo:nbo:zo"
           virtualizacios technologiak

           Ezen a levelezesi listan elso"sorban a FreeBSD altal
           tamogatott virtualizacios megoldasokat vitatjuk meg. Ennek
           kereteben egyreszt az ehhez kapcsolodo alapveto" funkciok
           megvalositasa valamint tovabbi ujitasok keru:lnek a
           ko:zeppontba, masreszt a felhasznalok szamara ezzel
           letrehoztunk egy forumot a felmeru:lo" problemak
           megoldasara es az alkalmazasi leheto"segek megbeszelesere.

   freebsd-wip-status

           A FreeBSD-vel kapcsolatos folyamatban levo" fejlesztesek
           helyzetjelentese

           Ezen a levelezesi listan keru:lnek bejelentesre a FreeBSD
           tovabbfejlesztesehez fu"zo"do" ku:lo:nbo:zo" munkak es
           azok haladasanak menete. Az ide befuto u:zeneteket
           moderaljak. Javasoljuk, hogy elso"dlegesen az adott
           temahoz tartozo tematikus FreeBSD listara ku:ldju:k a
           bejelentesu:nket es csak egy masolatot erre a listara.
           Ennek ko:szo:nheto"en a munkank az adott temaspecifikus
           listan ro:gto:n meg is vitathato, mivel ezen a listan
           semmi ilyen nem engedelyezett.

           A lista archivumaba tekintve tajekozodhatunk arrol, hogy
           pontosan milyen formai ko:vetelmenyek illene megfelelnie a
           beku:ldeno" u:zenetu:nknek.

           A listara beerkezo" u:zenetekbo"l egy szerkesztett
           valogatas jelenik meg nehany havonta a FreeBSD honlapjan a
           Projekt helyzetjelentesenek reszekent [14]. A korabban
           beku:ldo:tt jelentesek mellett itt meg talalhatunk tovabbi
           peldakat.

   freebsd-xen

           A Xen FreeBSD portjanak (implementacio es hasznalat)
           megvitatasa

           A lista elso"sorban a Xen FreeBSD-re keszu:lt valtozataval
           foglalkozik. Elo"relathatolag eleg kevesen fognak irni
           erre a listara ahhoz, hogy helyet kapjanak rajta az
           implementaciot es a kialakitast erinto" szakmai jellegu"
           megbeszelesek es a telepitessel kapcsolatos kerdesek
           egyarant.

     --------------------------------------------------------------

  C.1.4. A levelezesi listak szu"rese

   A keretlen reklamlevelek, virusok es egyebek elleni vedekezes
   celjabol a FreeBSD levelezesi listainak forgalmat to:bb modon is
   szu"rik. Az ebben a szakaszban bemutatott szu"resi megoldasok nem
   fedik le a levelezesi listak vedelme erdekeben alkalmazott o:sszes
   leheto"seget.

   A levelezesi listakra csak bizonyos tipusu csatolt allomanyokat
   ku:ldhetu:nk be. Az alabbi listaban nem talalhato MIME tipusu
   csatolt objektumokat meg a listara erkezes elo"tt to:rlik.

     * application/octet-stream

     * application/pdf

     * application/pgp-signature

     * application/x-pkcs7-signature

     * message/rfc822

     * multipart/alternative

     * multipart/related

     * multipart/signed

     * text/html

     * text/plain

     * text/x-diff

     * text/x-patch

     Megjegyzes: Egyes levelezesi listak ugyan megengedhetnek tovabbi
     csatolt MIME objektumokat is, habar a legto:bb lista eseteben a
     fenti lista a mervado.

   Ha egy levelben a szo:veg HTML es nyers szo:veg formatumban is
   szerepel, a HTML valtozat automatikusan eltavolitasra keru:l. Ha
   az e-mail csak HTML formaban tartalmazza a szo:veget, akkor
   automatikusan nyers szo:vegre alakitodik at.

     --------------------------------------------------------------

C.2. Usenet hircsoportok

   A ket FreeBSD-s hircsoport mellett meg akadnak olyan tovabbi
   csoportok is, ahol FreeBSD temaju kerdeseket vitathatunk meg vagy
   hasznos lehet szamunkra. Az itt felsorolt hircsoportok
   kulcsszavakkal keresheto" archivuma Warren Toomey tulajdona
   (<wkt@cs.adfa.edu.au>).

     --------------------------------------------------------------

  C.2.1. BSD-s hircsoportok

     * comp.unix.bsd.freebsd.announce

     * comp.unix.bsd.freebsd.misc

     * de.comp.os.unix.bsd (nemet)

     * fr.comp.os.bsd (francia)

     * it.comp.os.freebsd (olasz)

     * tw.bbs.comp.386bsd (hagyomanyos kinai)

     --------------------------------------------------------------

  C.2.2. Egyeb erdekes UNIX-os hircsoportok

     * comp.unix

     * comp.unix.questions

     * comp.unix.admin

     * comp.unix.programmer

     * comp.unix.shell

     * comp.unix.user-friendly

     * comp.security.unix

     * comp.sources.unix

     * comp.unix.advocacy

     * comp.unix.misc

     * comp.bugs.4bsd

     * comp.bugs.4bsd.ucb-fixes

     * comp.unix.bsd

     --------------------------------------------------------------

  C.2.3. X Window System

     * comp.windows.x.i386unix

     * comp.windows.x

     * comp.windows.x.apps

     * comp.windows.x.announce

     * comp.windows.x.intrinsics

     * comp.windows.x.motif

     * comp.windows.x.pex

     * comp.emulators.ms-windows.wine

     --------------------------------------------------------------

C.3. Vilaghalos szolgaltatasok

  C.3.1. Forumok, blogok es ismertsegi halozatok

     * A FreeBSD forumok a FreeBSD kapcsan felmeru:lo" kerdesek es
       szakmai temak megvitatasahoz egy webes felu:letet kinalnak
       fel.

     * A Planet FreeBSD honlapjan fejleszto"k altal vezetett tucatnyi
       webes naplot es hozzajuk tartozo RSS feedeket talalhatunk. Sok
       fejleszto" ezen a modon keszit ro:vid feljegyzeseket a
       jelenlegi munkajarol, az uj javitasokrol es mas egyeb
       terveiro"l.

     * A Youtube-on keresztu:l elerheto" BSDConferences csatornan a
       vilag minden tajan tartott ku:lo:nbo:zo" BSD temaju
       konferenciak videoanyagait talalhatjuk meg. Segitsegevel
       megtekinthetju:k a fontosabb fejleszto"k altal a sajat
       munkajukrol tartott ku:lo:nbo:zo" elo"adasokat.

     --------------------------------------------------------------

  C.3.2. Hivatalos tu:kro:zesek

   Ko:zponti szerverek, Amerikai Egyesu:lt Allamok, Argentina,
   Ausztralia, Ausztria, Belgium, Brazilia, Bulgaria, Costa Rica,
   Cseh Ko:ztarsasag, Dania, Del-Afrika, Egyesu:lt Kiralysag,
   Esztorszag, Finnorszag, Franciaorszag, Fu:lo:p-szigetek,
   Go:ro:gorszag, Hollandia, Hongkong, Indonezia, Irorszag, Izland,
   Japan, Kanada, Kina, Kirgizisztan, Korea, Kuvait, Lengyelorszag,
   Lettorszag, Litvania, Magyarorszag, Nemetorszag, Norvegia,
   Olaszorszag, O:rmenyorszag, Oroszorszag, Portugalia, Romania, San
   Marino, Spanyolorszag, Svajc, Svedorszag, Szingapur, Szlovak
   Ko:ztarsasag, Szlovenia, Tajvan, Thaifo:ld, To:ro:korszag,
   Uj-Zeland, Ukrajna.

   (Datum: 2009/05/21 21:02:58 UTC)

     * Ko:zponti szerverek

          * http://www.FreeBSD.org/

     * Amerikai Egyesu:lt Allamok

          * http://www2.us.FreeBSD.org/

          * http://www4.us.FreeBSD.org/ (IPv6)

          * http://www5.us.FreeBSD.org/ (IPv6)

     * Argentina

          * http://www.ar.FreeBSD.org/

     * Ausztralia

          * http://www.au.FreeBSD.org/

          * http://www2.au.FreeBSD.org/

     * Ausztria

          * http://www.at.FreeBSD.org/

          * http://www2.at.FreeBSD.org/ (IPv6)

     * Belgium

          * http://freebsd.unixtech.be/

     * Brazilia

          * http://www.br.FreeBSD.org/

          * http://www2.br.FreeBSD.org/www.freebsd.org/

          * http://www3.br.FreeBSD.org/

     * Bulgaria

          * http://www.bg.FreeBSD.org/

          * http://www2.bg.FreeBSD.org/

     * Costa Rica

          * http://www1.cr.FreeBSD.org/

     * Cseh Ko:ztarsasag

          * http://www.cz.FreeBSD.org/

     * Dania

          * http://www.dk.FreeBSD.org/ (IPv6)

          * http://www3.dk.FreeBSD.org/

     * Del-Afrika

          * http://www.za.FreeBSD.org/

          * http://www2.za.FreeBSD.org/

     * Egyesu:lt Kiralysag

          * http://www1.uk.FreeBSD.org/

          * http://www3.uk.FreeBSD.org/

     * Esztorszag

          * http://www.ee.FreeBSD.org/

     * Finnorszag

          * http://www.fi.FreeBSD.org/

          * http://www2.fi.FreeBSD.org/

     * Franciaorszag

          * http://www.fr.FreeBSD.org/

          * http://www1.fr.FreeBSD.org/

     * Fu:lo:p-szigetek

          * http://www.FreeBSD.org.ph/

     * Go:ro:gorszag

          * http://www.gr.FreeBSD.org/

     * Hollandia

          * http://www.nl.FreeBSD.org/

          * http://www2.nl.FreeBSD.org/

     * Hongkong

          * http://www.hk.FreeBSD.org/

     * Indonezia

          * http://www.id.FreeBSD.org/

     * Irorszag

          * http://www.ie.FreeBSD.org/

          * http://www2.ie.FreeBSD.org/

     * Izland

          * http://www.is.FreeBSD.org/

     * Japan

          * http://www.jp.FreeBSD.org/www.FreeBSD.org/ (IPv6)

     * Kanada

          * http://www.ca.FreeBSD.org/

          * http://www2.ca.FreeBSD.org/

     * Kina

          * http://www.cn.FreeBSD.org/

     * Kirgizisztan

          * http://www.kg.FreeBSD.org/

     * Korea

          * http://www.kr.FreeBSD.org/

          * http://www2.kr.FreeBSD.org/

     * Kuvait

          * http://www.kw.FreeBSD.org/

     * Lengyelorszag

          * http://www.pl.FreeBSD.org/

          * http://www2.pl.FreeBSD.org/

     * Lettorszag

          * http://www.lv.FreeBSD.org/

          * http://www2.lv.FreeBSD.org/

     * Litvania

          * http://www.lt.FreeBSD.org/

     * Magyarorszag

          * http://www.hu.FreeBSD.org/

          * http://www2.hu.FreeBSD.org/

     * Nemetorszag

          * http://www.de.FreeBSD.org/

     * Norvegia

          * http://www.no.FreeBSD.org/

     * Olaszorszag

          * http://www.it.FreeBSD.org/

          * http://www.gufi.org/mirrors/www.freebsd.org/data/

     * O:rmenyorszag

          * http://www1.am.FreeBSD.org/ (IPv6)

     * Oroszorszag

          * http://www.ru.FreeBSD.org/

          * http://www2.ru.FreeBSD.org/

          * http://www3.ru.FreeBSD.org/

          * http://www4.ru.FreeBSD.org/

          * http://www5.ru.FreeBSD.org/

     * Portugalia

          * http://www.pt.FreeBSD.org/

          * http://www1.pt.FreeBSD.org/

          * http://www4.pt.FreeBSD.org/

          * http://www5.pt.FreeBSD.org/

     * Romania

          * http://www.ro.FreeBSD.org/

          * http://www1.ro.FreeBSD.org/

          * http://www2.ro.FreeBSD.org/

          * http://www3.ro.FreeBSD.org/

     * San Marino

          * http://www.sm.FreeBSD.org/

     * Spanyolorszag

          * http://www.es.FreeBSD.org/

          * http://www2.es.FreeBSD.org/

          * http://www3.es.FreeBSD.org/

     * Svajc

          * http://www.ch.FreeBSD.org/

          * http://www2.ch.FreeBSD.org/

     * Svedorszag

          * http://www.se.FreeBSD.org/

          * http://www2.se.FreeBSD.org/

     * Szingapur

          * http://www2.sg.FreeBSD.org/

     * Szlovak Ko:ztarsasag

          * http://www.sk.FreeBSD.org/

     * Szlovenia

          * http://www.si.FreeBSD.org/

          * http://www2.si.FreeBSD.org/

     * Tajvan

          * http://www.tw.FreeBSD.org/ (IPv6)

          * http://www2.tw.FreeBSD.org/

          * http://www3.tw.FreeBSD.org/

          * http://www4.tw.FreeBSD.org/

          * http://www5.tw.FreeBSD.org/ (IPv6)

          * http://www6.tw.FreeBSD.org/

          * http://www7.tw.FreeBSD.org/

     * Thaifo:ld

          * http://www.th.FreeBSD.org/

     * To:ro:korszag

          * http://www.tr.FreeBSD.org/

          * http://www2.tr.FreeBSD.org/

          * http://www3.tr.FreeBSD.org/ (IPv6)

     * Uj-Zeland

          * http://www.nz.FreeBSD.org/

     * Ukrajna

          * http://www.ua.FreeBSD.org/

          * http://www2.ua.FreeBSD.org/

          * http://www5.ua.FreeBSD.org/

          * http://www4.ua.FreeBSD.org/

     --------------------------------------------------------------

C.4. E-mail cimek

   A ko:vetkezo" felhasznaloi csoportok nyujtanak FreeBSD-s e-mail
   cimeket tagjaiknak. A rendszergazdak barmilyen visszaeles eseten
   fenntartjak a visszavonas jogat.

   Cimtartomany     Leheto"segek    Felhasznaloi csoport       Rendszergazda     
ukug.uk.FreeBSD.org Csak         <ukfreebsd@uk.FreeBSD.org> Lee Johnston         
                    tovabbitas                              <lee@uk.FreeBSD.org> 

     --------------------------------------------------------------

                        Fu:ggelek D. PGP-kulcsok

   Arra az esetre, ha elleno"riznu:nk kellene a tisztsegviselo"k vagy
   fejleszto"k alairasat, esetleg titkositott e-mailt szeretnenk
   ku:ldeni nekik, ebben a fejezetben mellekelju:k az ehhez
   szu:kseges kulcsokat. A FreeBSD.org o:sszes felhasznalojanak
   kulcsa leto:ltheto" a http://www.FreeBSD.org/doc/pgpkeyring.txt
   cimro"l.

     --------------------------------------------------------------

D.1. Tisztsegviselo"k

  D.1.1. Security Officer Team <security-officer@FreeBSD.org>

 pub  1024D/CA6CDFB2 2002-08-27 FreeBSD Security Officer <security-officer@FreeBSD.org>
      Key fingerprint = C374 0FC5 69A6 FBB1 4AED  B131 15D6 8804 CA6C DFB2
 sub  2048g/A3071809 2002-08-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 KRrlaWusbYfqZn4BQsSpYw90evo=
 =BvhO
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.1.2. Core Team Titkar <core-secretary@FreeBSD.org>

 pub  1024R/FF8AE305 2002-01-08 core-secretary@FreeBSD.org
      Key fingerprint = CE EF 8A 48 70 00 B5 A9  55 69 DE 87 E3 9A E1 CD

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzw7fN4AAAEEALL1ENfbFYcAEmS6Hrb7CV7sWrbG+HlIwYvUUuqvr8+D3axd
 XuRJGFaWk8zNrTrwWROnlMMlctG3iXNsKzQNxAE6N64rbrUbKI5PzihfEsJW5/io
 XGXrRGdXvwob/Qdnd6mIlm3IJduChV7Nf3K2WbimUNkFeXrrh/ymwUj/iuMFAAUR
 tBpjb3JlLXNlY3JldGFyeUBGcmVlQlNELm9yZ4kAlQMFEDw7fN78psFI/4rjBQEB
 U4ID/1N6haUd+k+tzwNpX6pKnlCuTCJvJ619Lp83T8pRDGZom/uSLrfMrzvmKPeE
 abXGnreM41JRLAbGOclsONVBCLvwc/v+VVXTm24J1rdS1qY/SD+LE87pxPL6Ncyt
 Ug2sxPSo8fDVKu+MdcGK5zwP5ekNHDl+DB1mMsYDkZHTp9FMiQCVAwUQPDt+RafG
 T4fq3uQJAQFKvAQAl6+XaXQ1GzfqJoGqaTVW2O1OaodyBJjLxgRsVv7ps5Z4M4nl
 uYoe5ih+Lk3BVD9Y18QKUrnAPlbXDr1Ld0arq8uFkFsVzNDb2asg6tgcQe7mQ9lA
 QZPgVOU+siTmEuolSvxwsjxn/szBYBPv5EnU6lSmGf/RDJnbFXC9Z/LgPFU=
 =tMn4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.1.3. Ports Management Team Titkar <portmgr-secretary@FreeBSD.org>

 pub   1024D/7414629C 2005-11-30
       Key fingerprint = D50C BA61 8DC6 C42E 4C05  BF9A 79F6 E071 7414 629C
 uid                  FreeBSD portmgr secretary <portmgr-secretary@FreeBSD.org>
 sub   2048g/80B696E6 2005-11-30

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEONy/ARBAC4Ke7ijFSAiNZ8eKGENunAPSCm5Q75nmJrc9QW3DKQydseMYn5
 kRPzybZ3IMTzIMkB4kydWoOFb5xlyQ2NLsf0nrn0Kc4DbnpmwFi+2Owv48XIoJ80
 4tTHkog+pC+3kMOmAbikOgHfT5DZCu0Vz4k343yg06uFB5RZkFDV3qdr6wCgp8ye
 cBFzt6Qnf7baiKC87mSy46ED/2Kw/sUT40JT57u5SL5rgrAt15Q/PdCbFlBX9N8f
 y0CA7KUL82ISxFwmuFESIi8zD4IOmx2ow4EBczVCVmbAw04GNKyVL4X3KdcZdLxr
 d5BEdu3WcEs9FfbHiJgpPonNQ7UHeaG/Oos0N/LZqGM5kjaopSjNX9QTZXnYtIeX
 v5WRA/9un7HooV6yVf/o6lhjpLg0Dgu/nGPwTVt6mz0dS2sg7FwuWwefnYMo1Hte
 YRJHhP8wR8MeRai5uwUHkn9OINTu2a1WSHxfjL0T8JGI2XWppqwg21llvBlJ9HDZ
 vlnpvG8vsD5+2HLvJe/tHQOXEaKqnlWGRt+6eeKLc2pTOeRrhbQ5RnJlZUJTRCBw
 b3J0bWdyIHNlY3JldGFyeSA8cG9ydG1nci1zZWNyZXRhcnlARnJlZUJTRC5vcmc+
 iGAEExECACAFAkONy/ACGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRB59uBx
 dBRinOoSAJ9dmofaKia2PRYmFrJ6VRV1qMEDiACbB/A1Qwv2jl5ra+Q/G28nrR4N
 IJGIRgQQEQIABgUCQ43N5QAKCRCrL1pbFSVpkP9bAKDpJAKn7gPuU+2dGxSh+O/q
 dkmPVwCg1nFrGigvTij6agMfoYAhqDmeIRmIRgQQEQIABgUCQ43Q1QAKCRCH2lwN
 JzWaUfzfAJ4xutImfjEERePh5E/p2WPRoYZWNgCbBZTRqSz9zuMM1fsvrMcFmCQs
 FPyIRgQQEQIABgUCQ43ROwAKCRAV1ogEymzfssaIAKCWan2+HILTdb2mgFu9aZkI
 tXUXlwCeP+W80VRiM6lGr6VjJFbkDqD6ak+5Ag0EQ43MFRAIALjm7U1vf218XrDD
 rO6ztZdMSoQfLnbqDB/RyNr6CnnFrgIaT4/hBABT7S9Hmb5rPiN3UOTDsgHUq7tC
 eGnf+9K8KA45KclMcayVhttyGlwAtO0kZebxZEAlWAhl4ixfejAwKdrjGe66b2up
 VFEmR6W7GhPitJDyWKK4/57fe3tSEs3yC2iJEbFpzYnVGK4DPUEsbSQ0Gv+COS1q
 l7QQW7H09dWt443r125I1Viv3nrIXlpmR5KFS0MvQ4bZyyAo4k2t0BxmAXNyxLh+
 1HZe5bh3dkk1XbJlooNwfr+WhqSlLsTGQsj1/9HmjVMWyzH6tA5tZ42Fu1ZGTA6D
 nc7BBLMAAwUH/jt/r2iJDiKFpjay4DIICXeKrKUP+mzYQJGJXX+Mls+TjDLFpm0Q
 ng/wUCjZH8+GQStKSiaY7Lqnt1V0aKpw74CznHzgu4+ve9QG1+O5ald61Yy7dPGH
 +9Adr3jYJzdMhojjzPSKxIuDkHYOvjka/VGPtYDBuCaVPGDHGvWT4YZiVvpDg/zB
 ucCAWF55WKphZXh7v7ZPvdfCj6DeZ+wQBF10d9HXlWulitc+27gQiBhA2JFXG2p6
 Qg6Zj1E4AUdK5Hpjx+HgqGATq3GqzyQdUxvhR6VoV1OjmQvz1paLT3V0ch3mvRNi
 Md/oNJsHCSL9yhmtonSaprKG51OboDbVOFqISQQYEQIACQUCQ43MFQIbDAAKCRB5
 9uBxdBRinHoLAKCLZP7CvMzL2+hGwUqJZFGEbJvdBwCgpcmwzwPPes0zlJdBdwJw
 JXoktV0=
 =AmvS
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

D.2. A Core Team tagjai

  D.2.1. Wilko Bulte <wilko@FreeBSD.org>

 pub   1024D/186B8DBD 2006-07-29
       Key fingerprint = 07C2 6CB3 9C18 D290 6C5F  8879 CF83 EC86 186B 8DBD
 uid                  Wilko Bulte (wilko@FreeBSD.org) <wilko@FreeBSD.org>
 sub   2048g/1C4683F1 2006-07-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.2 (FreeBSD)

 mQGiBETLtf8RBAD12xaszO99wnMaNtuoyE3dIfsv4ijnLmKeFwXXGGe40tf5lDu1
 0X1DrI4wX6emUgSTsuxgZh4OJOuCz/YOLwO1AqL0v8Emjxa1VicZmoQ2zjMPY1GD
 6rWOIvgRC+6M3LstE7h0N49uouNANFHAaAfCNxyWw2EvZxnqc85TMd1BcwCgnEOe
 lHdj9PehNMRSp2TkNpcS5SUEAOEw+rs/vMXeqXHP910nd4U5DmBxIaoA7ARIqAS5
 F+SvNtDxlNeeLSMY7l64kCgB/RO4NGYxMTPklFMAm4cr0ri8s6+v/Y4vdoWsDluW
 MbzKsxBHVmPxr9WEU9iZxexbSlDdeJ2l19xgty4Jp3xPJ0iSo8Tip8w00kSN9cN3
 ULs1BADKhXiy9B2tfDUAQCstSr/04ZB015u1CZEAMxOfIZ97Y1RjSTdAAshqB/sX
 coKlQ5Sanx5shV4xARen/8d1EftgIfX1s0hL2QhA9xCHdHob/9Ok8SbpMq+H3WDj
 VEqpf9dJieU/IFE4wLc1y5M61jw5kX5bqbXPWtIuCJqC0DB9qLQzV2lsa28gQnVs
 dGUgKHdpbGtvQEZyZWVCU0Qub3JnKSA8d2lsa29ARnJlZUJTRC5vcmc+iGEEExEC
 ACEFAkTLtf8CGwMHCwkIBwMCAQQVAggDBBYCAwECHgECF4AACgkQz4Pshhhrjb07
 2gCfb5LcR2MiNHfyP2FEgQ2NphUkXDcAnREV1tDLlJy7KxOlub01Px8NhNkfiJwE
 EAECAAYFAkTLuj8ACgkQ/KbBSP+K4wXTDwQAjdsoW8icjSXo/hl8OBEeQfQCPtuu
 0MU4hJM4TRf6QCHXxtJPpMgGGqp6HbMEwmxO58yhKOLCZk5Xyo8rsVJG23pQvGqW
 UmphE6+9e8RuwneZiJ/yvbn7cOaS9EuUIHnIZnvNYTqLboIG1XaYwq8YqwNhsHVb
 8H1Jvx9fVSo9RGq5Ag0ERMu2DRAIANuJ6ZjYQnDhZFSVColje5oXGEmn3BBIeyLo
 TjzbmLo41iPlPPedLnnG7bGcWlwb8Y6CvsniC2+9Tf79O8rpGglQZQFAKS4qSToA
 CMWBlKPF2yaCLOlKezzn5Xo3D61WYs3z74ak+CKznqdFDkXYU7c428XprqqLnuzk
 jUQyfrNOCg9jjODB6eXVS0nkYlYhsfBe9Mh3xmaf8QGocH01dCaXNJASKbSgUtWJ
 aD0fXWexf6p04DX/84359mtOquZe4NCEy/o2RpKoHxaN8cggO3NUfsLkDBODQ1vr
 RS/H2sixVLbfNPx4XzIYc525ISyGGk1WJ0hxUPDaJeMtlUVE2HMAAwUH/AuwxkpX
 QT49Q3+kZf7hHcvR5fzaRKUcK/lIdPAhJBTZZQjZxH5Qo1MfDftizkIg4O9FcN3w
 eR7AKVhjVGLPna10Tb7PuNByKehsCMJM089OTJNEwRKu5AzpgE+pvkBeKTWwoGUE
 7hkaunpFXGv8TglO25G1hxKgryB3CBu6n4jN4pnlUtwBBQ6jTC+YRd5zeCiDJYvY
 R89ibrdmvFsI6Cy7K0iSFBFaJREOakXPTdmcWSxC71MMuefPrUhMsys0SN/EPd3g
 n/LDvcBtismvo8FAUKTHPlJhvXM87V7sDfCmtzG79NzlwjJto4pJoHyJg57T3kJy
 cQ2qe/WZTvl9OFeISQQYEQIACQUCRMu2DQIbDAAKCRDPg+yGGGuNvdVZAJsErSAN
 uN92IOQQttYydXNGTCUC4gCeOaQSjL1nW1ZwEJt2HuwEJ8LI8Bk=
 =RrPJ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.2. Brooks Davis <brooks@FreeBSD.org>

 pub  1024D/F2381AD4 2001-02-10 Brooks Davis (The Aerospace Corporation) <brooks@aero.org>
      Key fingerprint = 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4
 uid                            Brooks Davis <brooks@one-eyed-alien.net>
 uid                            Brooks Davis <brooks@FreeBSD.org>
 uid                            Brooks Davis <brooks@aero.org>
 sub  2048g/CFDACA7A 2003-01-25 [expires: 2008-01-24]
 sub  1024g/42921194 2001-02-10 [expires: 2009-02-08]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =k1pm
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.3. Giorgos Keramidas <keramida@FreeBSD.org>

 pub   1024D/318603B6 2001-09-21
       Key fingerprint = C1EB 0653 DB8B A557 3829  00F9 D60F 941A 3186 03B6
 uid                  Giorgos Keramidas <keramida@FreeBSD.org>
 uid                  Giorgos Keramidas <keramida@ceid.upatras.gr>
 uid                  Giorgos Keramidas <keramida@hellug.gr>
 uid                  Giorgos Keramidas <keramida@linux.gr>
 sub   1024g/50FDBAD1 2001-09-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 rbEo1sd9QlYk6uWfL5hII9Gm
 =81S1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.4. George V. Neville-Neil <gnn@FreeBSD.org>

 pub   1024D/440A33D2 2002-09-17
       Key fingerprint = AF66 410F CC8D 1FC9 17DB  6225 61D8 76C1 440A 33D2
 uid                  George V. Neville-Neil <gnn@freebsd.org>
 uid                  George V. Neville-Neil <gnn@neville-neil.com>
 sub   2048g/95A74F6E 2002-09-17

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD2Gwe4RBACw78PVfE2fA9U0mISJrV1ohjdkzVTly0WQ/YwMgyB/J/Z/M35G
 zIc8yKi8YR/6QYGqgEzeKAhrUIDyBfudhaJ527gyR3Xi+QHgWMQDvd41NlqM5DBn
 yIVKj10DmDYjcHm29M1OHAkXKZT6tHCqp1dKFD7EXtY1bOakvN7TIKld7wCg6AS/
 iPmIvGE7wpFlcFkYIjjL4ksD/iKpKneEwB7dEksyDQX8l18v58x0lH334WDgRO5a
 X3Wlc4He8b3kWzBWK0z81XE8Z7ip0Io13LHhamLp1P1eDX4sWKQpJmdRtHziC9R6
 4GwW9P7aCUCCf91XxaYEU2j755u1Zby3gF1tbookwO1iXQERYuo3ZHezH1bkdRk2
 HNecA/9+HCfVESjRFPfOEVqljx+Lm5atTx5VX/D/6iprDUARn0YgW5xrwM8doeNI
 UxkBOUszEUPDpXPnMI5RWB+0siQhZl3yX+lUPtASrEj84rpOSXZtNPAkHit/iwva
 pW75gZjt9yN7IhVQVw8O2OMTRGNoWsshzKzznqxNP3p1JYYq/rQtR2VvcmdlIFYu
 IE5ldmlsbGUtTmVpbCA8Z25uQG5ldmlsbGUtbmVpbC5jb20+iFkEExECABkFAj2G
 we4ECwcDAgMVAgMDFgIBAh4BAheAAAoJEGHYdsFECjPS6hUAni/U8Zbrr+TFHLt3
 cLg0VWnWxCI/AKCNqxRmA/HlZLPRzhVCQODgfbOG4LQoR2VvcmdlIFYuIE5ldmls
 bGUtTmVpbCA8Z25uQGZyZWVic2Qub3JnPohgBBMRAgAgBQJDtkW7AhsjBgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQYdh2wUQKM9LtQACfTi75crWjtxxVJUmGSn2+
 CDnlCesAnRqM+XSv9/KnZ3O/GRtpkNwT9NCJuQINBD2GwgUQCACvJfoCKfRo3y1J
 kaisLLtSVsqCeF1mlwfBGyvD0Lu0VnDGuy9aHExafNEbUaW+OQe0YXtZeX70CUPF
 nizBcDEsHEj1pC9HoZCSoYXtqORBa3ZIUwz+jJbjHJErs7XM/EshhAollC14rXKt
 K7+UVCw5JkCmialF7LAyWgqeBilwtKUBpIaXquf0/qws+uOikcZb3UttamQFUW0Y
 l4KKHP24cvCOXSlx8Kl9l2rQzfedjQPXI98zkcR3SEjZ07cDs+mQOTax2OgVS3F2
 nDUEqLQmAiftHFWQ0h3RBpEYLGTNd3gXXxJPxZdR7YIBnxvJ7RZM5qGgZfTc0Jm4
 aM5s+As3AAMFB/0dVB40Fvk74U6mwHLMwEkzHiZoVVZPBUMsuqb3FlgZrMYmwa3q
 APNhPhWSO9pLQlPJ99nFFj1lRUU7OO/oihsdKLEfT2CT5tqa6fAWoiSQIKBBbkrm
 bQedeXPWtvJezS0FY17rOfK8242Lnq+djS8ihBxSKpCVbwWO1DPktu6hGzWQz+x2
 B91jbMfM9/n00xEkZ4Z2H0dSZNY2WKqK+MkqAiYf6uJBs7BZV391WWQ1fagCP/Tf
 HPM0gDnwFfqSJmxJzPm3upTmYgoSRqri7NH3Wec5pY15b67JFHMpMFbgauEsiDSi
 CCk4YxHfge4SMe6noPICAjN6PCkIMDldxi+ZiEYEGBECAAYFAj2GwgUACgkQYdh2
 wUQKM9KJgACgwzfFmUB4diy5sTzLVLE3TCqwnJYAn39ByQnv/FeLGSY/blYrVsQK
 aCpC
 =SotO
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.5. Hiroki Sato <hrs@FreeBSD.org>

 pub   1024D/2793CF2D 2001-06-12
       Key fingerprint = BDB3 443F A5DD B3D0 A530  FFD7 4F2C D3D8 2793 CF2D
 uid                  Hiroki Sato <hrs@allbsd.org>
 uid                  Hiroki Sato <hrs@eos.ocn.ne.jp>
 uid                  Hiroki Sato <hrs@ring.gr.jp>
 uid                  Hiroki Sato <hrs@FreeBSD.org>
 uid                  Hiroki Sato <hrs@jp.FreeBSD.org>
 uid                  Hiroki Sato <hrs@vlsi.ee.noda.tus.ac.jp>
 uid                  Hiroki Sato <hrs@jp.NetBSD.org>
 uid                  Hiroki Sato <hrs@NetBSD.org>
 sub   1024g/8CD251FF 2001-06-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 OGg0F7Gi41lcFhA=
 =wurQ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.6. Murray Stokely <murray@FreeBSD.org>

 pub  1024D/0E451F7D 2001-02-12 Murray Stokely <murray@freebsd.org>
      Key fingerprint = E2CA 411D DD44 53FD BB4B  3CB5 B4D7 10A2 0E45 1F7D
 sub  1024g/965A770C 2001-02-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Comment: For info see http://www.gnupg.org

 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
 qN+IdvKuAKC6p9c3lJBbYHFlhxPDhBvgBaSOKw==
 =WyeV
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.2.7. Kris Kennaway <kris@FreeBSD.org>

 pub  1024D/68E840A5 2000-01-14 Kris Kennaway <kris@citusc.usc.edu>
      Key fingerprint = E65D 0E7D 7E16 B212 1BD6  39EE 5ABC B405 68E8 40A5
 uid                            Kris Kennaway <kris@FreeBSD.org>
 uid                            Kris Kennaway <kris@obsecurity.org>
 sub  2048g/03A41C45 2000-01-14 [expires: 2006-01-14]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =nTL1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

D.3. Fejleszto"k

  D.3.1. Ariff Abdullah <ariff@FreeBSD.org>

 pub   1024D/C5304CDA 2005-10-01
       Key fingerprint = 5C7C 6BF4 8293 DE76 27D9  FD57 96BF 9D78 C530 4CDA
 uid                  Ariff Abdullah <skywizard@MyBSD.org.my>
 uid                  Ariff Abdullah <ariff@MyBSD.org.my>
 uid                  Ariff Abdullah <ariff@FreeBSD.org>
 sub   2048g/8958C1D3 2005-10-01

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEM+MioRBACP2lgLXXL1cIqZ8sdgUMaon8gBQWTn40tjTV3N6GtR+NUYbQI2
 Fcg43aopA9VVoeVyBlCSAyaiLTzZkyg1XRDqsjz9BnRWotwTX2e26ndVgsUzmXs6
 NjBcCYYNfVQ09BN3B05FRlPRpveMzCkZCFmWJCzjAYBMg/60fSia2In4twCg6Pr9
 Bp/eR5Ny9z4WzpIsynAt6rMD/1pDoV+FbZ6iw80Zq7pdyspPdPCRIzXhYsoe5uTX
 kjWRWixctbphxgvMheQWZNPNhDyDo/YvuPa2qtrHCDqRYSgmAHPC+NWfyoJhCMjG
 WMjcW9wWZ0j2Oc2uCTvficrGKF8U9ol6E+x6tlc5Cw2jjrPkwJCd70W9SByrgIdv
 51bNA/4nBw7S9grYcnKChYu9mGMsAixCXzMeIVc043Y2SD1NBg59ZNiaSkmRyD6E
 dCYRDhQeF2CePV3ZhlXDxOm6vD2l4H+9sQ1TRlEP/ARejwJrPPRO+plCf8pLDgj+
 78Kj2OlEwC+ziMdXyk8W91FhtCCDXQgDnf3ND/h4IWTzrVD0dbQjQXJpZmYgQWJk
 dWxsYWggPGFyaWZmQE15QlNELm9yZy5teT6IYAQTEQIAIAIbAwIeAQIXgAUCQ1EY
 kQYLCQgHAwIEFQIIAwQWAgMBAAoJEJa/nXjFMEza1FsAnjbSH6NqUl+VC42MGNYG
 6xGCfJoxAJ93L2Zf9C/ug6afFr4Bh/HoJbFiOrQiQXJpZmYgQWJkdWxsYWggPGFy
 aWZmQEZyZWVCU0Qub3JnPohgBBMRAgAgAhsDAh4BAheABQJDURiFBgsJCAcDAgQV
 AggDBBYCAwEACgkQlr+deMUwTNqW7wCeLHdcpasWMJgoqfLIM8PTJ/UlZ28AoLF0
 V2UMd0CdWCANmPNdZcME6jietCdBcmlmZiBBYmR1bGxhaCA8c2t5d2l6YXJkQE15
 QlNELm9yZy5teT6IYAQTEQIAIAIbAwIeAQIXgAUCQ1EYnQYLCQgHAwIEFQIIAwQW
 AgMBAAoJEJa/nXjFMEzaMs0An0gHq10v/5mnLWBYqnwZ+SnZNCYbAKDaTpCa6ddQ
 7jdr/lmi8XwK+blRqLkCDQRDPjIxEAgAudaX6QqmUT7UjXmxjlNr6wdDT0BDCu9H
 ZJuYt9Nf5V0Yd9ExfhRKh2YoYoW0790gka92R7uvrs7FJiu35KrYvOUjmwbouVf8
 Cg2fQqDcw0Lj/CD0meEduZOS4moxv/5GcJc2vsQ1BDsRwX0DmLQYXIaqIsRSo4U4
 KxWi/zZC5TF1Iwo7JyGY1Gc1SMZuWeZC/qx8bQxvkLx1q3qyZybjUtE2WkfqH0bI
 /XCpN5kxDciq/U1IP0H2pU/Md/OAvylKID6uR9yPh9kaOOhcvmOID9oWIMbE8a7x
 eAQ0QkEVpoexA+5DbUarPzjfqUprpZCydaE8s7Gzy/ocegAYqiGQKwADBQf/fxph
 6IW/Be5YFg15+9wZ+1MlEszXw9pZnkLU4Ypwz6ksNjrbpHcEbBdK45kw17pOL+WW
 Yie5tA/b8ndzoga/qyaOa7lH3b4pA78GMhGd7gSzrziNkuE7Yc3WNqjpRVYmVgH+
 9K0rjJaK55hhKDdEGj1jMXNXAXtXra70DNWZt88HLs85goWm7vnnsiPBgOVquYEB
 /q5ExD/E46TkxF5/Kl02LyHTcyhWsUjksmoEi1O/wxXOAxi/GM3QRrkbF7voaC+d
 Og5pxQXsftoXsk5fBEDBD1iCqqs1m2IJIUwuMxVlcc+IvD/eYejrtNlkzh5NLash
 evj4a81s2LLPh5qd3YhJBBgRAgAJBQJDPjIxAhsMAAoJEJa/nXjFMEzaXHkAoLi5
 OZgXddFLJYSXXnK3iwzYho2tAJ0Ze7tHvJd2md4VSth52CSBYDEemA==
 =2tPN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.2. Shaun Amott <shaun@FreeBSD.org>

 pub   1024D/6B387A9A 2001-03-19
       Key fingerprint = B506 E6C7 74A1 CC11 9A23  5C13 9268 5D08 6B38 7A9A
 uid                  Shaun Amott <shaun@inerd.com>
 uid                  Shaun Amott <shaun@FreeBSD.org>
 sub   2048g/26FA8703 2001-03-19
 sub   2048R/7FFF5151 2005-11-06
 sub   2048R/27C54137 2005-11-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 NnNrFxKZ
 =zwEb
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.3. Henrik Brix Andersen <brix@FreeBSD.org>

 pub   1024D/54E278F8 2003-04-09
       Key fingerprint = 7B63 EF32 7831 A704 220D  7E61 BFE4 387E 54E2 78F8
 uid                  Henrik Brix Andersen <henrik@brixandersen.dk>
 uid                  Henrik Brix Andersen <brix@FreeBSD.org>
 sub   1024g/3B13C209 2003-04-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 7w2qYVU=
 =4lil
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.4. Will Andrews <will@FreeBSD.org>

 pub  1024D/F81672C5 2000-05-22 Will Andrews (Key for official matters) <will@FreeBSD.org>
      Key fingerprint = 661F BBF7 9F5D 3D02 C862  5F6C 178E E274 F816 72C5
 uid                            Will Andrews <will@physics.purdue.edu>
 uid                            Will Andrews <will@puck.firepipe.net>
 uid                            Will Andrews <will@c-60.org>
 uid                            Will Andrews <will@csociety.org>
 uid                            Will Andrews <will@csociety.ecn.purdue.edu>
 uid                            Will Andrews <will@telperion.openpackages.org>
 sub  1024g/55472804 2000-05-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =inzo
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.5. Eric Anholt <anholt@FreeBSD.org>

 pub   1024D/6CF0EAF7 2003-09-08
       Key fingerprint = 76FE 2475 820B B75F DCA4  0F3E 1D47 6F60 6CF0 EAF7
 uid                  Eric Anholt <eta@lclark.edu>
 uid                  Eric Anholt <anholt@FreeBSD.org>
 sub   1024g/80B404C1 2003-09-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD9dFQARBACzmGtuaKFqQwoRV32TI4ANBPHPlXkKXJ1WYQQkahzP/VfzNOUH
 VbjIMQqrNPawOcrFyEFuI/FJLWXewhrcrM+of831BXWqnQ7ketGqKUO3xT18N1MG
 BVCx7F1wpPW42YkhFVAubZ5tyHLOVSc+iJZVGgZ5mUi57odqZ1l+rnqpjwCgnXx5
 tas++vGBPk70vcIP+ZmswGMEAI0Lfr7Qy42P6hbYJZpk/NVAvXMZMUyK7fti2lR8
 BCOQr8lSdFUZMAqOhlGSfr75Lp8YhR4R4qCSISPXIbtkpYpS5A4YOk22qljLfyrC
 vki3U3Qum1eO2L67jswb+hQ7pCeaddNm9Jmsg+CJOZl6nfDIJpC8yoXH76W8tXAm
 1DgiA/96RKTseIR0z79ahlxX5HDr2A5bPM5CZBdPba4tSuFIwd28HVUdLhJmsGpC
 uVnQ5VnhBh5coNBhcb+ngZCOr9NvvyvwrxdYYGvuABeWS3v2UGx7XnJQmBQubWYq
 CEk3wScZWhEoFchvPEVfXtzNBjI6sF1FWMYkAhHaYiH4M7rBiLQgRXJpYyBBbmhv
 bHQgPGFuaG9sdEBGcmVlQlNELm9yZz6IWQQTEQIAGQUCP10VAAQLBwMCAxUCAwMW
 AgECHgECF4AACgkQHUdvYGzw6veNhgCgij4I47kRmhRkdzJeftLig2TG8/gAnRcb
 r7ah3d3nPKNLRN+nQDTp0uxctBxFcmljIEFuaG9sdCA8ZXRhQGxjbGFyay5lZHU+
 iF4EExECAB4FAj/CqF0CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQHUdvYGzw
 6vfvYgCeIy1G5U6YPFK2QZNhB7SazQXwvjgAoJmxWRZr8zKOmcMiYFf1tj05UDhC
 uQENBD9dFQEQBACpBlENAalxZonZ7K2NU6xiH/qz+XI+ZU6WQh58iUlM0QPUU8ta
 Ot8uQUL5DT6G5myFDZufYomYrdzaLxuZbzpWzDOFGqb9aWLlHC16ydWbIRvPif0D
 ar9wFJX3b5DFkVICUYXTKTx/O/VqcpGHH7tLInuipYRapOBrUw1LU87qLwADBQP+
 KbuF41ujgb7QfPX5x5Cdg9D9SZAQyxu5TbsSXmc4fuel10QFMdWyMEUW2rMLixYn
 cWw7AfziHCy3uWOOm1qxm8npYCIRp0jG3M/Jydc8iQTqL59v0/UBOxPQ1pYZxE/8
 EOmbHRHe9BQt4pfouuLVKXGzxg3NW6nXXNQVEeOyqFaIRgQYEQIABgUCP10VAQAK
 CRAdR29gbPDq9y8MAJ0dP1d27SdsNNU4d8nFpwrXfXXa2wCfRvgv8i7ziyodkgwl
 B8LNmWvWUn8=
 =2V8B
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.6. Mathieu Arnold <mat@FreeBSD.org>

 pub   1024D/FE6D850F 2005-04-25
       Key fingerprint = 2771 11F4 0A7E 73F9 ADDD  A542 26A4 7C6A FE6D 850F
 uid                  Mathieu Arnold <mat@FreeBSD.org>
 uid                  Mathieu Arnold <mat@mat.cc>
 uid                  Mathieu Arnold <mat@cpan.org>
 uid                  Mathieu Arnold <m@absolight.fr>
 uid                  Mathieu Arnold <m@absolight.net>
 uid                  Mathieu Arnold <mat@club-internet.fr>
 uid                  Mathieu Arnold <marnold@april.org>
 uid                  Mathieu Arnold <paypal@mat.cc>
 sub   2048g/EAD18BD9 2005-04-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEJs9i0RBADoZqZbz9Vl/0QuM9+PCmS1nEA2k89ZRqPA8C+b2peJb0j0I616
 Qa+SOJIyRIBWGIk+zxhDRxZ/GN2mMW2Q5QksDxPl2dGYbN33LiCWKXxNdVhbsAFG
 0DzGwkjMRagiUitaJD6yopBkpyCGmpEUMiYyjK5HShg82XTMIfpsGKL/vwCg+WhB
 13MxjhKRKBpV9l2qSufcpCsEALPFvpDP2sc63v30ljbH8vEGHFyaq27E50H+V1FR
 eYJarsudpG0LvwcrqJsFEe6afz5urMCnFeHN23Sd6WQY0Mf6GPWd4EBqgl8NdM18
 kREA60gAPpP23vYSFTyZs4CgMC7VbzAQlIeb/gRMRIqsR8lIuJr9x+DIBRdm0UMp
 DmTzA/9+bhe3AK0dYblCod/brugDfUFzu5KNFpdnXmfphJFdUgFtyGoqSmN/M27r
 gV1eA7PKWR/mKCD8JilQ09k52yHK/W0IFNVQ2q39gpGXhCW5oHgW2iKATd3XR0lr
 AWbfrOsL4usfgddQARJKsQgIqwsL6LeALf4G6F4hC2PeSG3fN7QgTWF0aGlldSBB
 cm5vbGQgPG1hdEBGcmVlQlNELm9yZz6IRgQQEQIABgUCQmz5pAAKCRCphinMbP++
 Z8BbAJ9I/EyakF2BOIO6ZnQJ1hEqFMKgDwCgk4kBiHkzmrhTmP+rgcNxac/zRhOI
 RgQQEQIABgUCQnIkXQAKCRCgT/sbfcrp0x+5AKDU+ijbet8rXUdmI+C9udcOT2xq
 lQCeNwk6GAuzU5v9EVIpB7P3jI7QI/6IRgQQEQIABgUCQoiqGQAKCRAMy37+CzCp
 O2zgAKCJVfxjMFBMwVlNNrSwa9y8vqSgAgCeIzOhEwHTwFNZpmuNQ9dPp/hvI++I
 RgQQEQIABgUCQpnnGAAKCRCH2lwNJzWaUbsbAKCBq5Sk9XH7DcL1sL+s6gSfSmTw
 sACgvpGprYIPeu8byEee5uDFM9Et6imIRgQQEQIABgUCQwMO8wAKCRCNe42EaOyD
 lLFjAJ92fYiuvgcty5higoarBc/GGxKMJQCeImBQbK7s9vBGeXSbWsr3PSggGjqI
 RgQQEQIABgUCQ6VuFAAKCRC9I1l/mlC1/qqnAJ4iBh31o/strzn6bYNJEy1yzDsL
 DACgkTZRShR//I9TkX9qBDEQfUL7kUiIRgQQEQIABgUCRDkpSAAKCRB0bJ/+pXPx
 DzSRAJ9V/DPFLvkBSqVYsSEPItyh9aeKggCfXLYrGCkY1QcH8dQPZswFK00sh56I
 SgQQEQIACgUCQoaQVQMFATwACgkQ1wPoPfOWTTQWvwCgjn1Cr+idP1Sbh+PXoldb
 vNIYE8wAn0BOTEjOLfQvSe6NnTCWEEzIZCH1iHMEEBECADMFAkJtAA4FgwHhM4Am
 Gmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAACgkQ0rsNAWXQ
 /VjVUACgnUimWsV1n2hmqNJ7F/WFvEvNoz0An1NewfpyuOoXH5P/YgIwK0m0agRV
 iEYEEhECAAYFAkJtEbMACgkQktwjcC7SSBIdYACfWu+rS/h4Ww6jsG7HZmsruOd4
 x7YAoKuvPVwRJVmDV2klKrt8gMwV1u5siEYEEhECAAYFAkKKkdYACgkQIhjIHo58
 A/9iDgCgoa+NcTAAb+SX5p/DdKHNbyfj0bwAnjwJyhoIBwyygoRlWBnjyPG7g/Zv
 iJwEEwECAAYFAkKLGf8ACgkQH3+pCANY/L1T7QP/XIUnVmyMYt6hc/fPt6jcjGHq
 mhSIFimxO3Fs0NPuMzhL9tfRbBSS8i+G5gNXGz9U9RiU8jgGw0uDorRlIJxd3+Oh
 +iIvG3DyJlAqPj24ng1YeZTacoQf3HkDsP81LrieYGcCryzI8EV9lXZBA0vyqp+g
 7BBuXSSotHE+xPE9kVeIRgQTEQIABgUCQnFLmQAKCRCNSU00xw69UGyNAJ91yYo9
 7PA5b3IAINWGN0klfkTDhQCfQ4Lfi+RUWYCoSHpoR6CyuJkPxUWIRgQTEQIABgUC
 QnYo2AAKCRC1yGyEMX0o1qkCAKCnb0OJSl8BwyBId0BhwbPa2Q6IxACgtMmTq2g6
 cOM1Vm57qoBT9QULJz6IRgQTEQIABgUCQobwEQAKCRBgZdUz/cIFuUpWAJ9Vrnvc
 Uuq4ngfqF3A2SdGGvpRsqQCfdTDdhZjiZPnqT/t8UumqJQS0teCIRgQTEQIABgUC
 Q6gbjwAKCRCkqrO0wJU1sepsAJ9tNoc9L9BVwxeElWGk169dGCSmbwCeIXwT1p2r
 Z0Oy7Qf3w3wcmYwXVnyIYgQTEQIAIgIbAwcLCQgHAwIBAxUCAwMWAgECHgECF4AF
 AkJs+fYCGQEACgkQJqR8av5thQ9IJgCgm8SiQlyHfTLXW1o0KPvMzjN5b6AAnRLV
 3Zsj8mhwfmslRt2KjtYkKMztiH0EExECAD0CGwMCHgECF4ACGQEGCwkIBwMCBBUC
 CAMEFgIDAQUCRkndMRkYaGtwOi8vd3d3a2V5cy5ldS5wZ3AubmV0AAoJECakfGr+
 bYUPBF0AniwyVHKHoYQ78eJjaxZta14mJHMAAJwI5GH/DyaEWmP0+dyEtrGV5G8w
 64icBBMBAgAGBQJDpajpAAoJEFViUQuqeigOx6ID/1VabIv21Ed7zSxnapgDkrqi
 lx3l9jUEo/eIOQMrGpYYu5E7gpmTPzi2ij+MENvE893YP/rKE3JV9BEYwksDsTXy
 h/qn+YnLIJLNBkLqzC6XIFhJ8iGcBsxEGTWvFPdQG8vbzQnZV92ichwoXZp+NCRV
 qxuRe7wsrwvF/rs+gr/miF8EExECAB8FAkJs9i0CGwMHCwkIBwMCAQMVAgMDFgIB
 Ah4BAheAAAoJECakfGr+bYUP+OkAoNkfDw1UBJ3c4tSo3nwhaB86VZsKAJ4gSnCy
 DT9uxvgjD9UHHz8EUtSiCYhGBBARAgAGBQJErt/IAAoJEEY0I5Nj9gwsgBgAoKl+
 viNkeVRNml2woRJLLIYE/7uzAJ9EeFDmjzvetRpbLTEwIJGSFJ+O04hGBBARAgAG
 BQJErRyLAAoJEFhgc7NAI3AvXSwAn16vWce2WvrYi/RBOirHr8Gbu8ILAJ4hbN29
 I2NPEGlR4JZgWqhfqI6ZD4hGBBARAgAGBQJEs9I2AAoJEFZOnwVRvFhBirwAnRUR
 ohYfZHwhGhJw+Kn+4Zibc70NAJ4pJKkBXEXsmpjBsmDF1eb+UFCMYYhGBBARAgAG
 BQJEsUZRAAoJEJTDy2TSbRi8/1sAoJmBCzFPf2UDnHPtY19FYvDKo5T7AJ9oDfTk
 5hbM2wRpw/HeURVvr4LomIhGBBARAgAGBQJEsOa2AAoJEM8opP8z1LbGcOsAoPCS
 o1HJhWEmtzsgdfCE7dRX7JlUAJ96PFoDvf3wB7NlB68um+sPsR4d04hGBBIRAgAG
 BQJErOYeAAoJEHeRQ9mfGs6ck3EAoOpmFYvnoiTr/bRfeNpWCFnLBfJ7AKCP8MxH
 76ozrgCypKGjomF2b7h8wYhGBBARAgAGBQJEsThUAAoJEPHPFQgJyXlayMEAoLO1
 /o+D6UEphiArMz6sSd+v/vbRAKC28P+1byFq9b+A89sZ+XnKVzmp9IhGBBARAgAG
 BQJEsj0KAAoJEGwxx7NpBHVSYuQAn1uVl5Ss91CU+wzW95n+Vg1z6Ao8AKCKqkUA
 BCKD0Zy3K1wt5b8lIhWBrYhGBBARAgAGBQJEs+eMAAoJEEU8RUkCMNYCXx8AoPq5
 xsmid7M6852Agjo8/pLCl30mAJ43jCYOZAUrtZqD2mVRhzPJdm+lxYhGBBARAgAG
 BQJEsOwyAAoJEFkymUKhHnTsqWsAnRyUKfyZNdlYMtXckhEfKAQYQbvcAJkBiyoF
 R48WMLZNzEHAGYxgoqVhq4hGBBERAgAGBQJEt4jSAAoJEDRNtjiDUpwqzb4An1vt
 mYtRxl0wg7i+QNqJisf/NKI+AJ4k1Bz6t3+5vKIhhGJj7BR32lTp7ohGBBMRAgAG
 BQJEt4+FAAoJEDRNtjiDUpwqOlcAoIv1A7stRdMgoLewPUTlb40N/A0+AJ0Xw9mz
 6OQsgd8rU4n5aqtrhELoB4kCHAQQAQIABgUCRTyUHgAKCRAmSeYoxdNNBcjVD/49
 QWGwFAs/12jjUFNhOHuvMyke0Qc93Lg5K+BtCCqh5Z2XE7w0HrvcKTy3ZCa4nnUE
 0t7XmqWnGeYTfqQiNT0ROIxdnlHucQQO/knk12rraJ5u9F8BdyqbF5KDzkZYD4ky
 rdxE8QMWTwumvzDb38XNgcFdsvLu8NB32rjoW16+8rFnuVL3gcQ3VV+zW0oozieh
 T3YOI7JRlGzmDitg2X5lGgtJX7ipChXqG5NS32y0/KQ+Cksa0kxRGIP1UdXnSRjr
 ChH211A65RPLSV8fjfhLiqnlVBmWqcfkOYg0RXfL7+IbR38Wv9QrWXpTFr8xJsac
 X4Ww8xB9rqL3X2Nyr/OY8dK8fmI8r2OFrbCL+HuIblHRMrjeMaOKbGQA3bz0lYb3
 Rm0m56fASGxvOhXXMTq8DHmyn6LqtEAAnqNHhWaigIFwphM0zUV6O03viB/HM+kj
 q994/r4oDd2f63jG1EVMxwA41hZoWCh5ycdHvDvhzT4/Mk7dCqOFmgIVixxXzQrh
 yERZ2vmUWUVJQzyBJuDPDKHG/79MmZBHb7r2D+4s4o0UnV6AR56XTuqSyPNCutEG
 hFDviPPeNWn1woCqdIYf0HYg/IeXXdXL6ZvrPKb7dc9wyHJFbmzQwTWFORkAGU7u
 UpCS5ofBoNcuZJ+qBvfT2lmYoS5jLfWlfckr04lstohGBBMRAgAGBQJFr+q/AAoJ
 EFaK6ScFFSqpfzgAn20c8xGOt4rbbn54MevHMdWExZuQAJ91x72T8XbU0MVzub5u
 ED5RSjCKo4hGBBIRAgAGBQJF2a1VAAoJENXkzjzP+fsLYNcAoIMHE4eSmYUnqIlO
 +rkvfIWBwpweAKCuiOBvcimQG9p7xmCNVDd/5V9IoohrBBARAgArBQJGC47CBYMB
 4oUAHhpodHRwOi8vd3d3LmNhY2VydC5vcmcvY3BzLnBocAAKCRDSuw0BZdD9WOQk
 AJ9tcXXZ/KedC7b29iDeZz/ndnR2iACbBDOAZtENvEk/u9jI36HWoGihuKiIYwQT
 EQIAIwIbAwIeAQIXgAIZAQUCQ6f7LAYLCQgHAwIEFQIIAwQWAgMBAAoJECakfGr+
 bYUPHtoAn3I0Dtz1V3SJgri49XGkWGJ+KjyrAJ4n+CfAxsUXUOTL1ruH/CF85h6a
 fIh9BBMRAgA9AhsDAh4BAheAAhkBBgsJCAcDAgQVAggDBBYCAwEFAkX6ou8ZGGhr
 cDovL3d3d2tleXMuZXUucGdwLm5ldAAKCRAmpHxq/m2FD7zVAJ44aQkKVoSqMTV0
 lH4WjYN7t8DddwCeL6sqwWlYbwIXJ+yXQn92XaWF7hy0G01hdGhpZXUgQXJub2xk
 IDxtYXRAbWF0LmNjPohGBBARAgAGBQJCbPmkAAoJEKmGKcxs/75nLGoAn0aZH7AF
 GIrp0RzcxsHUHuqg7UKnAJoDIZE2o+NflGAVCYIZDqprxxifJ4hGBBARAgAGBQJC
 ciRiAAoJEKBP+xt9yunTIIAAnR2SwmgiKUf/gr0LB7ByNGAE5wWsAJ4/GcHj/wMA
 c8v7orM1IX0BJ86VnohGBBARAgAGBQJCiKocAAoJEAzLfv4LMKk7g7sAnAtGIcxl
 lnB0ysEiCS8r1HoS+25QAJ9OMIs8SG2o1DuCzKvMUSd1zbgIk4hGBBARAgAGBQJC
 mecaAAoJEIfaXA0nNZpRyNcAoMP+uOEtT9iWbHiuFb2Zt9wWCtbaAJ99Gb73DuDW
 zAaoO5FM70hq62CYZYhGBBARAgAGBQJDAw7+AAoJEI17jYRo7IOUPwUAoJsNLu3M
 ve2b+xuQJU2JKVaFiyfqAKCDQyKNy2aPrX1o9R4sFO9BVbtVYohGBBARAgAGBQJD
 pW4ZAAoJEL0jWX+aULX+5VwAnjFM7jF5W/wepLIih9XVJPFveHQJAJ0ZaLAY/fhD
 aJCkd4BM+O2C5K4ipIhGBBARAgAGBQJEOSlbAAoJEHRsn/6lc/EPL1kAn33Ruexp
 7UsBxT0tO1XcPhcJv6JfAJ9vCWZd2fl4fBlZYtpZOxP9JIxtPIhzBBARAgAzBQJC
 bQAOBYMB4TOAJhpodHRwOi8vd3d3LmNhY2VydC5vcmcvaW5kZXgucGhwP2lkPTEw
 AAoJENK7DQFl0P1YQPwAnjCk6+JguNQDHvquwGD1MQ50Lp8/AKCXwwyfNewKS3ft
 lJ36x06Z9CbomohGBBIRAgAGBQJCbRG2AAoJEJLcI3Au0kgS3AQAoIfwoqk8zlX1
 M3hJ8SQzO341ytG5AJ9D4M8xvyz+6hCO+hQJbHOH++URYYhGBBIRAgAGBQJCipHX
 AAoJECIYyB6OfAP/QyIAnA8JR8C+ScTT61Z4im89hqgvRlzbAJ9MWA/FZ6PV1Br5
 thTYWyK0+wQatYicBBMBAgAGBQJCixoCAAoJEB9/qQgDWPy9DAUD/1C7Bntuxrz4
 R6plO0P7FyG2rTI6kgJ954OwH1qDgqSZwtzioBvhPg6eMzTFOGAeQldslIqoO1YE
 PPUnndpT3ppu3TiEJB1VxbRoOlS54elTzBTqsiLPHZsPlv69YXAN4BwN93IhadeI
 PXuZatNMWGHrIkXw/KbDtaZuRoCdKcZAiEYEExECAAYFAkJxe7oACgkQjUlNNMcO
 vVDx0wCfRpDnDUTw5+90xx7ft/i332tJAdoAoNQjb31NHFU66ilhc3gBOMTobSg/
 iEYEExECAAYFAkJ2KNsACgkQtchshDF9KNazJwCghgmoy7tPAo0Ict/cwRZd149W
 Up4An1cqWwPI+63crwlmPB0YPLb17gReiEYEExECAAYFAkOoG5oACgkQpKqztMCV
 NbHamQCbB53N589ZAELg9+BexJARwUjenEoAnjnzscRGg2LnthknsXXW+nhnYImg
 iF8EExECAB8FAkJs9zECGwMHCwkIBwMCAQMVAgMDFgIBAh4BAheAAAoJECakfGr+
 bYUPDt4AoLJxDDziXy6ER41W50gzeELTrOByAJ49GMf0N0sjhtH43pF+apWpM5wI
 F4h6BBMRAgA6AhsDAh4BAheABgsJCAcDAgQVAggDBBYCAwEFAkZJ3TMZGGhrcDov
 L3d3d2tleXMuZXUucGdwLm5ldAAKCRAmpHxq/m2FD0O8AKDY6Ck9+w2LPaOyn9lS
 zKvemya/lwCeLuRnLhsoDzHyDlktUJgh9+fQNGuInAQTAQIABgUCQ6Wo7QAKCRBV
 YlELqnooDnunA/9LMBVFiAiJn90rXezC4QwmutNza/mwlOKjQ1jkRlbR8seMlGxn
 5m8XeypfRNexeJvYweHfMBSOHnaLpEnu9Ylw1s3RCRmP0P0sAV3DcQ9TtyRTz97e
 UpOoRYLr6+vDezhIKWIIkTKx5F8t36OmG3z/nNXI+83E19pKDNFiJ2Va64hGBBAR
 AgAGBQJErt/LAAoJEEY0I5Nj9gwssyAAn3Ofd7PY3Rlcwtq+fqNHIYYoMOMHAJ4q
 PzKDvTmIj093d5Lncf/+sZiEWIhGBBMRAgAGBQJEr5bUAAoJEHyOr3aQJLyoRJIA
 njHp5TkZGFaChdZQdOts7XeVQg8AAJ4mnEByhJbcqPuPGe1OibrPXA7bgIhGBBAR
 AgAGBQJEsUZXAAoJEJTDy2TSbRi8R5QAoKh/oMzElYeT3mK1Bl1jJjWByab8AJ4i
 EI6zslz5bw7PCd2jB/gIWszug4hGBBARAgAGBQJEsOa7AAoJEM8opP8z1LbGW1QA
 n1frW1EzTqiQb7nFXtO7AmuGzgaKAJ42CxgDPHK6FuTE9/DZF76FHFUW3IhGBBAR
 AgAGBQJEsThWAAoJEPHPFQgJyXla4EwAn39VFFBaC2r3qkC8yLbQNrTf/HblAJwO
 QbQB5hd03JKVZFnGU3AtvUpw64hGBBARAgAGBQJEsj0NAAoJEGwxx7NpBHVSmfMA
 nRxMMAf/ZL2OwGm+DGYrhCwQvZuoAKCXXPi3NYOSaqT3S4DkFlrTCgEyQYhGBBAR
 AgAGBQJEs+eOAAoJEEU8RUkCMNYCIvQAoI3hh1gUgTHR71r81kAknCd2UGVpAJ9h
 an2IyrorHyh9HhYpccE7YxJqt4hGBBARAgAGBQJEsOw3AAoJEFkymUKhHnTs0s0A
 oN8HGhufHKV/6jhqXbi6HnyCw5fKAJ9cBhtXO5beagMrk3saNHh0/atfT4hGBBMR
 AgAGBQJEt4+VAAoJEDRNtjiDUpwqXsIAn2neZa4QHjGa1mCQQcapF6GgjB4xAKCs
 ghDUAktU9O8E5L3JexWl1xplwIkCHAQQAQIABgUCRTyUJgAKCRAmSeYoxdNNBeyB
 D/94LKYa3P0YEf0imAe14WUtXiOGTtQItnqMV0qiuxBFtaa7wv+9Umfe2MGg5VUb
 kVGA35fgO0ecICumj9639h9AWiT7pIue+iynOU0t2OeJt4ieJbs/ZdtOABPp9GDU
 S0X/q4iwB/373TQWqzdtEfwXHJKGZOaivjmWkOWXAJd/joQsUAJKTYHO2LNf8WNq
 i6MKLBCNloIb3WZn7da1PtR9IRlrGurExj/RThbv1fzsYC2T19woK2IUtXcPtWg7
 M2ncXtpjzMDYzYoYGrvrFSG+cyMV7RYz2EkRzIYOZA+6GaKifE0FvVS+URowhjly
 lsk6fLd2I8fEu2fnOLGkhGQ8OwQBzlfcYDXFxtGdApSxZFaD3EAOMr7KBkQzac3M
 oaAz6LXonj6Kt95xiBP9Mgb4jqpBXEDdbiIJqooftSp+f1EJpwrxO+J6THNaaYIY
 PqvzvOjyjGiyWRNbQNxLngBnciD292weTkpu8GJJDDq3LabXxD6XiEITIQy+9/79
 ug3R4PJG8AGM8nFq1faeOCn3l9U622lXbayFGciKXx60nGTCcUnyncnccJthk7uQ
 wwE7Lh0ow5FIr6kt5vCUy8IunQw0rAogF+YEi6l6t0m/8JW1xxj4aBX2wiSbh1s3
 3K9aK4ZdikJ+jhqvIUVQT6b3/5pP1h7kXp7VOnH1V8kG94hGBBMRAgAGBQJFr+q/
 AAoJEFaK6ScFFSqpxhYAoI4A/orsTorfnEy7slNIuBDd11ayAJ0f9TfrWNalwd8f
 0bd0OAL5JfbxD4hGBBIRAgAGBQJF2a1bAAoJENXkzjzP+fsL1RcAoI4mx3weRnJy
 AfKpOGCaO/423y1xAKCQGvGgSyrIDOss5ZMlZ+6U05rzmIhrBBARAgArBQJGC47C
 BYMB4oUAHhpodHRwOi8vd3d3LmNhY2VydC5vcmcvY3BzLnBocAAKCRDSuw0BZdD9
 WCfMAKCX5WqsS4x/3RfUc/n/K/T6PIh6pwCgh5J+s6rnnuoyq1tUT2SBNM5YwOeI
 YAQTEQIAIAIbAwIeAQIXgAUCQ6f7MAYLCQgHAwIEFQIIAwQWAgMBAAoJECakfGr+
 bYUPhLMAoLY8pjGwHPYwmtUqoTcJFAL4R0MVAKCDvvs92MHXjZMbgFob3lY/RlnU
 gYh6BBMRAgA6AhsDAh4BAheABgsJCAcDAgQVAggDBBYCAwEFAkX6ovEZGGhrcDov
 L3d3d2tleXMuZXUucGdwLm5ldAAKCRAmpHxq/m2FD8vLAKCFI3qK1z+aOr4RB42L
 Fpidico8GQCgnqEtyrl7CZ4ytVc8MyMziTeUaum0HU1hdGhpZXUgQXJub2xkIDxt
 YXRAY3Bhbi5vcmc+iEYEEBECAAYFAkJs+aQACgkQqYYpzGz/vmf+JwCeNx248vmc
 AD7/7yEQaWXlsRnemxoAn271IgFSZmP1L6b8Qb6j8djBU7DeiEYEEBECAAYFAkJy
 JGIACgkQoE/7G33K6dOUTwCgl73BuAoLpsj/uISyhE7ivzxSb/kAoOBRC/Q6Uqxg
 eS0Z9zDi+bn/61CWiEYEEBECAAYFAkKIqhwACgkQDMt+/gswqTu8TgCbBoDq06ku
 qCMVhWENKOO1jPns7mMAn1u5sUkizWpW8TkGwWAkXdiyZIT1iEYEEBECAAYFAkKZ
 5xoACgkQh9pcDSc1mlGtegCgs/H1SunkY/jVPy1q/3/nEY7ZAqUAoKlOVpQo4A/h
 XiftmF6D3/Okt4pTiEYEEBECAAYFAkMDDv4ACgkQjXuNhGjsg5RX+QCcChlOhX9G
 oDXUvD6y7x9qwGN0hqUAoIXyVvv/xsl1QN+8fL6Qj5D0P62niEYEEBECAAYFAkOl
 bhkACgkQvSNZf5pQtf4jIACgkbn50dNjQinBGWO0oFKtEDhCSv8An1RWCu46g/dt
 FIdDSf2gnNgJE+OeiEYEEBECAAYFAkQ5KVsACgkQdGyf/qVz8Q9o/ACfXaFjrGel
 f4mqvv/M9i4uIyJ3RcgAoJeUUaNXs8J+WF86LTkHUPMaLF0diHMEEBECADMFAkJt
 AA4FgwHhM4AmGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAA
 CgkQ0rsNAWXQ/VhCeACgg0Kb6jGZexqttiOC7LMgFtaHSOIAnjQR+WE93s7eE4ux
 E3hMI7nPXRQaiEYEEhECAAYFAkJtEbYACgkQktwjcC7SSBJFGACfQQBk3IaOZKkC
 e7HDF54HURXyDvYAoJrRdQQ/BtL/V/69NTzPWiSD0tdRiEYEEhECAAYFAkKKkdcA
 CgkQIhjIHo58A/+4fwCgnV3jdlOwR97i3AIp2k5k9oOIyoUAmgNl48teoILQc0TH
 F2Fd//KC3WFJiJwEEwECAAYFAkKLGgIACgkQH3+pCANY/L0yngQAiGVjhe3/OlbJ
 clB+aMfG0spu35YpWQfRXjVfidspy2Q2ktEHxWixpNEi+KTwVvQLKIXcp8FKXwG3
 DpOHIIYI88IVekKyvC9nBFFO/wBUDhgZqh5hmOGDAwp8ju9dUsOm6p7+5IQ7xUU/
 5JZdwTN+pHIQVvujbbeiHvIaqtNLyuiIRgQTEQIABgUCQnF74wAKCRCNSU00xw69
 UPBtAKDqs8NIXRJui2LPJV2UXpp7GySNEgCggInwEuHY0dHnr57Nzo8pnVFsjcKI
 RgQTEQIABgUCQnYo2wAKCRC1yGyEMX0o1qrqAJ9kOWEyTV9TyckpHCynLzWOIWA+
 SwCaAuIRdCTmZKl5RIR541yYXr9SOcKIRgQTEQIABgUCQ6gbmgAKCRCkqrO0wJU1
 sbfoAKCshfw3tSgEYd/X30nqLUyN86r2HACfUUBVZSsEdSDjfbzlq6+oYSml4beI
 XwQTEQIAHwUCQmz3WAIbAwcLCQgHAwIBAxUCAwMWAgECHgECF4AACgkQJqR8av5t
 hQ/vPACgmLCZt7fj7d34RceIP7La8T8KQT4An3Jg3AnRj0EDDvkocqt6903RqgWy
 iHoEExECADoCGwMCHgECF4AGCwkIBwMCBBUCCAMEFgIDAQUCRkndMxkYaGtwOi8v
 d3d3a2V5cy5ldS5wZ3AubmV0AAoJECakfGr+bYUPAzMAn2PQjsp6CmAyN3qOBKD6
 Tqpb/ET/AKCnw5sAraX5lFBkDEDAHiVEepQPB4icBBMBAgAGBQJDpajtAAoJEFVi
 UQuqeigOJ4AD/RlnKOhsxc4sbNJ6sllLaKf3SzcZcc7A1y50vDPk2MwRVMQ6unwD
 AkpAunZsg9YTrtOvjY/G6d6E91T8CJXrgdrxl5wgpk/rHpT7V1mn+DK7jemEvIgT
 BqnBU1skldNulXTdk26YmIyrKWwLtE1CccodKsbMd/iqIho/vsDq1IgDiEYEEBEC
 AAYFAkSu38wACgkQRjQjk2P2DCy9HwCfYOkX15vnQ/oe9weSZ42EWdYVNHgAn13K
 /hGWDGlQtabjoXfqpsGvVv6xiEYEEBECAAYFAkSxRlcACgkQlMPLZNJtGLzWWACg
 33QsBMvPV9fjE6bsjJ9xbGFo1+YAniMksN7BjMhdgjJi+YzmghT4RpgHiEYEEBEC
 AAYFAkSw5rsACgkQzyik/zPUtsaMDQCg0dKgGHcb8A1ktRKqi44uHz13sOQAniHY
 pYr0veuJVSd87ainH7sP9ldOiEYEEhECAAYFAkSs5iEACgkQd5FD2Z8azpxtPgCf
 a3Z7gM0c2dG4o0ODdHdh3AnB0o8AoJiD4d9miGmlEFADrnpte9plthSgiEYEEBEC
 AAYFAkSxOFYACgkQ8c8VCAnJeVrIAwCfRSBbW1am5QUsFBe22ZqLLAsdopAAnRdj
 vb9VzOyMUcr4kyvgyFTkbjgXiEYEEBECAAYFAkSyPQ0ACgkQbDHHs2kEdVJ6RQCf
 cCgDGj7fjsWi5zS92TL3+l5eduEAoIDauVwSz8Qk10hIeOGz5Z9OCAExiEYEEBEC
 AAYFAkSz544ACgkQRTxFSQIw1gJX0gCg9CWTuDEOdEPZmVif3LNP++tHoS4AoMkr
 DrUl/tN3N/GXXPiPDgF3i9VniEYEEBECAAYFAkSw7DcACgkQWTKZQqEedOw02gCd
 HrizfGczWy6USELcwV68mGzBk8sAn2Is4nOCkNHpDSe8mYnKRJSjIx0hiEYEExEC
 AAYFAkS3j6UACgkQNE22OINSnCqa4wCePqO6/S4F559x+Q24mVpXrsIuP+oAoImx
 g42x5cieXM05JhD3vW1scBD9iQIcBBABAgAGBQJFPJQmAAoJECZJ5ijF000FA+gP
 /0J4H1mPcTk0p/PCtIzGjNY1mtsAJtAgCyAcd4ueXXU226a5J5QwXwkLb/7RJ+d9
 tPr1EWO5tR1n319nyonYxJVP3XzoZTKbrCZmtiFnbwEQXoeqT/njW5iONIDlVrb4
 RfevdTugqetVA19pTif5pGr9i9nXPlDx3188Y/IoIsF+r6VQE8HCRksXymnKAxm8
 GAoGnRIDK2Odk8OK2V72vff1v61z31sIm0P1AoESCRCJSLyUp1BvKnUu4ZkJKK3h
 QpmqcjoU73jDMH2Sli9B5R4ujZdDJv+cZJvlhJb88IaJImF4lDebKmN+8GXLyST+
 55CIMBoUsS1wN3OJm+Y2pM+bV7aze8OU/fkFiO/zunDaQg7cJtaGxdQ6FMsAngPA
 vuDxwbAI6/IscUtrVcwSSX8Nh6/6sN399aj549ipyH3x4mukjlrz6NJJZs0J6tvz
 haHu63pAZSXpf/4TcRFMHw8Lz7o6GQWJ4HO4mJMpfzvHvKE1gLAdSvJ3IWgzPpsv
 Lwzws7M0/HejGx95hHExLaPGeStkcglhQxFpx3BwAmdz7WOS+d+fplI565O127rY
 LQeyRKS9wABTDDG4ZpjRDKiO4NTctADS3TbrTQkP2WKaJBuNF5CdJyZ7HbTednHW
 Z21o/tAyF8Sdmw9qmVqjUiTDwzQDpUlg/CmonXocJW18iEYEExECAAYFAkWv6r8A
 CgkQVorpJwUVKqlkBgCZAfmCVmePqFLhQLQLh2+Y6XHQFxUAn2JrekH/llrLlEmb
 gpGWWd0Fjs+IiEYEEhECAAYFAkXZrVsACgkQ1eTOPM/5+wudXwCfVMnPgesuCNKT
 Ule3nmMxSDkoXGMAn0q4Mgrl9xrF1ySJJVtTttDAOXSBiGsEEBECACsFAkYLjsIF
 gwHihQAeGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl0P1Y
 NgMAnApKvTJGh3piM/pia3OAsrdY3pp0AJ4uRT54MUr6Jje0QLOIBZDN++917Ihg
 BBMRAgAgAhsDAh4BAheABQJDp/swBgsJCAcDAgQVAggDBBYCAwEACgkQJqR8av5t
 hQ9z5wCfZRJfMJh7JjNA0BIWoI+M1yxvpmMAoJHefiX7d/xLUB2sHAKLuEAgWhPz
 iHoEExECADoCGwMCHgECF4AGCwkIBwMCBBUCCAMEFgIDAQUCRfqi8RkYaGtwOi8v
 d3d3a2V5cy5ldS5wZ3AubmV0AAoJECakfGr+bYUPen0Amwe3Z/uxbTFsOuTZvcYw
 F9KkesM/AJ9jl+Y4KhwNxjL/zQfQgZZOrQij7rQfTWF0aGlldSBBcm5vbGQgPG1A
 YWJzb2xpZ2h0LmZyPohGBBARAgAGBQJCbPmiAAoJEKmGKcxs/75nZ4QAn0R7l8BN
 i5igOxFg/TJAjEl+snqXAJ4rf0W8DFLlbYmYoKNjvFkZlqiQdYhGBBARAgAGBQJC
 ciRiAAoJEKBP+xt9yunTIfwAn2VSNgAzBtlHCFVqfR2jRl7MuhJVAKDmnPXQP7jj
 DMac+LchJmrEuAB2n4hGBBARAgAGBQJCiKocAAoJEAzLfv4LMKk74joAn0kO2C0E
 P5tWD+Y7qWKcP8h95TpyAJ9VQwAnMyZSU4wgxEEVPUfj07yP0YhGBBARAgAGBQJC
 mecaAAoJEIfaXA0nNZpRDqEAoLoc/XXs6xMrtHSaUioN+EB3kR6iAJ4sSbrR2HtY
 CNQ8q22LmEc1rxTwtYhGBBARAgAGBQJDAw7+AAoJEI17jYRo7IOU7E0Ani5eZ6Za
 i49Yz52SOnGNkZ1Xg+wOAJwJJJx/PtZQE6HiQ2OpBO6iFLys+4hGBBARAgAGBQJD
 pW4ZAAoJEL0jWX+aULX+aU8An3j26teCEZqaD17rokv4ZQb7fSyPAKCQ3Ap0uAG1
 J3IJ06COBmC1FbcC94hGBBARAgAGBQJEOSlcAAoJEHRsn/6lc/EPiSQAn1Pstyxg
 jwyw4cKKV2uW4vufViFGAJ9eUSjbtkvlFz5piBsQwYHPRSTEs4hzBBARAgAzBQJC
 bQAOBYMB4TOAJhpodHRwOi8vd3d3LmNhY2VydC5vcmcvaW5kZXgucGhwP2lkPTEw
 AAoJENK7DQFl0P1YFz8AmwR0Xs87uTTptm2mnE5VY4ku4IigAJ9YxuJUl190fJTD
 uRUs2aEw0vgrlYhGBBIRAgAGBQJCbRG2AAoJEJLcI3Au0kgSEzcAn3xNN0bLAMz0
 ZpwiKD0vUtnOgQ1ZAJ90dVpM6CiUHxMx1JACpWXJerjgfYhGBBIRAgAGBQJCipHX
 AAoJECIYyB6OfAP/zZoAmgM2L19Ep9FzBd4iMz9/3kLfcQ3FAKCLfdgQ3N+NAFPn
 /BUHK4p38WddUIicBBMBAgAGBQJCixoCAAoJEB9/qQgDWPy9TM4D/i66hWMxV4RS
 GpwMxqZXjxoo4vxp+ebtC8L9CDwHo0cJvjI+SjVfbD/515obqAwIUzNh7YqmImYv
 VqYzEPtFVRsSHfm+5YpXD9ArmTSw5q0zCSbwjVxUSgI6mfz2fjUVeLlWpe02Rqnj
 LMWXsxuBLe88/VliFCIPrHI0M7/QHrdKiEYEExECAAYFAkJxe+YACgkQjUlNNMcO
 vVAZCQCffEidzBqAilm2heJeow0sYCNphS8AmwQezJRJnQONrQHKCkXCz7javnOd
 iEYEExECAAYFAkJ2KNsACgkQtchshDF9KNb8KACgvadRI0iaLpshFL7QUlpjiUAN
 T24AoMr+gUjQ9wHwvUGALlCmwG7+Gk5PiEYEExECAAYFAkOoG5oACgkQpKqztMCV
 NbHbsACgmW9H1YQHoKYX43bCYm6h94+qoFkAoLXjvWleNUmZ8jfIARmUx6sxvZ2P
 iF8EExECAB8FAkJs93wCGwMHCwkIBwMCAQMVAgMDFgIBAh4BAheAAAoJECakfGr+
 bYUPWUgAoJ+bfzVQE4GTv4zERx5oUv5U42XHAJsEDChyaKIuCKnpEdF41zC3NIsC
 BYh6BBMRAgA6AhsDAh4BAheABgsJCAcDAgQVAggDBBYCAwEFAkZJ3TMZGGhrcDov
 L3d3d2tleXMuZXUucGdwLm5ldAAKCRAmpHxq/m2FD/guAJ4rLMHUNINIK6X9KmUx
 W6LarTaD5wCgxLlSsT/mvtBzp8CwvvB5secXkqiInAQTAQIABgUCQ6Wo7QAKCRBV
 YlELqnooDkHWA/9RyFfw1zXreSRmZR30ffSp9eThRkg6KoybpY5/DgupRTW8qgxm
 KiIgHi5TKikpwUZoKj64RuB07LAk0LzyxTNk6sY90+HNUc1ZHYJV5rRG+yYn1xHP
 xEErbkRnsppPgzu2J95CBfbQgt0dM7jyktzyYAG47e72jkOrkOxzzECNPIhGBBAR
 AgAGBQJErt/MAAoJEEY0I5Nj9gwsZLoAniQyqdhjedzDXYrwXeFF4fq+MLpFAJ4y
 wzWIPxiPS/3u7frcmJ2jT0c1oohGBBARAgAGBQJEsUZXAAoJEJTDy2TSbRi8IwsA
 nAyek7uDf4Bhi27e0KRw2grnc9a6AJ9QrZCqg46tJTVkwIiuIw8UnRmoLIhGBBAR
 AgAGBQJEsOa7AAoJEM8opP8z1LbGQncAoJcv/cUdiPyDNywU3iht/VJjDLcVAJ42
 Z7DM/C3H3iMCLq3XRvzmjJtMmohGBBARAgAGBQJEsThWAAoJEPHPFQgJyXlaTB0A
 nip2COgcfBIkUpoiCXt0er1Ndk89AJ93PNfOBrO0NOiIAMBO4b3dQn/LsohGBBAR
 AgAGBQJEsj0NAAoJEGwxx7NpBHVSLJQAnjOwNF3UkbnrkDTmY4IRuGsm0ogQAJ9o
 2jnNfuTcfF5QL+CPqUAJ11ZttYhGBBARAgAGBQJEs+eOAAoJEEU8RUkCMNYCmZIA
 nR9UWJ8siJUp/IyQ+3NSHDP/9e34AKCXIs7YmLufzX0XFQ1g7qj1N9Pm4ohGBBAR
 AgAGBQJEsOw3AAoJEFkymUKhHnTsHAgAoJDXDqDsEQrgJJti57lbq7ar3MA9AJ4t
 Zxp//d2FrkxvvfJVViaE1jjqgohGBBMRAgAGBQJEt4+2AAoJEDRNtjiDUpwqOYoA
 oLTwk2y87noQJmMyI6L4k+q+zfrcAJ9yYWPqy5HD2Z9GH2BHPN3jmiVJH4kCHAQQ
 AQIABgUCRTyUJwAKCRAmSeYoxdNNBWajD/0TsUjlyyoNYzkSTUKglVwKd9bx4+dk
 Cvl7lgjhKDtPvyhEeukOlwfxNY2KO/H4cQe4F3MuevNHLxf+3ydxfdnx/QO9USoQ
 ZhDxTObocyLjNlKrDSBqKWJ+s84CMgCyKW1BuTzFyOq7rLXWxoQZYGSfNY3DjjnP
 yfvoVbG6rRRLD6BBjMpapGGfMXBoAbs8IgcfApwoVFLrR4BcvylCS4jgH2eyim4J
 j510XZTqURQLrJBvCo+fxEmxYfzl2ipHf7AKXlx/zzST46dHGkRSIYMqEjsRpTNR
 BqvqRBU+IvIAeUXqfUImSeZJQCKfcWpbA5kORu4ZQt1OcX/q95mlq5cWXfNdKqqW
 x5RO3kCpgz/IyFdCMFjasP1brQUHg8TapPB0Al1Kilm7tRzU+OIsE7YNBub7IwB/
 8gE0BBtkcMFE9zfv5C4y7wPMlFu7t6qS8Xk5WcZ9MjkN714mi6wcRn1MocfeUnq1
 +Zho4IiiNzJPp4TMjHYtjm9xX2+bUP5x998GaH8420wAtO8T8JtvU/K1kWLaNfyx
 OkGV2obFA/0MXNvDu40VSJykaBaOAFy9ITcK6Iab/K93ppvnTNnW3W5qO+YvGUoK
 cW8zZM7x7JkaZVwgVh7225YqxbER9tfYdHGCGliEeKhl7YQnYBCR96mTFmcrmGeG
 I3arj891FC20q4hGBBMRAgAGBQJFr+q/AAoJEFaK6ScFFSqp52MAnjMjbcLtaUDJ
 cW2/kTj1MeYM58IcAJ9zQOF3bv8n5vsOO8FcmLFH39IS0IhGBBIRAgAGBQJF2a1b
 AAoJENXkzjzP+fsLtY0AnRkwaB8Uf4H6JDUPE87iv/t1w7e+AJ9RbddbphHb2/wI
 1JORfx9Li0K154hrBBARAgArBQJGC47DBYMB4oUAHhpodHRwOi8vd3d3LmNhY2Vy
 dC5vcmcvY3BzLnBocAAKCRDSuw0BZdD9WOiJAJ0VJO99RhSWPRi/lj68Mvfqyilr
 hQCfTOVqrVG2n6b3g+KHig2KnYiH6COIYAQTEQIAIAIbAwIeAQIXgAUCQ6f7MAYL
 CQgHAwIEFQIIAwQWAgMBAAoJECakfGr+bYUPXY4AoNXuw+zuMj2rxTsruKMcF2Ij
 KJ3CAJ0VP6J8KzHFlMfBpdEEuI3V5d4PnYh6BBMRAgA6AhsDAh4BAheABgsJCAcD
 AgQVAggDBBYCAwEFAkX6ovEZGGhrcDovL3d3d2tleXMuZXUucGdwLm5ldAAKCRAm
 pHxq/m2FD0vaAJ4hK6sOxT5l+3jMlTXVj+xy9+zmcwCg5af+ISeWnNS0EjAmrPP+
 Zwct/lq0IE1hdGhpZXUgQXJub2xkIDxtQGFic29saWdodC5uZXQ+iEYEEBECAAYF
 AkJs+aQACgkQqYYpzGz/vmf7XQCeJHjP6NyAbrXDisGNDcBJSipBI3oAn1Co1zkO
 5NUKBT4u7taXoeKai5YfiEYEEBECAAYFAkJyJGIACgkQoE/7G33K6dN3AgCgpvhV
 iYYrAm0LudK+xcyM5u6UMZsAn1/u78652P0baaF4AJc8+kqDYgrOiEYEEBECAAYF
 AkKIqhwACgkQDMt+/gswqTvoBwCeOH+dXSfx8OOqiPvsJGtkITyfZlsAoJfWTEGV
 8HlxStoZmDVXSr5oCYJtiEYEEBECAAYFAkKZ5xoACgkQh9pcDSc1mlFNpwCfRCaC
 6HV4kn41/QhiafH255fqEZkAnA75h9SBEPBuG8y+J8ORWGceCKjriEYEEBECAAYF
 AkMDDv4ACgkQjXuNhGjsg5TTjgCfU7lncHHMN+c1HvDvWtoNEmNrgtgAn15qBmaq
 FMFI1yu1ZEfebGUsqy3kiEYEEBECAAYFAkOlbhkACgkQvSNZf5pQtf4dmACfZHjl
 UewODZBCPTgFc1l9veRKO5gAn17K+aAAxjz4akIVRI50aS/22u4WiEYEEBECAAYF
 AkQ5KVwACgkQdGyf/qVz8Q84TwCdHDI+1X1YreWOv2I/ocz5nMtSn00AoIqwaxrj
 tXGrq4/cA+e59Ux3/fCriHMEEBECADMFAkJtAA4FgwHhM4AmGmh0dHA6Ly93d3cu
 Y2FjZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAACgkQ0rsNAWXQ/Vi9CwCeMngv2djr
 LTWBYLopHC49d4kcxIEAn3BGDvpTUcTNlY7LXZGGAXL1tLrhiEYEEhECAAYFAkJt
 EbYACgkQktwjcC7SSBInMgCgtUspLyQebmmH9rdW7WKt2ZiflrMAoJEkib/cnPJ5
 jaekU0I0WaEXobmKiEYEEhECAAYFAkKKkdcACgkQIhjIHo58A/96zACfV2mhAAVE
 x8qkUf0zqjokg1XOD2cAnAg1kIcaKXNWMz4cb1yywp3pH08oiJwEEwECAAYFAkKL
 GgIACgkQH3+pCANY/L1fqAQAjKlRczzgB+qq3CUajoUxRqvfRhVgyk3Q5PDMA53e
 fTh5EQqpBzxNlMBdPJcGnS+zpV8/ywKUNtmhO3wT8IAQ0LYfTzD4kVXzPgTdcc4v
 3tzZO3HYCn3w3xVGpE6+pK7ebj7Y9g8zNlze+aphGyohRA8A1avid7tUCRX0kotX
 vLGIRgQTEQIABgUCQnF75gAKCRCNSU00xw69UDSiAKDIL1c5vwNWFqbzbt4ubmO4
 GLx6zACfdKNpZPtHU2kqQzGRE6VNHCxGspyIRgQTEQIABgUCQnYo2wAKCRC1yGyE
 MX0o1r/QAJ0UQtGyTZ/n1O6xRmumidA12LTW5ACfco/smbIfWaVjkiqVn3/us+78
 4fGIRgQTEQIABgUCQ6gbmgAKCRCkqrO0wJU1seq5AJ4sBKT3LDZxYM1qw4BDnkEq
 f8p+JwCgr4WQtloaxOpkzJvAFtqDqmTQX2+IXwQTEQIAHwUCQmz3EAIbAwcLCQgH
 AwIBAxUCAwMWAgECHgECF4AACgkQJqR8av5thQ97awCg68Y9wA0K9MlXfEOMQSjP
 vi6JVBoAoJ7etnPIVdOJb9XSpHOCnaB32xv5iHoEExECADoCGwMCHgECF4AGCwkI
 BwMCBBUCCAMEFgIDAQUCRkndMxkYaGtwOi8vd3d3a2V5cy5ldS5wZ3AubmV0AAoJ
 ECakfGr+bYUPI/oAoNtAz5cMhToAaUUlQX9yTOj9n6i9AJ9kQTLmXqtI2nQoesOa
 hUdOqaItm4icBBMBAgAGBQJDpajtAAoJEFViUQuqeigOg00EALa9dlfQrwQQeNz8
 cQz1xSVqaMo0niMqOT67y48X8s3ZMgLfOku7N0jyvffG3XvO/8WIXIMg2NV1eFBA
 KZdy6DSekXV5DxM9+LOnDMocUcbgK3jy3jLQ70TH+8wWZkeJCa3lVo3FgEXYoIDh
 fNsqcoo4cr95D1ZiyGHEutnpbXyBiEYEEBECAAYFAkSu38wACgkQRjQjk2P2DCxd
 vgCePGkzymsz99Qunf+qkvuUyNfRa1cAn3VKsQOiaVIStNEFnRRnXe12uciviEYE
 EBECAAYFAkSxRlcACgkQlMPLZNJtGLw7awCgoF/lmgCMCq5X1Vfbf+rma64+JjYA
 n1tfgMWY5M+B04/TI0AK1dO+NtoiiEYEEBECAAYFAkSw5rsACgkQzyik/zPUtsaa
 UgCguQ8iNfeLGTHAU19C7XOV73YyP1wAnjignGKLOdOxpTBWCCWAU7e3lP/IiEYE
 EBECAAYFAkSxOFYACgkQ8c8VCAnJeVr2NACfev0jm8oXxD2Rq3cwJkp6UkIwFSIA
 nRkbGmuP/ftwRrGifKnHB7pZevMAiEYEEBECAAYFAkSyPQ0ACgkQbDHHs2kEdVL1
 4ACfRxdIC3tUJzIA77U9jl+oH/yh6iIAnRn/g+Vb47eGNKe0XxIr4+LEDIdqiEYE
 EBECAAYFAkSz544ACgkQRTxFSQIw1gLNVgCg+NAnyXBe+SvocVEfUKUZ9LxOfKMA
 oMaB+EDrYQp/fHOXJ9dfsbk7xujdiEYEEBECAAYFAkSw7DcACgkQWTKZQqEedOz+
 /wCgkWuhE1xwiS/2rJywaKmZ2mRzhsIAnj9MdXSHP94wj/Qc7gXmB94aV3kYiEYE
 ExECAAYFAkS3j8YACgkQNE22OINSnCp8eQCeKJrANbQj7O+twULYX+mFLhabif0A
 oJJ39ssJgq268MAus6njYYL1enrKiQIcBBABAgAGBQJFPJQnAAoJECZJ5ijF000F
 JqwQALVcYYVbv9N6Fr32x0W218Lw0IEMRP9+juSUdgWZv8DrBqCnNE0AdqNBwGjq
 krbfoNpCqYYkZtsrg1NJ6AngP0/mktqgzad0438blrYivGoabhXliawXcr++ciBi
 B4G9PlIm3NqmG8K43NWVDVSn6o0GBoefCPzHaRkaSDPNFx/OzycNApdSI2juZ+H4
 Vhqwja8G2kg1t4WiFmZ+5Q8ZXwIuLEl/vmij/mrC3K4fXETzDs/vaKCpF/MgaB2T
 xYssNaRaNGCqNWo/UhKxGzCz+ub/IH57l3bLOK7dSVRFD5D8EB1rd+WXbtF/K5ri
 OKRk/SnyzpTE9I++2FbAsUBMZU2+DLwyHpeYmcapKxIpECpRV7XEJEUIQaGmEex2
 GaklfrLLDSaPXQ5vJeBmAcvtpobnLTFNAtOnikIbNVjpS8biMzFOgQpwVvzAScSW
 wxLG06ZhW6yBhoJSNUzu4nq4P6OvsYqOGFOeqqX7gPrlkxHOBV4Ta8uN7g6uvkzy
 bTJ7RuaAoa8Y2S7u3ZCYZPKZ2w1nyUP5o1855JEgr7jDbqQP2T6I6tEgK4g8iSA8
 b7NawybxE9drpGSCOXbchQZOwjvfMfKRtL0A/SC9zjONN1a/Gg9HrF6sh2dZyD3w
 mbVEZi966oLli864lv7UzJ/PktgRpcAJgX4L+04+iXPdiMqsiEYEExECAAYFAkWv
 6r8ACgkQVorpJwUVKqkmMgCdFmcd+4Tvxw5IZW75ouVrXAUsyoAAn1xEFgtHvtFT
 k5XWI0L3IroV19UoiEYEEhECAAYFAkXZrVsACgkQ1eTOPM/5+wv1SgCcDlMdRo9O
 hJ5rgxvS1uolzcTA/RIAn2bbx/7q6vo1vjeSvoD2wjfxgu6eiGsEEBECACsFAkYL
 jsMFgwHihQAeGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl
 0P1YYgwAniCdxrs/ueyLNLArYvY7/wp4DqFxAJ9/jcr1eGXAPTQrQOsd5Y5sWW9A
 SohgBBMRAgAgAhsDAh4BAheABQJDp/swBgsJCAcDAgQVAggDBBYCAwEACgkQJqR8
 av5thQ+TtwCfX0TnBmmltkHOJIIGneo61GchpkoAnjgKQ4nklchEnRELbfOGlP7l
 87ExiHoEExECADoCGwMCHgECF4AGCwkIBwMCBBUCCAMEFgIDAQUCRfqi8RkYaGtw
 Oi8vd3d3a2V5cy5ldS5wZ3AubmV0AAoJECakfGr+bYUPyBQAniQXQMNmettxevYA
 4JWn6hhFKHpVAKDLkDOWh6eSeaQ68zog4wXJs2KGErQkTWF0aGlldSBBcm5vbGQg
 PGFybi1tYXRAbWljcm9uZXQuZnI+iEYEEBECAAYFAkJs+aQACgkQqYYpzGz/vme6
 2QCeNXYLIg1iwtHH5/yWu2kV96rj9KYAn38UmcOODF/G7dAgIFvL00kTGnSAiEYE
 EhECAAYFAkJtEbYACgkQktwjcC7SSBIKlgCeL5mCRJJqY8ft/YEB7+XvAcls7/sA
 nRH5oVDQ/VvTv1QNWlNKTfqu4/7CiF8EExECAB8FAkJs9yICGwMHCwkIBwMCAQMV
 AgMDFgIBAh4BAheAAAoJECakfGr+bYUP7MAAn0bwnX2/cQASBpczElxQtnXp4s2I
 AKCMEMvO6N7Kqrg73GhPpeziH0r7EohbBDARAgAcBQJCcJUXFR0gSVNQIG91dCBv
 ZiBidXNpbmVzcwAKCRAmpHxq/m2FDwzxAKCAFVstFv3/0CCrtINfrOisCKRg4QCW
 OzAa51YBIrpb6JG9O/XRiz/Y9LQpTWF0aGlldSBBcm5vbGQgPGFybl9tYXRAY2x1
 Yi1pbnRlcm5ldC5mcj6IRgQQEQIABgUCQmz5pAAKCRCphinMbP++Z5HCAJ9qY5tZ
 hao8cJ50UCuK3UUPqhUmFQCfa37pemBs4kGyYC8qDT1tKaraoyWIRgQQEQIABgUC
 QnIkYgAKCRCgT/sbfcrp020CAKDuoLoaXrpX5waE86fRV3PrHDRxxQCdF0nTzpgS
 ZBtYyqKY39KMFIX+CrqIRgQQEQIABgUCQoiqHAAKCRAMy37+CzCpO/ixAJ4+Jeuq
 aLmLwWXdvla3M9EO1QjvYQCfVtnYoy0wc4OWbtK2WzynjhRNde2IRgQQEQIABgUC
 QpnnGgAKCRCH2lwNJzWaUcMqAJ9Wk1v10JfnvVxFrf1BV8i+w9OpuACeP5ZoC6Vi
 vXlwfT96OsyXrD6vuR6IRgQQEQIABgUCQwMO/gAKCRCNe42EaOyDlBAWAJ9VYmvb
 OiduYq39vCqu/LNX85/sZACZAY+aIRnbrGR15SVFm62JHoB8T9iIRgQQEQIABgUC
 Q6VuGQAKCRC9I1l/mlC1/gtPAJwLdv2D/ex805/V2ahHbun+eYV3mACaAtCQkOKV
 S5ThfyfaFIIbThyr+nCIRgQQEQIABgUCRDkpXAAKCRB0bJ/+pXPxD5phAKCbRXHJ
 /d3EWDj7qSgLYpvsVAJEOwCfaZD2Xy2kzFQdP+HUnn3OwAeJ1dSIcwQQEQIAMwUC
 Qm0ADgWDAeEzgCYaaHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4LnBocD9pZD0x
 MAAKCRDSuw0BZdD9WJi7AJ0aQqClPgeROgqq62AnUuqh67VIkwCfd8LrDAtnYBsj
 +BsTHvCnRKrcyhiIRgQSEQIABgUCQm0RtgAKCRCS3CNwLtJIEjgjAJ4hi6LVd9VS
 FLl8h/5g4hFRw80hUACgpSRiW4/ERFsf386mBs0bIn8PCciIRgQSEQIABgUCQoqR
 1wAKCRAiGMgejnwD/9i/AJ9exHLfgknKMURry/damhIzFao7WgCfaDgyQRjUoojN
 cBHsRzz8bIM/g+CInAQTAQIABgUCQosaAgAKCRAff6kIA1j8vc2kBACkXmPTkesu
 WmQ8WlphgMqqg1XmMEZqFfev/gZZ5iYQ3IJ7ggqedc7MROd7Tn57DtGohiqlKdrp
 etmc9KrUb0PMWXDMJ/L84wE4Rb2H/Z9mAuNY/n0IoMA/Z0Tx8IHrnE3DBtENl9BB
 KE78ZwUfW3N+ev4dduDsGfm4w/NkSlKazIhGBBMRAgAGBQJCcXvmAAoJEI1JTTTH
 Dr1QY1YAoLYf8h33mnENvmfO8+L9GiJpWuBnAJ4oJdYoNVlY7xblXAXtAWr0JL1S
 BYhGBBMRAgAGBQJCdijbAAoJELXIbIQxfSjWyxUAn1t0NBAvclSBfPY5nC85auTM
 2IHGAJ4/XWbiqS1PAXeQ04hYuDli1oqSWohGBBMRAgAGBQJDqBuaAAoJEKSqs7TA
 lTWxmWEAnj1z+DapdZtRFzR93ksOkuV4h8kTAJwP3cVV5lYWQUGVMQbea2BIf/jv
 z4hfBBMRAgAfBQJCbPdFAhsDBwsJCAcDAgEDFQIDAxYCAQIeAQIXgAAKCRAmpHxq
 /m2FD/gRAKC+z4vclxbUBtadk3nVEZmWkthG6gCgmvLc5nIjaMWpQSYythSaAcBb
 LKiIYAQTEQIAIAIbAwIeAQIXgAUCQ6f7MAYLCQgHAwIEFQIIAwQWAgMBAAoJECak
 fGr+bYUP4gwAn2fMeUqcVwZwvtRqnIEPlw9I6CSzAJ0f2in+KxQSuwNo1YBd2UT5
 RT2gkoicBBMBAgAGBQJDpajtAAoJEFViUQuqeigOhbgD/jwtx+EV385xk/fdQliH
 fp4dX2TViwKRASSvBhAr/4UdJCGYu/LCfzkduQg3Di0d5ueMI13NqE+QMGhRSuW9
 l/ANR2qE/dCW3PZFWBJdMoG9l80ACuOSOxx6EDHJZrywCivVp5lIwTG1dacHh5Og
 eQkuO3UjvJ6cFR4bZoahZ343iEYEEBECAAYFAkSu38wACgkQRjQjk2P2DCwMIQCf
 emqfBpXYe7pONtMKyyoY3mZUvWoAn09wtyYziFiVlOsAZB73wlfiRdEciEYEEBEC
 AAYFAkStJ8QACgkQ32vf+TG6PzrQtgCgk6LeXX+085udsDUtN+gwoE8r+IIAnR7k
 w0tXFS8TpGRync5Wsg12CptSiEYEEBECAAYFAkSw7DcACgkQWTKZQqEedOx+XgCe
 NT9NHtZudylYbEymKXET/Mta28EAniv71H9DBWK5BdkkkNT2IWN5dcMQiEYEEBEC
 AAYFAkSxRlcACgkQlMPLZNJtGLx1vgCeNU604WQJlA/TaSH79dPBbRDx8CEAn09p
 urvt1UOsoFd9kHsOh36jyL5niEYEEBECAAYFAkSw5rsACgkQzyik/zPUtsZLjACf
 TFw6lnGNT/kPXsXx31KI8ff2kjAAoNFBEpY4Y0R1dQFDFdBp3DebJd2FiEYEEhEC
 AAYFAkSs5iQACgkQd5FD2Z8azpwF2wCeLLO2OHrAhFXznJYkRx3Ga8P5u74AnRsd
 oiTEahiexlo93SOZRM/eC1dMiEYEEBECAAYFAkSxOFYACgkQ8c8VCAnJeVr24QCd
 GeG2zQpCGyOGvAJM7b+mAnksycQAoJffqvhKwGPSYsQYhZkwWnghoBdpiEYEEBEC
 AAYFAkSyPQ0ACgkQbDHHs2kEdVIDTACeP+HVMA5ZqpvU7vq7vbTpR056ydEAn1kR
 F388sbun8NmiTapQ35QYAR5niEYEEBECAAYFAkSz544ACgkQRTxFSQIw1gIBEQCf
 dF/CpcdY4bL7lva5UaNFo81gNJAAoIkZtXKiIY/OGl6t8zn9/r47S7MQiEYEExEC
 AAYFAkS3j9YACgkQNE22OINSnCoFcgCggZ9dGPfpD0EtVKdhujFBIpqGtYoAn3RZ
 f/8WScZOdN2Q9V5ug0FVrAnQiGQEMBECACQFAkXMXpIdHSBJU1AgZG9lcyBub3Qg
 ZXhpc3QgYW55IG1vcmUACgkQJqR8av5thQ+HiACfSj/2igKujqCY3/5dgXZiIdAj
 smoAniz+OverdxAmzIR1RkSCAk15zmEEtCtNYXRoaWV1IEFybm9sZCA8bWF0aGll
 dS5hcm5vbGRAdC1vbmxpbmUuZnI+iEYEEBECAAYFAkJs+aQACgkQqYYpzGz/vmeb
 3gCdGw8eQjbSFxpCn6PJQN77PtGN2BIAoJvcTv3Z02B3OpWwGQNX4W2fHqeOiEYE
 EBECAAYFAkJyJGIACgkQoE/7G33K6dPXqgCgkPH6rXMsInhb0XVJ0JDPeccXZr4A
 n0pVNyceImW0CYbuoeSc7sCxAo4hiEYEEBECAAYFAkKIqhwACgkQDMt+/gswqTus
 eACbBlJkdNQOKkhyjGQa8iTkS0As0pQAnjdql3cAqCn2w6EPlSK5QvbUHZMWiEYE
 EBECAAYFAkKZ5xoACgkQh9pcDSc1mlFy0wCfb98Iqu4f8/pdlco5IdGx6FGEkB4A
 n1ldaOcrJZhcTpZWhnfavU6Hu8+xiEYEEBECAAYFAkMDDv4ACgkQjXuNhGjsg5QZ
 nACfc+DBF8F6kDF8rxuxkClzHCspE8sAoIFOg4WRtzyMXKcoh5LZwLlOkrLliEYE
 EBECAAYFAkOlbhkACgkQvSNZf5pQtf7FgQCgmlYxMrfkfV7xaysUgj4qs6qXXGoA
 n2q7nMNle0D6hwMIPge/pNBNImJjiEYEEBECAAYFAkQ5KVwACgkQdGyf/qVz8Q+d
 mACffJbZDYvwJLXUDCw4mgtL2vlqHEEAoJ5Xb3VR3HckiSod3oh/XAZEACjgiHME
 EBECADMFAkJtAA4FgwHhM4AmGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9pbmRleC5w
 aHA/aWQ9MTAACgkQ0rsNAWXQ/Vg6zQCeNBsTRdIF6CQsLk03AZKsaF3kS4gAn1lO
 kbM542r0gca3RieVcbE1b5eaiEYEEhECAAYFAkJtEbYACgkQktwjcC7SSBJ1PQCg
 nSByb5tOv8j0RyyDZy4uPOSMY1EAn16z7t9/gDqEk2oy0NRQKVGxbuTgiEYEEhEC
 AAYFAkKKkdcACgkQIhjIHo58A/9IcACeNxBQTO/HIjcAZuNvjkV2z11xDAsAnRGH
 5CggYGwKftlm2JNUxnGTQnBSiJwEEwECAAYFAkKLGgMACgkQH3+pCANY/L2hJwP9
 GKPczI3zkokkuODjmL+wZyF9eOMacRHkQjEYRmY99Sf+UphCdTdNVps1W3XSYiMM
 6Xs7C3tNlyobVwmraECt5POexo6b0yeQafTwKgPqFOGeymNrfHxL0orJ1ATOjLSm
 KU3cBPP0ReWt7fKvPHHvs8+drjTAteDOCrR5Ugmuit2IRgQTEQIABgUCQnF75gAK
 CRCNSU00xw69UMF4AJ9Ox8L+aM97fKHcnwh1/Ne3Ca1A7QCdGsBi9zo1eCzgrT0G
 LhP3xsFIObmIRgQTEQIABgUCQnYo2wAKCRC1yGyEMX0o1ihVAKC43u9KWCGWdAkR
 f43eOPnRm1MrtwCeKvvXMyGZfxaYwK391I4ztiZbrvOIRgQTEQIABgUCQ6gbmgAK
 CRCkqrO0wJU1scceAKCaFE83vDirMo3eaE4WvoQlek9daQCggu+UIoR0z0CrGBX5
 Fk5N/W/7u8iIXwQTEQIAHwUCQmz3bAIbAwcLCQgHAwIBAxUCAwMWAgECHgECF4AA
 CgkQJqR8av5thQ9vnwCdGHYpFtCdxp4iVPSL/oCsbk7yryQAn1atFWAL0Eav9rUy
 M/jJCRGh1GajiGAEExECACACGwMCHgECF4AFAkOn+zAGCwkIBwMCBBUCCAMEFgID
 AQAKCRAmpHxq/m2FD71MAKDYqDTJTNpCUXCnfxREG88g8o5lugCeIlPJ4b9f8kaV
 JOA2qJGYb3VSoFOInAQTAQIABgUCQ6Wo7QAKCRBVYlELqnooDhwQBACxTupc3ke1
 BoADXRzUxXsc2Jzt15U8uCAdYUJFiMJgfgRUqh0PuZ8SZm0uFQdKM9P6A8Esk1WX
 aHrbefPVXpJhwdeD8GS2LrQQaSLqOLe9R1YzerU8phUE0TKFUJkcQsdw8Yd/GP9C
 DlTDd1PARYfl1xuGybDbjGDQKtHHa7IoHohGBBARAgAGBQJErt/MAAoJEEY0I5Nj
 9gwsIPcAnRuauCNkuWfLisSWtNEcfK3s5nynAJ0eZ5MnAJuxb8p3eW485Uwu0Ble
 GohGBBARAgAGBQJEsUZXAAoJEJTDy2TSbRi8avoAoPFx4qtJP7nvgpYB2n9W6tC6
 rAixAKDWWTx4A86IzY9gR/VLhc/5WqCaR4hGBBARAgAGBQJEsOa7AAoJEM8opP8z
 1LbGXYQAnjo/N+oNXHRQygu1CIjBKwsGf7SkAJ9J4Cq+wVC82DXPp5AxTBaahg00
 u4hGBBIRAgAGBQJErOYmAAoJEHeRQ9mfGs6cjukAoMdqiaqtlE0uUXVnroQd6pg1
 HJ34AJ45jdlLHGLYEmbNxvSQ2e7yzqe4gohGBBARAgAGBQJEsThWAAoJEPHPFQgJ
 yXla8gIAoI9FRVDVJK2RkBDUS/R1DmZ3ZMJ4AKDPFBtzZrofyVGntnzi45zzZu4v
 14hGBBARAgAGBQJEsj0NAAoJEGwxx7NpBHVSFh0An2v81CSoE6501Lmj4VTWUZm9
 TJsvAJ9zBk76w+Jan1XveclgaIYeCmoTfIhGBBARAgAGBQJEs+eOAAoJEEU8RUkC
 MNYCSHoAoJON/H1AEPSEAvJJegdVSbHdl3tGAJ9U5cKG8rti9tk4TWBjNSdSq+rw
 aIhGBBARAgAGBQJEsOw3AAoJEFkymUKhHnTss3EAnR2K1wF4eMkABWhjTpELqky0
 FAAXAKDcUF88mZ5AsmqYACNMb4MCS4JDxYhGBBMRAgAGBQJEt4/kAAoJEDRNtjiD
 UpwqGCoAoKLpCy62tlx1+DZeaVkHSXu/659UAKCx27DWy+M+FjlaMTrRbZywOHkP
 24hWBDARAgAWBQJFzF57Dx0gTGVmdCB0aGF0IGpvYgAKCRAmpHxq/m2FD5IAAKCJ
 JTUVHsiyFCL5vaQM0iJdxGfQJwCg6U3ms82fMWec+dUePM7eTaVB/fa0JU1hdGhp
 ZXUgQXJub2xkIDxtYXRAY2x1Yi1pbnRlcm5ldC5mcj6IegQTEQIAOgIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheABQJGSd0zGRhoa3A6Ly93d3drZXlzLmV1LnBncC5u
 ZXQACgkQJqR8av5thQ8Y+wCg42FZmm6rQFzbwVy5t9f9SFkLTr8An2Yg9LSIXMnY
 LdazHhbfXmsK760ZiEYEEhECAAYFAkXZrVsACgkQ1eTOPM/5+wt6MwCfWA4sZbaj
 GgwH3ot0nqklS+D7WeAAniOHV1AgRErMe5jQzF8vrRs/L4TfiGsEEBECACsFAkYL
 jsMFgwHihQAeGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl
 0P1YGFcAn1C4XpMp5EQufwPD67C2XgS4P7EyAJ9zKKT69jixkzthNZfSlNjeaTDf
 D4hgBBMRAgAgBQJFzF+yAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQJqR8
 av5thQ9ofgCg5+jjtmG+bAjwjXvNtgM8N2pFAOQAoIZgLSFRaN//ahkyMiNZAax/
 yd2biHoEExECADoCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAUCRfqi8RkYaGtw
 Oi8vd3d3a2V5cy5ldS5wZ3AubmV0AAoJECakfGr+bYUP4lIAn2/wDtGoJm7Yxb/v
 FDnOBKPmt0+lAJ9MMDP8jSzD0NTXD/InlAoOd7C/FLQiTWF0aGlldSBBcm5vbGQg
 PG1hcm5vbGRAYXByaWwub3JnPoh6BBMRAgA6AhsDBgsJCAcDAgQVAggDBBYCAwEC
 HgECF4AFAkZJ3TMZGGhrcDovL3d3d2tleXMuZXUucGdwLm5ldAAKCRAmpHxq/m2F
 D9phAKCGAUL9wta0YiysQoCJwcag/us7IQCeJnkKQxslHXozayQEbCeCqbjZFb6I
 awQQEQIAKwUCRguOwwWDAeKFAB4aaHR0cDovL3d3dy5jYWNlcnQub3JnL2Nwcy5w
 aHAACgkQ0rsNAWXQ/VjJ1gCfdRgZSGhsTMjzuljcqwMQ3kVDCjIAn3mZdhGEWIRM
 xbCLCuUANeuGpGHciGAEExECACAFAkXY47ACGwMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRAmpHxq/m2FD3mFAKD0lCha/IHk098f6DgHMFYtI/VAIQCdHvgVQ36Q
 YXZtwXa1khlVgLEYbOOIegQTEQIAOgIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheA
 BQJF+qLxGRhoa3A6Ly93d3drZXlzLmV1LnBncC5uZXQACgkQJqR8av5thQ8spgCg
 vWBMjXSV3D8gyfwr8y9y2yU17iEAoPOmxhAfO4jCu+8U/3gGQWScKee7tB5NYXRo
 aWV1IEFybm9sZCA8cGF5cGFsQG1hdC5jYz6IegQTEQIAOgIbAwYLCQgHAwIEFQII
 AwQWAgMBAh4BAheABQJGSd0zGRhoa3A6Ly93d3drZXlzLmV1LnBncC5uZXQACgkQ
 JqR8av5thQ+V9QCg7MTUBoxGLoB2Uk3wmhxCWWp5F5oAoKTE65leYuwM6MyDwDUA
 2ja6hiMBiGAEExECACAFAkZJ3NgCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK
 CRAmpHxq/m2FD9ZIAKDViBlYTpOxw3GVl86Y1SYOngPubACgkkA/QrUfQ5vnffwG
 AThakLLO0R25Ag0EQmz2URAIAMd0clI1gYopRRg1DlUYfHDActVaDNo0kY7p1Lrg
 Ib7P/HRcQ5vR2BC/DIfqBWrbzOJGG5jXFXcka+1ZRs2vbv778jHcixXSXaP28ej+
 XxH3bERqJvWulRrFKYM8mEkG3SVNIMAfZeeUGlUX+Msyx6EVoJ9z8sVPa/p6ts9U
 vVeBhYq9FAnW3szvuGENHUUqS96nA4php5QPwfsnMknMQd9rNjZsIbANzW6wLmIR
 Jw9chZmEawYCi78umAEpTK7cVHaLfolaJHi2BR3gYvUcszEmF3CFi6DZtMr0s1bt
 GH0frLXnrmgpq8zVvgF5TRrLjNC0CKe8Yn1C5pvTDXVXHbMAAwUIALQpboqByzh1
 lEUNx6Q9OaVbfRtzv52YWqBJp0tdSBGAEGEL1sgurd//BiqERzLhnGptxSnHKdsP
 3ZtOY9K3YmdRCWhyVZtt1nPEzomkOn/t2UBtIbrVcM6geVS+dsfwTgiiXReSuu2k
 uot4Nk04KHSetDtxfm15933jJaHroQZeQKhYimlR1EuPzciPus40PzlSIHBsNoFK
 z6qvgz3Puf3nnmafOdskh4aV7ogTIjvlnBYra7wuLcIpSLC7BQXuc69JVqP+5cG3
 3hmj5Ool4Mfh5AIYb0Lj9D0yyJqo1UyCqbPeWo1lzj5xaspclMiCzoE77Hqd4LI0
 54VOXzsXVYKISQQYEQIACQUCQmz2UQIbDAAKCRAmpHxq/m2FDy8qAKDsXVlB5MDt
 ydMjrsBH+qwhoiGI8wCfdTd4ZU99kETGpnFIfO7mDHd1VEE=
 =vtoU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.7. Marcelo Araujo <araujo@FreeBSD.org>

 pub   1024D/53E4CFA8 2007-04-27
       Key fingerprint = 9D6A 2339 925C 4F61 ED88  ED8B A2FC 4977 53E4 CFA8
 uid                  Marcelo Araujo (Ports Committer) <araujo@FreeBSD.org>
 sub   2048g/63CC012D 2007-04-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEYxSRMRBACUOhoJNgNPJtP5AcENhALcif0n7o785oCDaTGrMNPV75DdnR8o
 +mHl4POS1bZ7RYHdo7SHCbJqu0nLO4OCeAagamnK4lW+qaa0KaC6WxBiS2/K3qFe
 Y4mDMQRPxBNUWUh7A6VpXMBWk8n6ieyMGLiLQj7+d0fImSY3NdX547qZswCgnjln
 RlpLKFjRIRtNt9RKZQbm0JcD+gMXo+MoUHHKKnSKIQt3u7rnN3Mpnr4OGsa7J6KJ
 whm6GPX0zHzjKUhXCDOJwaYBpOJYNLTTNS3nKpq7GOkQDg7Q4I89/Q8S6AVwCvX1
 N4Jdeebm0jJBrzVNdbezIYEBwL5k+2YN6FcaC1yKBTk3N7qF7/4dmfRNO14qLFaz
 E7T3A/94lP7YT9FHqmNr9RPuy9rmz1bZhU/7tEimLF2o2Y6ntxsbSY1StVHJj0ln
 cCNlMV4vrIP6Ce73W51Vw1iKNapQy2113lWVfc6dwLdhRxWDVMNPKW8ESxqrFSJ9
 IVTzZvPQoqrXOsuVKTej0MC395UbdiLGWckmsJIYVrPaX+C7lrQ1TWFyY2VsbyBB
 cmF1am8gKFBvcnRzIENvbW1pdHRlcikgPGFyYXVqb0BGcmVlQlNELm9yZz6IYAQT
 EQIAIAUCRjFJEwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEKL8SXdT5M+o
 kMEAn26jMz7Tux/fTt8Z6V59+qhhd62EAKCGEPvDrh8Ye46LyJJj2ZeA8sWNtrkC
 DQRGMUkmEAgAgSVxd8hyDpx7nndMLjTIfpla4/mOP6VSkmzF0Enj1ESzOeTVC765
 gtnjjsFq5Vy5Gv3wdLwwDkcCij5FkBCgSi9EBcp5ooFpNfN9UtHT6/2Z9X7laLiS
 qQtS7xbqU1bxUQ4sK6AdjhOgzdDz8KOeWUjs6WO+/Touq/gouggxMbg/SWjywsfk
 SkgJ9SwH/o+QXvTEloyTwqwA7ptckvFKeBiyiA8RI/T2wqHUHmRE7YrI+HZz1b8q
 kPqALkZFoZVgYEVHjIuuuT5KttaQYvAdHgWjgTTjugeCfHj186yQbIG3TOD0ToLc
 KXFycft7oYFku55Elo0bRS2mxT6/SptmrwADBQf9Gws09t+AcOYUaLH3V8EKLg24
 1r/aEfu7tPYMZ/xHmibOkxxxQgJEUAIqE4jZY6fMrwUj4F9p4Q8E3mN/wkpY2qHJ
 4yUI71cv7NEOeXLvU3bdS5wwvlEK3obIJZfhzefmUncPQ+pEVdbtoGT2ehosqe4K
 nw+bBE9q1Q8elF4mr6mNTavSZBs2FTJ84S009pbMyqyZZZ61RL1H0XmZV4s03Ywf
 tJpc/uTSwgB5I9SiSi1clafGLRzWx4BzToIeHmE70Ycl1PGJQ5kmf2tmTPrVbKCX
 F/4+S3Sn85D9s3jk6LfxMfLiSzErBkkV/zZaXcNFTPfGZ21Dp6/0IyKF+HnNuYhJ
 BBgRAgAJBQJGMUkmAhsMAAoJEKL8SXdT5M+omBEAn3t4uIC5dceYeU8j15UnzECK
 pAWBAJwI/yul4wCtXeyIhg0vYCrExTl5Wg==
 =3ciY
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.8. Satoshi Asami <asami@FreeBSD.org>

 pub  1024R/1E08D889 1997-07-23 Satoshi Asami <asami@cs.berkeley.edu>
      Key fingerprint = EB 3C 68 9E FB 6C EB 3F  DB 2E 0F 10 8F CE 79 CA
 uid                            Satoshi Asami <asami@FreeBSD.ORG>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzPVyoQAAAEEAL7W+kipxB171Z4SVyyL9skaA7hG3eRsSOWk7lfvfUBLtPog
 f3OKwrApoc/jwLf4+Qpdzv5DLEt/6Hd/clskhJ+q1gMNHyZ5ABmUxrTRRNvJMTrb
 3fPU3oZj7sL/MyiFaT1zF8EaMP/iS2ZtcFsbYOqGeA8E/58uk4NA0SoeCNiJAAUR
 tCVTYXRvc2hpIEFzYW1pIDxhc2FtaUBjcy5iZXJrZWxleS5lZHU+iQCVAwUQM/AT
 +EqGN2HYnOMZAQF11QP/eSXb2FuTb1yX5yoo1Im8YnIk1SEgCGbyEbOMMBznVNDy
 5g2TAD0ofLxPxy5Vodjg8rf+lfMVtO5amUH6aNcORXRncE83T10JmeM6JEp0T6jw
 zOHKz8jRzygYLBayGsNIJ4BGxa4LeaGxJpO1ZEvRlNkPH/YEXK5oQmq9/DlrtYOJ
 AEUDBRAz42JT8ng6GBbVvu0BAU8nAYCsJ8PiJpRUGlrz6rxjX8hqM1v3vqFHLcG+
 G52nVMBSy+RZBgzsYIPwI5EZtWAKb22JAJUDBRAz4QBWdbtuOHaj97EBAaQPA/46
 +NLUp+Wubl90JoonoXocwAg88tvAUVSzsxPXj0lvypAiSI2AJKsmn+5PuQ+/IoQy
 lywRsxiQ5GD7C72SZ1yw2WI9DWFeAi+qa4b8n9fcLYrnHpyCY+zxEpu4pam8FJ7H
 JocEUZz5HRoKKOLHErzXDiuTkkm72b1glmCqAQvnB4kAlQMFEDPZ3gyDQNEqHgjY
 iQEBFfUEALu2C0uo+1Z7C5+xshWRYY5xNCzK20O6bANVJ+CO2fih96KhwsMof3lw
 fDso5HJSwgFd8WT/sR+Wwzz6BAE5UtgsQq5GcsdYQuGI1yIlCYUpDp5sgswNm+OA
 bX5a+r4F/ZJqrqT1J56Mer0VVsNfe5nIRsjd/rnFAFVfjcQtaQmjiQCVAwUQM9uV
 mcdm8Q+/vPRJAQELHgP9GqNiMpLQlZig17fDnCJ73P0e5t/hRLFehZDlmEI2TK7j
 Yeqbw078nZgyyuljZ7YsbstRIsWVCxobX5eH1kX+hIxuUqCAkCsWUY4abG89kHJr
 XGQn6X1CX7xbZ+b6b9jLK+bJKFcLSfyqR3M2eCyscSiZYkWKQ5l3FYvbUzkeb6K0
 IVNhdG9zaGkgQXNhbWkgPGFzYW1pQEZyZWVCU0QuT1JHPg==
 =39SC
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.9. Gavin Atkinson <gavin@FreeBSD.org>

 pub   1024D/A093262B 2005-02-18
       Key fingerprint = 313A A79F 697D 3A5C 216A  EDF5 935D EF44 A093 262B
 uid                  Gavin Atkinson <gavin@16squared.co.uk>
 uid                  Gavin Atkinson (FreeBSD key) <gavin@FreeBSD.org>
 uid                  Gavin Atkinson (Work e-mail) <ga9@york.ac.uk>
 uid                  Gavin Atkinson <gavin.atkinson@ury.york.ac.uk>
 sub   2048g/58F40B3D 2005-02-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =w86g
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.10. Philippe Audeoud <jadawin@FreeBSD.org>

 pub   1024D/C835D40E 2005-04-13
       Key fingerprint = D090 8C96 3612 15C9 4E3E  7A4A E498 FC2B C835 D40E
 uid                  Philippe Audeoud <jadawin@tuxaco.net>
 uid                  Philippe Audeoud <philippe@tuxaco.net>
 uid                  Philippe Audeoud <philippe.audeoud@sitadelle.com>
 uid                  Philippe Audeoud <jadawin@freebsd.org>
 sub   2048g/EF8EA329 2005-04-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =Ed5M
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.11. Timur I. Bakeyev <timur@FreeBSD.org>

 pub   1024D/60BA1F47 2002-04-27
       Key fingerprint = 84BF EAD1 607D 362F 210E  69B3 0BF0 6412 60BA 1F47
 uid                  Timur I. Bakeyev (BaT) <timur@bat.ru>
 uid                  Timur I. Bakeyev <timur@gnu.org>
 uid                  Timur I. Bakeyev (BaT) <bat@cpan.org>
 uid                  Timur I. Bakeyev (BaT) <timur@FreeBSD.org>
 uid                  Timur I. Bakeyev (BaT) <timur@gnome.org>
 uid                  Timur I. Bakeyev <timur@gnome.org>
 sub   2048g/8A5B0042 2002-04-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =r3u1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.12. John Baldwin <jhb@FreeBSD.org>

 pub  1024R/C10A874D 1999-01-13 John Baldwin <jbaldwin@weather.com>
      Key fingerprint = 43 33 1D 37 72 B1 EF 5B  9B 5F 39 F8 BD C1 7C B5
 uid                            John Baldwin <john@baldwin.cx>
 uid                            John Baldwin <jhb@FreeBSD.org>
 uid                            John Baldwin <jobaldwi@vt.edu>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =BVS/
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.13. Nick Barkas <snb@FreeBSD.org>

 pub   1024D/7E7582A4 2006-02-10
       Key fingerprint = 5DF1 3ABB 4F75 F76C E83F  322F C8B2 427A 7E75 82A4
 uid                  S. Nicholas Barkas <snb@freebsd.org>
 uid                  S. Nicholas Barkas <snb@moduli.net>
 uid                  [jpeg image of size 13220]
 sub   2048g/AF72C3A3 2006-02-10
 sub   1024D/3F6C2D91 2009-04-21 [expires: 2010-04-21]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 SXtKr0viTRFOP09rUJVRvlLlVAtVMFZTV3VYllm2WtZb810RXi9fS2BoYYNinmO5
 ZNJl7GcFaB5pNmpNa2Vse22RbqVvuXDMcd5y73P/dQ12G3cneDJ5O3pDe0p8T31R
 flN/U4BRgU2CR4NAhDeFLYYghxKIA4jyid+Ky4u2jJ+Nh45uj1OQN5EakfyS3pO+
 lJ2Ve5ZZlzWYEZjsmceaoZt6nFOdKp4Cntmfr6CFoVqiLqMCo9akqaV8pk6nIKfy
 qMOplKpjqzOsA6zSraGub689sAuw2LGmsnOzQLQMtNi1pLZwtzu4B7jSuZ26Z7sy
 u/y8x72Rvlq/I7/twLbBfsJHww/D18SfxWfGLsb1x7zIgslIyg7K08uYzF3NIc3l
 zqnPbNAv0PLRtdJ30zjT+tS71XzWPNb917zYfNk72fvautt43Dfc9t203nPfMt/x
 4LHhceIy4vPjteR45T3mAubJ55LoXOkn6fXqxeuX7GztQ+4c7vfv1vC38ZvygvNr
 9Ff1RfY19yj4HPkT+gz7BvwA/Pv9+v76//8AAAFbAvMEbAXtB2kI4wpXC9UNSw7I
 ED4RtxMtFKkWGxeTGQgafxvzHWUe1SBJIbUjJCSPJfgnYCjGKisriizpLkYvnTDz
 MkYzlzTjNi43dDi3OfU7MjxsPaE+00AEQTBCWkN/RKNFxUbjR/9JGkoyS0dMW01s
 TnxPjFCZUaZSsVO9VMZVzlbXV99Y5lnuWvRb+l0BXgZfDGASYRhiHWMiZCdlLGYy
 ZzZoOmk/akNrRmxJbUtuTm9PcFBxUHJPc050THVIdkR3P3g5eTF6KHsffBR9CH37
 fu1/3oDOgb2Cq4OXhIOFbYZWhz+IJokMifKK14u6jJ6NgI5hj0KQIZEAkd6SvJOZ
 lHWVUZYslwaX4Ji5mZKaaptCnBmc8J3Hnp2fc6BJoR6h9KLJo56kcqVHphym8KfF
 qJmpbqpCqxar66zArZSuaK89sBKw5rG7spCzZbQ6tRC15ba6t5C4Zrk9uhO66rvA
 vJe9b75Hvx+/+MDSwazChsNhxD3FGcX2xtTHssiSyXLKU8s1zBjM/M3hzsfPrtCW
 0X/SadNU1EDVLtYc1wvX+9js2d/a0tvG3LrdsN6m35zgk+GK4oHjeORv5WbmXOdR
 6EbpOuos6x7sDuz87eju0u+68J/xg/Jk80L0H/T59c/2pPd2+Eb5FPng+qn7cPw3
 /P39wf6D/0P//wAAAQMCLAM/BFUFbQaKB6EIuQnPCucMAg0XDi0PQBBYEW0SgROT
 FKgVuxbNF94Y7xn/Gw0cGx0oHjIfOSBBIUkiSyNOJFAlTiZKJ0UoPSk0KicrGCwJ
 LPQt3y7HL60wkTFzMlMzMDQKNOM1uzaQN2Q4ODkHOdY6pDtxPD49Bz3QPpk/YUAp
 QO9BtUJ7Q0FEBUTKRY9GU0cXR9xIoElkSilK7kuyTHdNPU4BTsZPjFBTURhR3lKl
 U2xUM1T6VcFWiVdRWBlY4VmqWnJbO1wEXM1dll5gXypf9GC+YYliU2MeY+pktmWC
 Zk5nGmfnaLRpgWpPaxxr6my4bYZuVG8ib/Fwv3GOcltzKXP3dMV1k3Zgdy13+XjF
 eZF6XXsne/F8u32Ffk1/FX/dgKSBaoIwgvWDuoR+hUKGBYbHh4qIS4kNic6Kj4tP
 jA+Mzo2Ojk6PDY/NkIyRTJILksuTipRKlQqVy5aMl02YDpjQmZOaVpsZm92coZ1n
 ni2e9J+7oIOhTKIWouGjrKR5pUemFqbmp7eoiqleqjSrC6vkrL+tnK58r1+wQ7Er
 shazBbP4tO+167bst/O5AboVuzC8U71+vrK/8cE6wo3D7MVYxs7IVcnmy4jNOc73
 0MTSotSP1ovYl9qz3NvfFeFd47HmEuiB6vjte/AH8p/1M/fS+nv9Mv//AABuZGlu
 AAAAAAAABjYAAJeRAABYuAAAVUEAAIwVAAAoVwAAFqgAAFANAABUOQAC8KMAArXC
 AAGo9QADAQAAAgAAAAEABQAKABEAGQAjAC8AOwBJAFkAaQB7AI4AogC4AM8A5wEA
 ARoBNQFSAW8BjgGuAc8B8QIVAjkCXwKFAq0C1gMAAywDWAOGA7UD5AQWBEgEfASx
 BOcFHgVXBZEFzAYJBkgGhwbIBwsHTweUB9wIJAhvCLsJCQlYCakJ/ApRCqgLAQtb
 C7cMFgx2DNkNPQ2kDgwOdw7jD1IPwxA2EKsRIhGbEhYSkxMSE5MUFhSbFSIVqxY1
 FsIXURfhGHMZBxmcGjQazRtoHAUcpB1EHeYeih8wH9gggSEtIdoiiiM7I+8kpSVd
 Jhcm1CeTKFQpGSnfKqkrdSxELRYt7C7EL58wfjFgMkYzLzQcNQw2ADb4N/M48jn1
 Ovs8Bj0UPiY/O0BVQXJCkkO3RN9GCkc5SGxJokrcTBlNWU6dT+VRL1J9U89VJFZ8
 V9hZN1qZW/9daF7VYERhuGMuZKdmJGelaShqr2w4bcVvVXDpcn90GHW1d1R493qd
 fEZ98X+ggVKDCITAhnyIO4n9i8KNi49XkSeS+pTRlqyYipprnFGeOqAnohekDKYE
 qACqAKwErguwF7ImtDi2TrhouoS8o77EwOfDC8Uwx1bJe8ufzcHP4dH91BfWLdg+
 2krcUd5U4FLiSuQ+5i3oF+n+6+Dtv++b8XXzTPUg9vL4yPqb/Gv+Of//AAAAAgAF
 AAsAEgAcACYAMgBAAE8AYAByAIUAmgCwAMcA4AD6ARUBMgFPAW4BjwGwAdMB9wIc
 AkICagKTAr0C6QMVA0MDcwOjA9UECAQ9BHMEqgTjBR0FWQWWBdUGFQZXBpsG4Acn
 B28HuggGCFQIpAj2CUoJoQn5ClMKsAsPC3AL0ww5DKENDA15DegOWg7PD0YPvxA7
 ELoROxG/EkUSzRNYE+UUdRUGFZoWMRbJF2QYABifGT8Z4hqHGy0b1hyAHSwd2h6K
 Hzwf8CClIVwiFiLRI44kTSUPJdImmCdfKCko9SnEKpUraCw+LRct8i7QL7EwlTF8
 MmUzUjRCNTU2KzckOCA5IDojOyk8Mz1APlA/ZEB7QZVCs0PURPhGIEdLSHpJrErh
 TBpNVk6VT9hRHlJnU7RVBFZXV61ZBlpiW8FdI16HX+9hWWLGZDVlp2cbaJJqC2uH
 bQRuhHAHcYtzEnSbdiZ3s3lCetN8Zn38f5OBK4LGhGKGAIegiUCK4oyGjiqPz5F1
 kxyUw5ZrmBSZvZtmnQ+euKBhogqjs6VcpwWorapWq/6tpa9NsPSym7RCtem3j7k2
 ut28hL4sv9TBfcMnxNLGf8guyd7Lkc1Hzv/Qu9J71D/WB9fV2ajbgt1i30rhOeMw
 5S/nN+lK62Xtiu+58fH0M/Z++M37Jf2I//8AAAADAAkAEwAgADAAQgBXAG8AiQCm
 AMUA5gEKATABWQGDAbAB3wIRAkUCegKzAu0DKgNpA6oD7gQ0BHwExwUVBWUFtwYN
 BmUGvwcdB34H4ghJCLMJIQmSCgYKfwr7C3sL/wyHDRMNpA45DtIPcBASELgRZBIT
 EscTfxQ8FP0VwhaLF1gYKRj9GdYasRuRHHMdWR5CHy0gHCEOIgIi+iP0JPAl8Cby
 J/Yo/SoHKxQsIy00LkgvXzB4MZQysjPTNPU2GzdDOG05mTrHO/g9Kz5gP5dA0EIM
 Q0pEikXNRxJIWUmjSu9MP02RTuZQPlGZUvhUWlW/VyhYlVoFW3pc8l5vX+9hdGL9
 ZIpmG2exaUtq6GyKbjBv2XGHczh07HakeF56HHvcfZ9/ZYEsgvaEwYaOiFyKLIv9
 jc+PopF1k0iVHZbxmMWampxunkGgFKHmo7elh6dVqSGq66yzrnewN7H0s621YbcP
 uLi6W7v3vY2/G8CiwiHDmMUIxnDH0ckqynrLws0EzkDPdNCg0cfS6dQC1RfWJ9cw
 2DXZNdow2yjcGt0K3fTe3N+/4KHhfuJZ4zDkBuTX5ajmdedC6Ano0umW6lrrHOvc
 7JztWO4V7s/viPBB8Pjxr/Jk8xjzzPR+9TH14PaQ90H38/il+VT6BPqz+2D8Dvy6
 /WT+Dv61/1r//wAAZGVzYwAAAAAAAAAKQ29sb3IgTENEAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAG1sdWMAAAAAAAAADwAAAAxpdElUAAAAFAAAAMRmckZS
 AAAAQgAAANhuYk5PAAAAEgAAARplc0VTAAAAEgAAASxmaUZJAAAAEAAAAT5wdFBU
 AAAAGAAAAU56aFRXAAAADgAAAWZqYUpQAAAADgAAAXRubE5MAAAAFgAAAYJkZURF
 AAAAEAAAAZhrb0tSAAAADAAAAahlblVTAAAAEgAAAbRzdlNFAAAAEAAAAcZkYURL
 AAAAHAAAAdZ6aENOAAAADAAAAfIATABDAEQAIABjAG8AbABvAHIAaQDJAGMAcgBh
 AG4AIADgACAAYwByAGkAcwB0AGEAdQB4ACAAbABpAHEAdQBpAGQAZQBzACAAYwBv
 AHUAbABlAHUAcgBGAGEAcgBnAGUALQBMAEMARABMAEMARAAgAGMAbwBsAG8AcgBW
 AOQAcgBpAC0ATABDAEQATABDAEQAIABjAG8AbABvAHIAaQBkAG9faYJybbJmdphv
 eTpWaDCrMOkw/AAgAEwAQwBEAEsAbABlAHUAcgBlAG4ALQBMAEMARABGAGEAcgBi
 AC0ATABDAETO7LfsACAATABDAEQAQwBvAGwAbwByACAATABDAEQARgDkAHIAZwAt
 AEwAQwBEAEwAQwBEAC0AZgBhAHIAdgBlAHMAawDmAHIAbV9pgnIAIABMAEMARAAA
 bW1vZAAAAAAAAAYQAACcXwAAAADAHWWAAAAAAAAAAAAAAAAAAAAAAHRleHQAAAAA
 Q29weXJpZ2h0IEFwcGxlIENvbXB1dGVyLCBJbmMuLCAyMDA1AAAAAP/hAGhFeGlm
 AABNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABS
 ASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAAAAA
 AAD/2wBDAAYEBQUFBAYFBQUHBgYHCQ8KCQgICRINDgsPFhMXFxUTFRUYGyMdGBoh
 GhUVHikfISQlJycnFx0rLiomLSMmJyX/2wBDAQYHBwkICRIKChIlGRUZJSUlJSUl
 JSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSX/wAAR
 CAEWAPADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL
 /8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0Kx
 wRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNk
 ZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5
 usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEB
 AQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAEC
 AxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygp
 KjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImK
 kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
 5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD6pooooAKKKKACiiigAooooAKK
 KKACiig0AFFJn1oJAGc0ALRWbqesWOmSW0d3MEN0xWP3IGT+lZzeMdAXVRphvh55
 HpxnOMU7MDo6KYkiv91lb6HNOpALRQKKACiiigAooooAKKKKACiiigAooooAKKKK
 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
 3MH9
 =8MQb
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.14. Simon Barner <barner@FreeBSD.org>

 pub   1024D/EBADA82A 2000-11-10
       Key fingerprint = 67D1 3562 9A2F 3177 E46A  35ED 0A49 FEFD EBAD A82A
 uid                  Simon Barner <barner@FreeBSD.org>
 uid                  Simon Barner <barner@in.tum.de>
 uid                  Simon Barner <barner@informatik.tu-muenchen.de>
 uid                  Simon Barner <barner@gmx.de>
 sub   2048g/F63052DE 2000-11-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 8o9/o+UAoI65F9bRERosGt0m0f0q1WwwdGcz
 =HMUk
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.15. Doug Barton <DougB@FreeBSD.org>

 pub   1024D/D5B2F0FB 2003-01-16
       Key fingerprint = 9DD1 E44C 8660 ADA6 580F  83B6 C886 A42B D5B2 F0FB
       uid                  Doug Barton <DougB@DougBarton.us>
       uid                  Doug Barton <DougB@DougBarton.net>
       uid                  Doug Barton <DougB@FreeBSD.org>
       sub   4096g/2DBB3F89 2003-01-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.7 (FreeBSD)
 Comment: Public key for DougB@{DougBarton.{us|net}|FreeBSD.org}

 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
 nQ==
 =McJg
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.16. Vitaly Bogdanov <bvs@FreeBSD.org>

 pub  1024D/B32017F7 2005-10-02 Vitaly Bogdanov <gad@gad.glazov.net>
      Key fingerprint = 402E B8E4 53CB 22FF BE62  AE35 A0BF B077 B320 17F7
 uid                            Vitaly Bogdanov <bvs@freebsd.org>
 sub  1024g/0E88C62E 2005-10-02

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEM/sJgRBAD26RM3o9QC+V5JO6/zr3ffRnNb08Bc6YIvpTd8yUhc4AIa1Zbg
 QHoUNZ0pOLffeZ3i0wnqV3lMV1cPMtvSRWlvh+XSiSg8hYlnh7+oAwmqs0Zev1r7
 w/In683ytXREuidcak8qWq4GAkET20sIICV7Ye56HJDlKrtOjUWDhVQJvwCg8jUp
 CDtJ8V6Cw6GgjxH1iaNR1X0EAMKCUJwZgIoh2Rpqfrbwv92AD7dmaJJLVfnUSMCE
 GvjcZ+O41PpvWi3PkxmgA3Zb0sJ3OSfgPi3Tnj3Nllyhqnf3WO1Yumzq3myBg+F/
 qH9a8BXvVJlk/2cbYUC6uJeGMCC971X3hceu51J41k0ano7/ALIWeoUC1HhkAOaP
 f7IoBADkQCDuIvdJ7KebBMgXIHwAJnycVZsXXQPlOx0gty4+OVMY9PfpEm7T+1DM
 mWwuckntM9tSYuInbUPco70LBxuHHBNnhiUOTkijZ5GK/VF+WPnqOEopkjL7LD2q
 wSYqGaBPbl/noAoEb3Nx7h8D94kJUF7Gchs9fCH6UxHd+/Q8jbQhVml0YWx5IEJv
 Z2Rhbm92IDxidnNAZnJlZWJzZC5vcmc+iF4EExECAB4FAkM/sJgCGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQoL+wd7MgF/cbhwCghoShm9pCHbiUjXin1mR+0HaU
 XvAAniOPVmeKUuBBKCc3KLPIhfCCKt9viEYEEBECAAYFAkM/zzcACgkQhdRQRWtp
 GwOrjACfRJUhoojMI3sBMsjH9IuCwj8CikoAn3RlHMmCAx7JIiAMmg2gC1qjIUsU
 tCRWaXRhbHkgQm9nZGFub3YgPGdhZEBnYWQuZ2xhem92Lm5ldD6IXgQTEQIAHgUC
 Qz+yTQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRCgv7B3syAX91XMAKDJ89F+
 46BctXCALIn53c89waWDrQCgmCHSVr/rVUMU6fnyHtoNvYXtkFuIRgQQEQIABgUC
 Qz/PMwAKCRCF1FBFa2kbA/bwAJ4mwlXag5w3scB7heyAtqr7w6491QCghh/fVv3t
 EOFNlmwonrudaMSIYTm5AQ0EQz+wmRAEAKke9/e3jLaDx8i86+J0eTOAypCQy7WU
 QajhZDFqBHbBQTDRbcYG1dLYd/sC9oUwqgaLe+yEYw3JdfsiaiHsE2yZ/S4S2wTL
 7MrUqOc1aVPu95c3Xcef13DKCMx36B4EbMwJa00bU5ut6/7tHly5Edb8nkn5vKP4
 00TbjMa/3ZCHAAMFA/9OffxCzJmwUjCOxAg2GBberPxovtCtwAw7goKZzuga9+9Q
 dZBICMIc4l/I+zjDlphF/k9I5CQGOwoKTo+OCsZN7SSAB94NV9BEoA1MX9drWv0y
 CZJlD1bSrcPFVjWajXqC6NpAAiCdQapvV1sJK0F09v/RTHdPAZcRnpg/YS2jDohJ
 BBgRAgAJBQJDP7CZAhsMAAoJEKC/sHezIBf3nP8AoNBIM6JqCrnzQealKln3Tc+t
 HMPIAJ9td+R2zFqwuX+IMk135J0T/PXeaw==
 =bBFz
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.17. Renato Botelho <garga@FreeBSD.org>

 pub   1024D/2244EDA9 2003-12-16 [expires: 2011-12-31]
       Key fingerprint = 4006 C844 BC51 AD75 CE60  6E24 E824 5B89 2244 EDA9
 uid                  Renato Botelho <garga@FreeBSD.org>
 uid                  Renato Botelho <rbgarga@gmail.com>
 uid                  Renato Botelho <garga@freebsdbrasil.com.br>
 sub   1024g/7B295760 2003-12-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD/fJGwRBAC/raNISTKpkhGpJA6iYgLgHzfbJU8uwiej3s+7psND31ZYSEhH
 VkSxq10pHFeVCsbeyh/FMsru+pDJXRcsACkPTJR4CzC1VW/FmsDTKAbaZPFty433
 xbSU83u3XAqv7JQBtsTs8o7RBlJtiiAuFbtDcsotEASJ8UGKFVxdRSlHwwCgsspa
 c9VFTt28MSnF23UKv32YA5cD/iLUNRgZqkZHjdGHxaMcpEwVDWFC8nrygNNQ5LBo
 cfb+NAVT3vSIc5NDeuP7XPSdJcWqCkH0+XUTqzuspo9NIYyjHoOj+JulZtW7CFB8
 vFWjjbeajKlp6X4EisvdNdwfpzivp5UanNmNjDGth3caN3oPowyVDpZITeTYgRd7
 zUIyA/9Mx44O+40mpbYbyn0tatgeb7KYUKV7SZgrPwew0Pt10VzwzqXEQFbP2jS+
 AvO3A/zrEr1xUwMij++E7rvW/IgE6lEE+KYCI7y1Xg4wHo8WieVCn8PGNZWM+bEj
 UnUxRSH5l9fgHsJmcOauc1x0a+opNcMtvZmqPTjbZvAPjBhv3rQiUmVuYXRvIEJv
 dGVsaG8gPGdhcmdhQEZyZWVCU0Qub3JnPohnBBMRAgAnAhsDBgsJCAcDAgMVAgMD
 FgIBAh4BAheAAhkBBQJJbIJZBQkPH9TtAAoJEOgkW4kiRO2pH9UAn2eSV6G7SXU0
 ymjHzAIZ7FwOQBTdAKCaKIHAEMGLe/VmSHxFxwtb72HsiohnBBMRAgAnAhsDBQkL
 yEBgBgsJCAcDAgMVAgMDFgIBAh4BAheABQJC0mBOAhkBAAoJEOgkW4kiRO2pkPoA
 njnmuUHDUbjKNug/Zgu7qu0KICnZAKCplajp8xZ7xiUdpw8tTZJIpeesmrQiUmVu
 YXRvIEJvdGVsaG8gPHJiZ2FyZ2FAZ21haWwuY29tPohkBBMRAgAkAhsDBgsJCAcD
 AgMVAgMDFgIBAh4BAheABQJJbIJfBQkPH9TtAAoJEOgkW4kiRO2pjx0An1A0hyP0
 BgCSVZf+s1NZDzrF8ikeAJ9o8ixUlWnojXZYskywN6DlVM35WYhkBBMRAgAkBQJA
 4wTGAhsDBQkKTNfiBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEOgkW4kiRO2pU+AA
 n1o76JDlXxlE0klr6jrmwzwxg74mAKCubxTs2QGcWa21XGt3JnjPLENz4LQrUmVu
 YXRvIEJvdGVsaG8gPGdhcmdhQGZyZWVic2RicmFzaWwuY29tLmJyPohkBBMRAgAk
 AhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQJJbIJfBQkPH9TtAAoJEOgkW4kiRO2p
 kPkAn2sxKiq4kCxvB8ZMDvJgWr/HIUNUAKCbcjVlpPf379ejLIO4uxkmi4kw04hk
 BBMRAgAkBQJFGCPmAhsDBQkLyEBgBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEOgk
 W4kiRO2pDT4AoKyx7LzHHpcYBWfyC6jS1L2dA/BWAKCRK7SAp1Iln32qwg+Iu7LX
 lRCXRbQkUmVuYXRvIEJvdGVsaG8gPHJlbmF0b0BnYWxsZS5jb20uYnI+iGcEMBEC
 ACcFAkdz2pIgHSBUaGlzIGVtYWlsIGlzIG5vdCBtaW5lIGFueW1vcmUACgkQ6CRb
 iSJE7ammQgCgsR3rNJnwPPwXSCW5HyWrZQpyBc8AoJaTN9mfNKqnxSyyI5c4RPqe
 KAa3iFoEExECABsFAj/fJGwGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ6CRbiSJE
 7akT0ACgkeOd/u5gJG833xM+oiRdjKYlzyEAmPgpMzDyTDJeLRNGxyDb0HsWIa6I
 YQQTEQIAIQYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCQD5AfgUJBCGDEgAKCRDoJFuJ
 IkTtqU7FAJ9+ORyf52+toIQaIn/7fJoM4EPo8QCfXWD9EqIVxIbnhKp5nVHRRaTI
 NamIYQQTEQIAIQYLCQgHAwIDFQIDAxYCAQIeAQIXgAUJC8hAYAUCQkFjwQAKCRDo
 JFuJIkTtqcduAJ9cPzau4HWLpjwvWvR/eekeUVoGqQCgr+f4lAZxs3FQuB+GGKHb
 yTy1d1GIZAQTEQIAJAYLCQgHAwIDFQIDAxYCAQIeAQIXgAIZAQUCQMX60gUJCkzX
 4gAKCRDoJFuJIkTtqWhmAJ9uWFOmGL1/VSFC9Ci96jfdpgNhoACgp0Nh3LkAyShc
 TYqC2A9H/eJ8pIuIZAQTEQIAJAYLCQgHAwIDFQIDAxYCAQIeAQIXgAIZAQUCQMX6
 0gUJCkzX4gAKCRDoJFuJIkTtqWhmAJ90eDwLnpBVxL6NCKU2viOHJBMw2QCfd7sC
 rASlwuc+xaeSW9WF6Grsm+u0JVJlbmF0byBCb3RlbGhvIDxmcmVlYnNkQGdhbGxl
 LmNvbS5icj6IZwQwEQIAJwUCR3PaniAdIFRoaXMgZW1haWwgaXMgbm90IG1pbmUg
 YW55bW9yZQAKCRDoJFuJIkTtqUaUAJ4oQ8d69jMYeushjQqaSEE1E5SAPACgr0IN
 vCvZ3gLmJk3M5mhkbwJC7ieIZAQTEQIAJAUCQtKB3wIbAwUJC8hAYAYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRDoJFuJIkTtqYy9AJ96+O8BadhzBsV7ApTSdNbyrjHK
 QACfZz3JPUQji16l9QqnIUbeo3P1x/m0J1JlbmF0byBCb3RlbGhvIDxnYXJnYUBi
 cmFpbnNvZnQuY29tLmJyPohnBDARAgAnBQJHc9qrIB0gVGhpcyBlbWFpbCBpcyBu
 b3QgbWluZSBhbnltb3JlAAoJEOgkW4kiRO2px7EAoLG9dc1nRjo1vRAF0JUu30Uq
 k8xaAJ4sx/Jl4gz4hb5FDevNRTSzu7+FZ4hkBBMRAgAkAhsDBgsJCAcDAgMVAgMD
 FgIBAh4BAheABQJAxfrOBQkKTNfiAAoJEOgkW4kiRO2pr9kAn2eAuMiPWZgAu6ud
 ufUcWg9x/MrSAKCqMcUfE9ywTkzPIHl4rVF7NZni+4hkBBMRAgAkAhsDBgsJCAcD
 AgMVAgMDFgIBAh4BAheABQJCQWNPBQkLyEBgAAoJEOgkW4kiRO2pxJsAoJwQ1H8K
 k1E2/J76okyQDKfKRiajAJ9xe7FUqDBs/+gDY8m2nXY9Q1jYEIhkBBMRAgAkBQJA
 xfajAhsDBQkEIYMSBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEOgkW4kiRO2pdO4A
 n0EeP6NKXMxuuyYGznhbrjy1i3O/AJ47i8d5H4wNnXSOKi8rNErYc2ldFrRAUmVu
 YXRvIEJvdGVsaG8gKEZyZWVCU0QgcmVsYXRlZCBzdWJqZWN0cykgPGZyZWVic2RA
 Z2FsbGUuY29tLmJyPohnBDARAgAnBQJHc9q6IB0gVGhpcyBlbWFpbCBpcyBub3Qg
 bWluZSBhbnltb3JlAAoJEOgkW4kiRO2puhMAnAmjYDrzDdUZUpie74gzaqALK4eK
 AJ98Xy8z9Jp7U+xXgjH/85oB+6yORohGBBERAgAGBQJCXWGxAAoJEEsqSJfTnaDj
 10MAn17wHlm4xS3HdXe4+OU0oqQflbURAKDWc2d8hr8FTscq3CBbvTKT+nXE/ohk
 BBMRAgAkAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQkLyEBgBQJC0mBKAAoJEOgk
 W4kiRO2p0gAAn09QdDJ9Kk0xYAtnKkjCuxwzF97iAKCoq/rWsJTeWaw1jdY0ahew
 Hc/hfYhnBBMRAgAnAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQkLyEBgBQJCQWPH
 AhkBAAoJEOgkW4kiRO2pMRkAn0OII+9C9K2zLDW9xO52R9GeNJb5AKCRKgARiz9y
 MQIBL7jgLGH9xhCnbLkBDQQ/3yRtEAQApbe0v2n44Ryi3dUr3dZ6HruyCEj/5GuW
 8F7yz2CyZjsKcnkUC+nnsUn18YOBQhGBei1aMvjs4j9xk8dORKxNcm6gsfAoApKS
 3TYUasaW2QmToJJRSFDVbMo9Bg4Ul/NbvlU1b81pu0Zww1OcJn3BctuKqG7mKGPI
 jA3KOYUfSH8AAwUEAIXm/DCsHGGIwJCHGDmEAsGIYJk9g2NWh2ObW/2uUblHbDd6
 h63gVWxd5Y4n1Ql9lNDqhaiJl4BRAVEaoW4tK0JNZOhtf2drAPZsrOm3/Jc29D74
 T55lgOILJd2GQ9a4sy+OzzXfrYsB77C21vkIUi/pYZfTz/f/Ar1MT1mVj3/uiEYE
 GBECAAYFAj/fJG0ACgkQ6CRbiSJE7amGagCgsHfJXA4PvaIw/d2hHS9VlAh5Z6cA
 oKPyew4gQHo/5fCeBunSpIQbAanR
 =YyLh
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.18. Konstantin Belousov <kib@FreeBSD.org>

 pub   1024D/DD4C6F88 2004-07-29
       Key fingerprint = 39DA E615 A45C 111D 777B  3AD0 0B7F 8C04 DD4C 6F88
 uid                  Konstantin Belousov <kib@freebsd.org>
 uid                  Konstantin Belousov <konstantin.belousov@zoral.com.ua>
 uid                  Kostik Belousov <kostikbel@ukr.net>
 uid                  Kostik Belousov <kostikbel@gmail.com>
 sub   2048g/18488597 2004-07-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEEIq/MRBADOl8+kLZyTRb2xRJmgwq0a0xIPuQxBvUa3Ac7T2d3r0mCXQAni
 MG6IoSxnTGhZd8JRMya03RNAEFDFIxozgBh7tWOBfCxWB5KHS6F2PfXoWpHz6APL
 9d1eSu8qMMJ0aHCk5icZdhMWlviFMwyl2x+VhJKsxpRbrU1hbWd27x6ouwCg+AD7
 cPohqZoWEAlbS9Pc0elxsq0EAJw4lcIrlUCc7Z9G0e92HXc4IyeTswv5is/yDz9g
 7LUyp1qJbqggV2LGtjTqit1ldccIB4D4N7afokMQiye1zAyntpPcef+oIBf4zFr0
 KmSnG0IgaUm8fpZJ/qumOkU8GX2SYiKUQtMQ1xdbnCQaRdOjC796C7PKgK7QDD7+
 qbLhBAC2ysSQZ824HHS1EN48NlV25vV9HBIag1VwUVmO7IVGHdxZKFfnyXrtiQmq
 wpb3okcsCls5x1QQsT54095kP20UrYDHho8yndB1bPRlLnAhtJQpGVTQ7P44ab1A
 SxIcp+gvgIoHFKRVsj949uhn7vcbzJEe15whWTj06WckVmuCL7Q2S29uc3RhbnRp
 biBCZWxvdXNvdiA8a29uc3RhbnRpbi5iZWxvdXNvdkB6b3JhbC5jb20udWE+iGAE
 ExECACAFAkM9SpYCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRALf4wE3Uxv
 iJ7ZAKCj7lMo10TeSyCYE3Y6/dr9RnqAtwCfZro6JLEIqa60+ef1NyHxscvQ0ce0
 I0tvc3RpayBCZWxvdXNvdiA8a29zdGlrYmVsQHVrci5uZXQ+iF4EExECAB4FAkEI
 q/MCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQC3+MBN1Mb4jQewCeJmg8ftV4
 x7l2AoSAPsIDoQgXZFkAn0v/zBXhfjFoDcMK0cJTyPhYm4vptCVLb3N0aWsgQmVs
 b3Vzb3YgPGtvc3Rpa2JlbEBnbWFpbC5jb20+iGAEExECACAFAkM9SmQCGwMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRALf4wE3UxviMLdAKD2lvxZqIpK4J8s7f5g
 HZ/BeoqkLgCeMoiVpODH3W1jp7WmIAcPTX27OEe0JUtvbnN0YW50aW4gQmVsb3Vz
 b3YgPGtpYkBmcmVlYnNkLm9yZz6IYAQTEQIAIAUCRIECYwIbAwYLCQgHAwIEFQII
 AwQWAgMBAh4BAheAAAoJEAt/jATdTG+IhlkAoIR7laQrFh1QrZlIG95dj2oFOwDa
 AJ9rpiIgeCaPJZKediKAWDCaJ81IXLkCDQRBCKwAEAgAksTzLKLHecQ1G1mHaw0D
 5E4YmadGDnx/K4abjzzINUP033VgKdMXe3ocJOI4YeALGzhoFAjj3s5VvFqgUL8B
 8xBn5r2vSGLe1WZCZmq5kzfls7E1I6TSQSRqIm2CRBYzSAFaqs5uaOPGMZ+fSfYO
 W11wtIChNJBDVhO5YgRKJlxhMCaLTTH6qB1ZCrSswIFLgApssTUHcHW32eh9qxQW
 U7XD7MjMbkbr1Ig1scaGkjUGLoIHboqFYDS8sLMaJp/RUyflAbzizL3vI7G3i4jP
 zBLPrWnnhVDPWGJptuPedyFU2ZtgX4E+txP9yDoOrcjBgJEj5JAO+nTMIoabxtXR
 lwADBQf+JdFUtGznzSmMgjfjW1N1cuM8xe2JBA1TRx6Bg3Kn6bVixmpRBOxQ3gtl
 k+o2dOHZtPtB22J9IMsc72fAFHpDqogm5ADN+PdtHsjWYS4U64Pg008VYc+IWSXx
 fqLLRK3luwDFn9mpvgcWc8yue8Di4jZ+SojNtmvSSRofm8ruf+6uJS6EPUz9dzH2
 PcMqhI0+nJMn20Zeq4g84g4G2KUEo1Y+ruL4iUUQcVRTWIBHw4jkFdGdMG5z/2Ao
 myeZ35IoHFJF3NoY/H6/ZrBe2D2qbY4CsrvCutUEKIKtJqTHSB80pJS7hdlSH269
 3SSIuof00KCuWbrWQvGp3Mpx9kp76IhJBBgRAgAJBQJBCKwAAhsMAAoJEAt/jATd
 TG+I/pEAnA+MZs48oSlZF452F1xW9q75hhGVAKCzW5aFbJsAnJClz8JS27TynnPd
 CQ==
 =EJ3p
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.19. Anton Berezin <tobez@FreeBSD.org>

 pub  1024D/7A7BA3C0 2000-05-25 Anton Berezin <tobez@catpipe.net>
      Key fingerprint = CDD8 560C 174B D8E5 0323  83CE 22CA 584C 7A7B A3C0
 uid                            Anton Berezin <tobez@tobez.org>
 uid                            Anton Berezin <tobez@FreeBSD.org>
 sub  1024g/ADC71E87 2000-05-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDks22ERBACsqOob/YoPnaI/xubQKn/CCUFsaEMqL14TZ+FSlCphq3uZ7Y0W
 Qg2eqaTp97lG2NTVNEzF7K0yr/C3ofEQmTINQTd7DmEj04DDlR+t8BMFe6Xz2sBI
 WlEPD54ZfJVqhEX5P6T0xe9hiqjXKwQHHl1skKniKeO07o3K/4bCDDMfKwCg5DY1
 /2j/Gid0YmxsJCIlg9kzRGMD/1lkSkQ0KrPH3RVPMrkRWE3rvvMES/F7jYNfKDQj
 X5lJDKoIQyWh1JwAmW/O10V+24Vl6JEFNQ4QJ7ix9hlkI59YS4TERxCUGGDpl3jr
 Lae6FFxYc1D5H8LLpiTSApmZcLxUE8CFoZJLySHgjp8qzvA60wMOjkfkWMgw3BpE
 N8DVA/9UF+5ue4bLHsPn7Jv5NzOkzaTgC/9O3UZUj/jYOp/vkI+0wPnP0U5f304P
 iLpYl1tlCEpciWF88MS5k3+8zsk8trqorss/XQfFzhHVtvRtgVxj87V0Z01E2ZZr
 YlqrnzHKQZOAKM2X9FiRZOAkndkkpeB+7SSeXDP62I56B+690LQfQW50b24gQmVy
 ZXppbiA8dG9iZXpAdG9iZXoub3JnPohWBBMRAgAWBQI5LNthBAsKBAMDFQMCAxYC
 AQIXgAAKCRAiylhMenujwBepAKCCtVcVRS40E9SY4Su8GTOBVoH4UwCgu3gK3zMy
 /QhZnnhmTKaguG6XopqIRgQQEQIABgUCOSz5ngAKCRCBvdPEDh+beRnEAJ9xU+6P
 TJrLGk8PKtO+UY8Zt7MTxgCdHYzFsXZ81j9HY0Z4EaHkQBXv1JmITAQQEQIADAUC
 OS6PpwUDCWdTAAAKCRDXjLzlZqdLMXMaAJwOE+6Jh5PnfHc09x3JKN4/a0v63wCg
 6GdysmObSBQXATzYBuhy/0eFCCC0IUFudG9uIEJlcmV6aW4gPHRvYmV6QEZyZWVC
 U0Qub3JnPohXBBMRAgAXBQI7JNTmBQsHCgMEAxUDAgMWAgECF4AACgkQIspYTHp7
 o8CQ3wCeI+P8VsHzHpfmUMa5kCzjBeqj3zcAoKYmyZUSxhV9TBQPo2WQ7zF3zcoB
 tCFBbnRvbiBCZXJlemluIDx0b2JlekBjYXRwaXBlLm5ldD6IVwQTEQIAFwUCOyTV
 DwULBwoDBAMVAwIDFgIBAheAAAoJECLKWEx6e6PATIsAn3clXqExEiP/Q/IDQb7e
 /yolgMrRAKDPw+6ZxTOJFba2HWEto0PwQ/COE7kBDQQ5LNt+EAQAjHltp9g75EOw
 pEDSUvK/B0aRUsjoIyAokRuW9Tg8S0xIhtV8ogcklvcXjQbjiEsAiO13hX7zmdmb
 yH7xLiSjea/m/whmNr9K094BS1K5i7mmUqNEFOyPB7VkPbRs5gF0dCkHT5uVgqFJ
 HSbss3zPyGYEBi8uDokIfOt4o5CEMYsAAwUD/269N/UwZkO4+NYivNX0ZpcUouqV
 YDPQ8YLwSrkwWpG7UNvNHd1HS43OWwAOy585SkLpZkjlW58NqyXJuWVC0xJtdTrI
 MKTZ3IJNXMK2wdK+nBuTL4IvJwkf04pwFel80F2NtgUjR3ZgIlRNvFtvtCkNPg0j
 t7J8pPvL2vU5hz7HiEYEGBECAAYFAjks234ACgkQIspYTHp7o8Bj7wCfSZsld8vv
 iM02pWobJy/VvsBJKU8An2auT0HLmVLClDph/fQa+k1R2qsR
 =ISZ3
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.20. Damien Bergamini <damien@FreeBSD.org>

 pub   2048R/D129F093 2005-03-02
       Key fingerprint = D3AB 28C3 1A4A E219 3145  54FE 220A 7486 D129 F093
 uid                  Damien Bergamini <damien.bergamini@free.fr>
 uid                  Damien Bergamini <damien@FreeBSD.org>
 sub   2048R/9FBA73A4 2005-03-02

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =uQuq
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.21. Tim Bishop <tdb@FreeBSD.org>

 pub   1024D/5AE7D984 2000-10-07
       Key fingerprint = 1453 086E 9376 1A50 ECF6  AE05 7DCE D659 5AE7 D984
 uid                  Tim Bishop <tim@bishnet.net>
 uid                  Tim Bishop <T.D.Bishop@kent.ac.uk>
 uid                  Tim Bishop <tdb@i-scream.org>
 uid                  Tim Bishop <tdb@FreeBSD.org>
 sub   4096g/7F886031 2000-10-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 5ACdHjn4iuMiXZA8cDDPAi8VybndPak=
 =F66Y
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.22. Martin Blapp <mbr@FreeBSD.org>

 pub  1024D/D300551E 2001-12-20 Martin Blapp <mb@imp.ch>
      Key fingerprint = B434 53FC C87C FE7B 0A18  B84C 8686 EF22 D300 551E
 sub  1024g/998281C8 2001-12-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDwhwB0RBACelK3FYxd6cT5ukbiSdVLHPLfzgH3F34JfS6Q4FMXgEAPtx7iy
 U4Lc8A4Z2gCq1ZHBZTzKc61U+nzHe+eUWtAj0h3qDP4DOd7JCZbh4SW6dMIC7MAM
 /9J5br6e2fIIn3rzbROXSW7CJPox2D/zZcT1b727Wgy5NHUob3qej/zhwwCgrZ0o
 KBapUXgnKhesQzKlH2wWCJkD/3njAzJsFS7nDdTssMtd7ip9W97uNOFLuJ1/Sg5S
 332BUby73hNzSXlS4rhtQB6NVBRLfGASuEYBJQIEz6aao/lDprIxTusCTrO/EGqa
 Dy5y4XE1ClIyZ0yVw05UJiTOZ7Mu/kUTBBzQ2i15lxjzXBt9pNifvtcKBhcDmdzQ
 zepQA/9Jio4IBFmjPDsl3kpvA8KqP7VXKFMMBVT9SztYVIeiFgbvff/YCqzkE5RD
 0PWUFPF3o8rzsCovlpySfUNLUlfqxEZ+5+/5ky7AbJ6Vmyn7Tl+mBSZs4mTV7ktN
 526ngUaW2j+aO2SdWao/di+sRutrgRjJqyvgGn1YGnrSoKbMJ7QYTWFydGluIEJs
 YXBwIDxtYkBpbXAuY2g+iFcEExECABcFAjwhwB0FCwcKAwQDFQMCAxYCAQIXgAAK
 CRCGhu8i0wBVHh3IAKCDMueq8RCcRO+3Lc+uQyXqDKCf3QCgpVWa7oS6lTiNxwSP
 enZ7+4g+TkK5AQ0EPCHAIhAEAI3iAhZEDBjyJvPS74CXq1ypWvXfQUCYADCc/Cuv
 3xrr1p4ff3oYc+IIVdeOQktKWRP1dK7v1JLmqFsNQQIs+NtgHyO+azyX5vJGVRTg
 aCIuMMTnrDBC7VbAnWXtTHF5VKmmd891Y+nk68p5YVnRPc/fReXEY6dA9lqW0bN2
 f2jLAAMGA/9rMbPpnRy+uvaAQChkHvOV1RnDAhN2R+U9u3d0uNnv7sWa/TJrcdig
 KNUsUvXqIXVkqEMrYHTbCVC4mLMd51MLARiIKOaHeynRZYkEmdi5X7EiBLS9dCUe
 7+vMz4jV6MRIGyr8TBy3CEFIdAnpY6EIVd326PzYIgx8UZw3oEvjGIhGBBgRAgAG
 BQI8IcAiAAoJEIaG7yLTAFUetM4AoJg56qwlr8E1iEs0F33G6POGCWnCAJ4mW9E3
 25TD51pcom8Plwy1BkuBSw==
 =oE+K
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.23. Roman Bogorodskiy <novel@FreeBSD.org>

 pub   1024R/1DAACA46 2004-05-25 [expires: 2009-04-26]
       Key fingerprint = AC27 CF29 5E51 E53F 8C8D  DB90 8074 5B38 1DAA CA46
 uid                  Roman Bogorodskiy <novel@FreeBSD.org>
 uid                  Roman Bogorodskiy <bogorodskiy@gmail.com>
 uid                  Roman Bogorodskiy <bogorodskiy@inbox.ru>
 uid                  Roman Bogorodskiy <novel@clublife.ru>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mIsEQLMkmwEEAM4cQe1CNDdIWcOlb8221icriocsnJOWZ4XMX1Ww7CTUfPZU31Ho
 boNl3sK/+KsJxwt6frqOBnnvtQYQEYzIQNJ4pMKC2Mz15jMYndwsuxg6L09e6+R1
 7RfIEFEXU7p6YWQFLoBFUW16XF7ye8YrjFJxAEfTa4jnXF27ERopVpUFAAYptCVS
 b21hbiBCb2dvcm9kc2tpeSA8bm92ZWxARnJlZUJTRC5vcmc+iL0EEwECACcCGwMG
 CwkIBwMCAxUCAwMWAgECHgECF4ACGQEFAkgS0BsFCQlA3vgACgkQgHRbOB2qykZG
 oAP8D28j3pBxbOch9/mlDL048M1lWMnJhAJ1wYpcAbmKseBrEWCz9czxPj/UgUNl
 6EfRLT71W0HOH/eN74zJqwWb80wviX9nOKApsmqtv528fujoMYF+XeweBX4a+Cta
 D+krJUxM0rA8kETvLcHCehl9EDJdNHHM5piSCTrnj8XBNJS0KVJvbWFuIEJvZ29y
 b2Rza2l5IDxib2dvcm9kc2tpeUBnbWFpbC5jb20+iLoEEwECACQCGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AFAkgS0B4FCQlA3vgACgkQgHRbOB2qykZ1+AP/ajL5tZdQ
 hoM075iBc+q34czeeLccV6nXGDkQSyJ2gp654+oOiDKIU+HeaaNVpgvvtzZqoFQZ
 GH38DWM0G/WLuaEJDsCPSVHdKMgAe98FaLWe/oekTS0KF/epuK73GHRBNZaCPrcn
 tVWALyo/O6V65023Lor4DcU6pjhDbwk6Yrq0KFJvbWFuIEJvZ29yb2Rza2l5IDxi
 b2dvcm9kc2tpeUBpbmJveC5ydT6IugQTAQIAJAIbAwYLCQgHAwIDFQIDAxYCAQIe
 AQIXgAUCSBLQHgUJCUDe+AAKCRCAdFs4HarKRnIcA/4iBqhJ7zdEx1j1qQ0rj9hO
 R/OQISesx17fRMwd/u3tmDjAyX22Pgqhhj56f2eJ2SQUr0PJXin6UwaYEQ4ifbz0
 z6zVZlmiLVEwJk6O43dhHc6k9RxM/eDltzbCa4aBQwuQg3Seyg4Z2HCvRrKv9ESZ
 9NZVI+hqVyQl9hyJ95b8CIi0BBMBAgAeBQJAsySbAhsDBgsJCAcDAgMVAgMDFgIB
 Ah4BAheAAAoJEIB0WzgdqspG/3kD/0isk4pKJTMKCcoaGcZsGW6C3e5CZw8Mr+OW
 AsxHGh/Iv3iGB7gGoO07R/I+uAMNR2VbPQAvYPlMwrIhubNzUZRzkdlBu7QQyT7C
 lyEIAn/ikUzfmxvD2U0D0SrHguz7YcSH1Vjb9R7J8dc+qlPJBRXIX6saNG6+FbSk
 KN+J8hOBtCVSb21hbiBCb2dvcm9kc2tpeSA8bm92ZWxAY2x1YmxpZmUucnU+iLwE
 EwECACYCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAUCSBLQHgUJCUDe+AAKCRCA
 dFs4HarKRpUEBACyMr1jFO6G1HTwixax4+jMmto+9Mdp3uifEr/Rwa6mFyIGQx1G
 3N/bHWgWNIUkD8ZAKoD4jaijPNpE9yEUsXSkZD7TOkvRfsFbGDb0PissDnraRr0o
 hNH2K/edi23vXQH/rHj7N/B4fjF+3x0jocg3+Dnh1ADEJcPBN2HQGVAkkA==
 =ilKf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.24. Alexander Botero-Lowry <alexbl@FreeBSD.org>

 pub   1024D/12A95A7B 2006-09-13
       Key fingerprint = D0C3 47F8 AE87 C829 0613  3586 24DF F52B 12A9 5A7B
 uid                  Alexander Botero-Lowry <alexbl@FreeBSD.org>
 sub   2048g/CA287923 2006-09-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEUHm3YRBAC/bBl9E1saFAVuS5wtnBQ7BbXPOr21SBExZ3t+f8k2PG2SsKYL
 xNMAn1drC9UdbUVcQDzlGcWQONYRKj4kWoYSYNDOElwa7Rv/f4z4NnIhOxxT6G+M
 qQTFWj6MjrCVPZh+b5Y3DTdmNxuJq+Yf9+DFsxc0i+xhMrbbjuokWRFdxwCgvb8Y
 fLNYJqjf9V5hhnvt3K2/L9sD/2frMKR7o1Ie3CgQbhZgYLkGlMmAlyrKLamdRzRl
 AmjJ35mkIQ9iu36BpsUmVL9WPjy2sdep0FyRLRgu5/q9qhJxy31GsVYv5y9m9+px
 X+00CN1a/5g1d6gxLUY30KsOL8OXSqwmq36iJHEsRxFfs9NJ/dBui1cFW0dDNmdg
 nE9xA/0aX+9BPSiu/hXFa5A2Q8fCB1wOcaru+QzgbY7nWnse2PQ7Nsv0xEMkaYdT
 AqA9I/UyssYeRygD7H8edd24xy39EBAVLLCD57Tjye2fCOyWBIGJU7Jtc4b/DJgm
 6bP2bSscB44ybBmlWdza2sgui9D4beWQvEVZGgpsnqnCjJQDOLQrQWxleGFuZGVy
 IEJvdGVyby1Mb3dyeSA8YWxleGJsQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJFB5t2
 AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQJN/1KxKpWntZ4wCfWY5pLq6V
 rCpsAiGcIniMBUoueTYAn0b5suADC5pawqBP/Xbv95e69gDWuQINBEUHm5sQCADC
 7ynjQmBXd8q2Ei9ab6oO6Q4XbEu2eMLcm1C4b1cu8Riyb0bYI8fQ0JkYPWBDdgvG
 iVuDGHjLRCJm8LDV4VAhpkn6obPaDW2ZVf3urkAsCszSmv0jlEO+grOj48c7sLeR
 NpZX76FCKFtgHClQOSfR/9eoKFQh5jveWgSQ0gEW95gGQShy1cTi1XUdJdxilL6G
 GNBfSNgAFwQBkepgzjR853bVysoZEF0Z9MF/PZgmAXoPYTs54tA24LSETmBo5BjA
 yUTI6Dv4+jKXqmDphX6BjxeJkYxlKAyVBgNrKZahPoyOPd0FvMINn4MpOJdpq3sv
 PSXwbexIrroMJQz7nR9vAAQLB/95AIR3oGIOhDCAUwf18K0Uv+v2cKVhClHqyAGy
 zHjyoyEoSnhApWVXD2hNvqfxy37t5/5EzaU0mvC0GMpv0trBa9uBRk8GrXgILnzh
 dYjhbSPZStx3D/0lFBLHt9qYjFFQweKNun9coOV0TzdXigH5PFxiks90Qc/sfr6N
 v6hXA4MAe81zeEdQafBkreHDo9fL4i+GwxF9novXNZ0C+YNJ6+3wOIJwacCZ1bdy
 gWTM8pTa7vtvtA0Pk4CZpGKSICg/jDq9dZT+vaNGFnKvQOQv1RPNLs/QqfvUo4ZF
 khopn5yHXGJjLZp0Zds4MdqXLddUNHXW20Yki11eZ9NXK1KdiEkEGBECAAkFAkUH
 m5sCGwwACgkQJN/1KxKpWnuSYgCeOgBV4svD8sqNBVN467Le6aLzPxIAoKsNXerk
 njcpzY8FzVuY52JnLNP4
 =CUqZ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.25. Hartmut Brandt <harti@FreeBSD.org>

 pub  1024D/5920099F 2003-01-29 Hartmut Brandt <brandt@fokus.fraunhofer.de>
      Key fingerprint = F60D 09A0 76B7 31EE 794B  BB91 082F 291D 5920 099F
 uid                            Hartmut Brandt <harti@freebsd.org>
 sub  1024g/21D30205 2003-01-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.1 (FreeBSD)

 mQGiBD43wzYRBACpuUuayKjLpf+tMndpkOwxmpaPkLFxiA/dI1iWjY8I9ItDLZyM
 LqgYXemOOga6vbTvIUq7Bjzl3oR72kjNX3J1EljsMj7dxksoY5lflEMdxAyzdVoI
 +/cu+cWiP0Z9unKpYmTk8S13sUTtZc0+ixioaUvHzSJ0nxQMpIW7dqCDewCgmSVR
 6i2aK4oImAa9+ZbCxg7fCxcD/2xgAAwJSmaiaV/0As3A6IO0eSkbkzFSkMF+ms7C
 OtrHr1zmdM7h8MaGg/jw0Z6eZalYD7AclLvXDW0rxCMFwh06SC2axUTk+aE+vcys
 fuSk/HJtnktHUxZDgb28jf4X6zfcdTKE5dt5a9w3XHHPgdTXjGn7+sQNR4CWDcvq
 1qNQBACOqNxJdCC9tDLycRoupNSwzldMKVBZ2/JdQjfCIq6d8HPMNVLU8PGlDjoy
 RN4QkMZLbwV9Gaigk2DR6vvi8meARADt53x4OjS4W3O/Pc/Aj8rsUcF2mRU/wiJC
 8VkQsnaci5GuaYAssgKroOTZQzxHkOjbk4FeQ70C+wxovRsTh7QrSGFydG11dCBC
 cmFuZHQgPGJyYW5kdEBmb2t1cy5mcmF1bmhvZmVyLmRlPohfBBMRAgAfAhsDBAsH
 AwIDFQIDAxYCAQIeAQIXgAIZAQUCPjlTfwAKCRAILykdWSAJnxpyAJ9eHCdgiEt/
 +Z5Ms8Qe3ekWTYTy1gCfdVWLF2MrZNL/MYOgBhhex70gKzu0IkhhcnRtdXQgQnJh
 bmR0IDxoYXJ0aUBmcmVlYnNkLm9yZz6IXAQTEQIAHAUCPjlT2QIbAwQLBwMCAxUC
 AwMWAgECHgECF4AACgkQCC8pHVkgCZ+BBQCeMpgFMMm4siEtrzqdisrRaxJJvosA
 nA7UDwOVoHDZaAkFD0HNcUsTkO3KuQENBD43wzcQBADsEH8o/9tD01ScNfhoMbK4
 N7GsIJNFwQf0+MQuplpXQx4eBpI9ST1ZoAUXeM1j4jk5PIAMJzt8w6BAGgcU4iUG
 Un0R/QMTTXVkfovdSe9FW7/QtUjRtTQz3QOfZTkekYauFIiW+lSmH3BDwRXhpKgM
 e19eQZYOPRfLCnLLwqdr9wADBQQA5tIdzlDS80CNZxxoFDKlvOghtrIzPG/wIwGV
 at2clZMLhXESxDxDkpwT7XP1GRLyN/Plh/4k2vwxni7nOJ8BIch7rRh3E48TJat1
 iZ99SFc9iibED5hY/HrKlc/kphFnUuEr/kk82UCv9p4/d2V1+8v1N+Cy2jCGvrip
 IQ6v2fOIRgQYEQIABgUCPjfDNwAKCRAILykdWSAJn0J4AJwMsjovUA6jCJRMEzOS
 kIakJgqJvgCeNLKyNEkyJZh0wZUcEg1zYLRYp/w=
 =+h/9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.26. Oliver Braun <obraun@FreeBSD.org>

 pub  1024D/EF25B1BA 2001-05-06 Oliver Braun <obraun@unsane.org>
      Key fingerprint = 6A3B 042A 732E 17E4 B6E7  3EAF C0B1 6B7D EF25 B1BA
 uid                            Oliver Braun <obraun@obraun.net>
 uid                            Oliver Braun <obraun@freebsd.org>
 uid                            Oliver Braun <obraun@haskell.org>
 sub  1024g/09D28582 2001-05-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDr1p9kRBADrTCmhk/+XY9Jc34z36wp8zy1rbxGBy80enJM+aFPHks/iYPxR
 WA1tB8BEdGPJliUMYcNGeo+ZX3As1+xxo7NJCc7Zd7Gfs1+fMOXPwKGt02mr+Nje
 +nF9XMfdGPP0IcK9lzkVeEdH2JP41pS2SmrMwsTE/eGv9pFEnnmRxeuFcwCg1RYc
 f8freOk8v68+J99mCUUAGl8EANePcxWbRYgH5KulTzE5nYIt9WBn247T7goE3yn1
 R2VddSXXGhs0byRxXpNAcrysyGshIQY0nnZSB5AUt27tZJucoT1p/BtBFQ6hLCQe
 kaIRL0sdXrVJZn3/Q1G7vJWD6wwS35dro5PsYYPDI+qL1tISlWHZNQ2Y6jGdqhc4
 Len0A/4nV78yB7cLvHksxwvbdtVVn8eVo1B2U+/b4cXhevHAl8AmNN+usmEodxxe
 8FYWV8jY323xiYSMrCpYT9FuD3r2qORMOGWpg0zth6BkhdgH1z2i7koKkGIfc4mV
 6oea3ep5uaU82r1sGe7/cVzMGUwzZq9xizwODfbmSW6E+vdAjLQgT2xpdmVyIEJy
 YXVuIDxvYnJhdW5AdW5zYW5lLm9yZz6IXwQTEQIAHwIbAwQLBwMCAxUCAwMWAgEC
 HgECF4ACGQEFAj4YDoEACgkQwLFrfe8lsbr7rgCg1K0Zl8CPgrQG7BEaZqzSiIM6
 IZAAnjz5ifN2xHJSOJiLYloidZsikNFQtCBPbGl2ZXIgQnJhdW4gPG9icmF1bkBv
 YnJhdW4ubmV0PohcBBMRAgAcBQI9Y1sqAhsDBAsHAwIDFQIDAxYCAQIeAQIXgAAK
 CRDAsWt97yWxuv0CAJ9lUDzKKdaCp/8mJjlXLjlSZaaJTgCfXIqQr58p5MSFkVdL
 hLbK1P1l8FK0IU9saXZlciBCcmF1biA8b2JyYXVuQGZyZWVic2Qub3JnPohcBBMR
 AgAcBQI9Y1tFAhsDBAsHAwIDFQIDAxYCAQIeAQIXgAAKCRDAsWt97yWxukHLAJ9u
 oP9cIdBXldt7XfQ/5xK2fUsHPgCdFIR7cK0l0spO2xjzbzhoPPVShbq0IU9saXZl
 ciBCcmF1biA8b2JyYXVuQGhhc2tlbGwub3JnPoheBBMRAgAeBQJAViQBAhsDBgsJ
 CAcDAgMVAgMDFgIBAh4BAheAAAoJEMCxa33vJbG6MhIAoJ3dqHVStQdGzLPTGbtP
 Zq8wG0jmAKCzMo+si/LFBZAnOqYN3g2yVOOc6rkBDQQ69afaEAQAlaNzX3ql+XfL
 obAAIWW/TdY9Yh6r0fFFoK2Mdt6vungWhzSWb63DprREXyW1k6QbPQxL+pAfeCYZ
 oXQuNBmsUpO1Xn6ViEGRd53D07sNJfBrE/5w3hwL+c9lWSJlt0vHKzFtPAmqenBd
 fA0fs9afiew2sHhk/jz/FAwWcnF4aC8AAwUD/0upFaHEZsf8sVmSEew5tAtZ6i3x
 zaBjhaDv3sYobza57S8mXYhscK+nNHx3bP036wJ0z8ypqb5oCqGzWUkj9OpYZs0u
 Tbpla/MoCI9N1Ch8LfQkWPuvYjHF6LSY3wpZKaNWfeZPCmMT5XPqjuxDB1pCmnAU
 OizLyimZU2Y8tfQWiEYEGBECAAYFAjr1p9oACgkQwLFrfe8lsbqmfgCffgEhvau1
 1EUoZmkdnzUg2rbKYnQAn1fVK9TjWnJWQ/YDOn9hmMZWYjib
 =wrrS
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.27. Max Brazhnikov <makc@FreeBSD.org>

 pub   1024D/ACB3CD12 2008-08-18
       Key fingerprint = 4BAA 200E 720A 0BD1 7BB0  9DFD FBD9 08C2 ACB3 CD12
 uid                  Max Brazhnikov <makc@FreeBSD.org>
 uid                  Max Brazhnikov <makc@issp.ac.ru>
 sub   1024g/5FAA4088 2008-08-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEipViERBACsCTYd7As236qQw4dG/xB8p3XbN7pFP/C4yjRJak2QZfsOQ4mR
 7liBgXc0FevU6FQOW4XrcRbQeGFlRE5pb3idwhTKNc58TEifGM2s2ZGgRrR0aIF+
 9s5ZbVNp75FgSsN+9ksAOmz1nSj+M9Ikz464YvA3bHvKP8QQCpPpBgiuSwCg5IBV
 XSvep/e502PHqsiP8H1zGjMD/0xDwDdLfnN1R5tuNDfZEN09BSRlYYFPmMlP177i
 DBCF/2gF1bQ7KL42qBCr49ngVMAEAUlmZwBIN0XvfGe0KWDvc4G/CYqcOiWhbBEA
 pvtJZHE1C/kIRFS/IiM7BVmkdVnn1MzJrGSVPAF85e/iyc1K05C/qCuulqm1aLpf
 8dOeBACDvyvk2uE7R11REnKa6FKvzS2X32YclSM2sApwl+LnFO9eT500Rxzy9ldP
 jKlKR/dO0DwUKxnUO6DOHAEZzvutx1f6ZJksXk/0OsSNkn7+TIt3pKb10udpcCag
 k/ik+o7v+2XB7BlydRBPwcaJE4fq+CWyAbgRfKROetwfTI3ItrQgTWF4IEJyYXpo
 bmlrb3YgPG1ha2NAaXNzcC5hYy5ydT6IYAQTEQIAIAUCSKlWIQIbIwYLCQgHAwIE
 FQIIAwQWAgMBAh4BAheAAAoJEPvZCMKss80S1+cAn0+WKUu5TxrXSF4N8WlRK0mU
 1tcdAJ9Fcv54PisOdQiVUSIw25LqSqWyJbQhTWF4IEJyYXpobmlrb3YgPG1ha2NA
 RnJlZUJTRC5vcmc+iGAEExECACAFAkiyz/wCGyMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRD72QjCrLPNEjtdAJ4tcsvvos2CoXmZsTJxuVF0RaEwigCdHgBapPWu
 MPyv9FLRzdWelOfZ3m+5AQ0ESKlWIRAEAOzibN5tPXiGKAHPwaQgnVQiaKv/7HUr
 FVfqycyXJC0/nmJ59UNpJ+0Y4GDwDRYqWqGyyd9diKAUomUwbIuQ71BUibmIZQS0
 3v0jgcfnJAhgz7EFGewgQLHsYwzwTDtPNQCqxDEUwDLKla72ksuodqzx92Dj6SSP
 AfFN/6B2bvQbAAMGA/9XFhkt0SAqXV09CXs3QuHdzuJ0PLadaz31bWITmSLqW2FU
 /EwXt1615g/E/qIwa1PzjZT8JQDAEHKbT5XPXtTzvOAUp8JK2wW9P6JQ6YPT14Vy
 /9PiMvLThxNY3zWjWChWuEf8zohd922OSqlSE8vgOm0H7XUe480/FeP3RP1EKohJ
 BBgRAgAJBQJIqVYhAhsMAAoJEPvZCMKss80StqIAoKpjMeYK0fSi6GpfIaojuz59
 eHHiAJ9ws2o67xPKbWgdqMxn4MfLK+ojbg==
 =m+ns
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.28. Antoine Brodin <antoine@FreeBSD.org>

 pub   1024D/50CC2671 2008-02-03
       Key fingerprint = F3F7 72F0 9C4C 9E56 4BE9  44EA 1B80 31F3 50CC 2671
 uid                  Antoine Brodin <antoine@FreeBSD.org>
 sub   2048g/6F4AFBE5 2008-02-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEelsqARBAC37tcs27BitWt9YeIYmpRNgtRH/ndAm8ecJK+7IuEqo1t9IglY
 Uy+lI1xW1H4LrIbmSKmwfg3Gj3lm+12avQ8mf0vVbl2RVxfOQZY2C127Qv6Mg/Ox
 Fwxb7UCWzYi+XAf5XVHyzKLaLq/S56serWDX+mGY83kLhVKXy7pL98bwewCgtr1D
 miY3vAu1NMoWPuZ/2kvLLh8D/i1Zisp0EE5B4QjRFbaSUzfk3tImTKLQtbj4F3S2
 Zo4hh3IRYLGq2OMJ+gH5c5KXMhaxqiK8XCO1pHNdCyaL1PZDW9s0sxPiVv5DDxHU
 Lm1BXyTIJyuAC8KVnMWIfHVoqIX45m0Br6IFyiHU3CFBSsarkC8088HViilTYGd1
 8InNA/4+wVDMqnht2/YeMqyYevKOGw69Dqe+1jeTNOg7h/1EOL2Sytg9EIfyTf71
 IxJAhsKU1ibjAMubERoTN16rPgTx4yrDtRSdfbmnHxrreih6PKsbiaKy76cnYaxz
 sz4VontIIaH+Ye+VmVIQsBS/QIBBki0j9YAzNDcJqCdWKcoeb7QkQW50b2luZSBC
 cm9kaW4gPGFudG9pbmVARnJlZUJTRC5vcmc+iGAEExECACAFAkelsqACGwMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRAbgDHzUMwmcdHwAKCrHa3q1ixEdvmpU1Ny
 2SpQrmvslgCfef8t/hiaMLSuyZEsjR1x8cp6hiK5Ag0ER6WyoBAIAJScQspDgp5D
 P/K1ZdT86Ux7Nv2UhZilYF0LPkvZBdfTC80RpjrUvz1m8ZObbCsUO5Ag0j3+Wtms
 6CVaQqfT2RoRyjcnNVJGadWqKmOWVkvZYzHQPl8SZNENYurFFhfy4MCxXf5drkH3
 CV5QqY1onhuvsfl69UZ54e6X3+DjQ3KdtqyyqUez7Qe20ZdIcgC43HcEuqAbAOxm
 /K0zDNvHpjwgleNoFBd8GZfD/biD9EMnhiCBq5rS8Jqh73e9wLtkMfssQunA7ELx
 ZVuC7M5dBBMjRUp0dswAKAgdcaLA0D1NGUNSno35Rzur7sluufivfjLwn+qRLRBM
 FPR+ggIO/Y8AAwUIAIBR74TtznV04mci4vHDds4HX0RI/hxawivtanEAGZvV54hS
 XUnVqpIVgTqKCtmS3gqoQMQBf1+25Rq7UJlVNl4/AoLcl9ZfR140hTSd888OwcB2
 MAHd9CgUXjTHcFQj8tXFhPiWY7SfFwheLDFJUgCqB/ilgPf1XGOYuZfvBxkyXd8p
 TC2sx4iFSUBbY4S6UZN8uokpRZDbTHUPgLHAoOg1lzrzUvZuknEzbcBDgQoVwLWD
 9UCZxl1wxly6oZkq+uggXg7zxWuE5CMdWtz9/FA3CRtRBTqZnHrMM9hlHGgxTYan
 bBTs793WWsKf8rhTRqNDqQdN07YxsmTi3129OSeISQQYEQIACQUCR6WyoAIbDAAK
 CRAbgDHzUMwmcYHKAJ0c3chle4XcJ5c7+0odRWmOZ8m0IwCgndOwp3kjZUZFbAu0
 AxHti2KSFZc=
 =HznU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.29. Diane Bruce <db@FreeBSD.org>

 pub   1024D/E08F5B15 2007-01-18
       Key fingerprint = A5FB 296B 5771 C1CD 6183  0FAB 77FF DCBE E08F 5B15
 uid                  Diane Bruce <db@db.net>
 uid                  Diane Bruce <db@FreeBSD.org>
 sub   2048g/73281702 2007-01-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEWvrjsRBADPHOAUGtAny5WUa+5+6EFo83DOSCxMWqECyfgGcX0fLdQFTlNC
 oQwjuDPJoUX3l2U8+Pr0PbCnU9dAv/nfR4mefBYaSYKrOkKR2JMCUu6Z551wJIOo
 G65q410cwz3scHJ9m52iGRbZoz99+AjGymA/V4zHYV3phF+hXJKamS/DLwCghPo6
 Osexk+odFXJ+Yq8fz9MdvaMEAKPsHsY9gWyzmVtQ8toM3yudoZcjILTsNbX7oDM4
 Q0MWURvY1JkyH5vQ0l/BbJH50CGzFHb1CvDHDyR9wx74U4q58eRnx+HzSC/UukBT
 e/SOBwXM2MHv0D6fHgm7Tepwiy2uc7St5SawiJXEW5XdY2bleovVDanPvFhv2pSz
 z56IA/9O+rsGqWmgutoU97HyoIrHkY1aMAbcVkBocooeioXdm+V4AF+nlIp3pZQ+
 7YS0X7JkyQTRoxvGsGawjktbDGAzBFTYazAS2eKhBE3wyWME/14VR1OVG6EAvli+
 fL4tVUi3xBHDdb8Pd3PzWt1CduBW6RIs2NCrv5baMO35RQo71bQcRGlhbmUgQnJ1
 Y2UgPGRiQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJFr647AhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQd//cvuCPWxUTzwCfcKKh+vsTusry/Ait8DtdpUse8YMA
 n2URXcmflBA8OQ1JrFFjiW/5N3iwtBdEaWFuZSBCcnVjZSA8ZGJAZGIubmV0Pohg
 BBMRAgAgBQJFr7DmAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQd//cvuCP
 WxVIvwCdFGub9b6qt+L50ePcYnLy5sthiZIAn3PPdYTUPdXV6DfOtKFPcx6ArSHm
 uQINBEWvrlEQCAC5N9u/zG1ahYsV+kiytZ5Mgt+I+yi5aSCAQPThSGXsVptfZRW6
 0LVElbLL2v+r6ETRK92QrtZLSqM51sKWY+lyJfxRjuW2AsVAL6/NgV7bTuYs2etL
 vo347XX2ff7DrA07mGOAPrer9naBlaLPwWggWO9bU8HzphbL+kI15T0aUXLwIdeM
 LjHOQAypJ9iFsv/OY2A7epAw8zK4LCPA0boBQY6CKcFV9gxDl/kmsqobvBeyAru2
 jFAgeFytIJsP3O1kA1aKEFDolcoPwlVUQiAsFvNtUSX8k8r1HKfQpnjuSCXLU7jE
 82X5VWSAcoX/PyaXDY7AmHJFLpZGyGIs5sLrAAMFCACQPyOQmX0iDjJW8OCpmgE5
 yDv3Jedc/w4546OLOC4aT1wclNZh+iHR2meuFgm6J1bv9h78R6dCkGDJeh8MTCtn
 d9J/IDc/QElCqqndnn5XmXjtGqukXIlIg7iGF71T74K/Nb0Lepb9p9BQpiNqudHJ
 L+KqSAjFT03vfpJab65EpyeOq1ZIswDIWMRb2BFQs/El8rX8cXOSzTrKfWSamRw/
 6l1aBwsmqi8sW23GSBYCd7FKQADVKIu7EN68QT6Diyd9CB0s4U2DjHrr7snncyUF
 A9c6FTX+tIE8NXJ7ku40g7T0WnX8jpuoagdWpjlu/NS2cgaK3n8MwrL5kYYLc6+O
 iEkEGBECAAkFAkWvrlECGwwACgkQd//cvuCPWxWcygCbBuZU/pJ2tZXVsUrFSRts
 8Cvwa9MAn25/zFXyrtEDo+1imX3MjKZrdJC/
 =vYnO
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.30. Jonathan M. Bresler <jmb@FreeBSD.org>

 pub  1024R/97E638DD 1996-06-05 Jonathan M. Bresler <jmb@Bresler.org>
      Key fingerprint = 31 57 41 56 06 C1 40 13  C5 1C E3 E5 DC 62 0E FB
 uid                            Jonathan M. Bresler <jmb@FreeBSD.ORG>
 uid                            Jonathan M. Bresler
 uid                            Jonathan M. Bresler <Jonathan.Bresler@USi.net>
 uid                            Jonathan M. Bresler <jmb@Frb.GOV>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzG2GToAAAEEANI6+4SJAAgBpl53XcfEr1M9wZyBqC0tzpie7Zm4vhv3hO8s
 o5BizSbcJheQimQiZAY4OnlrCpPxijMFSaihshs/VMAz1qbisUYAMqwGEO/T4QIB
 nWNo0Q/qOniLMxUrxS1RpeW5vbghErHBKUX9GVhxbiVfbwc4wAHbXdKX5jjdAAUR
 tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNbtI
 gAHbXdKX5jjdAQHamQP+OQr10QRknamIPmuHmFYJZ0jU9XPIvTTMuOiUYLcXlTdn
 GyTUuzhbEywgtOldW2V5iA8platXThtqC68NsnN/xQfHA5xmFXVbayNKn8H5stDY
 2s/4+CZ06mmJfqYmONF1RCbUk/M84rVT3Gn2tydsxFh4Pm32lf4WREZWRiLqmw+J
 AJUDBRA44g2RH3+pCANY/L0BASF9A/0apMb/yMyQgcBLRPI+MO1QjiLxIXeh1nsK
 jWpqSUojzNmosasXU9WnY3AaYv1tkXGHd031Jlhooi7W9Cr8y2Ou8cYF3kZmxTN/
 cDkSWAijoduK3209QjpzdkfNZQyeWrXewRBohgt2b1jKuz3CMtmu8yV187vdITBQ
 /m1Ed/uONog/AwUQNd6r4j1NsS003qvIEQJxcQCffcdAPWYz04JfuMnTVGiOAbvF
 CnYAoPCa7zqkrz4C+NNZWv6naUq28Z1TiQCVAwUQNAtxKFUuHi5z0oilAQEm/gP/
 eYOsPQwz0Rg5W7JeKTdQZUjyq5g0D0StVwt23XQ2NhzXpUjYc6dhWA9FqDda3tbz
 CVdKGmiR8L+8I23t/kmBF/yHZrX8yNDG2UP7j8mzyTsYtrneguifphBiTfYgQp7G
 gs/AhE7gvYEdZrcbMcklI/ZpNH8Sn3T+kt0A67+gkNSJAJUDBRA4uR++V8m5SpXB
 F3EBARc5A/9jtM4Ds4ppcEwOyn5+QbncmqIZ1pkolASMWypkOb0sRVB4rw4Qcufv
 cq9NFy7cOVzMGqU7t6Xt+JwBSAXhT6ftkgqz4Z3z9X/uDXXLNl9xwG+prcioHysJ
 AuuPhyUgaQCICTf1+2LKxV11aVfNn1eVJ5NNHg6+CIVl+We/7Iyt3ohGBBARAgAG
 BQI2CQVCAAoJEGNKpdi6XK7SitoAnjShEqJHD2ALvwkUBGlEUhskuHxkAKDexPfc
 e6H7zFSdQXvddPpvU3Lec4kAlQMFEDWiXlNlYKmsNPn51QEBPNcD/2H9lS6GhEpN
 ZWJqKy0Yl9aLboUH8qbmcNAGv8SvDdeSxAIzBMvIS6CDp1qFDW71jkTm0o/FsHr1
 4X7sldUcT/PfOLNHpUvex1HHvhM9pw+x2FlGMKERBzSG0stgA+QmsU9UDMCVKWbu
 p34xd/x8mi9CzrE+1kle6RC6Q82WGpn3iD8DBRA0h/5BeLVyoGs5bW8RAn5OAKDv
 lWhVX4LlJFl9dKT0kn7z8jyqogCeMZ/EUiHtbbZp6pJAzIS4dNJio5SIRgQQEQIA
 BgUCOEVR4AAKCRCWrNRNg2cM0c1qAKCtP5zsLVfZQTruoogvyp25ocJ6sACgsF7c
 v4sg8sPgs4HE3EVogHl1VhmJAJUDBRAyrIvQs1pi61mfMj0BAXblA/0YVeEGvPa2
 JbPb7SBZulwY2fJlt+xWMXqiMYN2ayMkzJYIbDj1dH+88pgglj0Riji3j0YhqNGQ
 hJA02IjPbZ8ECNPa5j1iW+dMn00mV4x8evh3JujugQpgxZaKNDMaOp/abzB/05pq
 h8QrAFfqfFxFsqzGb8FUspzMZiXde2ORy4kAlQMFEDQN8X31FVv7jlQtXQEBxnQE
 AILJ2JJQbVVHRrkMFwd22KfaJkw+wlQ9Gom1a8/pV4jw4Wk1ZDgtboRMC+ffkfFX
 aQJxAzKG3WQwP4oQnPuvxVv3hNLsq1mc2+TYPVdTHwuhyPrF6Xlz8ufOWeensGnV
 dsmPa783MJplDR5gF0/+TtEtgFgdBCWfnHsE66JEk1VTiEYEEBECAAYFAjnufrgA
 CgkQI+eG6b7tlG7qMwCeKE+mmecBnRdF6KTmUNRuf/xMANIAni8Wju9074WOiUlj
 wCBWrvBMtwafiQCVAwUQOe6AHU1WKCF5BQwRAQEBBAP/REth5Qb//1T+a6jvv+Rw
 VayyzlE24W/McZRyL1pXDzbRuRx9wPiMS9yq8kwwozFQZbeHLLJkxSO661W6Fn1t
 LA3+Rn02ooZ8uvrqk1GM6TvlLdzOU/2pOcUkFICu8xTPCSySVjQgFr811YwHYVZK
 1uhessQyqlFROgdQ4lcJo2eIRgQQEQIABgUCOe57PAAKCRBdUhyM5rFQFtNqAKCQ
 iOJTUg+XEzw4kJT6GrBjmb1MNQCdHo/p1MhqvDg8W5f2yEVWsshuvvSIRgQQEQIA
 BgUCOe6DBQAKCRAgFTHVhF3+3ScPAJ9XLuCarFLgNYtc5XuT2jN0nLq5GwCfXwmK
 wiwnzbOFlbSITRfBDXnbAVeJAJUDBRA57pqgfEtnbaAOFWMBAV8YBADLjY62KZgj
 XJyLSkZtvJzgnKUCzeUAA/mO0i0aQd4QrlU4lvORGX49CzfWpPUoEIz6/slj9IrS
 w5x4+W6/F2wgWneOMKkmkROtrxfkK/JiDF17cC+zA6W4MSZj3WfcZ1Cx5czh1zS7
 KZt4X+AALhlgP9IdoYZ6aYguva44haoyUYhGBBARAgAGBQI57ppjAAoJEML8hqol
 OUaLZC0AoPIjsOAF9TVLJH+n0uWKzSiQ6tPrAJ4+fHCwBQbZ+HcjeP5yNaWsxlZ3
 S4kAlQMFEDnumqzW4KH+T74q3QEBZvsEALkknigcjnZcLz4q86YQIPSwinmLiEgW
 cggrYVCUC3J246VCaJKcsJF03W2Yhp2MJuFhElcOZEfRSozk3O9QsuaAx+hmB/Ww
 mrQD7Aq7KleNSEoNLeao8vB1VlWVRSWjmtwtDj7kLo0DwJQPwr7RbsrkTKMC/DXr
 evAR8Q+V37bEiEYEEBECAAYFAjxI8Y4ACgkQDJkTa5SHS1Q7ogCgk/vN0Ojp2f5r
 vJSCuMXnfbwMQcAAn3h3QmTwBFLyExCGnRqGgkiyJNtOtBNKb25hdGhhbiBNLiBC
 cmVzbGVyiQCVAwUQMbYtYQHbXdKX5jjdAQHEHwP/fEaQoTi7zKD1U/5kW2YPIBUy
 MTpLiO9QOr4stYjJvhHh4EjwfGvMIhbFrPKtxSNH1s3m4jAXKXiQBDCz17IIzL4n
 8dlunxNGE5MHcsmpWzggyIg4zbPqPOcg4gLFEWsEkr2o0akwzIGa3tbCvC+ITaX/
 rdlWV1jaQjTqSNyPZBOIPwMFEDSH/lx4tXKgazltbxECmXgAoLaWM3SvE67viXkq
 S2MMO8UHqG1MAKCsCyhLvqh9cmQDKs8hwJ6MBzoRPYhGBBARAgAGBQI57ns/AAoJ
 EF1SHIzmsVAWAxoAoMaEEZ9kUqSwFm6sPsslETsnrHy6AKDgNz2bZ8N+X8MGwFZh
 vuLIlymSHYhGBBARAgAGBQI57oLRAAoJECAVMdWEXf7dc9YAn3hfo8kvuWZA2YuT
 BE6mPp0DKY9pAKCFzsfQRhqdZhPaK5MqochPkd3Mq4kAlQMFEDnumqV8S2dtoA4V
 YwEB0JID/0r92+qOLTZns+hFzAfi1vdqJ7nSNsG8ESIVMq4wVNVUf+b0A+5pNLAY
 ZgrQjL8CbgQT1h03uvvudmMwNY7nhRKYbkdtwIOUId+9XCLkepo0aScRhL4esuSC
 jcWI+MgSzZxJeyqsavoCx5L+rLe1l1s1+vvazq8liQeSyXlcU1VwiEYEEBECAAYF
 AjnummUACgkQwvyGqiU5Rou3UQCeLAOGkBiAovJemwQx0gTc3qhxdoYAnj+x/ACW
 iaekxgwmyTmG0lLxFnuBiQCVAwUQOe6ardbgof5PvirdAQFRUgQAstd65wbZWxGF
 VDmMVmJNR62SZGburDLq8SvX/vvjoac6/2zBg/u6sZaji7DJCcAto8MCKj6pbvq3
 fTZdfwve52XhDk6EMM50i5Hqc2fPWJYB6JuOjCWyutnTXj9odg8Y1o5cUSuaxsOh
 TGmDXmmyT1vsf7j3FMDDzYuWXAfEWp6IRgQQEQIABgUCPEjxlgAKCRAMmRNrlIdL
 VAYsAJ9R5CD4T/m59oJ5fZDFZBDEqxyAQQCggPB/NYegHZZFqe8UvIwDawvzRp+0
 LkpvbmF0aGFuIE0uIEJyZXNsZXIgPEpvbmF0aGFuLkJyZXNsZXJAVVNpLm5ldD6J
 AJUDBRA123UpAdtd0pfmON0BAVf+A/0SyTU67QKidQE8V1r/YPAq9/2BdBk5seXS
 KyTqQbqe3kkpojPwS/SLOGDLKFW1wiP/E6gOu0zCAr6t+T2VOMG6EAfA6gQK/oEP
 Oe/DOxJMNTgBeiV2OgBdj/JO4THFQXFTgAhCz0/zcjzQchuUEQ6DZpbKJCWllP9p
 bOEEgWWZW4g/AwUQNhlqDT1NsS003qvIEQK37wCbB3PS9GfrxsuQ4AkE011KsdYz
 tnkAn1lv/gOBbRuI7cpzaugzUXAXTvaniEYEEBECAAYFAjYJB1kACgkQY0ql2Lpc
 rtK/kgCgsUMJ5Te8teWc5975HtaCbsFBymkAoNl01D0GgAqY2RcVUdm8HwqkB1oI
 iEYEEBECAAYFAjkGAQgACgkQf0/uBDn7eUQ4EQCfQZlhYxtvbvpKk/xxMf8E1uZT
 kW8AnAhzff+mTJ1odLahcdnZj3RCLog6iD8DBRA2ikVNsmH2M6yqReURAvvgAKDm
 eL5BkG+s9r7u4EynZlHsLsZ8RwCcC9556M1OwODG8ONZ1G1ylBSeBUSJAJUDBRA5
 7oAxTVYoIXkFDBEBAfM1A/9RzuGwZkpx7fusQBmiLkDdNuLq3bNqWRdpEsrBB6qH
 YxZgQ2egYS1UNLPkISVHd2aJjLnaE53pq1fEMig3wnhnIGkHdb9w9HPIbFklOej2
 0VJEocEc46pPxa3gx8SK696JDoXS0dWiYHX77Do/ro73U5hJJWeIZnXNufKsE4BG
 u4hGBBARAgAGBQI57ns/AAoJEF1SHIzmsVAWB+4AoOrr1fhnul1zpfTLn/iN/n1K
 jWl0AKDHMaBsSOUgNPueiB7HNZt1aqZhiohGBBARAgAGBQI57oMIAAoJECAVMdWE
 Xf7dbB4AoI3GO8yAvh0uF66bD9B+NlHpUal3AKCGaHKa0Q5j1EZBFI+4bSney4Pw
 qIkAlQMFEDnumqV8S2dtoA4VYwEB8zcEAKpk/Dz50tcyMH5Rf6fsqOJEEavuWiIT
 ghf3qyI99E5L7gi1Tiy2aJmLbgbKK2p2uSMoV3H+p9dGEaVpCIxHrAn77iljw3uX
 9M/5jhO8dcDOxXBbDTUEYkGHe2oU3af+/JbyX8a4jQLLHQtQmW/9j5H/QKQC4IVT
 +wEQAQpqGG7LiEYEEBECAAYFAjnummUACgkQwvyGqiU5RotGwACfezC2rPY51SLA
 SP5vQrMpQVkYvbcAoIYINz1Bpz9OXuyHpi4AqaDnR58RiQCVAwUQOe6ardbgof5P
 virdAQFfWQP8C+ciH9S5Zm0parEgVPGjn3/uBCOJuz8aiiCY7SaFZxjcjRdHU1m4
 rNqwmPlsMZlqrqo7JRJOQ76cCW0jSscicqCfeKWuc8RhtIxjPL3C80l3WMrSS5Qf
 cq8nXga6FFOx8XQgS/gBLcqSb1RM1Jf46WlgAOMU8i8CSjEjHV2zn02IRgQQEQIA
 BgUCPEjxlgAKCRAMmRNrlIdLVDRTAKCHydMKzwB7GwbQJiGmYl2kQOwdRwCeIgjs
 m13E8ArGGqGUkA6SuQqv0Gm0IUpvbmF0aGFuIE0uIEJyZXNsZXIgPGptYkBGcmIu
 R09WPokAlQMFEDWiXnxlYKmsNPn51QEBzcMD/3UZQwz2npbOtOvX3tJmmiPS6zyN
 0lzCWUiKYrK2wGEVnqXbsDD67eH7yRPHfrRPlQOSa+UC9ssNYwzI7qcTqDruDcMp
 Sn9jH40fhl2YGli9wcPoNy4B6uKXd9N/AgOiQTDEn4xs4C/NlG1o93lU3QCY5SXG
 xAKWyCtePWVY6BrGiD8DBRA0h/51eLVyoGs5bW8RAtMpAJ487dbxFRAtp/MptpJC
 6PBxXBvKsACg1EIMJZw9fB2Te+bKPT53vnxjt6q0JUpvbmF0aGFuIE0uIEJyZXNs
 ZXIgPGptYkBCcmVzbGVyLm9yZz6JAJUDBRA7OHatAdtd0pfmON0BAaNEA/9VjhJZ
 kBrKgKtuLzzLcPnMVWDM41ZCyCCy7brN01DTLwaEVpl966PRqt+uOs3onanWI3wG
 /EP95akELBsrgcwG58huk7PjVNYNaCrJYMiSKY95bGxYUGXInU9mH1dSzvksZ6iR
 pX25BMHqkEMHAxahVagzguPetlTIHxHGRSH3lg==
 =ttzj
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.31. Christian Bru:ffer <brueffer@FreeBSD.org>

 pub  1024D/A0ED982D 2002-10-14 Christian Brueffer <chris@unixpages.org>
      Key fingerprint = A5C8 2099 19FF AACA F41B  B29B 6C76 178C A0ED 982D
 uid                            Christian Brueffer <brueffer@hitnet.rwth-aachen.de>
 uid                            Christian Brueffer <brueffer@FreeBSD.org>
 sub  4096g/1DCC100F 2002-10-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 B7mWxE+O/VwCRKNHOACfYuq+wytbP9pFJkZQwX1rW0lWgvuIRgQTEQIABgUCPxVe
 hQAKCRDwI/gLJoQdW+9AAJ9VvvZW5R7ppcZfYrJ1SZChveCnvQCfR2sWHPSbzGrp
 sii0DbkB3x4GE6GIRgQTEQIABgUCPxWL9AAKCRBTtrgdwTzuB+GUAJ4yxAtvBEqG
 tDKsySqR2Ywv7xcRzwCfRQBmGdzar/OeLVHUziwduAoeShWIRgQTEQIABgUCPxPz
 IQAKCRBL7yYkIt9Ah2GWAJ4kpQG83TGrnIR0p6Web4T1QZjBsACgiBqEfjSGxngU
 cTRrQxx/bs8TX6iIRgQTEQIABgUCPxPzKAAKCRCVZB9rJT5Y45ftAJ9fNjIStddg
 GjgMs3jcGo6oak8QjQCgq4Q7ivzJ2HJUawLk0hOM1p8BT3eIRgQTEQIABgUCPxXW
 bwAKCRBBufToW3E98CEaAKCAodx0EjodNg5VE5AF3oPAVPlZSgCgrIh3fheMXgTy
 32bqzny8BV5yjhSJAdcEEwECAMEFAj8V9CqGFIAAAAAAGgBjc2lnbmF0dXJlLW5v
 dGVzQHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250YWN0
 L3BncC9zaWduaW5ncy9ub3Rlcy5BNUM4MjA5OTE5RkZBQUNBRjQxQkIyOUI2Qzc2
 MTc4Q0EwRUQ5ODJELmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIvY29u
 dGFjdC9wZ3AvcG9saWN5L3YxLjEvAAoJEBmiaAmIOP2URR0IANjcbSgJNDnmGxUg
 lEcaoUk6QEeo9iNa11OJP4+Uv1XXEEbHiyWpvALvzQ6v7Vwhofo2KGLVCTEhZHz7
 MVIl+0c/zbCd7v99iOPySRRN3DhJvqPnD22Kc2KTM7WknZSW2WOKd1fU29vENFr7
 7Z59UPqiB55zbXIobObbJOwu3x/vRNC/5bE4t2H7zLNRxmeNKt3S/ch6odJdCM/B
 lYy0Df2REc2s2EVLcOYsL+RXwWQp33BFt4/YqmGJQUus2nxz6GraY4J925p2S4Y7
 3RcTDcWZTAeexwpxHSw4VmJ5Vupa9Jll/vAdurLUVCDd4Dd1pGJAnsHsLqD5/zdX
 YIxNST2JAQEEExECAMEFAj8V9DuGFIAAAAAAGgBjc2lnbmF0dXJlLW5vdGVzQHBl
 bmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250YWN0L3BncC9z
 aWduaW5ncy9ub3Rlcy5BNUM4MjA5OTE5RkZBQUNBRjQxQkIyOUI2Qzc2MTc4Q0Ew
 RUQ5ODJELmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIvY29udGFjdC9w
 Z3AvcG9saWN5L3YxLjEvAAoJEKseS2BGdWse/3oAn297V8QlgeWSsvqfNYPKpqWp
 OGRhAKCIuuT96Pn38WtlGOBa7zZrECTNvohGBBMRAgAGBQI/E7DoAAoJEOfJ26/j
 Vu/ApXcAn0Czyiw503iLkF53c2qHJ2HUelW7AKDDiDT1zAGHdsdcaH9svMxWOa0l
 dIhGBBMRAgAGBQI/Ft47AAoJEDu/z3e9iwUNnssAoK6lcUf4GkqjwYYqH08P1J+r
 HaJHAJ9c9pAx86VmCaV6wQ26cKLBKUNdgohGBBARAgAGBQI/EaO3AAoJENAZ9e+Q
 J6uIx6UAn11HUO9dUXyAcUXqx8lyaEa20cW7AJ9kMTvSqDHkvci2MhcUkGzjpUv6
 xYhGBBIRAgAGBQI/ERsxAAoJEPS0sMx5fr+r/m0AmwT/dtstpPJs7wEOejhbgGqm
 vc/PAJ9Ynh+eN+noydvRINXMXigzuuoX1YhGBBMRAgAGBQI/F9G0AAoJEJEfSuaG
 oRjmlD0Anj1mLd5E3VlkwvE2/tjgs6fQ7Zy4AJ0Z7vIFQjFnMIGJwhFqYsLbKsy4
 +ohGBBMRAgAGBQI/GE0WAAoJEBp0fkUw4LnYvPgAoIUWj1ZA98QOQqcjUoC2XYom
 fJl+AJ9O71OiZXEgbccf2oQeY0B9mD00IIhGBBMRAgAGBQI/GX6nAAoJEGZmcXrb
 g1Z57xIAoNUVFg9YL70dNJk6t9ktEEjzb2QrAJoCbcLt/dEXOcWXWbY6hDrpkKro
 oohGBBMRAgAGBQI/GX7LAAoJEA2WS2ZXDm3qO3MAniLwLC8Yy9QYRDWNfPNgkOhO
 L9lVAJ9AL3wmTAeNsmupBo6rUaw+gFw4sohGBBMRAgAGBQI/GX74AAoJEE4CrK4d
 1rOArlMAn31ZFiAi9SPYMbK4MUgJjmVvF0znAKCPp7dwDl1Xi4hTigwPlgC+aqvF
 o4hGBBMRAgAGBQI/GNSkAAoJEM6KedeYAW3H84gAnAu3PMqTcX+JptdB37ZOmijC
 gihkAJ9ENGWYLfe60LF5xG8/57lUSswxQIhGBBMRAgAGBQI/GvN1AAoJECyYPlrS
 ilXWFAUAoNEZuH54IwKv3HKqwdTb5DL08dJvAKCVsuNiCCrAadVPkmIPOHcC7Xpm
 lIhGBBMRAgAGBQI/HE8FAAoJEHFe1qB+e4rJehgAn12rQA8HsCAuMgIlZfE4HtGe
 atjYAJ9ceEBHVmJxsAF3FcCr38hxW2PwfohGBBARAgAGBQI/FbTNAAoJECole3fG
 NyjSnukAn3LkrAAgqj9XTzCauqMRDJwY0EN+AJ4pUAViilJ4+l0xkiB8G6w9zBVj
 mohGBBIRAgAGBQI/HGcmAAoJEMgPdFmtwp7NMGIAnRZpcoAfoNrvzFIoGcY2d1fu
 9GTSAJ92cH6IuV1sargAc0JD/vUrzQpfp4hGBBARAgAGBQI/HanrAAoJEIsCZlm2
 jV9/Sf8AoMAQDmyuP/iKKZERTcP02ZCXv3JHAKDcHVMd7wFzEZ9qNnJuUEAQ6ovZ
 uohGBBMRAgAGBQI/HasEAAoJEN56r26UwJx/7UEAoMz4FRCmX3fCjNNDk0gmwLYQ
 c40RAKDjnf8D9EUTbvCCJvxQ+O7kEYnnM4hGBBARAgAGBQI/HaguAAoJECjdsP0Z
 yba6H7MAnAvGz3+gipApA92/b+SK1uVpFGwsAJ9yH+kNzOTDXwo175VGLAmURBWO
 LYiOBBMRAgBOBQI/FzFmRxpodHRwOi8vd3d3Lm1hdGhlbWF0aWsudW5pLWJpZWxl
 ZmVsZC5kZS9+bW11dHovc2lnbi1wb2xpY3ktMjAwMy0wNy5odG1sAAoJEN6Fg/i9
 v+g45T0AoMBLmZPru2CgFojMenlKza7YIMThAKC4Wiu1jnPKUwLOp5/MB2MvmHx/
 RohGBBMRAgAGBQI/HsRyAAoJEPhZkLAkiutz3TAAniyoHpHInn/2jUtEPN3jGkCN
 6pD5AJwKClQwZX+WmC4aX+jzP1zamQa4G4hGBBARAgAGBQI/HoSMAAoJEG8ji8JP
 2loMBSwAnAvu0OawaAa/YM3/4qajHNr+X2JnAKCGtUpISQdh/E/IrZ7edx/qUnE6
 +ohGBBMRAgAGBQI/Hvd7AAoJEDPN5fiITHpBKh8AoLE1re+oa04pjBTtTf3/36Nl
 gcaSAJ0QbazVwe0lBE8ETg50Kg49prwSdIhGBBMRAgAGBQI/HuFUAAoJEJSbJewH
 RHJSjP0Anje106ckc1DIxXY1P5fBawny3A6qAKChKf9GrwfT4n8KhfofgMVIO43M
 gohGBBIRAgAGBQI/Hw1YAAoJEOdNKbgr4W0BL6oAnRnMjBLoSTryzhH9RbgEvzqP
 b5TNAKCNwTLxRmyFK0ggzoWc54Dj7vecOIhGBBIRAgAGBQI/I5jRAAoJEBigzI1X
 BqS0aykAoM97S+RAuCp1fMZwVTKxpeRmaB7wAKCoq/P79PiPTdc1Dx+jXWsZJuE4
 IohGBBMRAgAGBQI/JXRrAAoJEPK1Kl0KX7aHiREAoJCYlW13RsXkN2h9+wnnxfxH
 NCm4AJ48N1o5SqnLkoH1RbaGNSCLzemZaYhGBBMRAgAGBQI/JuGpAAoJEIkhtdzN
 FaiDH+cAnRQdXLaRinzhypYKixILJ/kqbM1FAKCD71d5zuec12xpIdpTIGSHS//X
 p4hGBBMRAgAGBQI/JuG0AAoJEAcXdOAA2M0W5HAAn2nCP4ChajePMo13UgUhBAdj
 WEDcAJ9OxZ8RWnV4/woi4cJzI8ecYdZKW4iNBBMRAgBNBQI/J8icRhpodHRwOi8v
 d3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlzaWdu
 aW5nLnZlcjEuMC50eHQACgkQpHnNxFq0YGqQqwCgmC3Bor+yZOdWCVMPcU4UJwme
 4nwAn1ogianeyFlIdSmXdVyAKZCI8yDoiQFjBBMBAgBNBQI/J8inRhpodHRwOi8v
 d3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlzaWdu
 aW5nLnZlcjEuMC50eHQACgkQ+Xz54zpLf10zZgf/USp4QHtIfkjZzwcTZ9A8ZshL
 o2F/+u2E+rs83afTmFHPZWVQeQOakPceaQXkHq99yVERNTr2btJs17LroQDg/DRT
 spuMOnWpU1HqiaFDsHXJi0/An2aDg51nEDzzdiH/aIL2B9rQAk8ZkdaOEns1VwdI
 7pr5gBW3DGwIwMxkIU5bagzuTYe/DYqwQr1WJgdh30IaX3N/u/7rLnGCkkuoTnPJ
 pSLHBdnWCnXvS3zj7Ky22Xi2YdQSGxqvMHvaPp2vvwUFLC/plnyZFi8SpEptncFY
 gohdU+awfkZMLWs2lJ1uQmb6Ce3Miw3k3DYVrGsKSF+S0cEfCyprlPjPG8e3oIiN
 BBMRAgBNBQI/J8iyRhpodHRwOi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlw
 dG8va2V5c2lnbmluZy9rZXlzaWduaW5nLnZlcjEuMC50eHQACgkQeQV2j3WE9dg3
 qgCgkNm7eLMfVxKfRmxc4KAYg2Z09W4AnRSC551xVi3FQAiT1MK4AtAzsP/FiEYE
 ExECAAYFAj8nyMIACgkQ+dAU8DjJhY390ACePZsJNaxFOT73pg8KEoDXD4UxGMEA
 oNvNIjre4i2MZZbM0Wmhft72hbxXiEYEExECAAYFAj8nyMsACgkQXQ9/SeDknzRW
 xQCg3oqo0keERowG1CDWB61hzWVzZbYAnjz59v8q0it2nMI6bdoW+k5cexb/iJwE
 EwECAAYFAj8nyNUACgkQG7CLvyqSMiUw+gQAmw3DUvljjS//6vm+fqSQoOiNoD1e
 UwCM88Ug3tacEEuI6/mHTghuuvnuJ7Q/PbIxmJEFtNDMCAZV3zto8+FjuoI0DiaB
 u3xdn8qWQOn662XZ6bNvS7eog93fk+Hxk0LWocw0aEu2pVM7FNegRsjzx9qtzkVq
 5ow533SVeHBkqJOIRgQTEQIABgUCPyfKvgAKCRApvl0iaP1Un4bEAKCWhOwKmCW4
 jvrqNdkAE7IQZhe/BwCgiLRIrNBxcRXUj1bSFg78IbgSGjuIRgQSEQIABgUCPyfh
 MgAKCRCfzyzNPz5kJvp5AJ9SNJGpZkQ/6j1+Fmde6tmo3j3APACdFSsB5Ydr1lVo
 JlIx/hzh5cRlzhyIRgQSEQIABgUCPyheRQAKCRCWJIPhVmLHNLs+AJ9E2uMLZOqL
 9YVFPi+b5fw7hijHVwCgnXLQuv8mfVjc+j2Kb5FWmnlptuKIRgQTEQIABgUCPykS
 RAAKCRAC1u0h4yxPS45aAJ91+p06ngZRvjfEXEBLD3P3L+NRyQCgpHNju63uXD4k
 tz+IDW1mB5tKQvSIRgQTEQIABgUCPy5JvwAKCRA5Ig1uDBr/u8XoAJsH1kfPDKp9
 K5QF8+CQMdbRfWsOlwCcCwJvCLfXTlONYE57Ymm14pKrEaWIRgQTEQIABgUCPy6P
 mgAKCRDKDhacKPo4im0HAJ4wFWktr3ddxLyObSvsgTWkvWpIEQCgq+2w2ZcTMaZI
 +9DORKLz3i7XaFKJARwEEAECAAYFAj8wMdwACgkQC3gy83PWLUG+qQgAjlu0+Nuc
 UMGjGsjAzDj91vdQQSY3tnr5xN3Q8ThElsieaTlsktZdu9FBe6yS0acUnQ1TvXlD
 ub+KTpc3AJmG4dlm0EhHtK7Cg8l416jZ+zNFlIitSdY7mZADS8LLVOkjPetpPVol
 R/o1zGrLO3XZhZ8kCWUXI7DyVgz2Y+VleAiD5YkZ0jqEC6JQlbQf2fpyQdqJnCgk
 86oHMAG5u3Ue62mn2OSWBGYGS4FP7Kauap+E8HnRFz0yMPhBXGkxy6juoMz1y9WZ
 CaDlsMZ+4QjRLuj+371oZwNeL5IsadEfiFmgE0pmrF55dzELaUQx+9cmN9d3YCmj
 nijFrYNUWHZKQIkBHAQQAQIABgUCPzAx6gAKCRAZq6/sHbI0q3zSB/4gASNN4W7l
 BSyZ9hbzoRlVoE0UqQr6U6OlOov0fkyGC2v8pYmcz1M1Cbjjq5G68cd+qurDzqzG
 4Qj4ZHI1rSwQFT8T68owL/Z/h2loUn9rpDZEBts2Vx1lUCa05t+b+znFtGjDgZYT
 fhMsd+3GQg3nx5E2rMfnyj+bSlNLzyvtBbZ4KPQshEBvn8YoUtZtnQFGXKiVRULF
 tv/laXPkxA06e8pwFshv9ZcVztM2JrY28bm4AeIxV+lXltXzuRuhaNIQk5HMrQpw
 zOyNqLMmk+AsHV1aO2LcTF6uILyS73/T0cXpnnUXfMooZ7d0au9HCqawssGqL1e0
 EoDj5fTiXx0AiEYEEBECAAYFAj8wMfgACgkQeF8wZf69S9yHpQCfe5VHuI3+Jd3y
 QrO2Y1GdG4JX+38AoPfazoV9u8oHnlT8xFr83Zif6IQFiQIcBBABAgAGBQI/MDIG
 AAoJEHw5el/KZtCx7DMP/2aRTGoRvfamj8ruS+USMF/jDl6/S6AWvsxIziqYOmh+
 fv7CsqJL8h4yvoDcAjQcm9fEOguVhQi7juWU5RsrFHzAjzB8Pts527S7UZlnSKUs
 SZLq6rINSu/LvXjXFDErXyPTQWFPq3k+SPbq9zbYjd9FzHO657rGFGM2zLkLSme1
 zevAtOZZM4nXXb+lZACnMlayETDG62KBGbpEkyCDx20ciBKnc1O0gt80pb6BZvyt
 Feuveqrzjv8llbz0yS8c6WwZCIRSGL+SSk8GMoVAlUnc+n40YzWDqFE2nyhI3OpT
 QuukUPkim6YpyHw7U0kKHv90NNKA8v7/AiI6enBfN0omIiAccr2obWhlhbOt9nS9
 npXvmCDnC2oOjE145GfC+7FdbuTE6dL7tPbuDhZ5vT8tpqV+9Gj9EJK2H6ztMY5r
 ecjgHddf3rbjQXE6PG+/uIoVmjh3Rsmx63clIulEAU8lLwrQbb2CqIcsY/Zl9TBv
 sDOV5iuusLrV27LJHvzxNiMnDI917GBQWlsvj0w2LoTdJDCKgcHCJq3v6SOQsqoP
 n9ijvj2xZGWoRjUTizy3F932aHPMQhyTUVTA87/IxF61jCvcDCy3YUJ6EuHkuF1G
 151efg9w46e8u1+KF38KunEYrwo0sOuU6GU+v79ZFOhgJY12awEulbFn5TGZZ86d
 iEYEEBECAAYFAj8wMhYACgkQlYRRoq3PfpSW5ACfdMKPaOquZzmWviuXWfoMFzAo
 IE8AniVwalnJp5JljCxr1OWr0PaDaKoOiJwEEAECAAYFAj8wMicACgkQ/Uo43Ch2
 DT20JQP+NFxgVD2xrfjN/PCN7ZatwGT4eEe+j7FE4lDYGpYJ830Q57xpxzDfrsGv
 fIDVqQezmdVZoGuOECA09sD/DJ8fVb7HtlUcE3zCMk9nMVfhJAe+JLIZVOkVedWd
 rwbYtx54TqmCYduaP5X/IlMqSa5HL9lsAgTwCZLr7sOt24LAf0qIRgQTEQIABgUC
 Pzal8AAKCRC7xxTRnGfNlrxGAJ4hwZ4KAbBORIrkTlQprQXaTfgf0ACeI47PZfdu
 Mn1iZ7Xg4ejlKigPz2WIRgQTEQIABgUCPzflcgAKCRCAdScAZahB7eQoAJ0SZt2o
 HMBiSE0gbG+hMu2lJ4nrngCgpEtvcDkdvk3/Qy4JEm3fLR7Cpo6IRgQTEQIABgUC
 Pzf4IwAKCRBFwCFHaavdVMhDAJ4rhdl/bKvFlu/ahFADLZTtwR6/3ACeNtWb6fVA
 llBaFCOxSBtaICz5W9mIRgQTEQIABgUCP0konwAKCRCPubcPpM/JbgEmAJ9PIP8H
 bg278jI1avE1N+C9VjFV2ACgmGrFTHsIWGgFfrw7Sqj/vMmrywCIRgQQEQIABgUC
 PzVMUwAKCRBp0qYd4mP81C9HAJ0R3iCefYja6RA+/Cv5F6Wu9alUTQCfW5oZ48dh
 YdoS82hxs4YpaESrFEqIRgQTEQIABgUCP42/OQAKCRB54pxgsAY/569TAJ0aMIZp
 chsYwsi5lJRIF+NuAxSfUACeNC4MqwSQt7Y7ASJaUDvWMfbsF3yIRgQTEQIABgUC
 P42/mgAKCRDGBDxWcgdxN1OOAJ9XMeDw2w6IQsmHJQiSk50HbraJ5gCfZAC78xmU
 cUAq6uadZORzKW/treqIRgQQEQIABgUCP45vGQAKCRAKYuU0N6eRSfzUAJwM7g0P
 CTUtY/jUu7f/1Xd2cXtc6ACghx0WLvVgrMSZtmfEQhTkW/R+/6qJARwEEgECAAYF
 Aj+OYUwACgkQFTlqeTPrBZqT9QgAgkOtXIH8SrLanPSf9REu/P8YAn3B7ko0bwAR
 UFLegLX6ZRPKGw12VZclHFJh8hd2J+0O/2cjbQ2xIC9LOznW76OC4lbT1HxrgWD3
 2eLDtNlzq7FM1xGUdGXM7XuFLozTttgfwormTstmaFllHN4kmGdcwMJRtW8pjP6t
 uLLf7CE6HisrtFK5R+QO+TFEHO+dO748aSoXfO7TT93s6A5MV7YI9oISCBE4rPjP
 B5AdHZQ4L/QIm7qiLSl1PGveqnp10x+cFzNzmQiChtMYIINAuMEuuBxAzrMwS3z4
 cV8+5zqCpRslbEHPhFJyMXkL2ZJOgAcJyLkIxG/9aL2AqbHDSYhGBBIRAgAGBQI/
 j8NxAAoJEMVYWQiVq/UMlL4An280i47DSt+sNxi1OM4cCUpa5i8cAJwJzqUx08nq
 7GMTxEsSPZafQBWO4ohGBBMRAgAGBQI/kCDZAAoJEF7HvjcDzgGe4REAoKFoV63s
 c/My06+doCJycybMf6AjAJ9V+TcIEGkOdByE3+r0Ys4jF911fIhGBBMRAgAGBQI/
 kRkiAAoJEOOmjcqmmNqZMoUAnijL+0qgDAksgXoA3xr3Tk/I4L82AJ0b4TTxGood
 FhRNwGCM93EGIzicB4hGBBIRAgAGBQI/lDULAAoJEJ0IqAztkI1q+OYAnAuqbpE+
 rJLs9+bpc/UsBFj1ghG6AKDGggzTlbJJqSgxaEvYhv6ahfu9SIhGBBMRAgAGBQI/
 lEHkAAoJEIMpe+qmIxHWFlwAn3rI+WFl5+1e5afy1Xx9qLbeOhDQAJ0SokGwXAo1
 0QqhxJ3WGf1jjpYhJ4hGBBERAgAGBQI/lW0DAAoJEJUsViNsp2z0GrYAn0rJEMdQ
 aDRWKPrqdCacx8hDZdjqAKCLNoLPU5GfK20xku1/dNMpxHmvLIhGBBMRAgAGBQI/
 nDGzAAoJEDYCVlOr4LEGS4IAn3PAcXTHD+ulTndaeWCQ0WrmHuKEAJ9HzGp3rPEH
 JfZQd+3UrpWd30dzl4hGBBMRAgAGBQI+NyJlAAoJEG2U2yGkQUVx5K0An1lgdEfX
 UV1yQ+6tuL6akEVsCW1KAJ9AO9JSGybVAti4LF8Wz/VRtueY7IiQBDARAgBQBQI/
 ncHeSR0ATXlzdGVyeSBzaWduaW5nLS0tbm90IHN1cmUgaG93IHRoaXMgaGFwcGVu
 ZWQgKGl0IHdhc24ndCBkb25lIG1hbnVhbGx5KS4ACgkQbZTbIaRBRXHQLwCeK15w
 ST/D72fydZqlVmn/kEx9KFUAnjWmzOsXrlp6d66eqxDBwac2iOIziEYEEBECAAYF
 Aj/MHs0ACgkQoL6dujuIbn2o5QCfRi2oW0yE3L2sc4OTWso1uoWv5ZcAn1/mG+ds
 kC4bAX9qWWJXIQeB7fbiiEYEExECAAYFAj+iix4ACgkQ8vvXZt12fkp93gCg533A
 7EQLLS7C0Jun0O14QhwwPCEAoNrmvM93m/60hKJSRMy/ZG/qaRy4iEYEEBECAAYF
 Aj/TW9kACgkQkdi6ijTVyg2CuACfWPKZQaGJhxec8ZAhelwl/ij1jOUAoLR6i3Ov
 uUSuLVjDDFF/ZndakMCLiEYEExECAAYFAj/TjhoACgkQrxRSXsoHIeblXgCgwDvP
 keczgmorK6z3bU+p39gDsHsAoM7TELHu74vRESjbvdoJkTyrTztPiEYEEBECAAYF
 Aj/TwFEACgkQYb5H+9Ze2NeAEACePETsGDvQX3v0ZWJRSrGqSiDL0HsAn0aobcvD
 mux581zlq3281LYA6cnmiEYEEBECAAYFAj5/IZIACgkQzfT3onTsQylJ3QCcDAYG
 QikUQF4jHn5PJjXQXUgZMSkAn3ZIoX0rA6Y4fGH5rbzELL12wuJviEkEExECAAkF
 Aj/UxMwCBwAACgkQBy76KTKckK4AuQCeJoe/0QQEbco/h5PENyg128pvm9sAnivX
 VaV2x/hTlOIw6qER8fG7z9KqiEYEEBECAAYFAj/XiH0ACgkQNQqtfCuFneOytwCf
 fIhyhSxYlVSOfu078TuT569qRYcAnRlOh3WqMiQzIuTaQi+Agg2ykeE3iEYEEBEC
 AAYFAj/Xcq4ACgkQ9aLWrfOU0PhCnACgj1PXRLZNYXBI4P+Vw4t5wlUCeF4AoMf4
 gUUp1XCfNY5CmAC4CBt1YFUGiEYEEBECAAYFAj/XpgEACgkQ/aHb+2190pFugQCe
 LOn9kYcdItEqoGu4JOc9Ngtoi18AnRo0XHS4rSRelq+oAMHqSLZS8alciEYEExEC
 AAYFAj/Xv9gACgkQcC9qbtgxVkOxSwCeJ3GErMbLA/p6vM4NDYKhorpt17YAoKgO
 967C8mLAwv7/+czvVW7WBupViEYEEBECAAYFAj/XoWEACgkQzCIUKbtGVYKX4ACg
 qPyYzWRc+5JdIlkpmxMUACnCH8cAnRGKXQVG3z7TB32znSiTm63cyJHsiEYEEBEC
 AAYFAj/Yo84ACgkQDq3Sz9XRqj610QCeJEC5udCic5fLfbz9/GAsWyAM680AoILo
 AIJhn1PeJhKqKteTaT5MdPpFiEYEExECAAYFAj/Y37kACgkQJPQmYjmxi4EZDACe
 MA20l3YUKhPghr0wGa7MnteVj5oAn3hU9hlBh4h8GRZqnClnAXG3qDXIiEYEExEC
 AAYFAj/XuFAACgkQ+KSYvZS8wB8izACeMpPY5ZqTUTdUA05qsZ0ErNVm2oQAnjLp
 jG6yPrUmwHvT8O17ltWL8CXHiEYEExECAAYFAj/XvtcACgkQAeqShO1JBbuVQwCe
 JAAMb7eC56pSbWlNhv9xDu4td4EAnjPJmALDSNQFalSSdbxUV4iBWsmDiEYEEBEC
 AAYFAj/XnWwACgkQh11XSMrLwHRnCACghxsOwhJbXBlGXgxvaTPeA1GKM04AoL92
 50nCHy2KZJmxR1Oe4DZTikJoiEwEEBECAAwFAj/XiA0FAwHihQAACgkQdROiNhMQ
 LPW4HQCfUG3UFks3osXfD4hHkFcRoGJyabYAoM6U8m3qVOwTTfJSNnXFqyugz8lD
 iEYEEBECAAYFAj/cWVIACgkQelwNae19I7g7xQCgrtq/h4ozaL3TxqA9D49Odfqk
 cf0An0Ot5vzBp7skl9Bp3sgaWA0RgUThiEYEEBECAAYFAj/d5ncACgkQj73eiy+k
 MR7NqgCfc/X3fbd6U93u2tD2xA6tK2gKz7oAn3rDEur36q90L53IZP5w5mQ2t15w
 iEYEEhECAAYFAj/e/FQACgkQLgAJRlBWnRjPIQCfawWWupHHRIxGwduV2uZxouq1
 kz0An0NxU2dfjJILCfYLYjurG1aObzrdiEYEEhECAAYFAj/fLOcACgkQgzvwJ1ry
 ljDGkQCeKX8Ar3yFXfwq6h6B4KLd+bzhabsAoIOHzTm8/bsOsm7cbYoeXNEBZQnV
 iEYEExECAAYFAj/Y7VgACgkQZzP420x1p2vsZgCcDiGSliKdQP6UUiUca0dzUebE
 qbwAoOmSJ9pWaXD4icy8EUkfusBhj+PPiEYEEhECAAYFAj/vPLkACgkQ3zaE8GN4
 8xviggCg1s0K3hlt6Bw4PliKTEfs3g0EM7kAn0H/+wkWTSa1xErpUZjgl9vKdB/n
 iEYEEhECAAYFAj/vaxsACgkQyQMBxhAreU10HACg2WiblLSaNXyTsQF/zi8CO3Fy
 SNIAnRiR2fTN8iibKASxXQT5gLCRiFc7iEYEExECAAYFAj/wRzAACgkQiwjDDlS8
 cmMR8QCdFLDD1LshZdd9y++AcXXAd8JFYH0An3CkEQYVMD61/ZDPvzW6SBdeJpjd
 iEYEExECAAYFAj/xNU4ACgkQSUvu2wE5EjsiSACglWzNcc+rkv4bWgIW5SLvo83v
 ShYAn0r+cbn67GOxFdm905jxAJM+QAGziEYEEBECAAYFAj/x6dIACgkQvBVic1oT
 sEhgDQCfQIz7/ZmYWGqn2/wm+tSNCU3E3D8AnAjBgX9jyj4T79cXZjhpaVhzSonf
 iEYEEhECAAYFAj/x+gEACgkQCY7iyqpOgLYWBgCfWtVXlPVraUfLDnzlbOMZgXRJ
 k8cAmgKnXNFwReO0Bz60WpJnNGPhsA87iEYEEhECAAYFAj/yEZEACgkQ0+ZxvPFT
 Y6Gi8gCfXeQNg1avmlYbRCr9Ity2kRbVvAoAn0AGrC5XevRxByhpf9/wKv9trCLC
 iEYEEhECAAYFAj/x/nMACgkQifW7lGXJEoUbDQCeLEcBerNwNut03XfWmOg9xodr
 YXIAoK2Dq3KnWWRjENnSgl6s/pRF7SFIiEYEExECAAYFAj/zKTgACgkQEfTEHrP7
 rjNYWACggHYsjpybsAmKHpayy0b11LiDmsQAn3bEIjIFOAfWvCFxToatp1OgnhuR
 iEYEExECAAYFAj/0V/gACgkQ9PcicYLJuilDmACeIgnpFaxO0ZiBBBN1aeiT2V1m
 NxIAnRUPWPJwV7dKd3i3c10WMaSB1s/RiEYEExECAAYFAj/09Y4ACgkQ4Wmz+z2I
 PqDwgACcDmwo5RkikTERrC+6sTJ0uhdbXK0An2YekNp0yrRguk+SzAhROHEoVN8Z
 iEYEExECAAYFAj/1JiIACgkQLst0AlVuMNfGFACfSf4dFqSHOPaaSYRF0ck3fNgu
 jC4An2EKObjjVlVj36gmWLRUrnl0Fw/YiEYEEhECAAYFAj/1sWwACgkQnNo+exDK
 ny15VACg5gem120WJOG3MKHKjbNoVrl3sdAAoIkZQ6kCVkRpyUL3ov3hzO9xjNow
 iEYEEhECAAYFAj/2GVoACgkQKLKVw/RurbsAtACdHa3VY+v+AgtD/Nuvx+DBQxc0
 JJ4AnjNUqkn8WIJ5mS0jRsPEhmJ81VdxiEYEExECAAYFAj/5ow0ACgkQRusmgsje
 DU0XsQCgiXkZfz0DZ8Cgu0nOkd/I2S2LklIAnRaT5vooiSlsvxq3n31OYeafRc7Y
 iEYEExECAAYFAj/8GhIACgkQjO6yWbPCgfQlbQCZAbXll/YNK4GXvxsD/ICWgvVB
 j1MAn3EdI9xHFGIqHIJ6KPn59v1ZOFAhiEYEExECAAYFAkAFrx4ACgkQuQ3Xye1h
 lT26iwCdGEaXzeUFd/X6OOkncdf20Z5cWs4An16X6Ut6+9owKE1iHJHyjBsZplMk
 iEYEExECAAYFAkAGEqYACgkQRCBj41UDsd950QCg2RdqiQ20WSkcWf9T13yIENz4
 /z8An1oJ7q4ls5d9+s2UREP9yh1AkeiJiEYEEhECAAYFAkBCeEgACgkQmHaJYZ7R
 Ab8ekwCgsH2bZTUWGY+HBimDdY4B7asGzMAAoIjsf/izTitOdz4na4+S7PxYo6B0
 iEYEExECAAYFAkBMc2kACgkQr2QksT29OyAF3gCgo85r90z+byzUjM57KXmvESf9
 O68An2+u8+AIWxV9+i1agskqPPFdAOgBiEYEExECAAYFAkBiITcACgkQKljOqlJp
 jp8S/gCfRmCcHfOoEGZUf/ICbOY1VGTZEK0AoJhoFFGHpLQu44Iq6tZJHZs2ODnf
 iEYEEBECAAYFAkEM6rYACgkQXeJJllsDWKL45gCcDJx+4zD0hVXi3ez8BkyXnMfN
 wCoAn1xHtocmnkTag1jl1ke/2Z96litviEYEExECAAYFAkGE4h0ACgkQqy9aWxUl
 aZBj8ACg5EqhFkBmwZ8L7RvOlHuY93Y63DMAn3fcIDDXcOFCBsAQAbIh573SDq6f
 iEYEEhECAAYFAkFA71MACgkQBylq0S4AzzwtcQCggPEERYPfPAEE+z+DvdNPeyVy
 ZjsAnixUDnQ8UUuydV7XIeAVuP1wPrmViEYEExECAAYFAkGEziwACgkQP6DeCKDT
 kWiWVACfanXL546V4NPJI3z1YAqlDlkUy58AnR2YSnfJdQP4STnEPGRP9uwmmMnS
 iEYEEBECAAYFAkFNVNgACgkQSyDnAOeswYdIVgCg0VoGbAdWCETg+AkQsV0dRflg
 6H0AoIHQyhYlKCArNqFiiooRj998Kp7iiEYEExECAAYFAkGaleUACgkQXY6L6fI4
 GtS4QgCfS+eEP/ntPztpxxXJy6+hTcT2WLYAoJv9l0ngKxapQM2e8HV6/uiz46Vs
 iEYEExECAAYFAkHlLtcACgkQ/H2Ek1xrBMkgiACfXIEMqCHfqUxwCDPy44RlfBIS
 8j0AoLcEbVKi9yIm9yXnLLyvSP0avHgmiEYEEBECAAYFAkInm+EACgkQX4f0Vv2/
 Nxy9AgCg0+fWpsicamBgYJM98yx2UCXEBhsAn3sq76QB4Tl/G1tuibRsFXtUJypH
 iEYEExECAAYFAkJZlcwACgkQcBdD8e7nfkWWdgCdFFgUXM5Rww975q3EAHMCZTBI
 uf0AnRJeHh71RmqheKknxhV/BLZQO3NviJwEEAECAAYFAkIcKQQACgkQ5RUoJTMc
 2l0gAAP/SkBt3+QJ9AWv841/a3OXNuoK9tbJ4ZGQhkGYVqgREYT2WhLQcukCbsl7
 hnhj3hIsvFQ2Ibq5OqkDIVFHHIZy8EDNBZpoX5RhzaQMHRkXsf0+zuMR5EpEB+H9
 9AaapTx6mmCqrpCYQbRMDX3qIZx7yfm28v9dGJKT+R8fliXr9Bi0M0NocmlzdGlh
 biBCcnVlZmZlciA8YnJ1ZWZmZXJAaGl0bmV0LnJ3dGgtYWFjaGVuLmRlPohPBBAR
 AgAPBQI9q0EkCAsJCAcDAgEKAAoJEGx2F4yg7Zgt74oAnjGE1c1jdTHTGEYhWgUj
 YeHee0U5AJ9cmeMgr5XSuF6B6H4saaaL8C0yGYhGBBIRAgAGBQI9tHFYAAoJED4s
 35lZGelGshoAoKjcIBjSAQvs7qs1YPobVnCtXk5DAJ4+aucRPTSAjG53Oi3UufOD
 5EMoXYhGBBMRAgAGBQI9tIq7AAoJENSNEHJ4+KjUn5cAn3QIeyeEcztJAG/g0TDn
 O9G4Fti+AJ4oKRxI9s+mC0ZKTLxVGNA/VvSfs4hGBBARAgAGBQI99RB+AAoJEKZa
 JJONqkR/xGEAn2hhwbXcGFeyaAfu8NAIgewXfofyAJ96u5jnfMiUnI5M0IZ85j0p
 CE+enIhGBBMRAgAGBQI99PpZAAoJEN+hCDdk3bohHrcAoJg1hl0wWn36eWkeR3Sz
 7Wl+t2eZAKCmfeJTPxD15DuoRzwTHjgI2LRixIhGBBARAgAGBQI99mhTAAoJEIMf
 ett9H+vdkRIAniOZxKBze0MfDYjUFqpU8Mkmi/2uAKDXtq7qNVR+8BHyZHzO3Rce
 QQzL1ohGBBARAgAGBQI+QCnWAAoJEJWnRNJ6HmtffAMAnRtBAMYtiRm34zmTfkBG
 MhPHNXkYAKDsI4vO3pPN4yHL3zg7Im2Vtt8LOYhGBBMRAgAGBQI+QCWnAAoJEGxG
 8ZwW/bKYHmcAnRaexQEkpH/weZuhhWFd3k4NfcgqAJ9sIjBlBgYfZ4/K0MizocDV
 UYqHb4kBHAQSAQEABgUCPkA0XQAKCRC1rDlKuf8qEQxuB/40ondanrBbsEFNEdnG
 HzOZzxUB1hG0jAomkbO3gv79qiTxizq9t8weQB4fVh0AhZ0KJVxeJr86Z4iPSz46
 1S2IXRyi4VCdhZ0zWtw6s7+cVGF47egcyMOPe4cESgeJn6Macp/vVwbyf44EJ+KX
 9o9Qn0iV2aW/J4bL0fKpV3p8a90LIJtmK2agLk4V3fZMfOPOV+15oytmO4Pmrxum
 fcvgpIA5vfqM0dTL+ZpBIWITMU0e85vl+WPx2zok8xt7Ly84hS+gLnRDwrNKYm7G
 12viTJOUDg9mcfxCOyV7z5EmVjfMzQbinsatgZ9BBK1HjGak7RfCLn5zmF/WXam7
 xF+MiEYEExECAAYFAj5ASuEACgkQlI/WoOEPUC4B9wCfQdt6bD3cg67q6NapMzl8
 tVkvwfkAniHumuOtEoPxjxOiz838H+VvlH34iEYEEBECAAYFAj5ARsgACgkQHI0n
 ZIQ34x8BWQCgnZQ0SvlZny3U7nM6yPIcEiiBUH4AoMWc4PpBTJDQicAXi1sho54z
 wZA/iEYEEBECAAYFAj5AVSkACgkQgGcShyMVr6PzqACg6CVGOLFGtw5Q8sAJ+Ujq
 qOFgJ5cAoLqBYBwb8zBaaqZRYB8OK18U18TZiJwEEwECAAYFAj5AWbgACgkQhqAI
 GyKylR1OggP/bTrJNeOtMd+C0YdFEjOUvaxLRtXP8ga2rVi5b8UwdQSDTHmtq7iE
 +b10Jkgj6eaUhmDyKgknezBIQLRPzu/7aDjM0+3BSPmkW4CTI7UWxECQJwqiCu2R
 AnrduAllRG3z2Zgur87l9zoH+IOguERmIfawU3c+VIt6Fj9euNFOgE2IRgQTEQIA
 BgUCPkCsngAKCRBiSEuPG0iN6omYAKDnbWbx4mPpI69Wor6B6OOaAQTjtACfc/WA
 J38X3O0OENnb/K5IgGL2f6uIRgQTEQIABgUCPkCqFAAKCRCuUcxBI0Z68dlvAKCP
 XIuDufIzJSMMljNAq4nAErw0IgCfRt6GmlkPjnhtid3uaJC4A+iOqyWIRgQTEQIA
 BgUCPkDJGwAKCRDVVqZgiOPvV8CdAJ48OwRI/e2sAAlBxKC9zRFKg6wbVwCfWSCp
 GA2L39tMexAn55CpdKR2K5aIRgQTEQIABgUCPkDglwAKCRA5o8lM/cSo/f/UAJ0Q
 dEZSxgWIIwUE4dneT/oDNtIZrwCfb76Kr9o4RaKQjAaHDlViEeqHt6aIRgQTEQIA
 BgUCPkFU0wAKCRC0deIHurWCKQ5AAKCRN4ozZTbwVoDDKUE8/5gWpPQeQgCgquc4
 oMK47BicU2CzTOwJWCMcq2WITAQQEQIADAUCPkFeMwUDAeEzgAAKCRBPg4y3JqCo
 FlhuAKCO0wWTLknRQLNlwlUa8qk8ES7lmwCg+MdIinFHkKQG4T4NveGx3M2sKBaI
 RgQTEQIABgUCPkGUwgAKCRDwJO+CNVGeqFRuAJ4vbA3s4Bc1BCMAYE+oxtCEvBqQ
 bgCeMDgyFQPET6ZFKZ0cHIeKcJJiHOGIRgQTEQIABgUCPkEW2AAKCRDcNnQ35arL
 NJHYAJ9KKBN4skVd0f9eap/dTZLkEz19jQCgrmFeW1esQbrvvrJfndRDt6DlEN2I
 RgQTEQIABgUCPkFcTwAKCRAHJZTVR7A165/kAJoCAXm2/WMWCnkeSDGueKYBEu6l
 DgCgnJSZhVZvaKwnomv1W1KtlRjl+BWIRgQTEQIABgUCPkFcYwAKCRA/V8xvnmt2
 3/l5AJ41iWNVTfcuWAS8nIzzhYTDVWnPTwCg19SZ3hZXkFlHVks4VLGAAiwPBsiI
 RgQTEQIABgUCPkF10AAKCRBBGPb8lSbpxbM0AJ9zUihZu04IpPRZPSz9LiG2dgHO
 MgCgnrll692/wGopjsYCE8aRzlJuFDiIRgQTEQIABgUCPkFzRQAKCRDQ5Ee9ESjy
 X+dBAJ9OroeixjCx/bDMDoBSCYqB321S1ACeJ2H9NHd3KGXZ8JvMELMvmS/RxgWI
 RgQTEQIABgUCPkFzXQAKCRBrphakwVE7DK/9AJ4kYBvBO0OKLPbjsWBcZ+F7e7sN
 ZACfencb2FyQneCzhX78tjjrWraRIBqIRgQTEQIABgUCPkEMZgAKCRDHON/LNYa6
 cUkHAJoD517olE6O5piUrvw+yoZzF8++4ACfWOCLwyh2DEVl+Y8PZYnCIsB1TvOI
 RgQQEQIABgUCPkF7XwAKCRBueUUCoBl5wB6ZAJ40y6v+9Wr/Me0lEsg4VwhoVW8y
 NgCgj+5cl3eEEX+Ou8vR16ATBdlgnH+IRgQQEQIABgUCPkF7bAAKCRCjGM7Esm5q
 ucvYAJ4ulBIZxcnftwKEhfBzSbGNCJyrpwCfXxX7ISVFgqeqkSESFZW+JHwfipWI
 TAQQEQIADAUCPkDKfgUDAeEzgAAKCRB1E6I2ExAs9SkMAJ9W5y4x0CHyg8GSL0s/
 CUVmJJ6MIQCg0Jw7lN4t3LtFCjScjeDU+IabpmSIRgQTEQIABgUCPkKmEAAKCRBA
 DB62okjOYyvHAJ4zV/6Z+/o2g1z45eEWeGaqqwP/5gCfc7Dfa6RiCQDsGOnWNA5m
 bwAGnMeIRgQTEQIABgUCPkQyqwAKCRCwxLn3mg2CqcvwAJ42iDFNJbmM+g2Ah7hT
 IuBjsey8BACgkCMQxNDIRObSJZD7t1fqO3NdCvOInAQTAQIABgUCPkRPKgAKCRAS
 6T6JP9G2tSTaA/44qliNYgOZfKeTRzhDzwX3IRZlVmDX6PhGAHPb1ju/ClUJN+Qs
 i1Meq8qOxJ7EmxWdhVaicvPQuSUP/9zKWBF7xT5DOmBFwruK5TB4azgixsEnqTbn
 E2Ueqqba74xTFO2+jfj/9r+rNwYxsprNhh1yKV+oClgoMOg18UiQiYWzxYhGBBAR
 AgAGBQI+RYMeAAoJEFv8diRAZaHa8p4An2BVlKsaa7mOkTfotelp+kStgveQAJ4y
 nhx0QrwelwDFlnMLAb/hJhNwEohGBBMRAgAGBQI+QY9hAAoJEC9KXfQQ64+oVo0A
 n0BHI9vdu8OYdVeI8Nqy4O7w+MJ0AJ9cLRVTXawC0XC45h6LxJ+KqiNrdIhGBBAR
 AgAGBQI+RsZ1AAoJEJ71dopqzj+sNkoAnAgmXXhMgwAtbLhbAhgVOMFlRRUmAJ0X
 Y7tvPh8CFXT6fOb6xf8qozpem4hGBBMRAgAGBQI+RsY3AAoJEOpKzVz2XGjNJgQA
 oKfu2aKW7fSiH5z4ZBrPjqA1moWbAKC4GRKnvliFWw7nqg69xNmffHVu/oicBBMB
 AgAGBQI+Rs/1AAoJEEC/HpEdDdC5rUEEANq8aUuaMlZ1aw6oCTlFDhxSOu+Gpkcx
 grlziYDwKXUjR2OFUZaq/wohbjrJGTGR3DBdOe2NYaTudbFNehl9nfAEAdw1bxTE
 rDuDydm96FSYVh4XpKBCdndNjF5TIyT3miwkCyE/AIvWpa7tJVZzwTfyiPpX+BWW
 jTpu3Hl2rDNFiEYEEBECAAYFAj5Hr40ACgkQagIyDYKgMl6dvgCg47NneegMxMG7
 biK/VPBZDwP1YfEAoLxxEAkHSDkeNBg+lkmB+HlbJaiAiEYEEBECAAYFAj5H0HgA
 CgkQEMun3/wGpS2VhACgypTumsugt1rogDj6n9vS403AesoAn3f5F9gcRmo5x5iJ
 WRQGkyqDn9e6iEYEExECAAYFAj5IZ7wACgkQmpTNb38U76Q0gACeMWM0+Zlma8mL
 sVBYvy+sFl24pegAoICrdVi0Vp0d1S8PlhnLfVBmJkMOiEYEExECAAYFAj5IaTEA
 CgkQv7s1Bo4lI/3jBwCfWhLWZlO1s087n/FfB4pC1v4/n5UAn1zTvthQ8iEaXlGb
 97ycKkGRTq80iEYEExECAAYFAj5JZJ4ACgkQ3uEZ6Jp2yaN5hwCfVmppO2o1alnw
 VuglKbdXjOE1rpgAoJwOiXq5tuE4pSjdbQi/b+8/YMLgiEYEExECAAYFAj5PlXUA
 CgkQcieKIj7SkS4XSACfWqEMG5JG2di4ScIs4bBuTC/i7ZUAoI5f3vVGq2ZgjoCg
 ZT0GNuCT8yFbiEkEExECAAkFAj7wz8YCBwAACgkQDbEkl9DbWrZlIACfQst10m5i
 3W/Zw1IhTGymFHr5lz0An3+3+EQGY4rktVDTvAkI+GOp/qJ8iEYEEhECAAYFAj8I
 RKsACgkQnIUccvEtoGVYnwCdHtQFnSIRNHApNkvDCTXjaBvlvgkAnjwDaZGVW2cv
 i7HMcnCem6zK0qfIiEYEEBECAAYFAj8QVQkACgkQ1vr63ZUvP/+6cwCg8MI1AMI7
 aWXiVHhsevxtmKb8K8UAoIfduASaeW1jfkIQJjKvnSAJCUOfiQEcBBMBAQAGBQI/
 EH+ZAAoJEEAGFQ5ACertyh4H/jpXvk+I6jjf6yoHT76hbi7X22fBJoacEJDQr+W3
 qESSANtS0QS2ha8e6sIMXvoZb9lCDdGMOOf8v7+h58kpwVzCrwP6bvk5HboORULF
 bP+AQnzuWIY5I7URtFviqbZDUtcTnUine5Bnr9EgE+IsT04G4Bdra2tTF8NywrWn
 zB7L8KW5fgGEjx8FuCMl3xhHKLVGTAFbGEUG0p7bIcszKmL9skXZfOR2BBwOei2r
 PcUkFhVrAFnbYZDOzH0dOU9XNyYC/sciS1uRunhJgbvhlEy/3/z8B+REOTO6SoOW
 ShQmVpHF1L+RM2vbgaA7n4Lm1M0fD1cuFFeecOCxr5WbyB+IRgQTEQIABgUCPw2/
 zwAKCRB8IsOfgHrFOjHXAKCQMiaglcYaiOJzpMlWsI2g9OUSLgCeMxJubKw4zbte
 Ay0EwHn1XOzDkt+IRgQTEQIABgUCPw6kqgAKCRBN/6N0Q4ZdAd8kAJwPB1+MBBya
 +I6+FZBA0F6+hwH8nQCgu8br/qRVO/37nWKXcBrdovqMrymIRgQTEQIABgUCPxAe
 SAAKCRDhhSLXfHEry8HKAJ4j5xQM6HBjgGS2m6QGiUmNR5dOqQCePZXu5A6YWe8x
 eXbi8r6vPwhaFtyIRgQTEQIABgUCPxAotQAKCRCzNNMIli/S3necAKD6pZHPYzJR
 QCvCthKRLehSscHijwCgynfSZuATXmj4Dw9ujUs0LwCCoJWIRgQTEQIABgUCPxD7
 LAAKCRDFwMXHIY0Y12OOAKDx2DUpUt1R3qsn3sVmLb213OiBbQCdFT21Q5ZVNjyi
 0Du0TF4s9HcqnKuIRgQTEQIABgUCPxFJLAAKCRDqIZlBJHfK+O94AJ9Jhf6DOhk6
 SNTMc3vcxW6oja7gVgCdESo1tGfX5eNioP1a78vlE9Td+92IRgQTEQIABgUCPxFc
 uAAKCRAZ/tg84r6jQV0gAJ4nGDM3FYzIfwc7/OWNGgt/Jnky9ACgr+5vwUI2+s3m
 H0mM7oAGKxXzg5iJARwEEAECAAYFAj8RQWYACgkQCen5CopyTkUtQgf6AzTMbzqi
 7dNRiblJ+3p4r993zSDGeiPMeS6iM62Ab6yGHbCJWDXS3N/AV3AY31H9zg1kfnYb
 hUmIpKnoML1V5vXND2+a0feC8eg6YaFUzATZbA1LJxQgsukEoGPjUutuzHrdTUme
 aWEvcEjrqjit32/r2/Ii72IJLp46EUHT3arMe86yyH/ui/SO/kNUe78rgM6QmKOf
 KVImKee+0lsU8y+H/v+81YUgxXqFjjpIW1MxFLtuinug53dOYworXhOLKUFg7JOn
 Y1OWxdNNLmjP5+hCDvEJeFobKUJeneFJHBzq/x+YJdqrcwRpdP76W4Oy1uZJMTNy
 T7kr7VzxhgIie4hGBBARAgAGBQI/EScQAAoJEPVrJqOmOZ5zDWAAn18TasWrwIRv
 55y1GIsgYByCbytNAJ97Mi2X1jbcQ9Glyl3GQPd0a6teKohGBBMRAgAGBQI/El8f
 AAoJEKCQ+9OXGZ/DEBgAn3J/H+TnOg/+twcFz6qlzvTMx3sfAJ4g2GwIEU4QslyL
 S6OLz3JUgyphFIhGBBMRAgAGBQI/Eo7MAAoJEFZtNizuCXfoIZcAoJmG/mmltkyw
 EK8fHmc0EV6gyRd9AJ42LmhI63aCOjf1th67+LqsHaZg44hGBBMRAgAGBQI/EpRG
 AAoJEI+5mXFO6zHxsV8AniK2jiSurdSQWdixPZoV2eUXulpGAKCYrtNkuLP4s5Ej
 cx+54hmyhyRKqYhGBBARAgAGBQI/ErtgAAoJEEbMXGPzGKVqeVQAoIc5qKO5Q6GE
 vLUe8dFWWjoPZn2YAJ9LBBPFsQxIGavFNMCtEfaVGICOUohGBBARAgAGBQI/Eo1F
 AAoJENQ8swWV/so0wwYAoL0ynA9cDZlRVk1WKRCx0U3MWsmVAKDDkTQxbcVhx4Y4
 wNPp/9+bLQbcRYhGBBIRAgAGBQI/EvroAAoJEL9BWVtzcqKlDjcAn07iDymtatbZ
 1A4lzxgP9J+LUNKBAKCBmNvdGEgB3NStaioG1ykK38WJ64hGBBMRAgAGBQI/ExEL
 AAoJELmCy9XA4x8d2ekAniL9GJ18995gauA8HIZfGs1+AHBEAJ9x4by7OYz6s1p4
 X58cYM5EJqRVJ4icBBMBAgAGBQI/EyqtAAoJELRrkjttir5xQ1UD/3qEX2rdoUfy
 BnnicW1Wlj9xCzi8tjpeawzjf2lSKW4UlwfSoZvPBTTnyp9gVrtWKI+Ore9pdCQq
 qOzbAAjEJIjiWRkRNRSyj401W7nEB0v0cUsxdyh3ajScAdZsG86OpqmLHIPZg2TQ
 hdFiBJAI0jRQ6haTY7Vc+3C4kgF4jfKriEYEEhECAAYFAj8TLaEACgkQNfZhfFE6
 79kzhwCcCcGP7VtaWt+vXh8i2p9QdJLXFwwAmgMz496wZkvq6AtXvPc3rv4dKRJe
 iEYEExECAAYFAj8S58QACgkQklW9n+aETbkOtwCgiV7F6uPAkVhyniYK47lrplJp
 WUMAnRrc7filMie3WQ6KoIYMc58AFUneiEYEEBECAAYFAj8TQ5YACgkQrews0RqV
 N+eIFQCfZv0mqPt9yfoTIf0iEHFL7+nRIHUAoJHd2euw2J6ivJXwDnYTJQvg17FW
 iJwEEAECAAYFAj8TXYUACgkQ722CQfCBGV0MxgQAo/5lTYhqACyuXP6o1yZBTBOL
 yOB5jQ4hXSJEefy0P0iIwZGFOxXE1BVfgA272XqgU2wByxFe8BPMrkNdlgoxmgpo
 /H1nvcUMINwFbixM3loOgy4NpDSxfg3/i4wrSn6flqJ0X/aNDlUcwaxRyo0XVX8J
 WxDPob7rLd/tMjgshZeIRgQTEQIABgUCPxGixQAKCRAoxvVrgXw1aF/WAKCuLcvb
 sIDc/yIOJ4L/PwetJqz65wCgv14ZUzkr2byfbxWqB0x9Pe8Z4ZyIRgQTEQIABgUC
 PxQjDwAKCRBRrPatdb6Al1zHAJ9HRP0Qei3JEyXz4WwigmOCxGzCLgCdEz0mS8ca
 K0YGTruexNKnVz4c3S+IRgQTEQIABgUCPxRZoQAKCRCELNt6RHeeGJgJAJ0eBH2p
 BiN/er2jDaR65lwk7GHsMACfXCSInkBPdcRrmDx4qjBVMPh7c0SIRgQTEQIABgUC
 PxRSGQAKCRBYKVdQBQCDi0/PAKCUqyyZnTffFI0Cc6XXIxLcSc+l5QCgyKOzD0UP
 F3LyejZLMXoE6HNHsJaIRgQQEQIABgUCPxRgnAAKCRB3+BUzuw7oxx3MAKCRkneT
 Fl4GmlPR9PimSByE28Z/WwCghDzNUCmnkgwl67jbtpZAJNuSPcmIRgQSEQIABgUC
 PxUOmwAKCRDVTq5LyZhwsf6bAJ9P7azN7qGk4buXQ7CIhQ3a2pHb7ACeJSF9Qdn2
 8nkdMM7G6u8jb96wBaKIRgQQEQIABgUCPxUqvwAKCRCJzUshYHVZ5tNZAKCwYW7A
 KNF1Jl5WF8YrLZdQXqfmIQCglwELvUiyJWOMzPqFR0YPx0n1u5qIRgQTEQIABgUC
 PxUq+QAKCRDTW7yZvH0CCpsoAJsHOkTbpuzsvGTvNrrYNPSwXAhvkQCeNinhCKOS
 jjiIUbUIHDsOz8sIAYCIRgQTEQIABgUCPxVegwAKCRCe0HjvSzoTXCvGAJ9w31Zv
 azal4I/N1CX9sOu/2R/ABgCeMyo5M0vG06uLFkVKidTP0t838QOIRgQTEQIABgUC
 PxVehQAKCRDwI/gLJoQdWzvhAJ90ieEwIPKGXlPEmCnLlaCfGAhpCgCg9H/SGzS4
 V+jAaEqmSIvltHTf/c+IRgQTEQIABgUCPxWL+QAKCRBTtrgdwTzuByH/AJ9S0n5U
 egb5DNIUMt05ImWfQ+uWEQCfTRu3SC9Yn/YGW18W65mSeoGEkqmIRgQTEQIABgUC
 PxPzIgAKCRBL7yYkIt9Ah08pAJwMs9tctTxNv/QGhPmlonaQ6ugxcACfcTmKFWST
 9tpWQGJYMdPIymVW3+SIRgQTEQIABgUCPxPzKQAKCRCVZB9rJT5Y4xYwAJsEa4Zi
 Ib+DJ3f1K3KX7ofvADBQ7ACgkAR1nIokfD6rFzMhfWGCIfmgXU2IRgQTEQIABgUC
 PxXWdAAKCRBBufToW3E98CnFAKCH+yj3Fo+mwbSpXoHJmDk9pd+BfQCfXgANpSPQ
 qib0Wtteoo2PPtgiMi2JAdcEEwECAMEFAj8V9DCGFIAAAAAAGgBjc2lnbmF0dXJl
 LW5vdGVzQHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250
 YWN0L3BncC9zaWduaW5ncy9ub3Rlcy5BNUM4MjA5OTE5RkZBQUNBRjQxQkIyOUI2
 Qzc2MTc4Q0EwRUQ5ODJELmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIv
 Y29udGFjdC9wZ3AvcG9saWN5L3YxLjEvAAoJEBmiaAmIOP2UEw0H/RVZqajm10VQ
 cFpumvPC/qvWRIxZdQASPdMGKAASqPnrNQmfqHo/3rnU3BoquWWlZikwn22BGkuR
 aytvAI+AAyrrkA3R5HgwlIgtCQpTzljJPVEOA261BDlXLvttZipW6DvjZ8+s7QWW
 fKZYwbRCm5mcri1JQAmxtjZkK3E1K7yfDL7onLrHDx6H1d0njgN1j5K/82m3e6eF
 YOoi0Qpq17yH1HggGXx04rGgn9yaBOTmP0fJPsfnzWo4+GIfmQjfG0rrJhdakRgW
 a1JO4aI+goaxu6KSTFhpOnd2Rw34bkQICL6jZC6G4MtVSao0IsVtNiP1YcBbv2Bs
 0ueQduyvaJiJAQEEExECAMEFAj8V9D2GFIAAAAAAGgBjc2lnbmF0dXJlLW5vdGVz
 QHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250YWN0L3Bn
 cC9zaWduaW5ncy9ub3Rlcy5BNUM4MjA5OTE5RkZBQUNBRjQxQkIyOUI2Qzc2MTc4
 Q0EwRUQ5ODJELmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIvY29udGFj
 dC9wZ3AvcG9saWN5L3YxLjEvAAoJEKseS2BGdWseZeQAoIz9KlFMtajFGHN2dxGK
 sG6mO3oCAJ0X8Z4DETXm/K8ILQ1Z/pP4RodIP4hGBBMRAgAGBQI/E7DrAAoJEOfJ
 26/jVu/Aw+4AoO4wBXNHbVE/rPsMbKPufe7Ec31YAJ4/1ioDRk5fR5TEb+vvXSW8
 nofiqohGBBMRAgAGBQI/Ft48AAoJEDu/z3e9iwUNDfQAn2WxsohG5n9Aq43Ct95k
 koqBFturAJ9+96R3ERPGKh9swWnJ9rBlkUFGZ4hGBBARAgAGBQI/EaO6AAoJENAZ
 9e+QJ6uI8fYAn2tnCEZv5HogN3Abkr0XrmYL+7KPAJ9H4zrNiI2xha68apWA5qlV
 LqyHPohGBBIRAgAGBQI/ERszAAoJEPS0sMx5fr+r7kYAnRw1oK6hqhlDWUHxmPRW
 VbnYP5NxAJ9GDLHgyWasYFj4rFsBHleIAmu+yYhGBBMRAgAGBQI/GE0WAAoJEBp0
 fkUw4LnYihIAoMSxOoAUqwrOSZZfAT1PN5tnh7X6AJ4pe0/QNg+zIB9/mvZAJbvg
 bSHfsIhGBBMRAgAGBQI/GX6qAAoJEGZmcXrbg1Z5GsoAoNPTcGZB/zlLarfBlJdN
 cyTkaTN+AKDAj9c7kZqVwQRvfgO19viKFqOuEIhGBBMRAgAGBQI/GX7NAAoJEA2W
 S2ZXDm3qNhcAn16xPNxTE4U9eqCCT26dCf7VqAyzAJ9RT4KTUEUGKseS8f13FzTo
 T1ueoIhGBBMRAgAGBQI/GX76AAoJEE4CrK4d1rOA1O0An1WBdZaCJRIthN1/ymMm
 Q6HnRPotAJ955kGEkWDp8s5SL6NDI0zBBkGvVohGBBMRAgAGBQI/GNSpAAoJEM6K
 edeYAW3H1z4AnjSEKHleKRyOb/kG37ko+eIB9FD2AJ9GQ/q0P754ZtxqaFUiqHAJ
 NHkKI4hGBBMRAgAGBQI/GvN9AAoJECyYPlrSilXWwDYAoKUwfgKjZAsl0coktJZv
 14OHy3tRAJ9VAy9BEUSWIFSaKPsC8WCrs4eXjohGBBMRAgAGBQI/HE8FAAoJEHFe
 1qB+e4rJ2f8AnjihYtaFRbsEwGtuE9C+5wjKZYkEAKCGJ8lgK5447GtFvs9sc0Kk
 OcJyxIhGBBARAgAGBQI/FbTZAAoJECole3fGNyjSTqQAnjzG6RQUZB2fHuOOv97X
 PEUxf6VyAKCAu1JdTxOl7uvOSgzX/l5hhZ9SHYhGBBIRAgAGBQI/HGcoAAoJEMgP
 dFmtwp7NENYAn1wYpBppW2AV2J+LS+4UqyzwUgx+AJ4rmKBgfE8OkM1QHOiYqpy0
 MTkL0YhGBBARAgAGBQI/HanwAAoJEIsCZlm2jV9/1N4AoI19E9A4I1vz5at3XRlR
 EbRDIA+dAKC8ih/vVhLc8dZ49H56mvqPO4ZIjYhGBBMRAgAGBQI/HasHAAoJEN56
 r26UwJx/dQsAnAisenAR0GJXx2M1KEZqOEVN81+IAKDi4FQbYnuBNYkp3mmut5CX
 SSpeKYhGBBARAgAGBQI/HagwAAoJECjdsP0Zyba6/0AAn0j5wJOnIcQfDKStVSoi
 QcKv3qxEAJ47GNt06E1oPDpBFSyHaX0EicKupIiOBBMRAgBOBQI/FzFmRxpodHRw
 Oi8vd3d3Lm1hdGhlbWF0aWsudW5pLWJpZWxlZmVsZC5kZS9+bW11dHovc2lnbi1w
 b2xpY3ktMjAwMy0wNy5odG1sAAoJEN6Fg/i9v+g48LIAoJ9sjzxj49V+IkmTST5q
 N1rn2aueAKDSswvpJjjC4WCe0fCZk8NvnCOLP4hGBBMRAgAGBQI/HsRyAAoJEPhZ
 kLAkiutzRcgAni/Tdya62QESUwbPY192zUnpZCUZAJ4p0eMJaTtAFgfUz6k1s9nx
 B9hHEohGBBARAgAGBQI/HoSRAAoJEG8ji8JP2loMP8UAnRgUejZZNVhjDeuOy3cH
 M8UQ2fNgAKCbpsSxJs6JFR+yS/N9jx8xcWKvyIhGBBMRAgAGBQI/HuFWAAoJEJSb
 JewHRHJS5fIAoIvtsVi2+q1/HNomoog68sSbV3/8AJ9lafbGsCje3wLB59bdpLx6
 bfvcCYhGBBIRAgAGBQI/Hw1dAAoJEOdNKbgr4W0B8hkAoILgUU+r59s3zs7CL83+
 W27m+AxgAJ9gnOZb4OFx0xRKGXWI26XyL6cQFIhGBBIRAgAGBQI/I5jUAAoJEBig
 zI1XBqS0N0wAnA1VvaIzKG9Sx1YRKvtT6Y7kGhjTAKDbqwjDwn0D3Fzf7NYSs2LV
 icJVAIhGBBMRAgAGBQI/JXRuAAoJEPK1Kl0KX7aHFCgAn09gsKJwPCNoEwVSnGy5
 UDc/sVfSAJ9cc/IJ1M0xWIddrgpzP2O5+V+4W4hGBBMRAgAGBQI/JuGsAAoJEIkh
 tdzNFaiDmcQAnRQnqsobCou74MLykzwtmFlZUZbhAJ0dmMVtHYC74K2zt+lJvz49
 /G1YfIhGBBMRAgAGBQI/JuG3AAoJEAcXdOAA2M0WDRAAoILMsRMzn0aCdR/d7TVe
 39qvyzLMAKCpgKEyrjeLLn85zYQt/mEHlJBF+oiNBBMRAgBNBQI/J8ifRhpodHRw
 Oi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlz
 aWduaW5nLnZlcjEuMC50eHQACgkQpHnNxFq0YGrGIQCgpqtvf2JAIBFJj2ZEAjar
 xQHUk8sAnR1PKOzaTtbULulLAfboR5j38Jg+iQFjBBMBAgBNBQI/J8iqRhpodHRw
 Oi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlz
 aWduaW5nLnZlcjEuMC50eHQACgkQ+Xz54zpLf11CkQf+L6ndlBkMOsXAHSRpruI8
 FEip58dRE3PEWCR5Cs3Zj/TrV9mF0pCnbU+5wlfCBz2Ieuj2ddNwI+9kWicCF4Xs
 9avqRAasSO5sUSgpq405nKmNu7KdJEQG33expmPz/AX+agHOwTKpniohjlEa67Qd
 TG2ewcKvmLEQW0LjY0Rq2gRJ4cGFYkSmynOBp6agg6bITiwXPNQZKQ5VafjOQVUR
 tXtQTjInZ8gJGVdkrGD46D5a8yznX/KQU4ZEgRmDb6vl9POybhOihDvszahBfwzs
 c5QBZPHEXCdeCNA3rdCYbaqkxohS+y5PjcYchfO12YOaOB0Gg8SWOnow/M0FFmFc
 FYiNBBMRAgBNBQI/J8i1RhpodHRwOi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9j
 cnlwdG8va2V5c2lnbmluZy9rZXlzaWduaW5nLnZlcjEuMC50eHQACgkQeQV2j3WE
 9dg9VACfcYe3EhS4Nh/EaOlsxtBPfa8k5jUAniNbDyUG3T3TZv9p6fCzIMIoG569
 iEYEExECAAYFAj8nyMUACgkQ+dAU8DjJhY3c5gCfTaZQqM+jRp21JyZUdMM+9lii
 SVIAnA58fijG8f9ytFnVu2v+60w/0cEqiEYEExECAAYFAj8nyM4ACgkQXQ9/SeDk
 nzTt+wCfdlDeiOXOMP5OlGd9mobCgiIbzfcAoOSkTiIY5k/iyi0W1ajOo89HcoaE
 iJwEEwECAAYFAj8nyNgACgkQG7CLvyqSMiV/bAP/TXflvf1U6ypKOg90Kd4++x0s
 0jm0gC+pMsFOedx2G4V7mFdCU5O86MVc+M4J5ztBFR+phYaHTtIfREkgggFCFovP
 lykzZxTDc4FD/qQmLmMvHVjwb0pVYI9zPEcL2U7ZcvZEQog94lRxwcoIhEWFOdvK
 nyjM9KEAsk3yqmAa2fmIRgQTEQIABgUCPyfKwAAKCRApvl0iaP1Un0XaAJ0eKoSA
 oyzjyNbxkxPLqhyptAq0WwCfXd4vilC3Rv2Jy6bITLFqiWLNUAyIRgQSEQIABgUC
 PyfhNQAKCRCfzyzNPz5kJs5vAKCBDTvRUTDkXEedWjYkkRLcyRGY9QCfViuaISw/
 9ypRk755ZGohUNkzqamIRgQSEQIABgUCPyheSQAKCRCWJIPhVmLHNEPbAJ0ea8Dp
 Xtr3VBTWI57Ph1y9S9sXaACeJKs/hNYnEIkOrh4Vv+dSMBhFom2IRgQTEQIABgUC
 PykSSAAKCRAC1u0h4yxPS93SAJkBXNMPqDHBuSJCdvunTRZ6dfHrqwCgnJuM/d4I
 Kque1PwGKAgVr7K/VMSIRgQTEQIABgUCPy5KqwAKCRA5Ig1uDBr/u0+wAKCuQ2qK
 LXzGsqgrONq1Nc/Q4eRJcQCgkrxWXt0TsjDNRZCXZ7phpuQ7mSeIRgQTEQIABgUC
 Py6PmgAKCRDKDhacKPo4iuhHAJ9pftPW+2A+h0pIORtiS1hm6wzYCwCg6gUZjYQz
 N+aMeImP3AJl20vOPnWJARwEEAECAAYFAj8wMXwACgkQC3gy83PWLUEMIgf/avZz
 1HowES/LgWuGufamC94UJckVdAw0DN2O5rxGmgqA5TfqwL0g02rfllJRjIYBPT4M
 uwr50BdVALJ9XLmyGq5Rm6grB4F2HYI04EiU+e38Kr8B5W/rbV2rpEzWYS1bmMbC
 iEDDydGTfaDIgG4Qgghk9JyTIhoCXIwZ+glPaa1HSAhTIcNhJq2LfulcqPVvt+C+
 Zj6A7DgB0OWqccz2+vxMCVYLq7aEVpwcgdPvegYLA1CJ+RiDWKTNkJCWalN9GIzB
 21H8XP1fnIqRlnwhpu9qou374BVO+b5l2aRDRz7WNXDFWK/MsZSpiPicIkmykZBY
 mOC3dMNwgmJrl8Ijg4kBHAQQAQIABgUCPzAxiQAKCRAZq6/sHbI0q+O2B/9k95vb
 VU+jRLlZOW19HGWGOaIFlZ0lS49SPc3GJN5HutFyj0QLQOyR5ttDWgJ9oCdbQZun
 /AoTcaVn1KPV65cmXi0AmUfawDNMsHRA+onlVSUttF6Z9FVRJEr37/r2U1uThIQD
 h6Xv3U+3OFZeCspo0mVWS+lQ+i0c+n3yc6+X+5SIMUOwqe332qTeP/smiGsoN1Gp
 V6TVJlWHDtTPrAPu89C4/b3rokhVATNVoBm5zk/5aotT5hqf2v7t1nKUlWu06iUO
 7VUeeWxyV0+wDnzo9uwDlDCU1PtOu4bSNwCTB2WrUqQLzbD3EIz+9km4ysNWNARb
 Ub8CcRIm8OUq2oCfiEYEEBECAAYFAj8wMZcACgkQeF8wZf69S9wgFwCgh6pV0QC6
 nGUvV5gh6kpq2m86WosAoK9BWccENWzlZPN5FrKAZhsy0phJiQIcBBABAgAGBQI/
 MDGlAAoJEHw5el/KZtCx0PUP/jrWCrxFkGmigxc/+hLB9XwwM/Mx01OopeE+vpx/
 +GUyrGpSsuhYP2Pvhq7VTFsGqOzIWs6pBpm51/zEZ+43RExafIICRTQ5a4J2dRMC
 rgLH2Smlkz766klepK1pNFamixWsWopmtsWZ2YX/91G6U6IPASvLLcV+lFuQEZxC
 kL0GlLk89iOm/Fzyu7r7xG0DOzI4sFdo7W6LQAGhwxTWEqfIpRqTIPH/IYqLeXxE
 gROe6gCGkpSsk7+S2kG8oKmFPd+AWI8LFhHpBL/NksLTW/Vad2lCHejWe4us1nKD
 O0lrIdNgjs0W4+p2y/TFH/pUFiOUbBdEqRvzPPMQaUp5kDAbZbG7Eydg+CKImPMd
 90xMGWRHs7e60m6aMDwmx43eIdTjFsnBuCuGfic3+ydJ9QeL7IGjhT7wWUGQjpas
 hbumPKEjhhphIUJtaJFDC6NOLp7o1DgdlQ806OgU3KzmDM5i6QO3noeRA4en6XHc
 ds/D93quTOXsw9Ex6S6m9AdT1XmPkYN1SUNQr3S0BxYzXiZuuZkdQ4sFigwmYljq
 u19A7d97XfIe9cRcuOuV3eSJInljG8XP5zx5rAgQNqAU5RoKLl9kik0qmLVkk8Re
 8UCAvFVkklZicYR2kLe/YmXTsckT9od6Je5LOpVe++y4+la48vtCKXuP3JL+Rqqa
 ZxZZiEYEEBECAAYFAj8wMbUACgkQlYRRoq3PfpQZUgCeJbkFjCtAGLhiePn1uRM9
 SuRi7sQAn3QdlR7RiyDXyO8GoAT0/ODhdcAliJwEEAECAAYFAj8wMcUACgkQ/Uo4
 3Ch2DT3PxAP+L98q7LvobV7AtOIZY13z/wKHCLzrHUeiOOd+I3l8hit6fIzsqmTH
 sCcSu/wVt7oFaTwt4+TN2epunVFV74J0nB82Bew7J2CXD19ZsQy9qTqeNvLvmJD8
 FmWC6LYIqkN3IwVVB330sZQYVcNSNl4hCy4wntNLGWPY37XmG7nOi9uIRgQTEQIA
 BgUCPzal+QAKCRC7xxTRnGfNlhX6AJ9zfXvNPU17VpgdCyF9L4tw7Gvz5wCdG0dT
 1Wfl599fDBZ07pZYdU3fGj2IRgQTEQIABgUCPzflcgAKCRCAdScAZahB7bOWAKCB
 UB7pH58orpwn4kam34h0S4U1fQCgvh/QHkfYznXxW4PLZjHFzg47eiGIRgQTEQIA
 BgUCPzf4KQAKCRBFwCFHaavdVI8lAJ90ZPmZVgVr13U6xu8J/QJF0Ah5QgCdGXhO
 FWEyuY+1IMswfRS9DXffJd6IRgQTEQIABgUCP0konwAKCRCPubcPpM/JbmcVAJ4v
 xU32w0zWpHtxvY1M9bKwjay5dwCg2PFIpqfUrd3Tt5sfIizXsfwhIyWIRgQQEQIA
 BgUCPzVMUwAKCRBp0qYd4mP81Kv5AJ42Yx1ASL78rhDVdaBNU2/Y1dKOqACeJdCJ
 UqJ1H5ToCAJTRTHOeEqG4SaIRgQTEQIABgUCP42/PQAKCRB54pxgsAY/5/CIAKCo
 l3I4e61OU01kWV8xKx4LkYDIaQCfRKFeoCAMtEaCxpsg1pBHnCisJa+IRgQTEQIA
 BgUCP42/nAAKCRDGBDxWcgdxN4ZxAJ9eDJmhY+uLrkHbceesEom/jLccMgCeJC64
 Yq58dSgFA6YUEdKnDReMw8KIRgQQEQIABgUCP45vGwAKCRAKYuU0N6eRSdCvAJwP
 4vLFAOUAcCd1BQR6AQZ0O/SkDQCfRrqr0qbUI+JwPCsgyT7I3tTTSQ+JARwEEgEC
 AAYFAj+OYU8ACgkQFTlqeTPrBZrRwgf/ZKubbJqGC3UX4ed1XV3gbWMgnp2P76x6
 AdRKzMXyo2OisVNQEe0HeW3xKnJa56FMF0qDziybKY6+KxAbURbw5gtNGs/N4/Hw
 WWwd5G33ZoFFXOQm2N3GUg+98hqmmqipcgtNDWBXh/WQ7oKNcJGu4pcd7I8zHHD1
 wzjUrFaETAQhPH9e2IZHnpkF18L5GJUIazwbc0oD8Mq7mkZVUecTXnt7wnwAp/Df
 7Ix5jeCQkeQB8hNchslF3vUvDm89dU8XLHwTWPquBIXt0/wDFeDgjfyRw82OjyjQ
 R3niJ6WHAECnVTkmkR/nBkrQMj/BGFopvcEUg87BXHaR1b0LgfUieIhGBBIRAgAG
 BQI/j8N2AAoJEMVYWQiVq/UMPDIAn0q90rhCABcqV87OrVSUKLNlpNOjAJ4nyVwh
 GBSNxYmncdRy0pRlqteeg4hGBBMRAgAGBQI/kCDdAAoJEF7HvjcDzgGeXXgAn33N
 /7nmO6dooe3A3IwL+KqHe+8+AJ43UeYDXw2wPwMSJ2VY1WFXC8oS6ohGBBMRAgAG
 BQI/kRkjAAoJEOOmjcqmmNqZsd0AoK0wBPCZWa5I2rXl78GnC7PR+KHVAKCYNcZV
 c40GH/6Za+v6Tumh2gHOFohGBBIRAgAGBQI/lDUOAAoJEJ0IqAztkI1qlGMAniIs
 K64nE6FCAoDOW2RtzVihd/S8AJ96MLTd83xZobZy2Or6WUqSPX19W4hGBBMRAgAG
 BQI/lEHrAAoJEIMpe+qmIxHWoiYAn0OP5sE1dShF4C/yK/xdRmYMTt/cAJ0fv3lX
 KPA7/qKsZGTdrp9rq6Np24hGBBERAgAGBQI/lW0HAAoJEJUsViNsp2z0ufYAnjxk
 +57rxIA3qkkxmd7JtusUFZlDAKCYo1y4XzEXUAoF9+mH+Jz+PqAss4hGBBMRAgAG
 BQI/nDG1AAoJEDYCVlOr4LEGgCUAn2nV6DTZm+Kf9zniWY4ZuI2jUazXAKDeQys6
 EhMQp9SWwduoajYatT6OxIhGBBMRAgAGBQI+NyJoAAoJEG2U2yGkQUVxohoAn2VY
 P1vR6UKqe+eVtiKvLvppkdx5AJ4mTUyRiMQB/zTosBIg+XNK0UETIoiQBDARAgBQ
 BQI/ncHiSR0ATXlzdGVyeSBzaWduaW5nLS0tbm90IHN1cmUgaG93IHRoaXMgaGFw
 cGVuZWQgKGl0IHdhc24ndCBkb25lIG1hbnVhbGx5KS4ACgkQbZTbIaRBRXH+1ACf
 XWYn1p2HoizDLdw+iwRVO84lTYoAnit4RRnVZSGea/WVhblSOX6goQxsiEYEEBEC
 AAYFAj/MHtEACgkQoL6dujuIbn22AwCfdjB/V9Sdi5wdaW7CS7VIbS9RwLQAni56
 8dJQar1j0wNmXbE5Xfj8XwR6iEYEExECAAYFAj+iix4ACgkQ8vvXZt12fkoj6ACf
 Zgas1+pCwq0vTrlLSsJ/2FezbAgAoO9ow3Rf8prgbXkGZHtw2W++GYcziEYEEBEC
 AAYFAj/TW9sACgkQkdi6ijTVyg2RdACggXb0RV8mxMqjMEuE1gPMBZQkIUAAniu7
 Ef0yG2oxmX9P0HbPJMWbfiKriEYEExECAAYFAj/Tjh8ACgkQrxRSXsoHIeaAHgCe
 MlxY0DqFe6If827ellDd7AuYz8sAoNBF4vsAZVj3+Sq5JvtztYYhaHW/iEYEEBEC
 AAYFAj/TwGAACgkQYb5H+9Ze2NckCACZAYI/Sua+imgs+lBloApb63SqvQMAnjlz
 PgbRW0g33NwZyCRJ6UBQlA8qiEYEExECAAYFAj/UFwcACgkQzfT3onTsQykjTgCg
 s6m4JzgSm/sRtThBSrucGrJFv7wAn1R7Ag7wl5gRWMO3f3f5ChyHevhxiEkEExEC
 AAkFAj/UxMwCBwAACgkQBy76KTKckK4HfQCfesYSGD9uNXV8JaPNCBHe1MHsdhIA
 mwZ69GW/iauucCuNSUaLIQgFUlz8iEYEEBECAAYFAj/XiH0ACgkQNQqtfCuFneNb
 GACfbZIcctfTfOj1c073/2IjdILsZFsAnAqKONkeyL3Wcu9GV0KFD3gz108diEYE
 EBECAAYFAj/Xcq4ACgkQ9aLWrfOU0PiEQwCeNLY95/5hUOocoFpxY6oXvXkjkvEA
 n29v0j5n6QQnndXCTIMUeIJMAk4AiEYEEBECAAYFAj/XpgUACgkQ/aHb+2190pHu
 dACfdUqf8Wj0F1ie233+IBIikobs/qsAn2L3StgUl6Y8jB52DSp7aVgJy2jtiEYE
 ExECAAYFAj/Xv+AACgkQcC9qbtgxVkOFMQCfbOu1HBGGNWFBFFk9cXHPrthzoo4A
 n2bfdbDLYStoUgCwRjBS1CJZZWTuiEYEEBECAAYFAj/XoWkACgkQzCIUKbtGVYLS
 4gCdFzJwV7QofoXGXogHRfYPdzzQ2DMAniIEHofyr/VP4uuI35cj6EKUTv5WiEYE
 EBECAAYFAj/YpB4ACgkQDq3Sz9XRqj4fHQCgl2bz+XiGHWLW92k0SAQyu2+v6nMA
 oIV2DUC/8BGXcLASPlkYuItOMFM6iEYEExECAAYFAj/Y38QACgkQJPQmYjmxi4ET
 xgCgjzeFT9+TpPcD1URii38arKnRtSoAnAnHMqiOy0VYg/M10gv2e4Cvqy3giEYE
 ExECAAYFAj/XuFAACgkQ+KSYvZS8wB93xQCeIIV54ff2TtO3EbThvSVrbfHudioA
 n2KzEeLl2WpbK2EqXTU17SVy5jERiEYEExECAAYFAj/XvtcACgkQAeqShO1JBbuQ
 QgCglcqvpwWZ26QnW7Y3trjj9J7/wXIAn233CK2a8fDM0mlPOFdWeiix6f+tiEYE
 EBECAAYFAj/XnWwACgkQh11XSMrLwHSWNQCcDPZp+80dOy7KMJXhM53O2gdotcQA
 n2WtX8MPq8JIir/FVxBOGRIoTQMgiEwEEBECAAwFAj/XiA0FAwHihQAACgkQdROi
 NhMQLPUpbQCbB8hbodxjMNo4dcLjfIbY4J5iGg4An1EAIv00YOE31DXaG48PLDBq
 B0wgiEYEEBECAAYFAj/cWVUACgkQelwNae19I7gNPACfRWOyKnHacjD7rWBdNy2i
 6ayslEgAoMKdZ3FpbeLtwZY37bWI/eSIXQE+iEYEEBECAAYFAj/d5nsACgkQj73e
 iy+kMR4XOgCeIzGhKxsVEvBUUHNoWOPmeXpKz1cAmwV6zprqvfkjHkHzaaHIZ0k9
 vXa3iEYEEhECAAYFAj/e/GEACgkQLgAJRlBWnRhiygCfeU2+IkLEVetQjjgv6xlz
 UY/jz14AnAokmecPv9MD/fXocBCeNBNmHsbziEYEEhECAAYFAj/fLOcACgkQgzvw
 J1ryljCf5wCfUZPMFsuj6M1pgH7eTWShAfa6IgAAnjWgtE+Wtt2huIEFLU3Ue4xr
 2vByiEYEExECAAYFAj/Y7VgACgkQZzP420x1p2tUBgCg0Ne6b338FI2iYZMOfpW4
 QJoMJp4An0vtWvlXx6I2yYz4uvdHdNf74dWciEYEEhECAAYFAj/vPLwACgkQ3zaE
 8GN48xvAPQCfeXQFRykZwoDnJxZRrbsMuNdX/pIAnjDKK44pLTm1tXubPLOwoW6j
 tPgSiEYEEhECAAYFAj/vayIACgkQyQMBxhAreU1pOwCfRk/rb5Tj65Fu6rLAnG7c
 x7ugGtEAoI+Oj6yNuPAuUFtvNq3UXicXUpYDiEYEExECAAYFAj/wRzYACgkQiwjD
 DlS8cmN30wCfV0oT4G7ZzHahe30z6BQnSrWCKMUAmwTXnFPMc6xKukz3tT0G23eS
 rPh4iEYEExECAAYFAj/xNU4ACgkQSUvu2wE5EjvT+ACglXXJjkV9Q+FLfL8c300X
 PTaF72oAnA7OPAHN0hY20vTev/d11D8ERRabiEYEEBECAAYFAj/x6dUACgkQvBVi
 c1oTsEiqfwCePNZqs2jGRorP1rNwarv6TEwIDx4AnjIS8RzUVBN+xdQwkbrGzGnN
 PCS9iEYEEhECAAYFAj/x+gUACgkQCY7iyqpOgLa2rgCbByTLSpUPjYdJHWafbvAh
 jfVpumgAnjqFyycwkXiVxqBwbOunkwDDWwswiEYEEhECAAYFAj/yEZUACgkQ0+Zx
 vPFTY6EXQQCgiKnhP7W32TAfrXEcMY57kIxdc7YAnjOFG/fZkEb+suBcQjM35jU6
 yTyCiEYEEhECAAYFAj/x/nUACgkQifW7lGXJEoUxoQCfX/Uzi+Z/MEIuKtugYWsz
 29DtpEgAniQkFUIKcazMsjHYMhu0P53Yxb2DiEYEExECAAYFAj/zKT4ACgkQEfTE
 HrP7rjPClACgiU7qn0gyQGbgcPEDIoV7/iElsoEAoIwdiCCo8/fDYwKZJzH0ic6Z
 QYX9iEYEExECAAYFAj/0V/sACgkQ9PcicYLJuinfUACfbfARX3S434I4di1KmQDJ
 Cho67j0AoI55EvMrfZqOYvX89Pqxfvn4kH2DiEYEExECAAYFAj/09ZEACgkQ4Wmz
 +z2IPqCAwgCfenqkn+38y4Rl31FB34ADe7s0slAAn1yhVL+2PX5Bnof4iMi2JdKB
 kSVbiEYEExECAAYFAj/1JicACgkQLst0AlVuMNeJjACfWzqMUDu3J+Vm6voXol9n
 jTqqXWsAn0Skh066ZAL/JD8Jz3gWRu3yY+dCiEYEEhECAAYFAj/1sW4ACgkQnNo+
 exDKny0nYwCeMl0Nd/wd+qxe9fQiK6gBLpOcmZ0AoJjAuyyLG09ohUXVjBSPulgv
 iRnNiEYEEhECAAYFAj/2GVoACgkQKLKVw/Rurbs4nACfRgNCI6+2XU7vQ0TuUxrc
 yUC6W54An0BjKyxPtz04iwkBr1+4QWGfaBvLiEYEExECAAYFAj/5oxEACgkQRusm
 gsjeDU0uIACgxMoHD6V9c1JK9sJf+nUU3MTslrQAn0MBbVlBXhgzOEwuHCLXfyjx
 WmXWiEYEExECAAYFAj/8GhUACgkQjO6yWbPCgfQ/AgCeP2AmiYnXpXrEPFc34vfm
 vIE2LHAAn2+3opBvEMpbJZHi61TbkdiwskoCiEYEExECAAYFAkAFryQACgkQuQ3X
 ye1hlT26fgCg2R4UWJu3NcLjP1yM/ME8RGTrTg4An3AfYTAqWT11safSh8P3Bp+b
 DBX4iEYEExECAAYFAkAGEqsACgkQRCBj41UDsd/mQwCfQxivxS3uk5qPUms1rlaZ
 ortwF9oAoInKBAxQe8ArmnxreB14YDowUK7BiEYEEhECAAYFAkBCeEoACgkQmHaJ
 YZ7RAb9aGwCePCImHjDatX93iZNuD42ke3oSYIsAoJfssZTjjRRntJgqY/KUmyoE
 uaPuiEYEExECAAYFAkBMc2wACgkQr2QksT29OyDJbgCgibgPVr6fRXvDYUDct3DS
 l/L9tjQAnAunmZTq5rfaK4gGEaFpvM/fhN8DiEYEExECAAYFAkBiIT0ACgkQKljO
 qlJpjp93EQCg0IXwhDrFGg0+pSHtYWkrbK76dAYAn3w4uI5HPkR/EPUCelCIoota
 HAkziEYEEBECAAYFAkEM6sIACgkQXeJJllsDWKJB2QCgu5C5Z/xi8kxD9Y3HIHZ2
 i65aD7QAniZxuCBSEsTUrUFQa14JXjpOigS/iEYEExECAAYFAkGE4iEACgkQqy9a
 WxUlaZDrDACgie5dsv4FtXyqaGQx1KeIg5MgsysAn2wD6sUUho8L+aLUtch0mCDa
 sLptiEYEEhECAAYFAkFA71QACgkQBylq0S4Azzw5LwCeKPCrHyToXmAhIAFapS3W
 XFtENAwAnj8NbIq//frXLu+MFFgNuVWs1yo4iEYEExECAAYFAkGEzjUACgkQP6De
 CKDTkWjBXACgi4VgWJC+6SHQKT763qnhT42o/Z8AmgNnndmcd+6COISqKDC0t6cu
 yRgliEYEExECAAYFAkGalesACgkQXY6L6fI4GtT0xgCfRBpt301zvBQPNtR5KWrV
 TYKd4BIAn1C1Hj35ZmPGY1ErpJ7/OlvRaEkYiEYEExECAAYFAkHlLtcACgkQ/H2E
 k1xrBMnCdwCfSTfAeH71fmicdpo0WyQtDJGbLKcAoJQvIh/dJCcTRzehMoikepB4
 0VVJiEYEEBECAAYFAkInm+YACgkQX4f0Vv2/Nxw4UwCfcyR6UVmqk6V1MpMcnwqk
 EUIFt34AoJ02pIwEObvB1gyVQtpP6Jof8CYziEYEExECAAYFAkJZlc8ACgkQcBdD
 8e7nfkUQkgCgvVSUG/qMQSzRM8eZoC+cMv8jAV8An2iWuvuyK9WpYkZkN5dYTqmK
 XIE+iJwEEAECAAYFAkIcKQcACgkQ5RUoJTMc2l32ZQP+I/nbPkxTJDqhjh+SPB+P
 9ansJYa7ZkXaPd8I7P1nENYQ7WEDS9Wc4b8AnOdtd4EI3OQK5UmswjMGJyipsa5h
 NblzAbdnI053tY7RDpfs352TvoBm47aipuMoRJctSIkWfRlex/HytYlygV/6gwyI
 +C9zkG9I02U1OpDzENTR4yC0KUNocmlzdGlhbiBCcnVlZmZlciA8YnJ1ZWZmZXJA
 RnJlZUJTRC5vcmc+iFwEExECABwFAj4irWgCGwMECwcDAgMVAgMDFgIBAh4BAheA
 AAoJEGx2F4yg7ZgtTl8AoIozE3IKJSq8armihwVbsb423M18AJ9u80NA9CxL7GkS
 rCvatNOzJjNf7YhGBBMRAgAGBQI+JLCgAAoJENSNEHJ4+KjUHPsAnjsf26YTRwAQ
 Lsj9ep/LkNuiyoJGAKC8XX4asaznd7jeU0qeJQ3Xohcj04hGBBMRAgAGBQI+LG6/
 AAoJED4s35lZGelG8uoAoKOXTvFfJ3RkByeKGVvKu+o7XPdaAJ4/2bXepNLqNEDg
 Usl7hkak7FRZ0ohGBBARAgAGBQI+QCnWAAoJEJWnRNJ6Hmtf0MUAnA37LFsdr2rC
 AcQM1bxrTb41Ap++AKCTtJ/NK3bVL3hbxM7q9r8JNfntEYhGBBMRAgAGBQI+QCWn
 AAoJEGxG8ZwW/bKYPGwAn1CbytJ94xED5anIuEUuV807YSD/AJ0VjiIKBDWZN/+x
 rEd4WaHVDKuDJIkBHAQSAQEABgUCPkA0XQAKCRC1rDlKuf8qEaljCACsCiPSrFAx
 yz1saPmjan+RBm2i2HxUJe9XP+wODZ+EtMbqedUkCg0NMTXByyh6bcuBUgKn1pG4
 PTOZvJMxEHLfsCDvzwp/NxHXIDN+yiGBr0e9WeqiV9zDLFQWPmiSc9AOyoiUavNK
 mYzgzmLvCKZnSLmP/GA+BfLIoUJuZwt8BsLXgqyaSs3LNT9GooZi8aVByq8Cgytt
 RZVGOB5EQDlmBYHoy+ifTCWkRfhSIx7Oa0uP9ybPR0/RwjVxp6nk1DUMySFb25A5
 gVfhiQ+IvgOBwXWQ8O5ykoWdBccJYkGRI/4rLYY2nQQ+Z+MoxiStKzNvrJtshxj+
 ESVTaS8TcZh0iEYEExECAAYFAj5ASuEACgkQlI/WoOEPUC47WwCePdtefQKkwfQo
 f0vmDb8Qc2Kxq4gAoMwKA9A0fXTG8Pp24ikc1c3+5UB7iEYEEBECAAYFAj5ARsgA
 CgkQHI0nZIQ34x81cwCdEYnjuBXMswEj+iBabubPYYuRrKUAoOntf4ZBIMkaPyw2
 jE5wQ3IVnLtUiEYEEBECAAYFAj5AVSkACgkQgGcShyMVr6NFQQCeIM3GKLD+VPMK
 T/BTEvHJU4pSuAIAnA5XMGZaiudfhDLmrlqVpqTpb/tEiJwEEwECAAYFAj5AWbgA
 CgkQhqAIGyKylR3pZgQAkGSMVHpz3PiArTQNZ+rMF6CsSBpsp+Rs0CyLlG5Nsqrl
 he0qW0QZkC/7OvgfGn+WHzO2O44vbPjpgsE/Ex0VOZeuBYpTJZQQz8MbiNjixwyp
 iHBWXBp3e0CbHSq26z6/fAqhVQeDqCQZETAfrROeyNIp3vzzfvqdUkmof8c/34SI
 RgQTEQIABgUCPkCsngAKCRBiSEuPG0iN6s71AJ4g22uWyjB8uU9gSzu8Vfdgolyi
 PQCeP7+bfvgRhTVagTOc7sjGOEp5bB6IRgQTEQIABgUCPkCqFAAKCRCuUcxBI0Z6
 8fToAKCa/NyunXgzy2O3hJbgASRFYkkF2QCdHAK1a99O4O3+zQjJWh/q9fXC2kmI
 RgQTEQIABgUCPkDJGwAKCRDVVqZgiOPvVyT3AJ9idyqUM1cUQoTx9vy7G4ITEnVn
 5ACbBqQ0Ndq/Cp6PDPESlT6gXbEl0BOIRgQTEQIABgUCPkDglwAKCRA5o8lM/cSo
 /Y97AJ4hsp9zg6qM3M3Yu97Q4oBTDdZ7HACcDtBISlliQarPWwt4mHRctma26+2I
 RgQTEQIABgUCPkFU0wAKCRC0deIHurWCKSPRAKC51dPMqkgVeoeC2hMvgmQlLHHt
 NgCeKy8boiFAHHezYS7maFRCMsrlNLKITAQQEQIADAUCPkFeMwUDAeEzgAAKCRBP
 g4y3JqCoFvJSAKDBbykzsluQJ0mV9s0jQFMBtPsfqACgvr4s+/MxbUJjSpDqEQ1Z
 NxI8Yt6IRgQTEQIABgUCPkGUwgAKCRDwJO+CNVGeqNE1AJsEfE/svURDc6ClzGTB
 b2XKekuxuwCfVwuku5/SDcB0IvRijwXTxA4t51WIRgQTEQIABgUCPkEW2AAKCRDc
 NnQ35arLNNiKAKCyu+jjTP2kF2zsFRZJ4OLiptzuGwCg2E8G0lPX9hMzRFN0nYYe
 vRlUfWaIRgQTEQIABgUCPkFcTwAKCRAHJZTVR7A163zjAKCeyLsZqYxPLe/XomuC
 gCQOd8u2bwCfYt4iCLPcx0yMt7Nb48QOVGOdxn+IRgQTEQIABgUCPkFcYwAKCRA/
 V8xvnmt23y0HAKC90+rYGPDvyXXmAx+Kj3QEV2fl/gCeLQH2EXuHRfJyJKzxt4jy
 vp9CwXOIRgQTEQIABgUCPkF10AAKCRBBGPb8lSbpxfNUAKCHY5RVSETfgloHO2bA
 iahBDgFPSgCdGfQaKBrD92CKSYdeMNNOjNxhKnqIRgQTEQIABgUCPkFzRQAKCRDQ
 5Ee9ESjyX1ObAKCWaptXNj4ISu67NT4hEEDGIfUSXQCfVznMDC/hyeOL2BwfRTGr
 sY35frWIRgQTEQIABgUCPkFzXQAKCRBrphakwVE7DNXiAJwLv7OBvfZYVGh1aCRw
 qXrGB7X8gQCeI6szoysJKsw8oQUxuZS7ME9kPLiIRgQTEQIABgUCPkEMZgAKCRDH
 ON/LNYa6cYhBAKCaX9Ofy/81DQWMQfRIiGPoSf/PHACdHErqKXUCB5SBl7ylZhse
 rKncHa+IRgQQEQIABgUCPkF7fwAKCRBueUUCoBl5wKwUAJ4sz30UjqeOnDRBjd6m
 3VDHk173EQCeLoMTVar27qYR1TdMt8LBZqU0LbSIRgQQEQIABgUCPkF7igAKCRCj
 GM7Esm5quXMTAKCjxNkNzck8JF9O8jsRlT8vgh98dgCgjN+sxGrCkMktXiHZOa9T
 VbdMfSWITAQQEQIADAUCPkDKfgUDAeEzgAAKCRB1E6I2ExAs9UbFAJ9Ed8MZ6F7n
 J+wQ8eUAKbVarTKDwwCfSF4ed0z7231cWJ9ODYuIIfiFwcmIRgQTEQIABgUCPkKm
 EAAKCRBADB62okjOY4nVAJ4kHn7Lcj762BaXyMH4zYFNLeh8WgCfU5ZdUpFTjB6o
 zFGXDPz6grIlrqGIRgQTEQIABgUCPkQyqwAKCRCwxLn3mg2CqabxAJ9DetdwesQd
 SCga1zBvSZ95ZpfxTwCggFwmSkqD8Kvh7ap7P2yTYetXAyaInAQTAQIABgUCPkRP
 KgAKCRAS6T6JP9G2tUOGBACm8D9SO0e9TBUQfXrq1XfW1EV+GqdPCN17J/YAVp1N
 QCqlLHYF3+/VIsaT42ioM5QQcy263L+aFVx2Yi4R3zEeolbGfFBTgvn28odrreZp
 uAFgjO76PX0eSFv7vvWntHLPgZ0M9rHplKuGs6kb5GlJxr/VHiHWFKvQnYZsvT/t
 g4hGBBARAgAGBQI+RYMeAAoJEFv8diRAZaHa+a0An2tACMMhZoxiOeQxm2v/587Z
 68EVAJ0SIMqmBEUP8pu4idR4Wq/2zGWWyYhGBBMRAgAGBQI+QY9hAAoJEC9KXfQQ
 64+oUaMAnR4qJpGEXFPEIkj16B0DmNOaPeh6AJ9NSY/3VohzNVc6CSQKZtvAtKh2
 H4hGBBARAgAGBQI+RsZ1AAoJEJ71dopqzj+sFVEAn1ZE05x0HC+y1mk4U8Z9cxzs
 aZxaAKCCVWIs8JTIrKIkMfJLZlAMZHLpfYhGBBMRAgAGBQI+RsY3AAoJEOpKzVz2
 XGjNpz0AnRNN1YcShhvf77WeO041Gmb6eyu9AKC/eibZjNysFFd/aJFigvZ3trLN
 lIicBBMBAgAGBQI+Rs/1AAoJEEC/HpEdDdC5rSoEANMcRBg9Y2PKFTtgS72hP1j1
 Wse6+MOIRw8W8rt5sFMH21hwIhcDa0nBFDXuNJgNfXYp44AexcRB5BK9EYQWt2pU
 g+R335AEVTa39sXl6BSU3K3xnBqBMyNFz6acjZ++cjKAXYfIp3jAS+CoIZ4RN7rk
 d/gmKSivEYp4rTiTbrK2iEYEEBECAAYFAj5Hr40ACgkQagIyDYKgMl4cFQCeNw45
 uJggp0nNoq9STTZv4sEQurkAnAjxHHZtm1X7SeUL0Xj/cSOk/DC0iEYEEBECAAYF
 Aj5H0HgACgkQEMun3/wGpS0wXACdHsxbYdzNvBZiKZjmshdpfSCK/2AAoM+6H8QQ
 uFoB/L26N+Xw5SiZ1Z30iEYEExECAAYFAj5IZ7wACgkQmpTNb38U76Q0fgCgiwEH
 FgMDHri4LJPoy7nHRlrDGDUAniBp2UFcQwZa2Llw9YsFLMCk6DeLiEYEExECAAYF
 Aj5IaTEACgkQv7s1Bo4lI/0/aACgifSFyPzrEtJlX4orbUUwUVXdebsAnRty6E9O
 kRzBB2Ka+xl2gXLMVySUiEYEExECAAYFAj5JZJ4ACgkQ3uEZ6Jp2yaNZUQCdFpZG
 J83wRl9/ndVyDYvefxq7q5QAmwfd6brtJlAuDkesUDkJBZN5NbgwiEYEExECAAYF
 Aj5PlXUACgkQcieKIj7SkS5bUgCeMYJadtePbjOFfoKeERLaFgm9COwAn2w8t4Uz
 ywpeSNF6BFaCU0NNlWSAiEkEExECAAkFAj7wz8YCBwAACgkQDbEkl9DbWra3VQCf
 ZB5blsydcC31ITmvk+Nvb1lO8fsAnRbkIRgOWfPYQ4jZ1gEivjYV7PJEiEYEEhEC
 AAYFAj8L5ygACgkQnIUccvEtoGW3lwCfWZsK3sNJ7YvcszKxAMMKuzwAuIAAoLm5
 wgjvmtLqcq6bFMljnWchBQ5KiEYEEBECAAYFAj8QVQkACgkQ1vr63ZUvP/8vcgCf
 TI3DqqaXacjWQNGUE4Gnu3VL2fEAn2s4632/qa6krXU5wCWrV47P41uXiQEcBBMB
 AQAGBQI/EH+ZAAoJEEAGFQ5ACert3KgIAKnjwK5NIpuqBE9K6PlNG5hi+B8O4q6m
 Zw1pm305lmdUWJwGXzr9JHzaOyJPYXMq92LfUA6v3kwkKZq192hONxdKc0OJo6gJ
 I4tc5dpcLHW+iA/YwBADPvKZArwoQYCYH5aiYthCT4+MCqkm6ZBMTmdFrUuvw0t2
 /5zlGR6JHaPhs1wDE4j0WFe/F704EgqrOa1EWu68ailpDmBWeoPiEVjeBTw117RV
 gKI1GhBjoGN2pde+qtO3+lAz48eC5CtH5omwTVhjpk4VPdoln8eKWv2ap3FIy7Ei
 K22TWwLeNWmE+5oxEUQt0gCnIfQJbbd95ljxNtSthJ61ZkZg7jWHxPmIRgQTEQIA
 BgUCPw2/zwAKCRB8IsOfgHrFOhxwAJ9U6Yb7IGqCjCI77N+zq8411u06jACgj3Ls
 Qf9OhNKc33AGUfc0sHtN5QaIRgQTEQIABgUCPw6kqgAKCRBN/6N0Q4ZdAQ77AKDD
 AXNgH7xMSn91PWMiV6ym7Rye4gCg2PRVP3qsB7lJF40Xcg7y6juwijOIRQQTEQIA
 BgUCPxAeSAAKCRDhhSLXfHEry5ZlAJ9ADR0K82x34rlDUegL6GGOyLti4QCRATLo
 x+QxRJzusucNkQLUeVszn4hGBBMRAgAGBQI/ECi1AAoJELM00wiWL9LekvEAoO/z
 MbtjaJqlcSNXD91aCn6Lk93pAKDAeVhyrUz1hbjbavCbrdy4DLL+yohGBBMRAgAG
 BQI/EPssAAoJEMXAxcchjRjXqEoAoIN9qyLfnNPIdmPEp+5K8i9wdYMxAJ0fjRmQ
 oDjRpXggm+lxM0iBHHozHohGBBMRAgAGBQI/EUksAAoJEOohmUEkd8r4n+4AoJ7a
 9dbf+AY38ytohtsRezz5YJjGAKChRm9oi4NEvkRrKzpNVleolqeMb4hGBBMRAgAG
 BQI/EVy4AAoJEBn+2DzivqNBHeYAoNh3Qz3P0MDqDZq/2enn4PI+nHbQAKDSGflE
 K2t2/ytDfTnYQnD/lw0mO4kBHAQQAQIABgUCPxFBZQAKCRAJ6fkKinJORQvPB/9t
 lEMYInNoVIK6zLBr9N6NrzoykHSaknZWMwzJOuWm2Cg7pT8smDpyURnA0i0mTGC5
 +dLf59SGxCwpvRReAhiZViNKnX9x/GWCqICV5CMbbELzS2RO7XR3PWR+3F0QWBHe
 0p/HbbhE6CIUTwOUlLS+ZlthI4YEx54EGLZRWWqs0RE8N4V7hoPm9NWoB9mW+ORs
 YmOqsrWU0LEfexyRgeYWQYQwNIoOQGjEwFGm2SxG3I4mExCY6szHkHeK5dGaVsuV
 bPji+ayO5u9xoSc5qhwchM7VzadpL9kcp2Vgo4Vv36nL1pS4i0SzZOTkt7+oPKG7
 h72yvsWwPW7o1CHxexEKiEYEEBECAAYFAj8RJxAACgkQ9Wsmo6Y5nnMjRQCgreH+
 6SoH9RQ0c/X1lZGa9p1mbVEAoLZ7x9Pba7Su84vTeBNvQMhWxalSiEYEExECAAYF
 Aj8SXx8ACgkQoJD705cZn8NJyACghdLLiRgMdfUt8tHzGaW5TECGr2IAnionmDmO
 S3Aoc4Tbu5iogQ93WxskiEYEExECAAYFAj8SjswACgkQVm02LO4Jd+hzaQCeLky+
 oyXD5dSQJIOLkn4/agg87EkAniv1iwRLJxXOCRNAREm9tEnKVxK/iEYEExECAAYF
 Aj8SlEYACgkQj7mZcU7rMfGTkACghx4WqwAb0nJnqVDLK1/hyCAltpUAn2oqc67Q
 8beMOiWqSEGMfCKHfamAiEYEEBECAAYFAj8Su2AACgkQRsxcY/MYpWoiVACgq1NL
 o1I7oTsD7cRFAAi9G7EkaU8AnjEAGb6BvnLdiOKiGY+80sTGU2ykiEYEEBECAAYF
 Aj8SjUUACgkQ1DyzBZX+yjTLEQCeLajUmemRkgmpsquVkEUkn4tCHRYAoKzJ5/8w
 f+5hS6fUhz9rHQBnTTJ3iEYEEhECAAYFAj8S+ugACgkQv0FZW3NyoqXKkgCdGtpv
 7qnPjtW9VewBQ+Me3zQY1ycAoJLK2WQbPL57M06GEuqsxCIolst4iEYEExECAAYF
 Aj8TEQsACgkQuYLL1cDjHx2StACdGDHjGgoQMPakN+pxWCe6CjJhDb8AniZ2P3p2
 61uAGe2SvR/O7JiY4VhBiJwEEwECAAYFAj8TKqwACgkQtGuSO22KvnEGKAQAicKN
 rwvinh0b4AmDFx6rfxdBRcF6oETbnW0Czhz9Ub9m3FEKzRmER/4JidpMJENJs0s7
 OdGQjkZRTxHoYp8jGNO8pnj0UVQGghGzp94ugdahOQUWZm7YVg3+ykXQ2MBnuOeu
 fmuMK9k0IIgXIucz8Qe2ReGuPMctcD3VQbUiXaWIRgQSEQIABgUCPxMtoQAKCRA1
 9mF8UTrv2SK9AJwNYzbE5aP0s426BCj9PclRi43vEwCdF3X0LWoFc3WWrtU2BQDu
 myowwGiIRgQTEQIABgUCPxLnxAAKCRCSVb2f5oRNuQRJAJ9vcjKc8FJkgrjizELr
 PPzYtL7xWgCdG4PioIfrU26tG95qO3Z3RbldRjeIRgQQEQIABgUCPxNDbAAKCRCt
 7CzRGpU358JLAKCdFud7Fadntmb8gbSugCAlayKu+ACeOdXIHn9KTKRsFf+lay/M
 FJkuv5SInAQQAQIABgUCPxNdhQAKCRDvbYJB8IEZXdpHBACzum/QB8hUm73zvfbt
 g8kryWZupfhnr8eyg5iW4NKteLWTcYYGc1uoQIWxdBAvtRn3hxE1IRM/0HsuByha
 nO6dqWditfHyFzYCWB9BdvVCj3244qAbfPr8ZrM0Qen4PXMgUwSKhEvhjDe5y1Cd
 Oumn292TTVrKGmYYPMqm/xhpUohGBBMRAgAGBQI/EaLFAAoJECjG9WuBfDVoSFEA
 oOyMY2PmIBHy1xsS+19UwvGALJXaAJ4wMEwOUoAvULyJRHe2lHKAxP70HIhGBBMR
 AgAGBQI/FCMPAAoJEFGs9q11voCXV5kAoJRknzUcLVG05Yr/+uPie1eCzd2hAJ9x
 KrzXTXH0UYBDRtDxtrePXR3xGIhGBBMRAgAGBQI/FFmhAAoJEIQs23pEd54Y6DIA
 n3bIXtmTPR77OSN7xWiCRHi/C24xAJ4++/3c+oMrFS15+vXcUdtVvCFks4hGBBMR
 AgAGBQI/FFIZAAoJEFgpV1AFAIOL5uEAmgNuz24Nklg8Z0YZZuJJ4KZ6MAtsAJ4x
 nx+0TqHlKV6QpVY5LK/EUuIF34hGBBARAgAGBQI/FGCcAAoJEHf4FTO7DujHYg4A
 nRqJi+N5xvmJLFBtc/Fwg/4tZrk1AJ4z1G2F+8xdFOW4HAEMvpM4DIhp9YhGBBIR
 AgAGBQI/FQ6bAAoJENVOrkvJmHCxEJEAniyqkEscT5Pb1U4/YsBjlOKT3BFnAKDe
 gRTwyuQZ5Fv4nVjQ4PqZX3GoGIhGBBARAgAGBQI/FSq/AAoJEInNSyFgdVnmFvIA
 n1ZPAm4K+PVEiQO61qCfMn+ChxtOAKCS/X79h4HhU1u4nrdXZHIhAbmzNYhGBBMR
 AgAGBQI/FSr5AAoJENNbvJm8fQIKhgsAnjccO2D3BzBrHQC0PkG2IonxKDVCAKCZ
 tyTDYdhtFUwDmt+Uc4uxRnfAJIhGBBMRAgAGBQI/FV6DAAoJEJ7QeO9LOhNcdRsA
 niNNCWCT3t/EosNju1EPYDaK9t/eAJ4kdChYqxvVu2svHHxQnP42VC1zf4hGBBMR
 AgAGBQI/FV6FAAoJEPAj+AsmhB1b6/UAmwU7MIhoLC7bmh7l36761YwzQksxAKDO
 WIJW/wXBbulL8Gw6XXMJvtRrCohGBBMRAgAGBQI/FYv5AAoJEFO2uB3BPO4Hw5kA
 oMGOp6M8HsCoWqOer0DSsNwxViHRAJ9s55WWSjqlWBoz2l23y6643Bz3AohGBBMR
 AgAGBQI/E/MiAAoJEEvvJiQi30CHnt8An3HUfqUqQriyiTZN2WMHIk9hRDe5AJ9a
 dB5xQdh4wBZnNSSSo9nlL62/T4hGBBMRAgAGBQI/E/MpAAoJEJVkH2slPljj6BIA
 niMNct9yBdxXiOMCVJl0HjACq6lPAKDGNnzpHdoqODj83NcmyXJVWETt6IhGBBMR
 AgAGBQI/FdZ0AAoJEEG59OhbcT3wPJAAoLuaK8k/Ql+BzeTWzCrvnV/WsuM1AJ9B
 E8/KPWvRl/CZanwDgSAZ+3Ha3okB1wQTAQIAwQUCPxX0L4YUgAAAAAAaAGNzaWdu
 YXR1cmUtbm90ZXNAcGVuZ3Vpbi5kZSJodHRwOi8vd3d3LnBlbmd1aW4uZGUvfmJi
 L2NvbnRhY3QvcGdwL3NpZ25pbmdzL25vdGVzLkE1QzgyMDk5MTlGRkFBQ0FGNDFC
 QjI5QjZDNzYxNzhDQTBFRDk4MkQuYXNjIjMaaHR0cDovL3d3dy5wZW5ndWluLmRl
 L35iYi9jb250YWN0L3BncC9wb2xpY3kvdjEuMS8ACgkQGaJoCYg4/ZT6JAgAvfif
 YdKHBnC3Ezv483f2fsdF/jbUNa+1iz77iFI1dRa+SRWKRVbglKeznpT8GYbw6+82
 gxWZ7Xotbn3s5yGLXNYP0vBhek1YG0zYig498ROlIc8OPwNgCEVUHj962FFfQSwF
 2CQ+2e7h5PRll2PRpZNQCzm+c5Xj9p/tslSBWQ23/1p1U7eI3bvfMLVRx9tC/nyP
 sQo/V/yhIYPi4Ys1anBCl0Gin9g+eg4ghhWl7ksOZqG/Oc6c6viQsgVME4eKVHpl
 jdOj9WCpWIYar2Jsf16ITOMlYnGB4a3SJ1kxfXVR4lhZCaZ7PhVAaEH/GZC1ElPz
 jbKLNdvCTfe3GMNTBokBAQQTEQIAwQUCPxX0PYYUgAAAAAAaAGNzaWduYXR1cmUt
 bm90ZXNAcGVuZ3Vpbi5kZSJodHRwOi8vd3d3LnBlbmd1aW4uZGUvfmJiL2NvbnRh
 Y3QvcGdwL3NpZ25pbmdzL25vdGVzLkE1QzgyMDk5MTlGRkFBQ0FGNDFCQjI5QjZD
 NzYxNzhDQTBFRDk4MkQuYXNjIjMaaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9j
 b250YWN0L3BncC9wb2xpY3kvdjEuMS8ACgkQqx5LYEZ1ax7SjwCgmoUN3NUQ0fQw
 bmHqkVnBCc/jL8YAmweyJNMQNKsDC0frsHFyejRnNGumiEYEExECAAYFAj8TsOsA
 CgkQ58nbr+NW78AkMACfWs9ycteAylXk2RTrD5RHIYXgrVQAn0VpM3W6vemovNt5
 zQWuHwUHKMELiEYEExECAAYFAj8W3jwACgkQO7/Pd72LBQ2EJgCgqRYVlay6OEUR
 eBS4I1Rj2wKtZrcAnidL9ET5crzLbhC9Gx6/tHWhhPPriEYEEBECAAYFAj8Ro7oA
 CgkQ0Bn175Anq4jOzACeLP5omUoyFcsNXRdWv/IYPBW3jLIAn1Vg4cqudANdKnKB
 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
 otqKGK6X6iceCg==
 =yns3
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.32. Markus Bru:ffer <markus@FreeBSD.org>

 pub   1024D/78F8A8D4 2002-10-21
       Key fingerprint = 3F9B EBE8 F290 E5CC 1447  8760 D48D 1072 78F8 A8D4
 uid                  Markus Brueffer <markus@brueffer.de>
 uid                  Markus Brueffer <buff@hitnet.rwth-aachen.de>
 uid                  Markus Brueffer <mbrueffer@mi.rwth-aachen.de>
 uid                  Markus Brueffer <markus@FreeBSD.org>
 sub   4096g/B7E5C7B6 2002-10-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD20hPARBADzumxDOkMdttpWKphTxFC/j0+MJRW5UmFjd43c301LEMFSJMkv
 06EukQSOVWGyGL70v/4NWx25BiLhLDIb4feE5SZccQTnjxXYCjkQ4LfcolqTAzga
 L3GLNF356vKLQPlv6J5ah3vdZHa8Djh8q0s6CHAPi2rhEVbO2x7IcRW6MwCg/0+E
 KmRtdsifDJ00iBEMpJAApccD/As/bzVXI4FZwjwIMdep9+He7rwL/xGK+ZmRUEoN
 iiIxfd2oOkwDXZuFqTGftONd9Apao+FefTbcpEfv7sBVzHCJBn2bTr5mTjDwuA8v
 hGQ/7+QyKIFPmsL5KZYPkBcRA195UBSdwEPdERGH+aWvDTVJieyetAiD78WTd5ez
 T0V1BADwVnc1ABRMz6e8HK+78G/4vMHKPPEC7YbSmOo25FKR7XimUIlvGfj+CNO5
 w6QSDJaIRo9yOCPEacMe91NeZskPlEEXN/KIOlV11vTZ/pVDMETnzdarNo2B7J2K
 4HQzTYBzfFHdCrKP0tExSCy0iN2lWzSI57S9o8YxgnwrmuJPN7QtTWFya3VzIEJy
 dWVmZmVyIDxicnVlZmZlckBwaG9lbml4LXN5c3RlbXMuZGU+iEkEMBECAAkFAkTZ
 3xQCHSAACgkQ1I0Qcnj4qNRBCwCglhvWAuZ+9bWZ64EXP9wHLiQYT1sAoPGL96ae
 YBK0wnq1TWjE9GPTYFXAiFUEEBECABUICwkIBwMCAQoFGwMAAAAFAkTZzskACgkQ
 1I0Qcnj4qNTguQCdHFTLRplJE7g607rCVSxDCefYw8QAoIMaWQv0Iflm5aAR0F47
 3WrjQplWiEYEExECAAYFAj20imoACgkQbHYXjKDtmC1WawCfUZkir7Dy7wP3hiNA
 X8yo78CpuFYAoMJtyYVOf8fayYICxujAO3zU2pjViEwEEBECAAwFAj53axIFAwHi
 hQAACgkQT4OMtyagqBYphwCdFiRae7gCvrB/jFA8ceyXaEP44doAnj41sLHZFGWI
 ZUmQmNTiNfZXYoQQiEwEEBECAAwFAj53IYwFAwHihQAACgkQdROiNhMQLPXCqgCf
 SgcJhp/6tnpjypjXWH9t6uKHg+MAoMYnXWc7iXVFvi99BonJW15V63uptCxNYXJr
 dXMgQnJ1ZWZmZXIgPGJ1ZmZAaGl0bmV0LnJ3dGgtYWFjaGVuLmRlPohPBBARAgAP
 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
 =rJ5H
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.33. Oleg Bulyzhin <oleg@FreeBSD.org>

 pub   1024D/78CE105F 2004-02-06
       Key fingerprint = 98CC 3E66 26DE 50A8 DBC4  EB27 AF22 DCEF 78CE 105F
 uid                  Oleg Bulyzhin <oleg@FreeBSD.org>
 uid                  Oleg Bulyzhin <oleg@rinet.ru>
 sub   1024g/F747C159 2004-02-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAjnDYRBACecNDd39vZ9wnodFlATK+xvhlyX4M3FBEV34t9eVZtJz4916yb
 nLZmHwY6awt+nm6FGciSPucfu7stBCqvPURWEThJgAyXbxEVNyXmXrZ2F5OyNMyM
 EcbuqLZTjYxxN5mxUYswtiNDmdWn+Ivmw46wTOl5Pu+B7W2KVl8mwwbAjwCgl9hA
 puTWWN0zFklDJIuLx9eVxnsEAI+QaACe8H2l3XFpNkp6n680ZlW7FBZDDOYjCS4z
 nhFg7Bca74t6vnn5Q4miLnDDyOPkZqMBD2nLUkcK/kMfe5uqDUWf/i6sFDwv7d6I
 9Ag4tUWLkhxAqaqomesfI2yS4o+QGTJgQdGU3IUrOnMJD7Ascwj7304lYuqYcaqT
 KQHSA/9eTg26Ihn9uBpGit+slgkmTHmKgAbg7IaSHSEYRbpmnc0Je794zeWns/oI
 vAyGNxEFpPQMVrSXHnFmK9AOcLcfssE24a3zw7So33asH2Ha9yYBrfKGrTCPZAsa
 uUGrKbGmXQ0oXDjjqV4anvC2QI5pEJvMbHJ+Xyq5xQN73ttJxrQdT2xlZyBCdWx5
 emhpbiA8b2xlZ0ByaW5ldC5ydT6IXgQTEQIAHgUCQCOcNgIbAwYLCQgHAwIDFQID
 AxYCAQIeAQIXgAAKCRCvItzveM4QXzXVAJ9RD4kKNcvV8UmuBM66osVfZ/7yIwCg
 htVf/ZfKdcob1zQsBNNpmzkpduKIRgQTEQIABgUCQCOgsQAKCRD9LjUgMMgeateB
 AKC0iX0NNspa5EnBYGE/eEe+LxRs6ACfUqA0s50e2goJznaIcLTgZXtDECGIRgQT
 EQIABgUCQDIZWwAKCRCF1FBFa2kbA7N9AKCbDyp3g6vRN7dQKBb35s7gLp8yIwCd
 EH/ivmrxZSaHlrOMJjt6rnmuFqa0IE9sZWcgQnVseXpoaW4gPG9sZWdARnJlZUJT
 RC5vcmc+iGAEExECACAFAkOMPS0CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK
 CRCvItzveM4QX+tfAKCLk3zeTyzbbN6TqYpnqocno4H9kACePQaaDytLX+zk4plw
 sywqPLv67SG5AQ0EQCOcNxAEAIUR6Uj/bLAu0/FSGDSCXfjuThVT1lh1rCLQkbBw
 TxNiwHPHHSQRa654aoYbQdi9x6M7fzE6Uzmdj1Gs/UBYZhhsrlkL+Ls/xuhe3Kh3
 E6lho11qPhjYXmFHk42VhtVlOcikZ/Azgqgycfql81H3bKWv6jA0el9SnX4yk5qf
 tgZTAAMFA/9T7/ty76bNeP3/LcY9ZL9KYWB8v8pJ9jEt/RfBXB0GTuV/H+bzTjSc
 PwhT8Fam9Fo+r02tUJfqA+XlOJf6IXPlLPRfvzHhiBJSBPuMvB6vYs5zrlUzkgNE
 VFHBr+TxpUWBq4ZtI9K8YUbPD+s86irYn9fHlnj9qnYsod3ySvU0xYhJBBgRAgAJ
 BQJAI5w3AhsMAAoJEK8i3O94zhBfFzAAnAg+W9rkVVdYu33hNqpX8E1t2kShAJwK
 V8DuSaXJtEgVE7Wp5CeArqtwUg==
 =/2pb
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.34. Michael Bushkov <bushman@FreeBSD.org>

 pub   1024D/F694C6E4 2007-03-11 [expires: 2008-03-10]
       Key fingerprint = 4278 4392 BF6B 2864 C48E  0FA9 7216 C73C F694 C6E4
 uid                  Michael Bushkov <bushman@rsu.ru>
 uid                  Michael Bushkov <bushman@freebsd.org>
 sub   2048g/5A783997 2007-03-11 [expires: 2008-03-10]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEXzleYRBADIqilbqBfzstvMByOY3QlvQD9QIGQLwZbziOMByQPwgzgBFk6x
 OA7NOfSKONPTsLtIOSc+CbuyEfw5jJiXsQ3Ox71Zp2JTra/bTim/WwJKC5Kc+egl
 CD6KO7GMTCBb102m2x97G+rNjGS8n7Uf7ITgoj9QtxBjpAC3K1ZcPoAcjwCgobcT
 q5MUrCqPHrnlZ87BnbT/3m0D/15hcV+qndPCShIqFTYbTSG18X7lBNTONZXmCm04
 5dRcJrz4qLvsCYkBrmOCrKbYViQCQWiT7/G3Jzc+WtGFirYibU1TxBprZuP99gX0
 Hea3gvgodlje7eq3Dz7Hx9uFgN8pfw2wWlEgdkuYk72s3lSJN6+TGWzXuWnRYYJ1
 H8XtBACpByr9qcCaJ9yNAwDbDZhj03zSeZoIQz6d/3tDv7SkzDlVyxErJCO7CiHg
 JlxN0+paX0gW06xkLmwSESerJVbxEIoejdkdxebqPEIQN+9Se6Q2tkefMWd93IwL
 MP8sXgUBE6PEmFZTwI1/Av+vR7aI1pPk+yIrKTV2KyC7yCULMrQlTWljaGFlbCBC
 dXNoa292IDxidXNobWFuQGZyZWVic2Qub3JnPohmBBMRAgAmBQJF85XmAhsDBQkB
 4TOABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQchbHPPaUxuSKCQCdEAIOx9JT
 lAxIOwL6ApsukCI1bgcAnjkybnn6t4WWYy7IvmwMMJJ17oe0tCBNaWNoYWVsIEJ1
 c2hrb3YgPGJ1c2htYW5AcnN1LnJ1PohmBBMRAgAmBQJF85xpAhsDBQkB4TOABgsJ
 CAcDAgQVAggDBBYCAwECHgECF4AACgkQchbHPPaUxuS8xgCgjJ4lLhI3wDP8Rnhv
 Iy9UW5BuBEYAoI22XNE3OHvBdsmUyUvVji8yKt4auQINBEXzlgAQCADnAWwYquUZ
 mbrZ9/UO4abD7Nm0vipplm/O078SMdonir+HKWZStjuvIHhpPDGI0wCpg/v24B3w
 QVGiQhXWRL1cbvjDmiQG7GFdG6u4c1+2S6Evx+fp5DCjUMaoygd/KwF5tmxE5M2R
 7SOYueuuxcDiYi4qJs9lroNxnwG2/VkrcPxlek1QbRVjs+TuRnzTaUzXbU7kli6y
 PUhBucf6nB0cPHG6VVn8N0Kki+HBaQjYOxtBCO2B5E0uRq0Y25l9Vt9s/0TfYnYb
 E0/sLj0XSBu8WWmXtW7QrtLPN0Tb6XrTeIaWW7HLy1ACVlzniu5oeumVKiW5nsW4
 uJ/6kF5Fuu2PAAMFCADNuQ0Irmhub799B7h+FJVtNu1IxptmvJnD/RoWXhAtVo79
 c176MEqS/8tghzdq/zXhr4DPMiTDWf1p4ynKFFkpQaWkHO28cvu3rc0tdpkI2d+s
 zKT6fFNn3kqQ7Eq5xgijSK8+aTWoUhqFvxkhLIcColuPK2TmQ+uIxjtu62lU52eZ
 DDePyHFGVWqtkZ99k1vGxZRf+vVXaKTBkGY3Pek04knpP5ROGA+JjL/Ew5o4SWfn
 FeD9aJ+xtZ9VqTUyl+U4XwIYlRcWzbqsbGp0D0jgry5Xhiggngd7xtNSB9/44HuU
 C5EQWVi35HKNdXMq4wsOMG68DCTE3XOABa5yPY7TiE8EGBECAA8FAkXzlgACGwwF
 CQHhM4AACgkQchbHPPaUxuQTrQCcCfrtwSXFegD9D0DpYWa6iIy9glIAniDIOvRb
 4L8/nn1Nbu+PBNHamCHi
 =zD+p
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.35. Jesus R. Camou <jcamou@FreeBSD.org>

 pub   1024D/C2161947 2005-03-01
       Key fingerprint = 274C B265 48EC 42AE A2CA  47D9 7D98 588A C216 1947
 uid                  Jesus R. Camou <jcamou@FreeBSD.org>
 sub   2048g/F8D2A8DF 2005-03-01

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEIkZzcRBACrskMO6BYlK30ghgpDYTou1UEgp0Y4QdghWeEP5kppuDy7kf87
 CoKVvE/u+pVd7aFoTMa7ikqxKH4Kh7wnDEbFnzeZGtsf0Fzw5oHgoaQQlZHGRtr1
 49UuyFnRWVKyI8IXS25Ie5p6ZlbAVFINOdJuP81gku8SffsoifnKIiWrTwCgzhTU
 uS1rg+TpKkiRnkXXtpVF9k0D/3/OADlTo77GAWMXl6HBTaB3BXB53Q4PozvGDter
 lWGKbx6uYvLq3ZPX1XBUapzJ3eoEfCsA++FeSzK+tue/ulbLiXmFhXSQWtXoRo5D
 I75uOoXlrc45uLc9XkOpeZ5dF4a1iJOGHe/hD4mmyrWIM+E6cy1lL4EetM35ZiEM
 lHqDBACehJoEdCAVMOcfQLs33/iTBRBE7Z6fN9DCH3kTvoYcgpZsFAX2WQFz085/
 zHJ3NVFSH8LCi/6ck5ZeXCasAS3L99Q/io4WwmlqDj/b4PBdfoefInLJkroijcQ5
 B2I2cH2Ss5kkwqj9PovanMWNY6Irv2szIViIeThB+l6hiuzaK7QjSmVzdXMgUi4g
 Q2Ftb3UgPGpjYW1vdUBGcmVlQlNELm9yZz6IXgQTEQIAHgUCQiRnNwIbAwYLCQgH
 AwIDFQIDAxYCAQIeAQIXgAAKCRB9mFiKwhYZR31UAJ91fYdpk0PNNr14jtURyeeS
 upTEEACdH7tOg9LmYNxAi0iKWVInoA/TNmW5Ag0EQiRnPBAIAIKVE+F4De4BWuab
 6LREy3VmvNQgHSF8lHJm4TWKYGEkNhG+sIRFdJExqKG+N+El9QY4QGgezdogQIYk
 RBSg7nWzVrs7DiHJqC4PB/f23bzJl24Cg05jtxvZBz7t4lNXwY9G4kTmDb815FXd
 1p8gwa1KCNsTlKVRJxbaku9gHsO2JZigLMzzF1Zt1vGtaSHX5SyjhOdMOFtjuLed
 NAgl9vgAoMpXLf2Saom38Lgv/jnWz9OfST0P+OA/JmqN5DqeRTlyVZdQ8i8bduYX
 xmtbBPOGHWxwUDxiXMULkdjkLLrY1UaizR6/ULI6+cPrPLZFdnr+5GK6ZoTXyJ2n
 EUUxpGMAAwUH/iPguYUdGVnwKiwqojHq9DzDb09qvPg+UIEjwZA9mPExfMPLo/1b
 2NLgOF7pqeluXfiN84i58sipi4/ntlsNSzCYKCH2t2Wmfjdfpa3N4JaVptLR650x
 Lzj3egnWJKpHVSO+v1U7BSYBnaVPGfOMQVlSO5ra41SiVyZq6laX30PXXIFP6Ocx
 VWECVLmTR+L1g/5Nvq/L6NPv3ziuSLbSpvkLhTxLosaQwYFwPE7mLKgERUKDNc1u
 EXqyf8No4LKyO9V6VLckMgG4qbjQZhm9ozCmEYoKFZLafsq8czdNIKi4JV/8aUjU
 CsR5Dc8XAdwzPq6DBcikn1UBnvotbHtAFNiISQQYEQIACQUCQiRnPAIbDAAKCRB9
 mFiKwhYZRw2hAJ4mmNxtlCe9yUHRCzxsUxl36gQYtwCfQZ3f8K4dxPU2ClJ46fTf
 FqQS584=
 =KYGd
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.36. Jose Alonso Cardenas Marquez <acm@FreeBSD.org>

 pub   1024D/9B21BC19 2006-07-18
       Key fingerprint = 4156 2EAC A11C 9651 713B  3FC1 195F D4A8 9B21 BC19
 uid                  Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
 sub   2048g/ADA16C52 2006-07-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBES8etwRBADeB8shuQ3GGp/AozsOggqLnSmFwCS8nGN+rnE+4LHuRzkL4Kh0
 pgzalpPre7DohKjX2uzq9lTjjmsrTKZLM+yaNZ9fFMHC1uHxZnV9/c7tC97oQQXl
 FjMmemGZGA3VMhh5jEtjT5EJIvPBB4SBVhVhBJ24ananUD9KmUHTyP8GrwCgxMJ6
 +NrGKVeu5QYVLo9oVo26J+0EALkWeeHI8PE3f0jOqS+Voym3jQPLw7pvx+HoySw1
 X0c0YRa9uJVH2e8aFMMsCzT/sP492IksJvtRNpzDSJJyYM3zukzH+l7J2vwDvKgD
 YknZJE0pAS0GRAVbZQ9u6bez2+CUrGZW7Bvablo7r3nBHyhI2SpeM6naXlS4AJ6I
 9dbaBACm82l0Uwip/WoJM0r/lB6eXMz9tFeRgfnPY3+G0Y9pFpdxTX0q5M73L6u2
 PeXbWI2XPyPqw0wqda5YNlcRylXJmzLFGQzR6opqIbOEzRE+IinyQwQlcAv3qzBU
 p7qCplhjblcyAhWTlM5XsrAWxXHyNFrSCCPDgW296+8b6b94s7QuSm9zZSBBbG9u
 c28gQ2FyZGVuYXMgTWFycXVleiA8YWNtQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJE
 vHrcAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQGV/UqJshvBm6wgCgqtDd
 lyjakeTr7YVdNmpaI/UxpG8An0jtgTDD2M+CioUqGN1SNTkA/6cWuQINBES8euQQ
 CACt+RPVEUX/qDk3Qh6E1Zrm410mAJLfgG70tz02ApDXhW6aZccW97rH3pec+RDW
 fZVaSW4xHjUQMu1JaXK0dD++UWifuhYF+GUfi2NQflcy600VjM4v1HMZulTE5/0n
 NfPU4s2Vu0w1JcuXryjy5O8+ur10wQ4HFnL+qSDmXY2UKKTHA7vVrBTmysELDuj5
 N6T9+xxuR7EJG3lwTREgPnr5nRlyZBxgAd6k/AJ8i2X1YiGix2KI2fk/HYdgl3FL
 xnLXrLE43mAwQjcmkMruNkebjfAAnp6vKvSOLZ3mqoPNhP6SPGTPxoskcHqHhvXh
 L3Y7/Qqga4sg+P8tZ4YTx4SHAAMFB/92KAG0TePM8+gtp64oOp9RuUELjT35f5RZ
 0ZJZ1JromyMjOc6FRh1a9HiVzY2Vq99S/r8S5QoNH6vppxGjSL3Vs6vJg79eT5Jc
 ODdEZhoSzqmc/TwTHfOeHiFJJk8kAtX33CIHBUDM0p3OaJDj3weYi0TUWcxcvlFg
 p4RIYHCkmJj1/sI+0U8Jw35nSK4uNwW8MCl9a2hwHCtfnvQBfotybc4+YuwFesT2
 SDRit/mXxYkmi/a5GPB0To/e/QSBuk7MMNtLv0oF8LCrfaN76XOmahxjaSYidA4H
 LUFNqtRL9J5/T4VSZsrSl+Gb6HQIaMoGPbXmFk3i6FzNP7VDViZ2iEkEGBECAAkF
 AkS8euQCGwwACgkQGV/UqJshvBlwLQCgqDaWuJOgfV0r5li2gRPUMI5XCscAoIG2
 pLZLUWFiL2unIMhkFZSQbZZj
 =I2hD
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.37. Pietro Cerutti <gahr@FreeBSD.org>

 pub   1024D/9571F78E 2006-05-17
       Key fingerprint = 1203 92B5 3919 AF84 9B97  28D6 C0C2 6A98 9571 F78E
 uid                  Pietro Cerutti <gahr@gahr.ch>
 uid                  Pietro Cerutti (The FreeBSD Project) <gahr@FreeBSD.org>
 sub   2048g/F24227D5 2006-05-17 [expires: 2011-05-16]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =fVQ7
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.38. Hye-Shik Chang <perky@FreeBSD.org>

 pub  1024D/CFDB4BA4 1999-04-23 Hye-Shik Chang <perky@FreeBSD.org>
      Key fingerprint = 09D9 57D6 58BA 44DD CAEC  71CD 0D65 2C59 CFDB 4BA4
 uid                            Hye-Shik Chang <hyeshik@gmail.com>
 sub  1024g/A94A8ED1 1999-04-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 b7AAzA==
 =dqQP
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.39. Jonathan Chen <jon@FreeBSD.org>

 pub  1024D/2539468B 1999-10-11 Jonathan Chen <jon@spock.org>
      Key fingerprint = EE31 CDA1 A105 C8C9 5365  3DB5 C2FC 86AA 2539 468B
 uid                            Jonathan Chen <jon@freebsd.org>
 uid                            Jonathan Chen <chenj@rpi.edu>
 uid                            Jonathan Chen <spock@acm.rpi.edu>
 uid                            Jonathan Chen <jon@cs.rpi.edu>
 sub  3072g/B81EF1DB 1999-10-11

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =cJgh
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.40. Fukang Chen <loader@FreeBSD.org>

 pub   1024D/40AB1752 2007-08-01 [expires: 2010-07-31]
       Key fingerprint = 98C4 6E6B 1C21 15E4 5042  01FC C7B7 E152 40AB 1752
 uid                  loader <loader@FreeBSD.org>
 sub   4096g/9E53A5C7 2007-08-01 [expires: 2010-07-31]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =PrOy
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.41. Luoqi Chen <luoqi@FreeBSD.org>

 pub  1024D/2926F3BE 2002-02-22 Luoqi Chen <luoqi@FreeBSD.org>
      Key fingerprint = B470 A815 5917 D9F4 37F3  CE2A 4D75 3BD1 2926 F3BE
 uid                            Luoqi Chen <luoqi@bricore.com>
 uid                            Luoqi Chen <lchen@onetta.com>
 sub  1024g/5446EB72 2002-02-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDx2qBMRBADYSjvWKVcUxUb1aR1VjHTlFo6zc6PHMK8W3CRin7lY3NgsYsmZ
 n0IvGQIDEHhTpOEWLS0S6A/bseaGUir52X6spZ8i5hfd7Ps9RmeS0oHx0XDS9JTJ
 HXFE5RjExHbLnw4DbsaqR4Fl1V7NJU2U/nkiJILJd/PGPZsdstKYv5QvnwCgmwr7
 QZlkTV/m61MmbMAEpEFWaecD/Rp5Qb9S5NGVplNeNqub4fC+Ydarkorr8qBJN9Va
 xu1Qgj3sOAoxmuOnZ99YAgXhs9Bqe4QsrQfs1cMUVzZsl3FIffh92HkrLmdJlsjX
 8lrRT694cIP7+ELNGKJ/zaXI3j2cnQPVqUO1icVfijqatqDg8bgQS8C8CGQX6e6h
 ADKGA/9cIY450gMvrtbR3/bqH+IgvBCUog5RXv0y8c80sJnzeqawx2BuziFvv6mZ
 Kv0PJ2vnWok0NHcyuBHkkEt+ujYlMQXHZ6wRykYxIUzM8tl+9129tSNEK+GdcCOZ
 rfbwm8scs+VmzrHXP+saOPcHPBr0e/KPPixNN1I5HB3yI0ILSLQeTHVvcWkgQ2hl
 biA8bHVvcWlAYnJpY29yZS5jb20+iFcEExECABcFAjx2qnEFCwcKAwQDFQMCAxYC
 AQIXgAAKCRBNdTvRKSbzvmmrAJ9FVK0lT4Qym+qzj0EA6TP3V42cwACfQl+ClPzJ
 zngykscMJW07MBXkQ9i0HUx1b3FpIENoZW4gPGxjaGVuQG9uZXR0YS5jb20+iFcE
 ExECABcFAjx2qpkFCwcKAwQDFQMCAxYCAQIXgAAKCRBNdTvRKSbzvkEwAKCRteUw
 2X3XbPsVDCBZarrkf113YgCeIHmhkDHbauw4UlUO1tYNVObn5dO0Hkx1b3FpIENo
 ZW4gPGx1b3FpQEZyZWVCU0Qub3JnPohXBBMRAgAXBQI8dq6XBQsHCgMEAxUDAgMW
 AgECF4AACgkQTXU70Skm876CUQCggJuwNIJy6f05Ka17RYn+j8hEQhwAnicDXnsy
 5SEYN6amlHdqN/HwXCsbuQENBDx2qBUQBACifA9hUBBYNqCcXTs8Jk1MCcToMFob
 vRt/SK2EcwjZ9aF9sIX3tJFrOHEe/bIcDMX19e480T4+BBs9MyHdnKgPR6vP8ZEe
 FvT8+44Wd6psLB1LwsE8UpJ3CbLjkgafTpJIlh4NP5iM2p+2ugUIRM2ZaAG7MOMK
 Ec47KOEb6yI9ywADBgP9F+p+zQ1Z/qVekBooIKU4xKBryGb/XIPJi/Pgapgr3oE9
 kKH4iObbvMBSV3kd4a0+FSEXSZyRnMD1AG+dWhAHgb9rbjtICp3hZOKCMfdZxFVg
 QStZO8vP5EhQYYtIXiNmOvkkBPqb+to5RgFFez8oIdPlMUq2Hf9MBIY6XDoNJl+I
 RgQYEQIABgUCPHaoFQAKCRBNdTvRKSbzvh9GAJ9K3KifYIBOHlsmRLF75mgKQk/c
 0wCeIOeVykZkImOxs0pEQMR/4g47Wjs=
 =RNuY
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.42. Andrey A. Chernov <ache@FreeBSD.org>

 pub   1024D/964474DD 2006-12-26
       Key fingerprint = 0F63 1B61 D76D AA23 1591  EA09 560E 582B 9644 74DD
 uid                  Andrey Chernov <ache@freebsd.org>
 uid                  [jpeg image of size 4092]
 sub   2048g/08331894 2006-12-26

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v2.0.1 (FreeBSD)

 mQGiBEWQwPURBADoLKvU4ommBNyZyVO7L2S/AzCQ7qZbnnyP06JfZAD1gay7rcT0
 1n9ncCIUF7+zJkkOyAM13rbImLqGewIxFkcI9z42qsLiLA9yCuig/5GmyJQK1Zce
 FyKkR6ZkpuuXUAZnoiHJ5mGuY89rWGrM5FrINkbaJkFuJjIUkh7pSk5OBwCgvzbx
 BO0ye9X5e3/Uz+FOE71qIIEEALGhytNWYso6b3rznuPxDJhniApNEPbgnZBdP9xL
 +/TahRwr6C93SJZKhYYmsgUTR4h6oP5dbMsOquCxOuej0lLYWV/Uvu6OPwqRlXzC
 lyU45pre60zIuKS6QBV3AKagrwJcw52B5c8FxUOcF8QLU//SjvaiVbq1eZLjSUne
 /xMABACtrSN6ERQ9GEIoc9AlbCcYoRJq2rp7k8iZz07FkUNSAoWc/Jei92DVxn1n
 oHQtUoyIWi+pC4f4u0u7jz3VIQZ2SGMlZJI1WLxNCtnmiKiqqVE4A2glLv0GI80Z
 wSH8C1QbR+1aHLwT7xQ73TdbUrkFEEjS3OvY4CypZjeDSgd9T7QiQW5kcmV5IENo
 ZXJub3YgPGFjaGVAbmFndWFsLnBwLnJ1PohjBBMRAgAjAhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AFAkWQ4AwCGQEACgkQVg5YK5ZEdN2TQQCgmyQ6vMXc3Ta+L3k8
 vWC/4D8vFAwAmwTJzrdsnGKgct8fx7raPc2AHg41tCFBbmRyZXkgQ2hlcm5vdiA8
 YWNoZUBmcmVlYnNkLm9yZz6IYAQTEQIAIAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4B
 AheABQJFkOAGAAoJEFYOWCuWRHTdFl4AniwFl5fZI3oC7h1NtmvHThsgEZdXAJ9F
 A+QmsvfCrsnwb08hJPFqpgb8/7QfQW5kcmV5IENoZXJub3YgPGFjaGVAeWFuZGV4
 LnJ1PohgBBMRAgAgBQJFkMXuAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ
 Vg5YK5ZEdN1HtQCgq2ygofSezn9ndQ+xDogdIDBsSOoAn1AiFeAsKcFm1i6c7tI+
 Yo4SVJ+Z0c9Pz00BEAABAQAAAAAAAAAAAAAAAP/Y/+AAEEpGSUYAAQEAAAAAAAAA
 /9sAQwAMCAkKCQcMCgkKDQwMDhEdExEQEBEjGRsVHSolLCspJSgoLjRCOC4xPzIo
 KDpOOj9ER0pLSi03UVdRSFZCSUpH/8AACwgBIADwAQERAP/EABwAAAEFAQEBAAAA
 AAAAAAAAAAABAgMEBQYHCP/EAEAQAAIBAwIDBQQGCAQHAAAAAAACAwEEBRITBhEi
 FCEjMTIzQlFSByRBYnKBFUNTYXGCodE0krHwNWNzkaLC8f/aAAgBAQAAPwDXh3C9
 AhcjLIgAACMVpUKc8XhmVLGNjToBYfFOrj9A8Cvc3ttar48yIZGT4rsLWF6W8lJ5
 6d2lfsOCzOVuMncNLPI33TGchGsRso0QBBD3iOIlVRyk4gAAAxCxVuPZmXMMRvC1
 uVJMjH2jp0lyXizHWUWjVuOq+SsUbjjuLvW1Sj17up460/8AbvM6biW5uk0NMyfh
 Yybq51frilLrKrsRMxGwzUNGjRAGnv6qOFUmEAAARiJiCb0GPfOkcZns8L87i+dF
 gX/yObzWchl1Q20OiP4d3+pzryvJ75NCWNYjOCTkcrayuxGzDBg0QQTUIfQKsOHK
 TCAAAI5EVrmumPWcbl79Wu5WjXWsK9NfdOZvsjK/vvoMiRhEYnRh69YrKMGahjSE
 bEY0aIIIB9BjhVJxAAAEchYzr6Tom1dMaL6zzXMXsXaZNhOhnMKeV5CIkjJSRdAr
 MR6hjMQsM1DRogggAe6JuFuFywhOIAAA2QgkfbOL4ozicqWSVo0aUpu0R6Uoz8uf
 Ln9tKd38eVThb6fen3Cm41SZRdQuoBgzWNYjGiCAAgHtiXaF2CUvRlgQAABsp59x
 pxLOl+2Pspaxxxc1lrTzavdz7/sp50/Kv2Vocqqb36wpTxlXSO2hdAaB0Y5yIiZh
 ojDRAEAAPZ44ULtrGaEJaAAABHPFL3Xd5K4lVdWttZPSJooG8SNzNufbEMcYjiaS
 QjGuNIRogggAAAewQ7pdgmNO1YviAAAQXzfVZf8ApnierY/GRPcEMhtYXD3F/byS
 QxVcsS8K5BXoqW0zEE/DWVt7as0tq9EMaZdBWYQexANEAQAAAPaoyRS/Ze0NEAAB
 SC69jIeG5Gn1yVPvlU63hjhV81YJds+iPcrSnOnqovLnT8++nP7OVT0PDYmLGWmz
 E3Qpo6BrRIZWR4fxt+vjWkev5tJyuS+jqlaM+Oue/wA6JJ/c5LI8PZHGN9btmVfm
 MmUhEEAQAAAPcOziaS3j28U1AABQI3PHeL7TsHEdzFp0rWutO7lTlXv/AD+P8amI
 x7HwJFSPgrG93e6O9fzkav8AY3gEIxDGz2js/UeXZK2j3XMqSEhZBggAAAB7M14P
 gaaf0GrZWuz1OaICCgBCch9I+H7XiUyUK03bSvX8apX+1f8AU8yPaOCkaPgvFK1O
 Vdirf92aptANYYRy+g5XOXLvHtyHI3sWnWY86lSRSBlGiAIAAew2KdplOlt7dIk6
 CfSOAAEGsw0bLGk0TxS+iQ8Rz1hJictc2cn6tuk9qw9u1pg8fbSLoeG0iR/8hbAB
 jFa5eNPaOchnZrf1LOvUcreXEfuGZIQOQuhHpG6RukQAA9nwNo0cvUx0iCjgAazF
 eWdI/WKkmseKcfxpho8lncLXRzrJOkMvd5prp5/lqO2cQAMjI5/H2b7bTq7/AHGP
 PeIOIJrqZ0Sq8v3HPbrjdQDRo3QN0DGQj0jQEPedGzOX1H6hwoDGK9zBuxkGOjZI
 OsuCla4gSW/s3f3JC8IUb++W2g9aajz3iLie4mk20nq9dPKun0mThcTfZy6a3t27
 vU7sdJJwD2a3aRrtXqtPlOavrNLSTQVleAl7HuR+GUpoHQiABukhciGiH0DcD4X6
 CQi7VHr0ayyjCsNGsU7GfeeVflLYpk56S7ha2mtp9tUq1W5Ra/8Af2lCzzmVtZeW
 Qx15NC3Ku4lq/OnP+FOVfyOitbu3vrfdtZdaGHn4pJOl9zbPPsrjux3LKbP0f5aC
 yyFxZT86b9F260pz5tSvl/X+h6Bdw79qyHmfEUE9JX3NpU+6czIa+Bpc3MuzbR7h
 tTYR5I+voOfvrHs8zIUmGCELkDDAPf7hfCJbdOgm0mVlrbcZNBftOi3QkZxykdw2
 iFzAxt79cY6BBwEUE/SyEsTapH6Dn+MMjHaWiq3rfvoea3VzJOa2FsYsXbUz18y1
 okb9mgp3s8laVovd8O/mTzcW8R31rK0VIoY4vXt05N/WvMwLya9uvEvHdipFbvLP
 o0az0fgjCz46OS4uI6puU5aa+Zo5eWG21/eOByVzuS9RkTMQiaiNyuw0Q+hXUsIo
 4idRdJBPFuExk8QXOzaaTBwNN9zskHCMY2ayM2ORKWcaTXl1IsNrE/kzt8f3UNpV
 2YNDvuP77nF8X20l3MrKYdri/D8Q17fFzywIm1uRJ7rFl+CIZ6o1ZtC8vdLUPBGM
 jrTd1y/GrNU2LHDY+wbVa2qRlqVtEZw3E131+o424m1lRmGDdRGxEwgh9EkwDWAY
 OY5riuGZ4V0egh4ZoiP1HUAIxFFaxNerduitJF7NiPJXWzEYk11G5mWreL/yjrcZ
 HogNBVAaxnZW42YDzriG53bg5uVyFmGahoxhggH0UpIKNYQQcV7xEktpDmsXH4x0
 6DhrEnoQ5ria97K3r904e5yetvWX8JlIt6OOf0npFovglkaxG7HO8QXe3Aznnt/L
 47mRMQjRBo0APooVCQAI3KvafE9Al1P9XcysdHoY20HCx+0HTHm/GM+u70p3nL7E
 rkfsnPTOAM6uQx7WUz0rcW/lz82T/wCnVkZSyVzsW557m8l2iRtM3SvTpOYuJSrI
 xENEEEAD6N0jR4oCMQSR6zKu02xtpIamvoG7pLBJ4hm8RZmPGWvPpZjz1b2LIXbN
 PJpLWUubZLXbgki/kOVmkNngHfbi21rBq5U1blaV93lXnzPYCtc+zONz1++4jaNR
 xN4/j6yjIxC5GIAggAfRzERIg4QZqGkTx7pnzQJDcdBZ1dAiEN1LtnNZ/Fplne7n
 vntqKvW2nUpgycK215Yy3eEytZ47daVnW4j2q0/etfKtP995ztzYz2dzszJtyG/g
 OF5My0bTXFY4WatGrSlNXcekYjD4/B2+zYQ6NXqk95yxLfRw9begS9mXsWtDzzPX
 MjXTRfKcxcMVGIxgCCCAB9GMNE3RrXKfOMkuPC1jLeffFa3EkmS3i1ymNFc9outw
 0PcH+glsYdxnnf8AkOU4xuLmzunrDNXRKlaMlTiLmdo7R9mRvE9cX4T1K7wOPseH
 nt7O1jh0Rd76Kamry861PO8XxBeYS7qiPV7Zn5vEb95xw+zXYReTU7v3GVPxXI8b
 rp9XkVLfiKeB9OvVD8hFkL3tXiGPK5CwwaADRAA+jiN0Mi/t31a9ZhTZB1udpzch
 rrgjjJL6fscPhmWmcvGfTHDqM7JXGRu7ilJEZUNDGQshs6CrMzoaWIfXZfhcyeKc
 OuRio61Zap51pT7DgbTDVv8AK1xjPtSTI1Inr+0pTmp6rPG93iduRuqSE8Zytk1p
 dyI5mSMRbgmsmilCQiGgIAggAfR4hFNHuHBcUY+4tbnfT2ZucKu1zYLJJ7pS4oyV
 I/BXzMuwziR+pTctM7bzfq1NmDZuI9yESl3apG8kkyIYeU4ow9nPRWZpqN51j+wk
 i45wEMXKCs7Ur31pSPlyr+dSGbjuyejbVq7fiqYdzxBjpLlZ2xcDSK+pa18+ZpY7
 6QLZVrbz2O0i+isTd350OTz17Fe3cky++YcpVFHBqEEAQBAAD6K1GXl87a4r23Ux
 xWV40vpLrnbPtx050pSgtOJZMha7V53nU8KSR/o7RG2o5Did3bIyGRbpI7mvj7ee
 OTrOqwWuIwOJcDfvl5OyJJKs/Vzp8fgVovo8zFwuqa6tIKcvJqs1f6U5f1JLP6Nb
 ys1FuMhHGnPvZU1V/KnM14/o3skp4mUuX5fBFX+5yPFOLhw+Rra28zzU5eb0GWmJ
 hvcNbT2cvO+aRklhZqfZXurSn8KlXJYq/wAd/jIGiKDoVXQaNAUQBAAAA98ucvYw
 6vHj1/IeYZvKvfZCSR/5TKGySnW8A3rJM8bNXka2b4fkvLqSeOvdXv8ALmZVlD+j
 ZvGNqK5tbh/vGxZ26IaSj9IsY5jzbj6yb9I1npTuehh4N7iN57e0aOkjaZV1rz56
 T066t4M3w8lZUSTci1L+I8kydt2a6eMz5FK7EYAAAAAAHf4zA5Orx3aRVkR68+dG
 KvEuKms7zekj0K5hzMVi7j72Syn3YjtcRxnbOm1e0ZfhXzpQfkLePKtu279Jk8pV
 uuj3DrcJI8keiQ3oxzsOA5fi+kb2L+Hrqp5qsuzdJKnuHqHCOUjv7GWHpWSGStdC
 /YtTh+L1t0ysyQNqrSvecq5XcaAAAAAAB6JwvxRXHL2e85vDWvdX7aHY0vcNnLZo
 HkhmT5HMPKcC28sVa4+4ZK8+dEk6l/Kpydxwtk7aeqXEVEX9oaGP4T7VZO0e5LPz
 6dVKKtBU4Ou4eu40d3ylq13sXcLFL7Nzbezi2+0F/EwbbGuKo9gY5fiiTQjRfOeZ
 3XRKaPB2WlseIInpXmsnhuv7i/xZYsnEMzx0bbm6u85a4j0SFOUjAAAAAAA7SnD9
 63uCNw9k459SatRs2eG4h2qViuXWv33qa2JxWdjudd7dx1jpXy1c+f8AQ3H7Si+H
 oKyWt40niekiucRLO3WyDv0bIsejWXbK12epy0SKDDY2MjiC2WW23DynIp9ZM+F9
 i83EPTL+n6RwUN0q016PgefXyeKZk5CAAAAAAB9A9miJFiQk0iiCgIKRzzbCdZJE
 DlNHaLKerplUlyCa7WQ8gza6b+QxpvWdzwjf9oxb2bt3rTmpz2bi27lzDlIByIDp
 oGgAAAAfQUbdZOAAKA7QIUcjHuvFGXUUVzBys+xfQy/I5tyrrjPJeK7StrlJFOcm
 Nbhq6a2vl0uXeIY/G1nNSkGk6W2wlLS/x8kaVuI5n5VrWlGpWnLurWnKtKUr3+fP
 01LXEeDhRt+3Sscbe63unJvGRiAAAB9BwqWUHkbDBR8Y8YRMPFY5ziE3rZtdpF+A
 4j6SLPqgulp6qaa1PPZVJcb4d0dfkbJ7qw3funG3Mehyq52nCV9HNjXtmrymV6Ot
 fiWM/dPHiLqi++uljhHGIomkaAAB7lS+0SF23vo5CxukU0+gWNiQVZCTWIw3bMzP
 XktnYts+ou2EvaMdbzfPGZXEqfV9xTVx6NHjrdH/AGZi8cQ0lwTfdY8odSS19sei
 4iJJcV1nA5pES8k0GQ5bwl21pkEOj4gfdxkv+Y48CdfFIniIhAA9fXWaNrCW0cTb
 1knoJ9Q3QKg9ySH2BQy8W9ZsWMfHtY+CP7gXMCT+0JzE4s/4JKeR3HtBIG8Q6qHN
 dnxW0rd5yt7NuuUmGo2iQ6iOXteJeBvk6TlRwatBYdtcZWYaAH//2YhhBBMRAgAh
 BQJFkQLHAhsDBwsJCAcDAgEEFQIIAwQWAgMBAh4BAheAAAoJEFYOWCuWRHTdZ1QA
 oJnXXFVCmO+dmna7MxZfmouwaHumAJwKEBA0yCMyAWY6IeT+cRI8hmGhHLkCDQRF
 kMECEAgAqm0YR1tf1oO5eaHkafgzPBqDJRCIb1pv4raUIKMrrlEnXkeyCIP6iOIx
 jxXOdSiI9BAbx6V2rZHu2J/n1OF++BGZSIksLGdG/nOTso2uE/goH2vJFzgBtS4r
 fQLKnfWfjm3QOQfNU0wcxo4HKV2Sqpopj3n2zkE//oJdCCnmogpkars61iAKFgSz
 zEPXkPEV7zKaf6UKuVqXSYrWaZ7MN01WiljpR27Wqx8FcdvxcRyhFCtt968mm1oL
 mydgvOzY6UdNqnv9XOCmE36ArcvrPCygUy/mCru3YgTHNeQdB8Sc4FXf+UwC469M
 4JjJFVmDzyFrz9QDtdR/O/KnfS30dwADBQf/Y37iViqLut2msclQWOnFftG2P2fu
 xXf2rjf/DwHYutN5NFERe9gZYQMdBWAD3ANUr1xiaFwWJFx1azzzlxz+UtoHd/F3
 mAWc/IpoUNn91SPLMWCwFqKCa8lSAR/n55IKeBJxMpyTpb7G9BKTQ38N17UUVuFw
 Kl/HHGgDp1tYnEDD3J4sssDXCo+H31VQz6vW/IGdc6OaGFWa8DZcz/pLh+cPp5BT
 76ZFEe+pmz5SkaqXQ7n0fGDTf7hG0HdRUp5Q7Y9U1IxIDEjdBTem7BeLQQB7xH9G
 /L6CW1EryKpYPzjC4lJWwaP/H9n1Q8eaeB8Zj5/TYf9l5mAn8qsJ7cUcYYhJBBgR
 AgAJBQJFkMECAhsMAAoJEFYOWCuWRHTdg9QAnAg82a7K69vHoDfSFMjp2trLswGc
 AJ9RFN/fKYunmZzi/STcxm8mj4AJRw==
 =XTXc
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.43. Sean Chittenden <seanc@FreeBSD.org>

 pub  1024D/EE278A28 2004-02-08 Sean Chittenden <sean@chittenden.org>
      Key fingerprint = E41F F441 7E91 6CBA 1844  65CF B939 3C78 EE27 8A28
 sub  2048g/55321853 2004-02-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAlrEIRBACQ1ZZIej0e8esRdDxmuSv96bv1NTDBaEx7P649JM8a3afUvnQl
 JkA/ryZsKAnw1OeIK907Cs5HdaG1lD9ttpQolG5ZN23K01CuHUvq6yY+evwDV31D
 rKwYfALKfdhtAaymxM7RRsNNV8OkXLg0SEtBit4lbdY79vqiVC3PeWYvIwCgyOlb
 7dw3f2mNtm280LybDSjn5KcD/2gWssJVtQgssnCi0Jto8csULw4OKyJHvXX06Qkf
 lnXKcCJTBMgXZf0cZpYhuyqMUZfsVJaF0lMJ85J8zD+Of3G/KwuCqW7jqpom0zw9
 mgsmhZ1rZCbf4cG1orpGSSfmsi5IFoe+mWEJgHwIKlLYd/XDfT1q81swa2AlcjbE
 Pod+A/0cNSOWz4rj1ZjcxYsxg0sZES5eFEHfIJ+5g3yMbNPcvbQhlSClgDD1Z46p
 6bEZA4+vL2kJH+29E1Q0M6H4OB2rY/Co5TypocuazZR1kwkJY+bQtFqPrcCm67Er
 GYl3qcbtV8Wgn153k6DnMUc7by2iTrJiRjWw4LNVhRZn3/dj8LQlU2VhbiBDaGl0
 dGVuZGVuIDxzZWFuQGNoaXR0ZW5kZW4ub3JnPoheBBMRAgAeBQJAJaxCAhsDBgsJ
 CAcDAgMVAgMDFgIBAh4BAheAAAoJELk5PHjuJ4ooG+EAoJP+RzGsCHKYGaLhok0/
 B0hBnIKtAJ0YTlDINuquFtqFTeZgwTUg4jeHFbkCDQRAJaxTEAgAqKA+B8+oo31g
 N7Q6uw1rR5F6M2fFBwPrYU9w6bM7qX6e/oy3epL8BgtzdlHyzcux/hLGDHGP6mku
 lwH5wGSjqfbk3guI1ogl+e0EjblIeUEAA1R/k2o8xt/HINhXiCjQhY6AJL9cljGz
 NQY/ecR9d4HEvjc+Ticgyt4h6WSGMTpjjY+Y0bWrxsXi5ZAsCNYEuRgdaRM52aXR
 gGkSqMBOKSKAPGc35Jh4nzvPSKjXmkXutCnPNcO+qPoro5j2Dx53ZkfB7Raj6CiY
 C8VQ8PDEpjELTq8fuOqqrl911RDYAOECWEqyim78qROuhgq5750w1CJj3K8o2FDE
 Qap5jNPiUwADBQf/bk9Es1QDyDTPLC7Look1OS50vhotrHce7P+uab++khm03ajq
 XmNuTYifQY0kgzzEBaELw4+isBf1NV1vvPK9P6k6FCx+1mcNYzItRLBo15MtcXlB
 IqkD3v/BnhVgT0PqJT6jO8glKCmhEq+GurXqydIfEzWCbz0+snVK769Q9rJHHUf8
 icDKfUI1m7javdnXVrpA1kKZM8Omis+BfO17XDBLYZuVW5rAJDzG42YM8H1mrqBa
 GL806X/3i55d2RfgrljiZvXBpdOZRnM21w6hxNuj3OaVxqrQn9hOgzBcVdSZWc9b
 vxpmZ2j1vx7i4xNq5dzcBqxMKDcAcwomLWgjHohJBBgRAgAJBQJAJaxTAhsMAAoJ
 ELk5PHjuJ4oob8sAoI0szWtufl86pHsG0AwxjsykDS38AJ0SAW5Nr1N1HlZlrtlG
 0ev24JoBxQ==
 =yGes
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.44. Junho CHOI <cjh@FreeBSD.org>

 pub  1024D/E60260F5 2002-10-14 CHOI Junho (Work) <cjh@wdb.co.kr>
      Key fingerprint = 1369 7374 A45F F41A F3C0  07E3 4A01 C020 E602 60F5
 uid                            CHOI Junho (Personal) <cjh@kr.FreeBSD.org>
 uid                            CHOI Junho (FreeBSD) <cjh@FreeBSD.org>
 sub  1024g/04A4FDD8 2002-10-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.0 (FreeBSD)

 mQGiBD2qLwkRBADbZ6Rsv7guMTzGT9lj4eIE29vj0ZZNWFepFEqEmWK0jMLAATX0
 koXkP/qWsuGBhVHcSyZtVG+MYTwAzo5nBszx12CNL/GkEokQ/9FXi+cA3W5TJZTE
 ssMq0PPwqCB7+s/4DBmc3uI22TCOI7J26XkftuwkdihCMG/gk+cgKkzZ7wCggaBp
 02a96DwV/78wUZy9C8B6uMMD/j5jAO2HOubn5CRZrOpko3za+qVsk6yTCmq12z+t
 r9veYORoVohxVTIY+xpeHQVlOe5URTiKO0Uvu34Tl34x0BbSLBWrGU8UTMA4+hpl
 QTUK1GI1DheFPGGGxbt9w40nslRVw2Or7GA/XHexCDwx5KZpJNtO8c/MqdlzAae5
 CuYQA/9bb5T8xhamrsOFTmdLY3wPM2efnp5d3luwA2Fe3SdC5Rkoa2fDye5w7fy1
 9YX638Nw0YU6P/xmygdBjqxKs28/6evo79KAWONL0dl20pEYoj3yVz58C3YGLEFe
 p9ggrBf41MjnnMg+D7NdBOHtISfOrU3TtB/1DiGE3+QpMwuOHrQqQ0hPSSBKdW5o
 byAoUGVyc29uYWwpIDxjamhAa3IuRnJlZUJTRC5vcmc+iFkEExECABkFAj2qLwkE
 CwcDAgMVAgMDFgIBAh4BAheAAAoJEEoBwCDmAmD1SyYAn3JBBPs/6lAQ55HLjew2
 suN8XP8RAJ9OBFQhUphqmQ/shjrwbNRBsgDbc7QmQ0hPSSBKdW5obyAoRnJlZUJT
 RCkgPGNqaEBGcmVlQlNELm9yZz6IXAQTEQIAHAUCPa7Z7gIbAwQLBwMCAxUCAwMW
 AgECHgECF4AACgkQSgHAIOYCYPW9MgCeOYgOUTCIsagnCymketJwQoGBEpsAnik+
 bL1lPnomVghlMMUgU8wxB9sQtCFDSE9JIEp1bmhvIChXb3JrKSA8Y2poQHdkYi5j
 by5rcj6IXAQTEQIAHAUCPa7aJwIbAwQLBwMCAxUCAwMWAgECHgECF4AACgkQSgHA
 IOYCYPVI0gCbBZEg/a9K4BAY5HQ7wFOp6u/G+nYAnRgb4zUmf2M57dxEx2hm93pI
 aKP/uQENBD2qLxAQBADMGxA9f5QYLFnR/XZ+Hqa/YCeqFMZ3hC4KnjWBDDXfI0Cv
 HMLBIW5027NPIDeN95998T5YJPDm1TY5Cort72CTDS3eIfoG0iGwIzzLfXrZB7Zc
 1BukNV5NMFeKPO7pX6k4R0aQr0SQUmcdYD7t6V/M4xswVOwcECk/W9BuGA/9NwAD
 BwQAy8LmYyssQdjImAASQABcpdOua5orv0ojYMu+edGmjd0WqhXToUHcDfQgL6YA
 kO/4g37ysvGwlpj8U7cZwabMO/zwnryyOEeGEA+5aCsji4VRZHOkdflcuBOXj0nR
 9yHmPFfwWTxLtV9ajLCP4vXqKPrKciS8SbuLYzvx+lnUiCqIRgQYEQIABgUCPaov
 EAAKCRBKAcAg5gJg9eZZAJ90E4gu6VACob81uH3MxWmgjpG2iwCfeNTe1Wz7EO3K
 z54TjDmC4biJg2M=
 =g8A3
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.45. Crist J. Clark <cjc@FreeBSD.org>

 pub  1024D/FE886AD3 2002-01-25 Crist J. Clark <cjclark@jhu.edu>
      Key fingerprint = F04E CCD7 3834 72C2 707F  0A8F 259F 8F4B FE88 6AD3
 uid                            Crist J. Clark <cjclark@alum.mit.edu>
 uid                            Crist J. Clark <cjc@freebsd.org>
 sub  1024g/9B6BAB99 2002-01-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxRQfMRBACvHk6znTM5boH4k+2+anGxRuPxPPIJgo6Ny385v60FtJjwLwDh
 9LwvZZjpjXi7MM/0FRfUE4bqzrdBtUm6XXGC8v/FTH72TemXR54yr2zuCTcX3jML
 e7wjrO0SO1cttASSeb8OsVQEqiMT4VRm94AYdQvS8bNxbqlog9PYmhh6lwCgwDYl
 Br/IhYSKQTugPEb8nSyP3e0D/izp3mt4NXcULIp0PZFpvnGZAMLq8moZ3cYa+8nM
 kRCWd/1/94lCd1YM8f3lQsaEvRuWaw7rT1ENknSb5TZnEMsTvV03CM4DMzH63Zde
 wgl8Xne5lF/WyiSsjUeSkmvCExFA83fz/Cv8/fk6K2O2Ajo0b33Rb7WLH/gb4U4s
 9ZkEA/48XB6/s0vGFVnELRSXbc6wCHbnhG0/58ewSbJ2XjyIFFFmeqIF2bpLhuRT
 YTBz3styfrjeAqsi9t4gtcEK3vyvF83ql5b23u5/V/+O/ZLwk3kceYmjM0mbETil
 FajrLZjaWXpTRQauL/tsqxItBI4BNuTvnh9bizQY8V7xzAgMwLQlQ3Jpc3QgSi4g
 Q2xhcmsgPGNqY2xhcmtAYWx1bS5taXQuZWR1PohXBBMRAgAXBQI8UUHzBQsHCgME
 AxUDAgMWAgECF4AACgkQJZ+PS/6IatMaGgCgqdklRK39OoUma5sl44pEl7R3GhAA
 n1680hBnTGdIR4wxFY39uX9zK708tCBDcmlzdCBKLiBDbGFyayA8Y2pjQGZyZWVi
 c2Qub3JnPohXBBMRAgAXBQI8UUKgBQsHCgMEAxUDAgMWAgECF4AACgkQJZ+PS/6I
 atPX0wCghHE+X/oyrMbMrCsdwubBf1WudnAAn2WHoVNZpzgMck2MhFdwa/1rAJI1
 tCBDcmlzdCBKLiBDbGFyayA8Y2pjbGFya0BqaHUuZWR1PohXBBMRAgAXBQI8UULc
 BQsHCgMEAxUDAgMWAgECF4AACgkQJZ+PS/6IatOKKACgsnfy7ZCxEWmdnY+c9KLm
 x0V1Zy0An34Ky4kzHxDYDTIoO6XRS48+/aljuQENBDxRQfoQBADouiAUldDORJkG
 K7fN81SWvocuySMOL/dEv6UQnBgR4lmjmaLog3QMbGIsJqiPRLDDS3PMkYf1dgDy
 6hPmMkWF/xd13Vpk4S5sIjrqTBGoE9f0SPbcDPIjRj+htXFcI+qvhvdceYi24Zvs
 xGX90jb+fimZdrJNtobfEqJaYOkrDwADBQQAsCwtAczuP/aM624+UYBrNMCmHpRS
 ZAOAnp7Hz83GafkWynaNRDYan2KsBrZJmbZ3MJ6kyUj6k37Keh1c7pR5DsY202on
 9haB3lTZv+j2QooPyj9Ityd985eqiRwAMBuOrpaCpot7zYlwiG/Lx/0P00RZ+Jdz
 hyidSKrsudGAp0OIRgQYEQIABgUCPFFB+gAKCRAln49L/ohq06htAKC7SFr0uQmS
 9fjEOFsF9oPMMxgFwQCgjvMA6reNmNAm0i6ycFh3QVYEUic=
 =C4zW
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.46. Joe Marcus Clarke <marcus@FreeBSD.org>

 pub  1024D/FE14CF87 2002-03-04 Joe Marcus Clarke (FreeBSD committer address) <marcus@FreeBSD.org>
      Key fingerprint = CC89 6407 73CC 0286 28E4  AFB9 6F68 8F8A FE14 CF87
 uid                            Joe Marcus Clarke <marcus@marcuscom.com>
 sub  1024g/B9ACE4D2 2002-03-04

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDyDmj4RBADa/Icz5Xl+cJUGNxC/tWgXWqcA9VA8GN+PeqKhXS0BnVHntdsQ
 xbpFUUKK4ld0Zex/Rec1jgC/ikExJHHIee8ZVcHqP+tsWexi83/ZvEdzI95diBp2
 Is5fYp8P8hdIBNQSOoc1jVYrTJUaZgJK2uBzbkh/WbipwsQbueRzXqPORwCgsPNr
 StLzqOpjrA7FdUz/JVQf5+8D/1SiKAOFiW4TxY+fS09lqiLs3mbXjvw23iQwLxje
 4vBd4+b9iAUWOsSretSKv6OE9ZlD4FYea8HmMgEkuKfXGc8GvTq4J1uHZ0gcVbrB
 GmxAUBPPaAENYEJfJf7dcysKVAl14ZQVIvzAGJAZHGuegD7uekGKnOEA61R3ze4a
 M2zNA/96I77l0qiMc6J7gXmiD5uxC7FsSCFj5sqTYMgBqzIYEZjU/tTUbth84xcR
 i4X0WNkaILqq1mOcBfmzQMvzG1n1CydmJU6iF1ewle6cIui9TQYg5CESrJF7xid4
 vVXRz+xi6hc1+0bSaoJa3sfpNrSSr0lKGdWHZozWdQjOvTMCXbQoSm9lIE1hcmN1
 cyBDbGFya2UgPG1hcmN1c0BtYXJjdXNjb20uY29tPohXBBMRAgAXBQI8g5o+BQsH
 CgMEAxUDAgMWAgECF4AACgkQb2iPiv4Uz4c6rgCgg7XXmcYqcIlJdDl0aGU8r0Dl
 kfYAn3W4oHUReFhATFkj2d+7zu+Rsu2MtEJKb2UgTWFyY3VzIENsYXJrZSAoRnJl
 ZUJTRCBjb21taXR0ZXIgYWRkcmVzcykgPG1hcmN1c0BGcmVlQlNELm9yZz6IVwQT
 EQIAFwUCPK4tTQULBwoDBAMVAwIDFgIBAheAAAoJEG9oj4r+FM+H7U0AoICIVoBe
 9B8bo1lrvHh+UF7GY/WaAJ9C2mCThFrmqxCr2bCtR12UoPCPqrkBDQQ8g5pAEAQA
 qk1J4LBDLeWs6ZOkPDYYcKCSAu0qlzEf5YP/TcSeZcjJyXILgesFXcayoy1v7ILP
 QSXj4p5uzRyn0fuGqiTvajjxMZz1aSkvgGyS+gc+PDmi4SJ2N/tX2isrul8MK+NG
 eUsLuZaM1JKhgKpq9yuu3D3ELG7ESga7xsOs1V/sSd8AAwUD/20XByIlsUUC/65K
 G/DQ1WfX2gNuy5If9tSPQ6h1Lno5Hv3ow3ktybIoQSxbcBo28nA/Gzg5NFGVkkqf
 OkH2xtS6V0K/WjzsrloBHCPFiKp2yHpXfKubxl8yefQPTMj8hLwlBKrNiN1fz5/6
 29TIkEwDwrUwHxQreE7FAzPMqHORiEYEGBECAAYFAjyDmkAACgkQb2iPiv4Uz4cn
 uQCfX1zNrahRTWz/HRpF7ms8qZqzdOIAn1uuu6Jst43pDzanBHUOBzUP6ymA
 =Bu/6
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.47. Nik Clayton <nik@FreeBSD.org>

 pub  1024D/2C37E375 2000-11-09 Nik Clayton <nik@freebsd.org>
      Key fingerprint = 15B8 3FFC DDB4 34B0 AA5F  94B7 93A8 0764 2C37 E375
 uid                            Nik Clayton <nik@slashdot.org>
 uid                            Nik Clayton <nik@crf-consulting.co.uk>
 uid                            Nik Clayton <nik@ngo.org.uk>
 uid                            Nik Clayton <nik@bsdi.com>
 sub  1024g/769E298A 2000-11-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 PbUkrewAn0exWATudMNC4IQf18YvII1t4Cn8
 =9wNg
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.48. Benjamin Close <benjsc@FreeBSD.org>

 pub   1024D/4842B5B4 2002-04-10
       Key fingerprint = F00D C83D 5F7E 5561 DF91  B74D E602 CAA3 4842 B5B4
 uid                  Benjamin Simon Close <Benjamin.Close@clearchain.com>
 uid                  Benjamin Simon Close <benjsc@FreeBSD.org>
 uid                  Benjamin Simon Close <benjsc@clearchain.com>
 sub   2048g/3FA8A57E 2002-04-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =/2rY
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.49. Aaron Dalton <aaron@FreeBSD.org>

 pub   1024D/8811D2A4 2006-06-21 [expires: 2011-06-20]
       Key fingerprint = 8DE0 3CBB 3692 992F 53EF  ACC7 BE56 0A4D 8811 D2A4
 uid                  Aaron Dalton <aaron@freebsd.org>
 sub   2048g/304EE8E5 2006-06-21 [expires: 2011-06-20]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBESZZ5YRBADZ18WQp9eda97kmLEVNkYUkTbWn90/9ViXP5lWhWDvdIwXXa+S
 byVbZI75QkYrvhhyDQPwK2pwF3v/nGaBhQvO666uWWyqBAC+FTjc6GQ/tVTe67Pp
 dBVlY3X2QadAIWOYHFWNhG58jAXDnuz9po/w/h5t/6wayVElamu/jPBwBwCg48VZ
 4q1oQ7M474YPBsyLfmkLEu8EAJwdgos/BxJ0a39PFtI768+6SS4e+B7qt5UDd30l
 87rvKoW3gXuf4Vn00Y8m+aK+mUjsWeQfDCF6Kj7/ecGNSkfvwmsEDnRMujyapX6J
 wuJ6DzKgrc3zEBXVK5g+JBrSZDGetkdl8jndG0lmxIqxqnx1R+uxiWNs9NAdeP1P
 F7vCBADAPoKaAEW0LlsOE0zIylP5e+LTBd6MQeZ8zISlNqMHDX9F174Fo4CFH/pI
 nW588yf/ChScuONLPIPbMBkvoC34yLEGluvjZov0cjySqzcTN/TkZ7iH1NrkYe71
 /z0Pe6jWY8p4KjK6C6dKok8b1ZI/btmJyuv6bkTzM5kQlxg43bQgQWFyb24gRGFs
 dG9uIDxhYXJvbkBmcmVlYnNkLm9yZz6IZgQTEQIAJgUCRJlnlgIbIwUJCWYBgAYL
 CQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEL5WCk2IEdKkTFIAoJwahC11/B2TXIk8
 9PioqX0c5nU5AJ0YGkpXIzDzF6QskMWWQq64fMuE6rkCDQREmWehEAgAzFoPIPXW
 +sMFJs/DzCYMzHglYmNzHr8wCfvNq3hiiHUfk9EtcUaMnVI6TMkoEEF4mXMpf7oc
 uCjU0+CZMf2GV+bLkxs2rNePyjzTuoig1vsl9RFA+1tMfLrUsUKwoPjLZUbHHApl
 S1x4k+TaLanT+tSQar//WNuA5JrmxRXSyYXu/2y5VSi+niaNKupNYXfqr53SuW2J
 xh90I90hzgBzQypWNNDEIN1c/lkgIvWm7RbbBliX9Y23iUeFkzmLbOUcpLSy3zj3
 9I3eCshQdFv5UT54N8rMAg6hGC5jfeqy4mVpMLWst3Y/Od+DBv/F9xnaquGW7LYp
 Pz+H4fJzdC79hwADBQf/XyMpsvO4z1N+8DaVybwMedLd4ExSkIAsAI3MTS1mtNu9
 mFm9GQULWvUH1YXBFnVVidibc7zdTwVEAPFhc/uZ5unxqzbUAj5whkCBUF53ZpVv
 nsskZZ3aUEh4hEM6S1t1kc7+HptpMgaSxEcjy+ylybMEzBQ14Mh38sEavfoeDvfb
 aP1AtLQh/+ehQZHeA6px3PvdDeevM6zLoAY6yEKtd5QaSrvhIuP91HKeQjPgM8yy
 IZTWM050axPzKZOCf2VsB78QUNVGcfFrbScleBvaVbdOh/ZgxGOgD7LOhhgivV1m
 dLQ+3W66/GuUVDHap5hdzPuoUgFTodlzilfqjpaekohPBBgRAgAPBQJEmWehAhsM
 BQkJZgGAAAoJEL5WCk2IEdKkNGoAoMBfaOMRp7+OtWsx8pkGGlFszVCDAKC0rEFY
 lBcUW4xcel1cl7I40JK+lQ==
 =bsX2
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.50. Ceri Davies <ceri@FreeBSD.org>

 pub   1024D/34B7245F 2002-03-08
       Key fingerprint = 9C88 EB05 A908 1058 A4AE  9959 A1C7 DCC1 34B7 245F
 uid                  Ceri Davies <ceri@submonkey.net>
 uid                  Ceri Davies <ceri@FreeBSD.org>
 uid                  Ceri Davies <ceri@opensolaris.org>
 sub   1024g/0C482CBC 2002-03-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 kY8idgc=
 =eKfA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.51. Brad Davis <brd@FreeBSD.org>

 pub   1024D/ED0A754D 2005-05-14 [expires: 2014-02-21]
       Key fingerprint = 5DFD D1A6 BEEE A6D4 B3F5  4236 D362 3291 ED0A 754D
 uid                  Brad Davis <so14k@so14k.com>
 uid                  Brad Davis <brd@FreeBSD.org>
 sub   2048g/1F29D404 2005-05-14 [expires: 2014-02-21]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEKGCoMRBADKcY+c0DClCJ6cqBHMdye/IiDENT6SMUV8S1T3Iz8UDUrYjtbR
 JbM5w3ZrV3+h7HsUZaNGL6hFwxqFFQrnzBU3+BzpgTTTCC78hAX1HIoYWcfNnqjI
 zrIMjhU7wcS7hwFTdJ25eiqXSRVpoMWEpXo8JSWVTUNIuGkQlg579CZ8JwCg5alM
 xDHxzIugCp9nuFWwavjus5kD/iznJW8yKOstdRrnosBmhA8Ijq3cv1H2NfEfmloV
 nw/1g3mY0DtBUnzLGZ3uNUUZhSe82zKI1984dYSKoCCry0y/g4pCuyTswqpl/WTc
 hc9rSUFleVu05MXKoO70WSSMQGLPYLnd4VrGShz5hPtZKq2CZIQvwiAcacUwoOGJ
 J/ghA/9HD9/z7QeArsR0KfkLrZ34YH0o5e3Otz3dub3B7M6rU9MuFZ4uThhp5GHo
 0E1puC5ay0mpFlWuxikWPCwzOK7kiVuea+89iFLs6u+blUETGI3SM48FbrMKQqDh
 HZMjBWg6caY9GaWsehNxk3TuGZpA7m7Kf8Udtr9YJdRHr/HifrQcQnJhZCBEYXZp
 cyA8YnJkQEZyZWVCU0Qub3JnPohmBBMRAgAmAhsDBgsJCAcDAgQVAggDBBYCAwEC
 HgECF4AFAkmhqiMFCRCBoSAACgkQ02Iyke0KdU1jEgCfR0pvvRQA3M9Z0zM2dV6i
 YafSCb0AoJotX8m6wArtMpmii/b0QyaT+5HBiEYEExECAAYFAkL1jHAACgkQF47i
 dPgWcsWHqQCfeR97YtQHwn2yDP2k9oX6fZ9Pt60AniZRZ5BMSkyftCpR3zx6Jxl9
 9wd0tBxCcmFkIERhdmlzIDxzbzE0a0BzbzE0ay5jb20+iGQEExECACQCGwMGCwkI
 BwMCAxUCAwMWAgECHgECF4AFAkmhqigFCRCBoSAACgkQ02Iyke0KdU0iMACbBLqL
 fva236Xw2c0DMH1sf6ebiOoAoKCawBu8IV9+T0W82BFOaXzyqu6QiEwEExECAAwF
 AkKHJxkFgwPBSmoACgkQtNcQog5FH33KrQCgswgrktUdXLWjwCmnIOA7087u4ywA
 nA/Bhi+ww9U9hDQmSBohzbyRoRTCiEYEExECAAYFAkL1jHQACgkQF47idPgWcsXn
 tgCfSPZ5hwGie++UvBuozWrxv+xiv2gAnj1XiI9dmD3xucoPTbuKRB1CF1jsuQIN
 BEKGCr8QCACsjQLDvnrcRsGno7O4sUoDRj7C6tAS6ahv779OodNW03c/EL1U1thD
 qhrNvN6M/BSG+tzuJyFFnSLHfkJXxEn3XQVYcF7dV4HStotxRMSBFRFqFizf4VGX
 72mqArAeKEYW3W+mmEGJTqjRvvMxEfl2XRtGUASkSGkKvrXuq6CeJdYPgPLg6PtM
 NcQ2RlwdvOV5zutUa76zHnKZeQ/fzyR8w5HZNUxPltgjSU2NeVIOLTCakXZRWT8X
 7BnUlCUIamRLmLdxTlizW/bHIzHZ0Zl1sA/uDCea90NgV/0s8gz2HFIKnNJQ5332
 DIQvtaezFVLT+0hTyDKb/P6QRgmK3TEPAAMHB/9j3bI+ifWv4dp2NzfxXW64P3l8
 zcA1nms+EYYn0HlswwPARndsi6zlb7nF+NRluMZYkyqkNAH/0fdUQONQw8U6A4JO
 3gS9YQ++mSubtQcLCT8h+vzscS+GVoKsSl7FwuY0IP1cFx6bOuN+lNfZHU/AZDzQ
 Jyj5OfDvpupbulT92gqUakMSgmz5uqX8AbIDLnqJzJTW1UgJ5Ft7RrFVCFAufJcy
 nl7grHRf30e8lVL0KqdqsLcwWKNY8ZceBOij6OQwbnFezZlTGV5KyshCur6pyby9
 H697clLqFspFH7euqjbq2hICPOIXD/SEl99lgTTGB2LCaVhxTnjgMTttQDgciE8E
 GBECAA8CGwwFAkmhqU8FCRCBoBAACgkQ02Iyke0KdU2xNwCfQJJkClJonK//zUJ9
 vC9Jz8J4J5wAnjPFHkl5oQLsHRM0l7kB4cJDQeos
 =HfL5
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.52. Pawel Jakub Dawidek <pjd@FreeBSD.org>

 pub  1024D/B1293F34 2004-02-02 Pawel Jakub Dawidek <Pawel@Dawidek.net>
      Key fingerprint = A3A3 5B4D 9CF9 2312 0783  1B1D 168A EF5D B129 3F34
 uid                            Pawel Jakub Dawidek <pjd@FreeBSD.org>
 uid                            Pawel Jakub Dawidek <pjd@FreeBSD.pl>
 sub  2048g/3EEC50A7 2004-02-02 [expires: 2006-02-01]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAeUYARBAD2RoYfLkSt38R06MpFesDgXVvgSb7q2GGTiMLZE7iJ8iKQU7Rx
 DkpW7EkpJ/YGPXro0KumkIGoPCsMF1eLENUhGhyMosN5Yb9Y7DXsOv3QcCKIfBlM
 P3Y+Y7By0GvSYPvYK9GZI2ZvSXyTraxB1eO/7c+aqS7wdwx3bCsVKnyzBwCg+nXQ
 izSD3wmwDYxffxN4dawiD2sD/00L95dq5XhM9nISjWJOjGsPJqyzoZZH2pemOgcq
 SeNimi0yWOWeZh/bxbjUYI5RXdBXGdwQxW6DKFU9o9NFe4se1jZcbPjuRtkbBXqz
 Mkh4kv2pvZ+rHu41kqzOZ0z+rbZld2U28R76xtx3RI4OXvJ8z01RHzAEwJ1G6s3D
 wI6iBADy+KSjJmfgP1rAcNPuwW7T7L2H9fLNTp3mmWZZDj6n4fykcwM9Jtz/K4QE
 i3GHNB2AnmR8yiPE2m87ObsKV7d8UK4WP0OLfbr7d7TZ0jDscBhlyfYgKYDFHaJH
 8O+L7df2oQU31wYEvYOP/mSTPO7F5TJZm3/Pygp/JkKnPDCnY7QlUGF3ZWwgSmFr
 dWIgRGF3aWRlayA8cGpkQEZyZWVCU0Qub3JnPohkBBMRAgAkBQJAHlGAAhsDBQkD
 wmcABgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEBaK712xKT80dOwAoNjy2Xrebr+p
 AQroKNQnIzaR2QysAKCXRA9XldUcwxSOzRJNhDktAKQbZbQkUGF3ZWwgSmFrdWIg
 RGF3aWRlayA8cGpkQEZyZWVCU0QucGw+iGQEExECACQFAkAeUbQCGwMFCQPCZwAG
 CwkIBwMCAxUCAwMWAgECHgECF4AACgkQForvXbEpPzQudACbB3QlE/GfSY+umOHI
 y+3UjdMKuGMAn2JC4vrcEPwg8XMF5iEIaEZ0tNmVtCdQYXdlbCBKYWt1YiBEYXdp
 ZGVrIDxQYXdlbEBEYXdpZGVrLm5ldD6IZAQTEQIAJAUCQB5R1AIbAwUJA8JnAAYL
 CQgHAwIDFQIDAxYCAQIeAQIXgAAKCRAWiu9dsSk/NByVAJ91gG7VGmIK1H1LyHnW
 ZPI8T7WRBwCeP644asOCGfje3+NjA0F9OHoL2z+5Ag0EQB5RhhAIALfZ2Kq/Yd1j
 X4+kdVgCQqHP9tEHjYLwGICL3Y1i+whLqUx/X+MZmt4vNZLaoaqRXhMD8A5c9tN4
 06ODB6afzS0feQE/s3j0bKRviTvUedg+CLvt9anqf092gRt1MnKAAWsw+WNqfCNI
 xsONpWWS5LL11PLyEOhxqsEvcx2IpswjG398MINFwHo7dUielCDpAPgu8tCVLpWb
 GqUBiWdqzq9jxvIS7obYUmr0VBqElP16LrcvoUs8W+AGvkfTZW3iX6yPhfpnycKy
 OnStwtO28Ud2BlRrp1YLJWv8oZcYDP5p0GyhbmCbj6qG+BrA8XbIgASFZHK65CWr
 ++Zc5tztIBMAAwUIAJVrsEErdqxbj7qdJXVebkQZLe/hr5fFOGdOwMmvNbsI2nHj
 0B/L8Gfw1v2N6K5ST68mSH5gPpDDkLqDfqY6OcN2LBhVvOdEGJv7kp8x0XK/vsbj
 jARiO6l7ZrtH4E78oiHzYK1yGFNMi6c5zpO6BXRUAVmKptL/BRu0UPRMfScyIbnP
 gT0dcOiTazJ5U9Ol+Mjk4S/YLqe/05JQvmzKzSht6E8BbgiZxwsrWB+CLpLwglbg
 f4NX+BAjApvoesbhkLOY03bSgP6CsRbL7izgVmfAHbOJk5eIYjSEIOcqIMyg3cp0
 kZI7omon6uhjl36Ad1uEwjkW7jPgCz9a62bLr3eITwQYEQIADwUCQB5RhgIbDAUJ
 A8JnAAAKCRAWiu9dsSk/NOa+AKC/grZ0DrDsO9LtCEQKwTcP7EQYBQCgsk9ZmVug
 9caBiftOC/+/0ej5qqg=
 =/cMH
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.53. Brian S. Dean <bsd@FreeBSD.org>

 pub  1024D/723BDEE9 2002-01-23 Brian S. Dean <bsd@FreeBSD.org>
      Key fingerprint = EF49 7ABE 47ED 91B3 FC3D  7EA5 4D90 2FF7 723B DEE9
 sub  1024g/4B02F876 2002-01-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxOCiIRBACyyyoMk5OyGdOkR0a4fj8zPJ2AOielQ1BYv7JlIWdNeMHdQ0gj
 liTgXwDimeBnElw7sNrmdfocfwKbmX33exFPa3AkJgLflBcuH9+xE3ozgzMl6t76
 QL90PPIc24Er670NnhF7Smvubus4IdckvM24kuUTINmiuFzVwuwWdXdwvwCght6R
 HPpuFeiMZHRJAiHmu9AkKrkEAJRLmRGgdqTQ6RRIQobqGS+1grl6AsXHzKfvjx8I
 //12yrFiUcXE+167I529OW2i4ilmVjBmnwwe3750ZKBIp8OUBkMkfMuTSyCCFD22
 CX4N7D68d8eCJiCqv0jMZGnoWoMulmWzdyplcg/FhdLzUfpXLWX7/9gzy9k8hKBT
 Ou2UBACRLG7zwgKcYx4yjHhsCxuqGOeKtcfF49ghCp1s+wPsnXy8b6ZAY3wFeHC5
 LFyUsQFarizV0aeqJoOXEB296xZYPpgW6C+rajd1WVi7zhPxsfYedldX8HtGDMKm
 FRN88P75OGjMdFOYrpXTqUAJnoTUN4UynLV6WbfM7Cne0syg9rQfQnJpYW4gUy4g
 RGVhbiA8YnNkQEZyZWVCU0Qub3JnPohXBBMRAgAXBQI8TgoiBQsHCgMEAxUDAgMW
 AgECF4AACgkQTZAv93I73un4TwCfWqT0UeeEn9qstLTycDZF6oiKUusAn2dZRiNX
 06KUv2qJk2g88nUsBXgDuQENBDxOCiQQBADXY+I+CYMmiant5TBMzh5JfqhW2FXa
 aZDgi5XTVAStL6AaygeLIaVSSUUuOxiD4JB7vxHYB7pyVg71/lg5moud8NP2HNKW
 YR2mZjCQ9bHRQRqqPBTMrSHJpq10cZ6grxvVmte/oC4cI35wL8HEe2WwChZgk0tS
 YrA5PRt/UGWLLwAECwP/SxokqxcRa3lZqkpdwLgLWpyx1KNBg7wIJYLmALI0UxpS
 ezweD7OukikqZ1BYlaaWZ7N++r4sNDR9WTIv0ySNovxJnnlyo6FzD9RD7ijQbAvp
 nhpikigC+GvdnvmreMXYztc9WvFeJT/S8LGDkDHcm0ECmBDo3EA8W0+sOQsZxk2I
 RgQYEQIABgUCPE4KJAAKCRBNkC/3cjve6eroAKCCMN4s5AqvTy38BWmspFvSu90I
 IwCfTGutfs+PGUY9JJoabnnfJhfIgNA=
 =MFJO
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.54. Vasil Dimov <vd@FreeBSD.org>

 pub   1024D/F6C1A420 2004-12-08
       Key fingerprint = B1D5 04C6 26CC 0D20 9525  14B8 170E 923F F6C1 A420
 uid                  Vasil Dimov <vd@FreeBSD.org>
 uid                  Vasil Dimov <vd@datamax.bg>
 sub   4096g/A0148C94 2004-12-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 XmPkHj0KHckscg/fYw==
 =Yp1b
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.55. Roman Divacky <rdivacky@FreeBSD.org>

 pub   1024D/3DC2044C 2006-11-15
       Key fingerprint = 6B61 25CA 49BC AAC5 21A9  FA7A 2D51 23E8 3DC2 044C
 uid                  Roman Divacky <rdivacky@freebsd.org>
 sub   2048g/39BDCE16 2006-11-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEVa4hkRBADRcg44myl39Jv+OO9DMl2XjrS9JwguZSVjCHY2Tj4urjsEjcwf
 3ykYpJbXkK0KHHP5VTfoIp0MwoQdS4Xx5uHMHg/re5gws7KU4DXFmc9gWd1+eVXK
 PEMfWVG94qS7pG9e5aS7znglPNVUUBMKVI0VgD4fsML/92RFJl7iLFY7uwCghVfP
 952asGrNrV9T9+GBOxKUjvMD/3be37yXGBcS2f3Py6gHbv4vC0CFtfXUM6Zclz6Z
 8FGv0sYDaTW94FPkXqmcUaIjH5KMyig8Y93UquZ04stFgYkxwku1drHZb4hnuqmv
 NR4qvycMye1dMC9824+FpZkhP6ItjMcbE1PxRhQVU7dyO0dFyUlEEiMrTPhzLiJj
 aR6pA/9nW7NSJIaSnDrJ8Uq4NEIjyTidU5JCZLJJxTbSbEe5FrOSINENppVbmUzj
 CMXqyP4sHXtEA53Dl38dDjWz08A/c4dK+lwxtjDQ0NrLpXHrnqWc7tNW3XtayCiH
 KjYTUbj2kHV4Kva73zJBAlN0N+D58TfQQDisnaw/cGebU+5/ULQkUm9tYW4gRGl2
 YWNreSA8cmRpdmFja3lAZnJlZWJzZC5vcmc+iGAEExECACAFAkVa4hkCGwMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRAtUSPoPcIETDXXAJ4t7ojZLL46SN/zLVTT
 4qylgoqfNACfSvpuziRIUKGLO/YdkYe1hiJqknG5Ag0ERVriIxAIAInh7G4TY8ky
 NObKXToSjpvxNhY4JQMsJ43dCHTkT6CwAes96mhAscYF3KfBcIFhv3Oj6LhyMe8l
 J9A8wcAPnYzOzjiZLrITF0IlVM1L9VT49tkvidOUMykKvluYKMmntH8fCi5pBKc8
 Y7FQ5Kc3MZ/2dge5k95mpuWmuAjAVJXKd2ONAPSRwnxplJo1kA7Bvp632TRbDEjx
 mwtg48FI4Blwu19i8rpwzRf0iCp78UF2ypoyrRqzudLXcMT4yS2yU4z4mbU91qbc
 PNCkaMP9/HyoHnIA38bs0tMUUawKCeQZgCkTV1R+V/J5uoRIMsSBGfX81RADvEB6
 HtYPrUFCYs8ABA0H/0PBej8RqZJmWU7qlpoEX4gEG8FpcsNG2RGNjuSu6l19xk1E
 RF5tYg2N3hnqioWri1t3BJn1qpHgSL+mJJRqf00c2U5XUKuxAvTWjARyqa2G+WiF
 hPc1pmE9Ty2n9XkmT7G3jidTNHXbqsjEK0OCZdLJHOkTuStUjn8Mz2PpvlZoj0Mo
 VYEE3Paet8mFH+Y/EjHKTe30RymAOQOlc3gKEP/2qkp0Zqkb0FqklLCUQvvjn37k
 /oIcF/lvmIieN/on565dggchLRWCX7dMI6QDtEnd72jwpGo30oVUC3NlKoEggcFA
 jiVbPR/F4UhBtjcB6GCiLHvREKjL17gCVwMv4mKISQQYEQIACQUCRVriIwIbDAAK
 CRAtUSPoPcIETGfTAJ4tppNp16pURW2x6Yi3GwY12/Rb9gCdGiT6lz3e0Ffo3EDl
 3I1WppEoQQw=
 =5OWm
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.56. Alexey Dokuchaev <danfe@FreeBSD.org>

 pub  1024D/3C060B44 2004-08-23 Alexey Dokuchaev <danfe@FreeBSD.org>
      Key fingerprint = D970 08A4 922C 8D63 0C19  8D27 F421 76EE 3C06 0B44
 sub  1024g/70BAE967 2004-08-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEEpzAURBACu7RDb0dP0oorBa7j0Do1auzG1N2wQgTMIHoo7DhspaGjvN0RJ
 /dozO04jqyWopb/cA7iWMqn/7gX9ckHrKa1ugQRb8P7AhIZNmfc0B5AOCqeGo8gi
 o9y/XBhFRS3Osxxe0j2bIoL3pk0EBjHaa477yiZyWNjq5j8rPf/h7DudtwCgx14M
 iEwmKZ4hWMzeaKYcOFTIn1UEAJtUMrBbxMxchDnIuAn3Oz3ESpGpxSDVcTHUxoIl
 3A+mizXetzWX8lmEP8GM2oM1/dRCiF+l2v5tcnBO52PT1cFst28W6Ytyf1PamIFC
 GNL2CZUz/ZVRBPEZb7CfXJYupYd1AiYNCoSyh9bOv4Fin3Uhm+Ds1n6x3yulCFyo
 PJ9pA/wOMpGwCNSpNLcfz3gG5dh7PR2rhh0D0w7jZbO/l8D/81inThfBRb7B4KIP
 v1Cl/ynm+M4XS7Fy3xjfPHbUvHY/DNr9rqI0qsGU9qTubuBO+I647tjLFem8gaue
 yESeoU4okXMPblPXh8r93JIfbmi/rMcuddblJ5kw6U/IYYGGS7QkQWxleGV5IERv
 a3VjaGFldiA8ZGFuZmVARnJlZUJTRC5vcmc+iF4EExECAB4FAkEpzAUCGwMGCwkI
 BwMCAxUCAwMWAgECHgECF4AACgkQ9CF27jwGC0QXdwCgwTxjqqG9DppWUVvfQklR
 7O7d/QoAnj9qF7prbDCAq43MQJIJ1AP6x/4UuQENBEEpzAYQBACsVmYX94l7jndx
 byPUZl5SlKLJFSTIymPGLebcdNg8rF86aq/9d8nRrkrqUWtpQtWeAZw2GZn0n/vz
 kRbmaqMaHkmdg9g9xT2qstOL0rZhCyvLWVeNYUjgkNWi7Be3yjb11RLPOanpug5z
 Rfu6I/7qjOcVEoa3cjlahdK//xleWwADBQP9EWsXY1iKSQ1k1B3N3+EEWbzuOzaH
 upo7fLwamIVuX7K95YIqOawMlhERBD8MUxfrzJkOIbVI/81g802Iq1D2Xv46hvCP
 J8oszCeFjqixsOkg3HmdUyvTHnODBHsQMoy/37r5voAElx/LXc4Dm9DSR0rSTpXh
 mUdHtM0Y6XYEcoCISQQYEQIACQUCQSnMBgIbDAAKCRD0IXbuPAYLRD9GAJ91NEgg
 OHfLL9Taov5GEDVjEaD8MACfeTqtFRD4Piuxg64CGOdNBCJ5+p4=
 =abIH
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.57. Dima Dorfman <dd@FreeBSD.org>

 pub   1024D/69FAE582 2001-09-04
       Key fingerprint = B340 8338 7DA3 4D61 7632  098E 0730 055B 69FA E582
 uid                  Dima Dorfman <dima@trit.org>
 uid                  Dima Dorfman <dima@unixfreak.org>
 uid                  Dima Dorfman <dd@freebsd.org>
 sub   2048g/65AF3B89 2003-08-19 [expires: 2005-08-18]
 sub   2048g/8DB0CF2C 2005-05-29 [expires: 2007-05-29]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDuVKxQRBACAKP3+q7GJT2OMujrs3EgY2hdrTtLatgzpYGHsyewpckAhMPv0
 RGyVpcmXdArWQFMfBdO76TO3r6/CKRTEAAW7UieQwCqflr/qRWfaiMkqIDxll6wU
 ZdayDmuLPlp76xN7Cvy4p34lq91VNdrZ3FesMXH1xTPrnaJX4zhFEd1/QwCgnmvP
 UrU63yhExZOs0Cpo9ruLa8ED/0t2nNIoOM2cUghN6Lnh45cY1O+jnjJ4QMOi7bEs
 XwS4sIZLzZ6F07RCTTbcyRkrrh+WqX89z35ppi6PM2GZS3Zgz+W+gtzvrhhBcIHm
 0INVgsJJE8Afa2EzA2HIXsKl462Rojo8hmFXO34lCnQTe5khzLZVlUSxVpdoucvE
 ew/OA/0Sdos8xBWc5cFz7iycKpDCNjEuvMroPaFH0I9wPAX3ZBQeyHVLsUYDZKFb
 xDYlfLPfRikkxolxF+kuzqejgPMJe8aBZfPK8fIhn3IJw/5mOETGnaAPSQDCuN81
 jIQ20Dancod59Axoj53VB5bvUW49Z5lapV6rGLb78YuYxxQcUbQcRGltYSBEb3Jm
 bWFuIDxkaW1hQHRyaXQub3JnPohaBBMRAgAaBQsHCgMEAxUDAgMWAgECF4ACGQEF
 AjvcEb8ACgkQBzAFW2n65YJotACfQgyy6ccNJM++ogr4UI0QItTsSPkAoIYl/xWT
 hgWobGIOvCQzU2AV+NUgiEYEEBECAAYFAkKZC0EACgkQbDa6AvWDdPy/XgCfVqbe
 ZkvcFSken2EtrJ8I6husA2cAn2EsQdRTMlE+6A6Iwcg3gjPB6h57iFcEExECABcF
 AjvcEb4FCwcKAwQDFQMCAxYCAQIXgAAKCRAHMAVbafrlgvGXAJ0ZLXbxOz0dDh94
 SFIxkRe8KE8gVgCfcHnXtUP4oWpyHZ61Ptg/vbv+EMyIRgQTEQIABgUCQHWoBwAK
 CRDsbL+biYKsuZgQAKDQM/ws0qDgBBl78R3+bdiBepazCACfcqjBRkMtZRFL5k/T
 RD9PZHKVh4G0IURpbWEgRG9yZm1hbiA8ZGltYUB1bml4ZnJlYWsub3JnPohXBBMR
 AgAXBQI7lSsUBQsHCgMEAxUDAgMWAgECF4AACgkQBzAFW2n65YJTVQCeN8TR8YIV
 DYcq40EP6zU4UkwR1YYAnRsA1eDMeLWTtOW1DY1ajeoWY5N2iEYEEBECAAYFAkKZ
 C0QACgkQbDa6AvWDdPzaUQCfSU5c41XaVSRSnB+GbfjwWNksL8gAnjHNveKXl6s1
 bFK8FmUxZOQCVfRViEYEExECAAYFAkB1qAwACgkQ7Gy/m4mCrLkHyACgl4+J+DZB
 ugNnNwBDLvvptU8wS74AmgM/8NVgFiD+lV6xZeqqOecUPfK5tB1EaW1hIERvcmZt
 YW4gPGRkQGZyZWVic2Qub3JnPohXBBMRAgAXBQI7nKCzBQsHCgMEAxUDAgMWAgEC
 F4AACgkQBzAFW2n65YLOxgCfQb+DcmfgjgC65ecR/JGVHooiOloAn24vuwXem5o5
 5Ghiu8IOXmucO4jMiEYEEBECAAYFAkKZC0QACgkQbDa6AvWDdPxymQCfbffQmqj/
 8wkxEmExYxVeiXEUp7sAoJ+D1qNrbFeKnMo8QhzG6BqYtcuniEYEExECAAYFAkB1
 qAwACgkQ7Gy/m4mCrLl2+QCfV1iY/JPWDYMiC6SYtB5T4v7wjeYAoLqi88pkNlBo
 OwiKsYETI24p/yWhuQENBDuVKxgQBADyhmTjQD9dOI/M4X9sF+Nvt67rQvAu3j3G
 0stq7Pu8jtEdbRaz35izFxfwnY+/RHK7PXCVoAHze5yfZu6qxMxKZd/mcy+1C43Y
 WQ8C0M/pXg/YX3Qm08xTqUm7G8Cx6AS8/1s95MaSuc71E7bfMV5I6ja6+AjcMyD2
 hJiu8gewOwADBgQAl5YGq9pqpDqGYpGDFuc0Lwyu/vmEMS46EesbYC2CJGyyPpjs
 eRx/yitJe0lzURA96Kgb6qwz7OTzZOzyE/Qb+fNLwh3MOwgSbusqeHyRIC0w6ElJ
 rikyJwpmnGdPPU3Cwerp0oTHpqGRENjbcYOaaHE2iWk0wrw0869ipHnOQReITAQY
 EQIADAUCO5Ur2AUJA8JnwAAKCRAHMAVbafrlgrCeAJ4nDFNUblhVC9rNBzOMaKJA
 wqM0lACdGZS6w22ACrd0nHQcl8u34qGcy+65Ag0EP0H2xBAIAKGqfY3rPRteNSuJ
 c+0DJq+Rlp5eS5gIXI5LZ73WrSrbTuu0gx+ZTm9bz8WnAN8lM0DyJ3JkJfy0FOBR
 VLh0K/ksQ1NNwKqWrx4ZS4cKV2LMtAZe5IOsLxvYuLV4cPOrCeNZku42ehVV+n4O
 FR5UjxmXLW31mYdbo2TeNtABUCipszCvOpJ93L1FyBpAFACuBzMEO1DOMvtijXzt
 DJHDvOISFQLivOnPn9G99TPNJr4IQas7HPkCOqto8Z5kl+AbywYIWqYBJTEPp9f4
 VLwEegEGXZXRsdlIRPavwaw1i4pDT1GKEYKr84uw/MEm+LMzNiBKWIe1PjGUWmXT
 +qMC6bcAAwUIAJsJaBPPPFbO2Jhup4rkt11ea5spnACnte3FLWU3QR3Gm+9EbqHu
 BhkF1FhMcFNIzJMxbBSCPCxA6tgbw3C0frl6BtraNZDW0FThYcV+xundkZZN4zQc
 CWk8AS+A1metHy7SFldRo8ApBC8jWsUfdUw57QzKIv6lJoJhUV526pYcMwOkh824
 7aIwAD9Aq+QjMFBxvIsQSK2Spoag0/PUSi9gQ5Gs1GeqHHQ1Z93z+xn5y/fuumOW
 rb16/7b1lWYV77dOU3GqSgR3AlBqiU+zX+J7DEUs1w0HshGwZKOFYEP3RXqn7ePh
 sSQT2eHhyi5kb30Cjcah5emKagnUw+kcUnSITAQYEQIADAUCP0H2xAUJA8JnAAAK
 CRAHMAVbafrlgsEXAJwP0lOmgpEO/a658GuZPDFWDF/5WQCgicjIwyEShBkrEKX0
 Lwi7CPdGAz25Ag0EQpkMrBAIAOWN8f2FC5Ms8ivOr28XdvkDmUXEoDd9RDmJXcue
 4icY2gikIg41w2AoVAOtBO3B24kZaMIyPiprFoQg0S3HKky7uC0h6Hrwdh2BRdgb
 QSZ7X87yfBwvyKzcwv8vHM3/yQVdz0wXL9lnOJc6TZnATK/NeVJg94Hh+yk/tfOL
 Mx/NGvdJqzar9ZHP1fRxRRJNdpQfr1jO5CMCI7VQS6M/bhXJZyP3hif6BD0kg20n
 R1yv1pl7IeLl9XTfkFOrLhezCQCt9zQ3fVF1fDVi+MfDXEaikXZUrHqeEhx1QZcf
 hpTn8T7ooOrOm/Uv1EgPDsEyrFe9cwbcX70M706hitlFoUMAAwUH/2fd7p0HcUyE
 qbo0upsnVPsVrBk0ea1TKen+SI3p/QVp7QqoQoSrbQtfk0TbH+xhEv1ZI6PJsafa
 LOP3z/2ULOj6f9O4sXh4bAMuI8L9Ay4+s4RouTSYcEYr+IDnj0S7IgkHpOJraM7U
 6VE3nmoe6TutIAbkvyTVs+AVuPiBCutLKe6inIGGUM8+afdDm8rymfVyJDPpH4jm
 afsVGIXcKtGh0XdG+cJ3KzJSJp1gwFXBPmcUWuwBpD/MuAXQgkMvh6Eh5BcZ61Q/
 evjDpUENG8r+U7qvWG2ncuhrCEWj0qKp+7WFXazoxF7WRPRL76fUpckuJP0nZhYd
 pOWpB9BV7zKITwQYEQIADwUCQpkMrAIbDAUJA8JnAAAKCRAHMAVbafrlgrQ5AJsF
 SdOjEfuDShMW+extgDK2AHuqVACfSooNbyT/XUaU6pQQdj4pH0p2+u0=
 =hGAK
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.58. Bruno Ducrot <bruno@FreeBSD.org>

 pub   1024D/7F463187 2000-12-29
       Key fingerprint = 7B79 E1D6 F5A1 6614 792F  D906 899B 4D28 7F46 3187
 uid                  Ducrot Bruno (Poup Master) <ducrot@poupinou.org>
 sub   1024g/40282874 2000-12-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDpMfbARBADvuMgOIlEdTWlb4XvAu1YEfCijox47muRNbkA0yb0drMwYnV05
 tZ5cOK1uVELQ+gtGK7lDS5rQ68LPpXFMVva98skkVimzgfmQiqDOXiYW4BVE1qmO
 THpb5dIpHoXqTDILTLVomf6d8Z2re+IJUNvbrBFM616wndIQqux/O5LHDwCg1Hky
 KrYDoOT1lcDgSGH6RcqSoAkEAI+D4y6JpBctutEGWNcgijLv36g09LYNeC/gD2aq
 0bS/4c44eoPkMCBBn8MM9AIsK5sfne2GuglHcUM2U82s5UbZcQl8vzcyG9AVGQGl
 aoO/duxFKPQC70/xEa26Bwjv78cVWm6hLHoMZRXvsprr3pQpuZHmzPWwwxipqXkY
 gYApA/wMrLwdewzd4yEMB5O6y9WSd+FUA/y1MS1+9epdbzPnpUszR2QKlA+XblfD
 8KdxxUjIjt6WOXEhQ0GCWfRauB0MAZHTMkA/NVnmR+pI6FSJ9LJ4s6+BoFRbKdDp
 JY6yJUZzqRgxgo7tIcpRsRuXP4zu8KYlCPL0Al3gSW2DlKYxirQwRHVjcm90IEJy
 dW5vIChQb3VwIE1hc3RlcikgPGR1Y3JvdEBwb3VwaW5vdS5vcmc+iFYEExECABYF
 AjpMfbAECwoDBAMVAwIDFgIBAheAAAoJEImbTSh/RjGHWXsAn0/3nHkOH2WxLdWl
 ANdjJDzkMLywAJwN6CBCDKSbN7OzfNHTx3XAEVUUmbkBDQQ6TH21EAQAiEIQKsg7
 Pi2k3L9fFnDDAcFgh2oL/MpHgN4kKYx2aoTr02O3rBmK3ADCIBqj3dlWMavIOuzu
 1DvmvsloIcDwsMsc846bjQq0R20VaiNz4NJqZfhS2/xYPzJo9sPTncJOGQowjv+J
 GqlkmvLVSLSzYPh7OZjdw3SxS3zFPEQg0ccAAwcD/iZIddUIenySJdgs8WIe26X5
 r34/0TlyxiwtlzefYpVHHYD8CzVhYPD+iWUpDv/10HC7c58JTxNUGyN2UGcaDNRc
 g/VJqRahYxz9LokB+vRPmCyoP8bhLkrp0fHZFnFpH4IY4WQecLBfYJZZF/K7TLLz
 O5tine3BIL/LpM0nhVWJiEYEGBECAAYFAjpMfbUACgkQiZtNKH9GMYe/7ACfTNKi
 dschnmutxCWw5fcsyqP9oYcAn0Cf7InoUX5AUFaj4dFZ4IN+9L/m
 =LTGr
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.59. Alex Dupre <ale@FreeBSD.org>

 pub  1024D/CE5F554D 1999-06-27 Alex Dupre <sysadmin@alexdupre.com>
      Key fingerprint = DE23 02EA 5927 D5A9 D793  2BA2 8115 E9D8 CE5F 554D
 uid                            Alex Dupre <ale@FreeBSD.org>
 uid                            [jpeg image of size 5544]
 uid                            Alex Dupre <ICQ:5431856>
 sub  2048g/FD5E2D21 1999-06-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 hQVIUSh0Um5WsNHU+9T5ARAAAQEAAAAAAAAAAAAAAAD/2P/gABBKRklGAAEBAQCQ
 AJAAAP/bAEMABQMEBAQDBQQEBAUFBQYHDAgHBwcHDwsLCQwRDxISEQ8RERMWHBcT
 FBoVEREYIRgaHR0fHx8TFyIkIh4kHB4fHv/bAEMBBQUFBwYHDggIDh4UERQeHh4e
 Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHv/A
 ABEIAJAAeAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJ
 Cgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgj
 QrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFla
 Y2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
 uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQAD
 AQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncA
 AQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYn
 KCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeI
 iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri
 4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AOJFx4keL/hHrOVYLJmS2eNd
 qGJVbK5IAyo78n1Oal8U+GtMdhDout2etXkUgjuIixxIwQMxXbwcYbIzngnnBrmr
 qO0gLXl8s9sl1GGE7XJ3HoPl5yWwMcc9Saz5bLUdPvRqMAnhtY5VXz7iMxg4B2qx
 K4dyCQD1xnNedC7OmrHkkrGddqNP8QajaPF5UUu2VU27cKRnjPbk1Y8OXMMOv3mo
 XSpKpOY2mG4hhjkVX8RTzvrFtesx3RxGMyKXbcuTt5ct1yR6cdKwLq/dZWAZV7cd
 MVvGnzb9UVKUqbsz06+1+zu52mTZHO/LSqBlvw9f8aqQXLI6lJo0jCgAMACBnpx9
 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
 =CMdE
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.60. Peter Edwards <peadar@FreeBSD.org>

 pub  1024D/D80B4B3F 2004-03-01 Peter Edwards <peadar@FreeBSD.org>
      Key fingerprint = 7A8A 9756 903E BEF2 4D9E  3C94 EE52 52F7 D80B 4B3F
 uid                            Peter Edwards <pmedwards@eircom.net>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEBDlWwRBACjdnvu/rCOVEjpYmlmQmmmYZ0hbUdustNozm8dtKpg2w+zED3z
 9kHcoXEY2i1jxmJrHd4PPcvMutJB5AuYU4NiBmdMgBgfZvW7yaD+tHfvgozNyEKa
 3Gcddamy/ENCFKoSTEuCDxH77zf6DXh/B/Ekjav0sZnGHPqFhUdKzwh21wCg57uM
 Z3aL0+sIhiNYEJK93yjXt0sD/2F6+T7dj7wjdCPsb3mh5YSTjGeSXjnXHfeFQmmA
 /dPyOkWOAuTo2uR3AeVRrJ6rslKLqyl773HX+eM5b52gIsFZ+CzSEiHSrHEqOR/o
 3jzzGWhZb3Q/dbeWsPrtw32XUOdiijH5h2PyfKQ6reu+lpH8oKTbvOoycguHnsiN
 8zt/BACCRoxdjw3f5L4RMfbdxN8/9GLcDzjv27s4Jn17snXuOyNzWxky+hNW5InM
 wG92m9/a4XtZX6viK4sY8kfFLvAx95vaRiPJOPdUIx6Hk34HHsXdQ6XbUaadlBuG
 Mxr+aT2o01qzxi+dS8+SWXjCBwT5mRVdOZq7RFYd73I+FrzltLQkUGV0ZXIgRWR3
 YXJkcyA8cG1lZHdhcmRzQGVpcmNvbS5uZXQ+iF4EExECAB4FAkBEXVYCGwMGCwkI
 BwMCAxUCAwMWAgECHgECF4AACgkQ7lJS99gLSz9lewCgtKJX8EySD4x42LoZ8imS
 gYzQ2AMAnjAlfeFF6q4Lqiv6ikUW7uSGu2WitCJQZXRlciBFZHdhcmRzIDxwZWFk
 YXJARnJlZUJTRC5vcmc+iGEEExECACECGwMGCwkIBwMCAxUCAwMWAgECHgECF4AF
 AkBEXiQCGQEACgkQ7lJS99gLSz/1ugCgwj+RyWcUk2WtWZlox7rmTG9ymDsAoJ+r
 ckrEYUJfPdH0GKonpipJQwL6
 =73v6
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.61. Josef El-Rayes <josef@FreeBSD.org>

 pub  2048R/A79DB53C 2004-01-04 Josef El-Rayes <josef@FreeBSD.org>
      Key fingerprint = 58EB F5B7 2AB9 37FE 33C8  716B 59C5 22D9 A79D B53C
 uid                            Josef El-Rayes <josef@daemon.li>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQELBD/4Zd0BCADEH+EDDjEX2ztufB5dele5Bt4XBg3cYncvlTsVEDLR89xtwmFs
 3no9Hs0ImTQwplsDgbixBL3DXWi46dwVK0MGYIUycJxLfsgFdlWngcXYkpWF3O8g
 v4YhytcVi9uSBy8oNB7huiY8IXh4XPgiOKztgCVJZbIgi8ahoif04eHTT9YGOL5x
 Qu+n7D74zAcgzK0XO+O+WXB8EoO/saJxzcCIeEGzfCjq4VyL6JB+1c9CgWlrpI7K
 LOpFqrN2qHygIMxCicp/163AdxD9I1hUtlF/sZYY9BpkbweLLqxKf4qtDYAMZLuS
 xFGfIG8f0imfFeTXt85FgYGxqLMlmdjFefIpAAYptCBKb3NlZiBFbC1SYXllcyA8
 am9zZWZAZGFlbW9uLmxpPokBOgQTAQIAJAUCP/hl3QIbAwUJAeEzgAYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRBZxSLZp521PM0PB/91jWBC7yI2obxE+VGsItduiPhC
 0x+Z33suGP8f7ewGBlztKC8y5N9jCGCfG9auwkJ9Xo27zCpMIkba4CfbRqyLxWoh
 ZluHQg5uge7AGefmsdfDsfZq5mPNtUkB8uVn3tXGwVVsxknw8PGtw25wbDCOXTCi
 t6L70v1gJfK8UxFhu0VCdOxbRAuQoIkE+bSO6g8bJrt6JFzhVpuHdgxwJbziWYSp
 nEJUN4Eou4UfCteVQrkh2O7ArHMmAEb89s5xbfNrQ4NdVBXHfsrzEDhWOqgiQ/4m
 o2DAs8iy2aCbWRaKG6G57g+uwhbqEN3gkeDfjhcpBMLqQy8drqx+erNGVYnKtCJK
 b3NlZiBFbC1SYXllcyA8am9zZWZARnJlZUJTRC5vcmc+iQE6BBMBAgAkBQJABsPr
 AhsDBQkB4TOABgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEFnFItmnnbU8miAIALbu
 Y15l3+9kNlv4Arv26aYrRcIYEUcCLIGZnD93NPnyEza4WwsUbCvYgNpKb/wojAA3
 xUdzHtRUfDp++eQU72S7DcRkkTt5vrnwKnH9kMsr2/hCIaO3ESiOVoPeJy91fHEF
 I9K1qP5noJQjfjr1w4ib86spyVb5LH3QPEnyvDX/UTBYiYu8UUYonitLZ3iHk1Ku
 x9SQoPszvkxdM1+d25pbG1uSV8JQRym6TsPQp3RwpbCy5hnwMbDLaWl6fbRwtAxZ
 i6A0cppdbgi+DDrOFoFKuU25YKKOKl76Vy+cpjYPBPRH3mOTYd/i2xliEP56dTJU
 4QqDJPpnJdmvXiCFt5k=
 =UfKm
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.62. Lars Engels <lme@FreeBSD.org>

 pub   1024D/C0F769F8 2004-08-27
       Key fingerprint = 17FC 08E1 5E09 BD21 489E  2050 29CE 75DA C0F7 69F8
 uid                  Lars Engels <lars.engels@0x20.net>
 sub   1024g/8AD5BF9D 2004-08-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEEvjRYRBAC1jMkUf5HrEQcNSLSK4NogjNTuwxE9d4PjgOiJ04L/haKeUAaB
 x21REw659FNCOW/HDuCzNH4POFQYoe2dyS3lV4xk+YsoJ50NuoCro/tiigBztKB6
 u/Ukq8bReroNwjP1Q2TnCHWxzDIq2HJ2FQtbXXlWKe7ZBu/LFwAsHLenLwCgzkp1
 i0gxqzxWrzIApMiKWB+HORED/3Jjom3MOEZfr27aYvY18700uXui6GAkcxTj2/6X
 s1MVpQt8F/BAgKYkw8Q3qOgoaJPHpnBQXMIB5TXCkXxZYwvUFlLHMOghpZE6/eHn
 3+UdvqsxHGa59Ym7HYzS1IExBVNfof4MVsunQtnGaHyQDMrKt2zF2MmTgASzITWW
 GyOjA/0Qc0K+hUBPsiaVpNcCZs6vPxeU1qSZamyZlVIjfQgRkTGN94bJD7l4qzaK
 hpmOLF8eD6+pA936HVhLfmPsNFkpFgw10oQQVYIVx/Thj5tOX2o7VbXUdQEkdTTO
 t75c2UqZIdPKet/btF+NPnnT3P8u0UdVvpvMeq7thLuJLkDDo7QiTGFycyBFbmdl
 bHMgPGxhcnMuZW5nZWxzQDB4MjAubmV0PoheBBMRAgAeBQJBL40WAhsDBgsJCAcD
 AgMVAgMDFgIBAh4BAheAAAoJECnOddrA92n4OuIAn08LIWiZX5vZ5GvClSsa30Wp
 2LG5AJ98fEToSwavm0tAuDHU1kPoDhPSqohGBBMRAgAGBQJBL48NAAoJEI90JpT7
 YBR5I/kAnA3vnk2qg91m3nocHy6nS2tShMUzAJ9RQ1orEGxFGukfgtY9iTTG4Tpg
 /4hzBBARAgAzBQJCVYkTBYMB4TOAJhpodHRwOi8vd3d3LmNhY2VydC5vcmcvaW5k
 ZXgucGhwP2lkPTEwAAoJENK7DQFl0P1Yg9UAn0/WHYshCUKP551shW3EtjUFvSF/
 AJ9EhPPzNRdgS5cs8Hifvd29McguHohGBBARAgAGBQJD/deEAAoJEAwB9WIgsQYJ
 9lYAn3MTmAp+MZn64phFp346NFhy1tRwAJ4xd16I6dRhDMSiNVPQPybwAZTfirkB
 DQRBL40XEAQAobWOOZBUJm+Twj/sGj0bUdlZ5H1Qos5uWEEjamcElcmN4dG6Dyjl
 X+X4dmcAQADm2JH5aajdWKKDjDNaTRbdV9XCe/iogYD9UhbPEQuHovTuDaOQrRsF
 nSCcXH1GABWF+Cp2JA4FVS1gmHykr+u9DZP7CsOosI6PWmOYwySidHsAAwUD/jVL
 iRLUj2qR3ejYTa61ATT5wb6UtuIohpvBNFj4t3V+LWATXmuOP1mYhy3SmoxUcmFj
 uULJ2GHHb+wNnP8YpGdxRVFkBV2grnpKqPdCkcm1ON707w2d3aDCEl9KGzhEvg68
 c4CF0hVkLGIs0qeZfsOwxE4jdYpPl8YuuRZV2ah3iEkEGBECAAkFAkEvjRcCGwwA
 CgkQKc512sD3afjgrgCguloybHuwhKsmOnnD6HSp1G/s4mkAn2VeB3Euh8fg6W/9
 gcKK4GHoPC8/
 =T+Zj
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.63. Udo Erdelhoff <ue@FreeBSD.org>

 pub  1024R/E74FA871 1994-07-19 Udo Erdelhoff <uer@de.uu.net>
      Key fingerprint = 8C B1 80 CA 2C 52 73 81  FB A7 B4 03 C5 32 C8 67
 uid                            Udo Erdelhoff <ue@nathan.ruhr.de>
 uid                            Udo Erdelhoff <ue@freebsd.org>
 uid                            Udo Erdelhoff <uerdelho@eu.uu.net>
 uid                            Udo Erdelhoff <uerdelho@uu.net>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAi4rWsAAAAEEAM1u8Y60omElX7Wtrh75P8K0L2Gp6omV6iDuwl9kXYhN94jF
 DE1F4xpkRDWvQxsWbYeIk2F3VYGuN12BhbRNcNqoyniQt2XMmbdEmp6ltumH5WbG
 jR5Xg0LkJ5AJmxvjJXXA9q+/eTfmyTfPjnCL70cTMWHdUl+EBUPoh1XnT6hxAAUR
 tCFVZG8gRXJkZWxob2ZmIDx1ZUBuYXRoYW4ucnVoci5kZT6JAJUDBRA0K3Q0Q+iH
 VedPqHEBAe9vBAC+el5mJpqPkC/+om/SSE7mxyuUqHAx1tNUymL8gTuV3mFB0goM
 xkxhUOMMYe9z2zyi+RXrECfLT2OqqUA60EZpl6Mgymj8SVZSv4ZwXdU8cgynYNfX
 T1pC57mN9mxL10vTTJEix7QsrVz0W479/IkBrhW9nTidQtORW1Si5T5IA7QeVWRv
 IEVyZGVsaG9mZiA8dWVAZnJlZWJzZC5vcmc+iQCVAwUTOwzFWUPoh1XnT6hxAQGl
 eQP/bLMp1qSdkt2/BKchpx+lhOemCmT3LHQ1sNzelb7dBwnsvE3Z9lOycH2pm1ro
 j6x3vmcDAqZ1yh2eFEVNK5abfhuI3QH+9QdgvMcSIQgF3VIMer7JXxNtFFX8JRKm
 +YfLfDifcK+B2HRkpMt9ETY8b3/cYz+gbdKNe4nVde5KPT20IlVkbyBFcmRlbGhv
 ZmYgPHVlcmRlbGhvQGV1LnV1Lm5ldD6JAJUDBRM7DMX9Q+iHVedPqHEBAYHUA/4l
 j98KC7y8cjapO4Hi0r/eO7gUwDujvrBMYbWuhmNCO6xlPfwRNm76tnNiTFdqVLat
 XSrQwEUys9Mq9xe2F2RuqSfYWjmHKX3/gNW3gRJbnBqO1QN6CDqo39a7LgllqFf4
 yFj9V6i1c0WSBiOeWy75DHpsfXHupMxZWPPRWh0TnbQfVWRvIEVyZGVsaG9mZiA8
 dWVyZGVsaG9AdXUubmV0PokAlQMFEzsMxhFD6IdV50+ocQEBzqsD/0nX9rV5cAcd
 jFTayQvoAjb/nIN+TJVHumuC/Glp9fKHlfTjMnsUawma+iQESjUB8XgyeJ0WvR8M
 vQGEMowYr1YTtFiYfFOvrzXZmhB6NfhFV3s34ZLDeBnncUqkas79Pi9G9AP2Y/Mc
 c//i2owj58xTfocYNT5IxVVYjB72Py+3tB1VZG8gRXJkZWxob2ZmIDx1ZXJAZGUu
 dXUubmV0PokAlQMFEzsMxiND6IdV50+ocQEBBJsD/1SVP70fNa3ShAn18+yEXOIL
 TlFYCUmGaBIeAsd7r8tXFYbf5STAOEOiqBB9Y7V1tV4IriACru+9wo5wBQoCLBT1
 RNj4NhwVvkGReTDsA+Zz/vUULrbklVKO724DktO0+WRbn/w99trttuUTGvTHRER3
 BjuOfJ/QoLlnLAsDBMov
 =TCJD
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.64. Ruslan Ermilov <ru@FreeBSD.org>

 pub  1024D/996E145E 2004-06-02 Ruslan Ermilov (FreeBSD) <ru@FreeBSD.org>
      Key fingerprint = 274E D201 71ED 11F6 9CCB  0194 A917 E9CC 996E 145E
 uid                            Ruslan Ermilov (FreeBSD Ukraine) <ru@FreeBSD.org.ua>
 uid                            Ruslan Ermilov (IPNet) <ru@ip.net.ua>
 sub  1024g/557E3390 2004-06-02 [expires: 2007-06-02]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEC9nOURBADtxz6jwoFt/gIogEFIebDz4S/7jef4ou9prQaWJKTmLYAe3dB0
 b3iZaeUZAN2HnYrtNC9QUlF8ChMpVLsLp00+nL1A7wO8qfPdHXee5iQ30JgsozDG
 vdoAB6zA5mCe4+maZ59R9CCNrc2aB7binqOxKfiu65h46DocCzLVrBC7BwCgnyWr
 IQp7gzqOy6L4GVycyOwBArEEANgdO6O3CO2w6ovxe2cvlHV6NiqbEWeCRzCVrCiK
 ApB69ltrOqUmPn0cHV5+8KPXu0AaBBkmwNjuw0W/etSFq2tachIqY1qMjVFxvk1v
 qxu+1fq5mB0vTNALJ0nDpG3j4TkKejlqsXOgAYh8/8aYxVhxgxgD5Ni6C4UTBb/B
 sw+HBAC4UJozMPg6gsSdhYYqY9KCCc+xntaOxFKj4ir+o2EZ9qJ6Yg/FDygDxULP
 tfCG7MdzRyHAdpMBOXlp+2VB5HbvM+XCiLh+Qfj47HZgT2jR7GgWM8HCNLMydqUs
 odh3/8NJT/Q0AaYBKDKvEQPrv9siRvNLYfM9fFQ570Nr58wExbQpUnVzbGFuIEVy
 bWlsb3YgKEZyZWVCU0QpIDxydUBGcmVlQlNELm9yZz6IZwQTEQIAJwIbAwUJBaOa
 gAYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCQL2d5wIZAQAKCRCpF+nMmW4UXr+4AJ9i
 Rv0F9CXB6P9s7VxgagGiRgnKJgCgm9ONcZkKiRJz4ThM8+lUVn7/dvSIRgQTEQIA
 BgUCQYJBHwAKCRAiylhMenujwLSuAJ4vH3muPfL2j7g0i3tBxANH19HJnACfUqbj
 KgRULoLdd5Xd3xv1TQMtYCKISwQTEQIADAUCQYS5HQWDBNx+SAAKCRCrL1pbFSVp
 kLOhAKDo7/Q1gjtWnHNj4KkJc0JwrdjLoQCYny4YEuaH0XQZmli1JnYDiezQf4hM
 BBMRAgAMBQJBhMTSBYME3HKTAAoJEID3vqaVM+drOnUAn0+1xLBukkS1LUENeWwI
 FkO5+xqCAJ9ML9gITzyOy5XbQzOG0MyH/YkfH4hMBBMRAgAMBQJBhMW+BYME3HGn
 AAoJEKBP+xt9yunTpSkAn3YtJf9DIdaO4YtRtnPNlYZt4CgHAJ9vnB4AM1SAahY3
 pgrhO9z6XIw3qYhMBBMRAgAMBQJBhNROBYME3GMXAAoJEIfaXA0nNZpRPpYAmwXZ
 /pIjOqugDXN/MQErc8aG7pVwAKCaZXtnm8CT45OWVeVAIu7uDmY0F4hMBBMRAgAM
 BQJBhPV8BYME3EHpAAoJEL9L0OYEnbh5Jx0AoL0vfYGS3iWE5u66RasB94xyQbIr
 AKDY22dEDqObs5DwrjkQHX718wiKQohMBBIRAgAMBQJBh7rjBYME2XyCAAoJECRx
 EX+pUQLB8iIAnijUZVkQloDfwcbVg0w6xuOFiCbOAKC9hggzd3ujHQ3vVnYEoqS9
 lv+rYIhMBBMRAgAMBQJBh9AWBYME2WdPAAoJEHPeaYzHFAWilFUAn2MLzNKhtam8
 L4s4h68T48QgHB6vAKD64I+m0Z61y2OMH59/j7JYbsZFNoiiBBMBAgAMBQJBjJBK
 BYME1KcbAAoJEB9/qQgDWPy9MoYD/09F+lAdn5JSk+QE8WOyPO7ZP8uqVoiCid9+
 FQynmcneq6PsjhO5KDyHwK+nIxWwsghlKqG5gmCuN4/YF4wkxx+6mVt1O5WFhlSt
 x9y8lrN8csLMUCQzLaluD7hpYyScT1uGOLI0q6HgZ8pP2XQ05uIGUIfjt17jYbSp
 DKphh+0ftDRSdXNsYW4gRXJtaWxvdiAoRnJlZUJTRCBVa3JhaW5lKSA8cnVARnJl
 ZUJTRC5vcmcudWE+iGQEExECACQFAkC9nZsCGwMFCQWjmoAGCwkIBwMCAxUCAwMW
 AgECHgECF4AACgkQqRfpzJluFF4VOgCffv/mngzbhP+88uSHERTu2BBkefIAnA9H
 hLGo5SaCSeWNwuqdgK3GvwDqiEYEExECAAYFAkGCQTEACgkQIspYTHp7o8CVcgCe
 P/DPle+jMtpgrrS7tnk5jeluAg0An2r5PK4eajYFLcIOoDk4aXThHEgviEwEExEC
 AAwFAkGEuR0FgwTcfkgACgkQqy9aWxUlaZCofwCePa9l9dsyD9k9tV2dm8aNYywD
 jEIAoJBiWx3/1gqZYmjed+zV6vWa0cKgiEwEExECAAwFAkGExNIFgwTccpMACgkQ
 gPe+ppUz52ubhwCbB/EXTvUfSYc4vFaQMGa03naiDK8AoJ7rBjM0S4MrH/yISFxF
 PYQgC+RyiEwEExECAAwFAkGExb4FgwTccacACgkQoE/7G33K6dN60gCgu6O//jpu
 JSok+bBc4X+AZKJK+qEAn0LswtRsAtUMDkA9jvKnBWCNAxQqiEwEExECAAwFAkGE
 1E4FgwTcYxcACgkQh9pcDSc1mlFARwCfXf65/bOAJHXeKIKgyvpbpQUSCk8AoLAK
 v42dyiYsLhzUH903wR+OK3LCiEwEExECAAwFAkGE9XwFgwTcQekACgkQv0vQ5gSd
 uHkgFgCdEqxUdKNkt3EsPy1MaHEJWpKbjgEAmgKdjeXG5Q5syxP6AQtgwmm942zH
 iEwEEhECAAwFAkGHuuMFgwTZfIIACgkQJHERf6lRAsFo4wCfR9sK68UaZUGInWsP
 jOlbB1RlIGkAnjvuFzUSF2a4PdxNJXTFbps0sa6EiEwEExECAAwFAkGH0BYFgwTZ
 Z08ACgkQc95pjMcUBaIWYACglNKP7iXD6a3kC5ezCidQ9bw7atgAmQHVg/78odHo
 v3XEMz6hSYiA7ZB9iKIEEwECAAwFAkGMkEoFgwTUpxsACgkQH3+pCANY/L0sQwP9
 FwLOugh4xHDwloS4nfiCVEB4tGcUNUNvyWAirweCorPcAWz1h56EUDM2bEEQLNvN
 7KH//KLFl7P7w6HBg5OIsOxOv6pwM4cqFYSfZ1tCrqSVL8JSz2CEuqeBO63vwMIK
 Zuz5isBHWB3V9jR/FARZFK64pj5jqOdrhXlEsclw/hi0JVJ1c2xhbiBFcm1pbG92
 IChJUE5ldCkgPHJ1QGlwLm5ldC51YT6IZAQTEQIAJAUCQL2drwIbAwUJBaOagAYL
 CQgHAwIDFQIDAxYCAQIeAQIXgAAKCRCpF+nMmW4UXso+AJ9A1bzRrRjjeVPejggh
 dSb2MBtI+ACfTHHJ5L5tWTM4DaKE1zNslFcKJGCIRgQTEQIABgUCQYJBMQAKCRAi
 ylhMenujwBtyAJwPbdhli6lM80ElaFp6Z4k26mFmXgCgwOwFHhG8JmphwsK2EuOM
 IYtRL+qITAQTEQIADAUCQYS5HQWDBNx+SAAKCRCrL1pbFSVpkGDTAKD9L5kXDMJl
 oEVg8Z9WjA4YZ+DkdwCfcvG9fxWmuFbCieKMwooQhZPjTTiITAQTEQIADAUCQYTE
 0gWDBNxykwAKCRCA976mlTPna5OiAKCy1RqGuaaV2KEckQfu5qY4STRbpgCdEESQ
 rQjwdC53+itYYSYjl24gi02ITAQTEQIADAUCQYTFvgWDBNxxpwAKCRCgT/sbfcrp
 04YRAJ9KXOH+0A2gRhQaBpG9wYtycCMPmACfVVrj5SccNfCLfVCagLtwkrPjRkKI
 TAQTEQIADAUCQYTUTgWDBNxjFwAKCRCH2lwNJzWaUWIQAKCyzJw3bO+6tD4lz32/
 osDpvZnClwCeOFWWxTJWZmXa07c7rNhH8co562yITAQTEQIADAUCQYT1fAWDBNxB
 6QAKCRC/S9DmBJ24eZFFAJ4/0hvCrenteNbwNeXt9d7EsuJTIACg+3mOLi1EJX/7
 sahoqtQzZaxL1zSITAQSEQIADAUCQYe64wWDBNl8ggAKCRAkcRF/qVECwQzhAJwK
 h9jknd1hm8SPSdePW5y0feAytQCghhaLXPEDYmwIRUYAIbdJMD2hEuiITAQTEQIA
 DAUCQYfQFgWDBNlnTwAKCRBz3mmMxxQFordLAJ9kzuLcEMrYOwdX/ctHhOuwj5XG
 YACeLUfYnnx7CcB+KUVZrEscniV1eoaIogQTAQIADAUCQYyQSgWDBNSnGwAKCRAf
 f6kIA1j8vS0NA/kBfiCUi1miZl3UjuBICQT3tWZHrMuMUQ6MpMnjshiT0vrSvSOG
 eCGEwGkrBCl1VuFpHO93E9shjcLgzNwPSbtiasK/kzJL32Hyd1+Tc2SGoKrLSXiv
 4zJMTxwWBYzFCrniIz3+/XrU9D1WFGtBYc1jsLCvDKEW14RP59qs8TKNV7kBDQRA
 vZzmEAQAlY3mpmNBVkekHNNxs7W/ansqON4QUvAR0q2BVUvhHunVd02XNyQZTCWO
 SORhXX5jH2QIzr+igTWLGzm1I4Q6x1519I8N+rZMaQMsflvdNNOYDdfj5jbF8w2h
 vWcKfi7k4lenw+loDDaQZbEfdzR8qs1sR12oz2ZRc4Lwqxi1d68AAwUD/Rt1poSP
 2/xiYhq6yb+dPKEnYSdnAYVYtvH0+qztdSbQyYty5TSnuqJx7fT7apRLJ2g6I455
 yJpzyBZR1H8K3AQsH/VixMaVZl4xUUUwxbyiaZLM++WNDl58pjgJAvJueYPRTl/R
 /QPSo36OBYbqkzlR+U/TDxXnW9OvxSmA9hG5iE8EGBECAA8FAkC9nOYCGwwFCQWj
 moAACgkQqRfpzJluFF6l2ACfWWiX/0QlAZ9NU7g1wtD10jNJviYAn1qovdOHVYwW
 xfUIyIEOONF8sN1I
 =tea/
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.65. Lukas Ertl <le@FreeBSD.org>

 pub  1024D/F10D06CB 2000-11-23 Lukas Ertl <le@FreeBSD.org>
      Key fingerprint = 20CD C5B3 3A1D 974E 065A  B524 5588 79A9 F10D 06CB
 uid                            Lukas Ertl <a9404849@unet.univie.ac.at>
 uid                            Lukas Ertl <l.ertl@univie.ac.at>
 uid                            Lukas Ertl <le@univie.ac.at>
 sub  1024g/5960CE8E 2000-11-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.5 (FreeBSD)

 mQGiBDoc52gRBADCgyiLgEDhBbalLQ1VGkvfbdazaBHQRdGjsEPwPEG1xSI/5FFm
 0497ZJEYkUG4rXbgaNATSSS8yrqJ5i0rX2t3Y1TYOVim8gLq5ntUQtAdhHtnZD3n
 GbiBLRNRTD/HYd73ta4V789JMheUrQt192IRZZG8iKMjjaW+YQ5Z7nQxZwCglyEp
 33kslkv25cFVFWEHUhLvck8D/2iTzX35onmQkXdYEk8S8sS71UoSBgf0q5/4D6aq
 /Oq4zUYiChC7WGNNMjLSWDPsvt4U01SHfZVMOmbgJXmY6gE88tv32pGkLaIW+f3v
 BkKLwO8le5GvnfTA+xTyADcrqiZBdtH0zDd1jY61XCsAFyJmMnM+xbwT/dXa+Jtk
 h3CZA/sFdlpJrH65GHcuyuI/6bGwUkQqpTMCmYeXQjcEsTt2bWQ+knaAFJ7q2+uZ
 fmmzlhqNuPZ45TTd6BdRFtJFFOndi45yEZsSN7XNBcHGx5MshL4jCEtqQEDfUogd
 UbwkJtgK0URxFyZ906xhVwgwvX8eW9CzPj0wYsbYLZtGZ4zVobQnTHVrYXMgRXJ0
 bCA8YTk0MDQ4NDlAdW5ldC51bml2aWUuYWMuYXQ+iF8EExECABcFAjoc6IYFCwcK
 AwQDFQMCAxYCAQIXgAASCRBViHmp8Q0GywdlR1BHAAEBbQcAn0oa/bdjZ3ofFKf4
 1GT/UYftjziKAJ0Wzsy8sDahkaJbyWzKupp8Q7Uzy4hGBBARAgAGBQI7oHuHAAoJ
 EKkf+mOb7TNKOesAoIDjx0iq2xsnFfcECkh/zheU5HShAKCpROLbXal5pK3U2XC8
 t44oAXDL7IhGBBARAgAGBQI9S8/aAAoJEBBfSR2o12TYudcAoNufp4D+vHXyCX+g
 K/RMOpcLQmFUAJ9TbuD0ghWzqYY1VGdxrDusUux8dIhGBBARAgAGBQI9O+wTAAoJ
 EEUnYQZfFVEBfVsAnj/sw5aUDA2vEghr6ZgwzCmzPzeaAKCAMiJxQpog5s1HD71V
 3ZhLgk+KWoicBBMBAgAGBQI+sYSdAAoJEC3GaJzjyx7FiZkD/1H+Y2A1iZLXGBb0
 16UTUb7Dk2E6VO81SPtviliM8mx4onuvEHHJq789gi8N3TolhLPnPj1ZfEAGslIX
 5/JQRx71qhk3hDnGNaszxrgoTkYHQaaoxgZyeoWYP2wVHYF3eTXFLjh3Q8ZAZMGX
 yNwsYvvdMTIEP9kIQV/5oyuI4H+eiEYEEBECAAYFAkC9Dq0ACgkQ/PmauBrc0r5s
 +ACfetNYnG+BDKQzDeVgBsP/9depWVkAoI4Ey+1kZmeIdMAwnHOSV8b2TF/GtCBM
 dWthcyBFcnRsIDxsLmVydGxAdW5pdmllLmFjLmF0PohfBBMRAgAXBQI6HOdoBQsH
 CgMEAxUDAgMWAgECF4AAEgkQVYh5qfENBssHZUdQRwABASlAAJ497mVoCv4YJtvI
 begRpjXIpnPRhACffoiU3BSc8pN7gUlWtGZDB8Y1Xh6IRgQQEQIABgUCO6B7gAAK
 CRCpH/pjm+0zSu47AJ9KbtPOqVhHdF5APDbrc3olf7lyNACfc4M3ZZLSXzG2fsoH
 LoVX93P4xKaIRgQQEQIABgUCPUvP1AAKCRAQX0kdqNdk2FxfAJ9WA+1axtpqoafb
 5KAMCZB0ALSg/ACdFFizbtQM51ebXiNVhcT3rmVorCeIRgQQEQIABgUCPTvsEAAK
 CRBFJ2EGXxVRAcQuAJ9YP7X9N3xWPpgWF91eHfOtsCS0OQCfdKlgYCv3vJfFNjFj
 H9pNkBgjrtmInAQTAQIABgUCPrGEmAAKCRAtxmic48sexRS4A/412GhjArnp4sER
 F50HACd++Dmajzjbaycih0UyFk9Jhx7lkpNMFV0EyNKJq9unBfvuX4ji8kuq62ln
 I+p/avkjBkpqN9XH0YIQkCYh7X/I5saVWTSqUJGZMPR0HrnJziWyOAiQWEfJc4/A
 yY6IuS4HMIRvlcVql9MgMWUvsiCwiYhGBBARAgAGBQJAvQ6tAAoJEPz5mrga3NK+
 5uMAmgOksIQqUnvIB9AA/egOVWPNTIABAJ9iWClWufO9VSjm+uKCXFoEZbBAfbQc
 THVrYXMgRXJ0bCA8bGVAdW5pdmllLmFjLmF0PohfBBMRAgAXBQI6HOhwBQsHCgME
 AxUDAgMWAgECF4AAEgkQVYh5qfENBssHZUdQRwABAdfRAJ9sUaTyswjTHMCSqZHN
 ZDAsCVhyDACfehlPEYgA/zu0rHhQW1fFxRlkhTaIRgQQEQIABgUCO6B7hwAKCRCp
 H/pjm+0zSh21AJ9sa+U9/NyXhVUm+HjhpV/bL0Le7QCfVc80UHqb3b0Dcen+jov7
 tiJ3eraIRgQQEQIABgUCPUvP2gAKCRAQX0kdqNdk2A3wAKCR+d/9qrGqzpGoBLQA
 b9SRAjl/BQCgop5t90WbPwuJm/AVdbE+N6As2w+IRgQQEQIABgUCPTvsEwAKCRBF
 J2EGXxVRASlFAKCFlpd7McKT98cATC+8Sd4RFNAUVACfRHTANXgfK7hmvvD0pWr5
 nofT7p+InAQTAQIABgUCPrGEnQAKCRAtxmic48sexfwPA/9WyE6OAshMZUuCjHvo
 nHt0G+qomn+6CrPrps9il0ofWAWHEDMM57OkUYu8O1uY4G2WDfcUGx3XrzHxqsch
 Seeb5/aD4z57ZQzdGz6zRyorJxHJ2S4vTvLv5QWSKCBqYUEEYgPC22C+JHCfvTcx
 76bDE41skqjwcJNNo0sPcMHAMYhGBBARAgAGBQJAvQ6tAAoJEPz5mrga3NK+qYEA
 oLuLq1uPXXdYnrJ4e+c3qI3Te5FBAJ9lkHFlMp+6lcQ/fN3kSxWMrH1ohLQbTHVr
 YXMgRXJ0bCA8bGVARnJlZUJTRC5vcmc+iF4EExECAB4FAkAmTJ0CGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQVYh5qfENBsty0QCbB6IgEk3WC8br8usvNqWt2t3y
 93IAnjwh2DGgCRk9AH7fdNoSF+an6CquiEYEEBECAAYFAkC9DqgACgkQ/PmauBrc
 0r7yNgCfegCimXz8NHxxTnfsz3UU++dz4jYAn1nPAh8hwYPh1rWUjHh/ATX356x4
 uQENBDoc54kQBACRE1IriFYgaKg3pDeBPDM/BUflmZSlC50NIgCadloOGwu3AFcs
 ooWwN9nsVehbN9xjfZa34/xXo09Rn14o5kTKYGSqzYY0XbsNjZl5uj0gTGFRmjS7
 fNoWpdsfh38xXZAJOghxd/KFRV5fdnKoEPz+ARNo2DRZpiiEJUa14e6lpwAEDQP/
 TvA9mc8OEa9dn0AzCRwvITqx80WBRBVBl9bC+fx4R/CCt0O+gtkoPBlAdY/r0+XQ
 ZhCeOROXy7e1sbAMm0U0QHgckne83VgzV9TAWHtP2dfGgtOzUE4PlUVBerTCGADP
 FTN+kcvV6U/O+knnJGmnxxOq/9qtkdtEHvyAzWjehPaITgQYEQIABgUCOhzniQAS
 CRBViHmp8Q0GywdlR1BHAAEBIkQAn19uApjyy6+M+JD7Qt8inbcYjk7cAJ0eNltS
 Fv2s0kptGIN2izILm1myaA==
 =qAVp
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.66. Rong-En Fan <rafan@FreeBSD.org>

 pub   1024D/86FD8C68 2004-06-04
       Key fingerprint = DC9E 5B4D 2DDA D5C7 B6F8  6E69 D78E 1091 86FD 8C68
 uid                  Rong-En Fan <rafan@infor.org>
 uid                  Rong-En Fan <rafan@csie.org>
 uid                  Rong-En Fan <rafan@FreeBSD.org>
 sub   2048g/42A8637E 2009-01-25 [expires: 2012-07-08]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 D/Fet8nCx6Ef1M1J4Q==
 =1iVI
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.67. Stefan Farfeleder <stefanf@FreeBSD.org>

 pub  1024D/8BEFD15F 2004-03-14 Stefan Farfeleder <stefan@fafoe.narf.at>
      Key fingerprint = 4220 FE60 A4A1 A490 5213  27A6 319F 8B28 8BEF D15F
 uid                            Stefan Farfeleder <stefanf@complang.tuwien.ac.at>
 uid                            Stefan Farfeleder <stefanf@FreeBSD.org>
 uid                            Stefan Farfeleder <stefanf@ten15.org>
 sub  2048g/418753E9 2004-03-14 [expires: 2007-03-14]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEBUhZkRBACOyBTXaf9n0gkvq52yhACaPjUpAY4c+Z+xDM5jZZNpcaEyuU5N
 ipJdvlKIIkfB+Jka5TxiUBskSo6cegPW7k3G9/as+39SeOexEw5aH1WROcrqD1Wq
 iBTJ/Ey8eVleGTP/3vpbUoT3gcNZuus00J75OmJV06xyTA9M0tSy1/aIxwCgrbCJ
 Xr3wLOPYiGXf5WbWfy08DmUEAI2xYIycYgZ7ogcqFcu6gShO/uTcXkZL0xOIC8el
 rAC/HciJagmvYPjQimQeKhqyX+uvnhguiS+XZYx9yqegOG1dSOVWw6FJTYgzKeT7
 6tHmaplB4JQLkUSBn8p2fsyXAaIA4M+2c9fYf59El5+OyfOhGfAEJNJv1oGLYWic
 Bbt0A/98H+rPmPwtv4ntIvCq5xkvjENzmG6WerNF5dXHsoG6Lnhe++4jUquHseEI
 +u4ou+v1it5vBTnPI2Wz02WP1Oyz7JC0cPAbrTGz+eaaNV+M1wD7yqj1poW74buk
 4hJ+myIqC1dRrliAyrr75xHl3pr212+8Cty8RTiNF9xgICtH3bQoU3RlZmFuIEZh
 cmZlbGVkZXIgPHN0ZWZhbkBmYWZvZS5uYXJmLmF0PohnBBMRAgAnAhsDBQkFo5qA
 BgsJCAcDAgMVAgMDFgIBAh4BAheABQJAmCd/AhkBAAoJEDGfiyiL79FfqEoAn0cP
 NQJYvSLWsU4gD/cffKUtLEKiAJ47lf0I7dFdAJSqqxSCOrw7iuWhTrQxU3RlZmFu
 IEZhcmZlbGVkZXIgPHN0ZWZhbmZAY29tcGxhbmcudHV3aWVuLmFjLmF0PohkBBMR
 AgAkBQJAVIenAhsDBQkFo5qABgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEDGfiyiL
 79FfeOMAnR6XllE6b+BKnoRjBOC06PXfoK0jAJ4yDtL0vkYkW9LRmoFkWpxJYilU
 ALQnU3RlZmFuIEZhcmZlbGVkZXIgPHN0ZWZhbmZARnJlZUJTRC5vcmc+iGUEExEC
 ACUFAkCYJIMCGwMFCQWjmoAHCwkIBwMCAQMVAgMDFgIBAh4BAheAAAoJEDGfiyiL
 79FfwykAoIes15zWxNJ7iQr1n4rP+x1LidM5AKCDakRpNHAdMiaJJRNrHt9I1kOu
 FbQlU3RlZmFuIEZhcmZlbGVkZXIgPHN0ZWZhbmZAdGVuMTUub3JnPohlBBMRAgAl
 BQJAmC7cAhsDBQkFo5qABwsJCAcDAgEDFQIDAxYCAQIeAQIXgAAKCRAxn4soi+/R
 X//IAKCmPHdkW+JyvXq8Ph/4AcoSYGltQgCeOyA+WXLvjD8s36h1ITQXleLr0Ju5
 Ag0EQFSFrBAIANrcNEggDb7bS/TkhZg5CEw0HP0bFOogCowNgGZ/9EzZA1SvABYb
 vun0RyK0Ceh51Vr0Lb01i6cIDTH/cBVMqXX75YPusncMzsEuMdBCzMqKRPCpimUD
 jFmMIBrkbtu8OTwaL+Xy1j7/SyfYv8fV6q6ibGWgN4pcyDmItTWYRNnR1G4EdIvl
 a2CgQr7AgzWPGeeZLrUqUuLjYKwZ5JUqch3ooU4e+eFkYjovMyiC5E23UxZWyDZQ
 DA1aOizxH7519R5l1YDsrqjZdVz3Ks7iCPYZ+T2QMGM7oUDjbt0xAhQCt15yj2K7
 f0m6KtmHWzwgf5Dagcph00anBMldDQ1RqscAAwUIAMReNMLnk1jhYUYoitYNDJTO
 Pp1X5bk66+b5yHW2Ul9DDboe9tp37AoSJf1hEI7eyB1qkKO3bt9nePKOuAe64ft9
 jMYEm70IS3tmo3hHyTbLuOpxF3f7ZHmai2gXPdDmIczDqkE1PneX9gJQadQTqvky
 4PVHKVUGTBScI0S830ZBbIsvoYimjGCPMuz4UT0vKR3XLay4RjwCYC6waqRuJoBq
 rfm/vmx6/GNfb/jwZgN3QYPgTptx65eAdEAy2C3Y7RbMrbx9qqvx5TxaS2yVFy6X
 6gIrSmFSFE8rplPDActw1V4YMyuwnyVvGe93pYwYfxzM/BxN09V9QBQUhIa7TMiI
 TwQYEQIADwUCQFSFrAIbDAUJBaOagAAKCRAxn4soi+/RXy2fAJ99u5jBvCIXuEPa
 rLB9utH3lU/ymgCcD/fpfY9v7wyOrivOy6Wz3ZWjdnQ=
 =9khA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.68. Babak Farrokhi <farrokhi@FreeBSD.org>

 pub   1024D/7C810476 2005-12-22
       Key fingerprint = AABD 388F A207 58B4 2EE3  5DFD 4FC1 32C3 7C81 0476
 uid                  Babak Farrokhi <farrokhi@FreeBSD.org>
 uid                  Babak Farrokhi <babak@farrokhi.net>
 sub   2048g/2A5F93C7 2005-12-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEOquWMRBADPeAMeFy9OMbD3PxFjNmPIuY9CMb/fP9G3KNugVwLoHj29pXHS
 QDo9OGHmA6udL6ZjZt/cWsU6CBwrVmr7nnqIXwOFGsvv4sT4cQJd51ypMFcvrYvi
 UmdfnNZWeggviCMYdZErMqVdH7QKZyZ/7xB1IBV/66Bu768nQlSpTmqTYwCgwpUr
 8V37ACzVXUZ/1CPqtadIe50D/1rlR4GTzMnmJGBbqY4c2nNtaUA2HEzI11QsHvFp
 jTEcHI/RdhLv8dcFFAD0PmLC+5W7OydXvQXBfWzVXmrEPzFprwOc79wfCB+JzOt9
 JzyClVDYvhYd0f2kxrXOR3ddLaBCMU9A/NxvDL05TCE8b3rSuV2VRT6E6A45/88t
 aKKvA/9ewMdS3zicyyK33FTYTecGJc6Kt1ke/spq6jo6k3+L94Z7eZrZrhXGMRYg
 Ibbm3VuxoPeIqyY8SujHwNNzP7PqGp8MVefjzktldMyvbJex8oIyB0NMrHTJ2JTp
 ScJAetOE/mXYhMSACgWbebu6uBEigmaz1D4WNU/ITf8xuX784rQjQmFiYWsgRmFy
 cm9raGkgPGJhYmFrQGZhcnJva2hpLm5ldD6IYAQTEQIAIAUCQ6q5YwIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEE/BMsN8gQR2iM4AoKXtRmdbGhmrJ3cW6lcd
 gP4IUfUkAJ9mqLQk3ztstsPzzovhwV4sIH2VgbQlQmFiYWsgRmFycm9raGkgPGZh
 cnJva2hpQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJFUO2LAhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQT8Eyw3yBBHZd/gCgmHXJVgY+AwvJvL2v2qG6+P2EsP4A
 nimm5LNueFg2PbDsRb+Iz53zw8d6uQINBEOquXEQCADPKrfxmpqJEbVpJV1PfcLJ
 KpvF/0s1NEhvrXVnm0GhId8R96n22E9oD7QYTw/+TkdCksw0dcAIvFH2y++HNQoE
 NVgoyVW32Rw076Va8nizA2icB6hEJwKiI400qKjZknj2pnILPHORq+Zl43sHaXnB
 imchl5U9gZI4EXCRC0u87oLd0IHuFMUGYEfhsxninLpmFNPjS55zEhPDIBTuFFiN
 NFZ8aLxq6APGd1lbLJhYnQIYZJreaI3lXc0VYqjkaB5WBeYXKNNF3y39yNY3SXFt
 /dwIP60IoaIAjARFLqvUNYOsHpjsVAItxxMdTpAlX28VYWsr3quGL97Xhd4NfDvb
 AAMFB/9ep1jcpFocEOurMYZkIrPE0CdgdeWzlhHhW2F38cZTj46WxoAY21QOfjRx
 tCcGDrKNNwoHO3TIsuPrEI1OtJ4y8b7Pj2zuv/kUAEMUjl5dutg2kIDz5cs5zxI6
 4HhUx17vQGTOK3l1I2JxoNrMKPcDKxegHqYqpzb6vEr3gsKT7GSeMBREq0rvfZfQ
 ZmZTLfdy0AiQ6KsVt1YV9wUE7Kq5OmhjVZNovhZtxO/tzppQLNX/62wdf1OmFZIn
 xWrYFHeH/N+QGBmMRf0NMb0oOn4nEMem9QhSRcW9UcyU1K7Usa3m3WG7qrmcq+ri
 9RVM7/8wJCKNJD1ej35rMQYVrolIiEkEGBECAAkFAkOquXECGwwACgkQT8Eyw3yB
 BHZy+ACgqz3KenkNoTQKFv4nrGUHnAqMm5sAn2Z+BhMOzEhuimOTVLXVzKuipov0
 =vL0B
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.69. Chris D. Faulhaber <jedgar@FreeBSD.org>

 pub  1024D/FE817A50 2000-12-20 Chris D. Faulhaber <jedgar@FreeBSD.org>
      Key fingerprint = A47D A838 9216 F921 A456  54FF 39B6 86E0 FE81 7A50
 uid                            Chris D. Faulhaber <jedgar@fxp.org>
 sub  2048g/93452698 2000-12-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 6r7mPk8=
 =R6MH
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.70. Brian F. Feldman <green@FreeBSD.org>

 pub  1024D/41C13DE3 2000-01-11 Brian Fundakowski Feldman <green@FreeBSD.org>
      Key fingerprint = 6A32 733A 1BF6 E07B 5B8D  AE14 CC9D DCA2 41C1 3DE3
 sub  1024g/A98B9FCC 2000-01-11 [expires: 2001-01-10]

 pub  1024D/773905D6 2000-09-02 Brian Fundakowski Feldman <green@FreeBSD.org>
      Key fingerprint = FE23 7481 91EA 5E58 45EA  6A01 B552 B043 7739 05D6
 sub  2048g/D2009B98 2000-09-02

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 uPPUsA==
 =oR1w
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.71. Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>

 pub   1024D/75A63712 2006-02-23 [expires: 2007-02-23]
       Key fingerprint = 42F2 2F74 8EF9 5296 898F  C981 E9CF 463B 75A6 3712
 uid                  Mario Sergio Fujikawa Ferreira (lioux) <lioux@FreeBSD.org>
 uid                  Mario Sergio Fujikawa Ferreira <lioux@uol.com.br>
 sub   4096g/BB7D80F2 2006-02-23 [expires: 2007-02-23]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEP9+FkRBACKcQPLBb7vcUuQTM+Zqfwsd44vzULREV7qHVvTqJWDsFyQd4hz
 /rX86mmHiS/fOh68SonP6QdXO2i+d+LshgLTVPBlW92TXsFYP09FUWWx2dm0P249
 P7xoIcQ7slhHnSVuPDObzm5T7yDXL02OeO6qonN62IjjxB8xzFo+W6SsAwCg2BtA
 gvPq1hyeXVXlbItG/9Hbul8D/0yjvmED7dj7eQpm6LvjswjkMoRdg6cgR+/N9LdP
 GIdjGHkfFnW8hRg7QAPzmstkhtY1I3zEjVVCcYjJrIibaqBAUAx0v5HszLKKRnrI
 ZZm4IXKFpkVC2sV475FpFTPXIiHmyzq1lbpgAQXX71yFNJ7hsEuYx1z2Ihblz/B+
 KHJ8A/9UNVEPc4s2YgjntQSDWRY+Vcr6M4bN/+ogCJ7XYN5lcHjB+gUD8kAWupEH
 1hDV3WFahpG1i0MusOZM+dggTXSshd76z0JlOJjbywEv2Z2nb+1b1GU4EY+2RlTi
 nP9rO7EqtPhHjNkpXfsSHFOC3qfcsDhphXOJeOFwwhMhkxmkHbQxTWFyaW8gU2Vy
 Z2lvIEZ1amlrYXdhIEZlcnJlaXJhIDxsaW91eEB1b2wuY29tLmJyPohmBBMRAgAm
 BQJD/fhZAhsDBQkB4TOABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ6c9GO3Wm
 NxJtqwCfZrWhCzRFNX2TkVEW1zMS0mw5aLwAnRUNKvayClkvdqHMLksYTFtUu4RT
 tDpNYXJpbyBTZXJnaW8gRnVqaWthd2EgRmVycmVpcmEgKGxpb3V4KSA8bGlvdXhA
 RnJlZUJTRC5vcmc+iGYEExECACYFAkP9+lYCGwMFCQHhM4AGCwkIBwMCBBUCCAME
 FgIDAQIeAQIXgAAKCRDpz0Y7daY3EiNhAKCLZTyIxlE0tU91Cy6YxRKCu1Kv5ACg
 rbLcuizHmkAx/du+XaG+aveC4Ui5BA0EQ/35pBAQAL9uIr9y2BwxMeHbj6LLmoPC
 DmQnzXWWWIZPtEyWlUv6ANLvtNX8M0ZWzfy4Z4EXof6/m3Z8KsAEZf22AObR+CA1
 mgRRmDxVfWDU3fYYIVwMTQ/IqjWz5TPfldXySqxtW/Zm16ODYv3c+tnu/KX/M/WQ
 1l9pLfIB9G3NlnHwHTWBdIQhomXLzurW0yuq4LXobA/nQmOWmrQwjXNk1zzO+p5t
 v18thaXoF9pGObS86oCCfwaUMg4RD6PtizVUSA+frFmcR0/kpNGAWw4gIqHY++9c
 Ri+Tjvbii0ZhBZNb3l2spqhg7zMAqzQ/wR0kJt09FegN6vClMLDBJW5Rveb7u4XT
 e01JY5E9h2Nt/RaJQ2RgaoD0bNLx32Zda0GOzidFAK+0QzOGvfMKimaye3YkWRXg
 GFZFHH4k0FIcRd461ta4aN0VMKbpRbYxZP8oxmN3VrJdrf91Qqton2Ljrqk4ndQA
 xb6zbtJeobx6MiYlDf4GB4Wgm4g2L/BYH+ObV5QqnTnwMIjP6Y3BvP941d7eX6VM
 cpJq3ueDK+FHbF+KEozHycvlZrj+el5SuWXtNdOVma/DUQjHJ1DHMmciVqZwArnm
 Ygg7f0G7dMxBi4n4OdHHSkJXwth4ojbZf+zDDQnHmt7J04/EArgEvBKxOGEh8EcR
 evS6bR8NvH7lfXjl+7AbAAMFD/9DHsJNi6bx5sciwo7xvwx9NZY2MTHBxaWV3iWj
 9OIoiklZt8Ca8a4ukDc5d2t/DrGr/rtKsUyQ7utEhfdKr17TYZH9mW9ZzOKp5sjO
 aWOcmFCGMjemejPedAlH8sBD4I4zg+Ph/tMRgAjyw/ZkhXlUbVJ4ooibU1uix5Wy
 AcxXSyrCOCLbVfpcCphiXCRlFsVuyiTkjM1D3STr6M6YSq5vTpbWkUvHs9c1pgqh
 51SoGR8tcyUM3JUvY5fTos1sRlIS6XexXEvmBe51jcuV+4I9cI2cXWVpWU09zBTE
 mF0WSgs2pXZftMpbLwaTSjzGA4VNQQ5jocsfWUP58HgBCyO4x8G+N1A9PWYtKUoB
 WVcjjl2ak8G0mbTGb03QaIDAy2CVkeKYVws6ZTQBZtfKiO8Vz2UQcklRNTPTxYHo
 69kIY47+6WW44huXc81ACGx2GXXDZtqxasysRtzAzl6U/FKy2lHE7Buyjh7VKYI1
 7IncPhl/XyEBWTESAppWvd3WiCdT0zq6wpwxrdpLprWblqxLRttK2Emwe2KhvDk4
 3jdj/KOlMi2OUa600mbRfjX78MbNHisLUEG1ceMXaQY3quaerb3Q1N8Rptn8sT1U
 RMqbVlP4fxFwJg9F8nyLYzBcVm1H9WGFoojCqQ3htuvI8kca6I/UQxHG7V9Meqbm
 uFqP7YhPBBgRAgAPBQJD/fmkAhsMBQkB4TOAAAoJEOnPRjt1pjcSt1UAn19TWL7b
 atBvRWIroNaSp6+y2jWHAJwMSHg8w1dVEw3XxYR1fhEhE1hBWA==
 =lXvC
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.72. Felippe de Meirelles Motta <lippe@FreeBSD.org>

 pub   1024D/F2CF7DAE 2008-09-02 [expires: 2010-09-02]
       Key fingerprint = 0532 A900 286D DAFD 099D  394D 231B AF20 F2CF 7DAE
 uid                  Felippe de Meirelles Motta (FreeBSD Ports Committer) <lippe@FreeBSD.org>
 sub   2048g/38E8EEF3 2008-09-02 [expires: 2010-09-02]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEi8sBIRBADJt1SLW/mX5HmXKgbG72GXupRR8V+lDbtquXx6dJ+3E62S9xFx
 KehNrX8YcYnp+dcuHktXxQPJ/BAzOnvPdHKgzdXMARO5ApOfQ2VDgZgAcs0dVEnn
 LILvxiwQ7YlyJjOTJwbcHBpsTdolhNooi2FEE3N5ShSMRlPoH3GXF1qdnwCgqV/g
 IlQTCLudKrApFqNIbDCrPh8D/AmN2MdnlnIk6d7zUgLWuu3coohYIYOxaZ+ovKDb
 S8siSZ5uaEZOhWHVLVGYXTmzLrCK7TUBKdK1sW7YrYKQdPjhYnYXrwS4AaWupWwX
 K+fZWTaZsJiGLbOIrszAd2hRHUgQ5VeeoM0eD9eyAWHp5SVi9YcixMUNbn5ERPu4
 ppK2A/sHynDjmkXHXzuNwN8dwcUjTMTVt9bxGrLVJHcJUsK527dv6/UG1CfZYnzT
 nca4GNO42/FBjQtyJaTQd76aJQ/PSU88MMGuMUh9LYl9rRdMQKn4FXm/6t7NZOqx
 qvXzEC8jFw1BOvxhmykSEZDlwZFwQngDre9Ux68Eu6Nut554yrRIRmVsaXBwZSBk
 ZSBNZWlyZWxsZXMgTW90dGEgKEZyZWVCU0QgUG9ydHMgQ29tbWl0dGVyKSA8bGlw
 cGVARnJlZUJTRC5vcmc+iGYEExECACYFAki8sBICGwMFCQPCZwAGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRAjG68g8s99rlhsAJwNTFc1W0eu3Em6+RjD9WZWtX/1
 0QCfb2riDssKYX42D7HhVjDvTe1BtXq5Ag0ESLywEhAIAOQrj0PRt1WOC3Gh1njF
 KDacQl1aJ5f52yaz0FLpu7igTRS/8ET1+uHvIwzcSbbG/4xWqPwirMxpNZwpFMzX
 9l8bURIX5szmJ+bEl4VH+La1p+w31YswBn0PDTSYtWhaIn1LMXED4e2Kg/wUCpLT
 M8htMa1pg0F2ZcmvbNZFuXMd3BBAkvWrRJTYuDXy8HHnbALjUd40laUDT3Wi6FRB
 W3HFj5lIiEjnJG52iTSxWVEkoChy7l/qDQ0zsguCCZZvLfdQz2DAFscjX/HltuUK
 s/gkzVR4jZDVMQPqCATuCvDYHrDWJnfU/R317Eg2kp2tJrNibrnFX+ciISSuq1+t
 UmMAAwUH/1XXvFtLACv8NFLVFVWM9wA70ZTLjZEEfewbWRYgT1yvOChn7H2ef3mn
 I7/WoLF3ntm8Qcw6TcSrzVbZjgdWpS65Wc5YZn1rMb6nP419kjDQPjvB8RUA1g9v
 7LuOv8qeqqo1/mT6PIh8ZnhWR42ei8l3QcbyGJMQGPHyUZk84qbd1TI9gO5GjWHZ
 LIi80DPb0cpazMCIgYjrqZsOoq4XcYJZah85Eu9jdqbx8aDNnag4NeO+9jhy1msg
 xC7WuLYPctfFZ3q5ZwdvvtfluyeKjqY5mzkAuXKbtK66yMLugU4NnR1IeS7oI212
 NF2FmCRAkCMB26n8sd7xavpd9uF+6ciITwQYEQIADwUCSLywEgIbDAUJA8JnAAAK
 CRAjG68g8s99rkWyAJ9b53BhFJ6+49cr0IIZLxVBGlWNnACfX4O3OOhx8kClRzsH
 1wm6VFjn7qg=
 =q3W+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.73. Fabien Thomas <fabient@FreeBSD.org>

 pub   1024D/07745930 2009-03-16
       Key fingerprint = D8AC EFA2 2FBD 7788 9628  4E8D 3F35 3B88 0774 5930
 uid                  Fabien Thomas <fabient@FreeBSD.org>
 sub   2048g/BC173395 2009-03-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEm+vTYRBAC03EXAZTDbUh/ShE+8WHHaB98hrIyAlHsMBRpWdouqNVbvEWBQ
 08to2fDMF8zpWY7GB6U1w8bH274bWjIFk9KkK9fLbfoKnwQOWBEB1IFOei/G/4Ro
 xfufEQUOWGjAcVlZp+/crXEJQEljWe4OOjh2Seruxo86qWmm6Pp8LkmPvwCg5+t8
 iQL/1Ud2c8fyLAS+AARuAhsD/R6MSZtQSselAtbGB5S01reSKO4enb7yFdU7Pcbp
 iBAqgE0khMZqcQFeOWyAiTFTqyt4t076R1s0G9uBoTCI5/sDslVvyaglnGVrL/Ej
 6WEyBEHXFHOS+pf7Aofke0wHyQhl9YrN22cEFEKWNDMCu2T+K0mP1AVKtnbLqwVG
 clIuA/9+qeScAK7n1Nu33c4WTkbhxdpxqcQGuUti+vHLrSy+wpZgEP4e3A1AurRs
 JXUGTuqT0g8wxpCMEassWuoOphrNUz3Y3ckspvo3PLbht8iWhkAS+YjvTgBPu+at
 rxqS4vuog8z12Gl5C69oUihXozh0c+9WNQUahsy2RM4ldFu3qbQjRmFiaWVuIFRo
 b21hcyA8ZmFiaWVudEBGcmVlQlNELm9yZz6IYAQTEQIAIAUCSb69NgIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJED81O4gHdFkwWz4An1Jps5d16oHpy7qh7jro
 87IPMczmAJ0f4rYdOnxuFuRDnBLwVbdb1gLQcbkCDQRJvr02EAgAlrdKSnI726B0
 hGobE1BE7jwjS+u0ozmeTh1JLZH1rKNJd/LszO7ubB6X0VGA5ustPYVb1eVoSn6L
 LkvbspsdvNitklU8Ys4FF0dI9+AvrT4u84f8AjKKSTMHoTu6vv07Vm0qEdt2ZTim
 YTwG0OKuRbwCDNaMNzshkncWxWNd/KgrP9NlfdVJ/3NxlEl/GUm6v4bw1CM3F+n8
 DanJa1jKPk0krg0bdZc90flknwaH1rQckFrxICLa/9MnV8HjZEiE/h6M4Ay3Okb8
 zQnYywHqklRfvi2nUm85AZ+fJ1X06QCJD+Idg+/Tgk2SZ3oG+yOBS5GASiYiY5Bu
 3fUtBVc3CwADBQf+NFw7Lw9mLYqd7E8VFr81U6JH4WU2sG7YEqbcZ95jqiaOby99
 jaSZ0FKPGvm2V3VpgvXchzf7noqNMWUXbQadg5U/iJnRRhdhnVUbMq/T/mx5u9RL
 jH8Bp3zF5hElGpa/rPQ0TJSI9lltUUHD4c59FbgEXqmG69sTNcXBeH+w1LBoqmyS
 VQvLsPKan6FKfFDzvvuOxdP2SFor36zu7ecEuDz+teETk5ixRiu5wpEq7geqgZfW
 rgO/2HN5OgHJCIGvQfttUwzrDLw+RHiy5wM2f+S8wSi1bka3ggE39KPODMHQR6z8
 zunYn+Xjw+jL3zrDu/FAa58nbaFRuuFEqG/V5YhJBBgRAgAJBQJJvr02AhsMAAoJ
 ED81O4gHdFkwb+AAoKtrw8aIkc31k+gGotiqv2Z+v6ZoAKDKsv5LDbNe2fncnihP
 0wGrqiKLdg==
 =HImo
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.74. Tony Finch <fanf@FreeBSD.org>

 pub  1024D/84C71B6E 2002-05-03 Tony Finch <dot@dotat.at>
      Key fingerprint = 199C F25B 2679 6D04 63C5  2159 FFC0 F14C 84C7 1B6E
 uid                            Tony Finch <fanf@FreeBSD.org>
 uid                            Tony Finch <fanf@apache.org>
 uid                            Tony Finch <fanf2@cam.ac.uk>
 sub  2048g/FD101E8B 2002-05-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (FreeBSD)

 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
 KnkOqXNQ7FzYXOIPK74=
 =7TEa
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.75. Marc Fonvieille <blackend@FreeBSD.org>

 pub  1024D/4F8E74E8 2004-12-25 Marc Fonvieille <blackend@FreeBSD.org>
      Key fingerprint = 55D3 4883 4A04 828A A139  A5CF CD0F 51C0 4F8E 74E8
 uid                            Marc Fonvieille <marc@blackend.org>
 uid                            Marc Fonvieille <marc@freebsd-fr.org>
 sub  1024g/37AD4E7D 2004-12-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEHNnEURBADK+anixdFH+aSxIGLw1soiwMXSiVPD56dmoA/VAFqrE3XVo/y6
 bPqpSNwvvhL8Um2v9G/7EDMorqekYErS3sgUOtrA05NSJlOUJk/97ZFzAlGZ4/u3
 CwtpFBdiATaCvAdMocWhxVkyIFvo6AqVNz6RkTldJUuwVzGelXWk9IfI1wCg586A
 r7CU9HIsVJD7/vIbIIsKDncEAKYh6XKEBHWI1pF3Ony+rPhlXCV9W3yraiBb/YXS
 XaPr2Wy3XC86ufHZs8ewug40DqcSfRobj7qV5II1CMoVrwhUuJ9Y087ETjt7xC9d
 xI4jrkVZlaRt0m/LUKLLfz6L9KaLWRkBfFhOjJH6TAv779q0n/KfaiU48Xuue6ff
 KNDtA/96/oTg9+NWjm47zCdQeyZGzEE27btvzbrLZuG6TcP7gAV0F6udGbImgw1f
 mKrQZn4ZtVKCKS8IzTn/UM/P26Pn9JOzDKd2voPE9Ee8D0L8ywg3mxmBdm+TY9vs
 r2OEV89Nc2sJZm5CeiqEvfACI8KwbExqWy5TW7Qz+zLi3zk+ErQjTWFyYyBGb252
 aWVpbGxlIDxtYXJjQGJsYWNrZW5kLm9yZz6IXgQTEQIAHgIbAwYLCQgHAwIDFQID
 AxYCAQIeAQIXgAUCQhzb7QAKCRDND1HAT4506BdRAKCaBqu+lvdAp3fhgIJxL0XY
 YG6vhgCeIyaLMYFzQfii5s20wePEhG3rfMq0JU1hcmMgRm9udmllaWxsZSA8bWFy
 Y0BmcmVlYnNkLWZyLm9yZz6IXgQTEQIAHgUCQc2dRAIbAwYLCQgHAwIDFQIDAxYC
 AQIeAQIXgAAKCRDND1HAT4506PmiAKDanV0mSeUSRJuDmfA13o4ELsQ38gCfaEgn
 LyzKfRawEhJdqsGPWW/fnte0Jk1hcmMgRm9udmllaWxsZSA8YmxhY2tlbmRARnJl
 ZUJTRC5vcmc+iGEEExECACECGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkIc2/AC
 GQEACgkQzQ9RwE+OdOisEwCfY8xxYIhN0w9CSUbsN1/EoYp0D+gAoLedf7wiwvmQ
 O0XpcJaXgtlO4x6fuQENBEHNnEgQBADPHKv6eOKxk2HPrm180rVAM6/d3LQkBEGL
 Ma4QuSXXbTDXpzfrt6YOLi+ILe/hu5DNnGbQyvkBB1lLdmqW03lat1ape9wytNoA
 kHOX2C4kom2WA3FvtAoxojmylEn8S0koH7RUuhhTM29rVBap0W+UpwpnxmtbGXEO
 NciLWy5CzwADBQP8CSp5Hh4+7uXIRpp+RQ8PKJ2vQVnf7c+QTPDN5MLXEv1UK9gK
 vtb4sms2yr2IuBMP1FSAFN6DpedjoZSKimxqCyMNbyy0io2pMrNDCpqCadKOyLWN
 gJhJTxE+3kYeZqzZExvf8q+faQqXp91bbS4XZ4JzgAkT3B0mvQ1OHlVlAauISQQY
 EQIACQUCQc2cSAIbDAAKCRDND1HAT4506PAVAKCWlLnQdfJsRZtt0Q880glcLzc8
 SwCg47K+qs1q5klc1cCIaCj+/TtsLCk=
 =rg/z
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.76. Pete Fritchman <petef@FreeBSD.org>

 pub  1024D/74B91CFD 2001-01-30 Pete Fritchman <petef@FreeBSD.org>
      Key fingerprint = 9A9F 8A13 DB0D 7777 8D8E  1CB2 C5C9 A08F 74B9 1CFD
 uid                            Pete Fritchman <petef@databits.net>
 uid                            Pete Fritchman <petef@csh.rit.edu>
 sub  1024g/0C02AF0C 2001-01-30

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 oIDNzwMAwpXoLZkEkk/dMUDTsFCy
 =ZbG1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.77. Bill Fumerola <billf@FreeBSD.org>

 pub  1024D/7F868268 2000-12-07 Bill Fumerola (FreeBSD Developer) <billf@FreeBSD.org>
      Key fingerprint = 5B2D 908E 4C2B F253 DAEB  FC01 8436 B70B 7F86 8268
 uid                            Bill Fumerola (Security Yahoo) <fumerola@yahoo-inc.com>
 sub  1024g/43980DA9 2000-12-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGhBDov9skRBADzrOg1JwL+kHv1dTePFR2lNrErbMe+WVeP1sdGuKcYTP15VQyJ
 WV/6ZoUGsihAmFGcGyJuhcUJbvlvqRf4ZlwD80a1y33SNxxsqe8n5dm4Wy9FElL5
 bjs4L0kGJlSL8KnYYUTQKEDBcTch3+GTjgS4NQBZWy4h0W6EWqgxr7CZYwCgpeB3
 tnDcY3ELA5EP6Bx8wZN97zUEAJo972g6HplZyuyjqqTjdztXNgD+DlsyNpNkEfqs
 AnZcr4aqEeyMNtGl8gPIc9JwPPSlX5OfmjCm3zWtEjwrHway6YPggXqX8efuY3lo
 LxVfjRt6NLI0TuV0FhojgHuJYB9RsXQFZxbYH8A/j6jQHbiN3wTyYHtaAJJ/iELg
 82oWA/dTeR0kjvjgrfB1MiFCH4AL77bZWuxSv1CvV09DlYtSxfLpyBm4OHvDZmOv
 V6zT9COM2+f2/EMI15cNllYXB3WnwfYit9tZtEFBl1+OshqYBbcNkser1pBd5jP7
 fDAkpDYGx5OgpqAS8hz4XLPZdS/HXSegodYKinU0p0Rzza6KtDdCaWxsIEZ1bWVy
 b2xhIChTZWN1cml0eSBZYWhvbykgPGZ1bWVyb2xhQHlhaG9vLWluYy5jb20+iFcE
 ExECABcFAjov9skFCwcKAwQDFQMCAxYCAQIXgAAKCRCENrcLf4aCaPIbAJ41RzBA
 OuxYwZFUSbMbU5PHENe6ngCfcnVzDC5+lkssh628m3GTG0EjINS0NUJpbGwgRnVt
 ZXJvbGEgKEZyZWVCU0QgRGV2ZWxvcGVyKSA8YmlsbGZARnJlZUJTRC5vcmc+iFcE
 ExECABcFAjvw0YEFCwcKAwQDFQMCAxYCAQIXgAAKCRCENrcLf4aCaMcVAJ9brBw2
 LPC2RcZpsm5S//dETM/qFwCgiuPpVVwBP7ibzn5xQVNAdB12xOa5AQ0EOi/2yxAE
 AL/FYZQw0b7NrD04j6dxrp7wBjgd19ux4zQocXgXPlzpBZxQ4A4/icGOLnIU+vDu
 ltbpf7aMTd/mJokJwx9pE82pOgxk6i42c5qKkwkmjhO2/4FFk8HXco2DJ9roRi0n
 eBJztXskUY4cVavKdXNeJY2JUeBYvmrnREWG1W2/0ZMzAAMFA/4ytkv46phPokQe
 s7yy67bEeHiydjvf3uM+v1z3xWoLw5ZU+8hLdFkESpZ7u+qA1mj3i7LNBZhfA5Bt
 Cgl10v9DWX9cda2HlMjyyI9p3dfPlOcAh69PMwexJ1VYPtizK4ZkC8dNk0rTVPOf
 SYftSsFGdDbUAq3ZokhjLkVRFY1LxYhGBBgRAgAGBQI6L/bLAAoJEIQ2twt/hoJo
 ewUAnRRikiShfD9wCuyMazVJ9+FZLWiiAJ0YFgos24sNEFq5rA4I8UZU0LZ5Iw==
 =y5FR
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.78. Andriy Gapon <avg@FreeBSD.org>

 pub   2048R/A651FE2F 2009-02-16
       Key fingerprint = F234 4D58 DEFF 5E3A 4E0F  13BC 74A5 2D27 A651 FE2F
 uid                  Andriy Gapon (FreeBSD) <avg@freebsd.org>
 uid                  Andriy Gapon (FreeBSD) <avg@icyb.net.ua>
 sub   4096R/F9A4D312 2009-02-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQENBEmZYYwBCADCrWmjbSj/846S7irndSa66XI//DVoOrTu/thqFyluQQmhhRuB
 +ndX79CWe2IRvr3l4bIaD3Lx2pq6OsUPWOsOAJSt90FGkynqSmO9MbcjD8ZE9Hkb
 mgqIW2NtEnCiVw20OlI2OfjhyavEcFAHxHsITRFVDlmjxutlyDkPmWXPNjsjfCaI
 FmzObn+W1adLT3r835x5mst9vBfuRFCTnm/yCHStkPTpW2mZ3njfDWEiQKc0ANaw
 EOEthnekr0jRvJmnC53JsJlwVH9yv9CY5EM5gVehmKuRok8NcVaPdNA7M9CATpaC
 eYQ+by4j5RBSMgXlFxhjHxM6VfGNv5vb6KG/ABEBAAG0KEFuZHJpeSBHYXBvbiAo
 RnJlZUJTRCkgPGF2Z0BpY3liLm5ldC51YT6JATYEEwECACAFAkmZYl4CGwMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRB0pS0nplH+LxrvB/0R7uiYKZE63nqMbL2P
 9mqrbpC3PmrA0bNpfonu4wSOyvgeK/xJ0MTnSUTv5LLb1g+qF45LZSkYXsjncD+i
 HfLID68iSHBSWxQwgLePN1cEpDgcec/2YTpWBdzlC6Q4EtGunZs5jhEC9a4wDqBx
 uRzhexNDEiRzN0bZwqg/E2T7eY0oXfpwpdwsfAeuPniEwEJSFjSreMwg71wPIAb5
 HcuMieKnxjlqDEW7xQ0nrTydWnhxVvJoeVdB93mKnmhtQ9K/G6cV0q75Au5qy0au
 ztmXi8XaK/pyYxCbmhSPRC/u6Bo9K7rx6+MxtGX8YQd1VLC1kfNCx3JfETA8P1QE
 nJQstChBbmRyaXkgR2Fwb24gKEZyZWVCU0QpIDxhdmdAZnJlZWJzZC5vcmc+iQE5
 BBMBAgAjAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AFAkmZZdACGQEACgkQdKUt
 J6ZR/i9dkggAlly9aIHTmseVjpdHD67VZ3sZWPvb/QaZ905mOj6fhxb4MVlwl49o
 9VmO0Pd1Als5FziaDnRBGiB61MjqDiCNxRfn7K1LJ+hf52ax3o+4oWQ7pDWwNPfS
 4qdnqnwpZL3uL4EtaU6r4Ix5bz7ekoYUV88sORR0fYueJqxDJcom6ZnDKEG6RrCM
 mzuiXhDfEWdLD2mdMvKeTAd1hGK+dLrIy8hmjH3zn4POkXe+d4qIJ0ENG1rlXTST
 KdrIUPUjQSmS6W9fCrBF97C8ii384XbPUd/rQkDBLC3jcqGpuHhzGTLYza53dlvB
 4qk0CaXOd8cOu3i1ac5ldiMuAcmv/bqg6okBNgQTAQIAIAUCSZlhjAIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEHSlLSemUf4v8+YIAKgxK/MtfJ+CpAc/HPR3
 JFy8jWEkFanKgYIClzydEb3ONHkhFzNIUJIdPHNq4NGpWT7sKJg7u/0ojjPuAI+y
 AniD632Ki6q2MGBZp7jVll4B3q3+wKvaTT+h+Q1UvNjOmTbTZaHifRP6ufBNjlQ4
 BoXFUpYYLGNcH8Zal5G3CcBWAsfXt0iAM5mLVVpJEzaQTDFCEKpeSInhiKYxGyFG
 dGcffr98sUZhLrdx2Pl5H1hD6G+DBRYZLXag7cEumPjuikrgxZNAeHEyz3QfhPFh
 l6YJKm7HBy3DNwrg57+jDBHx7AWviq87MzU1XnWWns5Fi1WLPSlyAKSGWMHqITfj
 7NqIRgQQEQIABgUCSZmGVgAKCRB8Pwz8BJPKAl0OAJ9OvtFwX62D5OfoZ+jwtRka
 qv1scgCeLrS4nYea2JBdVmDi9dS/d4LdOF25Ag0ESZlhwAEQANe1Q5ZfTOc+6I7S
 S7KBrbz+Rdo0iEg6or7rrKUC62Vm8aX97yzBsgXzwQXBjD64DiJ1Lely+RRdE1Rs
 77/b81WHOYYBExtrcNXmbwxWqSs7Vxf8yBd/uB9n24sf2KhbVFKOeGXiB+76Ls6Q
 F3cOmQeeyGR+Rk7Trk4O/UxUPnoGFTM7yuFjZnf5R2c2BfprUvZ1OdIax3BxqDAk
 TF1BvmdAYeTqf+45+2DY1qD5w0o5AcCOovOk0mj/3qUbFMngtaVgiEnQEUYpH8RK
 vFecaB13JAOjvcf8HppNtMiY/WC2vKeBI8XTVP4JB8h0agalQUabcXpMdA+J8Q5s
 0zFAueYfzfDOtjxjgoA3c7GKk8Hkj4rtaa1nbTgIGJ4of+gpuNSA+AmLOPrLAcSm
 xQWsayfvrMdCWIwjSkbqB4yAiffIdI11buH44XmU9VoB/EuyxZ0eWft61kBQIKtM
 ES+YMiEEEHb8R8I/2wgJx35hywHUlOKn163em8Rcwbm/i9Myx4pc9RVSsz9IBsUe
 bHOi3v0kfVrxLIwpqfUc/Ryla/+BW3W08WeJ5AW/hv+OU7HHnNTaBeNTX0MRe6Bx
 jbDYT+M0iizIU7itI8Ki/wDYhhbwKq+WLvozPHoHQv4rRnuwdvW8LQmdrIE21k+5
 XrphH1jIOMo3GosT2wEopaIbjC9dABEBAAGJAR8EGAECAAkFAkmZYcACGwwACgkQ
 dKUtJ6ZR/i8Gswf/WvKsYhmIPPzshU9e2LYXCNYSsoaayqcwpH4z2UzFOQ6GdOJq
 DaPYCvFS+gllkktfKJ+qXjvwMrJOyyONVIr34XJTKc+5dX2kKMu/CnSNkBD+nfDo
 tUk9Hd1Z5zGaNrPwy02y9KWqYASKIWNNFIttL0XEnMfW8CLWQrLzmKRlxWZPC1Lk
 TnYVtxH7RrM3VTbBBfyeMypbdj7Wc1/kEu4xqXgTI6FhXkgTR8Ag1LGP4x32rzBS
 QtuMayhOSUUQZrJpcQYQpSl3j/AGaXuC4sHRpgpomR3B98cCUwcJuQJtCK03W57U
 maATzhsOLAzTARzC9+OmDsItyFnveYUKQQEUwg==
 =4PiO
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.79. Beat Ga:tzi <beat@FreeBSD.org>

 pub   1024D/774249DB 2009-01-28 [expires: 2014-01-27]
       Key fingerprint = C410 3187 5B29 DD02 745F  0890 40C5 BCF7 7742 49DB
 uid                  Beat Gaetzi <beat@FreeBSD.org>
 sub   2048g/173CFFCA 2009-01-28 [expires: 2014-01-27]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEmAbU8RBACOi7LAumjK/zBMpQDMrR55L9xJh1vTYpiKayLth9ZPlsg57pa8
 4p93pSTs7XKcHIO8zqr+LpFFxtafUVoFwzDhwwhO8mX97oakPK/LG2ItUYYZ5302
 RX0UclTrMNt2UM+0nrTI/uoh/azn5S+gJNYYTEJy96QzOtY0eGj/dDvOWwCgg3hb
 fN0crXO6FKY+fshrgQUdKX8D/1PWjcXge7sM3tlR9z0ETZe35qEljmTXpT4sPky6
 KmUF4ymBqhWCTn10WQjuOjhEXhF3rHQ/omgOr/dBQFZefBtcYKHUBq3lvmd0cuFB
 xVJRQErw5U8r343EeaZOFY+ale9iNTfwkl8AyrkaazUH/j3qu4ZnGdf+Wum1P/SF
 8ijyA/9XcujJJuXMT717d5yY1Vx1Dn+aYLV4y3OiniJBQFP9CU2lX+Iw1sfuTGml
 zx8+RPTlL+S3+nz2XkiYwHVi6wlthhGIOgE5DfG1r9FG5PZJtBr3pQau9BilT1TU
 3rXZp2z/tkNEQTagSB4ObCAQ5bTOuxli41TPFuHxmn4Q1YrmkLQeQmVhdCBHYWV0
 emkgPGJlYXRARnJlZUJTRC5vcmc+iGYEExECACYFAkmAbU8CGyMFCQlmAYAGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRBAxbz3d0JJ20jPAJwOdzYWw9hZSEFtUf40
 lGSurerRAwCfWN8iMDBntKPMBt3j5QQWWSkPxx25Ag0ESYBtTxAIAK2WncBXO3CK
 VTcGY5jvbqKWsJ+JUJqZylaV3FW6YzAMKKw380m2khT823qgC5XBja+nm0IQn2ec
 34D3XKl8gjf4WWJog6y/DAnxvwdtsS+Wwq0/ownCF1pvFiIt1tAw54i5fmqpwZj1
 UPQE2IRc54y9yFdGNSuV0He9ZdJGxXKx2GW71rHlgWCfxXmD+GtwzFs76jn04bwk
 lj3YM/AVr+6C3OGrUv0lIzD26kPxpbZHPSx2a6imBk5HQKVsuYqqeI5ZMOnkbwPn
 GuEu7tVn0Y0lwVyBqYf1qe4u2e/38Kg7e/X7Vk/OTSh0FMJ5ZsakKUjedvJ5DA91
 gUJBmGkopmMAAwUH/jQX8T1IlDgmZN2T8FUc3hnQjcYdOPRJv2Qx2DeXK4OI4DCX
 KWxVGXeGVd+EpKgYCSmBYx5UA6MKN17nmoQei2MuVigxE07cCx6BjASTmHxex3r9
 EGl8luGmEkzhTajYfu+13dvMMQVYuyQTwB6dMioaw7j6lE5GBG06NvRfzik3mI5n
 ms487lKYcqAJ+iFk1a8Lbtof3xoHi9gYl3pWQ/rXirY8sp02e2FgC6iFvE/4+hD+
 DCdkkCZOJMIl23JVm4VLWC8Ak1Z5PnOXPzXwS1hEX1KjRyrW/Z1EwNcCK8zSNQH+
 bknf8dxan+46/iwig5ejA9N0lyy6gooFXeiYCQqITwQYEQIADwUCSYBtTwIbDAUJ
 CWYBgAAKCRBAxbz3d0JJ28NNAJ9II48hjLq4PRAYpsDHXGH+2wSr1wCdF1Kq1fEU
 WlCtH7Ew40yBxy/bVJ0=
 =h59X
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.80. Daniel Gerzo <danger@FreeBSD.org>

 pub   1024D/DA913352 2007-08-30 [expires: 2008-08-29]
       Key fingerprint = 7372 3F15 F839 AFF5 4052  CAC7 1ADA C204 DA91 3352
 uid                  Daniel Gerzo <gerzo@rulez.sk>
 uid                  Daniel Gerzo <danger@rulez.sk>
 uid                  Daniel Gerzo (The FreeBSD Project) <danger@FreeBSD.org>
 uid                  Daniel Gerzo (Micronet, a.s.) <gerzo@micronet.sk>
 sub   2048g/C5D57BDC 2007-08-30 [expires: 2008-08-29]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEbXBHMRBACh5wwMt0bmOk2lR4xDsjHRiJI8lIOUzLDmSW/1DJHsKQ+ipDBw
 lMg9cIx6Yp0JS6GQxhd14pFkJ0VKVVt9oVcXWc0OYBcnrPtVcRFietE7wTG6fcrM
 Iw+ZQLuIn/UkFUhwN7254W2k+krFKjq9EDGExL0s3P8FwWkGuBKAM3HUpwCgvuW8
 jn5wGoIU1pLDmIYzKCxXDJsD+wfuIQIUMW5GEfFwkEl1i8C64fkCjVXv5y23J5uE
 PfBHEJK8dFv55re6fnZKqAJMnARHAFY0Z2IH/538wZc787P7PULYxsGrB4DQgnlL
 af8AWgpcGFm6mz6QA7mLj9h8zv/PwZmcrfawV8YDJNiow4CsSGB5A1UUZUU6lSsk
 IP0jA/4wjVIOamzJZUJyVPIM1WqMUag2VBieUFmgf6M0sn8wlyR7feAUJbnmkeAH
 j24T6DPd+A3HgKKMZrfRqGc253VsyxbtX/M6F+85mmsecV0vmRl0oVJgIg7Aq+bB
 0TMBtANZR50ouQqWs1uLku0F5VhODoVUDw97LZPv5ei7P/p+a7QeRGFuaWVsIEdl
 cnpvIDxkYW5nZXJAcnVsZXouc2s+iGYEExECACYFAkbXBHMCGwMFCQHhM4AGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRAa2sIE2pEzUlHJAKC+SEfHXVuLZ+lghF3I
 MU+e1em9cQCdHcVupnW+57s9mcD5NZuzDASBHcG0N0RhbmllbCBHZXJ6byAoVGhl
 IEZyZWVCU0QgUHJvamVjdCkgPGRhbmdlckBGcmVlQlNELm9yZz6IZgQTEQIAJgUC
 RtcIXAIbAwUJAeEzgAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEBrawgTakTNS
 fwEAn16FpSi/Lctq/aV5Mh1XpFD0ses5AJ4z4w938apaw0vzw9RiqDEBvbHqBLQx
 RGFuaWVsIEdlcnpvIChNaWNyb25ldCwgYS5zLikgPGdlcnpvQG1pY3JvbmV0LnNr
 PohmBBMRAgAmBQJG1wiAAhsDBQkB4TOABgsJCAcDAgQVAggDBBYCAwECHgECF4AA
 CgkQGtrCBNqRM1LpSACgh1YZQWrHaL4asAutBLgbuR5q0CsAmwbzvWAC7MZvRvKF
 oE3NWnDztIwutB1EYW5pZWwgR2Vyem8gPGdlcnpvQHJ1bGV6LnNrPohmBBMRAgAm
 BQJG1wijAhsDBQkB4TOABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQGtrCBNqR
 M1IX9ACdFDZd8fIFjkuVujkVlgvHn85h+n4AnR7VpjT3dETOfjCqKrqB7O+OmzGt
 uQINBEbXBHgQCACba+8VX1EqhOGaDuZSu+PXgk0W0muTckSA3l+tPvpjeiTqW8mc
 JBwE437fzy/cVYx8m+fEoixFo4D5kcDORm65e5M4B9ECiJjw1hojXoVWF2aliLhV
 cjyL6v5VQ4SKuYny4cceX7igyFWb1Jcx4zBzC2TGLprq6v2JJyyPJsiksjMQZiZv
 otSkbc4jFDkJU1P8mst8hAYe7aZdjO0ccFw3Lii2NlXAjlM6XYGHUCEeW05S+NkP
 S8dmWCFfKdAGhYXC20Y5F/MrYTpP0mKUPAuVlL0Qa+scqBcceHcXgPywID3df2pe
 2WdcEojzW3BEtLGVZw7LEexYBEQz8ngGUT+fAAMFB/923hvNPjOEG9EA/5GaLivR
 vZftvACEUxzZc7nCpEqWXEeH/Hh536Lj2SKi4MxzXHH44KpfzjAoa/NBk3VrSu1w
 zZPBv+/lJvAj2HOych16CNpwfx57BTWYBpilcQ7j8BeWB9F5VsQ4ffGrnW+xZRfq
 JTTG+sNKG7LMGhvuHB2NAdlEyoEX+XrzJw4WzA+eZo7g9kzLOGY/hdK3V846Nl3b
 pA3iSpVOaI7gprhmjK1ESz58/fLFVyFYh0ZXradk80K1cxiUV93Zo79Uvw5K8tde
 gr+9LUWouND7BXxRJ5AiaiwSwa64D6Qq8OREYF4c8qIl9cwWmE6qlR86Yc+C7f3k
 iE8EGBECAA8FAkbXBHgCGwwFCQHhM4AACgkQGtrCBNqRM1L9mQCfb+hnPmlNyP3H
 FyIZslqXMLP79BQAnR09l4FnL36xldwsMrqll6kRxh+K
 =z5Yc
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.81. Sebastien Gioria <gioria@FreeBSD.org>

 pub  1024D/7C8DA4F4 2002-02-09 Sebastien Gioria <eagle@freebsd-fr.org>
      Key fingerprint = 41F4 4885 7C23 6ED3 CC24  97AA 6DDD B426 7C8D A4F4
 uid                            Sebastien Gioria <gioria@FreeBSD.ORG>
 uid                            Sebastien Gioria <gioria@Francenet.fr>
 uid                            Sebastien Gioria <gioria@fluxus.net>
 sub  4096g/F147E4D3 2002-02-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =U7Mx
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.82. Philip M. Gollucci <pgollucci@FreeBSD.org>

 pub   1024D/DB9B8C1C 2008-04-15
       Key fingerprint = B90B FBC3 A3A1 C71A 8E70  3F8C 75B8 8FFB DB9B 8C1C
 uid                  Philip M. Gollucci (FreeBSD Foundation) <pgollucci@freebsd.org>
 uid                  Philip M. Gollucci (Riderway Inc.) <pgollucci@riderway.com>
 uid                  Philip M. Gollucci <pgollucci@p6m7g8.com>
 uid                  Philip M. Gollucci (ASF) <pgollucci@apache.org>
 sub   2048g/73943732 2008-04-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEgER9QRBADEnqKDo2SQwM99dEQW6sEoFafQm592R98bDFZC1CqmBhZaj9nG
 ksxyX82s/PaOoosKZR3hsMcDOJgYkHfTKIMU6aDVMrONfsgLF4V6meTaBHW5uSOI
 cJBsW/TSTsOq21yrp6995jSTsHZxV0CpFDZWGCowefxvbRoAz/89pUBxYwCglOYk
 btty+eanC+la8LUuLn1na1kEAI9wXI6wRbc4Qv4dppmNwiBsu0aDW2bOe6TNU5nj
 MMU5dMQkQ+FkHBFNyF3Fy5Uvm5zhGhlPKRTW9nOmLzZQBf9kj1G2giq5MN3fs4jg
 k15/93Jm3TnyV8LZxP4cBU42HhuL3b6rzFFNVgDLw4PJuSqjt/JTNhNtCwYW+nqS
 g08zBAC0FuxTJzna5X8Y2o5o+J2yU0kIB+y+fmGeaN5zg4VsM64Nexhc2X3HJbXd
 31hPqySdBl6DQP/I9U00S/C2Qb6MVwTDYR2DBltoeqoHOJKGLvqB5N01DAVg8kAK
 31PpMdFhkfZwM2ZsHfoGbnEB2fMd4Fb/+DwbjrckwdG1w8P2t7Q7UGhpbGlwIE0u
 IEdvbGx1Y2NpIChSaWRlcndheSBJbmMuKSA8cGdvbGx1Y2NpQHJpZGVyd2F5LmNv
 bT6IYAQTEQIAIAUCSARRtAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEHW4
 j/vbm4wcSz8Anj92jZBlcifpDwdiUvTZdGO28CjQAKCT4jeiJcLCbhnXaXonBCzw
 DRw5s7QpUGhpbGlwIE0uIEdvbGx1Y2NpIDxwZ29sbHVjY2lAcDZtN2c4LmNvbT6I
 YAQTEQIAIAUCSARH1AIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEHW4j/vb
 m4wcM20An10tzTX41D6qcEjOBqMzwyydrYoyAJ0Qs9fj/ct7iDCphvNwCcjNGMlx
 ZrQvUGhpbGlwIE0uIEdvbGx1Y2NpIChBU0YpIDxwZ29sbHVjY2lAYXBhY2hlLm9y
 Zz6IYAQTEQIAIAUCSARRmwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEHW4
 j/vbm4wchSkAn2DyHStIDMIXwKH8LAgut1wpf4sgAJwNKynACF0+sok5YupxxZkm
 QFJsNbQ/UGhpbGlwIE0uIEdvbGx1Y2NpIChGcmVlQlNEIEZvdW5kYXRpb24pIDxw
 Z29sbHVjY2lAZnJlZWJzZC5vcmc+iGAEExECACAFAkiGRaMCGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRB1uI/725uMHK3IAJ9n6VjOWpymuzHE7xN/xlJu2j5l
 uACeIqegqdXAaqRS4+olfTDN/nvoYWe5Ag0ESARH1BAIAJGalt0PcCClgFjAWdKr
 2+wNm8CrgW8cm62p1KZ9rxTHqpDEQopa8Y2G86pKDmhjJQmPmepcZx2ZhnBc0UVj
 qBA9bEDnVJU/ysuxjYrjswYNP+5ZemUsk5IZgnZOLQod6ewWtcdZ7EPJYOfKNAvo
 1TMNFZqA6CLKUgjPpokRdolseRkyuS5q5XM4InraptSvv6G6SXRiDBwChbwfbJG/
 82ClmnuInhDzmc4gg5flrU6RprLu/PPx8SSIRkVHNZdPL3cF5pocETruqdkcb8yD
 aC4kIIqsn1XeBYLXS5lYbZBexR0i4i0xkjXnErrGu2lgGm65RwF+hvRsDC7RIC0c
 9hMAAwUH/0UY8w+pGeGMgZJHiLSoaK6pTXv1/ega4na1vGglnBeGXB2Cj6jKgv3j
 6a9XLRtaw5owhTLAX0uWt1XOw8ojm+vgVBvXJO7ljUI99/Zov5IQRZfy4TN8dOY4
 1TNgGiwaUU/rh+MIQy5hFCQPGRjIUKIkOGEBKOaZEkTV6Hr9rFCokpcTILF73JB+
 hI2EHwnXzpFKmzB1zwbNvtv4QiyozROvc558n13WP8OdmdGNv0jNcytqEIaB+PZM
 wMcLMjikPHKUxfHcdmwCezpIBKG2T/5xgzTCMxQ0UbfIYLnsOfJrCm+akw2VbQ+R
 TdP5dVLKITdFUk3nydirHpN5JYkH31WISQQYEQIACQUCSARH1AIbDAAKCRB1uI/7
 25uMHPq4AKCSdNolzpw8MfWfj4LU2ZVlbflHHQCfWUK39VTu4mNu5nPmuM6gmewD
 rNE=
 =SgIy
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.83. Daichi GOTO <daichi@FreeBSD.org>

 pub  1024D/09EBADD6 2002-09-25 Daichi GOTO <daichi@freebsd.org>
      Key fingerprint = 620A 9A34 57FB 5E93 0828  28C7 C360 C6ED 09EB ADD6
 sub  1024g/F0B1F1CA 2002-09-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.0 (FreeBSD)

 mQGiBD2RGpURBACZe4DKSXi6jCkn4eZHJr7nGPISQr4YUq3rDqcOSUlFPBZlVd8S
 pYnfkNNW8HTxl0+qd5kIXiQxuvWxCrTNzoS0gPO3IQcICkAqbIICK0A1KFFx4Zen
 +muTp/e7bDhStcMEelXc+/3mLReBJf/d6e4For6P/rqVmMAcm5A2GO4quwCgmrSD
 fLt9NGJ+mtiXFxloHe57l/sD/3nanV7H4zk9gPJZA9b8UKpbZZmsyljTuYOAULL1
 oh3CZDYvKZZ3E1v9exVDadSGvbps1bL1okku27nNd9BnlnSxZ+sQbfJtvEoBMUwH
 HJnAhTU5sW0UJv6K7goZ283npX8fFjyDWJ4+XJ1Qq1e+VMF5QeZVRFiIJ6NztM7F
 6b1NA/0dwFApYGf2r8YV5uJPeSsWH94Mx4PTtIXp+WOovQ434wzuBUMiHxeeuv4z
 LP9Vjf40s0GoC0TLz8wB2awUrO8aWwgg9SUf5yO+jKZ9BchBgnqjju81zAG5sbUc
 ogMUrENjqIJgFCkHcnbxo2IHOygwjezvZeM/svcxJ1bW/gZlwLQgRGFpY2hpIEdP
 VE8gPGRhaWNoaUBmcmVlYnNkLm9yZz6IWQQTEQIAGQUCPZEalQQLBwMCAxUCAwMW
 AgECHgECF4AACgkQw2DG7QnrrdZetACfY5hq9W8pDo/vGEaCZWQtpTpW+EUAn0jx
 G2nWbw6EDoGxa62mmqy9rFyMuQENBD2RGpYQBADjmTUn3Gk/tkVzIgVm8wdfuMPb
 n08JkuNLUDYjxWRfRmVZHpT3L+e7rUwKFrcmMRM+kMSsnWKhmhwpkI4Tqgi5/lmg
 kN8R+kr6gm40lEAc8tNPNzbE4ueKSAwW8QKqC2iHAqe0l4SjvDEns5M3mARPEtfn
 tdEsQGeyGYlxsG+MhwADBQQA0HSyz2a2mMvyn7IfG7f7t3zuL5tXoFARYQ2FYMWn
 VSkydfzYuBc6kX3oskR1QMv4EDgX0hIUglvTIb918Qj+4tx5CKsUKnZFflGYfY2C
 qwVwR9SPPdX7rhytqkalH8HyuLm2XuRaf/pzo23tAivSXNFhfQhvybFtLdPBJ6yK
 3XaIRgQYEQIABgUCPZEalgAKCRDDYMbtCeut1qqBAKCDnLRYCpUm4eyVG+Ycsn6B
 giZvyQCeKeQZPCnz6RKllxb8E/E17bdhN24=
 =T2MZ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.84. Marcus Alves Grando <mnag@FreeBSD.org>

 pub   1024D/CDCC273F 2005-09-15 [expires: 2010-09-14]
       Key fingerprint = 57F9 DEC1 5BBF 06DE 44A5  9A4A 8BEE 5F3A CDCC 273F
 uid                  Marcus Alves Grando <marcus@sbh.eng.br>
 uid                  Marcus Alves Grando <marcus@corp.grupos.com.br>
 uid                  Marcus Alves Grando <mnag@FreeBSD.org>
 sub   2048g/698AC00C 2005-09-15 [expires: 2010-09-14]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.2 (FreeBSD)

 mQGiBEMpwEsRBADcnD1kRdYoPvpKLjT1w1T5p1fT/LAimANGHXVoZxusjNdJjleF
 7SNfN6V+sjm8bdUjZb3VJr3oA21sdwIKXzamhtbaDRAAvKdYIRecTaLId8SqI3dO
 mZtLVo0A7XNkjVMtyLn8lPKpdiHPOc05/x8sVLNZ2LR/xFJnbdT5bomy2wCgmIOF
 EaoJmSuh5trZRiKIAeIodfMD/3zaTMjI7eLziJG2IWdxceN40vUX555gCpeFEQtD
 DfVV++32c7BN0j9o8VFl3W1vsQ3Elhm9GRlb5hZbRo53Z1YTJEzogXTGBVipJGID
 cDo/bCmRuMSarsT+M6R1NF6uToSBeVZyCtA/DDbJHNvYD5VeOJKsdaQ7hYtctoJ6
 ms7hBADD8AeV5gLZOjOIFTAkX1ibEksxz/P8aUFjnj0QmPe98/RI02e/iYVVdPgz
 HgrTA+gF0X7nIicn+KhBgOT0MTx6bf9DFzmk1KaFBA6vnQ9alw1WtRHGsIm0OgD/
 Jn5tRQFriUS5PWQP8FKXcUfmqOd0WtLebPicX66nOba+NKdU+LQvTWFyY3VzIEFs
 dmVzIEdyYW5kbyA8bWFyY3VzQGNvcnAuZ3J1cG9zLmNvbS5icj6IZgQTEQIAJgUC
 QynBHgIbAwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIvuXzrNzCc/
 UUwAmwVe85K4Ljml9AgBKbNn5juVRkr7AJ96PWlTFr/IdKq+1m3Zw7Hyt93cf7Qm
 TWFyY3VzIEFsdmVzIEdyYW5kbyA8bW5hZ0BGcmVlQlNELm9yZz6IZgQTEQIAJgUC
 QynASwIbAwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIvuXzrNzCc/
 6koAnjbYaFve7vZz3DW2qTBnYXp/n5IAAJ9+2EStzCP3tnKb/hjOxotstQufCrQn
 TWFyY3VzIEFsdmVzIEdyYW5kbyA8bWFyY3VzQHNiaC5lbmcuYnI+iGYEExECACYF
 AkMpzVMCGwMFCQlmAYAGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRCL7l86zcwn
 P+oFAJ4tcY+w4DVH+x7euh4K6ECBqM73PACbB2QBuJrDOtTxoYdmiH3XdHCytT+5
 Ag0EQynAUhAIAKD52CU2Xp69qfo/j/1aLgiMhgLpx56ySAb9SzZySUHadyptFpJR
 i3glUnoUh9dfU1jr8Y0f1oChCmm9TOZnQJWR7LOrO+av3gxnRtVMkvVr8eAPG3o6
 C3VZop7FPxR05Jmy0EtIxweEgNGmCX/p58T9LAM50E9FacmwYAIn77O5zXcJVnBI
 m9Ih05Hy4nGIoyF4iBA/NZQL10glMnwc6p82AiMj1FI6i6iDdPYBeiHKUXkyZ+Q7
 Df+HkelT3zot4DPKBeGBSFyQENOjHCp4wl27DsfiJXViy2NRz5lzrSFgvc0ZIUus
 Ia5d9nG+OE67JKU4qT5xgJL5+eOe1lXsHgcAAwUIAJKuSmq6lvF4NWN8HWDimXBE
 Ol8jNHf+miaLgMxOhAOeD4TQHpqgEhnf02koUbGDbli/AS1oC6WGhKSekgYKZCkf
 zmvRNEkCJCOMG3bOcKEokHiujcyQHWf8k4WmBQe0hGalrE+oaLti5H2/jAqUqYFi
 tHWRUeJDgfwOXRalI3YJJyjfBzE6ckE1kFWoEeXDuZdER9kusWWVrX38mdniwoKj
 7e+GtfYo+riB4Nb/TSuQjw45DKVaqYNi13P2P1EmHwmrSjnL3Yrck3x/vDrCKa0c
 2+BAMAaLVnOGdaYT1xsaMBGcgSkybQoOmvMm5hdtxURqi7k/TbaNhV/etSzfB/CI
 TwQYEQIADwUCQynAUgIbDAUJCWYBgAAKCRCL7l86zcwnPw4iAJ9rVaOA1zKrzwRX
 CLE2Xxf/FkN6JQCfZU7PjkJvE9jqgsBVfMhi6S6kNZ8=
 =rDV2
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.85. Peter Grehan <grehan@FreeBSD.org>

 pub  1024D/EA45EA7D 2004-07-13 Peter Grehan <grehan@freebsd.org>
      Key fingerprint = 84AD 73DC 370E 15CA 7556  43C8 F5C8 4450 EA45 EA7D
 sub  2048g/0E122D70 2004-07-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEDzjb8RBADNg1Ak3kReZLn5N6aGm/0ofeBsZDK31HgXFoQnXpZWuPf4Dcuz
 EztxDMfAhCdQPuFm+u2av7YiOc4Xmxmety18CwBP4E0w2Wf2RKdI7CdeVshn5epo
 kTMTn8pDu3ZDzui6Uvnjuc6y51VzL4zJwNNZAF5Vs1gXr+V7aDbvb1/6PwCgtX5K
 XQHfTdms5d6yhYwyQ4SrJ6sD/izS3iZBHe/nDdTBnSIA4sIdcZUn+sRfX7/GPs3H
 9JgYbI/+fatLEUShiKaNTCCibNRXx1OqFk0w+vs1pRz/ziE+G7uV7tglS3h8LMnO
 Q/6y8WwTMiv2seCKyiuvGxG2NMT7OAdrSNe8xPIlNRBdxvANFlgnfPsypXRfjJ5g
 1mqxBACaho98/zNgFpClOwAxw1Il0TX1c2EGB0e10FJ77rDNiPCWSnsPu5LB8mhL
 FfeGdx+zVVj5G4tMVIdJgZ5T4IpELPY1rpqf75F4mBrWTnmd7g9X1S//U8j7pNet
 JDVlymYg9DJvtKnfOHXqViwV8g2X0EwKsOpjo3IBZ0Oepw3wfbQhUGV0ZXIgR3Jl
 aGFuIDxncmVoYW5AZnJlZWJzZC5vcmc+iFsEExECABsFAkDzjb8GCwkIBwMCAxUC
 AwMWAgECHgECF4AACgkQ9chEUOpF6n19yACeNpRdDKA7qDA1vKGyjJIEdeAhqT4A
 nRC1CUpFTve3psN3cPWymDzSiHl5uQINBEDzjcsQCACkCgzuJRaPnoWmOZCk58ya
 +2Tbxd3qHtDDwMnY8NKi15FA0Cs40PUffHtWrxW1qcmm7QRmhHpR49tR1f7xT7CR
 OX5QKPa2axjv1mk9MKC4BtMe851UIMZ8vWbm/Obo9UdNYqEQEXT5TY6PbkiC8tDH
 5i00MBg6mkYtK9xU1OjJUp1YHuqalWgMEW1nUFM1CV1Fbk/SqLzyNcC0biTRMUkZ
 aZ1MgF6oxBIj/InO0f7gVoL3Jb5BC9bOUo3NkHCUQDBPwfLXR3lfrQLo7fLckYaN
 j85Ap6NXJr88vINfU+xn/MeVwTGYw9ejh4sujp3d57wP9Ym3PaR2SkoPdZO323oH
 AAQLB/wMC99y55a2jnP9IOsI+UIgWFWDmVqDhdgdp7asKjW2aUhX1k4CGPw7AdTL
 dtBdxqxFNp72fZPZ53ZIn0z2bogyYOOT4aWbTFiqKyU6CScCpeunKs+/qz0pw0f5
 /TdHgDCBrlMLihNiC0Tvtf/BzTLR3pqDshts8x82qKSjhxExazbBxJ23A4El53I8
 zZLQLD+vqJaFylhze8DNC3J/V4NgD1Vdporrz9L+QZuJXDGUyp6Gj4uteAu0W/My
 4+5zrs9Ym/TSmC4y3PLoqAeJv5I3E+6YqMo4c7XcLuJWO8jzg6aRlQmc/WgvVANW
 juieqW0bcYqNu2F/GeUcgvD3dWt7iEYEGBECAAYFAkDzjcsACgkQ9chEUOpF6n2l
 QACglTS9Ryv4oLwvXTNK2j2RLiH1VZEAn1YaLCp5rtafXPpdMdCOuJXo7MjC
 =UNPF
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.86. Jamie Gritton <jamie@FreeBSD.org>

 pub   1024D/8832CB7F 2009-01-29
       Key fingerprint = 34F8 1E62 C7A5 7CB9 A91F  7864 8C5A F85E 8832 CB7F
 uid                  James Gritton <jamie@FreeBSD.org>
 sub   2048g/94E3594D 2009-01-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEmCOzURBACOSQ8S2bwRYqXrfV9/pT8BmnGl7GYrkbDtJqL0IaTV1Bmdw7ed
 qcDjMT55c2LEQlO7w2EG5z7JfaBnP+jV3X/gtH37gcqClcJRxJ2uhT7fShzmRR/U
 5iTbAt0BwDF/W5LFmxajhZvw8NJKeMk8j0kUwdTzSKalN+iAhXEhqx/uWwCgz2qg
 9utCYdwfeSmRwebBIQhPq4MD/2bWpo3/Vw3PZzNsja1l/s8jQjxkMoXJ8LlYFoYW
 vc5lMBeR0nb1lZrnBvQGkEJVSPLXLvTBYireyqai8pt+Uk7D1oRevpsD/rIsSZBV
 MVSa8jUqPF0HC0vWrDd98HDq/RJ3SD4HHhiWJ2wA8YrftyeHzZ0kiJYzggQ3UPM6
 +x52A/0U2kBqBq+HqA7YWTEo4pn2W3adZCT8mwmsDdEnC/uTvA0BHBN1HfgCxwee
 TSqOwssFioHCVu+N/lxKjqy9ftHI4ljSuYOPpC3q+LwFdVjbCQ6ynILNKp89QiK6
 B5TphmOTQJ4ytVxr/tcvzDOCxbtyG6t7eCJBlfEgGjZLQu7uYrQhSmFtZXMgR3Jp
 dHRvbiA8amFtaWVARnJlZUJTRC5vcmc+iGAEExECACAFAkmCOzUCGwMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRCMWvheiDLLfwhyAKCP4JGKCayDfY1f7sBXhYSa
 6Zr5KwCfSy1evNxNmp5TwB7RBpEZpL2R2C+5Ag0ESYI7NRAIANiluE6e3GNLyLTc
 cc/SQ5NdW4/B89yDQkZi/f7mUAMiS73iKoe555EVI/JIFsHUduHeYMB/ERDHNSUj
 RmWVkb4r8eVSlMVvoU8sBYGqihoYtFXYT7rj8vvq6ufkF9RtBJLTLzikEg07jfQk
 EzKr1eFOl0v76UGnmqrYiTXOAJoXQIH4+Kt3pWd8jz0Lsc3Kd4+eMW2A+eXSpShb
 yuQhvtIkSdOLDa9PV03Y/GweSCbTKa5+oTmCoKvXJYjDHwkuj7n2dog8vo64Oy1h
 z8mPPFyDXr1OitDdA78Vvpu8afz3Uev9DMaKd6WIEtVUprLOXyuSixn0x0rvImes
 t6lHX3MAAwUIANKigPUT7boxzc93BdWUOKrZEnjN7zVnIqUMizVgi0K9nLM+lSpm
 exPfoEZqCIBmAmDRYO50Y5Lwb2R6V0qHFBmIvZZ9Ih4YosXuu6oFhKHjamRK6JXI
 hh5mMrOZnfDRn5YGEr3ZCEOGzdW0pY1t8THd6mtXmK7iIKKy+3u/WHf0tCJDRXk6
 7ETBWwqFTE3XpZz09aHRV2470GKESSbs1Q4Cobc8ZIifNzr8kfnWPm/EH2UCNpnZ
 K2UvAxi6SRYVWIY11SRS/am+DRGweKfm9+NZpHEk2yJknHd95Q3IVw+fX+2yKVQe
 L+X9H5BR1y6XxKbxqrlWF5I2FDJo4BzOA1eISQQYEQIACQUCSYI7NQIbDAAKCRCM
 WvheiDLLf1rdAJ976PPYVcvK8Q/zKQrMv7pff09z2QCgut3uY8LEhlK39qZCF9Cl
 2+bu5gU=
 =Uux7
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.87. John-Mark Gurney <jmg@FreeBSD.org>

 pub  1024R/3F9951F5 1997-02-11 John-Mark Gurney <johnmark@gladstone.uoregon.edu>
      Key fingerprint = B7 EC EF F8 AE ED A7 31  96 7A 22 B3 D8 56 36 F4
 uid                            John-Mark Gurney <gurney_j@efn.org>
 uid                            John-Mark Gurney <jmg@cs.uoregon.edu>
 uid                            John-Mark Gurney <gurney_j@resnet.uoregon.edu>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzL/8IwAAAEEANuX7fcIa0S5fVATYQCGwgBJo9DxRr0m/QjrP4dJh/JEIjmv
 h37FMs9qsMPtyAZWlRSnbVFyQiz5ptFuL1irClW2UHzlLvd5s+pKMfIkJWDTnrvp
 0jFebYQt0chZeLcKT9s5sSo9ua+fUumOfaWyubUZPIqmDYqy98Em7wI/mVH1AAUR
 tCNKb2huLU1hcmsgR3VybmV5IDxndXJuZXlfakBlZm4ub3JnPokAlQMFEDMBDfTB
 Ju8CP5lR9QEBmnsEALAS5dZyQXxsDAROz+yHizsbgV1Ok9vFwE5en7QnOGcSkQX9
 pE7MzzlbpP63toF9zWLF75dbXE5X0yYLoB0pvNi1NXhXqA0YbDeAi1Ed6uBXbomW
 MDdm0s+O0Y1NfuS0uKiFiJUDOjdBrgEbnmPZM/77dhr5UbmAtQUHFftaQfY6tDFK
 b2huLU1hcmsgR3VybmV5IDxqb2hubWFya0BnbGFkc3RvbmUudW9yZWdvbi5lZHU+
 iQCVAwUQMwF753W7bjh2o/exAQGjjwP+MKiFH9EfOGS7yr5NQ4+vWXuHe1N6fi9N
 jJsFfzT/RCM/wo/dNG/xhTgdCoCWRt0gKkv3SLEPYGDPDtC3Nf7HV/66wOiYYnxD
 3cmjgpLn5u/Ju0oS5xxNb5Ly8EZnfz967lIHjp/qhbZ9o7kO7Nkb7bUgozNqBaRy
 9Yo81fVAtrOJAJUDBRAzARCXwSbvAj+ZUfUBAeUyBACKoIXfYBpsKqmmnTg944Tw
 5t8lAFZ8qJz42Fjw+hswC6c+7b87imwaH3AjPnFmsA6f1ES7xDHG8RQleDtKsyik
 gHc9Yos/neVqwfrr4zSV1PdNPPpG5uNT/jI1k1M3pH8kwYdKiwaIHQb5+sGUQsO1
 ZoxCdzT7HJq4jJtBGVIRULQlSm9obi1NYXJrIEd1cm5leSA8am1nQGNzLnVvcmVn
 b24uZWR1PokAlQMFEDMBEHfBJu8CP5lR9QEBak8D/2V+1pP6zA1dvhRLcO2pGldn
 Q/dcVAAtZIZ7AUUap1pKXZF/Tt4gWKMtAHj01xUbwU1fmI6DF1p4AVjDqOxJDnoZ
 RD9gv0RiZXdUesXL2UBNHc/7f+amAJgmXNrP/m70ejgzPluniR5hQm76fKYjkxV1
 opRhhchTjhrFndoQ9nvQtC5Kb2huLU1hcmsgR3VybmV5IDxndXJuZXlfakByZXNu
 ZXQudW9yZWdvbi5lZHU+iQCVAwUQMwEQWsEm7wI/mVH1AQHxMgP8D7VM+qUo0qGM
 uFUKqxoQcDPVKt2W1X6wWTHdj9cxo3oW1tlLEZ24Y2v5v1pzonvseaTjsse134dP
 a9qjcwXjs/zxXzHoQs3B9BZB2qXaR4T3YeuCjq2qIXGwsrrY5fkoch4OLg0/FOui
 dmNbFjVQkIma2rIRPa8GhXZJtGl+UEk=
 =bUtb
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.88. Daniel Harris <dannyboy@FreeBSD.org>

 pub  1024D/84D0D7E7 2001-01-15 Daniel Harris <dannyboy@worksforfood.com>
      Key fingerprint = 3C61 B8A1 3F09 D194 3259  7173 6C63 DA04 84D0 D7E7
 uid                            Daniel Harris <dannyboy@freebsd.org>
 uid                            Daniel Harris <dh@askdh.com>
 uid                            Daniel Harris <dh@wordassault.com>
 sub  1024g/9DF0231A 2001-01-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (FreeBSD)

 mQGiBDpjbB4RBADW+4fkXvVjAZ0A1X4wgXJQ4Eyes1LH7sTexP/Zm7sg1D/R9zV5
 w2kBwOhICRX/hxVL76YZv2MTNL/d3pV3ZW2yV3Z6H7Pq7s4oVn2q35owUwLQZfSI
 SBTnBiVN7NqMZ/kzCCdWBwg/4G2FVNFwc7RyuOFQL3ly1PBtgbANbpCyfwCg3QXB
 K6AtFaEP2MA+SWWHQD2dNxcEAI11cbOHbYU8asIxbqYYyPOMgPsaLlPiTh6JQOO0
 2OiGxoQlmZvkhlWf8B9ahCeYoKgA1zPqdHA2C9YMvOV2LvN+/Qi0n3hpqkfM7lLC
 QMJgm1KxIzccWY9Iz09GRlIFm2JPaCVLsKh1QPW50c3yO9TMSa6lXwiRgvxPz76C
 JHniBACa25NHH3x8zx5KA0FgMM15Wc481777CFVsKazNay00G0HogSICZ5lHffdi
 1O5u+qQHchVKL0Lbe1zhdbVHdSAbEqnKTqseVMQ6I1TVu4gO89B72aY1RxAnAYjh
 PAb5W/RhZBSR5NDVZyANnqaGE7U7KMqn4/E0lC7w1TzoIZvDMrQkRGFuaWVsIEhh
 cnJpcyA8ZGFubnlib3lAZnJlZWJzZC5vcmc+iFcEExECABcFAjpjbB4FCwcKAwQD
 FQMCAxYCAQIXgAAKCRBsY9oEhNDX55peAJ9NKai2qEcFLxzC14qDz80zBGwP0ACf
 YhsW5qhTw/Rck1Id2W1alUEXMre0KURhbmllbCBIYXJyaXMgPGRhbm55Ym95QHdv
 cmtzZm9yZm9vZC5jb20+iFoEExECABoFCwcKAwQDFQMCAxYCAQIXgAIZAQUCOmOL
 hgAKCRBsY9oEhNDX5wXyAKC6VLe3svRc+FgmmjPS/EWvi83sDACeOpmPRbViajOw
 4MUhKA7hxnRlBeG0HERhbmllbCBIYXJyaXMgPGRoQGFza2RoLmNvbT6IXAQTEQIA
 HAUCPSJfQAIbAwQLBwMCAxUCAwMWAgECHgECF4AACgkQbGPaBITQ1+dSxQCgsBwM
 uDviakYEKswiv6zMHfYBBCEAnjMyu+oxjKOWOo+of2qmtQH2LNg9tCJEYW5pZWwg
 SGFycmlzIDxkaEB3b3JkYXNzYXVsdC5jb20+iFwEExECABwFAj0iX2ACGwMECwcD
 AgMVAgMDFgIBAh4BAheAAAoJEGxj2gSE0Nfn6bIAoJlPaQlqk4wbNGoscjigAp0R
 B9ooAJ41JxSh9w2S16mFTGNKvVpjXw15BbQyRGFuaWVsIEhhcnJpcyA8ZGFubnli
 b3lAZGFubnlib3kud29ya3Nmb3Jmb29kLmNvbT6ISQQwEQIACQUCPSJiFAIdIAAK
 CRBsY9oEhNDX558OAJ9iOqCDUX4cdNMSZ1KBQg1gfTn1yACfZNL6BY+mYC+XV83L
 7DXacstXHlSIVwQTEQIAFwUCOmOLtgULBwoDBAMVAwIDFgIBAheAAAoJEGxj2gSE
 0NfnaM4An1YVu3iDtrG314UIuZoTw3zd9ucxAJ4yg3vWB6ceg06KuyaGTJSdZ1Oa
 p7kBDQQ6Y2wkEAQA0RSR8vkmX33oyYl+LwlOmemSKbSQFZNImw5TDcRYX83fa1Z1
 4oIgJSk1h5l2jx/+29chVR1nTNqPYlRQEDMxVby9rMq2RAnjorM6oDdtIQIBNJ63
 vmUcUiORGnKhC0waajpmZibcxoUFk1KcLyfxOT0JTOLgsJfqdqUENIc6NqsAAwUE
 ALaLYnBOoIr5Wm/KC7wRtS4gHeeOeskZyyoa3+AeBorDl0VvpgYwlNdAaP4xJrx+
 CH6UYnxrMgCXG1l4dupkGXOCRPlAcM2ouEyDIGHRTVqHy40khZnWzN7xfZhKNcVd
 FxeHqOG61ZrhcMboxZrdJC7hK+sYrbngeKRiDs4VRoOuiEYEGBECAAYFAjpjbCQA
 CgkQbGPaBITQ1+foeACgme+2LKdFkytbn/JUhBqPYVAD8KQAnjP+IDVQ3PDEKRkv
 AFGJ6i5SrWJ6
 =j+GD
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.89. Daniel Hartmeier <dhartmei@FreeBSD.org>

 pub  1024R/6A3A7409 1994-08-15 Daniel Hartmeier <dhartmei@freebsd.org>
      Key fingerprint = 13 7E 9A F3 36 82 09 FE  FD 57 B8 5C 2B 81 7E 1F

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQCNAi5P5owAAAEEAMIKNuDnLGiTOzk3kGMmz1ii9FbYEM6fKdf0jSi0YSTxSWAn
 7EZbBehJ3yTAYuCaGSEGXEWismycc98LnH2Fb0uI2EsJ0CVLJqxsOL3DK8XE0YOk
 HjSKUpmJkh/BKrMAmUnqhbD6YIBiKnZh3ABt9+a7A+SakJQxvtQ9cYxqOnQJAAUR
 tFVEYW5pZWwgSGFydG1laWVyIChMYW5nYWNrZXJzdHJhc3NlIDE2LCA2MzMwIENo
 YW0sIFN3aXR6ZXJsYW5kKSA8ZGFuaWVsQGJlbnplZHJpbmUuY3g+iQCVAwUQQGso
 RdQ9cYxqOnQJAQFBSwP+IIm2bFprpayabQ/VgXp10OD3sgIEtH8c99sU91LyotNT
 ySif8DS+ujliDk5wVnaOlzqrV4sga8d2ybM81hdW0nxI9dNxLIp+ti90OecZMF6M
 4PlsdkYGnqZDzXlFg4o70GSAWKjL9RTG5JvNnYWS453mCjYc3O4dm+1zzADfgcy0
 J0RhbmllbCBIYXJ0bWVpZXIgPGRoYXJ0bWVpQG9wZW5ic2Qub3JnPokAlQIFE0Br
 JFTUPXGMajp0CQEBkqMD/0D1K1hTJc8u5K3gpsk9LrnOVYpP3zHbSe94oLO5tHv/
 b/Y1626xqcMKYfAIk435asuPnGRkMjgpsxPUKksfWMlUqW4aIiX7di6aMuWkgSBI
 BXguu1Dk/qRImOZkNzWc3V+/CQ+PIauy2rZubfW2+oVkW1iEmmO7I/nPqDxDBNBI
 tCdEYW5pZWwgSGFydG1laWVyIDxkaGFydG1laUBmcmVlYnNkLm9yZz6JAJUDBRBA
 cX8u1D1xjGo6dAkBATkoA/9aDk7yNvh6urP9EWcPv5mjJt0yYIIjGpV7VH2P+mTa
 dK14ah24HSaTjh4psJg/uFw4egAs2XxDKXrf1SHCaaVajC3VQGvKq6V2Ytmgw6qe
 Rtt+NtrXVJn5EUnMY3+G8YCXugulym6bUWaC1x6PC0Y2IEzRkM3H5Et78gd2zujB
 o7QqRGFuaWVsIEhhcnRtZWllciA8ZGhhcnRtZWlAanVuaXNwaGVyZS5uZXQ+iQCV
 AgUTQGsk+NQ9cYxqOnQJAQEV6QP/ZFHefmwjiex7zEU9uhzjEdZhDlM0szKULUoo
 TB4x3yiXiYlzK2aqppXbV+vl+t2VLhd3McH+SKSiKwoBVWrdqsXguruIjUYGMAJI
 aE+Zh3OGUs8sZhtQqn3nE4+VngpyXwPwXPrDhQiwwJRxj+01lupNwS0Z6cAPmD4A
 W1L0aSc=
 =HsTV
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.90. John Hay <jhay@FreeBSD.org>

 pub  2048R/A9275B93 2000-05-10 John Hay <jhay@icomtek.csir.co.za>
      Key fingerprint = E7 95 F4 B9 D4 A7 49 6A  83 B9 77 49 28 9E 37 70
 uid                            John Hay <jhay@mikom.csir.co.za>
 uid                            Thawte Freemail Member <jhay@mikom.csir.co.za>
 uid                            John Hay <jhay@csir.co.za>
 uid                            John Hay <jhay@FreeBSD.ORG>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQENAzkZeP4AAAEIAMKg3LRpUCJdg9V9Pr0KIdvaQeItf5Fcrbh0GE4skfNPKeTg
 TQifwdG/GrMPYJBPHU8JnFqumLUnd2VSoFEJ/6W5SOZP2l5ZCq496pGCSekpe+kR
 dN3Ra+GoR+cWVLKuXj+IxA0Ziv2WEl027TnMhWGf/DHLdoWvSwJdVrGnk0KjBJGr
 HwWE6VGlhBSoOWMa9T0tb3sRVTEIJXDCn8f12eixx8XCzwIQJSgWC+ThrY+ZO/hz
 FRR5yl+izJfffQiLjc4yY0rXqDu9K3i+/0lWywcbnqMtRj8Pnr3j3Lzft+xex2ml
 qX68fE6dxof6Tc3GQCEqelj0IOAb8Zqy2qknW5MABRG0IkpvaG4gSGF5IDxqaGF5
 QGljb210ZWsuY3Npci5jby56YT6JARUDBRA8TDj/8Zqy2qknW5MBAeMwB/9R+Nvd
 bPPkvll4Qaw9I1FwM3iaMDM4IkqR6r+Gsi+RYIClYmRBU1HXZzKyNR/Ysy0thnIe
 YO2yg7U2nYJ00ysSZl1Hd7R9EQBuYZk647PMKbQ+pQ4k9KiO1ObT9JivWz6u6R3l
 gJMnCUEi6s+xW88eeTDBO/AKE9eUUBDZ765M3WcVmGfDYNpW/D3tX7taGcFT80DG
 VXKnFHAP2Um8IZeHXKGqh/jTTNCqwz7oj3GfVzzGEnmwI+goZScQWUl5J708MnOf
 uxiuOMBs7SLsvg1d7iEkO1oCDClv72i2Sr4rPuybIPMMPIpx/DpAZAIiMYHJ6PdK
 nMXSYgk0GOjx72pttCBKb2huIEhheSA8amhheUBtaWtvbS5jc2lyLmNvLnphPokB
 FQMFEDkZeP7xmrLaqSdbkwEBzGMIAJLwFCCICbR+kqejjFh2BznIOT69PIfE422e
 C2yD23fC/lqZ6LixxGrsZK5TxRycWw7fq06h77kd/RX8UMFErphMTkIapt+wLLoX
 qGLcY1dVyNhW34SutdHzXkMFo6T8COAautpnAMhrSh4dBw6XQUreVqc1BsyXL4vT
 LyI1/E8E3wELJZHldWQ7ldvXPUOaoJp5PJ0FIV3Nvme9g8U0BrZT/NjH06mYgsKW
 +40ZjeRycvA9Yjh+ONAOdX5ijn7QbixjSehFsmdpx+KdNyZbp6iAIurf7ysEp2Qm
 N6K/3EukEnVvy7Nn1L8+7K4IDkK+TocpG/m/P67w1AlrW0tNAMe0LlRoYXd0ZSBG
 cmVlbWFpbCBNZW1iZXIgPGpoYXlAbWlrb20uY3Npci5jby56YT6JAJUDBRA5HN4y
 wnPlMN5G9U8BAQVeA/0V4alPthF5+FVL7GJ14R7IQee3NkepbsCQrWfDl11DJkyn
 DxyISqzQd/ur1v5gziOMppQ35rekRYxqqmcKSg8oZtcQ8WFfrMPOYDDn8uTXmwX4
 OgLuW2EnJc0y1JiKuew1tHRQuoObZtO9yePRKkq+cPgLn+yrjPjGAJ1AuUL56bQa
 Sm9obiBIYXkgPGpoYXlAY3Npci5jby56YT6JARUDBRA5HOfE8Zqy2qknW5MBAXAc
 B/9QuIZEQJDfYJyv5Ztu9mtEUZoFfavYmLnLvbUz0rwZOzv8/krEQtkdVvkWYWQc
 JSal11h7L1EyY1YzrTnANkq4KUboeiR3X6RZ+z0p1pg5C0imWFdMpqnY3croHkQy
 0zU/d/kDd9mU3xismVbDa9xSJHbFh5KDpvnbeRxh5VIXcdiJ+RbM9VNqsMmZwCBS
 DgY/pyRuyiMM91L9IfWlOUwllAEHwedQg+ja4/M1gyiGKr7rmiE5LH9xbInvRR2F
 rQKDtmU49MS7ybHoLfZ9GXKo8iTNOuXE7OGOx8kIuapiNwKm2wayng8utIxGacoO
 hp8D0uj3dgTFUZ3pcMSxtjWEtBtKb2huIEhheSA8amhheUBGcmVlQlNELk9SRz6J
 ARUDBRA5HOgL8Zqy2qknW5MBATYEB/90qkiF+JTQZMN2wwlLkXiadUd1uHK8Um7q
 f19t1pI2Is0BNxtBwVY1OlrkpFkSkpSUHEmVKUVhHjsHVV+r+EdJ4dTcsT6c5cCJ
 i7avfz8duVbym09yDLytnBGr3te7tkmalwk3JkjXJhiMuUW9w9woCuVWRexlABDm
 Md8JjvyLqIe6bNkIcE9GvHhQQUYegYqVhDqzKH+cme1olSYDDjt458yMYo6UXu+x
 g7gESluIgGpK5hKI/MAw3r/XgOliBa9igg816jrTFiX1oZT6dgDKlzxNS7J/O/EM
 GOmNi8N03Qx819oKlUaMHAFPNeUfdT74bqVYbDo/GJptzaQtUiMv
 =l5Xu
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.91. Sheldon Hearn <sheldonh@FreeBSD.org>

 pub  1024D/74A06ACD 2002-06-20 Sheldon Hearn <sheldonh@starjuice.net>
      Key fingerprint = 01A3 EF91 9C5A 3633 4E01  8085 A462 57F1 74A0 6ACD
 sub  1536g/C42F8AC8 2002-06-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBD0R0hQRBACPEDZc2XKdvIq9F4ofeq/EUB8ISFQ6kaVPcb5ingy5ND+0MUbz
 K9U+q6Ik8d67KfHHvqGn7XTOXxGu2WS6rIa4ElFHtG/9lpgYtOFRZJxM8nv5+zCn
 elu18skUNup1y3uIwvhNUY3OPSzVkHC+tUPWfW/8DqdJzud/l8sDFDRtBwCgtixB
 FHJ2jRXInApVzwLcjpgVJq8D/ixzt0O/Zg2p62/qyAHac7M1sEc2QarCAGwRbuNw
 jHRtglxQw/GT2NACWqy7lVHKd37ciCrXg9QrTjotJtMcoJbCitYvbQo2RHfEeIyN
 yw7rffTQ4CpB51KxNhUWHcUfe6Jhx2hgHzehJg7hYnbtSv5hJcn2DXMSHHyHwBri
 hpldBACI7iJxl2MtFUHBo3XW27WYDzTNTh2LUaMcIaowMW/+vIDds6EI71dCAjuU
 Ai8DcNacMtE0xRdtNzDMS8vgYWBVLkHv2ENVdLfpxhM72iu4tmPKGF5AXK191dvJ
 qPge41Z2/57191Xt+keYtuSQDtXwZfSu1uLOHBa0BBvmppBOtrQmU2hlbGRvbiBI
 ZWFybiA8c2hlbGRvbmhAc3Rhcmp1aWNlLm5ldD6IVwQTEQIAFwUCPRHSFAULBwoD
 BAMVAwIDFgIBAheAAAoJEKRiV/F0oGrNMRsAnAlWdC5LkmEF3hZjNAIA8gMxkfnZ
 AJ4k6LXdmHMSSPbd48MbDYq67yzOG7kBjQQ9EdIrEAYAib54xuFqjHpvLxXmqFRl
 qAgAD5XpavuJisxGjfm7aTVWIpR/OOVFYkW59YInHM7dDHL0Y7tQETeEKf9pj6kF
 TMyWFoBjtdazqSmq2YXOvI00N27IKT9eqxJ/qR8QgIqBMNkraP9QKi60ASDIRUtl
 OZSfokSbAKkZMTyS086CgWw0bCPXRCvQLHDjga3KCbht0AjrZFkGmi6r4+rXFnT6
 D3JrNSQ0Hj2qFEixHtZvXTsqgsEkOEtoe5taMFSygM0jAAMFBf97Ip2a/kPkXNt0
 p+2xmWIFEDim7J9Cwl5viTb1t8fOKx69hFDQ2BwPNDZd1HvlrYTpuJ23uTrDOZsw
 IT/wVc/IQ9nn4+mkxOmq9iTHCBS99OXz4IsODT3W1sgzUfl+mdqJP8xfEnsyqy6G
 ivOoR3QdZg7rxvOU98HhDQ1iJX3rCtLNFGisrovDF33oHMEE4oHvSMXeg65JXWiU
 EpEpioINjrA3P+TL+fMv1tb4+wSUPqTWX34Gx4UfDKnMedxl6j2IRgQYEQIABgUC
 PRHSKwAKCRCkYlfxdKBqzVtaAJ42mqzwmJCpk8fdsfkHUt5uGTN8sgCfdmDni1OD
 NWQi1mhQOXZX9oGgyso=
 =PTeT
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.92. Mike Heffner <mikeh@FreeBSD.org>

 pub  1024D/CDECBF99 2001-02-02 Michael Heffner <mheffner@novacoxmail.com>
      Key fingerprint = AFAB CCEB 68C7 573F 5110  9285 1689 1942 CDEC BF99
 uid                            Michael Heffner <mheffner@vt.edu>
 uid                            Michael Heffner <mikeh@FreeBSD.org>
 uid                            Michael Heffner <spock@techfour.net>
 uid                            Michael Heffner (ACM sysadmin) <mheffner@acm.vt.edu>
 sub  1024g/3FE83FB5 2001-02-02

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 2Q8=
 =/joR
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.93. Martin Heinen <mheinen@FreeBSD.org>

 pub  1024D/116C5C85 2002-06-17 Martin Heinen <mheinen@freebsd.org>
      Key fingerprint = C898 3FCD EEA0 17ED BEA9  564D E5A6 AFF2 116C 5C85
 uid                            Martin Heinen <martin@sumuk.de>
 sub  1024g/EA67506B 2002-06-17

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD0NjbIRBACZTF4rK66+y43uXsV8CHSefx5lRHaLPFMNga+sUBRIFcwu9WbS
 KSP/r60Gf/mNK4EUX3/+3gVljrgpAbQL9X9MV/SO50aZM8JMrUkUwjuzzzFKplT7
 bdB2zWhexWemFsE0F1G5NpxkqMg/E0aiZb5P9MVJyGLlF1hCwhWsNG0OewCgzQ/b
 yAEMk03PPk3DOaM4d/Vdf38D/j4O+TJPSjMf58wRGkrT+BmLCvFvg1OsUOMgyQPC
 Y07yO6WmSiZV5ynqb4bS5m3jfQmG1I2wK+dIf8SHyaVgqZiUpfqrsFV2qwfZXcod
 C8a8b/kmEbdMk1j+jZ8qxSScrKCHKqdEs1UihCt/F1kVVd8gqYbWouICxF4GoU4Z
 ANmHA/4xVNIInKVghFk9lMaK9lDgQs02laaTWLWzcSfe28ADds3Jdur0Ox06tgeU
 zdktWQvRYpIjqiQCCFLN18l6Lc5qyTg6fnx2yWpWJMb/xumUz7A79X0TBN8WG71n
 zfJLHtn7fCjsi5009s7Ahu//Q7pGN8FvkrZHZ3xNw+3pAaoawrQfTWFydGluIEhl
 aW5lbiA8bWFydGluQHN1bXVrLmRlPohZBBMRAgAZBQI9DY2yBAsHAwIDFQIDAxYC
 AQIeAQIXgAAKCRDlpq/yEWxchZjRAJ4s0v1VXJmkm7kj3kMM0Z8xMNoJaACgkcMu
 T1ID/2v+A1X7+suOzrWMr5aIRgQTEQIABgUCPZGohAAKCRCteU9X9uLnUzW3AJ9T
 0Hzs6ZZq3HAYuSVkLReaZEhyGQCfb7goCt5RLbxx+3AMyyX5uh1boQmIRgQTEQIA
 BgUCPZGlrAAKCRD5Ay7lt7i0eYdWAKDEeKMbkRTSZKsKelQwiD+T3me3tQCfVMLi
 9mkjolOAXpAOVX3Igy5QHUS0I01hcnRpbiBIZWluZW4gPG1oZWluZW5AZnJlZWJz
 ZC5vcmc+iFwEExECABwFAj/Q6/UCGwMECwcDAgMVAgMDFgIBAh4BAheAAAoJEOWm
 r/IRbFyFjSMAniK+uu6ts+tLchT7+npgPJ0wmyCXAKCmCmXrSUTnPG5DwiVD66h6
 aL2GHbkBDQQ9DY20EAQAh4G77oKy6pQB1+dhbbLsfb3UeRWv7i/w21Y1tSriZ5gm
 HhofJRuczvrhI9V23wRVOKs417TGJzytDIfp/huycYMigAQXikmFBJSqIC2ktJEi
 0DGhhne4XBdJENiHV8rb3/mk+Ffes/88DmoU45fpAwY1YN1jH8WO5mEq2aKCjHcA
 AwUD/jBsaAoUeNO00hwuZuWYNM4nvX57nptObVzP54/TfKs4GmdWzcfI2JB+5eFp
 rjtNCK+tosTQd73VzMWKk0fwiIew+GsB+g/ibK/WJW0lS6fktW2nPG2mGRblLtf4
 8W4ZmtZUqFTBSbmZOcsxQ/LahRosX82NbQyFPwuFMEBqYho5iEYEGBECAAYFAj0N
 jbQACgkQ5aav8hFsXIU0ogCeLnzxBftyPv5iS52Ear+q/mPZL7oAniB0B6mFArQV
 gtLJNL6KejWqSh3V
 =Z84i
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.94. Niels Heinen <niels@FreeBSD.org>

 pub  1024D/5FE39B80 2004-12-06 Niels Heinen <niels.heinen@ubizen.com>
      Key fingerprint = 75D8 4100 CF5B 3280 543F  930C 613E 71AA 5FE3 9B80
 uid                            Niels Heinen <niels@defaced.be>
 uid                            Niels Heinen <niels@heinen.ws>
 uid                            Niels Heinen <niels@FreeBSD.org>
 sub  2048g/057F4DA7 2004-12-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 9RkYrA9581ilMd2RCkU=
 =x4MH
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.95. Guy Helmer <ghelmer@FreeBSD.org>

 pub  1024R/35F4ED2D 1997-01-26 Guy G. Helmer <ghelmer@freebsd.org>
      Key fingerprint = A2 59 4B 92 02 5B 9E B1  B9 4E 2E 03 29 D5 DC 3A
 uid                            Guy G. Helmer <ghelmer@cs.iastate.edu>
 uid                            Guy G. Helmer <ghelmer@palisadesys.com>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzLrzf0AAAEEALuGJUgTVleE9HeqPAi+AqBDMMfa76kC63xx98Hqv1N9TlT3
 jlWVShX7Da/9h9WgK98wkb7613Ur7dPl2qVcSns5w7MCustbtt4YEaQwXZ2jOEZf
 snKt82+DYxZRyfUlY4h/8WA79R8BwTGd/l6g3kDoQuD/446BT8c0Yd819O0tAAUR
 tCZHdXkgRy4gSGVsbWVyIDxnaGVsbWVyQGNzLmlhc3RhdGUuZWR1PokAlQMFEDLr
 znbHNGHfNfTtLQEBxIUD/2Lk7Ds8Rt5ZPVNB2Xv2kzEByndv+r1FUDSDcWUn7MaG
 HdgIqfkNespNzv8K7ORW+qrgIAtCRGXhc0Z1q1/Mb3kzC0g4UW5BuleZEur8Ys7t
 lc13ZV94Wb/rVEnY5wh2s3mCmMeXVA9CAiNBzzI9O1RKVZrLLYJk62ysSoq1os+A
 tCdHdXkgRy4gSGVsbWVyIDxnaGVsbWVyQHBhbGlzYWRlc3lzLmNvbT6JAJUDBRA7
 8tH9xzRh3zX07S0BAdUDA/4poipXJFYG6r7+Hk32P5unYZt6dJZ4qSwsnc4+DVuk
 krv5L1jC8Wg/Ojerk2hYTyArM7xQkw0tELOADL2KBUlHp+Ipz7UuO55n/9aOHnWr
 YJLjT3+9eliYkPqJ4t7sHqlCeuyKc7HkoaaN1ErJTmLLy/Jfcx8BsyVsgihI9V1s
 VLQjR3V5IEcuIEhlbG1lciA8Z2hlbG1lckBmcmVlYnNkLm9yZz6JAJUDBRA78tIj
 xzRh3zX07S0BAXQ6A/4zKB/ROfSAUmVQGm0tH1IC4lZX1qV/PZ4z2KUWQPmXP3jr
 jzYFdlAPaUNIwVqW8Mwj+p9njnL/Ltd3NzAjTP2I7bSzBtg4NcEBRNclOOnbCamX
 B4mSGt07WgfT1QGCY8HyKXNhUBbqvPShfeH1OM7iyooLWU79V/1v8utB/mHxYw==
 =nrvZ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.96. Maxime Henrion <mux@FreeBSD.org>

 pub  1024D/881D4806 2003-01-09 Maxime Henrion <mux@FreeBSD.org>
      Key fingerprint = 81F1 BE2D 12F1 184A 77E4  ACD0 5563 7614 881D 4806
 sub  2048g/D0B510C0 2003-01-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.1 (FreeBSD)

 mQGiBD4dlrYRBADhXves+DDbhv8dD1LyC7e+RIASp8rEN0mJDVarhEy45KxRZcD2
 hE9dLXZU/5hcdK7yfatneg5xGFiedFJ+u/HcsMkxeb60+RUcF6Ec5L8PJmCwIQl3
 3xP7UmC203YufvyidQSayOk4LDyg5WVGEXiN5KuShJC+feAwvtAao5eHnwCg5CmE
 y6rO8Bh/K2MQxP8CXCoLG80EAINd8twMsRIIqAxtVWeG0yudtgYdvhpbGrNKoq2b
 cxmfunLAQmHim1jL5run1St3ZACyuP4brckPiBAOxVoRcIMOGPk04Lw3blKQ7u02
 6aOKKlGvW2pF5/Wh6v/q7gzAucn1HJYcGK7Xc8IvfdIZJl/tTeCo0/smxND4EWhU
 C94zA/0bvNhgntEwLF8x6UJnZXfQ8/LGl/NkSTyTMA1QqRrrik1oN4mYOAHE05Y4
 Oija6MSgD8YDRcrxxr8Dwh4pqS/+FlEsV5y4A4OoYbPW5L6FAbEpKO86jbE3FK20
 lX9Li5+woBWaTuLRcU2Tk69WLeOTdOrs+f50S1xWB4DJKBjmu7QgTWF4aW1lIEhl
 bnJpb24gPG11eEBGcmVlQlNELm9yZz6IWQQTEQIAGQUCPh2WtgQLBwMCAxUCAwMW
 AgECHgECF4AACgkQVWN2FIgdSAaZtQCcDxSj1KNFQXWXPl+U27Sl2/IbKEgAoNDq
 Yn86zUh4NPJZJb3P174CFRK0uQINBD4dlxYQCADaMWMhYNWemjrdioJoZU3vYkup
 IcQg422OZoxWYcUz6zKVHZuPdXSAFO+Edrt8QwvYrjhSiOSF9NNnFgNGMBGmqOg9
 Kfk5rIKnENNQP8H8CZtzlDjJXVoMAeTfaeV9+ztHwWKk6XagjLApl9Fx42Quu4Po
 JdvJNHhq5Bf299jecRsWmSo7DtpNnzGC2HFWRkGdkkNmpK7hFe9m3YsFuP3nCFps
 RXCFMx9t2Bneh1eM+NqogjON+vyZzOUB32WY+x9Kz6Xf29auU1PSNYz+1LC7JAYk
 f4CrFA6wexQHKe/nXwlik3/JeFSPAsp/VsmvaHOenZTOfmtBT4ruOwqn8DGzAAMF
 B/4tHAo7/sAMgvkz0qHAxV1DjOjB5AQSs4phksYWYN1uaJq2//oD/jjifmmkhAq0
 JLEeKDquvuNot9dtJ/75DF/XNa0Upt4Hq509Wm4o5NBN/CxRzMn6oU+K86S6RF1x
 JidNNI+CsTfdkNnCn0x6OjRsG0j+CUbwRrs4CJ/7ZWkuMCclLBKoI+rAwd5YM4eI
 noSrSZ4/2Uct7CyVm2aGIh5ofR75L7k92qZ/D5hN0wwKrL42bO8gJqPGPgsCtr9m
 OcT2DtOxkS9ir2QRyD7SelKM4pmSbxvk8S/IzrNS7dvKiO0xQXsvf+sG9rZOJ2vF
 i3in0uB9SeXAzsqNCqtEkSbeiEYEGBECAAYFAj4dlxYACgkQVWN2FIgdSAadQACg
 z3dGbsy32PBhRn/t1lXp1120VrAAn04hxsFX0HEKt6sqAcpIuzdTVrEM
 =8gWX
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.97. Peter Holm <pho@FreeBSD.org>

 pub   1024D/CF244E81 2008-11-17
       Key fingerprint = BE9B 32D8 89F1 F285 00E4  E4C5 EF3F B4B5 CF24 4E81
 uid                  Peter Holm <pho@FreeBSD.org>
 sub   2048g/E20A409F 2008-11-17

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEkh8ugRBAC6djNybj/k+sW8z4TZeC9M1PuSSuJlmCxF/h35rN1bJMHiaVaz
 umG5AjNwYtKilXO+bpj3OUQDz86j/vMpETy44lOaxr5f65lkP/tXATjVpSkxuimp
 vUHi6wRaCHLbyMGHRfuOX1E1yrYm6E3UvjrNnl8bhOJ9paUkk3El+gKm/wCgtIS4
 07Fb+Mft+7a9Ti8cUKP4rSEEALh/nGAsKInUmw3ybZ4c68yVjOUOhbDgAjU8zwb7
 vVzVpCythAEailx0l5UDzVSD8oszLiSDFLf93rfS7AyWx2/C/6kayLH7nYnmHmI6
 Evv/uZ/o4Tw8l2BmqEMwMIBRi37et9tTJNEKMAAUaah81KRcE9CPp91f3oKutOAq
 BkG6A/9e2II1FvJRLzeGRB4FuNm4yqnRvA+LCPE24qEWGoVu55KvSsrb/kQEUxHh
 46K6d1UCWYIlAPhV/CGstv2CfW4zDXOBlDg8kdQz9VFlzyz8sSs6ZP6b7kUzrSRp
 tq6mgiLKaTFYtm/BaUgYXpSI2uTlgujhC2v40pzeKN65Ph2H8bQcUGV0ZXIgSG9s
 bSA8cGhvQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJJIfLoAhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQ7z+0tc8kToFTVgCfU8q5hy5tJ9ZEs9ScXPuIZ/vA4XkA
 njuLqq+giT5SvrrckuA8I1iFgsezuQINBEkh8ugQCADzK4XaJN07zeKtivb4sass
 fejhXyMJ5kwNqK+DRqMcHkbh6PCKpoOo7xjnk7e1MdTp2UeGifzTUEXz9iPdLFoW
 0O2iCppIgUEVfeShzOqEtiP0qpdDmc9RHbA17R8V8jaNWxmJtbI3Oid/7ubVPBfv
 KkPlsyut4A0yXBSxhqpLnaDpDVfMuUFbdMK+aYLABZMQaj6SJOf8bsHrBL6/j05T
 A0ZJkwPrV+ATbCXLUCAQ8q9rza292OFdLq5/iOQQa8mXhR+egd+NP1GLDEze/kx7
 5gNQJLnfS5GUBJMSIzLIC5Nn+WPzdmK5tMT/NLhzRbtqmWoAfQcW/kcEAUlNbGJP
 AAMFCADe1t3CP+Utgy0QAmqkipgKwvs32CsRgye2ocxtrN8GRaunFSutyESBNCHP
 VH/jh2rTZ6KjVvgBcruaT8B83YtYgOnFpe+4FZr7iwlSVL1CcEwWRDD+oujebAUL
 MaLTcToWbggvbUbOtu+VNKooDYFbFoZvUs9I/49RRdcLfC7dxOfl0+51WTUTB4g+
 d/rxtExYkvh19QEWsj6lyR6icwRhtrn2S+0oZ0JQ/mjCoqdrGNiiGPXzKrUnpSK1
 b1hrtZ3E5BoWJuXu4Y4hHHzoxGW3ggVeTp/+X2K0DfKu0itGJML98oe1hXbbDaht
 O+s3+Nrro2j0Hx3JiQB1wB9merWsiEkEGBECAAkFAkkh8ugCGwwACgkQ7z+0tc8k
 ToElPACgjLamE6WKd9zLyyoyZcV2H55qlZAAnitC7OHmghbHiw+LuQZ5Je7M6sik
 =KODn
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.98. Michael L. Hostbaek <mich@FreeBSD.org>

 pub  1024D/0F55F6BE 2001-08-07 Michael L. Hostbaek <mich@freebsdcluster.org>
      Key fingerprint = 4D62 9396 B19F 38D3 5C99  1663 7B0A 5212 0F55 F6BE
 uid                            Michael L. Hostbaek <mich@freebsdcluster.dk>
 uid                            Michael L. Hostbaek <mich@icommerce-france.com>
 uid                            Micahel L. Hostbaek <mich@freebsd.dk>
 uid                            Michael L. Hostbaek <mich@the-lab.org>
 uid                            Michael L. Hostbaek <mich@freebsd.org>
 sub  1024g/8BE4E30F 2001-08-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 nQO5zgCfXsb8wtA8I0ngWwOQxrnRRE7+Smw=
 =j3Mm
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.99. Li-Wen Hsu <lwhsu@FreeBSD.org>

 pub   1024D/2897B228 2005-01-16
       Key fingerprint = B6F7 170A 6DC6 5D1A BD4B  D86A 416B 0E39 2897 B228
 uid                  Li-wen Hsu <lwhsu@lwhsu.org>
 uid                  Li-wen Hsu <lwhsu@lwhsu.ckefgisc.org>
 uid                  Li-wen Hsu <lwhsu@lwhsu.csie.net>
 uid                  Li-wen Hsu <lwhsu@ckefgisc.org>
 uid                  Li-wen Hsu <lwhsu@csie.nctu.edu.tw>
 uid                  Li-wen Hsu <lwhsu@ccca.nctu.edu.tw>
 uid                  Li-wen Hsu <lwhsu@iis.sinica.edu.tw>
 uid                  Li-wen Hsu <lwhsu@cs.nctu.edu.tw>
 uid                  Li-Wen Hsu <lwhsu@FreeBSD.org>
 sub   2048g/16F82238 2005-01-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 MTZHdxZQQYQ=
 =uV7d
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.100. Howard F. Hu <foxfair@FreeBSD.org>

 pub  1024D/4E9BCA59 2003-09-01 Foxfair Hu <foxfair@FreeBSD.org>
      Key fingerprint = 280C A846 CA1B CAC9 DDCF  F4CB D553 4BD5 4E9B CA59
 uid                            Foxfair Hu <foxfair@drago.fomokka.net>
 uid                            Howard Hu <howardhu@yahoo-inc.com>
 sub  1024g/3356D8C1 2003-09-01

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD9TDBwRBACs0PcLGuginQVidy1QScHuKS9G7gd8smYI2FcSsk/AkBhqIkWv
 hieu+iXlpxyZYCDDPKPhieDLkTHc9hYOGG7oTJhBMXUrUqBIk+sqeeUAl/eh0grX
 wUU2khj8EkYC1f6p9AKu25zoyXHxjnKulMhrZRIItg7jVJLaFQn2A9KCkwCgyVeF
 jCegTvZWikBuoXmDI/K3OuUD/19Za3DHV+H0dmfAG7JdVwTW7mJ3nCWJFvlpTSSU
 9Di4VCVj8kUGmo/kRgpZ6gwlCaPmwh/wWiT/vHVQqdd+EH/k/ITs+zWrPOnWCxLY
 zV0BEKtW4kdaP5H9ttNh3Wj1GRpyxh/FrMP7zJfdgze2WoRY57j+H9Kuw2s/42RU
 zYDAA/9wIriNXAj6pFB+J2sCqYXIMNDNDQh6lYFNFgTS/WPYJoA8PWY62oFc0V6n
 ES8GOXjyEya428vedVy/G9kj7cB/IiTTy8Hj7JjhUk/rSIPXMMtNyvM6vQ++f1IV
 1qSzR9sijpmpk/M2RusUQwBP131PnCzSCmAZB8gvcNSlbA9gnrQmRm94ZmFpciBI
 dSA8Zm94ZmFpckBkcmFnby5mb21va2thLm5ldD6IXgQTEQIAHgIbAwYLCQgHAwID
 FQIDAxYCAQIeAQIXgAUCQh1SIQAKCRDVU0vVTpvKWcmhAJ996hkp7RKzCsO1R4wh
 81QBqxZ87QCdH2JXwcclPFAF/XKpS5kbQbKdW8a0IEZveGZhaXIgSHUgPGZveGZh
 aXJARnJlZUJTRC5vcmc+iGEEExECACECGwMGCwkIBwMCAxUCAwMWAgECHgECF4AF
 AkIdUuwCGQEACgkQ1VNL1U6bylmL+gCgle9BEVLP/FKDTEsz6pYH/hdVMzgAn2kg
 KyplWAdJKjQ4AHlKOzi1DKj0tCJIb3dhcmQgSHUgPGhvd2FyZGh1QHlhaG9vLWlu
 Yy5jb20+iF4EExECAB4CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkIdUiUACgkQ
 1VNL1U6bylmacACglEvdvs5wMSB3EEP4qp46uKdXlt8Anivwqzf9dhjw07omH35k
 Ll7D5wGouQENBD9TDB8QBAD+sEewy1REDPQWycqdZVWzxmiS1X+TzSAgfcc7/QKv
 AZEsGADvhHcvaACTBuYRVr8DyzUxFUxeNByWSkLe7N5Hmaqauw681zsI+2osfXbW
 Jkp3JUybeFSIN5pacLNP5+DEAOzzphCF8ALv9H/MB8J9dRhZwDkY7SKt/cSNh4Cz
 xwADBQP/aD4exhzoF1iXR4879xEAAsRy3CCaoiPNeE4Aj9mWmjqEMzWYOjDeZ2zF
 W8Jrn2i+tOVGFpg2FKwtuqU8JRs/lqbedYUlM3UQl2pqGSV2tAziuLKKkzPnKWo6
 79hIhrjQCEPk1MqipoL6l8qZb8vbBpoCee5NF772jR85ai0ZdGmISQQYEQIACQIb
 DAUCP3rhagAKCRDVU0vVTpvKWU/OAKCE4tEk79yRFtmSNNa+ddafxcuyagCeI9MA
 byQOCAi708pPSIquH3oiM8o=
 =P50z
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.101. Chin-San Huang <chinsan@FreeBSD.org>

 pub   1024D/350EECFA 2006-10-04
       Key fingerprint = 1C4D 0C9E 0E68 DB74 0688  CE43 D2A5 3F82 350E ECFA
 uid                  Chin-San Huang (lab) <chinsan@chinsan2.twbbs.org>
 uid                  Chin-San Huang (FreeBSD committer) <chinsan@FreeBSD.org>
 uid                  Chin-San Huang (Gmail) <chinsan.tw@gmail.com>
 sub   2048g/35F75A30 2006-10-04

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEUjcNoRBACNcrOsDaRrFQMnMjnNViPfgBakMnwy28P/tfZvg+vx/5iRt73p
 5RrBE3dJZyAIOg+3st7sgtVuqeymh8JmoRlVFqLKEpCM1NNqq6TNHhlLBAuIYtTL
 hqN2knPM1m/IZp1Y4a5Z1OVnM6/fqItkxql4SX+GJ5815Lvh+1lokr8eMwCg9w2Q
 HgsgytJkYiFGJpkw1YOfwFUD/2oALyshDDCQIshX2xHPk+zLTMQva7uqDy8AUJLO
 o0DfaofDhkGjZnLpuFrc16eyfaYZw+mO149WTMpWrzCi+SmCXje6MSywINHneql+
 X6OzJCazYCGUfkSbwtAH89gIRKJiQKQfi4xhDrn8Iu+x3YtOKKxnrEVGX2S8fKka
 6YJ9A/99q0NX+543o6/kjfOz6Q44xzoyalBXT36THsFm239AaOejufu+HeyTZs02
 rvrF7IGgga1eUeQwx9gvRNFX65CkUc3AOTVfK2Tn36QJcGfm6r3ZYFWKjAMJ3haf
 aElE7Bs2zGergI0KNOid8rjC6osA3NVYSGI4mKIuQcBoxUNf6bQ4Q2hpbi1TYW4g
 SHVhbmcgKEZyZWVCU0QgY29tbWl0dGVyKSA8Y2hpbnNhbkBGcmVlQlNELm9yZz6I
 YAQTEQIAIAUCRSNw2gIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJENKlP4I1
 Duz6zsMAn1oP0sY1yRMo8jr7iCCdGtw2FuISAJ9crrnri2tcPS3281HX/4xk66dq
 c7QtQ2hpbi1TYW4gSHVhbmcgKEdtYWlsKSA8Y2hpbnNhbi50d0BnbWFpbC5jb20+
 iGAEExECACAFAkUjdFgCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDSpT+C
 NQ7s+pzxAJ98bMcpWM9Vd/YvB2tx2tK3zH89GQCgqOGeoJQvB+MWFM1oVbP5jmJS
 wDu0MUNoaW4tU2FuIEh1YW5nIChsYWIpIDxjaGluc2FuQGNoaW5zYW4yLnR3YmJz
 Lm9yZz6IYAQTEQIAIAUCRSN1FwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJ
 ENKlP4I1Duz6QX0AnRiAfY8Ngh14cBzYH193/LSIuebEAJ9wY9Gz9WQbwb7QlJEX
 cOmrejGiTbkCDQRFI3FNEAgAsPAXITBR7gx+9AyYwzvtIUjzo+viSfVHusyZccu8
 82qzPKYF3J1QewFczrL6GbPCNqw2c/IZ0Sn8leGgVw5cwP+eUNtcbuQIa8Hpgl0Y
 Ns5WZlr94NXTdU8+mO8WXugzsumUnScnKFhrzEQQKYbbAIavBAzVAoj8Bu2UDaCB
 fCc4S6OwHgUTuLHDRA0b8YXe4Zc/VbblSIZFosga3vishPOCuj0YWjLjdkXHFZ+Y
 We4oDxnMT/yPBcp1/7wqEhTid1dgJvu9R2N9IFSxHTxoHiEsEFa9z619/imVPXGF
 rmcoJb5vG/NSH6cMHr5KP60H4ze0pwMKJ3had+YJSIJGBwADBQgAm9eGbCZ3RUin
 Kh/AJSsVfzW0snA4V1sv3ovSOekROs9YoUkalx8Ywt4fZkGHFWvYXLVb1KnmW3+O
 juhfrjsgmaizQhSMHT47C21XJSvAWuXXZrF6PaIiPAo6q56wjfSS62ycj7z1UlSS
 SDEusPgFG3LfYBuM2wjRYYXZ2plAcxhGt2oM5Mf4Tjom1Y1GHp4m9VOIa+0D0HZI
 +oNYlOteR6I2tWg90bXJcAd6VlSwYi25b/KRkzYyHlU84o11UJnBnG8HgaN6E92w
 QAQTtIUd6PxLWYBG0ni4vtD2ZwyGKAH26QJIUC4bLYdfoZ7V7/MbwI4JEliGjZCl
 INqt4mrYsohJBBgRAgAJBQJFI3FNAhsMAAoJENKlP4I1Duz6TJkAoNRkeWHFV+q1
 WHzk4XJLFtL8cNyBAJ4u3Mfd7xo3Bx8pAs1vSTWooWb7Pg==
 =IROz
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.102. Jordan K. Hubbard <jkh@FreeBSD.org>

 pub  1024R/8E542D5D 1996-04-04 Jordan K. Hubbard <jkh@FreeBSD.org>
      Key fingerprint = 3C F2 27 7E 4A 6C 09 0A  4B C9 47 CD 4F 4D 0B 20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzFjX0IAAAEEAML+nm9/kDNPp43ZUZGjYkm2QLtoC1Wxr8JulZXqk7qmhYcQ
 jvX+fyoriJ6/7ZlnLe2oG5j9tZOnRLPvMaz0g9CpW6Dz3nkXrNPkmOFV9B8D94Mk
 tyFeRJFqnkCuqBj6D+H8FtBwEeeTecSh2tJ0bZZTXnAMhxeOdvUVW/uOVC1dAAUR
 tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPog/AwUQND7kZgis
 sbaj1yqUEQIhvACeJ58983s/0jjThuj6WeTP6hLZNHgAn0o2KINvhw+Oc8uQk5m2
 aTiVgVQxiQEVAwUQNcJNdAyPjrKngh89AQHA7wgAg3QnT0BcF/zp0VRMUZwAysRC
 o4Xkgv4oaisCPO5jERGEp8NlXuMD6wJCrGRZ9xVwTbSRXJVirNkiSKj1rnNc/pPA
 DbjsmQ+3nhLU+YwNgc2VEhiVpeU2iOL7ircc/YN8epdFPbzn2timb98b+/qlaSiz
 m+g8pxnY4USn1b4CnzyirD7mvHhV61k0mrUSmaKzgg2Ppeo2qPzn4w44hgT5/jjm
 iEMzoH8zFrN3pwcUYYhH5rNWNnqUIMwuPOEHn4Wp+sMti4yOqQxNHnP0Mv6mxS8+
 UKRhtDXU0Ra0SaIhaNRw0k0YLEbO/lteTRc+7cAPBs+QUTa6xbVxIzsBAWLC7IkA
 lQMFEDF8ldoff6kIA1j8vQEBDH4D/0Zm0oNlpXrAE1EOFrmp43HURHbij8n0Gra1
 w9sbfo4PV+/HU8ojTdWLy6r0+prH7NODCkgtIQNpqLuqM8PF2pPtUJj9HwTmSqfa
 T/LMztfPA6PQcsyT7xxdXl0+4xTDl1avGSJfYsI8XCAy85cTs+PQwuyzugE/iykJ
 O1Bnj/paiD8DBRA0FhC0XatM0mFMec0RAgaSAJ4kHkYXQO/74W5m/7ZvQa3CPR8E
 /QCgpHafK/S6PWQsSOChmVjwrZDVP8qJAJUDBRAxe+Q9a1pnjYGyp3kBAV7XA/oC
 SL/Cc2USpQ2ckwkGpyvIkYBPszIcabSNJAzm2hsU9Qa6WOPxD8olDddBuJNiW/gz
 nPC4NsQ0N8Zr4IqRX/TTDVf04WhLmd8AN9SOrVv2q0BKgU6fLuk979tJutrewH6P
 R2qBOjAaR0FJNk4pcYAHeT+e7KaKy96YFvWKIyDvc4hGBBARAgAGBQI1f/BdAAoJ
 ELwCvAMsr1lwqUEAnjOz1VWwJeI2QZMNEHO8RLURWHSYAKDqG+S3NzCeiKM3RRzc
 FubwdsfYLIhGBBARAgAGBQI5ZAxAAAoJEMN1Z4b84RmYUt4AoOtidEj2yIZubvvT
 kB+moQ1+ZscyAJ9dhz4GLNev7zNNfdAKi8JqoqfMlokAlQMFEDF75Qb1FVv7jlQt
 XQEBdn0D/0X2Auka6RU2R46NqrFB0kZNL5rGH8BuTRz+cqEATLGkCXknJDeJ9iTo
 EeE++VOL0utmhcYDyyT95Th5FNlXO8YQLgb7Gxq+UT/HOS7zznlBMs+mQK6dSlB6
 7XDNoitRQTpmOHTmKYVsljJA4GBMWm6pawKuxSmX7aavwgYjEbmsiEYEEBECAAYF
 AjmtSQAACgkQLKRaTx+AVKjiTQCg9FfHlNeMts2GcXWplPQya7GEQtMAn0nrzupn
 fRNx6+Gi0Km+WSlUQkMF
 =ZyVN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.103. Konrad Jankowski <versus@FreeBSD.org>

 pub   1024D/A01C218A 2008-10-28
       Key fingerprint = A805 21DC 859F E941 D2EA  9986 2264 8E5D A01C 218A
 uid                  Konrad Jankowski <versus@freebsd.org>
 sub   2048g/56AE1959 2008-10-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEkHYgARBACdbmFESh/3csPP37dJBDTkAfWcUck6myVTVYu3dFgwDPA0iCs9
 HolmEV9qZA6m/ljZYG6b9ycHe2M7Xq3Mopdvw7Sa3ab7b2PRLu1WbKUIS/HlOXNH
 p3Dg3/Zhf1raBKMg4F0x0pbQm9+friN44SlnLlQK5M2224X786/VTlVv/wCg3YFE
 CufrZUsIPZndUVGh+/seBbMD/2fhNQhreWxF9QFCMohC/pGSfg1sddpWMqh6R0bF
 aSXfJwYivDLcTp4JYPpZilScBFgSxsfLKboRBElj+k7cj2e8nK4xzfoX+xsGrRDm
 t8uPqISnw8bvRGS3bZNuTt3NqHpXeiL1aEEEEMk7tKuGwlwf/KmA4BYq+eWDM7Hz
 EWPLA/kBJn5jAO99l/h1yGzYiWwy4a5iQd2sZg+M60bC3s9xP8ZvCPhm4qGuis9/
 dxzKxz7hPQ2CamU9DlpnoCeZQ8mttyqnipsnMVniI3A79xSjCP2dNkVWvimc5uWw
 e9ME6DAa2ldmN7fkj/b6ahvCiBZLVc2jv/fcmHcP8IzvhHLhT7QlS29ucmFkIEph
 bmtvd3NraSA8dmVyc3VzQGZyZWVic2Qub3JnPohgBBMRAgAgBQJJB2IAAhsDBgsJ
 CAcDAgQVAggDBBYCAwECHgECF4AACgkQImSOXaAcIYr8cwCgzjJgksYSmXwES8lI
 vri3HicZZUIAoKfdyp1VxyUvbm39iwIMsUBpMCTduQINBEkHYgAQCACT3lbgvRwF
 lzEkL7JnyMaHkw5Lh77Sl2cRu1+fouQeGxRw5CZFwcIUkZWJDgBLxFHJiAtjw5xz
 UnVDm1RWBLXdNn4/KvWOUx2ElPweL58q+j/45qfwISg7JyJckRAvACQ2bLT+2jlc
 iDInZiV9OAnwT3OhBb0a6dvMsbDcIk25QlcS/axVdCYp/ELN4jlgL3Vk0NoQfalo
 rtj/vALu5soRJgq5keyroDlCc2fDp3iISCBngx1xoFBaYaJHo7XSbXnCes3NhAEd
 DkY0QCBWQGyqW/ULGrIdgyGtszpxSlecPmaRlxpmTjAQT0mX+rGE8vBkgH/pDgqt
 icql1p3f9ofnAAMFB/9NCp6oARpDfPTG6upM+oUPwginu23w2ux7uecZuouL640w
 Yj4vssTGDhuP3QRQsDrlhXdHdkUvSuguXpG8EGf4GjflV/AvvXJDmOO3LB4TCQmw
 I+Umsc/4BCP6r/YowSyYmQENJ8VIf+Ps+WfoeGS6UzbEpZbAFfBMpNSQbzwDSa+6
 kh+eAHOZiPUjtoao+eyrvqEK+rpydN3G2D3UOJVsbYbG/3R0zD1sBnNBaqAub4zr
 vMBB0Fuml/pBzhFl+2VrS420Bfy6d83uPriNmlXlTyrX/kSxYVMkVm+lfqrjhSO9
 dj2t5lqpUSCRLO3Wbs/97zIi6Vn2fphH5iA1qI/fiEkEGBECAAkFAkkHYgACGwwA
 CgkQImSOXaAcIYoobwCeK8Jy/4hOkaFBHbi/WJ/SHaJGyNkAn35fpqrdHuOO2L6C
 Tuizqar0AwZZ
 =xCbj
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.104. Weongyo Jeong <weongyo@FreeBSD.org>

 pub   1024D/22354D7A 2007-12-28
       Key fingerprint = 138E 7115 A86F AA40 B509  5883 B387 DCE9 2235 4D7A
 uid                  Weongyo Jeong <weongyo.jeong@gmail.com>
 uid                  Weongyo Jeong <weongyo@freebsd.org>
 sub   2048g/9AE6DAEE 2007-12-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEd0e+0RBACwYdXNeIplh+WEQ9ywP1wJyTpGe2rVvkOLlJNpTJpVX7JT508G
 KuYI2B+Rn/V+1+AicL9tsUAnWX/tDma3bYw0Ls68LvD/571k2GYG3CMTy5FSrrtp
 3v3N75jHDsfulUzHL3LHsa/CA5qzuL819KIaUfTKY0A107vcI3m0v4emEwCg2BaW
 OyiO9pic/WnPi4tuFjLpeEcEAIzLSKzAiZZ7U8ESKAtonwYqdu0BIRFpp0kedXqD
 M9cTts8VjqjdMOm55xvI7h9EGjH+crFZBlZD0NWXD00NrrQdHifulSrv5l3Wtgn8
 xilqUhiYUcPQu2DHSuVlShvNZO6/rYA8R45axAfQv8rFo8NV0oElH+bvGq1mwRKY
 ciJ0A/9lN68t6G3LKmaSfWz13IUJT0E2qy27NnSb4RuKE2TuqyIMFzXh5+jjnp3U
 zRDX6KrYLju5Ire9GGJEMsGs28B5r3HXUPADqVIS8i6dW/npZlyizU7MfoRDFiRe
 btMpnYx7d4qnpKMpEm1J15JF84YrNGvkE55z7+g5zG0ua9KZgLQjV2Vvbmd5byBK
 ZW9uZyA8d2Vvbmd5b0BmcmVlYnNkLm9yZz6IYAQTEQIAIAUCR3R77QIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJELOH3OkiNU16VAEAoKnaR60kp0PF+O70GH7y
 v4k26FJqAKCycX2eM5PzjVzbAKHq0yMRj7tkbbQnV2Vvbmd5byBKZW9uZyA8d2Vv
 bmd5by5qZW9uZ0BnbWFpbC5jb20+iGAEExECACAFAkd0fKQCGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRCzh9zpIjVNenkDAKCGZSCJTG2dSCbEH3kLTpYdAnfM
 gwCfay7fmNNMrN31IhC2jddWylvSDlW5Ag0ER3R8ARAIALZoci+sXDkhF0ahtePy
 ZszOeKUg8MHIac5RID5CfjGsTsbfAv7eM7TBocAJOKBxhD/suqsdomMBMwoMKYdv
 R4tKCosDopYGwNFNtryXrOQctNKxIf31kc8UnqGfgRAwjABorBRJCQdBZEBm+93k
 lDl0azEWPFuwzZ+dA12dw0jF1/n7TAIkvaA7joFfNvZ8a2WAfJvoal0/nUqmJCmB
 ntaWEdZP5rOEUvVBn117W8D5B8YHp//TM7T3eT4M4Lp7wUQIiwT7fGgRWCIfIrGd
 GZSEykjB/keyIip2Hh//0Ft0Ot8D+4wYz9YhH/RRmfBDMBhW898B1rEewhc0wmjH
 txMAAwUH/iB1/HLYV9ckHT6i/UDl8lEsw5CMxftnEI6wY2i9MWqTSTiuoNE+PQAA
 kicGwxrxxtvLccdFE4WOOQsh9oyzbOeWWBrtxzloRBzaxC9dx+tQaOzzJAUjaEaV
 wneSg2x62naLiztaQ9U66g81BwSyT8NF7uYjsCyvPsrHwDELNcPdDXQ2q0GKj0I5
 tSgqMOPwohYRRS3hYfoPnYZOshdwYErtMCola0hZn7LXJopRByQyT/x2N6WW0zGY
 YxJemF80JqLrf9RtZVSsTeqT7Sd0+kcgPq3wcoqDXKTEQ+K4yjcE7c3hqhowQU72
 2S6S4JjYQhKvdJykZRuvynQGeuT8H8KISQQYEQIACQUCR3R8AQIbDAAKCRCzh9zp
 IjVNepJjAKCIgdGxVdwuToMZ7z1n2mJEulHr8wCfdimx3iKjNLlAE154wBx3v9Rr
 trI=
 =5yOU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.105. Michael Johnson <ahze@FreeBSD.org>

 pub  1024D/3C046FD6 2004-10-29 Michael Johnson (FreeBSD key) <ahze@FreeBSD.org>
      Key fingerprint = 363C 6ABA ED24 C23B 5F0C  3AB4 9F8B AA7D 3C04 6FD6
 uid                            Michael Johnson (pgp key) <ahze@ahze.net>
 sub  2048g/FA334AE3 2004-10-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEGCy1ARBAD/K2SbL6XiTJ3Rn/weuN/L78ROUltIoRGOkZE4971fLcAbtIsf
 nANWDrpDqbhLgEbZLeCn/EIWOPqrYyKpCGu/IoZ6kx7UPtUH4eooJBarrrQPJVV1
 mfW5ktDry3AoiaUH+jL47AxFCb/bh7Rc11vrhLKdnc74wI+nu2cyk2llkwCgwX78
 nlN2qTrbXxOEAPpJjMontfsEAL+4sS9DOay7NkZq2B2p9AZnSsXQg6/r8Epqznqj
 yPQBm489UcIZy2FiBwaUR7w0fMh5xNX0FE3xFiTd4VUTgUJUSqpYtdfI7IHvJXml
 P/VK14CtgRY2B24wpDPMae32hGBFUwSE9Frb5NiKlxMC4+fR71wZS7MtxTnwJ1v/
 MoVaA/9FyoKCAw3Dqnf5W89dj5W5x35jLKSLobEhhUB2S2LPiwBa5A79euMvgtk0
 gKeh6IslXKOmCO148ws7HSaErBIBVBDpfOsqcQJTcd5lvEbslp+z2oCKeQK3pgQ5
 aEHp8IJ3YgQEHz+YityOF0jCMGNJTFAz18U4RzVxSe55iyT/17QpTWljaGFlbCBK
 b2huc29uIChwZ3Aga2V5KSA8YWh6ZUBhaHplLm5ldD6IWwQTEQIAGwUCQYLLUAYL
 CQgHAwIDFQIDAxYCAQIeAQIXgAAKCRCfi6p9PARv1oW2AKC0xjNgjhL1EHPtFOXH
 kGz24lF4QQCfQxkoJBq0CkLQrYvdA3MLP+IJ6ba0ME1pY2hhZWwgSm9obnNvbiAo
 RnJlZUJTRCBrZXkpIDxhaHplQEZyZWVCU0Qub3JnPoheBBMRAgAeBQJBgtexAhsD
 BgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEJ+Lqn08BG/W4JwAoJaU6MbisTlg4EMF
 jfE+wNptwO4kAJ46A0W6SiLWbK09gu7YlgfLgdYAmbkCDQRBgstcEAgAvD4PzCsh
 muLtNkPVKSlk2eZbqlIuyapbuIo6rHk8fo7fkfqVOOrnGOrAT5/sflmnG3H0BLvF
 4pkk7tyRtg3hz8qGACCA4SRf48TxRERpIUoW5R2cVBsMBTnpspRaFu8OdBL0dwXs
 LmH797gxDXCGXzSU5xKBSQN4LfoEuLr1qQmPbuPW+Rdi3hrdk1eGsJ03rU5RExzQ
 ck+J7a5VWsyghNCSj1Rzuw+0OVGBijJW51FD9QU+Eqb3seL7E19mWC3FMU34RFwn
 5lbxolY43iPV0jc0MFcV4POHUSZ8ot9xbQpcAClTyXZh21QEIFzYjJe9ZeVWKOqH
 UZS1naB4k98G6wADBggAnRlPolzcjJvqvv5Hfv7oDeDARNxqeKTj+fPXIHR0Gh34
 8HMfmxsFzS6nsrrVc43Q6Iaso5hbdP4UvE0/HzhPALzCTeZGpZF54pffg9Pqb84U
 p+D59I+b88RDBvvfwF0OBg6du08Rdkv9JfG3R+QZembK+IhUa5yxhtfbQmI6Y01r
 phtx4FAKZw4Xp2eb7IBoZWktfcOE99UJcl9hUmBHJXRznQoCHz5OwAKA6a/0b7j7
 B3bPxj+tLlQksdmRbEJKVBa3LQm09PkxfZj8iahvQbp23p5VSJDKzNDrgmsqaCpV
 CFNgMvYLvtxC2xA0uNtaRpdZRLS/11NUj3oJIULv8IhGBBgRAgAGBQJBgstcAAoJ
 EJ+Lqn08BG/WFK0AnjdWWBxG7slwI8u1W+7uRsuh6NXMAJ9r+6Br6mlEtsoWrMel
 IlhG1mVq6A==
 =I7wA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.106. Trevor Johnson <trevor@FreeBSD.org>

 pub  1024D/3A3EA137 2000-04-20 Trevor Johnson <trevor@jpj.net>
      Key fingerprint = 7ED1 5A92 76C1 FFCB E5E3  A998 F037 5A0B 3A3E A137
 sub  1024g/46C24F1E 2000-04-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDj+agARBAC1AfvgGQEVdLwS0dirwaN+pDDWWiaSWBNRNo4T4KKG2vyhhnUi
 f2PcjPx8rYLvbokJFltoTWos3lS8hD8PZGBDlImOPzffdm/GYEmr1mE8fQvzjdKD
 iOTqQi5IYYhLZIMmUpBTK7XN2zrM8VrkgCpb5TYtBrQUPheWs/SZ31EvLwCglUPA
 T54Joolfvk0Y8I6dSGYctpUD/3teZiYwem99CE3b1tsqavQ1MUfjwSPZQq8wjVe8
 GZUtwaeExugAxNjXIJeXiaCij7S6JSTS0ytyxZ5/O1QFmBhuD/7zjNFD8yB8nu8x
 slma7mVhMuhqkwU06hTkp6MNNJ7kRItoVETtLqR5mW+0UUSZyePQFIH9U7TKPG3W
 vYMIA/9btsMQD/7QA9p/m5OP4sfdVdNCZ32tJ534bMjDYyf/P8k7QzvDWU8f7lbk
 3vX5pSmHplws0PwSZITmRarMdEH9ucP+24m06MQ7YmDYyLlUCestT2gAxnB5/X1h
 fJnmdCLi/Vt19WrVM79ebddbCqCaoz0xv+1qOQmPue/vKXIH87QfVHJldm9yIEpv
 aG5zb24gPHRyZXZvckBqcGoubmV0PohWBBMRAgAWBQI4/moABAsKBAMDFQMCAxYC
 AQIXgAAKCRDwN1oLOj6hN4YuAJwOTOURcLpgAx4HT43jNxDYCsT7DACdFdGCwsi4
 w5ZiCeoizmoBMFvYTa65AQ0EOP5qIhAEAMAerdyvcs7DOxpsli24gkKJxCwHSq9U
 23k283XpZHOp/0eS6WEJMHMyQ7BRrx3X6mkSgBEnHdO6MetBQjOHdjSb8ycotrJa
 H9eMkZ/Iky6dbiWpPLI4ytS4Q8Z4oEGjUTm7pJiE/pgmaCX/kv0WMs/35En+42sY
 VoVU9bDI+X+3AAMFA/435RbM6ywO/kL8D3lhwINGEIqmxWpJDlXPPJf2pLiWZZVK
 MLGkHOTe2kUdd+E6WcoRZdGblOKxLACrlKpJa91aw1ftQT6rt0k8GDCGLT/33FWx
 2IRSf5sHmz8IOm6L8TcZU31hdWqpDLmiIj+IjUCx8+eAUjZcVRoj6BYnWc1Z64hG
 BBgRAgAGBQI4/moiAAoJEPA3Wgs6PqE3PKYAnikfYo//UA7/jrDuTXzqPmi/Un5f
 AKCFsfcXDbLGfWaAqe2YzeDR2Z55/A==
 =N4HT
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.107. Poul-Henning Kamp <phk@FreeBSD.org>

 pub  1024R/0358FCBD 1995-08-01 Poul-Henning Kamp <phk@FreeBSD.org>
      Key fingerprint = A3 F3 88 28 2F 9B 99 A2  49 F4 E2 FA 5A 78 8B 3E

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =GwRf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.108. Coleman Kane <cokane@FreeBSD.org>

 pub   1024D/C5DAB797 2007-07-22
       Key fingerprint = FC09 F326 4318 E714 DE45  6CB0 70C4 B141 C5DA B797
 uid                  Coleman Kane (Personal PGP Key) <cokane@cokane.org>
 uid                  Coleman Kane (Personal PGP Key) <cokane@FreeBSD.org>
 sub   2048g/5C680129 2007-07-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEaj6Z4RBADnHGSN+HpgYx4kwj2c//kuW91OOYhYlstDCeVTlNc/7YpbgF3T
 KQKBWHu7uqygI7IeboCuCltP7D+PcXTVdBlh6X4aiwV0XSBCAF4ZngCb56OsSBYd
 MPjygHV3TH2TKe4PGqH+MZ3umogB3TZVMLpz4S0WyxXjUxLm5tYn7rOCCwCghTRd
 00JiGg0u59cT1/GiD2KYE40D/03DKCm4IvMRFsxc3IGhXQc3rQJVhBBAxnnzBA+s
 R3i0xKzGqBslEUG+AxUMFjohjQgTWjFRa1PTFgHih95Z1lR0/oO5teyDfxjeAPA5
 2hUoB3PF5NUFeMWXPCoSyb48uswJ5CCeX/IA5lVO891+jQh1LHIFQDa/rB6zeYzQ
 HaSXBAC3RheXdRaEFGt2JkNqAZxEQVtiWe5tebdm2oh1RaIfMQ+U1p4X9EBQQjGq
 6JeeUsO56HXECEgCyk46fgo2xNwIXqYi42sQlIGn8JDBwOLyjD4iJpz2uxC2NO9J
 GKUOMdsdydUpfdkF7tWu1rGXXmzGcUUkHXgKsF3jf739FyGAubQzQ29sZW1hbiBL
 YW5lIChQZXJzb25hbCBQR1AgS2V5KSA8Y29rYW5lQGNva2FuZS5vcmc+iGMEExEC
 ACMCGyMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAUCRqPskwIZAQAKCRBwxLFBxdq3
 l7aXAJ9829PUx9ST75k3L6/nfkejftuUFwCeN5vqGr5uZlkCQr+Bx45HbcyFQp+0
 NENvbGVtYW4gS2FuZSAoUGVyc29uYWwgUEdQIEtleSkgPGNva2FuZUBGcmVlQlNE
 Lm9yZz6IYAQTEQIAIAUCRqPstQIbIwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJ
 EHDEsUHF2reXPTgAn2uPDHMfAoaLp+Eg2FfIuMlVNgfEAJ9xBcFz8kLTrAbKnthL
 S0yBqAUrv7kCDQRGo+meEAgA22OriKy6l+mvGIqbwk67Yz2zcVtHx8Jq8uuyt4Ue
 JfuK9H8rDOz783oF3++ywf07xqtl70rH+KHSNfVyXUetVXfBUZfo5bTwxokQWE54
 eJukJyZeDYXpaJ8ro083lkHsqE9vtTSwJfU4rqRpu67nC80WSkke0t/35sHKqwJI
 WXlHniGD3dJt+ZTy6hxzcx3WjlNDNUEq6iSl28XNzWdvpKIrah/ksO5O2akmaZcB
 SXtHthWdX58hOCHBhS1QQSKvThL3VlFtsi7EhW4/rNekDomypLxHGErprjMGV3GF
 509kI2vn7NoA1G4sxrESZK9sNIC+KmdWO0MQ4NYhB0NAnwADBQf/XFiDa83fYJUN
 LBqGGgeOPE+pyBS6gVrw6Kz62nFFgfW9hHtYgItzS4XrDHCc8TCSG4zOBqBY4Qvh
 HgJ1Fa8rppbMUMI32egtfY0/cu8NVWtHlYp9aQp5tM/0zPu5RaRpQxafs9e5j4gf
 fd6mY3ro3vJjZ6UczORKFBHxLDg/F6UCeOZsv8Ii72YDqzZEFdBUMJH7ArHFKndd
 ZxkN7+iGXZorHnTJj8mXSDYmvyaI+Gfn/dea9RDp9h75257cHhnbaDd4ZvlUK7JQ
 8HFb6jM0LsadfDuSSMLUYFozqeG1MVCJgn/Rv0i4FMlI0QK/6r7njvvfR6p4mLl5
 n9r0NOG11YhJBBgRAgAJBQJGo+meAhsMAAoJEHDEsUHF2reXJO0AnitUss1PV58K
 ++igcU+jU/EAsjbNAJkBlxLkkDzmxfWATLWri1+qzA5WDA==
 =L430
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.109. Josef Karthauser <joe@FreeBSD.org>

 pub  1024D/E6B15016 2000-10-19 Josef Karthauser <joe@FreeBSD.org>
      Key fingerprint = 7266 8EAF 82C2 D439 5642  AC26 5D52 1C8C E6B1 5016
 uid                            Josef Karthauser <joe@tao.org.uk>
 uid                            Josef Karthauser <joe@uk.FreeBSD.org>
 uid                            [revoked] Josef Karthauser <josef@bsdi.com>
 uid                            [revoked] Josef Karthauser <joe@pavilion.net>
 sub  2048g/1178B692 2000-10-19

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 p5J1gj4xWykgTuA=
 =U6zf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.110. Vinod Kashyap <vkashyap@FreeBSD.org>

 pub  1024R/04FCCDD3 2004-02-19 Vinod Kashyap (gnupg key) <vkashyap@freebsd.org>
      Key fingerprint = 9B83 0B55 604F E491 B7D2  759D DF92 DAA0 04FC CDD3

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mIsEQDQwdAEEANxnThVC8GNO9VXTjWFhJh7XgMLHf9jDd0B1804WUqc3c76r8y/k
 AXZ8e3kNH1rpa+VJ0rYQnurQg5BeFQny8TzU6PC9QSdqNKSCvhai6B+w3t15sKJK
 nGZ7DwyoyuShMFNMVF250KS7dEZnYy8yrtopCIWJAWzuzuQQtmUYk4B5AAYptDBW
 aW5vZCBLYXNoeWFwIChnbnVwZyBrZXkpIDx2a2FzaHlhcEBmcmVlYnNkLm9yZz6I
 tAQTAQIAHgUCQDQwdAIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRDfktqgBPzN
 031cA/9ZuwCRbYhTHWzOhQuT8dm7Bby0wEq+KzkULXd/ExgxCu/54t9M7csD378X
 /Fg2erLP2J8cYIcVXmdtIJO8AwZRw5GgmVP+h1sEY+KT8jiJNlX2hB/9qCmng3FY
 ItLBY2t7XVmTPMw8BLANE7PJ1LKT/OoUHEk0OjK53KKGNU2oUA==
 =VzLE
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.111. Kris Kennaway <kris@FreeBSD.org>

 pub  1024D/68E840A5 2000-01-14 Kris Kennaway <kris@citusc.usc.edu>
      Key fingerprint = E65D 0E7D 7E16 B212 1BD6  39EE 5ABC B405 68E8 40A5
 uid                            Kris Kennaway <kris@FreeBSD.org>
 uid                            Kris Kennaway <kris@obsecurity.org>
 sub  2048g/03A41C45 2000-01-14 [expires: 2006-01-14]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =nTL1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.112. Steven Kreuzer <skreuzer@FreeBSD.org>

 pub   1024D/E0D6F907 2009-03-16 [expires: 2011-03-16]
       Key fingerprint = 8D8F 14D6 ED9F 6BD0 7756  7A46 66BA B4B6 E0D6 F907
 uid                  Steven Kreuzer <skreuzer@freebsd.org>
 uid                  Steven Kreuzer <skreuzer@exit2shell.com>
 sub   4096g/76940A06 2009-03-16 [expires: 2011-03-16]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 97ttC8vSig==
 =cR2i
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.113. Max Khon <fjoe@FreeBSD.org>

 pub  1024D/414420F4 2003-04-29 Max Khon <fjoe@freebsd.org>
      Key fingerprint = CE1F 29CA A6BF 2F26 13E8  1B61 62AE 6B8F 4144 20F4
 uid                            Max Khon <fjoe@iclub.nsu.ru>
 sub  1024g/6585039B 2003-04-29

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD6urdgRBADQpkTC4vQZ0QvJaenfB5vMGNzpxq3shsQD5C/ExNtZ2PTrPe8A
 GAcsNUmZD2O2d0r7VSDmPWQ2zDB8bE+gak1pEmooOZ+lb9t+1UwtkzDWK5MEgbRj
 8dlNEagiWZ70jwbm+q8P09LMmjB2ez3OFpDzROjvA0/rU7FMWlo893aqxwCg+0P1
 d6tf6xfiE0Dgz0h7aoOBNhUEAIds+i+l14zzp5Dg8nVcrp8GhsDhGUERkpmnu4Ks
 iXRAbgnhv7XD1qD4EKagITMXmHQ1A6IXVqGjKuEPW3otOEhOMkfOrvI9TCcp4s7s
 6d4eHt0wgjptmWF4pV8KCjj6hAkakFuli/ZjVMNiGAb3cXVocw/Q847Df6jNI5vp
 OfPtA/9kGOoNIssPPa1Ni0k5MPAXB6jm658pmQShlHv1GCG+tbbzqawvimwcal31
 m20DwVc/ocRQFf0/2Rqx0h9GfU/QtB+uq2qk6HTEvDfzGv7SRpPwx43fscF3Sn8N
 K9VXs4Xtbrs5OYGJAMFOWg5SHd9jddTnViNtJQPGD6Bd12BB1bQcTWF4IEtob24g
 PGZqb2VAaWNsdWIubnN1LnJ1PohXBBMRAgAXBQI+rq3YBQsHCgMEAxUDAgMWAgEC
 F4AACgkQYq5rj0FEIPTqigCg2Qe8X9Qw88N7mk9llaZqs+3A+FkAn0Hy5JfEudVm
 /3rXsNKkDf95Z9cmtBtNYXggS2hvbiA8ZmpvZUBmcmVlYnNkLm9yZz6IVwQTEQIA
 FwUCPq6uzAULBwoDBAMVAwIDFgIBAheAAAoJEGKua49BRCD02zMAmgLFdtcfQwJ3
 ctRFpJf8dHyClNQZAKDzqyItbtqEsWQGgN3QsG9+dpsbmrkBDQQ+rq4AEAQAyLyK
 nyVL7VVb7oJh3n8H6CMXcBy/5OV4bATxxCJLQIP/eJkOWv8H+feYnv8Z1LpMI6CT
 qhtVpobIpejR1CA/jo0NStQ5phhejvg08K+wgLMPFEOCCI/RUdHjNGHW4CXmhy6G
 Pm1PPwBiIJGG2AvZie+7NdYjnyd7Q77lE/bFQV8ABRcD/2B36PEMQJu2HpivP/hU
 15sVnYim3phBpGeYTV4e8PLhx1TFDgxnplBkCrEB24hqIFge5zjDVvJyE6t4Zlkz
 IilsEanYbzBUkO/3qYCnwrUefxLxmzMx3tkNVK9W7Z22j3H6Dtvcxb17kMuJNHoV
 KIufCJXylZFXAp7t03T3uo2miEYEGBECAAYFAj6urgAACgkQYq5rj0FEIPSc0QCg
 3Jjbq8a/pI2C+MXDMrW1sC/PhkQAn3vNQqLa/nntV0b3V4lWRI3wk3k+
 =AcmI
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.114. Manolis Kiagias <manolis@FreeBSD.org>

 pub   1024D/6E0FB494 2006-08-22
       Key fingerprint = F820 5AAF 7112 2CDD 23D8  3BDF 67F3 311A 6E0F B494
 uid                  Manolis Kiagias <manolis@FreeBSD.org>
 uid                  Manolis Kiagias <sonicy@otenet.gr>
 uid                  Manolis Kiagias (A.K.A. sonic, sonicy, sonic2000gr) <sonic@diktia.dyndns.org>
 sub   2048g/EB94B411 2006-08-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =3/vj
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.115. Jung-uk Kim <jkim@FreeBSD.org>

 pub   1024D/BF6A9D53 2004-04-07
       Key fingerprint = F841 0339 93EF D27D 32AD  3261 9A56 B2D5 BF6A 9D53
 uid                  Jung-uk Kim <jkim@FreeBSD.org>
 uid                  Jung-uk Kim <jkim@niksun.com>
 sub   4096g/B01CA5A0 2004-04-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 E5Fbf9wkC8rs
 =HTXi
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.116. Andreas Klemm <andreas@FreeBSD.org>

 pub  1024D/6C6F6CBA 2001-01-06 Andreas Klemm <andreas.klemm@eu.didata.com>
      Key fingerprint = F028 D51A 0D42 DD67 4109  19A3 777A 3E94 6C6F 6CBA
 uid                            Andreas Klemm <andreas@klemm.gtn.com>
 uid                            Andreas Klemm <andreas@FreeBSD.org>
 uid                            Andreas Klemm <andreas@apsfilter.org>
 sub  2048g/FE23F866 2001-01-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 7A==
 =E/l3
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.117. Johann Kois <jkois@FreeBSD.org>

 pub  1024D/DD61C2D8 2004-06-27 Johann Kois <J.Kois@web.de>
      Key fingerprint = 8B70 03DB 3C45 E71D 0ED4  4825 FEB0 EBEF DD61 C2D8
 uid                            Johann Kois <jkois@freebsd.org>
 sub  1024g/568307CB 2004-06-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEDetekRBAD7mBgP351FCNnqp360OUy+ZKCr2IxUU/Tyffqyrrgiol16kTEO
 bpImo5cgZcw+y3wTSgGxwbb+UmUcJhLDO0olDNOCOYdBzzKfTyZwLzgVaC/XZ2dE
 LQa+3FnIp0btyU9vermk7GqWJqvVUTnMSjinqWS0MfgrcuEXjXTQ1b3b6wCgutKz
 BhEasg38JthFvIownezYwHcEALNJsxEnsfEMm+DQXPUvWTiScu2QR2v0BVVzfg1w
 DMaEnSjw44NF+cyyKXfqx3hYkboRw66GMvcbfl7AYh7ThfDjof5MHfBbe6aeJwd+
 pyVS9BRiXMDbwnuPm31K1zsyCr6XeQquM204Jb1fdMiFEi22A2VxQxAY4cjenvgx
 2UIFBACBHtPfsK8QyAXlNtTQqvMEQe01pXm3u90pL8DBoWsWR9vDIlnJLaMgi2jG
 xBNQp9UP9ZxS+BiAoEkUficsoPvoMkzQBSnfcDJfnyCXranBuuhsF4mzvEO8uLJw
 4NwT+7jij0udeWe3Ymd4ppWHEADhx7PLdYdq4Kczuu0XcGqHarQbSm9oYW5uIEtv
 aXMgPEouS29pc0B3ZWIuZGU+iGEEExECACECGwMGCwkIBwMCAxUCAwMWAgECHgEC
 F4AFAkGV02gCGQEACgkQ/rDr791hwtgJbwCfeBGfFaR0IIUhvfVy7GYFQUjHuYQA
 nR0Vl/9xS9SbGpk9nqDCHooXgrCPtB9Kb2hhbm4gS29pcyA8amtvaXNAZnJlZWJz
 ZC5vcmc+iF4EExECAB4FAkGTw+cCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ
 /rDr791hwtg4zgCeNkjhClKqeDjTWvoSuh805WDuXnUAoKFid8813Hg7HATB4UwD
 3KvmHBIFuQENBEDetekQBADtrxEvnshp47wNGP33Vwas4RtDVp40lC51yVFj9Ior
 zXhq9SD20gz8qPCwG3a4Srhbh3rgjPvzzqcjSE/axk5+LwJ2KHySlpfwu4wTtddf
 o6JzlJYWtQE+bcp65vnd6L5DGJsm1KmRTOZOL6wWxTXft4lgxfg1MEbzOKcL5YnU
 BwADBQP9FCPfDZYwAsZya5h3aAd9yg6dvDsObs1D1MMIiygr54/cmGUiPcI6zaga
 hTfDiDGanlBk1idFVKh0A6ZEza55NA45lJ02W9amWvrjG+PB8wTX4IWRAmDN4ql4
 QuahtHsciUVzw4BtHhPtM1+DpT+C6aPwclpmxX2Az8tHDjHKdq+ISQQYEQIACQUC
 QN616QIbDAAKCRD+sOvv3WHC2ICsAJ0fvZ0rq70bwTIWfgYq3N3fSZfR6wCfdrgZ
 /8nwcdMpTA2LAo1YbndxFW8=
 =VCND
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.118. Sergei Kolobov <sergei@FreeBSD.org>

 pub  1024D/3BA53401 2003-10-10 Sergei Kolobov <sergei@FreeBSD.org>
      Key fingerprint = A2F4 5F34 0586 CC9C 493A  347C 14EC 6E69 3BA5 3401
 uid                            Sergei Kolobov <sergei@kolobov.com>
 sub  2048g/F8243671 2003-10-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD+GP80RBACjmIRFKqJ337zOjW51eExucWRny0pu5fuGaxuJmGSbKaJRAORU
 1jx9i/Cxcw7iwrnbR5xeyjWLDb7FIAemPltBItt0tE9H4pQXgP8d8VL3eehguMda
 o0yfP7WUm3U9uriJEJ8141Yql5IR0e8isQa+YsYbkd2RmDdCMDdC3W0Q9wCgsquv
 jc1gvAh7ypvhk8VLhflAeZcD/jQclE6S2zLZ1DSP2Q5mmuMS2ouRV6Z+fbWKF9XF
 TSxdLevWcXmPqvsXFT75cz8pcBIw4c/wVd8OsPU2fd+1LZCFdms1PqLjhUfXgVbP
 Q1Pl8zCAyriSnR2+BDwUMGzEgidkTjmjlbwhGzPsSJ8rv4i18xYs/JbmkeAV/ZBA
 e6jrA/wMU3ho5aIJ69KxZb3bmPVHYrqL8Q3n51uYausLxdHDMxVvjL06VAGWbF/h
 TdiFJ1ngMKfcfzI5/awpKwb9FPbERuNvmT10MDKumFW3xSAJMRzxh7O61u8N7dmc
 xLdirICQMRN2jPo3v8T2ANsdydVTn89nqdpg4Bo9Rsz/Fdnrm7QjU2VyZ2VpIEtv
 bG9ib3YgPHNlcmdlaUBrb2xvYm92LmNvbT6IXgQTEQIAHgUCP4Y/zQIbAwYLCQgH
 AwIDFQIDAxYCAQIeAQIXgAAKCRAU7G5pO6U0ASlRAJ4mnVHx0rA5dhw0scFGOddP
 cH/w9wCdG6HPWlDpXFB5nkpQalMnGzLAkka0I1NlcmdlaSBLb2xvYm92IDxzZXJn
 ZWlARnJlZUJTRC5vcmc+iF4EExECAB4FAj+VJGgCGwMGCwkIBwMCAxUCAwMWAgEC
 HgECF4AACgkQFOxuaTulNAHJ7wCfbcMzZiTmwuTD7wLTxvzC35OQE1YAn3et7KAt
 aLZuVXYIDROr33RIlfcUuQINBD+GQA4QCACIrLJbs3SkUJpuvYC1N/iykFYGHKPM
 L+XCCK3A4HL6f+GyCpvajz62cjUfuXv/pkLjcYANnqKKPJu6Bj2rFmOG785R/RPD
 o2dl+zlZ0fggQAv8zZqIP2KyQRSVa44Pxc/G1V5odcg/QOcKU+FZrkRXoz8SqfDU
 OEfarQP687+DU+Th0Nwn5M20+0ml7yw0/y9DtggWXzlWyIdYfhU+8HckvzgXnUFA
 tPdfDUzUxEjvVBUwZ5iHtUlId6sHiiTCS/fbnRzwJA1Pu1E52B2AfsLxFrwV5cRC
 ASfi7IGhZazGCctqZi4hbWQCB/+ipEVGct+bD9BpW9yS/JiMAxcwE0ubAAMFB/9F
 k6mZUzBbxQkSbXP4w1VSxf2m/lIV9v9M0LCMwjmcsJzsdLUG/i3Zo+hAjT+GznMU
 DVzPHq55LiNs2MKC8WKHXgXFCB2uoZvlGu88I2JjucoeibtC7zbKmVOntuY55zTk
 uiGkGRawIIKC6oqVFV0EGXxrcJ6v3/0vgBQSva08reETZaUFe3ivt0rU0NSbhVJ0
 1WiPXk9wFY0ccemUVmdcX4hhC0yyBB0px4qbEBY3+mtHpFVh/r24GXvWXkbLowGd
 nmKeigX/tlRyYgPHLM2goUHUYe0erbKp2fyeQhockLOWY0DBFcFRK2kSx9HYdtcI
 N45tvtkBza2O8C7uCtwgiEkEGBECAAkFAj+GQA4CGwwACgkQFOxuaTulNAGwbwCe
 P3RXUuqmNGYCM0IXPlop9XLZIcQAn1B9zRfHFJm7tgMI0A6Avybs7V8i
 =EDjf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.119. Maxim Konovalov <maxim@FreeBSD.org>

 pub  1024D/2C172083 2002-05-21 Maxim Konovalov <maxim@FreeBSD.org>
      Key fingerprint = 6550 6C02 EFC2 50F1 B7A3  D694 ECF0 E90B 2C17 2083
 uid                            Maxim Konovalov <maxim@macomnet.ru>
 sub  1024g/F305DDCA 2002-05-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =WWB9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.120. Joseph Koshy <jkoshy@FreeBSD.org>

 pub  1024D/D93798B6 2001-12-21 Joseph Koshy (FreeBSD) <jkoshy@freebsd.org>
      Key fingerprint = 0DE3 62F3 EF24 939F 62AA  2E3D ABB8 6ED3 D937 98B6
 sub  1024g/43FD68E9 2001-12-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDwi3FcRBADkiWSSJSOX38CIPgbUnnDQ8S79eZ0zQYnYn5aeRMi7w0B4SnQP
 1DcFZ/EHNtQWJTCaQBWQZZWvL1ZjdK284YrpSKs7gfoV5BufcFqKatewWZUfsUad
 FEKTXLXlZa55151UtFy9erkA22VWHmqkauDFYl4DiOtaUWCX1Gg8xCvB3wCg0sbC
 /VtANEu2XbxUp5pGmReNn50EAM4vLWfZk3T2woHN0VBOwEk0BM216zfJQGLFUFqT
 nLKezO/QqoCCcVpH7rwV0V6NI1w6YOSx14CU+s83iyyO0KlRypoptWKBoA+cjs/y
 3Iy05K147YfWUhgkKcyw/Qwx8wCDaetG+qZCX4nY0EByezFe504uDkcxk5BrqBX8
 E6kzA/9vSG+J4aejKRw9z7Ku5cLV9ygXCksu325uY2t+J6b+48cT8eFMOpgUHyNV
 m5ypOL31KYRPkOzK+iiDoTPODh4Zg8YZLsgWdTrC0ZQW2nWPNd3Zv+tLAmiwVjIV
 x4XqtFXh4nhI2eM/PXhdN37R48OKB0DmrvdH819/2+9upNvO/bQrSm9zZXBoIEtv
 c2h5IChGcmVlQlNEKSA8amtvc2h5QGZyZWVic2Qub3JnPohXBBMRAgAXBQI8IuKv
 BQsHCgMEAxUDAgMWAgECF4AACgkQq7hu09k3mLaWwQCbBEeFWt8z4HlnAys0FYB8
 /U63eqkAnjKz2Lxj14N8QYtbtFThZRB5fq5cuQENBDwi3GIQBAC79Y5tcPi18bZd
 REXZmDOnLc0gHD9y6PHgR92BUCWQuafcxfQqqY2ESF/JQ0dFfBEkCAmYU2YkPZA5
 A7skmv9zHun/bXAP02hrvMU1Gt0ZHIzDV0EaO+uxY8eSKg4JuxZzpgzWCIxI/6uh
 ZhOuEF/uql7IDKMQcOfsvVrF8cZfNwAECwP/UvxNG/RUOlOHdRo3hY3H5l7zmaCi
 AwUU6Z+LxDn+fwERX7wL5rasafi1r7/9VvGADfelpxKR0kZM1eKYPtri1zS6Zm5a
 CC+QVyyoTcb+x0mWForq6FxLDf7+l/O0TuEG7VOH4RgLaT2N33yoScEvxdB/Qo4w
 KnT39F7lYjbzBvGIRgQYEQIABgUCPCLcYgAKCRCruG7T2TeYth30AKCzp2KXBqsa
 N6wOyM+tHQ4DKNMasgCglJCipoxpnnvCsGiZJv9AgNQFDGM=
 =a9D2
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.121. Wojciech A. Koszek <wkoszek@FreeBSD.org>

 pub   1024D/C9F25145 2006-02-15
       Key fingerprint = 6E56 C571 9D33 D23E 9A61  8E50 623C AD62 C9F2 5145
 uid                  Wojciech A. Koszek <dunstan@FreeBSD.czest.pl>
 uid                  Wojciech A. Koszek <wkoszek@FreeBSD.org>
 sub   4096g/3BBD20A5 2006-02-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =sg8v
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.122. Gabor Ko:vesdan <gabor@FreeBSD.org>

 pub   1024D/2373A6B1 2006-12-05
       Key fingerprint = A42A 10D6 834B BEC0 26F0  29B1 902D D04F 2373 A6B1
 uid                  Gabor Kovesdan <gabor@FreeBSD.org>
 sub   2048g/92B0A104 2006-12-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEV1zhcRBAC4T9pbx3J+/0qY5k3IVGMGpI31SZHwtO0ijDBA3V0mIOUpty/E
 2AnAQ/7GZEvWtMd3pE5xwoicgSQbPcnsHG9kqG43vvr2DdByY9lavqoXPOXKeQnr
 U/Z5eYvOgT5Da6USxXI5obFdNsCwwKYt7Sbvfj6L+FVWSS8HW54f9xuqLwCgwCRv
 TxVBZJ4xERWsk3nJH4B/GKkD/20ddbTHSTBuBpulmoOUNBcrnIEYPRCDvF/e07yz
 sp3KJeMegdPEwBoy6bF9R8HkVgSEx/jdMSZNeMeAOpAKDlTUyTNJRgzVwqu+SgOj
 GT8IzhLNFaZ7wiKoA0yRhGb77C3IPzjSbcOI9A3vn9DkStWfDtjTIOxh7FxF9+H5
 c5z9A/9++LOF8L9VPHUNi4h/L/jE6CWSZgeTUIMkSwALrochNi9xIr+kS5pPxUPZ
 MHVdG0+gK3wNLD6KGpBnHB65wWbb85fukY9y4YgEv0+TjpPwkbwlAbKtt7cf7RA1
 mYtYStbOedPBAE8Y89cAcmQ4a4ViJFWfSTLJorAAy73pVns7ibQiR2Fib3IgS292
 ZXNkYW4gPGdhYm9yQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJFdc4XAhsDBgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQkC3QTyNzprFGOACfYLDfWSz4Ke3HN+suyrD4
 iwnZpycAni9084/VZ5iAadc6I1o81cGFX9GtuQINBEV1ziAQCADQBlmiWzgTaAem
 j1rFzVhEe3bSRg4qmcyiUyIbVWj8Ecc71c33fSHdgjHnAqKGjxKIkf7qoSziLWL7
 b2dxUiI/M7OUTi2Tdy3nJa/GJ+PK3CK4oM/oSMGOSUz7d3ZaKwZX4d/GmpCZ6U6w
 XFPymLOQtlDRTyz31QPCQXnI2CD2yswSdrHID/LuBDx+24vA2NyGy7WdUmSSchnE
 aw0fYTiHbjqI4xsTS6wkRJ4QRcHg8vyXc9Xd0/TKtaFBURWfHDC9RWNjisrhc6q1
 89o0QHBW+UqcYdWPUgTO38hr7k8U8LNJT0a7axsgwiwLr1oSS8z/RjdiFwuArM5M
 PQgkvMYLAAMFCACIMIO2gjtPL64mLy6If2TPBTqb+g+HaWWk4lxsUN3A7A5y9TXk
 w3Hx2jcig6P95jIKyiTJkV5ZqcUuwtEWK/nK6M4o8x7QQwLAfH6x/wfsb9Gays+K
 wT448Xhi05cOnIuKyFXXzaNRgGe/G+fxpxqEjmgP5y2NjB+KG/h4/Am25h9Ylm+P
 EYq8QMxwYS+3TpfCMmgnqTymegNZpbQ32nJYKnxn9j58sLqgp7BjekgAYi79z+Zx
 0HoeGPiehGLdymoj5aaiTCZfTB5CRMyn+dbvXUpl8hdAEG72q5D7JH8yicOANHUd
 NdMIcDxTJcHnDQeXdSrVWGTQmt4iuwfweKlmiEkEGBECAAkFAkV1ziACGwwACgkQ
 kC3QTyNzprFoGQCfZdGMd7cQFoCW1DBGMnNJ9AO5WmQAoIM4BtfriXvx3Tov88ES
 DHOhFMi+
 =jLzS
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.123. Roman Kurakin <rik@FreeBSD.org>

 pub   1024D/C8550F4C 2005-12-16 [expires: 2008-12-15]
       Key fingerprint = 25BB 789A 6E07 E654 8E59  0FA9 42B1 937C C855 0F4C
 uid                  Roman Kurakin <rik@FreeBSD.org>
 sub   2048g/D15F2AB6 2005-12-16 [expires: 2008-12-15]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEOikikRBADU4oWe1rkbd6R8HeOR5I/Uw6gGk0zrBPNkyT9PAtNKFYgAOotZ
 fJbo1czDlN5cstvqBOUKbmeOwqkMi3/DT1N0VjGq6eocBCvBhHZ/PIyIonV18JGI
 /wYYQ2k0jAOpehd7QYYB6w06gi+siJ9UY6iEhVxrO8rF5Er7RYXICubDEwCgszsF
 U/rIMr+yw52uGDe4d1wyICkEAKI7uw05tkwQutLzjx1ZOCu1o8zLepZ1QMRDn8io
 EyMRY/pCvge7k1kjmm/6eZ3M39fPrvwcpfsRF/dlgEeQI9Pn0HDJWG7eU/zg0wrQ
 VkvELJ6qtJvlQRKMh51EfLkR00Fy0HsBWfc4U82GvBLU5fPL1FujMeVLJtZ0W3q+
 nHjUA/4z0JVp6vNCkPOr+BiJhdJsiAYkGUdqHR/mZcChcRD9jJVRO1JDQQSvP3o1
 GvFqqRU5VsvYXKVKlVoWQiKGu0Hf/ZIOnY8ek49nTsUTm1MDPIFqMl182uxr3s40
 DhBmKzhufDBkgtNdpC2SU0h5mwkF09Xo1goVMn5DTbQfRfNfF7QfUm9tYW4gS3Vy
 YWtpbiA8cmlrQEZyZWVCU0Qub3JnPohmBBMRAgAmBQJDopIpAhsDBQkFo5qABgsJ
 CAcDAgQVAggDBBYCAwECHgECF4AACgkQQrGTfMhVD0yS6gCfQyXa2JPiyfy0EFzQ
 HGwWrDPjzjsAn0IJZGfMUiTegcmtpu0lNv6nMUiEiEYEEBECAAYFAkOjJ6YACgkQ
 TclL2LcfYF1uNACgxXMrlmzdzmMwriLK+T4OKcffa/sAoOCL19v4pPw4R4KI3o7O
 MOacY9bIiEYEEBECAAYFAkOjvw0ACgkQryLc73jOEF8XvQCfWcxEwIwZ4eZld/Qf
 eB1hsxJeDxUAnA/ftOsZtbG4o299udw71y57GHMPiEYEEBECAAYFAkOj44IACgkQ
 hdRQRWtpGwOERQCdH2AVEiuQohXgOX2PdCIZYiufCEEAoJgGONTdR1U3cp1X4Hhc
 cuAX+Z1IiEYEEBECAAYFAkOj7gcACgkQXeTX/hlJ3IB1CgCfbgMdPkgLWLQ0HHKx
 rR1nB3hzAiIAnjOwE3TRytoNLPAAuECgudqkqpnRuQINBEOiklMQCACBiZ5wcv8t
 jUjCX2iZ7D5qQiWuJYPhMpBS4hV4mZXhM+pSjFctc9PFw+WHlaRFXn7zGYP404AS
 tvqmnZBInBdal+L7r9OhPj7vrQcYDHJTMDflHK/YhfBwMj8/r2jkV4Ja4ji9nazr
 Gbq1wJpP1jrsBuFU0Qy4HRZwSyKrFNGqAEsiZPxgMAY16fi3IuVbE78HlUq+0I6Z
 C90z5MbGFGSsZRbWJSxSCOqQ7YxqoaCqxxNeF6fIYQdL4hatuH287dqmru6ST6j0
 ApQF+mnmlwKnrLSzXw0Hbvfj8ZrGyAc9cLz2oCwVwvLsP+ohiNBDHc+FFXcBxIcy
 kZi1+6AxjhXfAAMFB/9abRCZ9AoTa+Hd6ajC77l/Ul4jlj+R+DKQ466kj+WYOdeO
 XQtF3e1g89cEX1S3lnjIZGS3uGZ9YehtxMwBXlOCIyyLhNxlRWS4YJeC2E1q1kZm
 +xs6IC47g1E5yVpm3qcUp6HKwO0SGLQiN3ECSZfBtNEcEScAFGq802lLLKnMRBfV
 DpwXP4jop+90NSKP4RKzgYdXXz3SAq3heKeuBOHl3biaTmvh/FSoZtcGSqWLPR85
 d+5GZVJRzrwGqrGN/3zRvd1PbTpeJ/pbT/saFtsVCmlPoUOpKeyDHGlPotQo67gu
 1cwcr8h0D+oYPMLlspZFuMXvLPxaNB8oRLyxVzUhiE8EGBECAA8FAkOiklMCGwwF
 CQWjmoAACgkQQrGTfMhVD0wzaQCglkceiB8ksT3+rwFRApwaWTO8ey0An3w0Diff
 8juSFfJ2ZBIPyPzTGgMu
 =0i68
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.124. Hideyuki KURASHINA <rushani@FreeBSD.org>

 pub  1024D/439ADC57 2002-03-22 Hideyuki KURASHINA <rushani@bl.mmtr.or.jp>
      Key fingerprint = A052 6F98 6146 6FE3 91E2  DA6B F2FA 2088 439A DC57
 uid                            Hideyuki KURASHINA <rushani@FreeBSD.org>
 uid                            Hideyuki KURASHINA <rushani@jp.FreeBSD.org>
 sub  1024g/64764D16 2002-03-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.1 (FreeBSD)

 mQGiBDybt48RBAC/KCE5CLVZsYvpmgrbum7JHgIgnX39EPMQmL9Y3LmYy6Iwh+OF
 iIjIqW6cDeCcxHoJBwbSUerC5ueriwZCh46gSnLVjnmBLlGFXyxYbSfFGetMVVSR
 6OpiQuITp4ZhVw/UoCGloNsIFKg6l4JMwqZmsrZPdl+zUU79RV9Zb4XhFwCgsRIo
 1mf9I3rNZ8f1Jv69nUR/lJkEAJB6fY1rtUNUwq+JXOnFGD0KnC8isQNyOeQ7Y1il
 HQ9mGVKuUC3Zh0FzvdsU7Ks2ss9ynxfbFXnyyAOqXwTzU9pMuW5oLOUmjqwEfAhV
 4S0xcnPcfGGJ671NNeqa8X4LQv6ECWai6O4CbA4aluRqhHNxT9dgEai8RN434LQE
 tGxcA/4mIlvVoM2c2DRjD4+/Oj+i80ZMpOgE1RkuQmXoZ/DwLD3EHbIBX4cNffOd
 FzxYrKCrXD50MehIw/IhFfHN/GdEN7NT87M3j/ydSYFluoiLv8FXO00mr8cDi3wF
 q+LGbniEhVcW6wpUz9zVFmdLAp3HQi1uRAHqYmdSs6gqjl/+pLQqSGlkZXl1a2kg
 S1VSQVNISU5BIDxydXNoYW5pQGJsLm1tdHIub3IuanA+iF8EExECAB8CGwMECwcD
 AgMVAgMDFgIBAh4BAheAAhkBBQI+L/K/AAoJEPL6IIhDmtxXgj8An1YuXcp0iurB
 ZYHiaYMzAb+lYhALAJsEAKTyeqO0plIvHBV49L5CErZo87QoSGlkZXl1a2kgS1VS
 QVNISU5BIDxydXNoYW5pQEZyZWVCU0Qub3JnPohcBBMRAgAcBQI+OM7uAhsDBAsH
 AwIDFQIDAxYCAQIeAQIXgAAKCRDy+iCIQ5rcVwyNAJ9Y5N6lIMXVy4sYCdgQvqDR
 xkUN0gCgrsbQwfTOBcy8Mw/UmGOE4/fwrNa0K0hpZGV5dWtpIEtVUkFTSElOQSA8
 cnVzaGFuaUBqcC5GcmVlQlNELm9yZz6IXAQTEQIAHAUCPjjO/wIbAwQLBwMCAxUC
 AwMWAgECHgECF4AACgkQ8vogiEOa3FerLwCfRPWW7lC/pAVdD2Jo+8rcWTKQ1xEA
 oIQ/on62k7YBO+buO+K472a/cW2MuQENBDybt6UQBAD/ZGmvwhzt9YWhF9q7mLOT
 iEMzL2AzBryLzzUphejgDlJN/TIoDtaJfMyNkO16FbUq/WLQbKYFKfDunqx+eVSi
 PsneeYw9nAdlcXVgHRjoL3vj5O7PIg4qqps2mnLKEOXLAH2PNTYY6+8T0NQicdht
 YIraowzLoKRdINuDQrCpEwADBgP9H4CwbNJtQAHwS9ATmfL6F2Bg9LWe1godSWkM
 N+nBxKvMqrajJWfxV09f9gzn0qmMZT9u2DwcADzRQLC3jkzgOD1f8UiAuCuDEE1a
 vg1iCuyiI6m+MMWCkOCj/69wIu1ilmWqkn8SeoEwN+hwqHa20ue7vBhXreQanJim
 sq38ZdCIRgQYEQIABgUCPJu3pQAKCRDy+iCIQ5rcVzT/AKCgYOyEMpIxXYVI5gYM
 CwQ3hkJ28gCePnTu3Ke6lPoQsMAo3TzKkUO9Wj0=
 =cXJQ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.125. Jun Kuriyama <kuriyama@FreeBSD.org>

 pub  1024D/FE3B59CD 1998-11-23 Jun Kuriyama <kuriyama@imgsrc.co.jp>
      Key fingerprint = 5219 55CE AC84 C296 3A3B  B076 EE3C 4DBB FE3B 59CD
 uid                            Jun Kuriyama <kuriyama@FreeBSD.org>
 uid                            Jun Kuriyama <kuriyama@jp.FreeBSD.org>
 sub  2048g/1CF20D27 1998-11-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDZZXiQRBACWc1PcCjIpTl6aCyOMVfz4jlRSKblwib2s07TBwbgR1zMhbPie
 O2K4ZJqTcG4EnbMLEyYMbYwvNdOfUIjMW3VI1PJhRwWthTcbUjubzTu8Zxw+sKME
 ansth0xZW7Ax29UWQcTPxs4SRsCPFO8t+aWwZOm6z0fb5l1vMmKNJuw1+wCg3ZZB
 qK93hQPaOObwglnAIrgNpScD/j0VCEeC8fTMk+ZIo+z0+bUGPGU5cq+4XVXABYLn
 wMfR6Wr5Ys/3VCx4Oyzzgp/HBzcE5HxJukJ2ur3m9IE+uFfY4+HEFiwL++Ke4TWU
 7rn4rKjJYhGJ6iqGFwuxwmHdjcBh/38X0kmrCxyPYpt6xO+sJBP+QOABw3PFlMkF
 PUY5A/9RGU4mm6K7cteNdbHDI8yFNorQs8W8fRb8yP8bw1T8qB5+/rQ5jxAfA5sr
 FCuZsKNFdph9z/I3eFYVW4P8+9gmI2FAAAocWheSyKttAFHx63JRyBqXq9xmHKST
 kuaoQVXeFycSULAPkV67j0/zDL2mis6bRpPopINGgjkia16u6LQjSnVuIEt1cml5
 YW1hIDxrdXJpeWFtYUBGcmVlQlNELm9yZz6IVwQTEQIAFwUCOmRRlgULBwoDBAMV
 AwIDFgIBAheAAAoJEO48Tbv+O1nN4+YAoKeQztEcbPBbbX7DZAHOsGZLrZ2NAJ9a
 WEoFGMT3keQDjtjUI9c8IMh/l7QmSnVuIEt1cml5YW1hIDxrdXJpeWFtYUBqcC5G
 cmVlQlNELm9yZz6IVwQTEQIAFwUCPE3sswULBwoDBAMVAwIDFgIBAheAAAoJEO48
 Tbv+O1nNMp4An22RFzdv9zdNLlcY9GLPFyUrniqiAJ9F9Rhic6qBaXynksNw51Do
 +cLWkbQkSnVuIEt1cml5YW1hIDxrdXJpeWFtYUBpbWdzcmMuY28uanA+iFcEExEC
 ABcFAjxN7RoFCwcKAwQDFQMCAxYCAQIXgAAKCRDuPE27/jtZzYFdAJ9BFckSo4/r
 SMe9UqbRMPK+8FUumwCfYH1pt4t6jFlulLk+9wYA9wISL3e5Ag0ENllesBAIAMSU
 hrKdEdKzQXHzkoE4Nzl3hb6dtDmjgYr+3X95wBkUvtrk2CeYG3RC1PNwd1sEFEWp
 IiSzOaQDzxZmtBGpMkQ1It+CW4sC5Cs2TQ59VHLFw7HWSYMNj+RchWuWkhwipnX5
 8wu6To12Mu2MnyLszX2QIUxrQme7UpKkJgCct60C1DZLoQuZmfEZEyXmSfJsizeq
 eeJuusZwOWDH0ixuFVK/5A2RwaWFMftdhh/Vw0EkxdQnMJ+7zJ/hbY64VR7uz8oI
 5smfjVe0yqXMACREUzXmqn+Dc6Pz6ESVTv2XwIy0UxqxiYk1J98Cf3ffi5+e/q1d
 rej2PzArpfzaygu88uMAAwUIAI/IiiQJupz9BaCws/K6j4Qs5iWRiSB7vaZfgCr9
 c6vx+mIXX1Pblity5TOn9qXMv7vUM/dgmWSBbkkrvfD++H4ybJjpcOZN+peeGd0G
 /UfiQFMarsj9MozAmhzI5L00JqLOf4u/XBv0rh5HOX6t+M9MfZYL3C7bn/LxmDif
 prT8jxoA2SC+lPGSzI+M+ay/mz8kDmGD7fCS+uAFo5T1kjU+ed2dhXnl16gRR8NO
 6yAdURIC+xs6P+7L8uOiZfuk0gzn5RC6CYrEKiGZf9VqTRA2vcirPNEZR44jYXS3
 nL7x9pIsHyCyxEvojut7iGWO6qbaW/c+MRjcA8jgp9OuFROIRgQYEQIABgUCNlle
 sAAKCRDuPE27/jtZzZksAKDbznARmDIIxZjHfAry2UJFBPQbvgCgl/ERQfF++Uvw
 hLaVfesP/NCIt5Y=
 =AoU9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.126. Rene Ladan <rene@FreeBSD.org>

 pub   1024D/E5642BFC 2008-11-03
       Key fingerprint = ADBC ECCD EB5F A6B4 549F  600D 8C9E 647A E564 2BFC
 uid                  Rene Ladan <rene@freebsd.org>
 sub   2048g/C54EA560 2008-11-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEkPa+MRBACUFlLWm3NomhEGr/Aj+rvLo6ayjrDP4Z7ihGTLMDFbhISurcAD
 8nW0MaFtBiUPxXFA1AC7L7In1cX8PFnQqgNcZiyZ4DOU6S8MndbUYwesM7oHs5zR
 KnvC5fZxY57cq9+L0r4qXdm6PvWr3Ca0T+E0QyWDn0AkYdLGYDafk5C/OwCg/zBe
 RExgeevWoBrieKK3F8dz/48D/jGNn4s+LPMtKNlaqYph0hyUmuZrQXXAmVTqfm0h
 9BBhby4qla9GqnYy0iiDqTCOzbckXQDBvXWFusmZx4AMnJTW/XQDHo9Kw9quWnjU
 YvMbgvqOIUu0mSS8gVLT4550dD1AUJucBzLUa6h5qi7EIh2c/nYwdimZ6Rv9DnV4
 lm64A/0cVk1m4mWC3jJzAS4tNtWbvhDbgWtqEiy1q/U116GtmnirZLJd8HE1nrVD
 VYCjhEHlA15GlLwN7zgnG9PBN4LXMWdccDwYAtsUAeZ5tTu4cU5k84ukxxOrzUAl
 d4p+UBef8QbpUkkEJm/0YWmim7+bTfH93FBGIXiG7x2UYVD93rQdUmVuZSBMYWRh
 biA8cmVuZUBmcmVlYnNkLm9yZz6IYAQTEQIAIAUCSQ9r4wIbAwYLCQgHAwIEFQII
 AwQWAgMBAh4BAheAAAoJEIyeZHrlZCv8LboAoO4/qyTTRwaKzRA5xvt0H2eFh4tH
 AKDLMSXjX+HX7U4zomwrekN7sJBd7bkCDQRJD2vjEAgAmPMCmdnoQu+Q3Z0pCYcA
 YJr1NyAu3xlpD4+dYBimEp2bAknPDCmaoVrSh7e7Mh754give4Hzz56QZsksIuEm
 rROafrecpxoAdMtOm/qa2CjlCKWVId5wbQSuuz8TV54CmoyUtruvKfUPDbK74TZQ
 BX1PyjaZ0FMrFPg69qoNcku2Wjc0BJsNFQ8+TzMzTbL1GKcM7kHZc4Wa/nSqwhnI
 hf7mgvd5NQEZs/7I3DVWxrqzEHFPPMPKE6weJJ56NEAd5W9rs2/eezUjnzAXYwyf
 IYCyWWqYeOCa4a7zYu84H0KxVQvUStVUWpTFLaZOpXJvgJkKPPXbPDTh6PV26t3a
 QwADBgf+PArSxdwEsXZWy73mcE9DjlnI/bRX/XN2tsZppzUyi5mOXZG7H+ZJGAU8
 DZ1+8QgQAwhCGAAKWt4jHq785usSUUa453N9k5X9JURTeMLrYVK8EXA9URQqCQpK
 iw8Om6xYoUHJZbgvTArySyw9mLgxo+hqLdEQdkJmSPfDcBsBS6d4dvv/NJyJDEAd
 vm1EXZQ0fmj+qzhCXhr5GVDGYcF152EHHpLLgFVgrKyVeIA748pxq84hvS65ieDn
 s/YuebWVLbexzqUkEN5arNahxk2kY32ZehzrhaC4DYAcJVEalMHS7X8V5LLhOrd2
 hTusyDPzEjlQi69AjtnBZUkxgVmviYhJBBgRAgAJBQJJD2vjAhsMAAoJEIyeZHrl
 ZCv8MAgAniHMkbReHW4Rlsj0/8s3r7dUuz0iAKDlFOXqYtStrWXWn5y1IU+gTHLW
 Bw==
 =uP9y
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.127. Clement Laforet <clement@FreeBSD.org>

 pub  1024D/0723BA1D 2003-12-13 Clement Laforet (FreeBSD committer address) <clement@FreeBSD.org>
      Key fingerprint = 3638 4B14 8463 A67B DC7E  641C B118 5F8F 0723 BA1D
 uid                            Clement Laforet <sheepkiller@cultdeadsheep.org>
 uid                            Clement Laforet <clement.laforet@cotds.org>
 sub  2048g/23D57658 2003-12-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD/bH3wRBADoVem06r8ivhxQhCOEH06GAg5J6iqqlKIo5BmOiQ8IHo8JzA9z
 TwFNbhUCMWzUusH56nNHKOTuFV7wHiR8nvK0y2yU5qTK3MHbfSeMVy4rFAKgyZae
 Wf1lxRHU+W/EksFaC31ljkF01TGHVMtpKPzDSttgrrMtgstT7QKWTKcggwCg8bVn
 g7MH9udGaSNY5hO3l9wIcusEAMD+erpSZgVfwojT/pliCwnvKRwNByhIWqz2y3Ly
 M2+VR/IjFlpOvT4Ytrn2VC4V1duahdowNQh5x0vUPagRRYKx67OEbIcisKsGQTnT
 m4FSRUfULKZ3M016uSsYNbuopctjrxHE1YJfskHmLnIHjnXhJjfmouQqOX8nQSh0
 ryjCBADTi6z4ZvH3CF/C1egPsmYzJ14H2t51JUSHwEWWaj3LkILEGvHsywCIT7Xd
 R34B0hPIn/ihsJF4XBEiqJlZmFhfFUmSR3/No4TYKOtMAzfo6GtMv8q19U/LQaVY
 1wYY0rWCqfzwcH9vSLlpHL9afqNBnVK3XiBGMCmXZw+4klu+f7QvQ2xlbWVudCBM
 YWZvcmV0IDxzaGVlcGtpbGxlckBjdWx0ZGVhZHNoZWVwLm9yZz6IXgQTEQIAHgIb
 AwIeAQIXgAUCP9sirQYLCQgHAwIDFQIDAxYCAQAKCRCxGF+PByO6HcPlAJ9gLehC
 AhRMepAZrGdPsPFoMB283gCbB6y04aeQlXaa9+xAm6C0ciAiXj+0K0NsZW1lbnQg
 TGFmb3JldCA8Y2xlbWVudC5sYWZvcmV0QGNvdGRzLm9yZz6IXgQTEQIAHgIbAwIe
 AQIXgAUCP9siqgYLCQgHAwIDFQIDAxYCAQAKCRCxGF+PByO6HT+eAKCBj8MXtxmq
 l0PuLGLnR04gnauqPACg8Rtgb2XwCrgcZFcjS1Fl7/SmTE20QUNsZW1lbnQgTGFm
 b3JldCAoRnJlZUJTRCBjb21taXR0ZXIgYWRkcmVzcykgPGNsZW1lbnRARnJlZUJT
 RC5vcmc+iF4EExECAB4FAj/gQ+4CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ
 sRhfjwcjuh2wLwCfZ0Sqh6DY5U2ZDj+JrdqX1qzEaGMAn30UALtH14r1jMPPq6xn
 UuMfFjyLuQINBD/bH4QQCACbO8LantesOQKcxZS6WPSLhIoZerdMJ/b4DCd22GGu
 IM4eoWiYPX73cTMbN9cTEObaA0hvXEdn8vWl9/RBV6aL/fYhAqTVGWhXu6MBJiAv
 0zFeliJl2+7MqzZjjr8GSFkhM3tXEzFr+7r7/Bqnp8hdzMFUS2dLcL+ZTXJuq9s+
 xUNnwt0+Qy13VQU9whTZNZy3PHHa3XRc5IbZ5FnqMM3D7twlt0sS6j253b3CXw31
 qEREoLutw25X8pbQeYJW8st0xIEY9z0MikBOJvKPAUani5+eWjuJC0FlXYM4qSnz
 zhBpDbQBuhQu5JgPPiXlBq+ta/prm6FyJjcK+EyJsMGnAAMFB/9DIGugG/5F+4XC
 dTvFluD8zbP6zwqWRuHX9JmA+oso6ruDHiZ+Ckdz0xBfD8yoyENIRnLmBxx11uZN
 upAlM2itsvAwHMm6zKGLwlN+74vhoCTzvDFtnyTSgC8as4kk4XCax2QMAueFpW+2
 8/SSLqIK2UWT8/5SkP0QaN5qSFgRwhGxYgyVP8pflrjL32u+fEwo8EjNnOUHX4WY
 uzdzq1t+0K2AnZH5TiUCPy9iLP8o3rBm89Qdh45wzqN9DOGePoc0v4opQK9+3TRa
 vYAx6izrRajiGgUHLcYeL2nQxyi3LBkKvbp4Bw/dpxGTdmPhtyU8jYqdP5SQbrFJ
 4DwXqs4biEkEGBECAAkFAj/bH4QCGwwACgkQsRhfjwcjuh3mfgCguHMdGD3Orm8e
 pAU+aCOCPVkkx7AAn2yhe79FYbHDx5Dx2LAfRRRyfxjR
 =lVoL
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.128. Max Laier <mlaier@FreeBSD.org>

 pub   1024D/3EB6046D 2004-02-09
       Key fingerprint = 917E 7F25 E90F 77A4 F746  2E8D 5F2C 84A1 3EB6 046D
 uid                  Max Laier <max@love2party.net>
 uid                  Max Laier <max.laier@ira.uka.de>
 uid                  Max Laier <mlaier@freebsd.org>
 uid                  Max Laier <max.laier@tm.uka.de>
 sub   4096g/EDD08B9B 2005-06-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAnrX4RBADpu3Q03zK8ehNRHgNzTPCEVK/sWWr3hR39/hfFmdYcovwyMTis
 OhW87G6uOA5C84cewrEP866l3xmkS43dkgYhcaLxPYFB94OWzSk95AEgFACohnw3
 l7WgcmHyZbdfCbqtuew4RY6Vqf/UzMVzOlvrAOsla5c4ImpaFmxBAFANIwCggiRI
 o0P2iw3gBY2y1aG+mTWKidcD/3O4LPoZItTzx3vWq2wQ5mwoF0n01wIhQk66UtJj
 LvZV53LzEEuS6JL6LKkl/AlxKaUoS9OUf9D7nyJu/dDYHDKCj+m1UBo3AkKUcutn
 FLgGFwHU4Apcy3CCblMm8j0w62EFnXjIjUoPBqgDUUrePvVfIgJbkFjl8e0LcnTT
 m+KaA/98+/pHRh9EvGKpHWIUc2qHNF1BfFFmq2wzmzu9MCk67IstOWq4GiRChyCL
 V9SYGJ5upRRPMvxAQD3DAclfuyMKk2a43rXM4DRbePPeqH7ZGi/yyzPOGvqLgLDF
 VboM4bNJPa+Z0PX0QU6o70fyWPXQk+23suxDUgYvFrPEufATO7QeTWF4IExhaWVy
 IDxtYXhAbG92ZTJwYXJ0eS5uZXQ+iGEEExECACECGwMGCwkIBwMCAxUCAwMWAgEC
 HgECF4AFAkYBsV0CGQEACgkQXyyEoT62BG3+aACfbtsTiMA94ttjwscgLB9cr0qQ
 PtAAn1j+sAozCf68cpUFjNc1YQyR47pRiEYEEhECAAYFAkES18UACgkQTVOzajVB
 ZGAPoACgv7gaBQqC40XWmJI5CqvsjBKupPsAnRWFhc/QkldYxGG7Zchg697ohuaU
 iEYEExECAAYFAkK+7JUACgkQbHYXjKDtmC2aqQCePdVXxOSZ/jEYuKnJe3HD2fl/
 JXgAoOUsrK0IldUrazH9GBcxY4hl3CmbiEYEEBECAAYFAkO4ZKQACgkQ8nRzewv2
 yFNmigCeJyZdNoRip/NXG7tNwXNQGq9npT0Anie+9MkjaCOWOWMO4XFyXBm0O8Ls
 iQEcBBABAgAGBQJEALTWAAoJEILS9urEu56fkYQH/A+t3UGC/te9e7Ubr/iZ6hkL
 tF/JANBV2YSBrM4O8wh9l0tjd+qGlq2+2VoW38fb6RmZVcAH+sXKm0BiP+v/EmDL
 oxp2DlR9V8QRcuLIITsAVSCIEhuzpMG8EiPSDQvc+Rx0ptYdCYaUvvp+aLYhc8BA
 cKoSDEygmtcOGo1tvAjXKoPnRqo4YFlfhguQB4UVfcf3jPUcGFRrYjGUu0NC33p8
 N5fcCo0VxPnA/jdh87rYq4EWZYBThu6Gx9Mb7Jfzl+Ab8OJs0t/2nNFZlR76V/Ha
 6NPM8iZ8qisVIRcUr5R9btXbjXxfFeNjDDv6R+0OTnuHOLvtEauJ2xAM8yaxvUiI
 cwQQEQIAMwUCQdbJMwWDAeEzgCYaaHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4
 LnBocD9pZD0xMAAKCRDSuw0BZdD9WLjLAJ9zn1Xwr4/J4WAlJmRVg1FVaW/qgwCg
 oAb8wcvCIk37Vc4ibHoaLDlnx02IRgQQEQIABgUCRHSMSgAKCRDYNLsu7fxYhyQn
 AJ0dZKh3s95ck9EmRxwQhGHNZzE8CgCgolKTUWyAmMGfwQR4CTC+xKPwzKqIRgQQ
 EQIABgUCRHSVJwAKCRCrGD+pQphAQSKDAJ47Qtr4yLOnAoNrO0CIq2hADRoYuACc
 DMkwU7/tb4/wbhP8qPCayIEe6dWIRgQQEQIABgUCRHSgswAKCRA5vzeqwUN7dxVs
 AKCaTRCe6EZjB44i5pVDPNIjg99AiwCggpSqIFnz/lls5BcaSmqBeRYcj9SIRgQQ
 EQIABgUCRHSjDAAKCRCvZCSxPb07IB2BAJ4h74XSn/a5MJbif3mxZEi2arTRqwCf
 UwQZc1DwKjaCzupo4Y7Oe9oiX4aIRgQQEQIABgUCRHStHAAKCRDieO2QMatLNiS/
 AJwP6dD8FKsbHNapegEppE6kK+Pu3wCfWyN0ZQa06MLQn/xJunzze2w9RaGIRgQT
 EQIABgUCRHSdvAAKCRAy22ifJoR+hI5qAKCO/nr4gFed8oqYUVG3Eg6GCXVh+gCf
 XZd9Z4DCd71FaJQ5bYvLRjodWg+IRgQTEQIABgUCRHSlxQAKCRAqTbBO7XfqQzOM
 AKCEWs7qjrLYe+FSsgKKTsqtlZUgCwCbBYtG4KsMNqlbs8nPHezcRYWrEiWInAQT
 AQIABgUCRHSrOwAKCRAitKPqdki4FQ5gBACAqUEeFuLKCYHCRMkwWrCcMw2KRDLo
 Pt3fJwDc//lUQsNZe0KpXCJv9K86+bgYNEByAPdGbxGC3ARED9dAg2WC6tF7UfGY
 w+AsA4oj/s/O7HeTTzlGGab/nIpzeZI671KXf9bZoohjjGm+V2gWtcVcpfnrqrLc
 7pfQoH01jJ7LrIhGBBARAgAGBQJEdMpmAAoJEM1qd61qq03bnisAoN/orlD1u0wK
 dcptumJjoUnjOCwvAKCP2/K9c8xNqgQXBqgNDVKLLslgzYhGBBARAgAGBQJEdNZN
 AAoJEAM3EQzGj6jtffwAnRfgHkJYCVA6DHvRx8JBJNokZY2hAJwP20A0C+vIEoN3
 fsuKPNhQyI3Eg4hGBBMRAgAGBQJEdK00AAoJEKHrLLXDSN7Ik1kAnRC2aJGdtUWh
 CfaHDvCXBJ6TAV94AJ0ay9Myhjmunw7+fPolmNIpCV90TYhGBBMRAgAGBQJEdXbJ
 AAoJEOWLS9iqGXOkxJQAniacHefxA0jAqU2PAeEL+g7mlLTqAKD3Cr3QGtEnTirj
 1h3RD2TCOIbIKIhGBBARAgAGBQJEdJUeAAoJEKsYP6lCmEBBj2gAoKdscfFF1obc
 Oxy/645pZ7d77/XrAJ9syfxjyzPJGfgD+YV8ycOI/mGO6ohGBBARAgAGBQJEdKdG
 AAoJEMuu3ahKVag6yegAoOhVuTF2b/FTzFC/hXn7+6J4ecauAKCZc7xvSMvRYrE7
 PZDWW4kzl4hAa4hGBBARAgAGBQJEdWzHAAoJEJsk77nPF6IOP/IAn09PBdGa3z9u
 AhVt52wO/8XOLSlIAKCJR+ZJDoOA3Mb4Wgoe0PQZ+QIHDohGBBARAgAGBQJEdu+e
 AAoJEHvDNTBle/A9ekYAn2Pj+m0YOFwVX9mExNGCIPgy5RRAAJ9MK5Lkktxgk1pW
 0E+uYLcd4T9UnohGBBARAgAGBQJEecXNAAoJEGII2gDlIth8IaoAmgK7bk2lh6i0
 hqIt3ICN2+NCmEk+AJ9J9TiJU4WXnna8ua/FyvquDpElQIhGBBARAgAGBQJEedT6
 AAoJEP4Sv5MWA2EcPaUAnRYYL2HqMzaolazxkoLqo7ONNbp1AKCaxl4zHvXEJTMQ
 rryGG70jR+GtSYhGBBARAgAGBQJEeqbfAAoJEBS/1KonENpIoA4An3phAsRH8Z5k
 cgVAt8YOGQ4Bs5X3AJ4qsndyIqer1Q5BafiL/HdqWUWXEIhGBBARAgAGBQJEeqbi
 AAoJEBS/1KonENpI/nUAn0V+hM29bICBnCj/pn5PwzIDQ3UJAJ9+sJMC9YcQ7h37
 Zh5lmTtEbnvuMYhGBBARAgAGBQJEfAIDAAoJEKVSUOZXTbpfYQQAnAvQZ9mqODTy
 w4QbR7FwoP24luyfAJ9FsJGTayFl/uhmoPGSPT7+Z5cXgYhGBBARAgAGBQJEhE+L
 AAoJEEdQmW/OAoFhAwEAoImXPk9xrkY0Eu7Qx+8RhH8Z2r/wAJ9735kIvFdemDKK
 lI9LppKXu+Tkn4hGBBMRAgAGBQJEdXbJAAoJEOWLS9iqGXOkjSgAn3Kvup48ST3E
 g5gtAELFhWoYHAexAJsF7O8sTSEGDpavTQmP6w+X75seJ4hLBBMRAgAMBQJEeetZ
 BYMB4BQHAAoJECJ2djMwHcD7z/MAlRb+6OEt7kiit8QC7VBcs2U5jvQAmQFfsHH0
 V5CTC4D+WSsqzvB8AafJiQJIBBABAgAyBQJFVLZnKxpodHRwOi8vd3d3LnBhZXBz
 LmN4L2dwZy9zaWduaW5nLXBvbGljeS5hc2MACgkQJknmKMXTTQVkpw//fMOY/ado
 SF4u0a7yBqLmHlJZnKqv3kH+ZwbRtHF+Avn4/GWXr/6NatRx5JZ8nljD1xUJWhcS
 9hy3BprkvE2mANbIDCVO87ilZhBfTQCJn2SblWbBGBrNnRuVwGZ9EmP41Xb+ysjV
 UFead61upEXtovGE2apova4es3JqLdNXYcarjMizycpcxxPXNcaZxL9zu1mWYYaM
 weIl3Li9q0hCP/hdo7WxgX57ImY3cvbmHFtcaCOlx9OmgCZyFP/NtBfOMJw8cP35
 B1n9ebgfwtuz5AbMirG2FdKu1wb2jaBxq3SMZ4LTkoUelu119cNgL8v0lG/ckwW8
 dHBAKrwqZcYoJ23oRRTdtyrGyHHxSt/bew4Qsip/K3b5BpF9frFTqCTCuDWBWn1W
 wwy4Grd0PrtRprf2UeBctP2xdqACbSYsvuQQHlCv6KdprzHLVM1/o99/Mn6eBspu
 J581P5R9nWknEKSZwKIg2q0lkRX6Cg30LnbLJqKjaeyNEmbLXut81dA77L0PGRYX
 gr9oK2+eGIXNYz0NjXkMw10QxCLACG6MUZbQc1iIIX6pnpIjNNzoEzWhGk80eQGP
 fWRnOuD27U/RL6KyccjreJbQc0pCVz4Ug+ghQpkFh8rxuHrkD+W3FL2CHQufByJs
 yWU6mDzkqYFnQB+mcnllzERymco7N/GvYquIawQQEQIAKwUCRrSXCwWDAeKFAB4a
 aHR0cDovL3d3dy5jYWNlcnQub3JnL2Nwcy5waHAACgkQ0rsNAWXQ/VjrXQCfcfo0
 Erz7IlfnYn7HIzAxF31nbQYAnR3HJjerhgDSzfzjWpgUCuS4Arn6tCBNYXggTGFp
 ZXIgPG1heC5sYWllckBpcmEudWthLmRlPohgBBMRAgAgBQJGAa7JAhsDBgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQXyyEoT62BG1kHACfYM3aVAFcAbb0vNL4So/P
 27k6CbAAn3D+8gt3GoTL7Q+B0LJ/TkI5HM+9iGsEEBECACsFAka0lwsFgwHihQAe
 Gmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl0P1Y0tQAn0zy
 sIJERZoTKY/rLw3e1C7oo39SAJ4i2BoH4lHdpW1oDnv1e7hlqXFTC7QeTWF4IExh
 aWVyIDxtbGFpZXJAZnJlZWJzZC5vcmc+iF4EExECAB4FAkAop8sCGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQXyyEoT62BG2wxQCeIRPC2d5IdKNyy5CHsdTZ4R4F
 RvoAnRWWKFoNd0I4Ing7oOetUH6wD/BHiEYEEhECAAYFAkES174ACgkQTVOzajVB
 ZGAnVwCeM6pxzqKkDmkUP2+CtJZVw+fpxOEAoORU3tdMV6Z/sggWVvt+T+9xGRMS
 iEYEExECAAYFAkK+7JMACgkQbHYXjKDtmC3MEQCg3/t3MX0hBoMDyum+kiGYgHSQ
 Z/wAoLhnkPNS7wQkr4uTTE0xcmPsKU3wiEYEEBECAAYFAkO4ZJ4ACgkQ8nRzewv2
 yFMr4gCeK1fA3Yhvln5VCaCoYLyqUZ+eNAsAnA4ZSB1wLhy1+KmGveraS0nxkFYI
 iQEcBBABAgAGBQJEALTRAAoJEILS9urEu56f0hUH/A3zAQrzrLPPMWnNN/neJmss
 h6eyLEx9eABX1EOrrwapqu3+g4MvvLDFL4t6IgKxSx1wdOueJhPNESLpVAZH6e+3
 VIE0iyvrCT/nWS1IzLHiv+zF9JgoPhjOVXbyo0Do9Eix2gYSybIdTGkP28a4zQf2
 0nkJr60hwcRO9ZbdECSg7Lex+0iNrEZGzWKxMp1AUMG5k00/+7i/zteJ3Am6gEbP
 mttW4lwOjHxPHBmjKOvdABrTHeqtwbCA/NGl2PJ2MrRTI8NINvPIVpVOLvPGwyUp
 7IQ9Yb6iTP3NBuGSfU40+rdQUTdGsWJYTUzLN2oY7JSDyBNNFSMfe3tahIkn4U6I
 cwQQEQIAMwUCQdbJMwWDAeEzgCYaaHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4
 LnBocD9pZD0xMAAKCRDSuw0BZdD9WIaiAJwMr18Qw9ovub4LbTQp/UKQd6lQTACf
 U6b4ZL3Ep3RmIVOH8Q704RUXlfWIRgQQEQIABgUCRHSMQAAKCRDYNLsu7fxYh/Zh
 AJ93yDd8YEhcLn2cHY28l2SrWw9I4wCfdobz6wJxvP/p8+yPhZr2F7NDJ/WIRgQQ
 EQIABgUCRHSVHgAKCRCrGD+pQphAQY9oAKCnbHHxRdaG3Dscv+uOaWe3e+/16wCf
 bMn8Y8szyRn4A/mFfMnDiP5hjuqIRgQQEQIABgUCRHSgsAAKCRA5vzeqwUN7d9VF
 AKCeiTDoLZ9owe8IlDKUW1W4fCNj9QCgl+CM244j+7y85/MG10JFwmz4g0SIRgQQ
 EQIABgUCRHSjCgAKCRCvZCSxPb07IEQhAJ9Tug2UAZApuYyLwrjx3JQ58xQkbQCg
 n9Qm1svpN4DPbEB7qGnk2ugVl3eIRgQQEQIABgUCRHStGgAKCRDieO2QMatLNsns
 AJ9JjtQresPmW6OwfTnJxucYX0dmfACgu4ZH+pcWYdriAMt4IPJXexxXm7yIRgQT
 EQIABgUCRHSdugAKCRAy22ifJoR+hAf/AKDQhZzsIQ+cQSC1Xn0HCxJWhz5aPgCd
 HhfJQsQIMF1Oujrr6LtBezm61g+IRgQTEQIABgUCRHSlvgAKCRAqTbBO7XfqQy/V
 AJ0TdStk1PeDZbPvZeJxyHgDRv6XDgCePGqa1MwyzEc9JNJxMbtMhOSrWx2InAQT
 AQIABgUCRHSrMgAKCRAitKPqdki4FZRvBADsdB04GwtGs0nbsiMIp3SG0u3IYnr3
 98i94hFd8wUnvUe4u975gPLqaCSRJkbPb779M9hzlF3BfzFaZWxS2ot0fVdhJwcA
 RDkI5Jpvo40/4pE57oe5b8dnAJLOBnndYLVPo41RAGk4f6bp6IFlprZ54YPRs6IN
 cBppqDcBaqHb/YhGBBARAgAGBQJEdMpdAAoJEM1qd61qq03b1hgAoIxTgdmUjPu2
 3BlDr3ZQee7jrNs0AKDRQkQBTLswRXA7N+9k5j2QJh9mDohGBBARAgAGBQJEdNZK
 AAoJEAM3EQzGj6jth44AnRVEkCik7krnfQP/JsDGcbIUSVhlAJ41FRQkeVJ2GthJ
 LZOwKkCTVuEhFohGBBMRAgAGBQJEdK0wAAoJEKHrLLXDSN7IR7oAn0w/CnOKOa4b
 +GC37OZ3hM2UG0L1AJ9lGwKBuFdjpIptrxkXqt/54M1GLIhGBBMRAgAGBQJEdXbJ
 AAoJEOWLS9iqGXOkjSgAn3Kvup48ST3Eg5gtAELFhWoYHAexAJsF7O8sTSEGDpav
 TQmP6w+X75seJ4hGBBARAgAGBQJEdKdBAAoJEMuu3ahKVag6mLcAoLjxXvtS4p/j
 RZrUuJgtpUXNTc02AJ9Y4e7DMhiUj+7w1C69pMSX4kbuTYhGBBARAgAGBQJEdWzE
 AAoJEJsk77nPF6IOy8UAoK1xUj5X6dzg+Ln1bYNhW3KHLKfuAKCAYZ+h7k+4WUh1
 iP6CutcydStAYYhGBBARAgAGBQJEdu+bAAoJEHvDNTBle/A9G3EAnAtAByfabr6H
 8Ah/jFjYBguLBAwUAKCAV7fnhHshZpnj/oQLDds+zQFenIhGBBARAgAGBQJEecXE
 AAoJEGII2gDlIth8HUkAoIH5taCNbcyJxtpsHM25cfyucyKZAJ9liCQYp80BwO4z
 nOgCVHspkJoVZIhGBBARAgAGBQJEedT2AAoJEP4Sv5MWA2EcTSgAn1ZzLhn7ENjq
 8GLh+U4ZYZ1a8Qq7AKDT+LJnt/rMwM9F2GsgAnkQuIyeJIhGBBARAgAGBQJEeqbf
 AAoJEBS/1KonENpIoA4An3phAsRH8Z5kcgVAt8YOGQ4Bs5X3AJ4qsndyIqer1Q5B
 afiL/HdqWUWXEIhGBBARAgAGBQJEfAH/AAoJEKVSUOZXTbpfeg0An1Po8Xqi85hk
 +veH0+oru+VQUlZJAJsFKAgGAp4gxrFT9wx/0eXpBfYtXYhGBBARAgAGBQJEhE+G
 AAoJEEdQmW/OAoFhwiUAoJ7hb15pudkdCiWc1nibsWfIMeoHAJ97prq8n0NuIbKJ
 oHCyhC3h4dMsWYhMBBMRAgAMBQJEeetZBYMB4BQHAAoJECJ2djMwHcD7lqIAnjAP
 jyE5E5UnMBI/EaKR9kJLiCPPAJ9chDiiQs1etWET832850wSsDTDTokCSAQQAQIA
 MgUCRVS2XSsaaHR0cDovL3d3dy5wYWVwcy5jeC9ncGcvc2lnbmluZy1wb2xpY3ku
 YXNjAAoJECZJ5ijF000FIYkQAL4x6yQu/FZfI/aaCy7O1gr2B03i2yvV2GaaOaHY
 gAmt40f3DzX9AYk/ISLWVB9zt9wEdt7S1Cm/DUlX3lfVfi5I9eEM9l3DDsRjxXz8
 slgbIR5Rkfx9wDHaQ0FUPE/m1BLFArzyr16ek77TDxzQdo2jfWQfzfgfUGsIEUSz
 VmqpJTExPfsxPW53I+vUhtQfrglnCtFr85A/CtYeq17qtKIZsUGgrWGqasJB3Dg5
 u+tDJPbfbwq+ipu6DKJctt+E74mKvLskZAqq3aWtYWSax+xPBxAaLYLeEs3o3H/8
 qxsBch9/C3TeN5CJKOtcMw41nq6cofTCBCEucsR25pjRGexmmmtX9boBBqFC8JXx
 MyFWvW7t3lt2iKLEt/4FiQ68spB+VsLZeSTBt3xXg3yqRaMfSoJ0AzHegK6O7iz7
 eFwWIgAX/129cUfJ/KAnvShtNrFZg+T0p/0w9nMh3dtOj/YEn6Kzi3J5+4ATlN57
 ln29VH80238RjudDiHbDRNEaBQnBYKnJp0nqyK9yhbx0VeeP0dFqoQk0JmPojCm0
 xixLQEzBoO+vDBOBZfBtqIfeV6QwTDdEu/XcAM1ka0eJxIxnyIs5hbkoWjpbH4Yo
 Rmj2AIEwwNOUFCov2c0m4Sakl3qO9IJrggQPCURwbxWU95lkVEnsMWXDXInUS92V
 g7XMiGsEEBECACsFAka0lwsFgwHihQAeGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9j
 cHMucGhwAAoJENK7DQFl0P1YrskAnjIDlGZV152iILDR4rWOffMh9UE4AJ9acnJu
 H0f+7Twsx+0kZLVarN6+eLQfTWF4IExhaWVyIDxtYXgubGFpZXJAdG0udWthLmRl
 PohgBBMRAgAgBQJGAcSkAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQXyyE
 oT62BG0dBgCfccJy3a+19YjynymN8l0Qym/hcaQAn0Va5OryzscQKFRaiSlgEnyl
 C0XdiGsEEBECACsFAka0lwsFgwHihQAeGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9j
 cHMucGhwAAoJENK7DQFl0P1YBrAAoIkmja1bQynop5qJ8K9p8rbCnj8UAJ0SqUf/
 01aCH6xDxGqPTgwY3QusGbkEDQRCwU/HEBAAhl9u9dVzrISpDQv3tT9nQlQw6AW6
 4uW6ZXMprO9Abp6j452hpC/t/LSbGonB322QpHxpYeFr6NQcKbk0I0XAN39tq1E1
 nDqNBaB3FpqFgsOlpSNqULSn1y/t7XXu/hDd/J/s7FXKr2vko5stZDTHEW+9oR9s
 8vEVWjU8DAHltY7vIsHUEZwebotIbGObfUEkiNLoG/aP+1Fo6Gm7HyPO66oUtEmP
 vnrFcfGO5djvc0/3jxKNvpjdRO8fFE/B1996M+DFmevQbxXTupQ9QCY2Bc3sT4Ej
 w7hBB1Byo6AbkcfLn2A+Kua1zSn8jdQ+BEInCpYoOqfyNjY2RmLGX3iSIiDeldUB
 saa6E0sJhmR4PfQ1A9q31fLTIgw3Lnk5cWjIFIbxV1775B9JLNUKk70mGN0afPlT
 0HUd6irME2yiASJk/pYC+O3aGYxQYfDCxIgPYgOVMyYCXnfp6OcvhkACiF1+0S/z
 XxZmEP9WVR8zVKPC0tXxcw6k5nmcwe9pgNABrUdWvo8KifN1NNkZB9+ZxAs+1wln
 DZvh08X6o6TjWOh8123R1G5gfPEH94huiQKZN70lpALI33vF/M9W3C/jzIZBMXLJ
 +bSIbj3oSSM9tNWni8mKBMUDuTGKKqaUdSXC73YP/BoJ34KqRsmhRMhBBBvvGfwK
 2sBO2EoBSFXMzGcAAwUP/i8dNzyBAZrqCQLU0/LL4uztlpIenZT7suFjBmX4ntZl
 9QQndVBeMF+YbyrdO/0tkpeu3lz0exJt4g3Zao7K8hCqxUTPS7+QExTMusAiQpQv
 te20zvJ2DbN63YXW3EGgBPlAmPQjtU0duzxa1dq4WHQy0dbBgBVWipMGBKpYj4mZ
 itIMLBZYDVOQbb/0NNtYc9OJXZtpffw/txiPbkdbYIkm1UQ5uh2uUI/N7bswhxef
 inn2ZHtMh7U+8EPXiA3V/Ved5gGjWDddt4AAYFDasKrHeb133kn94hBfPd/eyHJ2
 tPMvgS2XBdhg5/rKpbL09YeuZGoW1QSj9a/1dE+5s15lhqCB2a4xA3Kyr7XWwt/e
 ZFBK55Sk115Z+Dt6Q0ZipXoZ7reKIdeZElM4IRR2GyZLK5W3TmcWLDllboluD5nX
 0FI/LLazZJzTEWfMb8F5WvzyceQSsjc3Ngdt+alWYyIgGqXhhVlnUlCN+9R2/+Kh
 e9/ftBkqaaKph/O2+KImxJVgU1SNAEfsddDkV93sUFTpQ731l+j/1Oj+yopuR10k
 Ny1npFXVkfpUEn4r8dItKVPm6AtI7UMwR15DBdNSDA/v1n12M/koGOLovF9IZPTK
 88hphpkHpVreSixBSv/KHF0mUeSEqFgtGNKbZUM+5KyO0I5jYMKpW90dtdHs5QD0
 iEkEGBECAAkFAkLBT8cCGwwACgkQXyyEoT62BG0ivwCdGnHCqBuQeSM/FBOB0h/f
 01jfP2YAn3DLpgqbfVb0MZfxffpFg3K6fWkX
 =jGQA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.129. Erwin Lansing <erwin@FreeBSD.org>

 pub   1024D/15256990 1998-07-03
       Key fingerprint = FB58 9797 299A F18E 2D3E  73D6 AB2F 5A5B 1525 6990
 uid                  Erwin Lansing <erwin@lansing.dk>
 uid                  Erwin Lansing <erwin@FreeBSD.org>
 uid                  Erwin Lansing <erwin@droso.dk>
 uid                  Erwin Lansing <erwin@droso.org>
 uid                  Erwin Lansing <erwin@aauug.dk>
 sub   2048g/7C64013D 1998-07-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =5i3W
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.130. Greg Larkin <glarkin@FreeBSD.org>

 pub   1024D/1C940290 2003-10-09
       Key fingerprint = 8A4A 80AA F26C 8C2C D01B  94C6 D2C4 68B8 1C94 0290
 uid                  Greg Larkin (The FreeBSD Project) <glarkin@FreeBSD.org>
 uid                  Gregory C. Larkin (SourceHosting.Net, LLC) <glarkin@sourcehosting.net>
 uid                  [jpeg image of size 6695]
 sub   2048g/47674316 2003-10-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD+FkxMRBADL3ErUi1Ma8ItiZAyif8+XF+sjNQkEzw49rLGShJhVGWqRXbPT
 zGtTkyDmvhWXx0Wo0ogcEZPuKG8gJyTvrDktLVeDus33zNzemuBVZWYyvdOAA+6e
 3kDIodoFC/ZjrdD3fFO+CyisIKfAee3xqX++izsbxw5BRZ0ra0gFlcVcnwCgzkdF
 I6KcvzNUso6rxD7yaKXAY+MD/2OpMpMIbUDCUh+oTyV2WZsEhhZqlg1L5omSnzM7
 D8weSSedaLXyfxcrNhvuhJ7pX2sTccIWwmaDZ0cvw9jK54hZuBs+GdpglWIxyKIN
 j+V9rQdZbpFk2/36LpxB/FDC2r9ZrQYXSEghl8gVKcFYfPgayvhZK0qSbux8LPzV
 mDMhBACn+e4vBMZykbTGaCT3GvFX0uj/zu/gm0WrgLjg0K/aDPuF3CF63FMX7O36
 ui9WAW561UPEq8r0rpZCCWlUXuAsI1vaVrGn9Qp65LmBaVC102LlKGd1rULw2wOo
 LUF1zuHv4E+kftv5caYD0uY18ZA47VKGA2iRElDvPT3gs1KJdrRGR3JlZ29yeSBD
 LiBMYXJraW4gKFNvdXJjZUhvc3RpbmcuTmV0LCBMTEMpIDxnbGFya2luQHNvdXJj
 ZWhvc3RpbmcubmV0PohaBBMRAgAbBQI/hZMTBgsJCAcDAgMVAgMDFgIBAh4BAheA
 AAoJENLEaLgclAKQhNcAn3vHb2b2ar/sCchPl+lR5KPI4WaIAJjp9HHUeEUIJ759
 BxRYO1W08nv/iEYEEhECAAYFAkg/sKoACgkQJqR8av5thQ8htwCdFGhhoo6q6UOc
 tmLIunGOgQHpK0wAn39DnvAi22Xj8ed96mjRNmyZNAk1iEYEEBECAAYFAkg/TK4A
 CgkQAklOUvzaV4dcAACffajzObxNZVd/VC3rCd81XsK38VwAn0XTT5jNSbZRIi28
 5WjLpnGZ9tcy0dl62XgBEAABAQAAAAAAAAAAAAAAAP/Y/+AAEEpGSUYAAQIAAGQA
 ZAAA/+wAEUR1Y2t5AAEABAAAAEkAAP/uAA5BZG9iZQBkwAAAAAH/2wCEAAQCAgID
 AgQDAwQFAwMDBQYEBAQEBgcFBQYFBQcJBwgHBwgHCQkKCwsLCgkMDAwMDAwPDw8P
 DxEREREREREREREBBAQEBwYHDQkJDRMODQ4TFBEREREUERERERERERERERERERER
 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
 =VNnr
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.131. Frank J. Laszlo <laszlof@FreeBSD.org>

 pub   4096R/012360EC 2006-11-06 [expires: 2011-11-05]
       Key fingerprint = 3D93 21DB B5CC 1339 E4B4  1BC4 AD50 C17C 0123 60EC
 uid                  Frank J. Laszlo <laszlof@FreeBSD.org>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQINBEVPgQYBEACvR8zsof8gLi7pF4331BIVluP61Z4ICzkg2lWLB0Gj1feCbBcA
 neds8gqHJ7vxArQeYTBV6Gefk4mvCecxo2LGFEcsDuns2X1hf1pXz4AKvtYoVL0e
 ytW5s3bRdxX+gekv3KxVQjv4tJU2surbW0Hv17Z4m4ZbRfn17dzvpMwtiZmP3kMX
 N0qAeBs4MZxmWhfYHapc8du75XfpvvD2W4I9VBJXd6DLKNksjq0/Ih3Ygh4kEVxH
 6xQT+lL+6yVWTl8XQpJs3u0OPpY/dVjI98DaZucW/Lkh/+uxZm5ndExi4bFJ40rY
 KfqCsbGAYPOj4HKDkcgNZu+MbC6nIuIuh/eK8ZIpSlSdkzJ2r46wOBHLUJlJoxH/
 P4Ly5cXu5lUX2Mf8/HahPSY++5xIoSI1mpqruJyQZxhF4J56X1Bn0BnMmFt+uXF7
 O8bjQi4XQJBurcSkAuBnTQlohuAXDfIqeGqqMN6iDGTGCOL9R5WZ6nasyDL+qPA5
 WK/ooxINQWPWbTikYb3PZK7v8ABBj6TYAAGxAYrly7boIVKxYUFbotH4Y8dmXUEr
 p8Hj+tFZCk6AKBn/lCLsM/vTs0ylaSHJOhQc49fj/PETGSQLVjd8iH0l87MfLd9i
 iLnd0m/Y+ecCobgQDGnDQiFqvsJF6VI+/bisOJiE/HdOyo9j9K3jJ1l4gQARAQAB
 tCVGcmFuayBKLiBMYXN6bG8gPGxhc3psb2ZARnJlZUJTRC5vcmc+iQI8BBMBAgAm
 BQJFT4EGAhsDBQkJZgGABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQrVDBfAEj
 YOwJtw/+Pe7qOPCqTUyi+w9k0829sinZIkLxpqJPSzzYaHQ1QGIOg4wO5yCER49n
 Sp7V/S1cNKXTIR+YU2Pf2dj/s7Ot6bRXl9dDnUgMjkvNEEIO6a9gazZSfD6+5ECL
 DFEcJ6n4En02dCjsZQ3uR9DITAZcd/Y3Gczaplwd9LHpUoh/nG1Dj02+6fB0E1wQ
 ebm518PDvbCaQvggYIPc8DvS5DO3GSRLQ64a2bILYOP1UXPGn4X/0yoayieyO6lD
 HFA1gVCROtgG1II0ylDWH+Klp4nAyRcqoYfF5kHWsvQS9N27gf90F0XEALjxCCEu
 Osy4rtDvg1mU1AK0eflyZImJBFfEOXZrEM2TYo+H5X1KLEMlCzgz/5MoOQ3F896u
 K1Rb95LuF2BJOJsnYbHTEURwloif0U5VIbuH6s37bVjkXDbHcQo1UGwQM/v6tPaG
 YirZCgh+NpKChuO43XvQTG7CL21qqten+DOh6MBPtBK9TeZIeuGPiUkS1WcCwRbp
 QwmK2wZeVaZKReqLJO0QXq06dgd4iaiN7W8p6HZe3LYbnR5d8SWyPp2RQxESOOF7
 3atOTQXB5hn+pXuHpH1qKK6RkiD62pMd2RgRJlCdKZXM5UKjpAV7w/k15qiZuZg+
 N0Jkod50e8O7CLTZdXTTYpifOkjdnycBY24X1Ra0IqkTC69zPrs=
 =xm1s
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.132. Sam Lawrance <lawrance@FreeBSD.org>

 pub   1024D/32708C59 2003-08-14
       Key fingerprint = 1056 2A02 5247 64D4 538D  6975 8851 7134 3270 8C59
 uid                  Sam Lawrance <lawrance@FreeBSD.org>
 uid                  Sam Lawrance <boris@brooknet.com.au>
 sub   2048g/0F9CCF92 2003-08-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD87mDQRBADpSK4q7J5JpjHMPdlp4ieo4jJR9V63tvptpBOAk/nuhWnY3fpu
 Z7pcxOy5I5hZDIu2kn2zkBv4CTsn9yxdWgJaSKU9nQMYpfFdCnajo0HTwV72+7eK
 u86VDWZeWuuUIiHVNBUILClbOadmRFDxuCCjyE+V97o4CiUu350M28YdBwCg6LE8
 dpO9NELy9LJxyhPBE51iS4cD/2CdsCXzmKaFTa+w5fCOSBzNv516qY1GEkNvmDrD
 e3dgeyxaembidWjjU2vqOZmWFP64jgayvyFZChGMlRab78GKXH7DIGGrXWp9v7B9
 JjCqDyuX3NGaxCDFUNJYR6nt7Q93sAT85oAV9EPeFFEx7Ksd4C1iKlGlohGwleb5
 TCngBADX+A5DR9eI9E8loh9NmT4HVzvjk9kvk/vq9i0MqxgcEBodgRPibVKWTWOj
 MR0T+3qOzLGiVjIL2FzVF1na27hGJmXupxU4dWoKVGR85JYNOoFBNuR2HZsim+iy
 sX0gK6ejsxVhhx6Q+CQgCQ80TzuY/dD2qFuOGkda0P9Ro62yt7QkU2FtIExhd3Jh
 bmNlIDxib3Jpc0Bicm9va25ldC5jb20uYXU+iFsEExECABsFAj87mDQGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQiFFxNDJwjFmBaQCcDJfb0SfPgEimiFVhsQOJccxJ
 F1UAoKJrgMOoY10RAqM822JzOnn9mGXutCNTYW0gTGF3cmFuY2UgPGxhd3JhbmNl
 QEZyZWVCU0Qub3JnPoheBBMRAgAeBQJCWzEGAhsjBgsJCAcDAgMVAgMDFgIBAh4B
 AheAAAoJEIhRcTQycIxZWoEAoNefUsJBBCoZSmfVIPEh4g1oDmOFAJ9H6Q4/hfh4
 hFTLxU7p2bLgbdjGHbkCDQQ/O5hBEAgA5LFaiwqsnyrdVB+Y7S511ZPmQOi8UwfQ
 04PIWyt9a1MwGSYdUpzGAieMLe4KG6olMlLH0X/qxkVjbukwPyybeN7RNUZE1DD7
 KGbVOWpyQHhAB4EPfzRJFYQEmT1x7tk0nVbF7emuK9iG+Z3et6Io58QjOgyEMLYU
 UjwzCE2NYjJmMLEy1e+icfEkOs30s8XPrus/GNffVlsxmHEzxtsicw+AVnlrjLtG
 xZ5DsNRqJM14L9X5qR3O0dq3BnKGZPOctIF6bRv0AC9lX9kQ1saFqv8iEHoHZ2vD
 2eIplYu/bviD+lI+w6zrq/KgNHQ1n9ngzs/N14lN9C57dHTS7U9nJwADBQgAhWSk
 YnYr5vUskZgVmf0joVgYNBqXIBKo3qXx0DYxGOT18EbKhtSYCar4Uhjob9fUhQop
 nEd00GQVZwDTL3/STCXUUSaHRJhK9yCwgvQ+/q58yW1JvMrCA6uaca89y9DnfWxv
 0lFbOdLJJQNrgLCyNweLhZcEjOSTQO6EZB5OX+z4Dgfxd/5DKWr19JKw54Qtus3s
 9zZhVoQoXzWiDlYdtuGUjnVQvycegOxwjFN/TP9IQpQS8HFMfEu5GLTbRAQ3zirS
 W4FtGaeI7cUqap6ot2BRd1prAXyThXHxYAARaYib/xvCLRDTfXCHgJXbqEiJ72Yy
 FgGYqFTRrTTgxiXo9IhGBBgRAgAGBQI/O5hBAAoJEIhRcTQycIxZLQgAniGrL6cw
 +rQG5xLeJ6hrbllYV+8cAKCmIpsp54t97HWvJTKN9GhbpQhojQ==
 =iBxM
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.133. Nate Lawson <njl@FreeBSD.org>

 pub   1024D/60E5AC11 2007-02-07
       Key fingerprint = 18E2 7E5A FD6A 199B B08B  E9FB 73C8 DB67 60E5 AC11
 uid                  Nate Lawson <nate@root.org>
 sub   2048g/CDBC7E1B 2007-02-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEXKYeQRBACVxgl1l+IwFK3aZ96X+BHzeUuGfAAWSqzZuJq0rVXhUU0KnGy6
 r2HLJKwGlSQ0tP7rsYy34fDZy5BB1JajHNUIhb5SJFZH3VltQuZ3mnaLWJajm4Q2
 c3TRBVVFcm4y0x/QiCcz3JvCUWHaPUUWlpbrkt57O5NTVlneOtruZtYPwwCg+3Ft
 WjNU4ppXEbbsLHsIri5gPCUD/2e7RFkq1KaaqA0wfwictFgxuOZX00Do1kIFfoE6
 0jKSxU3P8E01H68vZs8vGuVOLVE1pXoWoJa68zVOWkLCTE1z2U5YJumZL1mDRRHt
 VfqlsaHNBLIRd9qAZsj3F5aSFu1/hCOiUkgLWQa9e/BAv76L+mCIJ+g5bU0YTEhx
 XoFwA/9dF3JFdQCkrzbhS9/BSjEIXDCl7e9Yt4/6jTg14fr9Pb5hyUYYxu6i5v59
 TgSdxSFUd3MaZmH3Kewg++9oqewNEYdOu/gmx7GiSKr3k0FlX+aK7UsVDjEr55Gi
 XH5pqUce7y8bmx03a/pa0Lq5WLvPnfUaplWeoCmmAXeYmRFYqbQbTmF0ZSBMYXdz
 b24gPG5hdGVAcm9vdC5vcmc+iGAEExECACAFAkXKYeQCGwMGCwkIBwMCBBUCCAME
 FgIDAQIeAQIXgAAKCRBzyNtnYOWsEUGfAKC9mTqJd/PjHdTG0YZkBr0Y0PLmCwCb
 Bl/VHprr5SrFDBdZy+vB5GIEhme5Ag0ERcph7BAIAJKt5PBfx/CEqBDS+JkDyYLG
 RA3johtfG5HPVPOX1iFJgDLx/5ZKIsK3oxJLkkZQDBjzJgU+GcffBwafaTObEbid
 D2rtwtqfM2EgoSntvJhrP09Qfx1/MOZs4MVJbGEec9egMgFRzUSKZ2xiYNqKOWL4
 dL0TOyeLg7HQne1fuOOFEJZJtCxHAm75z6Q8deYHr7bQQ6NZuYc2qsOLjBX+M6Ig
 d+r5p3vhkeg0uUzkRR9bAmtaDT3BFfxfMG0b4iTBpDW5UQ2Cp0NG+SAEaXVCYNcA
 kKHZGTTI9e6a8AimsP1wOKs1TsE7WSLsk0Y1U6E7OuHLdmGwZygipfkUXR5v/hMA
 AwUH/jLrMCAzZaCh6m6mrJ2HYCASRSfGKAbmfqPymEICfZ3Y+FeCCFopeatMZPyE
 R6gEzHyu1hlSHV6yTfxRDV+gO6Pl9snsucJtD//ZnfNZenKsFoGJM8qu758jBA5m
 FY5bTlkySmFJYHGAtpMap85j32iA3B24VmgIZ+rE/YVQUbbkaFrKN7Crvm+PgH1u
 xbLrkjypklyo3iZZQo75W7SobSvyqnG3LRXkXsS1U1m3QWcLqIjKZTrrhbV3IIRK
 +A0rSRKXpDt5lOYIqbJ+PwwGexlgzb31vJa0+N8qjdvbbMZIOA7mDVauEYsETkU0
 Wtl5Rc1M8Qx2IISH+K3AGXHqn3iISQQYEQIACQUCRcph7AIbDAAKCRBzyNtnYOWs
 EcVTAKDj9JrwUwygZFNG+oWsOA3/ikA7qQCfQkYnj9q6E0Z21p/ZTDptic+qSEI=
 =yO1b
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.134. Yen-Ming Lee <leeym@FreeBSD.org>

 pub   1024D/93FA8BD6 2007-05-21
       Key fingerprint = DEC4 6E7F 69C0 4AC3 21ED  EE65 6C0E 9257 93FA 8BD6
 uid                  Yen-Ming Lee <leeym@leeym.com>
 sub   2048g/899A3931 2007-05-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEZQ5iYRBADg09p5ljHhIDwhH8i265BFEL1AyW3EPEOb0CyFErp3K4H7+IpG
 FeaHUrB2i4MYs2r9gAMHadBMTXZJv7ECq2AUQfm3vTKeBjVVz/N7jsEDcmH6bObY
 XvfRlp9618IBRCDdcbD3Qs0Bv4tM+e0oNYBTsOWAO+bfpHYPk5wORxq6ewCg8DWN
 J/THLd42Fd4HTfxTC4tTa6UEAMPz7iASUbyJr7//O/Uu+05MBKX8wuNdrH2XPUWq
 MwLcgEpKSFl0xjpJUMpr3eWGvAg0Vz1UzxDUvZUwbj/5nXh2olNoMH2LQY0QwXGG
 TPudevBeJ6W+UaEGCAH4Yy25hxxr9h8XI5KRlPCOjQ8i6H+EZbLRTLgOrvBWvD8B
 Ob8dBACGxoySAQP+leHIe9nrKyZ00tkNI6WPEPAG+14yiCgWLJnWKi7maIHzjG+1
 1Fz5+nyMUtHofmLvNyDA/V1e2LFXDjH3v/PcTCQON8EnHAoYmqSRAZMBMmDpU1Af
 f/vbiOg1zwhwAhdO8y6GZHcJGJjJ8lJYs151ehSS2Oa+NRCfH7QeWWVuLU1pbmcg
 TGVlIDxsZWV5bUBsZWV5bS5jb20+iGAEExECACAFAkZQ5iYCGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRBsDpJXk/qL1q9tAJ0fy0MkFt+hNcvb0OMqTRJvjYlB
 KACgluazpF5ATo+dNtJifOd8kMBxB+C5Ag0ERlDmLBAIAKOlmONAuOtrVXvRw2gr
 wYNA4bjQrv44PLCMGuicddC1S6+Ngp+F2bjq43iyDk06i4eXBop0uqzkGA56pCVW
 51mSLThl5q/1dixiLDOSy/9Scuei57KuP5MOk5GpFBU/OZv0R+1ZaK+718+jI8/E
 NGOt/rZ3ZaTR94rAn9yQzVp4prVw4F7r6Vrp9mVu2qgoYKpwpfuR4nw1kq80Z1R8
 TxtUrGFYSY7nRTPI6FI6fo6BVPMAw01Xh3oKfDfrecaNtNNgM/DvkrBvZsVHu3NO
 M2yAVL6LP/Sjv0uF1pK/WjP27hzvO3yha2KYS3oBu4zysyVbi7QuFvm5FmF0mKik
 JosAAwYH/RWHzWWtpgXdbMUrPxFTmFhXCVVuyiHG0h3bMZigKtAMcjjYRMenhiRm
 e5Z5si4VzzpaaZaVY6T7hmzM3cran4VH6dFdZy6qhBFzlJphpLwnJti/FMrF2CdY
 1kthUC0fxeEDPBkYvV1izBrPQ915XYXuXdJjbk/ATqeIKsqEHWSmTCLcLLtWn9Nt
 X8DWU+GHMbaMAbtEfL+i8vg0WIOeSE4tlQwIkvSzfXh6Rysr7NtOuYzADD6ORRkg
 Q9K802n7IYXqWhZTWKijXpf+n+NzWdXC/1UZambcfo1gcS1fotmrO3Fmq3+FgJ/A
 YPmudGbHwUlAXVfJ47Atxggoe0znf5CISQQYEQIACQUCRlDmLAIbDAAKCRBsDpJX
 k/qL1tpnAJ9MKjKh4P+ePXeQ+yIwfPza+MnFcwCgvVONrkQ6Byi+tZ1ilTlKR+8+
 xnc=
 =XiOT
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.135. Sam Leffler <sam@FreeBSD.org>

 pub   1024D/BD147743 2005-03-28
       Key fingerprint = F618 F2FC 176B D201 D91C  67C6 2E33 A957 BD14 7743
 uid                  Samuel J. Leffler <sam@freebsd.org>
 sub   2048g/8BA91D05 2005-03-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEJHnP8RBACRTtM4Fb2oRITEwfTLIKSa5Mk0m1A7Pitd1qkjtAyFCi5V6uF/
 2FXPP3Ux3M8xzrvkQNnWkYvGh5MSgkkJ0nszUvh63m5Lp1Yr/EMQr03v1HfqGKF2
 SALv7eVJ3XHEEGsYq6KOcJ+2n3FkL6bwGXkXSya85a+EwQ+/aBhpEOEKwwCgl4N4
 oTMEgh2Z06ZkMJrqbf4/P38EAIAN93nvAN14v41zw25b4USFzqH/JFTG3utAVxiB
 NgTEkD+OkktxJFoTrZxfxoU6Od4tl+yIyhKJgj/QlH5pA/mpMeaXh+TQ0/EQAzml
 d/sw7vXV3WJ+zXIZeh51yuHBY817e7izcnfmY33UrOdf4DtcplmUrfQd1eVMSo45
 K2b3A/9a0tg7NhdfkL06b97oyKb0L8F92Q1sO6J5sgsEjNrUVrFnNU0DIDgbi/0t
 oBpnqIDa09hhBJ1XYcxU4KMxBLpuIeuk2cDCUCVeeEDmx98GIss3hKO8YWzB40y6
 7vtdh5lveaNV4+CA2xL/cDXscl+poRQA5tR0efR16jckEaEcVrQjU2FtdWVsIEou
 IExlZmZsZXIgPHNhbUBmcmVlYnNkLm9yZz6IXgQTEQIAHgUCQkec/wIbAwYLCQgH
 AwIDFQIDAxYCAQIeAQIXgAAKCRAuM6lXvRR3Q7whAJ9e9jjfVscKVirvWN5IM2j0
 60Q50QCglAppekJH6jWStTwoq1EroBFPKUy5Ag0EQkedCBAIAKmxNvJW/W+PrE+T
 JjKw6dbqUqAUNIGWnr6xgL7KYBpx5eo0XH3RCVzvRSfboA1+nXauTn/FhOtWMw0J
 dkHrMQhxKSDhWOxeftKuiRiVLPXxF7PX0JMOadxOuqNSt1VWcuTxxBB2wva2Rb48
 JscdFbT2u7+PHNarDgUnEobobdvbzh4F1ACaesUq4s2y8jH+YJTaBqJJuZLjLwti
 C2zv7skf40I5ldud4/7ARGuumpjTrqZFQeQwPKX975X+jw5SBUJXA1ckKcgTp0s5
 Yk+O5+yUkt6yzDO+CAYEaZ/xfpOhwmqSIXtdo+ilm2q3y5l+nyEVidYncRWRWYyO
 iaXOJdcAAwUH/0Ixl92WezOXBqMrKVaA+abCN6t6n9zxSnwfVo92Vlfqj8Huz3Hk
 55e1in3P01xXdNKnapYNkCg70WbtNQtCh0nJdGGDEWVqJsjiqDDMYa7QLahV7HPB
 RyOtoAXnTWPpyk0d5WEXPLJ3vPjxqv5wKTmav3JcvVahSVWi2wmWAgfQJXYRvCU3
 EEQ5KqtCBrQNdBsSRnzgDsMY2kAh02VuGTbkVlQz/rI7HAYEOL8SoR489O/MTE+b
 5HtUT70rk57/3jR3QtiH/3Q7OqnPh/ATjO+pnPuhfqHiQWLWRDigJNheH/B+1Hmn
 sHiSWrUmlaI0bzyIVW4Xft3nu/wH3QVSSWOISQQYEQIACQUCQkedCAIbDAAKCRAu
 M6lXvRR3Q1SUAJ45iX7Ka9rb5pwAmY+fyfpuO4qgJwCfW4VAl3+NLCCP4A0Y8wlb
 UtEtg3M=
 =kR9a
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.136. Jean-Yves Lefort <jylefort@FreeBSD.org>

 pub   1024D/A3B8006A 2002-09-07
       Key fingerprint = CC99 D1B0 8E44 293D 32F7  D92E CB30 FB51 A3B8 006A
 uid                  Jean-Yves Lefort <jylefort@FreeBSD.org>
 uid                  Jean-Yves Lefort <jylefort@brutele.be>
 sub   4096g/C9271AFC 2002-09-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 3bMQAJ4soo0qCyPCVz4Y0Ly5jvYWToXt0w==
 =kszM
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.137. Alexander Leidinger <netchild@FreeBSD.org>

 pub   1024D/72077137 2002-01-31
       Key fingerprint = AA3A 8F69 B214 6BBD 5E73  C9A0 C604 3C56 7207 7137
 uid                  Alexander Leidinger <netchild@FreeBSD.org>
 uid                  [jpeg image of size 19667]
 sub   2048g/8C9828D3 2002-01-31

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDxZg2YRBADEFCcKKsa/VS6z7aq+04C4rJ925MPEdQnGo4EVKtRv38AnqUaW
 M6w2CJuDQ4iS+FL+nWaSwRnfGufftkEx0mSum1FMXQQ6+buC11LkgUYcF2f0wlak
 HGr6Vo48RGz76Vi7u5tcoEaLb6uYjJfOOAzYX1aOv/T+qeGVc+JJG4LhNwCggBHB
 1DpYSy35o1I7EyVufjruQJkEAKp11sHwuPcc6Q4q5hSKG3VM5TJKHwRkdoRxgfjT
 UJGecH9GA4Td7vh11dMyS22RnFNS5hcCdCdoe9PkDEvwp+w30pi8uNOFmpCF9TlA
 FRgwFC9pq6VveHd1PHWSRgiTFxeTXgJ0Y/zCZSitURCtlqMXMg9qnUe1tTAF99yp
 zmQZA/sFaFGTLzCbPrUY+2q13b5PSQsv2D5FHFGuH3FL/rIyPexKmm9Fcs+LAQM7
 rx94ipa0OpwapUwCFPg6zNqQ+67JM4KCzRsoSQPsVtCNNcEODQRMXqx6DK1tYUvf
 ymCAmXUqqqVXARyDh954uBqTfRSASsqPsVAxtwmVA7rceEcIfrQqQWxleGFuZGVy
 IExlaWRpbmdlciA8bmV0Y2hpbGRARnJlZUJTRC5vcmc+iF8EExECABcFAjxZg2YF
 CwcKAwQDFQMCAxYCAQIXgAASCRDGBDxWcgdxNwdlR1BHAAEBQuIAnRn2yTAmJACp
 PB9Nc1WjeQpipeDAAJ900VXCYeRbwhfldpGMbiGlkj4Ly4hGBBARAgAGBQI8WYOm
 AAoJEHninGCwBj/nkIMAoLd0ACBW+D47AAGAHLvbnoVOUcysAJ48WGg7PqFVvxq5
 66+s+xtIsYOK1YhGBBARAgAGBQI8WsZXAAoJEPSMqBtpqFhziTsAn1jBAxq4biI6
 ZMO9tPDjXdgGWCu9AKDW3KmsBTCEZomtitZtbKTPiun6M4hGBBMRAgAGBQI/jTT0
 AAoJEGx2F4yg7ZgtPz0AoMP+vntzMwK6UNZiXNqnicGBn1fRAJ9gslYqStRTXgv0
 GytGmbrqAvKUt4hGBBMRAgAGBQJCNujQAAoJELNT4Gpva4J6gesAnjrWpLWWUFF/
 Yt4GUP7Dd2dCqTNyAJ9St58kCHv3XQPIOWScicMrGTebBYhGBBMRAgAGBQJCOoAp
 AAoJEOMv2scF+1/ZKEcAoKssBpCFMaSAq5VWLCO4ggxb6WodAKCv2hiiV3dHswxe
 I/l25PCDATjTSIhGBBARAgAGBQJDpJAeAAoJEIXUUEVraRsDpIcAnR2iRPpS1w3i
 SCqV5/5+jJx5SyjtAJ46/73g9swXtLEIUgl7z+RGg1/IQ4kBIgQQAQIADAUCQ7Gf
 MwUDABJ1AAAKCRCXELibyletfH57CACMkpmNhmUxfx9Bp9ifKhvZ12ZOvv0wYlBD
 3XJsXEq4aHJ+Bq2GmQLyEFX8ryV0HwSl1UfDEVsJ7IRjds66Wmo218eZp33tHMbq
 02QvrroY6nbaPHXpydhAaHmY0iZcFtUJXRa9VqiAUwTVlKbUkAL0r87RBTxhIzDq
 xaNZC+MTxUJphyDQYnJ8OvOuHeeMRhLrwQZJEevtb8JR5CzyrjoIn351ff86hz7R
 PsThwMXTMqT9T2w98GhuP5UYRp1bFNCbAlWJwgNiLKd+6AXdyQIOouCzY5tnD1wf
 vPB1v+wTi6KnU6E2VsQ8yggFcPaPovO3uKkRRAkATgN/meGtDBYhiEYEEBECAAYF
 AkY8hosACgkQ524iJyD+6d0B/QCePfnQ95VTfwRpSMHu0GxbWi5ZUlgAnjwAONqq
 L+iionCmk3WCHjeFvv9WiGsEEBECACsFAkY/XkwFgwHihQAeGmh0dHA6Ly93d3cu
 Y2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl0P1Y5VYAnAjxx4bU+zNPpIRO4QiD
 gpYZ69ruAJ4gdxhkupzsuLeXEdoZjngqbtDf3YhGBBARAgAGBQJGSaS/AAoJEI2O
 PuD3c7zgVlEAn1nKfTF8E16RhQM1cqV3YU1odL9zAJ96gPRqe2GHv8yEQLtJfTsz
 NkXcndH/AABM6f8AAEzkARAAAQEAAAAAAAAAAAAAAAD/2P/gABBKRklGAAEBAQBI
 AEgAAP/bAEMAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
 AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/bAEMBAQEBAQEBAQEBAQEBAQEBAQEB
 AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/A
 ABEIALkAjAMBIgACEQEDEQH/xAAfAAAABwEBAQEBAAAAAAAAAAAEBQYHCAkKAwEL
 AgD/xABLEAACAQMDAwMCAwUDCAUMAwABAgMEBREGEiEHEzEAIkEIUQkUMhUjQmFx
 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
 dXwnxzx0crfv30hhYSiFRJUGE/v5JXXClwxj+M8LHsCKHZvYWKlyWVdNFIiKEQ5b
 ZCdxLLuyFkIjGWIQq7KC+AG5fgkAZkMMSmNgjGRG8MQ7yOo2kAHnau1do9oCkYb3
 elAtNskO+Z1KOI22oiHeZfB3KWUv/dhNwIBLPuO0hgkxj3dgf6QbmWU9NDF693/m
 uPMvjg6eviuaoKVsv/ZefAmNFSSONVONkjNglS8wVFjBbcVLRpuk2BHO4jGz3N6O
 IYGdg4p4o1kAO6Q722lmYEqYwzODIBtPbCEvH7VQn0Gp4og8TZnITvlyB20fgDB9
 gZ8BgwwACEYFQA3pR0NO0siGQOwQllD/AKfcvbjXb7VbJ3MXdjjCgRl1YlHc7ssS
 Ne9pHnkuLY3T6ktrlUUEP1Qn/wDDv2Oer7fDDfUzo2fXf069fNK29DLV6p6V9QbL
 RhE93dqdL3GPhS0Q3yVO1tqNE8m6MuzIkatkK/DJ0/S2f6f7Wi0y0tXXan1XJWns
 hJDNTXaehPd4BZkFMkfOAMY8Aj1uQFuhrIJlkiSSjdpo5GkfajJIm+VQrAI2935I
 BUEluZFwuFjrnfeo30sXLXegdJ6h0L0v0dpnqV1YQ6w1FbZL7W181X1J1W9msllt
 FMRBFLFZxS1TSSEy1BqIEp4XRXPqm/WmOUtHpoGbYz1JGSmWkIzQjCMWUp5GRCok
 pNkQBR1//BrU49N57rpZMU8m3QuSEIMItmXFFueWePFCO2V7sk4Rq7VrxbRd7tWU
 Vpip4/zP5SRYgzwthC7bU920EIS3KqTkecZPqLvUu108EMtbWqyyVgkYRSNg/AGG
 IBzxufg8v/CPFd/0n/WlrbqtrKq0Zq7Xtl1XHFOTT6itOm7tp6J6WKoSEftCmqqe
 OjRO88MQqfaiySRo7BpFyxv1g/Ujr263+o0VorUt0tdfU3Q0SXSlpZjWiNN8bw06
 1EKmn4wTIY9y4UKPh8zlHL/V/wBK4J45wImTMxzRhii44y+7kjkhDKBFSmDIl3Hk
 v03DW6X+gPMcKTx5ZenBjyYJZcuVltMJPFlniZSbkMMlbSzg8OR1dpNslXUYjEOG
 JKuPby3tbhvOSQRyCQCT6pX+rvQd3NwpNT0tLLPZamJInq4w0kUM/JCTMFIiZlGE
 LDBGOc8enovq3iw3tqXUzdeam/0lRDFW6unutZUWU1JC5kpaL8tJQ3Ggj3fvZAks
 EkRba7cL6f8Avdvg1j0j1PQv+Vu6y2qppcrFJS1UtVTU5q1ulNSfl9rwiURpmGRG
 aoZ+yhjR2Q95cPk2o02rx5TLjlkjHLGUXHHZlvc45Rm71WxyO+XW0Eug+ezh9QaL
 VabLicOXZky4TC5Ms90GgyXhxoDcZsSWNesqieHg/ss+nVuH4m71M1JJUGydBup1
 xSZQ5/Z7Gq0xQPUmPekc2YKyemVKhJYQ86yBRIkZH0hKigTvSZQodxkjQlAIomRp
 JJZn27WkdEEMccUeQ8oAAC59fP3/ALM+bD0Q+uOTUnU6KtslN1v6b3zpH047I3rU
 atud2tGoqeK77GElFSV0WmnpaCV0lR7jUUyTRIhMifQtNBM8jRAbJFE3caMntwLC
 UWGIuw3M7OacsF2L7/e4C86Zi8wwa2eT+nnDIQkYpmNJEMkSEWJVx/J95S23IeYe
 PM31J5XrfLtZgNZp8uA1Glx6jTOWE4Rz6dnOMMsGZcoqSjdDZaF14bOote6paTDJ
 uV13kEO28gBE3rIyyltpbbtYBCCcuGBLU207QrxA9oKPcQsay7aqR3YknfKrRhIj
 xt7kxbhsFz6yiCsuGbb+py53SAZ4YjBI5O7AYke1cljgJ2opmIYIp5YKxZQoXKls
 MW4DFEb+7J/9oQDuyZVbYu6TcgeO+CFG1V4PjpXpKK2d/r56/nni6uv34a+ptTMI
 w4wojMYjJ29yNAQkSoEcLz2pGI59uHPJHona1RREKBAParfv1aRySoJww/hBygBA
 IKnPp1pKNd4YAhTs/eFcARsezM4BwuAkryHyu6LJc4A9EElDCSvdGCF9qqGfahZm
 UMy8Fvdk555GfTcClLip3vjuKu+Wo+/bV3ZyvDloWD3Vnb18vXzX8+54Z6204hbY
 Tuk/Q8kgy2ws2HkZio/zlFQiNQsYYIp3jB9H9EjGp7bMilTLLJk4PZIdIixxjDu0
 ZVfb7t5O9YiACt4jSSVmDOu2fEjOu6Ry8ZQiPaB+7SOQo4JCqc7mYgg+pI5CaKmk
 YMZFrJq6eRlVGVamoqo4pTIu8otIJFSNQinYsSlOAZzJ97qRRX80FX883fAtdJ4l
 J1+67/s/Hse3fI8c+DOnpSn5aPgFp5Gwg9747ky5kJAUGPe7vt4bCIQFUejWGl7n
 bDqFDNHUO28MV2MrLGmc4fcTmVj8OQQwjHoCJ0VYqsYnUB1pnxl5MplnBVAC4kPa
 GxDhAzo4IC+jyGJVkYyzQl12oCHzFBvCuYz+8ZZJVk9m8459qKCxyneSpBY8+/pI
 tKj7tDQUvCoNjMot8nJ+v2Ff/k9jrrwNo4FdWZ+cllwDtAJG3t8MzZ8ByxTc3ARQ
 y5U9tggcJIgJcRogU+5FZI2WEHtgZKJKS+wsEMih2BUbSmnUGmMYZHeWWWeNSi9q
 JD2yqlRvZyYYRJMzhAz7uFAHpaW2m7NPNL7pZJahJO2duXghiAWL3JkQxvIJDyol
 dwCEVUAVzcfTcRO4xVpFtHu3hvi6pUpmqi3/ALX/ANttHt2L2/PzyrrXS3CzXGiq
 nr0o6qlqIpp6KsrLfWdgiZJDSVdBUQ1lJOCG7c9JPFPGCjxSCQq3rIV9V30z1Fl6
 x60sN+oz2rXrfU9ztDy29NS/+Tr9qKuu1JW7a2GoqIbotprIaear7dSKunCuXedp
 R62NxQyiA9yQb1V5MDLAHD7QVVQo3FMLgr7VJUbgCKRPxGNMy2nqfYdR/k56ekvG
 i6MSV0iRiK4XG1T1CVCRdsko8NJNQrhyXaNo3VnjZXNH/wAQMBPyqGrhCTLR5d04
 Hp/y5sSVyOYbZfb2Sf8AqN4y41//AAV12HB9Uug1EISxeY4WO9QnHJp/82MYXTKM
 4Syb4xbkxg/gSujrSPSLTWjrtWX61xVNwvjUs1VVz11qqrYKSCOmmgp4YaeOmt9E
 IqiWpeQrHTygJSsXCSFHapzqrZYZes1fd77UikQ3WMVJQulIiJUk08jyCMtBlZOx
 PIhCldrSBtisk7PqZ67XGwVstq0bfr/NqT81Uftq36dp6GsjjpZKRqWmp60yqakL
 TyyJL26aWB5ZDLG2/dgUx60vnWmtuBu12td9qbDfJHqakXak/KVkoppMyrDTz7Km
 BWdMjE0izBWQIQu31m/kkpzw7JRx6Vnjk7tRnx/cyGQ9MQmR5IYrHI3ZUaSL49Se
 dZdBHGxMeXVRxZ45cn9Linlx4pwMcCTsJEYwlthJiJEjLduXa2PdQtF2GoslHcWt
 tQ9VNArCpa7S3OA08iqq9qFpTCNwO4P22KodyrkAqmdE6Ygp5Iu1BGIaipjj7GS0
 YR8h0CshVlKn9JHtVtoHO4IvoxrSm1Zo1rM8tyeOgpP3Irz3HgVCyyQJKwDmKJ0e
 JFf3JtZCx2nMrOiPTu79SdXaS0HYpo4r3qe/0Vgtk80DzR09ZdqoUFDUyRR4kkii
 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
 =H22z
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.138. Dejan Lesjak <lesi@FreeBSD.org>

 pub  1024D/96C5221F 2004-08-18 Dejan Lesjak <lesi@FreeBSD.org>
      Key fingerprint = 2C5C 02EA 1060 1D6D 9982  38C0 1DA7 DBC4 96C5 221F
 uid                            Dejan Lesjak <dejan.lesjak@ijs.si>
 sub  1024g/E0A69278 2004-08-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEEj2LwRBACdxv/Z/TqPsaxTmKrXZSOPnQca8L9UksW+71kI7YouAkbnnTyB
 maf7zCs0BDcUU6t2mO5ijJlxXe7Y4yMx/3mwGX9iWfWh5U9xobG0STcU8ET3ZQmZ
 /AM1vSL/weLK42YHxyqSrudt/oWxH4iDZFz5I/HI1DRwZMFhft3ja+pdYwCggAu5
 GwYrQlQJHJcCFbxnYUGJX/sEAJXyzea8rzP7dTUsaOYcLitIpy/eDI3vkB0aW7Uh
 JSicWASPW2erv99f1p2gkVQ0b0lrpMwPrysotfN6wLLYR0fowCWHm7hnASgohFpq
 VwB7aj0HDEHne7EIr6geSpnO8Y4QUtbFVWo9cq7HGzrB8NhwpLXQ5g9RgB+H9SS7
 SzVXA/4qPOAoJ8Fp+ZSznd46yd+dgFmVpSJuTs3g+hFolSioEkbi66fHwPMWeifS
 i02AkU8m/qiGMAXRwBm7s5jeLwQyJX38S4PnupPg8pOjZtLVYoTWaM19yuMGS5S/
 ryF5MaCGtuB72Wnsp67aZIkaHjfS4QAKo0WVH8yucnyOS+BFsrQiRGVqYW4gTGVz
 amFrIDxkZWphbi5sZXNqYWtAaWpzLnNpPoheBBMRAgAeBQJBI9i8AhsDBgsJCAcD
 AgMVAgMDFgIBAh4BAheAAAoJEB2n28SWxSIfMJkAnjxPSokKlZtVhYhAcgX9as76
 sadXAJ4yo003F9ilZw6avaThCBltR/MqWbQfRGVqYW4gTGVzamFrIDxsZXNpQEZy
 ZWVCU0Qub3JnPoheBBMRAgAeBQJBJQwqAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheA
 AAoJEB2n28SWxSIfOHYAnA9quQ97rU3eJHb1LzOTpwZVMSDxAJwJnLzSFQHfJu1f
 seG9fTyt5UpBAbkBDQRBI9jCEAQAza9XDZevfbu9BYjDESbKo38SRgyTd5/lIgzH
 IlF+9zGr2e9PH1WOIPr0m9m3LYQzkL3YiUm23UoJO7uhvWvCpxfChwVx3VFwM7Yz
 WqWBV+W27aZNROEmh5KheJACE/m6j0R6UECiRHZS/EsHP8FNG8roWro23ApNR0Vh
 zZ6iVNcABAsD/3glWDyCWMA/eX/YGPw3xN3hkENgruwtWKkK6TW6kYv94k4iD/b5
 bRsmIvGd31AM5/Qv/IQd7epXb2ovDaKvMl6+jAJb1NMCSzOkCnoqcQoKB0ed33d0
 JOVWuA34WCMZ2zHLFEtwuQkHZqmyNQcxRLGLkODo4WWsYNU7KeGHvAJDiEkEGBEC
 AAkFAkEj2MICGwwACgkQHafbxJbFIh9+8ACeNr7M+KLI/eWu6Nig8877cjrEP3QA
 n1Kfo14Pijwx26kysheLFV1jutrq
 =IfeN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.139. Chuck Lever <cel@FreeBSD.org>

 pub   1024D/8FFC2B87 2006-02-13
       Key fingerprint = 6872 923F 5012 F88B 394C  2F69 37B4 8171 8FFC 2B87
 uid                  Charles E. Lever <cel@freebsd.org>
 sub   2048g/9BCE0459 2006-02-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEPxAWERBACkn7HyvqMEJbJcf5eSJ57WR4Xoo1PU1GIsAYhdFhDOvmeWRZcH
 kwUyFyol4X3P7RyibrvZwnvc+nrqXqATzVeDHT2NhcTTeG7fq4E4a3VpdqR10uV5
 nswMRw/Arci7vuAQnmHzOYfnNP1ng6qLjA/CUizQ01WakhQeHGtbM9Q5XwCg2GEW
 H6d78/rWY2Lb2wo6cS+9Du0D/01cO9zPg+Mh2T43XdLMjnVp17jR99SuNajqJbBJ
 pNehq8yA6wb3ahZPjKtXpgELu7YI7omxhqcq1mxKvXa262aV72qdWqWoqvZzX0hU
 lOckg6Q6EO7qGvU/jOY02/tmHdzQy6UJzHB7JVsfZ9DGH5xW23AYmbD4WF8jXtyL
 Ey2eA/91IZpxEK7guIBt0FE0qMSCh5VOOlzOQkV+KtLswzEVPOWw/93wGpd/uilx
 jZESPZ70cSWuCWwY15FEFts/gs5gPhCs1h4asQI0Shft3sgQrBhE1/hg2uENccHR
 y1Af75hwezkwFkE2DUXFQqLuUlGu0sOtG+b7+IPrYuaGAB/yBLQiQ2hhcmxlcyBF
 LiBMZXZlciA8Y2VsQGZyZWVic2Qub3JnPohgBBMRAgAgBQJD8QFhAhsDBgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQN7SBcY/8K4dpvQCeMv7yFBMFOPxa8lF15IYP
 8LRYjaYAoJyIupvj/RgaM5zZXZdPUS+gro9SuQINBEPxAWkQCACPOzcRL0LbFubW
 3c8aJODeBG91aQRPz+ndMItFW6/+CW3EmyCGyaG8uxdtY0SOx0yALj4PiSj35s8u
 wqfsWFRuNixODl9lE8ihq4d5qfeiwpcAR9wVNwgnXD9boKXOOFwb70W+9pI/I4zX
 igHFxZQpndROhIFO1RLdoBlB89vV5iX/qzPKHFfmbbIkY4zvAsvW2MCly1WiEC2y
 GT5GJTFZgko5/VBFzb3VDvA0grCGGTbHK1hnfuuvouQPnbuawdSZO2XGMc2pFcKW
 gh+fgdw5Y/oQZelJKhLaL8Lz27buTz2sj5O/cYv5n7wDD/kSnb7+pd//qagox3JZ
 bGXKTED3AAMFB/42KW+FULr4keaGuhAZ07hrNs73Uw3QTTNIUYYOkSJVvgold8RX
 HMP38WANIkHtB3LBaZBxhqAOp2R5AppIPfyDrp1q0lTOGpzWfsQNQd10KRsXZGkf
 K6INVa6kpzQhNDxBUyLh4onp7hZyt9zXdZrfYJLexbxrxkP1LDRDNJJAY29LnVR2
 vyDHPrB6mmgijy07S6yKwC6iJIRoU8w4X3xFqIQ+KcA6VBhXqtqxSjk7GQnwyB7Z
 7l4Qg8iZvX5qj753w6BDEwDtXlCCbocDVsu5xcLRPwMN8BgH7XcYCwmZFEU7IgEk
 RAhqiHsjpnO7al5a+HQJi/KMOs5aDfwdkI48iEkEGBECAAkFAkPxAWkCGwwACgkQ
 N7SBcY/8K4fTZgCgiVDpYWzuROUmau+CUT/UVCatpHUAoIyg/KnHhe9PUB9Gav5+
 /KWhtyRy
 =T2Vu
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.140. Greg Lewis <glewis@FreeBSD.org>

 pub  1024D/1BB6D9E0 2002-03-05 Greg Lewis (FreeBSD) <glewis@FreeBSD.org>
      Key fingerprint = 2410 DA6D 5A3C D801 65FE  C8DB DEEA 9923 1BB6 D9E0
 uid                            Greg Lewis <glewis@eyesbeyond.com>
 sub  2048g/45E67D60 2002-03-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDyFNecRBACKn+4b36n2/e55yTfpLXS9a57gQNgx0WXBfbK9LMLf2D8otD+0
 z1DW2eclAOwJVtPftjvYP0HKFVC8Pes9Wvp6Z0sIEPpdkL2NPlUuxXUyh1b92u7n
 Bpt7Uwsom88fnn+BOPrvvPL8Arg3JBen+Jd8o9yRoABCYku8vQF6CEUDcwCgmHJd
 9hZ/kRb1rLdSLssB4VMQ3zED/0/SVm+6XV+2ObXn9FKQpCC6sMSq+PCoR9NzAVRI
 njTtkpyR0fjJZr69IN2E2MWPonv38Xg1tWJnR3fKUOnNqwiVHBQKKrKa9lGWsZQp
 TrR+ihtJ9hC626dCq9JDb1Ls7TXn9ha+d0WNuqiwugto/myHm/GVlCANhGzUuDNU
 Mo27A/46YEAMuhSQWOxgSZ/Z5g0ybgpswVePrxvD4sX2/AVfKClOYpPiNJe+S7YT
 JmfIPkpP2P7v+87BaN/uWgaFmxlhpUOIuat44w52EwwGB+K24cGgq52XncZsYTYH
 SrLitkRtt35tVdnn1v3gmDi83M8W/YunflpeJAgJC0QzxKuar7QiR3JlZyBMZXdp
 cyA8Z2xld2lzQGV5ZXNiZXlvbmQuY29tPohXBBMRAgAXBQI8hTXnBQsHCgMEAxUD
 AgMWAgECF4AACgkQ3uqZIxu22eCkCACfUuNYpGGlFboDl5FZeXlor/k/hogAnjyq
 /Vw8amjEN34PGuqBPQpMnFrwtClHcmVnIExld2lzIChGcmVlQlNEKSA8Z2xld2lz
 QEZyZWVCU0Qub3JnPoheBBMRAgAeBQJA/XNpAhsDBgsJCAcDAgMVAgMDFgIBAh4B
 AheAAAoJEN7qmSMbttnguMYAn14cqGfabS626P1D4GMcSkSagzaZAJ9LyH+vMrfn
 OI2x9+VLyaTSAvm4zbkCDQQ8hTajEAgAmuQukPFaefkzE7DTIgSDIc5vRmUHDs01
 bGp36R7f5GEmXwNtCZ+Mf+H54QSzuNh1QaJ6Nq/iYd35LA03/I7AgUFwSX1cEc/n
 fNjxqS27CAab6nIt9Syb9WAAKUKDMwZCjHBNv49CAPyVVb1aTUCJyUcv1gGSMNHX
 r2bkWpa4nIN4+rqD3hifHCX1j/2XMkmYY8NCVTY52zqO4sCbh+ohAMfYtW2yV2Iz
 z4ngppp0fUbmlGV6DVvTC1Mi61UCDkhO+TZFlE3qXeGlP5GR0SbpdQmPiI0Jpinq
 Zs43gcd2xtiUBM7HAMoQDpyFirDuyDKUgMWJrtJtAwWa4cf4Luh/fwAFEQf/dqpH
 bl48tu+REAPrjk9NWaGVqi1vv0r4LJXo8db9aGxwwAzKXDhwqHo69E6l4/Rd+hsa
 sIJE7vGNbGK+uerTg/W3jot90MqraplXHuS54TjOMyzWSSG7S6ypmDf5YnK3xQE4
 NfTYvC2GxphotkE+QmBzmeft/Mo3opVYlv3OOBqiQoCYB348rXczxEUPam3bFBw1
 wp5XjA0kqYRcUbxNE5AK9c+g6R2c/jT96EnDZDpMRCNZiAKHFLEjtHy66BiVHKvg
 tijWD0kxtlWV8KAKN6OhUpSSsCv53jsCIntNARAVENOKOV0RQVDfJgykeK+3eeNr
 UdIjAWFAWcVOEw5TQohGBBgRAgAGBQI8hTajAAoJEN7qmSMbttngHb4An37mZU8r
 E3SGCAlTJCLV1JxRDXVyAJsFBVshxisn1GycdT3UCwcJVAHJ5Q==
 =bx2+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.141. Xin Li <delphij@FreeBSD.org>

 pub   1024D/CAEEB8C0 2004-01-28
       Key fingerprint = 43B8 B703 B8DD 0231 B333  DC28 39FB 93A0 CAEE B8C0
 uid                  Xin LI <delphij@FreeBSD.org>
 uid                  Xin LI <delphij@frontfree.net>
 uid                  Xin LI <delphij@delphij.net>
 uid                  Xin LI <delphij@geekcn.org>

 pub   1024D/42EA8A4B 2006-01-27 [expired: 2008-01-01]
       Key fingerprint = F19C 2616 FA97 9C13 2581  C6F3 85C5 1CCE 42EA 8A4B
 uid                  Xin LI <delphij@geekcn.org>
 uid                  Xin LI <delphij@FreeBSD.org>
 uid                  Xin LI <delphij@delphij.net>

 pub   1024D/18EDEBA0 2008-01-02 [expires: 2010-01-02]
       Key fingerprint = 79A6 CF42 F917 DDCA F1C2  C926 8BEB DB04 18ED EBA0
 uid                  Xin LI <delphij@geekcn.org>
 uid                  Xin LI <delphij@FreeBSD.org>
 uid                  Xin LI <delphij@delphij.net>
 sub   4096g/8ED8F128 2008-01-02 [expires: 2010-01-02]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 bnb9gHFGpH1QylHtTuqRnaA=
 =Cm8W
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.142. Tai-hwa Liang <avatar@FreeBSD.org>

 pub  1024R/F4013AB1 1998-05-13 Tai-hwa Liang <avatar@FreeBSD.org>
      Key fingerprint = 5B 05 1D 37 7F 35 31 4E  5D 38 BD 07 10 32 B9 D0
 uid                            Tai-hwa Liang <avatar@mmlab.cse.yzu.edu.tw>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQCNAzVZoYQAAAEEANP5N0PqWEDO1ml4yfxXCQ+hEhaXyaGyNboh6uLX7uNPXQTI
 9veETXNd20Fu+8yuzVFJk+KmmGerUzduHLXm6q+szHBvEQoJ2ZGk9AL9jj2JjFRj
 rCRsf6mk8SWuL0xDBTu04bZZ2ttNDxNiymNTqdBVZmX6Mdg/T2i3mv/0ATqxAAUR
 tCtUYWktaHdhIExpYW5nIDxhdmF0YXJAbW1sYWIuY3NlLnl6dS5lZHUudHc+iQCV
 AwUTNz0HC2i3mv/0ATqxAQGQ2QQAww0WfeHFmupfTBWWdmNSX9eCDIfN7Wsuiu54
 DgCi7T7ixQa6reIsMAKx1KHNX/GSBr+t3nyHT7N12Ee09qKXywQAw9W2nrdMGE1V
 nENHEFgJtvnoN76U1goANEfZGnLLhyuDoMyZGCZmVG6FiV6EoKrWxfwq+jV0Y9K0
 3AI/Cny0IlRhaS1od2EgTGlhbmcgPGF2YXRhckBGcmVlQlNELm9yZz6JAJUDBRNC
 H/ubaLea//QBOrEBASTEA/9H+78uZl6JvHwGKOXyZkrRCLTUgifJcR3thVfynGrM
 AImheJwqgVP7FQojDk8xBCBQ1b3tpwpeRPwE0V/Dr5MkFLfiaVgCIfMibqcc9zuH
 i4RYcRqKswiO3pFeDMyHiSxylURcHfx73CYijIDyG+HPiCQ4OGd95VJywUzOVddn
 +g==
 =jIT8
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.143. Ying-Chieh Liao <ijliao@FreeBSD.org>

 pub  1024D/11C02382 2001-01-09 Ying-Chieh Liao <ijliao@CCCA.NCTU.edu.tw>
      Key fingerprint = 4E98 55CC 2866 7A90 EFD7  9DA5 ACC6 0165 11C0 2382
 uid                            Ying-Chieh Liao <ijliao@FreeBSD.org>
 uid                            Ying-Chieh Liao <ijliao@csie.nctu.edu.tw>
 uid                            Ying-Chieh Liao <ijliao@dragon2.net>
 uid                            Ying-Chieh Liao <ijliao@tw.FreeBSD.org>
 sub  4096g/C1E16E89 2001-01-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 gJ4OtCdZaW5nLUNoaWVoIExpYW8gPGlqbGlhb0B0dy5GcmVlQlNELm9yZz6ISwQQ
 EQIACwUCOuXFUQQLAwECAAoJEKzGAWURwCOCLMgAoJGhtnPbzYhZWHm5S9Dkgmvj
 QsgvAKDq9LzJ14Sojrtpxka5F5iViLoqEYhGBBARAgAGBQI7J4TCAAoJEGvZyNJ3
 mDKxzzAAoJFFuWMLf6HHO0TiPdafPjuruVpuAKCC0eE7oh9t4xMlTb2SYWMpZS9p
 hokBFQMFEDsyHL7DfcPfQ7mVNQEB9KQH/iLaexNwzgB9efMXg6RH+TtaWzxBdeEc
 7CD9oxjG/1tsfd8S10UScnr+JHTDNn3eh5KdQDjPmKkedPngAIjKHvb/Jux7jcxO
 OLmRnVeFD1kMyNlv5ggtJcHJ4QXe4rBko68qyU5ON9pvA/h7Xe/ulGw71dOCx0T6
 jBlpmLF8AZlHW7z8OS+DYa7fJFI65cDbtd6c9hM+O4WNj8PK7p6MPgilIaWsnJq1
 lS5fkaQK+dqaIaVEE4WqTt8v8xC805X58HZXRFma5D39yGFNd3LRCpu48mM5LDLT
 Q7tfs9jn1Ru7iUHyjI1Jel0hvRGblL8iW/zvwmS/XTXPsh3H0U/WfWG0KVlpbmct
 Q2hpZWggTGlhbyA8aWpsaWFvQENDQ0EuTkNUVS5lZHUudHc+iFcEExECABcFAjrt
 DlEFCwcKAwQDFQMCAxYCAQIXgAAKCRCsxgFlEcAjgknjAJ47s3GGw/KsEHKDjjRi
 D/kcOgiNZACgxKgabQRGmvwKMl8fTtNxiTbAyDOIRgQQEQIABgUCOyeEwgAKCRBr
 2cjSd5gysSzKAJwOKSwO0ZIm9II4sjcxWPeNUHAl5ACfXShCxB2mVs6kRDsD1o7f
 aWeuChCJARUDBRA7MhzCw33D30O5lTUBAaMTB/0S70cAqqqAqrJBZosRZhmXWixk
 Ah1gMH8SkNVygA3BE3k4A9LC3LNyvlnbCGPFH8PYvN8ymcn3sSPu9nyHVZ31VDU0
 mp7JvKeW49tWxBeoFWpNJeNxTv2aNpFCLahpiwcDt/HW8/1NC5dJirDrIrVTrhWG
 85UUYeGmMX/5qC7bFh+Y5FC6HxnFTCWlxpZQDtWw4Dbf8r4dMrw/2I9Uubj6brEx
 LeOG2gB5UAuSS5Brp/9eiAlJs6jRgLU883IzpIhYanz37nJcLV5MVHhbGiR1Yyhr
 IQlO4pQ2f3VhaEpkUu63x6lxfyVVJsZZ+vZU6EvtJSFACWR1nK2SbszGt/FRuQQN
 BDpaoxcQEAD5GKB+WgZhekOQldwFbIeG7GHszUUfDtjgo3nGydx6C6zkP+NGlLYw
 SlPXfAIWSIC1FeUpmamfB3TT/+OhxZYgTphluNgN7hBdq7YXHFHYUMoiV0MpvpXo
 Vis4eFwL2/hMTdXjqkbM+84X6CqdFGHjhKlP0YOEqHm274+nQ0YIxswdd1ckOEri
 xPDojhNnl06SE2H22+slDhf99pj3yHx5sHIdOHX79sFzxIMRJitDYMPj6NYK/aEo
 Jguuqa6zZQ+iAFMBoHzWq6MSHvoPKs4fdIRPyvMX86RA6dfSd7ZCLQI2wSbLaF6d
 fJgJCo1+Le3kXXn11JJPmxiO/CqnS3wy9kJXtwh/CBdyorrWqULzBej5UxE5T7bx
 brlLOCDaAadWoxTpj0BV89AHxstDqZSt90xkhkn4DIO9ZekX1KHTUPj1WV/cdlJP
 PT2N286Z4VeSWc39uK50T8X8dryDxUcwYc58yWb/Ffm7/ZFexwGq01uejaClcjrU
 GvC/RgBYK+X0iP1YTknbzSC0neSRBzZrM2w4DUUdD3yIsxx8Wy2O9vPJI8BD8KVb
 GI2Ou1WMuF040zT9fBdXQ6MdGGzeMyEstSr/POGxKUAYEY18hKcKctaGxAMZyAcp
 esqVDNmWn6vQClCbAkbTCD1mpF1Bn5x8vYlLIhkmuquiXsNV6z3WFwACAhAA4vXK
 JfvHChbHRCc0z99UHVCluHwRUDopIFNfuBmiAOA7Ozz19dmYBKDgudZpDNZtbE4w
 0S2eW3xVTkPUWdrhr0jDcibkhpdFI+Cp3x2zOhL16Yug1xFSqWDSOo3QX4eBVxMH
 0sCHiZMlcx/QGl1bwZ9PpO10PttjloI2SqWGUNK9FGDjVfJoX8YMy5DG4rLcaS8+
 m2IOb9BiYoRs2Dot9KZjWtL7+CDrFmLH4q8P6OHiE0RJy+7YoTvsHr0JU6suasHK
 NPfzrXlWZ8C5sKX0XuZTJNkfKojMVucM6olzpaE04NAtKjDffHr7Rr0md/6Zy7ru
 gJIOwClDyfMmVud0J9Sx/pLKlldakJl25Xfctcz/DXZJNGpvfeMm5+pzR/zulQc1
 zDopdrSq261hJKE/5N6tPflXz9UreUdRm1mZV7SEgCKODMxSxexRfw51O0fk3vZ3
 rfSjSgeIz9Fs3ypJHCd2q5C4LDa5XgX8vNSYxLKIevu62BnQXJVTKCyuvzUGOrvs
 nhKzR4GjrMm2575e+pxojQPVXcytFqzn4CS3QTWHvm+J1EzFwhdpR2kXAmaarpye
 JbUjuCDHDhJPegXY0oRa51lLhvcij1U6smqutADIQSck5JmyQKuC+x7Y8iLk/HSO
 3uni8G44oFCf9KJG69f5Va0RHgjBUOZgKMAlKA2IPwMFGDpaoxesxgFlEcAjghEC
 3KEAoK+jSxWG0hQa1aK0vkQ+IvD+Ag7EAKDahnKlbMifGmPSpYjK0zcUeojzyw==
 =NLH6
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.144. Ulf Lilleengen <lulf@FreeBSD.org>

 pub   1024D/ADE1B837 2009-08-19 [expires: 2014-08-18]
       Key fingerprint = 3822 B4E6 6D1C 6F71 4AA8  7A27 ADDF C400 ADE1 B837
 uid                  Ulf Lilleengen <ulf.lilleengen@gmail.com>
 uid                  Ulf Lilleengen <lulf@pvv.ntnu.no>
 uid                  Ulf Lilleengen <lulf@stud.ntnu.no>
 uid                  Ulf Lilleengen <lulf@FreeBSD.org>
 uid                  Ulf Lilleengen <lulf@idi.ntnu.no>
 sub   2048g/B5409122 2009-08-19 [expires: 2014-08-18]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEqMMZ8RBACHcol8F7dxjIhS+FYaeAW5YhB93p3ym1oCrnIQ8cGih0baXMoB
 VjTXm9OmrhOONntRzf+JDQYDQbSg5YtqyHJkY6613j+K2tCAOAQ44xxCDPAiuQfL
 fy8pL+b6qcLuwMFJkaNMU/bpNRxYn1+nMWy5pigWM6E5IXZ27rBkWb8SrwCg1G0w
 A1T/kieE8LbEgAODP5tHC+8D/0ponWwn79+Ll+juhDXe26jC6HMAfHCyb0gAKocd
 2vqsozzW78nmJCuCvu+p3sb4RC+Ck7zRGkj64cBjp5Xt9+m2DVBEJHZrGAHSR3fa
 2L54tWvNS+b2ZHXMxYFIEi3JbDm2iqg5i+Q/1T0AMW8HTTZSoYo3q1QCApsbmck0
 DgIhA/9z2oFqc4CMoBgilh0f4LC8xoDAtbvluzQwhr3uvp4c0N6ZBpHPPFows6P3
 cSqBw4uHF6XmZyzySkhUpUsAZ7B2yHnIaMQrBHgt5AovchIiNNXg6dIhtq6PTGP2
 xTuubLZCR2ZEp91OqFY2kWkFeCQ3PuOcdfQduLHs2Id3JOqPGbQhVWxmIExpbGxl
 ZW5nZW4gPGx1bGZAcHZ2Lm50bnUubm8+iGYEExECACYFAkqMMZ8CGwMFCQlmAYAG
 CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRCt38QAreG4N7Y5AJ4qWuEUuglfftxc
 qYBNEsu3BgoHZQCeJQ0s4fhnjgBWkNPB3+SMnfRBR8W0IlVsZiBMaWxsZWVuZ2Vu
 IDxsdWxmQHN0dWQubnRudS5ubz6IZgQTEQIAJgUCSox2XQIbAwUJCWYBgAYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEK3fxACt4bg3BeAAnRSgnBH1oWkjXpnVgoaL
 ey9fZpmdAKCZSuOXiuJyPfLw0fmIE2ck5MVCULQhVWxmIExpbGxlZW5nZW4gPGx1
 bGZARnJlZUJTRC5vcmc+iGYEExECACYFAkqMdm8CGwMFCQlmAYAGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRCt38QAreG4NwkdAKCp3vXkrV4DTU/uzYl7C2PLNPdp
 OgCgo92+rW97x6V0toYmqlX6gX02+xu0IVVsZiBMaWxsZWVuZ2VuIDxsdWxmQGlk
 aS5udG51Lm5vPohmBBMRAgAmBQJKjHZ7AhsDBQkJZgGABgsJCAcDAgQVAggDBBYC
 AwECHgECF4AACgkQrd/EAK3huDfifwCglUcGDEWuptwn0MBR996pjWZGRqsAnjSi
 ztpBg8l0p7mX4qRD+EIroWiatClVbGYgTGlsbGVlbmdlbiA8dWxmLmxpbGxlZW5n
 ZW5AZ21haWwuY29tPohmBBMRAgAmBQJKjHaLAhsDBQkJZgGABgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQrd/EAK3huDelVgCgiGTNGXfoIdtGOko2oIyTZ6tTlbQA
 nArzMsDvinZNUCP4yPPWpRnq4CcpuQINBEqMMZ8QCACQxMbl1cKH2ItbjjDZatPV
 IASoAuBeqqaJnlCko6UX1Lajm3anB0gZvm97qI/yG9AO06wNBi984Z8vv0a2in05
 zM10r8Ft2GTWlFxMZqJePiDl3gWMg2jhPcRfLlODTHLa+tO5rx8liw+RBs8wg5z9
 RUDrrHAKViosS9alz4Lb8+jfCTjOM/VA6PkGg9HV7+lMMRkHkvUaSJfxkj3ILydZ
 /SkYwlLMFFAcod6X1VDwLzIPP5Lqkshc5PuGB58eSqh+nkpoNJWjw5zJlA8Tg/++
 C2Pq7zjY8O95oCFqDLCFNdQcBbiui3EU7YwcrsvaRlaeiMUiwnjOltyE8Th7a/sz
 AAMGB/9S1DMaIHJ8JVHG57hS1EuWqjfRGIcuchMrRdGvZPHd3hNw3/5FvXVPi+6g
 5FoZqAPH7I0gweUZof83lPJi64CFZKZkz+9YSmLqEuGjdSgB//wCSDVrwwKCiGDJ
 D1HJhFtVmsS3L/VyH7c5icEB/oCJZhG2GwgKXEEe58Ai1VfCGCArNTm+h/NmG0xr
 S46lxiAzvV945mF9n4jImFBJzOGL3U+kfp38niN/TkEHA1JtNbqpnOuMKKOWNSSM
 gIArMZKZnyrQsEalrJr+9nTPBLdsNSSNE4N+l7EjvrnTRthBzrfYfoHKKaO8x8rm
 fCD/rgO6U3X2gsM23xdjn9D0uZ+FiE8EGBECAA8FAkqMMZ8CGwwFCQlmAYAACgkQ
 rd/EAK3huDdJUgCgo/E3aF2+Xs7gWumo8ff0IBM3yEsAn1FYPHYU4rtHj/rtzVLB
 L1JhS/1K
 =sCn9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.145. Clive Lin <clive@FreeBSD.org>

 pub  1024D/A008C03E 2001-07-30 Clive Lin <clive@tongi.org>
      Key fingerprint = FA3F 20B6 A77A 6CEC 1856  09B0 7455 2805 A008 C03E
 uid                            Clive Lin <clive@CirX.ORG>
 uid                            Clive Lin <clive@FreeBSD.org>
 sub  1024g/03C2DC87 2001-07-30 [expires: 2005-08-25]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: PGP Key Server 0.9.6

 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
 tF/cItKqIqZ9RhFcg+IisxgUtQ==
 =g51D
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.146. Yi-Jheng Lin <yzlin@FreeBSD.org>

 pub   2048R/A34C6A8A 2009-07-20
       Key fingerprint = 7E3A E981 BB7C 5D73 9534  ED39 0222 04D3 A34C 6A8A
 uid                  Yi-Jheng Lin (FreeBSD) <yzlin@FreeBSD.org>
 sub   2048R/B4D776FE 2009-07-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQENBEpkXvABCADnsekA8rnN29OpRPBgLBo2RzYI3b+FCSkPqDatHJuGSfTqFUgi
 2WI8QItI0toqcePNpNtgyHie5jqsX3/yFBRGO1xyCSIEMSbMiOtZZizYLqlLW9pZ
 seNxwHBetogToNoveYHXNGsrptkqir5mx+vtSO5o6DFcDZYQRgZq9NTnKnuJkYwK
 wnujkHcTpUVw9pmnwj6ZxZ5V8fboCzd9ET1SmWH6194tpJ0Fq/HX9qGfF/c6Kl+e
 Hwz7TFi/hpMwsdwjz07SrDi8bumuWNpwZprOzHKORbHfdg3GZaEPcLhF7qjvYunk
 osYrnyUmz7+FpTJVg3u2Pp3eL0xdXU4TuwTfABEBAAG0KllpLUpoZW5nIExpbiAo
 RnJlZUJTRCkgPHl6bGluQEZyZWVCU0Qub3JnPokBNgQTAQIAIAUCSmRe8AIbAwYL
 CQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEAIiBNOjTGqKQTYH/3kkQL00ibVSNCHH
 2VNfnV9tyIDBIorMHFctEZ+zTQ/mQRxXUS3gpD9pg4nYNJtrstIWxH9Y8GxDTjQ/
 pJsVbZ6WcYXANwihoH1jQetSR4ZZDLrVynSWQ2WeYg0XEedKxV6ZmxZQPAbN742o
 T8ehZpThFSaPVDtIYFh0eVnPkwsmR/mC5DQDGkwb2p2bsxdbkYCWLLRiS5buGFyZ
 iHZSe+D+mRJq5kxZriy2pSXcQUlqZk3jvpC9mXr8QzAwyzbPwHRak5NNuQxxCJGh
 CBDzTSB9OsJrLd7WOxISii2k9ZszP69EymO3wTpSnoCPyUllOsdMa0291xv8kw0c
 3ytWz/65AQ0ESmRe8AEIAMYk6s/25zGN9qnfbTjwtxPD2/K5AeyJaQ+kZ5kiOZqn
 DlpMawMccq+yvh25oX3j0NUug4j35FKFZqnzpLx4KizbJjhZX+V826lVsf9kx6mR
 UmpYAlOb1qQUZMuR2+41eVnuieAqNyFH4pjp2zR6mhaoI82a1AMeOdhVOLfTl1+Z
 mj2sL+1J+fkcBxuhMEC30elVKxuQo/8NphZlnZe/819Q3HDsuw2mEiQMWH2y/5B3
 aSpm7/LY/L13YI8oUNWZrvjJZYSYyFyhDryzkP60251Dhfwlu2792Jt2Y4dm/zVW
 Yi/QpUdoPLRqEQjipiBg1sWLH1UGYys4muUxBoUQItcAEQEAAYkBHwQYAQIACQUC
 SmRe8AIbDAAKCRACIgTTo0xqimB4CAC9MJzYzpUgnlhh275aZs6pXJnK9dty7HpQ
 zJ6UpoR7oBcmYivlAXaFBB0jxsAAzu3wKXwC9IOZZAB5y9keXWkG/2zdutJJ687a
 HAjXUUPi3QIF1uPGgvpEQPNfn+Gki8c3B/QOCVhKg9UEtewRzT8tZqCubeZLmc7L
 NbNX5xOta92KD29XOCXX+6htRJ3aBTn6nNzRdBpuVxKhzd+eLg4gRMKJebDfDXrG
 fkDmHta2l1EdhlLxyLCvLd0x0mMGS9rMBuEaTvc5hka6YsM7hhGMZe//CjCO8mGl
 CZyUepEymoFG7nCPpMTgZFxCHzOOljsoaEeOxg6aS2kNv2sTcDkJ
 =cF/N
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.147. Mark Linimon <linimon@FreeBSD.org>

 pub   1024D/84C83473 2003-10-09
       Key fingerprint = 8D43 1B55 D127 0BFC 842E  1C96 803C 5A34 84C8 3473
 uid                  Mark Linimon <linimon@FreeBSD.org>
 uid                  Mark Linimon <linimon@lonesome.com>
 sub   1024g/24BFF840 2003-10-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD+E2XERBADU5F4DbwP8KaHN1H+yz8zaPjOSLJushNA8Qu0hN7GXqd5vgRDc
 zzzeZIzVVxPVdrQ+I24UwSIYu4ww6nfum6kRv/i5khxbYM4zGGPG7s5pmqIECum1
 tKvJ21IE823lcJtUp0C4qhCTZvoc3lADMn9cPgOSJClzHjAYDasOTy9hhwCgsTqP
 aHntu6Uj3BYpurWHJSePWrED+QExF2asNPehIOZ4l7dwpaeGSTxeINH1FYnlF+J1
 N8lvpFQ2H3sfSViVgAtqM27Y/jOf3EkQH0Wym0iCczOxEUFbNH5NWAm6IOVT9owo
 tkh2PZgyfN0AJZBPh9d/oMN2MEKPb6wcqr3c67ZmQG7B+LGliBSVYhWDbd6E2YHb
 bvKVBAC0pL8fzNldEQUUYDTTrWhMVCr7IGzwrd6cEhIZ6b5kqQd1IsIChVG3jCVL
 wWGSgmXY4J7i4Ujsx8k/f6CluNLwmP5t9caycz32QdJAWkzQq2x4AQUy56HDbvui
 QFOqD+PGWqvoUUyJqLbzoASI5dcV35OY+m37Z1Wxhsn22WBE0rQjTWFyayBMaW5p
 bW9uIDxsaW5pbW9uQGxvbmVzb21lLmNvbT6IWwQTEQIAGwUCP4TZcQYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRCAPFo0hMg0c5j/AJwO+VSVExRY8saToDKF3hVe4wNE
 EwCeKFf5ysZjQIJY3pJ9tUzm8o3tX+i0Ik1hcmsgTGluaW1vbiA8bGluaW1vbkBG
 cmVlQlNELm9yZz6IXgQTEQIAHgUCP4yK4wIbAwYLCQgHAwIDFQIDAxYCAQIeAQIX
 gAAKCRCAPFo0hMg0c8c4AJ99m0hHLctAVXjfZYurZBnl2dUL7gCgiG83BXm30rBa
 POtWm2AstMb6uVm5AQ0EP4TZcxAEAMQPPoRMfBR3cRc/T5NsWunFlZA6nB+3BkVd
 p0ham4FoseEh7q+hqa8udARMpTc4LIIL4FU6lIa4L0s3Z77d4bXfJmwlUHuUMSk0
 tnG003D4VDBc3HWSSX/W/CRyN+OBxPljJywTjI4goyXx9Lc31qwpGqYy5Ao8X6EA
 TT9g3IgzAAMFA/wMgON1JxPGr8MSvSLHLMY/xn2PR8lSVZmOlbhNE5hL2FzyFME+
 Pnc8hR31cohFjSXR7hb6SOWrZjYpdIVsa6qdqXIRDbcb5sKEGv9959W8yt+L/kNr
 RlN3oExA2pkYpEQfLpH0HdMmbU61NR0cI6p4ZZly4p6JR0kEajaUOlq/cohGBBgR
 AgAGBQI/hNlzAAoJEIA8WjSEyDRz9lwAn0pJVzrxxaB/PqtJsu034bH5PnlDAJ9G
 axdzE7A6F/UPmrURep9QFDq70w==
 =GflG
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.148. Tilman Linneweh <arved@FreeBSD.org>

 pub   1024D/807AC53A 2002-06-03 [expires: 2009-06-15]
       Key fingerprint = A92F 344F 31A8 B8DE DDFA  7FB4 7C22 C39F 807A C53A
 uid                  Tilman Linneweh <e0025974@student.tuwien.ac.at>
 uid                  Tilman Linneweh <arved@arved.at>
 uid                  Tilman Linneweh <arved@FreeBSD.org>
 uid                  Tilman Linneweh <arved@inso.tuwien.ac.at>
 sub   1024g/FA351986 2002-06-03 [expires: 2009-06-15]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 zPaI6PcaY6bQs0sU+vx/y2EAniX01//zLLCf32/SFgoz+sKCCVdViGsEMBECACsF
 AkAL2agkHSBQbGVhc2UgdXNlIHRpbG1hbkBhcnZlZC5hdCBpbnN0ZWFkAAoJEHwi
 w5+AesU6XeAAoIAsTf+iRoJ2Ssz3I0NVCDq5C7sdAJwPk0jhHcp+Smx7JUf0EjiZ
 IhlqDYhtBBERAgAtBQI985fUBYMCyqa9IBpodHRwOi8vd3d3LnRvZWhvbGQuY29t
 L3JvYm90Y2EvAAoJEBBYFoXFIQl+sLkAnAhFTAtrsVGOk1PhWYdYGCUB3rKNAJ0b
 6UcNJBcuDLsMWrhmr342rubgQYiMBBMRAgBMBQI9BRkQBYMDuSWBPxpodHRwOi8v
 d3d3Lm1hdGhlbWF0aWsudW5pLWJpZWxlZmVsZC5kZS9+bW11dHovc2lnbi1wb2xp
 Y3kuaHRtbAAKCRDehYP4vb/oOAp6AJ9sbAZYVOAK9KJnrXG6M4HyFIn7zQCgx7YZ
 3lauFFTDeQtC6f8O/YqL6ZSIkwQTEQIAUwUCPyFXhAWDAZznDUYaaHR0cDovL3d3
 dy50cmFzaC5uZXQvfnRob21hc2IvY3J5cHRvL2tleXNpZ25pbmcva2V5c2lnbmlu
 Zy52ZXIxLjAudHh0AAoJEKR5zcRatGBqDhAAn07IqzEqiDQAq9ZuHVA9q/Se0BhL
 AKCDNey4KgYxDLmHlccdugDvlo4RT4iTBBMRAgBTBQI/IWPJBYMBnNrIRhpodHRw
 Oi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlz
 aWduaW5nLnZlcjEuMC50eHQACgkQeQV2j3WE9djt4gCfZmdTVNllaafXbvEDqU76
 dY3QKHQAn1P8Dr+OhFqTx8i8xse1R4dDKAa1iQCVAgUQPSHiMMRGkei8OaXNAQEP
 rwP9E5Zt9bK6y9VYcIsbBFDvAYLhjhvT9IKOfQrHIzsnNgIfec6R0B8LRXGaOlUf
 6jMTP1p06OvuyRNGHHusWDui1nVPcN+t/uXB7QT16UefXv11czXqmzCKtDaEDQHC
 qAJMWAFGjL96IESNMTFGGSx87nMUgDmL5HJVaw+WLG5kcVqJAJUDBRA9Is6DvUCm
 6Q/OhUkBAbbpBACdcJbmmeUz2kxRjtB2dBr3l0mVGpIMdVMC/NaKqHqk5gxRm98c
 Onq2we9PSBI7H5xBmJSqX+ZJHRVUSDzoGaJ73A/yPFi8t7Q9MRMb/Xepw/bEx7js
 vV7Lg+tXRedxG/gMQ5E8KS6CXRtQIprLUGQJ/rOA/wxylXPIUMGNaiEbmoiiBBMB
 AQAMBQI9I3u8BYMDmsLVAAoJEMRGkei8OaXNks0D+QH0rq8qJNlZQIKrjHRPX8Bf
 gN2401rOk1cRZF3SJ3zC+FK/uOM9NKfZI5E+SCaxHmzGamB7J8jYsdqMJIAMnXTj
 aPpXRgMs01GMBFmOiGNJJtZ/e0589n+kkjmDah1SedId48bHJQ+bBwYh/tTnQwgh
 8ss1f4C+ustiU2y2YWziiKIEEwECAAwFAj3aoBwFgwLjnnUACgkQ5RUoJTMc2l1s
 vgQAk1Ep1LH00RT/M7baFu//UnQ2gal6jtTcKQlkpt+5LHqcHQRc0eritnByi5Uh
 HRlz8qkotdmUpbk4Qe6pi2py3PXyDcqIXiNj7WqVmrMiDVhuabjG6rz7TjTBvCkb
 /cOwKA/E+Wq9EYd47CDFYhaeCaJibtaaJAgpACjLwdOBtJiIogQTAQIADAUCPyFk
 iwWDAZzaBgAKCRAbsIu/KpIyJbiKA/9tGaHm/H1E8+nZbVNLycF4XHysp3AIfThF
 ycrtF76BDzUBhMJP1wqIFoTOVpNEZyfcaRdxenBuFdfevylp0S4HKt5Njunck+KF
 YhwHE313f4Khx5tfVji4PCtdDqDTKaDnC8+bkMBlz2aN702bQT3JYVMd++yMkUuD
 QFdFQ1dBFYiiBBMBAgAMBQI/SiLRBYMBdBvAAAoJEJugaRW/hasxf3kD/20udTH6
 KqiBG6O25k3furoU220pjInNW4MLl9gWwx5pffmx0ht50NdP3W6Zi9Bcmdto0IbR
 luIiuBKMIgkaN6GJfy+BDs+Q4sPfvFYbt29Gbq9S0+5GbTRx91cAlcx5nffuCQL+
 QDle2tQQWz9buIDppqkcz5Ec0SK1U7Dtk+DbiQEHBBMRAgDHBQI/FpZTBYMBp6g+
 hhSAAAAAABoAY3NpZ25hdHVyZS1ub3Rlc0BwZW5ndWluLmRlImh0dHA6Ly93d3cu
 cGVuZ3Vpbi5kZS9+YmIvY29udGFjdC9wZ3Avc2lnbmluZ3Mvbm90ZXMuQTkyRjM0
 NEYzMUE4QjhERURERkE3RkI0N0MyMkMzOUY4MDdBQzUzQS5hc2MiMxpodHRwOi8v
 d3d3LnBlbmd1aW4uZGUvfmJiL2NvbnRhY3QvcGdwL3BvbGljeS92MS4xLwAKCRCr
 HktgRnVrHmr/AJ40BMVSZ0DdOYNUzMjA9DinC6rJGACaAvMqo1iyaHhyjSetEUGy
 bb/xM5mJARIDBRA9A+0UlWBhpt2TQTkBAS1UB+ICtY+/MOSiz1j5xqhC7STAxOPP
 QD18HmO3AHZywXr3G8iOh7iyJU3EphQID6B43Tvu8VjaX2mvJur0rppMlHqGDJSv
 k1J8diwkuhb5jwmKBBTOoPdh6QEhi8GanAizKd/rnppwAfzeP0CmiKjzQQJUiAK/
 P4KLhd0ObpjtfBu2D3azTLinMURTI8vYmlyK8kVgDG5fsnnL0/ksnsKw990znbxz
 7unlnGCL+MSyt43CCdoaIjiaK82pt7vTVf6K5yIXbRAfphsyG4KG3ZO1pvsFygD0
 sRs+NSx8Oij/zXQUhELw0/zCTF63zNDIe0w5JRcUOXdK9a8Q2j3HVJ6oiQESAwUQ
 PQPtFJVgYabdk0E5AQEtVAfiArWPvzDkos9Y+caoQu0kwMTjz0A9fB5jtwB2csF6
 9xvIjoe4siVNxKYUCA+geN077vFY2l9prybq9K6aTJR6hgyUr5NSfHYsJLoW+Y8J
 igQUzqD3YekBIYvBmpwIsynf656acAH83j9Apoio80ECVIgCvz+Ci4X/////////
 ////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////
 /////////////////////////////////////////4kBFQMFED0D7Q8BVbrioJTa
 JQEB1xwH/RyMspXEKjRWrceEwuCwfFb7jGo8twuLcbFOSIJKQkJZMb+zgS1GsU7c
 4tFGk7sy9aIDTq7g+Q8/7FOVtbxQQzdP52/xYIrwj5UGVPMF9/di8GSfgbMlXmDU
 jg03iiwMWHom1z2Bq1wV/oPe/4LbFYodnQBX4JQebnbgkBvf/5+JGR49p6gqv+jG
 Jsib+Y2ic9C6nsoE5+kGygdJ4Rpj/sqiAqKeJXZ0LOHm4uffNCfD8wcqQmsWNweN
 kXPOOYNoL22KRdRxjYaxCD5Knhe/V+mO6NP0Eogor5qi2wb9Vnocu+ZRoVjdbh1D
 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
 bAhj/K/uFB1MfShas4juFIkB3QQTAQIAxwUCPxaWBwWDAaeoioYUgAAAAAAaAGNz
 aWduYXR1cmUtbm90ZXNAcGVuZ3Vpbi5kZSJodHRwOi8vd3d3LnBlbmd1aW4uZGUv
 fmJiL2NvbnRhY3QvcGdwL3NpZ25pbmdzL25vdGVzLkE5MkYzNDRGMzFBOEI4REVE
 REZBN0ZCNDdDMjJDMzlGODA3QUM1M0EuYXNjIjMaaHR0cDovL3d3dy5wZW5ndWlu
 LmRlL35iYi9jb250YWN0L3BncC9wb2xpY3kvdjEuMS8ACgkQGaJoCYg4/ZQ2Wgf/
 ZA+qzqf1y3r9j+jgf8M/BrI3aXSgtL8ZDfek+rYdVcPMRKLMfnBuqV1mhOa1vPsE
 snUW4Q7LWKZOcCrcQcS+eGXi8QyjHED0Tu5t5jF6laq1qy52kVav08oc+0dDuwae
 sIxMKvFW/qO4kM2lL3CPK0uEBkrcKMN8sasjr/Cb/O34q0v4/TtdPgz6e6OIAAsk
 fEi785Ld0JWykmH70IYAGKmNKqboimuax3NlZrh3BInH8VWWjubIKji/AhPAu8zf
 4NMC006t9BJ+BRFeNlS7Xkit5fLDyZ7JaR4LWkrsEdBmIVG2Dm42WKKRiQJoJHiP
 1CaJb95p0+z4SRLYOMXfaYhJBDARAgAJBQJAknnFAh0gAAoJEHwiw5+AesU611MA
 n3ULEacZE+cuEpQ0oJTvfgUgNQzjAJ9BAeF+jToC/Rxe0Ic+BrxDxPLU0LQhVGls
 bWFuIExpbm5ld2VoIDx0aWxtYW5AYXJ2ZWQuZGU+iEYEEBECAAYFAj0BJlYACgkQ
 Z8MDCHJbN8btKwCfSU2UKty39Piam6JpXhWbY6MIJOkAnAshBsejr/3qNQFK82Zb
 y600y2uziEYEEBECAAYFAj0B/C8ACgkQlWQfayU+WOPKEQCeN+03m6Ueah9FB33d
 gYoMlmhsC84AnRNPqKH0SJL58TXHN9hOFXagVpGMiEYEEBECAAYFAj0D8JkACgkQ
 eMu5lRpXJ7murQCfYyLs4CIisOCdQ4NDpNiuprjbNRsAnjt4yxhRQ23HUltvX3NH
 QvFhcJRciEYEEBECAAYFAj0EsGwACgkQzjzRQHYXE2f3VQCfaf8ar8a0IkcUbp9Q
 QoY66doC8c4An0qYBmAlpdBbfgbAzaIeNIb2npiQiEYEEBECAAYFAj0EwDoACgkQ
 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
 VzBpowkGRYhrBDARAgArBQJAC9mlJB0gUGxlYXNlIHVzZSB0aWxtYW5AYXJ2ZWQu
 YXQgaW5zdGVhZAAKCRB8IsOfgHrFOslUAJ91ZD1UvplEZjoex4ZLAiNHRuLR8gCe
 LqYTaUelXjL+4qr86BiuSHnxavCIbQQREQIALQUCPfOX7AWDAsqmpSAaaHR0cDov
 L3d3dy50b2Vob2xkLmNvbS9yb2JvdGNhLwAKCRAQWBaFxSEJfs7aAKCmKM4Hx30W
 cwzBgka77dKmrawX8wCeNqMZAlB0vc3VU9VVlnx7dh/cqbWIjAQTEQIATAUCPQUZ
 EAWDA7klgT8aaHR0cDovL3d3dy5tYXRoZW1hdGlrLnVuaS1iaWVsZWZlbGQuZGUv
 fm1tdXR6L3NpZ24tcG9saWN5Lmh0bWwACgkQ3oWD+L2/6DjilgCdEkk7NvpsXr46
 p2p9eADs8ORpkmcAnjZcBlDIj2c0O1pPEXOKs5BJSfQpiJMEExECAFMFAj8hV4QF
 gwGc5w1GGmh0dHA6Ly93d3cudHJhc2gubmV0L350aG9tYXNiL2NyeXB0by9rZXlz
 aWduaW5nL2tleXNpZ25pbmcudmVyMS4wLnR4dAAKCRCkec3EWrRgalC3AJ9178Sp
 mCYvZ5VbpNH64LUegUTgRgCgtllyIHMjemzT5g7r3i6qwR2uRTqIkwQTEQIAUwUC
 PyFjyQWDAZzayEYaaHR0cDovL3d3dy50cmFzaC5uZXQvfnRob21hc2IvY3J5cHRv
 L2tleXNpZ25pbmcva2V5c2lnbmluZy52ZXIxLjAudHh0AAoJEHkFdo91hPXYu6gA
 n1a3sukcIHGqXltKgB3x9ktToAF+AKCXZGKayZGwC5Ir0Njxhsx3zwKom4kAlQIF
 ED0h4ivERpHovDmlzQEBFtcD/1qUujCOYiJQVN3SzyXzR6fvnHqcpc6+J55uN7+L
 XQVBdW7tjc7vOcClBzKI3V1Y6a2V6VQSNX1yxGBaB+ftoCog0OyqanYgcNR+3iIv
 MJ4Z26V28Mptyc9Ub8cd60pADHKcWM0r4f5/5UNugnwCNg/EvjdkHg2MLqKpA2Jj
 w4YqiQCVAwUQPSLOeb1ApukPzoVJAQE8lQQAiCSul7FIad4Pder4RTB8ow2nE52U
 4W0G0mjD78CBaETZOHGJuO8llrqnx/rYDS7rsAL8Rj/v5YrsYOBbPY/6s94W6Jy6
 iWijwccQJRw91CtGueCTab9EsQE6WQnp1kxDyJC3FMytBchVE+gLmcn/7MhPnWj0
 5xA4wLS5N0maYEaIogQTAQEADAUCPSN7vAWDA5rC1QAKCRDERpHovDmlzaE3A/99
 qZ1tpSrkk3Mp/Hkbwdn/cbKpYtkMfm4yQyjaeRL52CrOtVVK68DobMTaRz+KYTOh
 I9QMhkwSn3sxFpA7YmJ5NcQbw9lp4UU+42+KNj5szfEM/C+tDOyMHjBw4sgBXvsy
 Y5w05SLXMN9KU48OChg8TWKyLCaGZybsl0FG3D5zC4iiBBMBAgAMBQI92qAcBYMC
 4551AAoJEOUVKCUzHNpdoJgD/iTuEAKeayuvv9jrK+8dpFt44/Tk/094H6xVIYui
 06ywdD+S5+fTNohceNNAwexSIeS81sc9TsJr+hSAKoH/K9eTLrVM1EsgPR3yVwjP
 1NglCJbqZ4NcYV+51Dn/049qQL3ekeSLNeXJs/AmYOIxLhcB8Qa734PBOBpSfs60
 wRMdiKIEEwECAAwFAj8TM04FgwGrC0MACgkQtGuSO22KvnEuPAQAh8oEB8HrrihR
 nt0ydhBQRDRPj4rtAEJ9Ft7G1D6cY32LsGlQgBRRy5IH/YmI9Ktwpi6ltX7qULUU
 vjPeLTxbBiKEcZgI9j8a+oon6L61T6P001uD65DHw0W/Hg8D6vzKDZyI0OTqAi/0
 MTir6otSNWB/TDhbUWX9NfABiBJ4rA2IogQTAQIADAUCPyFkiwWDAZzaBgAKCRAb
 sIu/KpIyJe5QA/kBgBlYScZSjhj9g/v9o+8vl/PuBu0LceqONiJ8kKu04CId1E3S
 bJx8hiQqWuvYaSJMZz+WmcYM4r8n8T1yQ9QLE7c2jIbU86irykBXKixX+af1vDo8
 4B4moPZpvTs8jHBJDTWsBuGlWxxd6GHgOP7L/u1K4ZE2PC796zuSlegRNIiiBBMB
 AgAMBQI/SiLRBYMBdBvAAAoJEJugaRW/hasxDu4D/0DGiGqNXNF/cSeoAkt0hywx
 HKqEjzjGb1DTtJ4kLD1x7hC98LE4AaOAocDoK4FekUPbVgiyy0PtD3mNoJORWz28
 leSxNXowWz3cPIrkn/Y5wrmw7Xy9ZJXJNv0h8tcxRJgUgLVN3BFrS4sx3sSjFMLb
 UH8znaZjxI9Et1iRl6VCiQEHBBMRAgDHBQI/FpZTBYMBp6g+hhSAAAAAABoAY3Np
 Z25hdHVyZS1ub3Rlc0BwZW5ndWluLmRlImh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+
 YmIvY29udGFjdC9wZ3Avc2lnbmluZ3Mvbm90ZXMuQTkyRjM0NEYzMUE4QjhERURE
 RkE3RkI0N0MyMkMzOUY4MDdBQzUzQS5hc2MiMxpodHRwOi8vd3d3LnBlbmd1aW4u
 ZGUvfmJiL2NvbnRhY3QvcGdwL3BvbGljeS92MS4xLwAKCRCrHktgRnVrHsTuAJ9c
 TEySl64e6UJgYUVyQ9FUhDBT7wCghZWaFgusjbcUY/8wh9C/OvsSCp6JARIDBRA9
 A+ZYlWBhpt2TQTkBAQY9B+MFdy8EKYP1mgbIXhZC8sScs2sSUsLhF0ZpSq6JcAMG
 IqjZZRSPfvDgt9Aqe8GnG6AtZ7NXdfYARBq301Vaf1t/kNwVK0zcL3TswpGZ/j9A
 o+HhJFA1ivPHb3zrazrmEluFHbbPHZ+33Lvx1APLw2AXP2ise5XmO/Ra52I5TgeN
 P9HJs1R+Qk8Pt+Pir5EfgegoJngRgdySfvcFFo9O2Kinx1sV3a/KTzmP4kzmygsk
 2zVjTN9uLv/RV7U/MheTshFxIfQUxCFUofTz16Z5/nPEt2ePOWXQGPZrcW8grx6j
 QA3TnNQpy45kpBns7nWhvJAI7UWzBBdMaBwJUjLUiQEVAwUQPQPmUwFVuuKglNol
 AQHpUQf/Rw37iEBl3wVsGFQqsz3n6tqrfO9ZGKG/EHRO+l7iCPHjt0UHwUWLPJ0d
 vE6wHbfNGFjBzWcIukJSnv7erLPgTgIv2mClN+uyMLXttYBL8OXAxG2uCsE98VG8
 E5fio88T5V9a6/NqkQQYlIQj98JO8SIMwvs/EMBFD2PzEUVj/pEFONl8Wh6cFE9G
 untvx3+7nUPNC3lw9dbmdTjYKTq/JHJ/rqAW0qoRbzDNSB8tTWitQznLe8srQK3g
 p5qq+SqGvy5L6U2X8YusQSGm730QWEwqG0ek67TwIhq/TujYopw5VhXUJZukCGSn
 +ASABCVregwXgZnhyrvgeAxNiE6U2okBHAQQAQIABgUCPSeWQgAKCRCM9myBE905
 UO4VCACdm9qniy8LWH5uOktlSqHKbzoI/qTofUmLFHuzuh5idJl/JXImM/516u5r
 3uZBmRpnPYImOi8TetADuwLjLTIHpxkfhVA3NRtrq1HwtHtice2K8cHUYne5RC8B
 igRv/M+AP6EmgftoQ8v4mbTgT8jf4IwggJz8GX9m70zpGSMXgCkcltLfJYYPXuDT
 u4bw0g7OOeQi2hjDlxm8b/stB5xJ9Qw3+TyhdT4z2msmt2h0UBDr3Ejs2Iaj3Vr3
 KmN3hhnClcE7dXQNK7ry1V2J0JBBSOO2IZeBekvLHD15iwMxPL5SHz1L/95B2Jfh
 M7V+QMadsQaaEYnHUh/GXXCc6nSziQEcBBABAgAGBQI9J5Z5AAoJEPy64gyiEfXt
 ntQIAJYAw+AjUbAot7HWUhfqYXcw5Q6F36TY7VjNk1aD+Bh6WjKxwNUVPZH91fjw
 skCZ9hDqrwJs/KciU2zeWz7k9KhFj/1PGtfducx1k5zwJUB/HmgtNk7dsUJ09GjV
 +Sy9a+SdwLOgjizIl+jDY/YUAs3V2f0eOEmANdUntXDvhyiu07uo3aN0VdhB31T6
 pakGObK3E+oAh/jkPw1I/dWBdKoKSHEfFeU1RgC9xBaJmoKVfCxedo3wFhZa7klg
 HurVOOs1WWLwUagqGRq/kQ4+n8B8mRQNTlXtTjkL3pEMYmesP0UwmNlBFL4fl4Yu
 nu5wFpB4LdXrNLWLpM/0WZfA7GCJASIEEAEBAAwFAj0Ew6wFgwO5euUACgkQCen5
 CopyTkVHggf/XyO3p5CQ+sqbLVr8IyBGBReqgXgNV98UbhngBm+BL9VFNJwJyb+Q
 qaJGQZxBvn8Ng13cRBDgGIlzPzUWccs66zOuZoHkR9IeLnKYQud2VWG1bGFfUrq4
 p49xZsV/bD3kzORUUNF0zzTzc4EK2/xHgooqrbcsjCXsCS1598uaDOo8nzMnQBO9
 tRiiyYNE0gIAYsG766ZhdUHkIWJquCK+A1U0PljBTF4HORVruJfViaCvYguZCP22
 vyYbpXmOZzGIWQ//m0yXJ40mhWae2AjtJJyQEm4zRLsWv6TRwa8+DSW2OMKM/uXb
 z/nLV4OSj64IEF+VKdznwRpcVVHkAKPRjokBIgQTAQEADAUCPxEOgAWDAa0wEQAK
 CRBABhUOQAnq7RL7CAC3H+vBpE14/d06iAiGV1QFIuiNF3/V+REu5/bbxqzuGY6X
 CmCmS8lXva08Rr29yoShJMUsvbtgQTbF80wQ5ZUlZpdlxkH88MW522rmkWD/PzxC
 F5tR6hBOW7p0ccbbAns5s4BoFh7bHSU7tDmaTrVZ5t5hcHGoXFfFvMOIRbNoxvid
 pxQOiqPbVNPqUUt/e1JTKucRjCaC91hXgPtCGR5Nbc4isImlUrMIfHqebsUzPxH6
 6vW4ecktSCJQhRY32KBDs/fY5AiPZ3FMfN5QcnLPesJgvK5BkQ0DB1uDbG0ODL0Y
 nilzR4HZYtTv3kbCg2Kyz068ql6+Z16L5qfJC/11iQEiBBMBAgAMBQI/T3IPBYMB
 bsyCAAoJEKWgYMJuwmZt67wH/if3kjo34L91/rzgIwlyimeM4ncnzfsCGG6q2fjT
 MkIWH6DN9l7geF2T3IN2VeC2cXE6n0o+7T/pA9pw4MnwqSxfgw7yiefSaLKlWt8f
 p+XIVNN4egyQ2AEA7wS0j0rQdpGt1j9P989F9iSh5sxdqXXF8NiJSLNk/6Qc3CBP
 +7JoOh4Z532jvx7/q1atd4qYXhFx2b9vA20FLUQwJOyMbpYoiG8d0a3uQ0xivTUE
 RUkOrbHkum1Q1b7R81lDYSnts+Z2PtThb/RW21BgllkLhqwg8xQKjTQ0S/Y9UdYu
 bffvegMXuUAT9RMyuwKjxlPnACE81oPS/nS5fdvz0WaXf9iJAWkEEwECAFMFAj8h
 Y58FgwGc2vJGGmh0dHA6Ly93d3cudHJhc2gubmV0L350aG9tYXNiL2NyeXB0by9r
 ZXlzaWduaW5nL2tleXNpZ25pbmcudmVyMS4wLnR4dAAKCRD5fPnjOkt/XSZCB/45
 brff7zO0wtcSO55jnl1ef/ivPg4jTKDRRLtTo9BEGf0NDYM4laaeFV2DAP/upFTG
 7I3vtRG20W64jCxzuBPto6Om8DobzCWaqr4vnuwi0sHFpqeX+pULRHFodBPv2PMe
 vLMDHTq7wVIh62hzJrWYPrX8CP3Fgl7s9f0O8YeoGIWQRTR+oJ9qwDqY55uVzKfh
 alrxoC/MWz+Au8HAcdDJvZsTN0jEF7byIuKjnL0BQXjuMiEcIAmNZ8G+mU3F1tZa
 MaEkvIC0VuhgbuuUc8CvuSdSeu2jtVdAR1T4+o7JXl7T3cMe6VMRpIZSw8S9c9oY
 ANM9W4Fv/CcfXjM0YZGViQHdBBMBAgDHBQI/FpYHBYMBp6iKhhSAAAAAABoAY3Np
 Z25hdHVyZS1ub3Rlc0BwZW5ndWluLmRlImh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+
 YmIvY29udGFjdC9wZ3Avc2lnbmluZ3Mvbm90ZXMuQTkyRjM0NEYzMUE4QjhERURE
 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
 RJ8BW5n4BK4l3CkRqV4sVIUwjohMBBMRAgAMBQI/Z35CBYMBVsBPAAoJEMlPfflm
 8tnG/gAAoKNNWKg6/a853L964H0oiP8slYtBAJ4s6x8gzvT/HS6tg9v7MvZgdDbV
 fIhMBBMRAgAMBQI/dYOQBYMBSLsBAAoJEGEkmiEwk5ylZ+AAoKIAJXyoxoPk9vtf
 sKnp0Yito20LAJ9WJ2azDAfLAcWAwesTyGkZ0Nwg44hMBBMRAgAMBQI/dt5VBYMB
 R2A8AAoJEBfCLtczeVos9EMAnir2nU+yKliFfYi/+752sPnBOsC2AKCiuKmXw75r
 dDj4HuteorVT6yqUgohMBBMRAgAMBQI/gyDqBYMBOx2nAAoJEE2gIIoT4pCkzQYA
 n1nX4diOXWc1gZ45lrFoHQBCjRLIAKCDUuJa7efN29sMA7JMU5DRUqmnaIhMBBMR
 AgAMBQI/jxJ2BYMBLywbAAoJEBnKfwIxvJ3WbfgAn39ogXp0+YDH1/9yzj+zlyZO
 hL24AJ9uzyVUwnKGCh5n7OoAS0FsXdfYLYhiBBMRAgAiAhsDBAsHAwIDFQIDAxYC
 AQIeAQIXgAUCQPwPkgUJB8Ke/wAKCRB8IsOfgHrFOm1eAJ0boiU8exzWwueG259F
 lMmE9O34GQCfX0DtGbMndyRtcwbXqX5ih14WHd2IYgQTEQIAIgIbAwQLBwMCAxUC
 AwMWAgECHgECF4AFAkD8D5IFCQfCnv8ACgkQfCLDn4B6xTptXgCggbpZQyKe8BvY
 bC1NUXc9my720h0AnROeWBYTqf5E64r2kr3LEzijdJhbiG0EERECAC0FAj3zl+QF
 gwLKpq0gGmh0dHA6Ly93d3cudG9laG9sZC5jb20vcm9ib3RjYS8ACgkQEFgWhcUh
 CX6JWwCfWBLfY0MNvg76j1aFNiDSN0+Kc+MAnjyL6sZi65007O2iMN5ZrpizKHEg
 iJMEExECAFMFAj8hV4QFgwGc5w1GGmh0dHA6Ly93d3cudHJhc2gubmV0L350aG9t
 YXNiL2NyeXB0by9rZXlzaWduaW5nL2tleXNpZ25pbmcudmVyMS4wLnR4dAAKCRCk
 ec3EWrRgauA7AJ42KOLGN/ovjnxEdHD7xzzRcHktAACgkyi3zR2G3oL5a3nit4rQ
 vihA+xCIkwQTEQIAUwUCPyFjyQWDAZzayEYaaHR0cDovL3d3dy50cmFzaC5uZXQv
 fnRob21hc2IvY3J5cHRvL2tleXNpZ25pbmcva2V5c2lnbmluZy52ZXIxLjAudHh0
 AAoJEHkFdo91hPXY9CcAoKrjRA8ND3y6T1aQSgRZeJeYu/LAAJ9sJeTFMk2uR098
 SDRCUcfTeKC8xYiiBBABAgAMBQJADIE/BYMDwb/PAAoJEL/W7lhX938JNtkD/3/2
 RKm28v6btjL2UrCJg8LjxoqxSOdU6N5SLplZ2YOef3+gZUTZSsYT1K4XvPoBvPif
 +6zd0a9bFp+fP2j7SGMrlhHTd6+aDQ/BHaEZzt4dY2dfFcDNyvqIKeOTXw8/HR+d
 wryHDNwRcEMOb00IPVjfVirOcdPNbn6jYP1LYnPniKIEEwECAAwFAj3aoBwFgwLj
 nnUACgkQ5RUoJTMc2l3FHAQAki+C6EKYQRullCePZ2GMJ8SR54xI42JaPbSBzxpb
 684J/jabcr8WHHJvGXlapUmdl3vqlks5tatn5iFJvbE4qAPOdo6C5NXIpD5OSbHA
 ocXj43QdrftuMVF7w1fyJBkWFoMrMZoa4FxiFLENbm7DknLebp1Bp282O/XR9R52
 PJSIogQTAQIADAUCPyFkiwWDAZzaBgAKCRAbsIu/KpIyJW/MBACnClO5+acvjHnf
 aUd53tcKfLkb+vWzMXWKNt37RG1d04bKqlkZdzJKT+noMBqflVf91rk3goPPJPDj
 wUtm51gGlSgPG4mPnhQRrUHwC8BM0lGiuB68Z1QdxF1iUx8B623GtPrJbfufCexr
 AxIL6La7KosErbR1JXbjS9+d+M1p9oiiBBMBAgAMBQI/SiLRBYMBdBvAAAoJEJug
 aRW/hasxbHUD/RqcGxjUaJgELwAfNcTpm86BsNL5tu6WJFe3DdIIzQTb27GGgbOf
 j5NRLFnk75xgQtk8lnKqsXQHMC6hm+pwh4ZGISBZE7NIqYokUSYDT2mbplDo2kDP
 yO2V1fWf8P5f8rI5e2QYIvn4kNFWidfQKh1Rw86MlZVIieVf8eVeS5qCiQEHBBMR
 AgDHBQI/FpZTBYMBp6g+hhSAAAAAABoAY3NpZ25hdHVyZS1ub3Rlc0BwZW5ndWlu
 LmRlImh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIvY29udGFjdC9wZ3Avc2lnbmlu
 Z3Mvbm90ZXMuQTkyRjM0NEYzMUE4QjhERURERkE3RkI0N0MyMkMzOUY4MDdBQzUz
 QS5hc2MiMxpodHRwOi8vd3d3LnBlbmd1aW4uZGUvfmJiL2NvbnRhY3QvcGdwL3Bv
 bGljeS92MS4xLwAKCRCrHktgRnVrHo45AJ0dD92uCPhsjLWrVsbhMJfwmkVOnwCg
 lKPYurVXyo6uXC/Q5KdueASb3iWJASIEEAECAAwFAj8RTT8FgwGs8VIACgkQCen5
 CopyTkVorwf/ZHfXpigg+qo5D9nzURNgsckj7d5F6M3QfYUSpE7Hl8826m80iVci
 BIkZEo9R2H9mFOf8CJFBLqcbz6vxRC0Q+xMbZSw8o0tRrfVTEPyvdh5ayIwKsV1m
 gFuxJwyDPN3zy7LejqsLQUA2IGY+pCz2kv7P0iWRvK4uaRO/z5qaF1QLd+aYssol
 kidmcMnkJph3+/UiN8Tvlr6UAcsAolj+ZShPM1whJ6aAOL1EnDmnHScVVmGIl6Qf
 2q1jtPlF3qG6CY9CyIaUSxSudAEMaGthTeM+MjP108aJcTYVF1PbyHnKy0e4tJlU
 /MW5OohVH3/KEmIj2lT2AvBUHbCYL4NW2IkBIgQTAQEADAUCPxEOgAWDAa0wEQAK
 CRBABhUOQAnq7TmRCAC1UpdCGBG6ahH7Rmw39bsX4YqExVEuCHnTvMe3RvVqx5uV
 kzsvHQU5wNYm6g+VOpMH1JMpQ7EsI4IUELbBAHfVHOOS4xWVYuPsP95o+uSGzJYs
 67p42cEcrHHvHh4BFYKOMnw38ghfizR0hTlQyAWsJ1E5uI/T2Yl++Iav1tmhj2nC
 p/mrNDy80iTLuzLZgn/6XbPUwVS6E5YUV3AOPqOj/eDpDD9GDEjS3v9AavkmoECg
 LScHU25khmXwp3fogXU0LBMglGJ47yavnpzWYCk1nzR3kWGwwSb6MgN/Ryono3kX
 IuCow30IZ9RAw8/6vZkK+dHF31sWA/i181nhepJ2iQEiBBMBAgAMBQI/T3IPBYMB
 bsyCAAoJEKWgYMJuwmZtssAH/3ctJgr6Mh+JctTcxzMdMtVAsP1xe2CGzvVbryCz
 tpeCQLfq/Bu3m16dfKurzArT56FQK+q+3uGrKe/tAYbzF5I+J8f+DdFt6Rvbsdf5
 jxfa6VqvYUXI23B1OyKs0vFamkvm1YCLhm/fUU+GHqPZwPYasL01xUSj8yJr/bgk
 Xzy3A+Ddp1IFFnFBdhonANYFUOhoSaxgkTky7dLPtJS5gla5E/z4OmacV7qIGath
 hxGT6gVIj8kW4Zs+BrWRxhGYzGDt1fJzIDJB6ZO5bodnUoQycyKKn37YE5s7kEdK
 oRMkZXWZaJk4bdF1b9EQZxlDvCBIRDPyYV1HQyk3R7az4S2JAWkEEwECAFMFAj8h
 Y58FgwGc2vJGGmh0dHA6Ly93d3cudHJhc2gubmV0L350aG9tYXNiL2NyeXB0by9r
 ZXlzaWduaW5nL2tleXNpZ25pbmcudmVyMS4wLnR4dAAKCRD5fPnjOkt/XUa7B/9E
 12tRF4ZZ6zu04Ml0342x+tMNCW7BNNIYaY8vzGv5L/1XbZnUsvMbODbswjtUIm7f
 TMd4QUlM0Onl8Os2jIKpk879oAptDdDZ9qW2aF49Y2xshn+OAMdnqg/siiQuHIx7
 bQBdM0y0hxlw86be9ioeZxSeXPcsOfEoig7f/q2nepDnrJCOqf1L5G98v/Wur7iM
 kPCoB6hb1VG6lwoATTeTqcQnBVKbxAYkNrRlzydQFMVyC1S26tkxebwURCCQ21gI
 Uv1WtE/dPwffygd/GnwIDnRaTq5GqkylB1//x97Y4dUy0Im7QXqNN7E9eRpSKOZg
 Cz50g4AL4vkIWiBz5NoeiQHdBBMBAgDHBQI/FpYHBYMBp6iKhhSAAAAAABoAY3Np
 Z25hdHVyZS1ub3Rlc0BwZW5ndWluLmRlImh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+
 YmIvY29udGFjdC9wZ3Avc2lnbmluZ3Mvbm90ZXMuQTkyRjM0NEYzMUE4QjhERURE
 RkE3RkI0N0MyMkMzOUY4MDdBQzUzQS5hc2MiMxpodHRwOi8vd3d3LnBlbmd1aW4u
 ZGUvfmJiL2NvbnRhY3QvcGdwL3BvbGljeS92MS4xLwAKCRAZomgJiDj9lDjmB/9+
 xx4CERYCnN4lFiVjVFzj+kf8CSIypWi9eV4Cgm+KD4Rzp0mykx9RaOPS80YGxNoZ
 nWs3rLou2HZDTvMSFRewgkOcqC/FHrgGidboA+rUKTqswfoItSHnkk405mw9WeZH
 KIzuqYuTPjldEXqXt0Q6fUR34S2c539ddSST2fmZWZihKo7wTfVYr1tZf4I3tgzk
 o4RbKka1kTCNaN7brJ1Lnsxsv+qWpZXkkeBxzFm+ci1whREIRlCRd++KZ10UeBO8
 efZjNQRJ6MtZaT2l2NjAMtOtUVYoQQp62U8MaGSN4GYUlx6EeGliVG25BxIp25aq
 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
 b2xkLmNvbS9yb2JvdGNhLwAKCRAQWBaFxSEJfi42AJ42PjJMjXqUqTVmXbxU2PEJ
 4svdcwCfRPxi46JV2VDJ4W63G1DaUDiWiWGIkwQTEQIAUwUCPyFXhAWDAZznDUYa
 aHR0cDovL3d3dy50cmFzaC5uZXQvfnRob21hc2IvY3J5cHRvL2tleXNpZ25pbmcv
 a2V5c2lnbmluZy52ZXIxLjAudHh0AAoJEKR5zcRatGBq03YAn2agRerjydLAVZj7
 1bDEOOp+x66RAJ9ShytdZkMoPvUd9CV/8H5HxooLEYiTBBMRAgBTBQI/IWPJBYMB
 nNrIRhpodHRwOi8vd3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2ln
 bmluZy9rZXlzaWduaW5nLnZlcjEuMC50eHQACgkQeQV2j3WE9di+ywCfasORltrD
 CeqxTVRCt5ApJnGqJ+wAoIHdbs0xxl/6vW9hya8xiNLH6bv4iQCVAgUQPSL5m8RG
 kei8OaXNAQFIEwQAjU0nYZWZedJSmP1p95TXWPHU7H5EK63z/pNlbVzHyxiCwR2M
 6OacN7sEIL/PndMM2R0wVbfjmtEogotpKeghoAxnHzZiFJPT/VSjk/pJ0Vskoi57
 VlsXztfiaShSbWN2mXe2bcr5ypfY6EMNKyBZno2nSUZRdZ8pd0tZWf3JzbqJAJUD
 BRA9Is6DvUCm6Q/OhUkBAUbCA/45odKyNdrcQ1n6i1aDW+LCw8lTxsOikdW5GJQR
 hHr8CX38zQG9I80Mc7OqspyVCiJ7RrbJB3q8i/QSauaWBGw7Hfxi2+KL0kkYnLVz
 yGwinRfH9jH2N7AV4c5pK2T6qPIqAlqvbahpiBgW3N7F23yeSkQmnZf77bwCoZ1E
 GBksoYiiBBABAgAMBQJADIE/BYMDwb/PAAoJEL/W7lhX938JWHQD/0KGlDZTHafA
 rjeelk1yI0Em+7wRI1Qi6zqhsewE6O8DVobsOOeEWpc+sTsBCxignllpVq18ovEQ
 1uqAGtb7mSKmS6qicn23/WgEE32ZmWInkZTAra2a0UPaSZl/1AYVEXrEEYRT8c55
 pbaJljPCmMeTPv4bOZ26jlnRuP1ZHnu4iKIEEwEBAAwFAj0je7wFgwOawtUACgkQ
 xEaR6Lw5pc1InAP8DiZIr+zbc88sTKSIAta6rJgXOen9D3IfF1uf31chOcwtXqXA
 ZgF3PFoQMUUvsnF2nR0FdxKYx81u+DhUJf8LEzSu7KDscr1fQfnEHY8XQZkH28Nf
 5A4Pvif4SokGIFXPJenvivZvRXm3w3vDxWsXNDeavEwruCLwTKIQFKW/7kaIogQT
 AQIADAUCPdqgHAWDAuOedQAKCRDlFSglMxzaXXqEBACRD+dGF2xlUYAuWPS1NrK8
 y9TdelmV9j8JkRPyxoFOUjTJima+I1mBIpvKw0cmcRMrXd1QBbgjL10PhpYZUdF3
 hHOqpSmG1HptytFefLb/STybLvixEeq6UGJkkAZB+nwR4Wv05fW9/o0++/02xO1f
 qyQgG2+3zk0id6nVQyo16YiiBBMBAgAMBQI/IWSLBYMBnNoGAAoJEBuwi78qkjIl
 2BQD/11SvcUGwoDdPSv1OzKIdLM8u57m2WA1FAOtlJYjDbra6p2n5ClbpNwQ6phj
 75Hi09kcEatm2WgM5zLD7laFk31ZTPVnRK8C65ZfJ91oH0Wlkz4eojSaTag3WHKq
 EcvaEBK6Mo1iiXU4o0pDq5IGuVMJeOE87Ly11fB9QCuOQacBiKIEEwECAAwFAj9K
 ItEFgwF0G8AACgkQm6BpFb+FqzHE8AQAkMxtg+wV+VOJ3NNNiouacu7qllxp9N4W
 gKsdRLJQDV+hcnIMnqhOcwewKS8/ievIC1lloZ1bIiTpwtkli9qLtZMvXKYETj34
 YEwuc4sB9eVkxiGsh8t56s6ERgKEQMr872ZZ10F9YRqjs31whrMwylRrBEU2SOLm
 5RMOzC2V8GOJAQcEExECAMcFAj8WllMFgwGnqD6GFIAAAAAAGgBjc2lnbmF0dXJl
 LW5vdGVzQHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250
 YWN0L3BncC9zaWduaW5ncy9ub3Rlcy5BOTJGMzQ0RjMxQThCOERFRERGQTdGQjQ3
 QzIyQzM5RjgwN0FDNTNBLmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIv
 Y29udGFjdC9wZ3AvcG9saWN5L3YxLjEvAAoJEKseS2BGdWseDesAoKCjFDCU3jIC
 6z+0nRKimHPzV3aoAKCrm+owZ1w6bBXMB6tZc4ZwRLbztYkBEgMFED0D7RyVYGGm
 3ZNBOQEBq+gH4QFz5MNM6veSfl4uzf3ftMDylYkMjJknlg/DXVlv0tKShrJf3MSl
 QQjf0x+RpAxMSOFj3OeUhTv9l+F+rnQljg7sqaey5DbJ0Tml6JVOQkqaMMVKbqo5
 XJMcFqvrvk4U3gSQVsMy6aIFCbUIiHDHaZgecbOnIVynPHnodPxehO1yzHXDXXFx
 gFdtVQAfbBZ97x9b+o4HuJkc7wwe7cuY24ySPP4APEvwbgobn09LBTcV6df4RZBJ
 NVBhrdi2vAyoM0cNaRTbjoH8NpTkLp91QuIWk4bbHD2r0EtxSlYx3RfJeGpBQ10X
 Jba7oETBXy5K4yU4R/9zFAscXcjnUPmJARUDBRA9A+0YAVW64qCU2iUBAZ/0B/9D
 SJD5LUeMmra4zZ954BjdkY8UxXkMbbNU6Ea1FXjU0qEBQKCzH3ROaJeqn1+nq2Xl
 VW0Mp1xno3SgqXXduwWkYGWjhZobvlU5KYVDBbq4lhsw2tU476X8+XofbbSKC00v
 +tyjpSS7fuo8Sl8U1VwQJGOLD674qCP+wpNuCSxJPrnERH5Q7cCBAsXNautiCzqg
 qSyuIMOZGh2qtpPA7dx878c2JVUf9jal65kESFWFzP4fe6U7U+9ReTQs6alzVXEl
 3Sb7tCkJo9FbRQ1TvEqK8IOVXfful/QXVDh9MyxIJ4Qm7AiUgLn1r+z9H8mpua+0
 55j8Z2r7loh9LfRTsFS2iQEcBBABAgAGBQI9J5ZGAAoJEIz2bIET3TlQ2aoH/i8C
 2dL0xDBUqoXkSIffJgqpZNUt3L2z4gDn/MvNk1ml9PjxDz2SBWOHcnwhA+PmhyO4
 umlNBGHNkktKHt09cPwLwij927yOQz2YT4izoiWxkdkWMtOTA1yX9A6LoCXUYRFo
 pjqeLmJ6l4v9sgMT4P0uY86rnF9kVh+Mt0J+no4KwGNW64xgRJp6CdJ74iWWqlB8
 VYBjK3zQ3MS7GcsDBQ3vFAfZ0QxUP6i5bFdKiLPi1bxgcDOnXV009Wd+o6nwq80f
 VplOAps5l55QUhRKI4aui0Z4p/03keadBvcAy0IlgG0vBK1k+mzzI9TIInS/cTmD
 6PU/3MCLmznJRKyair2JARwEEAECAAYFAj0nlnwACgkQ/LriDKIR9e3aqQgAobyh
 smVVEqLNKySVwdbk8wYmI5Jig5XBpR9LNg94RbDFRU5wFEJNAPo1BYPwE4YxZCn+
 WJ57lXEWNA9kNnWnF/QepyQvVId7tH7HOhqZ0YpfRIWvdrL8TrZUrNaHj77LBo9x
 rt9dduMllDpgBx7DWnx72fJK59MgvAcwEew6qqSSvGQILiSEudfHy/6sYPBjLgyX
 yQIh6/Tkn1kjf0rCqAl3qMrcIuAJ/JotSxkjw9tr6JFVuebsaf/W6zKXzsiXxTfA
 8gDzC7ObL0vDRP79pMT7jfBFVm3y7k/PLSwMgVsex2UFO2ko2z0lkCPcRKCi482V
 WM4R75r/rdBISG5c+okBIgQQAQEADAUCPQTDrAWDA7l65QAKCRAJ6fkKinJORT7w
 B/0QLriSr9e8qYg9LKzZ9dRvhJgoNpVnCgHXiWDwuz3Yy8IfCwoC83aail+I/gEc
 53vdYpoz/FL+IKW15HRY/WQV/JDujTOEr1bGRivYdM5t+jYZ5Cc+8azPCY8aKFBT
 ppPRssQJt7ibBIFJg+AfMq4gEz/KFfj9AszDhEBsrOTTv1nk2oV/ktXE+VMx5dH1
 1ilyJJf+yuRQVfJvUyQaIej5l895/+DeYI72WR6mKTjR+1Jxkl/qn2u2PQJSWQ32
 bzIu/vaOXBVJ2PouIvMf0pqmv617tMryNEvhJGu2aYBGMCN5hv1MklMkwF2azwir
 LvnOAulpumomlrdvAw/Z6yZUiQEiBBMBAQAMBQI/EQ6ABYMBrTARAAoJEEAGFQ5A
 Cert6LcIAOC3o4H8Ma/GD2heMQ4F7cgMgO5/jfeLzMkuYRmxYTK/tc4xGTVuK/o2
 pfEMS9MYs0wwjzcYq/JWKly0/vSW3D2jiEUzfBgvWuuYPWfliexNwsMnPaxIrnc5
 Q07k9byyTsyCBLmZY3oI0hbyP5GSDRo7NLqXkhTdL18pHP/roEIuXNe/58K3Ony/
 SoAm4rCb7BoKu8XkU55uFyuy/4Fi9lfVoHWAhXwnNOd/Vm087hawu0OTV+2KF/1l
 yPSMPHNWmgZEa5lGPw9Z37EnI12rpNy+qJc8D6aNNLfNYqUBwcd4xAFNAeRF9+mK
 KOXLjruvCBge3d/4edhSkx2Hc8L2PVyJASIEEwECAAwFAj9Pcg8FgwFuzIIACgkQ
 paBgwm7CZm20cAf+LEy8ELPU4wY8XrWmxPJ+7E6kBejGw5ImZAfIAuRIhmYAkl+p
 WjLO5LKCH15fWMr6qch6pcq3KG5sIT1j69fK6Sx10wlKj7LY9/ybiP0GIUjJFPaz
 ChNRdWIltSl8bX5if4HKnlJPlLt61O03aziOR9FkV1xXC/xw37y7bmQJNZoFohn7
 GK6EQPMWrZL7+ywh4ty/0MzfXNlWQssZU2pZQRyDVUl+EBmkGlXmUu/dQHBLlanD
 YlVDyBUy3iWPINDoDdba2ny2g2oRmvMXlkh+4MbeVkU+B2cE5MMe+K3uJKP7vTbZ
 KCWPUFJ/SyPju7aoM+D45BylEpzlIDa53DlkgIkBaQQTAQIAUwUCPyFjnwWDAZza
 8kYaaHR0cDovL3d3dy50cmFzaC5uZXQvfnRob21hc2IvY3J5cHRvL2tleXNpZ25p
 bmcva2V5c2lnbmluZy52ZXIxLjAudHh0AAoJEPl8+eM6S39dkwwIAKjo94Mz7+ry
 atxk1pmMylgu5u77qqnvJ4gwOLB7lvYJCLou/QAyyy0I5iwKSQpnWJmkzV1XZdnQ
 /qqvMSH9l49cgxA/kQTM5laAXf4JXCM+JdLqcWlvoNAApJB1T8uQzi3+vU2RdVKJ
 gl4HehvyTOAS4fWMqQBhz1ha5xaXUdPFrnC6ih3bflmWxFxjK6OtEOi+q+sTlALf
 PZ5S7tUazNCHXYSjtC2AncW8zq1tp+TYMJ9/Cj2j30M3752HW73oXQAHW4E3cgfi
 NWlxRY8eC/9XR7PpnZYV9s3gbHoYrn5vkbxOmzW+bbw//y8CBV5vtLdJo4J2bR1Q
 ueKjIAv6rBiJAd0EEwECAMcFAj8WlgcFgwGnqIqGFIAAAAAAGgBjc2lnbmF0dXJl
 LW5vdGVzQHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWluLmRlL35iYi9jb250
 YWN0L3BncC9zaWduaW5ncy9ub3Rlcy5BOTJGMzQ0RjMxQThCOERFRERGQTdGQjQ3
 QzIyQzM5RjgwN0FDNTNBLmFzYyIzGmh0dHA6Ly93d3cucGVuZ3Vpbi5kZS9+YmIv
 Y29udGFjdC9wZ3AvcG9saWN5L3YxLjEvAAoJEBmiaAmIOP2UNN4H/iI98ocmrlSs
 XKH4kvKrAXdVR6Zt/eWN7bDhufaiCq5gPpkySvANnBSHv083bor6AoK4v77Otwl5
 SiTnK9A2YkPqfk54mYzX6Wyd9rkXfvq7gx1FZIv7Ad8Ht2aJqAhGlSZWQ9DE7b7l
 DtCDwrDREimWAdGozy2sjNsqPYyF0R6okrHfkOVheXEw9ogZY8hrPQYENabv4R5n
 Ig0QsK3P5QA9c6uwcEPYvz9YLsJNPgub5PnU9hWwhinttwq5byt5f787YFF+61Lo
 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
 n4B6xTqoNgCfSm+e6Dv4s4Wtr73ovH6Lbs1TUAkAn0QKGHaINuoDhsxIfNOlL9lb
 rCu5iGIEExECACICGwMECwcDAgMVAgMDFgIBAh4BAheABQJA/A+SBQkHwp7/AAoJ
 EHwiw5+AesU6qDYAn2zcDnGt+xqpHa0UV/spcQZNacwUAJ9koQddSQY7o0Qd6qX+
 +yU7yz4REIhtBBERAgAtBQI985fcBYMCyqa1IBpodHRwOi8vd3d3LnRvZWhvbGQu
 Y29tL3JvYm90Y2EvAAoJEBBYFoXFIQl+suMAoK9wMiePGVWghspdqtP9CzYpY/ZG
 AJ0bZJu2VkMvAWRlGOzRgT36eZA9uIiLBBMRAgBMBQI9BRkQBYMDuSWBPxpodHRw
 Oi8vd3d3Lm1hdGhlbWF0aWsudW5pLWJpZWxlZmVsZC5kZS9+bW11dHovc2lnbi1w
 b2xpY3kuaHRtbAAKCRDehYP4vb/oOGeJAJ9Fj3VCUQIZk0qd9UGUEJIXBH4m2QCY
 xLYupcwjq5IpO3TDnf1pcPonSIiTBBMRAgBTBQI/IVeEBYMBnOcNRhpodHRwOi8v
 d3d3LnRyYXNoLm5ldC9+dGhvbWFzYi9jcnlwdG8va2V5c2lnbmluZy9rZXlzaWdu
 aW5nLnZlcjEuMC50eHQACgkQpHnNxFq0YGqazgCfaWuFD/Y3mWHymdnU3CL15fZu
 daYAoMYSpXJwS+IQh7rsdske4ac4u1oniJMEExECAFMFAj8hY8kFgwGc2shGGmh0
 dHA6Ly93d3cudHJhc2gubmV0L350aG9tYXNiL2NyeXB0by9rZXlzaWduaW5nL2tl
 eXNpZ25pbmcudmVyMS4wLnR4dAAKCRB5BXaPdYT12CdDAJ9wa2zL0+9ucn4EEYye
 2ewY2ftnLgCfV0GGtD6qqswRXSX8xg1uVT8BvTqJAJUCBRA9IeIwxEaR6Lw5pc0B
 AU7xA/40Pz2+U1DqLqhc9q+gjGYaKbvB9cp1XD7TdtaZGQflFatqzjUWMFx6moDB
 NpH2ewJwERxaLFPIvl80RwhcBVOanPYXS/Tk0AGwhsXYnNmSXQz5esxe9UIFk0Ng
 ZNF8je9vMOgD7+sNVu+3NPQc45XajKsoRq6i+vOiy48grLPrvIkAlQMFED0izoO9
 QKbpD86FSQEBPwwEAJyHvOQPxpnXgPRkcH+WBATeDfYACi8wRtYqpBHrUWo0i8x+
 05V9QWEaeJSauaKEhEoF5zjG0CQ+FZ77gWcF+W2AU3sBXXt3yK7hu2yVDu0dZ4V1
 ycN2d4LvV9s2X+Gig+lnF3m9n+hE7XkR3kjcvlToi7D1rAtQg4G5xJFFVxmPiKIE
 EAECAAwFAkAMgT8FgwPBv88ACgkQv9buWFf3fwm2fwQAsZtoL1euv11o+Jx/BSax
 ObERXUMTQ4WQHRh+uZSTWdxM0H+lLCvhBpquwZ1bTRKFnmb1JZTpkefUJ5h/ZG1M
 WBP8TA3vQMzVhwu5VrDiWehp8OK5hliRQKzXy7qiup30DbSB/bDo/70+jDGU1Scl
 MdVWIAHB0RZ4+sMz0vm6LfuIogQTAQEADAUCPSN7vAWDA5rC1QAKCRDERpHovDml
 zaUUBACDoo52K7TgUbPWPP5OCCSXu3gq0MmsZkGa9ri/FQGErQB2UyxJlldsih1J
 Hs9UDsxvcvi0PHS2d4UgAL7fYp7BY64JfC1XA4lkrdrGD3DkYWDjkaGHwdzkXUzl
 TKro29bJvuqLtdSaEfmozp6oNyuG8I5NEIsY8Fczynj5or9PRIiiBBMBAgAMBQI9
 2qAcBYMC4551AAoJEOUVKCUzHNpdilQEAJ2mlcltB/DyQtNOneX+qAQJe2L6fusQ
 rfQxDg4c10Wk+66Hp3mvooRORBJFOei1V1elBSrqwkihrioKVubPpHVVMSACsdbx
 f+OnCzp2xcEAlTca60RCk3Vr7HovwC3ok3FQYenOsjN1mim671DrEuShZdcXr28N
 mVbS/BxXdeBqiKIEEwECAAwFAj8TM1MFgwGrCz4ACgkQtGuSO22KvnGBFAQAp5y1
 TghvnXEw0D7SVExX4YBjBc4WkjdYJNcPGv+e+lzhBQr4omRWfaXyJ1QI4wJhIOu9
 UAaeXncBRObPTawsD7bROf9kCois/pPxwq8U76O7jHc0U1o243izjxloa52vlUVo
 lysBTQ+9wbtB79YWCL76AxBRjZZ8ncq8IZ8AbrSIogQTAQIADAUCPyFkiwWDAZza
 BgAKCRAbsIu/KpIyJSKcA/sFG59sCKxjoDnvAIy7tKe5zETyZg9esDUP3UE2EcLm
 P/ahWMPwAEU1Fm43WhKf96vLH94Td7rZisji7zxlU/6/g5z+iUA3zFBTJQ6O5WYV
 KGGRG/P2MfZlmAEUTIYYuPDn8Wo5lOw/eJF2jOAGAi7ILPeHhXxjjn72X1tqQuJO
 W4iiBBMBAgAMBQI/SiLRBYMBdBvAAAoJEJugaRW/hasxz+MEAJE2ZbBrCenJ67wV
 bJzITCAIgbC5s8K7DqHhEIxIRG/O2DbU1g3mgxbV+6PaAonnPvl+HEF3k82g217t
 PkTXYJuBrt5T/NgcwxzlkMZ3xUKZybz50KvxDAnKw5OIcpSnh2E7+Ja1AkBbzF5w
 /rYMdVKdlj11CUcEY9CVkwQgc0KriQEHBBMRAgDHBQI/FpZTBYMBp6g+hhSAAAAA
 ABoAY3NpZ25hdHVyZS1ub3Rlc0BwZW5ndWluLmRlImh0dHA6Ly93d3cucGVuZ3Vp
 bi5kZS9+YmIvY29udGFjdC9wZ3Avc2lnbmluZ3Mvbm90ZXMuQTkyRjM0NEYzMUE4
 QjhERURERkE3RkI0N0MyMkMzOUY4MDdBQzUzQS5hc2MiMxpodHRwOi8vd3d3LnBl
 bmd1aW4uZGUvfmJiL2NvbnRhY3QvcGdwL3BvbGljeS92MS4xLwAKCRCrHktgRnVr
 HlyZAJ9DfCRr/epketGKHgFJqEtUpKY5HwCfV2vAA6M5/ECBMbzYgnvk0AyXR/uJ
 AREDBRA9A+0klWBhpt2TQTkBAXlOB949F4PDm6NH+kr4CRk1ZBe9XPvpDwi92dtW
 8XbnSuQeEiTyuuhsh6hxznc0E6hxp0TkSyyQQvCkM7jdepYUz0YTcrv/7B3l8PcS
 m3LptluQmsuaoE1DNh9jrngLwjQlF31/4DIAAb8R5FDA2E2Yes6S0EwPHH3jjvae
 YT16+krw3Lt2cja6vnmslelegCc8HvxqPRvOQAZJKg2cOwQyNz30yYBaFEcEKCFD
 msAKPd95/pOHzaAAkYlDHrzlNBQ/9ieuApOGnWe5zrTJ4U7zmnJk1wSOpVQtzliO
 j0nRdVtPGSzAy71XeiDkwX1ZpuJs+6WnAsJysZRF7xSe+8+JARUDBRA9A/EIAVW6
 4qCU2iUBAXx8B/0VFgPg08KC1EjdkdTmruI5RRhnurqrEDNuh9zhGoc+DIx5OMBp
 Kdv/FuBMLvHy9s4rpg2q94Nb4fCoU2vz8KJMyFvDIPlLwixriqBBeITPqSdJmGQz
 h3bNOJ7tBoSBzRg+TDCCPyI3zWnoZpnv5ASu3nDODiImcBaMEM8XlvR4ciiv44kg
 16C6d8TZ1KlYUyYzGmBA1AiwIuPnZdwkmHL1OOgviBZdopLUNdxMmuSpoZC7fkUP
 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
 SP8Rml2yzyTKryNM3iVKy429/kPItJvOPYg4kxE3+FI+sGI62uIyvlo0PDQAMrng
 BRPLr5pvW0yI/cdz8U0cUnX0X/OJAd0EEwECAMcFAj8WlgcFgwGnqIqGFIAAAAAA
 GgBjc2lnbmF0dXJlLW5vdGVzQHBlbmd1aW4uZGUiaHR0cDovL3d3dy5wZW5ndWlu
 LmRlL35iYi9jb250YWN0L3BncC9zaWduaW5ncy9ub3Rlcy5BOTJGMzQ0RjMxQThC
 OERFRERGQTdGQjQ3QzIyQzM5RjgwN0FDNTNBLmFzYyIzGmh0dHA6Ly93d3cucGVu
 Z3Vpbi5kZS9+YmIvY29udGFjdC9wZ3AvcG9saWN5L3YxLjEvAAoJEBmiaAmIOP2U
 CZ8IALz2EVXVA8GCZl76kXlvGSmV3hz8/q4bBIlnYy6aLzsauR6wpyWmdqZMPU+K
 st0mo78V+ervN04nxOmoBZVdaeMlRyTyiqWQ0ROVNao12qZPyWMhiio9RMU/mno8
 APLjGeYW55Jk9DB5xduJb96VdzV4dbc9gu5rDeNu2yjryjtxTXdx+oTOY3mfUcqd
 eLFPskwu/B2BuKQYYiAOrFceu/XX8VtqUR5dAv48X13DYbS6BdJPQ6WtOSxKHIS/
 k2qbjzStLwTrjFchpr/gpv47BT3HogLTJX9f56sm8r7qxhxKiqmq7tOyRMwGM28R
 JquO5Q9LOmLcvCya8pR34EytUQuIRgQTEQIABgUCQJQrewAKCRCLCMMOVLxyY/vL
 AJ4003CSouFl94u7OVa8A6nnBnS85ACeNFSQ19KQEERCs1SuHtEIfbgjf7mITAQS
 EQIADAUCQOpisQWDAuPeXQAKCRAdR29gbPDq96o5AJ9nh//vF3E2avfO4IAq/+vY
 xgtSBgCdFN+7wMBiqBWOPoN8KW3t/ptHZ1CITAQTEQIADAUCQJjtNQWDAzVT2QAK
 CRDthAJ60Bobc5K8AJ9nqIQdRzbAYh2C7ugn7XZgZ0tQPQCdHvklVlsUQfcvs0Sn
 XPLRO4i4vMqIYgQTEQIAIgIbAwQLBwMCAxUCAwMWAgECHgECF4AFAkAL2hEFCQbS
 aX0ACgkQfCLDn4B6xTr+iwCdFReAd2YstulCrK0fu6MSfDh2E9sAn2X8hpotkUZ0
 pV4keeMIfgm33P/hiGIEExECACIFAjz72OgCGwMFCQPCZwAECwcDAgMVAgMDFgIB
 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
 /DCnBQED8w==
 =lqQ3
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.149. Dryice Liu <dryice@FreeBSD.org>

 pub   1024D/77B67874 2005-01-28
       Key fingerprint = 8D7C F82D D28D 07E5 EF7F  CD25 6B5B 78A8 77B6 7874
 uid                  Dryice Dong Liu (Dryice) <dryice@FreeBSD.org>
 uid                  Dryice Dong Liu (Dryice) <dryice@liu.com.cn>
 uid                  Dryice Dong Liu (Dryice) <dryice@hotpop.com>
 uid                  Dryice Dong Liu (Dryice) <dryiceliu@gmail.com>
 uid                  Dryice Dong Liu (Dryice) <dryice@dryice.name>
 sub   2048g/ECFA49E4 2005-01-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =No5H
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.150. Tong Liu <nemoliu@FreeBSD.org>

 pub   1024D/ECC7C907 2007-07-10
       Key fingerprint = B62E 3109 896B B283 E2FA  60FE A1BA F92E ECC7 C907
 uid                  Tong LIU <nemoliu@FreeBSD.org>
 sub   4096g/B6D7B15D 2007-07-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =nL7g
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.151. Zachary Loafman <zml@FreeBSD.org>

 pub   1024D/4D65492D 2009-05-26
       Key fingerprint = E513 4AE9 5D6D 8BF9 1CD3  4389 4860 D79B 4D65 492D
 uid                  Zachary Loafman <zml@FreeBSD.org>
 sub   2048g/1AD659F0 2009-05-26

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEocVOYRBACUSj+Rt8ZAKD0QoT4yHgh+f74lmw0pegpzvQ1DNBhGdVWfIM77
 n6hK4QSYPhSNT/Zz6qqsZlcnuSyXwKDcu82rOUJmo44UalWbWF/wvz4ICuMMttCy
 WRko6Z+lfzILBr+simnAUX2v9mIxfnkg8mEN5/rMc4rOda49Vbcdc0aFEwCg4/or
 HctUnKwa6r+ArXlZ8bxLX4sD/2A3JzXegkrD6LOwGA/STqNhuolad6ZZpvJGpr1n
 gsYX5ihLaYuxBBWK1ech3Rm8GojvsOpmcc5YTtjb37n/YU9WYoKcmpJukdEYNeSZ
 BQPi7jVXUb3joJobOT1LFYjrOX8/MoOgIxPI7RBM27G5Uarxe0RpF8r94bUxEqMb
 SkgHA/9KqKfxHB7suexO993OtM4fTcnJjCfarcL8qpBOQlYLAP2Q3IGZpjE39Bmy
 tnDNwrZ/8jZrJxBttZ5Fjt01pvMAEpFVHm+QNheqBOqpyN4jmyOsvmSjd4YL5ZZQ
 hUhuPS/dtInONvWvBmOHBsoKdrgoUPO2EuMW1pCm/0i7xHGCtLQhWmFjaGFyeSBM
 b2FmbWFuIDx6bWxARnJlZUJTRC5vcmc+iGAEExECACAFAkocVOYCGwMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRBIYNebTWVJLe4bAJ0Q8l/7TIpaYFGoaHUkv/YF
 VdcR/QCfVOdEcCe3gPZ2k5KLC1D8V4ESKue5Ag0EShxU5hAIAI7OSBr9s4l3skaB
 +lVNxA/eEkigb0ghP+OoLVRvd7k3LZpjM27jqMhdmu/8U9bTRTX6kA7Ur7uRF1La
 aSrc6unoufkWcm+w7M9sQv1vwdxOg/D9CZttjMxNJs18VRQokair4OAR9mMXybMT
 hBw3H8B+H0AZh7eLTMXUX8q6fc/Dy7u+sOq6fnCY3vIVUUDaw5XaRKI/mWDmQcMa
 4hB79gvNxHjCs2oF5ntyaCF4nsggmZ2guOjN9oBoo6gm09QFlVA5Nwz/g5s84m0t
 Gtz8sGSPK339kwaT2Tym6yR8UszENlyjG1wVVaQhBPHvE706jOlPXc2JasNKoSqX
 Flyj7icAAwUH/0z2SEPs78Ws3eZq58axkafUowgB31tEM9Ke0jLNy1nGkcC+poyh
 Shl4DNyUbLb86J4FrkFa7bmJi8VHteZYjTxrY9usKLKGkbZV8qNd8ry1emG0Lx2g
 JM5jcRp6ghT2qufHF9PukKwkmNRJJgvAbgSgLi9dWkMymmpo0LsKfKmnoVCy34tV
 704K7JOOBHob6Gi9vMXLYkBUPJCn8BALbZi0WRR/D5bB+OHucjJpEp6lHXYihkX7
 xgSyrzkI2fvDLmJg6/jmtsrQwJFScf2E24IWO5JGLRsuqoE1UUcnmqQKLZ+iH7vI
 fSYNaY/TcB55V2TmpzpYmkGBgI8G1dygrAqISQQYEQIACQUCShxU5gIbDAAKCRBI
 YNebTWVJLTvyAKC5FWGAM6MJaj/cNvWfkdMFaZqAGgCfaktgPFqyozZiZQuoJM5D
 +FztFoI=
 =isE1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.152. Juergen Lock <nox@FreeBSD.org>

 pub   1024D/1B6BFBFD 2006-12-22
       Key fingerprint = 33A7 7FAE 51AF 00BC F0D3  ECCE FAFD 34C1 1B6B FBFD
 uid                  Juergen Lock <nox@FreeBSD.org>
 sub   2048g/251229D1 2006-12-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEWMWfERBAC6P55NRPt7PWHQk3e3cp6yAYpxsNH4TyMZUNKFjE9E+g4GDe1F
 fd1ebE/as+qcZ7rnIoEqXMYyXW/8X8kdE7FJVoJBmH3RdlaJhHSxogrAHZJ87PWH
 yGC4mP7F2zvLjUqB2fUC6gYUJybmYi7F6run1zPKLr5A5Polx/SpqL52IwCg/5Kq
 vo2Lc3ceBT0L5BKOWFLHBWMEAI/OIOXhv4Hsu0k0Ol+Zdwp3vkw+geBo0MVHp0/P
 XItW5TM5Xi0iqQAcBU2KmPKUinaIJEEPAat5sPMZ/0BUsdmhlD6BqIp0qC8LXm9g
 Tqmenm3WpiJPsd486lW6dxzFqOZKdb6qq87SJ7ajnPB12SykRW26VkyHzNCqiETL
 LigDA/sFPsm499ccL62BwkRGax93iYylhsrV7zXT8FXAPIS/S7JasvaiyHTvRv8K
 u9XSO453WZtzN7TkNp6i3Vw1SSxbrwCRZZ7nspEdMXWF9ZdTtSq8mpA3R74X7dKM
 SXPbbsTFfQ5JR9v8x5T201nFiM/jPteU6WbfyQc1MuMCUqwzm7QeSnVlcmdlbiBM
 b2NrIDxub3hARnJlZUJTRC5vcmc+iGAEExECACAFAkWMWfECGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRD6/TTBG2v7/bkFAJ9/NodQJ3G3mLhNkT/rv4ncgpOV
 KQCdGm6jx53ESn4s8YJAPKWgym0AKTq5Ag0ERYxZ/RAIAMR6vbusFDGVMpB6AWhC
 cru/N6Qz/kfB6+Ufy2nXcYMMaD2c4MiSUSV6pF08s+xx8oqh6DiGdPvdJQ19ZAdw
 BJaD3tc2EeIv7Eh0upHhC7CuRk3eHHd+KaKFquLGU4HNMEvxXkW+DZ0wWrbVIu0N
 vRBYXJlil7B3RE9+9yQLdoK1IA/N7DtUvbezVC3Px/ZuNe+cnI5neXZVnm9ks9E4
 qlghKSdb2LLghwfBy0JRqssZnvvqS+kRz0LJgKIX57pSrHfx0L5Rwu1JWqvmWKYV
 hkCogZFXpn31ArmmJ54O5KEP4hYNR2FcF8hwNjMqfij29QRi7xpxDLQYgUjM/kTl
 g1MAAwUH/2TJn6E3LtPX7ceMUKVyJRO/OsS7/r8nX8hPRmX/cnnoHTtYOQ1S2F9J
 0IFTZKubxfyhp9ldRx55GiDWyRvGhhjCOuUH7VCSPMCURbMOHi67EDfqbHPzhKcZ
 1lmeqpETmPx4SbVQ9vQ1802gsyZzNy3BQcoK9GIw1Bg6KLYVQ/9rcSDHAB+ULVF+
 YkthjJcPDQPdcn8Zy+xGDuciav9HPaeRXK8nXvx8ERDti99GiuHI/S5+t3wDeTPT
 dZuMiiJYsVc3QuuEN4eMseohFUX6R/Mnm2L0qFc43k3h0vmOoTu65dMEnYZdsKiI
 wXTiy7GaMXH69Iuq9QK5wAQGHwTDbJGISQQYEQIACQUCRYxZ/QIbDAAKCRD6/TTB
 G2v7/Z/1AJ9MfhLFFNtQHDgvIwjgQa2xJX+N5QCfQKUy9vBwNhrVvrH86hoDMhjV
 d1Y=
 =E5fg
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.153. Remko Lodder <remko@FreeBSD.org>

 pub   1024D/8F494B77 2004-09-03 [expires: 2009-06-25]
       Key fingerprint = 575D 8AD6 8646 E6D2 1226  0A8C D2A9 0DFF 8F49 4B77
 uid                  Remko Lodder (Remko Lodder) <remko@elvandar.org>
 uid                  Remko Lodder (my FreeBSD.org uid) <remko@FreeBSD.org>
 sub   2048g/6BF55109 2006-02-25 [expires: 2008-02-25]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEE4vPoRBAC4dNWQ87nDcZoYBN06IANIh9vEomUme0YimbljsIozq+BLDgZi
 6A6iQXWpoEWSCOHX5nCnQDS0selxJ7easE8tm2NXHIKLOCStDh9Jk9/dPpvAPAKF
 ZRyRf6emtNFewvQqxaP16Rs3mlvyfzKDWhIp9QPz5SohpgrpsNR0HcU63wCg34zJ
 uXgWapznE1e/gpFHVSdao0MD/ieMQBXiusNFj+ULjm9w+XossGiSuk5t9n5YlLtl
 Y+wpfeXq0bAlAjCHMmL3ZpPsksyTcJT4NEYyd+JUKBT9YVOitXHUfW005qHDFXBw
 5hMl8SritJLxNY7OfEvVeGM06Ipeaw2IwxrSBiN9vmPMpdO9hZl1Vbj0vJ+CTgnb
 l2fDA/9rsMfj8rsFNZipEprRo3tJQ4G+SaZAIvaHxwFC6ecTrIJ16qYfSPOB50RU
 Yuiz2UTQeVUHYcUqzpcVmUAij5WX1gcIrQdYL9BC3Kpp+POc2IPlpHcqcijhHbi0
 WlbRyaMTkARVJ6NTU6wFChvS7WTHwApo7dUJJEYNSYkggksiGrQ1UmVta28gTG9k
 ZGVyIChteSBGcmVlQlNELm9yZyB1aWQpIDxyZW1rb0BGcmVlQlNELm9yZz6IZAQT
 EQIAJAIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCRKAV1wUJCQrzXQAKCRDSqQ3/
 j0lLdzhiAKDXhajHOwIGMBW2fRE9kspcC0pfugCdE6uMVulTQyHVUZ+gdV5ngPLS
 axG0MFJlbWtvIExvZGRlciAoUmVta28gTG9kZGVyKSA8cmVta29AZWx2YW5kYXIu
 b3JnPohfBBMRAgAfBAsCBwMDFQIDAxYCAQIeAQIXgAUCRKAV2gUJCQrzXQAKCRDS
 qQ3/j0lLd+PcAJ4oQDiFAGq0gCH0hcNu/yvRyeuFOQCeKbycSr2jMe2m9LR++UQp
 QaaGq9S5Ag0ERAChRRAIAM6a31FevymHZ79ZCv/oG5DjsSVGtM1cYbWvA4C+EStc
 vEWZL/tEMqJipi3tjaxyHPfuwAGd8NyagY89i+YXrpe97OxtbXk8DUDL5KHJH92H
 rLvm40uBIULeQgdXP23RQQxLt6UYQ7nmAMbbU0NKkErNG4KxEc7wX5XFtMoRn06o
 s+CQ6ynS1XYH5yaVRFAOo/kiC0DsQUE/k1e79UvVo7kq++Zmx20bQ8EN8fJWCjpz
 gnXbNArUw3w4Srsbq0mOQqtlLQTuZkwnDdPzmTa7AREDLE3NrEt4xXdCT9iHPyIg
 yqikm5YR/FCLJ3trEq1l/5YLQLC8ygvg4dd6aBm27a8AAwUIAJUg4wJvh6F989Er
 h3bsnlrv6rlo5Ij4ktJeptXjkzT12uI7mBhM5UuLkjrwN2+XCq1qnKtjaYW4yt2f
 rUYXLMQ0jFAH3wus/9rX1AMQMjErDvUj2lZWyc77ETFo6cJQDyy7BQb5A/5fOSv0
 astxip4m4xDAyeiM672jwEJ0H0vIRMXIIfVXj8bmg7da2mylTkku2gsA6moTLKx0
 jBg5P0Q5XmFO+H21Am4XFlIJEyeooaP5CON08tKyE7GyQZTrbRWJe/8G+rNs0jbB
 cpqPHa/0n+G3E7G0zho7QCYGtNh5iIn0/IOXhhoP/wQhh7Ay4Gi4BxtsNfgNWwoq
 q4hHxY+ITwQYEQIADwUCRAChRQIbDAUJA8JnAAAKCRDSqQ3/j0lLd5WJAKCiNEXw
 yNgsPsGLogwW+0OZLjrMsQCg0i8S8DLj+bQdZtkh58Ifdq3nXlQ=
 =jkQz
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.154. Alexander Logvinov <avl@FreeBSD.org>

 pub   1024D/1C47D5C0 2009-05-28
       Key fingerprint = 8B5F 880A 382B 075E E707  9DB2 E135 4176 1C47 D5C0
 uid                  Alexander Logvinov <alexander@logvinov.com>
 uid                  Alexander Logvinov (FreeBSD Ports Committer) <avl@FreeBSD.org>
 uid                  Alexander Logvinov <ports@logvinov.com>
 uid                  Alexander Logvinov <logvinov@gmail.com>
 uid                  Alexander Logvinov <logvinov@yandex.ru>
 sub   2048g/60BDD4BB 2009-05-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEoeNvgRBADOJSDLfbgPuLl4Y1QO/1BjX2MFveYtMacSLpaJURRewkBmoKBz
 iXa9a5A+uKiQTtX8S8bnkvwmpzEua8RMWUN/XXb8aZc7DPcZbP9NFNaNZ8BLgnLC
 FK1gIEpJpcodAQ0K5HAGiLwjsK3RdM78pvDUJDDmWPaflk8llx4H7kjjTwCgwIRy
 /8f8FHQV3zUIGqmJDt5019cEALE+LTHjCOZkk0YKqVETY7IAKX48t/o3t+ybkqcC
 zFYIRA0v7FR/ipxkNgSzi+tKMaExDuFuV9aZEhepS54eXriXyGmzvevINlHlFgh+
 60WrUGIlkVtQYCW4EeP7kB66u6uV6PnKqFUXPLoF7MDg5nrJqaX7r4+9d0JopClN
 1L52BADKV1retnbON3PP460z4j9IJspst9n1AZ3y9S5ojZ0IvhL9UsjazvRheTCm
 fArizJMTtDUo9SxWXCtpfxruYJSB5jlhkZFMC1oj484mxm/MgNxJ8mov2RAT1Pu4
 85PjDNtAKq7yrTf8x7PbNVpoJkU98lZQ84Bt4RbaqechA3l/l7QrQWxleGFuZGVy
 IExvZ3Zpbm92IDxhbGV4YW5kZXJAbG9ndmlub3YuY29tPohjBBMRAgAjAhsDBgsJ
 CAcDAgQVAggDBBYCAwECHgECF4AFAkoeN8wCGQEACgkQ4TVBdhxH1cBPpgCfYR9i
 yz3P8GnzGKzKacDhYSSRdlAAnikohHSQEqzFyKimalh+Vk+yv1mutD5BbGV4YW5k
 ZXIgTG9ndmlub3YgKEZyZWVCU0QgUG9ydHMgQ29tbWl0dGVyKSA8YXZsQEZyZWVC
 U0Qub3JnPohgBBMRAgAgBQJKHjeCAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AA
 CgkQ4TVBdhxH1cCloQCdGWWbAGInaDd3AqGI07kIeHUfZjMAoKmujjBeu/1n8bsO
 OwUIcOutIiBRtCdBbGV4YW5kZXIgTG9ndmlub3YgPHBvcnRzQGxvZ3Zpbm92LmNv
 bT6IYAQTEQIAIAUCSh43kwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEOE1
 QXYcR9XA8FUAn2F8Y9LTsvK/GJAMU2gboZY1DCxnAJ9XnCdD3w7uQscd+sqIJKuV
 KlYsDbQnQWxleGFuZGVyIExvZ3Zpbm92IDxsb2d2aW5vdkBnbWFpbC5jb20+iGAE
 ExECACAFAkoeN6UCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDhNUF2HEfV
 wG/MAJoDJLimxPsysGqpRWMYb36855NBLACgn8ICeVtfyqCoxAv0YIYk3K0M9we0
 J0FsZXhhbmRlciBMb2d2aW5vdiA8bG9ndmlub3ZAeWFuZGV4LnJ1PohgBBMRAgAg
 BQJKHje5AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ4TVBdhxH1cBWygCf
 fvEVUFOSzEPylUJMZt2NKaiwomQAoKY66bHiWUIReF5NliBlsM3bv5qyuQINBEoe
 NvgQCACVC9Ks/nhrOVuHu9rj52KRW5J7S+20ZOZFOb90iVFCwFSn3/TstqGnao9X
 NQBiopv+i5s5AdmVjUyHnTSMggqVGfxltgG6ttxmY+iU7N/+aIXkbPzHZ/qZgKv5
 ey5MhS+kFV8Jh2IGV6beaQM0KNJ9LV9Hq1+V4ae0ulaGYFrNnbwI/rdXZ7vEETCF
 EVM3NP6xsgiw1NQ/V6b7iriTroeRytu7XoRlchik/7sQBLBwUvIVAD7BdHqjQ1NF
 SILyTr3aPagu1CxARmkCCDX2sfcqT2/9wVECubbgcUMRjVHm7k5BsZK7fGmHcBZg
 /5Rl7ngtUYwsR4h47A0aH4IPZ7AzAAMFB/47qL+Rb4wqF+sCWM/QqCrgFqMwz1JI
 qc26U0+a6bZ6kJBbMzvBcdrVFRfn52qacCdfFpdI6Yz3fWQyzrAZwqjCTPaGBeEd
 rSVbonW5dDjJTkSiKMlo53D19PcNklSjFnCrPeF4aFQ4VbT3RioWh9P00xhCHPQB
 hsg+cU9rm5ZASMht3K+k+bgpHT9gPVzckZTC73l3xaNetTDnHlRDw8ATvBYcUfYr
 kDp3tgkZ7a1pPRMz1oOKNWtxW5Z07HLj0Lt2xyZDe0BSImiAa7MYC4PKLi5VlDKB
 GPjLDrM9K1XUM3Gp8O3bd5qjnsueu6XOdGZA93g4wjXmzDqhFIXy5T69iEkEGBEC
 AAkFAkoeNvgCGwwACgkQ4TVBdhxH1cA3KwCfV8uCW9P5gm0+Dfm1miO/j6rvexcA
 niBfAchAUVjJn+UKjAd5RD1SFTAm
 =bSSP
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.155. Scott Long <scottl@FreeBSD.org>

 pub  1024D/017C5EBF 2003-01-18 Scott A. Long (This is my official FreeBSD key) <scottl@freebsd.org>
      Key fingerprint = 34EA BD06 44F7 F8C3 22BC  B52C 1D3A F6D1 017C 5EBF
 sub  1024g/F61C8F91 2003-01-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.1 (FreeBSD)

 mQGiBD4p5ccRBAC+tbiJm4bc9dO8oaRhVGqWmNhYfi2GnX4AM2h+L7bcIU/7jWVn
 uWGe/PFHDcuOpEov/XRw1gmgoNh2DopTxf363DVMevmGW3R1842YMmLvCYZ7C0Rd
 0GdbHW1xXeRSygs6peLcPGQ/7ISK0BHMudFim5FrpD0tq3qrqRmuGgls2wCgyF37
 u+ZoP3xiP0wANhoWJtyBWQEEAIeYSHvIPKFIo9FG/+wckx9Fc+hLXPKwoETBPof7
 Wft9zXiYyowuGj6/ydb6v229nI3lJwVPR8X6Ptjf6rO1vjf7uUED9dNBLr10vdW6
 jYClBT8lqJAq3DzEpDk2kOlhYwtrykyld9Ys/7vgliuBB0XRUxGVNieqDck7PZWL
 ewz5A/947m/ZrlZbn6+jsshGk30/pEXZUhcDnUBwW26GuFk0TGlXBha3N0NFwqz3
 a7qnJcvSTKfeZJY5NCwqzCo/rLpmaNd9JCUrgwSd1MI9Txrbj3lDRy5dj4FZBQ2N
 BVgni7SRKaiPw1KeEprSOR8yiM9ZjbV1g5zPeZ2bZhSMCP7mdbREU2NvdHQgQS4g
 TG9uZyAoVGhpcyBpcyBteSBvZmZpY2lhbCBGcmVlQlNEIGtleSkgPHNjb3R0bEBm
 cmVlYnNkLm9yZz6IWQQTEQIAGQUCPinlxwQLBwMCAxUCAwMWAgECHgECF4AACgkQ
 HTr20QF8Xr9fvgCfUMy+qlN9qQtwMFAKWViSllk0xYgAnApLMv95d6Ecrj7+U9Et
 liAwNQXWiEYEEhECAAYFAj4p8nkACgkQtNcQog5FH332EQCghR98TNpvYGdrsg6Q
 S3BngO5n3VgAn1zo89iPy8VMP/kXq2jlzs/74+i2iEYEExECAAYFAj4p9igACgkQ
 2MoxcVugUsOwsQCfY34hwJIc8MapwIy8fWmCeLs4T0IAn0aVpewWF99H6SapelNP
 hvDzTYLIiQCVAwUQPioA7mVgqaw0+fnVAQEUHgP9EJXxzQlkaN8VsfRJo/UFmC4z
 wGkwu2yatUjMSZR58VpS9rF6CH1rzmNFtZZmIh6ItQ/mPaUDW2yObWBRL2r9vkVx
 e+DPcpcZAebM3ibjsOg05cftcphv41rLak0C2Nec3MXnxT15O7fcO6aO+d4oJ2Yi
 oL7YJX6RHrqNCTQn6/65AQ0EPinlyxAEAIGtuZXdf7K51Gb9jijgdV1NMPKwujoq
 K9f1PZocpDve0vwXN6AvzJ1L/LTrZPvBZ0UCAJR/zVtz4H2bnSqalbd8j8bmxfYx
 0SA3QNAKJhgBGNlnK4HvAGJCs8oXYp+6Ph9WWlTcPzkfscPFc42VcUEdfL/5kyLr
 OvGAUW6D7iCnAAMFA/9CWXarz2QMrkduiasc8bhSmv2lVOfUVcIdz9imc72Z5GUk
 FBiQJ2kuqJrxMUqAgoccnJ9R0QVZwCaQyRNakEQEcENBKq9Haa5LLo7nD3CAiqIi
 URqloJORSzXoQCrw8OelbBp9RaEqVdCecbNqAbA8Ru4NIwcyZCgvnX/bUTKq54hG
 BBgRAgAGBQI+KeXLAAoJEB069tEBfF6/XBkAoJtQ4ECj3ntS2xlODgB8N+cKIsdb
 AJ9Lwk2EEIZhvzhwvhpwIKAhWhHcmQ==
 =C3Jv
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.156. Pav Lucistnik <pav@FreeBSD.org>

 pub  1024D/C14EB282 2003-08-25 Pav Lucistnik <pav@FreeBSD.org>
      Key fingerprint = 2622 B7E3 7DA5 5C53 2079  855B 9ED7 583F C14E B282
 uid                            Pav Lucistnik <pav@oook.cz>
 sub  1024g/7287A947 2003-08-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =Jmz+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.157. Rick Macklem <rmacklem@FreeBSD.org>

 pub   1024D/7FB9C5F1 2009-04-05
       Key fingerprint = B9EA 767A F6F3 3786 E0C7  434A 05C6 70D6 7FB9 C5F1
 uid                  Rick Macklem <rmacklem@freebsd.org>
 sub   1024g/D0B20E8A 2009-04-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEnY+RIRBAClGSwgcIr4i7G4CYEa2cBHRC2UOB75/AXFqxmzAOcype8WInbX
 f4xLBa63VMoM7eis27BouVRcHI64oREIL9yvvMPwRD2ZINY5UD/zkls7fw9F2NyJ
 AgntQEPRDkk14AEiIX5uvB3l+JyKmbMNpJuhrKpbxc5qvaDTgD02y9TurwCgguAy
 pMVQu2mtVccXkSb7WEh95SkD/0jTFzDTcuowbxALrPgQtlGEXo7RYLPIFxTI748F
 h8Tgra3flWp2QPAnWBJEzrz+9rl8wqQ2ddb9IydwtY49BjKIrXhj2Lh+8l/1oDKr
 RXzRbNH/lGHhmphW42DgM9mOCCoSWugUEu458I89FjuoncdBiDdi7HUxPy/rZ5MA
 tnRRBACWL22M5MPfD9dl9SHvnoBz47nwlBeg0Oxl22oNfiyTQdJ1q+g/wGpDPAll
 eqs3Svky7gj+f5375K/DEYaeFSRynXeetpdqpkBDlp4mRdDGcpd/4ImAx6deQTXo
 EraidVlZ0Fjr5cP+mFzoI41LAhTJa/VUoUkMxq+gJAsXsSF39LQjUmljayBNYWNr
 bGVtIDxybWFja2xlbUBmcmVlYnNkLm9yZz6IWQQTEQIAGQUCSdj5EgQLBwMCAxUC
 AwMWAgECHgECF4AACgkQBcZw1n+5xfFFBQCfbFJpzSEXUgmoEl4RBgoPNzu9SOgA
 mwW8fBCx0RDGfho/8S/PjZLQ38JCuQENBEnY+RYQBADMlW1YS4ZhBh4PCOXTJsjT
 Vda2DEn1W+2BzZw9j/DFAFjm0U05rlEsfz584Y/SLlPNbCZ979//3K7XxicRw7zm
 E1Mzahy2jrmGGJv2GfAZ+YyJPGA/xndNA3/ocT1x03LMWNbZwFBe4Kk5ShoqPgl3
 cO28w3TJUnrUZyo+h3WhpwAEDQQAkwVB18LmtI0CW4H0/jMgiz5B0z3yZdlinbif
 +EEFHhhdp1tXtxA/jyp3FsW7hOlGXQi/tACcxJ2UBcYAZh03+x7bUMnJpisPDnJ3
 UilCuwk5cAkQmGeAQ7ukNNBwVhJ0ZfW7p2lZ2RwW7zSjPK7RMW1EL4Scwpey/ojb
 Tv9fVXmIRgQYEQIABgUCSdj5FgAKCRAFxnDWf7nF8WUfAJ0TTs+DTEkwHeE4mHAA
 CqfpXJXMhACggkoKIIAH+lHNqv3Uy9q5RFd8t3I=
 =F39a
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.158. Bruce A. Mah <bmah@FreeBSD.org>

 pub   1024D/5BA052C3 1997-12-08
       Key fingerprint = F829 B805 207D 14C7 7197  7832 D8CA 3171 5BA0 52C3
 uid                  Bruce A. Mah <bmah@acm.org>
 uid                  Bruce A. Mah <bmah@ca.sandia.gov>
 uid                  Bruce A. Mah <bmah@ieee.org>
 uid                  Bruce A. Mah <bmah@cisco.com>
 uid                  Bruce A. Mah <bmah@employees.org>
 uid                  Bruce A. Mah <bmah@freebsd.org>
 uid                  Bruce A. Mah <bmah@packetdesign.com>
 uid                  Bruce A. Mah <bmah@kitchenlab.org>
 sub   2048g/B4E60EA1 1997-12-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =D0KC
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.159. Mike Makonnen <mtm@FreeBSD.org>

 pub  1024D/7CD41F55 2004-02-06 Michael Telahun Makonnen <mtm@FreeBSD.Org>
      Key fingerprint = AC7B 5672 2D11 F4D0 EBF8  5279 5359 2B82 7CD4 1F55
 uid                            Michael Telahun Makonnen <mtm@tmsa-inc.com>
 uid                            Mike Makonnen <mtm@identd.net>
 uid                            Michael Telahun Makonnen <mtm@acs-et.com>
 sub  2048g/E7DC936B 2004-02-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =TuyI
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.160. David Malone <dwmalone@FreeBSD.org>

 pub   512/40378991 1994/04/21 David Malone <dwmalone@maths.tcd.ie>
             Key fingerprint = 86 A7 F4 86 39 2C 47 2C  C1 C2 35 78 8E 2F B8 F5

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: 2.6.3ia

 mQBNAi22tqgAAAECAPARUB5VpJvYQyHAzL0WITkJmKG1lpwFMPz4jenjJRplPr33
 OvKxQcXh1bAWNVFiJVDJsWwnfif94wQdVUA3iZEABRG0JERhdmlkIE1hbG9uZSA8
 ZHdtYWxvbmVAbWF0aHMudGNkLmllPokAlQIFEDCwQ4yqxsuiiP+uKQEBricEAKAE
 f18kbKpFKU/DPRVhVYlLHCkzXLzZCiTxBUGjMaXZswKwrjVLF2l8mrNQhqC9L953
 AGyUYNfPLtqw7b088v3ATCIrZ+izWyE27IrjZWSS57GZiDtnkm6moarG79yANBql
 LBc0sK077cHEC+/gDwXNBLg0NNpHkaVXPxixt/ETiQBVAgUQMK+p+pFKk8pIl/up
 AQF0QQH+ME6vPoS2+FgSN1q9R1hwmwEPAaYdyfhv2lj1/6KYDEaO9Lhw2u57nW7z
 CDpir9gNN0X9U3XrIxlJ7wWxa1k2PokAVQIFEC7vu/zjBB1VQDeJkQEBWFsCANX+
 qJO8J6qeJW8gcrmxMBA0l2MjEHcu8XNky6YT3yS6So72yL1lZbG78Sew03fXnWNS
 GyhRrPz7sURNLtJDNDo=
 =wpn4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.161. Sergey Matveychuk <sem@FreeBSD.org>

 pub   1024D/B71F605D 1999-10-13
       Key fingerprint = 4704 F374 DB28 BEC6 51C8  1322 4DC9 4BD8 B71F 605D
 uid                  Sergey Matveychuk <sem@FreeBSD.org>
 uid                  Sergey Matveychuk <sem@ciam.ru>
 uid                  Sergey Matveychuk <sem@core.inec.ru>
 sub   2048g/DEAF9D91 1999-10-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 /CYAn14opUDUCjxXXd3vrkwzNCIrYQ5i
 =iDu9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.162. Emanuel Haupt <ehaupt@FreeBSD.org>

 pub   1024D/90215DB9 2007-02-06 [expires: 2008-02-06]
       Key fingerprint = 741B C70F 100B F360 0B52  E92D 5F01 7A86 9021 5DB9
 uid                  Emanuel Haupt <ehaupt@FreeBSD.org>
 uid                  Emanuel Haupt <ehaupt@critical.ch>
 sub   2048g/6DD0929C 2007-02-06 [expires: 2008-02-06]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEXIhOYRBACqxbx/nLwG1OVuFs1wt2zASY5P1JbyZ+DA0+21YKpYz6EjRIcn
 j3Y1FFJO5T6pR8yTMz47rEaT4K9OLigYZkwWg8G0WUqby/CJPylEkAwrhg8do7ys
 kwTJMg8nOlSyv+m9KFK2C8mhcp/dGqp/Ev91iAKE9M7wCNxYzZGk/lHnVwCgi3yc
 rQReRXDrXkOnJr0v4g93T58D/3rrIQJoFa90o0iUCatDJxvQ5eG0vxVPcERssGF1
 vUAWFJn83cImWHltpOEWyBgOnfjfkFKZolG7QXBejJEPXYdSKzinDT5yqWXQXCHn
 YCQxtO4OPxgtlV56sAlAeZgytuGfmkNfzkhoN8nRD3YXBlVWrhQwhVdmv5MBi7Pz
 RFdCBACk+4WuKIVkRCKualPZocELQnAXuD30AFqGP3w7EAac8dlXumsgdQsP667G
 R/RaBo2nks+tA8L3LXkMCgSCHFP3y4F82BFaNufkf5aTGDk4KOeEOLa4Wn2kyAQb
 kxIApsN1T7y//EFu/VoRRIx7sU91ep1O4Ww3TPhpaqm92OGfsrQiRW1hbnVlbCBI
 YXVwdCA8ZWhhdXB0QGNyaXRpY2FsLmNoPohmBBMRAgAmBQJFyITmAhsDBQkB4TOA
 BgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQXwF6hpAhXble+ACeL4FCsn3oEeNo
 3OSZGqK7HyeSTvAAnjSUwB+7Fi1OIiOzQVIKo4a76IyJtCJFbWFudWVsIEhhdXB0
 IDxlaGF1cHRARnJlZUJTRC5vcmc+iGYEExECACYFAkXIhRECGwMFCQHhM4AGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRBfAXqGkCFduYUwAJ4gfS+qakG4VbU4zMW4
 uBMXB9jg9ACgguQQkvNLpX0HktmO0BvhVRkGUsy5Ag0ERciE7xAIAJzXp5NhJ2vr
 E1mxRlgeWrTzQ9/W2D1+MAQvH/nEZLq3yS1snyLvk6KQooRN9MP1hftWMOSsAs5u
 cvrnKJOxouK2bIAdd/dk4dwVky9kq95PHow1NNiVEdWX+CxjmZXZ6uzr5XpXqSVl
 A8aaZTaSoAT0hzDWnQ59HdwzbEDwNGQrSmLmxK4TxmYsVM//KyPnG2tGb+lrIsf+
 6j7m/QrHrf/5j0hv5OGtnD75f8no7BpNZ6nKfusM8j1qECf4GA0rQheXLsMalst8
 MwZecaxWdvdHugiJUFbyRrBFWYWK2Ne0wyPTx9mK/CP2ayLJro9vsA7Tix6d1S8z
 4kkFShsxveMAAwYH/3EnNUO2EpN/R9uogeEUobHifbTz3Da/xe9/+k3iMZbW+6TF
 ntw7aFzemeAYVabFPwqyn9FfzMAsOlz0u7djn8X+lp22Nvr+eYjfnSyGfGu8Uso/
 KKdg4QeshrCcIDVdYBa314aatPRIBUO0qPRJISOhXC3NV+6QDaODT6p1xtsDSfdK
 BDct6uqntgHRssTzTlBZzwoZeoC0RqcIipG1Ly+y/yoTou1MiOoN1SvLMsJtrENz
 3+oG4p2yoZY5zodvJNmus3ArxHyVpn/iM/8onOufSZnftgDay3XPqxUIBVlpXLZt
 CuKP1XuWS8odKzGYrFAuWq4TW9QbkuRY0rwpCs6ITwQYEQIADwUCRciE7wIbDAUJ
 AeEzgAAKCRBfAXqGkCFdudl+AJ9Ik+uq4ank2SalIwfF2iFnNb0ATwCeLqLQIWnM
 2KoyQBvRCcKpNGcqYUY=
 =8Iic
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.163. Dmitry Marakasov <amdmi3@FreeBSD.org>

 pub   1024D/F9D2F77D 2008-06-15 [expires: 2010-06-15]
       Key fingerprint = 55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
 uid                  Dmitry Marakasov <amdmi3@amdmi3.ru>
 uid                  Dmitry Marakasov <amdmi3@FreeBSD.org>
 sub   2048g/2042CDD8 2008-06-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =6qxA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.164. Koop Mast <kwm@FreeBSD.org>

 pub  1024D/F95426DA 2004-09-10 Koop Mast <kwm@rainbow-runner.nl>
      Key fingerprint = C66F 1835 0548 3440 8576  0FFE 6879 B7CD F954 26DA
 uid                            Koop Mast <kwm@FreeBSD.org>
 sub  1024g/A782EEDD 2004-09-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.6 (FreeBSD)

 mQGiBEFCGHYRBACI9ERMi5j2009Juy2kpXS860i9tJJ10mM9TNuCZVYcPRRTiSWe
 Q+YySmBtR9TA3OZfd6BA9EqusEgcwUJpxjZ8zjGzirj/OjcPtKwM9ZO6dadeMNaE
 wT32bJDUw//2ky2xflJCsjg+TSO7PxQi3g/YEWfau6Istg8PKfzHQan0EwCgxwrV
 6JijZQ85jIgQoceJjkwBLHsD+gKeeSUG7g2CO+NJf2d0tBj+l22QzmeAtlnuUskd
 nHKDAzzty80e4HXkUYw8IMueR7Fe2Tjx20OvVSkzMwiZYqevIJHVhiouCFZxYpSa
 JQHPYLpMXMVZ1X8d17tjbFRBXWmNrDcEhb4m3WoDKfQD/qbMCwBErsQ0t15dddnQ
 BVyqA/93dSzMYRC+Zm6Hzfk5Dz2MsvsxEE30ysSwFjIZ06RtYPKlN0x3ABCGba8f
 o5H0P6+gobJRLTQfK4xDS4J3G/d7TWO1bZGk9MPEzCJDexTt5yfKsY2jZRVRrikE
 fIbdSUgLnczBdUno5qC9IyMhGNa8O92GsjleDm7D+p+wkkoyCrQbS29vcCBNYXN0
 IDxrd21ARnJlZUJTRC5vcmc+iF4EExECAB4FAkFCGHYCGwMGCwkIBwMCAxUCAwMW
 AgECHgECF4AACgkQaHm3zflUJtqlWgCfWKIRLzsvZjBjuck31Ep8sEDP0GgAn17m
 X0hYq8W+2gbHbmYeqIFefHs9tCFLb29wIE1hc3QgPGt3bUByYWluYm93LXJ1bm5l
 ci5ubD6IXgQTEQIAHgUCQUK9MgIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRBo
 ebfN+VQm2sH2AKCnwIQ3C8+62/uQh05mqXqdzAaU8gCdEkRN+L9HY1OwFlSDi6Tc
 OAWLTPG5AQ0EQUIYdxAEAItGBQMO4f4rHYh9zc4fd62RhBfMHJpY1ex6HeiHt3pb
 i6KfBUai1zRYxgq9F+8qR9WgBLF1VhA4O0nCU9/FKOChc19W7xKa2auvE22Kq1ta
 xjCszahtPTDGIBs4K8u0fH/Gx4VSikQcfIGNd3IK4vALbLfH+iK/1RJNXPzQ9A4H
 AAMFA/4+UBNqZPucstZgmEwVB2H1Bt671fQqODpWj2eOMIYJWXKraUxdIjUqzm9K
 QhC7LBj9ihsn+LRsO49oWIAv5bks4zC0STACJ+Lx+FMb1i5ayAp/03DoZyrjRnGb
 SIY8Dtqonut2nic0NQ4XD5uqTkx2t7xlKJay/n4Nop2uqwajOYhJBBgRAgAJBQJB
 Qhh3AhsMAAoJEGh5t835VCbaOZEAn3wkQ7xISlGUox1/aiPU1CafRrZyAKCXgDLa
 wlCa23ftqh2DPxkAXtCnEA==
 =FIQv
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.165. Makoto Matsushita <matusita@FreeBSD.org>

 pub   1024D/20544576 1999-04-18
       Key fingerprint = 71B6 13BF B262 2DD8 2B7C  6CD0 EB2D 4147 2054 4576
 uid                  Makoto Matsushita <matusita@matatabi.or.jp>
 uid                  Makoto Matsushita <matusita@FreeBSD.org>
 uid                  Makoto Matsushita <matusita@jp.FreeBSD.ORG>
 uid                  Makoto Matsushita <matusita@ist.osaka-u.ac.jp>
 sub   1024g/F1F3C94D 1999-04-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDcZe6YRBACDOZSZ5cWE6IvNkx2Ht6S/VdIY1OXFU8n+cOVxNIHFWXPUOrFG
 F526VZoPfjURnslubdxXC8TKGspX96uc1jdROHvEwsxUUELyzZ7G5oJ5wd4jHwjq
 K5zwV5FZoNm1SHdeN0FqZB9rlJdOt0kxVZS+b1PUc0j1i4oDNZz7+8rc0wCgltLi
 c2i5RQzjuvJvF9P8OYGujHcD/3Tq02ov/aNX+jIoO58uuOBZpYFL7ZfbCeiMs+4A
 dmvjTI9MpfLBP711iu1asuikx6HLQts9UTVk36qP9ubNmFi54kDHsej7Ce8m+dOu
 Cjcjle6Be71MGLq4YUxd9xZmGGDPhEFnHWbB/QPP4n/m3DN3hblWBgP2PsgmqDyK
 518dA/0bhL5pvw5LSaRtGxxWvFBInfWGzC5EuLw4ERZW+bEFB0To08ZnocLRN/E6
 tZ2JTr2O5aMLqUEM3jgsIvs9EOGUBwPRzyOQXpc2uQemn7J0pL6PQfuBIaUI/NOu
 ULM0gQfLIV3wOP6Y5gH0FBcLt/ofrqdYys0C6zTq3LqDW5FdQbQoTWFrb3RvIE1h
 dHN1c2hpdGEgPG1hdHVzaXRhQEZyZWVCU0Qub3JnPohfBBMRAgAXBQI71CCFBQsH
 CgMEAxUDAgMWAgECF4AAEgkQ6y1BRyBURXYHZUdQRwABAc3PAJ0VtHlKCmR8IjdR
 KJxY0C5fdmaDGwCfecy3f/dYGQsljHhv0Wr2PxciscS0K01ha290byBNYXRzdXNo
 aXRhIDxtYXR1c2l0YUBtYXRhdGFiaS5vci5qcD6IYAQTEQIAGAMLCgMDFQMCAxYC
 AQIXgAUCQ5F4YAIZAQASB2VHUEcAAQEJEOstQUcgVEV23p8AoJKAqle5nC6Wi6yO
 TZtcr4axeBnAAJ9ABx4gqACagCDc/OMk3pmtb4sy1bQrTWFrb3RvIE1hdHN1c2hp
 dGEgPG1hdHVzaXRhQGpwLkZyZWVCU0QuT1JHPohdBBMRAgAVBQI3GX1RAwsKAwMV
 AwIDFgIBAheAABIJEOstQUcgVEV2B2VHUEcAAQE6EwCdEPG7N7vmhgYEqmZqPLm6
 oqjHOpIAnAr1FfVDPXpfE2SmXUZenG7+5MwntC5NYWtvdG8gTWF0c3VzaGl0YSA8
 bWF0dXNpdGFAaXN0Lm9zYWthLXUuYWMuanA+iGAEExECACAFAkORd40CGyMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDrLUFHIFRFdraSAJ91gKAjNH0XzAKohpQV
 vo3uT7LNvwCeJSxDm0hpmaOpa+LCcabNP91SyhS5AQ0ENxl8HhAEAITl4uP+i5aY
 Wr7mPBLAaWfoQ4fyT3pUThtStiymqsrEDFKhVqA/KD3PUV1CeOBc9oq69x1+pUlk
 VYz3vDrvk0hP+dy6nerUEbkdGtMKLvGzakdond55jgSTZ6CPHxqyLva06QpY8tj9
 CODunFUE+MPVV4Lf9U4wMeEDZFEYvcajAAMFA/9kKoDY1ur1mAPJRWAcEONxnwiW
 qe7l++fg/294wra8IkAbF760iMnqq63qavsGT6xStMi9EwZC687p86sFex6KF+uv
 P04CTAyt+FAph7oa44AdWJo4tJ4SP8xIznOiZS8clWwxTaqv9Ncy6LZwbZf/P427
 egF1zuv5A/MTO3KD7YhOBBgRAgAGBQI3GXweABIJEOstQUcgVEV2B2VHUEcAAQEr
 7gCdHJTTs41XBpfprQCErm3tGXwRrG0An1zUSEtG1AA4jFXNgIlud0OO4aMm
 =aY+v
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.166. Martin Matuska <mm@FreeBSD.org>

 pub   1024D/4261B0D1 2007-02-05
       Key fingerprint = 17C4 3F32 B3DE 3ED7 E84E  5592 A76B 8B03 4261 B0D1
 uid                  Martin Matuska <martin@matuska.org>
 uid                  Martin Matuska <mm@FreeBSD.org>
 uid                  Martin Matuska <martin.matuska@wu-wien.ac.at>
 sub   2048g/3AC9A5A6 2007-02-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEXHDPMRBACme6PyRAt6LcfVO5LiPbtq6rYu4e8zrUjd7o+FiCEYjdF8VwXU
 3RQ76f1cx2tnNyvv7KEQX2/NyPHQH/3n3Cu5w8BToQrV6sEAMP59nWOIKSNTXNGN
 BAbFXvRDC1vlPXyXaeRt6InF90FmJ/ZJpTX1wYGenYymZtBSPd3q1iK6DwCgn/I2
 9FLTUjOm2qknqLGGZJ/w96cD/i6CDQa1VzwyplIKCbPDqNyJh3qW23JMkW3OGwRk
 nY8H4RrR3LNfCpiBuzw8JtO8vDT/NoUKG4rXFMYz0pPfPbWnJD+qtGEl3fXtNC3f
 a4YwTTDil5VSi846IjHK2rEwDvUkMAyiEbthOIf2U8JRn0KThPYb0alPyNuF+zaM
 HUUxA/wNYHb/qjqCI0iwSNxTYKeruBcua4yg7NKeeHtA0an95CfT+AyEW6inQ0Od
 WSrDljmZbq0YGFndRZnxlwClzA2ueS3+/F4ADvn0kONhzXfVewRayOHXLiXlcV2d
 4+g3oYMWVsR/DAi12ezzvkHnDWsSeeXPKkBXMAczmKd484RpbLQfTWFydGluIE1h
 dHVza2EgPG1tQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJGEkt4AhsDBgsJCAcDAgQV
 AggDBBYCAwECHgECF4AACgkQp2uLA0JhsNH48wCfbHM5Tu8ABaGHO1Nlv0jtrc8L
 D4UAnjIzKUyR6A0ReHlqZyAQA7XQ0lxztCNNYXJ0aW4gTWF0dXNrYSA8bWFydGlu
 QG1hdHVza2Eub3JnPohiBBMRAgAjAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AF
 AkYSS5kCGQEACgkQp2uLA0JhsNH6FQCdH3LhF9TLVQbd5q5sYYR48zmXaPoAljRf
 JtDTR6ZLdjVowmZAmSlsFda0LU1hcnRpbiBNYXR1c2thIDxtYXJ0aW4ubWF0dXNr
 YUB3dS13aWVuLmFjLmF0PohgBBMRAgAgBQJGEkthAhsDBgsJCAcDAgQVAggDBBYC
 AwECHgECF4AACgkQp2uLA0JhsNHkiQCeMQACotd+npbhK1pJMKBcFOHrzUwAoJYn
 ZRIacsYvjMBNsx4UUkfYs70wuQINBEXHDQUQCADlHvWxPueR0sgha8L1Fwp4yTE6
 AbqAnkYw/nC/2q/oUDg97VFdZM0tOi67sLYHic3Fj/Il7w78jctdlpagW52b+R2J
 l3LFOYlbmbWkUj7iUFrDA0QZwO9IZw2yxDP3zkEMvPh9YtngmgI8CKRtXrxgY3+7
 9gEN/evBiEgS9rN5/tGI5V2Pt+VTXWfw25zRnOTTThgL/sRtqKykSJ6nsJfwO2DY
 0VFpb9ndFR/zG4ozJLupV+ku0EQv2xXlOdvhdWkLgXN+JRtrP1CxWzPTA6CP+m/X
 cYiT498yBauwk+JTGqeOKUfn27vpycGmf/VGwBoh2GrhzXRnOVBkDXb20ztzAAMF
 B/4/cFjtT3rdyJpFRoSl81Nvj8/DvP1ICovH2YUY+bIdUU83Id6AqKv5vOWhlhbR
 5Np9EtWkdyInXHhzs1MDm1xdNFmwkVFJB+M/XNmj5lgZ+e1riuoo07WcwKN8LdBY
 oOoSoKViSzEoJwlkQazOCAURSWHIlr7rYwM17oAgDjJ4PjBs4l3zjIt+wNU40wYy
 JOnBxjyK5ucKUAHq/6vgLmvj+QZvhcDLpKxRvw5M9PLeD1iomiY3qzNRlOF4aUr7
 GX8wbk+a9rsiC8dIGn++9D3BrvGvVLqxEruflXmpokyalalitIL3N3WitPjMu7gW
 EUotHnqcf3TGK7N7ffv0SXRpiEkEGBECAAkFAkXHDQUCGwwACgkQp2uLA0JhsNHl
 SgCgn7/wkepKhD2TrONJELS0/iy8WjcAnRhJSMsrJApfDOhu0ER1TqP+cFy5
 =HbmE
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.167. Tom McLaughlin <tmclaugh@FreeBSD.org>

 pub   1024D/E2F7B3D8 2005-05-24
       Key fingerprint = 7692 B222 8D23 CF94 1993  0138 E339 E225 E2F7 B3D8
 uid                  Tom McLaughlin (Personal email address) <tmclaugh@sdf.lonestar.org>
 uid                  Tom McLaughlin (Work email address) <tmclaughlin@meditech.com>
 uid                  Tom McLaughlin (FreeBSD email address) <tmclaugh@FreeBSD.org>
 sub   2048g/16838F62 2005-05-24

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEKSlvMRBACEIyrOE2NlPjwg7bS3nUC4S/D1nPV22eEJ0ga9+LNHlQnsJON3
 lGOU6iMGa6QaBoqg7Qw3aL6FaJlogNQfIPWZCRZdfJjlbw0Yd6EzCpMqoowB+4y6
 XuObOhie5bdHFK8NVk9n1BZGUELcnPGMdhPPIQ/UHq7Rlhbqh8qkcA0imwCgzNEV
 oPAY1SeozW0kBE6YUXXGQXkD+wRzl9As4+1CE3ZgxUWtoNqYvZMNWYTbO0ZWMx6i
 YWJ5GkLCMdVqNZ7iCteeDBVoRzLEbD/FyVzazPm7FBSxzK71EC+C4Ybt2IQPWfBK
 Q0GI+2ghQ/HyLh4gLCLP5XEk9aw9DwXGJt2q7HngEJli5o8LFVo3Qiu5X+QeC7QN
 r6uGA/9/raZnDF33jfAlx1jrHnFVEa1xzs81q2LK2ii+RdU5bvTJQchoHFRKZMBW
 HszbXB4f+wqkSkj6B7od8hBINJwdumQXdjO6nybh2abkCT2f/nyK7ktCcq027AD4
 BjWWFltUZpvspzq724SOEyBsbYJp4YTB2wys+gcyDF/ugaJCl7Q+VG9tIE1jTGF1
 Z2hsaW4gKFdvcmsgZW1haWwgYWRkcmVzcykgPHRtY2xhdWdobGluQG1lZGl0ZWNo
 LmNvbT6IYAQTEQIAIAUCQyJDcgIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJ
 EOM54iXi97PYq4MAoJeuQSfnGZsPBIpzOZ0vHmf/ZV4ZAJ4kKyQrqbxup6u/vMWG
 lS9JqYlZj4hGBBARAgAGBQJDnF0IAAoJEMYEPFZyB3E3kccAnRcxLZQIxgo0T22x
 GUDB8tkAUUOTAJ93N4aVydp/zrDo+OE1HStNFEsWvohGBBARAgAGBQJDnGKmAAoJ
 EHninGCwBj/nLhoAn3sa1+X0ccAhA+iPHo1mypN2uKUqAJ9B46J73q8E7PU17U6k
 RHY/7eCLaIkBIgQQAQIADAUCQ826swUDABJ1AAAKCRCXELibyletfK2IB/9GoKeE
 G2qDTfQbwG2Gbj4sW2FjaeNryneSTxXRMpK5dBwiMi07iM8Ze+8NdE9KlOzA9I1r
 tkYgR32UCfteyQXU8YvsKf6Q4wRqKbpckqI43zXMdvXyzG23P6/gR/Ozqh96Z9vA
 i6WdnvxjZaY6jItk357LJPQDP6zQncKFfcw7W+QAPx2N8BrUUy8U94kW6URhS01R
 d3NP8JylEXqqF6L7cSxcmO3A2QAVjzDpmfWu6AvREuYY7dkSSZWGK9hpoEjPN5GS
 LDgwRaiYZKHYz8Bx2UUA6sqaoebqAHY09bHIZ4fMiEkm7SSf5PsoS0emb9O0q5U1
 tHI8+6LkM6Zhs57CtENUb20gTWNMYXVnaGxpbiAoUGVyc29uYWwgZW1haWwgYWRk
 cmVzcykgPHRtY2xhdWdoQHNkZi5sb25lc3Rhci5vcmc+iGMEExECACMCGwMGCwkI
 BwMCBBUCCAMEFgIDAQIeAQIXgAUCQyJDgwIZAQAKCRDjOeIl4vez2IaCAJ98fPNG
 gmITFIYH+M3UBkw1YTvfAgCfQdAkDAFJxVrvDZBDliO2NB6jAu+IRgQQEQIABgUC
 Q5xdBgAKCRDGBDxWcgdxN2PzAJ9d7HmdkCyM5CN7cgG6BaZ87AHY5wCfUjblYg9y
 tsrTj2+ip8f05PC7zhCIRgQQEQIABgUCQ5xipAAKCRB54pxgsAY/5+exAJ94yol5
 HuRwmESdxzjj9S70GoYbsgCgxad9osFjtuxHHX37vaxUgJyLEbGJASIEEAECAAwF
 AkPNurMFAwASdQAACgkQlxC4m8pXrXxT7wf+Ji6vtaE5wjEI3/puKsHfGJmmHklL
 UBkcl5acntPLPxhXa2Z742ZZW+3QXeUyyXnqU1/BSn6/NBYO6I8yUJc5QptnlCvQ
 sJpwJlnTd7jBhSzN+L1xGxxvmmq2LfzLIleW8ye27vBOW4JDPDSgz4gVTKRqc0JV
 1EYULkWCGpfDA/xPP+4Lhizz57Q6EqLVurxMjNLE2mqV7feIvYoGLxOX0RxbNSpT
 +uJ+6ydpyE8UhykkQwgN0vhaokwSHC1KWWFH0ET38hcdFvaVrWZsrG/GwGg0T0mG
 23CvIdBUGH9U0roJjUa6CDDQz8ohR0P04lFpVsgDi9AVPEFWTX4gcUwyILQ9VG9t
 IE1jTGF1Z2hsaW4gKEZyZWVCU0QgZW1haWwgYWRkcmVzcykgPHRtY2xhdWdoQEZy
 ZWVCU0Qub3JnPohgBBMRAgAgBQJDIkMNAhsDBgsJCAcDAgQVAggDBBYCAwECHgEC
 F4AACgkQ4zniJeL3s9hsCQCgjLOKwwiG6bABO6ue0mjHpvR6nhUAnidSAywDgVQa
 nv8Ev+hIv4/QpD2PiEYEEBECAAYFAkOcXQgACgkQxgQ8VnIHcTcenACeNyN5PiZU
 TJ72eTxbc60q6PpkVOIAnRInAWvK8iW8I7uGOMBmyYtZWfu8iEYEEBECAAYFAkOc
 YqYACgkQeeKcYLAGP+czFwCgkAtsuKGoojwfo/Rg6p9RCazIUjYAoJ0xxWeuZ/df
 7lkbyqcRGJOfLeBBiQEiBBABAgAMBQJDzbqzBQMAEnUAAAoJEJcQuJvKV618rKkH
 /1kUl4Cqj3n9a+acjUnl5gH1r6SVUuNK6pPJPVpBXDOGWQQPfVYl2LTtFfzIh+e0
 q7J5os8timFbi/6HaI3RNV21XoqrDVgmRA8lApxM3dfB0hlJ6jx9eoUjHgi4n08w
 nX3g43I0zoRc3lQPHFc0jV9yRhgAln2yHmrvdcW0SUb8Zv/FvyG26W1gyEvl0cPE
 /AvKerTr2oP3aKnWtQfylovIw6Y+MmP3AynlvYghY7qw5QSnw3PhITvoFh4Lg4hI
 c/AoY69TAdf4d+kHtbo9vssMoT/NAIaAN3K8hdzSmJ0Ifsj7/K9+qtYz3r3c/+Qz
 1pH6hqz1u13upXLo/slPV7S5Ag0EQpKW9hAIANJJ8W4+BYSzM6ihW2ElYyt3h2hp
 WXptNPnrZDAoqx7YtCyPnUpn6dJrlsz2NTJiW7ahdsCQqrCyMTRCzAZAbFN1s8Se
 0hlREeHxGBIw+trapap/B2u0VQHDfVEL/9ib+jUFm+Gp3izgcgf4y3tvJRmmPCgj
 Y9fFcFu7PrntYsK91OkgungUriZ1fbjx0OkHRaz7nnq+On+dVElFh2iTwpZKrG3L
 7Qws/iVWamLOSQ14d3fzWN/Y7pF09QjOo5i/iyN1QEYiOffYaUthWr7lJ35muuaH
 yEMeodSNkKCF+BqpmmWKgJohopQ1/f36WjwlaVKaRh0zCIxcpX5xPtSoMzMAAwYH
 /2OiL+gBLaaTC5okydoeHAE+G5TobT4CI2fw2P9htDWVYf1eIriTRYKywSyjF+YS
 nCc8hleBDCwrUY03GXCFEOq0SAR97cfRhzxlHps3n3iAuZp9TwcGDiskL0wAaNS8
 43AKNHlKRNWxXoCE4oBlq/t1+DV+7BnjdI+MCAUe8h4y/jACIxpxnRKjmAcN2qDh
 THauJKvmUjw5W9SvgDU8sHNXRAdTbCrDj3iEAvZ2bTUMLmh9h0tKhwmVD14IMpDp
 7ZELqCgJgtHjv9kAg0Yz/Dy34jdLgypTJzUreQcJYvv5Krp1QLRTMMtoMtkop56+
 oKcUsj5bqschZLFzuL2hj3WISQQYEQIACQUCQpKW9gIbDAAKCRDjOeIl4vez2KQu
 AJ999gXGK70qxOzC8xOb3luxRKE/TwCgleUyV4VszS8i918p+td30+xsf1M=
 =DTOK
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.168. Jean Milanez Melo <jmelo@FreeBSD.org>

 pub   1024D/AA5114BF 2006-03-03
       Key fingerprint = 826D C2AA 6CF2 E29A EBE7  4776 D38A AB83 AA51 14BF
 uid                  Jean Milanez Melo <jmelo@FreeBSD.org>
 uid                  Jean Milanez Melo <jmelo@freebsdbrasil.com.br>
 sub   4096g/E9E1CBD9 2006-03-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEQItSoRBAC0Dd1LYWYUcjRH9XabIefY+5q+Mwi7iBdvUjq96c/LgGZLXbG8
 ZlK92kraOdWvwrPcYUCjYQwwesOmjXryXPoS+AYiz9iVs7AR/A9drFECh50wfaiL
 J7X4kSpR9zDgju/yVPyT3rhE4ZEZ/81txqdu5DSG5+vD8dLoXdb3EziXFwCg8Njt
 Lcb+ETI3MvK0M4A5HpuBvTEEAK2H7mNZ5BoLCrB81244e1BFwd16raITUv7DiF11
 Wl4kFowGt0K9P0d6QxmL3bEdeud2wfNaVjAuiO2B32XlV4xskZmfalniN6fsX9b9
 jnzJzpFvR4tPeZdpw07ePYJXh5vZjx4Mkflv9X2+rWafLiw5vkmwPnkQPcnhWnD+
 Ia0UA/40hZZvC9h20eH9hAcJA865wLxzmUijzgAGHjXVjhNT2oYGneNeY70auub7
 hGVL7GwsDSYc76W6IhJOcAjgHcCfa3uGerFR56T9se0ysmlBrONiYTokVZ3vKFp6
 m9ZceaPiE94RtHsVVkDa+F2KWeGU1As8gskVBP8MycodYb8XgLQuSmVhbiBNaWxh
 bmV6IE1lbG8gPGptZWxvQGZyZWVic2RicmFzaWwuY29tLmJyPohgBBMRAgAgBQJE
 CLUqAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ04qrg6pRFL/NCgCgg1C8
 cFGpWahx1wgZ8IQxsmCSUV0An2YnP/Q4w10WTe6qp+I+H7c7k900tCVKZWFuIE1p
 bGFuZXogTWVsbyA8am1lbG9ARnJlZUJTRC5vcmc+iGAEExECACAFAkQxmpoCGwMG
 CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDTiquDqlEUv6McAKDC5MusdUU0kl9T
 /ymavKEu9a349wCfXWEu9GgVb0CCZ8Agx3BHHIuZNo65BA0ERAi2QBAQAPB4mj53
 L9vbS2WLCAPMMn4ZGDYGXbe1pB/mjRbZlTGnUYWE3NO1fLYXEaoilRsvcEKtbsWp
 Ynuk8Ou4DaNoVyX9I6I18rs5KMZBiLOvQZFYCBbJYSIn/nNycOqsTy6Nw9mz7mrw
 I6e6EhiYh/AQ+MI3zID3iYnbQlQFZo4gLMFTLKklpiV+DaPoDiEkQPGn+0mmLEIO
 pmCqiDTxCIrig7feExCXJa2+CXLj2OS+r6su38O7WJiGMq0i9nCeu+4NnezoKPwt
 +s5kVYAjOSzDRybWz0UDzi9M7Kxu9tFoxEQUikLDMdqSklPfRs95TEmpXIvksn3A
 lub2Vfum6/kdRNkxPPbUuyEvtzeCc87LB2cLpP2+EXcfHCe7MdrtowWleRqXymXa
 Lyun7uKk2etFpEIfAqCPC1Yd8Jf2coyVY/n+a6yotWzCtQ4vogO2dTTKmj17kkcW
 1CXZz4W73Jut9ixZmYL/zOJj61j+2S7K7VLfSNrP8H8SACH0oHxYP89BaqOSOO2N
 0DtvyhFfS0OsxAEBa/EgtCAZiON4nZdQGPyDvq2/uQ1SGxbykTCvgxElAQfyUh7x
 lctdQQ6f6MEEPHapdDwpnqX5TAcdY7v9eE+/DZNTeswUBc03qtqxee1II3K3+Rvl
 4R+DuGn/oPdgksnX0kX0wtHgclXRsZ6x+wEfAAMFD/9S7Z0ee7WeH4WwU9Mf9gSp
 3JGafoInoJZNSRsKAl4VFC8axivUGyUzJdTbADoRXDR6NfqJE94u+pP3vx4AAvVH
 cvzfGj10GlUOwQGbQxaYGgYtqVgQ6MKeS6A3xaj63WgBFtx8bbt3e9XTnjPto2ZC
 U/pM3lmwsvxHoJGgisRvEfdQeWW2cJlxcBfpqat1/2MFBK60Wd0WAr0x6A3m5xpy
 ejftkcUa08BT4LSiGAsmuNKtUYULA9OrbvJreUa90lrM+6sZy2Edh/kulNmXgS4Q
 Y+OVptuhHSgBeME+j/fM5+p3Uyyaa45xmCFxnx5u/XBWhzMiPvi/m+qYkXPECFLx
 CiZ4OC7Xso79UeMmYq+CTDMWR6pe6iGVQZhRH69ShA+c545Eic/RoOv4ra8se7/U
 R5BU29AWWtapMq50/h321Oi+JmmfJHrte9Kd6RdyahuvtlWb7bgnKPwzpaRXYtbt
 H9SskRTdESK14AwH2eUVAP66Dfr5xBoyuS2g9MkRxxhjHWmMi4TAyh47VgXUxOPF
 Uh1eFsIqVa1scXFaimmicdnbg7N5iVoqIIiuc2Q5P1xIuTUdxw1SjXOInmjAszO7
 Ckad599/WaNFS/pkDOgt8yfQaLOKCqVuKkimWa8YuZkm0g/aY1n1cE7TvNpxdrS+
 dw6TU3idxbY/DuNsWfHfrYhJBBgRAgAJBQJECLZAAhsMAAoJENOKq4OqURS/QrYA
 oIelyoPYInm4v6UTBo3XhOwNkHWbAJ0XXqE5J3Zv8FCqjQsJTFCmmNSoGg==
 =CyrL
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.169. Kenneth D. Merry <ken@FreeBSD.org>

 pub  1024D/54C745B5 2000-05-15 Kenneth D. Merry <ken@FreeBSD.org>
      Key fingerprint = D25E EBC5 F17A 9E52 84B4  BF14 9248 F0DA 54C7 45B5
 uid                            Kenneth D. Merry <ken@kdm.org>
 sub  2048g/89D0F797 2000-05-15

 pub  1024R/2FA0A505 1995-10-30 Kenneth D. Merry <ken@plutotech.com>
      Key fingerprint = FD FA 85 85 95 C4 8E E8  98 1A CA 18 56 F0 00 1F

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 sGDiYyJDVnPYxZcEN0h06w==
 =CRmh
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.170. Dirk Meyer <dinoex@FreeBSD.org>

 pub  1024R/331CDA5D 1995-06-04 Dirk Meyer <dinoex@FreeBSD.org>
      Key fingerprint = 44 16 EC 0A D3 3A 4F 28  8A 8A 47 93 F1 CF 2F 12
 uid                            Dirk Meyer <dirk.meyer@dinoex.sub.org>
 uid                            Dirk Meyer <dirk.meyer@guug.de>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =b0g6
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.171. Yoshiro Sanpei MIHIRA <sanpei@FreeBSD.org>

 pub  1024R/391C5D69 1996-11-21 sanpei@SEAPLE.ICC.NE.JP
      Key fingerprint = EC 04 30 24 B0 6C 1E 63  5F 5D 25 59 3E 83 64 51
 uid                            MIHIRA Yoshiro <sanpei@sanpei.org>
 uid                            Yoshiro MIHIRA <sanpei@FreeBSD.org>
 uid                            MIHIRA Yoshiro <sanpei@yy.cs.keio.ac.jp>
 uid                            MIHIRA Yoshiro <sanpei@cc.keio.ac.jp>
 uid                            MIHIRA Yoshiro <sanpei@educ.cc.keio.ac.jp>
 uid                            MIHIRA Yoshiro <sanpei@st.keio.ac.jp>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzKTzO0AAAEEAMVsAcUX89qHkwlI03RlAYBqQa00TFmgPwZs8sWvNUqTGtlK
 kOXcN9WNBvwzMYtEk/u5C1HukqISnFkDW7ZKYm+Um1sQPioFHTwDC6R2HRDZBCV7
 0fROlQpb479iBlr8wNAYDhOs0rl25FpE/uAXYThW9Ik/apgXN4rTGxk5HF1pAAUR
 tCJNSUhJUkEgWW9zaGlybyA8c2FucGVpQHNhbnBlaS5vcmc+iQCVAwUQNu4ch4rT
 Gxk5HF1pAQHYiQP+IoxOpfpSPg8Gr7MUtoU3WZPY/5IuKoOwnFNFcSyuhrgn/OOB
 pbxkYjTO3MLh7Xa+9sPigevHy/sNA4vVZdjk05sjRfAZxIWPrinRy/kzva0KOY69
 u1QfX+Vx2mfq/EfMJMHP/Am0H71nOfAZsscKlb/jmuo1TxIpCUx+wWmNn5+0I1lv
 c2hpcm8gTUlISVJBIDxzYW5wZWlARnJlZUJTRC5vcmc+iQCVAwUQOY7IlorTGxk5
 HF1pAQGQBgP+MXSjPfcnNhNfUmeLu8sM63DnrFIfRP9E+n/yhZT0wO51r2LmF4ZX
 YI04IJCywJiPjEpCFXNAhqDfypkTXWcbLTxX6gE5GNqii5iq+z+UuO4panpJO5OY
 4H0/90cH6I/zl93EZN9wfZJghn66vgL4tDTgILdRPekIOB23JQIXsf60KE1JSElS
 QSBZb3NoaXJvIDxzYW5wZWlAeXkuY3Mua2Vpby5hYy5qcD6JAJUDBRAyk8ztitMb
 GTkcXWkBAf3zA/9sDB0n/UlsH9hzaw4r2k0FT9F7Ixtk2i/vqmHDUUcrlEqGaeko
 /3Q+et2KzepX981mI7N2jdClqJgjlHapGoIQWZL3Jy7ocgCXDTYwGU2cFRF7kzkz
 h3FyYotm6bMi5F53GamkVbYZfogLo1MW7jmqIydJNdT1oseDbrwkjvXwdLQlTUlI
 SVJBIFlvc2hpcm8gPHNhbnBlaUBjYy5rZWlvLmFjLmpwPokAlQMFEDKUUFiK0xsZ
 ORxdaQEBjuIEALtVC6fjyDiRnZ3ReckdTO7k83VUTZiQH+2cMFNd8gi+O2sZ3YnW
 6veQI45VB3oHD9kzMjol3B1ld7iKcQzHC6qUEviW+mTRRN2Y26DB704FNeUrqm1A
 LO8NPL6iNKFvUNsu3T0ZRY7oX9a9nMmcD7M2bm6jxrhckS8hY7x1D0xftCpNSUhJ
 UkEgWW9zaGlybyA8c2FucGVpQGVkdWMuY2Mua2Vpby5hYy5qcD6JAJUDBRAylFA5
 itMbGTkcXWkBARgCA/0RBudh/8z/HWdX0GC0m3I0zIAOiGfmnJMPkzLryXuOQsbE
 dg28b193QnwTz6/ASF6PLJkivcd1vREXCz3C+jHz6OGs5jUKcSf5c0ZaIE4T21Hq
 LPKHSj0cYxgiC0auwY46m/yfO8I0bdiM6Ki3fSBTlTmDlNhWxOQ4Ic2RamKNNrQl
 TUlISVJBIFlvc2hpcm8gPHNhbnBlaUBzdC5rZWlvLmFjLmpwPokAlQMFEDKUTtSK
 0xsZORxdaQEBjWYD/i3EOU8lEoje9jTBHfQaps9BQgviFSaHk0G41emKszLSLnGQ
 BeMGZTyWda6sTSqeLKg56HEmmVGzC/nHlhwspC6bdYaBmOpnSmmzxVstcYq8oiXI
 mlfFEcL5DJEau1VTBP56Fk4GCffaibCTRGYrQcJz4yLfATjYsni5Y8zXqhWItBdz
 YW5wZWlAU0VBUExFLklDQy5ORS5KUIkAlQMFEDrvMx2K0xsZORxdaQEBTgAD/jO7
 tb78V3muNw+rfD8tA+yWXw8IdC4QHCa+Ga6Uwf9nw0WD+fuuz0I2La4iaC3FPtTs
 1hz1QlmrztffL3tfsePDeN59nz89m+WPW/Cu+mLY2Eim2Hm6AWKVvtxtndunOSls
 xQLr0uhvNN5BOzEqv2V+l0MrwadPxUrHG0izqmGJ
 =cmvD
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.172. Marcel Moolenaar <marcel@FreeBSD.org>

 pub  1024D/61EE89F6 2002-02-09 Marcel Moolenaar <marcel@xcllnt.net>
      Key fingerprint = 68BB E2B7 49AA FF69 CA3A  DF71 A605 A52D 61EE 89F6
 sub  1024g/6EAAB456 2002-02-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxk42sRBACyzSSCLYA90zaZoMlg4zhMXhciG/YuiBZ005q0s9W9cuFFxwOM
 0mLFbBHQKj5TG5TNswnf9VreRg8lRPCzgQ63atc10RU2tfa88hIjWZ4G4WEFDeXS
 hlj4dIA6KO93UEoJmIyR7hswisb086mK4dM9hq9FxJT7YQ63PkUYmd+pfwCgjX/y
 xM6+aPj0sXuOvAcVVmrnp8UD/2pEd8kxAKIaWmxOm9aGB0/E6vjZWxCk1+CO7tgG
 4gInFYUnqniPB4JOXOWriwBGPx5IqWYwYpgeuoi/KeE/Wn7bRUEeCbBGEmJkHO9l
 3xJuPX8JKDkGuTNDvR3SINKSzx7gb77eGorwxV7e4FXBeXOyXLxgDqDhh7Sjv5/4
 ikr2A/99b5t1akHlNe1ITpuEETDNRcfu38/KW/nF3p1IKQ4Q+exSlEJzPFupYNoZ
 O7uD3A0YCNf3jIY52ufkZXqhqfsp6aRLetbqDcKVrZWSudAzGAEk3Q85a6Ei4mUB
 tfv4dmXQOLzfAFHezhCQIt5LIPJ5Dmz/a26+u0DmlfisgP5ltbQkTWFyY2VsIE1v
 b2xlbmFhciA8bWFyY2VsQHhjbGxudC5uZXQ+iFcEExECABcFAjxk42sFCwcKAwQD
 FQMCAxYCAQIXgAAKCRCmBaUtYe6J9pN3AJ982m/rtLgyiuHl1IM+/xfsZ460SACb
 BM7V955SU4T2b+1FW1ieOuuZEKC5AQ0EPGTjbBAEAKbxUKuiOJsAQnGKTXtbyRdR
 Y6BZQK9tPNXEIjIUZ94Crs9lVq/P3kyvpR/ziL+Yt3agUAELiX+cggUZ5KRzKBmo
 PJ6ZdWOuKLRN2+PfK1QVOQayeZV11XZAsPwyHI2v/hvjJnFvQNTEXWLZsBNnfTdx
 0zi5RBNhf5Gt1hyuT4cvAAMFA/9xKQ7aKkvi+C7KafwH6B5X6lIQxRbTQuaZaqKL
 M8pDmVLqo3er7S1ullwMWfarQLHtlwirX9IOQN833TCDev9QeeYZZ5g2MpWO5nx4
 kxEOAK6Lg+QBg4RcoLK9CpHUpLoChGQzNaDudztUixwVaaigj21O4PXFr9pmLLZk
 vj7AN4hGBBgRAgAGBQI8ZONsAAoJEKYFpS1h7on2XgAAnj0B9B7g4XPMXjizKVNP
 YLC2BYjgAJ4tZI/tGYxHex5RCeFv/fG4wN593g==
 =R/4a
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.173. Kris Moore <kmoore@FreeBSD.org>

 pub   1024D/6294612C 2009-05-26
       Key fingerprint = 8B70 9876 346F 1F97 5687  6950 4C92 D789 6294 612C
 uid                  Kris Moore <kmoore@freebsd.org>
 sub   2048g/A7FFE8FB 2009-05-26

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEob9xURBACHaqCbAqwyIXO0HHHCAVYPqVkhhr2FIS+yTvVJnCQa6G1KIasT
 LKGK0Z/Ae+suMsQoT9e1Pw/zhErm++aRSYqdTzyuMUjEDXtgsfp27rdQZRNiWDwz
 2/gd1nSEWYAKqUh5i0iJ89tkiL3JJx7/FD1+Nfp2sk318usUshT9/T+L6wCgmRvG
 A61Yo0rszOQexAwZ6PqE9fUD/3tGobQB17xQIca/AwUDyR2cw1lGs3S2ZN2G5xAT
 QL+h30wplhrrIO3lkyZQ7p71ZTPiAf5b5eTrXWrXVtO2Um3+wU04yhBVcmO9DeO/
 F6SLVzJLCRyTSNUSZNmWrl1EOFWooNnfBI4Emjke46g89hIbhYlS+qRL+qN0ugpR
 SnfmA/9d/UiazKlhp3fX9EwYRQmOC4WXDxuWS91I7kH0xsbHR/BHFJbUHDr0shsB
 lNRmfxwaZjiC6oHsJE0Du6FcSncYSfAChLrt+fqGvNgXf4hDIjsUtu2d5sxgoarv
 EvaSwfh/gelNuTnsgQll26LaeYjgmJgwf4Hb7I62UkkPuU5LMrQfS3JpcyBNb29y
 ZSA8a21vb3JlQGZyZWVic2Qub3JnPohgBBMRAgAgBQJKG/cVAhsDBgsJCAcDAgQV
 AggDBBYCAwECHgECF4AACgkQTJLXiWKUYSypOQCcCQagomGK/P/P4OedoFUDw5ZY
 2qIAnjRRTC0mRqUbIjaf/FWNuU2qtbiMuQINBEob9xUQCAD/zeiP1+Ru7ffCZwZo
 QTPjuYvm/PnAeeL2fBqN/Q367UuqR6RlqV03lo5nFxD1phheP0BmH6b0qyMh2dxi
 /6nq32g9b0Wb8s93pqYimxtujpNnWmZhwparaUm9tPyIGRdJ6wj8G43gOwyjDdwi
 GBPDAdSAqVZI0m+l59F5lsPiYJDGSkYENjLd6T7aAd0JzDjd0YLTx1+WLir6OrLG
 p1j81rBRCGRNipN7tGB0/pEB/mutU8GlDTTFaD1cWT4X3RGGP9MOH1UuS4wZXzJX
 8duq+4fKlpKEPOyJ9R51D25a9V71Dybdx/5mo+Bsec8T5+N0f4hK6utrnJvSQTes
 vinLAAMGB/wNS78TRKqFdjz83F/LB42srwFqDCKz03Pns6Fzespha8zWKOTiNOk7
 2WuXl6qWXhZ1aSithGzoWX3Xm6m0m3ZYk9wE+rDqT7Z3/T0tKiHmwG5z3QpuLOnp
 LGuBH/ra2gbyC+Ycj/faYXOz6Chf0e67bNRru9OGf289Q/EVcm39DinYBK1jrHcq
 xZ+b8jxtOWygo2D0SIS/hl4ljMDMaj/J8itwJXj0OyuoJ1IZkW32L4RN3jIXTUgn
 pGyhtw3wO4V5nhdj+YgvhP2VW1K2SVW1SqExlYdvB+HigKV5oHzTNluILcJgs4BY
 ntHqlJQ57QKxWImxvFZmS9MBaf69Tb68iEkEGBECAAkFAkob9xUCGwwACgkQTJLX
 iWKUYSziLQCeOWM0aLs+/NIGsNo/Lc2N4YTQ4pUAn0rL6J3fe3flPx5pBoj/SSto
 jjB9
 =yaw0
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.174. Dmitry Morozovsky <marck@FreeBSD.org>

 pub   1024D/6B691B03 2001-07-20
       Key fingerprint = 39AC E336 F03D C0F8 5305  B725 85D4 5045 6B69 1B03
 uid                  Dmitry Morozovsky <marck@rinet.ru>
 uid                  Dmitry Morozovsky <marck@FreeBSD.org>
 sub   2048g/44D656F8 2001-07-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =M8uk
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.175. Thomas Mo:stl <tmm@FreeBSD.org>

 pub  1024D/419C776C 2000-11-28 Thomas Moestl <tmm@FreeBSD.org>
      Key fingerprint = 1C97 A604 2BD0 E492 51D0  9C0F 1FE6 4F1D 419C 776C
 uid                            Thomas Moestl <tmoestl@gmx.net>
 uid                            Thomas Moestl <t.moestl@tu-bs.de>
 sub  2048g/ECE63CE6 2000-11-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDoj/ekRBACnO84k2i5lLHZKscyV8tjQSkkr26hasdbc/uyV7HTiPhMUjEAz
 Pamk+bDmy/Ls8k0SJ1l0vILBBd31G5VYtKonIrgp4vZ9gV0fBdCyFDXb8bh11Pk3
 pEZiG9vJevq40OPvsThLKHCLNhZ5zLPp6gd0IHwRJ0LU94pouFXd33MzrwCg4gTJ
 K00Dw0w1hFtUsq6WjNC+1B8D/2WiEuzBMnO6gz0p/eJ1eZ7mvrBXLQZ0u5vJ3eg2
 CCPrtS1ZITq3ICPDN6biEiMgtRmlYn/VYvDQqxwNE0X2yMfB/9sdah45zma9EeVn
 Iy8meaCFDLhm4aIYc1foUuz3WbCNlJFY5xYPXCMXLkC65xdybHKng5TXh6NOOWf3
 PfCWBACPMotTRKttAuw5YcZE5VDrSXPYHu/jm2CpIVmrac7+kDj9pGH9sB7BdUxw
 vczqtAT0jk7MrT+u3FH9wBtEFTXl7ksGTmDOFWJgYn3ZOEaVaX/OqD89UNhrOA2v
 ZOaaoKMYxK/pszPdr1Ghd6BQCmYKtLBlFYiTDRM5UMVHTqN7VrQfVGhvbWFzIE1v
 ZXN0bCA8dG1vZXN0bEBnbXgubmV0PohXBBMRAgAXBQI6I/3pBQsHCgMEAxUDAgMW
 AgECF4AACgkQH+ZPHUGcd2xMLwCfdEkPZVBgEmYnlyOKfyTSslMhud0AoKDKZNXA
 huNslb4KF8yKWBNRwfPStCFUaG9tYXMgTW9lc3RsIDx0Lm1vZXN0bEB0dS1icy5k
 ZT6IVwQTEQIAFwUCOo01FgULBwoDBAMVAwIDFgIBAheAAAoJEB/mTx1BnHdsOfMA
 n1xd4f7iAe6id42DLg4W3fibsCwsAJ0cT2lf08RhHkT+zLVoubyIDoY6ILQfVGhv
 bWFzIE1vZXN0bCA8dG1tQEZyZWVCU0Qub3JnPohXBBMRAgAXBQI6pO9pBQsHCgME
 AxUDAgMWAgECF4AACgkQH+ZPHUGcd2z+7gCdF5fq/lebn3/gp40O8xP/J0XFbiIA
 oKJP186L04qpSNamc/qG3gs7h3DGuQINBDoj/wkQCACl8M8ObSTJaOY4SgoQkKgB
 CkJJP5ScUpfYV9w3dxKL/77cyfghfYsnAWuA9yXJcjA0F+u+jRf8gS7OaHD9H9Mm
 pMGq54Aa0KUQaDbL/Jzf5zrKS/RASHzl1vYXuZB1OIzPfeAIx9u3UaziVEGXJha3
 1KgTur+TU+F94ZFTi8uApq2VoNT6sFi/V2x79bxlLFr9M9yD/0+kMZKovWRODy6T
 gWJzzcdd//dkvKp22tNf6C2wq8Bu60cWR81+awgG2otgZjCPUs2Bwhqa5opeUqGn
 J+f+PXo6+m2UF21m1vLARENuumu6SXf3XqGIUiQbT6jCdJORzwaxeCiMfu0qNnUX
 AAQLB/9u9gZN0N0r21ZjM6ZRmDC/REouCdYHEj49+f9g/xLXCfacpWVcrK9lIrcg
 hxRE2mQ/nlQLeHroC3Dp1AfThKSPFX3PRD/9CcRu480imT84ljf+6vonAZ20Edm5
 vVO+UoJMZQ2G+rWRRf4bDfwFoyDw3DsNmUL4yH8m2RpTxXn0pQtD2riJD8CBCXEP
 K95TYT4MomJ7Szg7O5/QLngfw0q6QdKRm1vEIP7r6t+UbVNp9+5g9qvz4aqm3beY
 pw1QCDHcqpDITnlTxTdV2SgNpF8JPg7joaOa36AxWwRzfLFyzyw/JGQE8RwJa8BN
 iTu0IrKuiF1biRxqiYO887GBA/8QiEYEGBECAAYFAjoj/wkACgkQH+ZPHUGcd2xN
 TACgkS0AGqqd2nLtWhpbE72tD660tv8AoI24cRkUa2op32mti5zfLLMsM4AZ
 =76WN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.176. Alexander Motin <mav@FreeBSD.org>

 pub   1024D/0577BACA 2007-04-20 [expires: 2012-04-18]
       Key fingerprint = 0E84 B263 E97D 3E48 161B  98A2 D240 A09E 0577 BACA
 uid                  Alexander Motin <mav@freebsd.org>
 uid                  Alexander Motin <mav@mavhome.dp.ua>
 uid                  Alexander Motin <mav@alkar.net>
 sub   2048g/4D59D1C2 2007-04-20 [expires: 2012-04-18]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEYouBIRBACKCnll/QyL7oh1g8bNwX4mX4QDz26jOjGW624VOCOb0jarxzV/
 s8NF5V7ddCLMbf8wqA2QqeyrNm+e0FdsLbxVAN6NtF6hRCK0Uwc438toERXBLq5j
 Ss6Ofc3n9KBdTbUDfTp3t9Tda1oajF7JqembMz6cIWXmcU5P+7a5b48KCwCg6dhG
 X2f8H0s3WZkFi4gDXkUOMMUD/AxfkpYNv3CMGZx/6XVAlNltOoNRG2j41tn1Bhkz
 3xgPueod38HbXewTESMVm1qPW3IdNLCrVXg8/TxeUw97h8d1Xa3wfX2DEDfUSCWp
 IyH+gAchvZxJebdf8UpGtXMrJPzVznMHmChs8pavhnZfqtJ2tplFEf18HLbvzU8r
 0GpGA/4hNHGvKtts3CTV7XoQlQrWqhl9okjAUarLjrf2iCVsUhyE3UpXmp0il5bq
 mhfVv5b4FHUkrSipOsJmVSLgoc0muL9G0BNvLkMi3/vUi/6TOjANYOCnUF324cKv
 9o7ojNylp6eTh79wx80tHt99ZgNh1butSlQAQSTXk0aLLbOSqrQjQWxleGFuZGVy
 IE1vdGluIDxtYXZAbWF2aG9tZS5kcC51YT6IZgQTEQIAJgUCRii9JQIbIwUJCWYB
 gAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJENJAoJ4Fd7rKBAsAnR3+WbuhVRDu
 7AVndqKop+Qwg68hAJ9W8/4LOHr2XjLT37RQyxPgtodbvrQfQWxleGFuZGVyIE1v
 dGluIDxtYXZAYWxrYXIubmV0PohmBBMRAgAmBQJGKL0GAhsjBQkJZgGABgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQ0kCgngV3uspZMgCfafiI8rCSzlLwyWRXCpyH
 smEYsgcAoMuqcyGJ9P1yzcddYw9SZUjkoj1dtCFBbGV4YW5kZXIgTW90aW4gPG1h
 dkBmcmVlYnNkLm9yZz6IaQQTEQIAKQIbIwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMB
 Ah4BAheABQJGKL0sAhkBAAoJENJAoJ4Fd7rKJFoAoNe3pxIgHjKb+mjocFUrzkAn
 O5pkAKClil44JNQKWePpy+xNRNG8ko5487kCDQRGKLgSEAgA8Y2EXU8EbnSyZ5AL
 RyHn7axmxr7p2qzEkDI8EidMlJOxfyCj7b3t+5QbIbieb/pnDMGuXPc+7lcK7Owf
 pu9DTvWPdLRjvXNFJbuRH5mXVUdHS3j7GnAqqgb8ydTbUrKRwY2BijJaU8imXibc
 +ujXgO/ZVrvYpiXtZx38cwfoIDA+LFpQlLBUUkV7GRpBYcrkrVEGMrLBAPht+l71
 Y/IBMht4z5VBFMxJ13TogMseOKKDrRVsxmMqbBjr/S23pVZqpjQYGwkNo96+JxeD
 pQGlbbbRftiuObXEZsk4yGp56jXTieZLUlq9L1ELkzHIjPhNoeudx/tdtgZPSwsp
 I6M7SwADBQgA2eUilFtIbEsAizp1Jd88J+2Z/dZ3M0LK7rqZuBVQdeJZbpYBfL9v
 +JEbjw1e8HV2goYtwkVgfP3tJX/xqzmwIZxd3wLLzDucPrtmQJfDDcD3fDBVvCeZ
 Z+EjaGp8/rIE/h0LCk9XXHjK+JOZaKt8tsCtkpp5nbAMaPRBrCm9sGB9Oyt0rrU2
 /ryvMIf4W602iKDka5oUl1fhNP7R2lnkLRK8OPEPdboVxOrzzdBB8XN67B3kzDRt
 +nBHqFZNn6GafIYpvoJS1jqAskug2IjmEUIxDxEuD2EhIiayLAuwmGnR8d3iPVcJ
 /KF/URy/Y7PBtkE2amogd725uRTxXOXAA4hPBBgRAgAPBQJGKLgSAhsMBQkJZgGA
 AAoJENJAoJ4Fd7rKMlYAoNZbw8I7WBascnxVyObkqE5rLKxJAJ46TGlVlvBS+PXT
 L4EaOMcBYbTvTg==
 =ZML6
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.177. Rich Murphey <rich@FreeBSD.org>

 pub  1024R/583443A9 1995-03-31 Rich Murphey <rich@lamprey.utmb.edu>
      Key fingerprint = AF A0 60 C4 84 D6 0C 73  D1 EF C0 E9 9D 21 DB E4

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAy97V+MAAAEEALiNM3FCwm3qrCe81E20UOSlNclOWfZHNAyOyj1ahHeINvo1
 FBF2Gd5Lbj0y8SLMno5yJ6P4F4r+x3jwHZrzAIwMs/lxDXRtB0VeVWnlj6a3Rezs
 wbfaTeSVyh5JohEcKdoYiMG5wjATOwK/NAwIPthB1RzRjnEeer3HI3ZYNEOpAAUR
 tCRSaWNoIE11cnBoZXkgPHJpY2hAbGFtcHJleS51dG1iLmVkdT6JAJUDBRAve15W
 vccjdlg0Q6kBAZTZBACcNd/LiVnMFURPrO4pVRn1sVQeokVX7izeWQ7siE31Iy7g
 Sb97WRLEYDi686osaGfsuKNA87Rm+q5F+jxeUV4w4szoqp60gGvCbD0KCB2hWraP
 /2s2qdVAxhfcoTin/Qp1ZWvXxFF7imGA/IjYIfB42VkaRYu6BwLEm3YAGfGcSw==
 =QoiM
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.178. Akinori MUSHA <knu@FreeBSD.org>

 pub  1024D/9FD9E1EE 2000-03-21 Akinori MUSHA <knu@and.or.jp>
      Key fingerprint = 081D 099C 1705 861D 4B70  B04A 920B EFC7 9FD9 E1EE
 uid                            Akinori MUSHA <knu@FreeBSD.org>
 uid                            Akinori MUSHA <knu@idaemons.org>
 uid                            Akinori MUSHA <knu@ruby-lang.org>
 sub  1024g/71BA9D45 2000-03-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDjXWqERBACDCxgN9+yMfpm3yvkYp+P4Uw6xxPdcZ9RvnTRkBX9zXaRgSPmM
 zeZ63LpB99uVphVZrv/EdlyTf+cRdz6VXXRcTBloA/FsyY86IluBnWCH054WyXzr
 7az5WB9yDbPnlwcSL919bq0UqTuQUlQswdQAoDQG5LNNZNa0T01ydYtNlwCg3weS
 I/nEJrGCXGy2wrjg8LiwQ28D/Re2JHQPTYqDEZl6wj5U83wT55ChnTrjPRbGmr/C
 UdJP6CZQg6+DXYGYulcp3oL4btcdFDRFglJzmQNkUYmqiVC20SMVKUctrOCAI60P
 7VE40UtXz9EounPSRQQ1lSdMNeRwrZ9o7IcrSj0EBw8lw3d2WxyM2Rs2crZWfOI2
 mu8dA/9LbmAw5sLk5Lo5i41nAWP76pyuGxSia6zMRdML6ynoC5kmyrI9TwW5LNU/
 Lsq1Ru2XSA+CwSBpTt0vdwS88dDwPGxRuUHhWVpa1M5t7K7uYODB1cD5AyNoNnR/
 lHpxfPZOJNdA3OPgfssN9K+PIuhbBU5xONCoAcdC9TEqSezfUrQfQWtpbm9yaSBN
 VVNIQSA8a251QEZyZWVCU0Qub3JnPohWBBMRAgAWBQI411qhBAsKBAMDFQMCAxYC
 AQIXgAAKCRCSC+/Hn9nh7n1bAJ4vkEQX0JkcYgltt0Vv5qkS3bGqNgCguxfhuEzZ
 vBzpAW9/XdstjA/DSPS0HUFraW5vcmkgTVVTSEEgPGtudUBhbmQub3IuanA+iFYE
 ExECABYFAjnly3oECwoEAwMVAwIDFgIBAheAAAoJEJIL78ef2eHu7RoAoKn5Lw0y
 C+/lju5+pV0WI5dmxTzxAKDJRtsRSTBcJ7ohvzztxZqyjfSK+bQgQWtpbm9yaSBN
 VVNIQSA8a251QGlkYWVtb25zLm9yZz6IVgQTEQIAFgUCOZGiowQLCgQDAxUDAgMW
 AgECF4AACgkQkgvvx5/Z4e4t+ACgnr8RmYw81/oC7MKS2CSoFb9cg6sAnjKay6ho
 14iMG+YcFNbjxwGvSE9EtCFBa2lub3JpIE1VU0hBIDxrbnVAcnVieS1sYW5nLm9y
 Zz6IVgQTEQIAFgUCOeXLZwQLCgQDAxUDAgMWAgECF4AACgkQkgvvx5/Z4e5+zQCf
 Z/09J5FOgAqw3UrTTAzR6QWicG0AoJdlBcdUltEO4WV+q3FRlw4RVnA8uQENBDjX
 WqwQBAC09OxAmKbGn9FETdMA/5abvOY7JgNcFhQutEVnJ90mF/npBucWkCRbOr83
 t+NB0h5Te+lV/c+mjPyOemfWdAK4R9zQsat+ZqATv4Vgiy0UbJ/5TPfSraNK+QkX
 nxcDrhpcJXZhX6VYzbWdRSn8xSZzPT19qq0BFafz9UhZKXnLDwAEDQP/dpZe0jWw
 rED/Kbyr8CDoEKuun/5gPi5xmNz9iJlyvcsdOgok7yen0HHWgdaZAGX3GzjpB5gA
 aISX/kK66s+NeM1XQ7YXpcI8naf0jPa6N3SNWjLf3xPxLbMk0SyaGnrnSQNikk/H
 Bk2Nqyn0kcEaaBbdfrgkuuQWPnBDrq2EdOOIRgQYEQIABgUCONdarAAKCRCSC+/H
 n9nh7oxxAKC+gMyhZmSZdTvT3a2Y0RDOx5kRLACeP3JEvGZAZuo1sJeEw504+jr8
 1Xo=
 =M+Al
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.179. Masafumi NAKANE <max@FreeBSD.org>

 pub  1024D/CE356B59 2000-02-19 Masafumi NAKANE <max@wide.ad.jp>
      Key fingerprint = EB40 BCAB 4CE5 0764 9942  378C 9596 159E CE35 6B59
 uid                            Masafumi NAKANE <max@FreeBSD.org>
 uid                            Masafumi NAKANE <max@accessibility.org>
 uid                            Masafumi NAKANE <kd5pdi@qsl.net>
 sub  1024g/FA9BD48B 2000-02-19

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.2 (FreeBSD)

 mQGiBDiuMYURBACEgL3d4mL0pojugj8TZFEQef+MKkXB3lazrqV2ahgWqt6K24qr
 5fZrGkI8vxmYR4VkI1eLfe0Q4LoBZifL5nJYEvMvWPmdLuYjp4iwjgBdzLnwr59+
 k8+T/fohGDOqx45voCdq68Jmxg283zFGQ4FChMP3ZMlOPmFRIp01C84xxwCguNFG
 BVPeuM0y7JH0ucRygUqc4acD/jfe/UEjGBWxOCfZYOnXEp4NXWis3xRyUDO3cuoG
 8M8MEmg0dX0onFuNU5yrEBFtzPw2GO6DMM8h5hJXdSWkiyusn05PGk/jVSP9/MD5
 TYyqKL1tG/fKUgtevZSi7o1x/N0bgIBqmzd30Cqx29p7juVV+SBcKCRT1qloz6fc
 a5B6A/wJD5n3HOAStsWpZ6To/Apdb4A3PD4+ePfQxSICsHCFg/M04FkrG48So2qc
 7dSq6UH3xLsoiRIUonwCQsT+PaQQMrZNKjfal9xlEFfw1TV/squ+oNE8E24Lkzxt
 8Kkn86Ec5uiUlRulSMG9HJuWM+9Qu7TF76FWP8llVp6ELkYCGrQhTWFzYWZ1bWkg
 TkFLQU5FIDxtYXhARnJlZUJTRC5vcmc+iFcEExECABcFAjv4RDQFCwcKAwQDFQMC
 AxYCAQIXgAAKCRCVlhWezjVrWUEIAKCgwVSawCg1Lzrbf8uZdMAfeOWFXQCcD7EF
 tsdhbEV62AOUeQQWPr9de1O0J01hc2FmdW1pIE5BS0FORSA8bWF4QGFjY2Vzc2li
 aWxpdHkub3JnPohXBBMRAgAXBQI7+ERfBQsHCgMEAxUDAgMWAgECF4AACgkQlZYV
 ns41a1lUuwCgsIhWJdtPBebkV6w+NQ/8jlkJgrwAnj9lZkiTAgl1E/vcF7yPbY7f
 HlHetCBNYXNhZnVtaSBOQUtBTkUgPGtkNXBkaUBxc2wubmV0PohXBBMRAgAXBQI7
 +ESBBQsHCgMEAxUDAgMWAgECF4AACgkQlZYVns41a1nv1ACggYgtKhaprmMs30oz
 yoC0NatFJ44AoI0XSPh2G9zHEjF8AyYAe6sVCLqvtCBNYXNhZnVtaSBOQUtBTkUg
 PG1heEB3aWRlLmFkLmpwPohXBBMRAgAXBQI7+EljBQsHCgMEAxUDAgMWAgECF4AA
 CgkQlZYVns41a1lYRwCcC8l4PdrwHKNrZlTW6vod6kYgR3YAni8iLUZW5Se6nTH9
 WuN0XYPpZRG5uQENBDiuMdYQBADVzBBn5+1UQVCLS51y6eCD3TidT/uJAr+eeiWZ
 IbTmXrltNm5rGs7OT9QYNLhCFFPYKJxa9hFbrGpgserEFnqBfxcbMLa/wyIm9m/l
 MI+NNCAU4IpgDWtgjf1kjzwnJPwH69YzcqS2jlEKIjkCrEa/Bpr1Nvo4aLvqlTR8
 tJh+1wAECwP/YBMEMx/zgTvS3Jtji6nPceRe8icGRHb4SD7MVF/WxYu5VK7wlmuw
 9I9WXnHyYaL4c6Q49FAvwhkppByqJFL0txyJ8+nNa6H5mit8m6dcsCMG3NzyvxBP
 082h/MWbJn3Xdg89lp4UG3UP8sV1oWyIchd8rqxFk/EVB7fVQWNz/gKIRgQYEQIA
 BgUCOK4x1gAKCRCVlhWezjVrWUlcAJ467I5lFNlkwcENe5vND+DPaWyreQCfddOu
 6Va2/bf7Ln4TKyl17uRro7Y=
 =VmY5
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.180. Maho Nakata <maho@FreeBSD.org>

 pub   1024D/F28B4069 2009-02-09
       Key fingerprint = 3FE4 99A9 6F41 8161 4F5F  240C 8615 A60C F28B 4069
 uid                  Maho NAKATA (NAKATA's FreeBSD.org alias) <maho@FreeBSD.org>
 sub   2048g/6B49098E 2009-02-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEmPtPkRBADEcSQQGME+Df6I9jnjUBNMxvX8aMAH0+SKJEn0xTZvu9WLQmJv
 Bx1Hh6AN8fD7OONFBYGsDAxbbgFnwxc/KPBctXHUxoTE3lRTFRwYJJKIKvrDhFjr
 qDWwLJ9TsUn/pDsBflPFe57okBlPgSywTLGLuurOaT7oda6Z2K0FOiALVwCgn/b2
 7R19gm0uKjzsEPejafW6lZMD+wQK4qETffrdqRoVRnzzpTa+xa60kQxxsIeibffy
 dovqH7HIWeqiqDwls17zmbMc7auNliyN7VJ1bQ2C5SkojMUqgEsVle/8gfe0cWhS
 2jJ8A3Xg+/IzYwj+TtlWqUkzx/b1Ck8v/9aRmLtTNo9OdC8H9Nu1onF3Cp0WqsiN
 gwNHA/4+8w5D5gouNWfuYkkzoQQ2jIFJ4zhe0GCb2MIrqKrf0N40NOcYFLi4eJ8F
 W1DAdQbQjfMMlYAknm7MBpnsagTqjS9MniPVygYUUre/xMx0tszvWdGdRSjEY/5U
 AXoCevBci0meKTm5ZSDb2RPOLezF/zOV82IY3T+OKXTHcLSeubQ7TWFobyBOQUtB
 VEEgKE5BS0FUQSdzIEZyZWVCU0Qub3JnIGFsaWFzKSA8bWFob0BGcmVlQlNELm9y
 Zz6IYAQTEQIAIAUCSY+0+QIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIYV
 pgzyi0Bpf4UAnjOqrSHlb4NdW+ulVFu3o8W1hbTKAJwIdn91S2W9V3ueKsbFqq62
 8dPYsbkCDQRJj7T5EAgAuaHr5IuEXaxoUcoZryGZweRs+G2Oh+jsMIvMABVGMZJ1
 iov7vSypm1EF6/cO3O+rn+Zcpuf4XKPP3TK1oKWLIYRgdkvTWwzVc/PGWRHdr6/S
 fo1B8/jr9tWW50p+s+KZoMPV/Rdz84AN8bNZVAMxNWXooYrGMxMvEDg3rX8KZW57
 25KF+GlYYBoIXxatMYGlZKz2lcaeD7Mf9EFs9jtpyZ2lhlXjWu3NZBdf4ClzWt/C
 uQI2mM2oEX6oZEDCgWvGoIPKzMruI/lAPi8I4Q9A3fH7azEz/BHW6yqLcXfmUrMe
 jsGTS/ovpV/dyxqNzsVpt203ZBxSSkSjOOMO4OzBOwADBQf+LVc888G6GxeCJGxp
 X+uACx6ziuaGO2AIvfUWN2KlDEpiCHwKf1L4FBE6mKm2l9ZloNyisnL8nvC/lmes
 whiTQkiVgB014EDhR7IoljZQJwpJqWC6HCwED08In2O/fI4JX3XiPbUzYSmQSpd0
 tMMBVBwkB3m8SnTaF7cnYrZVGL2oCrBxfbYYhxDtxmGnD3q1/me7dixUJLbEHSmj
 wXvORtzMuADmNuz3RkkEKrtHXgqtqYluZwb3VNlRa9T/MxMYMfMA9V8IYw4gQkM0
 xEM4UOUuweNyXRUSyuvcLQJthhWiw+Yfi9ATzdbnbwh1rwwVOoIhcM4QHBgPhnir
 vrn/k4hJBBgRAgAJBQJJj7T5AhsMAAoJEIYVpgzyi0BpqXQAnjkUgOmypg8bF5kd
 ZDVC/M0s8sUfAJwIJuJHTepRSP6qVkZKiXF5TRMt2A==
 =Rtch
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.181. Yoichi NAKAYAMA <yoichi@FreeBSD.org>

 pub  1024D/E0788E46 2000-12-28 Yoichi NAKAYAMA <yoichi@assist.media.nagoya-u.ac.jp>
      Key fingerprint = 1550 2662 46B3 096C 0460  BC03 800D 0C8A E078 8E46
 uid                            Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
 uid                            Yoichi NAKAYAMA <yoichi@FreeBSD.org>
 sub  1024g/B987A394 2000-12-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (GNU/Linux)
 Comment: KUHASIKU WA http://www.gnupg.org/ WO GORANKUDASAI

 mQGiBDpK8uIRBACY5SwFQXiqzDlO1k/syoFoiFIFl/Dp+QmwK2oovIvlBVo/1gbx
 EhXrKRrfC67KSxxdUsgN290v/VVTmq8Opy1/RF+RAdxM3JrUfkcm5+IBWbSUfXFP
 i8OXBVgh7wNENVtwwD52F+0CFIWZXkClaif4DGkf38V6LJ6hBIycxuNDQwCggXTT
 Kj5SP2hFC0ueyQtPDoJEgbED/0bPL9R08io82IQqksOR9IUy0OdFJkLVWLnollEY
 LGjXa/AHgE8L8oWU/2eF1WM4JrtVRdcKe0Ja2e9LuH6IonGAdwqUeeAOwA/RdGj3
 63EglH5ugv4rZZKWZ3/piuNXvtq0bhAfl6zBHi5iUB4bgPVoVJGn3VyykPWxdqfX
 sT5+A/wIml11cFMogN3RXy/2Y3JRWeBtUCfdoRjeQPgK8++krm2Pr/AtHgcqNSjI
 W0slX4cLou2TEhV3BHb/4npsdaY0BzYgL7V1YggCv0Pu1s2D53Nzi30V66SRP0BZ
 OlNTA88WdMfoF3ttb04swSenG9X8dbpyYEdlvxNbbKKbUiBORbQxWW9pY2hpIE5B
 S0FZQU1BIDx5b2ljaGlAZWtlbi5waHlzLm5hZ295YS11LmFjLmpwPohXBBMRAgAX
 BQI6SvLiBQsHCgMEAxUDAgMWAgECF4AACgkQgA0MiuB4jkZz3wCeIi857V2zyRA7
 gRVsx+DcoCLeC3YAn2G3gFd+v14iZHXrPaqpd1gSjjayiEYEEhECAAYFAj2pty0A
 CgkQFwU5DuZsm7CchQCfdD/itI8d/uhmH9A0upJYYoYS46YAoOAfpFKvAGe/vBpw
 dy40SxBG/qELtCRZb2ljaGkgTkFLQVlBTUEgPHlvaWNoaUBGcmVlQlNELm9yZz6I
 VwQTEQIAFwUCPai4HwULBwoDBAMVAwIDFgIBAheAAAoJEIANDIrgeI5GKx0An1kh
 KzDAfR7Fzba/V7DHq2BRLcRQAJ9nZFgBncerxFMYAanwJruIYtPnJYhGBBIRAgAG
 BQI9qbcxAAoJEBcFOQ7mbJuwe4kAn1E2VVFpLajGFYgipCmMgpxRXPmxAKCUa/ee
 BEW5LPNf8xhaeIGlAtPZm7Q0WW9pY2hpIE5BS0FZQU1BIDx5b2ljaGlAYXNzaXN0
 Lm1lZGlhLm5hZ295YS11LmFjLmpwPohXBBMRAgAXBQI9qLhMBQsHCgMEAxUDAgMW
 AgECF4AACgkQgA0MiuB4jkYrnQCfUgkHO/ioUTHeBtYJHGeL9qthlnMAnikYzk6K
 gDV8cHI/ETcNoh542Q6piEYEEhECAAYFAj2ptzEACgkQFwU5DuZsm7A/JgCgvX8u
 hjU7WPofTfM2d11+j+ywHm4AnRS8iRNMqbP9+crcNzCRSQ7OZFqluQENBDpK8vEQ
 BAClmz0m/wuG01nst/7X+riyNgZ3j3oRurb9Fg2pb7wkci6nlhzCHTcFNCZiY1nS
 Vp+/3tRkC7HQPz3zhYo3ieCf12NUweJ8jhbZubp1fYY9ubKoj12I+LXTfZf3kA5G
 UD/n1nkAqxH2yP3eVz1BpKUc+Lz+5USiDo+XfrvfxQcZHwADBQP9GejakrIdVKcA
 /4UTWnMh8HK2b7tDLwLKyJg/8lagBkIAH5tPpCXi1qXuvHe+T9SjbdwW/lyxSARV
 FAz1ejp4QEWsAGQ/pchjb+S+iYvNq0VfzkZPqFFllLMaQc9mo6blgGgSEqLNpba6
 gDmVTJZ5jAhVxFBhRPwchSdPP3ewVRWIRgQYEQIABgUCOkry8QAKCRCADQyK4HiO
 RpwtAJ0alZHYWdBCXaPF9G9HCl/T40wzJQCdF5K4aEEsIG1P0WmNjbY4PEAVndc=
 =NZ/b
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.182. Edward Tomasz Napierala <trasz@FreeBSD.org>

 pub   1024D/8E53F00E 2007-04-13
       Key fingerprint = DD8F 91B0 12D9 6237 42D9  DBE1 AFC8 CDE9 8E53 F00E
 uid                  Edward Tomasz Napierala <trasz@FreeBSD.org>
 sub   2048g/7C1F5D67 2007-04-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEYfTV8RBADcVRh6fWX1XI43cTrdJBctCOxf9jZ6eedmhajkpMRhg7b0JPPL
 cYL6H1x1xqKbXtKxWE+BzQfdDJNJhwjQIwaXityWHihnkw5XBCRMuCGrUuaW/pPQ
 31EX1Am9d8k+ckUK8tPMNuWM8+ZYjXTJppLg20pIPBRwvmRR/hrHDhMvbwCglDGC
 ZfTHYkv36MFnkPHJH4iaQIkEAKoy+bcyOiJK0iuAx5KeF3CxP53Nd4sbsHKcbibP
 OsWJKKUHPlVTts6bUvM6RH+zUHOeWpXmgNvZTsvmoLU/E0I80BN5ngdOwV7oqeAk
 V03iltsBGIeBv5B0xxYDyQBuo52LV5CGZ7F65o1jGF8LWfZbtPh02gTmhYymmLeV
 QryDA/0WbmKavL5Dh7L4Ugz1JVIC6miD399IsLV+XewJjcaXnnngIplz0ZjK9hHx
 kuG4w3pi450z6gMTmpY1IPC7R158j/fLhygYLhB0sffXaGs50nizBlBoZNR/RZRJ
 7Ik1Q1E4dV5kVhgqBs6qPCfAdVMKGTWpM3xF2uyFT5xbuVPxIbQrRWR3YXJkIFRv
 bWFzeiBOYXBpZXJhbGEgPHRyYXN6QEZyZWVCU0Qub3JnPohgBBMRAgAgBQJGH01f
 AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQr8jN6Y5T8A7L7wCfa7dxDhHm
 WYOcaZ3PiBCxbMyMeW4An2regIquPmK4ZyrJkfXGd7BmmgGKuQINBEYfTV8QCACv
 /cPnRLjvnYJdozvbzoBqC4m2sAmBClDV9cRtIGXu//ULZ0CnDmEByfp7W2Aqlm4a
 +WnDBlbKaP4td0uwvly3m2hNH3DS/7/aBaDYhPUeetmIP3GZrelGlQHqe1ldJuwD
 KEiR0ANagAikuSiO8Fv76YY2dFmUSWh6mNd6+/F6hYahByJbDXrsYNSMI7BtpH/C
 fPaSew66982uu86IGIZPREfKSYouLuuHPUwrGRbcwyeIL5y/0i6Eyxi3JuPHCYSa
 a0jX5VQ8Gn3P3SukTdK+rWaJQMlzjbdaZknB/GeRDEc6ND3eqdmQa/PdnkGVwHeI
 S17IutKHDCsxDqSJgak7AAMGCACJtwmr70SqnOxtHugDB0G4tAEN+poeol9zfEnE
 A1nZImvDNLUoX11YZRLHCc9nz2V7HIzTacNL8ue5DenmtSs72S3zHM/DnIhXjx8r
 hBFrSW/DdJB80LLcC/NhRcl3U6sof4nzYuipkgr7evAeoZqWpHiYcuag0ZRRH5Jv
 4Yh3R8zFYAg2NSKs2Q3CCX4c0vs1boZ1f2x4QQhxTpsDkjJxGPJ8OEAR7W5BjDOY
 KZBL9+02bzJKnOcbrtRkbylGZAQCxX9DoZDGHSCqaUBZMJZzWauW6xcwd4s91pMQ
 MVG1u5WHvZlOEo1Cg3Y9QSyehMKkcLwyuBj2zP+ijlkIBuFhiEkEGBECAAkFAkYf
 TV8CGwwACgkQr8jN6Y5T8A6VnwCfZdSh5TaDbb0wjcyUkVYAWZIo4n0AoJOfSvnF
 MeOHsJ51PEblZGwvjW0k
 =hc/r
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.183. Alexander Nedotsukov <bland@FreeBSD.org>

 pub  1024D/D004116C 2003-08-14 Alexander Nedotsukov <bland@FreeBSD.org>
      Key fingerprint = 35E2 5020 55FC 2071 4ADD  1A4A 86B6 8A5D D004 116C
 sub  1024g/1CCA8D46 2003-08-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD87tOARBACkfv0/19ar/kUNsj2vL+APjo/cx0A0bubEmaPhwNuLOjtafdNm
 /pUULYi28lDVDxQJ8UM1voqrCcue+finCyy+k2L0nR37tlUA4t/+GH4gq4y2xL7S
 o/D5DqHDA0cTDAIQCbdD/rj3Z7nJw2Vkn3tAwZ6NUXV7OdLS+csbpJIjmwCg0HB1
 tzahpgegUe5XauCly+NXNMMD/3UcnNA7kBKSZMcuOVq7TkqYYvQZPoroK3yYcAZL
 Yo4WoPEyjtlD/ZpZVysQiSMxLXRHjsEbMAMZL7Tx/Sav01XUiBHBGDHXaWWVdqmg
 efxtBeoG7MZxAAXBLfcSeV0bjkd9oGWW/inHrl0NgEljZQqo1kbIEb5asooyT18v
 vZgjA/9l8xZdOlSJv7Ct+VGrfMStMmpBCn7IRSjeJRq2pNe0pbJtzXAnAwyrB62X
 gF6n7ONKdLk/WPihRdfrc4BZnNIWZU0q5P11rOENQEnToprAOYebhmS6cY0lx0SR
 M00HVTTgzsNVWDy9h+uOobicBSHPh2La7KGnFRtMb6pZFg5Y2LQoQWxleGFuZGVy
 IE5lZG90c3Vrb3YgPGJsYW5kQEZyZWVCU0Qub3JnPohbBBMRAgAbBQI/O7TgBgsJ
 CAcDAgMVAgMDFgIBAh4BAheAAAoJEIa2il3QBBFsAUoAoIGf7gn1DPL+Miw3/2W1
 YdJPT3TjAJ9LOVjgV1mZks+FjRdl1IETcJ4fPLkBDQQ/O7TjEAQA9yIaEvU/Vbj0
 L1xFjIOGEyM5vFvn5xP2LibOI7hUH+cMDaWkBgrSLqsI7k6P3HSTVWpkKUTl+vJe
 OJnIx1gFE/WJDPK5trnjzHQI9kWf6j8EREXCFuuvDy3QhuJiHTjB+I8IVYh+oiXl
 6SNo0ekvQd6KZlkPUXy8rczb8Y+A7GsAAwUD/iPYrIWC4xSX8kL6HFjaE2fS42EW
 iyfyb7slFSE2xtRf+xZyBa2Mu5XQsg+vJcSBsjrxpYdd+OuyTLuYRsYvuLZnB65H
 tTli1/ous2J56useJyeik9wJfFyZBlOtmw1QFLxELly+XgKiyGRNkTrws+smyFjC
 GWwhlhc40r824oWPiEYEGBECAAYFAj87tOMACgkQhraKXdAEEWySXACgwFVr9ZgH
 TYnmgWGXAmQWvJV+xAQAn2HlGDmOpuTDzfO5PvXOOWnFjvIt
 =bcPN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.184. Simon L. Nielsen <simon@FreeBSD.org>

 pub   1024D/FF7490AB 2007-01-14
       Key fingerprint = 4E92 BA8D E45E 85E2 0380  B264 049C 7480 FF74 90AB
 uid                  Simon L. Nielsen <simon@FreeBSD.org>
 uid                  Simon L. Nielsen <simon@nitro.dk>
 sub   2048g/E3F5A76E 2007-01-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEWqLYARBADUgEaHYK73qi4nXVO1DfcVKqzWZw0lDYXv3mVQO74Y41hP7QV4
 IyvRuuWmKK0vm+ibh4WQTRGhqeSr+tDrgUIqs/tavDVx27DdBeOi5fQwFiyM0s3B
 1o3VOzfmW3nOEAEEfAd/zQJVrz0GG6ao22zFSVRHEpJle8QD/HTsZ5sWIwCgiYNX
 Ok6oK9IdCky3kl0xwE/wkpMD/jKoZaj2/rc7t8ZtwBf9mQFECou+SsM5YFFMx2JV
 nHShx/6z/d1PWu59fnPOP/t+QkqBa4ds5msot4wJFqsFwuTmtCYySsK8j9yBbh6B
 KH2Iyjwnr3IFU2PopIxzscuGT4EKbLes925X6tjCfx+r4uGIVSJ6Xzu+9jGXK0KI
 TZshBADIuS+wneCYZ1Wnc/cwaG3SMXaVTOkThQS+l66o3BfXX77TN0HbjB+/CmP/
 lWjcUv4tTYfmI5kQg4pRA7rSEsMBwec19CIy+mf9QD1HDVNGex1tGdGNz7oaOvwm
 oT2nug8mCt+77q4ESQOmfHzLjIQqKh9D8zX08atp7EVhHw2sH7QhU2ltb24gTC4g
 TmllbHNlbiA8c2ltb25Abml0cm8uZGs+iGAEExECACAFAkWqLeQCGwMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRAEnHSA/3SQqxOqAJ9qfsJx+6hT6qXy9k0Hkuto
 pyh+lgCfS+cAvWkzwcTlZwmj7xnVMqex1T2IRgQQEQIABgUCRao0HgAKCRAV1ogE
 ymzfsoOMAJ4qsIQaHkhYT6FB06o9Hjd0JElbzACgkPVfATTcp5dDhiry+UMCPxfl
 4Wu0JFNpbW9uIEwuIE5pZWxzZW4gPHNpbW9uQEZyZWVCU0Qub3JnPohjBBMRAgAj
 AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AFAkWqMP8CGQEACgkQBJx0gP90kKtq
 rwCfc6UlwvCI+OQ8PV4Y7xVVNK8ZWLsAnjAOOQET1C1XacStkK9icK7u/n/fiEYE
 EBECAAYFAkWqNBwACgkQFdaIBMps37LD1wCgmeJUFusBpliqQMpOYaP3KL9/HDIA
 oJox4FwHo8yhvqG7ww92FMeknNCxuQINBEWqLa0QCADNQVSiZOL9KwsEGkCLtUGQ
 l7hmf9iuis/GxokTE/9aPYiCKx29wjo4b4pURS/gHdNGU70KNfqli96Q1zlS9CGY
 KhQoce0ZDOxpO/6ZZzaOtLw5x2/8M45BDJU45STx54+F/7Lt3hZMNMlNvjZGF/W7
 f5vcsPHqGAyFjDkjuL8QQqhsbaPsCTlqngFYh8/4F06+cd4GM85xGu/LM9M91TP6
 9ulvz4H/5TiUNvDjt1e82soRhwY9bwHxq7b6s3Q4Wgwo9l2Y2oW4T+TVpcCvgu2D
 vUSXo4U1ygPFl/CQ2Mz5IEp7e0aanzOU5FhMeEoAkJewRq5747noEcnygiPUuoOT
 AAMFB/9KyjWpXwovVjmNITIB1JPuZSO7NLhA10SpeFz0YXJVIiteQcHnUHOUn+7i
 tO8XbOg79a2Pz/5tLuX8YqNQQjODFKpFnFymlFr+aPpzEJPoXWHG1FkcM7rjmLpy
 gj6eokmEdQdr5CflY+IkJMNC0DxDfhsI17fQVAsaScWgnmSgfCNYT7uPFw8K8omH
 WawyIlZuAKa+l1Q03IFt0oDLqLrcMK7DnSJvSkyM7WcH+3ObsMaCXVziD9LOlW5B
 M3mZyXS3Z5A8/menv1lRYm7kxCt17HEmhxnHM5waqFyK0y++X86lNpwmBQZgzTN0
 2bCE2wlPqyT1LCVu4s9RAyET4hy6iEkEGBECAAkFAkWqLa0CGwwACgkQBJx0gP90
 kKt1pACfS9WAfr2P8Vx/ps3WYdd8QYumnQsAnAwoaIe1d968x4FIKOewpptF/JdB
 =ggBj
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.185. Robert Noland <rnoland@FreeBSD.org>

 pub   1024D/8A9F44E3 2007-07-24
       Key fingerprint = 107A 0C87 E9D0 E581 677B  2A28 3384 EB43 8A9F 44E3
 uid                  Robert C. Noland III <rnoland@FreeBSD.org>
 uid                  Robert C. Noland III (Personal Key) <rnoland@2hip.net>
 sub   2048g/76C3CF00 2007-07-24

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEamZvMRBACgUM3B+Z/7yw5DtYP+4jNaSvvJBNPtLbHeCcXzAytD/Le3Tx/g
 /joJFJZS92agbQSt6p9SPnw1xguQ2YMdBQ5LFbE5ZgrXnDX9JUWjhyjTPKRbkFPx
 5G+JkTG9I75/ZVq6AhcOjXwsq/mkANhu87uOPRO2Uf/e01o3CplYIjRVPwCgiqwz
 wycuIxPvmWX3ao5gkV5iUgMD/2cVqZQ/uareIN2HF559LZkfjGdBA7U4H1cOD7hr
 pK27HTNcSAMpHP368AY5nSEUezQ8iOArCxx2xYMIvyxeaQ5wFgQ0kuwb21JieUdm
 6+cQ3uynJMSVVic5T4qoyC3mpu00VNBpCLJIk2zLk8CPDPQot6yB41622xXXHaix
 1efSA/9oJBP+6Ffdrni7hxAEgP2uG/lXQ/oG67UljMC1LFkiV0irE9O6G5UXFEVE
 FOQfXmXqLRoIjWaqDLdfADerSl6jeva70UfbiGfxHHkbltMZi2v3Xd6H2wmZKcSl
 RDYhdvNIhNDXfGAoaYneHN+JWYPDYebG5MyN1QyU5+kB7n7grrQ2Um9iZXJ0IEMu
 IE5vbGFuZCBJSUkgKFBlcnNvbmFsIEtleSkgPHJub2xhbmRAMmhpcC5uZXQ+iGAE
 ExECACAFAkamZvMCGyMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRAzhOtDip9E
 47ceAKCI+rqu84IxKD8Rb+a1hL/+NqHotACeIg6ZGwFCNA2OOUchxF3hXvJ+mfqI
 RgQQEQIABgUCRqZ50wAKCRACwq9DxPQf7Ay9AJ9xShA298xcySmevKvX8sWC3LQ4
 iwCfbsQ7+AB2L4j25YgHK9CjF6f8s2K0KlJvYmVydCBDLiBOb2xhbmQgSUlJIDxy
 bm9sYW5kQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJIhOEYAhsjBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQM4TrQ4qfROOE6QCcC085r5aDgvzVDPvrZU+pSitB+BgA
 niwufou7zDg3AJGyf1MeuuFaZ1r9uQINBEamZvMQCACOvnyHYPRaWC7fFfrdqGxj
 C5ZnjHjYTg4vIUgVmPE096H+WflesmgOZ8bQH6J+3Pzpf+l6HimYtF+gMvDLIz0I
 HD1K2z75Ne6WlPKh8Is4lty1+knbOIDLqCSgFWcU1hAkj+Yr//oqUTlJ9qIrghoj
 L4w7QdMHGb7jMMLL/VHg+MXnQliD/UFAk9oF+/UbTfQwsanJXaydby0yjmXecyMo
 X20orSA/UKJe59Rc7sGOHf7uFoVByqsWQ/yesRmVsjxMNFGNMz1ekKFKHop7xcAj
 8DLYnrvdilD3MuC28USAZjSa2b84+oQJADQL1r+wT1bqWCEUvaIqf64b3Tpt8bIf
 AAMFB/9J9pOfPljyE3D0jy2azVr41mK7FG32FBpz4S1SIeq8DAz9OI+XuCoXd2Ol
 FA6oSepyBxG1Cz2dzhkobE3COPzwS6jRzPdsmZtkJ1Lp/t7w0FSMlOYqNkdD9OCb
 OxraGoL4PfoPgCsH80dY/On7e8COQs6rRPTOmx+FGqkdEaNXVyF8A7EoIUNi881j
 Cn82QjfR4pwFJ4KNeJRt+kBVE2j//VmsqlMcc1xBPzSwcO2YaURhF90qB9ql+bZx
 ENkoYgqdbkQwcPugdKJm4GzaX7OhdGprjH/E7Yj7fFmXhE2VsyQ8heGjKrRHgy/g
 4mTYKTTJnYHSXO+MThJ6JPwcgHxUiEkEGBECAAkFAkamZvMCGwwACgkQM4TrQ4qf
 ROMFAgCfYpxRT6ReISfiSqGLMBQndCh2ol0Anie8hp/BanOvY2jOiUUcfvyhIqrZ
 =bQIC
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.186. Anders Nordby <anders@FreeBSD.org>

 pub  1024D/00835956 2000-08-13 Anders Nordby <anders@fix.no>
      Key fingerprint = 1E0F C53C D8DF 6A8F EAAD  19C5 D12A BC9F 0083 5956
 uid                            Anders Nordby <anders@FreeBSD.org>
 sub  2048g/4B160901 2000-08-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDmXNAsRBAD0WcmPy11DRvDsEpadBPCATmPrvAImfj5XjcxBAJlBJoc9fiq4
 8OcnipVdId6STdVKvB3K3h9aNsb75+rD/W3nMi8MumjyXJoHAf8d68cnjppizcPd
 uQPOy76lkbiyV9OYBtaNQqmU8hE8MTr5Kew9NBCoC4SB4NX8kVh8iglrZwCg8J4F
 ltBYDz+Z5ZGoh54fnYN6IAED/jO7ISCvWbFtnzCw1FOghcgueqrWoy0OYKq8ZfuO
 m046fuIlHcswJOKLLexTajsYAC0WWe9H3SvKvv1etexMh5SsrgWTsSuIvlPfG4oj
 D5vIYqvH5NiqJdh9qiFEzGsv44jgESDVy9qaErbXRVe9htuRZqbtEPnB5cRRwTr1
 WhfuBADW1VLXj3UGw4OeBBd5KPIYXCx7RKS4nfrlBCqMcIaiD+K42U+7PXEJB8uM
 2sJ6uRYs0j4tTLBbDC2TC1QfT5NIVLG5wWkIh+jL7PODH+i4LF8n0pQyuLwJOFAx
 s6RIHNPB2fdI5sqB9lMIBszlb896wVJf9PPWFAt/5Aekw7eTLbQiQW5kZXJzIE5v
 cmRieSA8YW5kZXJzQEZyZWVCU0Qub3JnPohXBBMRAgAXBQI76xZsBQsHCgMEAxUD
 AgMWAgECF4AACgkQ0Sq8nwCDWVZnYgCg4fzk40pYLg3iNayO9dDNp4yHS/MAoLi/
 WCYhNOS0TMpap9SQXC/2e0MZtB1BbmRlcnMgTm9yZGJ5IDxhbmRlcnNAZml4Lm5v
 PohXBBMRAgAXBQI76xekBQsHCgMEAxUDAgMWAgECF4AACgkQ0Sq8nwCDWVaoNACd
 HR57Uuyyti+OqVr4zaVEIgg+bYwAoMcFR3xdqArQmp561541p+k1IBUWuQINBDmX
 NGsQCADRkDqg2uW9mn5YCXlzx9KlhAfPRny6kF4+B+ga0ZaIzJng2pY8EsAxKn88
 yH6ERs/PYdsy/AyksG8vzuc9CalW8JFEc+kvtJIL0HhBonlInaeUWHPixGEcOPcW
 ab8dPhW3zfEgOqquky21d8Zg+G3Z29tmKGcYKSQgt6W59z7vITK7+gv7tOGp2IpZ
 1kGqPZn+JqvB3n/uWo3rTxOGA/tduMwfESA5gHmEzKmU/17yIkE0SflKOp0VIGdl
 Fp1A1ULJDDVXjtDkxFvZ1I+WpqF7p9FCgy/OHUfUa0py3uHIEKMahqpAZ9e8D+GI
 nGizPR33ZY5PfM72ABXeGhFnweP/AAQNB/9HPBzxoJJFJNLyosSlI+Wkmh51K/nC
 EawQG6a+tgL6cPHgJQkgthPUywkI+2g7SUSurgPz0hRCPg2PjHP3PwVhjKzUgfAj
 y9eVnu+JSpst/a0Y5LEQdNnwG+Y+Cs0q9xj4T1VXw8B9fA3y1wS1a13zCQjfLrZP
 ziIGjHIBvpOFrSU3ML1rRaVfQpm2wQXsGHzjkaZq7HQy2EOVLzik34XkPBY1DrnY
 nSEwSurfjTrKTLNYsN53xCGwJ2w2347qXr04j87XhRmGCJQ/Nrrin4z4LQ/zNm5Z
 bErlts8PAfR13kqP7rx/H1n5obhpOoXUqb4Rm94c0r/s9JRah9ppgADRiEYEGBEC
 AAYFAjmXNGsACgkQ0Sq8nwCDWVbTvwCcCG0X50Tq7V4NeGgREttltmR7UlYAoOgK
 1OFsIdCCq6JjrwvfN7ry3pwc
 =clge
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.187. Michael Nottebrock <lofi@FreeBSD.org>

 pub  1024D/6B2974B0 2002-06-06 Michael Nottebrock <michaelnottebrock@gmx.net>
      Key fingerprint = 1079 3C72 0726 F300 B8EC  60F9 5E17 3AF1 6B29 74B0
 uid                            Michael Nottebrock <lofi@freebsd.org>
 uid                            Michael Nottebrock <lofi@tigress.com>
 uid                            Michael Nottebrock <lofi@lofi.dyndns.org>
 uid                            Michael Nottebrock <michaelnottebrock@web.de>
 uid                            Michael Nottebrock <michaelnottebrock@meitner.wh.uni-dortmund.de>
 sub  1024g/EF652E04 2002-06-06 [expires: 2004-06-15]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 isNkDxI+R1w=
 =LE25
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.188. David O'Brien <obrien@FreeBSD.org>

 pub  1024R/34F9F9D5 1995-04-23 David E. O'Brien <defunct - obrien@Sea.Legent.com>
      Key fingerprint = B7 4D 3E E9 11 39 5F A3  90 76 5D 69 58 D9 98 7A
 uid                            David E. O'Brien <obrien@NUXI.com>
 uid                            deobrien@ucdavis.edu
 uid                            David E. O'Brien <whois Do38>
 uid                            David E. O'Brien <obrien@FreeBSD.org>
 uid                            David E. O'Brien <dobrien@seas.gwu.edu>
 uid                            David E. O'Brien <obrien@cs.ucdavis.edu>
 uid                            David E. O'Brien <defunct - obrien@media.sra.com>
 uid                            David E. O'Brien <obrien@elsewhere.roanoke.va.us>
 uid                            David E. O'Brien <obrien@Nuxi.com>

 pub  1024D/7F9A9BA2 1998-06-10 "David E. O'Brien" <obrien@cs.ucdavis.edu>
      Key fingerprint = 02FD 495F D03C 9AF2 5DB7  F496 6FC8 DABD 7F9A 9BA2
 uid                            "David E. O'Brien" <obrien@NUXI.com>
 uid                            "David E. O'Brien" <obrien@FreeBSD.org>
 sub  3072g/BA32C20D 1998-06-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 wFQ+RbHSXThyO1HZCYdfSaaYVfrrLv5ooTBRHzP5DlSXk13nddBOE4g/AwUQOT3B
 NOMeMj1ArjBSEQKxUQCfY3XjdW3Yun2hWKmKaPpXDBKonz0An1Wr4nbjBvlsovrs
 eysWYs1ovDgKtCdEYXZpZCBFLiBPJ0JyaWVuIDxkb2JyaWVuQHNlYXMuZ3d1LmVk
 dT6JAJUDBRAw9rraP9k6yEHOCYkBAZjmA/9lczxVp0UjLAXM3jfErQv2dzpLDAiT
 QVp10pi+a8mAzPVCnmCfcNy4fQJbInAfe5FC8gxBe9DnsjLfHh5vlZzDHANpbq5P
 MLW5C2igBoAg0Im4RpevDhD664ZgYgB6HXHhPBSB3Gaarnpx+R6JpfDBolSg6Boi
 IN3q+kzftlTaDIkAlQMFEC+a5SFlYKmsNPn51QEB/tEEALKURfb7Y7metDHx5oV5
 LybWyV8cTJKINUllX8HDnz6zZQ7bMYlQ0qsqRqEIDMpMk1tojT+/HI4te21uW0T/
 FCemdm7leZM6g38Ne358L8jY/34iz0bIFeZjDzLoOKW5C8wtG/N88voiE0grVR3e
 iFEmtwWT5lRaV+DmKYQ4kXxAiQCVAwUQL6UVDceLqoSSZB6ZAQFokgP9G9xfWcKj
 CxbEr9TAEDsKIsNkKQKEFlfqGuAjSVWOBqEIyG0Wb1pZEQKHI379aEK9nVNSsQ5m
 Qk/E6JRvYENt9q5uJ9mp6+wPUVYt83YL7uv1YJJSy788tdr1esutgiAeLNmNMmOg
 Rw3vz8iKYJozmSyDSK/HwHS7zZ2Q9K5hpDCJAJUDBRAvoGvwym8rg/wMAtUBATFj
 A/9h8jSR5py9wPy6WkjsYQbml8B2fVjsLzoQbMI+b5IFYeDkRYLTnSLJKzuK8zHn
 1aFeXIhD0CRY5PC9jMAu84I59iE90x95uLPAH00rSJam2gEqPovRYcinADluivOT
 XGAn5qN9bKlmdsFNLMIFs/rohnIFab7wG3+t+i+8YYY2YIkAdQMFEC/kX5DT8j9C
 J2rqEQEBOFcDAKcdXpMcMjw+uSDwNc0pjOEYkfnpaW6MKnOo0qbwALmuSn/l21+J
 eypp1kr9VeWKn9tcUHucBHyTzswxeu21jI/KUUIRzuQsupgnop5LyNNrpDjxbQvN
 uiBIX+jAVQvxsbQoRGF2aWQgRS4gTydCcmllbiA8b2JyaWVuQGNzLnVjZGF2aXMu
 ZWR1PokAlQMFEDH/SvU/2TrIQc4JiQEBl88D/1d/WSV3W6RwZQUnbSp1GELg5knB
 87imzxf3t328/vzRRFUgAeB9qcW9fYRwdhZDs4ffUASm2fXSbXocnRdGDJMKaFZo
 oJpYK95vZFc0irLhI92w2RjLH1tF/W0TCopWMLN4KuqYX3PLMzQEcj08w3BcwWXw
 D0UuVD91d4WeljRZiQCVAwUQMfQd+VdBBKOknqTZAQE+mAQAsE8nykNNff0IINOC
 NIBLSQoldsWtZrO8aTlUI9Exf683zWeOQc2zijraJbEhj+9nXY6qYI7Gf+4N2eFR
 vN3PkAyVcBAaVHtQ/Q1/HBCjEwY2TiU05hktBSEa7M3XZyy3+YKjQlj2JSJqvA0f
 DI7Mv7xrKLZEi3yrO7HZ8xO6NJOJAJUDBRAxlKZbZWCprDT5+dUBASQDA/wOt72i
 yCcgku9VCU8tu5ITF2sbz6b2Zp7y9plW4UkWCjXHfvahpmiTRXFkc6S6WykLoyjQ
 Hxw8IjsGR/J+2EcdnCHzcWv4w1/COIb8lAShu9pOiT5pTdzBCPNqdCQFBlf9/S1j
 FPHv+1NbEx5HfkJbuwhiACy60GEpI8YLhUB7zYkAlQMFEDR2Jy+r/we0RvMhLQEB
 NkMD/25QwNJRTtAB9fw4b5XNcpTxBpkMNBQ5Xc+NDeJ4uXt4ET3U8tNwFqwg0DF+
 8SyeWXfRzgPiIj5A5I/DkJAPVlKz4R4QFDMtsodj0p7dpiCfHb+DOXh+B+iCT4zL
 us9PFL5CnV5aXfSrtmkYMrIVfXRxVYpDAjC03ZP4t0SAKWNIiQCVAwUQMpHsW8pv
 K4P8DALVAQEEkQP/cxwPYVHiztp1Znd+6Z3T+NCWIpJS8sPZmqc+MR0PG7BFXREV
 0OjHVTT2uOo9UTNVXWTCO3wZSvWl/nOxlurMMxBQtXlrVZ83jDIeOjBEC5AKGFTh
 UVpFx/YcxnRFXGiZ/bErqEPiohbu9i1TYOyiSOr+PArlinqdB+O54bij8G60MURh
 dmlkIEUuIE8nQnJpZW4gPGRlZnVuY3QgLSBvYnJpZW5AbWVkaWEuc3JhLmNvbT6J
 AJUDBRAzZsMLZWCprDT5+dUBAaYZBACu9COxVsyXxjJrXo+4DdazJYgcbH8cZstQ
 2VUlT9E+8ZJ4iL4H5qIqvtkp9eIiZdi2/ovv9wA0uV0MZdPS3IkqumKrz4UGbwLk
 Y+VMTDtJwuMztfia+qcVx/HLuZMfuTAB/fyuJLW5i9kb7X3yUSbr/9J8p+4da0R1
 YMj/mKuserQxRGF2aWQgRS4gTydCcmllbiA8b2JyaWVuQGVsc2V3aGVyZS5yb2Fu
 b2tlLnZhLnVzPokAlQMFEDJmySJlYKmsNPn51QEBDVED/iaXSckzmJmSli4El3+R
 QwsKy/eT4CmwzEH9kFlYJ+qYYE3tIG7oVMiBkKMLj95Qk9wt0xMXo1NsD4PsFDOJ
 XfyUcJ+jl3jwGraGroVvu2Lb/0UiC9qXPmNKeYopQCrswdx5EUkAmLXA4lgfPS1g
 EeEPQQVKbMc2DBXhUDubqbdztDJEYXZpZCBFLiBPJ0JyaWVuIDxkZWZ1bmN0IC0g
 b2JyaWVuQFNlYS5MZWdlbnQuY29tPokAlQMFEDNmwyRlYKmsNPn51QEBwT8EAIVR
 LR03d2nr6xjGFNq/1B+o6lZv9rKHBxQqjG6j/hzUhQNnywKQA0hEucVSMLyKsXSg
 0Prso1Ta9lZFqrAnqCFAiSt9Ed/BQdFYBygTUAXKkeA6cT8pe7CaqSocWYTjGmfQ
 7Ol1zBz4o5JQWNOgGCkAjBxl8gbd7yjV7R2Pg8kPtCJEYXZpZCBFLiBPJ0JyaWVu
 IDxvYnJpZW5ATnV4aS5jb20+iQCVAwUQMf9Kxz/ZOshBzgmJAQF9QgP6A06oVvhv
 XESbd/Y8FogfjOKw+sr+6ok+VC5cdC5a/memKPejSj+UCVe3J+trgmmvDEorQHat
 P7ceDXwDFbfXxM5wLHSUXpDef+FH2g4kA6ffiTVkgNiXeLIxhSBtDSJjV69VHIki
 lg7M4iN5EZkoeysSLGqbV2JFZr+N5E0fn6aJAJUDBRAxkFNfZWCprDT5+dUBAV7O
 BACntPk0/VswGltxwnstBRS6lJwFEye/aHme58nR5teMIhntDyxY42cFxv06hGNC
 ndoUqPfAFALp5TIs7c56vB/m3ii1VACXEJUc7yW5APwjYSoM/Mjoz1XKo7Y5C4+6
 xENKH2jpRKH+q2hjblcC2VZ+pJ/Mv/Wej+fBGkMF9n+0dJkBogQ1fjNOEQQA1ynh
 Qpl7E31casIlR7+zFqD/bs1LiC7be0CAxi8hFnYQ5KlF6lMfcqx+gdcuKt/FyO2d
 jhYeihFww2cjkfZ7bANERffofnvdkXzegqOhd0jsk7gbgEPo1fh5dJm4e0qo5eUo
 0zI09wLx5yjNtWWnNM5o4YVxaa0kiC3DKdRwXIcAoP+4T5LqLm0FMXR+Uo1Sq7Mr
 LVn9A/sFkOT8Ss8+JSwxtk2QIAg+QvmvyGl5xmL14zn3NpLSwocFSMX+2fXBAEQz
 lhBz38JI59DhIbV+7XlIjsd+Id/8CFTzeSH6oR1QnBFEE0fmcGAGAAqn4oX8mHc7
 bVQxrxzJlMFILts69fTdqJURKjwNuYZbO8OxelJTeHfjxc5Y1gP8DBwxtuZPVJw4
 mymwl0DoQwEbrC+mKBTdyZ3gOMv0zN64KFEKQZJPfdtfLy5Wks9k1x+53vp8ZXV/
 CIoDf0hvbuiunlifyyklLi8nqNa+KMRmnws7XkEmgQTrkIV26V9sRCt8EOuDXZ15
 QWXwcuSRGvt0lqUztokAuyTbSNJy45u0JCJEYXZpZCBFLiBPJ0JyaWVuIiA8b2Jy
 aWVuQE5VWEkuY29tPokAlQMFEDm0v3AA8tkJ67sbQQEBlVAD/igpVJFYq5HGrOpV
 ZgL7WgAzvf5cU0hmLi+C+Tm8kF2xL3rHNlUnzzdl6BxhLXfJ0xTEADsLUifBJPxQ
 AwJyG+Abbf/gciaYwZn3GFwPKbRQJ6dmzBX4buq2cMzs9oKANTAIQACgkhFOSs1H
 FcIDaa/VNeP9ox+xcnp8WSGM49CGiQCVAwUQNX4zzWVgqaw0+fnVAQF21wP+PK9M
 lfIcaOAuQVMgQhsDWqlj/DdxtsxT1GOnlHp3JGxdThyxdBDrxmiU22a6216s01fN
 5Ac25USeKRCcSVyG0+G/Xd3VfWDCEQCLNBwblAGKW9BEZfJhS1xOuTEYxgbmuvrl
 LTdvWm+MwPetv8kayhD1LM4rVovMxenaPYUub2SISwQQEQIACwUCNX4zTgQLAwEC
 AAoJEG/I2r1/mpuiz/IAn12Jm9/9Dv/b4gIauJlzjETOxhMoAKCQkYkZoX8/OMgg
 uxkmPy4tgYut04icBBABAQAGBQI5cc+lAAoJEKRQkCwJ0+ZNB5sD/3NrN8ZYP7Wi
 q8Zb389Qwc0JFHB9+EyFimhPHrLGgFBrZXM98YWd4wnkzqzeRKHuQMnHVdBG6z3u
 SJEU8Rsl4KepiujxjTeT6SLjUwAR0iG03O81GU5/otBtsqTIiJJdJD5tSPqHkuXx
 i7ruAF3eKlobaNFNzQYOjtdF2Oz+UfW0iEYEEBECAAYFAjlxz8MACgkQ5r/NLxCB
 o3xeGACgnDA4cV3ts1eueZlof0vhnhtOtVsAoMxzJZorbcesWEuFDr7/MONCn5Ca
 tCciRGF2aWQgRS4gTydCcmllbiIgPG9icmllbkBGcmVlQlNELm9yZz6JAJUDBRA5
 tL95APLZCeu7G0EBAZECBACL36sVALZfqAh6Ku3b2g9EKMBOCzHv8hJmFHCw1uUH
 4SU6dM2DeIJo2nVBaxtK4/G/0f2Ed7bQJ78C3GM1oF6LZiRQzEX/QlwZQSS8cyPT
 C2H1j6J8ZnOMnbytE/NFbjLZDSTktKd8+4GNe0oDTB3/juqva1OBmSsnj1NhpMsR
 k4kAlQMFEDZjny5lYKmsNPn51QEBkUcEALYsZckj5fs7uUzjSgyzF/2RrHJ5gGrp
 NBwikiy1+wdZ6bz8CQ6kcYC3Dap3iHSc9KWTn6sK5ZvYXcYD9k7is8V8zuitUrrS
 GWpY96qmNsCTvPSwfwIcyhYSIJYjdqmv4EnKo2mwkY3zqOV9DT1ABFLSI9Eyy8IL
 euhrm9jWEXs0iEsEEBECAAsFAjZjnl0ECwMBAgAKCRBvyNq9f5qbor96AKDgZmSA
 0aJZLBG9IjT+Ol/eqUbFPACfZ0z5wo8X4/aD9MEAbJRJQEvGsHyIPwMFEDk9wNvj
 HjI9QK4wUhEC9wsAnAgPzultU4+iO6c0mhJMBgFyAwriAKCZBIHKp2TaXPl+JYk/
 k58afcSTh7QqIkRhdmlkIEUuIE8nQnJpZW4iIDxvYnJpZW5AY3MudWNkYXZpcy5l
 ZHU+iQCVAwUQObS/ggDy2QnruxtBAQGIGwP/a2m02NL+cJ/BoIFINK9HN+mOubYU
 To27NN/uNyvIqUnvN3JiOv8j5/cJOUDUjEPbZve1y5izyDyw/4HxBk6OKAKWJ4tG
 SZOCEndBe01m1e2rczkjw0wPM4VcPVUXyt/432e44fo+pMczvtUFWQdz1inx1auG
 REqu6xad7P5nj4uISwQQEQIACwUCNmOeugQLAwECAAoJEG/I2r1/mpuilcMAn1Vu
 g9cpssNgJLaNhmD5ftmivVk5AJ9X673ovjPGPXRnlseGkldpeyrUCrkDDQQ1fjNQ
 EAwAzB13VyQ4SuLE8OiOE2eXTpITYfbb6yUOF/32mPfIfHmwch04dfv2wXPEgxEm
 K0Ngw+Po1gr9oSgmC66prrNlD6IAUwGgfNaroxIe+g8qzh90hE/K8xfzpEDp19J3
 tkItAjbBJstoXp18mAkKjX4t7eRdefXUkk+bGI78KqdLfDL2Qle3CH8IF3Kiutap
 QvMF6PlTETlPtvFuuUs4INoBp1ajFOmPQFXz0AfGy0OplK33TGSGSfgMg71l6RfU
 odNQ+PVZX9x2Uk89PY3bzpnhV5JZzf24rnRPxfx2vIPFRzBhznzJZv8V+bv9kV7H
 AarTW56NoKVyOtQa8L9GAFgr5fSI/VhOSdvNILSd5JEHNmszbDgNRR0PfIizHHxb
 LY7288kjwEPwpVsYjY67VYy4XTjTNP18F1dDox0YbN4zISy1Kv884bEpQBgRjXyE
 pwpy1obEAxnIByl6ypUM2Zafq9AKUJsCRtMIPWakXUGfnHy9iUsiGSa6q6Jew1Xp
 TDJvAAICDACbUnOQOcw3s+pOH+FYx/GmyXVbPBDQt5wH/XlQQq+pRl5EVxMI+H/q
 VW8kvrgrY7iZXBNSdfj0RgONxwr8NBASkQndd863+8wYVBdc7x+uPi6XF5JABqh2
 asmx8F7F4shq0WJ2QfLmk37l2mdBmFyhGuOlsr6Z272BbigiZQoicVXuYilUUrax
 hCWQ/nZZm4/Be2RaOhqX7jegPu8Zmkh1PqKoIj+HAXrhs/o21tVFojeZtc6f5Lap
 0t/lhFE4Fq9VrvK8GtnuU6nvVoZv1OOk6nE9aghK8qP27OEW27OH6TwAG/SE83IX
 eIpoFZp40RWliVHeE66iNwsb7r5f8ZNsVtwXF7JttqORySwizWg1KlFo2odWmAGx
 s3n3DtOa9rrZsvPZHlReFuZG6q9C6MDBPb7o9wPVFr9AbVA3Kgz+V4uEuM6NAZn5
 K+XEOEOyBf5bdjVBdfd7ZRqXhzUrqK2C9HTaEo5H4g6X4gUHp2x3jtyPKHTG6Eqm
 OwSwTfpoWTWIPwMFGDV+M1BvyNq9f5qbohECA8kAnjryv1dFUQTWTQGJJ29hn1Uy
 lSVmAKDF3kyQAZDAyz+21MQJnmJ2O5dFJg==
 =cMCa
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.189. Philip Paeps <philip@FreeBSD.org>

 pub   4096R/C5D34D05 2006-10-22
       Key fingerprint = 356B AE02 4763 F739 2FA2  E438 2649 E628 C5D3 4D05
 uid                  Philip Paeps <philip@paeps.cx>
 uid                  Philip Paeps <philip@nixsys.be>
 uid                  Philip Paeps <philip@fosdem.org>
 uid                  Philip Paeps <philip@freebsd.org>
 uid                  Philip Paeps <philip@pub.telenet.be>
 sub   1024D/035EFC58 2006-10-22 [expires: 2008-10-21]
 sub   2048g/6E5FD7D6 2006-10-22 [expires: 2008-11-17]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 l8RtrT+2K2WI9QQQEQIAtQUCRT5aCIcUgAAAAAAQAG5zaWdub3Rlc0BncmVwLmJl
 Imh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvNDI2NzEwMTNGOTRBMEFCRUI0Q0U5QjZE
 M0RGQzJDNjJBRjc5RDI5RS8zNTZCQUUwMjQ3NjNGNzM5MkZBMkU0MzgyNjQ5RTYy
 OEM1RDM0RDA1LmFzYyImGmh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvY2VydC1wb2xp
 Y3ktdjIACgkQPfwsYq950p5ImQCeJo41Qrs93qfxYgL+GsMhmoV1phAAoKT2UTKH
 OaxnC4TDwXz67uxbP+0EiQEcBBABAgAGBQJFPLwpAAoJEILS9urEu56fXz0H/jGb
 lglqrcuH1KX12m3OTCWr8exda+NQ9fqaLd42xMHw8l0wEjq1hB14J+vVEQBLqcaP
 NA8YUT6rF5feQwZCSfvTIZtxIYiufXuLPnl8xmNGWMVMjqraSkg6eYlwAHYD//R5
 YgOXuY8byDKM2OyRYwAHSCDGGQyObdxlKBnBTiPskubLgTEKtluAiYRUPlLJOWC6
 TribgLa4o/+1P0fnb+qUOelSE063CX0toVfxZGUptMraSxm8M5AWnYkFHtqSN6/R
 f8zBkqM/R0cowKJOco1eSx2YQM3qrBVPLNBV5Eyf4w22M+5g83TpDocZJ438Vlcd
 Yz5JxFHPl8avzRi9eD2JARwEEAECAAYFAkVXTTYACgkQLtRdZmGgc+nvfggAlq4o
 amMXxVclsWrL0O/BSmqyu7cvONkT77IhAs6olFvHJDVjpMEafrXCe2NH3/OWbxZv
 8KK3into/X1ex55ht0vuhNax+hR/GUYY/MF+C+snZgWiyvYAmv7zQw4UQG3RB30A
 tODe6jPozNwzzVzGCNZ9w5G1HqIIFrYJJs+nLpvdIE9CPpoHVcZdZG3vx0QpIUob
 3DpihUnRje/ieIioIoD9e878g7KvkbOMqdCNrgrgEl7VvSqnoeWiJ5bpAm5lOAkJ
 eDE7vEtqSHhI6oE/UjiLVMb+qAbmnF7q2Apg2Wpg09tR6my2PJj38hwkla/MX9bt
 meG4gV8AM+MZ7LqnsIkBHAQQAQIABgUCReNH2QAKCRDo4GL2DcsEMV1/CACcggZE
 u0pl6VGj8O3MJITaRI8MPT+5n1pu7Hx4rH7dr9CX439eCP5SHRka9WGOVSSc4FAs
 Z6lp6LVUMiABNOhsWAU5qoEt99pAZAHapuuDdqpUDO3R6j2EJeVc08kHWqvLYEGb
 YSxH3HlRSzEuRH9SaHDi4B39TQNvGwvN0nNNQFYr+ZkbRdFqRiOO4o6WyO0UGN4F
 bYoCNU2Vkk+oEz6xisp828KWGTE+So3zLRZS1sAQqCxTO1jmSlnP83hFlVN6TxiX
 FhoL1LovwcbHpth9GH70wApIGSX1mddd9MVlw9cXFcdHVeUqb5kB8rDx8iRp6fk1
 DayjtyODj+7sZwC9iQIcBBABAgAGBQJFRK4iAAoJEFeTDasLhrBn0CQP/ioOq0lF
 2spLUyE5eG1y/epjjhtq2D7e2pR3S6G7zuTdIP+xvL9XbyACgXf3A8zxg4qVHgq6
 D3V7zH1REAgvx/VNzAgbCksZyx93/pccsNXBbHJem6R3OCmktUwQxjSs4gzd9j/j
 OsOL9f6DCKi3NAUmTIDTBgHwh9Qn+PE3gRpO4VQUDlI1Ji4FO7nxt5En5NPt2akI
 98i8V11TKfGvPyCglLrN+NB/qlSWKefOXaSyrs3cQD6JQuTsuQtyJ5k42m4nX3go
 28IHKQ7zk8btEKpN64b/WOFL1kvGn4GI8gWMQDmNtdRluQ7hbOkMBAiUAgGLk6NV
 +724bH348EDjVm6O3hMMfkQogu6zKyWdUuomlP7RKIL5293mJm4XaMm9P6dWbI3i
 6a66vLa5mFx7U8fjPstOVMJQjJfnn5GU1fOdnLm8lJxIe3TyjPh73496Ymz7gGdz
 VNnT35IHFgxIgcsk4ui7809D6xCWv23GiRt/yiyy9no0RmUnkZ7N1YkAyRzupnbG
 w/MlCttfs0LYd7+ELAa1YkWk/486X8IU14yOuv1vDhcN7Yne735EGBasvRdfWHwx
 H4xtEBx08hk5qbYxvH98dVb7vMOjj3B9qxexa6F9N3eTEsfNfeq/xn6UWfXEWij5
 cjSb9B52IuPnCQOGsPI1s6SjV6O00aaYMaU0iQIcBBABAgAGBQJFRRquAAoJEPJx
 4K5ucD2VziEQALBdBNdOG6m03hj/PeSLnkALOwbXdn8R3hxIj9AizfyrC5Qty2oo
 DRfL682Rz+zTHBfUQ9JHBhuNw53eFtgmy3KkJxYHM62ivpKbuvBUfyW4tIan5LQO
 yuuxNM0UmfxXR57JeUMx6eNJLaGoGodIWXyNkxO9VynZ95vdY39DEUNPgcUY09qU
 KxyaaUsNA1+FvZjf3aWSwAGGk70GfR5G1k6JJAM/Haw/PgWAPq5aPo62lGKyhrjb
 lx4p4ptSdF6NeN6AOXUT0zPda13lVUGGgadAckGcUZ95/pskSWfU2MNH2qOFoKR0
 5t4mrDWoAHwlb6XIq9R6Z3xQmqtDarcoRH+u7NByodSd+FaU2kHE2R5RuYB+lpG9
 BCD6bLYwP9n6nVT7byPAt7jb+cERCnjLtpueSIlkUUMnvaSlfuq+p5iSeGkUsShs
 hKAv26wGS3XmrFIOLPAloNid78bYoMMjOuD8Rr8kTNt+IFP/gyUOZNd/Xezt4Dmn
 jXr+ZzsJj4d844HbdOKFFPQv2tGaS1P4JE1TKfDW9C9OhnRl8FTmyYoL7m+DEhF+
 EsTT5carSFwbvEt93N3G+gXWkZirdGYXr1o++I48Y3wxzYOIGUtt9MCZzlAxyjPF
 XOSgQzDYlxElZMbwYbbFlHslFd+1hNUaVxtS2eCHy+hDutrOz4AZvGcdiQIcBBAB
 AgAGBQJF4sQ9AAoJEFIiU8PXJzmB6X8P/R5sXaiwxmdrBSy+ldfDemn+lw9YejAq
 w+Y9jLCfqgOly3Zq6CnB/M0a3C5KM/BjgD8bNSNJXmNQsVAFUTWaBqMoofCqoOVx
 vGalcj/12DCuzsWsSrGbuO4eVubVipEbMac8rMS+qTlI8WrBrUSB0iC6q96QNRRV
 UrSFJ213fP6Sqo5tCqZn5UG4NafyU3/g/1IkNVdtqhT8MfdfN9rZ7942KbPKdves
 CZ1GBHuZl8ufeh/L9hmQx0Insxs3GDj3Mn1pf4Hy9VDjVIJaRSJRWGHKXf5a53aV
 vveLPzWnIZMYSAVm1YR2WJWdnKy+521e2/6LkSGnqELaQzDjvhOwBHzv7TOx6G5B
 4vRqlosRGvc/5y6Iq+jAeR0YW1Yl9xHIE7IB37slbQ1zrkVKQkw8MWYJq9UYmQts
 xvcdNDfQkLXLEZXWX8vAN+ayxKxExfCBRaOYdzcjWAdZ9nCBpU8g3KspEk88qh+u
 YTGkPkLitcZqodYxkn8YaTJvtX56nsgvIWTK9bTBYaYGP5JgYm/3RIqOZbIJLCYg
 Zak2qMxPSxZFL3K4+bLA2l6Jt+4NgJFe+2Q7E2FJvAPTjPfWCFqPZXBnp/FwpzlO
 bNtp9VVuTlQk9QhFCFl2UzXNuYJiopl0Y4oK3PH1g+Rrjf1bekqTx3HVwrAxFlBS
 OxaaPN9aAHTWiQIcBBABAgAGBQJF4vyTAAoJEDOWFYjhwhhFU2oP/R5xJrDZXI8a
 ZKRExgl8/GZz1EIBSN2sC/QOVI65oc1s3Ud0lFm99B6vDkewIPYZ+BBcm3fWUAe3
 uv35oNMMlVVwCNWjvj0HhOww1fk0kPQNw4xMpxWmc2fh16SS4e2wsZr5tXDMZk65
 kyjh+tgiglwrTddJpeCR0OgW9GRL58nG7yPlA6/Ym6YehTKaWsKBhwXob9ANbGNx
 IMtPRztAYxHxkPD+EpywN8Ncpty0XmGkjwnkTNGtSOC3PlgI70ZQPo1cs+/TsbBc
 ectQG5MFFR4jQ+9MfnB0ie1RuaAhaNlnOTqmkD5UlhZYQV9GNmJKCMVHC8C0wsdH
 XSJt4MXWxyF2K/58xFSCrC4AWM1NKQ0io1FnbrK155YZe/WPGrEHPcn6+VENuYMb
 eiNE9Mt/3s3cT5baMW5R54k2bdM+lEi0ZRpA5zkZtSeOPkSiJHni1T8U/WXwG+hE
 1F8QIEw3exeOIlKC/se4JsT8Qb6SYvr0HyPfK/MiZoQaLk7l5Od+p1DT2jXiKswb
 xTOUmMvwY21SUIiGseMNZwJ7s/JI/gn2vQpre28gHhyvwiKOHsec22/H7fhowy8a
 IDW3bK+JJ/5+XyRwyQNJObNct8kdQKUnqVBJo3zVQNwqsiD4qPYcMVKiPHmnNdLu
 UCxhU7XrF/b18HIQOXvQunw2CTsK/BTniQI5BBMBAgAjAhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AFAkU788UCGQEACgkQJknmKMXTTQX+nBAAwI9lmzy1FGauJ684
 78m8sAUzB+gSxxO7I4Z+lhH6qlFyH3LRml1L+lMpUvItOsXsDLNx0s5/Kx0bBkdE
 P740WZSSRSf0Cvv7VrFePlMfmJqrMZMVG06iJQqaDT47fEY13/+oRnhYGGw1jxSZ
 HVAejUFAqSe4kAIJfbdcAtroSWqZrvLU/fF714WPRRRqxNm0GAU+4mrpXs9QIXcA
 61gzFR01FjA2l+JCyV/xl0Mzk+z8DO8tP1CJa58ufipASQ1GFXAm/AqiW4tKW5WE
 qIXDjGxrPEW7n+erFydy87Pijtk4imfsTJvWTii9LecYahB7xhmD7pzWEapFnU43
 dnN4u1AAduBeBSaN/IqWsBwRxywa76q2KwQjfiSBMq0pXYhrBVhbvKv62a7MSE1a
 BEdXJHMQ/AIyEFehRdbO65xRLqY4NB2DFUkCKtcz0SRDqO8QhKQD+DpOfgWvf45s
 yz/OT58bGZvbUTB6WrE1w8n/yxFMMJoiO1oBHCMt/gQ479EDjlKmLLqGDxBfKIew
 SJ8uq0tKgjdzrIIQYRkWTsRVFCcKfCNAviyONen3rIFFXI6YJ9QAOiGQhUSg26w1
 TmtdC5q+14s76/TP6mNnTa22fmqTN+fiS8awBB63GnYNMqgRh9N5ZfNss3D44llO
 I4FuiFi+M6T13Xe0p1W6kWiXhrSJAkAEEwECACoFAkXtt6ojGmh0dHA6Ly93d3cu
 ZWxoby5uZXQvY3J5cHRvL3BvbGljeS8ACgkQlXlS1880AanQrQ/7B+4J6/6U/61J
 YaEnWvAGJlCeHEtS0jgs9a6c+SaFybV1Sk74SRzsvNm9Otpsm4yCL9bOljO5zaHk
 gFAR2vsaABJ4ZkbwQq7AS6PwEKtHH2jDJYH1230llchtWvJHuFlikWdcTV0X+m3C
 PPjPioFyDyQrT+WivONAyE+PuJS7OUpMU3KVCr1637qmYoPzMFj/5DRoKtv5+9Nz
 fnoLxfx5Q19L6FKcv1bcFziLUq7fqbaFtdXkVMUTsjW4xswNWyZRsUJiNTSCNVGH
 QhgJfFGU+FwZdTF+UIssjAS9k6D7VavlgFclHSHJuiOHmhDqp1LJVSa5nVHSAN2K
 q3aPz4fkmlsRYAocCdO66pKb936/tgful29NvkV3ApNJrIVzblR4XoooXlU7MGRR
 PtTm33N9mBSGMP7g82Lge+U99WZZeAykjOeIIBctNTKuW9y/RXPQ80FNXjMkHXyT
 n0BQrjVKhh69YNH+hW1o80S0XuTXELZ+Os7z8TTsQchGBUWCGWKUZ5LwOp4Bu0pO
 q9jOKm+w+aQ0wBycWh65HCUdo/ieaWHFvSw3HWc2mDnHieBSSZGQHwmbGUxaCKJf
 XxJ2JiIm6inRKhTVRtYiOqD2pK9vuHXQasxx8/MZD4lZHAHayLFIQLG0kJao3bVL
 e4fxzASbNGCppzCU/o+tBptVkBtmTMaIRgQQEQIABgUCRlL7mgAKCRAiGMgejnwD
 /3HRAKCMWyT+ub3ZE1cWl9J3qSQ1NdUt/ACdGodyPLF78MatFaX0bIvXmbXkePmI
 RgQQEQIABgUCRm6AxAAKCRCPqYpv7u1w871iAKDTYib1IGYIDm9V0mTRC7sIvPpD
 swCbBYyOTGHWIZ5AYG1Aw8sGbrUgxtqIRgQQEQIABgUCRpH24QAKCRCptvcwuD12
 HJs7AJ4xzjVe9QO871rEX4pAZRQuHoaomACg7lQZCYjhfLcr+CIhBn38mlIvfxSI
 RgQTEQIABgUCRp7w9QAKCRCYYg1FtYEYLABhAJ4x7fxoxA8iTO3oKm1IAnfWFn8n
 WgCeKZHZ6NaPhIvSR/52hDx0Z52cqGKIRgQQEQIABgUCRqSyLwAKCRCYtF5mZjk0
 FTnTAJ9ezR2YerTsAGAjLy1l9hbPM3x3JgCgtJPspmRiM8I4osFxp+gK8g8Q+yuI
 RgQQEQIABgUCRqSyRwAKCRCizvCpOtm9pysDAJ0eahajHngfpWlVNhVhWE0M2iNm
 VgCfS19llnPU+Tc+MB3ovhQ2KUniYt2IRgQSEQIABgUCRtGrbQAKCRBJUOEqsnKR
 8qwcAJ43TesNd1YTBXJXd/egSzyQqIXTsACeL9Egpil/u4vF3jlcD/mR9HMmQE2I
 RgQSEQIABgUCRtV71wAKCRD2yOmcZ2gdPN8dAKCI9N4AnVNk6//za3D77xc6CU//
 UACbB4mmh5whweklpiSWzI9cRMNHMKe0H1BoaWxpcCBQYWVwcyA8cGhpbGlwQG5p
 eHN5cy5iZT6IRQQQEQIABgUCRT3nFwAKCRCqz7OGIRtu74ySAKDIS/hlAg0vrGqY
 6sWeKY20maS+UwCYnNbHYs4kSJg2Ja0eNogKZpnhvohGBBARAgAGBQJFO/SyAAoJ
 EL9L0OYEnbh5mNcAnAwkoLnJV+/TS6U/SjPH3I+k2UKhAKDKurvGJ+XkWCtXPJ5b
 MzEogNWCyYhGBBARAgAGBQJFPHEBAAoJEKsvWlsVJWmQLJMAoN3yTggYXattX44Z
 mh/INCV7i9ipAKDypZlZ3Bg6WW6skVBE4E3zj0P5Y4hGBBARAgAGBQJFPHIOAAoJ
 ENuE1HYSbUfAFy8An15WkJa5ETk57AGUE7NDWWQFBYfEAKCOTMnFQEM1X4cfm40d
 sOktbJ05p4hGBBARAgAGBQJFPI+ZAAoJECakfGr+bYUPrLcAn0Lrw6/DmaC1fxsL
 txbSDSpQ9Y/sAKCa1C4Vpq7d3Q9jPeNwCH0FEVrmhIhGBBARAgAGBQJFPKjmAAoJ
 EFZBJvIp8ZvRcLgAoILw/OaAHFfCIu1MP18tmOTm5MWOAJ9hOrE3KIGLYBeWwnb7
 3mF4KVHzo4hGBBARAgAGBQJFPLNZAAoJENdZXTdLcpYloS0AnRIUYeM6XfswYqAV
 7jEfFwDS23X2AKC7ldStOoj8SXlpKEhdAlmHiUHl7ohGBBARAgAGBQJFPPEtAAoJ
 EGjhJSt9pcU7B7cAnAptO7JnxhjAauHk5Dn96iQBMLQtAKDLoINKP210BYUTNzhm
 HD3PACQvw4hGBBARAgAGBQJFPPe0AAoJEHPeaYzHFAWiKdIAnjGaZiTTok+85PmD
 NxAuAYrxHYT8AJ9+JGD+Et2wc0YdUOt6uMPGoCDxyIhGBBARAgAGBQJFPSglAAoJ
 EAbypSJtCNehs+IAn23Bp9KTylEIC8Wq1muEfLnW7uLLAJwIOMzO36oVBfzl1sL1
 QbVBpGRPNIhGBBARAgAGBQJFPhw/AAoJEKkX6cyZbhReHM4An0hQ7lRlF2g3c8Nb
 TPl2Tv0QCObaAKCIYJjQqr7ZnypSJraY6w8gZO5dhIhGBBARAgAGBQJFPk8KAAoJ
 EC+VFQiq5gIue/IAnjtOn7RWk5xe8PgzpQMNEufDYGx2AKCwuOHmnHLyNR451mkb
 lJgg82GVA4hGBBARAgAGBQJFP9EiAAoJEJRq0wuHLLoEOYIAn1go0FF9IZsdB5Yj
 Wdwk5FuRgutcAJ4rwmwJUTPdbpgoRozDRlWFGJ5KlIhGBBARAgAGBQJFQGdTAAoJ
 ELcooz9Fd1H3PXwAni/9FAABc1RxGG1cCA1wpxXLcXNsAJ4nQLHp11WTkbc6vvYk
 busdenwPaIhGBBARAgAGBQJFQm+PAAoJEAYGnPKWlFfwRqsAoIAcfQyKLH1VZtvE
 hyX/paB5+kTSAJ91qmuQ1rFQPrtU7CQdUJz87/Hw6IhGBBARAgAGBQJFQnYHAAoJ
 ECXSjMWVfVjPlUIAnAqBmuALhanEBUL41wMKS0Dr/WDLAJsG0pL6woPJbmXSzTVX
 AXtpH1qZ9YhGBBARAgAGBQJFQ4XBAAoJEGx2F4yg7Zgtc5YAn3nQlgiaxUAz2qFO
 JGgpDeQ6U9DiAKCw/wyTvsY0AuJW+7KbsD1GATd5GohGBBARAgAGBQJFRb//AAoJ
 ELPOLSM6q/mSfL4An2HOm02TrhKaelmSpAGaFkY9fd9IAJ4zeBnhoDJJ3ZigA0EU
 PNy81DsMtYhGBBARAgAGBQJFRhogAAoJEMo5dFnlGy6RJdYAniYUdAhNRCkuGL13
 PxFeBcq+Xab0AKC1v8TM7/pbUMn5N5ta/+6eaAjyyIhGBBARAgAGBQJFRiJOAAoJ
 EKBP+xt9yunTdLQAoMxdl4jziP5j5UNkqDnjGI2za7wlAJ4zqLIRGGJuvGISWrdB
 tg3TWemDjohGBBARAgAGBQJFR4KnAAoJEJfO5hKrjj7VL0oAnR2Xu0T7phI7M7lW
 dTw1DQg9AsgQAKCe0BnJeAvidIaCoFFLT68Jq5xPhIhGBBARAgAGBQJFSa3gAAoJ
 EFmm5/To7k549hUAn1NHIS4vIfdU4xF/yhfmVO9MHp3vAJ41qzvLBDUTOWWwjwGl
 Jys5+SwA3IhGBBARAgAGBQJFSxxMAAoJEKwhViahIYdXh7cAoIUOM7TFN9YuKIvd
 zSunNSj+CnxtAJ0VB1HCe4JhoBXfNUKRFtqGq9eU8ohGBBARAgAGBQJFVGbtAAoJ
 ENjKeKUexWvsQS0Anj3R3LbjGD52bJKNrx1DVJ5si72yAJ0Vd6zb1/XzWcHmDFDY
 K36wCnUmq4hGBBARAgAGBQJFVdoPAAoJEBaK712xKT80dVQAoPjU3nvAZ4UppiEI
 xX6yMI4JK2p5AJwPa7cYp9CmaysplI9yS18JCvjKCIhGBBARAgAGBQJFVhw+AAoJ
 EBypWmNWsMoIYdMAnA3RVRV3CU+uiUvmu2LfTX44daSjAKCIx3coX+NiFA3ptKrO
 kIghwFJ+g4hGBBARAgAGBQJFVxuHAAoJEBXWiATKbN+yMeIAnR3PVrS4K6jhaAez
 AiE+qD2zAG/xAKCI5sFLrSg3rMk+enDC/KlKX5tDr4hGBBARAgAGBQJFVxueAAoJ
 EDDUOm5k6+IghD8AnRisu1zBnILtzb+lBlNwoQsLXY4UAJ95vNDzT42QOLRdwl9U
 B0TW7Iux6ohGBBARAgAGBQJFVyq2AAoJEL/kOH5U4nj4LccAmwYfjAOL1un2sl8m
 9e57s7Cynw01AJ4tWgexBkIRa+Q5wjD4LDjl7x/UEohGBBARAgAGBQJFV0kbAAoJ
 EF2Oi+nyOBrUnJ4AoIColqxf6CnbtKomTeGrUCYuGMOVAJ9erlr/ND0TjuRRhjC2
 6JBGeIY79IhGBBARAgAGBQJFV0nTAAoJEE+xyIscE5vFllUAmwf4TY7SjHiGUs8H
 /lTQlVhnSr7pAJ9RmQZBU149oLGNAkaRTHDsqzpUj4hGBBARAgAGBQJFV0sKAAoJ
 EDMRJG1RR9z0lEsAn1Oa4UbKB6Ccho/q4FzSkH6slG8lAJ9nU11fYt4qkV55nbEf
 vy1A3QYfEohGBBARAgAGBQJFWhEZAAoJEBRll9zcw5nHWk0AoNMLrViej7h+jYnF
 bRei+6wEPUFRAKCaNns4o2B/3GrXvyivGeSD0t8YS4hGBBARAgAGBQJFWzPLAAoJ
 EBdynXf0qFEvfQwAn3BglZn3Oi838nSiZB/xcNsYAKGEAKCFaeNpU/s39LA2RGXl
 Hw5LniGfn4hGBBARAgAGBQJF4ZPJAAoJEJhL04CsX3AMu84AnArBs2w/5gJDYGn/
 GAJGKJYqQje6AKCGEuyxdTpgXh0+Wf0fsQlHKrH7VIhGBBARAgAGBQJF4bTFAAoJ
 EFAC77GWLjiQojgAoJ0sHq64UJxufSx+iCJO6HXayMniAJ4lDBdxnNRp247nDyDr
 ISl31l6lkIhGBBARAgAGBQJF4d3SAAoJEE1EwCDFwFuuhGQAn0Yw18xC/O81Wg6a
 1jWwf84husj7AKC1XCAFI9K10E8s2FP2WQLwBICby4hGBBARAgAGBQJF4eVOAAoJ
 ECV+3BMl8VmUNx0An2UL4930CxO7y/KB1BYC6313841XAJwK61IFYs3gNiGrGi2d
 7WigWNCyU4hGBBARAgAGBQJF4enFAAoJEHhn1Tx0eTXdTiUAoI0W9slpj2mVjaSw
 rYp4GA2nMNt9AJ9uLpKbjtdqpLCoIsN1ThQ4dUS2g4hGBBARAgAGBQJF4e1CAAoJ
 EFiD3l2iIpt4fCQAoK7tvorh9evu3ASE53R8jx+HtdRcAJ0Uq2dRqd4sTRYBhaKA
 aLONgX9rlohGBBARAgAGBQJF4fJWAAoJEFUVYHaRYekRLlAAnRQYeGA28TuOFnhO
 N8tAP3NrIpgrAKC/bvEnwmlgpDdL+UVk2au0M/ofjIhGBBARAgAGBQJF4fwsAAoJ
 EMfZMCWd/6rU5xEAniHhdHGSLMdyipyWVirWkmQ+FbzGAJ9Lt/EM1YFJs/F8ebLO
 F9VVx1kruIhGBBARAgAGBQJF4gQlAAoJELOx+BoCeHiAXosAnRSOpO5WVUB++0Qo
 Uq26kHMLx8nYAJ0WAzM2KSM6c01PwthMZ/lx2b0MiIhGBBARAgAGBQJF4hITAAoJ
 EOVE3gebfDKNoR8AoJZSpxUZIb6vBiTQof8yHWyFZZjnAJ41FaoAoUnQyUOEaF2S
 IOWkoyz6ZYhGBBARAgAGBQJF4iIbAAoJEH5OpU/Qq0B1VukAnRL7biIL/d7FRYuf
 mBfP75iCujG8AJ0WkYYY2xkGiHN2BiR3yfXrmxz9dIhGBBARAgAGBQJF4icTAAoJ
 EHZJQAVJruv2Dv0AnRWeNN9gnk/9qyJl6P+pgMOuPgAvAJ94n9DTgC2SIzh1HpZO
 lVN8XuMAZohGBBARAgAGBQJF4i9xAAoJEAZVrBDy2EYv3CwAn0ny8FWQnlItQvzc
 E0iL/kZh/xlYAJ92KeuYLcjHgKgqpuoHStZvkDnoBYhGBBARAgAGBQJF4jI4AAoJ
 EJzL2hYB+otKzekAn2cCHy0/Lm2USjekF+WFRGSwFVcXAKCWuq+oS5cfaa5mc3eM
 zBaxcGDyFYhGBBARAgAGBQJF4lC7AAoJEFuTwC+eSpyd8cUAmwdgp/4TQEEpm7Jh
 tzETnLmn7QhPAJwPAvWwdyQ1rDnYfBEV2W5rq9jvgYhGBBARAgAGBQJF4quRAAoJ
 EAMlcIRNIxPVzlEAnjLKmcDjH0qKWsBU7UXx4UMpDhjoAJ4rsQZcFLGQMlDwxH1v
 BQewRGy+CYhGBBARAgAGBQJF4sEsAAoJEHMcr9NTwaMvFIIAoJXc223Mff4PxfOQ
 HvIxnoLnehjAAJ4020TtDXBxcZCFkG4DxIUQxo1pXohGBBARAgAGBQJF4ss/AAoJ
 ENoZYjcCOz9PDw4An0rmujXmeLrbaJSYaAmgIMu7cy2YAJ9bvM34Kk2U+Oq6V57y
 n/KnEUE+9IhGBBARAgAGBQJF4vBTAAoJEItKxIGsHnFekngAnRzniv+lS2djP9yF
 J+UN7EbX47fyAKCaJ8NW22EdRZKcwsoPlCjPoJ1qNYhGBBARAgAGBQJF4wXeAAoJ
 EDACjSRIE7X+skQAnRm06bfouwS7Zw5oPh7EsBifSkvWAJ9r7IfBDTuVCtPNfdqq
 fK+AjjcVHIhGBBARAgAGBQJF4yUZAAoJENOjcASuTRzUdbMAoJnGu04YTskDX1cA
 xdbdtROfyTUcAKCjlcBalaTR50AIcA0eXF358Hrn/4hGBBARAgAGBQJF4yu9AAoJ
 EB9/MmoS7vYqnPMAn1CL+zmEIOJ0duujr6/NA5yS+bUuAKCswh/7TyrRFXs9fYr5
 1Nf4j/cV6ohGBBARAgAGBQJF4y6tAAoJEDiaVjzCcqEmF/4An3pHxn9oQKC1kr2v
 oM5B+C13aq0LAJ9WSOGetdqS8uBFzPLVbFczHj3RAohGBBARAgAGBQJF40jQAAoJ
 ECGntTuACWnvyIQAn1LbgUFyHuT1XQrZz1RYdtLMcqMtAKCF1Nk7A9hoHEJR35oi
 FwyZnIMRbIhGBBARAgAGBQJF40mEAAoJECic/8DmPNbW09QAoLHKeijGh99VaOLb
 yFXqpKLG8n6IAKCdang0Lv2FPL0XJTKONWUB4WoTz4hGBBARAgAGBQJF41TPAAoJ
 EErbH4hriFRDZiwAn26iX068ncR6xyKq+911DOewrUMTAKC+/S0BuPNu7nge4Lwm
 4OeC2SrMRohGBBARAgAGBQJF44RnAAoJEM8SNHyWi9WHWEMAn3qi62iyvcUqv1R9
 MhE8tBj1JNMfAJ9vKwzFVm8QxFpdVthwfINO0NRmm4hGBBARAgAGBQJF45cyAAoJ
 EDhzTXeHkBRSGjwAn0xdHrIX7GATUTPBqEyTbA+x+cpgAJ98bm9Okp1Fj2V7/XMk
 smrdOJ9PKIhGBBARAgAGBQJF5MAGAAoJEHCyAyE69Z0WiPUAoLXrJAGFYLHgHS1T
 kOTBZibCAmzMAJ97NzWQfveMgIEzl9Da5RaALsSUpIhGBBARAgAGBQJF5XYDAAoJ
 EHkOjJRh/9qrCYwAni7WFJy5WMBkTjLs0teVMgdTlxygAJ0VojbrWZZ7G5GW0myo
 F4IVR9cV4YhGBBARAgAGBQJF5amFAAoJEM6A78SRpwfkPJ0An11dVvxIOPABpQB+
 bIkj22FX6hX4AJ0Wcf2FCIVOaGZhjhprihL1C9KabIhGBBARAgAGBQJF6ZYvAAoJ
 EBVYlEWZ6B2g3zkAnihnIjmaXSpZKMPM8HZ0dw9AdUqhAKCWJYJKIKEw05q2nbYm
 AHnVStyHaohGBBARAgAGBQJF7dt5AAoJEDBp6SG3moccsRoAn07atXeoAtQ6D1cb
 yUMZglXkF3KMAJ9cWamfogKQE2Lx+Y16b6XjFzAPTIhGBBARAgAGBQJF8c/UAAoJ
 EGnSph3iY/zUsEwAnA1H3GDfUVS2NwdZ2UD6gRPw1MEWAKCrxsnE5nmPH+vl96pn
 uEM+vVwdLohGBBARAgAGBQJF9VMnAAoJEOpi07Zqq8Kh+YMAniZBHuuNTd84bWbF
 fvIsLbOj8FMkAKDNhwvWOSPiBOLV4FP1hC+CF2OOvYhGBBARAgAGBQJF/zH9AAoJ
 EDqQ/8EUCNfxOGAAniAWwV13RC1SjbAoWg6r4SNtBsxEAJ432yu6xUQyaQjBktjG
 dEt6ipAh64hGBBARAgAGBQJGCjo7AAoJEIpncZwt6CezvZAAnR4CNDXOc4opdVSR
 4AYC27gC0gf1AJ9z05ppibHrnedt43BurISQteEc7IhGBBARAgAGBQJGCokQAAoJ
 ED2vVKIe71J2DMYAnjhVuAMNh/6CGYaF6kXrSPuYvM8gAJ95ZR+NS+uroMqp8uWe
 qQ/9nbEN9IhGBBARAgAGBQJGT8yxAAoJEGBl1TP9wgW5y1gAoMXwFVo0k+CIIqhN
 s4msXvi2dyROAJ9JFBK2vESyCMqRady81hRlUZRkt4hGBBARAgAGBQJGUm2yAAoJ
 EEjJztxXHuSY/uEAnio9w++xLz8Ocyc1B4g5Mf2GojsaAKCJFD98zrvF7aESzF3u
 vAjNEumpo4hGBBARAgAGBQJGXE+3AAoJEHHOr6zsoorbCG0AoIz5tRkJEdqUQM/w
 n70EpvzfwVrtAJ90Oe2AY+PvID0Xbhn7vdArLcb1PIhGBBIRAgAGBQJGUO1uAAoJ
 EHkDg6l0ZuZTblUAnjHEoAeo4GQI+DPNsOKmvC5YWhS2AJ4nSTppQlUxv0OSHZMJ
 Dm/TRn3EVYhGBBIRAgAGBQJGUO2sAAoJEAJJTlL82leHzQUAn2QM32nG+XE3ukf0
 tlaVnw/Ow9mLAJ9GD5mOwTaFiPKMwCOAvKlZkdgVP4hGBBIRAgAGBQJGVLZQAAoJ
 EDKI3m16FCTGscQAoIKh+i7EqSW26+e1JB79eb2h0o8WAKDb+8RWXTF7ORnYsSy3
 2DNVoW0ktohGBBMRAgAGBQJFPHw+AAoJEO0Yto0WGUVT5c8AoIkR8J8rWBQEiFw3
 cHYqHUAI1lSPAJ91G0LMXPIcd/6SvU15RCOy2zfNIohGBBMRAgAGBQJFPQ5PAAoJ
 EDsr5WIUkTiXAcgAnjtmrnKeVkxJ2h/ajRbLzGMRCn6/AJ9oIu0qS/83WW3bEfgM
 ZFlsdE44QohGBBMRAgAGBQJFRc7/AAoJEFYhzLq4BaQWDfsAn0djhYV0A1195f3N
 iPHlcCUONqDZAJ9iI6QHftf5X43AFCSAfIvMBSUdRIhGBBMRAgAGBQJFSmQcAAoJ
 EKHH3ME0tyRf8y8AoJ/q1PqmyvEkxySpJXbNTkHtYolsAKCgT/bpsP/yWr/79h+e
 DMqZMRvgMohGBBMRAgAGBQJFV02UAAoJECHFCRYOSnh10uUAn2ezAN0+I3dUjkhd
 HZCAa5r75EPHAJ9Q7EBC1k8QaXJeD2+nZVHD8jDlzohGBBMRAgAGBQJFWZnQAAoJ
 EHu7RcYqQ9NMn1cAn16BP5LMMC9OXGm1PYJCOmsf3f5qAJ0bxM+TfSmz8eS4MRWQ
 eSUmidfHQ4hGBBMRAgAGBQJFZgjJAAoJEEIUTAYlN20+ESMAoKD3f3VAttEfuI1f
 YEkU7ucnP/LmAKCDNJaUcrhvO12AbT8dEKzLDJ3v4YhGBBMRAgAGBQJF40+5AAoJ
 EIwl7g8NwLfWYAsAoLq+OAImI6LTxtiUrrAki4E5vUj7AJsFMhAr8ag/ik/9ZASV
 qykQj24mXohGBBMRAgAGBQJF6t/bAAoJEEHcHJByRJcLlCoAn2JzVAARDE7hSzyd
 vtcOZrSaClzSAKCm6DTZAXYYd9Zlx3W5E/LK0gQJqohKBBARAgAKBQJFVLM6AwUD
 eAAKCRBfLIShPrYEbejZAJ4/cA1B4JmqR5g5jvooGSZvya8liACfbzZLKezZAFdp
 F2HfYJKjA6NVQraIjQQQEQIATQUCRfGDJUYUgAAAAAAOAC8gZmFsY29AbTR4Lm9y
 Z2h0dHA6Ly9mYWxjYWwubmV0L2dwZy8weDAyMUM1QkQyLTB4QzVEMzREMDUuYXNj
 AAoJEKd8S94CHFvSBbIAn0O9v7RMedOfOOm6MrjqrHfDgaNuAKCTv7WyO28RpxHP
 OwVelEHUa1E2ZYi8BBABAgAGBQJF776SAAoJEO2iHpS1ZXFvHjUE/2qc1qF9Vx2g
 hTH5JbSqCeIK+mSol74wRmRb5Ry2ZzUwcx3Qix+a8vCw0ktVIq9uydaGugakcpqz
 4v4hDj9z8id9D7ZyBTaVi56p8k1B4vkpdVa9+7DxOwsM7z1Y1ZFrGo8CaHzOarSD
 dIy9l5gYd9ShNqYJsYgV0/olO0P/smvm7QD9VDU20cU6cqfJB4vEqJQTpVyqQKsf
 BkNTT6Q1zdGI9QQQEQIAtQUCRT5aDIcUgAAAAAAQAG5zaWdub3Rlc0BncmVwLmJl
 Imh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvNDI2NzEwMTNGOTRBMEFCRUI0Q0U5QjZE
 M0RGQzJDNjJBRjc5RDI5RS8zNTZCQUUwMjQ3NjNGNzM5MkZBMkU0MzgyNjQ5RTYy
 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
 QNVW6YmIRgQTEQIABgUCRVdNlAAKCRAhxQkWDkp4dVawAJ0Qi/e/AJvrrZfbJsC3
 jkR1Kft/GQCfSzbVMAdXdQ4NQwQm3zVhfK0nnaCIRgQTEQIABgUCRVmZ0AAKCRB7
 u0XGKkPTTHYrAKDM7KsXxNKk1XcD/60H0heHtyOt7wCgpTxEoam8z77FBDVVnWHS
 +7wp1tWIRgQTEQIABgUCRWYIyQAKCRBCFEwGJTdtPtvGAKCcU+LVUPpFQyDEt13x
 WuGarKiCyACeLnBpN8ILgG0Ix3A4CPX13TUCMouIRgQTEQIABgUCReNPuQAKCRCM
 Je4PDcC31oLRAKCN4+UL+bNbezmMWYiN9/h1nfR5pQCgp1d/qP8QsaYBXgQ1I2ZZ
 RF6vnJeIRgQTEQIABgUCRerf2wAKCRBB3ByQckSXC7KiAJsG2V6/MAW2b0IJgVrs
 eZB7eDw4bwCgj7pvROowKRuixAqI8fOqKAE0la+ISgQQEQIACgUCRVSzOgMFA3gA
 CgkQXyyEoT62BG0z/wCfUz0NkUHdQFAByg0Z5ld5qsZXC1wAn01/a40+PqeYLNlp
 CSba9mD88sLNiI0EEBECAE0FAkXxgyVGFIAAAAAADgAvIGZhbGNvQG00eC5vcmdo
 dHRwOi8vZmFsY2FsLm5ldC9ncGcvMHgwMjFDNUJEMi0weEM1RDM0RDA1LmFzYwAK
 CRCnfEveAhxb0ozMAKCSkVIWJt4NxkHOwMeTL4nvTKLP3ACgiR7dwRhFOLF62UHK
 uOpm/P8/6eCI9QQQEQIAtQUCRT5aDIcUgAAAAAAQAG5zaWdub3Rlc0BncmVwLmJl
 Imh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvNDI2NzEwMTNGOTRBMEFCRUI0Q0U5QjZE
 M0RGQzJDNjJBRjc5RDI5RS8zNTZCQUUwMjQ3NjNGNzM5MkZBMkU0MzgyNjQ5RTYy
 OEM1RDM0RDA1LmFzYyImGmh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvY2VydC1wb2xp
 Y3ktdjIACgkQPfwsYq950p4mugCfVjyHTpSiCMDnkggcdLmJTFDNrUAAn0Cm6oc2
 yjPEcjt0FzuFxNwsmyfGiQEcBBABAgAGBQJFPLwsAAoJEILS9urEu56fudwH/0Uj
 WYWlAtAfg9OnKzCH5KnwNnNiuhCWrXJvXO5lx+VS1ypJKox+8fNMDrQ4txis2Szs
 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
 BLrvhf8zA/kAnRmPXZtIb4QHEKAwIW2/HkLsQTK4iEYEExECAAYFAkXjT7kACgkQ
 jCXuDw3At9YTpgCgw/PoZTSqOv5MqVimGOUkpm0dxooAoI02BdH/eweFxzQbzPRr
 AZTKYXyaiEYEExECAAYFAkXq39sACgkQQdwckHJElwuNNACfXvKR/6bT5EE3b9SP
 VRbgzbIvqDcAnj+F+7xush+wnQczGl4oS1VG9B52iEoEEBECAAoFAkVUszoDBQN4
 AAoJEF8shKE+tgRto1UAn10JJSSYp1KLzxHE8oOF6f0zUIFhAJ0VGEmXIDr6kLHq
 wpqztu/pmV4sC4iNBBARAgBNBQJF8YMlRhSAAAAAAA4ALyBmYWxjb0BtNHgub3Jn
 aHR0cDovL2ZhbGNhbC5uZXQvZ3BnLzB4MDIxQzVCRDItMHhDNUQzNEQwNS5hc2MA
 CgkQp3xL3gIcW9JVRgCfVU4aNqWLlwYFAFw7Y5dd6k0hLXQAoJySGsIbgBoEZ+Gh
 Z0km5dISlMJ9iJwEEAECAAYFAkVVzKsACgkQH3+pCANY/L2QuAP9EgKkqwfjWozW
 a3pdl47roBleOjQ7XIH02XldIE+IT5GznAN8syF4VtuAA7CF9O/AziDt4GItvRTv
 sM/m4Ir/yu+wijCElibAlppCtzhLNC6Igep7bbJtQ45w/rw0FGjMBK55yDbeGWZw
 028fPQjoiZflCXRCmBPlFhLG6l6O6g+IvAQQAQIABgUCRe++kwAKCRDtoh6UtWVx
 b08CBP9xgVRDdGx08+mJ3OqnTeG2zLHhGP3W6AqYxJDe5yJQqY52kl8Cv0+MTh5A
 QyD+rUoc7EsaU4eOlh2U2AY6wRkdcgbI0Vsp0LLqI9vf+6F8RZdwpUwSSva4o31u
 BDfEwdHcueaojCvz9/vbJhfHQxdg3lN+wN0baCeV8ICOZZ5kOF2gFHA6cR0LYjoS
 HZAoKVuAZK7ndX9JKySmWvKkyf++iPUEEBECALUFAkU+WgyHFIAAAAAAEABuc2ln
 bm90ZXNAZ3JlcC5iZSJodHRwOi8vd3d3LmdyZXAuYmUvZ3BnLzQyNjcxMDEzRjk0
 QTBBQkVCNENFOUI2RDNERkMyQzYyQUY3OUQyOUUvMzU2QkFFMDI0NzYzRjczOTJG
 QTJFNDM4MjY0OUU2MjhDNUQzNEQwNS5hc2MiJhpodHRwOi8vd3d3LmdyZXAuYmUv
 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
 Z8IAn2Q1yNALKj9i4XWsNZjizw4xSB0VAJ4yqVaUcRzj55M6Fcw57GqO67FskYhG
 BBMRAgAGBQJFWZnQAAoJEHu7RcYqQ9NMRmgAn0OJGibBGfdjrpnKDgroRFiOdV/k
 AKC/34An2i/kc0jrIWgGizzKd9BO74hGBBMRAgAGBQJFZgjJAAoJEEIUTAYlN20+
 5xsAoI4Sr9+55ZsMJIOYn7QNq6+7oeS4AJ40PNcnsnMBniacY37FXuGf9O70rohG
 BBMRAgAGBQJF40+5AAoJEIwl7g8NwLfW0YoAn2zNQYcAyrHdZn95gtRCx/KsUAnl
 AKC4BX7jXX/o5pj5oavzBgstYfpLrohGBBMRAgAGBQJF6t/bAAoJEEHcHJByRJcL
 SGYAnjeLCAj1bYyYa/05jFW/py2NmSFpAKC/v/BkHy1Dr5n12iwv3YDkwskBFIhK
 BBARAgAKBQJFVLM6AwUDeAAKCRBfLIShPrYEbXH6AJ9ig0i2ffCooj/teQH4+CU/
 s+NxkgCfQlAfDOKsNZ0t8mDO1n6yuUAKcCSIjQQQEQIATQUCRfGDJUYUgAAAAAAO
 AC8gZmFsY29AbTR4Lm9yZ2h0dHA6Ly9mYWxjYWwubmV0L2dwZy8weDAyMUM1QkQy
 LTB4QzVEMzREMDUuYXNjAAoJEKd8S94CHFvSXnsAn1x4MXGs5pvzaojpcqE5pdvG
 5neNAKCB6f/sWrWfVcm8PDNNB6mayvVw94i8BBABAgAGBQJF776TAAoJEO2iHpS1
 ZXFvEHME/2id8ZhcpQQ8Go/P5Wu1gWV8cyvPQ+AT2e3Bzqd9tbkH+hSMIt9ubVl3
 IyQWdiZzZzVQaUapMirKxFdiQmo+JkrOEs/mcUUVq6XnDy8lJdxCQOz8ZFenUkGQ
 aovNuHRQAVvd1GQppK35T7x00lRwu4jhdgiF4GJ2dyV7T8NTN7O2ADEDnXClHyCG
 B6EWy2QsdOtKMckN16UxC4sajo5/VRqI9QQQEQIAtQUCRT5aDIcUgAAAAAAQAG5z
 aWdub3Rlc0BncmVwLmJlImh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvNDI2NzEwMTNG
 OTRBMEFCRUI0Q0U5QjZEM0RGQzJDNjJBRjc5RDI5RS8zNTZCQUUwMjQ3NjNGNzM5
 MkZBMkU0MzgyNjQ5RTYyOEM1RDM0RDA1LmFzYyImGmh0dHA6Ly93d3cuZ3JlcC5i
 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
 =hU+Z
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.190. Josh Paetzel <jpaetzel@FreeBSD.org>

 pub   1024D/27AFAECB 2007-05-11
       Key fingerprint = 8A48 EF36 5E9F 4EDA 5A8C  11B4 26F9 01F1 27AF AECB
 uid                  Josh Paetzel (BSD UNIX) <josh@tcbug.org>
 uid                  Josh Paetzel <josh@rephunter.net>
 uid                  Josh Paetzel <josh@pcbsd.org>
 uid                  Josh Paetzel <jpaetzel@FreeBSD.org>
 sub   2048g/E0F5996B 2007-05-11

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =Xmyn
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.191. Gabor Pali <pgj@FreeBSD.org>

 pub   1024D/9E3F9BE6 2008-04-17 [expires: 2013-04-16]
       Key fingerprint = DA0B 2143 0FC8 EE5F E211  D329 7D4B 6E18 9E3F 9BE6
 uid                  Gabor PALI <pgj@FreeBSD.org>
 uid                  PALI Gabor Janos <pali.gabor@gmail.com>
 sub   2048g/A780C60B 2008-04-17 [expires: 2013-04-16]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEgGzt8RBADdmkWC/Q4tpLhYpw9oidgWjyRRx/MgPRrGhtAvVdNTjbVoT4bl
 5e+v3CHoBih7KIh0BVQrux+H4UJ1Fou1wwwCrPH6ismBR5P9iZEGmBR/K0+1gBph
 /aUBANM1QG1FpAKMsYytqXiNk7mH/+oxomsbXBg8ZFGzlOWCwp3gvMZBGwCg7UY8
 YtV9L46nZMFIfzlj/tkNzh8EAMeF8nLv2qFsBT3ihYJRb27c/GtsnSUCQgwU5CVS
 Zx0QVb/zpy0syLHO+AeJnUIQWBKOhPpysXRlyMpjDlPu2b/VS9av01uLeHCCR9YE
 G/Jp4mCNswD0RLoQh0WrNtdr0kR0htr8mZrkRbZo+YoZPCdp/lD5JNq6fkS/Dgc+
 OGBsBACIOunHi0iEMnThJNznfLSA4hmjSdkrI249U5Ie8KfA5aXxaCX5o68tMgUV
 s/9hUBIc9cKoAkUf8t1XEADTik544HYm9FNULU55K1yEoG6dQrVm1HYVSl7uklE2
 mHkkg15nqapedChp2a+UhXYK4IthrBYcI4YVvQMBsMIFvo63krQqUMOBTEkgR8Oh
 Ym9yIErDoW5vcyA8cGFsaS5nYWJvckBnbWFpbC5jb20+iGYEExECACYFAkgG0YIC
 GyMFCQlmAYAGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRB9S24Ynj+b5rQSAKCs
 f7zv5XU0wXzKF9Y/9kIH2CKg2ACcDIvhQGclbBZy1NWr96IEkesPVd20HEdhYm9y
 IFBBTEkgPHBnakBGcmVlQlNELm9yZz6IaQQTEQIAKQIbIwUJCWYBgAYLCQgHAwIE
 FQIIAwQWAgMBAh4BAheABQJIBtGPAhkBAAoJEH1LbhieP5vmlK8An3aLBPTXu/f0
 dWAovygPqgvjreGXAKDUrndv2PP84EhK4f4HDDwfeIVyPbkCDQRIBs7fEAgAyLRw
 XdnvIKENQFgcjI2XyPtcbe+mCs2miAdRWKPRq+RuVLu7ub1kYK13W9pYTJL5LAiF
 TBVm31uuoiN/sQaJMDz/Hz2DOLRsEcb+d5f/9ssiPUxMdYKnE+kYwXRvm15y6Z6G
 dNhFZWleNpFRuPYqy/HaUb5q8/quF5VcH/cDVS1tSTErPtM7i3mmnJOpdIdBrCPe
 VVJXZo5MWUp1wG2IIuyap8ddM5S/kHhhyujLxLNDnlTxYogGZz0qad/R3LeiYTfl
 Drn9cZzvFdPlmrSvdw78RH0tB09fRLoI8KjGHi/bTiF9Pai75OUwVMv4PmxjAF6s
 OLU9q8zGpr8XE2ykwwADBQf/XVmkCPL+BRd45e40ayCo4sqfMoh0mK6dP66FmO90
 tAHtlIfkK74mcb/XrHC0KoX7c/TSaG9C8uJ7NGYzEFQzlzY8LlAfW/P+LjIpXjk5
 frEItGm0fCNU/+eBwcobO9gfWHDHucfocar8/pnot2PhwJpRFy1/xUa8oHXxNfW5
 IXnb67uCDPl4xFy9GkPPsgFZ4QI9+S7do0XYDEwfvzELeNTANAzMK+jIs5yzJ7mB
 mwI9orFltPfmc1y/EVc08LlR7qCsbosb/HMHO3jaMeKq1NIHyzRd70RZn5ow4B0Z
 zPQTJCWzfM0L5vAF96N/Rmrigwsg83+dE/a5e2791WRCRIhPBBgRAgAPBQJIBs7f
 AhsMBQkJZgGAAAoJEH1LbhieP5vmWAMAn2t7GwTeP9Hq3t1I1uU8AUGgS47cAJ0Q
 0CAkpRuxhi2FZn58aNBhvQPcog==
 =JvPF
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.192. Hiten Pandya <hmp@FreeBSD.org>

 pub  1024D/938CACA8 2004-02-13 Hiten Pandya (FreeBSD) <hmp@FreeBSD.org>
      Key fingerprint = 84EB C75E C75A 50ED 304E  E446 D974 7842 938C ACA8
 uid                            Hiten Pandya <hmp@backplane.com>
 sub  2048g/783874B5 2004-02-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAscLQRBADERe+RX2eJpYLoaJ7d29B8YcTYzNlsfzghM1R1/Dx2RDy5poKa
 Jn9j+Iptq1qS9GkTHXFcQh8LT2K7wnE/MZTCxkZvg2ZkfQbJ4Z+0z3A1A6Kvg0tH
 X5aqmPUeLXvnps7nqZxkhl2ibcjhH/VYZK3mdRikd1wtJD1EhbbeqaR8BwCgkQAG
 vdJHN9gfjLLcM12EitkjoUcEALoo1bPoULWd4YhVH7W5L3Qp0dr1vf5pYC/V7FQ+
 8yPXZtGzMvIld8iX1sv/zsw4EoXXsaRzJo/ixdCS1WYBPowryu0G/LX5w0RTTGHc
 ihcHLm6ZmyNuIsTQ1ifLNASJoLkNBlQAuA0VG4evAujrmaWyEHbbIDSQKUJOjL9u
 jb2HA/9pycrr3+735Aa7B5jThN6p1XEC8GQg5MDx23QnTPj9QHXH4qs7s+hwxZq9
 3WkVFBcJtDBi8PeEVqfD/QPeU3ewbnNnfaF46miGV1iG1mzU4zMq4n5oBdijf5eL
 cRRdOJytYKTvlSCe8gf0MzfaB3RqD8+Cjcs3PtQOy1VT4aQiv7QgSGl0ZW4gUGFu
 ZHlhIDxobXBAYmFja3BsYW5lLmNvbT6IXgQTEQIAHgUCQCxw7AIbAwYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRDZdHhCk4ysqEPZAJ9ByMndfTtnnVIbsyHc2NjDp5F/
 vgCeP6o87Lw4aHuGo5guA9yeWwtwAla0KEhpdGVuIFBhbmR5YSAoRnJlZUJTRCkg
 PGhtcEBGcmVlQlNELm9yZz6IYQQTEQIAIQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIX
 gAUCQCxxDgIZAQAKCRDZdHhCk4ysqLchAJ4+01/uQVdqdDeESGodcvgKsrieqACb
 BIW7HMvh85WqofTeAK5pJu7hCM25Ag0EQCxw2BAIAPXEkkg6lSxGRmVH1yzRnSKr
 /M48xyRXYDrRPaVVBFkC4Af3CR5MjncJtjbzm7xH82glC67cksRTfTZRs7kJsid+
 g62V53dAu1Uoj8ecSDhblb8yW3rTLKVqGcliGcTRFivcm+ZFm0kc0xCQE3rd1COX
 NLEomMV6xuZ9PVzDAbJwAoGdpCYsCl09eZrTErueQ7pEVsLx9/0zQSmC/uDFEVZ7
 23GsJg23+EUBT5KuTxQ4i0k++Ccr4HR/OiUy6KmyXSNsKsBsXwm3map3Debqqqx1
 ssrDXa+PHkKEUrONQBoYbZ17DpPZb+NKWibi0Vp1HKPP2vZl4NZQC0GBLXbEudMA
 AwYIAOYhwVTWKQSgeEZUNe4PwvHczx8/3VNjYZGY6/ZRjgmfO3+MagjonZqfxYha
 GpsEV17NXm4WIg6HWtI43JwIWfkUybsdxQVH4i5lWYuA26wD6UtNXw9laPHKXonR
 DvmKDC6K0iFbSxTqXRZVQ//wMxh58/Yw/fX+fYtmH6u6kPaL+CPRkhQLezTzZWHj
 2wF6v+frdglW1/LpwpCFndb1i5+36ogZ5ZudG/iz53QzlOF0IZSGHIb9tlQ+4gUn
 KfxpQloI+5vAyqpHDKIH9K26wTBzKsp5Mt4W6cLfgjXs7TNc8BVT8d4rmmbGpGnG
 pSjj7b1q6EhpIVBkAMLw7qanLlCISQQYEQIACQUCQCxw2AIbDAAKCRDZdHhCk4ys
 qAuZAJ0VNEtJSZOAGetxBJ/BMWahVD8xeQCfVKwTHdPh83Qcf28xx81icY5OKY0=
 =rF4D
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.193. Dima Panov <fluffy@FreeBSD.org>

 pub   1024D/93E3B018 2006-11-08
       Key fingerprint = C73E 2B72 1FFD 61BD E206  1234 A626 76ED 93E3 B018
 uid                  Dima Panov (FreeBSD.ORG Committer) <fluffy@FreeBSD.ORG>
 uid                  Dima Panov (at home) <Fluffy@Fluffy.Khv.RU>
 uid                  Dima Panov (at home) <fluffy.khv@gmail.com>
 sub   2048g/89047419 2006-11-08

 pub   4096R/D5398F29 2009-08-09
       Key fingerprint = 2D30 2CCB 9984 130C 6F87  BAFC FB8B A09D D539 8F29
 uid                  Dima Panov (FreeBSD.ORG Committer) <fluffy@FreeBSD.ORG>
 uid                  Dima Panov (at Home) <fluffy@Fluffy.Khv.RU>
 uid                  Dima Panov (at GMail) <fluffy.khv@gmail.com>
 sub   4096R/915A7785 2009-08-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 gvGn3mxLairK5wBG/6nAxa+uon8t9tl7FKwiMg==
 =Jlk7
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.194. Andrew Pantyukhin <sat@FreeBSD.org>

 pub   1024D/6F38A569 2006-05-06
       Key fingerprint = 4E94 994A C2EF CB86 C144  3B04 3381 67C0 6F38 A569
 uid                  Andrew Pantyukhin <infofarmer@gubkin.ru>
 uid                  Andrew Pantyukhin <sat@FreeBSD.org>
 uid                  Andrew Pantyukhin <infofarmer@gmail.com>
 uid                  Andrew Pantyukhin <infofarmer@mail.ru>
 sub   2048g/5BD4D469 2006-05-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBERdJJkRBACMPYQjOqisztbRuKcG254kVS+eoBqWqFKY98x03KtgEYn2/Em2
 EU4sPfhr1PYabCT5oxmaIhmBRuwryM2V/Py4Gl+dfJ4+cmRt9/LXQPyWymSlCXj6
 U5mTqCeOId45PWU4lis44vN7DgAKZptu5GoUAWxnfh7M/K0UQGU/MNOPSwCgnt26
 U60GErf8Fao0V31YPjRJko8D/1F7m5LNW9zzEMF3WFQURluoOxrmaAnehfYA+HgX
 kcM5t0SZFnsdOCbsKLMxl1E9qgbF9mAwTU2MfJFNhEuCUWZlYs7a69XSbr9HgI7p
 cqeHFhpbKTfWT65bJ863jnsMwS9/mRHNka5CeNFh2Pz06mzV3JherOQIq3lcBAri
 TnaEA/4st0qZe6VawiZgGgGbamLtS/iUMxhmC0SAv/pdYVieeXmXi0E3b1mA39Mi
 oRvFL3gT24UsVEaazwcwqnnifOqlApCGubSitYM+OPa2DyoYDUoCP0A9DgohSrRr
 /+yCES6zTQOv5fV6DoX8tvEQ+2+3DictO2FLuqUC5joBu1+42bQjQW5kcmV3IFBh
 bnR5dWtoaW4gPHNhdEBGcmVlQlNELm9yZz6IYAQTEQIAIAUCRF0kmQIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEDOBZ8BvOKVp4HwAoJZ1Z1SB73vCYs9cxyuP
 mhVV47b2AJ410LsvceMdtc+g7LZ5Qm6jHNmCaLQoQW5kcmV3IFBhbnR5dWtoaW4g
 PGluZm9mYXJtZXJAZ21haWwuY29tPohgBBMRAgAgBQJEXSYbAhsDBgsJCAcDAgQV
 AggDBBYCAwECHgECF4AACgkQM4FnwG84pWnW1ACfV2rsfdxtJkFxl3xClNRoTZm9
 llwAniiNDnbJXOjId704Scb/LDYymESptCZBbmRyZXcgUGFudHl1a2hpbiA8aW5m
 b2Zhcm1lckBtYWlsLnJ1PohgBBMRAgAgBQJEXSbFAhsDBgsJCAcDAgQVAggDBBYC
 AwECHgECF4AACgkQM4FnwG84pWnbLACfQ5S3OAPZEJj/7zb3z3Xr/1AP4PYAn3LF
 f/4tcV8P5NZw0wxqYUMmWtHstChBbmRyZXcgUGFudHl1a2hpbiA8aW5mb2Zhcm1l
 ckBndWJraW4ucnU+iGAEExECACAFAkRdJxQCGwMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRAzgWfAbzilaVj1AKCZyDzhFFyymsLh7ykuQLQnLPy55wCePzG4LA7y
 mwPr3zKG/6BTOql0t5y5Ag0ERF0knRAIAMGIx2+t+/Q6AEVLhSeQ1WHUBbjsuVDB
 qMT4RZaiMq/UA2QSWFTuqylpV6rlvLR3d54MOvn3hlgj6zzEnoIj2WLFFtcJzVuF
 VbrBRLCjDgAOC75Kt1LJEOIcJwyZ9c5gGau4Ng8zyYkbYBJ3qmhtnjF1+m39uRc3
 +4CPRdlLTa0Dc0cbQ/hEE1VzWwXM61oxWKwHBk2hluv4AAhzjrenT9yUqmemc/fA
 U53feBIZrWNS7dzyL/L+jc516vHkvhNeHqyzZcmLktXshgfeLTe3qDsXnt+F3qr+
 4M+nTfkATdRQvSfs12KNAke76Bx6mjArNXh/sazc1nr4SJgZQ53b/dcAAwUH/AqU
 YZNJzrMDW1JBJtGvjo41T46WcXjw7pHQvzciOuYRVsclc2reXEHa8aZ62Q1LsThz
 d12lm47R8NQcMO8n+avrIuomuBooANf6QruKf8MMFlRGxs9Gryu+839NadbZHRsk
 NcfJG35WiKMksl6MSfMxSdhl0BhBk4pgPPJT1t+FY7yDf+N4DgCaDuRnXnTLPrxp
 LukXPTCtXjostVQ1Mv0kcTtnUu9yGeoBNhpUWQrOy5CI1Vqp8K0xMDbRojDSRni7
 zl9gfnzxO5V47llfhoNTEjLsZZ/8n3Od6KRMMUTgClRFe2la42u+R0CDAIRkNkI+
 WCPc8mM1TsGgw43LxnKISQQYEQIACQUCRF0knQIbDAAKCRAzgWfAbzilaRRRAJ9R
 iYtTvkXAj78Xt8J5FMOoiCo6TQCdGj7U+SJHD3NDwqmkvfMc7Vp/iqs=
 =47um
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.195. Navdeep Parhar <np@FreeBSD.org>

 pub   1024D/ACAB8812 2009-06-08
       Key fingerprint = C897 7AFB AFC0 4DA9 7B76  D991 CAB2 2B93 ACAB 8812
 uid                  Navdeep Parhar <np@FreeBSD.org>
 sub   2048g/AB61D2DC 2009-06-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEosaGcRBACOXnXquGEW53BjpMt2jViod/TUf1xgjMekcbDxqOODPeX7eYfr
 wJ8G6BCNOpGjBmWDu/JcNj4Z+gmTilJ6WLZQ7ecFZfEeO91pt6ys0cyWh0xfO+/m
 T83D7W81S/kqrJBkQbBIdV6LumevdErHo272r8RcMELC4Ru87eRtX3hmEwCgnnGN
 JMpQFUfYTt5XE7nY0yQoeV8D/0OcWmJbEZWxX9O7AuliCe3zd2Dw0B4LB9SZ2Dis
 7+gpVd3xVgYnt5wRE9kM+ThgrMA/wqr807qmEG6bcfUsfwwGN9YUtNF3xAN07cXT
 s026sCIFNZK816PrThBzCgkwR7pDpkMzGWIBr8WiXXy0eB+JlQ6UV4PEiXuZ5ulz
 P0b1A/9CZm3wJfrNC0r1gMyrfVedg4zwKU997bmPLGcYs+rWXDTI9CvMseOUYn4C
 oDZQCp/9zxuHK+VU7Y/w0c/hVE5ERACSn4SjN2unEDstK9njZBMHEPVkAe/YvSG5
 cmc97SHlVE+eu/bbLKcvFb6rRLPOaVFQJMJA2VJEGWtYhvP7ZbQfTmF2ZGVlcCBQ
 YXJoYXIgPG5wQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJKLGhnAhsDBgsJCAcDAgQV
 AggDBBYCAwECHgECF4AACgkQyrIrk6yriBL0MQCfUJOiS2PbJFDeiav1ylcXXwfp
 ggAAoJRoS7GDENGyM4BzjJ4b0ptZqTLRuQINBEosaGcQCACFCWs47SL4DQA6bNDl
 VJu4w8wLf8uVOyatuGmdXX8Y/OTVQJgA3vS+ODNVJCxhKVlvhcn7bhBdGdWKS9K+
 lr8+eEvr4hf2bQpesoHC+uFgKyILkCBNL8raixbhysyq0pfZWWDJMyn+G42BG1yJ
 Ji+bykygdpYnbIVA8dYHmBibI8mkPKOHSohjXT1SRfGGn+l1w54OO4NlJhCXMkjT
 A/Z9Bt4XeaiR85uJi0UUfV8FGZHhgSvT+/P1xIvz+nytuehSP/QLXl13CtAG/nKV
 kAcZnsT/3NrJ4Z2r45k+c50Wrf210scAaBogrrV5eIHfNGgOANApN8+8vj+aXO4p
 XRuXAAMFB/44ea8rd+P5N3OMrfuM8i91Qe1bJ+BIoroKPOr8jvCry0h3QpdfLKUN
 IgaqbS3JZeBJ8HHnWSGCF+o6H5gzRe1hvylPEclLPDCuPe7T746h9Mzejf2hNDJv
 Og+BuweDZW4KhovVbdS+syJEvpGF4bO8qgHT2CKgruXSHbFetdQWbkM0rfMmTuo0
 GcR2BEVrPb/SPFv64ZZyAZzmnGO4vT1bzClnTzJixrDpH74M3vSEYegMB4KdbLYB
 i8Jx4QUKgVEhJHjJubKWX4etyU/uuehOC3xYrmr1UXvsom3U8r36Dvdo77Yr3dgD
 VXa7bolNx0TIhdWxZI+R4z9E75QY+/wgiEkEGBECAAkFAkosaGcCGwwACgkQyrIr
 k6yriBI+JQCfUxgyqGtzZvLh5Al7gsTmRc11PLwAniD3NfWGRcO2+9uxSSQqRH1y
 wC4n
 =tqY8
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.196. Rui Paulo <rpaulo@FreeBSD.org>

 pub   1024D/0493CA02 2007-09-19
       Key fingerprint = 8E4A 0A83 680E ADB1 96F8  402B 7C3F 0CFC 0493 CA02
 uid                  Rui Paulo <rpaulo@fnop.net>
 uid                  Rui Paulo <rpaulo@FreeBSD.org>
 sub   2048g/D0851F30 2007-09-19

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEbxejARBADbFk7g7VmkWH7doKstfPCcbdBzoo6JZrXrYWXtgkLUeE89E/LT
 I2yAqDYHgUZu0UMI9OJWg11LOzqAPC+ToKSqbYWYG0PnL7Rq+47L86Xvqc2Ms74q
 Z2bXw3bion+EVOKcUsV6slcPFPuRPZPkO34E2drqZSlrUX0SXQwMBuuikwCg4/1O
 7L0+ui0yvMZ6Pt3X8z6IRwUEAJWx6vGV1QCs+4tlmZZCv24Lrxx/4RVQ+TBLdhG7
 ryM9PbCDAexlkvQCl6s+/jbW3o/NXk1pjcdS4SC4Oz0jG4id7meVqAReDP827pBK
 QyjdS600ZX3znaQ9Bu5j/SpD+h/AIEysuRnkecxZmbIEynqMjSIMHjvum/97i5g0
 g2mwBACnO4Li799RCtv6A+pQKYFzKPFnAyAJoHmcU68h5jOgW7EULHfuyByE4v4w
 hyB62j9kw+/W6ZfQjaPHqvxHhAwWRfxhlCtFXYm0zzzioKQXSh8m2H+3ccOKbcms
 nzD7Rmp5TVHg1CeMqtqgvv+iF9b/EmTMugPh0oaWdsNI/+yQf7QeUnVpIFBhdWxv
 IDxycGF1bG9ARnJlZUJTRC5vcmc+iGAEExECACAFAkbxejACGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRB8Pwz8BJPKAkKtAKCK1kvvihrs0VCzN1IEusdzozli
 lQCdFvctTgbV7vy4DwtITeM7AtHNziq0G1J1aSBQYXVsbyA8cnBhdWxvQGZub3Au
 bmV0PohgBBMRAgAgBQJG8XqIAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ
 fD8M/ASTygJHYQCeLmU9ughT2PEnhRMaKlTtMQeenbUAnRdvVGOOYtPPk7/U0gam
 XUgPFZb5uQINBEbxejAQCACVmIHUutWQPeHUwArYN9v7F7ynduQCWvroFa6QVBM3
 YA6kBAGOV4LAaCyVSIAQz9yytMZT2pBpZb+daH12q0myif2OPbAMFMkld3zmxm7D
 P7Gek0mtM7/U2IP3L2pL47SSYipEBfUM6Up3ULL1qiEVnGDUQUeHO0CdhsJiM+Zi
 GEpDk1B8G9yYWYLjcTjOyiy7MvqnEl+ZBLyIwl2Veks6Yd+pnswpQi4LS+9CpMRR
 UZdpRO5SbydwNZmupdIgA0rYHwArL4FG7aWPPNhG+JjWf05KNo0AeAvbfQGp2H8Q
 FfW3GqzPbWOBirY3+KQ/KRAFMSx/6cYQBBdanu5E4KvzAAMGB/9AY9tCVnwp2r23
 UbNCJlVOb6Aa0Uv662h+eQjm3Oe5zUbMH7D+Jz/8vUHLe7gdpbYs/+/6bbithQTz
 wWk/n1+rvtOxNt/nVJXDYAooZOSMB8p9VDxslrhsCJFHnR+P5yONhFrGWhKrN3gC
 UGd8/y1j1e4b2xdI/bvuQaDOJOMo0w4oYveaxPvyiox4Dx5ZR1ZxTXK4yoddIUgq
 rwOyfcrPEs4o6f4U15dw0TSfUQhPzTXlKFmN6d4YPI2r3vAP8uBJA5DQuQPDuUE1
 WsHfK2IWnz7heC+cH101qV48L+gNSV/jeYcyslTx7uEBaI/O52hC4IRcCMcwf3tY
 7mABsIyViEkEGBECAAkFAkbxejACGwwACgkQfD8M/ASTygIrEgCePXhaDztEZx6c
 42RyssmLKlqelLwAoN/WxnCCqQon6L+pEZA1wW0GdgEM
 =DGcG
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.197. Mark Peek <mp@FreeBSD.org>

 pub  1024D/330D4D01 2002-01-27 Mark Peek <mp@FreeBSD.org>
      Key fingerprint = 510C 96EE B4FB 1B0A 2CF8  A0AF 74B0 0B0E 330D 4D01
 sub  1024g/9C6CAC09 2002-01-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxThkERBACPf5/QHmyM944qrl3hWlWvK9fZZR2c37rhxAeqDJ8WsEMPBTZK
 WPn9BsMk+2d8e62FkzYo6L5juekd8invwd1nnszFFJdTDWx+vpMMgYuHBmme0QuP
 OnlU2FwJUCknw5Ed5pYV8F6azGgUNjYKIIJi/L3D9S2qDZ7l+3DgD0knKwCg4o8Z
 ZE2vd9uQw0AZ7lIa+li3hB8D/jHrVZqHxhOuUbxIXoJG3g54mH4i9GF8uN8ZdhA0
 9AxLVLzjLr4CQd97++LdSLagSvgD9N6OrtMPeqge4Frr1anJ+LRPDeOQhd0meJZB
 iCiekil4DSOsowqgmIG7DlAJx+PNV66qO1ExX1fv1ugyoWHJqYmdBSF9x1fHU788
 GxCtBACC9DLBMmMVu1Fsw3rnkZaR7xX1a1Bu95ZUu6TKJP6qUS5GnQOxF7dDjuwX
 /uRinkQ7W9vR4UuVvcV+Ct5R/yq7e+SfLb+YFQ2BmWeGNs5AVLxIZsZ0ar16fwB9
 XdxxHU/IkA3kYo4JfTvi3QXjLn4mbYUuBIVGAL63UO1kx1c8crQaTWFyayBQZWVr
 IDxtcEBGcmVlQlNELm9yZz6IVwQTEQIAFwUCPFOGQQULBwoDBAMVAwIDFgIBAheA
 AAoJEHSwCw4zDU0BXeQAoMlSoeOO5WtFMyC8viNAafpPcT6hAKCcjmQyI/cI0id2
 PMX9ZOfrKd/ma7kBDQQ8U4ZDEAQAw9gcDj02cAlUh8G9bLIQazPLJnX0fah7KB3O
 kxh8wFn0LliP7W7HLB+nQNyO4TfNgI0bhVyKDQQbKI2xJ4hylo9Z1K2R7GilgCnB
 FUqIp0MdqAswX2Dq7KXoyYAZRBOnQounUMaQ+6cfRI37mWc6dC2uY5qHne4zmLML
 /lVOjVMAAwYD/1ZArkN4IDk/VALPnzW4VYcCcT+101DMZfIMvHK2MiwWFmO+Er/K
 gIo9DrybHNQ6+bVQh/F6PSlxDrgWey7dQbHQSssC364v3RPOCmuBJCMTEszaais3
 VekHF9i9NMsUzbGpowaQv+YKMFQu4Rtlwaq7NUp/cD4a+jaxto9ij4EliEYEGBEC
 AAYFAjxThkMACgkQdLALDjMNTQHvuQCg1PrMlcafQ3BUaXAQRlGoyvF2WcQAn17c
 HA1RAO/MXM99nT62+AKLlpeb
 =mfY+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.198. Peter Pentchev <roam@FreeBSD.org>

 pub   1024D/16194553 2002-02-01
       Key fingerprint = FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
 uid                  Peter Pentchev <roam@ringlet.net>
 uid                  Peter Pentchev <roam@cnsys.bg>
 uid                  Peter Pentchev <roam@sbnd.net>
 uid                  Peter Pentchev <roam@online.bg>
 uid                  Peter Pentchev <roam@orbitel.bg>
 uid                  Peter Pentchev <roam@FreeBSD.org>
 uid                  Peter Pentchev <roam@techlab.office1.bg>
 sub   1024g/7074473C 2002-02-01

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 svk0OHOC6GZbyg==
 =2fQZ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.199. Denis Peplin <den@FreeBSD.org>

 pub  1024D/485DDDF5 2003-09-11 Denis Peplin <den@FreeBSD.org>
      Key fingerprint = 495D 158C 8EC9 C2C1 80F5  EA96 6F72 7C1C 485D DDF5
 sub  1024g/E70BA158 2003-09-11

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD9gSfARBAC0ZC5VEuEzqk8KQ3tFam5rugDTaigVzYDmT6XBrQuVwYrFY5zj
 gz3o87e/KGmvh0FgpulhoJpkOW9l7oPQpp0wvEm45WRq17+7quW9VppgVCzs79FL
 Cc77A4g5LAuO27i1yygfMfPrr6J/M5bM2FyuUS35QvKBTlkZiB/Zt1d1QwCgzJML
 PdRvozXQdg6/bPc+M3Wh9AsD/0NxL7cwGExg57hnxA3oNB4M7IM1MwbDDaEQvJbW
 Ls8c+x2UMzdE4XHMhr940GiwUzEa1lyy0M7FmB+cdFgqhJ1VFjYE6VyGkyYtticL
 my6Im5S4Pfvx7pO2qLmYW+OnbnC6FFgFPbsAZVl/1fy4hN7U2zQIMw3kIodFBnyN
 RMsvA/9uzITCim3ov/9x4OYX0BfUNNmczIZMvXbmcuDH+NfwkGu9pmRitx/AWHGJ
 chOv4vMuMnBHU12TV1dstlWrb+Q5DVrnbVUq90mUbxg2emvlv+xK2oZ9EBKjAv/z
 NFqySi52vd+OmgopbVI6bI2+VdKrKeNcDByt/2zRGo9Y9hDULbQeRGVuaXMgUGVw
 bGluIDxkZW5ARnJlZUJTRC5vcmc+iFsEExECABsFAj9gSfAGCwkIBwMCAxUCAwMW
 AgECHgECF4AACgkQb3J8HEhd3fUzKwCgj1hA+IDNLHGdD+ua2bs3nPcL+vMAnjR8
 6CwsvOZIL5cr0EyveMsGNWqnuQENBD9gSfIQBAD+YKY2v46TD994B3h0KtAI8/Zd
 aJ+K1yUNIDxjueo7v+c3jKaWPgX1h+Cr/O936IVnG1zg81zEF0Ly6NcwWrj70UDO
 deA4tvx8HQoYfjwRA2kYAv73yvt+UG6WS3cGkX28dcLb8/JEV5M64AYKhgqRX12m
 VJWIKdqMYzho8n0mCwADBQQA9WcaZB8RVj22I88DA6okYxiU2vqAN+QUvZfX0X1/
 7Rh3mB8iAXBuASEw6NbQnGtky8RlkTDgYu1UJt0aSV2U2CXKOyPCJut0Ka+YYtOM
 prdHmnNSksNvwThju8F6js51nrf3D/7L9SFhc+W8JTfa8iz9Zfgq1HQkZ3foSO5J
 W0CIRgQYEQIABgUCP2BJ8gAKCRBvcnwcSF3d9Ut3AJ9WFh2gFxmqE8O3B85dO4yx
 z/OvxQCgsQynjVGZI9JJn1W0KOAYSbihdu4=
 =kQUf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.200. Colin Percival <cperciva@FreeBSD.org>

 pub   1024D/0C6A6A6E 2009-01-12
       Key fingerprint = EAF4 8BBA 7CC7 7A30 FEFC  0DA9 38CE CA69 0C6A 6A6E
 uid                  Colin Percival <cperciva@tarsnap.com>
 uid                  Colin Percival <cperciva@FreeBSD.org>
 uid                  Colin Percival <cperciva@alumni.sfu.ca>
 sub   2048g/DC606691 2009-01-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGhBElrAAcRBACDfDys4ZtK+ErCJ1HAzYeteKpm3OEsvT/49AjUTLihkF79HhIK
 rCQU+1KCzv7BwHCMLb6hq30As9L7iFKG7n5QFLFC4Te/VcITUnWHMG/c3ViLOfJG
 vi+9/nOEHaM1dVJYD6tEp5yM1nHmVQpo9932j4KGuGFR0LhOK5IHXOSfGwCgxSFD
 Pdgxe2OEjWxjGgY+oV3EafcD+JROXCTjlcQiG/OguQH4Vks3mhHfFnEppLxTkDuY
 gHZQiUtpcT9ssH5khgqoTyMar05OUdAjZIhNbWDh4LgTj+7ZmvLhXT5Zxw8LX9d7
 T36aTB8XDQSenDqEtinMWOb0TCBBLbsB8EFG1WTTESbZci9jJS5yhtktuZoY/eM8
 uXMD/3k4FWFO80VRRkELSp+XSy/VlSQjyi/rhl2nQq/oOA9FoJbDaB0yq9VNhxP+
 uFBzBWSqeIX0t1ZWLtNfVFr4TRP5hihI5ICrg/0OpqgisKsU2NFe9xyOhyJLYmfD
 8ebpDJ/9k30C7Iju9pVrwLm1QgS4S2fqJRcR+U4WbjvP7CgStCVDb2xpbiBQZXJj
 aXZhbCA8Y3BlcmNpdmFAdGFyc25hcC5jb20+iGEEExECACEFAklrALYCGwMHCwkI
 BwMCAQQVAggDBBYCAwECHgECF4AACgkQOM7KaQxqam6/igCgn+z2k3V5ggNppmWr
 Zstt1U2lugsAoL7LwS9V9yLtil3oWmHtwpUqYruEiEUEEBECAAYFAklrARsACgkQ
 Mt4ezdCTR/ypIwCUD1achcqLYCm9tnYSIyuok4AulQCdFRgS0m8oCL/rxIIkEks9
 t82rF4aIRgQQEQIABgUCSWsBPQAKCRAV1ogEymzfsl7TAJ0U5P1tP6rpuqZV2IUk
 upOlKO3uUwCgnhMuyzumLyYdSShkVkxjT3wd6kG0JUNvbGluIFBlcmNpdmFsIDxj
 cGVyY2l2YUBGcmVlQlNELm9yZz6IYQQTEQIAIQUCSWsAjgIbAwcLCQgHAwIBBBUC
 CAMEFgIDAQIeAQIXgAAKCRA4zsppDGpqboJ3AJ9ClLZrhs07z89f2E/ViccT4zwF
 3ACgvC4IjEa7Mruk0E1TJUxaHLXWEf6IRgQQEQIABgUCSWsBGwAKCRAy3h7N0JNH
 /LImAJ9wRXlqUl7q3TLtGiVDlGgemAF8ogCg04iFw407ersxQ/xhQpy9EqFxZ6yI
 RgQQEQIABgUCSWsBPQAKCRAV1ogEymzfshucAJ0dnr9H56NugiUFe8hgJ3DMHYQ9
 8gCfYamgijrAHz3UkJ1FJSveYU5FcMG0J0NvbGluIFBlcmNpdmFsIDxjcGVyY2l2
 YUBhbHVtbmkuc2Z1LmNhPohhBBMRAgAhBQJJawAHAhsDBwsJCAcDAgEEFQIIAwQW
 AgMBAh4BAheAAAoJEDjOymkMampuZt8AoIqJnoMkMc72nzSWO4W/esjLboT/AKDC
 JqQ39yUJWuE0icnXI52OzFSlP4hGBBARAgAGBQJJawEbAAoJEDLeHs3Qk0f8CSMA
 n2i/wVFfvQAglYiAROYTktla8756AKD870BxM2AZHngm47QxhfkQaFfij4hGBBAR
 AgAGBQJJawE9AAoJEBXWiATKbN+y06MAn0BEvVhscv5jNNHohbxVvPOhz46yAJ9m
 qMFnnWz5K1jNNXKR9AFXapn1lbkCDQRJawAHEAgA92SzCLD+AiA6CTkYPmGNJai1
 QYHJxe6RW+FMtvir3VqHzfgyh+ta2S44F15DRPTOBEAtQeJRrbQT/CGNoLONctwF
 KIBnchW4navfawgc+y07IAER8BcWaGh5l8omSxFNUGbjKsD2VdZgr4kYTeRN60am
 DV1XK51wALoQabzco/57R73Azdv5vqHIYrgWLnlOJF95R8mu7Do/pk7J3XFpkPbK
 DlMq/DtK/wRtPPGzJ+KqrVMOHZef6YJV5I25e7jjj4pyn9FlXdq+jNMCzyQg+DTx
 6wlkSyywI8H467aEkb18Q214QnYBgWu9vivHmC81bIYKu7STqAVs41Sul0cUewAD
 Bgf/TKN4idg8ag3nHdNiggeQbBQyAmyRoT5bVOxcK7Wwu3Y0m11K8LBFSx4uLLeH
 G3RjQlgq6dAUXs12SqISpzQDxTkyvvmX4Hisa1drCaHfkPUSCxfOrUOFxewO2Jnu
 Ycvdrf1oIlOL3P31m4D/IFf9fX/J7p2k9hPTUmu9JmRY2TbuIrsE4aFFDuQld1qN
 GFCErJ0SvFw9fi0dwNqlci4hUcIf5ogtYYCxQkxgkNxi8WXmcyKWEpRnUCdC+ZYs
 VuWUA/a9SPIv/M4ROqkRQDNLqVDCNxrdTqtsNNw4l62VNBbv0fEZvK5Z5ECgPveZ
 kU1KtcS+T+TWSIuICWeevTjzBYhJBBgRAgAJBQJJawAHAhsMAAoJEDjOymkMampu
 NYoAn22pXZxU7ubgHa564IRErxCNwgKPAKC5DTJLNaU4ZdgSTUZuArUyvcWXhw==
 =RYUS
 -----END PGP PUBLIC KEY BLOCK-----
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.9 (FreeBSD)
 Comment: A revocation certificate should follow

 iHgEIBECADgFAklrBn0xHQFOZXcga2V5LCBJZCAweDBDNkE2QTZFIGdlbmVyYXRl
 ZCBvbiAyMDA5LTAxLTEyLgAKCRAy3h7N0JNH/J60AKCk8fKCpx2gXrbWMHrulX8Z
 mxuFNwCg+1koNtGfe3LQZj/CSV2zfr1mTA4=
 =GSTt
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.201. Gerald Pfeifer <gerald@FreeBSD.org>

 pub  1024D/745C015A 1999-11-09 Gerald Pfeifer <gerald@pfeifer.com>
      Key fingerprint = B215 C163 3BCA 0477 615F  1B35 A5B3 A004 745C 015A
 uid                            Gerald Pfeifer <Gerald.Pfeifer@vibe.at>
 uid                            Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
 uid                            Gerald Pfeifer <gerald@pfeifer.at>
 uid                            Gerald Pfeifer <gerald@FreeBSD.org>
 sub  1536g/F0156927 1999-11-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =3Uph
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.202. John Polstra <jdp@FreeBSD.org>

 pub  1024R/BFBCF449 1997-02-14 John D. Polstra <jdp@polstra.com>
      Key fingerprint = 54 3A 90 59 6B A4 9D 61  BF 1D 03 09 35 8D F6 0D

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzMElMEAAAEEALizp6ZW9QifQgWoFmG3cXhzQ1+Gt+a4S1adC/TdHdBvw1M/
 I6Ok7TC0dKF8blW3VRgeHo4F3XhGn+n9MqIdboh4HJC5Iiy63m98sVLJSwyGO4oM
 dkEGyyCLxqP6h/DU/tzNBdqFzetGtYvU4ftt3RO0a506cr2CHcdm8Q+/vPRJAAUR
 tCFKb2huIEQuIFBvbHN0cmEgPGpkcEBwb2xzdHJhLmNvbT6JAJUDBRAzBNBE9RVb
 +45ULV0BAWgiA/0WWO3+c3qlptPCHJ3DFm6gG/qNKsY94agL/mHOr0fxMP5l2qKX
 O6a1bWkvGoYq0EwoKGFfn0QeHiCl6jVi3CdBX+W7bObMcoi+foqZ6zluOWBC1Jdk
 WQ5/DeqQGYXqbYjqO8voCScTAPge3XlMwVpMZTv24u+nYxtLkE0ZcwtY9IkAlQMF
 EDMEt/DHZvEPv7z0SQEBXh8D/2egM5ckIRpGz9kcFTDClgdWWtlgwC1iI2p9gEhq
 aufy+FUJlZS4GSQLWB0BlrTmDC9HuyQ+KZqKFRbVZLyzkH7WFs4zDmwQryLV5wkN
 C4BRRBXZfWy8s4+zT2WQD1aPO+ZsgRauYLkJgTvXTPU2JCN62Nsd8R7bJS5tuHEm
 7HGmiQCVAwUQMwSvHB9/qQgDWPy9AQFAhAQAgJ1AlbKITrEoJ0+pLIsov3eQ348m
 SVHEBGIkU3Xznjr8NzT9aYtq4TIzt8jplqP3QoV1ka1yYpZf0NjvfZ+ffYp/sIaU
 wPbEpgtmHnVWJAebMbNs/Ad1w8GDvxEt9IaCbMJGZnHmfnEqOBIxF7VBDPHHoJxM
 V31K/PIoYsHAy5w=
 =cHFa
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.203. Kirill Ponomarew <krion@FreeBSD.org>

 pub   1024D/AEB426E5 2002-04-07
       Key fingerprint = 58E7 B953 57A2 D9DD 4960  2A2D 402D 46E9 AEB4 26E5
 uid                  Kirill Ponomarew <krion@voodoo.bawue.com>
 uid                  Kirill Ponomarew <krion@guug.de>
 uid                  Kirill Ponomarew <krion@FreeBSD.org>
 sub   1024D/05AC7CA0 2006-01-30 [expires: 2008-01-30]
 sub   2048g/C3EE5537 2006-01-30 [expires: 2008-01-30]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 6MXOtw==
 =3Md4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.204. Stephane E. Potvin <sepotvin@FreeBSD.org>

 pub   1024D/3097FE7B 2002-08-06
       Key fingerprint = 6B56 62FA ADE1 6F46 BB62  8B1C 99D3 97B5 3097 FE7B
 uid                  Stephane E. Potvin <sepotvin@videotron.ca>
 uid                  Stephane E. Potvin <stephane.potvin@telcobridges.com>
 uid                  Stephane E. Potvin <stephane_potvin@telcobridges.com>
 uid                  Stephane E. Potvin <sepotvin@FreeBSD.org>
 sub   2048g/0C427BC9 2002-08-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD1QNM0RBADbw1IMsD6ShBkXQirwG9TUFkBfZOaGUB9nZZTGZzkDWsj9/8FP
 TacAKze6REEdtfADFyYolZrps+o0xVUI3ib5kzXnzz8yj41HTzR7PG0FcgINt5Ls
 yuq+d3ETSu2AALwNfolKy/9yIIcRFl1bI5cawOua5MB4VUaf4JHiyOikfwCg/zsO
 QReMvoKLcZkn9pcCH6EZHtkEAIxZKMcRaIuGe0vF3oP4GfuEXIa7K7R9ez0u3iiD
 inNPQ5vQuY0qJMLbZAu6wyqEP9wVXCdAiclBbPYRb9tabcV5gFkuXpLvq5E7pGkN
 hRF/rUeDxf/EKIklqe63KNqgzMZ2nM8lvoDkUrdSQL5dc2Y5a6VIq22QsgaraYmo
 j4p7BACAfCiZjND9VcNAQmTvEyNGslQ63gzUfE7D8Xlx2Glv4PP9AmZ2X+FRliY4
 YaARKDK+62bNTrJjQGiaIzz9LsFV5zpYvHBQ9KP6NIp5bP3ljaUwyAJt5+GT8sGZ
 ZOBpSmau+s8RmSPajjvSwACjWF9tP19IJMtnk+pMn1SGiVbMA7QqU3RlcGhhbmUg
 RS4gUG90dmluIDxzZXBvdHZpbkB2aWRlb3Ryb24uY2E+iEYEEBECAAYFAj3s8qYA
 CgkQpvaYsfdm3ZH1VgCg3x3Qbvq/n5W/xonGXqI6+LJXLw0Anj5AgE0GPTC1naYn
 KpFmD9Hb+m6LiFgEEBECABgFAj1QNM0ICwMJCAcCAQoCGQEFGwMAAAAACgkQmdOX
 tTCX/nvccgCeIGN+hK7GND/4+9BbHpXOOnnlsJ0AoOavUpZeUj/t6pw+ld4CU7t5
 iUrhtDVTdGVwaGFuZSBFLiBQb3R2aW4gPHN0ZXBoYW5lLnBvdHZpbkB0ZWxjb2Jy
 aWRnZXMuY29tPohGBBARAgAGBQI94tEZAAoJEJnTl7Uwl/57WiQAniYT7h0K32tZ
 1+PkyM0UUvu/Vg3JAKD2VXNsiI3w3o/xm20IqR/UwZtAVLQ1U3RlcGhhbmUgRS4g
 UG90dmluIDxzdGVwaGFuZV9wb3R2aW5AdGVsY29icmlkZ2VzLmNvbT6IRgQQEQIA
 BgUCPeLNjQAKCRCZ05e1MJf+e0K7AJ9YssAR7btTX0oE9MNYYVQBbfYNpACfdyiD
 QeQhD+7FNqs4cZ+GEsWMxJ+0LVN0ZXBoYW5lIEUuIFBvdHZpbiA8c3RlcGhhbmVf
 cG90dmluQG5tc3MuY29tPohxBDARAgAxBQJD6jKhKh0gSSBubyBsb25nZXIgd29y
 ayBmb3IgTk1TIENvbW11bmljYXRpb25zLgAKCRCZ05e1MJf+ewE7AJsEexwRGNC9
 uR8JUPjttVJG012/VQCfVg4M1xq2+h3Ys/DecKUVxt0uVsK0KVN0ZXBoYW5lIEUu
 IFBvdHZpbiA8c2Vwb3R2aW5ARnJlZUJTRC5vcmc+iGAEExECACAFAkXQf8MCGwMG
 CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRCZ05e1MJf+ey10AJsHFjVs9WEaui/i
 L9xfITeCmwkd/gCcDlRcmGUW3ov/jmeDzGFrE+MQsqK5Ag0EPVA0zRAIAPZCV7cI
 fwgXcqK61qlC8wXo+VMROU+28W65Szgg2gGnVqMU6Y9AVfPQB8bLQ6mUrfdMZIZJ
 +AyDvWXpF9Sh01D49Vlf3HZSTz09jdvOmeFXklnN/biudE/F/Ha8g8VHMGHOfMlm
 /xX5u/2RXscBqtNbno2gpXI61Brwv0YAWCvl9Ij9WE5J280gtJ3kkQc2azNsOA1F
 HQ98iLMcfFstjvbzySPAQ/ClWxiNjrtVjLhdONM0/XwXV0OjHRhs3jMhLLUq/zzh
 sSlAGBGNfISnCnLWhsQDGcgHKXrKlQzZlp+r0ApQmwJG0wg9ZqRdQZ+cfL2JSyIZ
 Jrqrol7DVekyCzsAAgIH/3fG4jw0qo+iUk3wwS3oLPf5USbiPYOjUZ9jpaII8pYE
 iH7i741cPL8qNpFgshJANd4sz3Iu/hu3xj8aWaZ+jDOM674U69lcv1hl/rrHESIR
 oHIwfjmExLtnFl/2NvQ7uKM2jKoJNERtbi5P7PfLqD2Y8xK1W8cFZmPuD404SBRu
 ubk5BrYXv94VU8rxE34uhOEuAW/I6uv7DhCcr+bVJzJQYCsHxHh79kHsHEW6KAGb
 W34S96t9m8mgl7Kb+KCS7CqmqlmP4/itf/26wfXf5ynhRrWpUuc+jbf6n9afjjzm
 0CWCBS6/f2OALgJX+J5DUG5TggtFVKMMQRf5Bv79F0mITAQYEQIADAUCPVA0zQUb
 DAAAAAAKCRCZ05e1MJf+e4YEAKD8ArLrD9l/sJDn45ZDBjs3PxAEWwCgoy+go5Wt
 0MmiyLIGfKRYTeFnh6A=
 =AbPN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.205. Mark Pulford <markp@FreeBSD.org>

 pub  1024D/182C368F 2000-05-10 Mark Pulford <markp@FreeBSD.org>
      Key fingerprint = 58C9 C9BF C758 D8D4 7022  8EF5 559F 7F7B 182C 368F
 uid                            Mark Pulford <mark@kyne.com.au>
 sub  2048g/380573E8 2000-05-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDkY4OYRBADvB+3Uh68SGrlbrq1MTAN/gnVaj4ztmA15X13bunGYdLKLEJdq
 rd9xFv5OgxGZXJ+sDhbKomJ7yrBGtUwC5kIrKXN+MPbO60yy30+kIVLKjXIv1d+c
 MlWhjFzHra7WGFmvhzYnbOI/zjlOR68iKHnwxhtKFOK9m2O3voURWLEuqwCgzK/S
 j4UGrPUmZf9XOZcKdnN07nMEAJrNh6aoVgK1xwpyO9uTURuCppqAUym/fr4xNQqh
 mngblwIACnV9FpBi1ogtX1iDo4YeQa7t7ALgdwTBbU8upVFYzoVByid9ibNu3OKv
 j9JvL55jUVg0wv6a8bEWjxnNK/zVa/HCzTbAzHob0CSgH9WmEJJEUIqI2/PG2dj+
 ZX3QA/4y6Gon6iya2wk0Zs7mrTj80kxLRMnuPN6geTGVNTfrxat+sA1PVpT2WWSo
 qOrPoyxcpUBbJ3VlFmuYDDgld4lJiGD/2SG5BkD6OoGlRnD5AMgUxQtQFnkloao0
 3md8UDucIJnJRF94pttQtv4lVKaocm4z0Fx6cWC4Ysupj1AG0rQfTWFyayBQdWxm
 b3JkIDxtYXJrQGt5bmUuY29tLmF1PohWBBMRAgAWBQI5GODmBAsKBAMDFQMCAxYC
 AQIXgAAKCRBVn397GCw2jxyVAKCbPwK2rDZx/oahfd4M7XJ4GoF0xQCcDExtL+DK
 wOugUQwfVIExB+HBM3y0IE1hcmsgUHVsZm9yZCA8bWFya3BARnJlZUJTRC5vcmc+
 iFcEExECABcFAjse9k4FCwcKAwQDFQMCAxYCAQIXgAAKCRBVn397GCw2j/OXAJsF
 bdYQGgCs3sXMOdb7pNUi2DL2kgCdFOFSojmWV9mulpzH6ceb/fKgoJC5Ag0EORjh
 UxAIAMrmc2VXtnp/WWhGne6yTirnnWjR/c+rSK8ixbAqTkdYnocY6gtBJliR7LSh
 Cv2RD8TaUc0ZZseHC5vR7VZKXobXUF7QqB1Rgzz/CpsFeEmxxQxZrVKNjwcMloSt
 wmH17yW5tBDg8+6KhFwHj40oV88/49L8utVMEW80gh9O9TlYw5qCAp5QKqkFS52A
 hO54xjTNdEpv/9yXpwQfgUqkAHM8MQhsaxmKCIQXUGt6Lp13aHDAYtMizED0LBjV
 3P3qCoc03P9k2nWwGGU7dukncYNNuLDW9xwkAfV9VQuPYCHEBiPTcRnn99imyvNz
 FNhOElHDttCyKtt1FdZZVAQzXusAAwYH/18mnEMMv4rMZglYb0PRCxaxwQYkxESt
 KyXEclTc0kgyaZnf4Vbdz1rroxxZLIf+16p/MVNFierz/7d5FbJYggCDSsBAaj4r
 Qe2/Os3oCnHyyQY+zF9Ac30CsxzgDxMYxYGJHr6x+s9cloZ3WwBFAO0bMoS/9T/9
 /S7L0d0litecox5et2yEw4AqHdCslGx5mX0os66uh99eeEwW2EQHSLklwUPReb7U
 6m+fNyWxq5w+qTPG+zcXdiW/117T1aONVmg29tSNW8S/syha2PCJ+IoordBus4mU
 kfa49yCuXyZAYDNLbkiqMVTDCqrH2+n1mbUuhRBaSZEvgqVfVLZzRziIRgQYEQIA
 BgUCORjhUwAKCRBVn397GCw2j7T3AJ0ZDGzVqNQBE07ntRKuzQQmou8YhwCgibYR
 ZJyP31xlO+Lt5FgzzeqcQwU=
 =DKp2
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.206. Alejandro Pulver <alepulver@FreeBSD.org>

 pub   1024D/945C3F61 2005-11-13
       Key fingerprint = 085F E8A2 4896 4B19 42A4  4179 895D 3912 945C 3F61
 uid                  Alejandro Pulver (Ale's GPG key pair) <alepulver@FreeBSD.org>
 uid                  Alejandro Pulver (Ale's GPG key pair) <alejandro@varnet.biz>
 sub   2048g/6890C6CA 2005-11-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEN3W2YRBACt8uucrC3Gv8Q2PoAppL0Gdmy+ufJkvp+e3QpNnEvYPU7jivtZ
 MBuMVzadeiE2FMfzAhD90bLOxomZSwIKAc+uiMqqXrciOGMEBFFcHNOgHGI48me3
 fBvzQ4weJjGQrdUVOuQOtCNEmPHHdXOG0Vks+2ZD2czYDmixUkysso1gXwCg5ETt
 H/u9qXgKHxwQN1znhppBHu8D/2/ikj7Y8S5evZauwQ5m1qBMz7GS4FyXH8LZPPC3
 KJW9AHiNSOl4a0g6bH17OTaa6OOljyO0MzbM0UQDJON9JvGLH4q3ML0QQ145yfvQ
 fxLbFMU0B3MSOgFUkpRrWflbsleBp0BH6MCUNzdhDVgyQxyLkyr+mdX6m7N+EiF1
 m882A/9hz6+cmex12xdJnhx/frVL2Ji2deY4JntneNcZS7FBCWCe5d4weYUlLUJa
 sAZuwe/8q5BftMfHXeJzwLc+8zJ2EU6HEX7QdJTezSb7Mjh8Py8T/7TkyjK9LYJ7
 hg8BSx7hQ0xo1KJoDx057GjkE2PGW+ngUyAExGvZHc4Gos3lgLQ8QWxlamFuZHJv
 IFB1bHZlciAoQWxlJ3MgR1BHIGtleSBwYWlyKSA8YWxlamFuZHJvQHZhcm5ldC5i
 aXo+iF4EExECAB4FAkN3W2YCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQiV05
 EpRcP2HiqACfSVe9jQLEj8zM/iMLO3S5aLY6EawAnjIo6VapDopNW66BjRzFKQ+D
 P56HtD1BbGVqYW5kcm8gUHVsdmVyIChBbGUncyBHUEcga2V5IHBhaXIpIDxhbGVw
 dWx2ZXJARnJlZUJTRC5vcmc+iGAEExECACAFAkQy/PwCGwMGCwkIBwMCBBUCCAME
 FgIDAQIeAQIXgAAKCRCJXTkSlFw/YcLPAKDTcYP8Uso5mQls/wFYuOsfruyyXQCa
 A/xZlNpAz+akVuPQZRh4qqHH0nC5Ag0EQ3dbdRAIALqYTavt1809JFOCuiaOZBeC
 /qK5Hvi70rgyIyUJj6q0RrC6FzEOTKGQIaLZSdxhG50lw2KFOCkq0ARfhdrezR0a
 0WQApeSb63hd1lvOz8ocyPkUI1IKc7aD0aQfcplaf3NmQJ6HF0rEzenRUoxy3mro
 R1yddUO/HosbvaeSCRabM1ORqx/G3WFfmX6dHuLltvbModDmOr04QbQ4+gctmplR
 qtk7eRXAFAG+Fo7lkhF0z1KUFQF56kL3rDXaAQzE/Vv6Rgk9vOYGXLJQdngNIXhC
 KVzrkqrZXj4El1gfSR1Dl32AzZtY6acGF2GvMGm2R2udTHsYeyCYXKlBRu6xakMA
 AwUH/iRn8SsuszctzdLqNxideej+9FQ+nHaMBw3Y+N1tlkHeDVmPDNiTotOzYo/V
 aRhW3bAebwEQr5bOs/6bnDrK86b2PUuwC/XtE9nXF9f1QQvApIyKzW6VG/FsQIpd
 +5lNWfRDKmoUZpMeKg9bQCjeFk8tFXsnp6kn8NhEAMCCeDwiWYUl8pcFlNIwPs1M
 brkZ7QCbA8OFAK0YkzUqYmvKPIS2SjpMA+uPJ0674v8kMuh9VhcQj/1RKKR0q2Fm
 sUykWFoGEp1FAVpMkKa2cKS3vYgpobMjVYeMWhsWXAFM9hZT9gI5oKVo7ECUZEBO
 f9dufNDZ1UHAHlAojMMCW53/fGSISQQYEQIACQUCQ3dbdQIbDAAKCRCJXTkSlFw/
 YY8XAKCxojHrj/8OzUI3PFFTS1/afkj3HwCgz5wfMMjyDZG8rUt9ZFbUVN/RPs8=
 =iWC8
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.207. Thomas Quinot <thomas@FreeBSD.org>

 pub  1024D/393D2469 1999-09-23 Thomas Quinot <thomas@cuivre.fr.eu.org>
  Empreinte de la cle = 4737 A0AD E596 6D30 4356  29B8 004D 54B8 393D 2469
 uid                            Thomas Quinot <thomas@debian.org>
 uid                            Thomas Quinot <thomas@FreeBSD.org>
 sub  1024g/8DE13BB2 1999-09-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (FreeBSD)

 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
 =mFN1
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.208. Herve Quiroz <hq@FreeBSD.org>

 pub  1024D/85AC8A80 2004-07-22 Herve Quiroz <hq@FreeBSD.org>
      Key fingerprint = 14F5 BC56 D736 102D 41AF  A07B 1D97 CE6C 85AC 8A80
 uid                            Herve Quiroz <herve.quiroz@esil.univ-mrs.fr>
 sub  1024g/8ECCAFED 2004-07-22

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBED/zxERBADJcZlF+Rzm8wL5lPTTPA1zLwa9u4ZZeVheS9vRGTOC6Sfi2NV9
 feWCM4TR9CVtp2tAcVlrXjBzvhbeNajssCPn94qUh4z8ERJKT1R8n4zlilTcMTSQ
 qZ9t7mIpcpsmpCO1FvfozjfexpUSeLHONKlwHhXXQFdJm6bw3X+kZKUeQwCgut4g
 ilrxtY66n6pzC7jt8GaM1ikD+gLzk88lPNHA8hZurRaYoRD2cD7jOMk0WNuuRZLA
 4LsG+hJUyrPU5vLKou+2iXl6MBvjlYwY3FS5wc1PZ9tRRbMNIq71xCTXmSapks50
 M+/cVYhJhQTVWCFhY+HZLDJpiaeMEkTHqoXo6ePVSMgFDQXADv/hMIPkNheXzmXM
 yhw0BAC75FBSMcRJz8jOaHXSZ7AM9EdMhH4mru1YyfLzwqk0DQS7ToXc8mEpo9SJ
 c/rYfSHf6Egx9856sncCfLvoTScZDwWXvB7kJPOfXK0u8KK1uZBDAqEacmm2oEHd
 Xi0KbfW1zyqIPnLKjgu57OqSGyDBKzC2XuQvWcNk7Sol/Yxp9rQsSGVydmUgUXVp
 cm96IDxoZXJ2ZS5xdWlyb3pAZXNpbC51bml2LW1ycy5mcj6IXgQTEQIAHgUCQP/P
 EQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRAdl85shayKgHKNAJ9/qmkJgaMW
 zOFnMUGcH/fc9ksrZwCbBhYIuo/nnHe9tC53mIlqDoXOz/a0HUhlcnZlIFF1aXJv
 eiA8aHFARnJlZUJTRC5vcmc+iF4EExECAB4FAkEOc8MCGwMGCwkIBwMCAxUCAwMW
 AgECHgECF4AACgkQHZfObIWsioA0SgCdF2eAlmqyihMQVf/T8r/x6x385vIAoIhZ
 hhYxTsWZ4dUA1XmbEfZxMQPvuQENBED/zxMQBAC8M+1oDgxVjVnYlhapOHWNMDlU
 1LolN2B9sUm56K0UaCpnCsrm2Jc/kzr1egmjqxGkV1dIih65W+oPZQOBqq4mAvPI
 SRlE0MrcPCeRyzN4zSwqwu1o0rcCWaacPpNxnG5icluD1RPBDucRPhc8gFMmcfEq
 5pgw3LU58ZIrvB3FLwADBQQAjM9l/u6o0CVwRZ6XshuJQnc7Kt+su/xyZjkYqURp
 sZ8Q9xWgKI4Tv/x+IbgkU5D2vCu6FyfDpBMWsNnSxVJ8FaHCWDKLpDHxB0+RUcme
 HRcpvV+HnLvJtF1V0dRB3XVtD8h6TcGuntFlKHFTKKQk4H5X+fbsUdq4ycNwgNm/
 IfyISQQYEQIACQUCQP/PEwIbDAAKCRAdl85shayKgJrjAJ9S1aS1G9Vpq0kYjZHp
 pFmvrw+CbgCeIgeeepmX9+n+2YEAuWfJlX2KZCs=
 =Snnd
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.209. Doug Rabson <dfr@FreeBSD.org>

 pub   1024D/59F57821 2004-02-07
       Key fingerprint = 9451 C4FE 1A7E 117B B95F  1F8F B123 456E 59F5 7821
 uid                  Doug Rabson <dfr@nlsystems.com>
 sub   1024g/6207AA32 2004-02-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEAlXqcRBADYFElOoUIMntNwwMiVO/7bQQGYgo0HOz2ih10GpP3iyNletvOt
 AbH7AFCB/D6eHO/pOs3khk3ys3xL618e8vxttN7/jC+GWlPb6zReE92A75iP7+ud
 aDCccDlpfsoLfTt8FlZnFuA+d6gJ48Aie5meq1T/IlFV/EJGZ3BfTyKkAwCg545G
 dnVFL0hRjIJkz6Bs5xKqpxUEAIpfe1Ik8aXgwgbW35dZPUtUNDU3OmullZO8z2BU
 HefkZDyL+y5MBO/9aGtjN+TpnhmhWcVKD7rhTsL4w8v719Kq3cGFfNL/E1D6YyCp
 /BU0/Hm9+1MMxPg+nIUkhU4HmtZGoLT71xRSendbZjCr+s31XXxA5YbLruztTRFT
 YcNyA/oDbsyMIcEemO7F2ypq2FPlnjjCISS2Fr0HsBQltedY1Kr+hfOnjYAcMfIQ
 QyojMPl3bV4IFcavIhkiQBPBwGJsj/SNgNhOek9v9c4iuLpXzzbOfO4WiRBkpUY/
 Fzefogi7d+9t/PyPVzd5Rzwx4eqrTYOeMT8TJmGLWkoUwbMe1rQfRG91ZyBSYWJz
 b24gPGRmckBubHN5c3RlbXMuY29tPohbBBMRAgAbBQJAJV6nBgsJCAcDAgMVAgMD
 FgIBAh4BAheAAAoJELEjRW5Z9Xghhw8An02BsS5+rEgyF+f+byeZy5sIrDnJAKDK
 GpoGPWfwZ8leK1MqENlxZZerx7kBDQRAJV6oEAQAvo0FvU58ew8t5XAo27wvwpxV
 pdWoKRTF7lS7ENfhwoiHVW2qsX/TfxyRw50BEtDUlFe7lBqSyskJ/3ejcVXuJ5cm
 vYmxrUEfas57AnBsJqFerQhqB2Pr6BwDUU9kpmJv9vAlt/vdX6lIkXTfvGcrSFWF
 7cDEL++0tD63ULOVQ4sAAwYD/1CUpkXjwmFkg72LddRrvmXtKxk3crql4dYj/wjQ
 JeWeZQT+HKOOIHYFENZAqC8GSfQ621DeFD+TIN9SNeBG8K1LNqxUk71QAwiYSz2R
 Cm3n97esKKD2SB0yJDQJo+MsQ7PKdQPJtCDk34x0JvA4eijiTj9yGdQX8jWi8Sd7
 H0NPiEYEGBECAAYFAkAlXqgACgkQsSNFbln1eCGOuwCeLy66OJdIebn1pU3UXo8O
 xlFnyncAoOYrXS8vPETOhlx/yeBVsgfX1vcL
 =ZXPM
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.210. Lars Balker Rasmussen <lbr@FreeBSD.org>

 pub   1024D/9EF6F27F 2006-04-30
       Key fingerprint = F251 28B7 897C 293E 04F8  71EE 4697 F477 9EF6 F27F
 uid                  Lars Balker Rasmussen <lbr@FreeBSD.org>
 sub   2048g/A8C1CFD4 2006-04-30

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBERUw7QRBADJY85JY9QB4nxv3rXAPnlW59gLmWzuuVNnKBrQsoD5jq6WrDEs
 fqqU2h/JwHB06RZMm/VUSH9MnsrxpGGKbIuJ9bRn9zA4qbgP0kPCMoyb9AmyGEYx
 bIp0N1PeYni64IQH3XGaycloWNhNDDLv6o+c6e+wNnRfUv1qygKhM8vf5wCgyN3/
 KgxrTIo27FnrLDatjxYgHeMEAKtOpeyGk8VhkxXX7t6/sD1HPvDiuYLfM/14VKWB
 ZXaWcOzhytZRFbu/DDG2sMiMFdK8Xu7a1Zsfa683kmpgqHkG0FYcS14Y8yHDU1IM
 GpCRz18v8tZwW4N1npJ/vthpL1B4Hx0SUhGo2HgE85pRHdsDbhp0S6pZW2ff25wZ
 ljhABACI2/zM6SbfibbyRsvJcyW/TOfnEOxHUFfqT3SFYAP79hRBsqCN8v4fSR54
 Tf+jHv7uYVH2lK3zED3sXn2VCgjD3jJNLkeGB6qY/WnWYCB63YwUXk2igOqGijJq
 XEVplNG6ExaQIco5vilOseqWuW5ONJKMM+iEi5TpfV1cPGFpAbQnTGFycyBCYWxr
 ZXIgUmFzbXVzc2VuIDxsYnJARnJlZUJTRC5vcmc+iGAEExECACAFAkRUw7QCGwMG
 CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRBGl/R3nvbyf/xeAJ98F2AdELJxK6Po
 3rTPUqnJK+GZawCfX/0jvc82JWnGwbDcpyp0+xUJ/xe5Ag0ERFTEKxAIAP2AWduS
 +WfuTAqZlD2aIzyvzZPOJ7a8ZDmUtBDxbxuBetLMqC3oFMoZ1/857wV3J7Jvxx7u
 LFbpdYS/0zXTjyKE/NWqeHIuGH9fDOIDuUKT1ZkEh+OzfWQaUihYTib330LwWP1s
 9J8zLCJM1SdQSHVDOG9m+28JXH4ITmK3LkR3zdb/QYEOyFmHfhSqVQpZ/KEBYZ1K
 Kn0gItwqDILuk4v8BvR3ioWF1Ywod6JEMAgJvwypyDlyglvVVvav8UcOYIYfyv2i
 6g2EjIqmCpzaEa3m/RumCWaCLIIeZUqpM+rIfQyKcjgU8J254dFMqFYFIX7iFGnO
 FVhT8tyNXolkKWMAAwYIAPrna0LxXoNVdwCyAW6pcNR9LkWsalQ+cCTS15jnguq5
 V6HmMHsbAIwcXqZn6benX5g6Gx68gIrSS/c3iBMS3jiauIu/bjvhdTMLr0v/jXpp
 7HjdOkgwfdE184hxVzsO0w3UeWFVhmb6sW/Wb9OtdRTj160mHj5UsCycg7Q75R20
 2sBke5vP6o22CCNOZQxM615oFDgotYO/D5I8h/x08IQHlyxzgG2VXFbb/vvibOVs
 iFA246TaRzxYjo4pJ7apRKhXWX9Bm6Tl/X3X41idqbkZXXcdOV8i1jjJ+8hvmUXX
 BTrU4DyOHeRrKD2GRBGMn8WxhPL0DN+w2zBRpRdM7sWISQQYEQIACQUCRFTEKwIb
 DAAKCRBGl/R3nvbyfw7kAKCnpl/jNh5Hx0mkJ6BEDWlmGzuvMACeM95BWxxghmcn
 J6BmOEuZ+TPmHxc=
 =6byw
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.211. Jim Rees <rees@FreeBSD.org>

 pub   512/B623C791 1995/02/21 Jim Rees <rees@umich.edu>
           Key fingerprint =  02 5F 1B 15 B4 6E F1 3E  F1 C5 E0 1D EA CC 17 88

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (OpenBSD)

 mQBNAi9Kb+IAAAECAOaa/3k5Zo+9i/fUPQfU4fzrRFwNifp7ujcxLNFsnMgcWeJZ
 XMd6iGiomTlBSlIHeNKa+JMGPmBTRrL7I7Yjx5EABRG0GUppbSBSZWVzIDxyZWVz
 QHVtaWNoLmVkdT6JAFUDBRBDA7AqRrL7I7Yjx5EBAQSTAf0WL+tTm+n0NFF2xQUO
 ZfxpuqnERjNQY5KaWQuC6qk4UOVCwoBNA24ZxY7TifvhsNErMHMc6HTKGvzhyGyV
 q/pGiQEVAwUQOhrmBjZ8FqYKL4flAQGcEwgAwPj2xt3ITbeUWf6HiqA1u6FiIy+w
 T+GZC2Mit4UQNdjKuNJad7t56Wqem57IhOGDWGYZJoZki65y9jD0BB7MixjuQhhW
 CV/vjdiX+pDxa0HG/75CNS7PVribIuhpbTFR2tG/EZh0sl8yMUpYho81yUDMeHVN
 UV8YqerlqntgqVra2cfPanScFve9YYXVgEbM2wQyWnEG6q0wPL+upmoZ8ppozHfr
 dVYiOonwl6QrgtzavI3tHTHtxDajMJpnQLC0rWHQRmY0Xd9xs+YUpaoUcOQFUH8L
 PEp7d1OQDd6KJOV+mQ/Bf7tZwl7as3cl/16nCMZoDJVGNGCuug4vEeV36IkAlQIF
 EDMEqXeGvtRXff+FMwEBX3sD/1Uf0sqHFBfFtuphKG5ZK9cz12NRANLpVf0welRX
 Y/Yp9AIL9xGGiEFvlma1TN8IA50Gxgxq7cEiHDWT2Zh4Hps0VWmuH9vGwc84D6PW
 JXuuPV4sdfCZnJUj+g13P7ypSlPSS8WIDVET5vG+K5m8jOQJ0NPsWGaZMGknXfLT
 ZDWDiQCVAwUQL8yKYkDqOE5/AdFlAQEmFgP/VwyNP37Vaunu7DdvBblDMpfMStds
 9GY0Jmhe7q1EkkGjwSJHtkn31yPwdb/93d25puCU6rZ1+qw5jKMY9qa8RvCOnnNF
 vN0fOqGso+We3q2rGamjBYtVnihYBni7jCBTJ1lvHixWM5XjyGkIQsRBoh3qNUNA
 I3LeH1ArE3IHzDSJAJUDBRAvxTnlxS1HbQ2/kG0BAeaxA/wPKsCrDl3qJsxrLPUP
 tMfXhGBeOZWPMx1rulCknHpTgfjPpA7soh7K9zi9LAatR08sotD7oAFWslP/OR/F
 DsaLWztFjSmu1laZyU5E7yCIsHgILX0aIsazYW0UoYqCm87FDzHP1kjXs7c6mgOJ
 g2YIY6o3UH4azIigo37B52J6Ng==
 =O0QA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.212. Benedict Reuschling <bcr@FreeBSD.org>

 pub   1024D/4A819348 2009-05-24
       Key fingerprint = 2D8C BDF9 30FA 75A5 A0DF  D724 4D26 502E 4A81 9348
 uid                  Benedict Reuschling <bcr@FreeBSD.org>
 sub   2048g/8DA16EDD 2009-05-24

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEoZOPQRBADIhhxLB7VS78ooK4j9HuEjamF7QZTXvti7rtJdnJRZtpHW2Tzo
 GWbmlyYBQoGTk8DVuUoQCO6yy0PNe9CVUDxyXz5dUL8/fSfAOhwZowXF7X5mSP5I
 2G70oN9PgdMhxazIPoUlRFAtuDEZl8udtCOVyhiLylXnHj3LJS6XG2oetwCg33hC
 UWM/ZW2XZUt7+LQfdbTvgycD/AqrDrqazX86fI5MjeRuXB75i6OCUGorcWH2T8i+
 P6r3+1A1zjxhXcYMsCI4CDBHo2Z9oq2LN7ullvutfQA3sFR2KxuJmOa7GqHFI7Zl
 PYiRD4Zkuma2bAxIzer65IwQaaC58MCoBxTUqyKys4cv0Lalj6bh+yVArG0v8is2
 5E8aBAC4GptIHT6kfx1515W/1aBiPo+2Qu3227FLyNypKu3x/EwmFu3igbir6EOf
 uQLbjWclnJv2IXZhxiS08EoD6sFFrgDYAcXa3qPpIMjYEEmH5RziISGDwqCazgFY
 63paO2B8aHJB1W+A7jz7PYMsLNXt0JhwG4hLgK8fWT0NKG2TSLQlQmVuZWRpY3Qg
 UmV1c2NobGluZyA8YmNyQEZyZWVCU0Qub3JnPohgBBMRAgAgBQJKGTj0AhsjBgsJ
 CAcDAgQVAggDBBYCAwECHgECF4AACgkQTSZQLkqBk0hwvACeKQW/gMO7z6hv57J2
 4Ed012vx6mIAoL2JyQyqhtwjM3QJ90ZCvB073uTmuQINBEoZOPQQCACi/zTUlqiY
 dA+XNPPH93JSArILJcRIamP8n+Ans6akcluVONe5qRG1txgpclh9/v0Cv3qkr3hM
 Whm3Hh0zCtlrpZbd3oS1qdejpnCJxWTyISI/n6LXyoZ9YHI+IdYkcQowxxFDw+0J
 jIF/ROzHRyAmHqN0ORPyN0a+Xu4st+lgWBCj84op2xzzId+d4mTTyjvlAzbBaijI
 xMdbca3R5V4ISFzGiOHtEWQYb0lUz/DZVXYC22JnQdqtOJy/vZ9IMsSdi0tWsugo
 DGRtfdLAsg6PHIQZgTwbfehQmdSsLAAy43uvs1ywT7Nh0ffCmQawvvOhUOlIrYXU
 jxnIxQkncTqDAAMFB/91mznM5M2NWRhEIG5p0SKJaq4rrXUngMA0Tl4dhrJhlkol
 TfTTlS2u8jSjEK+39Lbs8uWZDXg8PHK2i8LOmgmuf1JfRV0clJMa01D/ZHIBRVB/
 TrJ3ia9rM7EG+2GBFzjkuMEpKBFrW/YLtCJZUdYfyQRjtLRCa3NEfQolvUvA3V+W
 ehixnxIpUJrz3JjLGcDVJx0tkgtFV8f1D6O9WEUc9jLzAM7ehrqbA1QQFlnwDcZo
 T1m0+Js3cIOfiLMqHB6iZi0tBTj5A2h5C/lWVCdw0HYjZkRKc2uG7nFfv++9mqS4
 HyiCcDiyStR01S/CuV5TCLZ17tW1Ihi53EGO8K3hiEkEGBECAAkFAkoZOPQCGwwA
 CgkQTSZQLkqBk0jJ8ACcDgRWhxql58ou07O1MZZbCBzDnkwAoI0ngzxuGBDgIIyx
 vPpqAjKmWnR2
 =WFIY
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.213. Tom Rhodes <trhodes@FreeBSD.org>

 pub   1024D/FB7D88E1 2008-05-07
       Key fingerprint = 8279 3100 2DF2 F00E 7FDD  AC2C 5776 23AB FB7D 88E1
 uid                  Tom Rhodes (trhodes) <trhodes@FreeBSD.org>
 sub   4096g/7B0CD79F 2008-05-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v2.0.9 (FreeBSD)

 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
 =S+Kg
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.214. Benno Rice <benno@FreeBSD.org>

 pub  1024D/87C59909 2002-01-16 Benno Rice <benno@FreeBSD.org>
      Key fingerprint = CE27 DADA 08E3 FAA3 88F1  5B31 5E34 705A 87C5 9909
 uid                            Benno Rice <benno@jeamland.net>
 sub  1024g/4F7C2BAD 2002-01-16 [expires: 2007-01-15]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (FreeBSD)

 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
 YbCuiDguaEN052KDrSoDvk4S
 =L0S4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.215. Beech Rintoul <beech@FreeBSD.org>

 pub   1024D/790DB7C7 2009-01-23
       Key fingerprint = 3AFC 32D4 093B 63F1 28A8  1A18 B378 28D2 790D B7C7
 uid                  Beech Rintoul <beech@FreeBSD.org>
 sub   2048g/9F3B61BF 2009-01-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEl5FK8RBACFkDT67YK9/ruzIsOMdo903UH3E7wlWRyI0A1KFk6BuBNhDVNb
 QswVV7ZAn7sWCLST3ZNA0c36DAVanrU6Ur1qaX0+4J3+P0RkTsTp/x5iusOWWA8y
 ZPmnZG5QrWeokYCl0WFUI/0n24a/ALQ7mYhASHgY/JqOsqKuHyhc7TYFKwCgh9W8
 lFUjrOmbBxSy8A+gtxA1QtsD/15grmcjTeS6poBpcLgvF5MyVBS9DpgrL1IU/B1v
 X1punyUBO02h1qh+lS3gLoMsY/IxiC23cgItVkOS6xMgrasWlVr6poPovVdzyV0V
 nXkEiZsYV/DafX1WfdBO9Lierb9H057ToWRElVg1HNglvqsOxYNbuMcPQqMvatXt
 M9BzA/94Y4jfIJ1kdX1sORutRNML0YxJvJ5dUV1ZrrGTTEUyPOvvJKo59VYXc8b/
 6u/0GQbDkO/o8n0ZmYaxU++IurtmmdlTTE7Y58saXOUC7TYrbJVQqbWbm0ovRBuU
 57/m0MsNCc3OVOkEhj7YciE0UkIy+wgHdIhSMVvC5s2bIzoMErQhQmVlY2ggUmlu
 dG91bCA8YmVlY2hARnJlZUJTRC5vcmc+iGAEExECACAFAkl5FK8CGwMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRCzeCjSeQ23x5i8AJ9Git9M9ajDfaMXQ1hxzfyn
 2GMzpgCeMgVJsGfb9vRWnKxjyugMKyL/PQ25Ag0ESXkUrxAIALUY+/ysAMjyHKFB
 s2Ye0zgPI40yWi0bSXVGhvY8phRo2b9cHtuBRy0wFnYjF7I1Ep4CIjUnNCT0C7S/
 bZQ07HnrCK+tgLDCIZawikDm7MqvJe/vacMKT3k+jYaN5/iK8IN9qwwWQSsylX5F
 O2HoifAA1lBg7iKnCLgwMHTkL6wx2YjLRingTh6dOaHPOnEXPmA57asMVQ1QIF4H
 trHkM1m06yIxtLt5ho8G7DQ/EfOvXEEIYFtP91gTM0yJwA8i5jjxNVMDuemFSxA1
 FtTuRidGIvA+zXSgNbpFhtBYZFYqD3rN5HALh0E3RcGhwTiHld+hYHku72BKdfVR
 vr6+hFcAAwUIAKlWnCWT2byzkMncxI8VyIZuu5SkOreTMRx88EKA5PbDaJkiN2+k
 m/6iKCHSneUNMd9LPuzUhMPgP4fBi84ib8Ume6ZhSd9d+lp28B84fPg2pIZG/gA3
 vRvMN3sxCVa+Qb3NpiKpVt0vfDLG+lRcEJWHMed109ym8kLF099Hc9Odi+9EUflt
 qYEP9/wLJcc+vvd/MytB7n25ykQeQmOoKLs1NZHnDuowzobn7tMxxpW89pZWT1zd
 atMXk6E7ja7G2+T/ugcto8fhqTAztg3+JKaZ3aHyziD5tMREMvzwnSRe4Pb7urja
 7lkeQ7PFCnz6BlU2uNFKvNrGGOgxNDAAnG6ISQQYEQIACQUCSXkUrwIbDAAKCRCz
 eCjSeQ23x4H5AJ9zODtX+BYdDUhH5yl0IxFPFnTdtgCcDXbA5aDUILIgIps1qEN+
 fQOwId4=
 =FPRG
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.216. Matteo Riondato <matteo@FreeBSD.org>

 pub   1024D/1EC56BEC 2003-01-05 [expires: 2009-09-07]
       Key fingerprint = F0F3 1B43 035D 65B1 08E9  4D66 D8CA 78A5 1EC5 6BEC
 uid                  Matteo Riondato (Rionda) <matteo@FreeBSD.ORG>
 uid                  Matteo Riondato (Rionda) <rionda@riondabsd.net>
 uid                  Matteo Riondato (Rionda) <rionda@gufi.org>
 uid                  Matteo Riondato (Rionda) <matteo@riondato.com>
 uid                  Matteo Riondato (Rionda) <rionda@riondato.com>
 uid                  Matteo Riondato (Rionda) <rionda@FreeSBIE.ORG>
 uid                  Matteo Riondato (Rionda) <rionda@autistici.org>
 sub   2048g/87C44A55 2008-09-23 [expires: 2009-09-23]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD4YMjkRBADOT7Ua8/jbuJnPDzHt/HQu07sfRHZbf+WmX72K58Tpjz3kswox
 +3LpnqZf2B0s8PZzLkeFBH0fdSybFT27CnQ6YrMhYM4rM+VyN035xmnvAWmkiYp/
 iyTYWFS6hHRy0hGZYDcSUHou7xfoHCF7bl7hsONArYadf9yS9v/NYlfrewCg3NDN
 X9gtr5/3LC52PYscMIwG4F8EAMJe84ycNFvlcuwiO1BPESKrYjD++8pidYGk66iA
 FjOMUBtcbgQ3QBu9/lOM8S6DHa1Cs12nvbibZJtURy7IJxCEv0MepJBWPNimoHz0
 hxV3ZF/BIulRre5RZ+pFpeYCKXVge3iQ/okjuKHod/VnHrxEXjWw0LQYWNyQHUZt
 eH8ZBACFEieAhOsM7XC4MJJqxuwnFLBLmSPwaJZs5CfRxmnRp+up1Ez/aN4k7b/r
 rl0dpCLOcQ+sI9rikJm3Rkkdlo23UQb9kq1a9FDEUjkfz/sR9RIlxUbaOaGBEJaB
 OItFpjXMKKeYqKVbvP7PBmJz4jIim3igre8FxwGbmk3YDW1w97QtTWF0dGVvIFJp
 b25kYXRvIChSaW9uZGEpIDxtYXR0ZW9ARnJlZUJTRC5PUkc+iGcEExECACcCGwMG
 CwkIBwMCAxUCAwMWAgECHgECF4ACGQEFAkjD9ZQFCQyM9tsACgkQ2Mp4pR7Fa+yZ
 qACgzwsIoKTfHGpSUKAGKqbdqvnQcDQAoKjMIdxEitUR80oJxwcRfr7LF0HFiQJI
 BBABAgAyBQJFVbmJKxpodHRwOi8vd3d3LnBhZXBzLmN4L2dwZy9zaWduaW5nLXBv
 bGljeS5hc2MACgkQJknmKMXTTQWxxxAAgHEDKMojm0Ri4FjGuXcIuF4lcIRzm9Y8
 fRfQA9whGfcrFbcJ6D3JzTqk70lc1bs4aE1ApBGgLKGk67m5RzK0yFoNw2iqgUma
 iOSBwsfzqLj40cti2b9MFcQ+SE5ncPAOhQoSIb29ELMi++71vuI+1eiKNSBvKbht
 kEHSlvrCufGujefZbfWwn+0NCMlCAuABJcR+WXLjjzaKo1FDdue5MNuko6s3YovE
 TLjsGfVQZbYdvVD8cRpPlRfd6SR8rWN0EhdBIz/mqsathtlxdDtm4One1Z2qXRsg
 eB/orr5sG+eiBXpnQjQIZ8CnBF+j7uoxPA5ewu9iiIytD0LTbxxqtHZkbZ/4ZDXv
 gIPTKXE4EOSSBdcp33oTxGiLidobgun6i1at0H4dZX0n+iqSkAe+emEUVsXv+xh2
 nu4e34Llke30az7I7UZFZ5e5DPgiv/iN5tAfMMosBnuaICScnZKCyT3xhdHTyj5P
 YAtpq/NJYqoAbvu81bddTqRCZN5gIfKfrYWreYWEDawQVGxET7/LnJMDAgXlRj+i
 qSsjP9tKlrr1LowfNdM8JEJvdsLVRlTloyAG6UzyiCpEycPhSy/pyzfbIGz/FpFs
 rvCzkUk+FQvXt9u0zmzmoOC/HFkqk3SNIOMkKpg28KCvbsyMdnv953L7EVLqcQDX
 zWxZ5UeKnbWIZwQTEQIAJwIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAIZAQUCRvJK
 ngUJCrtL5QAKCRDYynilHsVr7Bk8AJ969+tUr6UaLYcXsQWZeIdJ6hDzcQCeN/PG
 rc5MRki7XZHp1LwoZscZGNK0L01hdHRlbyBSaW9uZGF0byAoUmlvbmRhKSA8cmlv
 bmRhQHJpb25kYWJzZC5uZXQ+iGQEExECACQCGwMGCwkIBwMCAxUCAwMWAgECHgEC
 F4AFAkjD9ZQFCQyM9tsACgkQ2Mp4pR7Fa+x3nACfS8MclqZjF3c//jtm24brLPMl
 w7EAoMtB1wMgWSFg0nJpHW0BMENnoIVTiF4EExECAB4FAj+S3TsCGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQ2Mp4pR7Fa+yRagCdHcaj5oQFCv83U4TS4nVKibpk
 ocQAoMBsgZpGzD6ri2FV0s2WykTXD8HciEwEExECAAwFAkJveugFgwDghfcACgkQ
 ymi72IiShytpjgCg22Fo57NbaMAtspNIK/jmmsqPpFIAoO71KJGE9W/PceZcXKOK
 yjyFeIJhiF4EExECAB4CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkORjCMACgkQ
 2Mp4pR7Fa+yXLwCgwKpb012gu08aAQGGdX0IIr7zrPcAnAk9J6YWMDy7bmXfnAu7
 iyupjvaziGQEExECACQCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAj+T9xEFCQNc
 +FgACgkQ2Mp4pR7Fa+zWVwCdG70X7pGA1SCP2T55DoQko5ns1nMAn1N8hp1preGr
 0EgP6wXReBy5KkixiGQEExECACQCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkF1
 ZOIFCQU3zqYACgkQ2Mp4pR7Fa+znIgCgyYpGXQhqvi18tiODcdtXVo8UUekAoNPX
 vmATDr3UPXEjiyvZSyqjV3R7iQJIBBABAgAyBQJFVbmHKxpodHRwOi8vd3d3LnBh
 ZXBzLmN4L2dwZy9zaWduaW5nLXBvbGljeS5hc2MACgkQJknmKMXTTQX7SQ//eSi3
 Ktcgnm1Spn+gICP1S26EEovi39JFCC0JXp2U/6IGAn+/bHMMVbu3CkWo0CdfPnpm
 hA7XKj2SQ0AJ6ndd7zOEPJBVOTsMTeoOEGj5yE35POrD8ZT6SXTLKPPnWMjTfB25
 D0+/tSOCONwRlZP1FZrSu95tvWH1b6zYlhcydje7+F1pmdrwEFrqFhHF8GIUBSI+
 lIAOj1GlWvT/QII9XExwcMa9a1Ay/MLVaNoPIXLBj9nFf1FL39ekU0ou8uo90rsb
 gJEPMdmnUU4Rj7BkSHFiFaDOsUjNMUhiLk6xFs85JOedeo0DM0RDV7gisf7utVAT
 l5m8mJ8ZTU+FoLiGYCM+yY93jph+Dez0s329eQ3uxlQaZzZ6/thynflkVQ0JkqLu
 Xo2weyGF3fEIl72tf0oqcTsnQE1h2zC8AwQbsj5kdDNjYwf2MfBZ6jHxe8Y6a6Wl
 XMCjcgNsfT7gB/YEnAVYt6hpXHrMVuEeUFyLvEaoc+gRXd0ePMTK8Zc4T+Y3/rs4
 DnJHtNW/+Rt7wIpXULF1ISRbtKdxiVINQD6+y5SamZPYJwysbmScbHwUu39Y8zQa
 00PxF/pw+XveyeRrrCnijRPfYJlDHQSvNUu+texd1aix0mK3T92LAcI26uFBGVJv
 fZ5gJTLB53gbtgktN+t3kcTmnvGjVJ37+DGlpTKIZAQTEQIAJAIbAwYLCQgHAwID
 FQIDAxYCAQIeAQIXgAUCRvJKowUJCrtL5QAKCRDYynilHsVr7AxgAJsEtBmWBS1v
 3eHseHOIEqP41sGg8gCgwkC9IYVV7/YHVzJfGlKTH1rre960Kk1hdHRlbyBSaW9u
 ZGF0byAoUmlvbmRhKSA8cmlvbmRhQGd1Zmkub3JnPohkBBMRAgAkAhsDBgsJCAcD
 AgMVAgMDFgIBAh4BAheABQJIw/WUBQkMjPbbAAoJENjKeKUexWvsAFMAoJJ+sFZ9
 LVo9daku1VnN5rzH4A4HAJ92iWh2Ada+1roEKvJcEr4ro80RroheBBMRAgAeBQI/
 kq+KAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJENjKeKUexWvsWr8AoMQFD746
 2JRnnXg2caQ7G3EP9hgyAKCayAdgWjzEbAJbcOYNfudR4V6uz4hMBBMRAgAMBQJC
 b3roBYMA4IX3AAoJEMpou9iIkocrhV8AoN4CvGLukd5oJNCfHT6uZvXqmAKmAJwN
 FLS2ESp/hZpC5DuB6xHWWLo+jYheBBMRAgAeAhsDBgsJCAcDAgMVAgMDFgIBAh4B
 AheABQJDkYwnAAoJENjKeKUexWvsqsUAoMJOzTLaBjIE0KQHhbJp8Z0K7DwVAJ0W
 XsmiuIyyiDMwgqVrp3nb82vD3IhkBBMRAgAkAhsDBgsJCAcDAgMVAgMDFgIBAh4B
 AheABQI/k/cUBQkDXPhYAAoJENjKeKUexWvsfiIAoJyiBsoQQTfYRfDg9gifeiRX
 5jHwAKDBH+Ye+8EntSynbNDcGXd3MOMuq4hkBBMRAgAkAhsDBgsJCAcDAgMVAgMD
 FgIBAh4BAheABQJBdWTiBQkFN86mAAoJENjKeKUexWvs4VQAniVyUG2RohC5hyns
 pp6EPOi9etLwAJsEuoEu09YwMJOtyKy/l3V9/h83iIkCSAQQAQIAMgUCRVW5iCsa
 aHR0cDovL3d3dy5wYWVwcy5jeC9ncGcvc2lnbmluZy1wb2xpY3kuYXNjAAoJECZJ
 5ijF000Fk8IP/R51/Pq+TOcmQCHuNnw3gA5RykFkgDli60uaf6WVCob/acJ20lgE
 XgC1to2JdgNqDOrmZUcm5AErwoPZgB0rS3WOpJeS1Sl/IbOWZpH+G1hwlgOjLK19
 wwCvU2HH9RdvtsKFIExnbVgxUI/79VJyan0ufua8jtd7HRnpX+WDTIZZIYQdrKsK
 YsP3Q5vJigvuLHZ6Kb84uF2GPcJYaHuryxdhiBliQJ7gUtYgs9Dpel9lDthqv/+T
 H/+xhbJ97+yu59UK6p/3O+/ozgMnfZj6ckUT1keFJGVTwRK6jYUjBvlUH9RL6Q10
 Iig02K2IndKbyGeX/en7e80sJ5vrtOkpbWPFI5tZloAEpIIKvvyVakgAPTzA9Yat
 DNVexFu/23zGEQZ/bvD+WHn4OjEMaFmAz0EmjnSRxEFVVUfm3zvCest+Qew4kxDl
 1cG8EsQ7vbiZQ4i1rSWBu4lA/0wIT6O6WrCeGXAHIhLY+iRDWuSo4LyySpkRj2WG
 ISf772dRKEPWc9AwzXTUOZ/ZzlefpdLs7QIPhVew9J4i6vsGnJKIxaWfSb/0D4Qy
 xTbs+pORmZn1dTqYkxYTm9B6/Bz3SsZX4DrOIJEp/yHKN+qIH73/7cHL9H8PcX6q
 /q5n6GyIPAbz3aPKr/ecY5Q0DP7gGItSTAzpjfls1dps/DTq/YvHBsrliGQEExEC
 ACQCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkbySqMFCQq7S+UACgkQ2Mp4pR7F
 a+zn0gCfS1k8aWhe8UsyFAfFupiFVcmRU/MAnRbz2XXaBMaUH4ydB4LVVyFAGBOq
 tC5NYXR0ZW8gUmlvbmRhdG8gKFJpb25kYSkgPG1hdHRlb0ByaW9uZGF0by5jb20+
 iF8EExECAB8ECwcDAgMVAgMDFgIBAh4BAheABQJIw/WUBQkMjPbbAAoJENjKeKUe
 xWvsITQAniOhCzzuckh3gtiX7v/CFONc9l2qAJ4/TKa95fVFsC7O/WhlPMGmIF6O
 6YhGBBMRAgAGBQI/OBUqAAoJECGdtTlfS2RLHnYAnjevlZGhqb0TGiwacsVa0kP8
 fTXFAKDFtE8lcNjmPoFUsY3Jd29SYZmBXohGBBMRAgAGBQI/OMYJAAoJEBcHKSX3
 WQ6BYkIAnRyaV9rOSacwSmiJqsG2JogEc+5qAJ45G4hGEZ+M3PF50B9TdlNChe1/
 cohGBBARAgAGBQI/OVROAAoJEMB3A9Pg6wbU6x4AoLEH+a5o3f8VgazKssxOo/dW
 ANQsAJ9Mb7pvWLO80U9+Genk4Ppf1Q0NO4hZBBMRAgAZBQI+GDI5BAsHAwIDFQID
 AxYCAQIeAQIXgAAKCRDYynilHsVr7F/zAKC13N4TYIfRaDrde9bVstyFmuj1fwCg
 2rnQElfuX50qo40uUHjyc9VW+giITAQTEQIADAUCQm966AWDAOCF9wAKCRDKaLvY
 iJKHK3whAKDu+rK7djTGSL4PvnyM4OuyuE3J9wCgsvrckqSARKEYK9t2vrw3YDFt
 dUmIWQQTEQIAGQQLBwMCAxUCAwMWAgECHgECF4AFAkORjCgACgkQ2Mp4pR7Fa+zC
 UgCg14T+K5reEK2My/D8FyAeAl+WUewAoMv8qnGVp7UWwNuez3F1zx+mW6QMiF8E
 ExECAB8ECwcDAgMVAgMDFgIBAh4BAheABQI/k/cUBQkDXPhYAAoJENjKeKUexWvs
 zIEAn1IOi7barh7DDNvdtZ5nQ6V31XmDAJ9Lh/KNe/dgiX6GnqA5ti0fEwB8N4hf
 BBMRAgAfBAsHAwIDFQIDAxYCAQIeAQIXgAUCQXVk4gUJBTfOpgAKCRDYynilHsVr
 7IKJAKDU1KY9xWJZmmoLaHnOjNcMt7OsewCfVaLCIj5OI51InSN6rube6W5gmtWJ
 AkgEEAECADIFAkVVuYgrGmh0dHA6Ly93d3cucGFlcHMuY3gvZ3BnL3NpZ25pbmct
 cG9saWN5LmFzYwAKCRAmSeYoxdNNBcf/D/9erGdyo3vlqA2jUIOQRPQMNCS/71J+
 2CFBSmJ2I9WmeFDR/aMFSVrd8AQ8YmgaeC0qA9Ql0IYaT0dTfd0FSb/vwFlPsd0J
 xBSTAtnNVxwFm70WT/Ny11MDqveZwbG2/k/JKICDQ9bgfe5CVwTybrtl4scvTPDS
 KIPUG73BDMurgRsUF4zHXbzo9ltEO/b2++sq3Y0f+V1IMMMGGWMU1NF1SbkbQyx4
 T7jGJUPbDrMF7lmdZKRW89EIxYQ3jLPVB9A5zksSrc7oWSQ02NUjLffju4wi2nbp
 4SVYmkaL1rDP03j3QrCVHA76wtNg3A9Z7pwPmau17dcvFxmrc8VTiiaIwz0ssClK
 Mcf19qeWNDvnD8Yx/4xUL5QpJe0QpRzY0kI8IWhiLqZAB0NveemmIZT3OoeDBXDM
 Xa8d+WD7N8O8LZkjWqKDAP6aMAlZ+Vc6Rr6xkdvQlZejMWqNIgQTnfi+DbEGG03t
 CFTiH+ymssuph1yz0EaP3wwwmIqLO6onFmemVfStgfww7jRifnpeD3jWKicgL7PY
 6k39Lsn1WTBHXrCM3nIfHGn6toKdoPMUsf7tCKcjEcdpzWih1lEbBwRK9GExXeKw
 3FtEToJJtyCEWVIaWPR4js86/NwQOhWpIZqYLaGMy3OtNdTYfvDSKQmoOhfU9Ma1
 MdgFreifHUYrO4hfBBMRAgAfBAsHAwIDFQIDAxYCAQIeAQIXgAUCRvJKowUJCrtL
 5QAKCRDYynilHsVr7Ct0AKDGZfOIDsaFhDfcgsQyosFn8MGztgCcCSCU7JryVjKj
 fDuu8pFy1BNwema0Lk1hdHRlbyBSaW9uZGF0byAoUmlvbmRhKSA8cmlvbmRhQHJp
 b25kYXRvLmNvbT6IZAQTEQIAJAIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCSMP1
 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
 LlxcQeUB
 =cJab
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.217. Ollivier Robert <roberto@FreeBSD.org>

 pub   1024D/7DCAE9D3 1997-08-21
       Key fingerprint = 2945 61E7 D4E5 1D32 C100  DBEC A04F FB1B 7DCA E9D3
 uid                  Ollivier Robert <roberto@keltia.freenix.fr>
 uid                  Ollivier Robert <roberto@FreeBSD.org>
 sub   2048g/C267084D 1997-08-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.2 (FreeBSD)

 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
 izq3ic4=
 =mgE0
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.218. Craig Rodrigues <rodrigc@FreeBSD.org>

 pub   1024D/3998479D 2005-05-20
       Key fingerprint = F01F EBE6 F5C8 6DC2 954F  098F D20A 8A2A 3998 479D
 uid                  Craig Rodrigues <rodrigc@freebsd.org>
 uid                  Craig Rodrigues <rodrigc@crodrigues.org>
 sub   2048g/AA77E09B 2005-05-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEKOK8MRBADOO9VIucM2dGygVera0+Hcu9ud2f3MrcfVgsB7/awfE/MgIYtC
 CFtCJrD1Ml+p/spmiuzJNDSamT8NHywsG5R+GO0EC76+mfL3hwXvGUJoQV+NcDu6
 99s6OUWTimi5OPOURzG7lXYpO0wVysx3R5Nzg7tIC06fmXNXuj02JvCm+wCgqkPx
 nZgCFoqq2mHoiLL59CUExbED/iOnglDOuZsncR9xRZJfbSLUJf5z9NE413FXAx3f
 THY7+akGk8kWChrOeyIvLvSGmkHHFQXgh1umG4fFd7TCJ0Sexh44s5q0ROjEK4ge
 nwAsS0iheMB6JqW8ibBfawr2iwu3ZAkqfelU+NSbHm4sEeHxEGyJtZKA7rOPGDm8
 YOBZA/45n2E/Z6hv6D4Bm1xEDGNICK28uTqzXh0wyCJJtVOortd4CmKZZrZJj7am
 3aDdtFUZ1yZc5FW2E0xLa7Oz8HUj7eMT7Ljfd0c5yNna7WcNjqWNAz6WMhHByRZv
 nOPiUMQNvCbyrKw9OsFKNNbrSnjQcc/5yy0SiIMVm4rydXzK0bQoQ3JhaWcgUm9k
 cmlndWVzIDxyb2RyaWdjQGNyb2RyaWd1ZXMub3JnPoheBBMRAgAeBQJCjivDAhsD
 BgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJENIKiio5mEedzB0AoIXeENkxV41KlJMV
 z0ozHJ/q1ESdAKCimzfOMwz7Qyauo4VHs4rk7NEPerQlQ3JhaWcgUm9kcmlndWVz
 IDxyb2RyaWdjQGZyZWVic2Qub3JnPoheBBMRAgAeBQJCjjVzAhsDBgsJCAcDAgMV
 AgMDFgIBAh4BAheAAAoJENIKiio5mEedT6wAn0IjcGqARj8Qe+JZThbQCQbH0ERp
 AJ4w1pYLdsKphwaEB8GakvaeRsrBTLkCDQRCjivkEAgAo5DHUcjEBK54Vo2S403y
 InnfqiiUDXqb8Oof18CICB6JgA3NjP5g9BE5+7dI8relt4Q0ILg2IJvISIlfmyDl
 +GuegA3dMo1IrghmtI5+IWN2mm1iNy96jpJ1TQhvHTFDlETdV/BE57CcO1ZnKHiW
 m9G3GjnMrunVyLMEY+6TJ6ykqP2VzYBsc847iCv477LdYFe1+vedZb8Bk9xpeeZJ
 tuT3O+JiR+B/SHISpycxyM3ei+C7eRRC8wV+khOw/8xirJ1Wzyg3GrolQPtJsTNG
 mqg6DXIYPY5wbF3SUBT5ZA7pLPxXhUWNewU/8mXisuM0hp7nz9VLQ4JfbMuvGF2j
 wwADBQf/SCUw06q5l8qdJ9G3WFfPOE449mq5uXHGlfeamCkjx9/SzI/8yldrxwdF
 5XiAZWRpeQoksUbPI+tmxWqi8NDxt+KLDNhSCg0+C8KRFBY0ZI4CDmUg+MX9Mix2
 ir/RK6eoEYNXdt32raX7MzQP87LTL+cnxJzbQ702HYpVqrJUOgSRwQ3posbp7hwV
 djfiE38r9Hd/E4ZxxAIT3GafZ12KzxQZ8dSxoa/2tP8VfAfe9jt/XX4F0QD2yIGV
 2wJMd/CZWTZgDfNW1anGR+9AyV9dT+8cYi36fkgTQb5rN25rJKzHd9RA/EGJXSU4
 l1hNG4gBpYjF5gD/UTuSgGI6XInycYhJBBgRAgAJBQJCjivkAhsMAAoJENIKiio5
 mEedTS8AoIa+gNX84jClqNvPR5lMlQGKeB4HAKCaEmhTA9kGSY5JW3hsfDiwfr0a
 PA==
 =hHZm
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.219. Guido van Rooij <guido@FreeBSD.org>

 pub  1024R/599F323D 1996-05-18 Guido van Rooij <guido@gvr.org>
      Key fingerprint = 16 79 09 F3 C0 E4 28 A7  32 62 FA F6 60 31 C0 ED
 uid                            Guido van Rooij <guido@gvr.win.tue.nl>

 pub  1024D/A95102C1 2000-10-25 Guido van Rooij <guido@madison-gurkha.nl>
      Key fingerprint = 5B3E 51B7 0E7A D170 0574  1E51 2471 117F A951 02C1
 uid                            Guido van Rooij <guido@madison-gurkha.com>
 sub  1024g/A5F20553 2000-10-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 jwCgnb++jBLoAgqu7BiWMBVe9sCLfMY=
 =qL8T
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.220. Niklas Saers <niklas@FreeBSD.org>

 pub  1024D/C822A476 2004-03-09 Niklas Saers <niklas@saers.com>
      Key fingerprint = C41E F734 AF0E 3D21 7499  9EB1 9A31 2E7E C822 A476
 sub  1024g/81E2FF36 2004-03-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEBNxyoRBAC22NnMqcH1hXXkz+jC+U2QGzOJdGHZtLRXDRpS4blFtRgAf4ab
 tZY6LJUMnjmdgaPP3Mc7YE/ITF1hGnzYF2jbJazNm17nMSP/66dGJt9dK4XAE4cc
 5nYo3GnEkacAa1zUvM6e9OGaAIkndBDUW6+a9aSQNcNyMnYL1/APv+wdIwCg2G4C
 N221QrjrGbxVQPiBM51lY98D/11d/h8aOHYkf+nirhIj9GvRmXJfD3RANZUDjOsj
 OKGgUNlXm/AT6I226v9urfdtrhMg+5zdO+I2p7dZMad/RpnSYo0GMdLRzOlN6aoI
 +4JYoACq2C7iR8pmItb+L4Nl5nNBwmcLBXD+HaZebGffZy9Uvy/A5G0ty08I8LKm
 5STvA/kBMybZhX+RTq5v1Kzau63bMBJR8MPHyWYAIBW2wTMJM1ndW5RrbIMJ71qC
 8DFFTHFJd97s/fqBMQ9rj094CdDxCYQJUkZy5+qiBkRta//iSlgsi54Xhj9prgPj
 nBMWxUjAI5Ih0VPIp3/z/q5aQRvey8Ro5JWmduzH0KpLv2Qe17QfTmlrbGFzIFNh
 ZXJzIDxuaWtsYXNAc2FlcnMuY29tPoheBBMRAgAeBQJATccqAhsDBgsJCAcDAgMV
 AgMDFgIBAh4BAheAAAoJEJoxLn7IIqR2/y0AnRetbhzvjj3kKOV28bx2Qt+YRA/j
 AJ4yY9wDPJpwq63IsGeo3BYXi32zPbkBDQRATcc5EAQA2SipeeJJjvrzqqILHNA7
 X+m/PAJonO4QhyIEXXMhzNGdiUVJ7wli23gGVF0Cj3V97Yw5KFGco3qOvvsWkO4c
 CLwd3NHbVL6OHKM36LcFd+a6RiJO9qAGGixyqUIkqYeWCmpObihrkZy9WADsSJTc
 /qOrLghJ0GyR4Ga8CoFNT/sAAwUEANfA3lWeTj3QZcDnJZYejt1aJWt7oUBQ/KOc
 HhTjY/A7zkQsAdgbcmuhzSiIH6eoofTwNOl/Kl0ieSdIyFMFfVxrmYEN/HUUUI4q
 J+BgWZgppinaeUEabnZPfY03T+ZanJ3DmB8s8x4HdpFi3jgtWY0KfDhDfHtNIeRu
 CYmLAzjYiEkEGBECAAkFAkBNxzkCGwwACgkQmjEufsgipHbIOQCfSaudT6wnsh4G
 6D9TZkji6aDqUBwAoKqxWnOya/v/MqcgrXGSCih7phIL
 =Hz+C
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.221. Boris Samorodov <bsam@FreeBSD.org>

 pub   1024D/ADFD5C9A 2006-06-21
       Key fingerprint = 81AA FED0 6050 208C 0303  4007 6C03 7263 ADFD 5C9A
 uid                  Boris Samorodov (FreeBSD) <bsam@freebsd.org>
 sub   2048g/7753A3F1 2006-06-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBESZt5sRBACyDUDxsmkdq0XNNJfbsdVO07/vtUc+rP5hBEdMzbetPnLdujSX
 JtwzS2b5kQFk1ONAuTs9udlcZhhq5T2FIyhqpvgLG3tnt4gDabRgFsOL6oB4dFKv
 yL5emRwnch+wYlwfaoWXsXpWfdHQCwFfL39lsYLIR/aXcMwjXF1wl9yl6wCglkCt
 NECUgmsoUYE1iOyC5PnqHkMD/088reqeJuH2hWHupCOihIOOddQPiKX3EY1Y6piO
 I3aQFxOq8BdYw+3WAlBs4vegMmzk9MYEwP2STsVcPE+eu55m1GCRRds++oyv9tQO
 TFZVsYEuvJALvHSW3InTGHWfhQPrHcdodyRjhgo2bKY1RwO3RHYDRRQj5i8LDn/9
 kRSiA/9Y9Cl8Abr7kuPbgw7uWb8lRta9/le1UWQXpU6GAZHXEgppHenDaRqvbaag
 MhXXiKuuFAz4LNHf8UDqyQ4fjjfR0EajIivV17hpzagPWIzzEdr4j3RBpwHMYLbV
 1yfyml5QT46amMd2Vwq83Zgn0cUObu8E0IITqTMkweEvH+soOrQsQm9yaXMgU2Ft
 b3JvZG92IChGcmVlQlNEKSA8YnNhbUBmcmVlYnNkLm9yZz6IYAQTEQIAIAUCRJm3
 mwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEGwDcmOt/Vyam2gAoJHvCp76
 i+XiNv4R3pJgG0ZxTCjOAJ0S46VswPDByVJZNF95pfy1qEDb/rkCDQREmbekEAgA
 vAUui6QrSn//3FHeSvH1smd0432C1r8IHvR7m0Ki+F1cRolkWF29y6JMpoPcXrWC
 D5OpGfZaZQ9SwhedFr776xAwMDWAHlrHEpPC4OE3RPq7YWENc40hL+ZKfsZhGA89
 H8fiU18UdDlARgg1PDBbVi+F4ZFfKSyNcTUO3brIIpUy5OfAdTkgl3JFKERlqZic
 ZWjS9PXjsyaeTYn1Ny2T9WZqbk9Ghsb2/t8bIyayu9KNnI+vRSafRtaomeUEsKme
 YZyU4pLutea2Zj6u8BtEVyxp9Gcy0Whn/HwQc/FZE91Z6UzViucBqKmFmw3A/OHF
 HV3DAxd2ctkBrt5jzgJA2wADBQf/dD7RVzfD2ea+jpgqJW5EFDqYebjPLab5GZJ6
 uUWWZu73ynDm92lemzcT67JYirU0H0sQ6QmcZ9ZwqqdW/taCjvpsXPFb88B9AL9c
 aQD41otxgpCF/zMQwgS24DCrdtPXiKceTjHNEAMOM9xS3FBNAWjy23Jz6rIt3ROD
 o0X3iAta9cT71Q6/u6BYo1YRuLIAWZ1rpkELb06NUxsVuEQmBKGMBKf00LEw+AV8
 0FkaEukzFuG1u3k2qkeFJEZW0C6d04JT5jsskRiTrIzkd1FTyaEdueaZoiPBQybX
 KE9GyClXn1RMWA+dzAjjNvJOo556NAIpebgvXMd1rHSRxumHdIhJBBgRAgAJBQJE
 mbekAhsMAAoJEGwDcmOt/VyaOikAnRQNCxBdrbQSOLIxrChaMU5tNejQAJ4hpoO4
 tGfWhh+Ib0+vCD7UaSphYg==
 =fafd
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.222. Mark Santcroos <marks@FreeBSD.org>

 pub   1024D/DBE7EB8E 2005-03-08
       Key fingerprint = C0F0 44F3 3F15 520F 6E32  186B BE0A BA42 DBE7 EB8E
 uid                  Mark Santcroos <marks@ripe.net>
 uid                  Mark Santcroos <mark@santcroos.net>
 uid                  Mark Santcroos <marks@freebsd.org>
 sub   2048g/FFF80F85 2005-03-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEItZGARBADLwd04ILGjaq1OV/1cNTU36Ggwx2fKt1OQSFgfzkQDB2Ff0R/P
 xXLBhx3mVEcTt/vNcniqyOA3Pdla6nVtxFFMDcXhEN/d6Xsv6UY0s5B6zoJ6tx9J
 2lpP2YQeA0sCGPnl6QjFYX1pbehPO7CSen0ApDBmfJx/B0J8AwCh9utzmwCgwmBt
 KvC79obIrPNdTr8quYyYZf0EALQbGGXPhgZN8A8u+PebwIajKxMTxqPnJbcImwRd
 GOjdRQ79BT2Ze3g97ReKjQCCqOFY0Gz9XMd+OGfG5MfDwe4pGXx6DUxOYOJqL+2p
 5MjDbpmcmemtIaC1AwchhCsqcQVo7jbH4ewsxsb33cIktX6lidVxjUZQaTioPcah
 t0eABACy2edSB2D3KXk7zoNMnfo2ew++Aot8EsL4TOVOrJkx9p0gEKKgL4ED+y8Q
 4cw6chINnqQWIQ4WxyTHeVjw/SIgVfOBEFhvaZFtC9wfDTk+1G2DeMuyw/KDK7fi
 J9KOUhAtKPKTl4D0nZN5rOULgPDgq5WaTjxkWLcs9UjcpDCQhrQjTWFyayBTYW50
 Y3Jvb3MgPG1hcmtAc2FudGNyb29zLm5ldD6IXgQTEQIAHgUCQi1kYAIbAwYLCQgH
 AwIDFQIDAxYCAQIeAQIXgAAKCRC+CrpC2+frjrUsAKCWZHuLZGVk+bWwOh9E/eH1
 I5FTzACeII0hwrpqPwlxOyNHMiF32+SYc9+IRgQTEQIABgUCQl9moAAKCRAVEq5S
 cndxfy5TAJ4o2kmigp9+7Pg8vtGQeJwSgk9dSwCfXo/xBlHKAF1q0MF24MDcLx1q
 4m+0Ik1hcmsgU2FudGNyb29zIDxtYXJrc0BmcmVlYnNkLm9yZz6IXgQTEQIAHgUC
 Ql9s1gIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRC+CrpC2+frjsirAKCdbg00
 iJcryV1H8H7POuWA5cpqBwCeJC7RbQcBAU4hg5kY3Q6yuVLYD9m0H01hcmsgU2Fu
 dGNyb29zIDxtYXJrc0ByaXBlLm5ldD6IXgQTEQIAHgUCQl9s8QIbAwYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRC+CrpC2+frjqw4AJ42EWPG0JCtzDpUx2fCWM73SJ0x
 NACfRxkme8yMSHLPRDYFQ6up3y98+VS5Ag0EQi1kixAIALfhPatM8pRDvjbMuw+x
 z046aF+ygNF3Z+jQYMv2+TNx72MUa2GMM8WloInYu/sbJLuv6yMXKbtGx2wQAAkB
 Ayd8Ink2dniabAummzHuRPLycQ869QJGg0+xCq8pifCsUXh3Nec4IFjkVs73hn3+
 fcyN/bSO5uVzAsLgRczJX1zhipi0joFijFW8V3hk61VPDuB3UM0EzqelA8VMsreu
 wrs6N4BCRVcqDvncTrV+8CAPdRuBMk1NFffQTM79G68UIq64OZSs7uJTOsqLj4uh
 EE8V1rbqoaxNUq1KKIcQxIOMtyMbXnDuM5fXTqKD+2MEmiJE1D7nE2qzmczOFJ+9
 qZ8AAwUH/Rvg8dNLeZXrsYL5A249GjKZOdv9NpmSpEBtjp2mMeodZBVO6u1KlcfT
 N078WY3f/Z3vTt8mqg6woWS4M3l37mDbNb7508HjVC8rALC3ZueCRb/COvTssxBV
 TCvRcJmDYdhGxGAAIRGPiYx+9UF94AE37UgxAiLbTHCCimJmMn/tXvNsX2Qr1oKL
 oYI6kINNYE7uZ9oqZ72zQoJdCBBxyBwRRHj0axzNgtXjK55yUrHDYDnLvu1dr23K
 85Wje6ZVWbKp1+qbZ0tPmPPWb7QYH728MDHzkdcPp+B/QSiJPBxv25CXn9hZBLYQ
 sAUeOwsaps1T4OJoybYNQihLifueGC+ISQQYEQIACQUCQi1kiwIbDAAKCRC+CrpC
 2+frjhtvAKC8dlrD4umaE+9r0LyOx/+il2rXeQCgvUTSvbtlZo87oKp0EtGn++rf
 IdA=
 =F4/l
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.223. Wolfram Schneider <wosch@FreeBSD.org>

 Type Bits/KeyID    Date       User ID
 pub  1024/2B7181AD 1997/08/09 Wolfram Schneider <wosch@FreeBSD.org>
             Key fingerprint = CA 16 91 D9 75 33 F1 07  1B F0 B4 9F 3E 95 B6 09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: 2.6.3ia

 mQCNAzPs+aEAAAEEAJqqMm2I9CxWMuHDvuVO/uh0QT0az5ByOktwYLxGXQmqPG1G
 Q3hVuHWYs5Vfm/ARU9CRcVHFyqGQ3LepoRhDHk+JcASHan7ptdFsz7xk1iNNEoe0
 vE2rns38HIbiyQ/2OZd4XsyhFOFtExNoBuyDyNoe3HbHVBQT7TmN/mkrcYGtAAUR
 tCVXb2xmcmFtIFNjaG5laWRlciA8d29zY2hARnJlZUJTRC5vcmc+iQCVAwUQNxnH
 AzmN/mkrcYGtAQF5vgP/SLOiI4AwuPHGwUFkwWPRtRzYSySXqwaPCop5mVak27wk
 pCxGdzoJO2UgcE812Jt92Qas91yTT0gsSvOVNATaf0TM3KnKg5ZXT1QIzYevWtuv
 2ovAG4au3lwiFPDJstnNAPcgLF3OPni5RCUqBjpZFhb/8YDfWYsMcyn4IEaJKre0
 JFdvbGZyYW0gU2NobmVpZGVyIDxzY2huZWlkZXJAemliLmRlPokAlQMFEDcZxu85
 jf5pK3GBrQEBCRgD/jPj1Ogx4O769soiguL1XEHcxhqtrpKZkKwxmDLRa0kJFwLp
 bBJ3Qz3vwaB7n5gQU0JiL1B2M7IxVeHbiIV5pKp7FD248sm+HZvBg6aSnCg2JPUh
 sHd1tK5X4SB5cjFt3Cj0LIN9/c9EUxm3SoML9bovmze60DckErrRNOuTk1IntCJX
 b2xmcmFtIFNjaG5laWRlciA8d29zY2hAYXBmZWwuZGU+iQEVAwUQNmfWXAjJLLJO
 sC7dAQEASAgAnE4g2fwMmFkQy17ATivljEaDZN/m0GdXHctdZ8CaPrWk/9/PTNK+
 U6xCewqIKVwtqxVBMU1VpXUhWXfANWCB7a07D+2GrlB9JwO5NMFJ6g0WI/GCUXjC
 xb3NTkNsvppL8Rdgc8wc4f23GG4CXVggdTD2oUjUH5Bl7afgOT4xLPAqePhS7hFB
 UnMsbA94OfxPtHe5oqyaXt6cXH/SgphRhzPPZq0yjg0Ef+zfHVamvZ6Xl2aLZmSv
 Cc/rb0ShYDYi39ly9OPPiBPGbSVw2Gg804qx3XAKiTFkLsbYQnRt7WuCPsOVjFkf
 CbQS31TaclOyzenZdCAezubGIcrJAKZjMIkAlQMFEDPs+aE5jf5pK3GBrQEBlIAD
 /3CRq6P0m1fi9fbPxnptuipnoFB/m3yF6IdhM8kSe4XlXcm7tS60gxQKZgBO3bDA
 5QANcHdl41Vg95yBAZepPie6iQeAAoylRrONeIy6XShjx3S0WKmA4+C8kBTL+vwa
 UqF9YJ1qesZQtsXlkWp/Z7N12RkueVAVQ7wRPwfnz6E3tC5Xb2xmcmFtIFNjaG5l
 aWRlciA8d29zY2hAcGFua2UuZGUuZnJlZWJzZC5vcmc+iQCVAwUQNxnEqTmN/mkr
 cYGtAQFnpQP9EpRZdG6oYN7d5abvIMN82Z9x71a4QBER+R62mU47wqdRG2b6jMMh
 3k07b2oiprVuPhRw/GEPPQevb6RRT6SD9CPYAGfK3MDE8ZkMj4d+7cZDRJQ35sxv
 gAzQwuA9l7kS0mt5jFRPcEg5/KpuyehRLckjx8jpEM7cEJDHXhBIuVg=
 =3V1R
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.224. Ed Schouten <ed@FreeBSD.org>

 pub   1024D/0D9E0B05 2006-03-21 [expires: 2011-03-20]
       Key fingerprint = 9476 D3D6 52BD F249 08A0  ACD5 E764 8318 0D9E 0B05
 uid                  Ed Schouten (FreeBSD) <ed@FreeBSD.org>
 uid                  Ed Schouten <ed@fxq.nl>
 uid                  Ed Schouten (Fontys Hogescholen Eindhoven) <e.schouten@student.fontys.nl>
 uid                  Ed Schouten (Dispuut Interlink) <ed@il.fontys.nl>
 uid                  Ed Schouten <ed@80386.nl>
 sub   4096g/80043EEA 2006-03-21 [expires: 2011-03-20]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 VpO5deIuX1jgjgdlB/1aiEYEEBECAAYFAkgL0BEACgkQt1EUCfwV2+wyjACeKrvJ
 xd/J3jMQslv8B5umfUkSvRQAoNx+Fs+WpBzLrUcCCXQLKvJ0hD/4iEYEEBECAAYF
 AkgTgF4ACgkQFViURZnoHaA4BwCeO1oJGxBp/k0Qk2GK0WHwdS7jNCsAoKEpnAEB
 3YNLMx5y40bgUCPGMocxiEYEEBECAAYFAkgnPYoACgkQIKyzvlFcI430WwCfWJBw
 6yaO48o/7dmacBW68Pk2wvsAnRa1yqEZpKAdys0WE343cWTBDtAViEYEEhECAAYF
 AkfFZVoACgkQb9E93NfN6eYtQwCbBzeymBCt4Twf75UB8eRAolJG+Y0An1T3/B3I
 moU8A+HIQmyUGi6FMrlciEYEExECAAYFAkfBpoAACgkQ7oGSpuRD1ti4AQCfWzdt
 AWo5shtaNMV8fL8yCshCfOMAnin1N1aGzlqhy/m4+XSZb2MjssumiEYEExECAAYF
 AkfGEzMACgkQ3FzfxAeN+kE24ACfYVQNQwenEAjUWpAI07BzUQIQ9PkAnjTleimi
 X49WRdl2Z3FDURfIZosfiEwEEBECAAwFAkfFxr4FgwXAItUACgkQJGLEG1jrYMir
 AACdFZtYoLpo2DTnfYuGtqRXZEIHeykAnRsWOnMRtpd8464dJZQQruNjL9EliHoE
 ExECADoFAkfFlHgzGmh0dHA6Ly93d3cuc2MtZGVscGhpbi1lc2Nod2VpbGVyLmRl
 L3BncC9pbmRleC5odG1sAAoJELR14ge6tYIp2vMAoMoFLMgK/nBCUQecr/HugnAP
 SSMYAJ0V75bc+aA8jahMj0PsWrB6KRvdfoh6BBMRAgA6BQJHxZSFMxpodHRwOi8v
 d3d3LnNjLWRlbHBoaW4tZXNjaHdlaWxlci5kZS9wZ3AvaW5kZXguaHRtbAAKCRCU
 j9ag4Q9QLq9AAKDs8db4x8ZHrWSlIxysFS9MK2EoFgCg1lUwdKAdsE/gKwbOdLUy
 KWQUAGWI9QQQEQIAtQUCR9R7rocUgAAAAAAQAG5zaWdub3Rlc0BncmVwLmJlImh0
 dHA6Ly93d3cuZ3JlcC5iZS9ncGcvNDI2NzEwMTNGOTRBMEFCRUI0Q0U5QjZEM0RG
 QzJDNjJBRjc5RDI5RS85NDc2RDNENjUyQkRGMjQ5MDhBMEFDRDVFNzY0ODMxODBE
 OUUwQjA1LmFzYyImGmh0dHA6Ly93d3cuZ3JlcC5iZS9ncGcvY2VydC1wb2xpY3kt
 djIACgkQPfwsYq950p43gQCgnmJj7CiBrBO6yU6n6OXxOFnOebIAn3HiErkPWeHB
 ONMQT1Dv1BB0G/9HiQEcBBABAgAGBQJH3DHwAAoJEOjgYvYNywQxCkkIAIy3/mle
 eMjuG2/fZJUwydRz9zQixZa0YBkPKaCgsV+5shYJtzTT04kai++8K+9AIrNRQ8k7
 8YgJqlgRpwWkwn+p2hxPOw56VB0ulXeI6wGXz/LEU38Pb34IymGWUgACvVfCy7pc
 xpMvHdOSHsKm3mHh0r1N9V6rNtAedO6ftB9wDKZtbruCytxg3Rkw0tQgBAgacM9W
 EpnzkwrTLtj/GhSgn/QxMQrrrzxDKDHoXwKS2K68/LUewYuT5Zsgb3v0V0azCVFY
 7/4raoR+AQEcKCZkNa4SldfIbS0NDEEEfSQitwE0IeNKkGfg4jSc8eghZ7XQM97f
 5XMjuB3FoCEoEYO0SUVkIFNjaG91dGVuIChGb250eXMgSG9nZXNjaG9sZW4gRWlu
 ZGhvdmVuKSA8ZS5zY2hvdXRlbkBzdHVkZW50LmZvbnR5cy5ubD6IZgQTEQIAJgUC
 RPMFcgIbAwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEOdkgxgNngsF
 K4AAn1MSzq90PwueUym7iRvJtxoyGJOfAJ9PbMnvmE4RDlkWNABKMyH9oViPq4kC
 HAQQAQIABgUCR8FsKQAKCRAmSeYoxdNNBcdND/45lII0S/gZZ9D0Omyd5Kmwsqdx
 SzzqigX4eYYGVrN9rBgEo2rFeNQWmzVGUaPlelbPt9KJME+5EvPfjy1PQL7TFmYZ
 /Am/S88lLHszqJo7tro4oFbqMMJyxSD3iDvlsPYUYmkEie8Vo+RO+Ike2e3kmfMV
 XWxYaEsQ5r/0Gj6bvEO18exCENckGWjXnUcZIcMhJEBTH9TizvvNKZJPnrSEFI9T
 1OVOs/CxLSuBVha9AbMSw+ZgPIvu92eep/QcfAW2i2YNVv0y7q2kElhDB0ebWW38
 6iqHo+/vi0hXap9rdd8xZz4Egncl/EwrAFi0e5vOoNG4L2uEOa7HnKVfRwszUAqF
 lfV/UI0A+nd03E5JxDFcNOmX+wwspMNrKPa1zeBTwLTWtUpS5y0aS2d6GW4mKWAY
 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
 L2luZGV4Lmh0bWwACgkQlI/WoOEPUC6WbQCg5HxltfxKJko/DGzDIOB6bS/UmI0A
 oLzf5Hg+fCc038HSU99v7xz9wk4ciPUEEBECALUFAkfUe66HFIAAAAAAEABuc2ln
 bm90ZXNAZ3JlcC5iZSJodHRwOi8vd3d3LmdyZXAuYmUvZ3BnLzQyNjcxMDEzRjk0
 QTBBQkVCNENFOUI2RDNERkMyQzYyQUY3OUQyOUUvOTQ3NkQzRDY1MkJERjI0OTA4
 QTBBQ0Q1RTc2NDgzMTgwRDlFMEIwNS5hc2MiJhpodHRwOi8vd3d3LmdyZXAuYmUv
 Z3BnL2NlcnQtcG9saWN5LXYyAAoJED38LGKvedKepaQAn3T6UbOVbz4DrbRKA04b
 nFlFLHGqAJ40XuTPwiGdOwnZ0ASbrEzOYu0XGrQxRWQgU2Nob3V0ZW4gKERpc3B1
 dXQgSW50ZXJsaW5rKSA8ZWRAaWwuZm9udHlzLm5sPohmBBMRAgAmBQJE8wWCAhsD
 BQkJZgGABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ52SDGA2eCwWfDgCeLyhW
 aysPJErgwTSCk7cKQJ1/JW0AnR7AFqounCUdDXx50k191R1SLu34iQIcBBABAgAG
 BQJHwWwpAAoJECZJ5ijF000FosAP/jdhAOMfPg8JZ8r9ZGmI87AJMFv9JJNHytxj
 oDL7Sj8Xiv+JlsxSnSbtVgUEmPF/e/Ni3c+CuQe/KCG2OI7wuT48+yyeAprK1+H/
 z/4CJfloshNF+RhW7A9ouJ7eN5lWUEcHKFvHZAlmDSSlgxRJZByu0wd/2POIyEsa
 xwO3qYfqQYuOFuAakB2TFl+Rfvp5SgB9uHZGEOsAYE7GslM1w0fGYUvBhKZiWlXI
 9pqdb94w1KexJfgCcTaePnIustmJ9FkEYogEcnr3nJP1Hy//AYUnFugxd9PVQRZH
 pOq7hvrCN7zpPma65cqnK6G2Q4tiv79EppcvatENfS0ih4miurgo9uta+dZ0mzwq
 hN1vquDVDauZnf9MYjwitaWZ/+XLOi/i83NfNn6pWtUKNZ8BJR/Ohj5ZPsBQXf2P
 7Se11FfEu3zg4G8+oG29aVkoPbMvbAJ2rCL2eB9CYqz+/0qn//0Vn59nwUYPqWfK
 x5nxOnPOUWilyyeDAuX5XN+L3i2w5jWSbf8ybqPeoZfEDtcEldtNZsq3z5dl6R1a
 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
 BQJIE4BeAAoJEBVYlEWZ6B2gYTIAnjbtm0cSTpJSAAK/fffIjYIal17WAJ40rFL0
 IiKhBE0J4rNCwc7KANhxfYhGBBARAgAGBQJIJz2KAAoJECCss75RXCONjaEAoMyA
 GK0GnRB1OU9AXcOV6lFgN9qrAKCnrldogboGNzIn85zNz2VBro93WohGBBIRAgAG
 BQJHxWVaAAoJEG/RPdzXzenmxoEAoK2aV2iE+N3+9ksnpuQXYHtUgPd+AJwK3BKV
 MbieieLo6dFDLS1JBxNDlYhGBBMRAgAGBQJHwaaAAAoJEO6BkqbkQ9bYMJwAoKAD
 w7xOY9QT1KJirzvQ6Pczi3uWAKCXjRsGf3B6ugR0xPmBHNfHbHFMmIhGBBMRAgAG
 BQJHxhMzAAoJENxc38QHjfpBwSoAoKDISSmPkSvv4nqgooSKhuxW6ICUAKC1IPe0
 xewwd9PGJBRbvkIlxDJRkYhMBBARAgAMBQJHxca+BYMFwCLVAAoJECRixBtY62DI
 rRIAnjbntWRbM0h559jf04fqWwt3DWc+AJ945rZ5P8EygnFiMTPJwU2f8sd2uoh6
 BBMRAgA6BQJHxZR4MxpodHRwOi8vd3d3LnNjLWRlbHBoaW4tZXNjaHdlaWxlci5k
 ZS9wZ3AvaW5kZXguaHRtbAAKCRC0deIHurWCKdQeAJ9eBQz63gNDDU8P5pJfYt2N
 2UXw0gCggi0lx4qyct2K5RMN2Ypk079v9eyIegQTEQIAOgUCR8WUhTMaaHR0cDov
 L3d3dy5zYy1kZWxwaGluLWVzY2h3ZWlsZXIuZGUvcGdwL2luZGV4Lmh0bWwACgkQ
 lI/WoOEPUC7t9wCginPUqn4mHwiooQbx/RJj6MijclYAn2UmHf7cjIURmcBdwI6P
 agziWBS+iPUEEBECALUFAkfUe66HFIAAAAAAEABuc2lnbm90ZXNAZ3JlcC5iZSJo
 dHRwOi8vd3d3LmdyZXAuYmUvZ3BnLzQyNjcxMDEzRjk0QTBBQkVCNENFOUI2RDNE
 RkMyQzYyQUY3OUQyOUUvOTQ3NkQzRDY1MkJERjI0OTA4QTBBQ0Q1RTc2NDgzMTgw
 RDlFMEIwNS5hc2MiJhpodHRwOi8vd3d3LmdyZXAuYmUvZ3BnL2NlcnQtcG9saWN5
 LXYyAAoJED38LGKvedKeinsAniR/Z891MA1TUahdVK89b0Q8/s2vAKCLN2KHRuVU
 Mjezr5BTUbzmOnh9QIkBHAQQAQIABgUCR9wx8AAKCRDo4GL2DcsEMXIsB/9n6NGA
 otTj4wg38NmImwGcJZSP5lLVGMbHEEOK+bFIIPqjXNze+lS8H6n3hlG7s8deefSR
 3J1lHHo/aWx3hclv+ZCd1mhlrP+osuNdE21VLiBQAgzhd19fXP1mPr+yW5U9Wfzl
 u2/R4LsON7S2292JPxWc9ROUiA2h+XpaG51odZa8TQn27NYNWVjyNl+N+quhYCyl
 wiYqjObgRZLvwHygjgBByyoOXaIfz6ABYrXi0NmVTUIxEDjh1gTm0Gz2IUh8jSgc
 zrBzhOtf8fBQwgzkm8Rmg2ml0pg7BbmpVLM7FP+IOzYa58bhz0mTEc7AzG7IejYf
 f1aMRC4e4bdBK/5+tBlFZCBTY2hvdXRlbiA8ZWRAODAzODYubmw+iEYEEBECAAYF
 AkfPHOgACgkQTaUqra5kIYYNBQCgiN9zCqLwSYfiNdV4/sW+jIYq2aAAoKEJ5tUO
 SxjgqhROKydocYKJhZWPiEYEEBECAAYFAkfRfw0ACgkQHoowUyEn+FpnvgCgkQPD
 fuT9X7ioLHS460S17SPy4K8AnjHv4hrJJldhtrPbWJ0YC3UlSEHuiEYEEBECAAYF
 AkfVZV4ACgkQQUuEI2/szeBLugCbB4iEGfDKqjOhDxKHfNvqTCu6BQ8An1Xw5COk
 osYhsXmgVgep/Sa8peeciEYEEBECAAYFAkfcMe0ACgkQKJz/wOY81tYi9ACfXTG+
 WfAbWMUbH+cWeZfxJIMNCI0AoM5YeLtxs0DmHfm6h++FE4/WctukiEYEEBECAAYF
 Akfdj8gACgkQJ0DQ+CF6XGYhegCeIwrR+jATCsV6yfz6bI7X2jsNp74AnAhKklec
 Xkv1W6qED6o16e34MmufiEYEEBECAAYFAkflGx4ACgkQStsfiGuIVENP2gCeJauR
 id1mGrN1NMq0iEewaxGY10MAn2jdqxbisWhNVXYIZDyORDdQ3h9qiEYEEBECAAYF
 AkgL0A8ACgkQt1EUCfwV2+wOvgCghdPdYo+08dvoXPIxdtVINTsQpdUAoIcROHT6
 m9g0ZkBVTCjDXZRuP9JEiEYEEBECAAYFAkgTgFsACgkQFViURZnoHaCBlQCgkG3n
 B/rB+IB4klWHt5gJw79ckuEAn1hR+Uczcxl/90lFdDA0mEkB3c5liEYEEBECAAYF
 AkgnPYoACgkQIKyzvlFcI42mGQCeJcjiNBmQlzEtJDukPBuBQxgTtcAAn1kztrFx
 LbmpUQdWQXXsXQ94RNjYiGYEExECACYFAkfJ5x4CGwMFCQlmAYAGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRDnZIMYDZ4LBUGYAJ9IkHyAFCY7aBGcjjueRz7yPBeC
 QgCeNfprYAho36I0qfXd8k+phGqdRTaJARwEEAECAAYFAkfcMfAACgkQ6OBi9g3L
 BDHAIwf+JK5oy4pms8i58YUHphnxURVc/3QpoVYdNRgUEC8RiMFmJc7uEomc6j9w
 NAbpT1ILpMeAFjAmbSldFovgJ1ZoOFd0vDOZkgsXamdB8iFIKKUyVaAxJf1c/E7m
 vl/fNyy7WTg3HleubkWJySaB17s+KgyYWG9JwiQJ/IRGBuAbkz5sHPVzXhy21c/f
 pmK8V9Gd7kJXOWn5CSMuCDgMaeTPQoZlDBfglWgrMJ/O3951MRkl23EWqhvZHb76
 vzMAGF5l1a87rBcN4truOSUFoL5fbLKN2H1o8Zm5SoFSRjdJrKOn3zDcEzI27MKf
 mlu0LpGocwNVUMzG4JR0w5OB1GASNrQmRWQgU2Nob3V0ZW4gKEZyZWVCU0QpIDxl
 ZEBGcmVlQlNELm9yZz6IZgQTEQIAJgUCSDKeCAIbAwUJCWYBgAYLCQgHAwIEFQII
 AwQWAgMBAh4BAheAAAoJEOdkgxgNngsFt1kAn1HDjBu67m3Kp+S/vPnQ8WydTYAD
 AJ9JtxOEoeuvbQHh3h53Zmpf/4x3dLkEDQREH+ifEBAAveat5jh5evC/dCjLuwWz
 cjSlSl/f+5z2XoNeMnFsTfIXZcE3WUcPoPPlmYhvP2p3SoDqG2QI0eaGijqkqkUS
 0GDThIarLrLTaBHYGqNLJ8PuJ1DPp7sKMEgz9AWiVaHmj2l/a2iBT3AwIxIM3dPJ
 V00Yywx+hqbpA/Q5WSdlxpARYKFaKndwOJh1SSlP32oBgQZC/lyjeV4gVbdCGgGT
 p8cCOTPX1kDkIoaYA0obc7YAYmlXtZwxAH22VDbwxN06pY3ri6qJKPDfSBgDp3eM
 hHY28k+u3buBbvDtl18zuM3Y3Qx+d3lpfC1laelPpJm2gz9vI48z5Ydi9yQPwuk9
 AvrPr0nqWeeFUJuicoqHCg45rOVrOv/SC0RFg7PtfU2WeefM1ft+aXxdYSpVcprA
 R9mJ3zZQxRkUIhOrGHWOAj+Gf+O7QHmiaC4Ce0v3HgRuQwncZtcrb5G/3D1o6NwI
 3GwhIzdgCy93kSQ12bo6LwniCobcufvHjfA9ngfeK/UqfO2S2bFp8XWsNJ2VsR24
 V571Xc8Mt5xWDiQwYkbuFchej5jwI3o5U1uJsUSKtqF2MVPv0XlS0l68+ytr4ClZ
 01a4xntgFG6johh7kzGbcca2A607n2ZHyzLX4Dc/WLLcDy9Bg2nxfKFtG/GbV9M6
 LEVZRtzHOmV1Ij06S6iqQscABAsP/2pT4yqhBOkk3N5ILBL1utuGFPu758I60XTQ
 YZLljmTwSMAE5XTA1Ga8Co8VJNlbYRrGE16ZxUudh/WWNfM/9z65/Unev0XS4qI8
 wD30+wWZNekGRpefFMYRZ+hzyeiKZ1zaaJdWJlqoEU6k2X3tqsy2QiZKM9K4+dFt
 A8Ldfx01hZUFDGD0GB+ZPJ1MOpzEltCZHNbv8nyjc5hkGdG2BHbrmIAXOIBmE8fG
 cE1m+rsELMOgMa7cY/NpN30hoAwEj68PyXknuuaZ8yN1tqMc4vEEs18uBD0Tg4zD
 k/nyTacwJaJB58fAgWqb/WuS3pWBKaYYTX02OGV0cGRkARMSLtGWzer281DNlsZ/
 e/pe4cD/xP38uvvSSZmK16tanahoYGTgG1LzwLmOKNw8oJjaE3P1DDGL5EwEph1E
 ru6F1QfzSFcluXcZ0d9nxpk8J+0FJzPWmUPK5NO1SDzTjyRLShSD3QrSA6efQzLU
 eHo7Mfe9geGlrL8sBlm8zCr92u1/XAiYhPZ6xc+7M15cjgrK1SqEFd3nft+R2d+c
 3aKMKrQBQV+aHAB0EMpWnHpgwq5cTgPN01qHzcBpnME9s7D0iTSYYCLGB5wBTOa6
 ATEtk6SWai9OrEvZ+KM1vb8V2DL+P0v4xNjugqXTA52qj2uGxgypZyRWZgFrheIM
 tG//fhmkiE8EGBECAA8FAkQf6J8CGwwFCQlmAYAACgkQ52SDGA2eCwXQKACfXAyk
 2EYjaPlDBKzyZG+5hVFDaM0Anixs5CWbsGFjwGMxjE5eVeex6/wZ
 =wVoU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.225. David Schultz <das@FreeBSD.org>

 pub  1024D/BE848B57 2001-07-19 David Schultz <das@FreeBSD.ORG>
      Key fingerprint = 0C12 797B A9CB 19D9 FDAF  2A39 2D76 A2DB BE84 8B57
 uid  David Schultz <dschultz@uclink.Berkeley.EDU>
 uid  David Schultz <das@FreeBSD.ORG>
 sub  2048g/69206E8E 2001-07-19

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDtXc9MRBADg4tN94el8rq0ZMUqB2jEVACg/UfYjtsaboDL4HBBUH+P+Wxic
 9JqotcTbT8pJGeRpeXbfO0YHaAFnUfilhoFkeLyAgDvnUP9Z77DjFpliLAKlvuCz
 Lxi4UxgQXRdedNCg3omrxQWx7Yx067GT/yw4RgvogOuYBX0l3AJ25/WBxQCg/6Dj
 TMTu6iYR2Y6dEL4NGs9PnBMEAKBlhelAhzYoMpcWpk2VITUgONMW+Oi2JDTmwDd+
 1FAUDc1mHSoNBKPUrCWyXiwfzL09/ROlK/KMR6YoYtV6d66zZ/dQNuzrMhsis+Ou
 PCtvcaR5NGln49THgcw7/K5gTjwrG1xA/wcwnvUp6sxjh4p88meI/LNBAstixb3z
 FiLDA/9pAqn42B9ZBL1le98DTiLDemHvQFgXu8Oj20IIF0umyJRBfKwDY6iIx0gd
 1rUKua6XnqMSEg+LmHmSfDBaAOsFTdnL7wVU0tLF0V9goxU4qDZjw5EeMEqnk7tg
 /6REIvtdOA/GLOmr/Q0WA4JEukcih3AQ9iFnwg7WAp0S4GF6gLQsRGF2aWQgU2No
 dWx0eiA8ZHNjaHVsdHpAdWNsaW5rLkJlcmtlbGV5LkVEVT6JAEsEEBECAAsFAjtX
 c9MECwMBAgAKCRAtdqLbvoSLV78JAKD4iJ2kNeTsYQnWZ2DeytAeqVaKFwCfTIQE
 lFPZyaQr7yjthREE+8SPZCG0H0RhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9S
 Rz6JAEsEEBECAAsFAj5S1iEECwMBAgAKCRAtdqLbvoSLV4b5AKCljokqRgi/pbDa
 ZebYLluQCIkbgQCg+jSKAIi1r+CZiaCJdqk193IZVnm5Ag0EO1dz0xAIAPZCV7cI
 fwgXcqK61qlC8wXo+VMROU+28W65Szgg2gGnVqMU6Y9AVfPQB8bLQ6mUrfdMZIZJ
 +AyDvWXpF9Sh01D49Vlf3HZSTz09jdvOmeFXklnN/biudE/F/Ha8g8VHMGHOfMlm
 /xX5u/2RXscBqtNbno2gpXI61Brwv0YAWCvl9Ij9WE5J280gtJ3kkQc2azNsOA1F
 HQ98iLMcfFstjvbzySPAQ/ClWxiNjrtVjLhdONM0/XwXV0OjHRhs3jMhLLUq/zzh
 sSlAGBGNfISnCnLWhsQDGcgHKXrKlQzZlp+r0ApQmwJG0wg9ZqRdQZ+cfL2JSyIZ
 Jrqrol7DVekyCzsAAgIH/1AtvAGCJchvLFoaR5KNocKcoUMe2NrpRrFS3DsYOsXU
 0U95pmAHJaMt+wv4UDs/wNzOzC6stRML+3lg6sYnSgddH+N/DA0b5jQSAyNWlL87
 j08h3ATaPeDD6qhqFRe3uzpQMAJJWbeTdyiT2vwgglgcaJWuVjYSfkkxX7AVDFHw
 C4IOuZ0aQhHyHQsGQURTg+sotMx+kX68o7oGZqBBOcr8VdFyrlq0Tq1b/i0fJnn2
 Nz5hY+OOXbyeoJbaY0KiGnnMwHmeZ2eJWk1cCHUZnrY5WOxYQHail2KHXxhYuPoI
 xsL0y+XdErX+lc2BiEbvXROs+VxEo/3/BVJXAIar3nCJAD8DBRg7V3PTLXai276E
 i1cRAsj2AKC26JMJWsvd93UUWRXDKmU46MgLggCfTOIjPheQwY9VCN3jO9YROzij
 QVE=
 =qhh7
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.226. Jens Schweikhardt <schweikh@FreeBSD.org>

 pub  1024D/0FF231FD 2002-01-27 Jens Schweikhardt <schweikh@FreeBSD.org>
      Key fingerprint = 3F35 E705 F02F 35A1 A23E  330E 16FE EA33 0FF2 31FD
 uid                            Jens Schweikhardt <schweikh@schweikhardt.net>
 sub  1024g/6E93CACC 2002-01-27 [expires: 2005-01-26]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxUIHoRBACGAbIspofa2HTwV0Y81ZgrizVgvsHduKRMYmu9scX6eFSQWC2a
 JLXXnMJMK97LG2m6qX/hzjxZKU/n2eNpHa3h9zLYQ/8VdN+AFHGZtgmZ7xe7UpBI
 V2YohykdmgKqg8WuVQGrNTwbkaAFeLnG3yXhR83qukRvv+qFfXbEF+1S2wCg6lLg
 YJ6U4J1pfTO95Rd4hw5v6DsD/0hUfa6C6C6xjME6P7r/ORd91+nJsfO0pcV1rK0s
 yCMdAy/zdUlKpsNF9vS0qhCFonuOHWxMEe7D8L80oUAwlk4RrFBm+Ch7RoBGYGru
 aEom/7JGNoRqUD2CKbFnkAYi9HP6XlXcpgm3GO4c4VtIcEbgywjw7rNhmNoYLrZV
 YUb0A/9mNCqpPTd8ngm7kPyTTMJitYEVaBPXEdiPueYJND+eI9AQkcqYhs6LWq4c
 jgmTNeImQ+kR1UeDj3dOwUDqhGmLPN60nD+Q2oHHBif8NJOu47mx1dgdriM9FsTN
 3UbeSve+mY8Z8zcPIYKl2UJLPZckWgq4pZRrE147cnKHSHHM9LQtSmVucyBTY2h3
 ZWlraGFyZHQgPHNjaHdlaWtoQHNjaHdlaWtoYXJkdC5uZXQ+iF0EExECAB0FAjxU
 IHoFCQWjmoAFCwcKAwQDFQMCAxYCAQIXgAAKCRAW/uozD/Ix/ZB8AJ989jyDH1G2
 T1KMoNd7gPk9tAw1VACfXJgkrI42ShC4cHz37xrVLXeJp9i0KEplbnMgU2Nod2Vp
 a2hhcmR0IDxzY2h3ZWlraEBGcmVlQlNELm9yZz6IXQQTEQIAHQUCPFQ+0AUJBaOa
 gAULBwoDBAMVAwIDFgIBAheAAAoJEBb+6jMP8jH9P+YAoM72fnNwxxcDjb+3Mv3A
 CfbHonYCAJ9lfK9fIbkgfAHo+2kwnOEN4yWxzLkBDQQ8VCB/EAQAzzIqOgms7u+e
 UKampP/5U9G78HA3GIkVLcAeq5FfpFtls4NmSKz240zNxXmABWTSlBmOQvMdhB08
 vRbzEsxPoVdNaF+QvRZYEr5+2bOM1pnHqYYMyUKwN83LXgTDnXxas4mtrkgngZTe
 tGdFQ3PIVqW4jV0MmnEmaqde0nMJ6XsAAwUD/2z82PDDwFBu1Ogogh63qE69HSQt
 8weHX+Skmi75jE3r2niUlx6B0IfLXzFqP33vyrsov7QHgAuOjNficisbC73o3gjp
 voJ2RYB2IfUCgeFvipLpqY1TWJ3bF52TYnJg4rrEWd5OWs4FB0iaJ78LVWgq3WsN
 zfgcgfQ38d+scJu4iEwEGBECAAwFAjxUIH8FCQWjmoAACgkQFv7qMw/yMf1PIwCg
 nSP0i+q9jhEf9T5xA0+qg2yYB/IAnjvd/tA+2/5bP4pObE/oRNjIVZBZ
 =YPu9
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.227. Stanislav Sedov <stas@FreeBSD.org>

 pub   4096R/092FD9F0 2009-05-23
       Key fingerprint = B83A B15D 929A 364A D8BC  B3F9 BF25 A231 092F D9F0
 uid                  Stanislav Sedov <stas@FreeBSD.org>
 uid                  Stanislav Sedov <stas@SpringDaemons.com>
 uid                  Stanislav Sedov (Corporate email) <stas@deglitch.com>
 uid                  Stanislav Sedov (Corporate email) <stas@ht-systems.ru>
 uid                  Stanislav Sedov (Corporate email) <ssedov@3playnet.com>
 uid                  Stanislav Sedov (Corporate email) <stasss@yandex-team.ru>
 uid                  Stanislav Sedov <ssedov@mbsd.msk.ru>
 sub   4096R/6FD2025F 2009-05-23
 sub   4096R/98BC2774 2009-05-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =6u7/
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.228. Johan van Selst <johans@FreeBSD.org>

 pub   1024D/7DA5C53B 2001-03-03
       Key fingerprint = 3021 482B 52C1 3FFE 4752  4D57 68E1 252B 7DA5 C53B
 uid                  Johan van Selst <johans@stack.nl>
 uid                  Johan van Selst <johans@unix.nl>
 uid                  Johan van Selst <johans@gletsjer.net>
 uid                  Johan van Selst <johans@vrijschrift.org>
 uid                  Johan van Selst <johans@FreeBSD.org>
 sub   2048g/EF1C75DD 2001-03-03
 sub   1024R/355F8408 2005-11-05
 sub   1024R/9AF7EE88 2005-11-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 mt1yi04nJIim7A==
 =7U0i
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.229. Bakul Shah <bakul@FreeBSD.org>

 pub   1024D/86AEE4CB 2006-04-20
       Key fingerprint = 0389 26E8 381C 6980 AEC0  10A5 E540 A157 86AE E4CB
 uid                  Bakul Shah <bakul@freebsd.org>
 sub   2048g/5C3DCC24 2006-04-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBERHS6MRBAC60MHcIa5gqGjSmHLxJeZTkLTDK0zEo7MRJuMeF90Py7wdP9Fy
 jmRhyBS/tYfOtPrpHwAdn5FIkVzajEklv9L0/JiUx5WDrmJFWqIgRLdRPYw909hE
 7pW3uTs2qotWjeA8ecefzlTX9gdZVgy2uPhihMG9cn7pL1aXluca8AUsIwCg4lUf
 8pL0Pn6pZ6xP7nG1hEvkzr8D/1LR5Bm47RboJ+dvoMf9lwlXiEBP0m40100urcxR
 7e+AHDX2yr6s4edx7pPRCq2ubPgzK2rYv4NHN943AY8EYbrazp5F3EItDOLHmIus
 JasvCgPTb7HYWO7Q28redJyUIfBUTPgVVk2z4EuCb5QKDU2/2DyqWThrLEwTCTRh
 mR82A/sHQE/xib0291VjMxGKiatd2Xm5hu7dSzCeZwc/5uF0g33OYcd02fosyERd
 96SWmGigFWLbQ/kFiAoN0OAlQQoNPuWjGzIJVrxiy9y3Fw2hnoiV3MAWAGr43+UI
 FR+XB/MxOKIozYrMouhZHtmw237fKVH6Ewe/rFkthkgm9P9BpLQeQmFrdWwgU2hh
 aCA8YmFrdWxAZnJlZWJzZC5vcmc+iGAEExECACAFAkRHS6MCGwMGCwkIBwMCBBUC
 CAMEFgIDAQIeAQIXgAAKCRDlQKFXhq7ky+oMAJ9Cth9LlPV2on7lTedInW/6T2mh
 YQCgm6bY4yyoJbjUxop0bcuKYGVVuSO5Ag0EREdLsRAIAK/+InMhz/qJB/+Rwq08
 K6TtPPkAs5+IcFQqjShCtFWiaZrvBqvcTPDqVIMu6CAnBf6QTOKQc+L7lSUE6QdI
 0mE3jiieYJ/cDzSqntYZBkC5glW0AzemgyllQRlqKrIawWu8M+SwZipvKb0YCIFo
 rmhoHCjzK/DKlSi0MOjPVTbsyS/rTvhAoXxodogKfNzRpb4MwDjM4Lda9mO+hKlI
 93CsBCzNZaOECYJ/1vkpuGqOBhvezrLtNCYFmul2JtVMyCb86mOIJAeiwn/hiZu5
 eU3QYdvcCOfYh//B8AZOVSW1x8HYzMFXuznVtx1P5ygvtWY3u+uIlXC274XuV0aJ
 NNMAAwUH/1rSg/fSdVGEG3ge+sGtFKHPOaGW014dt5nHCePrhLwHIe/udyZPCD3a
 axp6RVlx5Yvw2+nMBWiW65KACBUQslSHbeM5u2aPH6HaAAEYCJ682vKUWyEHGljJ
 zDBBANYKThYwle1xRxiE5MT9B2Bz33z2/BQnCgo21KYAU/2bwi2qVG0jyF0i6ryP
 6r5w2zZbZA/0IINcwENYRhYdtU+QtyB/HqX//nshVnxZFgG0pIPET5ltq9VM+6Fj
 hxJ2RXwGOxBJW3+yLw5JuDVrqoOz2lAOulY2uiQY1Nk9xHDBKZ1U172BugHuOIbW
 EAgbLB4QFuIE0HF1h6bNSISULLt0/yuISQQYEQIACQUCREdLsQIbDAAKCRDlQKFX
 hq7kyxbGAKDdITbPvXRBxINGLWTcNxtRqjXl0gCbBVmMqSG99Tl8uB7wTZRDjtCX
 5DU=
 =iFzp
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.230. Gregory Neil Shapiro <gshapiro@FreeBSD.org>

 pub  1024R/4FBE2ADD 2000-10-13 Gregory Neil Shapiro <gshapiro@gshapiro.net>
      Key fingerprint = 56 D5 FF A7 A6 54 A6 B5  59 10 00 B9 5F 5F 20 09
 uid                            Gregory Neil Shapiro <gshapiro@FreeBSD.org>

 pub  1024D/F76A9BF5 2001-11-14 Gregory Neil Shapiro <gshapiro@FreeBSD.org>
      Key fingerprint = 3B5E DAF1 4B04 97BA EE20  F841 21F9 C5BC F76A 9BF5
 uid                            Gregory Neil Shapiro <gshapiro@gshapiro.net>
 sub  2048g/935657DC 2001-11-14

 pub  1024D/FCE56561 2000-10-14 Gregory Neil Shapiro <gshapiro@FreeBSD.org>
      Key fingerprint = 42C4 A87A FD85 C34F E77F  5EA1 88E1 7B1D FCE5 6561
 uid                            Gregory Neil Shapiro <gshapiro@gshapiro.net>
 sub  1024g/285DC8A0 2000-10-14 [expires: 2001-10-14]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 LsOLmQ==
 =GprF
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.231. Wesley Shields <wxs@FreeBSD.org>

 pub   1024D/17F0AA37 2007-12-27
       Key fingerprint = 96D1 2E6B F61C 2F3D 83EF  8F0B BE54 310C 17F0 AA37
 uid                  Wesley Shields <wxs@FreeBSD.org>
 uid                  Wesley Shields <wxs@atarininja.org>
 sub   2048g/2EDA1BB8 2007-12-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEdzy+MRBACwXYsfLwZzbzYru+XqMIFKVIIszXJK61UejvQqcuaZRNLSQyM8
 Fc5dI6AfciZV9tH8LDqYmd/vDtzjmBp/h2SPqQfiVuREQ0+c+aplvWvWc2TjFQg6
 CZbb730TtazPXbObZvSMRvLeRM32W9Abj5L8DXoQbpMtC8cllG21fsY4hwCgyngp
 xK9e32zih9ddXk+NgjK627MD/iPPyo0N4cb9omNwOCot8YIRpdJhmvR/yPh+8rmW
 NUu61gV8jn2XB6Ldto8/dR7chqqbBU7bS+hsk/lmbOuLNe2XkQA3e7dd0EEHSYYf
 mx6zjw/dEb9EBANAWI6QOyjNM9npWb/shZi8Pehcty08t2eytd4M7wPI9zLAXsMV
 M3nUBACgxIoW4e9yXeNQ3CI2KD/Dbup+SNha1uCEmzN5A0VfPJzyi4Avdtl9URGC
 HUFnUAs5B366yQTgmkjUcfcWqTKBicp4TAZ2KbuDzMX6f6cikb9bdbl4P62vN718
 5iclN77KfTfc6j4aOdIbnc6J9GStvYY0R2eZRKkr3CsqSuebxrQjV2VzbGV5IFNo
 aWVsZHMgPHd4c0BhdGFyaW5pbmphLm9yZz6IYAQTEQIAIAUCR3PL4wIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEL5UMQwX8Ko3juoAn3bIDWeVAWOfi1XjXdaA
 HN7HKkMKAJ9RJ4F67NZKo37U5E3UnnVSRLCZ27QgV2VzbGV5IFNoaWVsZHMgPHd4
 c0BGcmVlQlNELm9yZz6IYAQTEQIAIAUCR348ggIbAwYLCQgHAwIEFQIIAwQWAgMB
 Ah4BAheAAAoJEL5UMQwX8Ko3KPQAoJYfbksQ/n/1FitmpqJb+AmpOmkPAKCVXF0g
 Clk43/Af2rVb3Vm91NmuvLkCDQRHc8voEAgA6Tped4TSVLcdXmDMeHvt29i/9rGw
 EO6lbwUZfamHGasMALyhWC2/nWhoCdo6tTP2XT9guEX5eu/FoN+nAEIKKHqNiiuZ
 6jyOuzUFD/d6n8pUkjHRLqLxFznbgW8f0aaG4rNJTQEQy6+X4/yKEvzRxjroNbZQ
 l300+liw6Q5OztzgMjhkcva4Gxf+aVhVMueGVuANj1QhPPqvIT2roRsBY6PPNCGY
 AaymLWBq51UbvE5j2jtCF2nfxYnajauqnJpZK0tSkLMkxWd/Khvv7GmO4v47qx/U
 DTx6iQP/i43JZIqSg8zSGjY9Lr9XJpzxr4FVyW/rs5X3Fp9ZCQxF3Sty5wAECwf/
 Zs93KXphXLWhCal07JQsu0T2y81+EXRue7QltZs+VTHvGZuc949dgnZrq6iRckpD
 unMRJUXNrKP6BFNOJuDAVRVOxxDQc+ydVGwpQFzJes8/9C0TYOaw0k+ayCZapfVf
 L6zktK+g8oYOXVjjdo8hX9xsus5ie69x73Csve59VmGgCwvywuLUcjCWEgMZGRY0
 hBL9ec4uRDVRIdsl15hQ3NGwdxiDEPkJu8QzQv/t4cde+omnI0UdH+Ywk6FZ2qxj
 62QaoTvFhuNfWUdmnEAbIkfRCFnHVEL5KcQs0Z9CM2V6qS4kdD9wzthhYtcRgWjS
 paW/fPyNYLmXuYgvfyk8XIhJBBgRAgAJBQJHc8voAhsMAAoJEL5UMQwX8Ko3AxYA
 mgKQnqx2baAJtOI7VsgWeTBFEi+HAKCaIQDFpsRsUtsuEYpqj+/zH1bwhA==
 =kNwv
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.232. Arun Sharma <arun@FreeBSD.org>

 pub  1024D/7D112181 2003-03-06 Arun Sharma <arun@sharma-home.net>
      Key fingerprint = A074 41D6 8537 C7D5 070E  0F78 0247 1AE2 7D11 2181
 uid                            Arun Sharma <arun@freebsd.org>
 uid                            Arun Sharma <arun.sharma@intel.com>
 sub  1024g/ACAD98DA 2003-03-06 [expires: 2005-03-05]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD5my2cRBADKOgeJz+IX/4UT65iwvAMoR5SMctMAEGNHvTk96H0DSYmDmqPE
 6D4PWxjiAmbFdMmxGvmPlZDGRk7IpZhrvmsAuAvwImA/UyGb3Qnb0zOoOlAIQiGz
 NXRvum8vzoTeW5r9ghLOKkBuze1qi8PZdT+ztreaYcPPZBI9zPNfnZd29wCg4Sqo
 eWA46NgWICUsOpC3dkhAmdMEAKBUmh8p4kOZQq5LPv3y1fo+5MBI1gnawiJoO955
 nzVuisH5h1yaNjz0nkB5VtEG2Ub2mhBjckze4EP4FzPgIpOhSMdGfNh67rrByvv5
 DD/SBwjULSEGbBlywn462QDb1X0PxFX5C6IYK2Q6i/vbWkOFMI2dVuQX0PUq9zjN
 D5QJA/sFeXR7NcutCUaLknFCaV1cBTITJNurKn5Vm3QQq5s6R2cFTxdouHcSNkto
 EbhcAvMapxlWl146h7mAtLsXXa5s3wuMWq+igOXUk0wkcm8CqvSQtnVYl4Xy/Ll3
 zXKxtzKHZ1YxAdYQXGkesBuaSafCN6VYDFFSEwChHrwe1sV9obQiQXJ1biBTaGFy
 bWEgPGFydW5Ac2hhcm1hLWhvbWUubmV0PohiBBMRAgAiBQkDwmcABAsHAwIDFQID
 AxYCAQIeAQIXgAIZAQUCPmbLaAAKCRACRxrifREhgYRWAJwLdcAEvjkJf5bHy975
 R7q7Rp4KUACgq214dvKu35ysWriNNxu2jtIj1he0HkFydW4gU2hhcm1hIDxhcnVu
 QGZyZWVic2Qub3JnPohiBBMRAgAiBQI+ZsydAhsDBQkDwmcABAsHAwIDFQIDAxYC
 AQIeAQIXgAAKCRACRxrifREhgVrxAKCXiBsYhu++BPQX9prGf2BeKNYaswCfaS2Z
 eNyZsxSNedBb26k8ARWrZzq0I0FydW4gU2hhcm1hIDxhcnVuLnNoYXJtYUBpbnRl
 bC5jb20+iGIEExECACIFAj5q4pcCGwMFCQPCZwAECwcDAgMVAgMDFgIBAh4BAheA
 AAoJEAJHGuJ9ESGBbWIAnRAlo9PVZzdar5pmWDGspeyGk63ZAJ9X3x6ZQSD7uYeB
 ajKe61NpPAamJbkBDQQ+ZstqEAQAkgu4UWlgyF1IeMM+vwHQ43zik3Rn6nhpJXRb
 Arpg4QyVHQNQshVT4XsmSvcgw0TSUub0x5m23dqnhcoB/mk0kAIymVQiEaa4SLjI
 tTXd93yRvSgPd8JEUNFwcSE43ZJrrmSAqIc6MUJ0hI/pAeCFvRWYQ80+82xx30Vn
 fJLOJR8AAwUD/R2xFX5geJ7W8OyLtB5XQirkL1YPGLNNx4lyAPXFJc1s1KwfZ90q
 LYNw2qLRIacYKmY2X9BrWADXPrEZIDKljn+Awz34lSwerLHWwYDDoeyjfMt4Mmra
 MsV8UIjaBGO1ptbqEDSVeb1tiWQGa622pT5YaZp/r/OFdlmg+JvkAzHkiEwEGBEC
 AAwFAj5my2oFCQPCZwAACgkQAkca4n0RIYGWkgCgxhDAezhK5kiSC4N74g9ifsF2
 jl8AnjujFRJcMfV2R28jiZ2BS9mnvqjU
 =klyl
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.233. Norikatsu Shigemura <nork@FreeBSD.org>

 pub   1024D/7104EA4E 2005-02-14
       Key fingerprint = 9580 60A3 B58A 0864 79CB  779A 6FAE 229B 7104 EA4E
 uid                  Norikatsu Shigemura <nork@cityfujisawa.ne.jp>
 uid                  Norikatsu Shigemura <nork@ninth-nine.com>
 uid                  Norikatsu Shigemura <nork@FreeBSD.org>
 sub   4096g/EF56997E 2005-02-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =/u/r
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.234. Shteryana Shopova <syrinx@FreeBSD.org>

 pub   1024D/1C139BC5 2006-10-07
       Key fingerprint = B83D 2451 27AB B767 504F  CB85 4FB1 C88B 1C13 9BC5
 uid                  Shteryana Shopova (syrinx) <shteryana@FreeBSD.org>
 sub   2048g/6D2E9C98 2006-10-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEUn9lsRBADbufFsrk3YtL2jzdLYUufYV9goSp7joMMOwSLhSWf/98DoaW/d
 1bhwr9yAFfA81/ByuCEkigZl6jUW5AEEDuoJ4hxZG6th7OasSMCLHrGv4QCIDsiR
 Yo3TUFlh3Fg7SYZAxmGsMm44u/nB/0oZOWJeTzu4IkoG2QCfoRi+RUIEZwCgupdk
 xn2tovdQA+y5l7uxhm6MW2ED/Am3BVCM5EojGESa8QKTynKoWOzPFSvUvarqORru
 pEpmy5JdPjmf5mnfPvWcyccgAIi4VyuyGeqckFOJBBUaQ7w0Es7G9p+egp/e7UVC
 vgAVRKtSzix3TuXaaB04K3IJVY9vmEwTGO8Jy70Ab1hI/R4MbUUfzuWVaKUic9jB
 p3oRBAC8RgIM9zBTOtbsFTQ/LpiBL2X6oSRrJBvaLtFZEyG4aDGPxF/ESdfzIPrW
 3YePPinAgB1EhVawmP/uj3zhZQML3g69tVu9YhMhRb6C7v1h/nVC73wT3KDnGrPS
 eZzFhgHDr4zfEomXoR+HLjP3u9EMguyzlCfEO58QtTgeXKzZcrQyU2h0ZXJ5YW5h
 IFNob3BvdmEgKHN5cmlueCkgPHNodGVyeWFuYUBGcmVlQlNELm9yZz6IYAQTEQIA
 IAUCRSf2WwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEE+xyIscE5vFGEEA
 nAhEEHq5H3tzKRdgX+PFn8wyzSgqAJsECHYU7maqvBfs8l34AOwuoK+TR7kCDQRF
 J/Z0EAgAxyVxRfbMBrSUGeCXI1FSWvqZJkrLUeQ2aCN0FiEmrjUMqTgkiZcxortS
 BS9Iuk8aEXv7d4S6qhJLfidM5XgxZs/wXFHNO30S+HHw5EwQuSDg1OGM/vY2i5y0
 hJqZuQos3SpUWx2Hl3y/BlExt+D5jwFyU9hUE1nNru3SltmryJwr+6PDFfom5iYc
 1FZpfnm60ZPK0cWDYk04uMYebgXd55acArmPvZMdzEYl/ChrB2GEv/JTVCJZZY0q
 rfI7WE2wwPb6/+WK+QINb9fqAdGsOlpOgkuFo7Xu+iKdH/EDGWnKQkLMPClM1xMK
 dclJKMz5y+l/GB/dTYWH4NtGeiIk5wADBwf/TLTluCRCFKDHkBuV68mJs/ShXpXw
 tnhaFF5snAmmtAH0zk81byw4Wt1+MUMYZ1rYrmhqyhXcqnAcHYatUbj2lyvzvCxo
 W2qdW6CE+0bj/pCM41oeRZi4LzJx3pYwSS2fPWaBWAeWZ6qLrHWT8lc0RrJMlteJ
 kDnchDP9AVxmi4bvpmUbNPdERDEE66XFtQ3zXpzmb0hLV1Hcv60KVYd3zzRADOaM
 tRnRMN53/yC0C+DDDoV6H4TJwxiTo5MTT7s9a9H/EfMY40RxFGjwojRukCTGWpuh
 pJf2WBCsnvBqVsqJLeOHyxwlbJhm/KXVRbFoAp6rZTshQ8M2kplmygIJEYhJBBgR
 AgAJBQJFJ/Z0AhsMAAoJEE+xyIscE5vFzHMAnjcjCi17pcNEGqdUuGWLXFCyQ5X/
 AKCNc4ZJinPdFRM5W3TXJmKRuGTOVw==
 =DE3R
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.235. Vanilla I. Shu <vanilla@FreeBSD.org>

 pub  1024D/ACE75853 2001-11-20 Vanilla I. Shu <vanilla@FreeBSD.org>
      Key fingerprint = 290F 9DB8 42A3 6257 5D9A  5585 B25A 909E ACE7 5853
 sub  1024g/CE695D0E 2001-11-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDv5ys0RBACm/dkRFFWNFb6pafzsHX3YHfyYBQAhyoT5ZPvvh7e6RdHYdxYc
 tYjgtOid4jL20Uz7kXYwT5OVYo/l9j/AqknacYoboO5AHcJrfO3QjfztJaorUSqv
 w9dv6DSOQWwTmexeshp6v5aEsOpDbfPtUnFBwcJe5lOBsokk2CqkzI/XqwCgv49G
 uNLbdtIN87CrUwyiLG5nsSED/35/A/9b/KNwjBoBbheCJDByHNPd9svQIpVWTuk5
 i5RKVQQET4ZD5tPQWPnSZ95ztkkwcjjOak+esHK85yTYXXjrfcP7JiE3HIZhyj3S
 dxWaOFEbSE3Xc0BT+8BOAPFfb2WMSdCQFowkRqbMiFudLnz4tZnBmTQcuxqp4G7S
 AFh8A/4jBhhkKaw0KeWtkFKugVgUWZNWZ54aJhUaLg5wGbSTNME74YLO0Xc+wkjY
 id3gG5ayJyecZXCMUf175/ZaSPeNRCBOfMjDnl3G05b/huBFUnXzxTkWCcmopOwW
 5tz4C69UVP1UHg4XMu+f6D48srIaFu+DOMTwniL95vqcGkCUJrQkVmFuaWxsYSBJ
 LiBTaHUgPHZhbmlsbGFARnJlZUJTRC5vcmc+iFcEExECABcFAjv5ys0FCwcKAwQD
 FQMCAxYCAQIXgAAKCRCyWpCerOdYU/oHAJ4kKjpX6iMF1Y0FjPMyFiyUlgjT7ACf
 a3czQMrflxJC/VNuzMAmzA19j3y5AQ0EO/nKzRAEALHq1lBY0OBQBeV7sGOvTaBN
 itMZeVDrGDYUQ9xunaDsEHfz2fD3jXCZLaUayv4LZeWzRr4DbnK4F0AmZLR1v5h3
 LxBuvqHPRma5RyyFRftwTNHM+DWu6TSqnE43QS7Ci+z8ua96CmcDa+PnEfubyNLE
 dco8gfE4oHDqni1R2qVfAAMFA/4uVSYj/DvIzckbZ05FjG+pg4HKsyxyFeFsrm9D
 8JD9tC26k4YxLG5FPBdKRsDrN/lZbnLWHTtZqhE3WlX6DRlea93T9Vi2skbujKcN
 mbao5pyVXWl1dboFquP8ku91CRTZvmdLF6IBnPo0LfOu4jD6DsD5O0UZ7lD/Y+6p
 8WcDfohGBBgRAgAGBQI7+crNAAoJELJakJ6s51hTsJUAoIB80SN0z90ocSdxYGwl
 xkOSm2cvAJ93DigXb3moOsw3BRLlLPQRS6TZxg==
 =aR5H
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.236. Bruce M. Simpson <bms@FreeBSD.org>

 pub  1024D/860DB53B 2003-08-06 Bruce M Simpson <bms@freebsd.org>
      Key fingerprint = 0D5F 1571 44DF 51B7 8B12  041E B9E5 2901 860D B53B
 sub  2048g/A2A32D8B 2003-08-06 [expires: 2006-08-05]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD8xcj4RBADp/ttN/vrU8xXimyZDEJ3NbJXMRAdWin8hhY5cVDT6n6t6Kih2
 5Z+orVfRUA77yyYprxpkMKJvfsRspWvJeM9/7duQe6C7CSUNwB3bXCj5Q7PG9Oqa
 a6ZNPQ8k0EGZkFRgbbkru8wpcttMr4ngsdIm5cU7Y/bk3O2L8kh/Do1XwwCgraUA
 0z9KKZR+PpMgM6YXmAy0fh0D/3EP//MLIF7RW+wyabjmTGxMB9RapZXlZLTjFFeX
 sOrAhgcjFodwigDHEqLtG5I75wz+z2vuyaLtTPHYy9fkFxKXNE8wNWj++6GMJO3l
 OWRyWNlDLX0d3D22vVWOeh/rLq+PvsEHso1TnOJrYn4Dn4VwVXzSIaGmzGAPuPoO
 KaT7A/9Pgc8gwGPtG31yrp6AixoMZ32wVdxuqndD3M9XK+jtcdDtKvICQcMWCL5T
 E8dwmb2qzN13bBILJHktut5JvjgOgYOJeLZKPAMRZz4MON7KcKNZKmPBuNw1a6cF
 KGkBJfbCh1GIx7DyF/CcFeg4/7IhQoANYZQNc9Zm/tRbg531SLQhQnJ1Y2UgTSBT
 aW1wc29uIDxibXNAZnJlZWJzZC5vcmc+iGEEExECACEFAj8xcj4FCQWjmoAGCwkI
 BwMCAxUCAwMWAgECHgECF4AACgkQueUpAYYNtTv0bgCgkdyW3YFhooTeMExQJT5Q
 FbCTYS4AnReju20M/WngliTt9bdbnbmPeGFOuQINBD8xclEQCADhc4W1TgKJBO6M
 bEnWC16IXR3U8sXU7meMMbclb5vWt3j1jHVczrYVdkEyGxzu+ydxVlPhdGXtxT1W
 8CBjXsfz8DRKs9nMttqPj5u6KQdr+O0zWiZZkoqOdT29X7WZNKWQreKK10PgvmDu
 1rzf0Y87B7M0qnqjKjhqinVhLrOHqJIwfFQmB/E06MOhE3BQqYXc5qvBuq4U9y7X
 Qt/Cxfobw47iwAJEJIExai4mMsbXXtydsj9O1tg20c7IBzJEEDecOFJPhIKtcQ7p
 kRNjVGwAkQhWmXsPZHKkMjgnkhTmH0L7MT2YGK6LHvLiuAbjULYiSZ7WLXMDe3iJ
 al4lDNSrAAMGB/9X9K1Dmdu6pWOub3zkgNybFFh8OoguKJkdO/bh1RejzeNfI9Q1
 M8gO3ePzgXF3+BgJIblOA77t6OhNUQLRcjSs/xZwXG5KVQjRF3XJGkLZQIl3JGmB
 i5eNE/rBIMHSPn4GM8FSDZ8bPGzgaTBhEIos/8nCMpyxf70f+gsbjjW/Dq2HXHNr
 wToHezXX1LzzCqIl2fJgubrMXVbKYQBLy7d/IQnfZp1sGfvTcSJSZXT3wo6MH1EP
 jUpwmfVOGDN1NDQTbuu1vYqSETt2xzIq4R/+y8/xbm8YKBYDCL2EyCGQcwWhFU4C
 RAgXFkuWPiXx/PjfYC4YpKd57/7xgRO9i++LiEwEGBECAAwFAj8xclEFCQWjmoAA
 CgkQueUpAYYNtTtwzQCfc42CUSzItmXxtmWaVRxFSbnwJTsAoKPQ1LsUmEHNo+1s
 X7criQoU0Axa
 =iL/w
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.237. Dmitry Sivachenko <demon@FreeBSD.org>

 pub  1024D/13D5DF80 2002-03-18 Dmitry Sivachenko <mitya@cavia.pp.ru>
      Key fingerprint = 72A9 12C9 BB02 46D4 4B13  E5FE 1194 9963 13D5 DF80
 uid                            Dmitry S. Sivachenko <demon@FreeBSD.org>
 sub  1024g/060F6DBD 2002-03-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDyVYkARBAC2Z/8odq3zwRIQZ9XOF4ZoQ8ITJRrTUwwYjwOf4Kz6gTH+zIGt
 Q57m5w1Scse3J/fDdIZzw0gJgH0XRpKOonWi23di4B3Oyvrdr1Zm6OlqUjoty8CC
 7jo5WlLF/05Vai2HCUmFeqiukCN0mfm3Fd8S+hf1IpE1gaIxCKNvYaf14wCgpoVG
 Tqi+lIMCktV/vxUf3h7KgOsD/3nBeANz3U+Izr9g/AsF/FnHXeawl2m7USaIB7b1
 4CFrQp8FDl6TCAtPHQyQ6pdnh0HZ3h+7cfPB1poRaXUvDimQZR9KHZO9uIilpC2n
 MdBjbkXmvVQ5FhOJz49cXw51Lck11n/+OuP4N4TcIHdt0DQJoUrGIB6X6Op9aOrP
 Ob70A/sFsFfebYdfH8loLsJkHU8VbB2Y0KZBXSnhysQ9muvj1HqT+n66o/3SliCE
 R3cNVMgg51pqxzUC0o6qTVKJbfOrI5b2tbYjvx87ejugQwafhKu8t1liDuUYQK0Q
 S549pzLKUr/NUvJaYU//6QlFIPNSzwB6x4wjrWAKBv6Vn+x0c7QoRG1pdHJ5IFMu
 IFNpdmFjaGVua28gPGRlbW9uQEZyZWVCU0Qub3JnPohXBBMRAgAXBQI8lWJABQsH
 CgMEAxUDAgMWAgECF4AACgkQEZSZYxPV34DFVgCfREoIUfpKaEeGyzl0zKThVC7J
 XccAnjiB85SwuNAxMraQuGDJXojukUfwtCVEbWl0cnkgU2l2YWNoZW5rbyA8bWl0
 eWFAY2F2aWEucHAucnU+iFcEExECABcFAjyVY4cFCwcKAwQDFQMCAxYCAQIXgAAK
 CRARlJljE9XfgA6GAJ9RFwXlNqYap2SI14IPRjX9ZAzvjACeOC/Elh0HkwQ2HZMT
 edpgzOuknUK5AQ0EPJViRRAEAO4VdFfYGd/amgG2MDGqD269Kb5vTFbS5mDczgjM
 6gXZgOjhbvj3x2auo+Pfos6M/bOtHuIk7QFOeOEJ1wcg8wgE3L3kFQPeEPeOgKBk
 /eA1ExIW3hiPeuwNxT3iWEv0GF/rvCSeSK3nuuDBNmkSpJ4LHIyO8Kf5YJNp8+6D
 yJ8rAAMFA/4jaulRHxSsWlFIm3gpBR9aiXGGX1pZTuJpXqjAQcRzDa9cuVatiSJS
 H9wzfE8R4353s5HpaY3AkVRjY6s9AB8bygGdUCQjuIuifTS4+tG/wmaXNgyqBqaB
 6V9gTgfW/7XqcJUGeLLMUpccSRZhlQvHd18aTfPWPB49xu2+arw6P4hGBBgRAgAG
 BQI8lWJFAAoJEBGUmWMT1d+AYlgAoKZWZs7rDLdQbn2d0CVwmWb6hQLhAJ9E/r8N
 n3jf2PI8Psl2wtgvWazpaA==
 =mkxU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.238. Jesper Skriver <jesper@FreeBSD.org>

 pub  1024D/F9561C31 2001-03-09 Jesper Skriver <jesper@FreeBSD.org>
      Key fingerprint = 6B88 9CE8 66E9 E631 C9C5  5EB4 22AB F0EC F956 1C31
 uid                            Jesper Skriver <jesper@skriver.dk>
 uid                            Jesper Skriver <jesper@wheel.dk>
 sub  1024g/777C378C 2001-03-09

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 Crfzumk=
 =Ru0+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.239. Ville Skytta: <scop@FreeBSD.org>

 pub  1024D/BCD241CB 2002-04-07 Ville Skytta: <ville.skytta@iki.fi>
      Key fingerprint = 4E0D EBAB 3106 F1FA 3FA9  B875 D98C D635 BCD2 41CB
 uid                            Ville Skytta: <ville.skytta@xemacs.org>
 uid                            Ville Skytta: <scop@FreeBSD.org>
 sub  2048g/9426F4D1 2002-04-07

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (GNU/Linux)

 mQGiBDywu5YRBACKxY/5WzdUtpL2aK2Yy/Yde2spYiEP2vKj3bs+ovV7a9129lki
 ldCu8PhoJO+x+96+AwbrR/T5FlXyQrInMa9U5os/8/HQjTXtY/oeq+UNDNFZrnMR
 Gu0zYICbzgd1rW/tnZJBkB3X2Ao6k0hSATGmP5/sowT7EBSdaM7ZhhqOywCg5A5n
 J7+062MfzdS/3KoSn+Utex8D/2BN/BMLvrItQBUjy0tn8Vsomx+FHbFKOm1cuOeq
 smhsOmsANwIafiZnK4+SnQlVbXJLM6exNTqSimH93y7Q9BX7hmWYl0XVpUui0mBR
 UrVG00PEa0jTLasOkvlyYBS1En4gZ5J2ArE2cYFPkv7jndqJ/pAAZkG+tQnXJ8l5
 g0SLA/4tJHLJ6kPad98V3cVbTfhY2Dn/i+QbHvzBbBj+bETLEUdqOKzADGrWoJeE
 fADfxYi24wHkpH3U781p4SldZpOUvkyYj7YmjqZP0AH6SsKI3i52z1BDQF49gRcD
 uc0sSmv57yvjKCk1Cehen4/qaVcqXWTZ5NfyGb+hbHLtA2FxSrQjVmlsbGUgU2t5
 dHTDpCA8dmlsbGUuc2t5dHRhQGlraS5maT6IWgQTEQIAGgULBwoDBAMVAwIDFgIB
 AheAAhkBBQI8sLuXAAoJENmM1jW80kHL8KkAn1yTiwsMLq9GsqA44hkh1Sk0etM/
 AJ9BiDSqgX0S/wzyXAqfYcsmxS96qbQnVmlsbGUgU2t5dHTDpCA8dmlsbGUuc2t5
 dHRhQHhlbWFjcy5vcmc+iFcEExECABcFAj0dWzwFCwcKAwQDFQMCAxYCAQIXgAAK
 CRDZjNY1vNJBywFtAJ9NCVHRa6GxtfTxae+6ZkTh08xQZQCfcGNMwhcSGJUyjKI2
 eYucgrkwp2C0IFZpbGxlIFNreXR0w6QgPHNjb3BARnJlZUJTRC5vcmc+iFwEExEC
 ABwFAj0di4oCGwMECwcDAgMVAgMDFgIBAh4BAheAAAoJENmM1jW80kHLzoYAoLqR
 3unds+O73Z3EppJna4gECkQ0AJ0Uye7ZXLMTJo7pNmZSBSz6bA/qFLkCDQQ8sLvS
 EAgAinenfe1g5Cdp8bf72+idBePq0zHyPUOpCuFGkiKXecXpgQUHCVYM8IiafB1M
 Or9V97vy1H56sr+HaBsC75mpuPC7lnltoY+zq0zIkNbi20+p/546W7A5MV66xtTx
 D6uUSyZ3jksAaVch+6yQNNxr3CDWiNSjomkK1ExPsjaPAA82L4yExAJJGwUYAPOS
 B1Gw6N3dUtoNuQwJdcw8fjsaRektXsHm6Nnm++3gB0YJ4/x3gcvxlNlONHNp5vdW
 msQAJtWj4isSMfqi6Y4SQsw2MWOKrYr8Lt++m4cQC6/VZXafTR/TrDZCqYhwovyX
 vgLMdKfxTZLqsyZwgWDxFKOEewADBQf8CCEh65lRfWQG3MopboOs2fFp3BsfVMvA
 stV5AYktLHvwGXTW0rx7sCdb3kBtKjiuNFob3gis2Nd05NUxFrzrZsyaktyDiZmT
 gjmEL1LvodDg/mXLRQgl3QDzUL1nlfFQRkcKqlDfCYezbgYFxCy4EGsC86cf8s8F
 ZI0hyXXY+zir+xJ/w4KBtL+cY5LJExh0FyPfNnL+tXUthRuN9wxZwVyQ9I4RTlkv
 ybb8VTWEgzkIf5BiDZalvcOJNAujptlgz2cLnV4Kzu55Xy7jOi5YfYjMbSDa6W5c
 vO/wbcAG3gwZOoeHBRjwTNkn4iBkDPq71o1LDDxHvWUVAO+jU3TrZYhGBBgRAgAG
 BQI8sLvSAAoJENmM1jW80kHL1RMAoNsmDIuxlUf3YwjAr/fSqBOKWgN0AKDc0CBV
 uZAqlAL0tDv8Fiz3HvICMQ==
 =mEvy
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.240. Andrey Slusar <anray@FreeBSD.org>

 pub   1024D/AE7B5418 2005-12-12
       Key fingerprint = DE70 C24B 55A0 4A06 68A1  D425 3C59 9A9B AE7B 5418
 uid                  Andrey Slusar <anray@ext.by>
 uid                  Andrey Slusar <anrays@gmail.com>
 uid                  Andrey Slusar <anray@FreeBSD.org>
 sub   2048g/7D0EB77D 2005-12-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEOdg/YRBACkP7DeG+wypqbAvKYmIYMBHsYFCmIf5928MvpCgwO4idtg76IX
 Qd/AQH0sF2uFJiikI9NiJuq3OUXsyRk+7xltLLrgzl7/0GTT6jej8tWFH0AU1/0r
 nYhUJ/svVe+QNNEbMOvCCcZLslv4/fuak4Ilvgcb/SAir8iUL+nfNzwLwwCgw+fG
 2DBpULmZtyMUMZYwyi2UQ2cD/jycHnx1+AHLt24OajcWBoBG88DlcK3ERpg/J+D3
 PYoNfs4qcEhU4UVQw5vhMXBnWxD+BiZf6yrh/GRay11oqShMWl/B4UQrZZBwXBVN
 Lvx4aY6LRA/DAUd0R2CUIwsjaaeBQ2gmvISau4UjtE1ezNI5s/E7oFDNDKkv06Z2
 hrucA/9G3+UlrLhDWd2+VMt99O5FFEhtHbClMUXIhXYwFS/41zy7cGf9p4wA+IQC
 SeXns1bvdZYBxPAYTgDK0XGP8yi0TMpICcXB4v9gkqKIIuO3scB3mH+We66RG5mI
 7sls5BoJ3ARfsJuidRS1Uu0TXqCTcj2NTCtDNWd82nRarNpDwLQgQW5kcmV5IFNs
 dXNhciA8YW5yYXlzQGdtYWlsLmNvbT6IYAQTEQIAIAUCQ52D9gIbAwYLCQgHAwIE
 FQIIAwQWAgMBAh4BAheAAAoJEDxZmpuue1QYMTQAnRGPeBTIOHdEj4nOmVtECGhv
 jpqsAJ4pcMFoOwSyCqy5YXoetkQWrsq3IrQhQW5kcmV5IFNsdXNhciA8YW5yYXlA
 RnJlZUJTRC5vcmc+iGAEExECACAFAkOdhSwCGwMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRA8WZqbrntUGGMkAJ45WS+CK9Uh2UYk3kGG6/jmx3kVFACgl3ALZehS
 E1Z1ifNha7XLh8C+U3G0HEFuZHJleSBTbHVzYXIgPGFucmF5QGV4dC5ieT6IYAQT
 EQIAIAUCQ52FUAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEDxZmpuue1QY
 MzsAnA1T9Wkp8yaxQmPBuuvZNrTdJOBjAJ0TJrwVeQW/+3zffBICU+rptKA8xLkC
 DQRDnYP9EAgAjavYUHgBttL7+qFwfeOJ3oW+sNVNsMp4VGWvy6QeVCeFvVK+Kpb/
 eN9ScAFJM+8wzhNHv3eyXFht0jwSadX48a0FzcYApm+pP3OH6y4Osxhz27P2tc2u
 yzKMV19nZz28cikY2mtH3Y2GtSyn8pOIL2Ar4sc+hK1LnszGTPf6YgLSBlJSnGH5
 +TMg1Pxq/CSDIq4zEv9IyBLlbuK+w1/fqDzLBT5L51FdKDUpsCBZNPaRiin+ZkBx
 LI742GusIYz+aIcwsRBDONnWdemAHbtSFDxMup5SSEvlAtEU5O0gO6bZx3tv+WZT
 6EJ66QsE5IszzTGkw0qK/H/BrsEbyOPbOwADBQf9FOrU6qF1Zj/ONad4vzbjDrn5
 nI1vnrBkJ2QJnMM/d6V2ItUVjz9myqXTgteERmwN60DD1jrTqsw5xWHJ/rjJCoW6
 mUHWjVkUram3OL/HO96t8zmTZDynrGXfnzLqykkLgJVsVmoU/1OCusY6h0CMAiWr
 altooE6mD4dpBQq1svwJEe98/X97LJix0J8W1QLOwOi8lD5kApFf6feTRCzJKcOy
 Szr3NiiwYGGRyHDQhe13KiGoJZQbhoJlbpS7krBTAxyUll6RRtQmlITLF5wmP0jV
 JWPN2tZ5BdmqYEqOoH4h6Dj+D1glXT19YN6kh+CV1w/d6iWWiB1lDXwDOQMtFYhJ
 BBgRAgAJBQJDnYP9AhsMAAoJEDxZmpuue1QY+tUAoK4RQLo2F+0c9PlfrfUOYpOk
 GAzYAJ0dMZ6xeDy4UKlIBdDq4KPZk8IGzQ==
 =vOBB
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.241. Gleb Smirnoff <glebius@FreeBSD.org>

 pub   1024D/1949DC80 2003-08-25
       Key fingerprint = 872C E14A 2F03 A3E8 D882  026E 5DE4 D7FE 1949 DC80
 uid                  Gleb Smirnoff <glebius@FreeBSD.org>
 uid                  Gleb Smirnoff <glebius@cell.sick.ru>
 uid                  Gleb Smirnoff <glebius@bestcom.ru>
 uid                  Gleb Smirnoff <glebius@rambler-co.ru>
 uid                  Gleb Smirnoff <glebius@freebsd.org>
 uid                  Gleb Smirnoff <glebius@freebsd.int.ru>
 sub   1024g/A05118BD 2003-08-25

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =buTJ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.242. Ken Smith <kensmith@FreeBSD.org>

 pub  1024D/29AEA7F6 2003-12-02 Ken Smith <kensmith@cse.buffalo.edu>
      Key fingerprint = 4AB7 D302 0753 8215 31E7  F1AD FC6D 7855 29AE A7F6
 uid                            Ken Smith <kensmith@freebsd.org>
 sub  1024g/0D509C6C 2003-12-02

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD/MDZIRBACfyWbQW/cZnu504r57DAQbCbTYNG7V/TgfZwphIPyC8YnLtmJv
 vLdtl7+ToiG7UJUJsBE9OJdb1qA7JP5+jha/TlzIAUMW8doWNyI52nM1zHzBAZVE
 aB4Gxy7pib9yBsrGYiLbuV5YfB7TUyea31OXpZ4jPl1E6RxlYdVuzEhq0wCgnOeC
 SuO0cJZMXisY7DhoF1Q8ucEEAIALzShJ6bbjABbcvMWmoRwXvIcBsAcjKSdRcIp0
 AP+9i3PSZkNXV7rfYM3+SydTa3sJIVBbdXChQakcZqu9+rmfL53rErErYuRwKqhX
 mkp4+3GO7cKm0Oya1xLF9es/OfkKcQ9LxkEytNEnU7xlUNoP8fkCMJcBIwagzPfY
 7UAzBACEwGP/o1e0R36jOAjrUZsxe63Zopz5138bYdZtmsqwI+QHK6+/tS5I7FCL
 EQZL6fEjR7gF1lcj3gC2nypjO1aqodx0hShlNnz9d3uJ0q8EChjJuc30UhjgTcbb
 ZQv3hssKHkvTJ5ch0x+ohYCfH+Gcd8jbXCZvvS8PcI66DRaz3rQgS2VuIFNtaXRo
 IDxrZW5zbWl0aEBmcmVlYnNkLm9yZz6IXgQTEQIAHgUCP8wW5gIbAwYLCQgHAwID
 FQIDAxYCAQIeAQIXgAAKCRD8bXhVKa6n9nfpAJ9MHcwNehlbFRJn8B9tlLBE2JvU
 aQCeLuore1PhiLZPjHriz0/npGn9xDuIRgQTEQIABgUCQLQblAAKCRDYyjFxW6BS
 wyFIAJkBI9/2PBvvTvB0FZUF2yd3JEQJMgCgpWVGTdChec2z/YGMQ/EeTgNDThy0
 JEtlbiBTbWl0aCA8a2Vuc21pdGhAY3NlLmJ1ZmZhbG8uZWR1PohhBBMRAgAhAhsD
 BgsJCAcDAgMVAgMDFgIBAh4BAheABQI/zB/pAhkBAAoJEPxteFUprqf2oVkAnj0Y
 vcFOkVU9JWyJJKieWL/+OuNSAJkBvi/uFt2RgkNgUOvHR61SxZrGeYhGBBMRAgAG
 BQJAtBtxAAoJENjKMXFboFLDvxkAn21uVgtvwLN82vOpKTvBzwAUVK/gAKCKEQDk
 vfyMyQZayoFeC8cMagaUCbkBDQQ/zA2UEAQAqYnqd58qHyrKfsw3SrTE74/4qneU
 ra7FY74jcUhGhrxOElG5hXrHHEHo+0M+0zFwhqedecj2GZbrzGEl5SxVsme3slAf
 Gt5OaAk/ojOY5d5rTezG5v7jSr4EX0JKDkdlve8RozHsutXznsXmUY/BfO1qACek
 herQeczznycJPZ8AAwUD/1MF+jo626W+4/gMgjgCQ+saOiNI6AnGlS879MUjV0Ef
 j6aPfAJ5Xi7zNqkM+HdNBxjPtyxIK8RqmdAjHDMR8FjlZjf+svwuL2CfXk4jCk02
 OXD4dxJK74w/ZTK2kSW1VW63+5K1lgsRmZvnTpGZ4ijxj4H0r2bJFQ7iUd2kNxpO
 iEkEGBECAAkFAj/MDZQCGwwACgkQ/G14VSmup/YeOgCfcaCQpDfKaEvYiw7XJryW
 b4OXclEAnArceW10G489Csi2QR94q7clHU0G
 =gLKU
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.243. Ben Smithurst <ben@FreeBSD.org>

 pub  1024D/2CEF442C 2001-07-11 Ben Smithurst <ben@LSRfm.com>
      Key fingerprint = 355D 0FFF B83A 90A9 D648  E409 6CFC C9FB 2CEF 442C
 uid                            Ben Smithurst <ben@vinosystems.com>
 uid                            Ben Smithurst <ben@smithurst.org>
 uid                            Ben Smithurst <ben@FreeBSD.org>
 uid                            Ben Smithurst <csxbcs@comp.leeds.ac.uk>
 uid                            Ben Smithurst <ben@scientia.demon.co.uk>
 sub  1024g/347071FF 2001-07-11

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 =D508
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.244. Dag-Erling C. Smo/rgrav <des@FreeBSD.org>

 pub   1024D/64EBE220 2006-11-11 [expires: 2009-11-10]
       Key fingerprint = 3A1C 8E68 952C 3305 6984  6486 30D4 3A6E 64EB E220
 uid                  Dag-Erling Smrrgrav <des@des.no>
 uid                  Dag-Erling Smrrgrav <des@freebsd.org>
 uid                  [jpeg image of size 3315]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 Xs6/KdvxlqedD9DedjAIXDY=
 =qa1a
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.245. Maxim Sobolev <sobomax@FreeBSD.org>

 pub  1024D/888205AF 2001-11-21 Maxim Sobolev <sobomax@FreeBSD.org>
      Key fingerprint = 85C9 DCB0 6828 087C C977  3034 A0DB B9B7 8882 05AF
 uid                            Maxim Sobolev <sobomax@mail.ru>
 uid                            Maxim Sobolev <sobomax@altavista.net>
 uid                            Maxim Sobolev <vegacap@i.com.ua>

 pub  1024D/468EE6D8 2003-03-21 Maxim Sobolev <sobomax@portaone.com>
      Key fingerprint = 711B D315 3360 A58F 9A0E  89DB 6D40 2558 468E E6D8
 uid                            Maxim Sobolev <sobomax@FreeBSD.org>
 uid                            Maxim Sobolev <sobomax@mail.ru>
 uid                            Maxim Sobolev <vegacap@i.com.ua>

 pub  1024D/6BEC980A 2004-02-13 Maxim Sobolev <sobomax@portaone.com>
      Key fingerprint = 09D5 47B4 8D23 626F B643  76EB DFEE 3794 6BEC 980A
 uid                            Maxim Sobolev <sobomax@FreeBSD.org>
 uid                            Maksym Sobolyev (It's how they call me in official documents. Pretty lame...) <sobomax@portaone.com>
 uid                            Maksym Sobolyev (It's how they call me in official documents. Pretty lame...) <sobomax@FreeBSD.org>
 sub  2048g/16D049AB 2004-02-13 [expires: 2005-02-12]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDv7rWERBADAnp/1Nc02OyU3eiXisqYDw2CaFNG7CpTNalQbJCX9KDuCzNbh
 RKS7slRG0Cp/IsCIoJ0WLugslAZHBtLigl5XxdVeTYKJfXV1gKXLBnzW942oswUu
 zMeZzpcrCYHK7AVaTtZJEQTDf/SIx/ZYu8DJPv/7m9I7aY3EYXQsHIqj7wCghRzg
 vhbpzqR9KiIsH82z5ctlGHUD/AixgJJ6dCf/bxIq3siaijMs1fM1JNLTIL5W7i+I
 LWUjM9PJztfasAZMj4kXjimZl9345CW+0+jV2oe7y+AFWGZUsQHKb3azruH9frZc
 a6JSUOwvy4mQjMwtQC2ngJsUQGqrfGl3DLaa4hJzlgQ6i0PHTN1ljKvrMNgtgnZg
 dypDBAClZuCCjn1RffnM4FzWuDZLYL/wLhqbtzMNvQXe5gwnDeg1QM1xgfUtaaa0
 7f071Ayv+K54wVk+7XIRZLP0Kbgo07kJlXw5AzznzY4167RkcrifLPtG4nbDQCaS
 QreYjUG902h8T7ckkmTV6VAPGUEh/ms9aAeFxAg2XOXiwCaYerQfTWF4aW0gU29i
 b2xldiA8c29ib21heEBtYWlsLnJ1PohlBBMRAgAdBQI8INsQBQkB4TOABQsHCgME
 AxUDAgMWAgECF4AAEgkQoNu5t4iCBa8HZUdQRwABAZRqAJ4ypOHGqZA7mf+m+R1k
 kUCSxtirZACeIXLS54rLLTauEHQtuHfNKEQolCC0JU1heGltIFNvYm9sZXYgPHNv
 Ym9tYXhAYWx0YXZpc3RhLm5ldD6IZQQTEQIAHQUCPDcdsAUJAeEzgAULBwoDBAMV
 AwIDFgIBAheAABIJEKDbubeIggWvB2VHUEcAAQEdMQCgg67lgOG0NlSy6RlNxeqT
 mREvqt0AnjoRX4MwyfWsHmD63XoByM5XjdketCBNYXhpbSBTb2JvbGV2IDx2ZWdh
 Y2FwQGkuY29tLnVhPohlBBMRAgAdBQI8Nx30BQkB4TOABQsHCgMEAxUDAgMWAgEC
 F4AAEgkQoNu5t4iCBa8HZUdQRwABAYJvAJsGythE5SUctWSmAYIxYHagnEUU/gCd
 FQv6AywESIEMOLK5iaONMFb5NGO0I01heGltIFNvYm9sZXYgPHNvYm9tYXhARnJl
 ZUJTRC5vcmc+iGUEExECAB0FAjw3HwsFCQHhM4AFCwcKAwQDFQMCAxYCAQIXgAAS
 CRCg27m3iIIFrwdlR1BHAAEBbJQAn1tcab5GD07XKi33AdcyP521kGhHAJ9eo7wb
 PMLk4e7y6ZiQEeMd4DF1/5kBogQ+e3iWEQQAsxiirVfUk5G6X5YyhHT3pX2Tt6n0
 F5hj36BLxU/Cbn7viUMP2x6qafIolWC5wW3JEklsql3wXovUl6Uuaah6S57XD+45
 YNAztjJ2rOp4wW9KD6i7IWkbtgz0eRLQBNzEvcvdMfGqH/1XujGn033Q3tpgT8sH
 WfbT68DXuaUTJCMAoJhav+twkmoLhT0o5KSjSgcmtjOvA/4oJZ9D5H4rSRKWhQNG
 5A5FZlNX1q7K9/WYcSKWsE6R+jnOFigZOt/wEXA4tUiI1b7SaVnSPNgQ26iMPDIZ
 uauEmvjQmVDSdO0ZsS545VQ9xJtksJdHZXnTVKWyTNiRWGHWT3ucR2XFJ40U+so/
 AxKch0N5CqtYy9A27aO6KLqBOwP9GJUvIE1zB5plWP70d9Kii6Gf9c84VwK8sYcd
 w45M4DozPUJqMUcfP4ycvK5AY80MRvNr+UP0VgfpuKElh2JCUpgj9XTE48vuAdyd
 3q6lVEC4SpjZu29oFNyzcX0dILPHy49pTaNOUK7EQgdS1S7OWksP6XCWQ+Fmd8E7
 vtcT+BO0JE1heGltIFNvYm9sZXYgPHNvYm9tYXhAcG9ydGFvbmUuY29tPohiBBMR
 AgAiBQkB4TOABAsHAwIDFQIDAxYCAQIeAQIXgAIZAQUCPnt4lwAKCRBtQCVYRo7m
 2FP7AJ9QC+MpLfOgfrBZ62ylXJbgV9rSfQCbB+djelAeWNwsPCSI1ztdLW71gIW0
 I01heGltIFNvYm9sZXYgPHNvYm9tYXhARnJlZUJTRC5vcmc+iGIEExECACIFAj57
 eW8CGwMFCQHhM4AECwcDAgMVAgMDFgIBAh4BAheAAAoJEG1AJVhGjubYpG8An1bD
 +5ViByos/wyRoQ3fL5eRnPbYAJ9orRZWWPheXO7sO4kRB4p0tUGZQ7QfTWF4aW0g
 U29ib2xldiA8c29ib21heEBtYWlsLnJ1PohiBBMRAgAiBQI+e3mWAhsDBQkB4TOA
 BAsHAwIDFQIDAxYCAQIeAQIXgAAKCRBtQCVYRo7m2EMFAJ0SKWhO8mbbRHNjJZhr
 Z6gRvtM7RACfXwBb7dbxG1ZEcJHfvaJxo/VxF2G0IE1heGltIFNvYm9sZXYgPHZl
 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
 =Z1Sd
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.246. Brian Somers <brian@FreeBSD.org>

 pub  1024R/666A7421 1997-04-30 Brian Somers <brian@freebsd-services.com>
      Key fingerprint = 2D 91 BD C2 94 2C 46 8F  8F 09 C4 FC AD 12 3B 21
 uid                            Brian Somers <brian@awfulhak.org>
 uid                            Brian Somers <brian@FreeBSD.org>
 uid                            Brian Somers <brian@OpenBSD.org>
 uid                            Brian Somers <brian@uk.FreeBSD.org>
 uid                            Brian Somers <brian@uk.OpenBSD.org>

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 3mPjEgv3yQyXxmScDQ==
 =g4uu
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.247. Nicolas Souchu <nsouch@FreeBSD.org>

 pub  1024D/C744F18B 2002-02-13 Nicholas Souchu <nsouch@freebsd.org>
      Key fingerprint = 992A 144F AC0F 40BA 55AE  DE6D 752D 0A6C C744 F18B
 sub  1024g/90BD3231 2002-02-13

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: Pour information voir http://www.gnupg.org

 mQGiBDxq4ZARBACJSN3t0e7d8A7LNfvsKsNNfMWbANu/f3vEhDEj4D4X2QLKyk8t
 Ti5/wO2Z7HJiT5QfI3zeRWetvHMWXhAYc24GrTUMdCt2zhUjufi5BdysmcbLiZFt
 9wjJpJITW4A6W7YP55ORkZs6ye/j4Luf7YN4xISWvM9/kzpUtU8R6txC3wCgq28H
 0tdFPUDvyAwr+97vHs97z/UEAIFPSIAsrH00DuudiLpqZB0LE+BcDsSKgxBQsZJT
 06EQQaE9XMN4f46nAtxzFhSbGZL4qIBUO3Ny1Pp0rqjCfumuwONLXZSK829LaaJn
 WfZ5ux9ZjvfYJ86NgUV2tFnwZm2UYQXc4234FfzfebeiSmYI27BMvLJ28xXU+pNw
 vUvhA/9uPu+i3Dk+ha+0UaBTp/HNTAveoTKH6lNOS12XhCNNPQUL0gonJTeWThRO
 z4YttxgLa5I/MoNsub0+GtNrlyhLyHKzjBBHEqJHJp7+zkyfCODnJaxUqoKskUSD
 QF5VX6v6vEQl5UBjGwonHmzsrnuqTb9pyYhfPTch9n22eS6ZqrQkTmljaG9sYXMg
 U291Y2h1IDxuc291Y2hAZnJlZWJzZC5vcmc+iFcEExECABcFAjxq4ZAFCwcKAwQD
 FQMCAxYCAQIXgAAKCRB1LQpsx0Txi0J7AJ9q3/ulyXnWjGWlR0L+3QtfPKI5EgCf
 WTLlr+SXYF+nrW4VvQcJvuyzZyG5AQ0EPGrhlBAEAKQjsjIRO+kHT+9qCYsw6HPi
 BYzH++xP0i5143trUJ66FoEfqOl4UqHwNJ7GEXq9MWgzBH9wDL69Bb4kSKQ9vKwD
 EgAnXObS3FOUPLK5AMXc5jy8rRaUru58+cGs1cNIg69zgQ3FQyWF0FHI7kGsAdz9
 8iUZhXL22I7+EVBgd9DLAAMGA/9oK+Xjo7xdLZvkW8b4nNIA7Xyml2uMLYjg/OVg
 qRkVU5f7KM2oHna7+VtvdJrIl9bTVc6mrTl6GY1/0GYb1edgSu2Axg+msj3fVkGd
 8hWuNQ/T5v45kgPcoJxWLzaWWkDeLQAf5tq/QVmN8hofl6UsrsNDvYTBbl7129uo
 3BJbG4hGBBgRAgAGBQI8auGUAAoJEHUtCmzHRPGLta8An39UVQwz3OgsZQ5e8upC
 VEBCvTUmAJ9/8mbmXF+Ii/JdY6STmU1MMfmQvQ==
 =A6my
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.248. Suleiman Souhlal <ssouhlal@FreeBSD.org>

 pub  1024D/2EA50469 2004-07-24 Suleiman Souhlal <ssouhlal@FreeBSD.org>
      Key fingerprint = DACF 89DB 54C7 DA1D 37AF  9A94 EB55 E272 2EA5 0469
 sub  2048g/0CDCC535 2004-07-24

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEECPOARBACeiKSpedo952tApwSI+rrDIrp5LOC5FG1crAiTpAqy6aP+n60z
 c2euoVDGjH/ncUZ+TxUK/MkzSOFXTjU0TETFgq2UMxSzZCLwPrmQibfHbmnF08+g
 0EjlslsszccPgTEZz6F85aZGYWjU4dhQ1VYP+y5Im88CgahggCB6J+8hHwCggMu3
 f51egcdCrodzFvL8poUYKi8D/i644gOjVN/YamHS5QUGNPJ9xkcq5G4OfK+Ubjq8
 6T1dd7UkJ22sePpKGtRhPNATeEar/HwzLB7r2h+UAD4Yrl6+//EwWB73BgxyCqcB
 X57s57K3+UMblbLR3NWJAD/HpxIBFxXfj55VPk6aH6GX5LzayMxfZVYccMyWOcsK
 UZaNA/0aJkearTpmitBL49fOhz8Je/QIF6riigkdOuyx62yAtYRNrVbDrQvvornR
 Z1CLUp+mixUc3bT+emLFpz2ZXmGqCr9BMAqENh0gayGeekyk8IYLQudFSidL3yHo
 WErc76neXoBE/5M/v7jZCrQS9loS0vITFsui0Rv95BcsNbV0iLQnU3VsZWltYW4g
 U291aGxhbCA8c3NvdWhsYWxARnJlZUJTRC5vcmc+iF4EExECAB4FAkECPOACGwMG
 CwkIBwMCAxUCAwMWAgECHgECF4AACgkQ61Xici6lBGkj0QCbBe+RP2fX0+t1fiU/
 oOcORVeRc3UAn3Y7M2TfTKmSh+5RXsaxcVKWDqZauQINBEECPPgQCACOxltxnJKq
 MHIW1P1u4pjby/v0ZsVWbhqmPzW1L/o0SHbBdPkLn+NZmOKG3sXFkitq1nnXQMq0
 pdWwEK55rN3+iYMpq2OJgubsEDJbo39Lom49w3xXs3ElHKWmgjNUMmiGi3yA3Q5P
 p9E13ze+ZBTTZrlj9xtTsXYPCkoihcjA8iD1G52CJYuVQOCxeKo3d8EZi4sFXhTs
 yGfK7ipLN2jO4H8LSrImMlT5z/ePmhTgo59A+vsIShklJpRlHqYB861sMobUlbCd
 0n7Fng8pD9jIG63usHJgU32AVEeZ9BMaZ5Gjsm7KvIwJH+w8DGnR7016hleSXSEk
 wVbS7zjXKfAPAAQNB/9GQcWpnuKYlVa7olq9XOVHe2pHrnK20wLy14ormB245Aip
 gTCN/SEIgwc09nF2QXXXhzZrxsFCPphgJh7CT8g25LCJ2rchOhCpShNS43I1ol3d
 II4nK0DtXUJc/3qG5PgPaNLHHyskwIIyfL2rKRlufTgByzF3AKXHweJQ9suxGkGS
 i2+l1NBwLwsjee59gEyKXT/cbfkV/IgA+NBpj7QaDs0yhsbPSDAJszbo53aBAB9U
 sZjWP9tkrzaP1eoSbl+LFttLtrivG/v8HZuPlI4lELeRboslI1aUUfZVt7xx4A6P
 u3L1DWOYm9rQ0q1KMlhGQKa/JBtaKy73wwzZujSWiEkEGBECAAkFAkECPPgCGwwA
 CgkQ61Xici6lBGnrNQCbBljRUNo/9EHyCk0D07YM27DYC+8Anj9wU0uuZE798XZ6
 n4y0m1iMcuSh
 =Fl75
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.249. Rink Springer <rink@FreeBSD.org>

 pub   1024D/ECEDBFFF 2003-09-19
       Key fingerprint = A8BE 9C82 9B81 4289 A905  418D 6F73 BAD2 ECED BFFF
 uid                  Rink Springer <rink@il.fontys.nl>
 uid                  Rink Springer (FreeBSD Project) <rink@FreeBSD.org>
 uid                  Rink Springer <rink@stack.nl>
 sub   2048g/3BC3E67E 2003-09-19

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 hpneRV17ciF5APqU2SSiDrugQg==
 =Gfya
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.250. Vsevolod Stakhov <vsevolod@FreeBSD.org>

 pub   1024D/213D0033 2005-03-14 [expires: 2008-03-13]
       Key fingerprint = B852 0010 761E 944A C76D  D447 A25D C12C 213D 0033
 uid                  Vsevolod Stakhov <vsevolod@FreeBSD.org>
 uid                  Vsevolod Stakhov <cebka@jet.msk.su>
 uid                  Vsevolod Stakhov <vsevolod@highsecure.ru>
 sub   2048g/786F2187 2005-03-14 [expires: 2008-03-13]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEI1ezcRBADE9OSKYo4FwkV9/HZCsEuq3afu/4cEiRlaS/pod5b5/tv1DGAl
 QQdQeNxW8nzDLrODbyCtmJDxvOib4Z2qz2NZOgjTujnlHeKecJJKkXg7bYIgMWy+
 JQNX613fcsgQicUQDyi0nMKcvd8BcKuzDUCGEuyMxEE5UyBPXOKDuPLZNwCgznDP
 rjh6cffp737SBR1ViasIresD/RYo8N+aMdwIQwqWXYXuSj6sCDutU2MUsRe9RxaP
 iDE+XvLuxRa5BTAitMWrDJqKdCjysADTXl6Owic6+Y9ppk35+VHDq7vsow3v4HrI
 znJVb5ZOl7nyaBtsd7v/nRFjQEcko11PxbmAAY8UevbGSmUsOmyT2ZMgYkNgGrvl
 jsGZA/9UtsG0IaR9+EGAuvOGey3Rh5AfNVontxJ+FXpCyHgKXWFrJIzbFPJ+iaYN
 xd2uUnEcAeGkY6UsK3z6MAvAorJC383tcRyfZQ7nAYhR2tmPVjFCNU/wPLT6MiZQ
 LgPbYh+SBWTpofpnAcVmVRk18tqtAXuH3kb+m+JG1EppxT4WMrQjVnNldm9sb2Qg
 U3Rha2hvdiA8Y2Via2FAamV0Lm1zay5zdT6IZAQTEQIAJAUCQjV7lAIbAwUJBaOa
 gAYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRCiXcEsIT0AMwPVAJ4z7YKxK+3XB8ic
 Ml40/9QdnfzA8QCcDbtrLjTHVfMsLZls+CpS7SVOZLK0KVZzZXZvbG9kIFN0YWto
 b3YgPHZzZXZvbG9kQGhpZ2hzZWN1cmUucnU+iGQEExECACQFAkI1ezcCGwMFCQWj
 moAGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQol3BLCE9ADOu+wCgvhaDI/qqW88t
 h1qkpZiSoj1QGhAAn0aH/9Ln20qZlzOzflE+RMNroro2tCdWc2V2b2xvZCBTdGFr
 aG92IDx2c2V2b2xvZEBGcmVlQlNELm9yZz6IZAQTEQIAJAUCQt/YkgIbAwUJBaOa
 gAYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRCiXcEsIT0AM18MAKCYLPaRezw9CggX
 0WGxZ4V2AO/H4QCfe9H8leQkgkf81O3xijejFh4yo225Ag0EQjV7RBAIAPegYMuM
 CjkzEiNYAWZNa+IgCrfWTZWuiCkvfvbYlnx2CLCMhtCi6kDIGm8k8ub0MrgI7JnR
 z3dVaKUi/ky7lbTCkl5lqLdJCX7lAOmbXrtV8Z/w4ke/9aoA5mRcA5U6IDKemkr3
 2mfEEDY6ZOYltLaOh0oPcX1M3v2NIeJhITi6QeDLOpprcCB2fBaZLNC7elgExxaf
 4Ij/Y+QYvZ8ejdOG+AOYHm4DOhWXPyfhhHLRG/U8QY40mYY1BhXZnm8ki/n6ATNn
 5/iUzVZVYYOFuuOhl0B4TG01TlDuhvzm3nBblXx4TkXmlJGY+jy9pzyqyI8OpwpF
 b5/+Q68f2OBltX8AAwUH/iaq0BjgK3Rk6Z/0Efw0ZVk4oO/RhQWcY0f5QDzPnoBk
 DgQcsraDpK+fMRAbNXNjRA7qnTDzyVSjURHEJluNGpXQVXkrO1j5+N5yJXZy7Y+8
 nlUm31UKp8bgzCSck5LcluV9dOQKSD4FvgRmyrt7Zf1Ge824/KkoQaw8MqXGd3hL
 vWta5S3YRJZ1xKKYdld9P7GI9PkOSsD1f4fYQpaHiHTQB+/LIsLiiEWzEnVvWnqN
 CJoatLuznMB4uTjAmKMrOAjVw85+x98Iz/tgIjA/eFO1OlOx1+3UpwdpAibKXDf3
 dIxbuhsp6xy2G7xbYr+ErgZcpOePy+vvnOxc1gwS4q+ITwQYEQIADwUCQjV7RAIb
 DAUJBaOagAAKCRCiXcEsIT0AM/LDAJ900L1+vJyKrr3hP0al12mE3cy+9wCcDeQp
 6wzJCGiOCfCGViOv+39ADh4=
 =gaWL
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.251. Volker Stolz <vs@FreeBSD.org>

 pub  1024R/3FD1B6B5 1998-06-16 Volker Stolz <vs@freebsd.org>
      Key fingerprint = 69 6F BD A0 2E FE 19 66  CF B9 68 6E 41 7D F9 B9
 uid                            Volker Stolz <stolz@i2.informatik.rwth-aachen.de> (LSK)
 uid                            Volker Stolz <vs@foldr.org>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 G7oQ/NdFiVk5IOo=
 =r3Jh
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.252. So/ren Straarup <xride@FreeBSD.org>

 pub   1024D/E683AD40 2006-09-28
       Key fingerprint = 8A0E 7E57 144B BC25 24A9  EC1A 0DBC 3408 E683 AD40
 uid                  Soeren Straarup <xride@xride.dk>
 uid                  Soeren Straarup <xride@FreeBSD.org>
 uid                  Soeren Straarup <xride@x12.dk>
 sub   2048g/2B18B3B8 2006-09-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEUcBVMRBACN3a/+siykVNlKvwCmd4HVMogG+Oljeu9wyLsI8dJ9Y81bkY0h
 fi7ve3Tfu4GeRcirnrc2FV9Fcsv4dt9DtYQ7PQTPH8kjrSXr3kQoiHE4fGGJl4IK
 IVIHj+iC26JJgbqFcSU7CKGdvZIOJ17IPPh/HhunKBv9ljNJ5MM+WL8kJwCg20Ez
 J3CRnHM90EFk/nfAlJRvXk0D/3rqR1ODyY/8fFDtpOIjkApkw7k2eoJsfqy7tbtX
 YwdMKQptAvz2NxW4Qjfo3NbgGbfN6eAlhoy9Srcfm886KPMA22ZAvCWopFNbqAGX
 e2iOEwbU4JflSq5vLsIhOVz133W6mK1c7VJ0cf2zl+iRWtISES4fOY5s9rEacIjA
 NcAHA/0ak6bks8LqzC64zFdI6bj2FfJbOoTrga1/FQEBSw8bET14S20G/713ZCD+
 tQXXrs8I9YjBQREsKYmy0ixFYFmxMvG0NxkIyrwD/GEqpBbNdkJlx7pUhqv3zyRY
 rzvcmca7jIguu6K9nYi3t45nmCVo4ku9EE34YHzvgFQ15+1LdbQjU29lcmVuIFN0
 cmFhcnVwIDx4cmlkZUBGcmVlQlNELm9yZz6IYAQTEQIAIAUCRRwGPAIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEA28NAjmg61AFysAmgIisxdd6032Jk2xeI17
 gcHuzXvuAKC5z1x4XxCwELWC9mk9HUlVTWcMW7QeU29lcmVuIFN0cmFhcnVwIDx4
 cmlkZUB4MTIuZGs+iGAEExECACAFAkUcBVMCGwMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRANvDQI5oOtQAvaAJwIhTZcNVO1HKFwW5+hfnpE55hAMwCgtgTvelBA
 dhl0HgdkEN+HWtZzEnC0IFNvZXJlbiBTdHJhYXJ1cCA8eHJpZGVAeHJpZGUuZGs+
 iGAEExECACAFAkUcBtACGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRANvDQI
 5oOtQBgzAJ0e+6mp3n17yH4hAzcE2toJ/CPBPgCgrDC3mRdXEOD8Gegm80agUykc
 Fq65Ag0ERRwFhBAIAPf3jtvf8pJMZoO7SQ3/Et3jla1POUcJuk9T70om/Fqi9Y1b
 mxTXR7yu5Rue/ZSN20laoywnJQAJ3BENx7mZHZwCzZDfEU9QU6WipPykt7KbhBG7
 DjXBONGY34wl4RearvGn61FuL77/pkSA1XQ4+5U/hWIisTWnHRufxoykhlyo7QTN
 x/S1bEXA6eTtfT7acA8sZfMRiqb8opOtJPiSMO7vBEYHfkleUGhSJwI7R7ghux2z
 y92Sp1sFO7xb7ZVlKVPo+edqbu5mKRLvhykLiA7keNv/YGkfVjPgLthAo14JIL3b
 95dOkGV/iI+DlYWPa/sDOM2KL0S/wJ7dXMtMVO8AAwUIANqJ9nqvDnWMoiJ2/Zuc
 H9y7CMmSZEdzQwKqaJysyDqiV6LAK9TXsxzzl1UXximPMCb2qwtVGOaRKAPR8qjD
 9GQc0Lb/BCFQ213o0eb+pvq7fFmUxrt7kMUvbwRGhiRbHyo1qf/z+VA2bntosYmW
 9YSpa9eoE3iXr3cF6wQVw/nUF7jm6QQ4M3ak1MiaoICxxCy1x2WzW9mrUePPWz25
 x0Pj0+R3mnWMTewLC6kk3QFM3usdxudGXJqDVch3w47BHV59WgSnzYPshGFp0VlU
 xeJNWJYu0DM/8WeOvRdf/5VdxwJGDtxRyQSDX6niYHWg6tL2Bx1cCxJnnzLLnXDp
 PziISQQYEQIACQUCRRwFhAIbDAAKCRANvDQI5oOtQObqAJ4gRDoYRjl6DWCd2DgO
 ECDwvMM5wACgiAYFjP/BOSY6RZdSBTxOSdyeVdk=
 =Dgd4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.253. Marius Strobl <marius@FreeBSD.org>

 pub   1024D/E0AC6F8D 2004-04-16
       Key fingerprint = 3A6C 4FB1 8BB9 4F2E BDDC  4AB6 D035 799C E0AC 6F8D
 uid                  Marius Strobl <marius@FreeBSD.org>
 uid                  Marius Strobl <marius@alchemy.franken.de>
 sub   1024g/08BBD875 2004-04-16

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEB/3xIRBADGjxOPVRN2LvXTd6jXqKf4/6pPVPQlKqtwpOZj9JgDVE+V0Elf
 kjvwfCXA0gqt7kkal8i2TU9v2g6IIKP1eUoNpBy/s15Wc8JMlESB6CkfFPNkqj5o
 ohRSoKuB8dud0KR3T531rPfQNmsVRWtxrPYigkrtYZHiTPSZFgL0e+RiBwCg+i3+
 p9+1JBby6tthOolOGdr54xUEAIYounibXk8p54DJeunp0rMbzKYvbXYTOyc4HbD0
 t9kOH+VI3BJ+DlEuCejgwRkxkisjhQbSTa4+EGROKYcVIBBTtsj8JGHiNyRVSQ0D
 +A1KDuZQh7iDwuyatT0xvcvFw52In0dj3RK5hDV2ZX1ec1WiEMKdf8It+WdTSQPT
 UUF+BAC1WEPU92FZefdEDIQQHu17xsCestDOyd6xUBpxyPV2dyUwm8k7OhRalNuk
 nAIXfbZcVVZ/+RWDdfiftoSxQmODQg0JtzhtGEQO2q/FozsCy4Bx8XPk6CQmPMJk
 x/o8MwR50qDlsmcMRR2NDF+I1QOyRpEmugZ6sO+WXm8bkj1J6rQpTWFyaXVzIFN0
 cm9ibCA8bWFyaXVzQGFsY2hlbXkuZnJhbmtlbi5kZT6IXgQTEQIAHgUCQH/fEgIb
 AwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRDQNXmc4KxvjaHxAJ9+D0jNIIFzozzz
 6n/bx6N+yV2rwgCfZRtKVbN4QNEBod9tfer2TgmRlqGIawQQEQIAKwUCR3O7DgWD
 AeKFAB4aaHR0cDovL3d3dy5jYWNlcnQub3JnL2Nwcy5waHAACgkQ0rsNAWXQ/VgC
 ywCgjtPLCzZAAgOuFiLwNw4vF6ZXJBQAnRPxbc9SwccyaGrkk8kiCX1nxVmFiJwE
 EAECAAYFAkd2QQ0ACgkQ722CQfCBGV1D4QQAgo9MiuMFTfyjZn/qfQmSenruVgSW
 GpKiz6DTPhmT767GqaVqaaChoWqPY6/PGPTbk71NleF1v2HU1Orzoj3KqgzE6vVM
 MMfmMXJ7y/A9hg+xImKuThiwMzfJJQ+nrvCc1beJIiMxhJJLHxmBJZve/mbMUs3V
 HC4tGEcdrGecFY2IRgQQEQIABgUCR4ekWwAKCRD09yJxgsm6KU0pAKCIgvYV8BNI
 ES5/8AK02J2lApE5kwCgxetWv8ToTTbUhW2AhaIEHlg8KQi0Ik1hcml1cyBTdHJv
 YmwgPG1hcml1c0BGcmVlQlNELm9yZz6IYAQTEQIAIAUCR3QWxQIbAwYLCQgHAwIE
 FQIIAwQWAgMBAh4BAheAAAoJENA1eZzgrG+NU0AAn1xgOlGk3+FpLagxQh6/O94Y
 8iz1AKDvu7Im3yfxj4LRh5UVKnNYMIJTtIicBBABAgAGBQJHdkEIAAoJEO9tgkHw
 gRld4JcD/j52TeNiPNJ4hDyd0QJUItk8RXcvBtrg2dSl0TGmNs2f1+3fjZ6vdrE+
 5Ry0qh38ywsxs7sEFURPavre4i7EbdOWv6NawUfaIsgXp8Os91bQr+UrXe2esAEC
 SICQS9hHI3qEl8hPqay7rPl/lXM3ivofmrRXXfBRCtxUqy8+CFoeiEYEEBECAAYF
 AkeHpFsACgkQ9PcicYLJuikeVQCdG97q3ZUAYRy7za8JihUzddma5wIAnRS7veJj
 ENbiKHg6MJc2BMFGZ9H4uQENBEB/3xUQBADFOTE426iijaR8FaZLMIRaSexGfOvc
 nPJFF+rkoktpQzP+9BKDwKvt1HmlDXaiaeJfwEfQdK7/oORh9+ynL9ag/KaocJtT
 8eAqhVnoC240NF+PhMlX7YblUwa9+M5MfNmDkNEV92ZFIJ8QjRAzn/G3rQIMo6ax
 BmsF+1P71QEIgwADBgP+Kbmf5TjcU45Wuc3ceZCAEm9o7VMhsU/tVu69x6QRu379
 HqJ9RDuAOdcBWQ/67Jw7blSbe3yWZpqhxLTWwYELJG7/XSNnIsFl3osF34lm0Y9M
 lJl+XBQ3UV2kPgtIMDTXDuklzuhdhbIlhWOXJJf48WkSxeB2WGnnlVvBCjBTx3+I
 SQQYEQIACQUCQH/fFQIbDAAKCRDQNXmc4KxvjWiAAKC5xnCwJYOHHwqreNa98Dah
 W9e6+QCgjchyumMlSJfpEEnGG8vU08TmXrs=
 =QOvV
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.254. Cheng-Lung Sung <clsung@FreeBSD.org>

 pub  1024D/956E8BC1 2003-09-12 Cheng-Lung Sung <clsung@FreeBSD.org>
      Key fingerprint = E0BC 57F9 F44B 46C6 DB53  8462 F807 89F3 956E 8BC1
 uid                            Cheng-Lung Sung (Software Engineer) <clsung@dragon2.net>
 uid                            Cheng-Lung Sung (Alumnus of CSIE, NCTU, Taiwan) <clsung@sungsung.csie.nctu.edu.tw>
 uid                            Cheng-Lung Sung (AlanSung) <clsung@tiger2.net>
 uid                            Cheng-Lung Sung (FreeBSD@Taiwan) <clsung@freebsd.csie.nctu.edu.tw>
 uid                            Cheng-Lung Sung (Ph.D. Student of NTU.EECS) <d92921016@ntu.edu.tw>
 uid                            Cheng-Lung Sung (FreeBSD Freshman) <clsung@tw.freebsd.org>
 uid                            Cheng-Lung Sung (ports committer) <clsung@FreeBSD.org>
 sub  1024g/1FB800C2 2003-09-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD9iAJ0RBACJHmAyofYftDx6hFkYRkCrM999YrKxfYGybHI+MoN2fFPXMvSh
 idYzBGhij1a8E7DGuZ2fGwSxdUZXcUA9PlDPuTmxs/xI/ZgX/qnG4yPgeT7KfZ5g
 UqRpm0/gz/7g5UsvNBw0iUzSbI7tTXprErflhUXX6cC1bPHTeEQbHe+nSwCglpMT
 cpcV93CQpMX+GC16UvwC8MUD/2TzigXSQ9rJNoTLuhsibSK9fh0vzq6rhCrzy2Ma
 G4M9kLvApu7+8YEk9ydVk9EE0PxHTTXGAxnpZzTW/bCCcLubhBqv8eXs2GOOxzHG
 YXb9Oyo+FDe0EAEZ5Swmf/V2eAHV4bYDmXzW9okxIUK6skXtFxQ70DxqcmtAxlxa
 QLgbA/9plT+d5g2s1c11Z0p5CQbxa8sJu4nLFT36DzhR2BmhTEM/X2wSARGe7PKu
 LdWI1WfU4Avoj9sWehSF531tMekMSZ4lp0gb0rYOyzGTqTWjq32mkqep8MDP9cT9
 6H1UaSU96yyc1sprUdU7XDf7TA4jZp2LSLlOEB2UCOa0mBL9QLQ4Q2hlbmctTHVu
 ZyBTdW5nIChTb2Z0d2FyZSBFbmdpbmVlcikgPGNsc3VuZ0BkcmFnb24yLm5ldD6I
 YQQTEQIAIQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCP4IzGQIZAQAKCRD4B4nz
 lW6Lwc3gAJ91P1UQoV68L7emHnjqlf3nK6qzmwCgiVtWyaqQJq4fayifeKfFmT2U
 0EyIRgQTEQIABgUCP2SPxwAKCRDm4NvoVAvGHGhiAJ90wTMq0zYb41tG8M+RoMyv
 oVsgtwCdGko61SUEB+884zRD2bHhwFMg+OiIXgQTEQIAHgUCP2IAnQIbAwYLCQgH
 AwIDFQIDAxYCAQIeAQIXgAAKCRD4B4nzlW6LweOrAKCRWdRCC8hQYwWCa4/upt6N
 hc+SRgCfVybP7alAFua8F010HJiSfXdNtFuIXgQTEQIAHgIbAwYLCQgHAwIDFQID
 AxYCAQIeAQIXgAUCQSQbpgAKCRD4B4nzlW6LwVB9AJ42/CQFoYKDRYz+XmCqBou9
 Y+Nm/QCfZv19FBbMSOfvRW6R7nJTSkf3Uj+IYQQTEQIAIQIbAwYLCQgHAwIDFQID
 AxYCAQIeAQIXgAUCP+GGogIZAQAKCRD4B4nzlW6LwUZ8AJ9q3BbkGIsEuhnp6rWX
 uSkcXYkWWACeNSCb9l9g/650wnXPEHcHsRpzBLK0UkNoZW5nLUx1bmcgU3VuZyAo
 QWx1bW51cyBvZiBDU0lFLCBOQ1RVLCBUYWl3YW4pIDxjbHN1bmdAc3VuZ3N1bmcu
 Y3NpZS5uY3R1LmVkdS50dz6IXgQTEQIAHgUCP2SMCwIbAwYLCQgHAwIDFQIDAxYC
 AQIeAQIXgAAKCRD4B4nzlW6Lwb3bAJ9mJttWnct/3ej1XlvmnAxRq6ZkOACfdZDT
 sLSo8DN73ZKDbiP73KqDPdmIRgQTEQIABgUCP2SPxQAKCRDm4NvoVAvGHONyAJ9t
 QrXQSZDkm71qAw+6HiERQ+qsEgCfWuA857Lrda9ZR8X7IJJ3XLO2HPi0LkNoZW5n
 LUx1bmcgU3VuZyAoQWxhblN1bmcpIDxjbHN1bmdAdGlnZXIyLm5ldD6IXgQTEQIA
 HgUCP4IyxQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRD4B4nzlW6LwecsAJ9F
 HNrKHPsCJ6ZesY1gJI5HOVijvwCfb5G6dT2YW8TH8GNRFe7rWPXO1E60QkNoZW5n
 LUx1bmcgU3VuZyAoRnJlZUJTREBUYWl3YW4pIDxjbHN1bmdAZnJlZWJzZC5jc2ll
 Lm5jdHUuZWR1LnR3PoheBBMRAgAeBQI/gjLeAhsDBgsJCAcDAgMVAgMDFgIBAh4B
 AheAAAoJEPgHifOVbovBz+wAoIJhcDpcOVIACy+wboHG4nGOQfiWAJ45qvE09ckd
 IX+MDl7xez7OMqDU/rRCQ2hlbmctTHVuZyBTdW5nIChQaC5ELiBTdHVkZW50IG9m
 IE5UVS5FRUNTKSA8ZDkyOTIxMDE2QG50dS5lZHUudHc+iF4EExECAB4FAkAoN7AC
 GwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ+AeJ85Vui8HhdACeNn9owhjpYr2y
 cYCkOFDv+q3xIF0AnAijfOOUq2oT0d0+B9sALIz0HHrEtDpDaGVuZy1MdW5nIFN1
 bmcgKEZyZWVCU0QgRnJlc2htYW4pIDxjbHN1bmdAdHcuZnJlZWJzZC5vcmc+iF4E
 ExECAB4FAkESZaACGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ+AeJ85Vui8Em
 ywCdEDYOgC1/YxPHqyvEXGs+JTFFqfkAnjfkTpRPM492elqZkBlQimFGLeWutCRD
 aGVuZy1MdW5nIFN1bmcgPGNsc3VuZ0BGcmVlQlNELm9yZz6IXgQTEQIAHgUCQSQc
 2QIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRD4B4nzlW6LwZ4TAJ9hByDD2ep6
 ixTnazmBJSg3epv9tQCeOM4JaWNwvbOrF528n8PQcgpe/3W0NkNoZW5nLUx1bmcg
 U3VuZyAocG9ydHMgY29tbWl0dGVyKSA8Y2xzdW5nQEZyZWVCU0Qub3JnPoheBBMR
 AgAeBQJBJBoPAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEPgHifOVbovB564A
 mQGePiZdxv8qVwvtdyf6m9SvosGoAJwPuv0oR/D4PIDKFYtlTqfYN35I47kBDQQ/
 YgCgEAQAwHkhKy54M/yuuJgb4Gcit2+fDnlRZ8yRJkGe8OSl7qx9Gaz0+kwe1Gir
 V+DQFGC/W3gJqjEN12jh11ZUabE3Seeofec94rDZz/YBkf5ofMT1+tN1kwr+ju7C
 lQdZCwNewaS2p6C5PsXCUQQ8ZHfgs8YB7Ze/TY6GvpOoDKqYHO8AAwUD/1ZvVV9P
 e36FE4RkHg3P1YLkMNs5fxleXD1l6LZ8ElQy1V0RVg8sD2W22xh0wP2W9RplsDYj
 UwFKuRtxxoEsdXvDNLaUyG4hXmNUVBz3b3tmZSvENiuj5EchJWO85T+AFT0g7ap5
 wWlxOqmvHC5NZRiAP1fpKpwoSvYTLP418YSsiEkEGBECAAkFAj9iAKACGwwACgkQ
 +AeJ85Vui8E94gCdEqq8xPwuUc/LJQyc1ziacZJ/FmQAnA41/zThbZg2nf994Wre
 OT332jJ8
 =EtCd
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.255. Gregory Sutter <gsutter@FreeBSD.org>

 pub  1024D/845DFEDD 2000-10-10 Gregory S. Sutter <gsutter@zer0.org>
      Key fingerprint = D161 E4EA 4BFA 2427 F3F9  5B1F 2015 31D5 845D FEDD
 uid                            Gregory S. Sutter <gsutter@freebsd.org>
 uid                            Gregory S. Sutter <gsutter@daemonnews.org>
 uid                            Gregory S. Sutter <gsutter@pobox.com>
 sub  2048g/0A37BBCE 2000-10-10

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 sTEQABKrEX0m
 =fxvp
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.256. Koichi Suzuki <metal@FreeBSD.org>

 pub  1024D/AE562682 2004-05-23 SUZUKI Koichi <metal@FreeBSD.org>
      Key fingerprint = 92B9 A202 B5AB 8CB6 89FC  6DD1 5737 C702 AE56 2682
 sub  4096g/730E604B 2004-05-23

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =xwme
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.257. Gary W. Swearingen <garys@FreeBSD.org>

 pub   1024D/FAA48AD5 2005-08-22 [expires: 2007-08-22]
       Key fingerprint = 8292 CC3E 81B5 E54F E3DD  F987 FA52 E643 FAA4 8AD5
 uid                  Gary W. Swearingen <garys@freebsd.org>
 sub   2048g/E34C3CA0 2005-08-22 [expires: 2007-08-22]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEMJW1ERBACGUsHdqFuQjrrtjpvx2pQ7GpZYl+HS/jVPn+0MjMcZwRtk2T+g
 b0/EzS/0oeOqv1biX/aZN19T31JGdlSm8FumpTc9zPgh830omlJx8V3g8wi0ZHzl
 UjGa2MkmkaCEVeP5bX/NyRljP6fpnOy+5h4F0WcpkqwlXRuhOzM8UgpXlwCgjjPk
 0CLI2jSVsnqIKtMdunOfsd0D/RaALnZrVkGtQfDX6MDo1Ws+ADGj8rGtmdN5TIoo
 ivJvilG/5HSL2nsqOcIKWA+C4lZqzMIlo5iPSz3BijMc1Ni6LaQo4E4zvh7ID5fs
 fXsMhiE7H2KNSGTjmmL/8Weq8Zgpu9TBD8CHUZLD6BU4Wmm9I/R49A16T5Gbylgs
 fEwaA/0VYP+u8TEechtQKLuAfOwL2ruFE0YKmnXq2S7MixFvSNaRilB/t41I1YcZ
 mcWbRlIBezvchln5qRommEKfp/sWVcocR+AuSTcLT3683SkeJ+9205bFx9xXJnrE
 PBhqjMmRNNlmijcBFZHk+W7tCJQBbLGJkpLfqllfVkJ+rY/NVrQmR2FyeSBXLiBT
 d2VhcmluZ2VuIDxnYXJ5c0BmcmVlYnNkLm9yZz6IZgQTEQIAJgUCQwlbUQIbAwUJ
 A8JnAAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEPpS5kP6pIrVGPkAn0i58Ikn
 S9M9e7cMI9Fis6lXDoAxAJ9eRxZEgPn3aQ4DZ2ObnuKbKSqcw7kCDQRDCVtWEAgA
 7jU7l7ssKXwc+/ynNfiLAm9nvCY4jMw+CK6hwhtuOmrgFH14jeEY8wRVBrOUkVi9
 Y13Z3qkTk5DD4iX9f25iK8PJELU5XJWStuX64hIEyqowRZ5KkvsdydHjQ1x2koS5
 oTW5kD2nWChnBKI7iWPgRnFnfthrXE83ZY1sV+/OBRZH1ZS5KVxOzClcoTiTE5Q0
 Q4Py1vlS/Bw95Nhejef7gSf6fN+iV2DQn8KDF81+MIj1jTWt5LDa80G+T5yGWeuz
 asAZVzBfPEHbWbVmRjT9Ajmump1D/0gUvxSr0fpnVfPtEFJ/MbLdcV1kyTtI9YLm
 EWnov/J31bGCDlhGjYfaLwADBwf/TBu+b48oClOPFJznnNGVVJUdD528hfVor4Wy
 3ph3KXSfaysOmG1xo+nQ3JpdzbC3nXgfVGM2wGvFEgq7ogBZ9YZNzwSP0vseJlwn
 oXNKvKKDdCyVJC6Xi0Pd6L4beJRTjxf0LPQUjYdQbwrk2RqHXZ/RUapYjlfOWS2l
 4ZqHiMoO7ZIAj/bdBKxySu8qVs3zmu59SE+ZQgxSXwxw2mF09XWOLgXsKTfhXlkl
 ZyKhjcSlVfjy4SXiXy2zFCh9+T0eiCeEzz5kS0QkA3npOooIFftI2q0IKbHOExSA
 YwOocuVEW7eLzeBfCoDa0SoapeXcjyF7KbiDwQ8xu9gEIUkpXYhPBBgRAgAPBQJD
 CVtWAhsMBQkDwmcAAAoJEPpS5kP6pIrV3wIAniAehy9Ttb00FbjcevJetKN5PWe9
 AJ9XhpsYKAyHxoZLFzGdR3EGBJNAbQ==
 =EQll
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.258. Yoshihiro Takahashi <nyan@FreeBSD.org>

 pub  1024D/8394B81F 2001-10-15 Yoshihiro TAKAHASHI <nyan@jp.FreeBSD.org>
      Key fingerprint = D4FA D8CA 2AED FCF4 90A3  3569 8666 0500 8394 B81F
 uid                            Yoshihiro TAKAHASHI <nyan@furiru.org>
 uid                            Yoshihiro TAKAHASHI <nyan@FreeBSD.org>
 sub  1024g/B796F020 2001-10-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDvKlwgRBADKGTPgNos5F4dobTyIhNN1nVHwKtvdTM06orzFj8VccmdZlJF7
 DLp1UH1gwiVGLu1NPOrQXKeaZmK3iO11fTV0zbCUlUnfgSQsJJeGUFMx7/tgu/F3
 L1qe1p37txNYN09SSEBJe7rlTLhM4VWa3LeEG58Td0d2qP/fJeikz9HIVwCgzIJd
 aEclfjgNmsx2lM8jn6qxJXED/jyqV1eAgTD8C6MRPGYcqyLUZoIy7SwdhvQLKlT3
 rAI4yHy5m8Njj0bk1oJM+2PAhZN3o16tpsjQEJuWoIGWxe9P4AX2Rr6htpidn2Gc
 UOXaMFZyy0MX4ULfph78FEzRC8WGEV1hWLW9pNnzaASY/RwNNvW/YnGyKSCq9ilC
 YG9mBACfcmN76QnFFDHd76otrltwwjj1zTRoHEnBgfj/EldDeOaU5cBG0HiV6cbv
 94MYUi16AnN6462qG8RHJmSPblsm2Og1e7aaZl0CpVgOq86QBwqDHFXh0q0UtgXU
 EQChaBe68ydZRwd9TScAknuj5iAXfXtwAeyhWbzmVyJH0Kk8QbQlWW9zaGloaXJv
 IFRBS0FIQVNISSA8bnlhbkBmdXJpcnUub3JnPohXBBMRAgAXBQI7ypcIBQsHCgME
 AxUDAgMWAgECF4AACgkQhmYFAIOUuB9UUQCgwTQSPrbTxhJvi1DdGsYhHOsT0PsA
 nRNBwMyeLPQPhLxw8EPLgyno7+EHtCZZb3NoaWhpcm8gVEFLQUhBU0hJIDxueWFu
 QEZyZWVCU0Qub3JnPohXBBMRAgAXBQI7ypdXBQsHCgMEAxUDAgMWAgECF4AACgkQ
 hmYFAIOUuB8q0ACfTgzsn+Q6wc4aDQ7nT3+M4HPWXhUAn3nhtyq4Ucu2A6oHXvVt
 1oAhhGyPtClZb3NoaWhpcm8gVEFLQUhBU0hJIDxueWFuQGpwLkZyZWVCU0Qub3Jn
 PohXBBMRAgAXBQI8VVkOBQsHCgMEAxUDAgMWAgECF4AACgkQhmYFAIOUuB/XmgCa
 AgHmONlOiOhKdY5LtVJoDi0+cOgAoK4wJFYzstYbpXayj0LqbgmYiY3QuQENBDvK
 lwwQBACBBH7cM4WCT6D1w1XAQnWgL4eE/fMcR3aPiHBDd8eDWFFOhwSPh3W6jZ5T
 STUEZCF7lgD3k+QJtDhVKE0U/hha1ZFMgdTTbhEW9Pl9DHW3BYxPXxq/SURwpGFg
 0GriV65Hx3Dq6cxkBfzGZzrZA2JfRwb3pXisNSGDILAtNRw3jwADBQP+OSbFQWL2
 n+KrBX4dPbp5cuFVL1/NNOWhSOwU+IsR8jDaCYpLy+Zkn7Bn90bIee7zsdWOkGWf
 /qV0qm6dY7xLs/hoCKgk+0jPPevVcCayfCTzBZ+d76qPjWQtEgKN7/LJZn8rMCBf
 B4kHxrcclf9z3OdI+BzTNrPZaCeHLd7nMKeIRgQYEQIABgUCO8qXDAAKCRCGZgUA
 g5S4H1r/AJ973EUo0J+SF83Sj/hL0zDTQBKlKgCcDy1o6LmSduT3NE28KB3Iw10I
 kqA=
 =eB3G
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.259. TAKATSU Tomonari <tota@FreeBSD.org>

 pub   1024D/67F58F29 2009-05-17
       Key fingerprint = 6940 B575 FC4A FA26 C094  279A 4B9B 6326 67F5 8F29
 uid                  TAKATSU Tomonari <tota@FreeBSD.org>
 sub   2048g/18B112CD 2009-05-17

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEoPodURBACCCL74hQbB00H/yUtv9No6sBynaWyH/blLogfrVbNL+86XIKDz
 yricgZ6/GDT4tbpaxs+o0wPdI0SrvvZuvvLfiV4ZxiCa8TNJF5/4GEzjKE89Pmtr
 DMK/i4RCzhRfs+PfzQdTRA7aQ77mds/tYGJYsqk3m1bWwOGggMti4TBk4wCg21tx
 RTopEa+HVDn1NTLgsAs9a/0D/3lvX6trmF07ENwCp4VGzBRTAZUAGgXziQ2zdjVD
 WcIWPO9PLxM1C1Crifbh5IOFoCsrUZeEsuLalzEVWZ2O4NqLRiRfuSD4ku6Rnd/k
 DBwkHiDy03JfGybBNEKUGvhXhhu53uij6ZXxNW9xR0KclDmrBxxEyj/Y/GYMte3b
 gV0SA/97szSEf8LmQmUD1sd+VHDBaJ9QUe5xNEJ9+8ZfCsVh0zamLvrAOLnZY0mU
 hPr61esTetdjDv1UAbn/OPTMfp4oY6/4Xa59APshxuK6urXaKExwWrvio4OYTHq5
 N0Bq73HwZV1beY+yP8wRRI4AzPoeHa+vIOhfIIJO++v5u9Hrp7QjVEFLQVRTVSBU
 b21vbmFyaSA8dG90YUBGcmVlQlNELm9yZz6IYAQTEQIAIAUCSg+h1QIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEEubYyZn9Y8pRqYAoIpC8dx4p/BaKVxueFll
 Jm/w5qD5AKCC5KSc0zMxM0Iq3FigA/tDjiyj9LkCDQRKD6HVEAgAqVPZwxV9bFbv
 PU20xAQ6HA8YxPp6QYUbb+r8AoRmqPNLoDqfNglhMimj5nPEFLvBgDHQaPQcqcja
 5Qiz7j3I8xFrBbkCrx8xp4XYAQB8An4iy8np4Ys/YjvDjittYUn8CywN4rVGIppz
 S8BDY9Ufjy6v9iFERXGEGcW3x5gFA3S1hGJZ308QhlWMw6OachMadUnAXcoO30fe
 q8eITtyJZN2MESq7G5TtaywDHz3Gg1K7m68bPeQaeAHwkQBwC/0xvDtJ4uyq/Yp6
 sQrlWJN50vaTnSAQ9q+b0tHQMVxQnxU0dVYgtE50jpPHApbc21Krc6H7a8VhNu9R
 JIanzAEUEwADBggAgJ1JY8XGrOVeYJ9F6S7F6pZKxyj/pYYBYA5dAIOm1df+cpvu
 Knen7UTOb6CgkZqGlX0BbYwYsfzr3B4oS0P5ScqE5gNVeWrCItZrZV6fuA1ZGnNn
 bvnEZ3xCZsb49CtfUcMLqNp1KGVGg1iVvh5YA7mtBmp6W12sq5YM4jx20ph+AHrs
 8/eIts+MMJ70QDI+GoXtwgS5IfFQK4x62K8W0RAmp77/qvRE4hrdsL55UYwD1zuY
 qzwfQVNaPNUUiVDEyL6K3K5GYfkZ5zPz8iJ6sWtsuLEyG4CSWLwkAtJj0Xuc71vN
 W/gkbM4ZpQgqQGQDZvN44Sj/prcJlnbyh26ajohJBBgRAgAJBQJKD6HVAhsMAAoJ
 EEubYyZn9Y8p4EkAoI+bYGMuNB+i74EdgubvW/fTinfPAKDGBmZorrcBfYrnictP
 T1jCoBbEow==
 =0Wta
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.260. Ion-Mihai Tetcu <itetcu@FreeBSD.org>

 pub   1024D/21FFA1E5 2008-05-08 [expires: 2010-05-08]
       Key fingerprint = A880 42DD BD71 BAA5 AED7  AEA2 27B1 88BA 21FF A1E5
 uid                  Ion-Mihai "IOnut" Tetcu <itetcu@FreeBSD.org>
 sub   2048g/0B30E680 2008-05-08 [expires: 2010-05-08]

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v2.0.9 (FreeBSD)

 mQGiBEgiuBIRBACCfhdBIfKQoYWIJBFmDWoGi/FISis2XH8eupI+0iiUwjAUDScY
 dCuGAxQEekdsIXrpqAEnUOGsqIi+AINub8KM1ibcN8vdlFSd1RGG6mpQNSlTZ4QT
 BWFpHylCe7SRW22kU5e++LVXcViTlAvSzMs8YB/a9j3DPKzh/IXMwSaqKwCguN5R
 L36o7GJDqTIPx5pD12SaDFMD/1FJ+V3xXeKtulLzTFKVrUJhXlDTBiLVcpzAeR0E
 V5/trtZM9tJldeIX/nqKvR2QF9i0VzoCIUWNS2M8MneCFIzuhQSnt6uGWvj58V6t
 gKtNhqTNPt61BrkaTtWgg7UX6kTUcEV5nztkAePGbOAfShtK6gVBcn8MHXBRZ7De
 nqj6A/9sD7tymktX1hD7i7UlBcQhBr/Fr324qv4E33dfGKuykH+HWFxg9FAD5PTG
 CyNYoKLvl82zZso5PaDXIa42ZphviKHttMKVidKR/FuI/gTqX8Oz3mYfDoxkvFpO
 7PzMZ2+KVBxoXBwXYf6R9nZWv5cd869A18dyNvhE9tK6exVJQbQsSW9uLU1paGFp
 ICJJT251dCIgVGV0Y3UgPGl0ZXRjdUBGcmVlQlNELm9yZz6IZgQTEQIAJgUCSCK4
 EgIbAwUJA8JnAAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJECexiLoh/6HlhDEA
 n0viPwOZWOfZGT/nbOSPmg+vvpuLAJ9Y6+VqpB9fdzyjW0GI26TlkcEpaohGBBAR
 AgAGBQJIIribAAoJEAV+n4tJOil7ptkAn1HjJyNBvKgXB4OY/SRbSmSikBXfAJ0X
 uSuQRMFbLqHM05bXqY95Ih3iArkCDQRIIrgSEAgAot/xHX8AzSLS7u2xyiraitRH
 fYcaMBpRYRqv0ceC95XUnBWZdy6piPBOr0p5LEGVaPN8RC6fM/9KIMCL+mEJtvZn
 dmxxCk+6GE2UsdDzMWdI2GZppjIAwPVY2YEB0kfa6fqSTV087hlyrkf7vMOl6dTp
 kAb50G1avwhy1jBoYR9f0LLn83kJV+77B/IUTe9sdgPsi3kovJNYIiAhTw62XqHL
 V59OZN/QVd1qPI0t5XXxpKbdyTRImtfF/EQ1HbqIha8ao8trmz2MtFMsT60piAoQ
 Q+usY3tHG5PPM4GxRnLW8Z0nZ0dWii42v5W5ETal2FaPUSH/9cDPAEphlcUomwAD
 BQf/RiXuGG3CBDiUYeVHlQiyNHQP4Rm5iVclcezhPstcQbb1R5rZ/sAu4FaUQVc8
 LRJ8c1UiemEhetGfTSAZnoeWxWfJgtcO0yK+fM5Q+ThqxCIlGPjAgmlbZw5R3Own
 BxiQAJMiax21BNVrxHMW0DigJqLVxvYEQDbw/DuMPwLG3Bf82zy1z3RUZ2pc8DEi
 nV3vtKfMH3UEvBHOxwdubOnmal/JYTWL7IR9mp+csXs0ZxJ5S5ELh5JlMWMa54Le
 3lujnkaTZYrdTxF+GWaFOxseNiLr6OcT4oZzTDnZ1Xn+CqS4TJDM1yczRrYPDA5c
 khpeSvqlv28UV0GvfDL0LR0mo4hPBBgRAgAPBQJIIrgSAhsMBQkDwmcAAAoJECex
 iLoh/6HlyokAniQgaL2Gi++v6kKS0faitctj+x9aAJsGV06R80EabXHH0d6Qd0vU
 ZMG9UQ==
 =e2YQ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.261. Mikhail Teterin <mi@FreeBSD.org>

 pub  1024R/3FC71479 1995-09-08 Mikhail Teterin <mi@aldan.star89.galstar.com>
      Key fingerprint = 5F 15 EA 78 A5 40 6A 0F  14 D7 D9 EA 6E 2B DA A4

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQCNAzBPh/0AAAEEAKiF0rNVbbuQue8Mo+knlGKtZJXWkLOhmdzE+FPxTSRv3TOS
 OHOfFbEbTlcuplvYv1US6o4liAyyx6vGLGa7ZW0zLFAtTOJTfwW3GPmcMTieOIK3
 wwzJtjH+wi7VeXIQCU/mOcLC9A8QaLqhJ86e3m9FODSFMIluSoucrgI/xxR5AAUR
 tC1NaWtoYWlsIFRldGVyaW4gPG1pQGFsZGFuLnN0YXI4OS5nYWxzdGFyLmNvbT6J
 AJUDBRAwT4kMH2ldntvsCqUBAVAcA/4x53VCfOx5Bm+BtneQNEvHgV8aqWW0tM4r
 31KtsSjMwuHF3kl7PJtCfVk4OpRvog4u9V5G7gtUhUIOi/Qfuia2YHvvxIh3sx7Z
 Gg22e4FxNzNob3qV+YiPOr+Aa6EoYfHB45eHSLFXryCBS60a0CfZies+CSzcHBy9
 /Zu51dCtnQ==
 =f57V
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.262. Gordon Tetlow <gordon@FreeBSD.org>

 pub  1024D/357D65FB 2002-05-14 Gordon Tetlow <gordont@gnf.org>
      Key fingerprint = 34EF AD12 10AF 560E C3AE  CE55 46ED ADF4 357D 65FB
 uid                            Gordon Tetlow <gordon@FreeBSD.org>
 sub  1024g/243694AB 2002-05-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.7 (FreeBSD)

 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
 =1nJ4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.263. Lars Thegler <lth@FreeBSD.org>

 pub  1024D/56B0CA08 2004-05-31 Lars Thegler <lth@FreeBSD.org>
      Key fingerprint = ABAE F98C EA78 1C8D 6FDD  CB27 1CA9 5A63 56B0 CA08
 uid                            Lars Thegler <lars@thegler.dk>
 sub  1024g/E8C58EF3 2004-05-31

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEC7Hq8RBACUBh7OsXzgLr6Hz1QigRoSr5nWAUdj7Z9wNIcoE9t6J61MIUtP
 qGL3x73LspmwBGu/aC9muJ5b4Ont+BBBkVkC3Cdl7pKSvT70/ZB7TKw9f9HA9S67
 jK/NnrgG4R9amixfd0KyycNpf3yvug2FV5VZBiUqvuqWipqXacOxsD8rAwCgksWW
 74+msARYAf+mTeR7/NCEH3MEAJFfoV3APPGGECWfwrDmQT1IiBhObbjsVKbo4z7w
 yHxK+3Qm9nCG/sVthRll96C+rtAJKf+FEN8nvIx/9Z1UQ3Y7zTMgzlbz83BhhPnZ
 lAZEZI+EfmWsltzmyjJHnsvShRvjEp/YQ+0tfZV5uAPy2yrICw/rvozhCmqTox5l
 zOgXA/9mfbgbJR8NS7IwzcVSH+YEW06lyxLHjEd31aIj6wgX7O9H7JdXOytTqbSR
 VXN+5GjJhEaw9GmAd6tsvusHMy+1GBgY7TFFUNYO+JqHn6FKGzfPiFyxDyvyrF01
 QL033peqiNVxTS5nvJzmKQCpftlU3S85R+K62Alv6xO70HyaALQeTGFycyBUaGVn
 bGVyIDxsYXJzQHRoZWdsZXIuZGs+iF4EExECAB4FAkC7Hq8CGwMGCwkIBwMCAxUC
 AwMWAgECHgECF4AACgkQHKlaY1awygj74QCggWeR8IRwgHIsxVv5zItpzdtnkSsA
 n31ytm6noxfetU5J/5NnR6bwV4WetB5MYXJzIFRoZWdsZXIgPGx0aEBGcmVlQlNE
 Lm9yZz6IXgQTEQIAHgUCQLsjTQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRAc
 qVpjVrDKCPikAJ9a/Or2be00A9PeXyoo+b7VuLAzhgCcCX9kI2DduTtitld/mY93
 vZDnQPO5AQ0EQLseuBAEALDSStxYn/CidImaPKwDZoYVpXpHucmBZ/nK/rFwMNh/
 /RZD8ZdBF1PEDf3EA78qTxEk7PfSnoEWcxmcNfiMSALiTkehI4nWQH7j0ZSwqC/5
 Du4lP1v1PSeR35IkC58n8kur74olLMdoYxlpVOwh7jGR9W/3MSEjQ7NJP9AZ4yw/
 AAMFBACv3/ZxNdO78IPVJ1kQsfGUnwfpiw9syDqK+CMA6FyTCI2VUc6kY0Wc23Qv
 uoGv8ROk75pa2MJxEH/GQJNSZerJCSzLqdCyEW4tuxxJPQ7celSZ7PL5QutBzytL
 4rUQ5bUlYQBFlCx6aOuG2+zQqiFbm1RqX7RYdOf3LnlRmkaTDIhJBBgRAgAJBQJA
 ux64AhsMAAoJEBypWmNWsMoIibYAn1x8xlAkuQC2ZlUID9ORxSIgEMyjAJ99nQWi
 rCVB/qZMKoL16f9mHKvJ4g==
 =OYqV
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.264. David Thiel <lx@FreeBSD.org>

 pub   1024D/A887A9B4 2006-11-30 [expires: 2011-11-29]
       Key fingerprint = F08F 6A12 738F C9DF 51AC  8C62 1E30 7CBE A887 A9B4
 uid                  David Thiel <lx@FreeBSD.org>
 sub   2048g/B9BD92C5 2006-11-30 [expires: 2011-11-29]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEVueHgRBACBqHSbbyc8BoznmojkguHMrDQtqISv33b9tpIsNSHDgz4Wpoqs
 MRwMPZpStu/FwULPzRUkceoYFIkyRyBwyIqTAD3uq2nisPR23ffDKRe8Q44Y8ccz
 sAtc7zPz/XpoI+2tLVGBCZyk9UOuIK1HkrmEjJ8uG2/eqyuckjO39oA/3wCgorer
 I3uzG/mJG7V0hHaCEkhQVx8D/3/i9YwqVVf2kqfKEGUASik/PXDpoeHfC/v6GFik
 Ss47TSaiuMOCoxF92m9EcOSoYCHOmdkJ1l+AVAWCZvKHKDM6J20dRr1zNqvR37jf
 FlmbF5B/MhRcjaSvrOLnZsP1wlz5sRkdAOdHNN/J/mwqkaatkFwtf7XcFMheB2qi
 1XvRA/kBi8lvPw7/PGibDIZXBxUmWVHLCU0dtrwKjbHE1HIpMwgjbTFrvh0pjmXh
 +qjn9VTcduP50Lrd/J3bh6WSgdc16xT2zxSAg9G8nJctDSJVgOJiYFUfLBpPBeLS
 O5ZN3GHw3TyLnDV/NvaAfzp1GXaGUB4kEuIaiaxxNugT82R3OLQcRGF2aWQgVGhp
 ZWwgPGx4QEZyZWVCU0Qub3JnPohmBBMRAgAmBQJFbnh4AhsDBQkJZgGABgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQHjB8vqiHqbTvNQCghqU1WwfsIQgI4bQn94M7
 z3PY/ZYAnRPT7soJ0GrlKAMRplxFoRWH1C1TuQINBEVueIUQCAC2nNYNyuKG/uCP
 l6/GUoumFRE8tcbH1jW5yrFbi8ahcoi71iCQ6Ozdx+XM/qIu13/iEJmTOvoVyOFf
 0pn0vVjgJ6yWek2oZmqh9Loj0WX2bRvV2uemOfvNwqUvDLCvbdftHgQAHOff5Tij
 GJxEBzDylhkAlF7MlZbCejiIJ7Of9fMC066Yi5M1lg5wAX1gPG27PiXJLMjcLI1B
 BsaIEtJsInd+UWsgjUE4tq1xoFhCeDZZWHCAyc7XyI7cy9FFQIII7SWkZ8TkZwKO
 T4UYyIHKtRFtgrMTkcXAc/Eul0LEo2z2e4L/G+8vF7q9LicIyv3/BF62fgx3iCKe
 HkJRWueDAAMFB/4lX+vF95ESlWuZ6DH1orSDKMzWlaJfl8ImE8nCT+QN/3ZauO7Y
 4kQ11jy2Q+vURzltl5r1uMgAheBR//qDp4OTlqxqSyYFx49iysd3rjP0vnc8WGD9
 BpGobsbcgw9axW6z278IZzJ7aroYBaceOHkEM6nNboZ1aKCn7jYqxFyzNUuJqqEY
 0vxx82C2wHIPb+b9k5LCz+kMrq8fGDPERYYcFFKHMuKZ9oyide/8hQ83KadXbvJB
 /GAqx+prMs8axuAMoGgksMRV7Er+eRZNqYyeCr31j+Oh4qpUbe1q3UPzkoUg9OMI
 qJXvBn5S1M2B8epkggu4y6HDsbVXqgT+NCaWiE8EGBECAA8FAkVueIUCGwwFCQlm
 AYAACgkQHjB8vqiHqbS5dACfWGE7OYOJs3lJUh0fHYJEYGfcOKMAn3Spx9LXSIcR
 mVETDDKHRmZTSiZX
 =iAPM
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.265. Thierry Thomas <thierry@FreeBSD.org>

 pub   1024D/C71405A2 1997-10-11
       Key fingerprint = 3BB8 F358 C2F1 776C 65C9  AE51 73DE 698C C714 05A2
 uid                  Thierry Thomas <thierry@pompo.net>
 uid                  Thierry Thomas <tthomas@mail.dotcom.fr>
 uid                  Thierry Thomas (FreeBSD committer) <thierry@FreeBSD.org>
 sub   1024R/C5529925 2003-11-26
 sub   2048g/05CF3992 2008-02-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 oMybWISax+SEH2PZ7dgbNw9pgQub
 =oY1+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.266. Andrew Thompson <thompsa@FreeBSD.org>

 pub   1024D/BC6B839B 2005-05-05
       Key fingerprint = DE74 3F49 B97C A170 C8F1  8423 CAB6 9D57 BC6B 839B
 uid                  Andrew Thompson <thompsa@freebsd.org>
 uid                  Andrew Thompson <andy@fud.org.nz>
 sub   2048g/92E370FB 2005-05-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEJ5esIRBACGrMoYYIu2yCvXUOUgySagPjKetJ5zKOCFDa/Gl65tFtCcc3YR
 IjSDCvKuxcuS/qPo87pNP1sHPT0gVhMr+zcTrj8rgLWfC+CTzV3FPTdIA7LhVwer
 +evZ1jSHo/MY+GHTYBiDj/GiDkk8zBk6Sppo0OdzqZ0O8IW6tvh9n7RNZwCgrPYX
 rzBYHlAZxmZfQTDhgi8rPPcD/jH740waoG4l564X9hfkHDbxe2mrwKrcxfUbNi0h
 yIOTyl3glTULTno/xG6zxh4qG/COxIWhjC3Nkwllq+VzWqzYFoPIV4E/nvPNrLLY
 5a4/19ANLLkrw2kiLxNKLPu+SwnAF6cLdnbpPrGZSGOg/DhquXulAs8foTxv0SVN
 F5dAA/9O9GFOk9IcZ6D77A7Unysoxoa3WwqNHikJTo+bHvENJJw6BM1e93keLXbo
 bljw02y2cBXMz+cwd0S3ysj2tEPvEWpUJCVbCk7bB565R1TBb8SJB08MQ7PuOzbh
 PCCc9nB2TditjUTuL1yTrOW4qki1fHMA8ySNuYBiw/iUOkHgbbQhQW5kcmV3IFRo
 b21wc29uIDxhbmR5QGZ1ZC5vcmcubno+iF4EExECAB4FAkJ5esICGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQyradV7xrg5vQjACfboFkm4m9zZmor2J1+T5IknZ2
 z2EAnjX7sCxeTxGAUp0gv1+ijFir8Ju4tCVBbmRyZXcgVGhvbXBzb24gPHRob21w
 c2FAZnJlZWJzZC5vcmc+iF4EExECAB4FAkKUyikCGwMGCwkIBwMCAxUCAwMWAgEC
 HgECF4AACgkQyradV7xrg5tJswCdHh+UXADhzk4yJKgLuJlLYsSCK4YAn26SPktp
 Q2fQpBC3mGRRUYVRowhZuQINBEJ5eu8QCADgBVHTfrvthg1lDFvuZVlSgZueFEuq
 dBn0tyJULht4MyHAYzY1fBkKtRPxp/c+sGKzd/nXZ+zqQIJRYtrAviGAi9CyHTiI
 URcpMACCvofuRoMJ8djl35UzioL8O+icL2aoSq1w0MBzzkwTDcmaiceWVIC/RZka
 U0/irf31HSzAxGYO1wXtZuYp6BrEwcRezDZQUkO/riGKT9+UUppnTFVBbyelvVjt
 D9iyeRnL3GEOH0IvXbPRo400EwOHs4ieOZhNO4xyzj2qexMcbFq2nUis/qctukth
 lynv0mYVstLgS+GQiX8+VsbmK1QkTfKTY2ufTQDPJTcAa7Kneb+luDYzAAMFB/wP
 UyXix1pw1+qSJS6m6T7m6wmPj93/BoB+sadJvmjdaGcE5yKtCLdQYHZyI8Pvl3aA
 uktn+k/IxqSwLgJCSHv9CQ0AwN+kuIPHyy+hsJk1w5C8Qd4q8sYWecyt+aycYz7X
 Op9EB2rpKgg5E+RHFsuyx/X2dI4/n9XsF0xTDXmvBYHLw1E22rliiS9WlJ1C8UHn
 gjVZ8nqd4bI9HcwQMadtjXj0EcyarnJnrqLkJopzmLSJfOtnQvXyaTzwfS7fyQYs
 lnj+k/jJFULvgolWLmmfx149+3ou9c6c9KItAE8kfl7dSaEwOo4oE9cKluzhFHeC
 ezponq9OPdSpXUwBXjJgiEkEGBECAAkFAkJ5eu8CGwwACgkQyradV7xrg5szjQCf
 WQNYMndCd/TFxFqNF8k6Nu45/lIAn3oxSJ0Gc09OwQB4oiL6kHscyL/z
 =SFfV
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.267. Florent Thoumie <flz@FreeBSD.org>

 pub   1024D/5147DCF4 2004-12-04
       Key fingerprint = D203 AF5F F31A 63E2 BFD5  742B 3311 246D 5147 DCF4
 uid                  Florent Thoumie (FreeBSD committer address) <flz@FreeBSD.org>
 uid                  Florent Thoumie (flz) <florent@thoumie.net>
 uid                  Florent Thoumie (flz) <flz@xbsd.org>
 uid                  [jpeg image of size 1796]
 sub   2048g/15D930B9 2004-12-04

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEGyCSARBACWd64iJ+56C42einT4AIwy9qon61Lx+LO4BOMgeaQTGy9/fKq0
 XqQmPddhp9awRtm0+QoeZQ00q2qyY6ufmSZJCr9iQg2a1b/fG/UKZSIKBguDuCCk
 O6acsAd3H0fmZRu8jAD+pMsJb9gO5T6YLIHK9p8uVPG0lRKzulTXm5zsEwCgkoi9
 h+S/dIPXfX94thtJgVcUeLEEAJK9ZO2KFfGx+YRKDpbj7ocGgjqMlhkDFw13Lycq
 jopPipNwpey4ZKjJa2w2fmIbcqpUZW3EH1Ld8KBOt1bhGlI92uqvrssalNH82PGL
 cbiuvYMHXOfE05tOWD2JgxJE5tY0KtED4SDaF77RAcy4z9nFt4og4YknB/seOQZ/
 5oSKA/980pHAvnm3TFK7jQN+AIckWxOS3mXxvwHmvM/MzQEVUrFAPp0C/aCh4JJF
 7Tvy54cRKEUJQpXuTeyBT0pMU0ataaESMfk4hM/WDhvlV0AXebah44uJfBAcHwJt
 f/d3c+1I5eRkWuN+ey+6FfBCooW4KvqVCnrWC/Kk16VqAyn9UrQrRmxvcmVudCBU
 aG91bWllIChmbHopIDxmbG9yZW50QHRob3VtaWUubmV0PoheBBMRAgAeBQJBsgpP
 AhsDBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEDMRJG1RR9z0Y7sAmwT9GkO3Wcrl
 y9KcPtsQV4x6dvJhAJ0cGtclPmdOM34jMC7U5NQol2bV/rQkRmxvcmVudCBUaG91
 bWllIChmbHopIDxmbHpAeGJzZC5vcmc+iF4EExECAB4FAkGyCSACGwMGCwkIBwMC
 AxUCAwMWAgECHgECF4AACgkQMxEkbVFH3PQ5igCgiRkJPRjrvitfZOrvLhx+oScK
 3moAnifC/FHLFLr7hG/NlgLbF2yjN7Fv0cZXxlUBEAABAQAAAAAAAAAAAAAAAP/Y
 /+AAEEpGSUYAAQEAAAEAAQAA//4AbwoKQ1JFQVRPUjogWFYgVmVyc2lvbiAzLjEw
 YSBSZXY6IDEyLzI5Lzk0IChqcC1leHRlbnNpb24gNS4zLjMgKyBQTkcgcGF0Y2gg
 MS4yZCkgIFF1YWxpdHkgPSA3NSwgU21vb3RoaW5nID0gMAr/2wBDAAgGBgcGBQgH
 BwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5
 PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIy
 MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCABgAGADASIAAhEBAxEB
 /8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUF
 BAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcY
 GRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqD
 hIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW
 19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAEC
 AwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMi
 MoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
 U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaan
 qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6
 /9oADAMBAAIRAxEAPwD3Fic02nkAmmleagsSiikJ496AAnsOtN3Y7ivNfHnxL/sb
 dY6KFmuwcPcHlIiDggf3m/T8a8b1DxL4h1KYtdaheyZ6BpTgfQDgflTsGp9W5z1o
 zivlTT/E/iDS5EaDVL2IKwOwTttOD3XofxFe1+BviNB4hCWGokR6l/CyKQswx/46
 evH5Z6UWA9CDetOqPqKkpANY9qRetOIzTQMGgCbuaKO5ooARq4z4ja3Jpegra28p
 juL4mIMOyfx49DggZ7ZJ7V2bV538Qrb7brWgwAH70mT+KZ/lQJnPaV4Ksrq1iuNR
 V5ZnAJTdgKOw4rbTwdoaqQunoAePvsf61qoViVRwAOBVtCPUUyTl5/BHh90I+wfj
 5jf41y+reC4tMzf6W7L5RD7CfTuD7V6XK2AefyrKv4i9tIigncCOKAub3gvWJtb8
 MwXV04e4BaN3wBuIJwSBxnBXPvXSVwHwwR49Kv42PCXRGMYwdozXfg0ikFJjnNLQ
 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
 YhEx5U7AKdGZ55po
 =hxwJ
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.268. Yar Tikhiy <yar@FreeBSD.org>

 pub   1024D/EA04CF5A 2008-08-31
       Key fingerprint = C063 6788 AFF2 A62F 06B7  516D 200F 06AF EA04 CF5A
 uid                  Yar Tikhiy <yar@freebsd.org>
 sub   2048g/20443F06 2008-08-31

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEi6nDMRBADDmOkKUcTtDy4VHqTIJfILJsWmfnYBNzEzqQiRTO9qWDpmt9ah
 8lb2/MYT45AMdpUQu3NagY9oZq8bkUsUZ527gDHYOIclgwVulGEcDuwGSJrUi7mV
 5SrEWqi9FspzRgaEwjVSB1XDXqb60J7UHXzyxcUb//f5Qibxco2k9fqzxwCgtZF9
 XBidVm+Vsj/cKoJ1FXm9NWsD/RgYQzE4WUlZ3wVw+EX4+kIgHgPh5vfx2KdK4R1u
 KdWLOnamegQRQG1pe/4nAHH8WTZOkoL+eN0Vgd4Y/2/vrohQWEknqz5f4uxpOXgA
 cWp9B4Dfk4i280vNvWWoCclDTvk5Ukm305YaR4sSVHpSdwu8s+KBIZ9ia5LXpZIQ
 iKVvBACT6K15alAx71Shv8XRGiU8aYiRHq2/vBzDOPsEwomM1mIeCrJddZbangab
 GtbyizFtz4ZG2aA7ctOFVDnfbU9PHfXD1wywkjz+LBHAr32z5QU1irSUJSRGP8vr
 pOvNsrLaSS/L4Ux+kjfrJ1o/sX7isr9izsxuob2RKULBZMFx+rQcWWFyIFRpa2hp
 eSA8eWFyQGZyZWVic2Qub3JnPohgBBMRAgAgBQJIupwzAhsDBgsJCAcDAgQVAggD
 BBYCAwECHgECF4AACgkQIA8Gr+oEz1omLwCgkAutx32AF5bws/pj7R+zSWy6bcIA
 oLC9q/1fLyeiFMyurmx92vT9d9W9uQINBEi6nDMQCACnALycl1uAKREjUAYiWjO1
 CjLEmjFXNM4gryW+gm2ZMk0kWCFzdCSMTyk0pkMV33wa2H+BOMRk5XhwY3AdPnmN
 mwYwNnptRxeIrHc4J8RuQkI4apKwZ8Z62iA+c56LZCYluJGzNCrQa65LgW70fDuP
 Z6BeBCvF0pSAmUCaivezhJPQAuiZg3B2Nf2Ty7ZsX2DwuyvJVwx5mGudQ+b9YKS6
 A+nkBke0AE7Q/CS04LpCewlK+acNka3b2JlAtDpOLSvx5bzzFsZcyMmhJYF8Am2C
 4yv0F6aD4cTdH7mSvFRND9pkDtpUYDuPpJt+RgSSelXEp+nksvwTIqX3tM+vn7qL
 AAMFB/wO3l7LM8z3QaQB/eMZV4U+14wJLsWvVU1vAAR0GG5GqefSgDQOvcw1MmSm
 YsX50lGKBdtpaq6UqXcEVKJtyg84HySwMBNRGFeibiiTO2ldaWaGS4c9e0eVu7vY
 Pch+DA2rrCNuE+lb2bWlDfkDsrK/doOiYVu0XiIQK3WFF8bTXRW+9T2OWyCjAcTl
 Yml4eKqedob/PWApJPMvMzLpg1h+VfV1JPcG1xmeoT+mtRSDME14GZwoF8JLfci8
 Gnp4odmfgx5f7dTU60DPbpps94idR7dkFrTeWervPeXvFWb4+hSENb6fgJKoBkt+
 SsC+h7OmCBsWu3GCEVQ1XhB6jezfiEkEGBECAAkFAki6nDMCGwwACgkQIA8Gr+oE
 z1qM4wCfc6TUkmIxEfS6j6S358z+qkLadQ0AoK6vPNvtYK734zGuUg7w0Lm4KmHY
 =xzp4
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.269. Jilles Tjoelker <jilles@FreeBSD.org>

 pub   1024D/A813D5EE 2001-02-18
       Key fingerprint = 0C82 44F5 0A1B 84E4 A9DD  7032 5102 275F A813 D5EE
 uid                  Jilles Tjoelker <jilles@stack.nl>
 uid                  Jilles Tjoelker <tjoelker@zonnet.nl>
 uid                  Jilles Tjoelker (FreeBSD) <jilles@FreeBSD.org>
 sub   2048g/B94834AC 2001-02-18

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 YjItxp6TYtl3DovuEK1DXg==
 =BnuK
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.270. Ganbold Tsagaankhuu <ganbold@FreeBSD.org>

 pub   1024D/78F6425E 2008-02-26 [expires: 2013-02-24]
       Key fingerprint = 9B8E DC41 D3F4 F7FC D8EA  417C D4F7 2AEF 78F6 425E
 uid                  Ganbold <ganbold@freebsd.org>
 sub   2048g/716FCBF9 2008-02-26 [expires: 2013-02-24]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEfEDpoRBACh+3G72OFXvEjpBhfsiLhudF39C+E4zZ47xuWC9oAV/8y4jJdD
 70TjTBYydonraDCxhx+GdjfCzaN3PYw5fOMTric9xi3g8s11oKtzHG5NfgHfMIMV
 R1+7D2uXzgl/10JeYIz8DriaUBdHSKOhge5eNyXy6l1z1dPvnkP+/sQ0QwCgnaaU
 gIVvEj7qRiemJG0WRtWPU5sEAII5NYtidbx5SKM7/JzRtRI/BG497VVrcNVKbEZF
 jH5WklnTTQ1v9TnQfP7iksTZ6Ik6k86/opOagqtCRZ/Pdm9ldU/dZNFoA2f/4iER
 Od4Hhnm4rQ/rSUwXl6aZfE/26iBmH4/KkfkOX/mnRHAhs4EttXl1Nt7ew1BYwIAu
 +1eFA/40VV0lL93ab5aqvZ0fX6MmbXWjZXQ4q7YscqKclvGJK/BL4C7GTHk5Sn38
 uv+b9l39YR5yuZt2mByWyNCBBu8nXQ/vSjQ2V6wzFizAVZv3b6k13aGj4/ZUZiV3
 Q1WuU6qHvafvl0BJJBw4ywOC5gSU9eR2roGQb37fvcwH7nd747QdR2FuYm9sZCA8
 Z2FuYm9sZEBmcmVlYnNkLm9yZz6IZgQTEQIAJgUCR8QOmgIbIwUJCWYBgAYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJENT3Ku949kJe/EAAoIFqc0wekId4QcEDk35R
 OBMT0mpPAJsE2LsdqX17BXJLuVfuQuxIR9RLP7kCDQRHxA6aEAgA4w40fvHBJOqJ
 1RtowjBEX8uDEOwH2LlnKK7S5P5Z0PRM4/p+a4/P7KKRYAVehaBPc56TW4eqIXWE
 sjGNoJd8SIS+M7LIhlgBe0E0qKO1PXq7Alr5QMSR9aSS3z8NPWdKHU6+bJRomM8h
 1v8l0dBfFdYsrP11FXoAtRhkRnxB5E+A3rMJ35Uz5WPs/omz422M6SNziVn9lTXT
 N0Xk/pg3KHIVjosIakfbV25ZbrX0XYWNvh3zEhGyvbV5A4QuEXg4HSjYd43l5p+z
 FreZCrQh7IN4Oj1SfIbWzsoIygn9IacXQW/iASvpVcqP3yozcL8oi3VNSZtWY4fg
 jZZTIEJ04wADBggAoha5dSArTS2Tq04ArO/Mew4ZSZyOYg8Zay2TURrx1y2BU6on
 F56WwV2/C1qPzCOGDeVnYiXKKHnc9bNIefzKTMsJdIihw9N1CfD9h8MZ23GbhKcg
 VbiRC6t1b2BR1C7H52rPs8mXtywSGiI9pjzl8bA+ARCsvWHKe8R8iwL+jw+IVF6R
 94xcbHtK9EKOD7U2bVhiRb/uQiY6df6+VjL9lLoJMSLSWXWMtk3KJoFt6peB/XVu
 NIvbdxcU+xpgqz/SBPUs3MIgt9dG29UBsez56l0hgDAU7lcR0EIpCeBA4MskhInp
 AEJ38BJ6zL5MNmOOXWki2+FT4PbLjndwqxP0Y4hPBBgRAgAPBQJHxA6aAhsMBQkJ
 ZgGAAAoJENT3Ku949kJeYScAnAxcM/ZxE+XdjWrIazFTBJITMR0LAKCdaevdwU2m
 HFVwUGCsG1R5u7ctUQ==
 =rUEt
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.271. Michael Tuexen <tuexen@FreeBSD.org>

 pub   1024D/04EEDABE 2009-06-08
       Key fingerprint = 493A CCB8 60E6 5510 A01D  360E 8497 B854 04EE DABE
 uid                  Michael Tuexen <tuexen@FreeBSD.org>
 sub   2048g/F653AA03 2009-06-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEos/K0RBACA1Ck3ZLIpeSiYRNYG8RXCxbvHFOsI56DCwbRm6VXwjbbH32wv
 FZTxIR+A6LQQLCLDEvfklgI06Ksi4uWfAoLRB/CoiX7crEZGvYDc4kYSVjumjORh
 OzDtUiechd17/gyo4j+u1PDtw/5XXpSaTIRJO3g/UobVpUPjl4dMz4Ks/wCg25PC
 MPQI2rqriwffFak4PZdJ/JED/RSqsLqjsBOpk0hrY22VQrDhCHrWsVopq5hcqElw
 W1iuLMBhGK/Lursari5M8pSmjJVeWMEQwDqfF64MctbbfmOfMaRRggX2meVdMq3c
 o7bAWWEfstFB5WlUkCg6TIQjLV/4QbATfX2YkIcwuxiwC+CMq2trAJ/X8A6VdaOY
 tkHaA/4iyk4gCbvCxB1bhDp2HiDZfAWm5OlkHefzWeMIY7O4k5+vpaS69ui1xgYO
 WhXKB6RpDXcJzvZdBQqrXqFXdfBgOwhbUj1uOgkBCMpC7EXT07sxzvrnaW/RR51f
 KTeplrRMX0tXMij7nFh/WzJFSfFK+0W6+yaRVzXa42ds+VARd7QjTWljaGFlbCBU
 dWV4ZW4gPHR1ZXhlbkBGcmVlQlNELm9yZz6IYAQTEQIAIAUCSiz8rQIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEISXuFQE7tq+FHAAn36ou5m91emjHT6ziIWw
 80iHtiyiAJ9RL3W/bShdgmG0U3UKDnPrSwebdLkCDQRKLPytEAgApnToBctsJKyI
 YBJp2wusPzd+8H1Ab0VCcL4pcKWzCIy7dTJSknLpJV7c6ts82+pZBKUMp1XHfnsT
 Q8YwoaIUOQjkBqqlkrxqkexidwj3VVZfUvHfXvU8Hw4JM862MtYa6ZHRoz+ZSVQi
 x8idPMFhs+zD9Pb0ct6YsINeKiEGTGnanm3XJIIeNg1bOlrTjDiWB6KnlMmmeZ/R
 o4vGdnO7wsP03VtJBUnPNaQ8luAs4SHBTmC+tXNhBYwn7Kh5PGR1TVH2ROpPOYTS
 StOktseR6iMJ//6mJEBOt3cypOx2d7hbXfy/LOijg5Ku4FkUUmJrM4yDMgN/2bPw
 RGw8KgOvFwAFEQgAlw5VA4FwTgo/2+pDtQxtp96WuvQxw1IL1fPPNwGO7b2TVlj5
 KTqvsqx5MP9jLCTPi93KKAFzwFfzXxOD+Isd6AxeuotlxLOUXeCdcpeyYHepURYT
 7bjYg0DaaoqZopm0L+8c+hvOLfPaJLWVbUCEy219SeCA3xtGvRtFY1JXIFk9sbgZ
 y23S592sG/5CAantKyI+SHzZim2mj4iRiI9HlGDLpGn6QAyz5HX6a+TXdHijg/xK
 3T0xfBLn/xh5tSlBdzKR7cXSmzbtP9HL5rewVgVAqqg/Mzc93nD+gY67bMwAeyHq
 u2OCE6YkLNJz9kSqsSygcMDI8vKoPU8cqDvyyohJBBgRAgAJBQJKLPytAhsMAAoJ
 EISXuFQE7tq+/EgAoLrfM3GP7IAcTezTbs+BjUQcoWHhAJ9sJmO1S8JcXD8f9G2J
 AOE2UIkbvg==
 =adk0
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.272. Hajimu UMEMOTO <ume@FreeBSD.org>

 pub   1024D/BF9071FE 2005-03-17
       Key fingerprint = 1F00 0B9E 2164 70FC 6DC5  BF5F 04E9 F086 BF90 71FE
 uid                  Hajimu UMEMOTO <ume@mahoroba.org>
 uid                  Hajimu UMEMOTO <ume@FreeBSD.org>
 uid                  Hajimu UMEMOTO <ume@jp.FreeBSD.org>
 sub   2048g/748DB3B0 2005-03-17

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEI5K/4RBAD0LiHx/Tl4UyaX8yFUGjX1+PvATTJloNZGXl+jagSUQxCOp6Hv
 emDinSPskld/viupoAxjRImlkP905Y0Q6iDMne4s5fM/75lpeG9ztKRSgDQrQLTL
 HhXPXKNMtDV91yDqFEkwptS+0MaTMY0KrlR29RtGnpjoa347TU2BzU6TcwCgw+SL
 YdOWeSGs/7LKdUIyYlrldjkEAMqIQwnDl14vZBe9EOCrjSA4gHv6g2IQP1TRCpBu
 +/Fpi2+xcj117xO++uqMMzoi3aWwsqarao0/VSJ7ZD81by1H56Hnsp1d0r67neJy
 PKsyh2JfSQww9cxVkQjuZAjZNN1SLzDeA6xtSZrcmim+f0GIxlz3JFS9za/scs8x
 mGqzBADRF2My4V5HEMeScREj2hoquRv/uG727Nw+jftwiE+7TB7+JUwwyakAStNv
 x4+YEFAVSpKxyWgOeMqOWYd9bOSwJk40t9y1Gk6TTgV2C6sYwGHMSNOWYZbhYX7c
 84cxm2PtQFIq7g4Q30IkfAhYFzEwKmPJ8eV1zO0uNIhE+SO9QbQgSGFqaW11IFVN
 RU1PVE8gPHVtZUBGcmVlQlNELm9yZz6IXgQTEQIAHgIbAwYLCQgHAwIDFQIDAxYC
 AQIeAQIXgAUCQjxiFQAKCRAE6fCGv5Bx/qe3AJ99w7Ipfxs4CF3/+eCf53HO3FuI
 +wCdF/xyvVjjNdAYXCMxCHtUF85bD++0IUhhamltdSBVTUVNT1RPIDx1bWVAbWFo
 b3JvYmEub3JnPohhBBMRAgAhAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQJCPGIY
 AhkBAAoJEATp8Ia/kHH+3c4An3RGo6JduyjPTZFh0eCBezNgzxdnAJsGRRE6ERs8
 nyORm56bvSgRTw9VKLQjSGFqaW11IFVNRU1PVE8gPHVtZUBqcC5GcmVlQlNELm9y
 Zz6IXgQTEQIAHgUCQjxgkwIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRAE6fCG
 v5Bx/iTtAKC+8mS7jAYMz3QsCe4dJeIPaJcFGQCcDQITgNpJcUmBZ5u21Jotvp1X
 T/y5Ag0EQjksbhAIAP1+LeYSauTBi/ST3343W0lkqYr6HgZMNS7RtoCGFWcjfiYU
 99ybRgr0XwH5yJrn6JASp27f/ve5cwt/7ERLZ7flcfFi53AekeuRjFDkThLx2N4I
 s29ZQZsYubdOKHapnMflnFE3PQfkB7Og1MoFxkp0kOAEP/rOyuLMc9CbUaWczxWo
 FS8bmZDJ5ZNzAQ2vQFu5ExxomOENApy3ZCm/Z6MU5YJ2trsP3dkYStyG+1pT4NsU
 R4+TIbQfFzwZjowiC5w8rM4FIV4FMQ+3YvIEVkT+M/93hLGakh5tQENsitj7JsrC
 VA2mkomV4Hnjj94YCxUiPu59kHgiKGgXbdnceX8AAwUIALF64I+guwCaHbjoRPVg
 HWRuU2NzuKN93xii+xyIpImf+S30aTbFy0D6ZTQRSCs34oVNMSkUzySVcVn9DTG5
 +KVCHCOnGMH/Iv3dRWlHZ3HX6Gvr/cRyhDfWYDEec7KCDGT7Q87UbmTZ9cmOh+/h
 M4ND0NoYU6/EaaOqyRH4D8/LAeg0YsEpilClYWhlXT7VS7noOBf1JuB9Q0nOGycR
 DstkHWJf5om82lH5FzAuh9kEAduv8JdBdsMh3Zh4N80tCV7OyBQFWHV0UgjARSLY
 msEuelzzaFcfR2vIrmpYIElr6JzHGBiux0XK3Qk98kexGRdbrDFpaxbrsjs1/8m9
 MVOISQQYEQIACQUCQjksbgIbDAAKCRAE6fCGv5Bx/mRWAKCAQQ67iDvQq08n+bHa
 QkK3EDOmqACfZmJe9AepCkPAUkvp0ketnOPBXAE=
 =QZ8N
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.273. Stephan Uphoff <ups@FreeBSD.org>

 pub  2048R/D684B04A 2004-10-06 Stephan Uphoff <ups@freebsd.org>
      Key fingerprint = B5D2 04AE CA8F 7055 7474  3C85 F908 7F55 D684 B04A
 uid                            Stephan Uphoff <ups@tree.com>
 sub  2048R/A15F921B 2004-10-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =93PR
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.274. Jacques Vidrine <nectar@FreeBSD.org>

 pub  2048R/33C1627B 2001-07-05 Jacques A. Vidrine <nectar@celabo.org>
      Key fingerprint = CB CE 7D A0 6E 01 DC 61  E5 91 0A BE 79 17 D3 82
 uid                            Jacques A. Vidrine <jvidrine@verio.net>
 uid                            Jacques A. Vidrine <n@nectar.com>
 uid                            Jacques A. Vidrine <jacques@vidrine.cc>
 uid                            Jacques A. Vidrine <nectar@FreeBSD.org>
 uid                            Jacques A. Vidrine <n@nectar.cc>

 pub  1024D/1606DB95 2001-07-05 Jacques A. Vidrine <nectar@celabo.org>
      Key fingerprint = 46BC EA5B F70A CC81 5332  0832 8C32 8CFF 1606 DB95
 uid                            Jacques A. Vidrine <jvidrine@verio.net>
 uid                            Jacques A. Vidrine <n@nectar.com>
 uid                            Jacques A. Vidrine <jacques@vidrine.cc>
 uid                            Jacques A. Vidrine <nectar@FreeBSD.org>
 uid                            Jacques A. Vidrine <n@nectar.cc>
 sub  2048g/57EDEA6F 2001-07-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.1 (FreeBSD)

 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
 =lY5L
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.275. Nicola Vitale <nivit@FreeBSD.org>

 pub   1024D/F11699E5 2006-12-05
       Key fingerprint = 2C17 C591 2C6D 82BD F3DB  F1BF 8FC9 6763 F116 99E5
 uid                  Nicola Vitale (Public key for nivit@FreeBSD.org) <nivit@FreeBSD.org>
 sub   2048g/4C90805D 2006-12-05

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEV1n44RBADfkt4OUwHA7c8DbobkvhyXCRHC6w0NDQER6Q/uAE68nvEgPcdO
 dAvGXUpNNWFXbKEnIc7ANCm0V7F2VDfwANAzePY1wBfVM8UQBLuSV2WIAfs1beLl
 MZzO7sth2oeMuF7l7WwM31qwgRLTOOzXs7zG+m2uh1c1nMTKG9wgQ4rz8wCgmT5i
 oJ25GpzaM0kgX3HQWP/MkFMEAK5GUSesXqHc37fEnO4WVvdB5afc4RTDJzvniXBm
 nXkHin6uAWw4HSJOEOLPv8MtRZuIxOfznukjBpHnz19R0fEvWdRKzmDoc3Yn0BW+
 FdszOxY9Nt+LtY3/ZdcbgAtWu662/t3SvgWULgCQ7bvi0Nu75Zn3nui4j2uU5fNf
 6v4KA/9x8FXQ18BPO7EuYe5ewQwVaGWKvzrMmz8NsiZuRs4oxWXL1x0nSCumetKA
 03UHxGAQli+vuMNDcDXg5zpaGN7hIqS1N1fR7XEouvkgTDTUPsjjQUdmQ98lnEBf
 URB5D+qDq8nq7H9R/4rOmxKdiA8xmBzadnolJ69Iz9nyJ4mvb7RETmljb2xhIFZp
 dGFsZSAoUHVibGljIGtleSBmb3Igbml2aXRARnJlZUJTRC5vcmcpIDxuaXZpdEBG
 cmVlQlNELm9yZz6IXwQTEQIAIAUCRXWfjgIbAwYLCQgHAwIEFQIIAwQWAgMBAh4B
 AheAAAoJEI/JZ2PxFpnlNbMAoJWh5Yg1lOayXo3b8seKn09ers2UAJQLxlE9lS9G
 qzU9FITOFNllI+duuQINBEV1n5MQCADqyPgr+kjhfCz/2N8y3FmWr4CSE0b1S7rH
 i7fy27u0QcNK3vN/l0Vbj6dsacfP9DC3+aGw3W8uY8LK8q72AIAwLh1aoYtJfzMs
 v1kqY4shMAANF55VgcAb7lyHpSymFraVZCai0nzNyccjJtSNQgC9s1BkXeUrRTS2
 su078DDYVgbXs1S14PkZOyrZ+0R4y4M6QKvD8Th46K+mZMaXdcn+wlIvOISFQppP
 1htkyCnHexg5L6PE/VsdobiCyZ2zNKd+d6GUillVuO2Qpkq1dlLTPtRgFMnpjhRi
 L0+a84b8rs6TE9g/ZLKNOmfmbGTTk3u4vQ7u6Mky6GCGO8W8WHW7AAMFCAC9NGWK
 RU0l0hfHY3kjLll9Ygcnt42nAj4ipmnzMp0jAPV2AgShnzDJLZ1KHmJcUfby4I6c
 HDKrI5lt6B8OD1hAWbHaAJ1Js1vfiwGDqisra5ZvkfJQMY1CDv1orXeM/ZnWzLSp
 +PqVXA30ei/NtngXFYlw+BJHnbB18eKw25jT6n72Ls0T9xZscwgseAmSKZsrb6M+
 N0tjZkkueWRbvrFum1i8Hf+VYhCgRkQFcTtEEo/Ulb6GRDXaFLPZzklfQMvjgWel
 yfWpv5Qg6knJFGbQyZrJ/jNBAi7aM8XAuNhhjC1oHVyNlIRM1V+1MybvoheREjMY
 qcdWjs5YCrg43SWAiEkEGBECAAkFAkV1n5MCGwwACgkQj8lnY/EWmeXXJQCfW3pc
 YuXRQYv5d2NC5AfgnvxmjnEAmgPFcYvU/gGprH9Hz/bvXp3KrT7M
 =NcNR
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.276. Stefan Walter <stefan@FreeBSD.org>

 pub   3072R/12B9E0B3 2003-03-06
       Key fingerprint = 85D8 6A49 22C7 6CD9 B011  5D6A 5691 111B 12B9 E0B3
 uid                  Stefan Walter <stefan@freebsd.org>
 uid                  Stefan Walter <sw@gegenunendlich.de>
 sub   3072R/6D35457A 2003-03-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 Sjk9E6QR
 =iXXA
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.277. Kai Wang <kaiw@FreeBSD.org>

 pub   1024D/AEB910EB 2006-09-27
       Key fingerprint = 3534 10A3 F143 B760 EF3E  BEDF 8509 6A06 AEB9 10EB
 uid                  Kai Wang <kaiw@FreeBSD.org>
 uid                  Kai Wang <kaiw@student.chalmers.se>
 uid                  Kai Wang <kaiwang27@gmail.com>
 uid                  Kai Wang <kaiw27@gmail.com>
 sub   2048g/1D5AA4DD 2006-09-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEUZ6yURBAD9qQ4Pz+LEm54dEtrDII566La8mVjMpZfp/xcPSY4Jsj9Rin4o
 XiJ4cevwTiAr7KBGbO4uJ/hRwOQMlql8vzwO+Bc66zLxwQfGpLniTvdEnsRmiwXn
 MOlc6Kd1SwxOk4rV/B6p1iJLZ6sXQPx9IlDskyJ0OhIYKBaYx4sjN4W3wwCg5QB7
 QSrzEldBYnrxVFLHfmQO6ikD/3sW06q+gAdSFwFCFEZmE0kaCVzQUrTwnyKWlRPx
 Fvk0PftHhbofybxiv3OFp/zHZMHRlcVqcYf7WRLww+QXRgFh6x5kkOoAFMVJzhYH
 xKcXSnqPph6M4H1GvRVo4G1FkdqEZ5z2hRwiryugSfuzRRHil4ewpZQeB4am+Llu
 H3UeA/wO4eqG62W13pRephwYO0ramQai+WV34z+DUGoKY2EMpsbE6+J85aiySvor
 BTfWq1Lh5Mg3RYGWLmLay+GDQE2YIc1EUrCgHlUpB+vB+3pqPq+5ssOixktylJna
 R40BAqOP/gO/sSBnCZpI9nNqtKDpONfS8xwDArEKaoqxxphD2LQjS2FpIFdhbmcg
 PGthaXdAc3R1ZGVudC5jaGFsbWVycy5zZT6IYAQTEQIAIAUCRgD96wIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEIUJagauuRDrMosAoIPJziIJtz3GBALxa4SG
 nIUGNliZAKC8yMp144zGxaumG1n4HZLNdaMwVLQeS2FpIFdhbmcgPGthaXdhbmcy
 N0BnbWFpbC5jb20+iGAEExECACAFAkUZ6yUCGwMGCwkIBwMCBBUCCAMEFgIDAQIe
 AQIXgAAKCRCFCWoGrrkQ69oVAJ9gWVClx+v3Hhvw2AjOyFaDT4hpnwCeP2ppw3M2
 nNkuXRtTI3uY+jwCSmm0G0thaSBXYW5nIDxrYWl3MjdAZ21haWwuY29tPohgBBMR
 AgAgBQJGAP2+AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQhQlqBq65EOtj
 DQCfZOhljB+TJQncoZWMf/CvbT5I/ZYAnimgyJtouIZGXSTqU172qsr721aTtBtL
 YWkgV2FuZyA8a2Fpd0BGcmVlQlNELm9yZz6IYAQTEQIAIAUCRvwuFAIbAwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEIUJagauuRDr8iYAn0PbQX8TzGfG4VJkI/W1
 9Y2lQruoAJ4jtv0WxAV5CxIbBccVErg9rEdBdLkCDQRFGeswEAgA3/ArJRAwAXv5
 AOSioc12EGWSX9bpYWfcODoJL5ggaBLQKE8SiA+evSXgvfW9AD8S9T5ltLSAYXUb
 pbIWw/Nnp7w9+hC81fQI7mHoDe7oSsJa1mnyzibnqRczxy3V23cjqPLeZiRr3AkD
 mhBkONQron7mk23x1lTsHCgFmxBZWxNdnkIprmN37YkiUB0ky3/x3s7BVdat3hqQ
 ot3OF3i/6ugqW3qH8+Z3uEpWZr2yx5KwEJbUQNvgQqONlZsMDCp03jJuPIgnR/kA
 iRFIUmGLocgOqfL3JL+l7MflVQFFlzZNQqKK+WK2kXOc/C31AsVY0YJ4CsjTQyBa
 775LqpnTtwADBQf/WOJ8AztEUxh75zndmMV6tsUhq8K+cfaWR0e96zOP0eiO5IRW
 Z4muIXIBC7FxgyR628XAPm3a/IbMpD0Usure0MIQkmaza5ktGXG03KCpQYYhveJr
 3I69jJHUM7Vvrcl+a9wY3Ni5UgIfmWQzdpsVW707/SjZDcD9e3MWhASOThKb1wIM
 II7zgKICwGBr4VSwNVdikdHJ2wNhziuwJQHFxQs8rsXTLzHeJcWJfpZ1bi1P4Csw
 lsWosIFeKESAHoPsbpHHcS46cd6CXbOTLkonsUDqW5DZoN959MI8txkh54heZdXv
 al72Ksb969EL5ef//lDo/ex8aaVYaYwiI0H3VYhJBBgRAgAJBQJFGeswAhsMAAoJ
 EIUJagauuRDrkbkAoIe8dlhn35cPrbpcy4AtUGFlR0HTAJ96MT6WOnFqjfJJxo97
 Hps0V71KXA==
 =v7/U
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.278. Adam Weinberger <adamw@FreeBSD.org>

 pub  1024D/42C743FD 2002-10-12 Adam Weinberger <adam@vectors.cx>
      Key fingerprint = A980 3F2E 80A8 9619 9D1C  82E8 A3C2 8CD9 42C7 43FD
 sub  1024g/15D67628 2002-10-12

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.0 (FreeBSD)

 mQGiBD2neE8RBADgkTfNUPbm3AVnVPn/Ds5lDO89yKowW3ULixWqJ6Mti+7sIQ6y
 A4v5/dlUODTH0sdL4Cl3q36pCOP13IIq7o14h4YOjMhdMhsv43678VYK0PvR70hK
 /PxqIRV3lQsP2g8LihKLpRy6sHleIXu1hRLbIBI6/iJTmFcENQfivyHpBwCg31J6
 6jew1OrTLlB76aWmmRJIlVkEAII7j0gAqV/zjR16sAsfiCSHSg9A8RGBmC67zUfK
 PxnrLiw0gqyrt77YnXvANGWDdIMHEZrcDBrb8ciSO8agBO2+/7mOVDVDU5I/SJRi
 rfJTQvFphcnOe7F3MaxdfA/vZE9woXq4JLXfnmcgUAey4iYB2QbV/+v1HBo6wys6
 qyDXBACMsXFWZbDNDwUZBxGVS66bLwpZ/UhWqkrAyvK/7M/HQjkFTUUX2fSTPnWh
 AkcA82asPxQFTdbd7BOs4JnXUY4m+wfP3pzGaCbgL6WYumRjvmvkmeyZtFD+2wxL
 nu/F3oO9PC2f4mGa6E928BLy2bRCV75L0OMmbR5Fd0Z+95k3kLQhQWRhbSBXZWlu
 YmVyZ2VyIDxhZGFtQHZlY3RvcnMuY3g+iFkEExECABkFAj2neE8ECwcDAgMVAgMD
 FgIBAh4BAheAAAoJEKPCjNlCx0P9I7UAmQGWPEjqlXfxptWgb5WKskfl+rkkAJwI
 OSvOdiBFM7/EBBgn9pUQ/6PVUrkBDQQ9p3haEAQAzc17FQj9ePY4tW2+nWiQzj8I
 GVG+8fsVwFhDb4hFcpJxPiR3/J07tU4iyKek/qUiOQdW/dI30vm3rOSIUa3r9iaj
 OaJilRVDO3ErUCdcrJjGf+fTWZFa8t2TLwOooyV8tJ5IUYLwJ8s7/3OpwWh1pfCQ
 qxGACCiXeKQo0a9jxJcAAwUD/35x0sm6jV2OZaHxX/JteeLu1hJOE4hc8oRqiE93
 4j8frz33jIsRFpKJ+H28LXtRmVXtVTdq3RuHll5JRCMG+IPLT3Tns/d0L90twpOj
 4r+2BFIK6SYE6JYngf+J5clwve3vE7Y/b8NbSawEApvVxdrpsevGH0Sn5MSdiukm
 EkJviEYEGBECAAYFAj2neFoACgkQo8KM2ULHQ/1NRgCeJ6ZJYvc1oOUBdEKd7SoH
 rFA6N/8An3A9ukQlZm3lPMutMia2vnsb108k
 =0qTN
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.279. Peter Wemm <peter@FreeBSD.org>

 pub  1024D/7277717F 2003-12-14 Peter Wemm <peter@wemm.org>
      Key fingerprint = 622B 2282 E92B 3BAB 57D1  A417 1512 AE52 7277 717F
 uid                            Peter Wemm <peter@FreeBSD.ORG>
 sub  1024g/8B40D9D1 2003-12-14
 pub  1024R/D89CE319 1995-04-02 Peter Wemm <peter@netplex.com.au>
      Key fingerprint = 47 05 04 CA 4C EE F8 93  F6 DB 02 92 6D F5 58 8A
 uid                            Peter Wemm <peter@perth.dialix.oz.au>
 uid                            Peter Wemm <peter@haywire.dialix.com>

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =7AWH
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.280. Nate Williams <nate@FreeBSD.org>

 pub  1024D/C2AC6BA4 2002-01-28 Nate Williams (FreeBSD) <nate@FreeBSD.org>
      Key fingerprint = 8EE8 5E72 8A94 51FA EA68  E001 FFF9 8AA9 C2AC 6BA4
 sub  1024g/03EE46D2 2002-01-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxVl7cRBADbXnR4t/xRvvOSiPuGPnOGeamrphPbpPXsWD8Nm/pjfN3fhSfa
 0gv3Y2n/IyLTg93gWZhWloMznkdg59Oj0oPSUxjgPauVw4q6l3JJIcurJNlp/Q7l
 DH0KLFJ8GuL6zxAz7Jcx1BpAIEu+G2SnI8+ZuGvq+YwaDxPFavfCqmVaBwCg/iPu
 OI+84/W54yZXvxfUN7dkDmED/3CxYLGeWqPqE8B8Eq8BlmgfP/FwaqXXb6xR7jsE
 XBaqNOIita6Iz49sYTYKYY2rMv6dMXjX1FM13wNW3rS73xkNvuJz0WU6sWl9Hw1e
 kjNjCN2oIqkqB5/1H14NMSOcUPLqERP7goFIK7OAJejUmm5Nc3KjG1S2G97xxjPe
 39mlBAC0QFfa8J0Z6TORFa8Uqyx90pC/Y+I/S+y0vP/59ReP/PnQq/aUdDPLt5OZ
 edtpz7M4A2GtoVkWtedPRsw0hYK+Q3CtOMemQSnlfVjTZq5edL05Po09N89M/WMz
 hB9aRcdY7IN/btsQ0H12ZH+rEj+O4Adu+qEjsWePfW60Uj74GbQqTmF0ZSBXaWxs
 aWFtcyAoRnJlZUJTRCkgPG5hdGVARnJlZUJTRC5vcmc+iFcEExECABcFAjxVl7cF
 CwcKAwQDFQMCAxYCAQIXgAAKCRD/+YqpwqxrpMSwAKCVuyt4B1Pc1tAwRMEOmmZw
 2nGIIQCgyRvB49snyBl86TikYv97ZifyLmK5AQ0EPFWXuRAEAIghycOZtElvBhfw
 r7TisjtVtzKhbF0Kj9cGg5brCC8/bJLK7PxNe48NSdlqMJ7algumsgYR37b/QBmq
 sOSEa2wXCnvCSD0ol+bdPn+Psb+hyi+AVNmVgdlJwuxHUHny0lWQnxeQLrt07SAw
 Ye/Nnc+arH6GXzBwXSpsQ2sOaMajAAMGA/9Hzjkv6HmJkPlKT2TNx33mbLaDk8xv
 vAJXxogxDcUqDDwqszWPcqShaW0IkMZo+grZfykZJjA0/8QUCaEUwhnYIwHMQRdA
 uNegCF/D2x4yzkF4d9gKYCCykDUrwvFDztIhGkinyzu6+xwe9qFcL/esIxnnonz7
 Wx8/3e7pRvS2QIhGBBgRAgAGBQI8VZe5AAoJEP/5iqnCrGukuikAnAt8uA1EIv/5
 WDCIpvNp0lgmwes9AJ4vD1R35+Db6UIw+R5EJaxNBY84zg==
 =xbGI
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.281. Garrett Wollman <wollman@FreeBSD.org>

 pub  1024D/0B92FAEA 2000-01-20 Garrett Wollman <wollman@FreeBSD.org>
      Key fingerprint = 4627 19AF 4649 31BF DE2E  3C66 3ECF 741B 0B92 FAEA
 sub  1024g/90D5EBC2 2000-01-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 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
 iq7OH/kskwCfeEvJINcMBk0UEdjpgO85woB6QKI=
 =stB+
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.282. Martin Wilke <miwi@FreeBSD.org>

 pub   1024D/B1E6FCE9 2009-01-31
       Key fingerprint = C022 7D60 F598 8188 2635  0F6E 74B2 4884 B1E6 FCE9
 uid                  Martin Wilke <miwi@FreeBSD.org>
 sub   4096g/096DA69D 2009-01-31

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =S3Qn
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.283. Thomas Wintergerst <twinterg@FreeBSD.org>

 pub   1024D/C45CB978 2006-01-08
       Key fingerprint = 04EE 8114 7C6D 22CE CDC8  D7F8 112D 01DB C45C B978
 uid                  Thomas Wintergerst <twinterg@gmx.de>
 uid                  Thomas Wintergerst <twinterg@freebsd.org>
 uid                  Thomas Wintergerst
 uid                  Thomas Wintergerst <thomas.wintergerst@nord-com.net>
 uid                  Thomas Wintergerst <thomas.wintergerst@materna.de>
 sub   2048g/3BEBEF8A 2006-01-08
 sub   1024D/8F631374 2006-01-08
 sub   2048g/34F631DC 2006-01-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 B5lKgt0VCQCfdhlL5hMDBDoaMdMtBZXFL4/Vn10=
 =ArNG
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.284. Jo:rg Wunsch <joerg@FreeBSD.org>

 pub  1024D/69A85873 2001-12-11 Joerg Wunsch <j@uriah.heep.sax.de>
      Key fingerprint = 5E84 F980 C3CA FD4B B584  1070 F48C A81B 69A8 5873
 pub  1024D/69A85873 2001-12-11 Joerg Wunsch <j@uriah.heep.sax.de>
 uid                            Joerg Wunsch <joerg_wunsch@interface-systems.de>
 uid                            Joerg Wunsch <joerg@FreeBSD.org>
 uid                            Joerg Wunsch <j@ida.interface-business.de>
 sub  1024g/21DC9924 2001-12-11

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.6 (FreeBSD)

 mQGiBDwWI2kRBADM4C4YlBiLozC/bZDedK12BMLyfnv9yOppj/doC1cOEaE+xZNQ
 7/aDZfhi7FNQzt+ehh52DLihV91G7gOsACtUk3gLR8G+0q6U76dBY/gvAGzCYUu0
 bJwlQCcPMysF4sNEwvsuct1fIVAHa+660X6Q+WI+eADIwZyN8wR1GrEqswCg3uGM
 xm85EYtxPFx7tyxfA8q/d+MD/i+SPmt9xEZ/KZOMbQVPw/vYmeWW4lVZGG2HLKmH
 J2FiAW4YjryoNqhpbbqlJigxf6staqgnQL4uuzBrr6v+OIjbljTHA7fs0WA4mtTX
 u7YcAKPXBTztw/O+f3tZz08Ep+AHJ3Q+pTbbRQZpikGGdOpjfLcEyAQBh1rNA3zl
 /MiLA/9IL7yfpyiA6cjX+MuUCqlqbPW2awQOCsmDBOcpXdOYC+MsBUhlT7IcFtQd
 BUxUiqdIKlRtIT4l4LnqzhL2HASv6Zzc06zGS+tlG6BlpCGlSxz8fp4asbTYdJnp
 d7lqme75jOUNjygal5lxJApincaLjv+4IaNUWCC5RjQuRsd3t7QwSm9lcmcgV3Vu
 c2NoIDxqb2VyZ193dW5zY2hAaW50ZXJmYWNlLXN5c3RlbXMuZGU+iF8EExECAB8C
 GwMCHgECF4AFAkGkelUHCwkIBwMCAQMVAgMDFgIBAAoJEPSMqBtpqFhz3+0An1WU
 SyLW5PtVk8AN2wZOZoIbdpWJAJ9UZjNCICVixY7lc+me/lfu7+nCsIhzBBARAgAz
 BQJB4lonBYMB4TOAJhpodHRwOi8vd3d3LmNhY2VydC5vcmcvaW5kZXgucGhwP2lk
 PTEwAAoJENK7DQFl0P1Yu+kAn27zpfl6Angb/DIsaV6srJ6SB/hmAJoDHPErifuG
 2L4KGF3NcagZRoUl77QgSm9lcmcgV3Vuc2NoIDxqb2VyZ0BGcmVlQlNELm9yZz6I
 XwQTEQIAHwIbAwIeAQIXgAUCQaR6QgcLCQgHAwIBAxUCAwMWAgEACgkQ9IyoG2mo
 WHNIRwCgnTUFJ1krhK0XISLLossxl68fS0MAoJEjQcOZTKtIp8S4Dqo7/VJYUVKF
 iHMEEBECADMFAkHiWicFgwHhM4AmGmh0dHA6Ly93d3cuY2FjZXJ0Lm9yZy9pbmRl
 eC5waHA/aWQ9MTAACgkQ0rsNAWXQ/VjuVACeKGyJ5VTFr26fxsDgqrlfXjksoBMA
 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
 =SfCl
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.285. Maksim Yevmenkin <emax@FreeBSD.org>

 pub  1024D/F050D2DD 2003-10-01 Maksim Yevmenkin <m_evmenkin@yahoo.com>
      Key fingerprint = 8F3F D359 E318 5641 8C81  34AD 791D 53F5 F050 D2DD

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.2.2 (FreeBSD)

 mQGiBD97XL8RBACC3CMLdwZY/RcLw4PM6h2KYj+cG7TNSfNWszZO5HdQYrd6HZKQ
 h0cL7cyW1Low8a2ZulxtEjM1SfofzDlhNaTYhyjlO4xBnJM13dMFchmM4j4qF0Mu
 al1MEeO3EbLntFsh/aDX2sOKEavz5id8eKmAZKez2O5Z27bymkFf4o2UbwCg841B
 WuuWHsy4O1zrac0WidkS3G0D/jeVbYA09gylZA1KSd3djHE55lQDQrUt3+2xWxjG
 Lg60WIqys/yxei6nVO7/Wr6Q1WISiX0bYXAxHCZZQrT6cuNtEBntPPa9PnXRewUx
 8xwVCBIuSLK5Kw2WZ2FMuQWTzfd4fwt8P9vghJlaV3h5Byw3e6/MdoDID9Jkg/ml
 f5FuA/9kZBwtE4zKJvx3Pv7EG6T0w82QA0SFtcFyRnNarUIfqyUsFXNkr8hoQT3Z
 J5haO/lW2HW70KMr26GxK61XcF8LQtfvphv9M+4yF3+DZSu1YxUM1Vs/q27EQhXa
 3Cs4kJkKdzW2xDbIbuD5ZJQqFAzWX7IiTTNXnEGZStPTQMYZLbQnTWFrc2ltIFll
 dm1lbmtpbiA8bV9ldm1lbmtpbkB5YWhvby5jb20+iFsEExECABsFAj97XL8GCwkI
 BwMCAxUCAwMWAgECHgECF4AACgkQeR1T9fBQ0t01FQCfUR367fJJ37Wl4HvZVBoF
 peBX9ZEAniaaK/D+n/JttkgY8jJf2ZvjF0SSuQENBD97XMIQBACPpJjDdDw42++u
 vPMW/R7Iwqdpgs22T/bzVlFxDGx2uD9xaoNKI03jkOyUWiFlHbuifMRhxTwO5Vyg
 nj91Y0fk8hdd9bjT0ee7lJuQ8PBqzb/uEVGFIC+56/ocFzuBANdN5fzEfxp5AA0o
 zAPotyGEmLLK8+3ApZmAbsnQEveOwwADBQP+KgIxPzWAxYSn/MFPK2QBEjHuCCsS
 JB+VOShc/QaSn/wFEKc8Brjpr1KeAEi7dFrK4Sa2Rn2+k9tRSJptxi1m3Hrr0J2z
 0JofnF6cKkvmIsCse5OGCK/LJmuWHuNVqYI2X9Q0am+soHEYsRaqB/BDLT5Mw0mE
 5NO6455cKEcyizmIRgQYEQIABgUCP3tcwgAKCRB5HVP18FDS3b1HAJ9ZjWomBkE4
 1vaMSXyIopmSQNVxSQCg3J+fBmk0yhD2A8CIfxhpSRJDwus=
 =wV5Z
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.286. Bjoern A. Zeeb <bz@FreeBSD.org>

 pub   1024D/3CCF1842 2007-02-20
       Key fingerprint = 1400 3F19 8FEF A3E7 7207  EE8D 2B58 B8F8 3CCF 1842
 uid                  Bjoern A. Zeeb <bz@zabbadoz.net>
 uid                  Bjoern A. Zeeb <bzeeb@zabbadoz.net>
 uid                  Bjoern A. Zeeb <bz@FreeBSD.org>
 uid                  Bjoern A. Zeeb <bzeeb-lists@lists.zabbadoz.net>
 sub   4096g/F36BDC5D 2007-02-20

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 B8U1cYUAoI3ftziD88BkkQf1aD7jpiQwlW7/
 =N1dt
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.287. Alexey Zelkin <phantom@FreeBSD.org>

 pub  1024D/9196B7D9 2002-01-28 Alexey Zelkin <phantom@FreeBSD.org>
      Key fingerprint = 4465 F2A4 28C1 C2E4 BB95  1EA0 C70D 4964 9196 B7D9
 sub  1024g/E590ABA4 2002-01-28

 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.0.6 (FreeBSD)
 Comment: For info see http://www.gnupg.org

 mQGiBDxVhBMRBAD20EH9hS3S3gy73E1s//vYS1yo4GmmvzUzMTJo4HH6OMFT/MVn
 B51RXK5YlQ1cau4MWt2sifpWsG2hmmmPtOIaC6Mn4X8cEXmzy6qW5m+3RUdXB8rM
 pFSEVVEGhE9Sq+pTI1wB4VUJ5mhQtvWVJKsmuyf1YRa/zrr2zbZTIXg5EwCggloA
 GdcoFNm7p+cW56HJI1jZTpcD/jUyc4KLeimo+6Fn3z6NZh64GS+JmmCDe7mlcK2S
 XNPVq3tXXP3ZUKdv3faoMAgI1hSi82/32GINDkhiLPc0Q2tQZRDYKvyY/swgJSnV
 1LV8jlpk2VsmsYOp9hW4SJLAQUaejpZe4CwHpOfJWbPkXE83nVygA0lnN89dfhIH
 JaB8A/9VottMl88+CLzqF3AzN72R5tFWnSFMWumaODis+UvLW0XAMP4AHhvux/FS
 Pl+m2YtilHhib6lfMYuGalN84H7VxOBxjc9L4qORV9jP4cWEYXpxx0DTmmtFfLae
 xGGTyYNM1RiqmScXMF28Am1I+WhnLTql8DVFWr8XoZUbususg7QjQWxleGV5IFpl
 bGtpbiA8cGhhbnRvbUBGcmVlQlNELm9yZz6IVwQTEQIAFwUCPFWEEwULBwoDBAMV
 AwIDFgIBAheAAAoJEMcNSWSRlrfZ9yQAn0bnLWBjo47dKrS82X1VvbuokkNXAJsH
 oANWk5PoOZzySJ7st8/IyaLBErkBDQQ8VYQXEAQA2cEOpYzl8L5y8TErdj1lfpHt
 gxm1QFETl8HvZGb/hTRWVhIcUhtOLA2uftk1oDHbnp+FPsJuFTxanCaCSQVdtMEE
 I1zK/Qy384FjS1B6L3yq84yTKn+Gp8SbMX3ZWT+dVmy88yJpmo/yFiiN9d2hYy1q
 fCUWhbAoWeD7sqSeGL8ABA0D/Au95rpaYunrMhu5nVdvZpTbNEIEDLOTS337GWy7
 n1E9RG72ujCLFg8tbEmjEUFYfCZ/cW+6+2/Nj7zoGH9xXH6bRTfSKXojdKgNkUvL
 SLynpmFpUlFKc4fzSxx5EkCxH/zog9X2CQjMvxHmSD1/x+LeD0v/5WMsLvIdj6Op
 0KmziEYEGBECAAYFAjxVhBcACgkQxw1JZJGWt9nbrQCcCvSJho7n1r4+1PGTlcep
 ABxplbsAn05jPrtZLjln7aKcavCp8FICJ2TY
 =GYHE
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.288. David Xu <davidxu@FreeBSD.org>

 pub   1024D/48F2BDAB 2006-07-13 [expires: 2009-07-12]
       Key fingerprint = 7182 434F 8809 A4AF 9AE8  F1B5 12F6 3390 48F2 BDAB
 uid                  David Xu <davidxu@freebsd.org>
 sub   4096g/ED7DB38A 2006-07-13 [expires: 2009-07-12]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =jyox
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.289. Randall R. Stewart <rrs@FreeBSD.org>

 pub   1024D/0373B8B2 2006-09-01
       Key fingerprint = 74A6 810E 6DEA D69B 6496  5FA9 8AEF 4166 0373 B8B2
 uid                  Randall R Stewart <randall@lakerest.net>
 uid                  Randall R Stewart <rrs@cisco.com>
 uid                  Randall R Stewart <rrs@FreeBSD.org>
 sub   2048g/88027C0B 2006-09-01

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBET3848RBADitK8bahB8Ftqi9wtYsFRGfdm645cTF5fAnxFjC+ouPfLk+cfD
 I6VG1Vib3T+SYTTJ3xPm7tV6RLLlRsdAfSE4P73o5qVe85Dq4JBKYgdCms+0Z7B+
 O0yB7B0KClaXhZpsQtK8yLtROjiJxw1WQ9uOS/me5AHi2cZruoOcYxkzbwCguMmd
 tOy1SL5V2RLfJiQKAFQ23M8D/3m42RjkoMB791fuJ/pH3i98EuXhCwrSv7eZ3xYU
 TY93OwMEwPYaABK3jSygMETj9hu2pYFbrAFKSHQVPLcUBrKYw9+Fjd4XTOOxYZeI
 /+n0xSRk4W+sIQX97jCbvCrtk9jqIz2NQt9IlKxG0Xniio/Q8PsNNbO+jd5HSXqE
 ja2oA/9+r3LUi3jKH9rpY6x4Qz/DBpcNK4v5Fz24mtkwTfjyfC2nTlG58bSbmulE
 1tfOLDL5BHmGoyWIqaFzIVIA5oGo9EYG2RCx7Vr+WgsY6jr5tX7HlhByoE5Wemoz
 YN5CDC9KCKe7TCpVJtlq57c02kE0OT3gqYsflidfV50Qzt9jI7QhUmFuZGFsbCBS
 IFN0ZXdhcnQgPHJyc0BjaXNjby5jb20+iGAEExECACAFAkT3848CGwMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRCK70FmA3O4suHBAJ9kvtlm5qy8c6qSizjcvuzj
 q4gFJQCgqthVasQ5jNFZf1p4vM+gD1T84M+0I1JhbmRhbGwgUiBTdGV3YXJ0IDxy
 cnNARnJlZUJTRC5vcmc+iGAEExECACAFAkT39KoCGwMGCwkIBwMCBBUCCAMEFgID
 AQIeAQIXgAAKCRCK70FmA3O4slQYAKCNWFpgxPkfqz7PoTUcobiXbu7EAQCcCj0F
 mj5AKPyuPbwP3JT7Cyf4Fs60KFJhbmRhbGwgUiBTdGV3YXJ0IDxyYW5kYWxsQGxh
 a2VyZXN0Lm5ldD6IYAQTEQIAIAUCRPf07QIbAwYLCQgHAwIEFQIIAwQWAgMBAh4B
 AheAAAoJEIrvQWYDc7iyy60AmgLBwWw0LjdY6+zyUyUhRm9s4vZEAJ9F6dw61khm
 NQlfhpvoBh24pl6GTrkCDQRE9/OUEAgA7GAeZ2BgjNDYa42+GV6uo1FxadTNppdN
 gG22xgg+4SXnWZ25O8dofrHIwP9rk/qomw452MoAlVevV20uYthVqAXBWRGEhO/q
 zKfyZxTe8aCOs1mjCKu9fPkSgNUDoCl6jCac/5mDdcLdVT3domBJvGiqqSQ/B1JA
 3YWrYCnnLTUN2a2aPW0ZK14zCSjaWQFDcm8kPi1WwKu9yldGnAPoT03+JF4KN0kB
 YkdmfEAFOJ4kjm2UROJc2aVUtjeMH3nqvdlTmuw6c6cmMMSIlXkcrTO7gRLmnx2J
 HgSdukq0vEtgND6O/o0n9Rnr+UccOCCz6EJkltL9knjKwutdQz9x8wADBQgAkEfc
 D/VQ1sUCgS5xyrer45zxW5NdeuFI+h12D94MKopczr73p+7Tc1bSDZK1M4e432qV
 8hNy8Q6gYowhuuBqxI0LYcEtrJld0ma4cnMraRjkId2jmyK82c+O/K1w+vcGUsYu
 nxYBiGwtTTo/R+202kp6VGD7jnIxGQs5WsMmnh8EL1m4BXeFm6BzfT29SuV4bdoZ
 6/YHyPLGVgtnPBCNQUjLvXqdaOlk3E1wCBd4A90pC1dDiN1rsAxOTcxwgyKfasXx
 CZsdBaXEYYUIfm9WrAFc1S/baV613184I1duBfCJWMKxGXMSr68CeFQ+I1036lsZ
 IdHoq+Y3nZ5jPRUIYohJBBgRAgAJBQJE9/OUAhsMAAoJEIrvQWYDc7iyXiAAn3XC
 FR1XLpBIlAr5dn8ozSpbwfoHAJ9ZDFSqbQt/EDawxqaoYP+4p4Q85w==
 =jM4N
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.290. Sepherosa Ziehau <sephe@FreeBSD.org>

 pub   2048R/3E51FB42 2005-10-21
       Key fingerprint = 5F47 3861 7ABA 8773 9E32  0474 5C33 841C 3E51 FB42
 uid                  Sepherosa Ziehau (freebsd) <sephe@freebsd.org>
 uid                  Sepherosa Ziehau (sephe) <sepherosa@gmail.com>
 sub   2048R/7AA31321 2005-10-21

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 AshLLfnD1BoaFl+lzNnL2Q==
 =F5Wg
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.291. Tatuya JINMEI <jinmei@FreeBSD.org>

 pub   1024D/ABA82228 2002-08-15
       Key fingerprint = BB70 3050 EE39 BE00 48BB  A5F3 5892 F203 ABA8 2228
 uid                  JINMEI Tatuya <jinmei@FreeBSD.org>
 uid                  JINMEI Tatuya <jinmei@jinmei.org>
 uid                  JINMEI Tatuya (the KAME project) <jinmei@isl.rdc.toshiba.co.jp>
 sub   1024g/8B43CF66 2002-08-15

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBD1b+Q4RBACetpZD+bWytVmQ3Itmu0ZBfSDF6FVyUQuKS3OZmvsZHxxqq1+u
 erHNhmyte/aCI/YrEUzHPT5LU+9LMpRQD0AwSs3Ot2vUzokSiTu8ZqhoWBcsosKK
 eKM73V7NiTgBGuJ3UxVmKNXzUZhRjGHuekB/ZCCv1pDg9B3HPL8ty+2M6wCgu02T
 +vMZW0VeByn79Lpmm2nu/F0D/3NN4e8ZtLTbUJxJb/hHhLzOr8XahZCqsNF2bj0C
 0u2SzkelDa5iVDWwiOkg7xI154REAALOG1FnLyO4bRPkcQ/EO5tbzXoVn0I6MPWA
 EiwBfVRXzP10MDHhqH0NvT8pyA4ex/BflaeFem9HItRjfojdqEUYVAACceAdLQLG
 MknWA/4hfAAp+dPcU8iHmd7AemuGoOhu5AAKbp2S4vwozJEFiv67wD/+WFXVggUx
 wbQ3X7oNiOLeg9OASDV5qtbGPATHikYagWVjndqmvxO1FiL6BnQBnzAVzOEN3L2K
 Ex566bUw/2R/dr/zhOc3BKxCV50T2Xe4u/cEiYkUbLj6+Y8V2bQhSklOTUVJIFRh
 dHV5YSA8amlubWVpQGppbm1laS5vcmc+iGAEExECACAFAkYDPqYCGyMGCwkIBwMC
 BBUCCAMEFgIDAQIeAQIXgAAKCRBYkvIDq6giKEOZAJ0Z/iUCa6UrrsVmKiP4a9qB
 0jFUCgCgn/3mQxdtXTA6SOlFFsisaxsIXIW0P0pJTk1FSSBUYXR1eWEgKHRoZSBL
 QU1FIHByb2plY3QpIDxqaW5tZWlAaXNsLnJkYy50b3NoaWJhLmNvLmpwPohZBBMR
 AgAZBQI9W/kOBAsHAwIDFQIDAxYCAQIeAQIXgAAKCRBYkvIDq6giKBtcAJ9DRqXt
 h8WEpjgr+sD9OuaYqmV8nACfSdo2Ml+Qfz2Rad9OtZodmELCCi20IkpJTk1FSSBU
 YXR1eWEgPGppbm1laUBGcmVlQlNELm9yZz6IYAQTEQIAIAUCRhkdkgIbIwYLCQgH
 AwIEFQIIAwQWAgMBAh4BAheAAAoJEFiS8gOrqCIo11cAoIJT7N2GMSNXAujnuIvc
 HnBtgk5zAJ4qDo/En3ic8E7h7zc4lT/WQQDhRrkBDQQ9W/kQEAQA1Q07/j0kScL1
 WF9EeXVEyLpTxHZ7owTI+KrRcQ6Vc6KABu1cwhE78ANVfn/CkWVXHyDEnWEIvaz2
 QYwz47sqOxdOg/AmHFVd8xouengw32KNjViVBMsW/l8VzyAVvvGGNuQ+f7zDZ/P9
 v9WwwRcrgL9g+uAnrJJo/wttIBqhSk8AAwUEAIqcIez2zlkwGayFeLqgwuw4PCbd
 kGtXs0l2mQljv8GWuTRJ5D8aD0nlM9MNaSLB7xq6igMriP/NyfIVv0aLJwRH8ilx
 RBYosGvm+nEmUtakhU/77uXcLtipoUGi+y1reFRVSoypJil6lqDTjKtWQlWA7xOG
 QzGMdgoBC1d55jXXiEYEGBECAAYFAj1b+RAACgkQWJLyA6uoIigNBwCgsUFgZMfR
 sEybYW4cWwBNhNTqE9wAnRf9BFkzpn3ZyD+NBkjx2INcitoD
 =ISn8
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.292. Thomas Abthorpe <tabthorpe@FreeBSD.org>

 pub   1024D/D069F2A0 2005-07-06
       Key fingerprint = 62EB 68F5 C1A4 8FCE 5A87  BE22 E469 BF8C D069 F2A0
 uid                  Thomas Abthorpe (FreeBSD Committer) <tabthorpe@FreeBSD.org>
 uid                  Thomas Abthorpe <thomas@goodking.ca>
 uid                  Thomas Abthorpe <tabthorpe@gmail.com>
 uid                  Thomas Abthorpe <thomasa@tbaytel.net>
 uid                  Thomas Abthorpe <tabthorpe@FreeBSD.org>
 uid                  Thomas Abthorpe <tabthorpe@goodking.ca>
 uid                  Thomas Abthorpe <thomas@stthomasanglican.org>
 uid                  Thomas Abthorpe <tabthorpe@stthomasanglican.org>
 sub   2048g/16752D82 2005-07-06

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 vGEZL/jiI8Wngym8F7UR8mjQPbJJsJcJ6lm81dR4UKinG2XF3wRuU86XeU4Ld6jt
 PiV3pMYNriiQKHYlFAZvjxEtDJkB/9dwN/TcQomNj0MZs7QBMKXzVY21UTMPaqCj
 eEO9f2iSqDgbE4K/1x6kqvTfNEd+sA73tEPEPgcOE8nWxDIYk/Xl2HQnJ84L72+P
 GrK1Y+odFQ5p2Kw800btrzOw2NoLd+6qCOBYuI9mXNyEjnWQqKNb/00CYHY8p5q7
 WkzqF3YEvDOIj5WE0jub1Rib/34awk3si5CB5UBMuZ9ef7ERoJEdEs6fxwe0JVRo
 b21hcyBBYnRob3JwZSA8dGFidGhvcnBlQGdtYWlsLmNvbT6IYAQTEQIAIAUCRzTI
 GQIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEORpv4zQafKgdWcAn3w4sSnM
 61bo8iJ+b+E+zmVjFleXAJ4q/1XG+Q1xwilc/FCvVtTveM9grLQlVGhvbWFzIEFi
 dGhvcnBlIDx0aG9tYXNhQHRiYXl0ZWwubmV0PohGBBARAgAGBQJHHtctAAoJEOSY
 /CvINdQO0SYAn2S56W0WXCj0vGS0afl12pl1h772AKCgNaKyuWu0eHdH9Wk6jCqJ
 tVgqBYhgBBMRAgAgBQJGuSP4AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ
 5Gm/jNBp8qCruACfTnIPAG5u90p15gmJOQH2jHN31iIAnRfdwkMTxRAfnM67jyqq
 FS/kFGZRtCdUaG9tYXMgQWJ0aG9ycGUgPHRhYnRob3JwZUBGcmVlQlNELm9yZz6I
 YAQTEQIAIAUCRzTINwIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEORpv4zQ
 afKguIUAni2L1qJa3ikUbkU52VEAnJ5t1FluAJ43vqKiMSlrL8zorbVZCU5Tjs6x
 ybQnVGhvbWFzIEFidGhvcnBlIDx0YWJ0aG9ycGVAZ29vZGtpbmcuY2E+iEYEEBEC
 AAYFAkce1y0ACgkQ5Jj8K8g11A52ngCgvhSJxD7X6wmIbtlnrKG2VHI6sQwAoMCf
 jEIywruJ3/7Kbq56RdJYzFaFiGAEExECACAFAkWdORwCGwMGCwkIBwMCBBUCCAME
 FgIDAQIeAQIXgAAKCRDkab+M0GnyoKYpAJ0XQrKjZxVwinq4uIW7LMlP/M/kJQCb
 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
 DJze1jo7nwtF4D34H75dAUWU0Q==
 =Bijf
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.293. Ivan Voras <ivoras@FreeBSD.org>

 pub   1024D/569C05C8 2000-05-24
       Key fingerprint = AB9A A555 C47C B61D BF83  154C 95D9 C041 569C 05C8
 uid                  Ivan Voras <ivoras@fer.hr>
 uid                  Ivan Voras <ivan.voras@fer.hr>
 uid                  Ivan Voras <ivoras@geri.cc.fer.hr>
 uid                  [jpeg image of size 4567]
 uid                  Ivan Voras <ivoras@sharanet.org>
 uid                  Ivan Voras <ivoras@gmail.com>
 uid                  Ivan Voras <ivoras@yahoo.com>
 uid                  Ivan Voras <ivoras@freebsd.org>
 uid                  Ivan Voras <ivan.voras@zg.t-com.hr>
 sub   1536g/149FDD60 2000-05-24

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBDkrvE4RBADgl43F4E9yq9uGfw/sc7ulsKvz64g8Sj4XjtG2K1VoEzJ+eKZB
 rgaH//pbAH7ULpV89oVpvBbvVkIlM6WSrCOWydTlvFGZgRHL10nl9FxFyuX+yykJ
 Qw3I/zhpE7TbowDwEivNtBt3p+PE6xRCpvPA++BhMs3RADvDXSeq1a1LGQCg/wUn
 1cZgybe/i0KEgOLjSYIcfWcD/05bn0WkRXUq3evT7wYZ/zi+HEQsCUV/LOPY7Zom
 sDkKTuLKlNXx8xk4EcIb1LOqmcI8qct6CLEhGfa9ek0KrxpaFkR/1fj5zZWlLbxj
 UREeaVXt7ESlawmHTwVwRAmyMDAUulxDz7MgYcJjfi0RICHCsEeopgyo6Mm7z5SH
 MKqIA/0er6aLclMRbE8+AW+4TYFyYYmlc8ek7tz3KTCGrustE4ZJXSGt9pA5puiS
 +KvlWEm7XjG5H8xUJGQuhcv6L1sY0U+1LLFZOoU9l06Rbi5QaR/J7beRqKhitLIt
 5/43PpQZ3tmdHjvIRX1EfPV3M/QS/yB2xsiJu2nChutM0n6hB7QaSXZhbiBWb3Jh
 cyA8aXZvcmFzQGZlci5ocj6ISQQQEQIACQUCPBddlQIZAQAKCRCV2cBBVpwFyOnX
 AKDsmTv7Unk0LeLnzrNHKrM2Cd00RwCffqq2vBc8Okr6cu19JJRqcRLlC+uIRgQQ
 EQIABgUCRh9mWQAKCRBtO67R6hYNC70GAJ96UzOIyYn0HMCpE3IvUAKfmPXBjQCd
 FM1iFq5IKcHYW7Chf2RBy40NtZa0IUl2YW4gVm9yYXMgPGl2b3Jhc0BmbHkuY2Mu
 ZmVyLmhyPohJBBARAgAJBQI8F10WAhkAAAoJEJXZwEFWnAXIx+8AoJYexih6EYDs
 iVst13lTI61claABAJ0WRoRfejnHcgBDidpt3P86xOv5iYhJBDARAgAJBQJErs38
 Ah0AAAoJEJXZwEFWnAXI4FQAnjATnWkW6jqhS4B0q0Fyu/PSomVjAKDX3n5peLqe
 n7copp3k3fvNTD8AXbQeSXZhbiBWb3JhcyA8aXZhbi52b3Jhc0BmZXIuaHI+iEYE
 EBECAAYFAjsrwhwACgkQldnAQVacBcj8hACeOJt1Oqq6erPIEh9smx3Ri3TUHwUA
 nAxb1miM4siElBik0NbqaRJUqBtriEYEEBECAAYFAkYfZl0ACgkQbTuu0eoWDQsp
 VACgkQr2lvyRsMrLz9Kt2FS4MOgZpeoAn3B32Z1QNnkT81A39SS21I5i6b2ntCJJ
 dmFuIFZvcmFzIDxpdm9yYXNAZ2VyaS5jYy5mZXIuaHI+iEYEEBECAAYFAjsrwnoA
 CgkQldnAQVacBcjnYACeMY0ipykUA4WTTVYsjE8H89r85JkAoKwO6L6QUprO5qSB
 me6M6QldoV2RiEYEEBECAAYFAkYfZl0ACgkQbTuu0eoWDQvFKQCfbWH3vb6MRQx5
 lAxLQuUEDPt0EAYAn0UX3UduAYZMR/dAsXSVooSOWDP+0dEt/wAAEegBEAABAQAA
 AAAAAAAAAAAAAP/Y/+AAEEpGSUYAAQEAAAEAAQAA/9sAQwAKBwcIBwYKCAgICwoK
 Cw4YEA4NDQ4dFRYRGCMfJSQiHyIhJis3LyYpNCkhIjBBMTQ5Oz4+PiUuRElDPEg3
 PT47/9sAQwEKCwsODQ4cEBAcOygiKDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7
 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7/8AAEQgAkAB4AwEiAAIRAQMRAf/EAB8A
 AAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAAB
 fQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYn
 KCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
 iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh
 4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYH
 CAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRC
 kaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZX
 WFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKz
 tLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwD
 AQACEQMRAD8Ara2MX591X+WK5mU41d2I6Kp4HoAK6jXRi9Unug/ma5i5BGpOf+mQ
 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
 =9LWk
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.294. Nathan Whitehorn <nwhitehorn@FreeBSD.org>

 pub   1024D/FC118258 2008-07-03
       Key fingerprint = A399 BEA0 8D2B 63B3 47B5  056D 8513 5B96 FC11 8258
 uid                  Nathan Whitehorn <nwhitehorn@freebsd.org>
 uid                  Nathan Whitehorn <nwhitehorn@icecube.wisc.edu>
 uid                  Nathan Whitehorn <nwhitehorn@physics.wisc.edu>
 uid                  Nathan Whitehorn <whitehorn@wisc.edu>
 sub   2048g/EDB55363 2008-07-03

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEhs+ZMRBACu6CWtdlJ/GkGO4O6epy4SKwxV2s64od5j3ZG/+CkdXfHVnvDf
 NAdvytDwRPjFdQtwDmLTcotdm9akMpmoI+nuTDOC/wyoojh3NlTp/YmzSLntBoaQ
 W2uwp8oAW4dszTMptgb3Dpce17cHQcCuQ8Ql9tnZlFOvm4XCP00y7pmGrwCg65cu
 0wxbDYVp2fpPIG0D67q03j8D/01g68qU+JQqCZtCTDSJ7tG4w5zlOH6Hu7Q9wRhb
 XBDKX6fiO9CiRDorgi54DoKqjQoHWnFXrKBcAughLEjle5BSZ+Z+eu/tfMwDEfhL
 FMMPuvT9BVG/nukn4ufmk8BqPbw5PGalYGbdJvvjbyWhVIu/dexqGe9mT3DD7gk0
 WZArA/95nvE5+LRH31Jugq1GJ7cqjJyd/IPQC96z7JXdme7oPQ8IYDsLjsT982MO
 8WvwNbQPnRrj3Sgjp7EcuaFt/J66P7KvpU1lQKJDfZgk1LTL0Nm8wzLj2tXSwZWg
 tSOZewMItr2yKwBlpGDsS5K7CCpbocsndrI5DOPEzuYr7y+56rQuTmF0aGFuIFdo
 aXRlaG9ybiA8bndoaXRlaG9ybkBpY2VjdWJlLndpc2MuZWR1PohgBBMRAgAgBQJI
 bPmTAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQhRNblvwRglgkxwCgmC82
 iM6zfYaJwcFsqETyxS+9Vv4AoJCemsKBmBQiN7o5K84/DuaCZTWutC5OYXRoYW4g
 V2hpdGVob3JuIDxud2hpdGVob3JuQHBoeXNpY3Mud2lzYy5lZHU+iGAEExECACAF
 Akhs+tgCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRCFE1uW/BGCWCFSAJwL
 f5HwF8PEUIEo/25Dwr72JCW6DwCeIm2wQjiyXl+wy1QIP5eX5Emy+Pa0JU5hdGhh
 biBXaGl0ZWhvcm4gPHdoaXRlaG9ybkB3aXNjLmVkdT6IYAQTEQIAIAUCSGz66wIb
 AwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIUTW5b8EYJY+GsAoINx6fjsHpdy
 JT0UWgiIr48kEhtcAKDetW0OzAVCF8HmXMHWR/zyjVqHSLQpTmF0aGFuIFdoaXRl
 aG9ybiA8bndoaXRlaG9ybkBmcmVlYnNkLm9yZz6IYAQTEQIAIAUCSGz7AQIbAwYL
 CQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIUTW5b8EYJYgiQAoM04WRCQ0LI5L78O
 d4VFwQSiUiDtAJ43eEJzvlPmvR2geTEaB6lJGNrBMrkCDQRIbPmTEAgAypfp7UhW
 ZPvGO8EfI90WkCclB/H7hSfpTgcZfQafWis6YllJ/EC+orAdQ79I/vdp5x5as6VS
 HsvN/IXXxoL30uHj2PTFV4qi0Tx8YMcw3xUK+wskQ0HonWsmZZvqHBSMbh0+JpXg
 75ZHXxOg/kpaFIjYz7cML9jSFBxD1S1/kmHqFnJISJ5wFAeXJj1loPfTbu6x5NB5
 BGbR/ysii9FidJUAXPk2EviD82oltntcNrUJS29ghFwM3FO/sZFdStQppNTgDnwO
 mUFyYxpwzG8vMjWYl3DWlc8ozXtKRotGzzsXuwUvdnC9e9MRX8xsF7x1vMrV5j6+
 5SGMnz6KvRzRIwADBQgAhDEuTI6+glgo0Kale3FKlKaOdz9R26uTCWVlK32O98jp
 mrdCfG1u1cknYrLlIVZIlrTgu3WqjRS9j23z8mIKQNW6wudu+/50/N7wtlV8k/s3
 DKmoUjcXH1b7vPxxnhFbtg41COFOUziIyXkupHEOJeaF+Sz4EEi8nXMKBEoGFlYD
 rh61rOFsfrf24E3dIwdLyjoTify8trdL5pgug27pHPMgXXx5cjLooq73VFvzlqCA
 3zFyypgED7UsYMH9NjmyLlA77gK4gfuAlGXwEWyh99SVksrvvHqntHyg9p+HdCQJ
 GyYwRMNUXTfdSn4cWVc+Qip1jpgdH/bbIwZeTIMaIYhJBBgRAgAJBQJIbPmTAhsM
 AAoJEIUTW5b8EYJYA0wAoJ5oqyCt4TZRVfofTeTGcm8K+a8lAJ0YGUPg2rEaTf06
 QaoupCN+daK2wQ==
 =hP6F
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.295. Stacey Son <sson@FreeBSD.org>

 pub   1024D/CE8319F3 2008-07-08
       Key fingerprint = 64C7 8D92 C1DF B940 1171  5ED3 186A 758A CE83 19F3
 uid                  Stacey Son <sson@FreeBSD.org>
 uid                  Stacey Son <stacey@son.org>
 uid                  Stacey Son <sson@byu.net>
 uid                  Stacey Son <sson@secure.net>
 uid                  Stacey Son <sson@dev-random.com>
 sub   2048g/0F724E52 2008-07-08

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =uagC
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.296. Marcus von Appen <mva@FreeBSD.org>

 pub   1024D/B267A647 2009-02-14
       Key fingerprint = C7CC 1853 D8C5 E580 7795  B654 8BAF 3F12 B267 A647
 uid                  Marcus von Appen <freebsd@sysfault.org>
 uid                  Marcus von Appen <mva@freebsd.org>
 sub   2048g/D34A3BAF 2009-02-14

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEmWjSoRBACy4CsdR35YB6pGzU1aa1mbTkLuF44VBjV8O9qji80zo/VJs3JL
 El0wIhM9pg6zObKkzOU5HJFU/6uazzzDnc+A8y3NJL3u+HoX/7c03e3yUZ6xl7PC
 ua8tO3IAQiB/cg/Ltb6iJa8FflfmCKGE0I2DXeR2vN9PpgQVkJW+/NSDbwCg2Nxm
 mfeO83a7C28G/MV70z5CTg0EAKdHCkACr+iB1WpOIKEmFkZRD0NXHEXYa6L2kPdY
 XPNJ893yu5YUmHMFNUdVxoIKaUKpIGPa+V4q6ojAilWJiaEB74W+teqNBzwhzyNv
 xfp/W6fNJtvC1DJkrxkag0penU9ZROkVEnZajIclFh5la3muxX07Qf2HjGZM3Cqb
 nz6PA/9gdPecNwo1N+9aX/CGrCw0DC1QVFc1HJqcL3pe2qQkMVDO7sfQkewtQOW9
 H2ZrDWlVxIohQ9/+vbKV1uOcJr5+egSGNTCNNuimh9Kp4LYMc1vNouQe1D9fsCXW
 2kcgO8FozH0O3uJ60gCak2K06iA+mGziNYLQH3IvjVswivxOyLQiTWFyY3VzIHZv
 biBBcHBlbiA8bXZhQGZyZWVic2Qub3JnPohgBBMRAgAgBQJJlo0qAhsDBgsJCAcD
 AgQVAggDBBYCAwECHgECF4AACgkQi68/ErJnpkfulACeI1WVnhrKTq/+O2Djbpuu
 Nyj/MYMAn0BMDpy4frZjlIMfhazixfk4cbjNtCdNYXJjdXMgdm9uIEFwcGVuIDxm
 cmVlYnNkQHN5c2ZhdWx0Lm9yZz6IYAQTEQIAIAUCSZwX8QIbAwYLCQgHAwIEFQII
 AwQWAgMBAh4BAheAAAoJEIuvPxKyZ6ZH48AAnRraNz0aFuSHUFaw8LXjROOTwld/
 AKCvawhTgwYKX3YjLzu9Jcc1t3UNj7kCDQRJlo0qEAgA2acv4O4JFQCzgJXhCQqn
 KHFeEqOcgpKlvIGlgfP4/hVOCms2LK3qk10JpcbDbkBn0cBW7usxvA3mDiF2ZnrY
 wIwAROI7SNSY60PydR6DXc6I21VAd7hmmcpqkJFXaSMvKkQcq7sAJGlSYVpPuBqZ
 1kCIu2vlPBdpT4W1hHxf7l4Q+h2ge4+C2beRv9V9vRVdlXeSqJT1o5EgE5CjZ6sV
 Eh+9/TQdkRAoGgQG4LZvDuhWfsSkDU6x/soFKOPCdTF/LytW8YZ6asN1EpVJihAe
 GseQdkwP8iK9Co90Ab27+5WVVrP+xkY+rULOngW2vIwJrWic6nk/a0/0MrPjFn3k
 IwADBQf/dMsSQncKSSn8Tg9KeeBLftirddz+Mos1j+1PYOc88vrMrHVodBfNtJlG
 zxAGwFyLtk/yA8/MuW219t57O3W49VYh+I8NenzlRmZr/ahn8t79UD7+SWmy8L5e
 3XD2+w9WTj9Lx1V41wFKvxVLItNAik58Oi9MHa/wR1LMRIeGFAVHWAZcxYLLKfGR
 lYcMmMTY4906sjJ6Z+ZVYILnTR360JdeiZbFdaCFGf2yUoM+HeA2+975CaRagu+N
 /HZKW4JSsiu15fvaLTPwFG6YXKcHL2zI0Vc5UF5nd9GGZdX9Y4ffBi3aPXgIOJm5
 eAf29A6Ne3/llt3RG3TduGacd1WghYhJBBgRAgAJBQJJlo0qAhsMAAoJEIuvPxKy
 Z6ZHPMYAn1s6Sdc/4Kkv8KQ0KaJNwmkQYkcSAKDLkzy/Ph4mOMm8jO6ZL+Orpo21
 CQ==
 =HKIb
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.297. Dmitry Chagin <dchagin@FreeBSD.org>

 pub   1024D/738EFCED 2009-02-27
       Key fingerprint = 3F3F 8B87 CE09 9E10 3606  6ACA D2DD 936F 738E FCED
 uid                  Dmitry Chagin <dchagin@freebsd.org>
 uid                  Dmitry Chagin (dchagin key) <chagin.dmitry@gmail.com>
 sub   2048g/6A3FDFF9 2009-02-27

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 mQGiBEmoPBkRBACM2PQ+WGI38Z5NtkF50MuYyv0u4qSaWtx5Tquch2sgBDjxjebI
 XQYuyzM9piV4ZSZHFyjvFCHjLhPg7Ae6xaeaOwPsGQ2Q+bSC92PoTC3bDdHW1hPV
 6s8KxrFcelHLwhmF56WIALoI6E6IF60KztuISLm0VDG0Wy3lP8QAeoWbgwCg0fY1
 iOETR0ZP09ophWg8CPUxyvcD/3NFr6GEVUuFX4ENQkX2GTrvEB1IBS3v9JvEMlUX
 bShFXWGHB+3ynBvw/EiuOgIB6Jzay3prP9rdGW4NSV7ZMa3Yw6OdhVpQ0ticn4zU
 FiqLL6x8SKXKSm9BvjFuWADe3Lnu/ekY1lYTM4iWPNdA2LjRUHwpDIHcHWgcCzkn
 CfY+A/0eKkj+/VTddCspDaXuTmgGlkz90LsA0cLv6gRO3IV+0t80TgohtsCdR2X/
 Yf7fi8GsaMdhgJZNm9dMz/zD7ZkQ+OyQN7NkB1zkwg2RwOnbbjTa+HECtsr2Znb6
 B85MamlnHN0WHNgexaC6c7ezEFq+RMBKRVJJGwehZXpT185T57Q1RG1pdHJ5IENo
 YWdpbiAoZGNoYWdpbiBrZXkpIDxjaGFnaW4uZG1pdHJ5QGdtYWlsLmNvbT6IYAQT
 EQIAIAUCSag8GQIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJENLdk29zjvzt
 eLcAn3hUOTepQzeJqPuTFl2Z2dM10HHKAJ9DJRmSIAwHBGPzlAFFzKKFW+OoV7Qj
 RG1pdHJ5IENoYWdpbiA8ZGNoYWdpbkBmcmVlYnNkLm9yZz6IYAQTEQIAIAUCSam5
 zAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJENLdk29zjvztRJYAn0cIluug
 IS7YO6a+Bf0FByX3jlndAJ9k3HAxpt9i9R0wFkFmbMX0He86bLkCDQRJqDwZEAgA
 jMe9QT4KYOHsLQsF5vHBq/+W+Lniy6OqEB1GSK9P/vqVIqVa7v7NXX/B5R8UiQMz
 fSNcYH/BTN1lb8Pe7pAIBpqPhKBi7NAW1Ddy9399co1c37ncf6HEa2P0tpJbTrG0
 Eww9nUiFbhjWUHSY0MT57mHQHdCSlqNFl2jaV91CQaNybt9z8JLO301vQXP4LLND
 a/FQ3TdBEIXFLs/H8QKLBe5TBgd2lXy9qpZsii7xpfNXKG1qqIa8sfUoJO5Ng2GB
 K6tJUFh/J548BLt/c/p1KJo8ovJB70DiOaznRc+Tu8rR03ehdfrJ5FpDoxC6UAa8
 7FpXWxjM6L3N/T01NcaXUwADBQf7BpNvsT/QzV74wnGXoi9aUE84ojkIAm9X4Q78
 dfdCvSFWUACcvsB/d7XLcCXOZ1NJ1E8Tdjjmr24MRQRUY8MhDt47ngsTyDhDW5l9
 EQ/ByjX3wlRBNP5qEDVkLudfRE6LlEye2NSNpXYs1Naw6U/deUggNZMwriVCuRI6
 TPc/bKeq7+378EBaKc8ckuRdv8LWsIdaKQ6rQZh1CB6LpSsL9OjcRpKvK8yYas6I
 kWUr07xvvlVyRVLcrNyQwp2QnfK8fXeH2I/Qg9QwcV+cXyKzH4vka9zrR1A9SAHJ
 iOyMXJBy+GzoYLf/y7/u/LOVAm09P4tQ/7V/DY7nxiOabSioTIhJBBgRAgAJBQJJ
 qDwZAhsMAAoJENLdk29zjvztGEAAoNFpe2XX37q3yAaNfiZgEABrxsgZAJ9yH0YJ
 QrmO4sxq5l7AD6K+KNahRQ==
 =ER/k
 -----END PGP PUBLIC KEY BLOCK-----

     --------------------------------------------------------------

  D.3.298. Dennis Herrmann <dhn@FreeBSD.org>

 pub   1024D/65181EA0 2008-09-07 [expires: 2009-03-06]
       Key fingerprint = D4DB A438 EB5E 1B26 C782  F969 820B 66B3 6518 1EA0
 uid                  Dennis Herrmann (Vi veri universum vivus vici) <adox@mcx2.org>
 sub   4096g/C003C5DD 2008-09-07 [expires: 2009-03-06]

 -----BEGIN PGP PUBLIC KEY BLOCK-----

 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
 =b9AS
 -----END PGP PUBLIC KEY BLOCK-----

                A FreeBSD-s szakkifejezesek gyu"jtemenye

   Ebben a szojegyzekben azok a fogalmak es ro:viditesek szerepelnek,
   amelyekkel a FreeBSD-s ko:zo:ssegen belu:l es a hozzatartozo
   ku:lo:nbo:zo" leirasokban talalkozhatunk.

                                   A

   ACL

           Lasd: Access Control List

   ACPI

           Lasd: Advanced Configuration and Power Interface

   AMD

           Lasd: Automatic Mount Daemon

   AML

           Lasd: ACPI Machine Language

   API

           Lasd: Application Programming Interface

   APIC

           Lasd: Advanced Programmable Interrupt Controller

   APM

           Lasd: Advanced Power Management

   APOP

           Lasd: Authenticated Post Office Protocol

   ASL

           Lasd: ACPI Source Language

   ATA

           Lasd: Advanced Technology Attachment

   ATM

           Lasd: Asynchronous Transfer Mode

   ACPI Machine Language (AML)

           Olyan pszeudokod, amit egy ACPI szabvannyal kompatibilis
           operacios rendszerben megtalalhato virtualis geppel lehet
           ertelmezni. Feladata a rendelkezesre allo hardveren az
           operacios rendszer fele dokumentalt felu:let kialakitasa.

   ACPI Source Language (ASL)

           Az a programozasi nyelv, amiben az AML-kodok irodnak.

   Access Control List (ACL)

           Egy objektumhoz, peldaul egy allomanyhoz vagy halozati
           eszko:zho:z tartozo engedelyeket tartalmazo felsorolas.

   Advanced Configuration and Power Interface (ACPI)

           Az a specifikacio, aminek ko:szo:nheto"en a hardver egy
           absztrakt felu:letet kepes nyujtani az operacios rendszer
           szamara. Ezen a felu:leten keresztu:l tudja az operacios
           rendszer elerni a rendelkezesre allo hardvert annak
           konkret ismerete nelku:l. Az ACPI a korabban az APM,
           PNPBIOS es a hozzajuk hasonlo megoldasok altal
           szolgaltatott leheto"segeket igyekszik kiterjeszteni es
           felu:lmulni. Ennek kereteben leheto"seget ad to:bbek ko:zt
           az energiafogyasztas szabalyozasara, az energiatakares mod
           aktivalasara, az eszko:zo:k ki- es bekapcsolasara stb.

   Application Programming Interface (API)

           Eljarasok, protokollok es segedprogramok o:sszesege,
           melyek egy vagy to:bb programresz ko:zo:tt irjak le az
           altalanos o:sszefu:ggeseket: hogyan, mikor es miert kell
           o:sszedolgozniuk, illetve milyen adatokat osszanak meg
           egymas ko:zo:tt vagy milyen adatokkal dolgozzanak.

   Advanced Power Management (APM)

           Egy olyan API, amely leheto"ve teszi az operacios rendszer
           szamara, hogy a BIOS-szal egyu:tt energiagazdalkodast
           tudjon megvalositani. A legto:bb esetben azonban mar az
           APM-et levaltotta a sokkal altalanosabb es kidolgozottabb
           ACPI specifikacio.

   Advanced Programmable Interrupt Controller (APIC)

   Advanced Technology Attachment (ATA)

   Asynchronous Transfer Mode (ATM)

   Authenticated Post Office Protocol (APOP)

   Automatic Mount Daemon (AMD)

           Egy olyan demon, ami o:nmu"ko:do"en csatlakoztatja az
           allomanyrendszereket, amikor azokon valamilyen allomanyt
           vagy ko:nyvtarat el akarunk erni.

                                   B

   BAR

           Lasd: Base Address Register

   BIND

           Lasd: Berkeley Internet Name Domain

   BIOS

           Lasd: Basic Input/Output System

   BSD

           Lasd: Berkeley Software Distribution

   Base Address Register (BAR)

           Egy PCI eszko:z cimtartomanyanak megadasaert felelo"s
           regiszterek.

   Basic Input/Output System (BIOS)

           A BIOS meghatarozasa nemileg a ko:rnyezeteto"l is fu:gg.
           Egyesek szerint BIOS az a ROM chip, ami a szoftver es
           hardver ko:zti kapcsolatot megteremto" alapveto" rutinokat
           tartalmazza. Masok szerint viszont azok a chipen tarolt
           rutinok, amelyek a rendszer beto:lteseert felelo"sek. De
           akadnak olyanok is, akik ilyenkor arra a kepernyo"re
           gondolnak, amin a rendszer beto:ltesenek folymatat tudjuk
           beallitani. Noha a BIOS leginkabb a PC tipusu rendszerekre
           jellemzo", mas esetekben is talalkozhatunk hasonloval.

   Berkeley Internet Name Domain (BIND)

           A nevfeloldasert felelo"s DNS protokollok egyik
           implementacioja.

   Berkeley Software Distribution (BSD)

           A Kaliforniai Egyetem (Berkeley) szamitogepes
           rendszerekkel foglalkozo kutatocsoportja (CSRG) ebben
           foglalta o:ssze az AT&T 32V UNIX rendszeren vegzett
           valtoztatasait es javitasait. Maga a FreeBSD is ennek az
           egyik leszarmazottja.

   Bikeshed Building

           A "bikeshed building", vagyis a "biciklitarolo epites" az
           a jelenseg, amikor egy egyszeru"bb temahoz mindenki hozza
           akar szolni, miko:zben egy sokkal bonyolultabb temaval
           alig vagy egyaltalan nem foglalkoznak. Ennek
           kialakulasarol reszletesebben a GYIK-ban lehet olvasni.

                                   C

   CD

           Lasd: Carrier Detect

   CHAP

           Lasd: Challenge Handshake Authentication Protocol

   CLIP

           Lasd: Classical IP over ATM

   COFF

           Lasd: Common Object File Format

   CPU

           Lasd: Central Processing Unit

   CTS

           Lasd: Clear To Send

   CVS

           Lasd: Concurrent Versions System

   Carrier Detect (CD)

           A kommunikacios csatorna letrejo:ttet jelzo" RS232C
           szabvanyu jel.

   Central Processing Unit (CPU)

           Masik neven processzor. Lenyegeben ez a szamitogep agya,
           ahol a ku:lo:nfele szamitasok to:rtennek. Rengeteg
           ku:lo:nbo:zo" architekturaja es utasitaskeszlete lehet.
           Ko:zu:lu:k a legismertebbek az Intel x86 es annak
           leszarmazottai, valamint a Sun SPARC, PowerPC es Alpha.

   Challenge Handshake Authentication Protocol (CHAP)

           A felhasznalok hitelesitesere hasznalt modszer, amely a
           kliens es a szerver ko:zt megosztott titkos informaciokon
           alapszik.

   Classical IP over ATM (CLIP)

   Clear To Send (CTS)

           A tavoli rendszer szamara a ku:ldest engedelyezo" RS232C
           szabvanyu jel.

           Lasd meg: Request To Send.

   Common Object File Format (COFF)

   Concurrent Versions System (CVS)

           Egy verziokezelo" rendszer, aminek hasznalataval egyszerre
           to:bb valtozatot tudunk nyilvantartani es hasznalni adott
           allomanyokbol. A CVS segitsegevel kepesek vagyunk egy vagy
           to:bb valtoztatast kivonni, o:sszefesu:lni es visszavonni,
           valamint nyomon ko:vethetju:k, hogy melyiku:ket ki, mikor
           es miert hajtotta vegre.

                                   D

   DAC

           Lasd: Discretionary Access Control

   DDB

           Lasd: Debugger

   DES

           Lasd: Data Encryption Standard

   DHCP

           Lasd: Dynamic Host Configuration Protocol

   DNS

           Lasd: Domain Name System

   DSDT

           Lasd: Differentiated System Description Table

   DSR

           Lasd: Data Set Ready

   DTR

           Lasd: Data Terminal Ready

   DVMRP

           Lasd: Distance-Vector Multicast Routing Protocol

   Discretionary Access Control (DAC)

   Data Encryption Standard (DES)

           Az informacio titkositasara szant modszer, amelyet
           altalaban a UNIX-os jelszavak es crypt(3) funkcio hasznal.

   Data Set Ready (DSR)

           Ezt az RS232C szabvanyu jelet ku:ldi egy modem a
           szamitogepu:nknek vagy a terminalunknak, amikor keszen all
           az adatok fogadasara es ku:ldesere.

           Lasd meg: Data Terminal Ready.

   Data Terminal Ready (DTR)

           Ezt az RS232C szabvanyu jelet ku:ldi szamitogepu:nk vagy a
           terminalunk a modemnek, amikor keszen all az adatok
           fogadasara es ku:ldesere.

   Debugger (DDB)

           A rendszermagban megtalalhato interaktiv nyomko:vetesi
           leheto"seg, amin keresztu:l meg tudjuk vizsgalni
           rendszeru:nk aktualis allapotat. Leggyakrabban a rendszer
           o:sszeomlasaert felelo"s ko:ru:lmenyek elemzeseben
           alkalmazzak.

   Differentiated System Description Table (DSDT)

           Egy olyan ACPI tablazat, amely az alaprendszerro"l nyujt
           alapveto" konfiguracios informaciokat.

   Distance-Vector Multicast Routing Protocol (DVMRP)

   Domain Name System (DNS)

           Az internetes cimek (pl. levelezes.valami.net) emberek es
           gepek altal is olvashato formaja ko:zti lekepezeseert
           felelo"s rendszer.

   Dynamic Host Configuration Protocol (DHCP)

           A szamitogepek IP-cimeinek szerveren keresztu:li dinamikus
           kiosztasaert felelo"s protokoll. Az igy keletkezo" cim
           alapu hozzarendelest "berletnek" ("lease") nevezzu:k.

                                   E

   ECOFF

           Lasd: Extended COFF

   ELF

           Lasd: Executable and Linking Format

   ESP

           Lasd: Encapsulated Security Payload

   Encapsulated Security Payload (ESP)

   Executable and Linking Format (ELF)

   Extended COFF (ECOFF)

                                   F

   FADT

           Lasd: Fixed ACPI Description Table

   FAT

           Lasd: File Allocation Table

   FAT16

           Lasd: File Allocation Table (16-bit)

   FTP

           Lasd: File Transfer Protocol

   File Allocation Table (FAT)

   File Allocation Table (16-bit) (FAT16)

   File Transfer Protocol (FTP)

           A TCP felett implementalt magasabb szintu" protokollok
           csaladjanak egyik tagja, aminek segitsegevel allomanyokat
           tudunk atmasolni egy TCP/IP-halozaton keresztu:l.

   Fixed ACPI Description Table (FADT)

                                   G

   GUI

           Lasd: Graphical User Interface

   Giant

           Annak a ko:lcso:no:s kizarasert felelo"s megoldasnak (alvo
           (sleep) mutex-nek) a neve, ami a rendszermag
           ero"forrasainak jelento"s reszet vedi. Amikor meg a
           szamitogepek csupan nehany programot futtattak egyetlen
           halozati kartyaval es altalaban egyetlen processzoron,
           akkor meg elegendo" volt egy egyszeru"bb zarolasi
           mechanizmus hasznalata, azonban napjainkban ez mar egy
           elfogadhatatlanul szu"k keresztmetszetet kepez. A FreeBSD
           fejleszto"i folyamatosan dolgoznak, hogy ezt olyan
           zarolasokkal valtsak fel, amelyek csak az egyes
           ero"forrasokat vedik. Ennek ko:szo:nheto"en sokkal nagyobb
           foku parhuzamositas ertheto" el mind az egyprocesszoros
           mind pedig a to:bbprocesszoros rendszerekben egyarant.

   Graphical User Interface (GUI)

           Olyan rendszer, ahol a felhasznalo es a szamitogep
           grafikus megoldasokon keresztu:l erintkezik.

                                   H

   HTML

           Lasd: HyperText Markup Language

   HUP

           Lasd: HangUp

   HangUp (HUP)

   HyperText Markup Language (HTML)

           Honlapok elo"allitasara hasznalt jelo:lo"nyelv.

                                   I

   I/O

           Lasd: Input/Output

   IASL

           Lasd: Intel's ASL compiler

   IMAP

           Lasd: Internet Message Access Protocol

   IP

           Lasd: Internet Protocol

   IPFW

           Lasd: IP Firewall

   IPP

           Lasd: Internet Printing Protocol

   IPv4

           Lasd: IP Version 4

   IPv6

           Lasd: IP Version 6

   ISP

           Lasd: Internet Service Provider

   IP Firewall (IPFW)

   IP Version 4 (IPv4)

           Az IP protokoll 4-es valtozata, ahol 32 biten adunk meg
           cimeket. Ez a valtozat meg napjainkban is szeles ko:rben
           alkalmazott, azonban lassankent felvaltja az IPv6.

           Lasd meg: IP Version 6.

   IP Version 6 (IPv6)

           Az uj IP protokoll. Azert alkottak meg, mert az IPv4 altal
           felkinalt cimter mar tulsagosan kicsinek bizonyult. 128
           bites cimekkel dolgozik.

   Input/Output (I/O)

   Intel's ASL compiler (IASL)

           Az Intel altal kifejlesztett forditoprogram, amivel
           ASL-programokat lehet AML-kodra forditani.

   Internet Message Access Protocol (IMAP)

           A levelezo" szervereken tarolt elektronikus levelek
           eleresere hasznalt protokoll, aminek egyik fontos
           jellemzo"je, hogy az elolvasott leveleket a szerveren
           tartja es nem to:lti le a levelezo" klienssel.

           Lasd meg: Post Office Protocol Version 3.

   Internet Printing Protocol (IPP)

   Internet Protocol (IP)

           Csomagok atku:ldeset leiro protokoll, amire egesz internet
           epu:l. Eredetileg az Egyesu:lt Allamok Vedelmi
           Miniszteriuma szamara keszu:lt, es a TCP/IP
           protokollkeszlet egyik meghatarozo eleme. Enelku:l az
           internet nem nyerte volna el mai alakjat. Reszletesebb
           informaciokert ld. az RFC 791.

   Internet Service Provider (ISP)

           Egy olyan ceg, ami leheto"seget kinal az internet
           eleresere.

                                   K

   KAME

           A KAME japanul "tekno"st" jelent, de informatikai
           ko:ro:kben ezt gyakran a KAME projekttel azonositjak,
           amely az IPv6 implementaciojan dolgozik.

   KDC

           Lasd: Key Distribution Center

   KLD

           Lasd: Kernel ld(1)

   KSE

           Lasd: Kernel Scheduler Entities

   KVA

           Lasd: Kernel Virtual Address

   Kbps

           Lasd: Kilo Bits Per Second

   Kernel ld(1) (KLD)

           Egy olyan modszer, aminek segitsegevel a FreeBSD
           rendszermag funkcionalitasat anelku:l tudjuk dinamikusan
           bo"viteni, hogy a ujra kellene inditanunk hozza a
           rendszeru:nket.

   Kernel Scheduler Entities (KSE)

           A rendszermag altal tamogatott szalkezelesi rendszer.
           Ennek pontosabb reszleteit ld. a hozzatartozo projekt
           honlapjan.

   Kernel Virtual Address (KVA)

   Key Distribution Center (KDC)

   Kilo Bits Per Second (Kbps)

           A savszelesseg (vagyis egy adott ido" alatt mennyi adatot
           vagyunk kepesek atku:ldeni) meghatarozasara hasznalt
           mertek. Itt a Kilo helyett meg szerepelhet a Mega, Giga,
           Tera es igy tovabb.

                                   L

   LAN

           Lasd: Local Area Network

   LOR

           Lasd: Lock Order Reversal

   LPD

           Lasd: Line Printer Daemon

   Line Printer Daemon (LPD)

   Local Area Network (LAN)

           Egy viszonylag kis ko:rnyezetben, peldaul irodaban, otthon
           stb. hasznalt halozat.

   Lock Order Reversal (LOR)

           A FreeBSD rendszermagja az ero"forrasok megfelelo"
           zarolasaval igyekszik megosztani azokat. A zarolasi hibak
           keletkezo" holtpontok felderitesere a FreeBSD-CURRENT
           rendszermagokban talalhato (de a kiadasokbol mar
           eltavolitott) egy zarolasokat elleno"rzo" futas ideju"
           rendszer, aminek a neve witness(4). (A witness(4) jelen
           pillanatban kisse meg szigoru, ezert elo"fordulhat, hogy
           vakriasztast ad.) A to"le szarmazo valos jelentesekben
           olvashatjuk, hogy "ha porul jartunk volna, akkor most itt
           lett volna egy holtpont".

           Az ilyen hibakat altalaban gyorsan kijavitjak, ezert
           mielo"tt egy ilyen hibat beku:ldenenk, nezzu:nk szet a
           http://lists.FreeBSD.org/mailman/listinfo/freebsd-current
           cimen es az eszlelt LOR-ok honlapjan.

                                   M

   MAC

           Lasd: Mandatory Access Control

   MADT

           Lasd: Multiple APIC Description Table

   MFC

           Lasd: Merge From Current

   MFP4

           Lasd: Merge From Perforce

   MFS

           Lasd: Merge From Stable

   MIT

           Lasd: Massachusetts Institute of Technology

   MLS

           Lasd: Multi-Level Security

   MOTD

           Lasd: Message Of The Day

   MTA

           Lasd: Mail Transfer Agent

   MUA

           Lasd: Mail User Agent

   Mail Transfer Agent (MTA)

           A levelek tovabbitasara hasznalt alkalmazas, melyek a BSD
           alaprendszerekben mar regota megtalalhatoak. Ko:zu:lu:k
           manapsag a Sendmail szerepel itt, de rajta kivu:l meg
           to:bb mas MTA is letezik, mint peldaul a postfix, qmail es
           az Exim.

   Mail User Agent (MUA)

           Az elektronikus levelek megjelenitesere es irasara
           alkalmas alkalmazas.

   Mandatory Access Control (MAC)

   Massachusetts Institute of Technology (MIT)

   Merge From Current (MFC)

           A -CURRENT agbol szarmazo valamelyik funkcionalitas vagy
           modositas beolvasztasa egy masik agba, ami a legto:bb
           esetben a -STABLE.

   Merge From Perforce (MFP4)

           A Perforce repository-bol szarmazo funkcionalitas vagy
           modositas beolvasztasa a -CURRENT agba.

           Lasd meg: Perforce.

   Merge From Stable (MFS)

           A FreeBSD fejlesztesenek megszokott menete szerint egy
           valtoztatas elo"szo:r a -CURRENT agba keru:l be
           tesztelesre, majd csak ezt ko:veto"en a -STABLE agba.
           Esetenkent azonban elo"fordul, hogy egy valtoztatas
           elo"szo:r a -STABLE agba keru:l, majd csak ezutan a
           -CURRENT agba.

           Ezt a kifejezest hasznaljuk abban az esetben is, amikor
           egy modositast a -STABLE agbol olvasztunk be a biztonsagi
           javitasokat tartalmazo agba.

           Lasd meg: Merge From Current.

   Message Of The Day (MOTD)

           Altalaban a bejelentkezeskor megjeleno" u:zenet, amiben
           valamilyen informaciot tovabbitunk a rendszer felhasznaloi
           szamara.

   Multi-Level Security (MLS)

   Multiple APIC Description Table (MADT)

                                   N

   NAT

           Lasd: Network Address Translation

   NDISulator

           Lasd: Project Evil

   NFS

           Lasd: Network File System

   NTFS

           Lasd: New Technology File System

   NTP

           Lasd: Network Time Protocol

   Network Address Translation (NAT)

           Egy olyan technikai megoldas, amelynek hasznalata soran az
           atjaron keresztu:l halado IP-csomagok informaciot
           modositjak, es ezaltal leheto"ve teszik az atjaro mo:go:tt
           levo" gepek szamara, hogy hatekonyan osztozzanak egyetlen
           IP-cimen.

   Network File System (NFS)

   New Technology File System (NTFS)

           A Microsoft altal kidolgozott allomanyrendszer, ami
           altaluk fejlesztett "uj technologiaju" operacios
           rendszerekben erheto" el, tehat peldaul a Windows 2000,
           Windows NT es Windows XP rendszerekben.

   Network Time Protocol (NTP)

           A szamitogepek orainak halozaton keresztu:li
           egyeztetesenek egyik modszere.

                                   O

   OBE

           Lasd: Overtaken By Events

   ODMR

           Lasd: On-Demand Mail Relay

   OS

           Lasd: Operating System

   On-Demand Mail Relay (ODMR)

   Operating System (OS)

           Programok, fu:ggvenyko:nyvtarak es segedprogramok
           o:sszesege, amelyeken keresztu:l hozza tudunk ferni a
           szamitogepben talalhato hardverek altal felkinalt
           ero"forrasokhoz. Napjaink operacios rendszerei egeszen az
           egy ido"ben egyetlen programot futtatni es egyetlen
           eszko:zt elerni kepes rendszerekto"l a to:bbfelhasznalos,
           to:bbfeladatos es egyszerre to:bb programot is futtatni
           tudo, to:bbezer, egyenkent ku:lo:nbo:zo" alkalmazasokat
           futtato felhasznalot kiszolgalo rendszerekig terjedhet.

   Overtaken By Events (OBE)

           Olyan javasolt valtoztatasra (hibajelentesre vagy egy uj
           funkcio igenylesere) utal, ami a legfrissebb
           valtoztatasok, peldaul a FreeBSD halozati szabvanyainak
           megvaltozasa, az adott hardver elavulasa stb.
           ko:vetkezteben mar nem lenyeges vagy nem ervenyes.

                                   P

   p4

           Lasd: Perforce

   PAE

           Lasd: Physical Address Extensions

   PAM

           Lasd: Pluggable Authentication Modules

   PAP

           Lasd: Password Authentication Protocol

   PC

           Lasd: Personal Computer

   PCNSFD

           Lasd: Personal Computer Network File System Daemon

   PDF

           Lasd: Portable Document Format

   PID

           Lasd: Process ID

   POLA

           Lasd: Principle Of Least Astonishment

   POP

           Lasd: Post Office Protocol

   POP3

           Lasd: Post Office Protocol Version 3

   PPD

           Lasd: PostScript Printer Description

   PPP

           Lasd: Point-to-Point Protocol

   PPPoA

           Lasd: PPP over ATM

   PPPoE

           Lasd: PPP over Ethernet

   PPP over ATM (PPPoA)

   PPP over Ethernet (PPPoE)

   PR

           Lasd: Problem Report

   PXE

           Lasd: Preboot eXecution Environment

   Password Authentication Protocol (PAP)

   Perforce

           A Perforce Software altal fejlesztett forraskodkezelo"
           termek, ami a CVS-nel joval to:bb leheto"seget kinal.
           Annak ellenere, hogy nem nyilt forraskodu, hasznalata
           ingyenes olyan nyilt forraskodu projektek szamara, mint
           amilyen a FreeBSD.

           Egyes FreeBSD fejleszto"k a Perforce repository-ban
           dolgoznak olyan kodokkal, amelyek hasznalata a -CURRENT
           agban tulsagosan kockazatos lenne.

   Personal Computer (PC)

   Personal Computer Network File System Daemon (PCNFSD)

   Physical Address Extensions (PAE)

           Egy olyan modszer, aminek segitsegevel egeszen 64 GB-nyi
           ko:zponti memoriat tudunk elerni azokon a rendszereken,
           amelyek fizikailag csak 32 bites cimterrel rendelkeznek
           (es ezaltal a PAE nelku:l csak 4 GB memoriat kepesek
           hasznalni).

   Pluggable Authentication Modules (PAM)

   Point-to-Point Protocol (PPP)

   Pointy Hat

           Egy misztikus eredetu" fejrevalo, ami leginkabb a
           szamarfu:les sapkahoz hasonlithato, es minden olyan
           FreeBSD committer jutalma, aki miatt nem fordul a
           rendszer, visszafele halad a verziok szamozasa, vagy
           barmilyen egyeb pusztitast vegez a forrasok ko:zo:tt. Az
           u:gyetlenebb committerek szep szammal be tudnak ilyeneket
           gyu"jteni. To:bbnyire (csak?) humoros ertelemben
           hasznaljak.

   Portable Document Format (PDF)

   Post Office Protocol (POP)

           Lasd meg: Post Office Protocol Version 3.

   Post Office Protocol Version 3 (POP3)

           A levelezo" szerverken tarolt elektronikus levelek
           eleresere hasznalatos protokoll, aminek egyik fontos
           jellemzo"je, hogy az elolvasando leveleket a levelezo"
           kliens leto:lti, nem pedig a szerveren hagyja.

           Lasd meg: Internet Message Access Protocol.

   PostScript Printer Description (PPD)

   Preboot eXecution Environment (PXE)

   Principle Of Least Astonishment (POLA)

           A FreeBSD fejlo"dese soran igyekezni kell elkeru:lni a
           felhasznalok ele tart hirtelen valtoztatasokat. Peldaul az
           /etc/defaults/rc.conf allomanyban talalhato,
           rendszerinditasert felelo"s valtozok atrendezese serti "a
           legkisebb meglepetes elvet" (POLA). A fejleszto"knek tehat
           figyelembe kell venniu:k ezt az elvet, amikor a
           felhasznalok szamara is eszlelheto" valtoztatasokat hoznak
           letre.

   Problem Report (PR)

           A FreeBSD forrasaban vagy dokumentaciojaban talalt hiba
           leirasa. Erro"l bo"vebben ld. a FreeBSD hibajelentesek
           irasa cimu" cikket (angolul).

   Process ID (PID)

           A rendszerben egy adott futo programot egyertelmu"en
           azonosito szam, amivel hivatkozni tudunk ra es
           mu"veleteket vegrehajtani vele.

   Project Evil

           A Bill Paul altal keszitett NDISulator munkacime, amivel a
           szerzo" elso"sorban arra szeretett volna (filozofiai
           szemszo:gbo"l) utalni, hogy milyen szo:rnyu"seget kellett
           mu"velnie. Az NDISulator egy olyan specialis
           kompatibilitasi modul, aminek reven a FreeBSD/i386
           valtozataban kepesek vagyunk a Microsoft Windows;trade;
           NDIS miniport halozati meghajtoit. Altalaban csak ez az
           egyetlen modja a zart forraskodu meghajtokkal rendelkezo"
           kartyak hasznalatanak. Ld.
           src/sys/compat/ndis/subr_ndis.c.

                                   R

   RA

           Lasd: Router Advertisement

   RAID

           Lasd: Redundant Array of Inexpensive Disks

   RAM

           Lasd: Random Access Memory

   RD

           Lasd: Received Data

   RFC

           Lasd: Request For Comments

   RISC

           Lasd: Reduced Instruction Set Computer

   RPC

           Lasd: Remote Procedure Call

   RS232C

           Lasd: Recommended Standard 232C

   RTS

           Lasd: Request To Send

   Random Access Memory (RAM)

   Received Data (RD)

           Az az RS232C szabvanyu tu" vagy vezetek, amin keresztu:l
           az adat erkezik.

           Lasd meg: Transmitted Data.

   Recommended Standard 232C (RS232C)

           A soros vonali eszko:zo:k ko:zti kommunikaciot leiro
           szabvany.

   Reduced Instruction Set Computer (RISC)

           Olyan megko:zelites a processzorok tervezeseben, ahol a
           hardver altal vegezheto" mu"veletek ugyan
           leegyszeru"sitettek, de a leheto" legjobban
           altalanositottak. Ezzel cso:kkentheto" az
           energiafogyasztas, kevesebb tranzisztorra van szu:kseg es
           egyes esetekben akar nagyobb teljesitmenyt es
           megno:vekedett kodsu"ru"seget is eredmenyezhet. RISC
           processzorok peldaul az Alpha, Sparc, ARM es PowerPC.

   Redundant Array of Inexpensive Disks (RAID)

   Remote Procedure Call (RPC)

   repocopy

           Lasd: Repository Copy

   Repository Copy

           Allomanyok ko:zvetlen masolasa a CVS repository-n belu:l.

           Repocopy nelku:l a committer csak ugy tudna a repository
           egyik reszebo"l a masikra athelyezni az allomanyokat, ha
           elo"szo:r a cvs add paranccsal felvenne ezeket az uj
           helyre, majd a cvs rm paranccsal to:ro:lne a regi
           helyro"l.

           Ennek a megoldasnak egyik hatranya, hogy az allomanyokhoz
           tartozo elo"zmenyek (tehat a CVS naplokban szerepo"
           bejegyzesek) ilyenkor nem masolodnak at az uj helyre.
           Mivel a FreeBSD projekt ezeket viszont nagyon fontosnak
           tartja, ezert ehelyett gyakran a "repository copy"
           modszeret alkalmazzak. Ennek folyaman a repository-k
           karbantartasaert felelo"s tagok (repository meisterek)
           fogjak a cvs(1) hasznalata helyett atmasolni az
           allomanyokat, ko:zvetlenu:l a repository-n belu:l.

   Request For Comments (RFC)

           Az internet mu"ko:desehez kapcsolodo szabvanyok,
           protokollok es egyebek leirasat tartalmazo dokumentumok.
           Ld. www.rfc-editor.org.

           Gyakran viszont abban az ertelemben is hasznaljak, amikor
           valaki szeretne kikerni a velemenyet egy altala javasolt
           modositasrol.

   Request To Send (RTS)

           Egy RS232C szabvanyu jel, amivel megkerju:k a tavoli
           rendszert az adatok atku:ldesenek megkezdesere.

           Lasd meg: Clear To Send.

   Router Advertisement (RA)

                                   S

   SCI

           Lasd: System Control Interrupt

   SCSI

           Lasd: Small Computer System Interface

   SG

           Lasd: Signal Ground

   SMB

           Lasd: Server Message Block

   SMP

           Lasd: Symmetric MultiProcessor

   SMTP

           Lasd: Simple Mail Transfer Protocol

   SMTP AUTH

           Lasd: SMTP Authentication

   SSH

           Lasd: Secure Shell

   STR

           Lasd: Suspend To RAM

   SVN

           Lasd: Subversion

   SMTP Authentication (SMTP AUTH)

   Server Message Block (SMB)

   Signal Ground (SG)

           Egy RS232 szabvanyu tu" vagy vezetek, ami a jelek szamara
           a referencia fo:ldet adja.

   Simple Mail Transfer Protocol (SMTP)

   Secure Shell (SSH)

   Small Computer System Interface (SCSI)

   Subversion (SVN)

           A Subversion egy CVS-hez hasonlo verziokezelo" rendszer,
           nemileg bo"vebb tudassal.

           Lasd meg: Concurrent Versions System.

   Suspend To RAM (STR)

   Symmetric MultiProcessor (SMP)

   System Control Interrupt (SCI)

                                   T

   TCP

           Lasd: Transmission Control Protocol

   TCP/IP

           Lasd: Transmission Control Protocol/Internet Protocol

   TD

           Lasd: Transmitted Data

   TFTP

           Lasd: Trivial FTP

   TGT

           Lasd: Ticket-Granting Ticket

   TSC

           Lasd: Time Stamp Counter

   Ticket-Granting Ticket (TGT)

   Time Stamp Counter (TSC)

           A modern Pentium processzorokban megtalalhato preciz
           belso" szamlalo, amely a mag frekvenciajaval erkezo"
           orajeleket szamolja.

   Transmission Control Protocol (TCP)

           (Peldaul) Az IP protokoll felett u:lo" protokoll, amely
           garantalja, hogy a csomagok megbizhato, sorbarendezett
           modon jutnak el a celjukba.

   Transmission Control Protocol/Internet Protocol (TCP/IP)

           Az IP protokoll es felette futo TCP protokoll
           kombinaciojara utalo fogalom. Az internet legnagyobb resze
           a TCP/IP protokollon keresztu:l mu"ko:dik.

   Transmitted Data (TD)

           Egy RS232C szabvanyu tu" vagy vezetek, amin keresztu:l az
           adat atku:ldesre keru:l.

           Lasd meg: Received Data.

   Trivial FTP (TFTP)

                                   U

   UDP

           Lasd: User Datagram Protocol

   UFS1

           Lasd: Unix File System Version 1

   UFS2

           Lasd: Unix File System Version 2

   UID

           Lasd: User ID

   URL

           Lasd: Uniform Resource Locator

   USB

           Lasd: Universal Serial Bus

   Uniform Resource Locator (URL)

           Az interneten talalhato ero"forrasok, peldaul dokumentumok
           helyenek meghatarozasara es azonositasara alkalmas
           modszer.

   Unix File System Version 1 (UFS1)

           Az eredeti UNIX allomanyrendszer, amelyet gyakran Berkeley
           Fast File Systemnek neveznek.

   Unix File System Version 2 (UFS2)

           Az UFS1 FreeBSD 5-CURRENT valtozataban megjelent
           kiegeszitese. Az UFS2 ku:lo:nbo:zo" kiegesziteseket, es 64
           bites blokkmutatokat tartalmaz (igy leheto"ve teszi az
           1 TB-os hatar atlepeset), valamint kibo"vitett
           allomanytarolast tesz leheto"ve.

   Universal Serial Bus (USB)

           Ku:lo:nfele szamitogepes periferiakat egy univerzalis
           interfeszen keresztu:l o:sszekapcsolo hardveres szabvany.

   User ID (UID)

           A szamitogep minden egyes felhasznaloja szamara kiosztott
           egyedi azonositoszam, aminek segitsegevel a az
           ero"forrasok es engedelyek egyertelmu"en hozzajuk
           kapcsolhatoak.

   User Datagram Protocol (UDP)

           TCP/IP halozatokban adatkommunikaciora hasznalhato
           egyszeru", nem megbizhato, datagram alapu protokoll. Az
           UDP nem tartalmaz a TCP-hez hasonlo hibaerzekelest es
           -javitast.

                                   V

   VPN

           Lasd: Virtual Private Network

   Virtual Private Network (VPN)

           Helyi, peldaul egy vallalati halozat, valamilyen publikus
           hirko:zlesi eszko:zo:n, peldaul interneten keresztu:li
           tavoli eleresere alkalmas modszer.

     --------------------------------------------------------------

                                 Vegszo

   Ez a ko:nyv "A FreeBSD Dokumentacios Projekt" to:bb szaz
   resztvevo"jenek egyu:ttes munkajaval jo:tt letre. A forrasa
   SGML-ben keszu:l a DocBook DTD alapjan, es ebbo"l szamos
   ku:lo:nbo:zo" formatumba keru:l atalakitasra a Jade, a nyilt
   forraskodu DSSSL engine segitsegevel. Egy tovabbi reteg
   hozzaadasaval Norm Walsh DSSSL stiluslapjait hasznaltuk fel a Jade
   vezerlesere. A dokumentum nyomtatott valtozata nem jo:hetett volna
   letre Donald Knuth TeX betu"szedo" rendszere, illetve Leslie
   Lamport LaTeX, valamint Sebastian Rahtz JadeTeX makrocsomagja
   nelku:l.

  Megjegyzesek

   [1]  Erre utal pontosan az i386 jelzes. Meg abban az esetben is a  
        i386 kiirast fogjuk latni, hogy ha a FreeBSD-t konkretan nem  
        is az Intel 386-os processzoran futtatjuk. Itt ugyanis nem a  
        processzorunk tipusat, hanem annak "architekturajat"          
        lathatjuk.                                                    
   [2]  A rendszerindito szkriptek olyan programok, amelyek a FreeBSD 
        indulasa soran maguktol lefutnak. Legfontosabb feladatuk      
        elvegezni a to:bbi program futtatasahoz szu:kseges            
        beallitasokat, valamint elinditani a hatterben futtatando,    
        hasznos munkat vegzo" szolgaltatasokat.                       
   [3]  A FreeBSD konzol- es billentyu"zetmeghajtoinak teljes,        
        pusztan mu"szaki es preciz leirasa a syscons(4), atkbd(4),    
        vidcontrol(1) es kbdcontrol(1) man oldalakon olvashato. Itt   
        most nem bocsatkozunk reszletekbe, azonban a tema irant       
        erdeklo"do" olvasoknak mindig erdemes fellapozniuk a          
        kapcsolodo man oldalakat, ahol megtalalhatjak az emlitett     
        eszko:zo:k reszletesebb es bo"vebb leirasat.                  
   [4]  Ez azert nem teljesen igaz. Van nehany olyan tevekenyseg, ami 
        nem szakithato meg. Ilyen peldaul az, amikor a program egy    
        masik szamitogepen talalhato allomanyt probal olvasni,        
        miko:zben valamilyen ok (kikapcsolas, halozati hiba) folytan  
        elveszti vele a kapcsolatot. Ekkor a program futasa           
        "megszakithatatlan". Majd amikor a program feladja a          
        probalkozast (altalaban ket perc utan), akkor ko:vetkezik be  
        a tenyleges leallitasa.                                       
   [5]  Az o:nszabalyozo algoritmus a maxusers erteket a rendszerben  
        talalhato memorianak megfelelo"en legalabb 32-re, legfeljebb  
        384-re allitja.                                               
   [6]  Hacsak nem kapcsolunk hozza to:bb terminalt. De ennek a       
        leirasat a 26 fejezetre tartogatjuk.                          
   [7]  Lehetseges akar 4294967295-ig is szamozni az UID/GID erteket, 
        de az ekkora nagysagu azonositok komoly gondokat okozhatnak   
        az olyan szoftvereknek, melyek bizonyos feltetelezesekkel     
        elnek az ertekeikkel kapcsolatban.                            
   [8]  FreeBSD alatt a bejelentkezeshez hasznalt szabvanyos          
        jelszavak akar 128 karakteresek is lehetnek.                  
   [9]  Ez a lepes nem szu:kseges a FreeBSD 6.0-as vagy annal ujabb   
        verziojaban.                                                  
   [10] Mas feltetelek mellett masmilyen hibak keletkezhetnek.        
        Peldaul, ha egy olyan objektumot probalunk ujracimkezni,      
        amely nincs a felhasznalo birtokaban, esetleg nem is letezik  
        vagy irasvedett. Adodhat, hogy a ko:telezo" hazirend az       
        allomany, a program, vagy az uj cimkeertek tulajdonsagai      
        miatt nem fogja leheto"ve tenni egy futo program szamara egy  
        allomany ujracimkezeset. Nezzu:k erre egy peldat: egy kevesbe 
        sertetlen felhasznalo megprobalja megvaltoztatni egy sokkal   
        sertetlenebb allomany cimkejet. Vagy egy kevesbe sertetlen    
        felhasznalo sokkal sertetlenebbre akarja allitani egy kevesbe 
        sertetlen allomany cimkejet.                                  
   [11] A ko:nnyen megjegyezheto" am megis biztonsagos jelmondatok    
        megvalasztasahoz a Diceware Passphrase honlapjan talalunk egy 
        kis segitseget (angolul).                                     
   [12] A RAID jelentese: Olcso lemezek hibatu"ro" to:mbje (Redundant 
        Array of Inexpensive Disks). Ku:lo:nfele tipusu hibatu"resi   
        megoldasokat vonultat fel, habar az eredeti elnevezes         
        felrevezeto" lehet, mivel redundanciat nem tartalmaz.         
   [13] Ez azert nem teljesen igaz. A regebbi FreeBSD kiadasokat      
        ugyan nem tamogathatjuk a vegtelensegig, de altalaban igy is  
        to:bb evig foglalkozunk velu:k. A FreeBSD regebbi kiadasaival 
        kapcsolatos jelenleg ervenyes biztonsagi hazirend reszletes   
        bemutatasa a http://www.FreeBSD.org/security/ oldalon         
        olvashato (angolul).                                          
   [14] http://www.freebsd.org/news/status/                           

     --------------------------------------------------------------

  Ha kerdese van a FreeBSD-vel kapcsolatban, a ko:vetkezo" cimre irhat
              (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kerdese, kerju:k erre a cimre
                      irjon: <gabor@FreeBSD.org>.
