diff options
Diffstat (limited to 'hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.xml')
-rw-r--r-- | hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.xml | 2139 |
1 files changed, 2139 insertions, 0 deletions
diff --git a/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.xml b/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.xml new file mode 100644 index 0000000000..2b66058407 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.xml @@ -0,0 +1,2139 @@ +<?xml version="1.0" encoding="iso-8859-2" standalone="no"?> +<!-- + The FreeBSD Documentation Project + + $FreeBSD$ +--> +<!-- The FreeBSD Hungarian Documentation Project + Translated by: PALI, Gabor <pgj@FreeBSD.org> + %SOURCE% en_US.ISO8859-1/books/handbook/kernelconfig/chapter.xml + %SRCID% 1.194 +--> + +<chapter id="kernelconfig" lang="hu"> + <chapterinfo> + <authorgroup> + <author> + <firstname>Jim</firstname> + <surname>Mock</surname> + <contrib>Frissítette és átdolgozta: + </contrib> + </author> + </authorgroup> + <authorgroup> + <author> + <firstname>Jake</firstname> + <surname>Hamby</surname> + <contrib>Eredetileg írta: </contrib> + </author> + </authorgroup> + </chapterinfo> + + <title>A &os; rendszermag testreszabása</title> + + <sect1 id="kernelconfig-synopsis"> + <title>Áttekintés</title> + + <indexterm> + <primary>rendszermag</primary> + <secondary>saját rendszermag + készítése</secondary> + </indexterm> + + <para>A rendszermag a &os; operációs rendszer lelke. + Felelős a memória kezelésért, a + biztonsági szabályozások + betartatásáért, a hálózat + működtetéséért, a + lemezhozzáférésért és sok + minden másért is. Miközben maga a &os; egyre + jobban konfigurálható dinamikusan, addig + alkalmanként elegedhetetlen, hogy + újrakonfiguráljuk és + újrafordítsuk a rendszermagot.</para> + + <para>A fejezet elolvasása során + megismerjük:</para> + + <itemizedlist> + <listitem> + <para>miért lehet szükségünk egy + saját rendszermagra;</para> + </listitem> + + <listitem> + <para>hogyan készítsünk + konfigurációs állományt a + rendszermaghoz, vagy hogyan módosítsunk egy + már létezőt;</para> + </listitem> + + <listitem> + <para>hogyan használjuk a rendszermag + konfigurációs állományát + egy új rendszermag lefordítására + és létrehozására;</para> + </listitem> + + <listitem> + <para>hogyan telepítsük az új + rendszermagot;</para> + </listitem> + + <listitem> + <para>hogyan orvosoljuk a felmerülő + problémákat.</para> + </listitem> + </itemizedlist> + + <para>A fejezetben az összes példaként + bemutatásra kerülő parancsot + <username>root</username> felhasználóként + kell kiadni a sikeres végrehajtásukhoz.</para> + + </sect1> + + <sect1 id="kernelconfig-custom-kernel"> + <title>Miért készítsünk saját + rendszermagot?</title> + + <para>A &os; eredetileg ún. <quote>monolitikus</quote> + rendszermaggal rendelkezett. Ez azt jelenti, hogy a rendszermag + egyetlen nagy program volt, ami előre rögzített + eszközöket ismert, és ha meg akartuk + változtatni a rendszermag + működését, akkor új rendszermagot + kellett fordítanunk, majd újra kellett + indítanunk vele a + számítógépet.</para> + + <para>Manapság azonban a &os; már inkább + afelé a megközelítés felé halad, + ahol a rendszermag funkcionalitásának nagy + részét működés közben az + igények szerint betölthető és + eltávolítható modulok adják. Ezzel + lehetővé válik, hogy a rendszermag gyorsan + illeszkedjen az újonnan megjelenő + hardvereszközökhöz (mint például a + laptopok PCMCIA-kártyáihoz), vagy olyan új + funkciókat tegyünk a rendszermaghoz, amelyek a + fordításánál nem voltak + feltétlenül szükségesek. Ezt a modellt + nevezik moduláris rendszermagnak.</para> + + <para>Ennek ellenére még mindig elkerülhetetlen, + hogy esetenként ne legyen szükség a rendszermag + statikus testreszabására. Ez a legtöbb esetben + azzal magyarázható, hogy vannak olyan + funkciók, amelyek túlságosan is mélyen + helyezkednek el a rendszermagban, ezáltal nem + tölthetőek be dinamikusan. Máskor viszont + egyszerűen azért nem lehetséges, mert + még senki sem szánt időt az adott + funkcióhoz tartozó, dinamikusan betölthető + modul elkészítésére.</para> + + <para>Egy saját rendszermag készítése + azon legfontosabb próbatételek egyike, melyet egy + haladó BSD felhasználónak ki kell + állnia. Ez a folyamat, habár némileg + időigényes, számos előnyt tartogat &os; + rendszerünk számára. Eltérően egy + <filename>GENERIC</filename> (általános) + rendszermagtól, amely rengeteg hardvert támogat, egy + saját rendszermag csak a <emphasis>saját</emphasis> + PC-nk hardverét ismeri. Ennek több előnye is + van, például:</para> + + <itemizedlist> + <listitem> + <para>A rendszerünk gyorsabban indul. Mivel a rendszermag + csak azokat a hardvereket fogja keresni, melyek a + rendszerünkben megtalálhatóak, + jelentős mértékben le tud csökkeni az + induláshoz szükséges idő.</para> + </listitem> + + <listitem> + <para>Kisebb memóriahasználat. Egy saját + rendszermag a szükségtelen részek és + eszközmeghajtók elhagyása miatt gyakran + kevesebb memóriát emészt fel, mint a + <filename>GENERIC</filename> rendszermag. Ez azért is + fontos, mert a rendszermag mindig benn van a fizikai + memóriában, és ezzel az + alkalmazások elől veszi el a helyet. Emiatt egy + saját rendszermag elkészítése + különösen hasznos lehet egy kevés + fizikai memóriával rendelkező + rendszeren.</para> + </listitem> + + <listitem> + <para>További hardverek támogatása. A + saját rendszermagunkba olyan eszközök + támogatását is beletehetjük, amelyek + nem szerepelnek a <filename>GENERIC</filename> rendszermagban, + mint például a + hangkártyákét.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="kernelconfig-devices"> + <sect1info> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Írta: </contrib> + </author> + </authorgroup> + </sect1info> + + <title>A rendszerünkben levő hardverek + összeszedése</title> + + <para>Mielőtt belevetnénk magunkat a rendszermag + beállításába, érdemes egy + leltárt készíteni a gépünkben + található különböző + eszközökről. Ahol a &os; nem elsődlegesen + használt operációs rendszer, ott ehhez + elegendő megnézni a jelenlegi rendszerben + található elemeket. Például a + µsoft; rendszerek + <application>Eszközkezelő</application>jében + (Device Manager) általában az összes + eszköz fontosabb adatait megtaláljuk. Magát az + <application>Eszközkezelő</application>t pedig a + Vezérlőpultból (Control Panel) + érhetjük el.</para> + + <note> + <para>A µsoft.windows; egyes verzióiban a + <application>Rendszer</application> (System) ikonjára + kattintva megkapjuk azt a képernyőt, ahonnan + közvetlenül el tudjuk érni az + <application>Eszközkezelő</application>t.</para> + </note> + + <para>Ha viszont nincs másik operációs rendszer + a gépünkön, akkor magunknak kell mindezeknek + utánanéznünk. Erre az egyik alkalmas + módszer a &man.dmesg.8; és a &man.man.1; parancsok + használata. A &os;-ben található + legtöbb meghajtónak van saját man oldala, ami + tartalmazza az általuk kezelt eszközök + listáját, illetve így a + rendszerindítás során észlelt + hardvereket nézhetjük vissza. Például + az alábbi sorok arra utalnak, hogy a + <devicename>psm</devicename> meghajtó megtalálta a + gépünkhöz tartozó egeret:</para> + + <programlisting>psm0: <PS/2 Mouse> irq 12 on atkdbc0 +psm0: [GIANT-LOCKED] +psm0: [ITHREAD] +psm0: model Generic PS/2 mouse, device ID 0</programlisting> + + <para>Ezután ezt a meghajtót vagy a rendszermagba kell + beépítenünk, vagy pedig a &man.loader.conf.5; + állományon keresztül + betöltenünk.</para> + + <para>Bizonyos esetekben a <command>dmesg</command> az + eszközök felkutatásának eredményei + helyett csak a rendszer üzeneteit mutatja. Ilyen + helyzetekben a teljes kimenet a + <filename>/var/run/dmesg.boot</filename> állományban + tekinthető meg.</para> + + <para>A hardverek manuális + felderítésének módja a &man.pciconf.8; + segédprogram kimenetének + böngészése, ami valamivel részletesebb + eredményt ad. Mint például:</para> + + <programlisting>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</programlisting> + + <para>A <command>pciconf <option>-lv</option></command> paranccsal + kapott kimenet ezen része azt mutatja, hogy az + <devicename><replaceable>ath</replaceable></devicename> + meghajtó talált egy vezeték + nélküli Ethernet eszközt. Innen a <command>man + <replaceable>ath</replaceable></command> paranccsal + érhetjük el a &man.ath.4; man oldalát.</para> + + <para>A &man.man.1; a <option>-k</option> paraméter + megadásával további hasznos + információkkal is tud szolgálni. A + fentiekből kiindulva például a + következő paranccsal:</para> + + <screen>&prompt.root; man -k <replaceable>Atheros</replaceable></screen> + + <para>le tudjuk kérdezni azokat a man oldalakat, amelyek + tartalmazzák az adott szót:</para> + + <programlisting>ath(4) - Atheros IEEE 802.11 wireless network driver +ath_hal(4) - Atheros Hardware Access Layer (HAL)</programlisting> + + <para>A hardvereszközeink listájával + felvértezve most már egy saját rendszermag + létrehozása sem lesz annyira ijesztő.</para> + </sect1> + + <sect1 id="kernelconfig-modules"> + <title>Meghajtók, alrendszerek és modulok</title> + <indexterm> + <primary>rendszermag</primary> + <secondary>meghajtók, modulok, alrendszerek</secondary> + </indexterm> + + <para>Mielőtt új rendszermagot + készítenénk, érdemes megfontolnunk, hogy + egyáltalán szükségünk lesz-e + rá. Ha például valamilyen eszköz + támogatásához kell, akkor könnyen + előfordulhat, hogy azt modulként is be tudjuk + tölteni.</para> + + <para>A rendszermaghoz tartozó modulok a <filename + class="directory">/boot/kernel</filename> + könyvtárban találhatóak, és a + &man.kldload.8; segítségével a rendszer + működése közben dinamikusan + betölthetőek. Ha nem is az összes, de a + legtöbb meghajtóhoz tartozik egy modul és egy + man oldal. Például az előző szakaszban az + <devicename>ath</devicename> vezeték nélküli + Ethernet meghajtóval foglalkoztunk. A következő + leírást találjuk a hozzá tartozó + man oldalon:</para> + + <programlisting>Vagy ha modulként akarjuk betölteni ezt a meghajtót a rendszer indítása +során, akkor a &man.loader.conf.5; állományba vegyük fel a következő +sort: + + if_ath_load="YES"</programlisting> + + <para>A fentebb leírtak szerint tehát, ha az + <literal>if_ath_load="YES"</literal> sort hozzáadjuk a + <filename>/boot/loader.conf</filename> állományhoz, + akkor a rendszer indulásakor ez a modul mindig dinamikusan + betöltődik.</para> + + <para>Némely esetben azonban nem áll + rendelkezésünkre ilyen modul. Ez + különösen igaz bizonyos alrendszerekre és a + fontosabb meghajtókra, például az + <acronym>FFS</acronym> állományrendszerre + vonatkozóan, mivel ezeknek kötelezően a + rendszermagban kell lenniük. Ugyanez elmondható a + hálózati támogatásra is (INET). Csak + úgy tudjuk megmondani, hogy valamelyik meghajtóra + szükség van a rendszermagban, ha először + megpróbáljuk megkeresni hozzá a + megfelelő modult.</para> + + <warning> + <para>A beépített meghajtók figyelmetlen + eltávolításával könnyen + lefordíthatatlan állapotba kerülhet a + rendszermag. Például, ha az &man.ata.4; + meghajtót kivesszük a rendszermag + konfigurációs + állományából, az + <acronym>ATA</acronym> alrendszert használó + meghajtók csak abban az esetben fognak biztosan + működni, ha egyúttal felvesszük a + <filename>loader.conf</filename> állományba. Ha + nem vagyunk benne biztosak, akkor először + próbáljuk meg használni a modult, és + csak utána hagyjuk el a rendszermagba + épített változatát.</para> + </warning> + </sect1> + + <sect1 id="kernelconfig-building"> + <title>Saját rendszermag készítése + és telepítése</title> + + <indexterm> + <primary>rendszermag</primary> + <secondary>készítése, + telepítése</secondary> + </indexterm> + + <para>Először is tegyünk egy rövidke + sétát a rendszermag könyvtárában. + A továbbiakban említendő összes + könyvtár a <filename>/usr/src/sys</filename> + könyvtáron belül található, amely + <filename>/sys</filename> néven is elérhető. + Itt rengeteg alkönyvtár található, + mindegyikük a rendszermag különböző + részeit testesíti meg. Ezek közül most + számunkra a legfontosabb az + <filename><replaceable>architektúra</replaceable>/conf</filename> + lesz, ahol majd létrehozzuk a saját rendszermagunk + konfigurációs állományát, + valamint a <filename>compile</filename>, ahol majd a + rendszermagunk fordítása történik. Itt + az <replaceable>architektúra</replaceable> lehet + <filename>i386</filename>, <filename>alpha</filename>, + <filename>amd64</filename>, <filename>ia64</filename>, + <filename>powerpc</filename>, <filename>sparc64</filename> vagy + <filename>pc98</filename> (a PC-k egyik, leginkább + Japánban elterjedt változata). Az adott + architektúra könyvtárában + található összes állomány csak + arra az architektúrára vonatkozik, a kód + többi része pedig gépfüggetlen és + közös az összes többi létező + és leendő &os; platformon. Érdemes megfigyelni + a könyvtárak logikai elrendezését: + minden egyes ismert eszköz, állományrendszer + és bővítmény saját + alkönyvtárral rendelkezik.</para> + + <para>A példák során ez a fejezet + feltételezi, hogy az i386 architektúrát + használjuk. Ha ez a mi esetünkben nem így + lenne, ne felejtsük el átírni bennük az + elérési útvonalakat a rendszerünk + architektúrájának megfelelően.</para> + + <note> + <para>Ha <emphasis>nem lenne</emphasis> + <filename>/usr/src/sys</filename> könyvtár a + rendszerünkben, valószínűleg még + nem telepítettük a rendszermag + forráskódját. Ezt a legkönnyebben + úgy tudjuk megtenni, ha <username>root</username> + felhasználóként elindítjuk a + <command>sysinstall</command> programot és ott + kiválasztjuk a <guimenuitem>Configure</guimenuitem> + (Beállítások), azon belül + <guimenuitem>Distributions</guimenuitem> (Terjesztések) + menüpontot, amiben válasszuk ki a + <guimenuitem>src</guimenuitem>, <guimenuitem>base</guimenuitem> + és <guimenuitem>sys</guimenuitem> terjesztéseket. + Ha nem szeretnénk erre a célra a + <application>sysinstall</application> programot + használni, de rendelkezésünkre áll a + <quote>hivatalos</quote> &os; CD, akkor a forrásokat + akár parancssorból is + telepíthetjük:</para> + + <screen>&prompt.root; <userinput>mount /cdrom</userinput> +&prompt.root; <userinput>mkdir -p /usr/src/sys</userinput> +&prompt.root; <userinput>ln -s /usr/src/sys /sys</userinput> +&prompt.root; <userinput>cat /cdrom/src/ssys.[a-d]* | tar -xzvf -</userinput> +&prompt.root; <userinput>cat /cdrom/src/sbase.[a-d]* | tar -xzvf -</userinput></screen> + </note> + + <para>Ezután lépjünk be az + <filename><replaceable>i386</replaceable>/conf</filename> + könyvtárba és másoljuk le a + <filename>GENERIC</filename> konfigurációs + állományt a kedvünk szerinti nevűre. + Például:</para> + + <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf</userinput> +&prompt.root; <userinput>cp GENERIC <replaceable>SAJÁT</replaceable></userinput></screen> + + <para>Általában a nevet végig nagybetűkkel + írjuk, és ha több &os;-s gépet is + üzemeltetünk különböző hardverekkel, + hasznosnak bizonyulhat megemlíteni benne az adott + gép rendszerének nevét is. Ebben a + példában ez most a + <filename><replaceable>SAJÁT</replaceable></filename> + lesz.</para> + + <tip> + <para>A rendszermagunk konfigurációs + állományát nem éppen a legjobb + ötlet a <filename>/usr/src</filename> + könyvtárban tárolni. Ugyanis könnyen + előfordulhat, hogy egy rosszul sikerült + fordítás után egyszerűen csak + letöröljük az egész + <filename>/usr/src</filename> könyvtárat és + onnan kezdjük újra. Azonban csak ezután + juthat eszünkbe, hogy vele együtt bizony + letöröltük a saját rendszermagunk + konfigurációs állományát is! + Ehhez hasonlóan, közvetlenül a + <filename>GENERIC</filename> konfigurációs + állomány szerkesztése sem ajánlott, + mivel a források egy esetleges <link + linkend="updating-upgrading">frissítésénél</link> + könnyen felülíródhat és ezzel + együtt elvesznek a módosításaink + is.</para> + + <para>Tehát érdemes inkább valahol + máshol tárolnunk a rendszermagunk + konfigurációs állományát, + majd létrehozni rá egy szimbolikus linket a + <filename><replaceable>i386</replaceable></filename> + könyvtárban.</para> + + <para>Valahogy így:</para> + + <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf</userinput> +&prompt.root; <userinput>mkdir /root/kernel</userinput> +&prompt.root; <userinput>cp GENERIC /root/kernel/<replaceable>SAJÁT</replaceable></userinput> +&prompt.root; <userinput>ln -s /root/kernel/<replaceable>SAJÁT</replaceable></userinput></screen> + </tip> + + <para>Most pedig a kedvenc szövegszerkesztőnkkel + lássunk neki a + <filename><replaceable>SAJÁT</replaceable></filename> + átírásának! Ha nemrég + telepítettük csak a rendszerünket, az egyetlen + elérhető szövegszerkesztőnk minden bizonnyal + a <application>vi</application> lesz. Róla most + túlságosan is bonyolult lenne leírást + adnunk, de az <link + linkend="bibliography">Irodalomjegyzék</link>ben + található könyvek közül sokban + elég jól bemutatják. Ezen kívül + a &os; ajánl egy könnyebben megtanulható + szövegszerkesztőt is az <application>ee</application> + személyében, amely a kezdők + számára az ideális választás. + Nyugodtan átírhatjuk az elöl + található megjegyzéseket a saját + konfigurációnknak megfelelően, vagy akár + azt is rögzíthetjük, hogy miben + tértünk el a <filename>GENERIC</filename> + beállításaitól.</para> + + <indexterm><primary>SunOS</primary></indexterm> + + <para>Ha fordítottunk már rendszermagot &sunos; vagy + más BSD operációs rendszer alatt, ez az + állomány ismerősnek tűnhet. Ha viszont + más operációs rendszerek, mint + például a DOS felől érkezünk, a + <filename>GENERIC</filename> konfigurációs + állomány egy kissé terebélyesnek + tűnhet számunkra, ezért <link + linkend="kernelconfig-config">A konfigurációs + állomány</link> című részt + figyelmesen és lassan olvassuk át.</para> + + <note> + <para>Amennyiben a forrásfánkat a &os; projekt + legfrissebb forrásaival <link + linkend="updating-upgrading">szinkronizáljuk</link>, mindig + olvassuk el a <filename>/usr/src/UPDATING</filename> + állományt, mielőtt bármilyen + frissítéshez is kezdenénk. Itt + megtalálhatóak azok a fontos érintett + kérdések és területek, amely + külön figyelmet igényelnek a frissített + forráskód esetén. A + <filename>/usr/src/UPDATING</filename> mindig a &os; + forrásának legfrissebb változatához + igazodik, és ezért sokkal naprakészebb + információkat tartalmaz, mint ez a + kézikönyv.</para> + </note> + + <para>Most pedig le kell lefordítanunk a rendszermag + forráskódját.</para> + + <procedure> + <title>A rendszermag lefordítása</title> + + <step> + <para>Lépjünk be a <filename + class="directory">/usr/src</filename> + könyvtárba:</para> + + <screen>&prompt.root; <userinput>cd /usr/src</userinput></screen> + </step> + + <step> + <para>Fordítsuk le a rendszermagot:</para> + + <screen>&prompt.root; <userinput>make buildkernel KERNCONF=<replaceable>SAJÁT</replaceable></userinput></screen> + </step> + + <step> + <para>Telepítsük az új rendszermagot:</para> + + <screen>&prompt.root; <userinput>make installkernel KERNCONF=<replaceable>SAJÁT</replaceable></userinput></screen> + </step> + </procedure> + + <note> + <para>A &os; teljes forrásfájára + szükség van a rendszermag + lefordításához.</para> + </note> + + <tip> + <para>Amikor egy saját rendszermagot + alapértelmezés szerint fordítunk, vele + együtt az <emphasis>összes</emphasis> modul is + lefordításra kerül. Ha viszont időt + szeretnénk megtakarítani a rendszermag + frissítése során, vagy csak a saját + moduljainkat akarjuk lefordítani, érdemes + átírnunk az <filename>/etc/make.conf</filename> + állományt a rendszermag + fordításának megkezdése + előtt:</para> + + <programlisting>MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs</programlisting> + + <para>Ez a változó megadja a ténylegesen + lefordítandó modulok + listáját.</para> + + <programlisting>WITHOUT_MODULES = linux acpi sound ntfs</programlisting> + + <para>Ez a változó a + fordításból kihagyandó felső + szintű modulokat sorolja fel. A rendszermag + fordításának folyamatában + egyéb hasznosnak tekinthető + változókról a &man.make.conf.5; man + oldalán olvashatunk.</para> + </tip> + + <indexterm><primary><filename class="directory">/boot/kernel.old</filename></primary></indexterm> + + <para>Ezután az új rendszermag a <filename + class="directory">/boot/kernel</filename> könyvtárba + kerül <filename>/boot/kernel/kernel</filename> néven, + a korábbi rendszermag pedig + <filename>/boot/kernel.old/kernel</filename> néven + őrződik meg. Most állítsuk le a rendszert + és indítsuk újra az új rendszermag + aktiválásához. Ha közben valamilyen + hiba történt volna, nézzük meg a fejezet + végén található, <link + linkend="kernelconfig-trouble">hibakeresés</link>re + vonatkozó utasításokat. Mindenképpen + olvassuk el azt a részt, amely leírja, hogyan + állítsuk helyre a rendszerünket abban az + esetben, ha az új rendszermaggal <link + linkend="kernelconfig-noboot">nem indul</link>.</para> + + <note> + <para>A rendszerindítási folyamathoz tartozó + további állományok, mint + például a rendszerbetöltő + (&man.loader.8;) és annak konfigurációs + állománya, a <filename>/boot</filename> + könyvtárban találhatóak. A + külső és saját modulok a <filename + class="directory">/boot/kernel</filename> a + könyvtárba kerülhetnek, azonban a + felhasználóknak nagyon ügyelniük kell + rá, hogy az itt található modulok + szinkronban legyenek a lefordított rendszermaggal. + Ellenkező esetben a rendszerben + megbízhatatlanságot, hibákat + észlelhetünk.</para> + </note> + </sect1> + + <sect1 id="kernelconfig-config"> + <sect1info> + <authorgroup> + <author> + <firstname>Joel</firstname> + <surname>Dahl</surname> + <contrib>A &os; 6.X verziójához + igazította: </contrib> + </author> + </authorgroup> + </sect1info> + + <title>A konfigurációs állomány</title> + + <indexterm> + <primary>rendszermag</primary> + <secondary>NOTES</secondary> + </indexterm> + <indexterm><primary>NOTES</primary></indexterm> + <indexterm> + <primary>rendszermag</primary> + <secondary>konfigurációs + állomány</secondary> + </indexterm> + + <para>A konfigurációs állomány + általános formátuma igen egyszerű. + Minden sor tartalmaz egy kulcsszót és egy vagy + több paramétert. A további + egyszerűsítés kedvéért a + legtöbb sor csak egyetlen paramétert tartalmaz. + Bármi, ami egy <literal>#</literal> (kettőskereszt) + jelet követ, megjegyzésnek minősül és + nem számít konfigurációs elemnek. A + most következő részek bemutatják az egyes + kulcsszavakat abban a sorrendben, ahogy azokat a + <filename>GENERIC</filename> állományban is + megtalálhatjuk. <anchor id="kernelconfig-options"/>Az + architektúrafüggő opciók és + eszközök teljes listáját a + <filename>GENERIC</filename> állománnyal egy + könyvtárban levő <filename>NOTES</filename> + állományban találhatjuk meg. Az + architektúrától független + opciókat a <filename>/usr/src/sys/conf/NOTES</filename> + állományban találjuk.</para> + + <para>A &os; 5.0 megjelenése óta a + konfigurációs állományokban + használható az <literal>include</literal> + direktíva. Ennek segítségével egy + másik konfigurációs állomány + tartalma logikailag beilleszthető az aktuálisba, + így könnyebbé válik egy már + meglevő állományhoz tartozó kisebb + mennyiségű változtatás + karbantartása. Például ha csupán + pár egyszerű kiegészítést + szeretnénk hozzáadni a + <filename>GENERIC</filename> rendszermaghoz, akkor elegendő + a hozzá vett eltéréseket + nyilvántartanunk egy külön + konfigurációs állományban:</para> + + <programlisting>include GENERIC +ident SAJAT + +options IPFIREWALL +options DUMMYNET +options IPFIREWALL_DEFAULT_TO_ACCEPT +options IPDIVERT +</programlisting> + + <para>Valószínűleg sok rendszergazda + számára jelentős előnyt jelent ez a + megoldás a konfigurációs + állományok korábbról már + megszokott újraírásával szemben: a + helyi konfigurációs állomány csak a + <filename>GENERIC</filename> rendszermag helyi rendszerre + vonatkozó eltéréseit tartalmazza. Így + amikor frissítjük a rendszerünket, a + <filename>GENERIC</filename> rendszermag összes + újítása elérhetővé + válik, kivéve ha explicit módon le nem + tiltottuk ezeket a <literal>noptions</literal> vagy a + <literal>nodevice</literal> megadásával. A fejezet + további részében egy átlagos + konfigurációs állománnyal fogunk + foglalkozni, mind a beállítások, mind pedig + az eszközök tekintetében.</para> + + <note> + <para>Ha olyan állományt akarunk + készíteni, amely tartalmazza az összes + lehetséges opciót, például + teszteléshez, futtassuk le <username>root</username> + felhasználóként az alábbi + parancsot:</para> + + <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf && make LINT</userinput></screen> + </note> + + <indexterm> + <primary>rendszermag</primary> + <secondary>konfigurációs + állomány</secondary> + </indexterm> + + <para>Itt a <filename>GENERIC</filename> + rendszermag-konfigurációs állomány + ismertetése következik, az + érthetőség kedvéért + helyenként megjegyzésekkel kibővítve. A + bemutatott állománynak majdnem pontosan meg kell + egyeznie a rendszerünkben található + <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/GENERIC</filename> + állománnyal.</para> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>machine</secondary> + </indexterm> + + <programlisting>machine i386</programlisting> + + <para>A számítógépünk + architektúráját adja meg. A + következők valamelyikének kell lennie: + <literal>alpha</literal>, <literal>amd64</literal>, + <literal>i386</literal>, <literal>ia64</literal>, + <literal>pc98</literal>, <literal>powerpc</literal>, vagy + <literal>sparc64</literal>.</para> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>cpu</secondary> + </indexterm> + <programlisting>cpu I486_CPU +cpu I586_CPU +cpu I686_CPU</programlisting> + + <para>A fenti beállítás + segítségével megadhatjuk, milyen + típusú processzor található a + számítógépünkben. Több + ilyen sorunk is lehet (ha például nem lennénk + biztosak benne, hogy az <literal>I586_CPU</literal> vagy + <literal>I686_CPU</literal> értéket kellene + megadnunk), de a saját rendszermagunk + összeállításához érdemes + csak egyet meghagynunk. Ha nem ismerjük pontosan a + processzorunk típusát, vessünk egy + pillantást a <filename>/var/run/dmesg.boot</filename> + állományra és keressük ki + belőle.</para> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>ident</secondary> + </indexterm> + + <programlisting>ident GENERIC</programlisting> + + <para>Ez a rendszermag azonosítója. + Változtassuk meg rendszermagunk nevére, legyen + például + <literal><replaceable>SAJAT</replaceable></literal>, ha a + korábbi utasításokat követtük. Az + <literal>ident</literal> után írt sztring fog + megjelenni a rendszermag neve mellett a rendszer + indítása során, ezért fontos, hogy az + új rendszermagunknak más nevet adjunk, ha meg + akarjuk különböztetni az általában + használttól (például egy + tesztelésre szánt rendszermagot akarunk + készíteni).</para> + + <programlisting># ha a /boot/device.hints használata helyett statikusan bele akarjuk fordítani +#hints "GENERIC.hints" # itt szerepelnek a device hintek</programlisting> + + <para>A &man.device.hints.5; használható az + eszközmeghajtók + beállítására. A &man.loader.8; a + rendszer indítása során + alapértelmezés szerint a + <filename>/boot/device.hints</filename> állományt + olvassa be erre a célra. A <literal>hints</literal> + beállítás használatával ezeket + a <quote>hinteket</quote> statikusan bele tudjuk + építeni a rendszermagba. Ebben az esetben nincs + szükségünk külön + <filename>device.hints</filename> állomány + létrehozására a <filename>/boot</filename> + könyvtárban.</para> + + <programlisting>makeoptions DEBUG=-g # a nyomkövetéshez szükséges gdb(1) szimbólumok beépítése</programlisting> + + <para>A &os; hagyományos fordításának + folyamata során a rendszermagot a <option>-g</option> + használatával készítjük el, + aminek köszönhetően hibakeresési + információkat tudunk átadni a &man.gcc.1; + fordítónak.</para> + + <programlisting>options SCHED_ULE # ULE ütemező</programlisting> + + <para>A &os; alapértelmezett rendszerütemezője. Ne + változtassuk meg!</para> + + <programlisting>options PREEMPTION # a rendszerszálak megszakíthatóságának engedélyezése</programlisting> + + <para>Ha engedélyezzük, a rendszermagban futó + szálakat meg tudják szakítani más, + magasabb prioritású szálak. Ez segít + növelni a rendszer válaszadási + sebességét és csökkenti a + megszakításokat kezelő szálak + várakozását.</para> + + <programlisting>options INET # hálózatkezelés</programlisting> + + <para>A hálózatkezelés + támogatása. Ne töröljük ki, + még akkor sem, ha nem tervezzük + hálózatra kapcsolni a rendszert. Sok programnak + szüksége van legalább az ún. loopback + típusú hálózat + támogatására (vagyis a + számítógépünkön belüli + hálózati kapcsolatokra), ezért ez + feltétlenül kötelező!</para> + + <programlisting>options INET6 # IPv6 kommunikációs prokotollok</programlisting> + + <para>Engedélyezi az IPv6 kommunikációs + protokollok használatát.</para> + + <programlisting>options FFS # Berkeley Fast Filesystem</programlisting> + + <para>Ez a legalapvetőbb merevlemezes + állományrendszer. Hagyjuk meg, ha + merevlemezről akarjuk indítani a + rendszerünket.</para> + + <programlisting>options SOFTUPDATES # az FFS Soft Updates támogatása</programlisting> + + <para>Ez a beállítás engedélyezi a + rendszermagban a Soft Updates használatát, amely + segít felgyorsítani a lemez írási + sebességét. Ha már a rendszermag ezt a + funkcionalitást ismeri, akkor még külön az + egyes lemezeken is engedélyezni kell. Nézzük + meg a &man.mount.8; kimenetét, hogy lássuk, a + rendszerünkben levő lemezek közül melyiken van + ténylegesen engedélyezve a Soft Updates + használata. Ha nem látjuk benne sehol sem a + <literal>soft-updates</literal> opciót, akkor azt + (meglevő állományrendszerek esetén) a + &man.tunefs.8; vagy (új állományrendszerek + esetén) a &man.newfs.8; parancsokkal tudjuk + bekapcsolni.</para> + + <programlisting>options UFS_ACL # a hozzáférés-vezérlési listák (ACL) támogatása</programlisting> + + <para>Ezzel a beállítással + engedélyezhetjük a rendszermagban a + hozzáférés-vezérlési + listák támogatását. Ez a + kiterjesztett attribútumok és az + <acronym>UFS2</acronym> használatára + támaszkodik. Ezt a lehetőséget + részleteiben a <xref linkend="fs-acl"/>ban + tárgyaljuk. Az <acronym>ACL</acronym> + alapértelmezés szerint támogatott, és + ha korábban már használtuk, akkor + semmiképpen se kapcsoljuk ki, mert ezzel az eddig + létrehozott + hozzáférés-vezérlési + listáink érvénytelenné, az + állományaink pedig védtelenné + válnak.</para> + + <programlisting>options UFS_DIRHASH # nagyobb könyvtárak esetén gyorsulást hoz</programlisting> + + <para>Ezzel a beállítással némi + memória feláldozása árán fel + tudjuk gyorsítani a nagyobb könyvtárakon + végzett lemezműveletek sebességét, + ezért ezt a beállítást érdemes + nagyobb szerverekre vagy interaktivitást + igénylő munkaállomásokra tartogatni, + és eltávolítani olyan esetekben, amikor a + &os;-t olyan kisebb számítógépeken + használjuk, ahol a memória kevés és a + lemezműveletek sebessége kevésbé fontos, + például egy tűzfalon.</para> + + <programlisting>options MD_ROOT # tudunk memórialemezről is rendszert indítani</programlisting> + + <para>Ezzel az opcióval engedélyezni tudjuk a rendszer + indítását memóriában + tárolt virtuális lemezekről.</para> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>NFS</secondary> + </indexterm> + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>NFS_ROOT</secondary> + </indexterm> + + <programlisting>options NFSCLIENT # hálózati állományrendszer (NFS) kliens +options NFSSERVER # NFS szerver +options NFS_ROOT # NFS használható gyökérként is, kell hozzá az NFSCLIENT</programlisting> + + <para>A hálózati állományrendszer + támogatása. Hacsak nem akarunk TCP/IP-n + keresztül állományrendszereket csatlakoztatni + egy &unix; állományszerverről, + kivehetjük.</para> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>MSDOSFS</secondary> + </indexterm> + + <programlisting>options MSDOSFS # MS-DOS állományrendszer</programlisting> + + <para>Az &ms-dos; állományrendszer. Hacsak nem + akarunk DOS-ra formázott merevlemezes + partíciót csatlakoztatni a + rendszerindítás során, nyugodtan + elhagyhatjuk. A fentebb leírtak szerint az első olyan + alkalommal automatikusan betöltődik, amikor egy DOS + partíciót csatlakoztatni akarunk. Sőt, a + nagyszerű <filename + role="package">emulators/mtools</filename> szoftver + segítségével külön + csatlakoztatás és leválasztás + nélkül tudunk DOS-os floppykat olvasni (és az + <literal>MSDOSFS</literal>-re egyáltalán nincs is + szüksége).</para> + + <programlisting>options CD9660 # ISO 9660 állományrendszer</programlisting> + + <para>Az ISO 9660 állományrendszert a CD-k + használják. Vegyük ki, ha nincs a + számítógépben CD-ROM meghajtó, + vagy csak ritkán fogunk CD-ket csatlakoztatni (mivel a + hozzá tartozó modul magától + betöltődik az első adat CD csatlakoztatása + során). Az audio CD-k nem használják ezt az + állományrendszert.</para> + + <programlisting>options PROCFS # a futó programok állományrendszere (szükséges hozzá a PSEUDOFS)</programlisting> + + <para>A futó programok állományrendszere. Ez + csak a <filename>/proc</filename> könyvtárra + csatlakoztatott <quote>színlelt</quote> + állományrendszer, amelynek + segítségével a &man.ps.1; és + hozzá hasonló programok képesek több + információt adni a futó programokról. + A <literal>PROCFS</literal> használata a legtöbb + esetben nem indokolt, mivel a különféle + nyomkövető és felügyeleti eszközök + képesek a <literal>PROCFS</literal> használata + nélkül is működni: + alapértelmezés szerint a telepített + rendszerek sem csatlakoztatják ezt az + állományrendszer.</para> + + <programlisting>options PSEUDOFS # pszeudo állományrendszerek támogatása</programlisting> + + <para>A 6.X verziójú rendszermagokban a + <literal>PROCFS</literal> használatához + engedélyeznünk kell a <literal>PSEUDOFS</literal> + használatát is.</para> + + <programlisting>options GEOM_GPT # GUID típusú partíciós táblák használata</programlisting> + + <para>Ezzel a beállítással engedélyezni + tudjuk nagy mennyiségű partíció + támogatását egyetlen lemezen.</para> + + <programlisting>options COMPAT_43 # kompatibilitás fenntartása a 4.3 BSD-vel [NE TÖRÖLD!]</programlisting> + + <para>Kompatibilitás a 4.3BSD-vel. Ne vegyük ki, mert + bizonyos programok furcsán fognak viselkedni a + hiánya esetén.</para> + + <programlisting>options COMPAT_FREEBSD4 # kompatibilitás a &os;4-el</programlisting> + + <para>Ez a beállítás szükséges a + &os; 5.X &i386; és Alpha rendszerein a &os; + korábbi verzióihoz fordított + alkalmazások támogatásához, melyek + régebbi rendszerhívásokat használnak. + Az összes &i386; és Alpha típusú + rendszeren ajánlott engedélyezni, mivel itt + előfordulhatnak régebbi alkalmazások. A + többi platform, mint például az ia64 vagy a + &sparc64;, támogatása csak az 5.X verzióban + jelent meg, ezért ott nincs szükség + erre.</para> + + <programlisting>options COMPAT_FREEBSD5 # kompatibilitás a &os;5-el</programlisting> + + <para>Ezt a beállítást a &os; 6.X + és afeletti verziókban kell használni az + olyan &os; 5.X verziókra fordított + alkalmazások futtatásának + támogatásához, melyek a &os; 5.X + rendszerhívásait használják.</para> + + <programlisting>options SCSI_DELAY=5000 # a SCSI eszközök keresése előtt késleltetés (ezredmásodpercben)</programlisting> + + <para>Ezzel a beállítással a rendszermag 5 + másodpercig várakozni fog a SCSI eszközök + keresése előtt. Ha kizárólag csak IDE + típusú merevlemezeink vannak, nyugodtan + kihagyhatjuk, máskülönben érdemes a + rendszerindítás gyorsítása + érdekében csökkenteni ezt az + értéket. Természetesen, ha így + teszünk és a &os; nem tudja felismerni a SCSI + eszközeinket, akkor növeljük meg + valamennyivel.</para> + + <programlisting>options KTRACE # a ktrace(1) támogatása</programlisting> + + <para>Engedélyezi a rendszermagban futó rutinok + nyomonkövetését, ami hasznos lehet a + hibák keresése során.</para> + + <programlisting>options SYSVSHM # SYSV-szerű osztott memória</programlisting> + + <para>Ezzel a beállítással engedélyezni + tudjuk a rendszerben a System V típusú osztott + memória használatát. Leggyakrabban az X + rendszer XSHM kiterjesztése használja, amelyen + keresztül számos műveletigényes grafikus + program működését fel lehet + gyorsítani. Ha X-et használunk, mindenképpen + szükségünk lehet erre.</para> + + <programlisting>options SYSVMSG # SYSV-szerű üzenetsorok</programlisting> + + <para>A System V üzenetek támogatása. Ez a + beállítás csupán néhány + száz byte-tal növeli a rendszermagot.</para> + + <programlisting>options SYSVSEM # SYSV-szerű szemaforok</programlisting> + + <para>A System V szemaforok támogatása. Nem + túl gyakran alkalmazzák ezeket, de ez csak + néhány száz byte-ot tesz hozzá a + rendszermaghoz.</para> + + <note> + <para>A &man.ipcs.1; parancs <option>-p</option> + paraméterével ki tudjuk listáztatni azokat + a futó programokat, amelyek ezen System V + eszközöket használják.</para> + </note> + + <programlisting>options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B valósidejű kiterjesztések</programlisting> + + <para>A &posix; 1993-as változatában megjelent + valósidejű bővítések. A + Portgyűjteményben megjelenő egyes + alkalmazások használják ezeket (mint + például a + <application>&staroffice;</application>).</para> + + <programlisting>options KBD_INSTALL_CDEV # CDEV bejegyzés létrehozása a /dev könyvtárban</programlisting> + + <para>Ez a beállítás kell ahhoz, hogy a + <filename>/dev</filename> könyvtárban létre + tudjunk hozni eszközleírókat a + billentyűzethez.</para> + + <programlisting>options ADAPTIVE_GIANT # adaptív Giant mutexek</programlisting> + + <para>A Giant annak a kölcsönös + kizárási mechanizmusnak (blokkolt mutexnek) a neve, + amely a rendszermag erőforrásainak jelentős + részét védi. Manapság ez már + egy elfogadhatatlanul szűk keresztmetszetet képez a + teljesítményben, ezért a fejlesztésben + fokozatosan felváltják az egyes + erőforrásokat külön-külön + védő zárolások. Az + <literal>ADAPTIVE_GIANT</literal> beállítás + hatására a Giant a helyzethez igazodóan + forgó (spin) mutexek közé kerül. Ez azt + jelenti, hogy amikor egy szál zárolni akarja a Giant + mutexet, de ezt már megtette előtte egy másik + processzorról futó szál, a szál + tovább fut és várakozni fog a + zárolás feloldására. Normális + esetben ugyanis egy szál továbbra is blokkolt + állapotban marad, várakozva a futásra. Ha + nem tudunk dönteni, hagyjuk változatlanul.</para> + + <note> + <para>Hozzátesszük, hogy a &os; 8.0-CURRENT és + későbbi változataiban az össszes mutex + alapértelmezés szerint adaptív, hacsak meg + nem adjuk a <literal>NO_ADAPTIVE_MUTEXES</literal> + beállítást. Ennek + eredményeképpen a Giant most már + alapból adaptív, ezért esetükben az + <literal>ADAPTIVE_GIANT</literal> nem szerepel a rendszermag + beállításai között.</para> + </note> + + <indexterm> + <primary>a rendszermag beállításai</primary> + <secondary>SMP</secondary> + </indexterm> + + <programlisting>device apic # I/O APIC</programlisting> + + <para>Az <devicename>apic</devicename> nevű eszköz + engedélyezésével használhatjuk a + hardveres APIC-ot a megszakítások + vezérlésére. Az + <devicename>apic</devicename> alkalmazható egy- és + többprocesszoros rendszerek esetén is egyaránt, + de az SMP rendszermagoknál szükséges. + Több processzor támogatásánál + mindenképpen tegyük hozzá az <literal>options + SMP</literal> beállítást is.</para> + + <note> + <para>Az apic eszköz csak az i386 architektúrán + létezik, ezért a többi + architektúrán nem szabad használnunk ezt a + beállítást.</para> + </note> + + <programlisting>device eisa</programlisting> + + <para>Abban az esetben engedélyezzük, ha EISA-s + alaplapunk van, ezzel aktiváljuk az EISA buszra + csatlakoztatott eszközök automatikus + felismerését és + beállíthatóságát.</para> + + <programlisting>device pci</programlisting> + + <para>Tegyük hozzá a konfigurációs + állományhoz, ha PCI-os alaplapuk van. Ezzel + engedélyezhetjük a PCI kártyák + automatikus felismerését és a PCI és + ISA buszok közti + átirányítást.</para> + + <programlisting># Hajlékonylemezes meghajtók +device fdc</programlisting> + + <para>Ez a hajlékonylemezes meghajtó + vezérlője.</para> + + <programlisting># ATA és ATAPI eszközök +device ata</programlisting> + + <para>Ez az eszközmeghajtó felelős az összes + ATA és ATAPI eszközért. A modern + számítógépeken csak egyszer kell + megadnunk a <literal>device ata</literal> sort a + beállítások között az összes + PCI-os ATA/ATAPI eszköz felismeréséhez.</para> + + <programlisting>device atadisk # ATA lemezmeghajtók</programlisting> + + <para>Az ATA lemezmeghajtók + támogatásához erre van még + szükség a <literal>device ata</literal> + mellett.</para> + + <programlisting>device ataraid # ATA RAID-meghajtók</programlisting> + + <para>Az ATA RAID-meghajtók kezeléséhez erre a + sorra van szükség a <literal>device ata</literal> + mellett.</para> + + <programlisting><anchor id="kernelconfig-atapi"/> +device atapicd # ATAPI CD-meghajtók</programlisting> + + <para>Az ATAPI CD-meghajtók használatához ezt + is tegyük a konfigurációba a <literal>device + ata</literal> mellé.</para> + + <programlisting>device atapifd # ATAPI floppy meghajtók</programlisting> + + <para>A <literal>device ata</literal> használata mellett erre + van még szükségünk az ATAPI floppy + meghajtók kezeléséhez.</para> + + <programlisting>device atapist # ATAPI szalagos meghajtók</programlisting> + + <para>Az ATAPI szalagos egységek használatához + ezt a sort is tegyük a konfigurációba a + <literal>device ata</literal> mellé.</para> + + <programlisting>options ATA_STATIC_ID # statikus eszközszámozás</programlisting> + + <para>Ezzel a beállítással a + vezérlők számozása állandó + lesz. Nélküle az eszközszámok dinamikusan + kerülnek kiosztásra.</para> + + <programlisting># SCSI vezérlők +device ahb # EISA AHA1742 család +device ahc # AHA2940 és integrált AIC7xxx eszközök +options AHC_REG_PRETTY_PRINT # a hibák kereséséhez kiíratja a regiszterek + # bitmezőit. Kb. 128 KB-al növeli a méretét. +device ahd # AHA39320/29320 és integrált AIC79xx eszközök +options AHD_REG_PRETTY_PRINT # a hibák kereséséhez kiíratja a regiszterek + # bitmezőit. Kb. 215 KB-al növeli a méretét. +device amd # AMD 53C974 (Teckram DC-390(T)) +device isp # Qlogic család +#device ispfw # a QLogic HBA firmware-e, többnyire modul +device mpt # LSI-Logic MPT-Fusion +#device ncr # NCR/Symbios Logic +device sym # NCR/Symbios Logic (újabb chipsetek, illetve az `ncr' típusúak) +device trm # Tekram DC395U/UW/F DC315U csatolók + +device adv # Advansys SCSI-csatolók +device adw # Advansys wide SCSI-csatolók +device aha # Adaptec 154x SCSI-csatolók +device aic # Adaptec 15[012]x SCSI-csatolók, AIC-6[23]60. +device bt # Buslogic/Mylex MultiMaster SCSI-csatolók + +device ncv # NCR 53C500 +device nsp # Workbit Ninja SCSI-3 +device stg # TMC 18C30/18C50</programlisting> + + <para>SCSI-vezérlők. Vegyük ki azokat, amelyekkel + ténylegesen nem rendelkezünk. Ha csak IDE + eszközeink vannak a rendszerünkben, az összeset + eltávolíthatjuk. A + <literal>_REG_PRETTY_PRINT</literal> + végződésű sorok a megfelelő + meghajtók hibakerési + beállításait takarják.</para> + + <programlisting># SCSI-perifériák +device scbus # SCSI-busz (kell a SCSI-hoz) +device ch # SCSI médiumváltók (media changer) +device da # közvetlen hozzáférés (lemezek) +device sa # soros hozzáférés (szalag stb.) +device cd # CD +device pass # áteresztő eszköz (közvetlen SCSI hozzáférés) +device ses # SCSI környezeti szolgáltatások (és SAF-TE)</programlisting> + + <para>SCSI-perifériák. Itt is érvényes, + hogy kivehetjük azokat az eszközöket, amelyekkel + nem rendelkezünk. De ha csak IDE hardvereink vannak, + teljesen eltávolíthatjuk ezeket.</para> + + <note> + <para>Annak ellenére, hogy valójában nem + igazi SCSI-eszközök, az USB-s &man.umass.4; és + még néhány más egyéb + meghajtó is használja a SCSI alrendszert. Emiatt + semmiképpen se távolítsuk el a SCSI + támogatást a rendszerünkől abban az + esetben, ha ilyen meghajtókat is használni + szándékozunk.</para> + </note> + + <programlisting># a SCSI alrendszerhez kapcsolódó RAID-vezérlők +device amr # AMI MegaRAID +device arcmsr # Areca SATA II RAID +device asr # DPT SmartRAID V, VI és Adaptec SCSI RAID +device ciss # Compaq Smart RAID 5* +device dpt # DPT Smartcache III, IV - lásd a NOTES állományt +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 vezérlők +device aac # Adaptec FSA RAID +device aacp # SCSI áteresztő az aac-hez (kell hozzá a CAM) +device ida # Compaq Smart RAID +device mfi # LSI MegaRAID SAS +device mlx # Mylex DAC960 család +device pst # Promise Supertrak SX6000 +device twe # 3ware ATA RAID</programlisting> + + <para>Az ismert RAID-vezérlők. Ha + közülük egyikkel sem rendelkezünk, + távolítsuk el ezeket a + konfigurációból.</para> + + <programlisting># az atkbdc0 vezérli a billentyűzetet és a PS/2-es egeret +device atkbdc # AT billentyűzet vezérlő</programlisting> + + <para>A billentyűzet vezérlője + (<literal>atkbdc</literal>) az AT-s billentyűzet és a + PS/2 stílusú pozícionáló + eszközök vezérléséhez + szükséges I/O szolgáltatásokat + biztosítja. Erre a vezérlőre a + billentyűzet meghajtójának + (<literal>atkbd</literal>) és a PS/2 + pozícionáló eszközök + eszközmeghajtójának (<literal>psm</literal>) is + szüksége van.</para> + + <programlisting>device atkbd # AT billentyűzet</programlisting> + + <para>Az <literal>atkbd</literal> meghajtó, a + <literal>atkbdc</literal> vezérlővel együtt, adja + a hozzáférést az AT billentyűzet + vezérlőre csatlakoztatott AT 84 és a fejlettebb + AT billentyűzetek felé.</para> + + <programlisting>device psm # PS/2 egér</programlisting> + + <para>Használjuk ezt az eszközt, ha az egerünk a + PS/2 portra csatlakozik.</para> + + <programlisting>device kbdmux # billentyűzet multiplexer</programlisting> + + <para>A billentyűzet multiplexer alapszintű + támogatása. Ha nem kívánunk a + jövőben egynél több billentyűzetet + csatlakoztatni a rendszerünkre, nyugodt szívvel + kivehetjük ezt a sort.</para> + + <programlisting>device vga # VGA videokártya meghajtó</programlisting> + + <para>Videokártya meghajtó.</para> + + <programlisting> +device splash # üdvözlőképernyők és képernyőkímélők támogatása</programlisting> + + <para>Nyissunk egy üdvözlőképernyővel! A + képernyőkímélőknek is + szükségük van erre az eszközre.</para> + + <programlisting># a syscons az alapértelmezett konzolmeghajtó, hasonlít a SCO konzolra +device sc</programlisting> + + <para>Az <literal>sc</literal> az alapértelmezett + meghajtó a konzolok számára, és sokban + hasonlít a SCO konzolra. Mivel a legtöbb + teljesképernyős program a <filename>termcap</filename> + termináladatbázis könyvtáron + keresztül éri el a konzolt, nem igazán + számít, hogy ezt vagy a + <literal>VT220</literal>-kompatibilis <literal>vt</literal> + konzolmeghajtót használjuk. Ha bármilyen + gondunk lenne a teljesképernyős programok + futtatásával ezen a konzolon, a + bejelentkezéskor állítsuk a + <envar>TERM</envar> környezeti változónkat a + <literal>scoansi</literal> értékre.</para> + + <programlisting># ezzel tudjuk engedélyezni a pcvt (VT220-kompatibilis) konzolmeghajtót +#device vt +#options XSERVER # az X szerver támogatása vt konzolon +#options FAT_CURSOR # telt kurzor használata</programlisting> + + <para>Ez a VT220-kompatibilis konzolmeghajtó, amely + visszafelé kompatibilis a VT100/102-vel is. Remekül + működik olyan laptopokon, ahol a hardver nem + használható az <literal>sc</literal> konzollal. Itt + ugyanúgy érdemes egyébként a + <literal>vt100</literal> értékre vagy a + <literal>vt220</literal> értékre + állítani a <envar>TERM</envar> környezeti + változónkat. Hasznosnak bizonyulhat abban az + esetben is, amikor hálózaton keresztül nagy + mennyiségű és eltérő + típusú számítógépekhez + csatlakozunk, és ahol a <filename>termcap</filename> + és <filename>terminfo</filename> adatbázisokban az + <literal>sc</literal> bejegyzései gyakran nem is + érhetőek el — a <literal>vt100</literal> viszont + virtuálisan az összes platformon + elérhető.</para> + + <programlisting>device agp</programlisting> + + <para>Írjuk bele a konfigurációba, ha van AGP + kártya a rendszerünkben. Ezzel + engedélyezzük az AGP és az AGP GART + támogatását az ezeket ismerő + kártyák számára.</para> + + <indexterm><primary>APM</primary></indexterm> + + <programlisting># energiagazdálkodás támogatása (bővebben lásd: NOTES) +#device apm</programlisting> + + <para>A fejlett energiagazdálkodás + támogatása. Laptopok esetén hasznos, + habár ez alapértelmezés szerint nincs + engedélyezve a <filename>GENERIC</filename> + konfigurációban.</para> + + <programlisting># az i8254 készenléti módjának támogatása +device pmtimer</programlisting> + + <para>Az energiagazdálkodási események, mint + például APM és ACPI + időzítőjének + eszközmeghajtója.</para> + + <programlisting># PCCARD (PCMCIA) támogatás +# PCMCIA és cardbus támogatás +device cbb # cardbus (yenta) bridge +device pccard # PC Card (16 bites) busz +device cardbus # CardBus (32 bites) busz</programlisting> + + <para>A PCMCIA támogatása. Mindenképpen + szükségünk lesz rá, ha laptopunk + van.</para> + + <programlisting># soros (COM) portok +device sio # 8250, 16[45]50 alapú soros portok</programlisting> + + <para>Ezek azok a soros portok, amelyek az &ms-dos;/&windows; + világban csak <devicename>COM</devicename> + portokként ismernek.</para> + + <note> + <para>Ha van egy belső modemünk a + <devicename>COM4</devicename>-en és egy soros portunk a + <devicename>COM2</devicename>-n, a modem IRQ-ját meg kell + változtatnunk 2-re (valamilyen homályos + műszaki okból kifolyólag a COM2 = IRQ9), hogy + hozzá tudjunk férni &os;-ből. Ha + többportos soros kártyánk lenne, lapozzuk fel + a &man.sio.4; man oldalát, és ott hozzá + megtaláljuk a <filename>/boot/device.hints</filename> + állományba írandó megfelelő + értékeket. Egyes videokártyák + (különösen az S3 chipekre + épülők) az I/O címeket + <literal>0x*2e8</literal> alakban használják, + és mivel rengeteg olcsó soros kártya nem + kódolja vissza egészében a 16 bites I/O + címteret, ütközni fognak ezekkel a + kártyákkal, és ezáltal a + <devicename>COM4</devicename> port gyakorlatilag + elérhetetlenné válik.</para> + + <para>Minden egyes soros portnak egyedi IRQ-ja kell legyen (hacsak + nem használunk olyan többportos + kártyát, amely támogatja a megosztott + megszakításokat), ezért a + <devicename>COM3</devicename> és + <devicename>COM4</devicename> esetén + alapértelmezett IRQ-k nem + használhatóak.</para> + </note> + + <programlisting># párhuzamos port +device ppc</programlisting> + + <para>Ez az ISA busz párhuzamos portjának + felülete.</para> + + <programlisting>device ppbus # a párhuzamos port busza (kell)</programlisting> + + <para>A párhuzamos porthoz tartozó busz + támogatása.</para> + + <programlisting>device lpt # nyomtató</programlisting> + + <para>A párhuzamos portra csatlakozó nyomtatók + támogatása.</para> + + <note> + <para>A fentiek közül mind a három + szükséges a párhuzamos porton + csatlakozó nyomtatók + használatához.</para> + </note> + + <programlisting>device plip # TCP/IP párhuzamos porton keresztül</programlisting> + + <para>Ez a párhuzamos port hálózati + felületének meghajtója.</para> + + <programlisting>device ppi # a párhuzamos port felületének eszköze</programlisting> + + <para>Általános célú (<quote>geek + port</quote>) és IEEE1284 I/O.</para> + + <programlisting>#device vpo # az scbus és a da kell a használatához</programlisting> + + <indexterm><primary>zip meghajtó</primary></indexterm> + + <para>Ez az Iomega Zip meghajtóihoz tartozó + eszköz. A működéséhez + szükség van az <literal>scbus</literal> és + <literal>da</literal> engedélyezésére. A + legjobb teljesítményt EPP 1.9 módban + működő portokkal lehet kihozni belőle.</para> + + <programlisting>#device puc</programlisting> + + <para>Tegyük bele a konfigurációba ezt az + eszközt, ha egy olyan <quote>buta</quote> soros vagy + párhuzamos PCI kártyánk van, amelyet a + &man.puc.4; segédmeghajtó ismer.</para> + + <programlisting># PCI Ethernet kártyák +device de # DEC/Intel DC21x4x (<quote>Tulip</quote>) +device em # Intel PRO/1000 Gigabit Ethernet kártya +device ixgb # Intel PRO/10GbE Ethernet kártya +device txp # 3Com 3cR990 (<quote>Typhoon</quote>) +device vx # 3Com 3c590, 3c595 (<quote>Vortex</quote>)</programlisting> + + <para>Különféle PCI hálózati + kártyák meghajtói. Vegyük ki azokat, + amelyek nem találhatóak meg a + rendszerünkben.</para> + + <programlisting># PCI Ethernet kártyák, melyek az MII busz vezérlőkódját használják +# FIGYELEM: Ne töröljük ki a 'device miibus' sort, ha ilyen kártyánk van! +device miibus # az MII busz támogatása</programlisting> + + <para>Az MII busz engedélyezése elengedhetetlen + bizonyos 10/100-as PCI Ethernet kártyák + használatához, konkrétan azokéhoz, + amelyek az MII-vel együttműködni képes + adó-vevőt használnak vagy az MII-höz + hasonló adó-vevő vezérlő + felületet valósítanak meg. A <literal>device + miibus</literal> hozzáadása a rendszermaghoz + magával vonja az általános miibus API + és az összes PHY meghajtó + támogatását, beleértve azt az + általános PHY eszközt is, amelyet az egyes + eszközmeghajtók külön nem + támogatnak.</para> + + <programlisting>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 és egyéb hasonlóak +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 integrált Ethernet hálózat +device pcn # AMD Am79C97x PCI 10/100 (az 'lnc' előtt) +device re # RealTek 8139C+/8169/8169S/8110S +device rl # RealTek 8129/8139 +device sf # Adaptec AIC-6915 (<quote>Starfire</quote>) +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 <quote>EPIC</quote>) +device vge # VIA VT612x gigabit ethernet +device vr # VIA Rhine, Rhine II +device wb # Winbond W89C840F +device xl # 3Com 3c90x (<quote>Boomerang</quote>, <quote>Cyclone</quote>)</programlisting> + + <para>Meghajtók, melyek az MII busz + vezérlőkódját + használják.</para> + + <programlisting># ISA Ethernet és pccard hálózati kártyák. +device cs # Crystal Semiconductor CS89x0 NIC +# az 'device ed' eszközhöz kell a 'device miibus' +device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards +device ex # Intel EtherExpress Pro/10 és Pro/10+ +device ep # Etherlink III alapú kártyák +device fe # Fujitsu MB8696x alapú kártyák +device ie # EtherExpress 8/16, 3C507, StarLAN 10 stb. +device lnc # NE2100, NE32-VL Lance Ethernet kártyák +device sn # az SMC 9000-res sorozatú Ethernet chipjei +device xe # Xircom pccard Ethernet + +# ISA eszközök, melyek a régi ISA betétet használják +#device le</programlisting> + + <para>ISA Ethernet meghajtók. A konkrétan + támogatott kártyák teljes + felsorolását lásd a + <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/NOTES</filename> + állományban.</para> + + <programlisting># vezeték nélküli hálózati kártyák +device wlan # 802.11 támogatás</programlisting> + + <para>Általános 802.11 támogatás. Erre + a sorra mindenképpen szükség van a + vezeték nélküli hálózatok + használatához.</para> + + <programlisting>device wlan_wep # 802.11 WEP támogatás +device wlan_ccmp # 802.11 CCMP támogatás +device wlan_tkip # 802.11 TKIP támogatás</programlisting> + + <para>A 802.11 eszközök esetén a + titkosítás támogatása. Ezeket a + sorokat akkor adjuk meg, ha titkosítást akarunk + használni vagy a 802.11i biztonsági + protokolljait.</para> + + <programlisting>device an # Aironet 4500/4800 802.11 vezeték nélküli hálózati kártyák +device ath # Atheros pci/cardbus hálózati kártyák +device ath_hal # Atheros HAL (Hardware Access Layer) +device ath_rate_sample # küldési mintavételi vezérlés az ath-hoz +device awi # BayStack 660 és mások +device ral # Ralink Technology RT2500 vezeték nélküli hálózati kártyák +device wi # WaveLAN/Intersil/Symbol 802.11 vezeték nélküli hálózati kártyák +#device wl # régebbi, nem 802.11 Wavelan vezeték nélküli hálózati kártyák</programlisting> + + <para>A különböző vezeték + nélküli kártyák + támogatása.</para> + + <programlisting># Pszeudo eszközök +device loop # hálózati loopback</programlisting> + + <para>Ez a TCP/IP általános loopback eszköze. Ha + telnettel vagy FTP-vel rácsatlakozunk a + <hostid>localhost</hostid> címére (vagyis a <hostid + role="ipaddr">127.0.0.1</hostid>-re), akkor rajta keresztül + saját magunkhoz jutunk vissza. Ennek a megléte + <emphasis>kötelező</emphasis>!</para> + + <programlisting>device random # álvéletlenszám eszköz</programlisting> + + <para>Kriptográfiai szempontból biztonságos + álvéletlenszám generátor.</para> + + <programlisting>device ether # Ethernet támogatás</programlisting> + + <para>Az <literal>ether</literal> eszközre csak abban az + esetben van szükség, ha Ethernet + kártyánk van. Ez magában foglalja az + általános Ethernet protokoll + kódját.</para> + + <programlisting>device sl # belső SLIP</programlisting> + + <para>Az <literal>sl</literal> a SLIP használatát + engedélyezi. Ez egy régi protokoll, amelyet + azóta már szinte teljesen kiszorított a PPP, + mivel azt könnyebb beállítani és sokkal + jobban is illik a modem-modem kapcsolatokhoz, illetve sokkal + erőteljesebb.</para> + + <programlisting>device ppp # belső PPP</programlisting> + + <para>Ez a tárcsázós kapcsolatok rendszermagon + belüli PPP támogatását adja meg. Van a + PPP-nek egy külső, a felhasználói + programként megvalósított változata + is, amely a <literal>tun</literal> eszközt használja + és sokkal nagyobb rugalmasságot kínál + fel, illetve olyan lehetőségeket, mint + például az igény szerinti + tárcsázás.</para> + + <programlisting>device tun # csomag alagút</programlisting> + + <para>Ezt a felhasználói PPP szoftver + használja. A könyv <link + linkend="userppp">PPP</link>-ről szóló + részében többet is megtudhatunk + róla.</para> + + <programlisting><anchor id="kernelconfig-ptys"/> +device pty # Pszeudo terminálok (telnet stb.)</programlisting> + + <para>Ezek a <quote>pszeudo terminálok</quote>, vagy + más néven szimulált bejelentkezési + portok. A bejövő <command>telnet</command> és + <command>rlogin</command> munkamenetek használják, + valamint az <application>xterm</application> és a + hozzá hasonló alkalmazások, mint + például az <application>Emacs</application>.</para> + + <programlisting>device md # <quote>memórialemezek</quote></programlisting> + + <para>A memóriában levő pszeudo lemezes + meghajtók.</para> + + <programlisting>device gif # IPv6 és IPv4 tunnelek használata</programlisting> + + <para>Megvalósítja az IPv6 IPv4 feletti, az IPv4 IPv6 + feletti, az IPv4 IPv4 feletti és az IPv6 IPv6 feletti + közvetítését. A <literal>gif</literal> + eszköz <quote>magától + másolódik</quote>, vagyis szükség + szerint hozza létre a megfelelő + eszközleírókat.</para> + + <programlisting>device faith # IPv6-IPv4 közti továbbítás (fordítás)</programlisting> + + <para>Ez a pszeudo eszköz elfogja a hozzá + küldött csomagokat és átadja ezeket az + IPv4/IPv6 fordítással foglalkozó + démonnak.</para> + + <programlisting># a `bpf' eszköz használatával a Berkeley csomagszűrőt (Berkeley Packet Filter) engedélyezzük +# Legyünk rá tekintettel, hogy ennek komoly következményei lehetnek +# rendszeradminisztrációs szempontból! +# A 'bpf'-re szükség van a DHCP-hez. +device bpf # Berkeley csomagszűrő</programlisting> + + <para>A Berkeley csomagszűrője. Ez egy olyan pszeudo + eszköz, amely lehetővé teszi, hogy a + hálózati csatolók forgalmát + megfigyeljük, mivel a (pl. Ethernet) + hálózatunkon minden csomagot elkap. Ezek a csomagok + lemezre is menthetőek vagy kielemezhetőek a + &man.tcpdump.1; program segítségével.</para> + + <note> + <para>A &man.bpf.4; eszközt a &man.dhclient.8; is + használja többek közt az alapértelmezett + átjáró IP-címének + megszerzéséhez. Ha DHCP-t akarunk + használni, hagyjuk így.</para> + </note> + + <programlisting># USB támogatás +device uhci # UHCI PCI->USB felület +device ohci # OHCI PCI->USB felület +device ehci # EHCI PCI->USB felület (USB 2.0) +device usb # USB busz (kell) +#device udbp # USB Double Bulk Pipe eszközök +device ugen # általános +device uhid # <quote>Human Interface Devices</quote> +device ukbd # billentyűzet +device ulpt # nyomtató +device umass # lemez/háttértároló - kell hozzá az scbus és a da +device ums # egér +device ural # Ralink Technology RT2500USB vezeték nélküli hálózati kártyák +device urio # Diamond Rio 500 MP3 lejátszó +device uscanner # lapolvasók +# USB Ethernet, kell hozzá az mii +device aue # ADMtek USB Ethernet +device axe # ASIX Electronics USB Ethernet +device cdce # általános USB, Etherneten keresztül +device cue # CATC USB Ethernet +device kue # Kawasaki LSI USB Ethernet +device rue # RealTek RTL8150 USB Ethernet</programlisting> + + <para>A különféle USB eszközök + támogatása.</para> + + <programlisting># FireWire támogatás +device firewire # FireWire buszkód +device sbp # SCSI FireWire-ön keresztül (kell hozzá az scbus és a da) +device fwe # Ethernet FireWire-ön keresztül (nem szabványos!)</programlisting> + + <para>A különféle Firewire eszközök + támogatása.</para> + + <para>A &os; által ismert további + eszközökről a + <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/NOTES</filename> + állományból + tájékozódhatunk.</para> + + <sect2> + <title>Sok memória kezelése + (<acronym>PAE</acronym>)</title> + + <indexterm> + <primary>Fizikai címkiterjesztés + (<acronym>PAE</acronym>)</primary> + <secondary>sok memória</secondary> + </indexterm> + + <para>A sok memóriával rendelkező + számítógépek esetén + szükség lehet a felhasználói + és rendszerszintű virtuális címek + (Kernel Virtual Address, <acronym>KVA</acronym>) 4 gigabyte + feletti használatára. Ennek a + korlátozásnak a + kiküszöbölésére az &intel; + külön támogatást épített + be a &pentium; Pro és az azt követő + processzorok 36 bites fizikai címzésének + kialakításához.</para> + + <para>A Fizikai Címkiterjesztés (Physical Address + Extension, <acronym>PAE</acronym>) az &intel; &pentium; Pro + és későbbi processzoraiban + található meg, és lehetővé + teszi egészen 64 gigabyte-ig a + memóriahasználatot. A &os; is támogatja + ezt a tulajdonságot a <option>PAE</option> rendszermag + beállítás használatával, + és megtalálható a &os; összes + jelenlegi verziójában. Az &intel; + architektúrájú processzorok + memóriaszervezésének korlátai + miatt nem különböztethető meg a 4 gigabyte + alatti és feletti memória. A 4 gigabyte felett + található memóriaterületek + egyszerűen hozzáadódnak a + rendelkezésre álló + memóriához.</para> + + <para>A rendszermagban a <acronym>PAE</acronym> + támogatását egyszerűen az + alábbi sor hozzáadásával tudjuk + engedélyezni:</para> + + <programlisting>options PAE</programlisting> + + <note> + <para>A &os;-ben a <acronym>PAE</acronym> + támogatása csak az &intel; IA-32 + architektúrájú processzoraihoz + érhető el. Emellett meg kell + említenünk, hogy a &os;-ben + található <acronym>PAE</acronym> + támogatás nem lett szélesebb + körben próbára téve, ezért + a &os; többi megbízható elemeihez + képest csak béta állapotúnak + tekinthető.</para> + </note> + + <para>A &os; <acronym>PAE</acronym> + támogatásának van néhány + hiányossága:</para> + + <itemizedlist> + <listitem> + <para>Egy futó program a virtuális + memóriában nem képes 4 + gigabyte-nál többet elérni.</para> + </listitem> + + <listitem> + <para>A &man.bus.dma.9; felületet nem + használó eszközmeghajtók + adathibákat okozhatnak a <acronym>PAE</acronym>-t + támogató rendszermagokban, és emiatt + nem ajánljuk a használatukat. Ebből a + megfontolásból + készítettünk egy + <filename>PAE</filename> nevű + konfigurációs állományt a + &os;-hez, amelyben nem szerepel egyetlen olyan + meghajtó sem, amely ismereteink szerint nem + működik együtt a <acronym>PAE</acronym>-t + támogató rendszermagokkal.</para> + </listitem> + + <listitem> + <para>Bizonyos finomhangolási + beállítások a + memóriahasználatot a rendelkezésre + álló fizikai memória + mennyiségéből + számítják ki. A + <acronym>PAE</acronym> támogatással + működő rendszerek esetében + megjelenő sok memória miatt azonban az ilyen + eszközök szükségtelenül + több területet foglalhatnak le. Erre + példa lehet a <option>kern.maxvnodes</option> + sysctl változó, amely a rendszermag + által maximálisan + felhasználható virtuális + csomópontok számát korlátozza. + Ajánlott tehát az ilyen és ehhez + hasonló beállítások + értelmes értékre + történő + visszaállítása.</para> + </listitem> + + <listitem> + <para>Szükséges lehet a rendszermag + virtuális címterének + (<acronym>KVA</acronym>) növelése vagy a + rendszermag által túlságosan nagy + méretűre foglalt címterű + különféle erőforrások + (lásd fentebb) csökkentése a + <acronym>KVA</acronym> kifogyásának + elkerülésére. A <acronym>KVA</acronym> + területének növelését a + <option>KVA_PAGES</option> + beállításával tehetjük + meg.</para> + </listitem> + </itemizedlist> + + <para>Ha gondjaink lennének a + teljesítménnyel vagy a + megbízhatósággal, keressük fel a + &man.tuning.7; man oldalt. A &man.pae.4; man oldalon pedig a + &os; <acronym>PAE</acronym> + támogatásáról találhatunk + naprakész információkat.</para> + + </sect2> + </sect1> + + <sect1 id="kernelconfig-trouble"> + <title>Ha valamilyen hiba történne</title> + + <para>Négyféle probléma jelentkezhet egy + saját rendszermag készítése + során. Ezek:</para> + + <variablelist> + <varlistentry> + <term>A <command>config</command> hibát jelez:</term> + + <listitem> + <para>Amikor a &man.config.8; parancs hibát jelez + vissza a rendszermagunk konfigurációs + beállításainak feldolgozása + során, akkor minden bizonnyal csak egy apró + hibát vétettünk valahol. + Szerencsére a &man.config.8; kiírja a + hibás sor számát, ezért gyorsan + fel tudjuk kutatni a hibát tartalmazó sort. + Például, ha ezt látjuk:</para> + + <screen>config: line 17: syntax error</screen> + + <para>Akkor győződjünk meg róla, hogy + helyesen írtuk be az adott sorban szereplő + kulcsszót. Ebben segítségünkre + lehet, ha összevetjük a + <filename>GENERIC</filename> konfigurációs + állománnyal vagy más + hivatkozásokkal.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>A <command>make</command> hibát jelez:</term> + + <listitem> + <para>Ha a <command>make</command> jelez hibát, az + általában arra utal, hogy az általunk + korábban megadott rendszermag + konfigurációs állományt a + &man.config.8; nem értette meg rendesen. Megint azt + tudjuk csak javasolni, hogy nézzük át a + konfigurációs + beállításainkat, és ha + ezután sem sikerül megoldani a + problémát, akkor mellékeljük egy + levélben a rendszermagunk konfigurációs + beállításait és + küldjük el a &a.questions; címére, + ahol a hozzáértők gyorsan + átnézik.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>A rendszermag nem indul:<anchor + id="kernelconfig-noboot"/></term> + + <listitem> + <para>Ha az új rendszermagunk nem indul vagy nem + képes felismerni az eszközeinket, ne essünk + kétségbe! Szerencsére a &os; + tökéletes megoldással tud + szolgálni az összeférhetetlen + rendszermagok esetére: a &os; + rendszerbetöltőjében egyszerűen + válasszuk ki az indítandó + rendszermagot. Ezt akkor tudjuk előhívni, + amikor a rendszerindító menü megjelenik. + Válasszuk ki a hatos, vagyis az <quote>Escape to a + loader prompt</quote> (a betöltő + parancssorának előhívása) + menüpontot. Mikor megjelenik a parancssor, + írjuk be, hogy <command>unload kernel</command>, majd + adjuk ki a <command>boot + /boot/<replaceable>kernel.old</replaceable>/kernel</command>, + parancsot, amiben bármilyen más olyan + rendszermagot is megnevezhetünk, ami korábban + már működött. Ezért amikor + beállítunk egy új rendszermagot, mindig + érdemes a kezünk ügyében tartani + legalább egy olyan rendszermagot, amely + működik.</para> + + <para>Miután sikerült elindítanunk az egyik + használható rendszermagot, nézzük + át még egyszer a konfigurációs + állományt és próbáljuk + újra lefordítani a rendszermagot. A + probléma megoldását segítheti a + <filename>/var/log/messages</filename> + állomány áttanulmányozása + is, ami többek közt rögzíti a + rendszermag sikeres indulása során + keletkező üzeneteket. Ezenkívül a + &man.dmesg.8; parancs is meg tudja jeleníteni az + aktuális rendszerindítás + üzeneteit.</para> + + <note> + <para>Ha gondok merülnének fel a rendszermag + elkészítése során, + mindenképpen tartsuk meg a + <filename>GENERIC</filename>, vagy bármilyen + másik olyan rendszermagot, amelyről tudjuk, + hogy működik. Nevezzük át, + így nem fog felülíródni a + következő fordítás és + telepítés során. A + <filename>kernel.old</filename> állományra + ugyanis nem minden esetben számíthatunk, + mivel az új rendszermagok + telepítésénél a + <filename>kernel.old</filename> mindig + felülíródik a legutóbb + telepített rendszermaggal, amely azonban nem + feltétlenül lesz + működőképes. Sőt, amint csak + lehetséges, rakjuk a működő + rendszermagot a <filename + class="directory">/boot/kernel</filename> + könyvtárba vagy különben a + &man.ps.1; és a hozzá hasonló + parancsok nem fognak rendesen működni. Mindezek + elvégzéséhez egyszerűen + nevezzük át a jó rendszermagot + tartalmazó könyvtárt:</para> + + <screen>&prompt.root; <userinput>mv /boot/kernel <replaceable>/boot/kernel.rossz</replaceable></userinput> +&prompt.root; <userinput>mv /boot/<replaceable>kernel.jó</replaceable> /boot/kernel</userinput></screen> + + </note> + </listitem> + </varlistentry> + + <varlistentry> + <term>A rendszermag működik, a &man.ps.1; viszont + nem:</term> + + <listitem> + <para>Ha olyan rendszermagot telepítettünk, aminek + a verziója nem egyezik meg a + hozzá tartozó segédprogramokéval, + tehát például -CURRENT rendszermagot + raktunk egy -RELEASE rendszerhez, egyes + rendszerállapotjelző parancsok, mint + például a &man.ps.1; vagy a &man.vmstat.8; nem + fognak működni. Ebben az esetben <link + linkend="makeworld">az egész rendszert újra + kell fordítanunk és + telepítenünk</link> a rendszermagunkkal + megegyező verziójú + forrásból. Részben ezért sem + különösen ajánlott, hogy az + operációs rendszer többi + részétől eltérő + verziójú rendszermagot + használjunk.</para> + </listitem> + </varlistentry> + </variablelist> + + </sect1> +</chapter> |