FreeBSD kézikönyv
Előző | Fejezet 8. A FreeBSD rendszermag testreszabása | Következő

# 8.6. A konfigurációs állomány

A FreeBSD 6.X verziójához igazította: Joel Dahl.

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 `#` (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 `GENERIC` állományban is megtalálhatjuk. Az architektúrafüggő opciók és eszközök teljes listáját a `GENERIC` állománnyal egy könyvtárban levő `NOTES` állományban találhatjuk meg. Az architektúrától független opciókat a `/usr/src/sys/conf/NOTES` állományban találjuk.

> Megjegyzés: Ha olyan állományt akarunk készíteni, amely tartalmazza az összes lehetséges opciót, például teszteléshez, futtassuk le `root` felhasználóként az alábbi parancsot:

>     # cd /usr/src/sys/i386/conf && make LINT

Itt a `GENERIC` 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ó `/usr/src/sys/`i386`/conf/GENERIC` állománnyal.

    machine      i386

A számítógépünk architektúráját adja meg. A következők valamelyikének kell lennie: `alpha`, `amd64`, `i386`, `ia64`, `pc98`, `powerpc`, vagy `sparc64`.

    cpu          I486_CPU
    cpu          I586_CPU
    cpu          I686_CPU

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 a `I586_CPU` vagy `I686_CPU` é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 `/var/run/dmesg.boot` állományra és keressük ki belőle.

    ident          GENERIC

Ez a rendszermag azonosítója. Változtassuk meg rendszermagunk nevére, legyen például ``SAJAT``, ha a korábbi utasításokat követtük. Az `ident` 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).

    # ha a /boot/device.hints használata helyett statikusan bele akarjuk fordítani
    #hints          "GENERIC.hints"         # itt szerepelnek a device hintek

A device.hints(5) használható az eszközmeghajtók beállítására. A loader(8) a rendszer indítása során alapértelmezés szerint a `/boot/device.hints` állományt olvassa be erre a célra. A `hints` beállítás használatával ezeket a “hinteket” statikusan bele tudjuk építeni a rendszermagba. Ebben az esetben nincs szükségünk külön `device.hints` állomány létrehozására a `/boot` könyvtárban.

    makeoptions     DEBUG=-g          # a nyomkövetéshez szükséges gdb(1) szimbólumok beépítése

A FreeBSD hagyományos fordításának folyamata során a rendszermagot a `-g` használatával készítjük el, aminek köszönhetően hibakeresési információkat tudunk átadni a gcc(1) fordítónak.

    options          SCHED_4BSD         # 4BSD ütemező

A FreeBSD tradicionális és alapértelmezett rendszerütemezője. Ne változtassuk meg!

    options          PREEMPTION         # a rendszerszálak megszakíthatóságának engedélyezése

Ha engedélyezzük, a rendszermagban futó szálakat meg tujdá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.

    options          INET              # hálózatkezelés

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ő!

    options          INET6             # IPv6 kommunikációs prokotollok

Engedélyezi az IPv6 kommunikációs protokollok használatát.

    options          FFS               # Berkeley Fast Filesystem

Ez a legalapvetőbb merevlemezes állományrendszer. Hagyjuk meg, ha merevlemezről akarjuk indítani a rendszerünket.

    options          SOFTUPDATES       # az FFS Soft Updates támogatása

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 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 `soft-updates` opciót, akkor azt (meglevő állományrendszerek esetén) a tunefs(8) vagy (új állományrendszerek esetén) a newfs(8) parancsokkal tudjuk bekapcsolni.

    options          UFS_ACL           # a hozzáférés-vezérlési listák (ACL) támogatása

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 UFS2 használatára támaszkodik. Ezt a lehetőséget részleteiben a 14.12 Szakaszban tárgyaljuk. Az ACL alapértelmezés szerint támogatott, és 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.

    options          UFS_DIRHASH       # nagyobb könyvtárak esetén gyorsulást hoz

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 interaktívitást igénylő munkaállomásokra tartogatni, és eltávolítani olyan esetekben, amikor a FreeBSD-t egy 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.

    options          MD_ROOT           # tudunk memórialemezről is rendszert indítani

Ezzel az opcióval engedélyezni tudjuk a rendszer indítását memóriában tárolt virtuális lemezekről.

    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

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, kivethetjük.

    options          MSDOSFS           # MS-DOS állományrendszer

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ű `emulators/mtools` szoftver segítségével külön csatlakoztatás és leválasztás nélkül tudunk DOS-os floppykat olvasni (és az `MSDOSFS`-re egyáltalán nincs is szüksége).

    options          CD9660            # ISO 9660 állományrendszer

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.

    options          PROCFS            # a futó programok állományrendszere (szükséges hozzá a PSEUDOFS)

A futó programok állományrendszere. Ez csak a `/proc` könyvtárra csatlakoztatott “színlelt” állományrendszer, amely segítségével a ps(1) és hozzá hasonló programok képesek több információt adni a futó programokról. A `PROCFS` 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 `PROCFS` használata nélkül is működni: alapértelmezés szerint a telepített rendszerek sem csatlakoztatják ezt az állományrendszer.

    options          PSEUDOFS          # pszeudo állományrendszerek támogatása

A 6.X verziójú rendszermagokban a `PROCFS` használatához engedélyeznünk kell a `PSEUDOFS` használatát is.

    options          GEOM_GPT          # GUID típusú partíciós táblák használata

Ezzel a beállítással engedélyezni tudjuk nagy mennyiségű partíció támogatását egyetlen lemezen.

    options          COMPAT_43         # kompatibilitás fenntartása a 4.3 BSD-vel [NE TÖRÖLD!]

Kompatibilitás a 4.3BSD-vel. Ne vegyük ki, mert bizonyos programok furcsán fognak viselkedni a hiánya esetén.

    options          COMPAT_FREEBSD4   # kompatibilitás a FreeBSD4-el

Ez a beállítás szükséges a FreeBSD 5.X i386™ és Alpha rendszerein a FreeBSD 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.

    options          COMPAT_FREEBSD5   # kompatibilitás a FreeBSD5-el

Ezt a beállítást a FreeBSD 6.X és afeletti verziókban kell használni az olyan FreeBSD 5.X verziókra fordított alkalmazások futtatásának támogatásához, melyek a FreeBSD 5.X rendszerhívásait használják.

    options          SCSI_DELAY=5000  # a SCSI eszközök keresése előtt késleltetés (ezredmásodpercben)

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árolag csak IDE típusú merevlemezeink vannak, nyugodtan kihagyhatjuk, máskülönben érdemes a rendszerindítás gyorsítása érdekében próbáljuk meg csökkenteni ezt az értéket. Természetesen, ha így teszünk és a FreeBSD nem tudja felismerni a SCSI eszközeinket, akkor növeljük meg valamennyivel.

    options          KTRACE            # a ktrace(1) támogatása

Engedélyezi a rendszermagban futó rutinok nyomonkövetését, ami hasznos lehet a hibák keresése során.

    options          SYSVSHM           # SYSV-szerű osztott memória

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.

    options          SYSVMSG           # SYSV-szerű üzenetsorok

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.

    options          SYSVSEM           # SYSV-szerű szemaforok

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.

> Megjegyzés: A ipcs(1) parancs `-p` paraméterével ki tudjuk listáztatni azokat futó programokat, amelyek ezen System V eszközöket használják.

    options          _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B valósidejű kiterjesztések

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 StarOffice™).

    options          KBD_INSTALL_CDEV  # CDEV bejegyzés létrehozása a /dev könyvtárban

Ez a beállítás kell ahhoz, hogy `/dev` könyvtárban létre tudjunk hozni eszközleírókat a billentyűzethez.

    options          ADAPTIVE_GIANT    # adaptív Giant mutexek

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 keresztmetszet 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 `ADAPTIVE_GIANT` 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.

> Megjegyzés: Hozzátesszük, hogy a FreeBSD 8.0-CURRENT és későbbi változataiban az össszes mutex alapértelmezés szerint adaptív, hacsak meg nem adjuk a `NO_ADAPTIVE_MUTEXES` beállítást. Ennek eredményeképpen a Giant most már alapból adaptív, ezért esetükben az `ADAPTIVE_GIANT` nem szerepel a rendszermag beállításai között.

    device          apic               # I/O APIC

Az `apic` nevű eszköz engedélyezésével használhatjuk a hardveres APIC-ot a megszakítások vezérlésére. Az `apic` 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 `options SMP` beállítást is.

> Megjegyzés: 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.

    device          eisa

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.

    device          pci

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.

    # Hajlékonylemezes meghajtók
    device          fdc

Ez a hajlékonylemezes meghajtó vezérlője.

    # ATA és ATAPI eszközök
    device          ata

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 `device ata` sort a beállítások között az összes PCI-os ATA/ATAPI eszköz felismeréséhez.

    device          atadisk                 # ATA lemezmeghajtók

Az ATA lemezmeghajtók támogatásához erre van még szükség a `device ata` mellett.

    device          ataraid                 # ATA RAID-meghajtók

Az ATA RAID-meghajtók kezeléséhez erre a sorra van szükség a `device ata` mellett.

    device          atapicd                 # ATAPI CD-meghajtók

Az ATAPI CD-meghajtók használatához ezt is tegyük a konfigurációba a `device ata` mellé.

    device          atapifd                 # ATAPI floppy meghajtók

A `device ata` használata mellett erre van még szükségünk az ATAPI floppy meghajtók kezeléséhez.

    device          atapist                 # ATAPI szalagos meghajtók

Az ATAPI szalagos egységek ezt a sort is tegyük a konfigurációba a `device ata` mellé.

    options         ATA_STATIC_ID           # statikus eszközszámozás

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.

    # 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

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 `_REG_PRETTY_PRINT` végződésű sorok a megfelelő meghajtók hibakerési beállításait takarják.

    # 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)

SCSI-perifériák. Itt is érvényes, hogy kivethetjük azokat az eszközöket, amelyekkel nem rendelkezünk. De ha csak IDE hardvereink vannak, teljesen eltávolíthatjuk ezeket.

> Megjegyzés: Annak ellenére, hogy valójában nem igazi SCSI-eszközök, az USB-s 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.

    # 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

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.

    # az atkbdc0 vezérli a billentyűzetet és a PS/2-es egeret
    device          atkbdc     # AT billentyűzet vezérlő

A billentyűzet vezérlője (`atkbdc`) 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 (`atkbd`) és a PS/2 pozícionáló eszközök eszközmeghajtójának (`psm`) is szüksége van.

    device          atkbd      # AT billentyűzet

Az `atkbd` meghajtó, a `atkbdc` 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é.

    device          psm        # PS/2 egér

Használjuk ezt az eszközt, ha az egerünk a PS/2 portra csatlakozik.

    device          kbdmux        # billentyűzet multiplexer

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.

    device          vga        # VGA videokártya meghajtó

Videokártya meghajtó.

    device          splash     # üdvözlőképernyők és képernyőkímélők támogatása

Nyissunk egy üdvözlőképernyővel! A képernyőkímélőknek is szüksége van erre az eszközre.

    # a syscons az alapértelmezett konzolmeghajtó, hasonlít a SCO konzolra
    device          sc

Az `sc` 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 `termcap` termináladatbázis könyvtáron keresztül éri el a konzolt, nem igazán számít, hogy ezt vagy a `VT220`-kompatibilis `vt` 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 `TERM` környezeti változónk a `scoansi` értékre.

    # 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

Ez a VT220-kompatibilis konzolmeghajtó, amely visszafele kompatibilis a VT100/102-vel is. Remekül működik olyan laptopokon, ahol a hardver nem használható az `sc` konzollal. Itt ugyanúgy érdemes egyébként a `vt100` értékre vagy a `vt220` értékre állítani a `TERM` 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 `termcap` és `terminfo` adatbázisokban az `sc` bejegyzései gyakran nem is érhetőek el -- a `vt100` viszont virtuálisan az összes platformon elérhető.

    device          agp

Í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.

    # energiagazdálkodás támogatása (bővebben lásd: NOTES)
    #device          apm

A fejlett energiagazdálkodás támogatása. Laptopok esetén hasznos, habár ez alapértelmezés szerint nincs engedélyezve a `GENERIC` konfigurációban.

    # az i8254 készenléti módjának támogatása
    device           pmtimer

Az energiagazdálkodási események, mint például APM és ACPI időzítőjének eszközmeghajtója.

    # 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

A PCMCIA támgotása. Mindenképpen szükségünk lesz rá, ha laptopunk van.

    # soros (COM) portok
    device          sio               # 8250, 16[45]50 alapú soros portok

Ezek azok a soros portok, amelyek az MS-DOS/Windows® világban csak `COM` portokként ismernek.

> Megjegyzés: Ha van egy belső modemünk a `COM4`-en és egy soros portunk a `COM2`-n, a modem IRQ-ját meg kell változtatnunk 2-re (valamilyen homályos műszaki októl kifolyólag a COM2 = IRQ9), hogy hozzá tudjunk férni FreeBSD-ből. Ha többportos soros kártyánk lenne, lapozzuk fel a sio(4) man oldalát, és ott hozzá megtaláljuk a `/boot/device.hints` á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 `0x*2e8` 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 `COM4` port gyakorlatilag elérhetetlenné válik.

> 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 `COM3` és `COM4` esetén alapértelmezett IRQ-k nem használhatóak.

    # párhuzamos port
    device          ppc

Ez az ISA busz párhuzamos portjának felülete.

    device          ppbus      # a párhuzamos port busza (kell)

A párhuzamos porthoz tartozó busz támogatása.

    device          lpt        # nyomtató

A párhuzamos portra csatlakozó nyomtatók támogatása.

> Megjegyzés: A fentiek közül mind a három szükséges a párhuzamos porton csatlakozó nyomtatók használatához.

    device          plip       # TCP/IP párhuzamos porton keresztül

Ez a párhuzamos port hálózati felületének meghajtója.

    device          ppi        # a párhuzamos port felületének eszköze

Általános célú (“geek port”) és IEEE1284 I/O.

    #device         vpo        # az scbus és a da kell a használatához

Ez az Iomega Zip meghajtóihoz tartozó eszköz. A működéséhez szükség van az `scbus` és `da` engedélyezésére. A legjobb teljesítményt EPP 1.9 módban működő portokkal lehet kihozni belőle.

    #device         puc

Tegyük bele a konfigurációba ezt az eszközt, ha egy olyan “buta” soros vagy párhuzamos PCI kártyánk van, amelyet a puc(4) segédmeghajtó ismer.

    # PCI Ethernet kártyák
    device          de         # DEC/Intel DC21x4x (“Tulip”)
    device          em         # Intel PRO/1000 Gigabit Ethernet kártya
    device          ixgb       # Intel PRO/10GbE Ethernet kártya
    device          txp        # 3Com 3cR990 (“Typhoon”)
    device          vx         # 3Com 3c590, 3c595 (“Vortex”)

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.

    # 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

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 `device miibus` 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.

    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 (“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”)

Meghajtók, melyek az MII busz vezérlőkódját használják.

    # 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

ISA Ethernet meghajtók. A konkrétan támogatott kártyák teljes felsorolását lásd a `/usr/src/sys/`i386`/conf/NOTES` állományban.

    # vezeték nélküli hálózati kártyák
    device          wlan            # 802.11 támogatás

Á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.

    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

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.

    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

A különböző vezeték nélküli kártyák támogatása.

    # Pszeudo eszközök
    device   loop          # hálózati loopback

Ez a TCP/IP általános loopback eszköze. Ha telnettel vagy FTP-vel rácsatlakozunk a `localhost` címére (vagyis a `127.0.0.1`-re), akkor rajta keresztül saját magunkhoz jutunk vissza. Ennek a megléte kötelező!

    device   random        # álvéletlenszám eszköz

Kriptográfiai szempontból biztonságos álvéletlenszám generátor.

    device   ether         # Ethernet támogatás

Az `ether` eszközre csak abban az esetben van szükség, ha Ethernet kártyán van. Ez magában foglalja az általános Ethernet protokoll kódját.

    device   sl            # belső SLIP

Az `sl` 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.

    device   ppp           # belső PPP

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 `tun` 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.

    device   tun           # csomag alagút

Ezt a felhasználói PPP szoftver használja. A könyv PPP-ről szóló részében többet is megtudhatunk róla.

    device   pty           # Pszeudo terminálok (telnet stb.)

Ezek a “pszeudo terminálok” vagy más néven szimulált bejelentkezési portok. A bejövő `telnet` és `rlogin` munkamenetek használják, valamint az xterm és a hozzá hasonló alkalmazások, mint például az Emacs.

    device   md            # “memórialemezek”

A memóriában levő pszeudo lemezes meghajtók.

    device   gif           # IPv6 és IPv4 tunnelek használata

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 `gif` eszköz “magától másolódik”, vagyis szükség szerint hozza létre a megfelelő eszközleírókat.

    device   faith         # IPv6-IPv4 közti továbbítás (fordítás)

Ez a pszeudo eszköz elfogja a hozzá küldött csomagokat és átadja ezeket az IPv4/IPv6 fordítással foglalkozó démonnak.

    # 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ő

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 tcpdump(1) program segítségével.

> Megjegyzés: A bpf(4) eszközt a 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.

    # 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          # “Human Interface Devices”
    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

A különféle USB eszközök támogatása.

    # 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!)

A különféle Firewire eszközök támogatása.

A FreeBSD által ismert további eszközökről a `/usr/src/sys/`i386`/conf/NOTES` állományból tájékozódhatunk.

## 8.6.1. Sok memória kezelése (PAE)

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, KVA) 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.

A Fizikai Címkiterjesztés (Physical Address Extension, PAE) 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 FreeBSD is támogatja ezt a tulajdonságot a `PAE` rendszermag beállítás használatával, és megtalálható a FreeBSD ö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.

A rendszermagban a PAE támogatását egyszerűen az alábbi sor segítségével hozzáadásával tudjuk engedélyezni:

    options          PAE

> Megjegyzés: A FreeBSD-ben a PAE támogatása csak az Intel IA-32 architektúrájú processzoraihoz érhető el. Emellett meg kell említenünk, hogy a FreeBSD-ben található PAE támogatás nem lett szélesebb körben próbára téve, ezért a FreeBSD többi megbízható elemeihez képest csak béta állapotúnak tekinthető.

A FreeBSD PAE támogatásának van néhány hiányossága:

- Egy futó program a virtuális memóriában nem képes 4 gigabyte-nál többet elérni.

- A bus_dma(9) felületet nem használó eszközmeghajtók adathibákat okozhatnak a PAE-t támogató rendszermagokban, és emiatt nem ajánljuk a használatukat. Ebből a megfontolásból készítettünk egy `PAE` nevű konfigurációs állományt a FreeBSD-hez, amelyben nem szerepel egyetlen olyan meghajtó sem, amely ismereteink szerint nem működik együtt a PAE-t támogató rendszermagokkal.

- 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 PAE 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 `kern.maxvnodes` 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.

- Szükséges lehet a rendszermag virtuális címterének (KVA) 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 KVA kifogyásának elkerülésére. A KVA területének növelését a `KVA_PAGES` beállításával tehetjük meg.

Ha gondjaink lennének a teljesítménnyel vagy a megbízhatósággal, keressük fel a tuning(7) man oldalt. A pae(4) man oldalon pedig a FreeBSD PAE támogatásáról találhatunk naprakész információkat.

Előző | Tartalom | Következő
Saját rendszermag készítése és telepítése | Fel | Ha valamilyen hiba történne

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.