Szerzői jog © 1995-2010 A FreeBSD Dokumentációs Projekt
A dokumentum továbbadása forrás (SGML DocBook) és feldolgozott formában (SGML, HTML, PDF, PostScript, RTF, stb.) módosítással vagy anélkül a következő feltételek mellett lehetséges:
A forráskódnak (SGML DocBook) tartalmaznia kell a fenti copyright megjegyzést és a feltételek ezen listáját, valamint a következő jogi nyilatkozatot, bármiféle módosítás nélkül.
Feldolgozott dokumentum továbbadásakor (más DTD, PDF, PostScript, RTF és más formátumok) szintén meg kell tartani a fenti copyright megjegyzést, a feltételek listáját, valamint a következő jogi nyilatkozatot a dokumentumban, vagy a dokumentumot kísérő anyagokban.
EZT A DOKUMENTUMOT A FREEBSD DOKUMENTÁCIÓS PROJEKT A JELEN FORMÁJÁBAN BIZTOSÍTJA ÉS LEMOND MINDEN KIFEJEZETT VAGY TÖRVÉNYI SZAVATOSSÁGRÓL, BELEÉRTVE AZ ELADHATÓSÁG ÉS EGY ADOTT CÉLRA VALÓ ALKALMASSÁG SZAVATOSSÁGÁT. A FREEBSD DOKUMENTÁCIÓS PROJEKT SEMMILYEN ESETBEN SEM TEHETő FELELőSSÉ A DOKUMENTUM HASZNÁLATÁBÓL EREDő BÁRMILYEN KÖZVETLEN, KÖZVETETT JÁRULÉKOS, KÜLÖNLEGES, BÜNTETő VAGY KÖVETKEZMÉNYES KÁRÉRT (BELEFOGLALVA, DE NEM KORLÁTOZVA A HELYETTESÍTő JAVAK BESZERZÉSÉRE, HASZON, ADAT VAGY PROFIT ELVESZTÉSÉRE, ILLETVE ÜZLETI FORGALOM KIESÉSÉRE) VAGY EGYÉB MÁS ESETBEN SEM, AMIKOR ERőS TEHER VAGY KÍN (HANYAGSÁG VAGY EGYÉB) ERED A DOKUMENTUM AKÁRMIFÉLE FELHASZNÁLÁSÁBÓL, MÉG HA ERRE KÜLÖN FEL IS HÍVTUK a FIGYELMET.
A FreeBSD a FreeBSD Foundation bejegyzett védjegye.
A 3Com és HomeConnect a 3Com Corporation bejegyzett védjegyei.
A 3ware és Escalade a 3ware Inc. bejegyzett védjegyei.
Az ARM az ARM Limited bejegyzett védjegye.
A Adaptec az Adaptec, Inc. bejegyzett védjegye.
Az Adobe, Acrobat, Acrobat Reader, és PostScript az Adobe Systems Incorporated bejegyzett védjegyei, vagy védjegyei az Egyesült Államokban és/vagy más országokban.
Az Apple, AirPort, FireWire, Mac, Macintosh, Mac OS, Quicktime, és TrueType az Apple Computer, Inc., bejegyzett védjegyei az Egyesült Államokban és más országokban.
A Corel és WordPerfect a Corel Corporation és/vagy leányvállalatainak bejegyzett védjegye Kanadában, az Egyesült Államokban és/vagy más országokban.
A Sound Blaster a Creative Technology Ltd. védjegye az Egyesült Államokban és/vagy más országokban.
A CVSup John D. Polstra bejegyzett védjegye.
A Heidelberg, Helvetica, Palatino, és Times Roman a Heidelberger Druckmaschinen AG bejegyzett védjegyei, vagy védjegyei az Egyesült Államokban és más országokban.
Az IBM, AIX, EtherJet, Netfinity, OS/2, PowerPC, PS/2, S/390 és ThinkPad az International Business Machines Corporation védjegyei az Egyesült Államokban, más országokban, vagy mindkettőben.
Az IEEE, POSIX és 802 az Institute of Electrical and Electronics Engineers, Inc. bejegyzett védjegyei az Egyesült Államokban.
Az Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium és Xeon az Intel Corporation vagy leányvállalatainak védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és más országokban.
Az Intuit és Quicken az Intuit Inc., vagy valamely leányvállalatának bejegyzett védjegyei és/vagy bejegyzett szervizmárkái az Egyesült Államokban és más országokban.
A Linux Linus Torvalds bejegyzett védjegye.
Az LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID és Mylex az LSI Logic Corp. védjegyei vagy bejegyzett védjegyei.
Az M-Systems és DiskOnChip az M-Systems Flash Disk Pioneers, Ltd. védjegyei vagy bejegyzett védjegyei.
A Macromedia, Flash és Shockwave a Macromedia, Inc. védjegyei és/vagy bejegyzett védjegyei az Egyesült Államokban és/vagy más országokban.
A Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media és Windows NT a Microsoft Corporation bejegyzett veacute;djegyei, vagy védjegyei az Egyesült Államokban és/vagy más országokban.
A Netscape és a Netscape Navigator a Netscape Communications Corporation bejegyzett védjegyei az Egyesült Államokban és más országokban.
A GateD és NextHopa NextHop bejegyzett és nem bejegyzett védjegyei az Egyesült Államokban és más országokban.
A Motif, OSF/1 és UNIX a The Open Group bejegyzett védjegyei, az IT DialTone és a The Open Group pedig védjegyei az Egyesült államokban és/vagy más országokban.
Az Oracle az Oracle Corporation bejegyzett védjegye.
A PowerQuest és PartitionMagic a PowerQuest Corporation bejegyzett védjegyei az Egyesült Államokban és/vagy más országokban.
A RealNetworks, RealPlayer és RealAudio a RealNetworks, Inc. bejegyzett védjegyei.
A Red Hat és RPM a Red Hat, Inc. védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és más országokban.
A SAP, R/3 és mySAP a SAP AG védjegyei vagy bejegyzett védjegyei Németországban é sok más országban is világszerte.
A Sun, Sun Microsystems, Java, Java Virtual Machine, JavaServer Pages, JDK, JRE, JSP, JVM, Netra, OpenJDK, Solaris, StarOffice, Sun Blade, Sun Enterprise, Sun Fire, SunOS, Ultra és VirtualBox a Sun Microsystems, Inc. védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és más országokban.
A Symantec és Ghost a Symantec Corporation bejegyzett védjegyei az Egyesült Államokban és más országokban.
A MATLAB a The MathWorks, Inc. bejegyzett védjegye.
A SpeedTouch a Thomson védjegye.
A U.S. Robotics és Sportster a U.S. Robotics Corporation. bejegyzett védjegyei.
A VMware a VMware, Inc. védjegye.
A Waterloo Maple és Maple a Waterloo Maple Inc. védjegyei vagy bejegyzett védjegyei.
A Mathematica a Wolfram Research, Inc. védjegye.
Az XFree86 az XFree86 Project, Inc. védjegye.
Az Ogg Vorbis és Xiph.Org a Xiph.Org védjegyei.
A gyártók és terjesztők által használt megnevezések közül sok védjegy jogot követel. Ahol ilyen megnevezés tűnik fel ebben a dokumentumban, és a FreeBSD Projektnek tudomása volt a védjegyről, a megnevezést a „™” vagy a „®” szimbólum követi.
Üdvözöljük a FreeBSD világában! Ez a kézikönyv ismerteti a FreeBSD 7.3-RELEASE, ill. a FreeBSD 8.1-RELEASE telepítését és használatát a mindennapokban. A kézikönyv tartalmán számos független fejlesztő folyamatosan dolgozik. Emiatt elképzelhető, hogy bizonyos fejezetek már elavultak és aktualizálásra szorulnak. Amennyiben úgy érezzük, hogy segíteni tudnánk a projekt munkájában, értesítsük a fejlesztőket a FreeBSD Dokumentációs Projekt levelezési lista címén! Ezen dokumentum legfrissebb változata mindig elérhető a FreeBSD honlapjáról (a korábbi változatok pedig megtalálhatóak a http://docs.FreeBSD.org/doc/ címen). Ezenkívül még rengeteg más formátumban és tömörítve is letölthető a FreeBSD FTP szerveréről vagy a tüköroldalak egyikéről. Amennyiben a kézikönyv nyomtatott változatára lenne szükségünk, megvásárolhatjuk a FreeBSD Mall-ból. Ha pedig keresni szeretnénk benne, azt a funkciót itt érhetjük el.
Fordította: Páli Gábor, utolsó ellenőrzés: 2010.11.28.
cron segédprogram
beállításasyslogd használatávalinetd.conf
módosításaexports
szerkesztéseX és
8.X ISO image-ek nevei
és jelentéseiboot0 munkábanboot2 működés
közben/etc/ttys-benrmuser
Hozzáférések interaktív
eltávolításachpass interaktív
használata adminisztrátorkéntchpass interaktív
használata normál
felhasználókéntdump használata az
ssh alkalmazássaldump használata az
ssh alkalmazással, az
RSH környezeti változó
beállításávalmdconfig paranccsalmdconfig
paranccsalmdmfs
paranccsalmdconfig
paranccsalmdmfs
paranccsal/etc/ttys
állománybasrc/ fa kikérése
SSH-n keresztülA FreeBSD-t még nem ismerők felfedezhetik, hogy a könyv első része a FreeBSD telepítésének folyamatán vezeti keresztül a felhasználót, valamint érintőlegesen bemutatja az ezt alátámasztó UNIX®-os alapfogalmakat és szabályokat. Ennek a résznek a végigjárása nem kíván többet, csupán egy kis felfedező kedvet, illetve a menet közben bemutatott új fogalmak befogadását.
Ha túljutottunk rajta, a kézikönyv második, jóval terjedelmesebb része a FreeBSD-t használó rendszergazdák számára nyújt mindenféle témában minden részletre kiterjedő referenciát. Ezek közül egyes fejezetek elvárnak némi előzetes felkészülést, amelyet minden fejezet áttekintésében említeni is fogunk.
További információkért olvassuk át a B. függelék - Irodalomjegyzéket.
A kézikönyv jelenleg interneten elérhető változata számtalan önkéntes által az utóbbi 10 évben végzett együttes erőfeszítéseinek eredményeit tükrözi. A 2004-ben két kötetben megjelentetett harmadik kiadás óta a következő fontosabb változások történtek:
25. fejezet - DTrace: készült egy új fejezet a DTrace nevű teljesítmény-elemző eszközről.
20. fejezet - Támogatott állományrendszerek: ebben a fejezetben a FreeBSD és a különböző más rendszerekhez fejlesztett állományrendszerek viszonyát mutatjuk be, többek a Sun™ ZFS megoldását.
17. fejezet - Biztonsági események vizsgálata: ez a fejezet FreeBSD új biztonsági fejlesztéseit foglalja össze és mutatja be a használatukat.
22. fejezet - Virtualizáció: ebben az új fejezetben a FreeBSD rendszerhez és rajta elérhető különböző virtualizációs technológiákról szólunk.
A harmadik kiadás a FreeBSD Dokumentációs Projekt tagjainak két évi kemény munkájának gyümölcse. A nyomtatott változat már olyan nagyra nőtt, hogy két külön kötetben kellett kiadnunk. Az alábbi fontosabb változtatások jelentek meg ebben az új kiadásban:
11. fejezet - Beállítás és
finomhangolás: a
beállításra és
finomhangolásra vonatkozó részeket
bővítettük az ACPI energia- és
erőforrás gazdálkodásról
szóló részekkel, a cron
rendszerprogrammal, illetve még több, a rendszermag
finomhangolását elősegítő
opció leírásával.
14. fejezet - Biztonság: a biztonságról szóló részt bővítettük a virtuális magánhálózatokról (VPN-ekről), állományrendszeri hozzáférés-vezérlési listákról (ACL-ek) szóló elemekkel, valamint biztonságtechnikai tanácsokkal.
16. fejezet - Kötelező hozzáférés-vezérlés (MAC): a kötelező hozzáférés-vezérlésről (MAC-ről) szóló fejezet teljesen új ebben a kiadásban. Bemutatja, mi is az a MAC és hogyan hasznosítható egy FreeBSD-s rendszer biztonságossá tételében.
18. fejezet - Háttértárak: a háttértárakat tartalmazó részt bővítettük az USB-tárakról, állományrendszeri pillanatképeiről, lemezkvótákról, állomány- és hálózat alapú állományrendszerekről, továbbá a titkosított partíciókról szóló részekkel.
21. fejezet - A Vinum kötetkezelő: a Vinum egy új fejezet ebben a kiadásban. Bemutatja a Vinum logikaikötet-kezelő használatát, aminek segítségével eszközfüggetlen módon hozhatunk létre logikai lemezeket, szoftveres RAID-0, RAID-1 és RAID-5 konfigurációkat.
Bekerült egy hibaelhárításról szóló rész a 27. fejezet - A PPP és a SLIP PPP és SLIP leírásához.
28. fejezet - Elektronikus levelezés: az elektronikus levelezést ismertető részt bővítettük a különféle levéltovábbító rendszerekről, az SMTP hitelesítésről, UUCP protokollról, a fetchmail és procmail programokról szóló elemekkel, valamint egyéb, haladókat megcélzó témákkal.
29. fejezet - Hálózati szerverek: a hálózati szervereket ismertető rész egy teljesen új fejezet ebben a kiadásban. Benne megtalálható az Apache HTTP szerver, az ftpd szerver, illetve a Microsoft® Windows®-os kliensek számára megfelelő Samba szerver beállítása. Az érthetőség kedvéért egyes részek átkerültek ide a 31. fejezet - Egyéb haladó hálózati témák, vagyis a haladó hálózati témákat tárgyaló fejezetből.
31. fejezet - Egyéb haladó hálózati témák: a haladó hálózati témákat tartalmazó részt kiegészítettük a FreeBSD és a Bluetooth® eszközök kapcsolatáról, a vezeték nélküli hálózatokról és az aszinkron adatátvitel módról (ATM-ről) szóló ismeretekkel.
Létrehoztunk egy szójegyzéket abból a célból, hogy a könyvben használt definíciók és szakkifejezések egyetlen központi helyen össze legyenek foglalva.
Számos esztétikai javítást eszközöltünk a könyvben található ábrákon és táblázatokon.
A második kiadás a FreeBSD Dokumentációs Projekt tagjainak két évi komoly munkájának eredménye. Az alábbi fontosabb változtatások jelennek meg ebben a kiadásban:
Bekerült egy teljes tárgy- és névmutató.
Mindegyik ASCII-ábrát grafikusak váltották fel.
Mindegyik fejezet elejére odakerült egy általános áttekintés, ami egy rövid összefoglalást ad a fejezet tartalmáról, valamint közli az elolvasásához szükséges ismereteket.
A tartalmat felosztottuk logikailag három részre: „Bevezetés”, „Rendszeradminisztráció” és „Függelék”.
A 2. fejezet - A FreeBSD telepítéseet („A FreeBSD telepítése”) teljesen újraírtuk és sok-sok illusztráció is hozzáadásra került a könnyebb megértés érdekében.
A 3. fejezet - A UNIX alapjai („A UNIX® alapjai”) kiegészült a futó programokról, démonokról és jelzésekről szóló további hasznos információkkal.
A 4. fejezet - Alkalmazások telepítése: csomagok és portoket („Alkalmazások telepítése”) bővítettük a bináris csomagkezelésről szóló további ismeretekkel.
A 5. fejezet - Az X Window System („Az X Window System”) teljes újraíráson ment át, aminek folyamán igyekeztünk nagyobb hangsúlyt helyezni a modern asztali technológiák, mint pl. a KDE és GNOME XFree86™ 4.X-en történő használatának leírására.
A 12. fejezet - A FreeBSD rendszerindítási folyamata („A FreeBSD rendszerindítási folyamata”) kibővült.
A 18. fejezet - Háttértárak („Háttértárak”) két, korábban külön levő fejezet, a „Lemezek” és „Biztonsági mentések” összeolvasztásából jött létre. Úgy éreztük, a bennük helyet kapott témákat sokkal könnyebb úgy megérteni, ha egyetlen fejezetben tárgyaljuk ezeket. Egy (hardveres és szoftveres) RAID-ről szóló rész is belekerült.
A 26. fejezet - Soros vonali kommunikáció („Soros vonali kommunikáció”) teljes átszervezésre került, valamint a FreeBSD 4.X/5.X verziókhoz igazítottuk.
A 27. fejezet - A PPP és a SLIP („A PPP és a SLIP”) lényegesen sokat fejlődött.
Számos új rész került a 31. fejezet - Egyéb haladó hálózati témákbe („Egyéb haladó hálózati témák”).
A 28. fejezet - Elektronikus levelezés („Elektronikus levelezés”) kibővült a sendmail beállításáról tartalmazó újabb információkkal.
A 10. fejezet - Bináris Linux kompatibilitás („Bináris Linux kompatibilitás”) kiegészült az Oracle® és a SAP® R/3® telepítését bemutató részekkel.
Az alábbi új témák kerültek tárgyalásra a második kiadásban:
Beállítás és finomhangolás (11. fejezet - Beállítás és finomhangolás)
Multimédia (7. fejezet - Multimédia)
A könyvet négy logikailag elkülönülő részre osztottuk fel. Az első, Bevezetés című részben bemutatjuk a FreeBSD telepítését és használatának alapjait. Elgondolásunk szerint az itt szereplő fejezeteket sorban érdemes elolvasni, esetenként kihagyni azokat, amelyek már az olvasó számára ismert témákat dolgoznak fel. A második, Gyakori feladatok című részben megismerhetjük a FreeBSD néhány gyakorta használt lehetőségét. Ez a rész, valamint az ezt követő összes többi tetszőleges sorrendben olvasható. Mindegyik fejezet egy rövidke összefoglalással kezdődik, amely ismerteti, az olvasótól milyen jellegű tapasztalatokat vár el a fejezet megértése. Célja, hogy segítsen az olvasónak megtalálni a számára érdekes témákat. A harmadik, Rendszeradminisztráció című részben rendszergazdai feladatokat tárgyalunk. A negyedik, Hálózati kommunikáció című részben hálózatok és szerverek üzemeltetésével kapcsolatos ismereteket foglaltunk össze. Végül, az ötödik rész tartalmazza a függeléket és az irodalomjegyzéket, hivatkozásokat.
A FreeBSD bemutatkozik az új felhasználóknak. Szó esik a FreeBSD Projekt történetéről, célkitűzéseiről és a fejlesztési modelljéről.
Végigvezetjük a felhasználót a telepítési folyamat egészén. Bizonyos rendhagyó kérdések, mint például a soros konzolon keresztül történő telepítés is terítékre kerülnek.
Sorra vesszük a FreeBSD operációs rendszer alapvető parancsait és lehetőségeit. Amennyiben már jártasak vagyunk valamilyen szinten a Linux® vagy más UNIX®-típusú rendszerek használatában, nyugodtan kihagyhatjuk ezt a fejezetet.
Megismerhetjük, miként tudunk külső cégek által fejlesztett alkalmazásokat telepíteni a FreeBSD „Portgyűjteményének” (FreeBSD Ports Collection) vagy a megszokott bináris csomagok használatán keresztül.
Általános bemutatásra kerül az X Window System, valamint az X11 használata a FreeBSD-n. Ezenkívül olvashatunk az elterjedtebb munkakörnyezetekről, mint pl. a KDE és a GNOME.
Felsoroljuk az ismertebb asztali alkalmazásokat: webböngészőket és alkalmazói programcsomagokat, és bemutatjuk, hogyan telepítsük ezeket FreeBSD-re.
Megtudhatjuk, hogyan állítsuk be a zene- és videolejátszást rendszerünkön. Emellett olvashatunk néhány multimédiás alkalmazás használatáról is.
Kifejtjük, miért lehet szükségünk egy új rendszermag konfigurálására, és részletesen végigjárjuk egy rendszermag konfigurációjának, fordításának és telepítésének lépéseit.
Ismertetjük, hogyan lehet nyomtatókat használni FreeBSD alatt, beleértve a munkalapok készítésének mikéntjét, a nyomtatóhasználat nyilvántartását és a kezdeti beállításokat.
Megismerhetjük a FreeBSD bináris Linux kompabilitásához kapcsolódó lehetőségeket. Ezenfelül részletekre is kitérő telepítési útmutatót találhatunk különböző népszerű linuxos alkalmazásokhoz, mint például az Oracle®, SAP® R/3® és a Mathematica®.
Megismerhetjük a FreeBSD azon paramétereit, amelyek megfelelő állításával a rendszergazdák a lehető legtöbbet képesek kihozni FreeBSD rendszerükből. Ezenkívül bemutatásra kerül a FreeBSD-ben használt számos konfigurációs állomány, valamint hogy ezeket hol találhatjuk meg.
Tartalmazza a FreeBSD rendszerindítási folyamatának leírását, és elmagyarázza, miként lehet ezt vezérelni a konfigurációs beállítások segítségével.
Bemutatja a felhasználói fiókok létrehozását és kezelését. Emellett megemlíti a felhasználókra érvényesíthető erőforrás-megszorításokat, illetve egyéb fiókkezelési feladatokat.
Bemutatásra kerül a FreeBSD rendszerünk biztonságossá tételére alkalmas számos különféle eszköz, többek közt a Kerberos, IPsec és az OpenSSH.
Megtudhatjuk, hogyan működik az alkalmazások elszigeteléséért felelős jail alrendszer, valamint miben emelkedik ki a FreeBSD-ben is megtalálható hagyományos „chroot” megoldással szemben.
Megismerhetjük a kötelező hozzáférés-vezérlést (MAC-et), valamint azt, hogyan is tudjuk felhasználni egy FreeBSD-s rendszer biztonsága érdekében.
Kiderül, mit jelent a FreeBSD-ben az események vizsgálata, illetve mindez hogyan telepíthető, konfigurálható és miként tudjuk a vizsgálatok adatait kielemezni vagy felügyelni.
Bemutatásra kerül, miként kezelhetjük a háttértárolókat és állományrendszereket a FreeBSD-ben. Ide tartoznak a fizikai lemezek, RAID-tömbök, optikai és szalagos egységek, memória alapú lemezek és a hálózati állományrendszerek.
Megismerhetjük a FreeBSD-ben jelenlevő GEOM alrendszert és az általa támogatott különböző RAID-szintek beállítását.
A FreeBSD operációs rendszer számára nem natív állományrendszerekkel foglalkozik, például a Sun™ Z állományrendszerével.
Megtudhatjuk, hogyan használjuk a Vinumot, a logikaikötet-kezelőt, amely eszközfüggetlen logikai lemezeket, szoftveres RAID-0, RAID-1 és RAID-5 konfigurációkat biztosít.
Tartalmazza a virtualizációs rendszerek által felkínált lehetőségek bemutatását és használatát a FreeBSD-vel.
Bemutatja, hogyan használjuk a FreeBSD-t a rendszer és az alkalmazások szintjén az angoltól eltérő nyelveken.
Elmagyarázza, mik az alapvető különbségek a FreeBSD-STABLE, FreeBSD-CURRENT verziók, valamint a FreeBSD kiadások között. Bemutatja, mely felhasználók lehetnek azok, akik a legtöbbet tudnak profitálni egy fejlesztői rendszer használatából, illetve körvonalazza ennek folyamatát. Továbbá röviden összefoglalja azokat az eszközöket, amelyekkel a felhasználók frissíthetik a rendszerüket a biztonsági és kritikus hibák javításakor.
A Sun™ DTrace eszközének beállítását és használatát mutatja be. A segítségével megvalósított dinamikus nyomkövetéssel lehetőségünk nyílik valós idejű elemzéseken keresztül felderíteni a különböző teljesítménybeli problémákat.
Kifejti, hogyan csatlakoztassunk terminált vagy modemet a FreeBSD rendszerünkhöz, ha behívó vagy betárcsázós kapcsolatot szeretnénk létrehozni.
Bemutatja, miként tudjuk PPP-n, SLIP-en és Etherneten keresztüli PPP-vel (PPPoE) összekapcsolni a FreeBSD-t távoli rendszerekkel.
Megismerhetjük egy elektronikus levelező szerver különféle komponenseit, és elmélyedhetünk az egyik leghíresebb levelezőszerver-szoftver, a sendmail használatában és felületesebb konfigurálásában.
Részletekbe menően és konfigurációs példákkal mutatja be, miként tudunk hálózati állományrendszer kiszolgálónak, névszervernek, hálózati információs rendszer kiszolgálónak vagy időszinkronizációs szervernek beállítani egy FreeBSD-s számítógépet.
Kifejti a szoftveres tűzfalak mögött álló filozófiát, valamint részletesen tárgyalja a különböző, FreeBSD-n elérhető tűzfalak konfigurációját.
Feldolgoz számos hálózati témát, beleértve az internet kapcsolat helyi hálózaton (LAN-on) keresztül történő megosztását több számítógép között, haladó forgalomirányítási kérdéseket, vezeték nélküli hálózatok beállítását, Bluetooth®, ATM, IPv6 és sok minden mással kapcsolatos információkat.
Felsorolja azokat a forrásokat, ahonnan a FreeBSD CD-n vagy DVD-n beszerezhető, valamint azokat a honlapokat, ahonnan letölthető vagy telepíthető a FreeBSD.
A könyv sok tekintetben olyan témákat is érint, amelyek felkelthetik az olvasó érdeklődését és ezek kapcsán bővebb magyarázatra vágyik. Az irodalomjegyzékben ezért összeírtunk számos remek könyvet, amelyekre hivatkozunk is a fejezetekben.
Tartalmazza a FreeBSD felhasználók számára elérhető azon fórumokat, ahová beküldhetik kérdéseiket, illetve szakmai jellegű társalgásokat folytathatnak.
Az egyes FreeBSD fejlesztők PGP-kulcsait sorolja fel.
A könnyebb és egységesebb olvashatóság kedvéért az alábbi konvenciókat igyekeztünk követni a könyvben.
A dőlt betűket állománynevek, URL-ek, kiemelt szövegek és a szakmai kifejezések első előfordulásakor használjuk.
ÍrógépszerűAz
írógépszerű
betűket hibaüzenetek, parancsok, környezeti
változók, portok,
számítógépek,
felhasználók, csoportok, eszközök
nevei, változók és
kódrészletek esetén
használjuk.
A félkövér betűket alkalmazások, parancsok és billentyűk megnevezésénél használjuk.
A billentyűket
félkövérrel írjuk, hogy
kiemelkedjenek a szöveg többi részéből.
Az egyszerre megnyomni kívánt billentyűk
kombinációját a `+'
jelöléssel adjuk meg, mint például:
Ctrl+Alt+Del
Ez azt jelenti, hogy a felhasználónak a Ctrl, Alt és Del billentyűket egyszerre kell lenyomnia.
Azokat a billentyűket, amelyeket egymás után kell lenyomni, vesszővel választjuk el, például:
Ctrl+X, Ctrl+S
Ez tehát azt jelenti, hogy a felhasználónak először a Ctrl és X billentyűket, majd a Ctrl és S billentyűket kell egyszerre lenyomnia.
A E:\> kijelzéssel
kezdődő példák egy MS-DOS® parancsot
jelölnek. Ha másképpen nem említjük,
ezeket a parancsokat a modern Microsoft® Windows®-okban
található „Parancssorból” kell
kiadni.
E:\> tools\fdimage floppies\kern.flp A:A # kijelzéssel kezdődő
példák a FreeBSD-ben rendszeradminisztrátori
jogokat igénylő parancsok kiadását
jelentik. Ehhez bejelentkezhetünk a root
felhasználóval, vagy felvethetjük a
rendszeradminisztrátori jogokat a saját
felhasználói fiókunkból a su(1)
használatával is.
# dd if=kern.flp of=/dev/fd0A % kijelzéssel kezdődő
példák olyan parancsra utalnak, amelyeket egy
normál felhasználói fiókból
érdemes kiadni. Hacsak másképpen nem
jelezzük, a C-shell szintaxisát használjuk a
környezeti változók és egyéb
parancsok megadásakor.
% topA könyv, amit itt most olvashatunk, több száz ember együttes munkájának eredménye a világ minden tájáról. Akár csak elgépeléseket javítottak, vagy komplett fejezeket adtak hozzá, minden hozzájárulás hasznosnak bizonyult.
Emellett sok cég anyagilag is támogatta a könyv fejlődését, lehetővé téve ezáltal, hogy a szerzők teljes munkaidőben dolgozhassanak rajta, pénzt kapjanak az írásaikért stb. Leginkább a BSDi (amelyet később felvásárolt a Wind River Systems) adott teljes munkaidős fizetést a FreeBSD Dokumentációs Projekt tagjainak a könyv gondozásához, amely végül az első nyomtatott kiadás megjelentetéséhez vezetett 2000 márciusában (ISBN 1-57176-241-8). A Wind River Systems ezt követően további szerzőket is finanszírozott a nyomtatási-szedési infrastruktúra továbbfejlesztéséhez és a könyv tartalmának bővítéséhez. Ennek eredménye lett a második nyomtatott kiadás, amely 2001 novemberében jelent meg (ISBN 1-57176-303-1). 2003 — 2004 folyamán a FreeBSD Mall, Inc. támogatott anyagilag számos hozzájárulót a kézikönyvet illető munkájáért, a harmadik nyomtatott kiadásra történő előkészítésben.
A FreeBSD kézikönyv ezen része azoknak a felhasználóknak és rendszergazdáknak szól, akik még nem ismerik a FreeBSD-t. A fejezetek:
Bemutatják a FreeBSD-t.
Végigvezetnek a telepítés folyamatán.
Ismertetik a UNIX® alapjait.
Megmutatják, hogyan telepítsük a FreeBSD-hez elérhető megannyi külső alkalmazást.
Megismerhetjük az X-et, a UNIX®-os ablakozórendszert, és részleteiben is láthatjuk, miként konfiguráljunk be egy munkakörnyezetet, amellyel kényelmesebbé válik a munka.
A fejezetek megírása során arra törekedtünk, hogy minél kevesebb hivatkozást tegyünk a könyv később következő részeire, így ennek köszönhetően a kézikönyv ezen része anélkül olvasható, hogy közben folyamatosan előre-hátra kellene lapozgatnunk benne.
Köszönjük, hogy érdeklődik a FreeBSD iránt! A fejezet a FreeBSD Projektet több különböző vonatkozásban mutatja be: a történetét, a céljait, a fejlesztési modelljét és így tovább.
A fejezet elolvasása során megismerjük:
hogyan viszonyul a FreeBSD más operációs rendszerekhez;
a FreeBSD Projekt történetét;
a FreeBSD Projekt célkitűzéseit;
a FreeBSD nyílt forráskódú fejlesztési modelljének alapjait;
és természetesen: hogyan is keletkezett a „FreeBSD” név.
A FreeBSD egy 4.4BSD-Lite alapú operációs rendszer Intel® (x86 és Itanium®), AMD64, Alpha™, Sun UltraSPARC® számítógépekre. Jelenleg is portolás alatt áll további architektúrákra. Olvashatunk a FreeBSD történetéről vagy éppen az aktuális kiadásáról. Ha szeretnénk hozzájárulni a Projekt fejlődéséhez (forráskód, hardver vagy pénz), olvassuk el a Hozzájárulás a FreeBSD-hez című cikket (angolul).
A FreeBSD számos figyelemre méltó tulajdonságot tudhat magáénak. Ezek közül néhány:
A preemptív ütemezés dinamikusan szabályozható prioritások segítségével biztosítja a számítógép felhasználók és alkalmazások közti finom és igazságos megosztását, akár a legnagyobb terhelés esetén is.
Többfelhasználós rendszerként lehetővé teszi, hogy sokan tudják a FreeBSD-t egyszerre többféle dologra is használni. Például, ez azt jelenti, hogy a rendszerhez csatlakoztatott különböző perifériák, mint például a nyomtatók és szalagos egységek, megfelelően szétoszthatóak a felhasználók között vagy éppen a hálózaton, és az egyes erőforrásokhoz a felhasználók vagy azok egy csoportja csak korlátozott módon férhetnek hozzájuk, elkerülve ezzel a rendszer számára létfontosságú erőforrások túlterhelését.
A TCP/IP hálózati protokoll gyors és megbízható implementációja, illetve a legfontosabb ipari szabványok, mint az SCTP, DHCP, NFS, NIS, PPP, SLIP, IPsec és IPv6 támogatása. Ezáltal egy FreeBSD-s számítógép könnyedén képes együttműködni más rendszerekkel vagy akár vállalati szerverként is üzemelni. Megbirkózik az NFS (Network File System, távoli állományelérés) és az elektronikus levelezés megszervezésével ugyanúgy, ahogy a vállalatunk internetes elvárásaival a WWW, FTP és forgalomirányítási protokollokon keresztül és tűzfal iránti (biztonsági) igényeivel is.
A memóriavédelem megvalósítása gondoskodik róla, hogy az alkalmazások (vagy a felhasználók) ne zavarják egymást. Az egyik alkalmazás összeomlása nincs kihatással a rendszerben futó összes többire.
A FreeBSD egy 32 bites operációs rendszer (az Alpha, Itanium®, AMD64 és UltraSPARC® architektúrákon pedig 64 bites), amelyet már a kezdetektől fogva annak terveztek.
A X Window System ipari szabványa (X11R7) alapján szolgáltatja a grafikus felhasználói felületet (GUI) bármelyik VGA-kártyán és monitoron, illetve annak teljes forráskódja is elérhető.
Bináris szintű kompatibilitás a Linuxra, SCO-ra, SVR4-re, BSDI-re és NetBSD-re készített programok nagy részével.
Futtatásra kész alkalmazások ezrei érhetőek el a FreeBSD port- és csomaggyűjteményében. Miért bújnánk az internetet értük, ha mindent egy helyen is megtalálhatunk?
További könnyen portolható alkalmazások ezrei állnak rendelkezésre az interneten. A FreeBSD forráskódja kompatibilis a legtöbb elterjedt kereskedelmi UNIX® rendszerével, aminek köszönhetően az alkalmazások nagy része csak kevés módosítást igényel a fordításhoz, már amennyiben erre egyáltalán szükség van.
Az igény szerinti lapozással működő virtuális memória és „egyesített VM/puffer gyorsítótár” úgy lett kialakítva, hogy hatékonyan kiszolgálja a nagyobb étvágyú alkalmazásokat, miközben a többi felhasználó számára továbbra is reakcióképes marad.
Az SMP támogatása a több processzorral rendelkező számítógépek számára.
C, C++ és Fortran fejlesztői eszközök széles tárháza használható. Kutatáshoz és fejlesztéshez más egyéb programozási nyelvek is elérhetőek a portok és csomagok segítségével.
Az egész rendszer forráskódjának megléte lehetővé teszi, hogy a legnagyobb fokú irányítást élvezhessük a környezetünk felett. Miért is bíznánk magunkat egy zárt rendszert fejlesztő cégre, mikor lehetne egy igazán nyílt rendszerünk?
Nagy mennyiségű internetes dokumentáció.
Még sok minden más!
A FreeBSD Kaliforniai Egyetem (Berkeley) Számítógépes rendszerek kutatócsoportja által fejlesztett 4.4BSD-Lite kiadásán alapszik és ápolja a BSD-rendszerek fejlesztésének jellegzetes hagyományait. Túl a kutatócsoport kivételes munkáján, a FreeBSD Projekt több ezernyi órát szentelt arra, hogy a legtöbbet hozza ki a rendszerből mind a teljesítményt, mind pedig a valós életben felbukkanó terhelési helyezetekben történő helytállást illetően. Ahogy a legnagyobb piaci óriások igyekeznek egy hasonló képességű, teljesítményű és megbízhatóságó PC-s operációs rendszert kifejleszteni, úgy a FreeBSD már most felajánlja ezeket!
Kizárólag csak a képzeletünk szabhat gátat annak, hogy mire is tudjuk használni a FreeBSD-t. Szoftverfejlesztéstől kezdve, a gyári automatizáláson és készletnyilvántartáson át a műholdas antennák tájolásáig szinte mindenre: ha ezt eddig egy kereskedelmi UNIX®-szal is meg tudtuk tenni, akkor nagyon valószínű, hogy a FreeBSD-vel is képesek leszünk erre! A FreeBSD ezen felül nagyban profitál a világban található különböző kutatóközpontok és egyetemek által fejlesztett, kiváló minőségű alkalmazások ezreiből, melyek gyakorta olcsón vagy ingyen elérhetőek. Kereskedelmi alkalmazások is egyre nagyobb számban képviseltetik magukat minden nap.
Mivel a FreeBSD forráskódja általánosan elérhető, a rendszer szinte tetszőleges mértékben testreszabható a különleges elvárásokat támasztó alkalmazások vagy projektek számára. Ez a nagyobb kereskedelmi fejlesztők operációs rendszereivel majdnem teljesen elképzelhetetlen. Íme csupán néhány példája azon alkalmazásoknak, melyek jelenleg is FreeBSD-t használnak:
Internetes szolgáltatások: A FreeBSD-be épített szilárd TCP/IP alapú hálózatkezelés különféle internetes szolgáltatások számára teszi ideális platformmá:
A FreeBSD használatához kezdetben elegendő egy olcsó 386-os PC, melyet a vállalkozásunk fejlődésével szépen fel tudunk hozni egy RAID-del ellátott négyprocesszoros Xeon rendszerig.
Oktatás: Esetleg informatikával vagy műszaki informatikával foglalkozik? Nem is lehetne jobban a FreeBSD által felkínált élményeken kívül máshogy megismerkedni elsőkézből az operációs rendszerek, számítógépes architektúrák és hálózatok működésével! Rengeteg szabadon használható műszaki, matematikai és grafikai tervező programcsomag könnyíti meg azok munkáját is, akik számára a számítógép legfőképpen más feladatok elvégzésére hivatott!
Kutatás: Miután a teljes FreeBSD rendszer forráskódja bárki számára elérhető, tökéletes kiindulási pontot ad az operációs rendszerek témakörében vagy a számítástudomány egyéb ágaiban végzendő kutatásokhoz. A FreeBSD nyílt természete ezenkívül lehetővé teszi egymástól távol levő csoportok közös együttműködését is anélkül, hogy a résztvevőknek aggódnia kellene a különleges licencszerződések vagy a nyílt fórumokon felmerülő korlátozások miatt.
Hálózatépítés: Szüksége van egy új útválasztóra? Esetleg egy névszerverre (DNS)? Egy tűzfalra, mely távoltartja a nemkívánatos egyéneket a belső hálózattól? A FreeBSD pillanatok alatt átváltoztatja a sarokban porosodó 386-os vagy 486-os PC-nket egy kifinomult csomagszűrési képességekkel bíró forgalomirányító eszközzé.
X Window munkaállomás: A FreeBSD a szabadon használható X11 szerverrel együtt remek választás egy olcsó X terminál kiépítéséhez. Eltérően egy szokványos X termináltól, a FreeBSD azonban igény szerint sok alkalmazás helyi futtatását is képes megoldani, ezzel megszabadítva minket a központi szerver használatának kényszerétől. A FreeBSD viszont akár „lemez nélkül” is el tud indulni, aminek révén az egyes munkaállomások karbantartása még olcsóbbá és könnyebbé válik.
Szoftverfejlesztés: Az alap FreeBSD rendszer fejlesztőeszközök tömkelegével, többek közt a híres GNU C/C++ fordítóval és nyomkövetővel érkezik.
A FreeBSD CD-n, DVD-n és FTP-n keresztül elérhető forráskód és bináris formátumban is. A FreeBSD beszerzésével kapcsolatos bővebb információkért olvassuk el az A. függelék - A FreeBSD beszerzéseet.
A most következő rész egy-két háttérinformációt tár fel a Projektről, többek között a történetét, céljait és a benne alkalmazott fejlesztési modellt.
A FreeBSD Projekt valamikor 1993 kezdetéről eredeztethető, és részben a „Nem hivatalos 386BSD Patchkit”-ből nőtt ki, a patchkit 3 legutolsó koordinátorának, Nate Williamsnek, Rod Grimesnak és nekem köszönhetően.
Eredeti célunk a 386BSD köztes állapotainak rögzítése lett volna, amitől olyan problémák megoldását reméltük, melyeket a patchkitek gyártása önmagában egyszerűen nem tudott megoldani. Néhányan még talán emlékeznek is a Projekt kezdeti munkaneveire: „386BSD 0.5” vagy „386BSD Interim”, melyek pontosan erre a tényre hivatkoztak.
A 386BSD eredetileg Bill Jolitz operációs rendszere volt, amely ennél a pontnál már közel egy éve senki sem tartott karban. Mivel a hozzá tartozó patchkit pedig napról napra duzzadt, egyre kényelmetlenebbé vált a karbantartása. Ezért egyhangúan úgy döntöttünk, segítünk Billnek azzal, hogy időnként létrehozunk egy „letisztított” változatot. Ez a próbálkozásunk csúnyán kudarcba fulladt, amikor Bill Jolitz hirtelen meggondolta magát és visszalépett a Projekt támogatásától. Semmilyen egyértelmű útmutatást nem adott arra, hogy mit csináljunk helyette.
Nem tartott sokáig eldöntenünk, hogy ez a cél továbbra is megéri a fáradtságot, még Bill segítsége nélkül is, ezért felvettük a „FreeBSD” nevet, melyet David Greenmannek köszönhetünk. Kezdeti feladatainkat a rendszer akkori felhasználóival tartott egyeztetések után állítottuk fel. Miután teljesen tisztán láthatóvá vált, hogy a Projekt a megvalósulás útján van, felvettem a kapcsolatot a Walnut Creek-kel, terjesztési mód után nézve azok számára, akik nem tudtak akkoriban könnyedén hozzáférni az internethez. A Walnut Creek nem csak támogatta a FreeBSD CD-n történő terjesztését, hanem még egy számítógépet és egy gyors internetkapcsolatot is a Projekt rendelkezésére bocsátott. A Walnut Creek szinte példátlan mértékű, egy akkoriban teljesen ismeretlen projektbe vetett hite nélkül nagyon nehezen lenne elképzelhető, hogy a FreeBSD olyan messzire és olyan gyorsan jutott volna el, ahol ma tart.
Az első CD-lemezen (és széles körben az interneten is megjelenő) változat a FreeBSD 1.0 volt, amely 1993 decemberében jelent meg. A Berkeley-ről származó 4.3BSD-Lite („Net/2”) szalagokon található források alapján készült, kiegészítve a 386BSD-ből és a Szabad Szoftver Alapítványtól (Free Software Foundation, FSF) származó komponensekkel. Első kiadásként igen méltányos sikert könyvelhetett el, melyet a még inkább sikeres FreeBSD 1.1-gyel folytattunk 1994 májusában.
Nagyjából ekkortájt néhány váratlan sötét felhő bukkant fel az égbolton, ahogy a Novell és a Berkeley hosszantartó pereskedése lezárult a Berkeley Net/2 szalagjainak jogi formáját illetően. Ennek eredményeképpen a Berkeley elfogadta, hogy a Net/2 nagy része „jelzáloggal terhelt” és a Novell tulajdona, aki pedig valamivel korábban az AT&T-től szerezte. Ezért cserébe a Berkeley megkapta a Novell „áldását” a 4.4BSD-Lite kiadásra, és amikor az véglesen kijön, megszűnik a rajta levő jelzálog. Emiatt az összes Net/2 felhasználónak erősen javasolt volt váltani. Ez érintette magát a FreeBSD-t is, és így a Projekt 1994 júliusáig kapott határidőt, hogy leállítsa a Net/2 alapú termékeinek szállítását. A megegyezés értelmében a Projekt kiadhatott még egy utolsó kiadást a határidő előtt, amely végül a FreeBSD 1.1.5.1 lett.
A FreeBSD-nek ekkor szembesülnie kellett azzal a nehéz feladattal, hogy lényegében újra fel kellett találnia magát, a teljesen új és meglehetősen hiányos 4.4BSD-Lite bitjeitől elindulva. A „Lite” (egyszerűsített) kiadások abban az értelemben számítottak egyszerűbbnek, hogy a Berkeley kutatói (a különböző jogi követelések miatt) eltávolították a ténylegesen beindítható rendszerhez szükséges programrészek nagyobb részét, ill. a 4.4-es verzió Intel processzorokra készített portja nagyon is befejezetlen volt. A Projektnek egészen 1994 novemberéig tartott, hogy megtegye ezt a lépést, ugyanis ekkor jelent meg a FreeBSD 2.0 az interneten és (december vége felé) CD-n. Annak ellenére, hogy még némileg érdes maradt bizonyos helyeken, ez a kiadás jelentős sikereket ért el. Ezt követte 1995 júniusában a sokkalta stabilabb és könnyebben telepíthető FreeBSD 2.0.5.
A FreeBSD 2.1.5-öt 1996 augusztusában adtuk ki, mely akkora népszerűségnek örvendett az internet-szolgáltatók és kereskedelmi közösségek körében, hogy a 2.1-STABLE elágazásból egy újabb kiadást készítettünk. Ez volt a FreeBSD 2.1.7.1, amely 1997 februárjában jelent meg és ezzel együtt a 2.1-STABLE fejlesztését is zárta. Most már csak karbantartást végzünk rajta, és csak a biztonsági és egyéb kritikus hibajavítások kerülnek bele (RELENG_2_1_0).
A FreeBSD 2.2 fejlesztése 1996 novemberében ágazott le az akkori fejlesztői („-CURRENT”) ágból, mint a RELENG_2_2-es ág. Ebből az első teljes kiadás (2.2.1) 1997 áprilisában jelent meg. A 2.2-es ág mentén további kiadások 1997 nyarán és őszén készültek, melyek közül az utolsó (2.2.8) 1998 novemberében jelent meg. Az első hivatalos 3.0-ás kiadás 1998 októberében jött ki, ami egyúttal a 2.2-es ág befejezésének kezdetét jelentette.
A fejlesztési fa 1999. január 20-án került ismét elágaztatásra, melynek eredménye a 4.0-CURRENT és 3.X-STABLE ágak lettek. A 3.X-STABLE ágban a 3.1 1999. február 15-én, a 3.2 1999. május 15-én, a 3.3 1999. szeptember 16-án, a 3.4 1999. december 20-án és a 3.5 2000. június 24-én jelent meg, melyet pár nappal később egy kisebb alverzió, a 3.5.1 követett, a Kerberosra vonatkozó friss biztonsági javításokkal. Ez lett egyben a 3.X ág utolsó kiadása.
Egy másik fontos elágaztatás 2000. március 13-án történt, mellyel életre kelt a 4.X-STABLE ág. Ebből aztán számos kiadás született: a 4.0-RELEASE 2000 márciusában mutatkozott be, az utolsó 4.11-RELEASE pedig 2005 januárjában látott napvilágot.
A várva várt 5.0-RELEASE 2003. január
19-én került bejelentésre. Közel
háromévnyi munka eredményeképpen ez
a kiadás indította meg a FreeBSD-t a
többprocesszoros rendszerek és az
alkalmazások szálkezelésének
fejlettebb támogatásának
útján, valamint az UltraSPARC® és
ia64 platformok támogatása is
itt jelent meg először. Ezt a kiadást az 5.1
követte 2003 júniusában. A
hozzá tartozó -CURRENT ágból az
utolsó kiadás az 5.2.1-RELEASE volt, amely 2004
februárjában mutatkozott be.
A 2004 augusztusában, a RELENG_5 ág létrehozását a 5.3-RELEASE követte, és egyben a 5-STABLE ág kezdetét is jelezte. A legújabb 5.5-RELEASE 2006 májusában jött ki. A RELENG_5 ágból már nem fog készülni több kiadás.
A fejlesztési fa ezután 2005 júliusában ágazott el ismét, ezúttal a RELENG_6 ágnak adott életet. A 6.0-RELEASE az 6.X ág első kiadásaként 2005 novemberében jelent meg. A legújabb 6.4-RELEASE 2008 november hónapjában jelentkezett. A RELENG_6 ágból már nem készülnek további kiadások.
A RELENG_7 ág 2007 októberében jött létre. Ebből az első kiadás 2008 februárjában a 7.0-RELEASE volt. A legfrissebb 7.3-RELEASE kiadás 2010 március hónapban készült el. A RELENG_7 ágból további kiadások is várhatóak.
A fejlesztési fából 2009 augusztusában ismét levált egy ág, amely ezúttal a RELENG_8 volt. A 8.0-RELEASE, a 8.X ág első kiadása 2009 novemberében jelent meg. A legfrissebb 8.1-RELEASE 2010 július hónapban jött ki. A RELENG_8 ágból várhatóak további kiadások.
Jelen pillanatban a hosszabb távú fejlesztések a 9.X-CURRENT (törzs) ágban kapnak helyet, és a 9.X-ből készült időközönkénti pillanatkiadások folyamatosan elérhetőek CD-n (és természetesen interneten keresztül is) a pillanatkiadásokat tároló szerverről.
A FreeBSD Projekt célja, hogy olyan szoftvereket kínáljon, amelyek tetszőlegesen, bármilyen célra felhasználhatóak, mindenféle megkötések nélkül. Sokunk jelentős energiát fektet a programokba (és a Projektbe) és minden bizonnyal egyikünk sem utasítana vissza semmilyen anyagi ellenszolgáltatást se most, se később, de egyáltalán nem ragaszkodunk hozzá. Hisszük, hogy elsődleges „küldetésünk” olyan programok és programrészletek készítése bárki számára és bármilyen célra, melyeket a lehető legszélesebb körben alkalmaznak és a lehető legtöbb hasznot hajtják. Ez, úgy érzem, az egyik legalapvetőbb célja a szabad szoftvereknek, és ez az, amit mi is lelkesen magunkénak vallunk.
A forrásfánkban található GNU General Public License (GPL) vagy a Library General Public License (LGPL) alá eső kódok hozzáférhetőségére ezzel szemben némileg több megszorítás vonatkozik, legalább is inkább ami a hozzáférhetőséget illeti. Mivel a GPL-es szoftverek kereskedelmi használata további bonyodalmakat vethet fel, ha lehetőségünk adódik rá, inkább a sokkal enyhébb BSD licenccel rendelkező szoftvereket választjuk.
A FreeBSD fejlesztése egy nagyon nyitott és rugalmas folyamat, szó szerint a világ minden tájáról érkező többszáznyi segítségből építkezik, ahogy az látható is a résztvevőink listáján. A FreeBSD fejlesztési infrastruktúrája lehetővé teszi, hogy ez a többszáznyi résztvevő az interneten keresztül működjön együtt. Folyamatosan várjuk az új fejlesztőket és ötleteket, és mindazok, akik komolyabban érdeklődnek a Projekt iránt, egyszerűen felvehetik velünk a kapcsolatot a FreeBSD technical discussions levelezési lista címén. Egy FreeBSD announcements levelezési lista is elérhető azok számára, akik értesíteni kívánják a többi FreeBSD felhasználót munkájuk főbb eredményeiről.
A FreeBSD Projektről és annak fejlesztési modelljéről hasznos tudni az alábbiakat, függetlenül attól, hogy egyedül vagy másokkal szoros együttműködésben dolgozunk:
Sok éven keresztül a FreeBSD központi forrásfáját CVS-en (Concurrent Versions System) keresztül tartották karban, amely egy, a FreeBSD-vel is érkező, szabadon elérhető verziókezelő rendszer. 2008 júniusában a Projekt az SVN (Subversion) használatára váltott. Ez a váltás szükségszerű volt, mivel a CVS által okozott technikai nehézségek gyorsan előjöttek a forrásfa és a hozzá tartozó metainformációk szapora növekedésével. Noha a központi repository most már SVN-alapú, a kliensoldali CVSup és csup alkalmazások továbbra is a korábbi infrastruktúrával dolgoznak, ahogy eddig is — az SVN respositoryban végzett változtatások ehhez automatikusan átkerülnek CVS alá. Jelen pillanatban egyedül csak a központi forrásfa használja ezt a megoldást, a dokumentáció, a weboldalak és a Portgyűjtemény forrásai továbbra is CVS alól üzemelnek. Az elsődleges CVS repository egy Santa Clara-i (California, USA) számítógépen található, ahonnan a világban található rengeteg tükörszerverre másolódik. Az SVN-fa, mely tartalmazza a -CURRENT és -STABLE ágakat, könnyen lemásolható a saját számítógépünkre is. Ennek részleteiről bővebben a A forrásfa szinkronizálása c. szakaszban olvashatunk.
A hivatalos fejlesztők
(committerek) azok az emberek, akik
a CVS-fához írási joggal
rendelkeznek, tehát módosítást
hajthatnak végre a FreeBSD forrásaiban (a
„committer” kifejezés a cvs(1)
commit parancsából
származik, amelyet arra használunk, hogy
felvigyük a módosításainkat a
CVS repository-ba). Javaslatainkat legjobban a
send-pr(1) használatával tudjuk a
committerek elé tárni. Ha valamiért
ez mégsem működne,
megpróbálhatjuk őket elérni
közvetlenül a FreeBSD committer's mailing list
címére küldött e-maillel.
Ha a FreeBSD Projekt egy vállalat lenne, akkor a FreeBSD Core Teamje (irányító csoportja) foglalná magában a vezetőséget. Ennek a csoportnak elsődleges feladata, hogy fenntartsa a Projekt egészének kondícióját és gondoskodjon róla, hogy a megfelelő irányba haladjon. Az irányító csoportnak ugyanígy feladata a megbízható és odaadó committerek tömörítése és az új tagok beszervezése, ha a csoportból kilépne valaki. A jelenlegi Core Team tagjait 2008 júliusában választották meg. A választásokat kétévente tartják.
Ebben a csoportban egyes tagoknak ezenfelül még bizonyos területekre felügyelniük is kell. Ez azt jelenti, hogy felelősek a rendszer valamelyik nagyobb részének az előírásoknak megfelelő működéséért. A FreeBSD fejlesztők teljes felsorolása és a hozzájuk tartozó területek megtalálhatóak A résztvevők listjában.
A Core Team legtöbb tagja pusztán önkéntesen vesz részt a FreeBSD fejlesztésében és nem származik a projektből semmilyen anyagi haszna. Emiatt a „részvétel” nem tévesztendő össze a „garantált támogatással”. A „vezetőségre” vonatkozó hasonlat nem teljesen pontos abban az értelemben, hogy ezek az emberek tulajdonképpen egy kívülálló szempontjából ésszerűtlen döntést hoztak azzal, hogy a FreeBSD támogatására áldozták az életüket!
Végül, de nem utoljára, következzen a fejlesztők legnagyobb csoportja: ők maguk a felhasználók, akik rendszeres visszajelzéseket és hibajavításokat küldenek. A FreeBSD kevésbé központosított fejlesztésében elsősorban a FreeBSD technical discussions levelezési lista segítségével lehet felvenni a fonalat, ahol ezeket a témákat tárgyalják meg. A FreeBSD-hez kapcsolódó különféle levelezési listákról többet a C. függelék - Források az internetenben olvashatunk.
A FreeBSD résztvevőinek listája hosszú és még most is növekszik; miért nem próbálunk mi is visszaadni valamit a FreeBSD-nek?
Nem csak programozással lehet segíteni a Projektet: a megoldandó feladatok listáját megtalálhatjuk a FreeBSD Projekt honlapján.
Röviden összefoglalva, a fejlesztési modellünk egymáshoz lazán kapcsolódó koncentrikus körökként szerveződik. Ez a központosított modell a FreeBSD-felhasználók kényelmét szolgálandó lett kialakítva, akik így könnyedén tudnak követni egyetlen központi kódbázist, azonban megvan a lehetőségük a részvételre is! Minden vágyunk egy olyan megbízható operációs rendszer kialakítása, amihez nagy mennyiségű könnyen telepíthető és használható alkalmazás tartozik — ez a modell ennek elérésére nagyon is megfelelő.
A haladás ütemének fenntartása érdekében mindössze csak annyit kérünk a leendő FreeBSD fejlesztőinktől, hogy legyenek legalább annyira elszántak, mint a jelenlegi tagjaink!
A FreeBSD egy szabadon elérhető, teljes forráskóddal érkező 4.4BSD-Lite alapú kiadás Intel i386™, i486™, Pentium®, Pentium® Pro, Celeron®, Pentium® II, Pentium® III, Pentium® 4 (vagy azzal kompatibilis), Xeon™, DEC Alpha™ és Sun UltraSPARC® alapú számítógépekre. Elsősorban a Berkeley Számítógépes rendszerek kutatócsoportjának szoftverein alapszik, számos javítással a NetBSD, OpenBSD, 386BSD és a Szabad Szoftver Alapítvány munkásságának köszönhetően.
A FreeBSD 2.0 1994 végi megjelenése óta a FreeBSD teljesítménye, megbízhatósága és tudása drasztikusan megnövekedett. A legnagyobb változtatás az újjáalakított, összevont VM/állomány puffer gyorsítótárral rendelkező virtuális memória alrendszer, amely nem csak a teljesítményt növeli, hanem csökkenti a FreeBSD memóriaigényét is, jobban elfogadhatóvá téve ezzel az 5 MB-os minimumot. A további fejlesztések között találjuk a teljes NIS szerver és kliens támogatást, az átviteli TCP támogatását, az igény szerint tárcsázó PPP-t, a beépített DHCP támogatást, a továbbfejlesztett SCSI alrendszert, az ISDN támogatást, az ATM, FDDI, Fast és Gigabit Ethernet (1000 Mbit) hálózati csatolók támogatását, a legfrissebb Adaptec gyártmányú vezérlők fejlesztett támogatását és a többezernyi hibajavítást.
Az alapeszközök mellé a FreeBSD
felkínálja többezernyi ismert és
keresett program portjaiból álló
gyűjteményét. Ebben a pillanatban is
már több, mint 20 000 port érhető
el! A portok listája a HTTP (WWW) szerverektől, a
játékokon, nyelveken és sok mindenen
keresztül a szövegszerkesztőkig terjed. Az
egész Portgyűjtemény
közelítőleg 417 MB tárhelyet
kíván, minden portot az eredeti forráshoz
viszonyított
„különbségként”
tárol. Ennek következtében a portok
frissítése sokkal könnyebb és nagyban
csökkenti a korábbi, 1.0-ás
Portgyűjteménynél kialakult
tárigényeket. Egy port
lefordításához egyszerűen csak be kell
lépnünk a telepíteni kívánt
program könyvtárába és ki kell adnunk
a make install parancsot, a többit a
rendszer elvégzi. Minden egyes telepítendő
port teljes forrása dinamikusan vagy CD-ről vagy
pedig FTP-n keresztül töltődik le, így
csak a ténylegesen telepítendők
lefordításához elegendő
tárhelyre van szükség. Majdnem mindegyik
port elérhető előre lefordított
„csomag” formájában azok
számára, akik nem kívánják
lefordítani a portokat, és melyeket egy
egyszerű parancs (pkg_add)
segítségével telepíteni is
tudják. A csomagokról és portokról
a 4. fejezet - Alkalmazások telepítése: csomagok
és portokben tudhatunk meg többet.
A FreeBSD telepítéséről és
használatáról most már számos
további nagyon hasznos dokumentumot találhatunk
bármelyik FreeBSD-s számítógép
/usr/share/doc
könyvtárában. A helyileg telepített
kézikönyveket bármilyen HTML-t
megjeleníteni képes böngészővel
el tudjuk olvasni az alábbi URL-eken:
Az aktuális (leginkább frissített) verziók megtekinthetőek a http://www.FreeBSD.org/ címen.
A FreeBSD telepítéséhez egy könnyen használható szöveges telepítőprogram, a sysinstall használható. Ez a FreeBSD alapértelmezett telepítőprogramja, habár ezt a különféle gyártók kedvük szerint lecserélhetik. Ebben a fejezetben bemutatjuk a FreeBSD sysinstall segítségével történő telepítését.
A fejezet elolvasása során megismerjük:
hogyan készítsünk telepítőlemezeket a FreeBSD-hez;
a FreeBSD miként hivatkozza és osztja fel a merevlemezeinket;
hogyan indítsuk el a sysinstall programot;
milyen kérdéseket tesz fel nekünk a sysinstall, mire gondol, hogyan is kell azokat megválaszolni.
A fejezet elolvasásához ajánlott:
a telepítendő FreeBSD verzióhoz tartozó támogatott hardvereket felsoroló lista átolvasása és benne a saját hardvereszközeink megkeresése.
Általánosan elmondható, hogy a most következő telepítési utasítások az i386™ („PC kompatibilis”) architektúrájú számítógépekre vonatkoznak. Ahol erre szükség van, ott más platformokra vonatkozó utasítások is szerepelhetnek. Habár ezt a leírás igyekszünk a lehető legjobban naprakészen tartani, elképzelhető, hogy felfedezhetünk kisebb eltéréseket a telepítőben és az itt leírtak közt. Ezért ezt a fejezetet inkább egy általános útmutatónak javasoljuk, nem pedig egy szó szerint értelmezendő kézikönyvként.
A FreeBSD telepítéséhez szükséges minimális konfiguráció FreeBSD verziónként és architektúránként eltérő.
A minimális konfigurációt a FreeBSD honlapján a kiadásokról szóló oldalon, az „Installation Notes” részben találhatjuk meg. Ezt a következő szakaszokban foglaljuk össze. A FreeBSD telepítésének módszerétől függően szükségünk lehet egy hajlékonylemezes (floppy) vagy CD-ROM meghajtóra, esetleg egy hálózati kártyára. Ezt a 2.3.7. szakasz - Készítsünk egy rendszerindító lemeztban tárgyaljuk.
A FreeBSD/i386 és FreeBSD/pc98 egyaránt egy 486 vagy jobb processzort és legalább 24 MB memóriát igényel. A legkisebb telepítéshez legalább 150 MB szabad lemezterület szükséges.
Régebbi konfigurációk esetén nem egy gyorsabb processzor, hanem inkább több memória beszerzése, illetve több lemezterület felszabadítása a fontosabb.
Az Alpha támogatás a FreeBSD 7.0
beindulásával
eltávolításra került. A
FreeBSD 6.X sorozat az
utolsó, amely valamilyen támogatást
ajánl ehhez az architektúrához. Ezzel
kapcsolatban részletesebben a kiadásokkal
kapcsolatos információkat tartalmazó
oldalon olvashatunk a FreeBSD honlapján.
Két típusú processzor képes futtatni a FreeBSD/amd64 verzióját. Az első ezek közül az AMD64 processzorok, beleértve az AMD Athlon™64, AMD Athlon™64-FX, AMD Opteron™ vagy újabb processzorokat.
A FreeBSD/amd64 verzióját kihasználni képes processzorok másik csoportja az Intel® EM64T architektúrájára épülő processzorok. Ilyen processzor például az Intel® Core™ 2 Duo, Quad és Extreme processzorcsaládok, valamint az Intel® Xeon™ 3000, 5000 és 7000 sorozatszámú processzorai.
Ha nVidia nForce3 Pro-150 alapú géppel rendelkezünk, ki kell kapcsolnunk a BIOS-ban az IO APIC használatát. Ha nem találnánk ilyen beállítást, akkor helyette magát az ACPI-t kell kikapcsolnunk. A Pro-150 chipsetnek vannak bizonyos hibái, amelyekre eddig még nem sikerült megfelelő megoldást találnunk.
A FreeBSD/sparc64 telepítéséhez egy támogatott platformra van szükségünk (lásd: 2.2.2. szakasz - Támogatott hardverek).
A FreeBSD/sparc64 telepítéséhez egy egész lemezre lesz szükségünk, mivel a rendszer jelenleg nem képes megosztani azt más operációs rendszerekkel.
A FreeBSD minden kiadásához mellékelik a
támogatott hardverek listáját „FreeBSD
Hardware Notes” címmel. Ez a dokumentum
többnyire a HARDWARE.TXT nevű
állomány, amelyet a rendszer CD-n vagy FTP-n
keresztül elérhető változatának
gyökerében vagy a
sysinstall
dokumentációkat tartalmazó
menüjében találhatunk meg.
A FreeBSD telepítése előtt érdemes összeszedni, pontosan mi minden is található a számítógépünkben. A FreeBSD telepítőrutinjai mutatni fogják a különböző komponensek (merevlemezek, hálózati kártyák, CD-meghajtók és a többi) modelljét és gyártóját. A FreeBSD ezenkívü megpróbálja kideríteni a megjelenő eszközök pontos konfigurációját is, beleértve a használt IRQ és IO portok kiosztását. A PC-s hardverek különféle szeszélyei miatt azonban ez az iménti folyamat nem minden esetben megbízható, ezért előfordulhat, hogy helyesbíteni kell a FreeBSD által megállapított értékeket.
Ha már van a gépünkön egy másik operációs rendszer, például Windows® vagy Linux®, akkor mindenképpen hasznos lehet az általa felkínált eszközökkel lekérdezni a hardvereink beállításait. Ha nem lennénk biztosak benne, hogy az adott bővítőkártyákat pontosan milyen beállításokkal is használjuk, nézzük meg ezeket magán a kártyán. A népszerű IRQ értékek általában a 3, 5 és 7, valamint az IO portok számát általában tizenhatos számrendszerben szerepeltetik, például 0x330.
Javasoljuk, hogy nyomtassuk ki vagy írjuk le ezeket a paramétereket a FreeBSD telepítése előtt. Ehhez rendezzük ezeket egy táblázatban, valahogy így:
| Eszköz neve | IRQ | IO portok | Megjegyzés |
|---|---|---|---|
| Első merevlemez | - | - | Mérete 40 GB, gyártmánya Seagate, elsődleges IDE master |
| CD-ROM meghajtó | - | - | Elsődleges IDE slave |
| Második merevlemez | - | - | Mérete 20 GB, gyártmánya IBM, másodlagos IDE master |
| Első IDE vezérlő | 14 | 0x1f0 | |
| Hálózati kártya | - | - | Intel® 10/100 |
| Modem | - | - | 3Com® 56K-s faxmodem, COM1 |
| … |
Ahogy elkészítettük a számítógépünk alkatrészeit tartalmazó listát, vessük ezeket össze a telepítendő FreeBSD kiadás által megkövetelt eszközökkel.
Amennyiben a FreeBSD telepítéséhez használt számítógép számunkra értékes adatokat tárol, igyekezzünk lementeni ezeket, és a FreeBSD tényleges telepítése előtt győződjünk is meg róla, hogy a mentés sikeres volt. A FreeBSD telepítőrutinjai természetesen megerősítést fognak kérni bármilyen adat lemezre írása előtt, azonban ha egyszer már elindítottuk a folyamatot, már semmit sem tudunk visszafordítani.
Ha a FreeBSD telepítéséhez az egész merevlemezünket fel akarjuk használni, akkor még nincs miért izgatnunk magunkat — nyugodtan átléphetjük ezt a szakaszt.
Amikor viszont a FreeBSD-t más operációs rendszerek mellé szeretnénk telepíteni, ismernünk kell, miként is helyezkednek el az adatok a lemezeken, és hogy ez miként is érint bennünket.
A PC-k által használt lemezek
különálló darabokra
tagolhatóak. Ezeket a darabokat
partícióknak
nevezzük. Mivel azonban a FreeBSD maga is tárol
partíciókat, ezért ez az elnevezés
pillanatok alatt megtévesztővé
válhat, ezért ezeket a lemezdarabokat a FreeBSD
lemezslice-oknak vagy egyszerűen csak slice-oknak
hívja. Például a PC-s
lemezpartíciókkal dolgozó,
fdisk nevű FreeBSD-s segédprogram
partíciók helyett is slice-okra hivatkozik. A
PC lemezenként alapvetően csak négy
partíciót enged meg. Ezeket a
partíciókat nevezik elsődleges
partícióknak. Ettől a
korlátozástól egy új típus,
a kiterjesztett partíció
létrehozásával szabadultak meg, amivel
így négynél több
partíció is készíthető.
Lemezenként egyetlen ilyen kiterjesztett
partíció található, de ezen
belül speciális, ún. logikai
partíciók hozhatóak
létre.
Minden partíciónak van egy
partíció-azonosítója,
melyet a partíción található
adatok típusának
megállapítására használnak.
A FreeBSD partícióinak azonosítója a
165.
Általánosságban véve minden
operációs rendszer így azonosítja
a partíciókat. Például a DOS
és annak leszármazottai, mint
például a Windows®, minden elsődleges
és logikai partícióhoz egy
C:-től induló
meghajtó-betűjelet
társít.
A FreeBSD-t egy elsődleges partícióra kell telepíteni. A FreeBSD az összes adatát, beleértve minden általunk létrehozott állományt is, ezen az egyetlen partíción fogja elhelyezni. Ha viszont több lemezünk van, többen is, vagy akár mindegyiken létrehozhatunk FreeBSD-s partíciókat. A FreeBSD telepítésekor azonban legalább egy ilyen partíciónak használhatónak kell lennie. Ez lehet előre megtisztított üres partíciói is, vagy akár egy olyan partíció, amelyen már nem használt adatok vannak.
Ha már mindegyik partíciónk betelt,
akkor a többi operációs rendszer
által felkínált eszközök
(például MS-DOS®-ban vagy Windows®-ban az
fdisk) valamelyikével
először fel kell közülük
szabadítanunk egyet a FreeBSD
számára.
Amennyiben akadna egy használható partíció, akkor használjuk azt. Ekkor azonban előfordulhat, hogy ehhez először a meglévők közül össze kell majd zsugorítanunk valamelyiket.
A FreeBSD legkisebb telepíthető változata nagyjából 100 MB lemezterületet igényel. Azonban ez egy nagyon kicsi változat és szinte semmi helyet nem hagy a saját állományainknak. Sokkal valósághűbb, ha grafikus felület nélkül nagyjából 250 MB-ot mondunk, és legalább 350 MB-ot a grafikus felület használata esetén. Ha ezeken felül további szoftvereket is telepíteni kívánunk, még több helyre lesz szükségünk.
Amikor a FreeBSD számára akarunk helyet csinálni, vagy partíciókat akarunk átméretezni, használjuk például a PartitionMagic® nevű kereskedelmi szoftvert, vagy esetleg egy olyan szabad szoftvert, mint például a GParted. Ismereteink szerint a PartitionMagic® és a GParted is használható az NTFS partíciókkal. A GParted számos live linuxos disztribúción megtalálható, ilyen többek közt a SystemRescueCD.
Gondok lehetnek azonban a Microsoft® Vista által használt partíciókkal. Ezért nem árt, ha az átméretezésekor a kezünk ügyében van a Vista telepítő CD-je. Természetesen, mint minden lemezkarbantási művelet esetén, ilyenkor is határozottan ajánlott biztonsági mentéseket készíteni.
Az említett eszközök helytelen használata megsemmisítheti a lemezeinken tárolt adatokat, ezért a használatuk előtt gondoskodjunk friss, működőképes biztonsági mentésekről.
Tegyük fel, hogy a
számítógépünkben egyetlen
4 GB méretű lemez van, amelyen
megtalálható a Windows® valamelyik
verziója, és ezt a lemezt korábban
két, egyaránt 2 GB méretű
meghajtóra osztottuk, a
C:-re és
D:-re. 1 GB adatunk van a
C: meghajtón és
fél GB a D:-n.
Mindez tehát azt jelenti, hogy a
lemezünkön két partíció
található, betűjelenként egy. Ha
átmásoljuk a D:
meghajtón levő adatainkat a
C: meghajtóra, akkor ezzel
felszabadíthatjuk a FreeBSD számára a
második partíciót.
Tegyük fel, hogy a
számítógépünkben egyetlen
4 GB méretű lemez van, amelyet teljes
egészében a Windows® valamelyik
példánya foglal el. A Windows®
telepítése során ezért minden
bizonnyal egyetlen nagy partíciót hoztunk
létre, amely a C:
betűjelet kapta és a mérete 4 GB.
Jelen pillanatban másfél GB helyet
használunk a lemezen, és szeretnénk a
FreeBSD számára 2 GB helyet
felszabadítani.
A FreeBSD telepítéséhez a következők valamelyikét kell tennünk:
Mentsük le a Windows®-os adatainkat, telepítsük újra a Windows®-t úgy, hogy egy 2 GB méretű partíciót választunk neki a telepítése során.
A partíció összezsugorítására használjuk az előbb említett alkalmazásokat, például a PartitionMagic®-et.
Amennyiben a FreeBSD telepítésének részeként hálózatra is szándékozunk csatlakozni (például egy FTP vagy NFS szerverről akarunk telepíteni), ismernünk kell a hálózatra vonatkozó beállításainkat is. A telepítő rá fog kérdezni ezekre az információkra, amelyek megadása után a FreeBSD a telepítés befejezéséhez csatlakozni tud majd a hálózatra.
Ha egy Ethernet-hálózathoz, vagy magához az internethez csatlakozunk egy DSL- vagy kábelmodemen keresztül, akkor az alábbi adatokra lesz szükségünk:
IP-cím
Az alapértelmezett átjáró IP-címe
A gépünk neve
DNS (névfeloldó) szerverek IP-címei
Hálózati maszk
Ha nem ismerjük ezeket, érdeklődjünk a rendszergazdától vagy a szolgáltatónktól. Elképzelhető az is, hogy mindezen információkat DHCP segítségével, automatikusan kapjuk meg. Ezt is mindenképpen jegyezzük fel.
Ha az internet-szolgáltatónkhoz hagyományos modemen keresztül csatlakozunk, akkor is tudjuk telepíteni a FreeBSD-t interneten keresztül, azonban ez nagyon sokáig tarthat.
Ehhez tudnunk kell:
Az internet-szolgáltatónk behívószámát
A soros (COM) port számát, amelyen keresztül a modem kapcsolódik a gépünkhöz
Az internet-szolgáltatónktól kapott felhasználói nevet és jelszót
Habár a FreeBSD Projekt igyekszik a FreeBSD minden egyes kiadását a lehető legmegbízhatóbban felkészíteni, hibák óhatatlanul is maradnak bennük. Nagyon ritka esetekben ezek a hibák magára a telepítés folyamatára is kihathatnak. Amint ezeket a problémákat sikerül felderíteni és javítani, rögvest megjelennek a FreeBSD honlapján található hibajegyzékben (angolul). A telepítés előtt ezért mindig ajánlott átolvasni ezt a dokumentumot, így megbizonyosodunk róla, hogy semmilyen utólag felmerült probléma nem akadályozza munkánkat.
Az összes kiadáshoz tartozó információ, beleértve az egyes kiadások hibajegyzékeit is, a FreeBSD honlapjáról a kiadásokra vonatkozó információkat tartalmazó részen érhető el (angolul).
A FreeBSD telepítése az alábbi helyek bármelyikén megtalálható állományok felhasználásával történik:
CD vagy DVD
Ugyanazon a számítógépen levő MS-DOS® partíció
Pendrive (USB-flash-tároló)
SCSI- vagy QIC-szalag
Floppylemezek
FTP oldalról, tűzfalon keresztül vagy szükség szerint HTTP proxy használatával
NFS szerverről
Párhuzamos vagy soros vonali kapcsolaton keresztül
Ha megvásároltuk a FreeBSD telepítő CD-jét vagy DVD-jét, akkor már mindennel rendelkezünk a telepítéshez. Lépjünk bátran tovább a következő szakaszra (2.3.7. szakasz - Készítsünk egy rendszerindító lemezt)!
Ha eddig még nem szereztük volna be a FreeBSD telepítéséhez szükséges állományokat, ugorjunk a 2.13. szakasz - Saját telepítőeszköz elkészítésehoz, ahol megtudhatjuk, hogyan készítsük elő a FreeBSD telepítését az imént felsorolt helyzetekben. A szakasz elolvasása után pedig jöjjünk vissza ide, majd folytassuk az olvasást a 2.3.7. szakasz - Készítsünk egy rendszerindító lemeztban.
A FreeBSD telepítése úgy kezdődik, hogy a számítógépünkkel a FreeBSD telepítőjét indítjuk el — ez viszont nem egy olyan program, amit más operációs rendszerben el tudunk indítani. A számítógépünk általában a merevlemezünkre telepített operációs rendszert indítja el, azonban beállítható úgy is, hogy az indulásához egy ún. „rendszerindító” (bootolható) floppy lemezt használjon. Napjaink számítógépei azonban a CD-meghajtóban levő CD-kről vagy USB lemezről is el tudnak indulni.
Ha CD-n vagy DVD-n megvan a FreeBSD telepítője (akár megvettük, akár éppen magunk készítettük) és a számítógépünk tud CD-ről vagy DVD-ről rendszert indítani (a BIOS-ban van egy „Boot Order” vagy hozzá hasonló nevű beállítás), akkor kihagyhatjuk ezt a szakaszt. A FreeBSD CD- és DVD image-ek kiírásával egy rendszerindításra alkalmas lemezt kapunk, amiről minden további előkészület nélkül telepíthetünk.
Rendszerindításra alkalmas pendrive-ot az alábbi lépések mentén tudunk készíteni:
Az image állomány letöltése
A pendrive-okhoz készült image
állományok a ISO-IMAGES/
könyvtárból tölthetőek le,
ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/
néven. Az
architektúra/ISO-IMAGES/verzió/FreeBSD-8.1-RELEASE-architektúra-memstick.imgarchitektúra és
verzió helyére a
telepítendő architektúrát
és verziószámot
helyettesítsük be. Ennek megfelelően
tehát például a
FreeBSD/i386 8.1-RELEASE változata
a ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.1/FreeBSD-8.1-RELEASE-i386-memstick.img
címről érhető el.
A pendrive image .img
kiterjesztéssel rendelkezik. A ISO-IMAGES/
könyvtár általában több
különféle állományt
tartalmaz, ezek közül kell választanunk a
FreeBSD telepítendő változatának,
és sok esetben a telepítéshez
rendelkezésre álló hardver
típusának megfelelően.
A következő lépés megkezdése előtt készítsünk biztonsági mentést a pendrive tartalmáról, mivel minden rajta levő adat törlődni fog.
A pendrive előkészítése
Az itt található példában
a rendszerindításhoz és így a
művelet végrehajtásához a
/dev/da0 nevű eszközt
fogjuk használni. Ezt ne felejtsük el
helyettesíteni a rendszerünkön erre a
célra használt eszköz nevével,
máskülönben kárt tehetünk az
adatainkban.
A kern.geom.debugflags
változó értékének
megfelelő beállításával
engedélyezzük a céleszközön a
Master Boot Record írását.
# sysctl kern.geom.debugflags=16Az image pendrive-ra írása
Az .img kiterjesztésű
állományt nem
egyszerűen a pendrive-ra kell másolni, ez a
lemez teljes tartalmát magában foglalja.
Ennek megfelelően nem
egyszerűen állományokat kell
másolnunk az egyik lemezről a másikra.
Helyette a dd(1) parancs
segítségével írjuk az image
állomány tartalmát
közvetlenül a lemezre.
# dd if=FreeBSD-8.1-RELEASE-i386-memstick.img of=/dev/da0 bs=64kRendszerindításra alkalmas floppy lemezt az alábbi lépések mentén tudunk készíteni:
A rendszerindító lemezek image-einek beszerzése
A FreeBSD 8.0 kiadásától kezdődően megszűnik a floppy lemezek támogatása. Helyette telepítsünk pendrive-ról, amelyről fentebb olvashatunk, vagy egyszerűen használjunk CD-t vagy DVD-t.
A rendszerindító lemezek a
telepítőeszköz
floppies/
könyvtárában találhatóak,
illetve letölthetőek az
ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/
helyről. Az
architektúra/változat-RELEASE/floppies/architektúra
és változat
helyére természtesen írjuk be a
telepíteni kívánt
architektúrát és verziót.
Így például a
FreeBSD/i386 8.1-RELEASE
rendszerindító lemezei az ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/8.1-RELEASE/floppies/
címről érhetőek el.
A floppyk image-ei .flp
kiterjesztésűek. A
floppies/ könyvtár
számos különféle image-et tartalmaz,
ezek közül leginkább a
telepítendő FreeBSD változat, valamint
emellett olykor konkrétan a hardver határozza
meg a használandót. Az esetek
túlnyomó részében négy
floppyra lesz szükségünk:
boot.flp,
kern1.flp,
kern2.flp és
kern3.flp. A lemezek image-eit
illető legfrissebb információkat
ugyanazon a könyvtáron belül szereplő
README.TXT állományban
olvashatjuk (angolul).
Az FTP-hez használt programunkat az image-ek letöltése során ne felejtsük el bináris (binary) átviteli módban használni. Egyes böngészők hajlamosak ugyanis szöveges (text vagy ASCII) átviteli módot használni, ami viszont csak abból vehető észre, hogy nem tudjuk a lemezekről elindítani a rendszert.
A floppyk előkészítése
Mindegyik letöltendő image-hez elő kell készíteni egy-egy hajlékonylemezt. Nagyon fontos, hogy ezek a lemezek teljesen hibátlanok legyenek. Erről a legkönnyebben úgy győződhetünk meg, ha a lemezeket magunk formázzuk, és nem bízunk a különféle előreformázott (preformatted) floppykban. A Windows®-ban található formázó segédprogram sem árul el nekünk semmit a lemezeken található hibás részekről, egyszerűen csak „rossznak” (bad) jelöli meg és figyelmen kívül hagyja ezeket. Határozottan ajánljuk, hogy amennyiben a telepítésnek ezt a módját választjuk, mindig használjunk teljesen új floppykat.
Ha megpróbáljuk telepíteni a FreeBSD-t, és a telepítőprogram összeomlik, lefagy vagy bármilyen furcsaságot művel, elsőként mindenképpen a floppykra gyanakodhatunk. Ilyenkor írjuk ki az image-eket új lemezekre és próbálkozzunk újra a telepítéssel.
Az image állományok írása a floppykra
Az .flp kiterjesztésű
állományok nem a lemezre
másolható hagyományos
állományok, hanem a lemezek teljes
tartalmának képei, ezért ezeket
egyszerűen nem másolhatjuk
egyik lemezről a másikra. Az image-ek
közvetlen lemezreírásához ehelyett
kifejezetten erre a célra alkalmas
eszközöket kell használnunk.
Azok számára, akik a floppykat
MS-DOS®/Windows® rendszerű
számítógépeken
kívánják elkészíteni,
mellékeltünk egy fdimage
nevű segédprogramot.
Ha a CD-meghajtónk betűjele
például E: és a
telepítő CD-n található image-eket
szeretnénk kiírni vele, akkor ezt a parancsot
kell kiadnunk:
E:\> tools\fdimage floppies\boot.flp A:Ezután ismételten adjuk ki az
iménti parancsot minden egyes használni
kívánt .flp
állományra, azonban előtte mindig
tegyünk be egy újabb floppyt, és a
ráírt image-ek neveivel folyamatosan
címkézzük fel a lemezeket. A megadott
parancsot természetesen mindig írjuk át
a konkrét .flp
állományok tényleges
elérési útvonalainak megfelelően.
Ha nincs CD-nk, akkor az fdimage
programot az FreeBSD FTP oldalán található
tools
könyvtárból is
letölthetjük.
Amikor a lemezeket egy UNIX® rendszeren készítenénk el (például egy másik FreeBSD rendszeren), akkor a dd(1) parancs is használható az image állományok közvetlen lemezreírásához. FreeBSD alatt így néz ki a paraméterezése:
# dd if=boot.flp of=/dev/fd0FreeBSD-n a /dev/fd0 az első
hajlékonylemezes meghajtóra hivatkozik
(tehát az A:
betűjelű meghajtóra). Ennek
megfelelően a /dev/fd1 jelenti a
B: meghajtót és
így tovább. Más UNIX®
változatok esetleg más neveket
használhatnak a hajlékonylemezes
meghajtók megnevezésére, ezért
erről érdemes ilyenkor
tájékozódni az adott rendszerhez
tartozó dokumentációban.
Most már készen állunk a FreeBSD telepítésére!
Alapértelmezés szerint a telepítés egészen addig nem fog semmit sem írni a lemezekre, amíg a következő üzenet fel nem bukkan:
Last Chance: Are you SURE you want continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents!
A szöveg fordítása:
Utolsó esély: BIZTOSAN folytatni kívánja a telepítést? Ha olyan lemezre szeretne telepíteni, amelyen fontos adatok találhatóak, HATÁROZOTTAN JAVASOLJUK, hogy a továbblépés előtt KÉSZÍTSEN RÓLUK MEGBÍZHATÓ BIZTONSÁGI MÁSOLATOT! Nem vállalunk semmilyen felelősséget az elveszett adatokért!
A telepítőből tehát a fenti, végső figyelmeztetés előtt bármikor ki lehet lépni anélkül, hogy a merevlemezünkön levő adatokat veszélyeztetnénk. Ha úgy érezzük, hogy valamit véletlenül rosszul állítottunk volna be a telepítés során, ekkor még minden komolyabb kár okozása nélkül kikapcsolhatjuk a számítógépünket.
Kezdjünk egy kikapcsolt számítógéppel.
Kapcsoljuk be a számítógépet. Az indulása során látnunk kell egy olyan opciót, amivel be tudunk lépni a rendszer beállításait tartalmazó menübe, avagy a BIOS-ba. Ezt többnyire a F2, F10, Del vagy a Alt+S lenyomásával érhetjük el. Ezek közül használjuk a képernyőn megjelenő billentyűket. Előfordulhat, hogy induláskor a számítógépünk semmilyen szöveget, csak egy képet mutat. Ilyenkor általában a Esc billentyű megnyomására eltűnik a kép és láthatóvá válnak a számunkra fontos üzenetek.
Miután beléptünk a menübe,
keressük meg azt a beállítást,
amely a rendszerindításhoz használt
eszközt határozza meg. Ennek a neve sokszor
„Boot Order” (rendszerindítási
sorrend) vagy valami hozzá hasonló. Itt
mindenféle eszköz felsorolását
találjuk: Floppy,
CDROM, First Hard
Disk (első merevlemezes meghajtó)
és így tovább.
Ha CD-ről akarjuk a telepítést
elindítani, akkor akkor a CDROM
eszközt válasszuk. Ha bármilyen
kétség merülne fel bennünk,
keressük meg ezt a beállítást a
számítógéphez és/vagy az
alaplaphoz kapott kézikönyvben.
Igényeink szerint végezzük el a beállítást, majd mentsük el és lépjünk ki. Most indítsuk újra a számítógépet.
Ha a 2.3.7. szakasz - Készítsünk egy rendszerindító lemeztban leírtak szerint rendszerindító pendrive-ot készítettünk, akkor bekapcsolás előtt csatlakoztassuk a számítógéphez.
Ha CD-ről indítjuk a telepítést, akkor kapcsoljuk be a számítógépet és az elindulása után igyekezzünk minél hamarabb betenni a lemezt a meghajtóba.
A FreeBSD 7.3 és az azt megelőző
változatokban a 2.3.7. szakasz - Készítsünk egy
rendszerindító lemeztban leírtak szerint
előkészített floppy-ról is el
tudjuk kezdeni a telepítést. Ezek egyike
lesz az első rendszerindító lemez, a
boot.flp. Helyezzük ezt a
lemezt a meghajtóba, és indítsuk el
vele a számítógépet.
Ha minden próbálkozásunk ellenére a számítógépünk a megszokott módon indul és a meglevő operációs rendszert tölti be, akkor a következőkkel lehet a gond:
A lemezeket nem raktuk be eléggé korán. Hagyjuk benn ezeket és próbáljuk meg ismét újraindítani a számítógépet.
Nem állítottuk be jól a BIOS-t. Próbáljuk meg egészen addig újra végrehajtani az előző lépést, amíg a megfelelő beállítást el nem találjuk.
A BIOS nem támogatja a kiválasztott eszközről történő rendszerindítást.
A FreeBSD megkezdi az indulását. Ha CD-ről indítjuk, akkor valami ehhez hasonlót fogunk látni (a konkrét verzióra vonatkozó adatokat itt most kihagytuk):
Amikor floppyról indítjuk a rendszert, ehhez hasonlóval találkozhatunk (itt sem szerepelnek most verzióadatok):
Kövessük a képernyőn
megjelenő utasítást („Helyezze be a
"Kernel floppy 1" címkéjű lemezt
és nyomjon meg egy billentyűt...”),
tehát vegyük ki a boot.flp
image-hez tartozó lemezt és tegyük be
helyette a kern1.flp image-hez
tartozó lemezt, majd nyomjuk le az
Enter billentyűt. Várjuk meg
amíg a rendszer megkezdi az indulást az
első lemezről, majd az utasításoknak
megfelelően folyamatosan tegyük be a soron
következő lemezeket.
Miután elindítottuk a rendszert CD-ről, pendrive-ról vagy floppy-ról, a rendszerindítási folyamat be fogja hozni a FreeBSD rendszertöltőjének menüjét:
Várjuk ki a tíz másodperces szünetet vagy egyből nyomjuk le az Enter billentyűt.
A legtöbb SPARC64® alapú rendszert úgy állították be, hogy automatikusan lemezről induljon. A FreeBSD telepítéséhez azonban hálózaton keresztül vagy CD-ről kell indítanunk a rendszert, ezért módosítanunk kell a PROM (az OpenFirmware) beállításait.
Mindehhez indítsuk újra a rendszert és várjuk meg, amíg feltűnik a rendszerindító üzenet. A konkrét üzenet nagyban függ a számítógép típusától, azonban valami ilyesmi lesz:
Amikor megpróbálja a rendszert
elindítani a lemezről, a PROM
parancssorának bekéréshez nyomjuk le a
billentyűzeten az L1+A vagy a Stop+A
billentyűket, esetleg a soros konzolon keresztül
küldjünk egy BREAK parancsot
(például a tip(1) vagy cu(1) man
oldalakon szereplő ~# parancs
használatával). Körülbelül
így néz ki:
Ez a fajta parancssor csak az egy processzorral rendelkező rendszereken jelenik meg. | |
Ez a fajta parancssor többprocesszoros (SMP) rendszereken jelenik meg, ahol a szám az éppen aktív processzor sorszámát jelöli. |
Most helyezzük a CD-t a meghajtóba, és
a PROM parancssorában pedig gépeljük be
boot cdrom parancsot.
A képernyőn megjelenő utolsó pár száz sor mindig eltárolódik, később tetszőlegesen átvizsgálhatóak.
A puffer tartalmának átnézéséhez nyomjuk le a Scroll Lock billentyűt, amivel bekapcsoljuk a korábban megjelent üzenetek közti visszalépést. Itt a nyílbillentyűk, vagy a PageUp és PageDown billentyűk használhatóak a kiírások átböngészéséhez. A Scroll Lock ismételt lenyomásával kiléphetünk ebből a módból.
Tegyük most mi is ezt, és nézzük az összes olyan üzenetet, amely a rendszermag indulása során keletkezett. A 2.2. ábra - Példa az eszközkeresés eredményeireban látható szövegekhez hasonlóakat fogunk találni, habár ez a számítógépben található konkrét eszközöktől függően eltérő lehet.
Figyelmesen olvassuk át az üzeneteket, és
bizonyosodjuk meg róla, hogy a FreeBSD minden
számunkra fontos eszközt felismert. Ha nem
látunk egy eszközt, akkor azt
valószínűleg nem találta meg. Egy
saját rendszermag
létrehozásával azonban fel tudunk
ismertetni olyan eszközöket is, amelyek
támogatása eredetileg nem szerepel a
GENERIC rendszermagban. Ilyenek
például a hangkártyák.
A FreeBSD 6.2 vagy későbbi változataiban az eszközök felkutatása után a 2.3. ábra - Az ország kiválasztásaban láthatóak következnek. Itt a nyílbillentyűk segítségével választhatjuk ki az országot (country), térséget (region) vagy csoportot (group). Az Enter lenyomása után pillanatok alatt beállítódik az országunk. Ha meg akarjuk ismételni az iménti beállítást, pillanatok alatt ki tudunk lépni a sysinstall programból.
Ha országként (Egyesült Államok) került beállításra, akkor a szabványos amerikai billentyűzet-kiosztás állítódik be. A többi ország esetében az alábbi menü jelenik meg. A kurzormozgató billentyűk segítségével ekkor keressük meg ki a számunkra megfelelő kiosztást, és az Enter billentyű lenyomásával válasszuk ki.
A telepítőprogram főképernyőjén válasszuk ki a nyílbillentyűkkel az („Kilépés a telepítésből”) menüpontot. Erre a következő üzenet fog megjelenni:
Az üzenet fordítása:
Ha a választ adjuk és a CD-t az újraindításkor is a meghajtóban hagyjuk, akkor a telepítőprogram még egyszer el fog indulni.
Ha floppyról indítottuk volna a rendszert, az
újraindítás előtt vegyük ki a
boot.flp image-et tartalmazó
lemezt.
A sysinstall a FreeBSD Projekt által fejlesztett telepítőprogram. Konzol alapú, menükre és képernyőkre oszlik, amelyeken a beállításokat és a telepítési folyamat irányítását tudjuk elvégezni.
A sysinstall menürendszerét több más billentyű mellett legfőképpen a nyílbillentyűkkel, az Enter, Tab és a Szóköz billentyűkkel kezelhetjük. Ezek és az általuk elvégezhető feladatok részletes leírása a sysinstall használatáról szóló információk között található.
Ennek megtekintéséhez először győződjünk meg róla, hogy a 2.6. ábra - A „Usage” kiválasztása a sysinstall főmenüjében által illusztrált helyzetnek megfelelően kiválasztottuk a („Használat”) menüpontot és a („Kiválaszt”) feliratú gombon állunk, majd nyomjuk le az Enter billentyűt.
Ezt követően megjelenik a menürendszer használatát bemutató leírás. Miután végigolvastuk, a főmenübe az Enter billentyű lenyomásával tudunk visszajutni.
A főmenüben a nyílbillentyűkkel válasszuk a feliratú menüpontot és nyomjuk meg az Enter billentyűt.
Ezzel megjelenik a dokumentációs menü.
Feltétlenül olvassuk el az itt található leírásokat.
A dokumentumok elolvasásához először válasszunk közülük a nyílbillentyűkkel, majd nyomjuk meg az Enter billentyűt. A dokumentum elolvasása után az Enter lenyomásával tudunk visszatérni a dokumentációs menübe.
A dokumentációs menüből a főmenübe úgy tudunk kilépni, ha a nyílbillentyűkkel kiválasztjuk az („Kilépés”) menüpontot és megnyomjuk az Enter billentyűt.
A billentyűzetkiosztás megváltoztatásához válasszuk ki a nyílbillentyűk segítségével a menüpontot a menüből és nyomjuk meg az Enter billentyűt. Erre természetesen csak akkor lesz szükségünk, ha nem szabványos vagy nem angol billentyűzetet használunk.
A különböző billentyűkiosztásoknak megfelelő menüpontok a fel/le nyílak és a Szóköz billentyű segítségével választhatóak ki. A Szóköz ismételt lenyomásával töröljük a választásunkat. A befejezéshez válasszuk ki a nyilakkal a gombot és nyomjuk le az Enter billentyűt.
A mellékelt képen a lista egy része látható csupán. Ha a Tab billentyűvel a gombot választjuk, akkor az alapértelmezett billentyűkiosztást kapjuk és visszakerülünk a főmenübe.
Válasszuk az („Beállítások”) menüpontot, majd nyomjuk le az Enter billentyűt.
Az itt szereplő alapértelmezett értékek a legtöbb felhasználó számára minden további nélkül megfelelnek, nem szükséges a megváltoztatásuk. A kiadás neve („release name”) mező értéke a telepítendő verziótól függően változhat.
A kiválasztott mező rövid leírása a képernyő alján, kékkel kiemelten jelenik meg. A („Az alapértelmezések használata”) beállítás az alapértelmezésére állítja vissza az összes értéket.
Az F1 lenyomásával elolvashatjuk a különböző beállításokhoz tartozó súgót.
A Q billentyűvel visszatérhetünk a főmenübe.
A („Szabványos”) elnevezésű menüpont által felkínált telepítési módszer ajánlott a UNIX®-szal vagy a FreeBSD-vel most ismerkedők számára. A telepítés megkezdéséhez a nyilakkal válasszuk ki a menüpontot, majd nyomjuk meg az Enter billentyűt.
Első feladatunk lemezterületet foglalni a FreeBSD számára, majd megcímkézni azt, hogy a sysinstall elő tudja készíteni. Ehhez tisztában kell lennünk azzal, hogy a FreeBSD milyen formában is keresi az adatokat a lemezünkön.
Egy témára különösen tekintettel kell lennünk mielőtt telepítenénk és beállítanánk a FreeBSD-t a rendszerünkön, főleg abban az esetben, ha több merevlemezünk is van.
Egy BIOS-függő operációs rendszert, például MS-DOS®-t vagy Windows®-t futattó PC esetén a BIOS az operációs rendszer beleegyezésével képes elvonatkoztatni a lemezek megszokott sorrendjétől. Ennek köszönhetően a felhasználó nem csak az ún. „primary master” (elsődleges master) merevlemezes meghajtótól tudja elindítani a rendszert. Ez kifejezetten kényelmes megoldás az olyan felhasználók számára, akik az elsővel teljesen megegyező második merevlemez megvásárlásával kialakították a rendszerük egyszerű és egyben a legolcsóbb biztonsági mentését, amire a Ghost® vagy XCOPY programokkal tudnak rendszeres másolatokat készíteni. Így, ha az elsődleges meghajtó tönkremegy vagy vírus támadja meg, esetleg az operációs rendszer egy hiba miatt használhatatlanná teszi, akkor a BIOS-t utasíthatjuk a meghajtók logikai cseréjére és ezzel könnyen helyre tudjuk állítani. Olyan, mintha a ház felnyitása nélkül felcseréltük volna a lemezeket bekötő kábeleket.
A SCSI-vezérlőkkel szerelt drágább rendszerek gyakran tartalmaznak olyan BIOS-bővítéseket, amelyeken keresztül a SCSI-lemezek ugyanígy tetszőlegesen átrendezhetőek, egészen hét meghajtóig.
Az ilyen lehetőségek használatához szokott felhasználókat azonban könnyen csalódás érheti, amikor a FreeBSD nem az elvárásaiknak megfelelően cselekszik. A FreeBSD ugyanis nem használja a BIOS-t és nem ismeri a „BIOS logikai meghajtókiosztását”. Ez meghökkentő eredményekre vezethet, főleg akkor, amikor paramétereiket tekintve a meghajtók fizikailag teljesen megegyeznek és ráadásul egymás másolatait tartalmazzák.
A FreeBSD telepítése előtt mindig állítsuk vissza a BIOS-ban a meghajtók eredeti sorrendjét, és a használatához hagyjuk is így ezt a beállítást. Ha valamiért mégis meg kellene cserélnünk a meghajtókat, akkor ezentúl válasszuk a nehezebb utat: nyissuk ki a gépházat és kössük át a kábeleket, tegyük át a jumpereket mi magunk.
Itt még semmilyen változtatás nem kerül lemezre. Ha úgy érezzük, hogy valamit rosszul csináltunk és újra el akarjuk kezdeni a telepítést, a menük segítségével büntetlenül távozhatunk a sysinstallból és újra próbálkozhatunk, vagy az U billentyű lenyomásával aktiválhatjuk az („Visszacsinál”) funkciót. Ha véletlenül összezavarodtunk volna és nem találunk kilépési lehetőséget, akkor bármikor ki tudjuk kapcsolni a számítógépet.
A sysinstallban a szabványos telepítés megkezdésekor az alábbi üzenet jelenik meg:
Az üzenet fordítása:
Az utasításnak megfelelően nyomjuk le az
Enter billentyűt. Ezután a
rendszermag által az eszközök
felkutatása során megtalált összes
merevlemezes meghajtót láthatjuk. A 2.14. ábra - A meghajtó kiválasztása az FDisk
számára egy két IDE-lemezzel
rendelkező rendszert mutat be, amelyeknek nevei rendre
ad0 és
ad2.
Feltűnhet, hogy itt nem szerepel az
ad1. Vajon miért maradt
ki?
Képzeljük el, mi történne, ha
két IDE-csatolós merevlemezünk lenne: az
egyik az első IDE-vezérlőn, a másik
pedig a második IDE-vezérlőn lenne master.
Ha a FreeBSD a megtalálásuk szerint
ad0 és
ad1 nevekkel számozná
ezeket, attól még minden remekül
működhetne.
Ha azonban beszerelnénk egy harmadik lemezt,
például egy slave eszközt kapcsolnánk az
első IDE-vezérlőre, akkor már ez lenne a
ad1, és ennek megfelelően a
korábban ad1
megnevezésű meghajtó pedig az
ad2. Mivel az
állományrendszerek felkutatására
általában az eszközneveket (mint amilyen a
ad1s1a) használják,
ezért ilyenkor azt tapasztalhatnánk, hogy bizonyos
állományrendszerek helytelenül jelennek meg,
ezért meg kell változtatnunk a FreeBSD ezeket
érintő beállításait.
A probléma megoldására a rendszermag
beállítható úgy, hogy az
IDE-lemezeket a kapcsolódásuk szerint
azonosítsa, ne pedig a megtalálásuk
sorrendje szerint. Ezzel a kialakítással a
második IDE-vezérlőn található
master lemez mindig az
ad2 eszköz lesz, tehát
még olyankor is, amikor egyáltalán nincs a
rendszerünkben ad0 vagy
ad1 eszköz.
Ez a beállítás
alapértelmezés a FreeBSD rendszermagjában,
és ez magyarázza, hogy az iménti
ábra miért csak ad0
és ad2 eszközöket
mutat. Tehát a képen szereplő
számítógép mind a két
IDE-vezérlőjének master
csatornáján található egy-egy
IDE-lemez, a slave csatornákon pedig nincs egy
sem.
Itt válasszuk ki azt a lemezt, amelyre a FreeBSD-t telepíteni kívánjuk, majd nyomjuk meg a gombot. Erre az 2.15. ábra - Átlagos Fdisk partíciók szerkesztés előtt által bemutatott képernyővel elindul az FDisk.
Az FDisk képernyője három részre osztható.
Az első részben, amely a képernyő felső két sorát foglalja össze, láthatjuk az éppen kiválasztott lemez adatait: a FreeBSD szerinti nevét, a paramétereit és az összméretét.
A második részben láthatjuk a lemezen
megtalálható slice-okat: hol kezdődnek
(Offset) és hol érnek véget (End);
mekkorák (Size); a FreeBSD milyen névvel hivatkozik
rájuk (Name); milyen leírás (Description)
és altípus (Subtype) tartozik hozzájuk. A
példában két kicsi üres slice-ot
láthatunk, ami a PC-k lemezkiosztására
jellemző. Ezenkívül felfedezhetünk egy
nagyobb méretű FAT
típusú slice-ot is, amely az MS-DOS® / Windows®
világban szinte minden bizonnyal a
C: betűjelet viseli, valamint egy
kiterjesztett slice-ot is, amely az MS-DOS® / Windows®
számára további meghajtókat is
tartalmazhat.
A harmadik részben az FDisk működtetésére használható parancsok láthatóak.
A most következő teendőink attól függenek, hogy miként is akarjuk felosztani a lemezünket.
Ha az egész lemezt a FreeBSD használatára
áldozzuk (és amikor majd
megerősítjük a
sysinstall számára a
továbblépést, a lemezen így minden
más adat törlődni fog), akkor nyomjuk le az
A billentyűt, amely megfelel a
(Az egész
lemez használata) menüpontnak. A létező
slice-ok eltávolításra kerülnek
és helyettük megjelenik egy
unused (üres) jelzésű kis
méretű terület (elvégre PC-ről
beszélünk), valamint egy nagyobb slice a FreeBSD
számára. Ha így jártunk el, akkor
válasszuk ki nyilakkal a frissen létrejött
FreeBSD slice-ot és az S billentyű
lenyomásával jelöljük be
indíthatónak (bootable). A képernyő
ekkor a 2.16. ábra - Particionálás az Fdisk „Using Entire
Disk” funkciójával által
mutatotthoz fog erősen hasonlítani. A
Flags (Beállítások)
oszlopban láthatjuk az A
jelzést, amelyből kiderül, hogy az adott slice
aktív, tehát róla tud
indulni a rendszer.
Ha a FreeBSD számára egy meglevő slice törlésével szeretnénk helyet csinálni, akkor ehhez válasszuk ki nyílbillentyűkkel a használni kivánt slice-ot és nyomjuk le a D billentyűt. Ezután nyomjuk le a C billentyűt is, amire felbukkan a létrehozandó slice méretét kérdező ablak. Adjuk meg a számunkra megfelelő méretet a számunkra megfelelő formában, majd zárjuk le az Enter lenyomásával. Az ablakban szereplő alapértelmezett érték a létrehozható lehető legnagyobb méretű slice-ot adja meg, ami vagy a legnagyobb összefüggő üres terület, vagy pedig az egész merevlemez összterülete lehet.
Ha már korábban készítettünk elő helyet a FreeBSD-nek (például egy PartitionMagic® vagy egy hozzá hasonló alkalmazás segítségével), akkor csak elegendő az új slice létrehozásához megnyomnunk a C billentyűt. Ekkor szintén megkérdezésre kerül a létrehozandó slice mérete.
Amikor befejeztük, nyomjuk le a Q billentyűt. Ekkor a sysinstall elmenti a beállított értékeket, azonban a lemezre ekkor még nem kerülnek ki.
Mindezek után lehetőségünk nyílik telepíteni egy rendszerválasztót (boot manager). Általában véve akkor van szükségünk a FreeBSD rendszerválasztójának telepítésére, ha:
Egynél több meghajtónk van, és közülük nem az első meghajtóra telepítjük a FreeBSD-t.
A FreeBSD-t ugyanazon a lemezen más operációs rendszerek mellé telepítjük, és szeretnénk választhatóvá tenni, hogy a számítógép indításakor a FreeBSD vagy a többi operációs rendszer induljon-e el.
Amennyiben a FreeBSD lesz az egyetlen operációs rendszer a gépünkön és az első merevlemezes meghajtóra telepítjük, akkor a (Szabványos) rendszerválasztó tökéletesen megteszi. Ha viszont a FreeBSD indításához egy másik rendszerválasztót szeretnénk használni, válasszuk a (Nincs) opciót.
Válasszunk, majd nyomjuk le az Enter billentyűt!
Az F1 billentyű lenyomásán keresztül elérhető súgóképernyőn olvashatunk az egy merevlemezen több operációs rendszer használatával kapcsolatos problémákról.
Ha egynél több meghajtónk van, a program a rendszerválasztó képernyője után ismét visszatér a meghajtók kiválasztásához. Amennyiben a FreeBSD-t egy másik meghajtóra is telepíteni szeretnénk, itt válasszuk ki azt és ismételjük meg vele az imént az FDisk programmal végzett felosztási folyamatot.
Amikor a FreeBSD-t nem az első meghajtóra telepítjük, akkor a FreeBSD rendszerválasztóját mind a két meghajtóra telepíteni kell.
A Tab billentyűvel tudunk váltani a legutoljára kiválasztott meghajtó, a és a gombok között.
Az gombra álláshoz nyomjuk le egyszer a Tabot, majd a telepítés folytatásához nyomjuk le az Enter billentyűt.
A következő lépésként
létre kell hoznunk partíciókat a frissen
létrehozott slice-okban. Ne felejtsük el, hogy
minden partíció rendelkezik egy
a-tól h-ig
terjedő betűjellel, amelyek közül a
b, c és
d jelzésűeknek külön
szerepe van, amire tekintettel kell lennünk.
Bizonyos alkalmazások kedvelnek egyes partíciókiosztási sémákat, különösen az egynél több lemezen elhelyezkedő partíciókat. Azonban az első FreeBSD telepítésünk során még nem annyira fontos koncentrálnunk a lemezünk hatékony felosztására. Sokkal inkább fontosabb, hogy először egyszerűen csak telepítsük a FreeBSD-t és tanuljuk meg a használatát. Amikor már jobban ismerni fogjuk az operációs rendszert, a partíciók kiosztásának megváltoztatásához mindig újra tudjuk telepíteni a FreeBSD-t.
Ebben a sémában négy partíció szerepel — egy a lapozóállománynak és három az állományrendszereknek.
| Partíció | Állományrendszer | Méret | Leírás |
|---|---|---|---|
a | / | 1 GB | Ez a rendszerindításhoz
használt, más néven a
gyökér állományrendszer (root
filesystem). Minden további
állományrendszer ehhez csatlakozik
valahol. Ennek az állományrendszernek
1 GB méret elfogadható, mivel nem
fogunk túlságosan sok adatot
tárolni rajta, a FreeBSD telepítője is
csak nagyjából 128 MB adatot fog ide tenni. Az
így fennmaradó lemezterület
felhasználható átmeneti adatok
tárolására, illetve a
/ könyvtárban helyet ad
a FreeBSD későbbi változatainak
terjeszkedéséhez is. |
b | - | RAM mérete x 2-3 |
A rendszer lapozóállománya a
Ha egynél több lemezünk van, mindegyikre rakhatunk lapozóállományt, ezzel a FreeBSD mindegyikőjüket fel tudja használni lapozásra, amivel pedig gyakorlatilag felgyorsítja a folyamatot. Ilyenkor számoljunk úgy, hogy először meghatározzuk a teljes lapozóállomány méretét (például 128 MB), majd ezt elosztjuk a rendelkezésünkre álló lemezek számával (például kettő). Ebből kiszámítható az egyes lemezeken elhelyezendő lapozóállomány mérete, ami most a példánk szerint 64 MB lesz. |
e | /var | 512 MB-tl 4096 MB-ig | A /var könyvtár
foglalja magában az állandó
változó
naplóállományokat, valamint a
többi, adminisztrációhoz
használt állományt. Ezek
többsége a FreeBSD mindennapos
működése közben folyamatosan
íródnak vagy olvasódnak. Ha ezeket
az állományokat egy külön
állományrendszerre rakjuk, akkor ezzel
segítünk a FreeBSD-nek optimalizálni az
ilyen állományok
elérését anélkül, hogy
ez hatással lenne a többi, más
hozzáférési gyakorisággal
bíró állományra. |
f | /usr | A lemez többi része (legalább 8 GB) | Az összes többi állomány
többnyire a /usr
könyvtárban és annak
alkönyvtáraiban helyezkedik el. |
Az imént megadott értékeket csak
példaként adtuk meg és csak a tapasztalt
felhasználók számára
ajánljuk. A többi felhasználónak
inkább a partíciók automatikus
kiosztását javasoljuk a FreeBSD
partíciószerkesztőjében
található Auto Defaults
opció használatával.
Ha a FreeBSD-t egynél több lemezre telepítjük, akkor a korábban megadott többi slice-ban is létre kell hoznunk partíciókat. Ezt legegyszerűbben úgy tehetjük meg, ha minden lemezen létrehozunk két partíciót: egyet a lapozóállománynak, egyet pedig az állományrendszernek.
| Partíció | Állományrendszer | Méret | Leírás |
|---|---|---|---|
b | - | Lásd a leírást | Ahogy már korábban is
említettük, szét tudjuk osztani a
lapozóállományt a lemezek
között. Habár az a
partíció szabad, a hagyományok
mégis azt diktálják, hogy a
lapozáshoz használt terület maradjon
a b partíción. |
e | /diskn | A lemez többi része | A lemez fennmaradó része egyetlen
nagy partícióval fedhető le. Ez az
e partíció helyett
lehetne minden további nélkül az
a partíció, azonban a
hagyományok szerint az a
partíciónak a rendszer gyökér
állományrendszerét
(/) kell tartalmaznia. Nekünk
ugyan nem kellene ezt a megszokást
követnünk, azonban a
sysinstall viszont így
tesz, ezért ezzel a választással
csak magunkkal teszünk jót. Az
állományrendszer bárhová
csatlakoztatható — ebben a
példában a lemezeket rendre a
/disk
könyvtárakhoz csatoltuk, ahol az
n az adott lemez
sorszáma. De itt természetesen más
rendszert is követhetünk. |
A partíciók elrendezésének kigondolása után most már létre is hozathatjuk ezeket a sysinstall segítségével. Ekkor a következő üzenetet fogjuk látni:
Az üzenet fordítása:
Nyomjuk le a Enter billentyűt a FreeBSD partíciószerkesztőjének, avagy a Disklabel elindításához.
A 2.19. ábra - A sysinstall Disklabel partíciószerkesztője mutatja a Disklabel első elindulásakor megjelenő képet. A képernyő három részre tagolható.
A felső pár sorban a jelenleg használt
lemez nevét láthatjuk, valamint azt a slice-ot,
ami az általunk létrehozott
partíciókat tartalmazza (itt a
Disklabel a Partition
name megnevezéssel hivatkozik a slice-ra). A
képernyőn továbbá láthatjuk a
slice-ban levő szabad helyet is, vagyis azt a helyet, amely
ugyan a slice-hoz tartozik, viszont még nem
rendeltünk hozzá partíciót.
A képernyő közepén találhatóak az eddig már létrehozott partíciók, az általuk tartalmazott állományrendszerek, azok mérete és az állományrendszerek létrehozására vonatkozó különböző beállítások.
A képernyő alsó harmadában a Disklabel programban használható billentyűk felsorolása szerepel.
A Disklabel képes magától partíciókat készíteni a nekik megfelelő alapértelmezett méretekkel. A partíciók automatikus méretét egy belső partícióméretező algoritmus számítja ki a lemez összmérete alapján. Próbáljuk most mi is ezt ki, és nyomjuk le az A billentyűt. Ekkor a 2.20. ábra - A sysinstall Disklabel partíciószerkesztője, alapértelmezett értékekkel szerint illusztráltaknak megfelelő képernyőt tapasztalhatunk. A használt lemez méretétől függően az alapértelmezett értékek megfelelőek lesznek vagy sem. Ez igazából nem számít, hiszen nem kell feltétlenül elfogadnunk az alapértelmezetten megállapított értékeket.
Az alapértelmezett
partícionálási sémában a
/tmp könyvtár nem a
/ könyvtár része
lesz, hanem saját partíciót kapott.
Ezzel igyekszünk elkerülni, hogy a
/ partíció
átmenetileg tárolt állományokkal
teljen be.
Ha nem az alapértelmezett partíciókat szeretnénk használni, és le akarjuk váltani ezeket a saját magunk által megadottakra, akkor a nyílbillentyűkkel válasszuk ki az első partíciót és a törléséhez nyomjuk meg a D billentyűt. Hasonlóan járjunk el az összes többi javasolt partíció törléséhez.
Az első (a, vagyis a
/ könyvtárként, azaz a
gyökérként csatolt) partíció
elkészítéséhez először
győződjünk arról, hogy a felső sorban
a megfelelő slice van kiválasztva, majd nyomjuk meg
a C billentyűt. Ekkor az új
partíció méretét kérdező
párbeszédablak jelenik meg (lásd: 2.21. ábra - Szabad hely a
gyökérpartíción). Itt a méret a lemez
blokkjainak számában adható meg, amit
viszont M-mel lezárva megabyte-ban,
G-vel gigabyte-ban vagy
C-vel cilinderben is
kifejezhetünk.
Az alapértelmezés szerint
felkínált méret az egész slice-ot
lefoglaló partíciót hoz létre.
Amennyiben a korábbi példában
tárgyalt partícióméreteket
kívánjuk használni, akkor a
Backspace billentyű
használatával töröljük ki az
így megadott értéket, és helyette
gépeljük be, hogy 512M, ahogy
ez a 2.22. ábra - A gyökérpartíció
méretének szerkesztése
segítségével is látható. A
bevitelt zárjuk a gomb
lenyomásával.
Miután meghatároztuk a partíció méretét, a telepítő megkérdezi, hogy a létrehozandó partícióban állományrendszer vagy lapozóállomány foglaljon-e helyet. Ennek a párbeszédablakját a 2.23. ábra - A gyökérpartíció típusának kiválasztása mutatja. Mivel az első partíciónk állományrendszert fog tartalmazni, ezért mindenképpen az paramétert válasszuk ki, majd nyomjuk meg az Enter billentyűt.
Végezetül, mivel egy
állományrendszert hoztunk létre, meg kell
mondanunk a Disklabelnek, hova
csatlakoztassa. A hozzá tartozó
párbeszédablak a 2.24. ábra - A gyökér csatlakozási pontjának
megadásan látható. A
gyökér állományrendszer
csatlakozási pontja a /,
ezért itt csak annyit adjunk meg, hogy
/ és zárjuk az
Enter billentyű
lenyomásával.
A képernyőn látható lista
ezután az újonnan létrehozott
partíciónak megfelelően frissül. A
többi partícióra ugyanígy meg kell
ismételnünk ezt a műveletsort. Arra azonban
figyeljünk, hogy a lapozásra használt
partíciót
létrehozásánál a szerkesztő nem
fogja megkérdezni a csatlakozási pontot, hiszen az
ilyen típusú partíciókat sosem
csatlakoztatjuk. A /usr, vagyis az
utolsó partíció
készítése során a slice
fennmaradó részének
lefoglalásához már nyugodtan meghagyhatjuk
a felajánlott értéket.
A FreeBSD partíciószerkesztőjének utolsó képernyője a 2.25. ábra - A Disklabel partíciószerkesztőn hasonlóhoz, habár az általunk választott értékek minden bizonnyal eltérnek. A művelet befejezéséhez nyomjuk le a Q billentyűt.
A telepítendő terjesztések típusa nagyban függ attól, hogy a rendszerünket mire szándékozzuk majd használni és mennyi szabad hely áll rendelkezésünkre. Az előre megadott beállítások a lehető legkisebb konfiguráció telepítésétől egészen a komplett rendszer telepítéséig terjednek. A UNIX® és/vagy FreeBSD világában még az új felhasználók számára szinte tökéletesen megfelelőnek bizonyulhat az egyik ilyen előkészített beállítás kiválasztása. A terjesztések kiválogatása pedig általában a tapasztaltabb felhasználók számára lehet hasznos.
Az F1 billentyűvel többet is megtudhatunk a terjesztések különböző típusairól és bennük található összetevőkről. Miután befejeztük a súgó áttanulmányozását, nyomjuk le az Enter billentyűt, és ezzel visszatérünk a terjesztések kiválasztását tartalmazó menübe.
Ha grafikus felületet szeretnénk használni, akkor az X szerver beállítását az alapértelmezett munkakörnyezet beállítását a FreeBSD telepítése után kell megtenni. Az X szerver beállításáról részletesebben a 5. fejezet - Az X Window Systemban olvashatunk.
Ha egy saját rendszermag építését is fontolgatjuk, akkor olyan terjesztést válasszuk, amiben a forráskód (kernel source) is megtalálható. A saját rendszermag építésének hátteréről és mikéntjéről lásd a 8. fejezet - A FreeBSD rendszermag testreszabásaet.
Értelemszerűen a legsokoldalúbb rendszer az, amiben minden megtalálató. Így aztán, ha a lemezünk is megengedi, a nyilak és az Enter használatával válasszuk a (Minden) opciót, ahogy azt az 2.26. ábra - A terjesztések kiválasztása is mutatja. Ha viszont úgy érezzük, hogy ehhez nem eléggé nagy a lemezünk, akkor válasszuk az igényeinkhez jobban illeszkedő típust. Sokat azonban ne üljünk a tökéletes megoldás kiötlésén, hiszen ezek a terjesztések még a telepítés befejezése után is hozzáadhatóak a rendszerünkhöz.
Miután kiválasztottuk a nekünk megfelelő terjesztést, a telepítőprogram felajánlja a FreeBSD Portgyűjteményének (Ports Collection) telepítésének lehetőségét. A portok gyűjteménye a szoftverek telepítésének egyszerű és kényelmes módja. A Portgyűjtemény önmaga nem tartalmazza a szoftverek lefordításához szükséges forráskódot, hanem helyette csupán azokat az állományokat, amelyek a különböző külsős programok letöltéséhez, fordításához és telepítéséhez kellenek. A 4. fejezet - Alkalmazások telepítése: csomagok és portokben megtalálhatjuk, miként is kell használni ezt a gyűjteményt.
A telepítőprogram nem fogja ellenőrizni a kibontásához szükséges helyet, ezért csak abban az esetben válasszuk ezt a lehetőséget, ha mindenképpen elfér a merevlemezünkön. A FreeBSD jelenlegi, 8.1 változatában a Portgyűjtemény nagyjából 417 MB helyet foglal el a lemezen. A FreeBSD frissebb verzióiban nyugodtan feltételezhetünk ennél valamivel nagyobb értéket is.
Az üzenet fordítása:
A Portgyűjtemény telepítéséhez a gombot, ennek kihagyásához pedig a gombot válasszuk ki a nyilakkal, majd az Enter lenyomásával mehetünk tovább. Ekkor a kiválasztott terjesztések menüje fog újra megjelenni.
Ha elégedettek vagyunk a beállításokkal, válasszuk ki a nyilakkal az menüpontot, győződjünk meg róla, hogy a gombon állunk, majd nyomjuk le az Enter billentyűt a folytatáshoz.
Ha CD-ről vagy DVD-ről telepítünk, akkor a következő képernyőn a nyílbillentyűkkel válasszuk ki a (Telepítés CD-ről vagy DVD-ről) menüpontot. Ügyeljünk a gomb kiválasztására is, majd a telepítés megkezdéséhez nyomjuk meg az Enter billenyűt.
A telepítés másfajta módszereinek alkalmazásához válasszuk ki a menüpontok közül a nekünk megfelelőt és kövessük a megjelenő utasításokat.
Az F1 billentyű lenyomására megjelenik az adott telepítőeszközhöz tartozó súgó. Innen az Enter lenyomása után térhetünk vissza a menühöz.
Három FTP-s telepítési mód közül választhatunk: aktív, passzív vagy HTTP proxyn keresztül.
Ezzel a beállítással az összes FTP-n keresztüli átvitel „aktív” módban történik. Ez tűzfalak esetén nem működik, de gyakran alkalmazható olyan régebbi FTP szerverek esetén, amelyek nem ismerik az passzív adatátvitelt. Ha (az alapértelmezett) passzív módban megakadna a kapcsolat, próbáljunk meg helyette az aktívat.
Ezzel a beállítással a sysinstall programot az FTP művelet végrehajtásakor a „passzív” mód használatára utasítjuk. Így át tudunk menni olyan tűzfalakon is, amelyek nem engedik a véletlenszerű TCP portokon érkező kapcsolatokat.
Ezzel a beállítással megmondhatjuk a sysinstall programnak, hogy (egy böngészőhöz hasonlóan) a HTTP protokollon keresztül használja az FTP műveletek elvégzéséhez használt proxyt. Ennek a proxynak lesz a feladata az átadott kérések lefordítása és elküldése az FTP szervernek. Ennek köszönhetően át tudunk menni olyan tűzfalakon is, amelyek egyáltalán nem engednek semmilyen FTP műveletet, azonban tartozik hozzájuk egy HTTP proxy. Ilyenkor az FTP szerver beállításai mellett meg kell adnunk ezt a HTTP proxyt is.
Az FTP szervert proxyn keresztül
általában úgy érjük el, hogy a
felhasználói név részeként
egy „@” jellel elválasztva megadjuk a
ténylegesen elérni kívánt szerver
nevét. A proxy szerver ezután
„helyettesíti” a valódi szervert.
Például tegyük fel, hogy a ftp.FreeBSD.org szerverről akarunk
telepíteni az 1234 porton várakozó ize.minta.com proxy
használatával.
Ehhez lépjünk be a
beállításokat tartalmazó
menübe, állítsuk az FTP kapcsolathoz
használt felhasználói nevet az
ftp@ftp.FreeBSD.org értékre,
majd jelszónak adjuk meg az e-mail címünket.
Telepítési eszközként adjuk meg az
FTP-t (vagy a passzív FTP-t, amennyiben a proxy ismeri)
és a
ftp://ize.minta.com:1234/pub/FreeBSD
címet.
Mivel az ftp.FreeBSD.org
címről származó
/pub/FreeBSD könyvtár a ize.minta.com szerveren keresztül
érhető el számunkra, ezért
lényegében arról a
gépről fogunk telepíteni (amely pedig a
telepítő kéréseire elhozza a ftp.FreeBSD.org szervertől az
állományokat).
Ezután ha óhajtjuk, megkezdhetjük a telepítést. Ez egyben az utolsó lehetőségünk a telepítés megszakítására és merevlemezünket érintő változtatások érvénytelenítésére.
Az üzenet fordítása:
A továbblépéshez válasszuk a gombot és nyomjuk meg az Enter billentyűt.
A telepítés időtartama a kiválasztott terjesztéstől, a telepítésre használt eszköztől és számítógépünk sebességétől függ. A folyamat előrehaladásáról üzenetek sorozata tájékoztat minket.
A telepítés befejezése után a következő üzenet jelenik meg:
A szöveg fordítása:
Az Enter billentyű lenyomásával megkezdhetjük a telepítés utáni beállításokat.
A gomb kiválasztásával és az Enter lenyomásával megszakíthatjuk a telepítést, így a rendszerünkön semmilyen változtatás nem történik. Ilyenkor a következő üzenet jelenik meg:
Az üzenet fordítása:
Ez az üzenet azért jelent meg, mert semmit sem sikerült telepíteni. Innen az Enter megnyomásával térhetünk vissza a főmenübe, majd onnan tudunk kilépni a telepítőből.
A sikeres telepítést különféle
beállítások követik.
Közülük az új FreeBSD rendszer
indítása előtt bármelyik
megismételhető a beállítások
opcióit tartalmazó menü újbóli
használatával, vagy pedig a telepítés
után a sysinstall parancs
kiadásával, majd a
(Beállítások) menüpont
kiválasztásával.
A következő képernyő már nem jelenik meg, ha az FTP szerveren keresztüli telepítéshez korábban már beállítottuk a PPP kapcsolatot. Ez a korábbiakban említettek szerint állítható be.
Ha többet szeretnénk megtudni a helyi hálózatokról (LAN), vagy a FreeBSD-t átjáróként, illetve útválasztóként kívánjuk beállítani, olvassuk el az Egyéb haladó hálózati témák című fejezetet.
Fordítása:
A hálózati eszközeink beállításához válasszuk a gombot, majd nyomjuk meg az Enter billentyűt. Ellenkező esetben a gombbal mehetünk tovább.
A beállítandó csatoló kiválasztásához használjuk a nyílbillentyűket és utána nyomjuk meg az Enter billentyűt.
Fordítás:
A példánkban szereplő helyi hálózatban az aktuális internetes protokoll (IPv4) egyelőre megfelelő, ezért válasszuk a gombot és nyomjuk meg az Enter billentyűt.
Amennyiben RA-szerveren keresztül egy már létező IPv6 hálózathoz csatlakozunk, akkor válasszuk a gombot és nyomjuk meg az Enter billentyűt. Ezt követően az RA-szerverek felderítése kezdődik meg, ami néhány másodpercig eltarthat.
Az üzenet fordítása:
Ha nincs szükségünk a DHCP (Dynamic Host Configuration Protocol, azaz a Dinamikus állomáskonfigurációs protokoll) használatára, akkor a gomb kiválasztásával majd az Enter lenyomásával továbbléphetünk.
A gomb kiválasztására elindul a dhclient nevű program, és amennyiben sikerrel jár, magától kitölti a hálózati beállításokra vonatkozó adatokat. Ennek részleteit a 29.5. szakasz - A hálózat automatikus beállítása (DHCP)ben találhatjuk meg.
Az alábbi hálózati beállító képernyő mutatja a helyi hálózat átjárójaként használni kívánt Ethernet-eszköz konfigurációját.
A Tab billentyűvel tudunk navigálni az adatlap mezői között és kitölteni ezeket a megfelelő információkkal:
A számítógépünk
teljes neve, amely a példában most k6-2.example.com.
Annak a tartománynak a neve, amelyben a
számítógépünk a
található. Ez itt konkrétan a
example.com.
A helyben nem elérhető célok megközelítésére használt gép IP-címe. Ezt a mezőt mindenképpen töltsük ki akkor, ha a számítógépünk valamilyen hálózatba van kötve. Azonban hagyjuk üresen, ha a számítógép a hálózat átjárója az internet felé. Az IPv4 átjárót más néven „default gateway”-nek (alapértelmezett átjárónak) vagy „default route”-nak (alapértelmezett útvonalnak) is nevezik.
A helyi DNS (névfeloldó) szerverünk
IP-címe. Ha nem található ilyen a
helyi hálózatunkon, akkor az
internet-szolgáltató DNS szerverének
címét (a példában ez a 208.163.10.2) adjuk meg.
A csatoló IP-címe, amely az
ábrán a 192.168.0.1.
A helyi hálózatban használt
címtartomány a 192.168.0.0 - 192.168.0.255, amihez a 255.255.255.0
hálózati maszk tartozik.
Az ifconfig parancs adott
csatolóra vonatkozó egyéb
beállításai. Jelen esetünkben
itt semmi sem szerepel.
Miután végeztünk, a Tab billentyű lenyomásával válasszuk ki a gombot és nyomjuk le az Enter billentyűt.
A fordítás:
A gomb kiválasztásával, majd az Enter lenyomásával csatlakoztatjuk a számítógépet a hálózathoz, ami ezután használhatóvá válik. Ez azonban a telepítés számára nem jelent túlságosan sokat, hiszen ettől függetlenül a számítógépet egyébként is újra kell majd indítanunk.
A fordítás:
Ha a számítógépet a helyi hálózat átjárójaként használni akarjuk gépek közti csomagok továbbítására, akkor válasszuk a gombot és nyomjuk meg hozzá az Enter billentyűt. Ha viszont ez a gép csupán a hálózat egy tagja, akkor válasszuk a gombot és a folytatáshoz nyomjuk meg az Enter billentyűt.
Fordítás:
Ha itt a gombot választjuk, akkor ezzel kikapcsoljuk a különböző szolgáltatásokat, például a telnetd démont. Ez azt jelenti, hogy a távoli felhasználók nem lesznek képesek a telnet program használatával belépni erre a számítógépre. A helyi felhasználók viszont továbbra is képesek lesznek távoli számítógépeket elérni a telnet segítségével.
Az /etc/inetd.conf
átírásával azonban ezek a
szolgáltatások később
természetesen engedélyezhetőek. A 29.2.1. szakasz - Áttekintés foglalkozik a téma
részleteivel.
A gomb választásával már a telepítés során beállíthatjuk a szolgáltatásokat. Ekkor egy további párbeszédablak is felbukkan:
Fordítása:
A folytatáshoz válasszuk a gombot.
Fordítás:
A gomb kiválasztásával
lehetőségünk nyílik
szolgáltatásokat engedélyezni a sorok
elején található # jel
törlésével.
Miután felvettük az összes használni kívánt szolgáltatást, az Esc billentyű lenyomásával előhozhatjuk azt a menüt, ahol elmenthetjük a módosításainkat és kiléphetünk.
Fordítás:
A gomb kiválasztása engedélyezi az OpenSSH-hoz tartozó sshd(8) démont, aminek segítségével a számítógépünkre biztonságosan be tudunk jelentkezni távolról. Az OpenSSH részleteiről lásd a 14.11. szakasz - OpenSSHt.
Fordítás:
Az alapértelmezett gomb kiválasztásával és az Enter billentyű lenyomásával a jelszóval védett FTP hozzáféréssel rendelkező felhasználók továbbra is elérhetik a számítógépünket.
Ha ezt választjuk, akkor anonim FTP kapcsolaton keresztül bárki hozzáférhet a számítógépünkhöz. Ebben az esetben azonban alaposan meg kell fontolnunk néhány biztonsági következményt. A beállítással járó kockázatokról az 14. fejezet - Biztonságben olvashatunk többet.
Az anonim FTP bekapcsolásához a nyílbillentyűkkel válasszuk ki a feliratú gombot és nyomjuk meg az Enter billentyűt. Ekkor egy további párbeszédablak is megjelenik:
Az üzenet fordítása:
Az üzenet értesít minket arról,
hogy az anonim FTP kapcsolatok
engedélyezéséhez az FTP
szolgáltatást az
/etc/inetd.conf állományban
is be kell majd kapcsolni, lásd 2.10.3. szakasz - A hálózati szolgáltatások
beállítása. Válasszuk a
gombot és a folytatáshoz nyomjuk meg az
Enter billentyűt. Ekkor a
következő képernyő jön
elő:
A beállítások kitöltése során a Tab billentyűvel mozoghatunk az adatmezők között:
A névtelen FTP felhasználókhoz társított felhasználói azonosító. A feltöltött állomány tulajdonosa ez az azonosító lesz.
A névtelen FTP felhasználók csoportja.
Ez a szöveg szerepel a
felhasználónál az
/etc/passwd
állományban.
Itt találhatóak az anonim FTP-n keresztül elérhető állományok.
A névtelen FTP felhasználók által feltöltött állományok ide kerülnek.
Az FTP gyökere alapból a
/var könyvtár lesz. Ha a
becsült FTP-forgalom
lebonyolításához itt nem
rendelkezünk elegendő hellyel, akkor az
/usr könyvtárban
található /usr/ftp
alkönyvtár is beállítható az
FTP gyökerének.
Ha elfogadhatónak találjuk az értékeket, nyomjuk le az Enter billentyűt a folytatáshoz.
Fordítás:
A választásával és az Enter megnyomásával az üzenet szerkesztéséhez egy szövegszerkesztő fog elindulni.
Ez az ee szövegszerkesztő.
Az üzenet átírásához
használjuk a megadott utasításokat, de
akár később is módosíthatjuk
ezt a kedvenc szövegszerkesztőnkkel. Ehhez a
módosítandó állomány neve
és helye a szerkesztő
képernyőjének alján
olvasható.
A kilépéshez az Esc lenyomására felbukkanó menüben alapból az (kilépés a szerkesztőből) menüpont érhető el, ezért itt az Enter lenyomásával léphetünk tovább. Az Enter ismételt lenyomásával elmenthetjük a módosításainkat.
A hálózati állományrendszer (Network File System, NFS) állományok közzétételét teszi lehetővé hálózaton keresztül. Használata során egy számítógép beállítható szervernek, kliensnek vagy akár mindkettőnek. Ezzel kapcsolatban a 29.3. szakasz - A hálózati állományrendszer (NFS) ajánlott elolvasásra.
A fordítása:
Ha nincs szükségünk a hálózati állományrendszer szerver részére, akkor válasszuk a gombot és nyomjuk le az Enter billentyűt.
Amennyiben a gombot választjuk, egy
üzenet fogja közölni velünk, hogy
létre kell hoznunk az exports
állományt.
Az üzenet fordítása:
Az Enter billentyű
lenyomásával továbbléphetünk.
Ekkor az exports állomány
létrehozására és
szerkesztésére egy szövegszerkesztő
indul el.
A exportálni kívánt állományrendszerek felsorolásához használjuk képernyőn a megadott utasításokat, vagy tegyük meg ezt később az általunk választott szövegszerkesztő segítségével. Ilyenkor ne felejtsük el megjegyezni az állomány képernyő alján látható nevét és helyét.
Amikor végeztünk, az Esc billentyűvel felhozható menüben alapból az (kilépés a szövegszerkesztőből) menüpont aktív, ezért itt a folytatáshoz egyszerűen nyomjuk le az Enter billentyűt.
Az NFS kliens beállításával NFS szerverekhez tudunk hozzáférni.
Fordítás:
A nyílbillentyűkkel igényeinknek megfelelően válasszuk a vagy gombokat és utána nyomjuk meg az Enter billentyűt.
Számos beállítás kapcsolódik a rendszerben található konzolok testreszabásához.
Fordítás:
A beállítások megtekintéséhez és megváltoztatásához válasszuk a gombot és nyomjuk le az Enter billentyűt.
A képernyőkímélő beállítása egy gyakori opció. A nyilak használatával álljunk a menüpontra, majd nyomjuk le az Enter billentyűt.
A nyilakkal válasszuk ki a használni kívánt képernyőkímélőt és nyomjuk meg hozzá az Enter billentyűt. Ekkor a rendszerkonzol beállításait tartalmazó menü jelenik meg ismét.
Az aktivizálódás ideje alapbeállítás szerint 300 másodperc. Ennek megváltoztatásához válasszuk ismét a menüpontot. A képernyőkímélő beállításait tartalmazó menüben a nyílbillentyűkkel válasszuk a (Időkorlát) menüpontot és nyomjuk meg az Enter billentyűt. Ekkor egy párbeszédablak jelenik meg:
Miután megváltoztattuk az értéket, a rendszerkonzol beállításához a gomb kiválasztásával, majd az Enter billentyű lenyomásával térhetünk vissza.
A (Kilépés) választásával és az Enter lenyomásával folytathatjuk tovább a telepítés utólagos beállításait.
Ha kiválasztjuk számítógépünk számára a megfelelő időzónát, akkor lehetővé tesszük, hogy magától elvégezze a helyi időhöz kapcsolódó összes szükséges korrekciót és helyesen kezelje az időzónákhoz kapcsolódó többi funkciót.
A példában az Egyesült Államok keleti időzónájában elhelyezkedő számítógépet láthatunk. A mi beállításaink természetesen a saját földrajzi helyzetünktől függenek.
Fordítás:
A gomb és az Enter billentyű segítségével kiválaszthatjuk az időzóna beállítását.
Fordítás:
A számítógépünk órájának beállításának megfelelően válasszuk a vagy gombot, és nyomjuk meg az Enter billentyűt.
A nyilakkal kiválasztható a megfelelő térség, amit aztán az Enter billentyűvel tudunk lezárni.
A megfelelő ország a nyílbillentyűkkel, valamint az Enter billentyűvel választható ki.
A nekünk megfelelő időzóna a nyilakkal választható meg, amit ezután az Enter billentyűvel tudunk jóváhagyni.
Az üzenet fordítása:
Erősítsük meg, hogy az időzóna helyes-e. Ha rendbenlevőnek látszik, nyomjuk meg az Enter billentyűt a folytatáshoz.
Ez a rész csak a
FreeBSD 7.X
telepítésére vonatkozik,
FreeBSD 8.X esetén ez a
képernyő nem jelenik meg.
A fordítás:
A gomb kiválasztásával és az Enter lenyomásával megengedjük, hogy a Linuxra készült szoftvereket futtassunk FreeBSD-n. A telepítő ennek biztosításához még további csomagokat is fel fog rakni.
Ha FTP-n keresztül telepítünk, akkor a számítógépnek csatlakoznia kell az internetre. Ilyenkor előfordulhat, hogy az FTP szerveren nem találhatóak meg a Linux® kompatibilitással kapcsolatos csomagok. Ezeket azonban később is telepíthetjük.
Ezen beállítás használatával egy háromgombos egérrel lehetőségünk adódik a konzol és a felhasználói programok között kivágni és bemásolni szövegeket. Kétgombos egér használata esetén nézzük meg a moused(8) man oldalán, miként tudjuk emulálni a háromgombos működést. A következő példa egy nem USB-s (tehát PS/2-es vagy soros portra csatlakozó) egér beállítását illusztrálja:
Fordítás:
A PS/2, soros vagy buszos egér használatához válasszuk a gombot, illetve az USB-s egérhez pedig a gombot, majd nyomjuk meg az Enter billentyűt.
A nyílbillentyűk használatával keressük ki a (Típus) menüpontot és nyomjuk le az Enter billentyűt.
A példában használt egér típusa PS/2, ezért itt a alapértelmezés szerint felkínált megfelelő. A protokoll megváltoztatásához a nyilakkal válasszunk ki egy másikat. Ezután gondoskodjunk róla, hogy az gombot választottuk ki és a kilépéshez nyomjuk meg az Enter billentyűt.
A nyílbillentyűkkel válasszuk ki a menüpontot és nyomjuk meg az Enter billentyűt.
Mivel a példában szereplő rendszerhez egy PS/2 egér csatlakozik, ezért az alapértelmezett menüpont megfelelőnek tűnik. A port megváltoztatásához használjuk a nyilakat, majd nyomjuk le az Enter billentyűt.
Befejezésül a egérhez tartozó démon aktiválásához és kipróbálásához válasszuk ki a nyilakkal az (Engedélyezés) menüpontot.
Próbáljuk mozgatni a képernyőn megjelenő egérkurzort, és ellenőrizzük, hogy a kurzor a mozdulatainknak megfelelően reagál-e. Ha mindent rendben találunk, akkor válasszuk a gombot és nyomjuk le az Enter billentyűt. Ellenkező esetben az egeret nem jól állítottuk be — válasszuk a gombot és kísérletezzünk tovább más beállításokkal.
Az utólagos beállítások folytatásához válasszuk először az (Kilépés) menüpontot, majd nyomjuk meg az Enter billentyűt.
A csomagok előre lefordított binárisokat tartalmaznak, és használatukkal igen kényelmesen tudunk szoftvereket telepíteni.
Szemléltetés céljából
most bemutatjuk az egyik ilyen csomag
telepítését. Természetesen
igény szerint más csomagokat is
hozzávehetünk. A telepítés
után a sysinstall parancs
használható további csomagok
telepítésére.
Az üzenet fordítása:
A kiválasztása és az Enter lenyomása után a csomagválasztó képernyő következik:
Ekkor csak az adott telepítőeszközön elérhető csomagok fognak megjelenni.
Az összes csomagot az (Mind) menüpont kiválasztásával láthatjuk, vagy leszűkíthetjük ezt egy adott kategóriára is. Álljunk a kiválasztott kategóriához tartozó menüpontra és nyomjuk meg az Enter billentyűt.
Ezután egy menü fogja felsorolni az adott kategórián belül telepíthető csomagokat:
A példában a bash parancsértelmezőt választottuk ki. Válogassunk kedvünkre a csomagok között, és álljunk a telepíteni kívántakra, majd a Szóköz billentyű lenyomásával jelöljük be ezeket. Minden egyes csomag rövid leírása a képernyő bal alsó sarkában olvasható.
A Tab billentyű segítségével mozoghatunk az utoljára kiválasztott csomag, az és gombok között.
Miután bejelöltük az összes telepítésre szánt csomagot, a csomagválasztó menübe úgy tudunk visszatérni, ha a Tab billentyűvel átváltunk az gombra és nyomjuk meg az Enter billentyűt.
Ezeken felül a bal és jobb nyilak használhatóak az és gombok közti váltásra. Ugyanezzel a módszerrel választható ki az gomb is, ami után az Enter billentyű megnyomásával visszajutunk a csomagválasztó menübe.
A nyilakkal és a Tab billentyűvel válasszuk ki az (Telepítés) gombot és nyomjuk meg az Enter billentyűt. Ekkor meg kell erősítenünk a csomagok telepítését:
Az kiválasztása majd az Enter billentyű lenyomása indítja el a csomagok telepítését. A telepítés befejezéséig különböző üzenetek fognak megjelenni. Figyeljünk az ilyenkor felbukkanó hibaüzenetekre!
A beállítások véglegesítése a csomagok telepítése után folytatódik. Amennyiben egyetlen csomagot sem választottunk és szeretnénk továbblépni, akkor is az (Telepítés) gombot válasszuk.
A telepítés során legalább egy
felhasználót érdemes hozzáadnunk a
rendszerhez, mivel a rendszer használatához
így nem kell root
felhasználóként bejelentkezni.
Általánosságban véve ahhoz
egyébként is kicsi a
gyökérpartíció, hogy
root felhasználóként
(rendszeradminisztrátorként) futtassunk rajta
programokat, és gyorsan be is telik. A nagyobb
veszélyt azonban itt olvashatjuk:
Ezért válasszuk a gombot és az Enter billentyű lenyomásával lépjünk tovább a felhasználók felvételéhez.
A nyílbillentyűkkel válasszuk ki a (Felhasználó) menüpontot és nyomjuk meg az Enter billentyűt.
Amikor a Tab billentyűvel lépkedünk a kitöltendő mezők között, a képernyő alsó részén az alábbi leírások magyarázzák az egyes mezők tartalmát:
Az új felhasználó bejelentkezési neve (kötelező).
A felhasználó számszerű azonosítója (automatikusan létrejön, ha üresen hagyjuk).
A felhasználó bejelentkezési csoportjának neve (automatikusan létrejön, ha üresen hagyjuk).
A felhasználó jelszava (óvatosan bánjunk ezzel a mezővel!)
A felhasználó teljes neve (megjegyzés).
A felhasználó ezen csoportoknak is tagja (tehát rendelkezik az engedélyeikkel).
A felhasználó saját könyvtára (ha üresen hagyjuk, az alapértelmezés szerint töltődik ki).
A felhasználó által
használt parancsértelmező (ha
üresen hagyjuk, az alapértelmezés
szerint töltődik, mint például
/bin/sh).
Az ábrán a bejelentkezés után
használt parancsértelmezőt a
/bin/sh
parancsértelmezőről a
/usr/local/bin/bash
parancsértelmezőre változtattuk, így
most a korábban telepített
bash parancsértelmezőt
fogjuk használni. Itt ne is próbáljunk nem
létező parancsértelmezőt
kiválasztani, hiszen ekkor nem tudunk majd bejelentkezni.
A BSD világban egyébként a C shell a
leggyakrabban használt, amelyet a
/bin/tcsh megadásával
választhatjuk ki.
Az ábrán szereplő
felhasználót ezenkívül még a
wheel csoportba is felvettük, aminek
köszönhetően képes lesz a
rendszerünkben a root
felhasználói jogaival rendelkező
rendszeradminisztrátorrá válni.
Amikor mindent megfelelőnek találunk, nyomjunk az gombra és ekkor ismét a felhasználók és csoportok karbantartását tartalmazó menü jelenik meg:
Csoportokat is létre tudunk hozni, amennyiben erre
szükségünk lenne. Ez a rész a
telepítés befejezése után
továbbra is elérhető a
sysinstall parancs
segítségével.
Amikor befejeztük a felhasználók hozzáadását, a nyilakkal válasszuk ki az (Kilépés) menüpontot és a telepítés folytatásához nyomjuk meg az Enter billentyűt.
Fordítása:
A root felhasználó
jelszavának beállításához
nyomjuk meg az Enter billentyűt.
A jelszót kétszer kell megadnunk. Felesleges megemlíteni, hogy gondoskodjunk arról az esetről is, ha véletlenül elfelejtenénk ezt a jelszót. Megemlítjük, hogy az itt begépelt jelszó nem lesz látható és a betűk helyett sem jelennek meg csillagok.
A jelszó sikeres megadása után a telepítés folytatódik.
Ha be szeretnénk még állítani
egyéb
hálózati szolgáltatást vagy
valamilyen más konfigurációs
lépést kívánunk még
elvégezni, ezen a ponton megtehetjük vagy a
telepítés után a
sysinstall parancs
kiadásával.
Fordítás:
Ha a nyilakkal a gombot választjuk, majd megnyomjuk rajta az Enter billentyűt, akkor visszatérünk a telepítő főmenüjébe.
Válasszuk ki a nyílbillentyűkkel a (Kilépés a telepítőből) gombot és nyomjuk meg az Enter billentyűt. Ezután meg kell erősítenünk kilépési szándékunkat:
Fordítás:
Válasszuk a gombot. Ha CD-meghajtóról indítottuk a telepítést, akkor a következő üzenet fog figyelmeztetni minket a lemez kivételére:
Fordítás:
A CD-meghajtó egészen az újraindítás megkezdéséig zárolt lesz, ezért csak ekkor tudjuk (gyorsan) kivenni a meghajtóból a lemezt. Nyomjuk meg az gombot az újraindításhoz.
A rendszer újraindul, legyünk résen és figyeljük a megjelenő hibaüzeneteket, erről bővebben lásd a 2.10.16. szakasz - A FreeBSD indulásaban.
A hálózati szolgáltatások terén csekély tapasztalattal rendelkező kezdő felhasználók számára ijesztő lehet ezek beállítása. A hálózatok és többek közt az internet kezelése napjaink modern operációs rendszereink, így a FreeBSD-nek is az egyik fontos területe. Ezért nagyon hasznos ismernünk valamennyire a FreeBSD által felkínált hálózati lehetőségeket. A telepítés közben ezért a felhasználónak tisztában kell lennie a rendelkezésére álló szolgáltatásokkal.
A hálózati szolgáltatások olyan
programok, amelyek a hálózat minden
részéről fogadnak adatokat. Mindent el kell
követnünk annak érdekében, hogy ezek a
programok ne tehessenek semmilyen „kárt”.
Sajnos a programozók sem tökéletesek,
és az idők során már előfordult
párszor, hogy a hálózati
szolgáltatásokban maradtak hibák, amelyek
kihasználásával a támadók
rossz dolgokat tudtak csinálni. Ezért fontos,
hogy csak is azokat a szolgáltatásokat
engedélyezzük, amelyekre ténylegesen
szükségünk van. Ha nem tudjuk eldönteni,
akkor az a legjobb, ha egészen addig egyiket sem
engedélyezzük, amíg valóban
szükségünk nem lesz rájuk. A
sysinstall újbóli
elindításával vagy az
/etc/rc.conf megfelelő
beállításával mindig tudunk
új szolgáltatásokat
aktiválni.
A (Hálózatok) menüpont kiválasztása után valami ilyesmit láthatunk:
Ezek közül a (Csatolók), vagyis az első menüpontról korábban már szó esett a 2.10.1. szakasz - A hálózati eszközök beállításaban, ezért ez most nyugodtan kihagyható.
Az menüpont kiválasztásával engedélyezzük a BSD automatikus csatlakoztatásokért felelős segédeszközét (AMD, az AutoMounter Daemon). Ezt általában az NFS protokollal (lásd lentebb) együtt szokás használni a távoli állományrendszerek automatikus csatlakoztatásához. Itt nincs szükség semmilyen különleges beállításra.
A következő sorban az (Az AMD beállításai) menüpont szerepel. Kiválasztása után az AMD beállításait bekérő ablak fog felbukkani. Ez már számos alapértelmezett beállítást tartalmaz:
A -a kapcsolóval adjuk meg a
csatlakozási pontok alapértelmezett helyét,
amely ebben az esetben az /.amd_mnt. A
-l kapcsolóval adjuk meg az
alapértelmezett log (napló)
állományt, habár a
syslogd használata során az
összes naplózási tevékenység a
rendszer naplózó démonján fut majd
keresztül. A /host
könyvtárba fognak csatlakozni a távoli
gépek exportált állományrendszerei,
míg a /net
könyvtárba a különböző
IP-címekről exportált
állományrendszerek kerülnek
csatlakoztatásra. Az /etc/amd.map
állomány tartalmazza az AMD
exportjainak alapértelmezett
beállításait.
Az menüponton keresztül engedélyezhetjük az anonim FTP kapcsolatokat. A menüpont kiválasztásával számítógépünket egy anonim FTP szerverré tehetjük, azonban legyünk tekintettel a beállításhoz tartozó biztonsági veszélyekre! A kiválasztásakor egy ablak tájékoztat minket a beállítás részleteiről és felmerülő biztonsági kockázatokról.
A (Átjáró) menüpont használatával a korábbiakban tárgyaltak szerint állíthatjuk be számítógépünket hálózati átjárónak. Ugyanekkor a menüben nyílik lehetőségük kikapcsolni ezt a beállítást, amennyiben a telepítési folyamat korábbi lépései során véletlenül engedélyeztük volna.
Az menüpont segítségével beállíthatjuk, vagy akár teljesen ki is kapcsolhatjuk a korábban tárgyalt inetd(8) démont.
A (Levelezés) menüpontban beállíthatjuk a rendszer alapértelmezett MTA avagy levéltovábbító ügynökét (Mail Transfer Agent). Ennek hatására a következő menü jelenik meg:
Itt válaszhatunk, hogy a különböző levélküldő rendszerek közül melyiket telepítsük alapértelmezettként. Egy ilyen alkalmazás lényegében nem több, mint egy levélküldésre használt szerver, amely továbbítja a rendszerben vagy az interneten található felhasználók számára a leveleket.
A választásával a FreeBSD alapból felkínált megoldását, a népszerű sendmail szervert telepíthetjük. A (Helyi Sendmail) menüpont kiválasztásával szintén a sendmail lesz a telepítendő levélküldő szerver, azonban nem lesz képes az internetről érkező leveleket fogadni. Az itt felsorolt többi beállítás, tehát a és , a beállításához hasonlóan zajlik. Mind a kettő elektronikus levelek kézbesítésére használható, azonban bizonyos felhasználók a sendmail helyett inkább ezek valamelyikét használják.
Valamelyik vagy éppen semelyik levéltovábbító szerver kiválasztása után az (NFS kliens) beállítására vonatkozó menü jelentkezik.
Az beállításával a rendszerünk NFS szerverekkel lesz képes kapcsolatba lépni. Egy ilyen NFS szerver az NFS protokoll segítségével a hálózaton keresztül elérhetővé tesz állományrendszereket. Ha gépünk független, akkor nem fontos kiválasztanunk ezt a menüpontot. A rendszernek később további beállításokra is szüksége lehet, amelyekről az 29.3. szakasz - A hálózati állományrendszer (NFS)ban olvashatunk részletesebben.
Az (NFS szerver) menüpont kiválasztásával hozzájárulunk, hogy rendszerünk NFS szerverként üzemeljen. Ehhez meg kell adnunk az RPC, vagyis a távoli eljáráshívások kiszolgálásának elindításához szükséges adatokat is. Az RPC használatával a különböző kiszolgálók és programok között tudjuk vezérelni a kapcsolatot.
A sorban az beállítása következik, ahol az időszinkronizációhoz kapcsolódó opciókat találjuk. Kiválasztásakor az ábrán szereplőhöz hasonló menü fog megjelenni:
Ebből a menüből válasszuk ki a hozzánk legközelebb levő szevert. Egy közeli szerver megadásával az időszinkronizáció sokkalta pontosabbá válik, mivel a tőlünk távolabbi szerverek kapcsolatának késleltetése nagyobb lehet.
A következő beállítás az
PCNFSD. Ennek kiválasztása
során a Portgyűjteményből
telepítésre kerül a net/pcnfsd csomag. Ez
lényegében egy hasznos segédprogram,
amellyel olyan operációs rendszerek
számára tudunk hitelesítést
szolgáltatni az NFS használata
során, amelyek maguktól erre nem képesek,
mint például a Microsoft® MS-DOS®
rendszere.
A többi beállítás megtekintéséhez egy kicsit lejjebb kell haladnunk a listában:
Az rpcbind(8) és rpc.statd(8), valamint az
rpc.lockd(8) segédprogramok mind a távoli
eljáráshívásokhoz (Remote Procedure
Call, RPC) használhatóak. Az
rpcbind segédprogram az
NFS szerverei és kliensei
között felügyeli a kapcsolatot, ezért a
használata az NFS szerverek és
kliensek működéséhez elengedhetetlen.
Az állapot figyeléséhez az
rpc.statd démon felveszi a
kapcsolatot a többi gépen futó
rpc.statd démonokkal. A
jelentett állapotok általában a
/var/db/statd.status
állományban találhatóak. Itt a
következőként felsorolt elem az
, amelynek
kiválasztásával
állományzárolási
szolgáltatásokat érhetünk el. Ezt
többnyire az rpc.statd
démonnal együtt alkalmazzák a
zárolásokat kérő gépek
és a kérések gyakoriságának
nyilvántartására. Míg ezekkel a
beállításokkal gyönyörűen
nyomon lehet követni a működést, az
NFS szerverek és kliensek
megfelelő működéséhez nem
kötelező a használatuk.
Ahogy haladunk tovább a listában, a
következő elem a ,
vagyis az útválasztásért
felelős démon lesz. A routed(8)
segédprogram a hálózati
útválasztó táblázatokat
tartja karban, felderíti az elérhető
útválasztókat és
kérésre bármelyik hozzá fizikailag
csatlakozó gép számára átadja
az általa nyilvántartott
útválasztási adatokat. Ezt
leginkább a helyi hálózat
átjárójaként működő
számítógépek
használják. Kiválasztásakor egy
ablak fog rákérdezni a segédprogram
helyére. Az itt alapból felkínált
érték általában megfelelő,
ezért nyugtázhatjuk az Enter
billentyű lenyomásával. Ezt
követően egy másik menü jelenik meg, ahol
a routed
beállításait adhatjuk meg. Itt
alapértelmezés szerint a -q
kapcsoló szerepel.
A következő sor az
beállításé, aminek
kiválasztásával el tudjuk indíttatni
az rwhod(8) démont a rendszer
elindítása során. Az
rwhod segédprogram a
rendszerüzeneteket a hálózaton
időközönként szétküldi vagy
„figyelő” (consumer) módban
összegyűjti ezeket. Ennek pontosabb részleteit
az ruptime(1) és rwho(1) man oldalakon
találhatjuk meg.
Az sshd(8) démoné az utolsó előtti beállítás. Ez az OpenSSH biztonságos shell szervere, melyet a szabványos telnet és FTP szerverek helyett ajánlanak. Az sshd szerver tehát két gép közti biztonságos, titkosított kapcsolatok létrehozására használható.
A lista végén a (TCP kiterjesztések) menüpontot találhatjuk. Segítségével a TCP RFC 1323 és RFC 1644 dokumentumokban leírt kiterjesztéseinek használatát engedélyezhetjük. Ezzel egyes gépek esetén felgyorsulhat a kapcsolat, azonban más esetekben pedig eldobódhat. Ez szerverek használatánál nem ajánlott, viszont független gépeknél kifizetődő lehet.
Most, miután beállítottuk a hálózati szolgáltatásokat, lépjünk vissza a lista elején található (Kilépés) menüpontra és folytassuk a beállítást a következő opcióval, vagy egyszerűen az kétszeri kiválasztásával, majd a (Kilépés a telepítőből) gomb lenyomásával lépjünk ki a sysinstall programból.
Ha minden remekült ment, a képernyőn lentről felfelé gördülő üzeneteket fogunk látni, majd a rendszer várni fog tőlünk egy bejelentkezési nevet. A kiírt üzeneteket között a Scroll Lock lenyomása után a PgUp és PgDn billentyűk használatával tudunk lapozni. A Scroll Lock ismételt lenyomásával visszatérünk a bejelentkezéshez.
Nem minden esetben lesz látható az
összes üzenet (a puffer végessége
miatt), de miután bejelentkeztünk, ezeket a
dmesg parancs kiadásával is
megnézhetjük.
Bejelentkezni a telepítéskor megadott
felhasználói név/jelszó
párossal tudunk (a példában ez most
rpratt). Lehetőleg ne
jelentkezzünk be root
felhasználóként!
A rendszer indításakor jellemzően előforduló üzenetek (a verzióra vonatkozó adatokat kihagytuk):
Az RSA és DSA kulcsok generálása a lassabb gépeken sokág is eltarthat, habár ez mindig csak a friss telepítések utáni első indításkor történik meg. A rendszer későbbi indulásai ettől már gyorsabbak lesznek.
Ha X szervert is beállítottunk és
választottunk hozzá egy alapértelmezett
munkakörnyezetet, akkor ezt a parancssorból a
startx kiadásával
elindíthatjuk el.
Fontos, hogy mindig szabályosan
állítsuk le az operációs rendszert,
ne kapcsoljuk ki csak úgy egyszerűen a
számítógépünket! A
leállításhoz először a
su parancs kiadásával, majd itt
a root jelszavának
megadásával vegyük fel az ehhez
szükséges rendszeradminisztrátori
jogosultságokat. Ez viszont csak abban az esetben fog
működni, ha a felhasználónk tagja a
wheel csoportnak. Minden más
esetben egyszerűen jelentkezzünk be
root felhasználóként
és használjuk a shutdown -h now
parancsot.
A fenti üzenet jelzi, hogy a leállító parancs kiadása után már kikapcsolhatjuk a számítógépet, vagy ha ehelyett egy billentyűt nyomunk le, akkor a gép újraindul.
A Ctrl+Alt+Del billentyűkombináció használatával is újra tudjuk indítani a rendszert, azonban ez normál működés közben nem ajánlott.
A most következő szakaszban azokra a telepítés során felmerülő problémákra próbálunk meg megoldásokat adni, amelyeket eddig már sokan jeleztek nekünk. Ezek mellett szerepel néhány kérdés és válasz is a FreeBSD és az MS-DOS® vagy Windows® közös használatáról.
A PC architektúra különféle korlátozásai miatt szinte lehetetlen 100%-ban megbízhatóvá tenni az eszközök felderítését, azonban ennek hibája kapcsán néhány dolgot még tenni tudunk.
Ellenőrizzük a Hardware Notes (Hardverjegyzék) című dokumentumban, hogy az adott hardvert a FreeBSD valóban ismeri.
Amennyiben a hardvereszközünket a rendszer ismeri,
azonban még mindig jelentkeznek fagyások vagy
egyéb gondok, készítenünk kell egy
saját rendszermagot.
Ezzel olyan eszközök támogatását
is beépíthetjük a rendszermagba, amelyek
eredetileg nem szerepelnek a GENERIC
rendszermagban. A telepítéshez
készített rendszerindító lemezeken
található rendszermag a legtöbb eszközt
a gyári IRQ, IO-cím és DMA csatorna
beállításaik mentén
próbálja felkutatni. Ha viszont a
hardverünket átállítottuk, ennek
megfelelően módosítanunk kell a rendszermag
beállításait és újra kell
fordítanunk, hogy a FreeBSD tudja, hol is keresse az
eszközt.
Olyan is adódhat, hogy egy nem létező eszköz keresése egy utána keresendő másik, jelenlevő eszköz felkutatását akadályozza meg. Ilyenkor az ütköző meghajtókat le kell tiltani.
Egyes problémák elkerülhetőek vagy csillapíthatóak a különböző hardverösszetevők, különösen az alaplapi firmware frissítésével. Az alaplap firmware-jére sokszor csak BIOS-ként hivatkoznak, és a legtöbb alaplap- vagy számítógépgyártó honlapján találhatjuk meg ezeket, valamint a rájuk vonatkozó utasításokat.
A legtöbb gyártó azonban erősen tiltakozik az alaplapi BIOS-frissítések ellen, és csak indokolt esetekben, például kritikus javításoknál javasolják. A frissítés kimenetele lehet rossz is, aminek következménye a BIOS tartós károsodása.
A FreeBSD jelenleg nem támogatja a Double Space™ alkalmazással tömörített állományrendszereket, ezért a FreeBSD csak úgy tud az adataihoz hozzáférni, ha előtte kitömörítjük ezeket. Ezt a menü (Programok) > (Rendszereszközök) menüjében található Compression Agent (Lemeztömörítés) elindításával tehetjük meg.
A FreeBSD támogatja az MS-DOS® alapú (gyakran
csak FAT típusúnak nevezett)
állományrendszereket. A mount_msdosfs(8)
parancs segítségével az ilyen rendszerek
könnyedén becsatlakoztathatók a már
létező könyvtárszerkezetbe, amivel
így el tudjuk érni a tartalmát. A
mount_msdosfs(8) programot általában nem
közvetlenül hívjuk meg, hanem az
/etc/fstab vagy a mount(8)
segédprogram megfelelő
paraméterezésével.
Az /etc/fstab állományban
általában így néz ki egy ilyen
sor:
A művelet végrehajtásához a
/dos könyvtárnak már
léteznie kell. Az /etc/fstab
pontos formátumával kapcsolatban a fstab(5)
man oldalt olvassuk el.
Az MS-DOS® állományrendszerek esetében a mount(8) parancsot többnyire így adjuk ki:
# mount -t msdosfs /dev/ad0s1 /mntEbben a példában a MS-DOS®
állományrendszer az elsődleges merevlemez
első partícióján helyezkedik el. A mi
helyzetünk ettől eltérő lehet,
ezért ehhez vizsgáljuk meg a
dmesg és mount
parancsok kimeneteit. Segítségükkel
elegendő információt tudunk összeszedni
a gépünkön található
partíciók
kiosztásáról.
Előfordulhat, hogy a FreeBSD a többi operációs rendszertől eltérő módon számozza a slice-okat (vagyis az MS-DOS® partíciókat). Konkrétan: a kiterjesztett MS-DOS® partíciók általában nagyobb sorszámot kapnak, mint az elsődleges MS-DOS® partíciók. Az fdisk(8) segédprogram segíthet megállapítani, hogy mely slice-ok tartoznak a FreeBSD-hez és melyek más operációs rendszerekhez.
A mount_ntfs(8) parancs használatával az NTFS partíciók hasonló módon csatlakoztathatóak.
2.11.3.1. | A rendszerem teljesen leáll amikor az indítás során eszközöket próbál megtalálni, vagy furcsán viselkedik a telepítés során, esetleg a floppy meghajtót nem is keresi. |
A FreeBSD az i386, amd64 és ia64 platformokon az
indítás közben az eszközök
felderítésében erősen
építkeznek a rendszeren elérhető
ACPI szolgáltatásra. Sajnos még
mindig vannak hibák az ACPI meghajtóban, az
alaplapokban és a BIOS-okban. A
rendszerbetöltő harmadik fokozatában
viszont az set hint.acpi.0.disabled="1"Ez a beállítás a rendszer minden
egyes indításakor törlődik,
ezért a | |
2.11.3.2. | A FreeBSD telepítése után először indítom el a merevlemezről a rendszert, a rendszermag betöltődik és nekilát felkutatni a hardvereszközöket, azonban megáll a következő üzenettel: changing root device to ad1s1a panic: cannot mount root Mi lehet a gond? Mit tegyek? Mit jelent a
|
Ez egy régóta fennálló probléma olyan rendszerek esetén, ahol a rendszerindításhoz használt lemez nem az első. A BIOS a FreeBSD-től eltérő sorszámozást használ, és az általa alkalmazott megfeleltetések megfejtése nehézkes. Amikor a rendszer indítására használt lemez nem az első lemez a rendszerünkben, segítenünk kell a FreeBSD-nek a megtalálásában. Két gyakori helyzet alakulhat ki, és mind a kettőben el kell árulnunk a FreeBSD-nek, hogy hol található a rendszer indításához használható gyökér állományrendszer. Ezt a lemez BIOS-ban nyilvántartott sorszámának, típusának és a neki megfelelő FreeBSD szerinti lemezszám megadásával tehetjük meg. Az első szituációban két
IDE-lemezünk van, mind a kettőt
masterként állítottuk be a
hozzájuk tartozó IDE-buszokon, és a
közülük a másodikról akarjuk
indítani a FreeBSD-t. A BIOS ezeket 0. és 1.
lemezként látja, miközben a FreeBSD pedig
A FreeBSD 1. BIOS-számozású lemezen
van, amelynek a típusa 1:ad(2,a)kernelHa az elsődleges buszon van egy slave meghajtónk, akkor mindez nem szükséges (és valószínűleg rossz is). A második szituációban egy
SCSI-lemezről akarjuk indítani a rendszert,
miközben egy vagy több IDE-lemez is
található a gépünkben. Ebben az
esetben a FreeBSD szerinti sorszám kisebb lesz, mint a
BIOS szerinti. Ha tehát a két
IDE-lemezünk mellett van még egy SCSI-lemez
is, akkor annak a BIOS szerinti sorszáma 2, a
típusa 2:da(0,a)kernelsorral tudjuk elárulni a FreeBSD-nek, hogy a BIOS
szerint 2. lemezről akarjuk indítani, amely a
rendszerben található első
SCSI-lemeznek felel meg. Ha csak egy IDE-lemezünk
van, akkor a sort kezdjük az Miután megtaláltuk a megfelelő
értékeket, a hozzá tartozó
sort egy szövegszerkesztő
segítségével tegyük
közvetlenül a | |
2.11.3.3. | A telepítés után
először próbálom meg
elindítani a merevlemezről a FreeBSD-t, azonban a
rendszerválasztó mindig csak
|
A FreeBSD telepítése során rosszul adtunk meg a partíciószerkesztőben a merevlemezhez tartozó geometriát. Menjünk vissza a partíciószerkesztőhöz és adjuk meg újra a merevlemezünk helyes geometriáját. Ennek használatához pedig a FreeBSD-t is újra kell telepítenünk. Ha egyáltalán képtelenek vagyunk megállapítani a merevlemezhez tartozó geometriát, akkor próbáljuk meg ezt: a lemez elején hozzunk létre egy kis méretű DOS partíciót és rakjuk utána a FreeBSD-t. Amikor a telepítőprogram észreveszi a DOS partíciót, megpróbálja magától kikövetkeztetni belőle a helyes geometriát, ami általában működik is. Ez a tanács ugyan már nem érvényes, de álljon itt felvilágosításként:
| |
2.11.3.4. | A rendszer megtalálja a ed(4) hálózati kártyámat, azonban folyamatosan hibát ad időtúllépésre hivatkozva. |
Az említett kártya
valószínűleg a
Hardveresen ezt a kártyán levő
jumperek segítségével
állíthatjuk be (ehhez változtassuk
meg a rendszermag beállításait is,
amennyiben szükséges), vagy a
Másik lehetőség, amikor a kártyánk a 9-es IRQ-t használja, amelyet általában megosztanak a 2-es IRQ-val, ami gyakori problémák forrása (különösen abban az esetben, amikor a VGA kártya a 2-es IRQ-t használja!) lehet. Lehetőleg ne használjuk a 2-es és 9-es IRQ-kat. | |
2.11.3.5. | Amikor a sysinstall programot egy X11 terminálban futtatom, a sárga színű betűket viszonylag nehéz olvasni a világosszürke háttérrel. Esetleg lehet valahogy növelni a kontrasztot az alkalmazás használatakor? |
Ha az X11 telepítése után a
sysinstall által
választott színekkel nem olvasható a
szöveg xterm(1) vagy rxvt(1)
terminálokban, akkor vegyük fel a
következő sort a felhasználói
könyvtárunkban levő
|
Ebben a szakaszban megtudhatjuk, hogyan telepítsük a FreeBSD-t speciális esetekben.
A telepítés ezen fajtáját „fej nélküli telepítésnek” (headless install) hívják, mivel a gép, amire a FreeBSD-t telepíteni akarjuk, nem rendelkezik monitorral vagy éppen még VGA kimenettel sem. Felmerülhet a kérdés: hogyan lehetséges mindez? A soros vonali konzol használatával! A soros konzol segítségével lényegében egy másik számítógép monitorját és billentyűzetét használjuk. Ennek megvalósításához elsőként kövessük a rendszerindító pendrive készítésének 2.3.7. szakasz - Készítsünk egy rendszerindító lemeztban leírt lépéseit, vagy töltsük le a megfelelő ISO image-et a telepítéshez, lásd 2.13.1. szakasz - Telepítő CD készítése.
A következő lépésekkel tehetjük képessé a soros konzolon keresztüli rendszerindításra: (CD-lemez használata esetén az első lépésre nincs szükség)
A rendszerindító pendrive átállítása soros konzolra
Ha a korábban előkészített pendrive-val most csak egyszerűen elindítanánk a FreeBSD-t, akkor a megszokott telepítési módban indulna el. Mi viszont azt akarjuk, hogy a telepítéshez a FreeBSD a soros konzolon keresztül induljon el. Ehhez csatlakoztassuk az eszközt a számítógéphez, valamint a mount(8) paranccsal FreeBSD rendszerünkhöz pedig a hozzátartozó állományrendszert.
# mount /dev/da0a /mntA konkrét eszköznevet és csatlakozási pontot módosítsuk a saját környezetünknek megfelelően.
Most, miután már fizikailag és
logikailag is csatlakoztattuk a pendrive-ot, be kell
állítanunk a soros konzol
használatára rendszerindítás
közben. Ehhez egy loader.conf
nevű állományt kell elhelyeznünk a
pendrive állományrendszerén a soros
konzolra (mint rendszerkonzolra) vonatkozó
beállítással:
# echo 'console="comconsole"' >> /mnt//boot/loader.confMiután a pendrive-on sikeresen elvégeztük a szükséges beállítást, válasszuk le a umount(8) parancs kiadásával:
# umount /mntMost már leválaszthatjuk a pendrive-ot, és ugorjunk közvetlenül a harmadik lépésre.
A null-modem kábel csatlakoztatása
Össze kell kötnünk a két számítógépet egy null-modem kábellel. Nincs más teendőnk, mit összekapcsolni a két gép soros portjait. Itt a szokásos soros kábel nem működik, konkrétan null-modem kábelre van szükség, mivel benne néhány vezetéket máshogy kötöttek be.
A telepítő CD beállítása soros konzolra
Ha a telepítésre szánt ISO image-ből készített lemezzel (lásd 2.13.1. szakasz - Telepítő CD készítése) a FreeBSD normál módban indul el. A soros konzol használatához viszont kibontani, módosítani és újragenerálni kell az adott image-et mielőtt lemezre írnánk.
A korábban, például a
FreeBSD-
néven letöltött image-ből a tar(1)
segédprogrammal tudjuk kinyerni a benne tárolt
összes állományt:8.1-RELEASE-i386-disc1.iso
# mkdir /a/hasznalt/iso/helye
# tar -C /a/hasznalt/iso/helye -pxvf FreeBSD-8.1-RELEASE-i386-disc1.isoEzt követően módosítanunk kell
a telepítőlemezt a soros konzol
használatára. Ehhez egy
loader.conf állományt
kell hozzáadnunk a kibontott ISO image
tartalmához. Ebben állítjuk be a
soros konzolt rendszerkonzolnak:
# echo 'console="comconsole"' >> /a/hasznalt/iso/helye/boot/loader.confEzután készítsünk egy
új ISO image-et a módosított tartalom
alapján. Ehhez a sysutils/cdrtools port
részeként elérhető
mkisofs(8) segédprogramot
használjuk:
# mkisofs -v -b boot/cdboot -no-emul-boot -r -J -V "soroskonzolos" -o soroskonzolos-FreeBSD-8.1-RELEASE-i386-disc1.iso /a/hasznalt/iso/helyeMost már van egy megfelelően összeállított ISO image-ünk, amelyet CD-lemezre tudunk írni a kedvenc CD-író alkalmazásunkkal.
A telepítés indítása
Most már ideje elkezdeni a
telepítést. Tegyük a
boot.flp image-et tartalmazó
lemezt a fej nélkül telepítendő
gép meghajtójába és kapcsoljuk
be.
Kapcsolódás a fej nélküli gépre
Ezután a cu(1) parancs felhasználásával kapcsolódjunk rá a gépre:
# cu -l /dev/cuau0Ezt FreeBSD 7.X
esetén így kell használnunk:
# cu -l /dev/cuad0Ezzel készen is vagyunk! Innentől a
cu által megnyitott kapcsolaton
keresztül tudjuk vezérelni a fej nélküli
számítógépet. Hamarosan
betölti a rendszermagot, majd megkérdezi a
használt terminál típusát. Itt
válasszuk ki a színes FreeBSD konzolt (FreeBSD color
console) és folytassuk a telepítést a
megszokott módon.
Az ismétlések elkerülése végett a továbbiakban a „FreeBSD lemez” a megvásárolható vagy a magunk által készített FreeBSD CD-re vagy DVD-re vonatkozik.
Adódhatnak olyan esetek, amikor létre kell hoznunk a FreeBSD telepítésére használt saját eszközünket és/vagy forrásunkat. Ez lehet egy tetszőleges fizikai eszköz, például szalag, vagy bármilyen olyan forrás, ahonnan a sysinstall képes állományokat elérni, például egy FTP oldal vagy egy MS-DOS® partíció.
Például:
Egy FreeBSD lemezünk van és több hálózaton kapcsolódó számítógépünk. Készíteni akarunk egy helyi FTP oldalt a FreeBSD lemez felhasználásával, és így a hálózaton levő gépre az internet helyett innen telepítjük a rendszert.
Van egy FreeBSD lemezünk, azonban a FreeBSD-nek nem sikerült felismernie a CD/DVD-meghajtónkat, viszont az MS-DOS®/Windows®-nak igen. Felmásoljuk a FreeBSD telepítéséhez használt állományokat ugyanazon a számítógépen található egyik DOS partícióra, majd a FreeBSD-t ezekkel telepítjük.
A gépben, amelyre telepíteni akarunk, nincs CD/DVD-meghajtó vagy hálózati kártya, viszont „Laplink stílusú” soros vagy párhuzamos kábellel hozzá tudunk kapcsolódni egy olyan számítógépről, amelyben viszont van.
Készíteni akarunk a FreeBSD telepítésére használható szalagot.
A FreeBSD Projekt minden kiadás részeként architektúránként elérhetővé tesz legalább két CD image-et („ISO image-et”). Ha rendelkezünk CD-íróval, ezeket az image-eket fel-, illetve ki tudjuk írni („égetni”) CD-re, és a FreeBSD telepítésére tudjuk használni. Tehát ha van a kezünk ügyében CD-író és olcsón jutunk nagyobb sebességű interneteléréshez, akkor a FreeBSD telepítésének ez a legkönnyebb módja.
A megfelelő ISO image-ek letöltése
Az egyes kiadások ISO image-ei
letölthetőek a
ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-
címről vagy annak legközelebbi
tükrözéséről. Az
architektúra/változatarchitektúra és
változat részeket
igényeinknek megfelelően
helyettesítsük.
Az említett könyvtár általában a következő lemezek image-eit tartalmazza:
X és
8.X ISO image-ek nevei
és jelentései| Állománynév | Tartalom |
|---|---|
FreeBSD- | Ezzel a CD image-dzsel tudjuk a FreeBSD CD-meghajtóról indításával elkezdeni a telepítést. Fontos tudnunk azonban, hogy ez az image nem tartalmazza a FreeBSD telepítéséhez szükséges komponenseket. Ezt a rendszer indítása után hálózaton keresztül (például egy FTP szerver segítségével) tudjuk megtenni. |
FreeBSD- | Ez a DVD image minden, az alap FreeBSD rendszer telepítéséhez szükséges komponenst tartalmaz, bináris csomagokkal és dokumentációval együtt. Ezenkívül még „élő” rendszert is tudunk indítani vele, közvetlenül a lemezről. |
FreeBSD- | Ez az image egy USB pendrive-ra írható, és minden olyan számítógépen használható, amely képes ilyen eszközről elindulni. Támogatja az „élő” módot is, amellyel rendszerünket állíthatjuk helyre. Ez az image nem érhető el FreeBSD 7.3 vagy korábbi rendszerek esetén. |
FreeBSD- | Ez az image tartalmazza az alap FreeBSD operációs rendszert és a hozzá tartozó dokumentációt, de semmilyen más további csomagot nem. |
FreeBSD- | Ezen az image-en bináris csomagok találhatóak. Ilyen a FreeBSD 8.0 és az utána következő változatoknál már nincs. |
FreeBSD- | Ez egy másik image, amelyen szintén bináris csomagok találhatóak. Ilyen a FreeBSD 8.0 és az utána következő változatoknál már nincs. |
FreeBSD- | A FreeBSD dokumentációja. |
FreeBSD- | Ez az image a rendszerhelyreállításhoz használt „élő” indítási módot támogatja, telepítést alapvetően nem lehet vele végezni. |
A FreeBSD 7.3 és a FreeBSD 8.1 előtti
7.X, illetve
8.X kiadások egy
ettől eltérő elnevezési
sémát követnek: a hozzájuk
tartozó ISO image-ek neveiben nem szerepel a
FreeBSD- előtag.
Le kell töltenünk az
első lemez vagy (ha elérhető) a
bootonly lemez ISO image-einek
egyikét. A kettőt egyszerre viszont ne
töltsük le, mivel a disc1 image
tartalmaz mindent, ami a bootonly
image-en megtalálható.
Akkor használjuk a bootonly
jelzésű image-et, ha
szélessávú
interneteléréssel rendelkezünk.
Segítségével el tudjuk kezdeni a FreeBSD
telepítését, és
szükség szerint a port/csomagrendszer
(lásd 4. fejezet - Alkalmazások telepítése: csomagok
és portok)
használatával csomagokat tudunk letölteni
és telepíteni.
A DVD image-ét (dvd1) akkor
érdemes használni, ha a FreeBSD adott
kiadásának telepítése mellett
igényt tartunk valamennyi csomagra is.
A további lemezek image-ei is hasznosak lehetnek, de nem feltétlenül kellenek a telepítéshez, főleg abban az esetben, amikor gyors interneteléréssel rendelkezünk.
A CD-k írása
Ezután lemezekre kell írnunk a letöltött image-eket. Amennyiben ezt egy másik FreeBSD rendszeren végezzük, ennek részleteiről a 18.6. szakasz - Lézeres tárolóeszközök (CD-k) létrehozása és használata számol be (különösen a 18.6.3. szakasz - burncd és a 18.6.4. szakasz - cdrecord leírása).
Ha másik platformon végezzük ezt a műveletet, akkor az adott platformon felkínált CD-író szoftverekkel kell dolgoznunk. Az image-ek szabványos ISO formátumúak, amelyet szinte az összes CD-író alkalmazás ismer.
Ha kíváncsiak vagyunk egy saját FreeBSD kiadás elkészítésére, olvassuk el a kiadások szervezéséről szóló cikket (angolul).
A FreeBSD lemezeken az FTP oldalakéhoz hasonló elrendezést találunk. Ez megkönnyíti a hálózatunkban található számítógépekhez a FreeBSD telepítésére használható helyi FTP oldal létrehozását.
Az FTP oldalnak otthont adó FreeBSD
számítógépen tegyük a CD-t
a meghajtóba, majd csatlakoztassuk a
/cdrom könyvtárba.
# mount /cdromHozzunk létre egy anonim FTP
hozzáférést az
/etc/passwd állományban.
A vipw(8) segítségével
tehát illesszük be a következő sort az
/etc/passwd
állományba:
Gondoskodjuk róla, hogy az FTP
szolgáltatás engedélyezve legyen az
/etc/inetd.conf
állományban.
Most már bárki, aki képes csatlakozni
ehhez a számítógéphez, a
telepítés típusának ki tudja
választani az FTP-t. Az FTP oldalak
menüjében válassza az „Other”
(Egyéb) pontot, majd adja meg az
ftp://
címet.gépnév
Ha az FTP-n csatlakozó kliensek rendszerindításhoz használt eszköze (általában a floppy) verziója nem egyezik meg tökéletesen a helyi FTP oldalon találhatóval, akkor a sysinstall nem engedi a telepítést. Ha a változatok nem hasonlóak és ezt felül akarjuk bírálni, akkor be kell lépnünk az (Beállítások) menübe, ahol át kell állítanunk a terjesztés nevét (distribution name) (bármelyik)-re.
A fenti megközelítés kizárólag csak egy tűzfallal védett helyi hálózaton javasolt. FTP szolgáltatás létrehozása az interneten (és nem a helyi hálózatunkban) levő számítógépek számára különböző támadásoknak és egyéb kellemetlenségeknek teszi ki a számítógépünket. Határozottan javasoljuk, hogy ebben az esetben különösen ügyeljünk a biztonságra.
Ha floppylemezről kellene telepítenünk (amit viszont semmiképpen sem ajánlanánk) egy nem támogatott hardvereszköz miatt, vagy mert egyszerűen szeretjük a dolgok nehezebbik oldalát megfogni, akkor ehhez először elő kell készítenünk pár lemezt.
Legalább annyi 1,44 MB-os lemezre van
szükségünk, mint amennyire
ráférnek a base
(alapterjesztés) könyvtárban
található állományok. Ha DOS-ban
hozzuk létre ezeket a lemezeket, akkor a
használatukhoz meg kell
formázni ezeket az MS-DOS® FORMAT
parancsával. Windows® használata esetén
az Windows Explorerben (Intézőben) tudjuk
megformázni a lemezeket (kattintsunk a jobb gombbal az
A: meghajtóra, majd
válasszuk a „Format”
(Formázás) menüpontot).
Ne bízzunk a gyárilag formázott („pre-formatted” jelzésű) lemezekben! Menjünk biztosra és formázzuk meg mi magunk is lemezeket. A felhasználóinktól régebben számtalan olyan panasz érkezett, amely a helytelenül megformázott lemezből fakadt, ezért erre most kiemelten felhívjuk a figyelmet.
A formázás abban az esetben sem bizonyul
rossz ötletnek, ha egy másik FreeBSD gépen
gyártjuk le a lemezeket, habár nem kell
mindegyik lemezre DOS állományrendszert
tennünk. Helyette a bsdlabel
és newfs parancsok
használatával UFS
állományrendszert is tehetünk rájuk,
ahogy (1,44 MB méretű lemezek esetén)
ezt az alábbi parancsok mutatják:
# fdformat -f 1440 fd0.1440
# bsdlabel -w fd0.1440 floppy3
# newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0Ezután a többi állományrendszerhez hasonlóan a lemezeket tudjuk csatlakoztatni és írni.
Miután megformáztuk a lemezeket,
rájuk kell másolnunk az
állományokat. A terjesztésekhez
tartozó állományokat adott
méretű darabokra szeleteltük, így
kényelmesen ráférnek egy
hagyományos 1,44 MB méretű floppyra.
Menjünk végig az összes floppyn és
mindegyikre pakoljuk fel a lehető legtöbb
állományt egészen addig, amíg
így az összes szükséges
terjesztést össze nem szedtük. A floppykon
minden terjesztés kerüljön egy
hozzá tartozó alkönyvtárba,
például: a:\base\base.aa,
a:\base\base.ab és így
tovább.
Az első lemezre rá kell másolnunk a
base.inf nevű
állományt is, mivel ennek
beolvasásával lesz képes
kitalálni a telepítő, hogy a
terjesztések összeszedése és
összefűzése során mennyi darabot
keressen.
Ahogy elérkezünk a telepítőeszköz kiválasztásához a telepítés folyamatában, ott válasszuk a menüpontot, majd utána kövessük a felbukkanó üzeneteket.
Amikor egy MS-DOS® partícióról
akarunk telepíteni,
előkészítés gyanánt
másoljuk a terjesztésekhez tartozó
állományokat a partícióra egy
freebsd könyvtárba. Ez lesz
például a c:\freebsd.
Ebben a könyvtárban igyekezzük minél
jobban megtartani a CD vagy az FTP oldal
könyvtárszerkezetét, ezért erre a
CD-ről történő
átmásolásra a DOS
xcopy parancsát javasoljuk.
Például így tudjuk
előkészíteni a FreeBSD legegyszerűbb
változatának
telepítését:
C:\> md c:\freebsd
C:\> xcopy e:\bin c:\freebsd\bin\ /s
C:\> xcopy e:\manpages c:\freebsd\manpages\ /sA fentiekben feltételeztük, hogy ehhez a
C: meghajtón elég
szabad helyünk van, valamint az
E: meghajtón érjük
el a CD-t.
Ha nincs CD-meghajtónk, az ftp.FreeBSD.org címről letölthetjük a terjesztésket. Minden egyes terjesztés külön könyvtárban található, tehát például a base (alap) terjesztés az 8.1/base/ könyvtárban található.
Mindegyik telepítendő terjesztést (ami
még elfér) másoljuk át az MS-DOS®
partíció c:\freebsd
könyvtárába — a
telepítéshez egyébként
egyedül a BIN terjesztés
szükséges.
Valószínűleg a szalagos módszer a legegyszerűbb, egyfajta élő FTP-s vagy CD-s telepítés. A telepítőprogram arra számít, hogy a szalagon az állományok egymás után helyezkednek el. Tehát miután beszereztük a nekünk kellő terjesztésekhez tartozó összes állományt, egyszerűen vegyük fel ezeket a szalagra:
# cd /freebsd/distdir
# tar cvf /dev/rwt0 dist1 ... dist2Mielőtt telepítenénk, ellenőrizzük, hogy legyen elég helyünk valamelyik (a telepítés során majd kiválasztható átmeneti) könyvtárban ahhoz, hogy az itt létrehozott szalag teljes tartalma elférjen benne. Mivel a szalagok csak szekvenciálisan érhetőek el, ezért ennél a módszernél jó sok ideiglenes tárhelyre lesz szükségünk.
A telepítés megkezdése után a szalagnak már azelőtt a meghajtóban kell lennie, hogy rendszerindító floppyról elindítanánk a rendszert, máskülönben nem találja meg.
Háromféle hálózati telepítési mód létezik: Ethernet (szabványos Ethernet-vezérlővel), soros port (PPP) vagy párhuzamos port (PLIP (laplink kábel)).
Valószínűleg az Ethernet-csatlakozó választásával érjük el a leggyorsabb hálózati telepítést. A FreeBSD ismeri a legtöbb PC-s Ethernet kártyát. Az ismert kártyák (és a hozzájuk tartozó beállítások) a FreeBSD egyes kiadásának hardverjegyzékében (Hardware Notes) találhatóak meg. Amennyiben egy támogatott PCMCIA Ethernet kártyát használunk, mindig a laptop bekapcsolása előtt helyezzük be! A FreeBSD telepítés közben sajnos nem támogatja a PCMCIA kártyák menetközbeni behelyezését.
Ezenkívül még ismernünk kell a hálózaton kapott IP-címünket, az általa használt címosztály hálózati maszkját, a gépünk nevét. Ha PPP kapcsolaton keresztül telepítünk és nincs statikus IP-címünk, akkor minden bizonnyal az internet-szolgáltatónktól kaptunk egyet dinamikusan. A konkrét hálózati beállításokat a hálózatunk rendszergazdájától is érdemes megkérdezni. Ha a hálózaton levő többi gépre névvel és nem IP-címmel hivatkozunk, akkor szükségünk lesz még egy név(feloldó) szerverre és az internet eléréséhez egy átjáró címére is (ha PPP-t használunk, ez a szolgáltatónk IP-címe lesz). Ha FTP-ről HTTP proxy használatával telepítünk, akkor a proxy címe is kelleni fog. Ha magunktól nem vagyunk képesek ezekre a kérdésekre válaszolni, akkor az ilyen típusú telepítés megkezdése előtt tényleg segítséget kell kérnünk egy rendszergazdától vagy az internet-szolgáltatónktól.
Ha modemet használunk, akkor a PPP szinte biztosan megfelel nekünk. Gondoskodjunk róla, hogy már a telepítés korai szakaszában rendelkezésünkre áll az internet-szolgáltatónkkal kapcsolatosan minden hasznos információ.
Ha PAP vagy CHAP használatával
kapcsolódunk a szolgáltatónkhoz
(másképp szólva Windows®-ban így
tudunk szkriptek nélkül csatlakozni),
mindössze a dial parancsot kell
kiadnunk a ppp
parancssorában. Minden más esetben tudnunk kell
a modemünk saját „AT parancsaival”
tárcsázni az
internet-szolgáltatónkat, hiszen ehhez a PPP
tárcsázó csak egy nagyon kezdetleges
terminálemulációt nyújt. Ezzel
kapcsolatban olvassuk el a
kézikönyv és a GYIK
idevágó részeit. Ha gondjaink
akadnának, a naplózás a set log
local ... parancs kiadásával
átirányítható
közvetlenül a képernyőre.
Ha kötött módon tudunk csatlakozni egy másik (2.0-R vagy későbbi verziójú) FreeBSD géphez, akkor megpróbálkozhatunk a párhuzamos „laplink” kábellel. A párhuzamos porton keresztüli adatátvitel sebessége a soros vonalénál jóval nagyobb (egészen 50 kbyte/mp), ezért vele a telepítés is gyorsabb.
A telepítés NFS-en keresztül szinte magától értetődik. Egyszerűen csak másoljuk a FreeBSD terjesztéseihez tartozó állományokat az NFS szerverre és állítsuk be rá az NFS telepítőeszközt.
Ha a szerver csak „privilegizált
portokat” ismer (ami általában
alapértelmezett a Sun
munkaállomásoknál), a
telepítés megkezdése előtt az
(Beállítások) menüben be kell
állítani az NFS Secure
(Biztonságos NFS) opciót.
Ha egy gyenge minőségű és kis
adatátviteli sebességű Ethernet
kártyánk van, akkor emellett még
hasznos lehet beállítani az NFS
Slow (Lassú NFS) opciót is.
Az NFS-en keresztüli telepítés
működéséhez a szervernek
támogatnia kell az alkönyvtárak
csatlakoztatását is, tehát
például ha a FreeBSD 8.1
terjesztésünk a
ziggy:/usr/archive/stuff/FreeBSD
könyvtárban található, akkor
ziggy nevű gépnek
lehetővé kell tennie a
/usr/archive/stuff/FreeBSD
könyvtár közvetlen
csatlakoztatását is, nem csak a
/usr vagy
/usr/archive/stuff
könyvtárakét.
A FreeBSD /etc/exports
állományában ezt az
-alldirs beállítással
vezérelhetjük. Más NFS szervereken
esetleg más megszokásokat kell
követnünk. Amennyiben a szervertől
permission denied
(hozzáférés megtagadva) üzeneteket
kapjuk, valószínű, hogy ezt nem
állítottuk be megfelelően.
Ez a fejezet a FreeBSD operációs rendszer alapvető funkcióit és parancsait mutatja be. Az itt tárgyalásra kerülő anyag nagy része érvényes bármelyik más UNIX®-szerű operációs rendszer esetén is. Ezért, ha már ismerjük az említésre kerülő ismereteket, minden további gond nélkül átugorhatjuk ezt a fejezetet. Azonban ha még teljesen ismeretlen számunkra a FreeBSD, minden bizonnyal ez lesz az, amit alaposan át kell majd olvasnunk.
A fejezet elolvasása során megismerjük:
az ún. „virtuális konzolok” használatát FreeBSD alatt;
hogyan működnek együtt a UNIX® állományokra vonatkozó engedélyei a FreeBSD saját kiegészítéseivel;
egy FreeBSD állományrendszer alapértelmezett kialakítását;
a FreeBSD lemezszervezését;
hogyan csatlakoztassunk és válasszunk le állományrendszereket;
mik azok a folyamatok, démonok és jelzések;
mik azok a parancsértelmezők, és miként tudjuk megváltoztatni az alapértelmezett bejelentkezési környezetünket;
hogyan használjuk az alapvető szövegszerkesztőket;
mik az eszközök és az eszközleírók;
FreeBSD alatt milyen bináris formátumokat használhatunk;
szükség esetén hogyan olvassuk el a megfelelő man oldalakat.
A FreeBSD számos módon használható. Ezek közül az egyik az, ha parancsokat gépelünk be a szöveges terminálon. Így érhető el egyszerűen a UNIX® operációs rendszer rugalmasságának és erejének jelentős része. Ebben a szakaszban megtudhatjuk, mik azok a „terminálok” és „konzolok” és miként tudjuk ezeket FreeBSD alatt használni.
Ha nem állítottuk volna be, hogy a FreeBSD indulása során automatikusan induljon el a grafikus felület is, akkor a rendszer egy bejelentkező képernyőt fog mutatni közvetlenül a rendszerindítás befejeződése után. Ekkor valami ilyesmit kell majd látnunk:
Egyes rendszereken ugyan némileg eltérhetnek az üzenetek, de hasonlót kell látnunk. Minket most az utolsó két sor érdekel. Az utolsó előtti sorban ez olvasható:
Ez a sor arról értesít minket, hogy a
rendszerünk éppen most indult el: egy
„FreeBSD” konzolt látunk, amely egy Intel® x86
architektúrájú processzoron fut
[1]. A gépünk neve (mivel minden UNIX®-os
gép rendelkezik egy névvel)
pc3.example.org, és ennek a
rendszerkonzolját látjuk most éppen
— a ttyv0
terminált.
Végezetül az utolsó sor mindig:
Ez az a rész, ahova a FreeBSD-be történő bejelentkezéshez meg kell adnunk a „felhasználói nevünket” (user name). A következő szakaszban erről olvashatunk.
A FreeBSD egy többfelhasználós, többfeladatos rendszer. Így hívják hivatalosan azokat a rendszereket, amelyeket többen tudnak használni és egyetlen számítógépen egyszerre rengeteg programot képesek futtatni.
Minden többfelhasználós rendszernek valamilyen módon meg kell tudnia különböztetnie egy „felhasználóját” a többitől. A FreeBSD-ben (és minden más UNIX®-szerű operációs rendszerben) ezt úgy érik el, hogy a programok futtatása előtt minden felhasználónak „be kell jelentkeznie” a rendszerbe. Minden felhasználó rendelkezik egy egyedi névvel (ez a „felhasználói név”) és ehhez egy titkos kulcssal (ez a „jelszó”). A FreeBSD a programok futtatásához ezt a kettőt fogja elkérni a felhasználótól.
Egyből miután a FreeBSD elindult és befejezte a rendszerindításhoz használt szkriptjeinek lefuttatását [2], ez a kijelzés (vagy más néven „prompt”) fog megjelenni és kér egy érvényes felhasználói nevet:
A példa kedvéért most tegyük fel,
hogy a felhasználói nevünk
pgj. Az iménti prompthoz
írjuk be, hogy pgj és nyomjuk
le az Enter billentyűt. Ezt
követően meg kell jelennie egy másik promptnak
is, amely egy „jelszót” (password)
kér:
pgj
Password:Most pedig gépeljük be pgj
jelszavát és nyomjunk utána egy
Enter billentyűt. Vigyázzunk, hogy
a jelszót nem látjuk a
beírás során! Emiatt most ne
aggódjunk. Ezzel kapcsolatban elegendő csak annyit
tudni, hogy mindez biztonsági
megfontolásokból történik.
Amennyiben jól adtuk meg a jelszavunkat, sikeresen bejelentkezünk a FreeBSD rendszerébe és készen állunk az összes elérhető parancs kipróbálására.
Bejelentkezés után a MOTD
(message of the day) vagy más néven „a nap
üzenete” jelenik meg, amelyet a parancssor
követ (egy #, $ vagy
% jel). Innen tudhatjuk meg, hogy
sikerült bejelentkeznünk.
A UNIX® parancsokat egy konzolon is szépen ki tudjuk adni, de a FreeBSD egyszerre ugyebár több programot is tud futtatni. A parancsok megadásához viszont egyetlen konzol használata elég nagy pazarlás lenne, hiszen egy olyan operációs rendszer mint a FreeBSD, tucatnyi programot képes futtatni egy időben. Ebben az esetben jelenthetnek számunkra segítséget a „virtuális konzolok”.
A FreeBSD beállítható úgy, hogy sok-sok különféle virtuális konzolt ajánljon fel számunkra. A virtuális konzolok között a billentyűzeten a megfelelő gombok lenyomásával tudunk váltani. Mindegyik konzolnak megvan a saját kimeneti csatornája, és a virtuális konzolok közti váltás folyamán a FreeBSD gondoskodik a billentyűzetről érkező bemenet, valamint a monitorra irányított kimenet megfelelő kezeléséről.
A konzolok közti váltásra a FreeBSD külön billentyűkombinációkat tart fenn [3]. A FreeBSD-ben a különböző virtuális konzolok közti váltásra az Alt+F1, Alt+F2 billentyűket, az Alt+F8 billentyűkombinációval bezárólag használhatjuk.
A konzolok közti váltogatás során a FreeBSD ügyel a képernyő tartalmának elmentésére és visszaállítására. Ennek eredményeképpen „úgy látszik”, mintha több „virtuális” képernyőn és billentyűzeten adnánk parancsokat a FreeBSD-nek.
A FreeBSD alapértelmezés szerint nyolc
virtuális konzollal indul. Ez azonban nem egy előre
rögzített érték, hiszen
könnyedén testreszabhatjuk úgy a
telepített rendszerünket, hogy több vagy
esetleg kevesebb virtuális konzollal induljon el. A
virtuális konzolok száma és azok pontos
beállítása az
/etc/ttys állományon
keresztül adható meg.
A FreeBSD virtuális konzoljait tehát az
/etc/ttys állomány
megfelelő módosításával tudjuk
behangolni. Itt minden egyes olyan sor, amely nem
megjegyzés (vagyis azok a sorok, amelyek nem a
# karakterrel kezdődnek), tartalmazza az
egyes terminálok vagy virtuális konzolok
beállításait. Az állomány a
FreeBSD telepítésében szereplő,
alapértelmezett változata kilenc virtuális
konzol konfigurációját tartalmazza, amelyek
közül nyolc aktív. Ezek a
ttyv résszel kezdődő
sorok:
Az állományban található oszlopok kimerítő magyarázatát, illetve a virtuális konzolok beállításához használható kapcsolókat a ttys(5) man oldalon olvashatjuk.
Az „egyfelhasználós mód”
részletes leírása a 12.6.2. szakasz - Egyfelhasználós módban található. Fontos
tudni, hogy amikor a FreeBSD-t egyfelhasználós
módban futtatjuk, csupán egyetlen konzolunk van,
és a virtuális konzolok nem érhetőek
el. Egyébként az egyfelhasználós
mód erre vonatkozó
beállításai is megtalálhatóak
az /etc/ttys állományban.
Ehhez keressük meg a console
kezdetű sort:
A console felett látható
megjegyzés jelzi, hogy át tudjuk írni
ebben a sorban a secure
(biztonságos) értékű
paramétert insecure (nem
biztonságos) értékűre. Ilyenkor,
hogy ha a FreeBSD egyfelhasználós módban
indul, kérni fogja a root
felhasználó (a rendszeradminisztrátor)
jelszavát.
Vigyázzunk, amikor ezt az
értéket insecure-ra
állítjuk! Ha ugyanis
véletlenül elfeledkeznénk a
root jelszaváról, akkor
azzal az egyfelhasználós mód
használata is veszélybe kerülhet.
Habár ettől függetlenül is
lehetséges, azokra számára mégis
nehéz helyzetnek bizonyulhat, akik nem mozognak
elég otthonosan a FreeBSD rendszerindítási
folyamatának és a
hozzákapcsolódó programok
ismeretében.
A FreeBSD konzol alapértelmezett videomódja átállítható 1024x768-ra, 1280x1024-re, vagy bármilyen olyan más méretre, amit a videokártyánk és monitorunk képes megjeleníteni. Az eltérő videomódok használatához először újra kell fordítanunk a rendszermagunkat az alábbi két beállítás hozzáadásával:
Miután a rendszermagot sikeresen újrafordítottuk a fenti beállításokkal, a vidcontrol(1) segédprogrammal tudjuk megállapítani, hogy a hardverünk milyen videomódokat enged használni. Az összes támogatott videomódot a következőképpen tudjuk lekérdezni:
# vidcontrol -i modeA parancs eredményeképpen tehát
megkapjuk a hardverünk által ismert
videomódokat. Ezek közül tudjuk
kiválasztani valamelyikőjüket és
root felhasználóként a
vidcontrol(1) segítségével
beállítani:
# vidcontrol MODE_279Ha az új videomód megfelel számunkra,
akkor ezt a beállítást az
/etc/rc.conf állományon
keresztül véglegesíthetjük is:
A FreeBSD, mivel a BSD UNIX® egyik közvetlen leszármazottja, számos UNIX®-os alapötletre épül. Ezek közül az első és talán a leginkább kihangsúlyozott, hogy a FreeBSD egy többfelhasználós operációs rendszer. Egy olyan rendszer, amely egyszerre több, egymástól független feladattal foglalkozó felhasználót képes kiszolgálni. A rendszer felelős a hardveres eszközök, a különféle perifériák, a memória és a processzor idejének minden egyes felhasználó számára szabályos és pártatlan megosztásáért és a feléjük irányuló kérések szervezéséért.
Mivel a rendszer több felhasználót is képes támogatni, az általa kezelt erőforrások rendelkeznek engedélyek egy adott halmazával, amelyek eldöntik, ki tudja ezeket olvasni, írni és végrehajtani. Az engedélyek háromszor három bit formájában jelennek meg, amelyek közül az első bitcsoport az állomány tulajdonosára, a második az állomány csoportjára, végül az utolsó pedig a mindenki másra vonatkozó engedélyeket tárolja.
| Érték | Engedély | Könyvtárlistában |
|---|---|---|
| 0 | Nem olvasható, nem írható, nem hajtható végre | --- |
| 1 | Nem olvasható, nem írható, végrehajtható | --x |
| 2 | Nem olvasható, írható, nem hajtható végre | -w- |
| 3 | Nem olvasható, írható, végrehajtható | -wx |
| 4 | Olvasható, nem írható, nem hajtható végre | r-- |
| 5 | Olvasható, nem írható, végrehajtható | r-x |
| 6 | Olvasható, írható, nem hajtható végre | rw- |
| 7 | Olvasható, írható, végrehajtható | rwx |
A ls(1) -l kapcsolójának
segítségével megnézhetjük a
könyvtárak tartalmának részletes
listáját, amiben megjelennek az
állományok tulajdonosaira, csoportjára
és a mindenki másra vonatkozó
engedélyek is. Például ezt láthatjuk,
ha kiadjuk az ls -l parancsot egy
tetszőleges könyvtárban:
% ls -l
total 530
-rw-r--r-- 1 root wheel 512 Sep 5 12:31 egyik
-rw-r--r-- 1 root wheel 512 Sep 5 12:31 masik
-rw-r--r-- 1 root wheel 7680 Sep 5 12:31 e-mail.txt
...A példabeli ls -l parancs
kimenetének első oszlopa így bomlik fel:
Az első (bal szélső) karakter mondja meg,
hogy ez egy hagyományos állomány,
könyvtár, speciális karakteres eszköz,
socket vagy bármilyen más különleges
pszeudoállomány. Ebben az esetben a
- jelzi, hogy egy hagyományos
állományról van szó. A
következő három karakter, ami ebben a
példában az rw-, adja meg az
állomány tulajdonosának engedélyeit.
Az ezután következő három karakter, az
r-- mutatja az állomány
csoportjának engedélyeit. Az utolsó
három karakter, vagyis itt az r-- adja
meg a többiek engedélyeit. A kötőjel arra
utal, hogy az adott engedélyű
tevékenység nem engedélyezett. Tehát
ennél az állománynál az
engedélyek a következőek: a tulajdonosa tudja
olvasni és írni, a csoportja csak olvasni tudja,
ugyanígy bárki más. A fenti
táblázatnak megfelelően az
állomány engedélyének kódja
644 lesz, ahol az egyes számjegyek
jelentik az állomány engedélyeinek
három elemét.
Ez mind szép és jó, de vajon a rendszer
milyen módon kezeli az állományok
engedélyeit? A FreeBSD a legtöbb hardveres eszközt
állománynak tekinti, amelyeket a programok meg
tudnak nyitni, tudnak róluk olvasni és adatokat
tudnak kiírni rájuk pontosan úgy, mint
bármilyen más állomány esetén.
Ezeket a speciális állományokat a
/dev könyvtárban
találjuk.
A könyvtárakat is állományokként kezeli, ezért azok is rendelkeznek olvasási, írási és végrehajtási engedélyekkel. Azonban a könyvtárak végrehajtását engedélyező bit némileg más jelentéssel bír, mint az állományok esetén. Amikor ugyanis egy könyvtárat végrehajthatónak jelölünk meg, az arra fog utalni, hogy bele tudunk lépni, vagyis hogy ki tudjuk rá adni a „könyvtárváltás” (cd, change directory) parancsát. Ez továbbá arra is utal, hogy az ismert nevű állományokhoz hozzá tudunk férni (természetesen az egyes állományok engedélyeinek megfelelően).
A könyvtárak tartalmát ennek megfelelően viszont csak úgy láthatjuk, ha olvasási engedéllyel rendelkezünk a könyvtárra, míg egy általunk ismert állomány törléséhez a tartalmazó könyvtárhoz kell írási és végrehajtási engedélyekkel rendelkeznünk.
Ezeken kívül még léteznek további engedélyek is, de ezeket csak olyan különleges esetekben használják, mint például a felhasználóváltó programok (setuid program) vagy a ragadós könyvtárak (sticky directory) létrehozása. Az állományok engedélyeinek behatóbb megismeréséhez és beállításához mindenképpen nézzük át a chmod(1) man oldalt.
A szimbolikus engedélyek (gyakran csak szimbolikus kifejezések) az állományok és könyvtárak engedélyeinek megadása során a számok helyett karaktereket használnak. A szimbolikus kifejezések (ki) (hogyan) (milyen engedélyt) alakúak, ahol az alábbi értékek adhatóak meg:
| Elem | Betű | Jelentése |
|---|---|---|
| (ki) | u | tulajdonos |
| (ki) | g | csoport tulajdonos |
| (ki) | o | egyéb |
| (ki) | a | mindenki (a „világ”) |
| (hogyan) | + | engedély megadása |
| (hogyan) | - | engedély visszavonása |
| (hogyan) | = | engedély explicit beállítása |
| (milyen engedély) | r | olvasás |
| (milyen engedély) | w | írás |
| (milyen engedély) | x | végrehajtás |
| (milyen engedély) | t | ragadós (sticky bit) |
| (milyen engedély) | s | UID vagy GID állítása |
Ezek az értékek a chmod(1) paranccsal az
eddigiekhez hasonló módon
használhatóak, csak itt betűket kell
megadnunk. Például az alábbi paranccsal
akadályozhatjuk meg, hogy a tulajdonosán
kívül bárki hozzáférhessen az
ÁLLOMÁNY nevű
állományhoz:
% chmod go= ÁLLOMÁNYAmennyiben egy állománnyal kapcsolatban több változtatást is el kívánunk végezni, össze tudjuk ezeket fűzni egy vesszőkkel elhatárolt felsorolásban:
% chmod go-w,a+x ÁLLOMÁNYA korábban tárgyalt engedélyek mellett még a FreeBSD ismeri az ún. „állományjelzők” (file flags) beállítását is. Ezek a jelzőbitek egy további biztonsági és irányítási szintet nyújtanak az állományok felett, viszont a könyvtárakra nem vonatkoznak.
Ezek az állományjelzők az
állományok felett további
vezérlést adnak a kezünkbe, aminek
révén gondoskodhatunk róla, hogy
akár még a root
felhasználó (a rendszer adminisztrátora) se
legyen képes állományokat
eltávolítani vagy módosítani.
Az állományjelzők értékei
egy egyszerű felületen keresztül, a
chflags(1) segédprogrammal
változtathatóak meg. Például a
következő paranccsal állíthatjuk a
rendszer törölhetetlen (undeletable)
jelzését az allomany1
állományon:
# chflags sunlink allomany1A törölhetetlen jelzés eltávolításához egyszerűen csak írjuk be az előző parancsot úgy, hogy a „sunlink” paraméter elejére még beszúrunk egy „no” szövegrészt. Így:
# chflags nosunlink allomany1Az állományokra éppen
érvényes jelzéseket az ls(1) parancs
-lo kapcsolójának
segítségével jeleníthetjük
meg:
# ls -lo file1
Ennek megfelelően az eredménynek valahogy így kellene kinéznie:
Sok jelzés csak a root
felhasználón keresztül vehető fel vagy
távolítható el. Más esetekben
viszont az állomány tulajdonosa
állíthatja ezeket. A rendszergazdáknak
javasoljuk, hogy ezzel kapcsolatban a chflags(1) és
chflags(2) man oldalakat tanulmányozzák
át.
A korábban említett engedélyeken
kívül létezik még további
három, amelyekkel minden rendszergazdának illik
tisztában lennie. Ezek név szerint a
setuid, setgid és
sticky típusú
engedélyek.
Ezek a beállítások bizonyos UNIX® műveletek esetén nagyon fontosak, mivel az átlagos felhasználók számára általában el nem érhető funkciók használatát támogatják. A megértésükhöz elsőként a felhasználók valódi és effektív azonosítója közti különbségeket kell tisztáznunk.
A valódi azonosító
tulajdonképpen az a felhasználói
azonosító, amellyel a programot indítjuk el
vagy futás előtt birtokoljuk. A program
futása közben azonban az effektív
felhasználói azonosítóval fut.
Például a passwd(1) segédprogram a
jelszavát megváltoztatni
kívánó felhasználó
valódi azonosítójával indul,
miközben a jelszavakat tároló
adatbázis elérésékor már a
root felhasználó
effektív azonosítójával fut.
Ezáltal a privilégiumokkal nem rendelkező
felhasználók is meg tudják
anélkül változtatni a jelszavaikat, hogy a
Permission Denied hibaüzenettel
találkoznának.
A mount(8) nosuid
beállításával azonban az ilyen
típusú binárisok minden
különösebb jel nélkül
csődöt fognak mondani. Mellesleg a mount(8)
man oldala szerint ez az opció nem is teljesen
megbízható, mivel nosuid
wrapperek segítségével meg lehet
kerülni.
Ahogy azt az alábbi példa is szemlélteti, a setuid engedélyt a többi elé egy négyes (4) beszúrásával tudjuk beállítani:
# chmod 4755 suidexample.shA
állomány engedélyei ezt követően
már így fognak megjelenni:suidexample.sh
Most már jól látható, hogy az
állomány tulajdonosához tartozó
engedélyek között a
végrehajthatóságot szabályozó
bit lecserélődött egy s
bitre. Ennek köszönhetően a
passwd parancshoz hasonló módon
kibővített engedélyekkel leszünk
képesek futtatni programokat.
Két terminál megnyitásával
mindezt valós időben is megvizsgálhatjuk. Az
egyiken indítsuk el normál
felhasználóként a passwd
programot. Miközben a program várakozik az
új jelszó megadására, a másik
terminálon kérdezzük le a programhoz
tartozó felhasználói
információkat.
Tehát az egyik terminálon a következőt látjuk:
% passwd
Changing local password for trhodes
Old Password:Eközben pedig a másikon:
# ps aux | grep passwd
trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd
root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwdA passwd parancsot egyszerű
felhasználóként adtunk ki, azonban
jól látható, hogy valójában a
root felhasználó
azonosítójával fut.
A setgid a setuid
engedélyhez hasonlóan működik,
egyedül annyiban tér el, hogy a csoportra
vonatkozó beállításokat
módosítja. Amikor egy alkalmazást vagy
segédprogramot ilyen engedéllyel futtatunk, akkor
az adott programot birtokló csoport engedélyeit
kapjuk meg.
Úgy tudjuk állományokon
beállítani a setgid
típusú engedélyt, ha az iménti
példához hasonlóan a
chmod parancs hívásakor
még egy kettest (2) írunk az engedélyek
elé:
# chmod 2755 sgidexample.shAz így beállított engedélyek az
előbbihöz hasonló módon
szemlélhetőek meg, azonban ebben az esetben a
csoporthoz tartozó engedélyeknél jelenik
meg az s bit:
Az előbb tárgyalt példákkal kapcsolatban fontos megemlítenünk, hogy habár a szkriptek is végrehajtható állományok, nem fognak a valóditól eltérő effektív felhasználói azonosítóval futni. Ennek oka abban keresendő, hogy a parancssori szkriptek nem hívhatják a setuid(2) rendszerhívást.
Ez a két speciális engedély (a
setuid és a setgid) a
programhoz tartozó engedélyek
kiterjesztésével csökkentheti
rendszerünk biztonságát. Ezzel szemben
viszont a harmadik bemutatandó speciális
engedély rendszerünk védelmének
erősítésére szolgál: ez az
ún. sticky bit.
Ha a sticky típusú
engedélyt könyvtárra adjuk meg, akkor a benne
levő állományok törlését
kizárólag azok tulajdonosainak engedi. Ezzel az
engedéllyel lényegében a /tmp könyvtárhoz
hasonló nyilvános, bárki által
elérhető könyvtárakban
akadályozhatjuk meg az állományok idegen
felhasználók általi
törlését. Az engedély
beállításához egy egyest (1) kell a
többi elé fűznünk, mint
például:
# chmod 1777 /tmpMost már az ls parancs
segítségével láthatjuk ennek a
hatását:
# ls -al / | grep tmp
drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmpA sticky bit a
beállítások végén
felbukkanó t révén
azonosítható be.
A FreeBSD könyvtárszerkezetének ismerete alapvető jelentőségű a rendszer egészének megértése szempontjából. Ezen belül is a legfontosabb a gyökérkönyvtár, a „/”. Ez az első könyvtár, amelyet a rendszer a rendszerindítás során csatlakoztat és a többfelhasználós mód előkészítéséhez elegendhetlenül szükséges alaprendszert tartalmazza. A gyökérkönyvtár emellett csatlakozási pontokat szolgáltat a többfelhasználós működésre váltás során csatlakoztatandó további állományrendszerek számára.
A csatlakozási pont egy olyan könyvtár,
ahová a szülő állományrendszeren
(ami gyakran maga a
gyökér-állományrendszer) belül
további állományrendszereket tudunk beoltani.
Erről bővebben a 3.5. szakasz - A lemezek szervezéseban
olvashatunk. A szabványos csatlakozási pontok:
/usr, /var,
/tmp, /mnt és
/cdrom. Ezekre a könyvtárakra
általában az /etc/fstab
állományban találunk hivatkozásokat.
Az /etc/fstab állomány a
rendszer számára a különböző
állományrendszerek és a hozzájuk
tartozó csatlakozási pontok
táblázatát tartalmazza. Az
/etc/fstab állományban
szereplő legtöbb állományrendszer a
rendszerindítás során automatikusan
csatlakoztatásra kerül az rc(8) szkriptből,
hacsak nem tartalmazzák a noauto
beállítást. Ennek részleteit a 3.6.1. szakasz - Az fstab
állományban találhatjuk meg.
Az állományrendszerek hierarchiájának teljes leírását a hier(7) man oldalon olvashatjuk. Mi egyelőre most megelégszünk a leggyakrabban megjelenő könyvtárak rövid áttekintésével.
| Könyvtár | Mi található itt |
|---|---|
/ | Az állományrendszer gyökere. |
/bin/ | Az egy- és többfelhasználós környezetekben is egyaránt alapvető felhasználói segédprogramok. |
/boot/ | Az operációs rendszer indítása során használt programok és konfigurációs állományok. |
/boot/defaults/ | A rendszerindítás alapértelmezett konfigurációs állományai. Lásd loader.conf(5) |
/dev/ | Eszközleírók, lásd intro(4). |
/etc/ | Rendszerkonfigurációs állományok és szkriptek. |
/etc/defaults/ | Az alapértelmezett rendszerkonfigurációs állományok, lásd rc(8). |
/etc/mail/ | A sendmail(8) programhoz hasonló levélküldő rendszerek konfigurációs állományai. |
/etc/namedb/ | A named program
konfigurációs állományai,
lásd named(8). |
/etc/periodic/ | A cron(8) által naponta, hetente és havonta lefuttatandó szkriptek, lásd periodic(8). |
/etc/ppp/ | A ppp program
konfigurációs állományai,
lásd ppp(8). |
/mnt/ | Egy üres könyvtár, amelyet a rendszergazdák általában ideiglenes csatlakozási pontként használnak. |
/proc/ | A futó programokat tartalmazó állományrendszer, lásd procfs(5), illetve mount_procfs(8). |
/rescue/ | Statikusan linkelt programok vészhelyzet esetére, lásd rescue(8). |
/root/ | A root
felhasználó könyvtára. |
/sbin/ | Az egy- és többfelhasználós környezetekben fontos rendszerprogramok és rendszerfelügyeleti eszközök. |
/tmp/ | Átmeneti állományok. A
/tmp
könyvtár tartalma általában
NEM marad meg az újraindítás
után. Erre a célra gyakran
memóriában létrehozott
állományrendszert szoktak csatlakoztatni a
/tmp
könyvtárba. Ez utóbbit az
rc.conf(5) tmpmfs-re vonatkozó
változóinak
beállításával lehet
automatikussá tenni (vagy a
/etc/fstab megfelelő
módosításával, lásd
mdmfs(8)). |
/usr/ | A felhasználói programok és alkalmazások többsége. |
/usr/bin/ | Általános segédprogramok, programozási eszközök és alkalmazások. |
/usr/include/ | Szabványos C include-állományok. |
/usr/lib/ | Függvénykönyvtárak. |
/usr/libdata/ | Egyéb hasznos adatállományok. |
/usr/libexec/ | (Más programok által használt) Rendszerdémonok és rendszereszközök. |
/usr/local/ | A helyi rendszeren telepített programok,
függvénykönyvtárak stb. A FreeBSD
portrendszere is ezt használja
alapértelmezés szerint. A
/usr/local könyvtáron
belül a hier(7) man oldalon
található /usr
könyvtár általános
felépítése használatos. Ez
alól kivételt képez a man
alkönyvtár, amely közvetlenül a
/usr/local alatt
található, nem pedig a
/usr/local/share
könyvtáron belül, valamint a portok
dokumentációja a
share/doc/
könyvtárban található. |
/usr/obj/ | A /usr/src
könyvtárfában található
források fordítása során
keletkező architektúrafüggő
objektumok. |
/usr/ports/ | A FreeBSD Portgyűjtemény (választható). |
/usr/sbin/ | (A felhasználók által használt) Rendszerdémonok és rendszereszközök. |
/usr/share/ | Architektúrafüggő állományok. |
/usr/src/ | BSD és/vagy helyi források. |
/usr/X11R6/ | Az X11R6 rendszer programjai, függvénykönyvtárai stb. (választható) |
/var/ | Különféle napló,
átmeneti, ideiglenes és pufferben
tárolt állományok. A
memóriában létrehozott
állományrendszereket is olykor a /var
könyvtárban találjuk. Ezt az
rc.conf(5) állományban
található varmfs-változók
beállításával tehetjük
automatikussá (vagy a
/etc/fstab megfelelő
módosításával, lásd
mdmfs(8)). |
/var/log/ | Mindenféle rendszernaplók. |
/var/mail/ | A felhasználók postafiókjait tároló állományok. |
/var/spool/ | A nyomtatók és a levelezés puffereléséhez használt könyvtárak. |
/var/tmp/ | Átmeneti állományok. Az itt
található állományok
általában megmaradnak a
következő rendszerindítás
alkalmával is, hacsak a /var nem egy
memóriában létező
állományrendszer. |
/var/yp | A NIS állományai. |
Az állománynév a legkisebb
szervezési egység, amin keresztül a FreeBSD
képes megtalálni az állományokat. Az
állományok neveiben a kis- és nagybetűt
megkülönböztetjük, tehát a
readme.txt és a
README.TXT elnevezés két
különböző állományra utal. A
FreeBSD nem az állományok kiterjesztése (ami a
konkrét példánkban a
.txt volt) alapján dönti el, hogy
az adott állomány vajon program, dokumentum vagy
valamilyen más fajtájú adat.
Az állományok könyvtárakban tárolódnak. Egy könyvtár lehet akár üres (nincs benne egyetlen állomány sem), vagy többszáz állományt is tartalmazhat. Egy könyvtár ráadásul további könyvtárakat is tárolhat, és így az egymásban elhelyezkedő könyvtárak segítségével könyvtárak egy hierarchiáját tudjuk felépíteni. Ezzel sokkalta könnyebben szervezhetővé válnak az adataink.
Az állományokat és
könyvtárakat úgy tudjuk elérni, ha
megadjuk az állomány vagy a könyvtárt
tároló könyvtár nevét, amit egy
perjel, a / követ, valamint így
összefűzve az eléréshez
szükséges további könyvtárak
felsorolása. Tehát, ha van egy
ize nevű könyvtárunk,
amelyben található egy mize
könyvtár, amelyen belül pedig egy
readme.txt, akkor ennek az
állománynak a teljes neve, vagy
másképpen szólva az
elérési útja
ize/mize/readme.txt lesz.
A könyvtárak és az állományok egy állományrendszerben tárolódnak. Minden állományrendszer pontosan egy könyvtárat tartalmaz a legfelső szintjén, amelyet az adott állományrendszer gyökérkönyvtárának nevezünk. Ez a gyökérkönyvtár tartalmazhat aztán további könyvtárakat.
Eddig még valószínűleg minden nagyon
hasonló a más operációs rendszerekben
tapasztalható fogalmakhoz. Azonban adónak
különbségek: például az MS-DOS® a
\ jellel választja el az
állományok és könyvtárak neveit,
miközben a Mac OS® erre a : jelet
használja.
A FreeBSD az elérési utakban sem betűkkel, sem
pedig semmilyen más névvel nem jelöli meg a
meghajtókat. Tehát a FreeBSD-ben nem írhatjuk,
hogy a c:/ize/mize/readme.txt.
Helyette az egyik állományrendszert
kijelölik
gyökér-állományrendszernek.
A gyökér-állományrendszer
gyökérkönyvtárára hivatkoznak
később /
könyvtárként. Ezután minden más
állományrendszert a
gyökér-állományrendszerhez
csatlakoztatunk. Ennek
értelmében nem számít, hogy mennyi
lemezünk is van a FreeBSD rendszerünkben, hiszen minden
könyvtár egyazon lemez részeként jelenik
meg.
Tegyük fel, hogy van három
állományrendszerünk, hívjuk ezeket
A-nak, B-nek és
C-nek. Minden állományrendszer
rendelkezik egy gyökérkönyvtárral, amely
két további könyvtárat tartalmaz:
A1-et és A2-t
(és ennek megfelelően a többi
B1-et és B2-t,
valamint C1 és
C2-t).
Nevezzük A-t a
gyökér-állományrendszernek. Ha a
könyvtár tartalmának
megjelenítéséhez most kiadnánk az
ls parancsot, két
alkönyvtárat látnánk, az
A1-et és A2-t. A
létrejött könyvtárfa valahogy így
nézne ki:

Egy állományrendszert csak egy másik
állományrendszer valamelyik
könyvtárába tudunk csatlakoztatni.
Ezért most tételezzük fel, hogy a
B állományrendszert az
A1 könyvtárba csatlakoztatjuk.
Ezután a B
gyökérkönyvtára átveszi a
A1 helyét az
állományrendszerben, és ennek
megfelelően megjelennek a B
könyvtárai is:

A B1 vagy B2
könyvtárakban található
állományok bármelyike innentől kezdve a
/A1/B1, illetve a /A1/B2
elérési utakon érhetőek el. Az
A1 könyvtárban
található állományok erre az
időre rejtve maradnak. Akkor fognak újra felbukkanni,
ha a B állományrendszert
leválasztjuk az A
állományrendszerről.
Ha a B állományrendszert az
A2 könyvtárba
csatlakoztatnánk, az iménti ábra
nagyjából így nézne ki:

és ennek megfelelően az előbb tárgyalt
elérési utak /A2/B1 és
/A2/B2 lennének.
Az állományrendszerek egymáshoz is
csatlakoztathatóak. A példát ennek
megfelelően úgy is folytathatjuk, hogy a
C állományrendszert
csatlakoztatjuk B
állományrendszerben található
B1 könyvtárhoz. Ennek
eredménye a következő elrendezés
lesz:

Vagy a C állományrendszer az
A1 könyvtáron keresztül
csatlakoztatható akár közvetlenül az
A állományrendszerhez is:

Az MS-DOS® operációs rendszert ismerők
számára ez hasonló lehet a
join parancshoz (habár teljesen nem
egyezik meg vele).
Általában azonban ezzel nem kell törődnünk, hiszen többnyire csak a FreeBSD telepítése során hozunk létre állományrendszereket és választjuk meg a csatlakozási pontjukat. A későbbiekben ez legfeljebb akkor kerül elő ismét, amikor újabb lemezeket adunk hozzá a rendszerhez.
Teljességgel megengedhető, hogy elhagyjuk a többit és csak egyetlen óriási gyökér-állományrendszert használjunk. Ennek viszont megvannak a maga hátrányai és az egyetlen előnye.
A különböző
állományrendszereknek
különböző
csatlakoztatási
beállításai (mount options)
lehetnek. Például, ha kellően
elővigyázatosak akarunk lenni, a
gyökér-állományrendszer
írásvédett módon is
csatlakoztatható, aminek köszönhetően
lehetetlenné válik a rendszer
számára fontos állományok
véletlen törlése vagy
felülírása. Ha
elkülönítjük a
felhasználók számára
írható állományrendszereket
(például a /home
könyvtárakat) a többi
állományrendszertől, lehetővé
válik számunkra, hogy
nosuid
beállítással csatlakoztassuk ezeket. Ez
a beállítás megakadályozza, hogy
ezekben a
suid/guid
bitekkel rendelkező végrehajtható
állományok használhatóak legyenek,
ezáltal növeli a rendszer
biztonságosságát.
A FreeBSD az állományrendszer használatától függően magától határoz a benne található állományok optimális kiosztását illetően. Így tehát a gyakorta módosított, kisebb állományokat tartalmazó állományrendszerek esetén teljesen más technikákat alkalmaz, mint például a nagyobb, kevésbé változó állományok esetén. Azonban egyetlen állományrendszer használatával ez a gyorsítási módszer odavész.
Noha a FreeBSD állományrendszerei nagyon jól tűrik a hirtelen áramkimaradásokat, egy döntő ponton bekövetkező váratlan leállás mégis kárt okozhat a szerkezetükben. Ha azonban több állományrendszerre osztjuk a tárolandó adatainkat, sokkal valószínűbbé válik, hogy egy ilyen eset után a rendszerünk talpra tud állni, és szükség esetén nekünk is könnyebb lesz a biztonsági mentéseinkből helyreállítani a sérült állományokat.
Az állományrendszerek mérete rögzített. Miután a FreeBSD telepítése során létrehoztunk egy adott méretű állományrendszert, előfordulhat, hogy később szükségünk lesz a méretének növelésére. Ilyenkor nehezen kerülhetjük el az ilyenkor szokásos teendőket: biztonsági mentés készítése, az új méretnek megfelelő állományrendszer létrehozása, majd ezután a lementett adataink visszaállítása.
A FreeBSD-ben azonban megtalálható a growfs(8) parancs, amelynek segítségével az állományrendszerek mérete használat közben növelhető, és ezzel megszűnik a méretre vonatkozó korlátozás.
Az állományrendszerek partíciókban
tárolódnak. A FreeBSD UNIX®-os eredete miatt azonban
ez a kifejezés nem a hétköznapi
„partíció” jelentését
takarja (mint például egy MS-DOS®
partíció). Minden partíciót egy
betű azonosít a-tól
h-ig. Mindegyik partíció csak
egyetlen állományrendszert tartalmazhat, aminek
révén az állományrendszereket vagy az
állományrendszerek hierarchiájában
található csatlakozási pontjukkal vagy pedig
az ezeket tartalmazó partíció
betűjével azonosíthatjuk.
A FreeBSD ezeken felül külön lemezterülen tárolja a lapozóállományt (swap space). A lapozóállományt használja a FreeBSD virtuális memória (virtual memory) megvalósításához. Ennek köszönhetően a számítógép képes úgy viselkedni, mintha jóval több memóriával rendelkezne, mint valójában. Így, amikor a FreeBSD kifogy a memóriából, egyszerűen kirakja a memóriából a lapozóállományba az éppen nem használt adatokat, majd amikor ismét szüksége lesz rájuk, visszatölti ezeket (és ilyenkor megint kirak valami mást).
Némely partícióhoz kötődnek bizonyos megszokások.
| Partíció | Megszokás |
|---|---|
a | Általában ez tartalmazza a gyökér-állományrendszert. |
b | Általában ez tartalmazza a lapozóállományt. |
c | Mérete általában a
tartalmazó slice méretével egyezik
meg. Ennek köszönhetően a
segédprogramok (például egy
hibás szektorokat kereső program) a
c partíción
keresztül képesek akár az egész
slice-szal dolgozni. Normális esetben ezen a
partíción nem hozunk létre
állományrendszert. |
d | A d partícióhoz
egykoron kapcsolódott különleges
jelentés, azonban mostanra ez már
megszűnt, és a d egy
teljesen átlagos partíciónak
tekinthető. |
Minden állományrendszert tartalmazó partíciót a FreeBSD egy ún. slice-ban tárol. A FreeBSD számára a slice elnevezés utal mindarra, amit általában partíciónak neveznek, és ismét megemlítjük, mindez a UNIX®-os eredet miatt. A slice-okat 1-től 4-ig sorszámozzák.
A slice-ok sorszáma 1-től indulva az
eszközök neve után egy s
betűvel elválasztva következik. Így
tehát a „da0s1”
jelentése az első slice lesz az első
SCSI-meghajtón. Lemezenként négy fizikai
slice hozható létre, de ezeken belül
tetszőleges típusú logikai slice-ok
helyezhetőek el. Ezen további slice-ok
sorszámozása 5-től kezdődik, így
ennek megfelelően a „ad0s5”
lesz az első IDE-lemezen található első
kiterjesztett slice. Ezeket az eszközöket
foglalják el a különböző
állományrendszerek.
A slice-ok, a „veszélyesen
dedikált” (Dangerously Dedicated) fizikai
meghajtók, és minden más olyan
meghajtó, amely
partíciókat tartalmaz,
a-tól h-ig
jelölődnek. Ez a betű az eszköz neve
után következik, így ennek megfelelően a
„da0a” lesz az első
„da” meghajtó „a”, vagyis a
„veszélyesen dedikált”
partíciója. Az
„ad1s3e” lesz a második
IDE-lemezmeghajtón a harmadik slice-ban szereplő
ötödik partíció.
Végezetül, a rendszerben minden lemezt azonosítunk. A lemez neve a típusára utaló kóddal kezdődik, amely után aztán egy sorszám jelzi, hogy melyik lemezről is van szó. Azonban eltérően a slice-okétól, a lemezek sorszámozása 0-tól indul. Az általánosan elterjedt kódolások a 3.1. táblázat - Lemezes eszközök kódjaiban találhatóak.
Amikor hivatkozunk egy partícióra, a FreeBSD
elvárja tőlünk, hogy nevezzük meg az adott
partíciót tartalmazó slice-ot és
lemezt is. Emiatt egy partícióra mindig úgy
hivatkozunk, hogy először megadjuk a tartalmazó
lemez nevét, ettől s-sel
elválasztva a tartalmazó slice
sorszámát, majd ezt a partíció
betűjelével zárjuk. Erre
példákat a 3.1. példa - Példák lemezek, slice-ok és
partíciók neveireban láthatunk.
Az érhetőség kedvéért a 3.2. példa - Egy lemez kialakításának sablonja bemutatja egy lemez kiosztásának fogalmi sablonját.
A FreeBSD telepítéséhez először be kell állítani a lemezen található slice-okat, majd létrehozni benne a FreeBSD-hez használni kívánt partíciókat, kialakítani rajtuk az állományrendszereket (vagy a lapozóállományt) és eldönteni, melyik állományrendszert kívánjuk csatlakoztatni.
| Kód | Jelentés |
|---|---|
ad | ATAPI (IDE) lemez |
da | közvetlen hozzáférésű SCSI lemez |
acd | ATAPI (IDE) CDROM |
cd | SCSI CDROM |
fd | Floppylemez |
| Név | Jelentés |
|---|---|
ad0s1a | Az első IDE lemezen (ad0)
levő első slice (s1)
első partíciója
(a). |
da1s2e | A második SCSI-lemzen
(da1) levő második slice
(s2) ötödik
partíciója (e). |
Az ábrán a rendszerhez csatlakoztatott első
IDE-lemez látható a FreeBSD
szemszögéből. Tegyük fel, hogy ez a lemez
4 GB méretű és két,
egyenként 2 GB méretű slice-ot (avagy
MS-DOS® partíciót) tartalmaz. Az első slice
egy MS-DOS® formátumú lemezt foglal
magában, a C: meghajtót,
illetve a második slice egy telepített FreeBSD-t
tartalmaz. Ebben a példában a FreeBSD három
adatot és egy lapozóállományt
tároló partícióval
rendelkezik.
A három partíció mindegyikén
találhatunk egy-egy állományrendszert. Az
a partíció lesz a
gyökér-állományrendszer, az
e lesz a rendszerünkben a
/var és az f
pedig a /usr könyvtár.

Az állományrendszereket legkönnyebben
egy-egy faként tudjuk magunk előtt elképzelni,
amelyek a / könyvtárból
nőnek ki. A /dev,
/usr és mellettük szereplő,
hozzájuk hasonló összes többi
könyvtár csupán egy-egy ág, amelyeknek
saját ágaik is lehetnek, mint például
a /usr/local és így
tovább.
Különféle okai vannak annak, hogy egyes
könyvtárakat különálló
állományrendszereken tárolunk. A
/var könyvtár tartalmazza a
log/, spool/
könyvtárakat és különféle
átmeneti állományokat, azonban az ilyen
állományok könnyen megszaporodhatnak és
megtölthetik az állományrendszert. Mivel a
gyökér-állományrendszert nem
tanácsos elárasztani mindenféle
állománnyal, ezért gyakran a hasznunkra
válhat, ha a /var
könyvtárat leválasztjuk a
/ könyvtárból.
A másik gyakori ok, ami az imént említett fa egyes ágainak különböző állományrendszereken történő tárolását indokolja, hogy ezek gyakran más fizikai vagy virtuális lemezeken, például a rendszerhez csatlakoztatott Hálózati állományrendszereken vagy éppen CD-meghajtókon találhatóak.
A rendszerindítás
folyamata során az /etc/fstab
állományban felsorolt
állományrendszerek maguktól kerülnek
csatlakoztatásra (kivéve amikor a
noauto beállítással
szerepelnek).
Az /etc/fstab állományban
található sorok az alábbi
szerkezetűek:
eszköz /csatlakozási-pont típus beállítások mentésigyak ellszámeszközA 18.2. szakasz - Az eszközök elnevezéseiban leírtak szerint megnevezett (létező) eszköz.
csatlakozási-pontEgy (létező) könyvtár, ahova az állományrendszer csatlakozik.
típusAz állományrendszer mount(8)
parancs szerint ismert típusa. A FreeBSD
alapértelmezett állományrendszere az
ufs.
beállításokAz írható-olvasható
állományrendszerek esetén
rw, az írásvédettek
esetén pedig ro, amelyet
igény szerint további
beállítások követhetnek. A
rendszerindítás során automatikusan
nem csatlakoztatandó
állományrendszerek esetén gyakran
alkalmazott beállítás itt még
a noauto. Egyéb
lehetőségeket a mount(8) man oldalon
láthatunk.
mentésigyakEzt általában a dump(8) parancs használja a menteni szükséges állományrendszerek megállapításához. Amennyiben hiányzik ez a mező, az automatikusan a nulla értéket jelöli.
ellszámMegadja, hogy mely állományrendszereket
kell ellenőrizni. A nullás
pass értékkel
rendelkező állományrendszerek nem
kerülnek ellenőrzésre. A
gyökér-állományrendszer (melyet
minden más előtt kell ellenőrizni)
passno értéke egy,
míg az összes többi
állományrendszer passno
értéke általában egytől
különböző. Ha egynél több
állományrendszer is ugyanazt a
passno értéket kapta,
akkor az fsck(8) a lehetőségei szerint
megpróbálja ezeket egyszerre
ellenőrizni.
Az /etc/fstab
felépítéséről és a benne
használható
beállításokról bővebben a
fstab(5) man oldalon olvashatunk.
Az állományrendszerek tényleges csatlakoztatására avagy „mountolására” a mount(8) parancs használható.
Legegyszerűbb formája:
# mount eszköz csatlakozási-pontAhogy a mount(8) man oldalán is olvashatjuk, itt rengeteg opció is megadható, de ezek közül a leggyakoribbak:
-aCsatlakoztatja az /etc/fstab
állományban felsorolt összes
állományrendszert, kivéve azokat,
amelyek a „noauto”
beállítást tartalmazzák, vagy
kizártuk a -t kapcsolóval,
esetleg korábban már csatlakoztattuk.
-dA tényleges csatlakoztatás
elvégzése nélkül
végrehajt minden mást. Ez az opció
leginkább -v opcióval
együtt használható annak
megállapítására, hogy a
mount(8) valójában mit is akar
csinálni.
-fEgy nem tiszta állományrendszer csatlakoztatásának kényszerítése (veszélyes!) vagy egy korábban már csatlakoztatott állományrendszer írható állapotának felfüggesztése.
-rAz állományrendszer
írásvédett csatlakoztatása.
Megegyezik a -o opciónál
megadható ro (vagy a FreeBSD
5.2-nél régebbi verziója
esetén a rdonly)
beállítás
használatával.
-t
típusAz adott állományrendszert az adott
típusnak megfelelően csatlakoztatja, vagy az
-a használata esetén csak
az adott típusú
állományrendszereket.
Az „ufs” az állományrendszerek alapértelmezett típusa.
-uFrissíti az állományrendszerre vonatkozó csatlakoztatási beállításokat.
-vRészletesebb kijelzés.
-wAz állományrendszer csatlakoztatása írásra és olvasásra.
Az -o opció után
vesszővel elválasztott
beállításokat adhatunk meg, többek
közt az alábbiakat:
Az állományrendszeren található állományok végrehajtásának tiltása. Ez egy nagyon hasznos biztonsági beállítás.
Az állományrendszeren nem használhatóak a felhasználó- (setuid) vagy csoportváltásra (setgid) vonatkozó engedélyek. Nagyon hasznos biztonsági beállítás.
Az umount(8) parancs paraméterként egy
csatlakozási pontot, egy eszköznevet vagy a
-a, illetve az -A
opciókat várja.
A leválasztás
kényszerítéséhez mindegyik alakban
szerepelhet az -f opció, valamint a
részletesebb kijelzést a -v
opcióval kapcsolhatjuk be. Azonban szeretnénk
mindenkit figyelmeztetni, hogy a -f
használata alapvetően nem ajánlott. Az
erőszakkal leválasztott
állományrendszerek összeomlaszthatják
a számítógépet vagy kárt
okozhatnak az állományrendszereken
található adatokban.
Az -a és -A
opciók használatosak az összes
csatlakoztatott állományrendszer
leválasztására, amelyek típusait a
-t opció megadása után
sorolhatjuk fel. Fontos különbség azonban,
hogy az -A opció a gyökér
állományrendszert nem próbálja meg
leválasztani.
A FreeBSD egy többfeladatos operációs rendszer. Ez azt jelenti, hogy képes látszólag egyszerre több programot is futtatni. Az így egyszerre futó programokat egyenként folyamatoknak (process) nevezzük. Minden kiadott parancsunk elindít legalább egy ilyen folyamatot, és a rendszerünk mozgásban tartásához bizonyos rendszerszintű folyamatok állandóan futnak a háttérben.
Minden folyamatot egy
folyamatazonosítónak (process
ID vagy PID) nevezett szám
azonosít egyértelműen, és az
állományokhoz hasonlóan, minden folyamatnak
van tulajdonosa és csoportja is. A tulajdonos és a
csoport ismeretében állapítja meg a rendszer,
hogy az adott folyamat a korábban említett
engedélyek szerint milyen állományokhoz
és eszközökhöz férhet hozzá.
Ezenkívül a legtöbb folyamatnak van még
egy szülőfolyamata is. A szülőfolyamat az a
folyamat, amely az adott folyamatot elindította.
Például amikor parancsokat adunk egy
parancsértelmezőn keresztül, akkor maga a
parancsértelmező is egy ilyen folyamat lesz
ugyanúgy, ahogy a benne kiadott parancsok által
elindított programok. Ennek megfelelően az így
létrehozott összes folyamat szülője maga a
parancsértelmező folyamata lesz. Az említettek
alól egyik kivétel az init(8) nevű
speciális folyamat. Az init lesz a
rendszerben mindig az első folyamat, ezért a PID-je is
mindig 1. Az init programot a FreeBSD
indulásakor a rendszermag fogja automatikusan
elindítani.
A rendszerben futó programok
vizsgálatához két, különösen
hasznos parancsot találhatunk: ezek a ps(1) és
a top(1). A ps parancs használatos
a pillanatnyilag futó programok statikus
listájának megjelenítésére.
Ebben olvashatjuk a futó programok
azonosítóit, mennyi memóriát
használnak éppen, milyen paranccsal
indították ezeket stb. A top
parancs mutatja az összes aktívan futó
programot, majd néhány másodpercenként
automatikusan frissíti ezt a listát, aminek
révén folyamatosan láthatjuk, miként
viselkednek a futó programok.
A ps alapértelmezés szerint
csupán az általunk futtatott programokat mutatja.
Például:
% ps
PID TT STAT TIME COMMAND
298 p0 Ss 0:01.10 tcsh
7078 p0 S 2:40.88 xemacs mdoc.xsl (xemacs-21.1.14)
37393 p0 I 0:03.11 xemacs freebsd.dsl (xemacs-21.1.14)
48630 p0 S 2:50.89 /usr/local/lib/netscape-linux/navigator-linux-4.77.bi
48730 p0 IW 0:00.00 (dns helper) (navigator-linux-)
72210 p0 R+ 0:00.00 ps
390 p1 Is 0:01.14 tcsh
7059 p2 Is+ 1:36.18 /usr/local/bin/mutt -y
6688 p3 IWs 0:00.00 tcsh
10735 p4 IWs 0:00.00 tcsh
20256 p5 IWs 0:00.00 tcsh
262 v0 IWs 0:00.00 -tcsh (tcsh)
270 v0 IW+ 0:00.00 /bin/sh /usr/X11R6/bin/startx -- -bpp 16
280 v0 IW+ 0:00.00 xinit /home/nik/.xinitrc -- -bpp 16
284 v0 IW 0:00.00 /bin/sh /home/nik/.xinitrc
285 v0 S 0:38.45 /usr/X11R6/bin/sawfishAhogy az a fenti példában is látszik, a
ps(1) kimenete oszlopokra tagolható. Ezek
közül a PID tartalmazza a
korábban már ismertetett
folyamatazonosítókat. Az azonosítók
1-től indulva egészen 99999-ig
sorszámozódhatnak, illetve ha kifutnánk
belőlük, akkor a számozás kezdődik
elölről (azonban a használatban levő
azonosítók sosem kerülnek újra
kiosztásra). A TT oszlopban
láthatjuk azt a terminált, amelyen az adott program
éppen fut, de ezt pillanatnyilag akár nyugodtan
figyelmen kívül is hagyhatjuk. A
STAT oszlopban a program
állapotát kapjuk meg, de szintén
átugorható. A TIME a program
processzoron eltöltött idejét mutatja — ez
általában nem arra utal, hogy mennyi ideje fut maga
a program, hiszen a legtöbb program sok időt tölt
tétlenül, mielőtt egyáltalán
szüksége lenne processzora. Végezetül a
COMMAND oszlopban olvashatjuk azt a parancsot,
amellyel a programot elindították.
A ps(1) számos különféle
beállítást ismer az általa
megjelenített információk
megválasztásához. Az egyik ilyen
leghasznosabb beállítás az
auxww: az a
segítségével az összes futó
programot láthatjuk, nem csak a sajátjainkat; az
u megadásával
láthatóvá válik a folyamat
tulajdonosának a felhasználói neve, valamint
a memóriahasználata is; az x
megmutatja a démon (avagy háttér)folyamatok
adatait is és a ww hatására
pedig a ps(1) az összes folyamathoz a teljes parancssort
kiírja, még akkor is, ha nem férne ki a
képernyőre.
A top(1) kimenete is hasonló. Ha elindítjuk, általában ezt láthatjuk:
% top
last pid: 72257; load averages: 0.13, 0.09, 0.03 up 0+13:38:33 22:39:10
47 processes: 1 running, 46 sleeping
CPU states: 12.6% user, 0.0% nice, 7.8% system, 0.0% interrupt, 79.7% idle
Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free
Swap: 256M Total, 38M Used, 217M Free, 15% Inuse
PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
72257 nik 28 0 1960K 1044K RUN 0:00 14.86% 1.42% top
7078 nik 2 0 15280K 10960K select 2:54 0.88% 0.88% xemacs-21.1.14
281 nik 2 0 18636K 7112K select 5:36 0.73% 0.73% XF86_SVGA
296 nik 2 0 3240K 1644K select 0:12 0.05% 0.05% xterm
48630 nik 2 0 29816K 9148K select 3:18 0.00% 0.00% navigator-linu
175 root 2 0 924K 252K select 1:41 0.00% 0.00% syslogd
7059 nik 2 0 7260K 4644K poll 1:38 0.00% 0.00% mutt
...A kimenet két részre osztható. A fejlécben (vagyis az első öt sorban) látható az utoljára futtatott program azonosítója (PID), a rendszer átlagos terhelése (load average, amellyel mérjük, hogy a rendszerünk mennyire lefoglalt), a rendszer indítása óta eltelt idő (up mint uptime) és a jelenlegi idő. A fejlécben még megtalálhatjuk azt is, mennyi program fut (esetünkben ez most 47), mennyi memóriát és lapozóállományt használnak, és mennyi időt tölt a rendszer a processzor különböző állapotaiban.
A fejléc alatt a ps(1) kimenetéhez hasonló módon oszlopokba rendezve találhatjuk meg a folyamatok adatait: az azonosítóikat, a tulajdonosaik nevét, a felhasznált processzoridőt, a futtatott parancsot. A top(1) alapértelmezés szerint mutatja a futó programok által használt memória mennyiségét is: ez további két oszlopra oszlik, ahol az egyikben a teljes memóriafoglalást (SIZE), a másikban pedig a jelen pillanatban aktívan használt memóriát (RES) láthatjuk. A példában látható is, hogy a Netscape® (navigator-linu) alkalmazásnak majdnem 30 MB-nyi memóriára van szüksége, de ebből aktívan csak 9 MB-ot használ.
A top(1) a kijelzést minden második
másodpercben magától frissíti, de ez
az s kapcsolóval
állítható.
Amikor elindítunk egy szövegszerkesztőt, nem sok gondunk akad az irányításával, könnyen utasíthatjuk az állományok betöltésére és így tovább. Mindezt azért tehetjük meg, mert a szövegszerkesztő erre lehetőséget biztosít és mivel a szövegszerkesztő egy terminálhoz kapcsolódik. Egyes programok azonban nem úgy lettek kialakítva, hogy állandóan a felhasználó utasításaira támaszkodjanak, ezért az első adandó alkalommal lekapcsolódnak a terminálról. Például egy webszerver egész nap csak webes kéréseket válaszol meg, és általában semmi szüksége nincs a felhasználók utasításaira. A szerverek között leveleket közvetítő programok is ugyanezen osztályba tartoznak.
Ezeket a programokat démononoknak hívjuk. A démonok a görög mitológiában jelentek meg: sem a jót, sem pedig a gonoszt nem képviselték, egyszerű apró szellemecskék voltak, akik az emberiség javát szolgálták, pontosan úgy, ahogy ma teszik azt a különféle web- és levelező szerverek. Ezért is ábrázolták sokáig a BSD kabalafiguráját is egy tornacipős, vasvillás vidám démonként.
A démonként futó programok nevéhez
a hagyományok szerint hozzá szokták
fűzni a „d” betűt. A
BIND a Berkeley Internet Name Domain
(névfeloldó) szolgáltatása, azonban a
hozzá tartozó program neve named,
az Apache webszerver programját
httpd-nek nevezik, a sornyomtató
kezeléséért felelős démon pedig
az lpd és így tovább. Ez
csupán egy hagyomány, megszokás, nem pedig
egy kőbe vésett szabály: például
a Sendmail levelező
démonának neve sendmail és
nem pedig maild.
Néha azért szükségünk lehet
arra, hogy felvegyük valahogy a kapcsolatot a
démonként futó programokkal is. Ennek egyik
lehetséges módja a
jelzések (signal)
küldése (de alapvetően bármilyen
futó programnak küldhetünk). Több
különféle jelzés küldhető
— egyeseknek közülük
megkülönböztetett jelentése van,
másokat magukat az alkalmazások értelmeznek,
amelyről a dokumentációjukban
tájékozódhatunk. A kill(1) vagy
kill(2) paranccsal más tulajdonában levő
futó programoknak nem tudunk jelzéseket
küldeni, ami alól egyedüli kivétel a
root felhasználó.
Bizonyos esetekben a FreeBSD maga is küld néha
jelzéseket. Amikor egy alkalmazást rosszul
programoznak le és megpróbál egy
számára tiltott memóriaterülethez
hozzáférni, a FreeBSD küld neki egy
Segmentation Violation
(SIGSEGV, szegmentálási hiba)
jelzést. Ha egy alkalmazás az alarm(3)
rendszerhíváson keresztül kér egy adott
idő utáni bekövetkező
értesítést, akkor kap erről egy Alarm
(SIGALRM) jelzést és így
tovább.
A folyamatok leállítására
két jelzés használható: a
SIGTERM (befejeztetés) és a
SIGKILL (leállítás). A
SIGTERM a folyamatok
leállításának illedelmes módja,
mivel ekkor a futó program képes
elkapni ezt a jelzést és
észrevenni, hogy le akarjuk állítani.
Ilyenkor a leállítás előtt
lehetősége van szabályosan lezárni a
naplóit és általánosságban
véve befejezni mindent, amit éppen csinál.
Előfordulhat azonban, hogy a folyamatok figyelmen
kívül hagyják a SIGTERM
jelzést, ha például éppen egy
félbeszakíthatatlan feladat közepén
tartanak.
A SIGKILL jelzést azonban egyetlen
futó program sem hagyhatja figyelmen kívül. Ez
lenne a „Nem érdekel, mivel foglalkozol, azonnal
hagyd abba!” jelzés. Amikor
SIGKILL jelzést küldünk egy
folyamatnak, a FreeBSD leállítja a folyamatot ott
és ahol tart
[4].
További használható jelzések:
SIGHUP, SIGUSR1 és
SIGUSR2. Ezek általános
célú jelzések, amelyeket az
alkalmazások eltérő módokon
kezelnek.
Tegyük fel, hogy megváltoztattuk a
webszerverünk beállításait
tartalmazó állományt — valamilyen
módon szeretnénk tudatni a szerverrel, hogy olvassa
be újra a beállításait. Ezt
megtehetjük úgy, hogy leállítjuk
és újraindítjuk a httpd
démont, de ezzel kiesést okozhatunk a szerver
működésében, amit viszont nem
engedhetünk meg. A legtöbb démont úgy
készítették el, hogy a
SIGHUP jelzés hatására
olvassa be újra a beállításait
tartalmazó állományt. Így a
httpd leállítása és
újraindítása helyett egyszerűen
elegendő egy SIGHUP jelzés
küldése. Mivel azonban ez nem
szabványosított, a különböző
démonok ezt a jelzést
többféleképpen is értelmezhetik.
Ezért a használata előtt ennek
mindenképpen járjunk utána a
kérdéses démon
dokumentációjában.
A jelzéseket a kill(1) paranccsal tudjuk elküldeni, ahogy ezt a következő példában is láthatjuk.
Ebben a példában megmutatjuk, hogyan lehet
jelzést küldeni az inetd(8) démonnak.
Az inetd a beállításait
az /etc/inetd.conf
állományban tárolja, és az
inetd a SIGHUP
jelzés hatására képes
újraolvasni ezt.
Keressük meg annak a folyamatnak az
azonosítóját, amelynek a jelzést
kívánjuk küldeni. Ezt a ps(1)
és a grep(1) használatával
tehetjük meg. A grep(1) parancs
segítségével más parancsok
kimenetében tudunk megkeresni egy általunk
megadott szöveget. Ezt a parancsot átlagos
felhasználóként futtatjuk, azonban az
inetd(8) démont a root
birtokolja, ezért az ps(1) használata
során meg kell adnunk az ax
kapcsolókat is.
% ps -ax | grep inetd
198 ?? IWs 0:00.00 inetd -wWInnen kiderül, hogy az inetd(8)
azonosítója 198. Előfordulhat, hogy az
eredményben maga a grep inetd
parancs is megjelenik. Ez a ps(1)
listázási módszere miatt következhet
be.
A jelzés elküldésére
használjuk a kill(1) parancsot. Mivel az
inetd(8) démont a root
felhasználó futtatja, ehhez először a
su(1) parancs kiadásával nekünk is
root felhasználóvá
(rendszeradminisztrátorrá) kell
válnunk.
% su
Password:
# /bin/kill -s HUP 198Ahogy az a legtöbb UNIX® esetén elfogadott, a
sikeres végrehajtás esetén a kill(1)
sem válaszol semmit. Amikor viszont nem egy
saját programunknak akarunk jelzést
küldeni, akkor a kill:
PID: Operation not
permitted (a művelet nem
engedélyezett) hibaüzenetet látunk. Ha
véletlenül elgépeltük volna a
futó program azonosítóját, akkor a
küldendő jelzés nem a megfelelő
folyamatnál fog kikötni (ami nem éppen
jó), vagy ha szerencsénk van, akkor a
jelzést egy éppen használaton
kívüli azonosítóra
küldtük. Az utóbbi esetben a
következő láthatjuk: kill:
PID: No such process
(nincs ilyen folyamat).
/bin/kill?: A legtöbb parancsértelmező
beépítetten tartalmazza a saját
kill parancsát, tehát
ilyenkor közvetlenül maga a
parancsértelmező küldi a jelzést,
nem pedig a /bin/kill programon
keresztül. Ez gyakran a javunkra válhat,
azonban a küldhető jelzések megadása
parancsértelmezőnként eltérhet.
Így, ahelyett, hogy egyenként ismernünk
kellene mindegyiket, sokkal egyszerűbb
közvetlenül a /bin/kill
parancsot
használni....
A többi jelzés küldése is nagyon
hasonló módon történik, hiszen
elegendő csupán a TERM vagy a
KILL behelyettesítése a parancs
megfelelő helyére.
A rendszerünkben óvatosan bánjunk a
futó programok
leállítgatásával, és
legyünk különös tekintettel az 1-es
azonosítóval rendelkező, speciális
feladattal bíró init(8) folyamatra. A
/bin/kill -s KILL 1 parancs
kiadásával ugyanis gyorsan le tudjuk
állítani a rendszerünket.
Mielőtt egy kill(1) parancsot
lezárnánk az Enter
billentyűvel, mindig
győződjünk meg róla, hogy valóban
tényleg a jó paramétereket adtuk
meg.
A FreeBSD-ben hétköznapi munkánk legnagyobb
részét a parancsértelmezőknek (shell)
nevezett parancssoros felületen tudjuk elvégezni. A
parancsértelmező fő feladata a
beérkező parancsok elfogadása és
végrehajtatása. Sok parancsértelmező
ezenfelül rendelkezik beépített
funkciókkal is, amelyek olyan hétköznapi
feladatokban igyekeznek segíteni, mint
például az állományok kezelése
és tömeges elérése reguláris
kifejezések használatával, a parancssor
szerkesztése, parancsok makrózása és a
környezeti változók használata. A FreeBSD
alapból tartalmaz néhány
parancsértelmezőt, ilyen például az
sh, a Bourne Shell, és a
tcsh, a továbbfejlesztett C-shell. Sok
más parancsértelmező, mint
például a zsh és
bash is elérhető a FreeBSD
Portgyűjteményéből.
De melyik parancsértelmezőt is válasszuk?
Ez igazából ízlés kérdése.
Ha inkább C programozók vagyunk, akkor
valószínűleg egy olyan C-szerű shelllel
tudunk kényelmesen dolgozni, amilyen például
a tcsh. Ha viszont egy linuxos rendszert
használtunk korábban vagy éppen még
soha nem használtunk volna a UNIX® parancssorát,
érdemes a bash-sel
megpróbálkoznunk. A lényeg az, hogy minden
parancsértelmezőnek vannak olyan egyedi
jellemezői, amiért használatóak vagy
éppen nem használatóak a munkánkban,
ezért magunknak kell kiválasztani a nekünk
megfelelőt.
A shellek egyik legáltalánosabb jellemzője
az állományok neveinek
kiegészítése. Miután
begépeljük egy parancs vagy
állománynév első néhány
karakterét, a Tab billentyű
lenyomásával megkérhetjük a
parancsértelmezőt, hogy magától
egészítse ki („találja ki”) a
fennmaradó részt. Nézzük erre egy
példát. Tegyük fel, hogy van két
állományunk, izemize és
ize.mize, és szeretnénk
letörölni az ize.mize nevűt.
Ehhez a következőt kell begépelnünk:
rm
iz[Tab].[Tab].
Erre a parancsértelmező a következő
parancsot írja ki: rm
ize[SIPOLÁS].mize.
A [SIPOLÁS] itt a konzol sípjára
vonatkozik, amellyel jelzi, hogy nem tudta teljesen
kiegészíteni az állomány nevét,
mivel egynél több is megfelel a megadott alaknak. Az
izemize és az
ize.mize is egyaránt az
iz előtaggal kezdődik, azonban
ebből a parancsértelmező csak az
ize előtagot tudta kikövetkeztetni.
Ha most begépelünk még egy .
karaktert és újra megnyomjuk a Tab
billentyűt, a parancsértelmező ezúttal
képes lesz az állomány teljes nevét
megállapítani.
A parancsértelmezők másik általános jellemzője a környezeti változók használata. A környezeti változók lényegében a parancsértelmező környezetéhez tárolt név-érték párok. Ezt a környezetet látja minden olyan program, amit a parancsértelmezőből meghívunk, és ezért tartalmazni is szokott sok ilyen beállítást. Íme a leggyakoribb környezeti változók felsorolása és rövid leírása:
| Változó | Leírás |
|---|---|
USER | A bejelentkezett felhasználó neve. |
PATH | Vesszővel elválasztott könyvtárak, ahol a parancsértelmező a végrehajtható állományokat keresi. |
DISPLAY | Az aktuálisan használt X11 megjelenítő hálózati neve, amennyiben létezik ilyen. |
SHELL | A használt parancsértelmező. |
TERM | A felhasználó által használt terminál típusa. Ebből a terminál képességeit lehet megállapítani. |
TERMCAP | A terminálok adatbázisából származó, különböző terminálfunkciókhoz tartozó helyettesítő (escape) kódok. |
OSTYPE | Az operációs rendszer típusa, például FreeBSD. |
MACHTYPE | A rendszer alatt futó gép architektúrája. |
EDITOR | A felhasználó által használt szövegszerkesztő. |
PAGER | A felhasználó által lapozásra használt program. |
MANPATH | Vesszővel elválasztott könyvtárak, ahol a parancsértelmező a man oldalakat keresi. |
A környezeti változók
beállítása
parancsértelmezőnként valamennyire eltér.
Például egy C stílusú
parancsértelmező, mint például a
tcsh vagy a csh, a
setenv paranccsal állítja a
környezeti változókat. A Bourne-féle
parancsértelmezők, mint például az
sh vagy a bash, az
export parancsot használják a
környezeti változók
beállítására. Például a
csh vagy a tcsh
használata során a következőképpen
tudjuk be- vagy átállítani az
EDITOR környezeti változó
értékét
/usr/local/bin/emacs-re:
% setenv EDITOR /usr/local/bin/emacsUgyanez a Bourne-féle parancsértelmezőkben:
% export EDITOR="/usr/local/bin/emacs"A legtöbb parancsértelmezőben a nevük
előtt szerepeltetett $ jel
segítségével kérhetjük a
környezeti változók
értékének
behelyettesítését a parancssorba. Ennek
megfelelően az echo $TERM parancs
kiíratja a TERM változó
aktuális értékét, mivel ebbe a
parancsértelmező már az echo
meghívása előtt behelyettesíti a
TERM értékét.
A parancsértelmezők számos speciális
karaktert, ún. metakaraktert az adatok különleges
reprezentációjaként kezelnek.
Köztük a leggyakrabban használt a
*, amely tetszőleges számú
karaktert helyettesít egy állomány
nevében. Az ilyen metakarakterek
segítségével tudunk egyszerre több
állományt is megnevezni. Például ha
begépeljük az echo * parancsot,
akkor majdnem ugyanazt kapjuk eredményül, mintha az
ls parancsot adtuk volna ki, hiszen a
parancsértelmező ilyenkor veszi az összes
* metakarakterre illeszkedő
állományt, és a kiíratásukhoz
pedig rendre behelyettesíti ezeket a parancssorba az
echo paramétereként.
Ha nem szeretnénk, hogy a parancsértelmező
értelmezze a speciális karaktereket, akkor egy
„backslash” (visszaper) (\)
karaktert eléjük téve mindezt
megakadályozhatjuk. Az echo $TERM
parancs ugyebár kiíratja a terminálra
vonatkozó környezeti változó
beállítását, azonban a echo
\$TERM változatlanul kiírja a
$TERM szöveget.
A parancsértelmezőnk legegyszerűbben a
chsh parancs használatával
változtatható meg. A chsh
kiadása után elindítja az
EDITOR környezeti változónak
megfelelő szövegszerkesztőt, ha nem lenne ilyen,
akkor alapértelmezés szerint a
vi hívódik meg. Az így
megnyitott állományban változtassuk meg
kedvünk szerint a „Shell: ” kezdetű
sort.
A chsh parancsnak megadhatjuk az
-s opciót is, amin keresztül
szövegszerkesztő használata nélkül
be tudjuk állítani a
parancsértelmezőt. Például ha a
parancsértelmezőnket a bash-re
akarjuk lecserélni, akkor ezt írjuk be:
% chsh -s /usr/local/bin/bashA használni kívánt
parancsértelmezőnek szerepelnie
kell az /etc/shells
állományban. Ha a kiválasztott
parancsértelmezőt a Portgyűjteményből
telepítettük fel, akkor az már minden
bizonnyal bekerült oda. Ha viszont saját magunk
raktuk volna fel, akkor ide is fel kell vennünk.
Például ha a bash-t
manuálisan telepítettük és
másoltuk a /usr/local/bin
könyvtárba, akkor így kell
eljárnunk:
# echo "/usr/local/bin/bash" >> /etc/shellsMajd próbálkozzunk újra a
chsh paranccsal.
A FreeBSD beállításának nagy része szöveges állományok szerkesztésével történik. Emiatt sosem árt legalább egy szövegszerkesztőt ismernünk. A FreeBSD alaprendszerében, valamint a Portgyűjteményben is találhatunk néhányat belőlük.
A legegyszerűbben megtanulható és
legkönnyedebb szövegszerkesztőt
ee-nek, avagy „easy
editornak” hívják. Az
ee indításához
írjuk be az ee
parancsot, ahol az
állománynévállománynév lesz a
szerkesztendő állomány neve. Így
például az /etc/rc.conf
állomány szerkesztéséhez
gépeljük be az ee /etc/rc.conf
parancsot. Miután elindult az ee, az
összes szerkesztéshez használható
parancsa megjelenik a képernyő felső
részében. Itt a „kalap”
(^) karakter a Ctrl
billentyű lenyomására utal, így
tehát a ^e jelölés a
Ctrl+e
billentyűkombinációt jelenti. Ha ki akarunk
lépni az ee-ből, nyomjuk le
az Esc billentyűt, majd a felbukkanó
menüből válasszuk a szerkesztő
elhagyását (leave editor). Ha az
állományt módosítottuk,
kilépés előtt még a
szövegszerkesztő rákérdez, hogy mentse-e a
változtatásainkat.
A FreeBSD nagyobb tudású
szövegszerkesztőket, mint például a
vi-t, is tartalmaz az alaprendszer
részeként, miközben a többi, mint
például az Emacs vagy a
vim a Portgyűjtemény
részeként (editors/emacs és editors/vim) érhető el.
Ezek a szerkesztők sokkal több lehetőséget
és erőt képviselnek, amiért
cserébe viszont valamivel nehezebb megtanulni a
használatukat. Ha viszont rengeteg szöveget akarunk
majd szerkeszteni, akkor egy vim vagy
Emacs használatának
megismerésével sok időt
megspórolhatunk.
Számos alkalmazás, amely
állományokat akar módosítani vagy
szöveges bemenetre van szüksége, automatikusan
szövegszerkesztőt nyit meg. Ezt az
EDITOR környezeti változó
beállításával tudjuk
meghatározni. Erről részletesebben a parancsértelmezőknél
olvashatunk.
Az eszköz elnevezést leginkább a
rendszerben folyó, hardverrel kapcsolatos
tevékenységek kapcsán
használják lemezekre, nyomtatókra, grafikus
kártyákra és billentyűzetekre. A FreeBSD
indulása során többnyire azt láthatjuk,
hogy milyen eszközöket sikerült felismernie.
Ezeket a rendszerindításkor megjelenő
üzeneteket a /var/run/dmesg.boot
állományban nézhetjük meg
újra.
Például az acd0 az
első IDE CD-meghajtót, míg a
kbd0 a billentyűzetet
képviseli.
A UNIX® operációs rendszerben a legtöbb
eszközt a /dev könyvtárban
található, eszközleíróknak
(device node) nevezett speciális állományokon
keresztül érhetjük el.
Amikor egy újfajta eszközt adunk hozzá a rendszerhez vagy csak annak egy új példányát, mindig létre kell hoznunk hozzá egy új eszközleírót.
Az eszközöket tartalmazó
állományrendszer, avagy
DEVFS, ad hozzáférést
a rendszermag által ismert eszközök neveihez
a globális állományrendszer nevein
keresztül. Így ahelyett, hogy magunknak kellene
létrehoznunk és módosítanunk az
eszközleírókat, a DEVFS
erre a célra fenntart egy külön
állományrendszert.
A devfs(5) man oldalon olvashatunk bővebben erről.
Annak megértéséhez, hogy a FreeBSD miért az elf(5) formátumot használja, először is tisztában kell lennünk a UNIX® típusú rendszerekben használt végrehajtható állományok három „uralkodó” formátumával:
A legősibb és egyben a „klasszikus” UNIX®-os tárgykódformátum. Egy tömör és rövidke fejlécet használ, aminek az elején a formátum leírására szolgáló „bűvös szám” található (erről bővebben lásd a.out(5)). Három betöltött szegmenst tartalmaz: .text, .data és .bss, valamint egy szimbólumokat és karakterláncokat tároló táblát.
COFF
Az SVR3 tárgykódformátuma. A fejléc itt már tartalmaz egy table nevű szegmenst is, tehát a .text, .data és .bss szegmensekhez hasonlóan ebből is többet tud tárolni.
A COFF után következő formátum, amelyben több szegmens is megtalálható, valamint létezik 32 bites és 64 bites változatban is. Egyetlen hátránya van: az ELF tervezése során rendszerarchitektúránként csupán egyetlen ABI-t (bináris alkalmazói felületet) feltételeztek. Ez azonban meglehetősen helytelen, mivel még a kereskedelmi SYSV világában (ahol már legalább három ABI található: SVR4, Solaris és SCO) sem állja meg a helyét.
A FreeBSD ezt a problémát a megbélyegzés (branding) segítségével próbálja megoldani, aminek révén el tudunk látni egy ismert ELF állományt a futtatásához megfelelő ABI-ra vonatkozó információkkal. Erről részletesebben a brandelf(1) oldalán tájékozódhatunk.
A FreeBSD a „klasszikusok”
táborából indult, ezért kezdetben az
a.out(5) formátumot használta, mivel ez a
technológia a BSD kiadások számos
generációjában megmérettetett
és bevált, egészen a 3.X ág
elindulásáig. Habár már jóval
előtte lehetett fordítani és futtatni
natív ELF binárisokat (és
rendszermagokat) a FreeBSD rendszereken, a FreeBSD kezdetben
ódzkodott váltani az alapértelmezés
szerinti ELF formátumra. De vajon
miért? Nos, amikor a Linux-tábor megtette a maga
fájdalmas váltását az
ELF-re, az nem annyira azért volt, hogy
megszabaduljanak az a.out
végrehajtható formátumtól, hanem mert
a rugalmatlan, ugrótáblákon alapuló
oszottkönyvtár-kezelési mechanizmusaik nagyon
megnehezítették a gyártók és
fejlesztők számára az osztott
függvénykönyvtárak
létrehozását. Mivel az
ELF formátumhoz rendelkezésre
álló eszközök megoldást
kínáltak az osztott könyvtárak
gondjaira, és mivel általánosan
elfogadták „a jövőbe vezető
útként”, a FreeBSD is felvállalta az
átállással kapcsolatos
költségeket és végrehajtotta azt. A
FreeBSD az osztott könyvtárakat leginkább a Sun
SunOS™ rendszeréhez hasonlóan kezeli, ami egy
nagyon könnyen használható
megoldás.
De miért van ilyen sok különböző formátum?
A ködös és sötét múltban
egyszerűbb hardverek voltak. Ezek az egyszerű hardverek
egyszerű, kicsi rendszereket támogattak. Az
a.out tökéletesen megfelelő
volt egy ilyen egyszerű rendszer (egy PDP-11)
binárisainak tárolására. Ahogy az
emberek nekiláttak átültetni erről az
egyszerű rendszerről a UNIX®-ot más
rendszerekre, az a.out formátumot
továbbra is megtartották, mivel a UNIX® kezdeti,
Motorola 68k-ra, VAXenre készített
átírataihoz is elegendő volt.
Ezután néhány éles
elméjű hardvermérnök kitalálta,
ha rá tudnák kényszeríteni a
programokat egy-két ügyetlen trükkre, akkor a
terveken meg tudnának spórolni néhány
logikai kaput és ezzel a processzor is gyorsabban tudna
futni. Miközben az a.out
formátumot ilyen hardverre (amit manapság
RISC-nek hívnak) is szerették
volna áthozni, kiderült, hogy ebben az esetben szinte
használhatatlan. Ezért az
a.out formátum által
felkínáltnál nagyobb
teljesítmény elérése
érdekében nekiláttak számos más
formátumot is kidolgozni. Ekkor jöttek létre a
COFF, ECOFF és
más hasonló formátumok, amelyek
előbb-utóbb korlátokba ütköztek,
még mielőtt a történelem
megállapodott volna az ELF
formátumnál.
Ráadásul a programok méretei egyre
inkább kezdtek nőni, miközben a lemezek (valamint
a fizikai memória) továbbra is viszonylag kicsik
maradtak, ezért megszületett az osztott
könyvtár ötlete, és a virtuális
memóriát kezelő alrendszer is sokat finomodott.
Mivel ezek a különböző fejlesztések az
a.out formátumra épültek,
annak használatósága a beletömött
módosítások számával
együtt romlott. Emellett az emberek még szerettek
volna betölteni különféle dolgokat
futási időben dinamikusan, vagy éppen a
memória és a lapozóállomány
megspórolásához kipucolni a programjaik egyes
részeit az inicializáló
kódrészletek lefutása után. A
programozási nyelvek is fejlődtek, és az
emberek a főprogram futása előtt is akartak
kódot futtatni. Az a.out
formátum rengeteg apró foltozáson esett
keresztül, amelyek egy ideig még tudták is
tartani magukat. Azonban egy idő után már az
a.out formátum egyre növekvő
teljesítménycsökkenés nélkül
már nem volt képes állni a sarat.
Habár az ELF megszüntette a
fennálló problémák jelentős
részét, egyúttal megnehezítette egy
alapvetően működő rendszer
leváltását. Ezért az
ELF formátumnak meg kellett
várnia azt a pillanatot, amikorra az
a.out használata már
kényelmetlenné vált.
Azonban ahogy múlt az idő, az eszközökből, amelyekből a FreeBSD a fordításához szükséges eszközöket származtatta (különösen az assembler és a betöltő),létrejött két párhuzamos fejlesztési fa. A FreeBSD-fa kiegészült az osztott könyvtárak támogatásával és hibákat javított, miközben a GNU-fa alkotói, akik eredetileg készítették ezeket a programokat, újraírták az eszközeiket és a keresztfordításhoz egyszerűbb támogatást készítettek, cserélhetővé tették a különböző formátumokat és így tovább. Sokan akartak FreeBSD-re keresztfordítani, azonban nem volt szerencséjük, mert a FreeBSD régebbi forrásait az as és ld már nem emésztette meg. Az új GNU eszköztár (a binutils) viszont ismeri már a keresztfordítást, az ELF formátumot, az osztott könyvtárakat, a C++ kiterjesztéseit stb. Időközben egyre több gyártó ELF formátumú binárisokat adott ki, és jó érzés volt ezeket FreeBSD-n is futtatni.
Az ELF sokkal kifejezőbb az
a.out formátumnál, és
jóval több bővítési
lehetőséget enged az alaprendszerben. Az
ELF formátumhoz tartozó
eszközöket jobban karbantartják és
támogatja a keresztfordítást, ami viszont
sokaknak fontos. Az ELF talán
némileg lassabb, mint az a.out,
azonban ez nehezen mérhető le. Számos
részletben eltérnek ugyan, például
hogyan képeznek le lapokat, hogyan kezelik az
inicializáló kódot stb., de ezek egyike sem
igazán fontos. Idővel az a.out
támogatása ki fog kerülni a
GENERIC rendszermagból, és
végül majd teljesen eltávolításra
kerül, ahogy a régi a.out
formátumú programok szépen lassan
kifutnak.
A FreeBSD legátfogóbb
dokumentációja a benne található man
oldalak összessége. A rendszerben
található szinte majdnem mindegyik programhoz
létezik egy rövid használati
útmutató, amely bemutatja az adott program
alapvető működését és a
különböző beállításait.
Ezek a leírások a man parancs
segítségével jeleníthetőek meg.
A man parancs használata
egyszerű:
% man parancsahol a parancs a megismerni
kívánt parancsra utal. Például ha
az ls parancsról szeretnénk
többet megtudni, írjuk be:
% man lsAz elérhető használati útmutatókat a következő számozott szakaszokra osztották:
Felhasználói parancsok
Rendszerhívások és hibakódok
A C függvénykönyvtár függvényei
Eszközmeghajtók
Állományformátumok
Játékok és egyéb szórakoztató alkalmazások
Egyéb információk
Rendszerkarbantartási és -működtetési parancsok
Rendszermagfejlesztők számára
Bizonyos esetekben ugyanaz a téma az
útmutatók több szakaszában is
elérhető. Például létezik
chmod felhasználói parancs
és a chmod()
rendszerhívás. Ilyenkor a man
parancsnak meg tudjuk adni pontosan, melyik szakaszra is vagyunk
kíváncsiak:
% man 1 chmodEnnek hatására a chmod
felhasználói parancshoz tartozó oldal
jelenik meg. Írott formában a használati
útmutatók különböző
szakaszaira hagyományosan a név után
zárójelbe tett számmal hivatkoznak,
így a chmod(1) a chmod
felhasználói parancs és a chmod(2) a
rendszerhívás.
Ez a módszer remekül működik abban az
esetben, amikor ismerjük a parancs nevét, azonban
mit tegyünk akkor, ha nem is emlékszünk a
nevére? A man parancs a
-k segítségével
paraméterezhető úgy is, hogy a parancsok
leírásai között keressen valamilyen
kulcsszó mentén:
% man -k mailEzzel a paranccsal megkapjuk azon parancsok
listáját, amelyek leírásában
szerepel a „mail” kulcsszó. Ez
egyébként működésében
teljesen megegyezik a apropos
paranccsal.
Szóval szeretnénk megtudni, hogy a
/usr/bin könyvtárban levő
parancsok pontosan mit is csinálnak? Ehhez írjuk
be:
% cd /usr/bin
% man -f *vagy
% cd /usr/bin
% whatis *ami ugyanezt teszi.
A FreeBSD-ben megtalálható a Szabad Szoftver
Alapítvány (Free Software Foundation, FSF)
által készített számos
alkalmazás. Ezek a programok a szokványos man
oldalakon kívül még általában
tartalmaznak egy infonak nevezett, sokkal
részletesebb hipertext alapú leírást
is, amelyeket az info paranccsal, vagy ha van
fenn emacs, akkor annak az info
módjában tudjuk megjeleníteni.
Az info(1) parancs használatához ennyit kell beírnunk:
% infoItt a h lenyomásával kapunk
egy rövid bemutatkozást. A parancsok rövid
listáját a ? billentyű
hozza elő.
[1] Erre utal pontosan az i386
jelzés. Még abban az esetben is az
i386 kiírást fogjuk
látni, ha a FreeBSD-t konkrétan nem is az Intel®
386-os processzorán futtatjuk. Itt ugyanis nem a
processzorunk típusát, hanem annak
„architektúráját”
láthatjuk.
[2] A rendszerindító szkriptek olyan programok, amelyek a FreeBSD indulása során maguktól lefutnak. Legfontosabb feladatuk elvégezni a többi program futtatásához szükséges beállításokat, valamint elindítani a háttérben futtatandó, hasznos munkát végző szolgáltatásokat.
[3] A FreeBSD konzol- és billentyűzetmeghajtóinak teljes, pusztán műszaki és precíz leírása a syscons(4), atkbd(4), vidcontrol(1) és kbdcontrol(1) man oldalakon olvasható. Itt most nem bocsátkozunk részletekbe, azonban a téma iránt érdeklődő olvasóknak mindig érdemes fellapozniuk a kapcsolódó man oldalakat, ahol megtalálhatják az említett eszközök részletesebb és bővebb leírását.
[4] Ez azért nem teljesen igaz. Van néhány olyan tevékenység, ami nem szakítható meg. Ilyen például az, amikor a program egy másik számítógépen található állományt próbál olvasni, miközben valamilyen ok (kikapcsolás, hálózati hiba) folytán elveszti vele a kapcsolatot. Ekkor a program futása „megszakíthatatlan”. Majd amikor a program feladja a próbálkozást (általában két perc után), akkor következik be a tényleges leállítása.
A FreeBSD rendszereszközök gazdag gyűjteményével érkezik az alaprendszer részeként. Azonban a külső alkalmazások telepítéséhez rengeteg teendőt kell elvégeznünk. A feladat elvégzésére ezért a FreeBSD két, egymást kiegészítő technológiát kínál fel: a FreeBSD Portgyűjteményt (telepítés forráskódból) és a csomagokat (telepítés előre elkészített bináris csomagokból). Mind a két módszerrel fel tudjuk telepíteni a kedvenc alkalmazásunk legújabb verzióját lokálisan vagy egyenesen a hálózatról.
A fejezet elolvasása során megismerjük:
hogyan telepítsünk külső fejlesztésű bináris szoftvercsomagokat;
hogyan fordítsunk le a forrásukból külső fejlesztésű szoftvereket a Portgyűjtemény segítségével;
hogyan távolítsunk el korábban már telepített csomagokat és portokat;
hogyan bíráljuk felül a Portgyűjtemény által használt alapértelmezett értékeket;
hogyan keressük meg a megfelelő szoftvercsomagokat;
hogyan frissítsük a telepített alkalmazásokat.
Ha korábban már használtunk UNIX® rendszereket, valószínűleg ismerjük a külső alkalmazások telepítésének jellemező menetét:
Töltsük le a szoftvert, amelyet vagy forráskód vagy pedig bináris formátumban érhetünk el.
Bontsuk ki az alkalmazás letöltött változatát (ez általában a compress(1), gzip(1) vagy a bzip2(1) által tömörített tar állomány).
Keressük meg a dokumentációt
(többnyire az INSTALL vagy a
README állományban
található, vagy a doc/
alkönyvtárban) és olvassuk el benne, hogyan
tudjuk telepíteni a szoftvert.
Ha a szoftver forrását
töltöttük le, fordítsuk le.
Elképzelhető, hogy ennek során
szerkesztenünk kell a Makefile
állományt vagy lefuttatnunk a
configure szkriptet, illetve más
lépéseket is el kell
végeznünk.
Próbáljuk a ki szoftvert, majd telepítsük.
Ez annak a forgatókönyve, amikor minden hiba nélkül lezajlik. Megeshet azonban, ha olyan szoftvert telepítünk, amelyet nem kifejezetten a FreeBSD-hez terveztek, akkor javítanunk kell a forráskódban a szoftver megfelelő működéséhez.
Ha sikerül működésre bírni, folytathatjuk FreeBSD-n a szoftver telepítését a „megszokott” módon. Habár a FreeBSD erre a célra két lehetőséget is felkínál, amivel rengeteg erőfeszítéstől megkímélhet minket: ezek a csomagok és a portok. Az írás pillanatában közel 20 000 külső alkalmazás érhető el ilyen formában.
Egy adott alkalmazás esetén a hozzá tartozó FreeBSD-s csomag mindössze egyetlen letöltendő állományt takar. A csomag tartalmazza az alkalmazás telepítéséhez szükséges összes parancs előre lefordított változtatát, ugyanígy magát a dokumentációt is. A letöltött csomagokat a FreeBSD csomagkezelő parancsaival vehetjük használatba: ezek a pkg_add(1), pkg_delete(1), pkg_info(1) és így tovább. Az új alkalmazások telepítése ennek köszönhetően egyetlen paranccsal elvégezhető.
Egy alkalmazás FreeBSD-s portja mögött lényegében állományok gyűjteménye áll, amelyek abban segítenek, hogy automatikusan tudjunk telepíteni a forráskód felhasználásával.
Ne felejtsük el, hogy normális esetben számos lépcsőt végig kell járnunk egy program sajátkezű lefordításához (letöltés, kitömörítés, javítgatás, fordítás, telepítés). A portot alkotó állományok tartalmazzák az összes olyan szükséges információt, amelyek átengedik ezt a feladatot a rendszernek. Kiadunk néhány egyszerű parancsot és az alkalmazás magától letöltődik, kitömörítődik, módosítja a forráskódját, lefordul és települ.
Valójában a portrendszer
használható olyan csomagok
létrehozására is, amelyeket
később a pkg_add és
többi hozzá hasonló, hamarosan
részletesebben is bemutatandó csomagkezelő
paranccsal is kezelni tudunk.
A csomagok és a portok egyaránt képesek
függőségeket kezelni.
Tegyük fel, hogy egy olyan alkalmazást akarunk
telepíteni, amely egy adott
függvénykönyvtár
meglététől függ a rendszeren. Az
alkalmazás és a könyvtár is
elérhető FreeBSD portként és
csomagként. Akár a pkg_add
parancsot, akár a portrendszert használjuk az
alkalmazás hozzáadására, mind a
kettő észre fogja venni, hogy a szükséges
könyvtárt még nem telepítettük,
ezért először azt fogja automatikusan
telepíteni.
Tudván, hogy a két említett megoldás szinte teljesen egyenértékű, felmerülhet a kérdés: a FreeBSD mégis miért rendelkezik mindkettővel? A csomagoknak és a portoknak is megvannak a maguk előnyei, és hogy a kettő közül melyiket használjuk, csak az egyéni ízlésünkön múlik.
Egy csomag általában kisebb, mint az alkalmazás forráskódját tartalmazó tömörített tar állomány.
A csomagokat nem kell fordítani. Nagyobb alkalmazások, mint például a Mozilla, KDE vagy GNOME esetén ez kulcsfontosságú lehet, főleg abban az esetben, ha a rendszerünk ehhez nem eléggé gyors.
A csomagok használata nem várja el tőlünk, hogy behatóbban ismerjük, miként is kell FreeBSD-n szoftvereket lefordítani.
A csomagokat általános esetben igen óvatos beállításokkal készítik el, hiszen a lehető legtöbb rendszeren működőképesnek kell lenniük. Ha viszont portból telepítünk, nyugodtan hangolhatjuk úgy a beállításokat, hogy (például) a Pentium® 4 vagy az Athlon processzoroknak kedvező kódot hozzanak létre.
Bizonyos alkalmazások fordítás idején állítandó beállításokkal rendelkeznek arról, hogy mire lesznek képesek és mire nem. Például az Apache beépített konfigurációs opciók széles kelléktárával rendelkezik. Amikor viszont portból hozzuk létre, nem kell elfogadnunk ezek alapértelmezett értékeit, hanem a saját igényeinknek megfelelően átállíthatjuk ezeket.
Egyes esetekben több különféle
beállítást tükröző csomag
is létezhet ugyanahhoz az alkalmazáshoz.
Például a Ghostscript
elérhető ghostscript
és ghostscript-nox11
csomagként is attól függően, hogy
telepítettük-e az X11 szervert. Ez
természetesen egy meglehetősen durva
kijátszása a csomagrendszernek, és
gyorsan lehetetlenné is válik a
használata, ha az adott alkalmazás
egy-két fordítási idejű
beállításnál többel
rendelkezik.
Néhány szoftver licencelése tiltja a bináris terjesztést. Ezért ezek a szoftverek kizárólag csak forráskód formájában továbbíthatóak.
Néhányan nem bíznak meg a bináris verziókban. Ha látjuk a forráskódot is, akkor (elméletben) át tudjuk nézni, és mi magunk is megkereshetjük a benne lappangó hibákat.
Ha vannak saját javításaink, csak a forráskód birtokában tudjuk ezeket felhasználni.
Sokan szeretik, ha egyszerűen csak „ott van” a szoftverek forráskódja. Ha éppen unatkoznak, beléjük tudnak nézni, ötleteket és kódot tudnak belőlük meríteni (persze csak akkor, ha ezt a licenc megengedi), vagy tovább tudják ezeket fejleszteni, orvosolni tudják a hibáikat stb.
A portok frissítéséről a FreeBSD ports levelezési lista és a FreeBSD ports bugs levelezési lista valamelyikéről szerezhetünk naprakész információkat.
Mielőtt bármelyik alkalmazást is telepítenénk, érdemes meglátogatnunk az http://vuxml.freebsd.org oldalt, ahol a hozzá tartozó ismert biztonsági problémákról olvashatunk.
Telepíthetjük a ports-mgmt/portaudit programot is,
amely automatikusan ellenőrzi a telepített
alkalmazások ismert sebezhetőségeit. Ez az
ellenőrzés egyébként megejthető
minden port lefordítása előtt is. Ezalatt a
portaudit -F -a parancs
kiadásával ellenőrizhetjük utólag
a telepített csomagokat.
A fejezet fennmaradó részében megmutatjuk, hogyan használjuk FreeBSD-ben a csomagokat és portokat külső alkalmazások telepítésére és karbantartására.
Mielőtt telepítenénk bármilyen alkalmazást, tudnunk kell, hogyan is nevezik.
A FreeBSD-hez elérhető alkalmazások listája folyamatosan növekszik. Szerencsére számos módja van annak, hogy utánajárjunk a keresett szoftvernek:
A FreeBSD honlapján találhatunk egy rendszeresen frissülő listát az összes elérhető alkalmazásról, a http://www.FreeBSD.org/ports/ címen. Itt a portok különböző kategóriákba sorolva találhatóak meg, ahol név szerint megkereshetjük az alkalmazást (amennyiben ismerjük), vagy végigböngészhetjük az adott kategóriában elérhető alkalmazásokat is.
Dan Langlille a http://www.FreshPorts.org/ címen karbantartja a FreshPorts nevű oldalt. Ezen az oldalon folyamatosan nyomon lehet követni a Portgyűjteményben megtalálható alkalmazások változásait, lehetővé téve, hogy egy vagy több portot is „figyeljünk”, vagy e-mailt küldjünk a frissítésükről.
Amennyiben nem ismerjük a keresett alkalmazás nevét, próbáljuk meg felkutatni a FreshMeaten (http://www.freshmeat.net/) vagy hozzá hasonló oldalakon, majd nézzük meg a FreeBSD honlapján, hogy az adott alkalmazást portolták-e már a rendszerre.
Ha pontosan ismerjük a port nevét, és
csak a kategóriáját kellene
megkeresnünk, használjuk a whereis(1)
parancsot. Egyszerűen csak adjuk ki a whereis
parancsot,
ahol a névnév a
telepítendő program neve. Ha sikerült
megtalálni, részletes információt
kapunk arról, hogy hol található,
valahogy így:
# whereis lsof
lsof: /usr/ports/sysutils/lsofA fenti példában megtudhatjuk, hogy az
lsof parancs a
/usr/ports/sysutils/lsof
könyvtárban található.
Vagy egy egyszerű echo(1) paranccsal is megkereshetjük a portfában a portokat. Mint például:
# echo /usr/ports/*/*lsof*
/usr/ports/sysutils/lsofEz a módszer a /usr/ports/distfiles
könyvtárba letöltött összes
illeszkedő állományt is
kilistázza.
Egy másik lehetőség egy adott port
megtalálására, ha a
Portgyűjtemény beépített
keresési mechanizmusát használjuk. Ennek
használatához a /usr/ports
könyvtárban kell lennünk. Miután
beléptünk ide, futtassuk le a make
parancsot, ahol a search
name=programnévprogramnév
a keresendő program neve. Például, ha az
lsof programot keressük:
# cd /usr/ports
# make search name=lsof
Port: lsof-4.56.4
Path: /usr/ports/sysutils/lsof
Info: Lists information about open files (similar to fstat(1))
Maint: obrien@FreeBSD.org
Index: sysutils
B-deps:
R-deps: A keresés eredményében leginkább a „Path:” kezdetű sorra kell odafigyelnünk, mivel ez árulja el, hol is találhatjuk meg a portot. Az itt szereplő többi információ nem szükséges a port telepítéséhez, ezért azokkal itt most nem foglalkozunk.
Mélyebb keresésekhez használhatjuk a
make parancsot
is, ahol a search
key=szövegszöveg a
keresendő szöveg(részlet) lesz. Ezt a
rendszer keresni fogja a portok neveiben,
megjegyzésekben, leírásokban és
függőségekben. Amikor nem ismerjük a
keresett program nevét, ez olyan portok
keresésére alkalmas, amelyek egy adott
témához kapcsolódnak.
A fenti esetek mindegyikében a keresés nem különbözteti meg a kis- és nagybetűket. Tehát az „LSOF” keresése ugyanazt az eredményt adja, mint az „lsof” esetén.
FreeBSD alatt több különböző módon tudunk csomagokat használni:
A sysinstall használatán keresztül a futó rendszeren tudjuk megnézni a telepített csomagokat, tudunk vele csomagokat telepíteni vagy törölni. Ezzel részletesebben a 2.10.11. szakasz - Csomagok telepítése foglalkozik.
A szakasz további részében ismertetett egyéb parancssoros csomagkezelő segédprogramok.
A pkg_add(1) segédprogram segítségével telepíthetünk FreeBSD-hez készült szoftvercsomagokat lokálisan vagy a hálózaton levő egyik szerveren megtalálható állományokból:
# ftp -a ftp2.FreeBSD.org
Connected to ftp2.FreeBSD.org.
220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
331 Guest login ok, send your email address as password.
230-
230- This machine is in Vienna, VA, USA, hosted by Verio.
230- Questions? E-mail freebsd@vienna.verio.net.
230-
230-
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /pub/FreeBSD/ports/packages/sysutils/
250 CWD command successful.
ftp> get lsof-4.56.4.tgz
local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
200 PORT command successful.
150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
100% |**************************************************| 92375 00:00 ETA
226 Transfer complete.
92375 bytes received in 5.60 seconds (16.11 KB/s)
ftp> exit
# pkg_add lsof-4.56.4.tgzHa nincsenek egyáltalán helyben csomagjaink
(például egy FreeBSD CD-készletben), akkor a
legjobban úgy járunk, ha használjuk a
pkg_add(1) -r kapcsolóját.
Ennek hatására a segédprogram
önmagától meghatározza a
szükséges állományformátumot
és verziót, majd FTP-n keresztül letölti
és telepíti a csomagot.
# pkg_add -r lsofAz iménti példában a program
mindenféle további beavatkozás
nélkül letölti a megfelelő csomagot
és felteszi. Ha a központi helyett egy másik
szervert szeretnénk használni, felül kell
bírálnunk az alapértelmezett
beállításokat és igényeinknek
megfelelően be kell állítanunk a
PACKAGESITE környezeti változó
értékét. A pkg_add(1) a fetch(3)
programot használja az állományok
letöltésére, amely pedig számos
egyéb környezeti változót is figyel,
mint például az FTP_PASSIVE_MODE,
az FTP_PROXY és az
FTP_PASSWORD. Ha tűzfal mögött
vagyunk, ezek közül néhányat biztosan be
kell majd állítanunk, vagy FTP/HTTP proxyt kell
használnunk. A fetch(3) man oldalán
megtaláljuk ezen változók teljes
felsorolását. Figyeljük meg, hogy az
lsof-4.56.4 helyett csak
lsof-ot adtunk meg. Amikor ugyanis
kérjük a csomag letöltését is,
nem szabad verziószámot megadnunk. A
pkg_add(1) mindig az alkalmazás legfrissebb
verzióját fogja letöltetni.
Ha a FreeBSD-CURRENT vagy FreeBSD-STABLE verziókat
használjuk, a pkg_add(1) mindig az
alkalmazás elérhető legfrissebb
verzióját fogja letölteni. Ha azonban
valamelyik -RELEASE verziót használjuk, a
csomagnak az adott kiadáshoz készült
verzióját fogja leszedni. Ezt a
működési módot a
PACKAGESITE változó
felülírásával viszont meg tudjuk
változtatni. Például ha a
FreeBSD 5.4-RELEASE változatával dolgozunk, a
pkg_add(1) alapértelmezés szerint a
ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-5.4-release/Latest/
címről fogja letölteni a csomagokat. Ha mi
viszont a FreeBSD 5-STABLE csomagok
letöltését akarjuk elérni,
állítsuk az PACKAGESITE
értékét a
ftp://ftp.freebsd.org/pub/FreeBSD/i386/packages-5-stable/Latest/
címre.
A csomagok .tgz és
.tbz formátumokban kerülnek
terjesztésre. Ezek az ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/
címen, vagy pedig a FreeBSD CD-ken találhatóak
meg. A 4 CD-ből álló készlet (illetve
a PowerPak stb.) minden CD-jén találhatunk
csomagokat a packages/
könyvtárban. A csomagokat tároló
könyvtár struktúrája hasonló a
/usr/ports könyvtárban
kialakított könyvtárfához. Minden
kategóriának saját könyvtára
van, és minden csomag megtalálható az
All (összes)
kategóriában.
A csomagrendszer könyvtárszerkezete tehát megegyezik a portok szétosztásával, ezáltal így képesek egymással összedolgozni a teljes csomag/port rendszer megformálásában.
A pkg_info(1) egy olyan segédprogram, amellyel készíteni lehet egy listát a telepített csomagokról, és emellett még más egyéb információkat tudhatunk meg róluk.
# pkg_info
cvsup-16.1 A general network file distribution system optimized for CV
docbook-1.2 Meta-port for the different versions of the DocBook DTD
...A pkg_version(1) összefoglalja az összes telepített csomag verzióját. Ezenkívül össze is hasonlítja a csomagok verzióját a portfában található aktuális verziókéval.
# pkg_version
cvsup =
docbook =
...A második oszlopban látható jelek utalnak a telepített verzió a helyi portfában található verzióéhoz viszonyított korára.
| Jel | Jelentés |
|---|---|
| = | A telepített csomag verziója megegyzik a helyi portfában található verziójával. |
| < | A telepített verzió a portfában levőnél régebbi. |
| > | A telepített verzió újabb, mint a portfában található. (A helyi portfa valószínűleg nem lett frissítve.) |
| ? | A telepített csomag nem található a portok között. (Ez akkor történhet meg, amikor például egy portot eltávolítottak a Portgyűjteményből vagy átnevezték.) |
| * | A csomagnak több verziója is jelen van. |
| ! | A telepített csomag szerepel az indexben, de a
pkg_version valamiért nem volt
képes összehasonlítani a
verziószámát az indexben levő
bejegyzéssel. |
Egy korábban már telepített csomag eltávolításához használjuk a pkg_delete(1) segédprogramot.
# pkg_delete xchat-1.7.1A pkg_delete(1) használatánál
szükség van a csomag teljes nevének és
verziószámának megadására. A
fenti parancs tehát nem működik, ha csak az
xchat-et adjuk meg az
xchat-1.7.1 helyett. A
telepített csomag verzióját azonban
könnyedén kitalálhatjuk a pkg_version(1)
alkalmazásával. Esetleg egyszerűen
dzsókerkaraktereket is használhatunk:
# pkg_delete xchat\*Ebben az esetben az összes xchat-tel
kezdődő csomagot letörli.
A most következő szakaszokban megismerhetjük
azokat az alapvető utasításokat, amelyekkel a
Portgyűjteményen keresztül tudunk programokat
telepíteni és eltávolítani. Az ehhez
használható make targetek
és környezeti változók
részletesebb leírását a ports(7)
man oldalán lelhetjük meg.
Mielőtt bármelyik portot is tudnánk
telepíteni, elsőként magát a
Portgyűjteményt kell megszereznünk — ez
lényegében a /usr/ports
könyvtárban megtalálható
Makefile állományok,
javítások és leírások
gyűjteménye.
A FreeBSD telepítése közben a sysinstall rákérdez a Portgyűjtemény telepítésére is. Ha erre nemet válaszoltunk volna, a portok gyűjteményét az alábbi módokon szerezhetjük be:
A CVSup protokoll használatával viszonylag gyorsan el tudjuk érni és naprakészen tudjuk tartani a Portgyűjtemény egy példányát. A CVSup használatát alaposabban a A CVSup használata című függelékben ismerhetjük meg.
A FreeBSD 6.2 változatától kezdve az
alaprendszerben a CVSup
protokollt a csup
valósítja meg. A FreeBSD korábbi
változatának használói ezt a
programot a net/csup
porton vagy csomagon keresztül tudják
telepíteni.
Gondoskodjunk róla, hogy a /usr/ports üres legyen a
csup első futtatása
előtt! Ha más forrásból raktuk ide
a Portgyűjteményt, a
csup nem fogja lenyesegetni az
azóta eltávolított
javításokat.
Futtassuk a csup programot:
# csup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfileItt írjuk át a
cvsup.FreeBSD.org
címét a hozzánk legközelebb
levő CVSup szerver
címére. Az összes elérhető
tükörszerver címét a CVSup
tükrözések (A.6.7. szakasz - CVSup oldalak) című részben
olvashatjuk.
Ha például el akarjuk kerülni a
CVSup szerver
megadását a parancssorban, akkor
mindenképpen a ports-supfile
állományból érdemes
készíteni egy saját
verziót.
Ebben az esetben root
felhasználóként másoljuk a
/usr/share/examples/cvsup/ports-supfile
állományt egy új helyre,
például a /root
könyvtárba vagy a saját
felhasználói
könyvtárunkba.
Szerkesszük át a
ports-supfile
állományt.
Írjuk át a
CHANGE_THIS.FreeBSD.org
értéket a hozzánk
legközelebb található
CVSup szerverére. A
CVSup
tükrözések (A.6.7. szakasz - CVSup oldalak) című
részben megtaláljuk az összes ilyen
tükörszervert.
És most indítsuk el a
csup parancsot az alábbi
módon:
# csup -L 2 /root/ports-supfileA csup(1) parancs későbbi futása során már letölti és érvényesíti az észlelt változtatásokat a saját Portgyűjteményünkben, de a telepített portokat nem fogja újrafordítani.
A Portsnap egy másik módszert képvisel a Portgyűjtemény terjesztésére, a lehetőségeinek részletesebb megismeréséhez tekintsük át A Portsnap használata című szakaszt.
Töltsük le a Portgyűjtemény
tömörített pillanatképét a
/var/db/portsnap
könyvtárba. Ha akarjuk, ezután a
lépés után már
lekapcsolódhatunk az internetről.
# portsnap fetchHa még csak először futtatjuk a
Portsnapet, bontsuk ki az
imént letöltött állapotot a
/usr/ports
könyvtárba:
# portsnap extractHa viszont már korábban is létezett
a /usr/ports
könyvtárunk és most csak
frissítjük, akkor helyette ezt a parancsot adjuk
ki:
# portsnap updateEbben az esetben a sysinstall nevű programmal telepítjük a Portgyűjteményt valamilyen telepítőeszközről. Ilyenkor azonban a kiadás dátumának megfelelő, valószínűleg régebbi változat kerül fel. Ha rendelkezünk internet-hozzáféréssel, akkor inkább az előbb tárgyalt módszerek valamelyikét alkalmazzuk.
root
felhasználóként adjuk ki a
sysinstall parancsot, ahogy itt is
láthatjuk:
# sysinstallMenjünk le és álljunk meg a (Beállítások) menüpontnál, és nyomjunk Enter billentyűt.
Menjünk le és keressük meg a (Terjesztések) menüponot, majd nyomjuk meg az Enter billentyűt.
Menjünk le, válasszuk ki a elemet a Szóköz megnyomásával.
Menjünk fel az (Kilépés) ponthoz, nyomjuk meg az Enter billentyűt.
Válasszuk ki a telepítéshez használni kívánt eszközt, mint például CD, FTP stb.
Menjünk fel az (Kilépés) menüpontig, majd nyomjuk meg az Enter billentyűt.
Végezetül lépjünk ki a sysinstall programból, aminhez nyomjuk meg az X billentyűt.
A „váz” fogalma az első, amit a Portgyűjteménnyel kapcsolatban tisztázni kell. Dióhéjban összefoglalva, egy port váza azon állományok legszűkebb halmaza, amelyek elárulják a FreeBSD számára, hogyan fordítsuk le hibamentesen és hogyan telepítsük az adott programot. Ehhez minden port vázában megtalálható:
Egy Makefile nevű
állomány. Ez tartalmazza azokat a
különböző utasításokat,
amelyek megmondják, hogyan kell lefordítani
és hova kell telepíteni a rendszerünkben
az adott alkalmazást.
Egy distinfo nevű
állomány. Ebben található
információ a port
lefordításához szükséges
állományok
letöltéséről, valamint a
letöltött állományok
ellenőrzéséhez szükséges (az
md5(1) és sha256(1) programokkal
számolt) ellenőrzőösszegek.
Egy files alkönyvtár.
Itt találhatjuk meg azokat a
javításokat, amelyek
alkalmazásával le tudjuk fordítani a
programot FreeBSD-n is. Ezek a javítások
többnyire bizonyos állományok
módosításaira vonatkozó
apró állományok
formájában jelennek meg.
Természetüknél fogva szöveges
formátumúak, és általában
olyanok szerepelnek bennük, hogy
„Töröld a 10. sort” vagy
„Változtasd meg a 26. sort erre: ...”.
Ezeket a javításokat eredetileg patcheknek
(foltoknak) nevezik, vagy másképp diffeknek
(eltéréseknek) is, mivel a diff(1)
program segítségével hozzák
ezeket létre.
Ez a könyvtár tartalmazhat további állományokat is portok elkészítéséhez.
Egy pkg-descr nevű
állomány. Ez a program részletesebb,
gyakran többsoros bemutatása.
Egy pkg-plist nevű
állomány. Itt találjuk meg a port
által telepítendő összes
állományt. Ez egyben közli a
portrendszerrel is, hogy az eltávolítás
során mely állományokat kell majd
törölnie.
Egyes portokban szerepelhetnek még egyéb
állományok is, mint például a
pkg-message. Ezeket az
állományokat a portrendszer különleges
helyzetek kezelésére tartogatja. Ha még
többet kívánunk megtudni ezekről az
állományokról, vagy magukról a
portokról általánosságban, lapozzuk
fel a FreeBSD porterek kézikönyvét.
A port ugyan tartalmazza a forráskód lefordításához szükséges utasításokat, de konkrétan a forráskódot nem. Ezt egy CD-ről vagy az internetről tudjuk megszerezni. A forráskód általában a szerzője által kedvelt formában jelenik meg: ez gyakran egy gzip-pel tömörített tar állomány, de lehet tömörítve mással is, vagy éppen lehet tömörítetlen. A program forráskódját, legyen akármilyen formában is, nevezik „distfile”-nak (terjesztési állománynak). A FreeBSD portok telepítésének két módszerét tárjuk fel a következőkben.
A portok telepítéséhez
root felhasználóként
kell bejelentkeznünk.
Mielőtt telepítenénk bármelyik portot is, ajánlott frissíteni a Portgyűjteményünket és ellenőriznünk az adott portot a http://vuxml.freebsd.org címen található biztonsági adatbázisban.
Az újonnan telepítendő
alkalmazások biztonsági
sebezhetőségeinek ellenőrzését
automatikussá is tehetjük a
portaudit
használatával. Ez a segédeszköz is
a Portgyűjteményben található
(ports-mgmt/portaudit).
Érdemes minden port telepítése előtt
letöltenünk a legfrissebb sebezhetőségi
adatbázist a portaudit -F parancs
kiadásával. Mellesleg az adatbázis
rendszeres frissítése és ez a
biztonsági felülvizsgálat a
naponként elvégzendő biztonsági
ellenőrzések közt is megjelenik.
Ezekről részletesebben a portaudit(1)
és periodic(8) man oldalakon olvashatunk.
A Portgyűjtemény feltételezi, hogy
működő
internet-hozzáféréssel rendelkezünk.
Amennyiben ez nem így lenne, a terjesztési
állományokat, forráskódokat
saját magunknak kell bemásolnunk a
/usr/ports/distfiles
könyvtárba.
A kezdéshez lépjünk be a telepítendő port könyvtárába:
# cd /usr/ports/sysutils/lsofMiután beléptünk az
lsof könyvtárába,
láthatjuk a port vázát. A
következő lépés a
fordítás, avagy a port
„buildelése”
(elkészítése). Ezt egy szimpla
make parancs kiadásával
kezdeményezhetjük. Miután megtettük,
valami ilyesmit kell tapasztalnunk:
# make
>> lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
>> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
===> Extracting for lsof-4.57
...
[ide jön a kitömörítés kimenete]
...
>> Checksum OK for lsof_4.57D.freebsd.tar.gz.
===> Patching for lsof-4.57
===> Applying FreeBSD patches for lsof-4.57
===> Configuring for lsof-4.57
...
[ide jön a configure szkript kimenete]
...
===> Building for lsof-4.57
...
[ide jön a fordítás kimenete]
...
#A fordítás befejeztével visszakapjunk a
parancssort. A soron következő lépés a
port telepítése lesz. Ehhez mindössze
egyetlen szóval kell kiegészítenünk a
make parancs meghívását:
ez a szó pedig az install
(telepít) lesz.
# make install
===> Installing for lsof-4.57
...
[a telepítés kimenete kimarad]
...
===> Generating temporary packing list
===> Compressing manual pages for lsof-4.57
===> Registering installation for lsof-4.57
===> SECURITY NOTE:
This port has installed the following binaries which execute with
increased privileges.
#Miután ismét visszakaptuk a parancssort,
már futtatni is tudjuk a frissen telepített
alkalmazásunkat. Mivel az lsof
programnak tovább jogosultságokra is
szüksége van, egy erről szóló
biztonsági figyelmeztetést is láthatunk. A
portok létrehozása és
telepítése során érdemes
figyelnünk az ehhez hasonló
figyelmeztetésekre.
A telepítés befejeztével nem árt törölnünk a fordításhoz felhasznált alkönyvtárat (work) is. Ezzel nemcsak a drága lemezterületet spóroljuk meg, hanem megelőzzük a port későbbi frissítése során felmerülő esetleges problémákat is.
# make clean
===> Cleaning for lsof-4.57
#Az eljárásból két
lépést meg is tudunk takarítani, ha
egyszerűen csak a make parancsot adjuk ki az előbb
három lépésben tagolt
install
cleanmake, make
és
installmake
parancsok helyett.clean
Bizonyos parancsértelmezők a
PATH környezeti változóban
felsorolt könyvtárakban található
parancsokat gyorsítótárban
tárolják, ezzel felgyorsítva a
hozzájuk tartozó végrehajtható
állományok keresését. Ha
történetesen ilyen parancsértelmezőt
használnánk, az új portok
telepítése után
szükségünk lehet a rehash
parancs kiadására, mivel enélkül nem
tudjuk elérni a frissen telepített parancsokat.
Ezt a parancsot például a
tcsh és a hozzá
hasonló parancsértelmezőkben
találhatjuk meg, az sh és
rokonainál pedig a hash -r ennek a
megfelelője. A pontos információkat
erről a témáról a
parancsértelmezőnk
dokumentációjában lelhetjük
meg.
Némely külső DVD termék, mint
például a FreeBSD Malltól
megrendelhető FreeBSD Toolkit, tartalmazhatnak
terjesztési állományokat. Ezek
remekül használhatóak a
Portgyűjteménnyel. Ehhez csatlakoztatnunk kell a
DVD-t a /cdrom könyvtárba.
Ettől eltérő csatlakozási pontok
használata esetén ne felejtsük el
átállítani a CD_MOUNTPTS
változót sem a make
számára. Ekkor a fordításhoz
szükséges állományokat úgy
fogja kezelni a rendszer, mintha a merevlemezünkön
lennének.
Vigyázzunk arra, hogy néhány portot nem lehet CD-n terjeszteni. Ez részben azért lehet, mert a szükséges állományok letöltéséhez, illetve újbóli terjesztéséhez ki kell tölteni valamilyen regisztrációs nyomtatványt, vagy pedig egyéb okok miatt. Tehát ha olyan portot akarunk telepíteni, ami nincs rajta a CD-n, mindenképpen rendelkeznünk kell internetkapcsolattal.
A portrendszer a fetch(1) segédprogramot
használja az állományok
letöltésére, amely figyelembevesz
különféle környezeti
változókat, ilyenek többek közt az
FTP_PASSIVE_MODE, FTP_PROXY
és az FTP_PASSWORD. Ha tűzfal
mögött vagyunk, szükségünk lehet ezek
némelyikének helyes
beállítására, vagy FTP/HTTP proxyt
kell használnunk. A fetch(3) man oldala tartalmazza
ezen változók teljes
listáját.
A make
azon felhasználók számára
nyújt segítséget, akik nem csatlakoznak
minden esetben a hálózatra. Egyszerűen csak
futtassuk le a könyvtárszerkezet
legtetejéről (fetch/usr/ports) ezt a
parancsot és a szükséges
állományok letöltődnek nekünk. A
parancs működik az alsóbb szinteken is,
például a /usr/ports/net
könyvtárban. Azonban legyünk tekintettel arra,
hogy ha egy port függ más portoktól vagy
függvénykönyvtáraktól, ez a
parancs nem fogja letölteni a
hozzájuk tartozó állományokat.
Ilyenkor a fetch helyett
használjuk a fetch-recursive
targetet.
Ha a make parancsot egy felsőbb
szinten futtatjuk, akkor ezzel létre tudjuk hozni az
összes vagy csak kategóriánként az
összes portot, hasonlóan az előbb
említett make
módszerhez.
Ez azonban veszélyes, mivel egyes portok
kizárják mások használatát.
Emellett előfordulhat az is, hogy bizonyos portok
ugyanazon a néven telepítenek több,
tartalmukban különböző
állományt.fetch
Nagyon ritkán adódhat, hogy a
felhasználónak nem a
MASTER_SITES által mutatott
helyekről kell beszereznie a szükséges
állományokat (innen töltődnek ugyanis
le). A MASTER_SITES
beállítást az alábbi paranccsal
bírálhatjuk felül:
# cd /usr/ports/könyvtár
# make MASTER_SITE_OVERRIDE= \
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetchEbben a példában a
MASTER_SITES értékét a
ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/
címre változtattuk meg.
A portok némelyike lehetővé teszi
(esetleg meg is követeli), hogy engedélyezzük
vagy letiltsuk a készülő program bizonyos
elemeit hatékonysági, biztonsági vagy
egyéb testreszabási irányelvek
mentén. Ilyen többek közt a www/mozilla, a security/gpgme és a mail/sylpheed-claws. Ha
elérhetőek ilyen beállítási
lehetőségek, arról a rendszer egy
üzenetben tájékoztat minket.
Néha hasznos (vagy kötelező) lehet
eltérő munka- és
célkönyvtárak alkalmazása. A
WRKDIRPREFIX és a
PREFIX változókkal ezek
alapértelmezéseit tudjuk megváltoztatni.
Például a
# make WRKDIRPREFIX=/usr/home/example/ports installparancs a portot a
/usr/home/example/ports
könyvtárban fogja lefordítani és az
eredményét a /usr/local
könyvtárba telepíti. A
# make PREFIX=/usr/home/example/local installparancs hatására a port a
/usr/ports könyvtárban
készül el és a
/usr/home/example/local
könyvtárba települ.
Természetesen a
# make WRKDIRPREFIX=../ports PREFIX=../local installparancs ötvözi az előbbi kettőt (amelyet most túlságosan is hosszú lenne kiírni, de vélhetően sejthető belőle az alapötlet).
Lehetőség van ezen változókat a saját környezetünkben is beállítani. Ha erre lenne szükségünk, nézzünk utána az ezzel kapcsolatos teendőnek a parancsértelmezőnk man oldalán.
Bizonyos portok az (X Window System
részeként megjelenő)
imake segédprogramra
támaszkodnak, ahol viszont nem működik a
PREFIX
átállítása és
mindenképpen a /usr/X11R6
könyvtárba akar telepíteni. Ehhez
hasonlóan egyes Perl portok figyelmen kívül
hagyják a PREFIX
változót és közvetlenül a Perl
fájába kerülnek. Az ilyen portok
esetén nagyon nehéz vagy szinte lehetetlen
betartatni a PREFIX
használatát.
Egyes portok lefordítása előtt
megjelenik egy ncurses alapú menü, ahol ki tudunk
választani bizonyos fordítási
beállításokat. Gyakran előfordul,
hogy a port lefordítása után a
felhasználók szeretnék újra
előhozni ezt a menüt és megadni vagy kivenni
bizonyos beállításokat. Erre több
mód is kínálkozik. Egyik ilyen
lehetőség az, ha belépünk a port
könyvtárába és kiadjuk a
make
parancsot, amivel lényegében ismét
előcsaljuk a beállításokat
összefoglaló menüt. Másik ilyen
lehetőség a configmake
alkalmazása, amivel a porthoz tartozó
összes beállítást tudjuk egyszerre
megjeleníteni. Ezek mellett még
használható a showconfigmake
parancs is, amivel
törölni tudjuk az összes eddigi
beállítást és így
újrakezdhetjük a port
konfigurációját. Ezek és a
többi ilyen opció a ports(7) man oldalon
kerül bővebb kifejtésre.rmconfig
Most már tudjuk, miként lehet portokat
telepíteni, azonban valószínűleg
még az is érdekelhet minket, hogy miként
kell ezeket eltávolítani abban az esetben, ha
például később meggondolnánk
magunkat velük kapcsolatban. A korábban
telepített példaportot fogjuk
eltávolítani (a figyelmetlenek
kedvéért megemlítjük, hogy ez az
lsof volt). A portok
eltávolítása teljesen egybevág a
csomagokéval (erről a csomagokról szóló
részben beszéltünk), mivel ekkor is
használhatjuk a pkg_delete(1) parancsot:
# pkg_delete lsof-4.57Először is a pkg_version(1) parancs felhasználásával listázzuk ki azokat a portokat, amik felett már eljárt az idő és a Portgyűjteményben található belőlük újabb verzió:
# pkg_version -vMiután frissítettük a
Portgyűjteményünket, de még
mielőtt megpróbálnánk
akármelyik portot is frissíteni, érdemes
egy pillantást vetnünk a
/usr/ports/UPDATING
állományra. Itt megtalálhatóak
azok a problémák és a hozzájuk
tartozó lépések, amelyekkel a
felhasználóknak a portok
frissítése során szembe kell
nézniük, beleértve az
állományformátumok, a
konfigurációs állományok
helyének megváltozását vagy
egyéb olyan módosításokat, amik a
korábbi verziókkal
összeférhetetlenséget
szülhetnek.
Amennyiben az UPDATING
állomány tartalma ellentmondana az itt
olvasottakkal, mindig az UPDATING
állományban leírtak az
irányadóak.
A portupgrade nevű
segédprogramot a portok egyszerűbb
frissítésére találták ki,
és a ports-mgmt/portupgrade portban
található meg. A make
paranccsal
bármelyik más porthoz hasonlóan
telepíthetjük:install clean
# cd /usr/ports/ports-mgmt/portupgrade
# make install cleanA pkgdb -F paranccsal
fésültessük át a telepített
portok listáját, és javítsuk az
általa jelentett ellentmondásokat.
Érdemes rendszeresen elvégezni ezt,
lehetőleg minden frissítés
előtt.
Miután kiadtuk a portupgrade -a
parancsot, a portupgrade
nekilát frissíteni az összes elavult portot
a rendszerünkben. Ha minden egyes
frissítést külön meg szeretnénk
erősíteni, használjuk a -i
kapcsolót is.
# portupgrade -aiHa nem akarjuk az összes portot frissíteni,
csupán egy bizonyos alkalmazásét,
használjuk a portupgrade
paraméterezést. A pkgname-R
kapcsoló megadásával a
portupgrade először
frissíti az adott alkalmazás
függőségeit.
# portupgrade -R firefoxHa a művelet során csomagokat
kívánunk használni portok helyett, adjuk
meg a -P kapcsolót. Ennek
révén a portupgrade
megkeresi a csomagokat a PKG_PATH
környezeti változóban felsorolt
könyvtárakban vagy ha itt nem találja,
letölti ezeket egy távoli szerverről.
Amennyiben a csomagokat sem helyben, sem pedig a távoli
szerveren nem találja, a
portupgrade helyettük portokat
fog használni. Ilyenkor a portok
használatát a -PP
kapcsoló beállításával
lehet elkerülni:
# portupgrade -PP gnome2Csak a terjesztési állományok (vagy a
-P esetén csomagok)
letöltéséhez használjuk a
-F kapcsolót. Mindezekről
részletesebben a portupgrade(1) man oldalon
olvashatunk.
A Portmanager egy másik
hasznos segédprogram a portok könnyű
frissítéséhez. A ports-mgmt/portmanager porton
keresztül érhető el:
# cd /usr/ports/ports-mgmt/portmanager
# make install cleanHasználatával az összes telepített port egyetlen paranccsal frissíthető:
# portmanager -uHa a Portmanager minden egyes
lépését külön meg
kívánjuk erősíteni, akkor a
-ui kapcsolókat se felejtsük el
megadni. A Portmanager emellett
új portok telepítésére is
használható. Eltérően a
make install clean parancsban
megszokottaktól, a kiválasztott port összes
függőségét még a
fordítás és a telepítés
előtt fogja frissíteni.
# portmanager x11/gnome2Ha bármilyen gondot tapasztalnánk a kiválasztott port függőségeit illetően, a Portmanagert felkérhetjük az összes függőség helyes sorrendben történő újrafordítására. Amikor befejezte, a problémás portot is újra létrehozza.
# portmanager graphics/gimp -fBővebb információkért lásd portmanager(1).
A Portmaster szintén a
portok frissítésére alkalmas
segédprogram. A Portmaster
esetében a hangsúly az
„alaprendszerben” is megtalálható
eszközök használatán van (tehát
nem függ semmilyen más porttól) és a
/var/db/pkg/
könyvtárban található
információk alapján dönti el, hogy
milyen portokat kell frissítenie. A ports-mgmt/portmaster portból
érhető el:
# cd /usr/ports/ports-mgmt/portmaster
# make install cleanA Portmaster a portokat az alábbi négy kategória valamelyikébe sorolja be:
Gyökér (root) portok (nem függenek semmitől, semmi sem függ tőlük)
Törzs (trunk) portok (nem függenek semmitől, de mások függenek tőlük)
Ág (branch) portok (vannak függőségeik és mások is függenek tőlük)
Levél (leaf) portok (vannak függőségeik, de semmi sem függ tőlük)
A következő paranccsal le tudjuk kérni az
összes telepített portot és az
-L kapcsolóval
frissítéseket keresni hozzájuk:
# portmaster -L
===>>> Root ports (No dependencies, not depended on)
===>>> ispell-3.2.06_18
===>>> screen-4.0.3
===>>> New version available: screen-4.0.3_1
===>>> tcpflow-0.21_1
===>>> 7 root ports
...
===>>> Branch ports (Have dependencies, are depended on)
===>>> apache-2.2.3
===>>> New version available: apache-2.2.8
...
===>>> Leaf ports (Have dependencies, not depended on)
===>>> automake-1.9.6_2
===>>> bash-3.1.17
===>>> New version available: bash-3.2.33
...
===>>> 32 leaf ports
===>>> 137 total installed ports
===>>> 83 have new versions available
Az összes telepített port egyetlen egyszerű paranccsal frissíthető:
# portmaster -aA Portmaster
alapértelmezés szerint minden egyes
törlendő korábbi portról
biztonsági másolatot készít.
Amikor az új változat telepítése
sikeresen lezajlott, akkor a
Portmaster ezt a másolatot
megsemmisíti. A -b
paraméterrel azonban megkérhetjük, hogy
ne törölje le a biztonsági mentést.
Az -i megadásával a
Portmaster interaktív
módban indul el, és minden port
frissítése előtt a
felhasználó
megerősítését fogja
kérni.
Amennyiben valamilyen hiba lép fel a
frissítés folyamán, az
-f opció megadásával
kérhetjük az összes port
frissítését és
újrafordítását is:
# portmaster -afA Portmaster használatával új portokat is fel tudunk telepíteni a rendszerre úgy, hogy azok függőségeit is igyekszik frissíteni a lefordításuk előtt:
# portmaster shells/bashA további részleteket a portmaster(8) man oldalon találjuk.
A Portgyűjtemény idővel egyre több
helyet fog elfoglalni a merevlemezünkön.
Miután sikeresen létrehoztunk és
telepítettünk egy szoftvert a
hozzá tartozó portból, érdemes mindig
eltakarítanunk magunk után a work könyvtárban menet
közben keletkezett átmeneti
állományokat a make
parancs
használatával. Az egész
Portgyűjteményt egyetlen mozdulattal ezzel a
paranccsal tudjuk végigsepregetni:clean
# portsclean -CAz idő előrehaladtával a distfiles könyvtárban
is rengeteg régi forrás tud felhalmazódni.
Ezeket eltávolíthatjuk kézzel, vagy az
alábbi parancs segítségével
törölhetjük az összes olyan
terjesztési állományt, amelyekre már
egyetlen port sem hivatkozik:
# portsclean -DVagy törölhetjük az összes olyan terjesztési állományt, amelyre egyetlen pillanatnyilag feltelepített port sem hivatkozik a rendszerünkben:
# portsclean -DDA portsclean segédprogram a
portupgrade programcsomag
része.
Ne felejtsük el eltávolítani azokat a
portokat, amikre már nincs szükségünk a
továbbiakban. Ebben a feladatban egy jól
használható segédeszköz lehet a
segítségünkre, a ports-mgmt/pkg_cutleaves port.
Az új alkalmazás feltelepítése után minden bizonnyal szeretnénk elolvasni a hozzá társított dokumentációt, az egyedi beállításainknak megfelelően módosítani a konfigurációs állományokat, engedélyezni a rendszerindítás során történő automatikus indítását (ha démonról lenne szó) és így tovább.
Az egyes alkalmazások beállításához elvégzendő lépések nyilvánvalóan egyedenként eltérőek. Azonban tudunk szolgálni néhány általános tanáccsal válaszként az ilyenkor felmerülő „Na és akkor most mi legyen?” kérdésre:
Kérdezzük meg a pkg_info(1) programtól, milyen állományok és hova kerültek fel a telepítés során. Például, ha a SzuperCsomag 1.0.0-át raktunk fel, akkor a
# pkg_info -L SzuperCsomag-1.0.0 | lessparancs kilistázza az összes
állományt, amit a csomagból felraktunk.
Ezek közül leginkább a
man/ könyvtárban
levőekre figyeljünk, mivel ezek lesznek az
alkalmazás man oldalai. Ehhez hasonlóan az
etc/ könyvtárban a
konfigurációs állományok és
a doc/ könyvtárban pedig a
nagyobb lélegzetvételű
dokumentációk foglalnak helyet.
Ha nem emlékszünk pontosan rá, hogy az alkalmazások melyik verzióját is telepítettük, a
# pkg_info | grep -i SzuperCsomagalakú parancs megkeresi az összes olyan
csomagot, aminek a nevében szerepel a
SzuperCsomag
szövegrészlet. A fenti példában
természetesen igény szerint változtassuk
meg a SzuperCsomag szöveget a
tényleges csomag nevére.
Ahogy sikerült megtalálnunk az alkalmazáshoz tartozó man oldalakat, lapozzuk fel ezeket a man(1) segítségével. Ugyanígy nézzük át a mellékelt minta konfigurációs állományokat és az összes elérhető dokumentációt.
Ha az alkalmazásnak van saját honlapja, kutassunk ott is információk után, olvassuk el a gyakran ismételt kérdéseket és így tovább. Ha nem tudnánk pontosan a honlap címét, a
# pkg_info SzuperCsomag-1.0.0kimenetéből könnyen
előkeríthető. Itt egy
WWW: kezdetű sort kell keresnünk
(már amennyiben létezik), amit az
alkalmazás honlapjának címe kell
kövessen.
A rendszerrel együtt indítandó portok
(ilyenek többek közt az internetes
szolgáltatások), általában a
/usr/local/etc/rc.d
könyvtárba rakják a saját
indítószkriptjüket. Érdemes
leellenőrizni ezt a szkriptet és az
igényeinknek megfelelően módosítani,
átnevezni. A Szolgáltatások
indítása című szakaszban ezt
részleteiben is megismerhetjük.
Ha véletlenül ráakadnánk egy olyan portra, ami nem működik megfelelően, nagyjából a következőket tudjuk tenni:
Derítsük ki a Hibajelentések adatbázisából, hogy készül-e már javítás az adott porthoz. Ha igen, akkor annak befejezése után már képesek leszünk használni.
Kérjük meg a port
karbantartóját, hogy segítsen. A
karbantartó elérhetőségének
felderítéséhez gépeljük be a
make
parancsot, vagy keressük meg a
maintainerMakefile állományban a
karbantartó e-mail címét. Ne
felejtsük el neki megemlíteni a levélben a
port nevét és verzióját (vagyis
mindenképpen küldjük el a
$FreeBSD: sort a
Makefile
állományból) és a parancs
kiadásától a hiba
felbukkanásáig tartó kimenetet.
Némely portokat nem
egyedülálló személyek tartanak
karban, hanem egy
levelezési lista. A legtöbbjük
neve, ha nem is mindé, nagyjából
ilyen alakú: <freebsd-.
Egy ilyen jellegű kérdés
megfogalmazása során ezt is vegyük
figyelembe!listanév@FreeBSD.org>
Kifejezetten a <ports@FreeBSD.org>
karbantartóval rendelkező portoknak nincs
rendes gazdája. A hozzájuk
kapcsolódó javítások és
mindenféle segítség, ötlet
erről a levelezési listáról
érkeznek. Ilyen esetekben számítunk
az önkéntes segítőkre!
Ha nem kapunk semmilyen választ, a hiba bejelentésére használhatjuk a send-pr(1) programot is (erről bővebben lásd a FreeBSD-s hibajelentések írása című cikket).
Javítsuk meg mi magunk! A porterek kézikönyve részletesen taglalja a „portok” belső felépítését, így onnan elindulva akár magunktól is meg tudunk javítani egy esetlegesen sérült portot, vagy be is küldhetjük a sajátunkat!
Töltsük le a porthoz tartozó csomagot a
hozzánk legközelebb levő FTP oldalról.
A „központi” csomaggyűjtemény az
ftp.FreeBSD.org címen, a
packages
nevű könyvtárban
található, de mielőtt ide
fordulnánk, nézzük meg a hozzánk
legközelebb
levő tükörszervert is! Ha egy csomagot
így telepítünk, akkor több
eséllyel fog működni és
ráadásul még jóval gyorsabb is. A
csomag telepítésére használjuk a
pkg_add(1) programot.
A FreeBSD az X11-en keresztül nyújt a felhasználók számára hatékony grafikus felhasználói felületet. Az X11 az X Window System szabadon elérhető változata, melyet az Xorg és az XFree86™ egyaránt implementál (valamint más egyéb programcsomagok is, amelyeket itt viszont nem tárgyalunk). A FreeBSD verziói a FreeBSD 5.2.1-RELEASE kiadással bezárólag a The XFree86™ Project, Inc. által kiadott X11 szervert, az XFree86™-ot tartalmazzák alapértelmezés szerint. A FreeBSD 5.3-RELEASE kiadástól kezdve az X11 alapértelmezett és hivatalos változata az Xorg, melyet az X.Org alapítvány a FreeBSD-éhez nagyon hasonló licenc alatt fejleszt. A FreeBSD-hez kereskedelmi X szerverek is elérhetőek.
Ebben a fejezetben az X11 telepítését és beállítását járjuk végig, miközben a hangsúlyt az Xorg 7.5 kiadására helyezzük. Az XFree86™ (vagyis a FreeBSD olyan régebbi változata, ahol az XFree86™ az alapértelmezett X11 rendszer) vagy az Xorg korábbi kiadásainak beállításával kapcsolatban mindig találhatunk információkat a FreeBSD kézikönyv http://docs.FreeBSD.org/doc/ címen található archivált változataiban.
Az X11 által támogatott megjelenítőkről bővebben az Xorg honlapján olvashatunk.
A fejezet elolvasása során megismerjük:
az X Window System különböző alkotóelemeit, és hogy ezek miként működnek együtt;
hogyan telepítsük és állítsuk be az X11-et;
hogyan telepítsük és használjuk a különféle ablakkezelőket;
hogyan használjunk TrueType® betűtípusokat az X11-ben;
hogyan állítsuk be rendszerünkön a grafikus bejelentkezést (XDM).
A fejezet elolvasásához ajánlott:
külső programok telepítésének ismerete (4. fejezet - Alkalmazások telepítése: csomagok és portok).
Az X használata elsőre megdöbbentő lehet azok számára, akik olyan más grafikus környezetekben járatosak, mint például a Microsoft® Windows® vagy a Mac OS®.
Míg az X minden komponensének részleteit és azok kapcsolatát nem szükséges megérteni a használatukhoz, néhány alapvető ismeret velük kapcsolatban elősegíti kiaknázni az X erősségeit.
Az X ugyan nem az első UNIX®-ra íródott ablakozó rendszer, de fajtáját tekintve a legnépszerűbb. Az X eredeti fejlesztőcsapata az X előtt egy másik ablakozó rendszeren dolgozott, aminek a neve „W” (mint „Window”, azaz ablak) volt. Az X pedig az arab ábécében pontosan ezt a betűt követi.
Az X-et hívhatjuk „X”-nek, „X Window System”-nek, és még sok más néven. Előfordulhat azonban, hogy az „X Windows” elnevezés sértő lehet egyes emberek számára. Erről többet a X(7) man oldalon tudhatunk meg többet.
Az X-et már az elejétől kezdve hálózatközpontúnak tervezték, és ezért az ún. „kliens-szerver” modellt használja.
Az X modelljében az „X szerver” egy olyan számítógépen fut, amelyhez billentyűzetet, monitort és egeret csatlakoztattunk. A szerver feladatai között találjuk a megjelenítés irányítását az egérről és a billentyűzetről, valamint a többi bemeneti és kimeneti eszközről érkező adatok feldolgozását és így tovább (például a digitális táblák is használhatóak beviteli eszközként, illetve egy projektor is lehet megjelenítő). Mindegyik X alkalmazás (mint például az XTerm vagy a Netscape®) egy kliens. A kliens üzeneteket küld a szervernek, például „Kérlek, rajzolj egy ablakot ezekre a koordinátákra”, és a szerver pedig olyan üzeneteket küld, mint például „A felhasználó az OK gombra kattintott”.
Az otthoni vagy a kisebb irodai környezetben az X szerver és az X kliensek általában ugyanazon a számítógépen futnak. Emellett azonban nagyon is lehetséges, hogy az X szerver egy kevésbé erős gépen fusson, miközben az X alkalmazások (a kliensek) az irodát kiszolgáló erősebb és drágább gépen fussanak. Egy ilyen konfigurációban az X kliensei és szerverei közti kommunikáció a hálózaton keresztül zajlik.
Jegyezzük meg, hogy az X szerver az a számítógép, ahol a monitor és a billentyűzet található, az X kliensek pedig azok a programok, amelyek az ablakokat jelenítik meg.
A protokollban semmi sem várja el, hogy a kliens és a szerver ugyanazon az operációs rendszeren vagy éppen ugyanolyan típusú számítógépen fusson. Ezért akár Microsoft® Windows®-on vagy Apple® Mac OS®-en is indíthatunk X szervert, és számos különböző szabad valamint kereskedelmi alkalmazás képes pontosan erre.
Az X kialakításának filozófiája leginkább a UNIX® kialakításának filozófiájához hasonlítható, vagyis „eszközöket, ne szabályokat”. Ez tehát azt jelenti, hogy az X nem köti meg, miként oldjuk meg vele a feladatokat. Helyette különféle eszközöket ad a felhasználó kezébe, és onnantól a saját felelőssége eldönteni, hogyan használja ki ezeket.
Ez a filozófia az X-ben egészen addig terjed, hogy nem rögzíti, hogyan nézzenek ki a képernyőn megjelenő ablakok, miként kell ezeket mozgatni az egérrel, milyen billentyűk lenyomásával közlekedhetünk az ablakok között (ami a Microsoft® Windows® esetén az Alt+Tab), hogyan nézzen ki az ablakok címsora, a bezárás funkciónak legyen-e rajtuk gombja és így tovább.
Ehelyett az X az összes ezzel járó
felelősséget átadja az
„ablakkezelő” (window manager)
részére. Tucatnyi ilyen ablakkezelőt
találhatunk az X-hez:
AfterStep,
Blackbox,
ctwm,
Enlightenment,
fvwm,
Sawfish,
twm, Window
Maker és még sok más. Ezen
ablakkezelők mindegyike más és más
kinézetet és hangulatot kínál fel:
némelyikük támogatja a
„virtuális munkaasztalok” (virtual desktop)
létrehozását; néhányuk pedig
megengedi, hogy mi magunk állítsuk be az asztal
irányításához használt
gombkombinációkat; köztük
találhatunk olyat is, amelynek van „Start”
gombja vagy ehhez hasonló eszköze; némelyek
közülük ismerik a
„témákat”, aminek révén
a kinézetük és hangulatuk teljesen
megváltoztatható. Az említett
ablakkezelők és társaik a
Portgyűjtemény x11-wm
kategóriájában érhetőek
el.
Ráadásul a KDE és a GNOME munkakörnyezetek mindegyikének van saját integrált ablakkezelője.
Az egyes ablakkezelők mellesleg eltérő beállítási módszerrel rendelkeznek. Némelyikük kézzel összeállított konfigurációs állományt vár, mások pedig külön grafikus eszközöket tartalmaznak erre a feladatra is. Az egyikük (a Sawfish) konfigurációs állományát például a Lisp programozási nyelv egyik dialektuásban kell megírni.
Az ablakkezelő másik fontos feladata lekezelni, hogy az egérrel miként tudjuk átadni az ablakok között az irányítást, vagyis a fókuszt (focus policy). Minden ablakkezelő rendszerben el kell tudnunk valahogy dönteni, hogy a beérkező billentyűleütések melyik ablakhoz vándoroljanak, valamint az ilyen értelemben aktív ablakot valamilyen módon jeleznünk is kell.
Ennek egyik ismert módszere a „fókusz kattintásra” megoldás, amely modellt a Microsoft® Windows® rendszerekben találhatjuk meg. Itt az ablakok akkor válnak aktívvá, amikor rájuk kattintunk az egérrel.
Az X viszont nem kötelezi el magát egyik vezérlésátadási módszer mellett sem, helyette az ablakkezelő fogja majd eldönteni, melyik ablak birtokolja a fókuszt az adott pillanatban. A különböző ablakkezelők különböző fókuszvezérlési technikákat ismernek. Mindegyikük ismeri a kattintásos fókuszt, azonban a többségük emellett még sok más megoldást is felkínál.
A legnépszerűbb fókuszvezérlési elvek:
Az egérmutató alatt található ablak kapja meg fókuszt. Az érintett ablaknak nem kell feltétlenül az összes többi felett elhelyezkednie. Ilyenkor a fókuszt egyszerűen úgy vihetjük át egy másik ablakra, ha rámutatunk az egérrel, amihez még kattintanunk sem kell.
Ez az elv az előbbi apró kibővítése. Amikor a fókusz az egérmutatót követi, és az egeret a leghátsó ablakra (vagy a háttérre) visszük, akkor valójában egyik ablak sem birtokolja az irányítást, ezért a leütött billentyűk elvesznek. A hanyag fókusz használatával azonban az irányítás csak abban az esetben kerül át máshová, amikor egy másik ablakba lépünk be, nem pedig akkor, amikor a jelenlegiből lépünk ki.
Az aktív ablakot egy egérkattintással választjuk ki. Ilyenkor a kiválasztott ablak „felemelkedhet” és a többi előtt jelenhet meg. Ezt követően az összes irányítás ebbe az ablakba vándorol, még abban az esetben is, amikor egy másik ablakra visszük az egérmutatót.
Sok ablakkezelő ismer ezekből különböző variációikat, valamint rajtuk kívül más egyéb vezérlési elvet is. Ezzel kapcsolatban az adott ablakkezelő dokumentációjából deríthetünk ki a legtöbbet.
Az X megközelítése, vagyis az eszközök és nem a szabályok felsorakoztatása, kiterjed az egyes alkalmazásokban látható különféle widgetekre is.
A „widget” (window gadget, vagyis widget, de magyarul sok helyen a „mütyürke”) elnevezést azokra a felhasználói felületen megjelenő elemekre használjuk, amelyekkel valamilyen módon kapcsolatba léphetünk: kattinthatunk rájuk, „piszkálhatjuk” ezeket. Ilyenek többek közt a gombok, jelölőnégyzetek, rádiógombok, ikonok, listák és a többi. A Microsoft® Windows® nyelvén ezeket „vezérlőknek” (control) nevezzük.
A Microsoft® Windows® és az Apple® Mac OS® ezen a téren nagyon merev. Az alkalmazások fejlesztőinek gondoskodniuk kell róla, hogy a programjaik az elterjedt kinézetet és kialakítást kövessék. Az X viszont nem várja az egységes vezérlőeszközök vagy grafikai stílus használatát.
Ennek eredményeképpen az X cseppet sem kívánja meg az alkalmazásoktól, hogy közös kinézetben vagy viselkedésben osztozzanak. Természetesen léteznek népszerű eszközrendszerek és azoknak számos variációja is kialakult, beleértve az MIT Athenaját, a Motif®ot (amiről a Microsoft® Windows® eszközeit is mintázták, az összes ferde élet és a három szürkeárnyalatot), az OpenLookot és társaikat.
Napjaink X alkalmazásai a KDE fejlesztéséhez használt Qt, esetleg a GNOME-hoz használt GTK+ könyvtárból származó, korszerű kinézetű widgeteket tartalmaznak. Ebből a szempontból megfigyelhető egyfajta tendencia a grafikus UNIX®-alkalmazások felépítésében, ami minden bizonnyal megkönnyíti a kezdő felhasználók tájékozódását.
Az X11 FreeBSD-n alapértelmezett implementációja az Xorg. Az Xorg az X.Org alapítvány által kiadott, az X Window Systemet megvalósító nyílt forráskódú X szerver. Az Xorg az XFree86™ 4.4RC2 és X11R6.6 kódja alapján készült. A FreeBSD Portgyűjteményében jelenleg az Xorg 7.5 változata érhető el.
Az Xorg-ot a Portgyűjteményből így tudjuk lefordítani, majd telepíteni:
# cd /usr/ports/x11/xorg
# make install cleanAz egész Xorg lefordításához legalább 4 GB szabad helyre van szükségünk.
Az X11-et természetesen telepíthetjük közvetlenül csomagok segítségével is. A pkg_add(1) használatával telepíthető bináris csomagok is elérhetőek az X11-hez. Amikor a pkg_add(1) programra bízzuk a csomag letöltését, ne adjunk meg verziószámot, a pkg_add(1) ugyanis mindig automatikusan az alkalmazás legfrissebb verzióját tölti le.
Az Xorg csomagjának letöltéséhez és telepítéséhez egyszerűen csak ennyit írjunk be:
# pkg_add -r xorgA fentebb megadott példák a teljes X11 rendszert telepíteni fogják, beleértve a szervereket, klienseket, betűtípusokat stb. Az X11 egyes részeihez külön találhatunk csomagokat és portokat.
Ha csak az X11 legszükségesebb elemeit
szeretnénk telepíteni, akkor
alternatívaként választhatjuk az x11/xorg-minimal portot.
A fejezet további részében szót ejtünk az X11, valamint egy irodai használatra alkalmas munkakörnyezet beállításáról.
Az X11 beállítása előtt a célrendszer következő adataira lesz szükségünk:
A monitor jellemzői
A videokártya chipkészlete
A videokártya memóriájának mérete
Az X11 a monitor jellemzőiből állapítja meg, hogy milyen felbontásban és frissítési frekvenciával működtesse azt. Ezek általában a monitorhoz tartozó dokumentációból vagy a gyártó honlapjáról deríthetőek ki. Igazából két értékre van szükségünk: a függőleges és a vízszintes frissítési frekvenciára.
A videokártya chipkészlete határozza meg, hogy az X11 melyik meghajtóján keresztül kommunikál a grafikus hardverrel. Ez a legtöbb chipkészlet esetén magától megállapítható, de ennek ellenére mégis jó tisztában lenni ezzel arra az esetre, ha az automatikus felismerés mégsem működne.
A grafikus kártya memóriájának mérete határozza meg a rendszer által kihasználható felbontást és színmélységet. Ezt fontos tudunk ahhoz, hogy ismerjük a rendszerünk korlátait.
Az Xorg 7.3-as változatában gyakran mindenféle konfigurációs állomány használata nélkül egyszerűen csak adjuk ki a következő parancsot:
% startxA Xorg 7.4
verziójától kezdődően a
számítógépünkhöz
csatlakoztatott egerek és billentyűzetek
HAL segítségével
automatikusan felismerhetőek. Ennek megfelelően a
x11/xorg port
függőségeként telepítődni
fognak a sysutils/hal
és devel/dbus portok,
viszont az /etc/rc.conf
állományban a következő sorok
hozzáadásával külön
engedélyeznünk kell még ezeket:
Ezeket a szolgáltatásokat még az Xorg beállítása előtt el kell indítanunk (a parancssorból manuálisan vagy a rendszer újraindításával).
Bizonyos hardvereszközök esetén az automatikus felismerés még nem működik megbízhatóan vagy nem jól állítja be az értékeket. Ilyen esetekben kézzel kell megadnunk a szükséges beállításokat.
A különböző munkakörnyezetek, mint például a GNOME, a KDE vagy éppen az Xfce általában tartalmaznak olyan segédprogramokat, amelyekkel a felhasználó könnyedén be tudja állítani a megjelenítés paramétereit, többek közt a képernyő felbontását. Tehát ha az alapértelmezések nem megfelelőek, viszont használni akarunk majd valamilyen munkakörnyezetet is, akkor egyszerűen csak telepítsük az adott környezetet és a hozzá tartozó eszközön keresztül állítsuk be a megjelenítést.
Az X11 beállítása egy többlépcsős folyamat. Első lépésünk egy alap konfigurációs állomány összeállítása lesz. Rendszeradminisztrátorként adjuk ki az alábbi parancsot:
# Xorg -configureEnnek segítségével az X11
xorg.conf.new néven
létrehozza a konfigurációs
állomány vázát a
/root könyvtárban (akár
a su(1) parancsot használjuk, akár
közvetlenül így jelentkezünk be, az
így örökölt rendszeradminisztrátori
szerepkör maga után vonja a $HOME
könyvtár
átállítását is). Az X11
megpróbálja megkeresni a célrendszerben
elérhető grafikus eszközöket, és
létrehozni egy olyan konfigurációs
állományt, amely az észlelt
eszközökhöz tartozó meghajtókat
tölti be.
A következő lépésünk legyen az imént létrehozott beállítás kipróbálása, amin keresztül ellenőrizhetjük, hogy az Xorg tényleg képes működni a célrendszer grafikus eszközén. Az Xorg 7.3 és azt megelőző változataiban ezt így tehetjük meg:
# Xorg -config xorg.conf.newA Xorg 7.4 és
későbbi változataiban a próba
eredménye egy fekete képernyő lesz, amely
meglehetősen megnehezítheti az X11 helyes
működésének
megállapítását. A
-retro kapcsoló
használatával azonban továbbra is
elérhetjük a korábbi verziókban
megszokott viselkedési módot:
# Xorg -config xorg.conf.new -retroHa ezután a képernyőn egy
fekete-fehér rácsot látunk egy X
alakú egérmutatóval a közepén,
akkor jó a beállítás. A
próbát úgy szakíthatjuk meg, ha
először a Ctrl+Alt+Fn
billentyűk együttes lenyomásával
átváltunk valamelyik virtuális konzolra
(például az F1 esetén az
elsőre), majd megnyomjuk a Ctrl+C
gombokat.
Az Xorg korábbi változataiban a 7.3 verzióig bezárólag a Ctrl+Alt+Backspace billentyűkombinációval tudjuk leállítani a működését. Amennyiben erre továbbra is szükségünk lenne, a 7.4 és későbbi változatokban ezt úgy tudjuk engedélyezni, ha a begépeljük a következő parancsot egy X terminálablakban:
% setxkbmap -option terminate:ctrl_alt_bkspEgy másik lehetséges megoldás, ha a
billenytűzet beállításához
létrehozunk a /usr/local/etc/hal/fdi/policy
könyvtárban egy konfigurációs
állományt x11-input.fdi
néven a hald
számára. Ebben az állományban a
következőknek kell szerepelnie:
A hald a számítógép újraindításával fogja majd beolvasni ezt az állományt.
Ilyenkor az xorg.conf.new
állomány ServerLayout vagy
ServerFlags szekciójához
vegyük még hozzá az alábbi
sort:
Ha az egér még nem működne,
mindenképpen be kell állítanunk a
továbblépés előtt. Ezzel
kapcsolatban a FreeBSD telepítéséről
szóló fejezetben levő 2.10.10. szakasz - Az egér beállításait ajánljuk elolvasásra.
Fontos megemlíteni, hogy az
Xorg 7.4
változatától kezdődően az
xorg.conf InputDevice
szekcióit az eszközök automatikusan
észlelt beállításai
felülbírálják. A régebbi
változatok viselkedését úgy tudjuk
visszanyerni, ha a ServerLayout és
ServerFlags szekciók
valamelyikéhez hozzáadjuk az alábbi
sort:
Ezt követően a beviteli eszközök a lehetséges beállítási opciók (például a billentyűzet-kiosztás váltása) mentén a korábbiakban megszokott módon konfigurálhatóak.
Ahogy arról korábban szó esett, a 7.4 verziótól kezdődően a hald magától érzékelni fogja a számítógépre csatlakoztatott billentyűzetet. Előfordulhat, hogy a billentyűzet típusa vagy éppen kiosztása nem lesz megfelelő. Ennek beállítására többnyire a népszerűbb munkakörnyezetek, mint például a GNOME, KDE vagy Xfce tartalmaznak külön segédprogramot. A setxkbmap(1) vagy a hald konfigurációs szabályával azonban akár közvetlenül is meg tudjuk változtatni a billentyűzethez társított tulajdonságokat.
Például ha egy 102 gombos
billentyűzetet szeretnénk használni francia
kiosztással, akkor ehhez a /usr/local/etc/hal/fdi/policy
könyvtárban kell létrehoznunk egy
x11-input.fdi nevű
állományt a hald
részére. Ebben az állományban
szerepeljenek az alábbi sorok:
Ha létezik már ilyen állományunk, akkor a billentyűzet megfelelő beállításához egyszerűen csak másoljuk ki a fenti sorokat és adjuk hozzá.
Indítsuk újra a számítógépet, hogy a hald beolvassa az állományt.
Ugyanezt egy X terminálból is kényelmesen el tudjuk végezni:
% setxkbmap -model pc102 -layout frA paraméterként megadható
billentyűzettípusokat és -kiosztásokat
a /usr/local/share/X11/xkb/rules/base.lst
állományban találhatjuk meg.
Ezután az ízlésünknek
megfelelően hangoljuk be az
xorg.conf.new állományt,
nyissuk meg egy szövegszerkesztőben,
például az emacs(1)-ben vagy az
ee(1)-ben. Elsőként adjuk meg a
célrendszerhez csatlakoztatott monitor
frekvenciájára vonatkozó adatokat. Ezek
általában a függőleges és a
vízszintes frissítés értékei,
melyeket az xorg.conf.new
állomány "Monitor"
szakaszában (Section) kell feltüntetni:
A konfigurációs
állományból valószínűleg
csak a HorizSync és
VertRefresh kulcsszavak fognak
hiányozni. Amennyiben ez tényleg így
lenne, a megfelelő vízszintes
frissítés értékét a
HorizSync kulcsszó után, a
hozzá tartozó függőleges
frissítés értékét pedig a
VertRefresh kulcsszó után kell
hozzátennünk a szakaszhoz. Az iménti
példában már megadtuk a célrendszer
monitorának frissítési
értékeit.
Az X megengedi, hogy DPMS (Energy Star) energiagazdálkodási szabványt ismerő monitorok lehetőséget is kihasználjuk. A xset(1) program vezérli a monitorok ki- és bekapcsolását, és segítségével készenléti vagy energiatakarékos üzemmódba tudjuk helyezni azokat. Ha engedélyezni kívánjuk a monitorunk DPMS lehetőségeit, egyszerűen csak tegyük hozzá az alábbi sort a monitorunkat leíró szakaszhoz:
Ha már a xorg.conf.new
konfigurációs állomány
szerkesztésével vagyunk elfoglalva,
válasszuk ki számunkra kedvező
alapértelmezett felbontást és
színmélységet is. Ezt a
"Screen" (Képernyő) nevű
szakaszban tehetjük meg:
A DefaultDepth kulcsszó
után adjuk meg a rendszer alapértelmezett
színmélységét. Ezt
később az Xorg(1) -depth
paraméterével bírálhatjuk felül
a parancssorból. A Modes
kulcsszó után jelennek meg azok a
felbontások, amelyekben az adott
színmélység elérhető. Itt csak
olyan VESA szabványú módok jelenhetnek meg,
amelyet a célrendszer grafikus eszköze is
támogat. A fenti példában az
alapértelmezett színmélység
képpontonként huszonnégy bit, és
ebben a színmélységben az elfogadott
felbontás 1024-szer 768 pixel.
Végezetül mentsük el a szerkesztett konfigurációs állományt és próbáljuk ki a korábban leírt módszer szerint.
A hibakeresés során maguk az X11
naplóállományai is hasznos eszköznek
bizonyulhatnak, mivel ezek minden olyan eszközről
tartalmaznak információt, amelyekhez az X11
szervernek sikerült csatlakoznia. Az
Xorg naplóit a
/var/log/Xorg.0.log elnevezést
követő állományokban találjuk
meg. A konkrét naplók nevei
Xorg.0.log-tól
Xorg.8.log-ig és így
tovább terjedhetnek.
Ha minden a legnagyobb rendben haladt eddig, a
konfigurációs állományt el kell
tennünk egy olyan központi helyre, ahol az
Xorg(1) képes lesz majd megtalálni. Ez a
hely általában az
/etc/X11/xorg.conf vagy a
/usr/local/etc/X11/xorg.conf.
# cp xorg.conf.new /etc/X11/xorg.confAz X11 beállítását ezzel befejeztük. Az Xorg innentől elindítható a startx(1) segédprogram vagy az xdm(1) használatával.
Az Intel® i810 integrált
chipkészletének meghajtásához
szükségünk lesz az
agpart nevű AGP
programozási felületre az X11-ben. Erről az
agp(4) meghajtó man oldalán olvashatuk
többet.
Ennek segítségével ezt a hardvert is
a többi grafikus kártyához hasonlóan
állíthatjuk be. Vegyük figyelembe azonban,
hogy az agp(4) meghajtót beépítve
nem tartalmazó rendszermaggal futó rendszerekben
a kldload(8) paranccsal utólag már nem
tudjuk betölteni! Ezt a meghajtót már a
rendszerindítás során be kell tudnunk
tölteni: vagy a rendszermagba fordítjuk, vagy
pedig a /boot/loader.conf
állományban hivatkozunk rá.
Ebben a részben feltételezünk némi tapasztalatot a beállítások terén. Amennyiben a szabványos konfigurációs eszközök csődöt mondtak a beállítás során, magukból a naplóállományokból is kinyerhetünk elegendő információt ahhoz, hogy működésre bírjuk rendszerünket. Ehhez mindenképpen legyen kéznél egy szövegszerkesztő!
A jelenlegi szélesvásznú (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+ és társai) formátumok a 16:10-es és 10:9-es képarányokat ismerik, amik néha gondot okozhatnak. Például a 16:10-es képarány felbontásai:
2560x1600
1920x1200
1680x1050
1440x900
1280x800
Bizonyos szempontból egyszerűen csak a fenti
felbontások valamelyikét kell felvenni a
"Screen" szakasz Mode
sorába, valahogy így:
Az Xorg elég intelligens ahhoz, hogy a szélesvásznú megjelenítéssel kapcsolatos információkat lekérje a monitor I2C/DDC adatai közül, ezért meg tudja állapítani, hogy az eszköz milyen frissítési frekvenciákat és felbontásokat bír el.
Ha az alábbi ModeLine
értékek nem szerepelnének a
meghajtókban, akkor velük kapcsolatban egy kicsit
súgnunk kell az Xorg-nak.
A /var/log/Xorg.0.log
átrágásával elegendő
információt tudunk gyűjteni ahhoz, hogy
manuálisan vegyünk fel használható
ModeLine értékeket. Nem kell
mást tennünk, mint ehhez hasonló sorokat
keresnünk:
Ezeket nevezik EDID-adatoknak (Extended display
identification data, vagyis „bővített
megjelenítési azonosító
adatoknak”). Belőlük a megfelelő
ModeLine sor létrehozása
csupán annyiból áll, hogy a
számértékeket a megfelelő sorrendbe
tesszük:
Ezáltal a példában látott
"Monitor" szakasz
ModeLine sora így fog
kinézni:
Miután végrehajtottuk ezeket az egyszerű beállítási lépéseket, az X most már valószínűleg el fog indulni az új szélesvásznú monitorunkon.
Az X11-hez tartozó alap betűtípusok nem
mondhatóak kifejezetten ideálisnak
például egy átlagos asztali
kiadványszerkesztő alkalmazás
számára. A nagyobb méretű
bemutatókon a betűi szögletesen és
idétlenül néznek ki, a
Netscape®ben megjelenő kisebb
betűk pedig szinte teljességgel olvashatatlanok.
Viszont manapság már rengeteg szabad, nagyon
jó minőségű és könnyen
használható Type1 (PostScript®)
betűtípus érhető el az X11-hez.
Például az URW
betűtípus-gyűjtemény (x11-fonts/urwfonts) a
szabványos Type1 betűtípusok (Times Roman®, Helvetica®, Palatino® és még sok
más) jó minőségű
változatait tartalmazza. A Freefonts nevű
gyűjtemény (x11-fonts/freefonts) is tartalmaz sok
más betűtípust, de a legtöbbjüket
inkább csak a Gimpben
és a hozzá hasonló grafikai
alkalmazásokban tudjuk használni, illetve
nincsenek is még kellő mértékben
befejezve a hétköznapi munkákhoz. Ezeken
felül az X11 minimális ügyeskedéssel
beállítható a TrueType®
betűtípusok használatára is.
Erről részleteket a X(7) man oldalon, illetve a
TrueType®
betűtípusokról szóló
szakaszban olvashatunk.
A Portgyűjteményből az imént említett Type1 betűtípusokat az alábbi parancsok segítségével telepíthetjük:
# cd /usr/ports/x11-fonts/urwfonts
# make install cleanUgyanígy járjunk el a freefont és a
többi gyűjtemény esetén is. Az X
szerver akkor fogja észlelni ezeket a
betűtípusokat, ha hozzáadjuk a
következő sort a konfigurációs
állományához
(/etc/X11/xorg.conf):
Vagy megtehetjük mindezt az X futtatása során is:
% xset fp+ /usr/local/lib/X11/fonts/URW
% xset fp rehashEz utóbbi beállítás viszont el
fog veszni az X leállításával,
hacsak nem vesszük hozzá az
indítószkriptjéhez (ez az
~/.xinitrc a startx
használata esetén, illetve az
~/.xsession, amikor egy
XDM-szerű grafikus
bejelentkezést használunk). Ezek mellett
használhatjuk a
/usr/local/etc/fonts/local.conf
állományt is: erről az élsimítással
foglalkozó szakaszban szólunk
részletesebben.
Az Xorg beépített
támogatást tartalmaz a TrueType®
betűtípusok rendereléséhez.
Két különböző modul
valósítja meg ezt a feladatot. Ebben
példában a freetype nevű modult
használjuk, mivel sokkal jobban illeszkedik a többi
betűrenderelőhöz. A freetype modul
használatához mindössze az
/etc/X11/xorg.conf állomány
"Module" szakaszába kell
beírnunk a következő sort:
Most pedig hozzunk létre egy könyvtárat a
TrueType® betűtípusok számára (ez
legyen például a
/usr/local/lib/X11/fonts/TrueType), majd
másoljuk az összes TrueType®
betűtípusunkat ide. Vigyázzunk rá,
hogy Macintosh®-ról TrueType® betűtípusok
közvetlenül nem hozhatóak át, az X11
számára UNIX®/MS-DOS®/Windows®
formátumban kell lenniük. Miután
sikerült átmásolnunk az
állományokat ebbe a könyvtárba,
használjuk a ttmkfdir
parancsot a fonts.dir
állomány létrehozására,
aminek révén az X betűrenderelője tudni
fogja, hogy új állományokat
telepítettünk. A ttmkfdir
x11-fonts/ttmkfdir
néven elérhető a FreeBSD
Portgyűjteményéből.
# cd /usr/local/lib/X11/fonts/TrueType
# ttmkfdir -o fonts.dirEzután adjuk hozzá a TrueType® könyvtárat a betűtípusok könyvtáraihoz. Itt is a Type1 betűtípusoknál leírtak szerint kell eljárnunk, vagyis használjunk a
% xset fp+ /usr/local/lib/X11/fonts/TrueType
% xset fp rehashparancsot, vagy adjunk hozzá a
xorg.conf állományhoz egy
további FontPath sort.
Ezzel végeztünk is. Innentől kezdve a Netscape®, Gimp, a StarOffice™ és mindegyik X alkalmazás fel fogja ismerni a frissen telepített TrueType® betűtípusokat. A nagyon kicsi betűk (egy honlap megtekintése során, nagyfelbontásban) és a nagyon nagy betűk (a StarOffice™ használatakor) most már sokkal jobban fognak mutatni.
Az X11
által használt, a
/usr/local/lib/X11/fonts/ és a
~/.fonts/ könyvtárakban
található összes betűtípus
élsimítása automatikusan
elérhető az Xft-re felkészített
alkalmazások számára. A mostanság
megjelenő legtöbb alkalmazás, mint
például a KDE,
GNOME és
Firefox, ismeri az Xft-t.
A betűtípusok
élsimításának be- és
kikapcsolásához, valamint
élsimítási jellemzőinek
beállításához hozzuk létre
(vagy ha már létezne, módosítsuk) a
/usr/local/etc/fonts/local.conf
állományt. Az Xft betűrendszer számos
kifinomult lehetősége hangolható ezzel az
állománnyal, amelyekből ebben a szakaszban
csupán rövidke ízelítőt fogunk
adni. A pontosabb részletekről a fonts-conf(5)
man oldalon tájékozódhatunk.
Az állománynak XML formátumúnak
kell lennie. Különösen ügyeljünk a
kis- és nagybetűkre, illetve
győződjünk meg mindig róla, hogy
lezártuk-e az összes taget. Az
állomány a szokásos XML-fejléccel
kezdődik, amelyet egy DOCTYPE definíció
követ, majd a <fontconfig>
tag:
Ahogy azt már korábban is
említettük, a
/usr/local/lib/X11/fonts és a
~/.fonts/ könyvtárakban
található összes betűtípus
élsimítása elérhető az Xft-re
felkészített alkalmazások
számára. Amennyiben ezeken túl még
további könyvtárakat is fel
kívánunk venni, írjuk bele a
/usr/local/etc/fonts/local.conf
állományba, nagyjából ilyen
alakban:
Az új betűtípusok, de legfőképpen az új betűtípusokat tartalmazó könyvtárak hozzáadása után a betűkkel kapcsolatos gyorsítótárak frissítéséhez mindenképpen javasolt lefuttatni az alábbi parancsot:
# fc-cache -fAz élsimítás hatására a betűk kontúrjai egy kissé elmosódnak, aminek köszönhetően a nagyon kis méretű szövegek sokkal olvashatóbbá válnak és eltűnnek a nagy méretű betűkről a „lépcsők”, azonban a normál méretű betűknél megfájdulhat tőle a szemünk. A 14 pontnál kisebb méretű betűk esetén az alábbi sorok hozzáadásával tudjuk kikapcsolni az élsimítást:
Bizonyos egyenszélességű (monospaced) betűtípusok élsimítása esetén a betűk távolsága nem megfelelő. Ez leginkább a KDE használata esetén merül fel. Ezt a problémát úgy is orvosolhatjuk, ha az ilyen betűtípusok térközét kézzel 100-ra állítjuk. Ehhez írjuk be a következő sorokat:
(ezzel lefedjük összes rögzített
méretű (fixed) betűtípust
"mono"-ként), majd vegyük
hozzá ezt is:
Egyes betűtípusoknál, mint
például a Helveticánál, gondok
akadhatnak az élsimítással. Ez
általában egy függőlegesen
kettévágottnak látszó betű
képében jelenik meg. De ami a legrosszabb, hogy
emiatt némely alkalmazás képes
összeomlani. Ennek elkerülésére
tegyük hozzá még az alábbi sorokat a
local.conf
állományhoz:
Miután befejeztük a
local.conf szerkesztését,
ellenőrizzük, hogy szerepel-e az
állomány végén a
</fontconfig> tag. Ha ugyanis nem
zárjuk le rendesen, akkor a változtatásaink
érvénytelenné válnak.
Végezetül a felhasználók is
megadhatják a saját
beállításaikat a saját
.fonts.conf állományuk
segítségével. Ehhez nem kell mást
tenni, mindössze létrehozni egy
~/.fonts.conf
XML-állományt.
Még egy utolsó ötlet: LCD
képernyők esetén szükségünk
lehet az ún. „sub-pixel sampling”
(részképpont mintavételezési)
technikára. Ezzel lényegében a
(vízszintesen elválasztott) vörös,
zöld és kék összetevőket
külön-külön kezeljük a
horizontális felbontás
javítására. Bámulatos
eredményeket lehet elérni a
segítségével! A
bekapcsolásához a következő sorokat kell
beszúrnunk valahova a local.conf
állományba:
A megjelenítő fajtájától
függően lehet, hogy az rgb
értéket bgr-re,
vrgb-re vagy vbgr-re
kell cserélnünk. Próbálgassuk
és kiderül, hogy melyikkel működik
jobban.
Az X bejelentkeztető képernyője (az X Display Manager vagy röviden csak XDM) az X Window System egyik kiegészítő eleme, melyet a bejelentkezések lebonyolítására használunk. Számtalan helyzetben hasznosnak bizonyulhat, beleértve a legkisebb „X terminálokat” és a legnagyobb hálózati szervereket is. Mivel az X Window System független hálózattól és protokolltól, a hálózaton összekapcsolt, X klienseket és szervereket futtató különböző számítógépek széles kombinációja előfordulhat. Az XDM egy grafikus felületen keresztül segít választani az elérhető szerverek között, valamint a felhasználók, például felhasználónév és jelszón keresztüli, hitelesítésében.
Az XDM tulajdonképpen a felhasználó számára ugyanazokat a funkciókat nyújtja, mint a getty(8) program (erről bővebben lásd 26.3.2. szakasz - Beállítás). Tehát: belépteti a felhasználót a szerverre, ahova csatlakozott, illetve elindítja helyette a hozzá tartozó munkamenet kezelőjét (ami általában egy X-es ablakkezelő). Az XDM megvárja ennek a programnak a befejeződését, ami egyben jelzi számára, hogy a felhasználó elvégezte a dolgát, és kilépteti a szerverről. Ezután az XDM újra várakozni kezd a következő felhasználóra, miközben a bejelentkezéshez és a szerver kiválasztásához szükséges képernyőket jeleníti meg.
A XDM használatához
először telepítenünk kell rendszerünkre
a x11/xdm portot (mivel az
Xorg újabb változatai
ezt alapértelmezés szerint már nem
telepítik). Ezt követően az
XDM démon a
/usr/local/bin/xdm helyen
található meg. A programot
root felhasználóként
bármikor tudjuk futtatni, és ez veszi
kezelésbe a helyi gépen futó X szervert.
Amennyiben az XDM-et a
számítógép minden egyes
indulása során el akarjuk indítani,
egyszerűen csak adjuk hozzá a megfelelő
bejegyzést az /etc/ttys
állományhoz. Ennek a formai
szabályairól és
használatáról bővebben lásd
26.3.2.1. szakasz - Egy bejegyzés felvétele az
/etc/ttys
állományba. Az
/etc/ttys alapértelmezett
változatában az XDM
démont ebben a formában találjuk meg a
virtuális terminálok között:
Ez a bejegyzés alapból nem aktív. Az
engedélyezéséhez írjuk át az
ötödik mezőben szereplő
off (kikapcsolva) értéket
on (bekapcsolvá)-ra, majd
indítsuk újra az init(8) programot a 26.3.2.2. szakasz - A init utasítása az
/etc/ttys
újraolvasásáraban leírtak szerint. Az első
mezőben találhatjuk a program által kezelt
terminált, ez jelen esetünkben a
ttyv8. Ennek megfelelően az
XDM a 9. virtuális
terminálon kezdi meg a futását.
Az XDM
beállításait tartalmazó
könyvtár a
/usr/local/lib/X11/xdm. Itt
találhatjuk meg azokat az állományokat,
amelyek megváltoztatásával
befolyásolhatjuk az XDM
megjelenését és viselkedését.
Általában a következő
állományok bukkannak fel ezen a helyen:
| Állomány | Leírás |
|---|---|
Xaccess | A kliens hitelesítésének szabályrendszere. |
Xresources | Az X erőforrásainak alapértelmezett értékei. |
Xservers | Az ismert távoli és helyi X szerverek listája. |
Xsession | A bejelentkezések során lefutó alapértelmezett szkript. |
Xsetup_* | A bejelentkező felület indítása előtt indítandó alkalmazásokkal kapcsolatos szkript. |
xdm-config | A gépen futó összes X szerver globális beállításai. |
xdm-errors | A szerver által jelentett hibák. |
xdm-pid | A jelenleg futó XDM-hez tartozó azonosító. |
Ebben a könyvtárban találunk még néhány olyan programot és szkriptet, amelyekkel be tudjuk állítani a munkaasztalunkat az XDM futása alatt. Ezen állományok céljait egyenként ismertetni fogjuk. A felépítésükről és használatukról az xdm(1) man oldala árul el többet.
Az alapértelmezett beállítás egy téglalap alakú bejelentkező ablak, aminek tetején nagy betűkkel a gép neve olvasható, valamint alatta a „Login:” (felhasználói név) és „Password:” (jelszó) mezők várnak kitöltésre. Ez egy remek kiindulási alap az XDM-képernyő kinézetének megváltoztatásához.
Az XDM-mel szabályozott
X szerverek által használt protokoll az X
Display Manager Connection Protocol (XDMCP). Ez az
állomány tartalmazza a távoli
számítógépekről
érkező XDMCP-kapcsolatok
vezérlésére vonatkozó
szabályokat. Ezt a rendszer általában
figyelmen kívül hagyja, hacsak az
xdm-config állományban be
nem állítottuk a távoli
számítógépek
csatlakoztathatóságát.
Alapértelmezés szerint viszont semmilyen klienst
nem enged csatlakozni.
Ez tartalmazza a szerverválasztó és bejelentkező képernyő alapértelmezéseit. Segítségével a bejelentkeztetést végző program kinézetét változtathatjuk meg. Formátuma hasonló az X11 dokumentációjában leírt app-defaults állományhoz.
A felhasználó bejelentkezése
után ez az XDM-szkript fog
lefutni. Általában minden
felhasználóhoz tartozik egy saját
~/.xsession szkript, ami ezt
felülbírálja.
Ezek fognak automatikusan lefutni a
szerverválasztó vagy bejelentkeztető
felületek megjelenése előtt. Minden
általunk használt X szerverhez tartozik egy
ilyen szkript, amelyek neve Xsetup_-al
kezdődik és a helyi X szerver
sorszámával folytatódik
(például Xsetup_0). Ezek a
szkriptek általában egy-két programot,
mint például az xconsole,
indítanak el a háttérben.
Az app-defaults nevű állományéhoz hasonló alakban tartalmaz beállításokat a program által kezelt minden egyes X szerverhez.
Az X szerverünkhöz csak akkor tudnak
kívülről más felhasználók
is kapcsolódni, ha átírjuk a
hozzáférésre vonatkozó
szabályokat és engedélyezzük rajta a
kapcsolódást. Az alapértelmezett
szabályok nagyon óvatosak. Ha tehát
engedélyezni akarjuk a kívülről
érkező kapcsolódásokat, akkor ahhoz
először az xdm-config
állományból vegyük ki az alábbi
sort:
Ezután indítsuk újra az
XDM-et. Ne felejtsük el, hogy
az app-defaults állományokban a
megjegyzések „!”
(felkiáltó)jellel kezdődnek, nem pedig a
megszokott „#” (kettőskereszt)tel. A
fentieknél természetesen szigorúbb
hozzáférési szabályok is
szükségesek lehetnek — ezzel kapcsolatban
nézzük meg Xaccess
állományban szereplő példákat,
illetve lapozzuk fel az xdm(1) man oldalt.
Az alapértelmezett XDM feladatát számos más program is képes ellátni. Ezek közül az egyik a kdm (a KDE része), amire ebben a fejezetben még vissza fogunk térni. A kdm különféle vizuális effekteket és egyéb kozmetikázást ígér, valamint lehetővé teszi a felhasználók számára, hogy a bejelentkezés előtt kiválaszthassák a használni kívánt ablakkezelőt.
Ebben a szakaszban a FreeBSD-n futó X-hez elérhető különböző munkakörnyezetekről (desktop environment) lesz szó. Maga a „munkakörnyezet” elnevezés sok mindenre utalhat egy mezei ablakkezelőtől kezdve az asztali alkalmazások teljes garmadájáig, ahogy igaz ez a KDE vagy a GNOME esetében is.
A GNOME egy felhasználóbarát munkakörnyezet, aminek segítségével a felhasználók számára gyerekjáték a számítógép használata és beállítása. A GNOME-ban találhatunk egy panelt (az alkalmazások indítására és különféle állapotjelzők megjelenítéséhez), egy asztalt (ahova az alkalmazások és az adatok kerülnek), szabványos asztali eszközöket és alkalmazásokat, valamint számos konvenciót, aminek mentén az alkalmazások könnyen együtt tudnak működni és tartani egymással az összhangot. Más operációs rendszerek vagy környezetek ismerői otthon érezhetik magukat ebben a GNOME által nyújtott vizuális környezetben. A FreeBSD és a GNOME kapcsolatáról bővebb információkat a FreeBSD GNOME Projekt honlapján találhatunk. Ezen az oldalon a GNOME telepítéséről, beállításáról és karbantartásáról egy meglehetősen átfogó leírást olvashatunk.
A programot könnyen fel tudjuk telepíteni csomagból vagy a Portgyűjtemény segítségével:
A hálózatról a GNOME csomagját mindössze ennek a sornak a beírásával fel tudjuk telepíteni:
# pkg_add -r gnome2A portfa felhasználásával pedig a GNOME-ot így tudjuk forrásból telepíteni:
# cd /usr/ports/x11/gnome2
# make install cleanMiután a GNOME-ot sikerült feltelepítenünk, meg kell mondanunk az X szervernek, hogy az alapértelmezett ablakkezelő helyett a GNOME-ot indítsa el.
A GNOME-ot legkönnyebben a
GDM, vagyis a GNOME Display Manager
használatával indíthatjuk el. A
GDM a
GNOME részeként
települ (habár alapból nincs bekapcsolva),
és úgy tudjuk aktiválni, ha
/etc/rc.conf állományba
beírjuk a gdm_enable="YES" sort.
Újraindítás után a
GDM automatikusan elindul.
Ha a GDM mellett az összes
GNOME szolgáltatást
is el akarjuk indítani, vegyük fel a
gnome_enable="YES" sort az
/etc/rc.conf
állományba.
A GNOME-ot parancssorból
is elindíthatjuk, ha hozzá megfelelően
beállítjuk az .xinitrc
nevű állományt. Ha már van egy
saját .xinitrc
állományunk, akkor nincs más
teendőnk, mint átírni az aktuális
ablakkezelőnket hívó sort a
/usr/local/bin/gnome-session sorra.
Ha nem csináltunk előtte semmilyen
különleges dolgot az említett
konfigurációs állománnyal, akkor
elegendő csak ennyit beírnunk:
% echo "/usr/local/bin/gnome-session" > ~/.xinitrcEzt követően írjuk be a
startx parancsot, és a
GNOME munkakörnyezete fog
elindulni.
Ha az XDM-hoz hasonló
régebbi bejelentkeztető képernyőt
használunk, ez a módszer nem fog
működni. Helyette hozzunk létre egy
.xsession nevű futtatható
állományt, amely ezt a parancsot tartalmazza.
Ehhez nyissuk meg és cseréljük ki benne a
korábbi ablakkezelőnk
hívását a
/usr/local/bin/gnome-session
utasításra:
% echo "#!/bin/sh" > ~/.xsession
% echo "/usr/local/bin/gnome-session" >> ~/.xsession
% chmod +x ~/.xsessionMegcsinálhatjuk azt is, hogy a bejelentkezéskor választható legyen az ablakkezelő. A KDE-ről bővebben című szakaszban látni fogjuk, hogyan tudjuk ezt a a KDE bejelentkeztető képernyője, a kdm esetén beállítani.
A KDE egy könnyen használható modern munkakörnyezet. Ízelítőül a KDE felhasználók számára felkínált lehetőségei közül:
Gyönyörű, korszerű munkafelület
Az asztal hálózaton keresztüli transzparens kezelése
A KDE asztal és alkalmazásainak használatában egy beépített súgórendszer segíti a kényelmes és összefüggő közlekedést
A KDE alkalmazásainak összehangolt kinézete és hangulata
Szabványosított menük és eszköztárak, billentyű-hozzárendelések, színsémák stb.
Honosítás: a KDE több, mint 40 nyelven elérhető
Központosított, összehangolt, párbeszédablak alapú asztalbeállítás
Számos hasznos KDE-alkalmazás
A KDE-hez egy Konqueror nevű böngésző is tartozik, mely a többi UNIX®-os böngésző komoly ellenfelének bizonyul. A KDE-ről többet a KDE honlapján olvashatunk. A KDE FreeBSD-re vonatkozó tudnivalóiról és a hozzá tartozó anyagokról a FreeBSD KDE csapat honlapján találhatunk információkat.
FreeBSD alatt a KDE két verziója érhető el: a harmadik változat már régóta használható, nagyon megbízható, amely mellett viszont a következő generációt képviselő negyedik változat is megtalálható a Portgyűjteményben. Akár egymás mellé is telepíthetőek.
Ahogy a GNOME és a többi más munkakörnyezet esetében is, maga a program könnyen telepíthető csomagból vagy a Portgyűjtemény segítségével is:
A KDE3 csomagját hálózaton keresztül így tudjuk telepíteni:
# pkg_add -r kdeA KDE4 csomagját pedig hálózaton keresztül így tudjuk telepíteni:
# pkg_add -r kde4A pkg_add(1) magától letölti az alkalmazás legfrissebb verzióját.
Ha a KDE3 környezetet forrásból akarjuk telepíteni, használjuk a portfát:
# cd /usr/ports/x11/kde3
# make install cleanHa viszont a KDE4 környezetet akarjuk inkább a portfa felhasználásával forrásból telepíteni, akkor ezeket a parancsokat adjuk ki:
# cd /usr/ports/x11/kde4
# make install cleanMiután a KDE-t sikeresen
telepítettük, tudatnunk kell az X szerverrel, hogy
az alapértelmezett ablakkezelő helyett ezt
indítsa el. Ezt az .xinitrc
állomány
módosításával érhetjük
el.
KDE3 esetén:
% echo "exec startkde" > ~/.xinitrcKDE4 esetén:
% echo "exec /usr/local/kde4/bin/startkde" > ~/.xinitrcMostantól pedig mindig
KDE lesz az asztalunk, amikor az X
Window Systemet elindítjuk a startx
paranccsal.
Ha az XDM-et használjuk
bejelentkeztető képernyőként, a
beállítást némileg
máshogyan kell elvégeznünk. Ekkor az
iménti helyett az .xsession
állományt kell szerkesztenünk. A
kdm-re vonatkozó
utasítások a fejezet későbbi
részében találhatóak meg.
Most, miután telepítettük a KDE-t a rendszerünkre, a dolgok többsége felfedezhető a különféle súgók segítségével vagy egyszerűen a menükre történő kattintással. A Windows®-hoz vagy Mac®-hez szokott felhasználók itt most már egészen otthonosan érezhetik magukat.
A KDE-hez a legtöbb segítséget a saját internetes dokumentációjából nyerhetjük. A KDE a saját böngészőjét, a Konquerort tartalmazza, valamint tucatnyi ügyes alkalmazást és temérdek mennyiségű dokumentációt. A szakasz további részeiben ezért inkább olyan problémákkal foglalkozunk, amelyek megoldásai céltalan kóborlással már nem fedezhetőek fel olyan egyszerűen.
Egy többfelhasználós rendszer karbantartója minden bizonnyal szeretné üdvözölni rendszere felhasználóit egy grafikus bejelentkező képernyőn keresztül. A korábbiakban erre a célra az XDM-et javasoltuk. Azonban a KDE erre ajánl egy alternatívát, a kdm-et, amely jóval látványosabb és sokoldalúbb. Ez különösen abban merül ki, hogy a felhasználók (egy menün keresztül) ki tudják választani a bejelentkezés után használni kívánt munkakörnyezetet (legyen az KDE, GNOME vagy bármi más).
A kdm használatához a KDE aktuális verziójától függően különböző állományokat kell szerkesztenünk.
KDE3 esetén a
/etc/ttys állományban
szereplő ttyv8 sort kell az
alábbiak szerint módosítanunk:
KDE4 esetén a
következő sorokat kell felvennünk az
/etc/rc.conf
állományba:
Az Xfce a GNOME által használt GTK+-ra épülő munkakörnyezet, amely azonban sokkal könnyedebb és azoknak készült, akik egy szimpla, hatékony, mindazonáltal könnyen használható és beállítható munkafelületre vágynak. Látvány szempontjából leginkább a kereskedelmi rendszereken megtalálható CDE-hez hasonlítható. Íme az Xfce néhány jellemzője:
Egyszerű, könnyen kezelhető munkaasztal
Tökéletesen konfigurálható egérrel, drag-and-droppal („vonszolás”) stb.
A menükkel, kisalkalmazásokkal és alkalmazásindítókkal tarkított főpanelje hasonló a CDE paneljéhez
Beépített ablak-, állomány- és hangkezelővel, GNOME kompatibilitási modullal és még sok minden mással rendelkezik
Használhatunk témákat (mivel GTK+-ra épül)
Gyors, könnyű és hatékony: ideális régebbi vagy lassabb, esetleg kevés memóriával rendelkező számítógépekhez
Az Xfce-ről részletesebben az Xfce honlapján olvashatunk.
Az Xfce-hez tartozik bináris csomag (legalábbis az leírás készítésének pillanatában). Ezt a következő módon tudjuk telepíteni:
# pkg_add -r xfce4Vagy a Portgyűjtemény használatával forrásból is felrakhatjuk:
# cd /usr/ports/x11-wm/xfce4
# make install cleanEzután világosítsuk fel az X szervert, hogy a következő indulása során mi már az Xfce-t kívánjuk használni. Ehhez csak ennyit kell tennünk:
% echo "/usr/local/bin/startxfce4" > ~/.xinitrcÍgy az X következő
indításakor már az
Xfce lesz a
munkakörnyezetünk. Ahogy azt már
korábban is jeleztük, az
XDM használata során
a GNOMEban leírtak
szerint létre kell hoznunk az
.xsession állományt,
azonban ezúttal a
/usr/local/bin/startxfce4 parancs
használatával. Vagy a kdm-ről
szóló szakaszban tárgyaltak mentén
beállíthatjuk úgy a bejelentkeztető
képernyőt, hogy a bejelentkezés előtt
válasszuk ki a munkakörnyezetet.
Miután az alapokat már átvettük, a FreeBSD kézikönyv következő része néhány gyakorta alkalmazott funkciót tárgyal. Az itt szereplő fejezetek:
Bemutatnak különféle hasznos és népszerű asztali alkalmazásokat: böngészőket, irodai elősegítő eszközöket, dokumentum-megjelenítőket stb.
Bemutatják a FreeBSD alatt is elérhető multimédia eszközöket.
Kifejtik egy saját FreeBSD rendszermag elkészítésének folyamatát, amellyel így bővíteni tudjuk rendszerünk funkcionalitását.
Részletesen bemutatják a nyomtatásért felelős alrendszert, asztali és hálózati nyomtatók használata esetén egyaránt.
Megmutatják, hogyan futassunk Linuxra íródott alkalmazásokat a FreeBSD rendszerünkön.
Egyes fejezetek elolvasásához ajánlott bizonyos mértékű felkészülés, amely megemlítésre is kerül az érintett fejezetek áttekintésében.
A FreeBSD-n asztali alkalmazások széles spektrumát lehet futtatni, például böngészőket és szövegszerkesztőket. Legtöbbjük csomagként áll rendelkezésre, illetve automatizált módon lefordíthatóak a Portgyűjteményből. Az új felhasználók közül sokan szeretnének ilyen fajta alkalmazásokat használni, ezért ez a fejezet bemutatja, miként lehet a népszerűbb asztali alkalmazásokat minden különösebb erőfeszítés nélkül telepíteni, legyen szó az előre csomagolt vagy a Portgyűjteményben megtalálható formájukról.
Amikor portként telepítünk egy programot, lényegében a forráskódját fordítjuk le. Ez bizonyos esetekben nagyon sokáig is eltarthat attól függően, hogy pontosan mit is fordítunk le, illetve mekkora az erre a célra felhasznált számítógépünk vagy számítógépeink teljesítménye. Amennyiben a fordításra nem tudunk vagy nem kívánunk elegendő időt szánni, a Portgyűjteményben található programok többségét már előre lefordított csomagból is telepíthetjük.
Mivel a FreeBSD-ben bináris szintű Linux kompatibilitás is található, ezért az eredetileg Linuxra fejlesztett alkalmazások is használhatóak a munkakörnyezetünkben. Azonban határozottan javasoljuk, hogy a linuxos alkalmazások használatához először figyelmesen olvassuk át a 10. fejezet - Bináris Linux kompatibilitáset. A linuxos bináris kompabilitást használó portok neve általában a „linux-” előtaggal kezdődik, amit ne felejtsük el figyelembe venni, amikor például a whereis(1) segítségével keressük valamelyiket. A fejezet további részében feltételezzük, hogy a linuxos alkalmazások telepítése előtt aktiváltuk a bináris Linux kompatibilitást.
Íme a fejezetben tárgyalt kategóriák:
Böngészők (mint a Firefox, Opera, Konqueror)
Irodai eszközök (mint a KOffice, AbiWord, The GIMP, OpenOffice.org)
Dokumentum-megjelenítők (mint az Acrobat Reader®, gv, Xpdf, GQview)
Pénzügyi szoftverek (mint a GnuCash, Gnumeric, Abacus)
A fejezet elolvasásához ajánlott:
a külső alkalmazások telepítésének ismerete (4. fejezet - Alkalmazások telepítése: csomagok és portok);
linuxos alkalmazások telepítésének ismerete (10. fejezet - Bináris Linux kompatibilitás).
a multimédiás környezet kialakítására vonatkozó információkért a 7. fejezet - Multimédiaet érdemes elolvasni. Az elektronikus levelezés beállítását és használatát a 28. fejezet - Elektronikus levelezésből tudhatjuk meg.
A FreeBSD-vel együtt nem települ semmilyen böngésző. Helyette keressük meg a Portgyűjteményben a www könyvtárat, ahol ezzel szemben rengeteg böngésző áll telepítésre készen. Ha nem lenne időnk mindent lefordítani (ami egyes esetekben akár rengeteg időnkbe is kerülhet), ezek csomagolt formában is elérhetőek.
A KDE-hez és a GNOME-hoz eleve tartoznak HTML-böngészők. Ezen komplett munkakörnyezetek beállításához a 5.7. szakasz - Munkakörnyezetekt olvassuk el.
Ha viszont csak egy kevés erőforrást
igénylő böngészőkre vágyunk,
érdemes megnéznünk a
Portgyűjteményben található www/dillo2, www/links vagy www/w3m portokat.
Ez a rész az alábbi alkalmazásokat említi:
| Alkalmazás | Erőforrásigény | Telepítés forrásból | Főbb függőségek |
|---|---|---|---|
| Firefox | közepes | nehéz | Gtk+ |
| Opera | kevés | könnyű | Vannak FreeBSD-s és linuxos változatai is. A linuxos verzió használatához azonban szükség van a bináris Linux kompatibilitásra és a linux-openmotif portra. |
| Konqueror | közepes | nehéz | A KDE függvénykönyvtárai. |
A Firefox egy modern, szabad és nyílt forráskódú böngésző, amely tökéletesen használható FreeBSD alatt. Megtalálható benne egy, a jelenlegi HTML szabványoknak nagyon jól megfelelő megjelenítő motor, a lapokra bontható böngészés támogatása, a kéretlenül felbukkanó ablakok blokkolása, különböző kiterjesztések, javított biztonsági lehetőségek és még sok minden más. A Firefox forrása a Mozilla kódján alapszik.
Csomagból így telepíthető:
# pkg_add -r firefoxEkkor a Firefox 3.6 változata fog települni. Ha helyette a Firefox 3.5 változatát szeretnénk használni, akkor ezt a parancsot adjuk ki:
# pkg_add -r firefox35Ha forrásból szeretnénk felrakni, használhatjuk a Portgyűjteményben található portját is:
# cd /usr/ports/www/firefox
# make install cleanA Firefox 3.5
telepítéséhez az iménti parancsban
cseréljük ki a firefox
részt a firefox35
könyvtárra.
Ennél és a következő résznél feltételezzük, hogy már korábban telepítettük a Firefox alkalmazást.
A Java™ plugin jelenleg nem működik a Firefox 3.6 változatával.
A FreeBSD Alapítvány megegyezett a Sun Microsystems-szel, hogy terjesztheti a Java™ futtatókörnyezet (JRE™) és a Java™ fejlesztőkörnyezet (JDK™) FreeBSD-re lefordított bináris változatait. Ezek a csomagok elérhetőek a FreeBSD Alapítvány honlapjáról.
Ha tehát Java™-támogatást
szeretnénk hozzáadni a
Firefox
böngészőhöz, elsőként fel kell
telepítenünk a java/javavmwrapper portot.
Ezután le kell töltenünk a Diablo
JRE™ csomagot a http://www.freebsdfoundation.org/downloads/java.shtml
címről, majd telepítenünk azt a
pkg_add(1) segítségével.
Ezen az oldalon nem találunk bináris
csomagokat FreeBSD 8.X
rendszerekhez, azonban a
FreeBSD 7.X rendszerekhez
készült csomagok használhatóak
8.X esetén is. Ehhez
mindössze a misc/compat7x portot kell
előtte telepítenünk.
A másik lehetőség a Diablo
JRE™ (valamint a Diablo
JDK™) telepítése a
Portgyűjteményből (java/diablo-jre16 és
java/diablo-jdk16). Ehhez
a szükséges forrásokat (distfile
állományokat) licencelési
megkötések miatt nekünk kell külön
letölteni. A kapcsolódó
utasításokat a make
maketarget parancs meghívásával
kaphatjuk meg.
Indítsuk el a böngészőnket,
és írjuk be a címsorba, hogy
about:plugins és nyomjuk le az
Enter billentyűt. Az
eredményül kapott oldalon láthatjuk az eddig
telepített pluginok listáját, ahol mostanra
már a Java™ pluginnak is meg
kell jelennie. Amennyiben ez nem következne be, mindegyik
felhasználónál adjuk ki az alábbi
parancsot:
% ln -s /usr/local/diablo-jre1.6.0/plugin/i386/ns7/libjavaplugin_oji.so \
$HOME/.mozilla/plugins/Vagy ha a Diablo JDK™ csomagot telepítettük:
% ln -s /usr/local/diablo-jdk1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so \
$HOME/.mozilla/plugins/Ezt követően indítsuk újra a böngészőnket.
Ezek a parancsok az i386 architektúra használatát feltételezik, de a csomagok az amd64 architektúra esetén is elérhetőek.
A Macromedia® Flash™ plugin nem érhető el közvetlenül FreeBSD-re. Azonban létezik egy, a plugin linuxos verziójára épített szoftveres réteg (wrapper). Ez a wrapper még többek közt az Adobe® Acrobat® és a RealPlayer® pluginjait is használhatóvá teszi.
Attól függően, hogy a FreeBSD melyik változatát használjuk, különböző módokon tudjuk működésbe hozni:
FreeBSD 7.X
Telepítsük a www/nspluginwrapper portot.
Ehhez szükség lesz még az emulators/linux_base-fc4 portra
is, amely viszonylag nagy méretű.
Következő lépésként
telepítsük a www/linux-flashplugin9 portot.
Ezáltal megkapjuk a Flash™
9.X változatát,
amely FreeBSD 7.X alatt
remekül működik.
A 7.1-RELEASE előtti FreeBSD verziók
esetén a www/linux-flashplugin7
portot telepítsük és hagyjuk ki a
linprocfs(5) használatára
vonatkozó részt.
FreeBSD 8.X
Telepítsük a www/nspluginwrapper portot.
Ehhez szükségünk lesz majd a valamivel
nagyobb emulators/linux_base-f10
portra.
Ezt követően telepítsük a
www/linux-f10-flashplugin10
portot. Ekkor a Flash™ 10.X
változatát kapjuk, amely
FreeBSD 8.X alatt remekül
használható.
Ezen változat beüzemeléséhez még létre kell hoznunk az alábbi linket:
# ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \
/usr/local/lib/browser_plugins/Miután a FreeBSD rendszerünk
változatának megfelelően elvégeztük
a Flash™ port telepítését, a plugint az
egyes felhasználóknak a
nspluginwrapper paranccsal tehetjük
elérhetővé:
% nspluginwrapper -v -a -iHa Flash™ animációkat szeretnénk
lejátszani, akkor ehhez a /usr/compat/linux/proc
könyvtárba csatlakoztatnunk kell egy
linprocfs(5) típusú linuxos proc
állományrendszert. Ezt a következő
paranccsal tehetjük meg:
# mount -t linprocfs linproc /usr/compat/linux/procAz /etc/fstab állományban
az alábbi sor hozzáadásával azonban
ennek csatlakoztatása akár automatikussá is
tehető a rendszerindítás során:
Ezután indítsuk el a
böngészőt, majd gépeljük be az
about:plugins szöveget a címsorba
és nyomjuk le az Enter billentyűt.
Ekkor a jelenleg elérhető pluginok
listájának kell megjelennie.
Az Swfdec egy Flash™ animációk dekódolásáért és megjelenítéséért felelős programkönyvtár. Az Swfdec-Mozilla pedig egy Firefox böngészőkhöz készített plugin, amely az Swfdec könyvtáron keresztül játszik le SWF állományokat. Jelenleg még aktív fejlesztés alatt áll.
Ha nem akarjuk vagy netalán nem tudjuk forrásból lefordítani, akkor egyszerűen csak telepítsük csomagként a hálózaton keresztül:
# pkg_add -r swfdec-pluginHa valamiért mégsem érhető el hozzá csomag, akkor a Portgyűjteményből is telepíthetjük:
# cd /usr/ports/www/swfdec-plugin
# make install cleanMiután telepítettük a plugint, a használatához indítsuk újra a böngészőt.
Az Opera egy sokoldalú és szabványokkal kompatibilis böngésző. Tartalmaz beépített levelező klienst és hírolvasót, IRC-klienst, RSS/Atom-olvasót és még sok mindent mást. Ennek ellenére az Opera viszonylag pehelysúlyúnak és gyorsnak számít. Két fajta módon is használható: létezik „natív” FreeBSD-s változata, valamint a Linux emulációval futó változata.
Az Opera FreeBSD-s változatát a megfelelő csomag telepítésével érhetjük el:
# pkg_add -r operaHabár egyes FTP oldalakon nem található meg az összes csomag, viszont a Portgyűjteményből még ekkor is be tudjuk szerezni az Operat:
# cd /usr/ports/www/opera
# make install cleanA linuxos Opera
telepítéséhez opera
helyett linux-opera nevet kell megadnunk a
fenti parancsokban. Ennek a verziónak a
használata akkor lehet előnyös, ha olyan
plugineket akarunk elérni, amelyek csak Linuxra
léteznek. Ilyen például az
Adobe Acrobat Reader®. Ettől
eltekintve azonban a FreeBSD-s és a linuxos
változatok szinte teljesen megegyeznek.
A Konqueror a
KDE része, de a
használatához elegendő, ha csak a x11/kdebase3 portot
telepítjük fel. A
Konqueror több, mint egy
egyszerű böngésző:
állománykezelő és
multimédiás nézegető is.
Számtalan plugin áll rendelkezésre a
Konquerorhoz, melyeket a misc/konq-plugins portban
találunk meg.
A Konqueror ismeri a Flash™t is. A Flash™ és a Konqueror kapcsolatával egy külön „Hogyan” is foglalkozik, amelyet a http://freebsd.kde.org/howtos/konqueror-flash.php címen olvashatunk el.
Amikor irodai felhasználásról van szó, az új felhasználók gyakorta keresnek egy jó irodai programcsomagot vagy egy barátságos szövegszerkesztőt. Habár az egyes munkakörnyezetek, mint például a KDE, gyakran saját irodai eszközöket is tartalmaznak, FreeBSD alatt nincs alapértelmezett irodai programcsomag. A rendszer a munkakörnyezetektől függetlenül igyekszik felkínálni mindazt, amire szükségünk lehet.
Ebben a részben a következő alkalmazásokról esik szó:
| Alkalmazás | Erőforrásigény | Telepítés forrásból | Főbb függőségek |
|---|---|---|---|
| KOffice | kevés | nehéz | KDE |
| AbiWord | kevés | könnyű | Gtk+ vagy GNOME |
| The Gimp | kevés | nehéz | Gtk+ |
| OpenOffice.org | sok | nagyon nehéz | JDK™, Mozilla |
A KDE közösség által kiadott munkakörnyezethez társul egy irodai programcsomag is, amely a KDE-től függetlenül is használható. Tartalmazza a többi irodai programcsomagban is megtalálható négy szabványos komponenst: a KWord szövegszerkesztőt, a KSpread táblazatkezelőt, a KPresenter prezentációkészítőt és végezetül a Kontourt, mellyel grafikus dokumentumokat tudunk elkészíteni.
A legfrissebb KOffice telepítése előtt bizonyosodjuk meg róla, hogy a KDE legfrissebb verziójával is rendelkezünk.
Ha a KOffice-t csomagként akarjuk telepíteni, akkor adjuk ki az alábbi parancsot:
# pkg_add -r kofficeAmennyiben ez a csomag nem érhető el, telepíthetjük a Portgyűjteményből is. Például a KDE3-hoz tartozó KOffice-t így rakhatjuk fel:
# cd /usr/ports/editors/koffice-kde3
# make install cleanAz AbiWord egy szabad szövegszerkesztő program, a Microsoft® Word-höz hasonló kinézettel. Remekül használható levelek, beszámolók, feljegyzések, cikkek stb. írásához. Nagyon gyors, rengeteg funkciót ajánl fel, és kifejezetten felhasználóbarát.
Az AbiWord képes
többféle állományformátumba
exportálni és onnan importálni,
beleértve az olyan zárt formátumokat is,
mint például a Microsoft®
.doc.
Az AbiWord csomagból telepíthető a következő módon:
# pkg_add -r abiwordAmennyiben ez a csomag nem érhető el, lefordítható a Portgyűjteményből is, ami ráadásul sokszor egy frissebb verziót tartalmaz. Ezt így tudjuk megtenni:
# cd /usr/ports/editors/abiword
# make install cleanKépek készítésére vagy retusálásra a The GIMP a legfejlettebb képszerkesztő program. Egyszerű rajzolóprogram gyanánt is használható, de akár minőségi fényképretusálásra is. Óriási mennyiségű plugin található hozzá és magában foglal egy szkriptes interfészt is. A The GIMP formátumok széles skáláját ismeri. Számos scanner és digitális rajztábla csatlakoztatható hozzá.
A hozzá tartozó csomag a következő módon telepíthető fel:
# pkg_add -r gimpHa a csomagoknak beállított FTP oldalon nem található meg ez a csomag, megpróbálkozhatunk vele a Portgyűjteményen keresztül is. A gyűjtemény graphics könyvtárában ezen felül fellelhetjük a The Gimp Manualt, vagyis a The GIMP kézikönyvét. Így kell ezeket innen telepíteni:
# cd /usr/ports/graphics/gimp
# make install clean
# cd /usr/ports/graphics/gimp-manual-pdf
# make install cleanA Portgyűjtemény graphics
könyvtárában a The
GIMP fejlesztői változatával
is találkozhatunk a graphics/gimp-devel
alkönyvtárban. A The Gimp
Manual HTML változata pedig a graphics/gimp-manual-html
alkönyvtárban található.
Az OpenOffice.org tartalmaz minden olyan elengedhetetlenül fontos alkalmazást, amelyek napjaink bármelyik irodájához hozzátartoznak: egy szövegszerkesztőt, egy táblázatkezelőt, egy prezentációszerkesztőt és egy rajzolóprogramot. A felhasználói felülete nagyon hasonlít a többi irodai programcsomagéhoz, és képes többféle elterjedt állományformátumot kezelni. Számos különböző nyelven elérhető — a honosítása kiterjed a felületekre, helyesírás-ellenőrzőkre és szótárakra is.
Az OpenOffice.org szövegszerkesztője natív XML állományformátumot használ a hordozhatóság és a rugalmasság növeléséhez. A táblázatkezelője tartalmaz egy makrónyelvet és könnyedén összekapcsolható külső adatbázisokkal. Az OpenOffice.org natívan és megbízhatóan fut Windows®-on, Solaris™-on, Linux®-on, FreeBSD-n és Mac OS® X-en. Az OpenOffice.org-ról bővebb információt a projekt saját honlapján találhatunk. A FreeBSD-s változatra vonatkozó információkat és a csomagokat pedig a FreeBSD OpenOffice.org Porting Team honlapján lelhetjük meg.
Az OpenOffice.org telepítéséhez ennyit kell csak beírni:
# pkg_add -r openoffice.orgHa a FreeBSD -RELEASE ágát használjuk, ennek működnie kell. Ettől eltérő esetben érdemes egy pillantást vetni a FreeBSD OpenOffice.org Porting Team honlapjára, ahonnan le tudjuk tölteni a verziókhoz megfelelő csomagot, amelyet ezután a pkg_add(1)-al fel is tudunk telepíteni. A legfrissebb megbízható és a fejlesztői változat egyaránt elérhető erről a helyről.
Ahogy sikerült feltelepíteni a csomagot, egyszerűen csak be kell gépelni a következő parancsot az OpenOffice.org futtatásához:
% openoffice.orgAz első futtatás során
válaszolnunk kell még néhány
további kérdésre is, valamint a
felhasználói könyvtárunkban
keletkezik egy .openoffice.org
könyvtár.
Ha nem érhetőek el OpenOffice.org csomagok, lefordíthatjuk a forrását is. Azonban mielőtt még ennek nekilátnánk, el kell fogadnunk, hogy ez a művelet a lemezünkön rettenetesen sok területet fog igényelni és meglehetősen sokáig tart.
# cd /usr/ports/editors/openoffice.org-3
# make install cleanHa egy honosított verziót szeretnénk fordítani, az utolsó parancs helyett írjuk inkább ezt:
# make LOCALIZED_LANG=nyelv install cleanA nyelv helyett itt
természetesen a nyelvnek megfelelő
ISO-kódot kell megadni. Az itt támogatott
nyelvek kódjának listája a port
könyvtárán belül, a
files/Makefile.localized
állományban található meg.
Ahogy a fordítás befejeződött, az OpenOffice.org így indítható el parancssorból:
% openoffice.orgA UNIX® megjelenése óta néhány új népszerű dokumentumformátum is felbukkant, melyek szabványos megjelenítői nem minden esetben részei az alaprendszernek. Ebben a részben azt tekintjük át, hogyan lehet ilyen megjelenítőket telepíteni.
Ez a rész az alábbi alkalmazásokat említi:
| Alkalmazás | Erőforrásigény | Telepítés forrásból | Főbb függőségek |
|---|---|---|---|
| Acrobat Reader® | kevés | könnyű | Bináris Linux kompatibilitás |
| gv | kevés | könnyű | Xaw3d |
| Xpdf | kevés | könnyű | FreeType |
| GQview | kevés | könnyű | Gtk+ vagy GNOME |
A dokumentumok többsége manapság PDF (Portable Document Format, avagy „hordozható dokumentumformátum)” állományok formájában terjed. Az ilyen típusú állományok megnézésére az egyik legmegfelelőbb alkalmazás az Acrobat Reader®, melyet az Adobe adott ki Linuxra. De mivel a FreeBSD képes Linux binárisok futtatására, ezért így FreeBSD-re is elérhető.
Ha az Acrobat Reader® 8-at a Portgyűjteményből akarjuk telepíteni, akkor írjuk be:
# cd /usr/ports/print/acroread8
# make install cleanLicencelési megszorítások miatt csomag nem áll rendelkezésre.
A gv egy PostScript® és PDF megjelenítő. Eredetileg a ghostview alapján készült, de a Xaw3d-nek köszönhetően sokkal szebben néz ki. Gyors és a felülete letisztult. A gv sok mindent tud, többek közt beállítható benne a dokumentum tájolása, a papírméret, skálázás és az élsimítás. Szinte bármelyik művelet elvégezhető csak billentyűzetről vagy egérrel.
A gv csomagjának telepítéséhez a következő parancsot használhatjuk:
# pkg_add -r gvHa pedig nem tudjuk letölteni a csomagot, használhatjuk a Portgyűjteményt is:
# cd /usr/ports/print/gv
# make install cleanHa egy egyszerű FreeBSD-s PDF megjelenítőre lenne szükségünk, erre a célra az Xpdf pontosan megfelel. Nagyon kevés erőforrást igényel és nagyon megbízható. A szabványos X-beli betűtípusokat használja, és nincs szüksége sem a Motif®ra, sem pedig más X-es eszközkészletre.
Az Xpdf csomagjának felrakásához az alábbi parancs javasolt:
# pkg_add -r xpdfAmennyiben nem áll rendelkezésre az említett csomag, vagy egyszerűen csak a Portgyűjteményből szeretnénk felrakni, adjuk ki ezeket a parancsokat:
# cd /usr/ports/graphics/xpdf
# make install cleanAhogy a telepítés befejeződik, már el is indíthatjuk az Xpdf alkalmazást, ahol a jobb egérgombbal tudjuk aktiválni a menüt.
A GQview egy képkezelő. Állományokat tudunk megnyitni benne egyetlen kattintással, külső szerkesztőprogramot tudunk indítani vagy akár még a képek kicsinyített változatait is láthatjuk és így tovább. Megtalálható benne a diavetítés és az alapvető állományműveletek. Képgyűjteményeket is kezelhetünk és könnyedén megtalálhatjuk a bennük levő képek között az egyezőeket. A GQview teljes képernyős nézegetést is megenged, illetve támogatja a honosítást.
A GQview csomag telepítéséhez ezt a parancsot kell kiadni:
# pkg_add -r gqviewAmikor ez a csomag nem tölthető le, vagy amikor inkább a Portgyűjteményből szeretnénk felrakni, ezt írjuk be:
# cd /usr/ports/graphics/gqview
# make install cleanHa bármilyen ok folytán a FreeBSD-vel szeretnénk kezeli személyes pénzügyeinket, akadnak olyan kellően komoly és könnyen kezelhető alkalmazások, amelyek csak a telepítésükre várnak. Néhány közülük kompatibilis az elterjedtebb állományformátumokkal, mint például amiben a Quicken® és az Excel is tárolja az adatait.
Ebben a részben az alábbi programokat vesszük sorra:
| Alkalmazás | Erőforrásigény | Telepítés forrásból | Főbb függőségek |
|---|---|---|---|
| GnuCash | kevés | nehéz | GNOME |
| Gnumeric | kevés | nehéz | GNOME |
| Abacus | kevés | könnyű | Tcl/Tk |
| KMyMoney | kevés | nehéz | KDE |
A GnuCash a GNOME része, és egy felhasználóbarát, mégis hatékony eszközt ad a felhasználók kezébe. A GnuCash segítségével nyilván tudjuk tartani a bevételeinket és kiadásainkat, bankszámláinkat és befektetéseinket. Felülete intuitív, miközben továbbra is professzionális minőségű.
A GnuCash-ben megtalálhatunk egy intelligens nyilvántartást, a számlák hierarchikus rendszerét, és számtalan billentyűkombinációt és automatikus kiegészítést, amivel felgyorsul a munkánk. Egyetlen tranzakciót képes felbontani több kisebb és részletesebb elemre. A GnuCash képes importálni és exportálni a Quicken QIF típusú állományait. Ezenkívül még kezeli a legtöbb nemzetközi dátumformátumot és pénznemet.
A GnuCash-t az alábbi módon tudjuk telepíteni a rendszerünkre:
# pkg_add -r gnucashHa ez a csomag nem érhető el, használhatjuk a Portgyűjteményt is:
# cd /usr/ports/finance/gnucash
# make install cleanA Gnumeric egy
táblázatkezelő program, a
GNOME munkakörnyezet
része. Sok esetben képes a helyzethez
alkalmazkodva automatikusan „kitalálni” a
felhasználó gondolatait a cellák
formátumának megfelelő automatikus
kiegészítő rendszerével. Be tud
olvasni számos népszerűbb formátumot,
mint például az Excel,
Lotus 1-2-3 vagy a
Quattro Pro
állományait. A math/guppi
grafikonkészítő programon keresztül
támogatja grafikonok rajzolását is.
Nagyszámú beépített
funkcióval rendelkezik, és ismeri az összes
megszokott cellaformátumot, legyen az szám,
pénznem, dátum, idő vagy bármi
más.
A Gnumeric telepítését az alábbi paranccsal adhatjuk ki:
# pkg_add -r gnumericHa valamiért nem érhető el ez a csomag, a Portgyűjteményből is fel tudjuk rakni:
# cd /usr/ports/math/gnumeric
# make install cleanAz Abacus egy kicsi és egyszerűen használható táblázatkezelő program. Számos olyan funkciót tartalmaz beépítve, amelyek kifejezetten hasznosnak bizonyulhatnak a statisztika, pénzügyek és a matematika területén. Importálni és exportálni tudja az Excel állományformátumát is. Az Abacus még PostScript® formátumú kimenetet is tud készíteni.
Az Abacus telepítéséhez csupán ennyit kell tennünk:
# pkg_add -r abacusAmennyiben viszont nem érhető el ez a csomag, használhatjuk a Portgyűjteményt is:
# cd /usr/ports/deskutils/abacus
# make install cleanA KMyMoney a KDE részeként kifejlesztett személyi pénzügyi nyilvántartó. A KMyMoney igyekszik az összes kereskedelmi pénzügyi nyilvántartó programban megtalálható fontosabb lehetőséget magában foglalni és rendelkezésre bocsátani. Mindezek mellett egy könnyen használható és nagyon ügyes kettős könyvelést is találhatunk benne. A KMyMoney képes beolvasni a szabványos Quicken Interchange Format (QIF) szerint készült állományokat, követni a befektetéseket, többféle pénznemet kezelni és sokfajta kimutatást tudunk vele készíteni. A megfelelő bővítmény hozzáadásával még az OFX formátumú állományok olvasására is alkalmas.
A KMyMoney csomagként így telepíthető:
# pkg_add -r kmymoney2Ha ez a csomag nem érhető el, akkor a Portgyűjteményen keresztül is fel tudjuk rakni:
# cd /usr/ports/finance/kmymoney2
# make install cleanMiközben a FreeBSD igen népszerű az internetszolgáltatók körében a teljesítménye és megbízhatósága révén, a hétköznapi használatban is remekül beválik. Többezernyi olyan alkalmazás érhető el hozzá csomagként vagy portként, amelyekkel az igényeinknek megfelelő munkakörnyezetet tudjuk kiépíteni.
Íme egy rövidke emlékeztető azokról az asztali alkalmazásokról, melyeket a fejezetben tárgyaltunk:
| Alkalmazás | Csomag | Port |
|---|---|---|
| Opera | opera | www/opera |
| Firefox | firefox | www/firefox |
| KOffice | koffice-kde3 | editors/koffice-kde3 |
| AbiWord | abiword | editors/abiword |
| The GIMP | gimp | graphics/gimp |
| OpenOffice.org | openoffice | editors/openoffice.org-3 |
| Acrobat Reader® | acroread | print/acroread8 |
| gv | gv | print/gv |
| Xpdf | xpdf | graphics/xpdf |
| GQview | gqview | graphics/gqview |
| GnuCash | gnucash | finance/gnucash |
| Gnumeric | gnumeric | math/gnumeric |
| Abacus | abacus | deskutils/abacus |
| KMyMoney | kmymoney2 | finance/kmymoney2 |
A FreeBSD a hangkártyák széles választékát ismeri, ami által képesek vagyunk számítógépünkkel hi-fi minőségű hangzást létrehozni. Ennek részeként rögzíteni és visszajátszani tudunk többek közt MPEG Audio Layer 3 (MP3), WAV és Ogg Vorbis formátumokban. A FreeBSD Portgyűjteménye ezenkívül tartalmaz még olyan alkalmazásokat is, amelyekkel szerkeszteni lehet a felvett hangokat, effekteket hozzátenni és vezérelni a hangkártyánkhoz csatlakoztatott MIDI eszközöket.
Némi kísérletezéssel a FreeBSD
még videoállományok és DVD-k
lejátszására is rávehető. A
különféle videoanyagok
kódolására,
konvertálására és
visszajátszására alkalmas programok
száma azonban jóval kisebb, mint a hanganyagok
esetén. Például az írás
pillanatában nincs a FreeBSD
Portgyűjteményében a formátumok
közti konvertálásra alkalmas, a videókat
olyan jól újrakódolni tudó
alkalmazás, amilyen az audio esetén az audio/sox. Azonban ezen a
területen a szoftverek palettája gyorsan
változik.
Ebben a fejezetben bemutatjuk a hangkártyánk beállításához szükséges lépéseket. Az X11 telepítése és beállítása (5. fejezet - Az X Window System) során ugyan már foglalkoztunk a videokártyánkkal kapcsolatos hardveres problémákkal, azonban a jobb visszajátszás érdekében további cselfogásokat is be kell majd vetnünk.
A fejezet elolvasása során megismerjük:
hogyan állítsuk be úgy a rendszerünket, hogy felismerje a hangkártyánkat;
hogyan bizonyosodjuk meg róla, hogy a kártyánk valóban működik;
hogyan oldjuk meg a hangkártya beállítása során felmerülő problémákat;
hogyan játsszunk le és kódoljunk MP3-at vagy más egyéb hangformátumot;
hogyan támogatja a videokat az X szerver;
hogyan adnak az egyes lejátszók és kódolók még jobb eredményt
hogyan játsszunk le DVD-ket,
.mpg és .avi
állományokat;
hogyan mentsük a CD-k és DVD-k tartalmát állományokba;
hogyan állítsuk be a TV kártyánkat
hogyan állítsunk be egy scannert.
A fejezet elolvasásához ajánlott:
egy új rendszermag beállításának és telepítésének ismerete (8. fejezet - A FreeBSD rendszermag testreszabása).
Ha zenei CD-ket próbálunk meg a mount(8) paranccsal csatlakoztatni, akkor az hibával, vagy a legrosszabb esetben akár teljes rendszerösszeomlással is járhat. Az ilyen típusú lemezek az ISO szabványú állományrendszerekétől eltérő kódolással rendelkeznek.
A művelet megkezdése előtt ki kell derítenünk, milyen típusú hangkártyánk van, milyen chip van rajta, PCI vagy ISA buszon csatlakozik-e. A FreeBSD rengeteg PCI és ISA buszos kártyát ismer egyaránt. A sajátunk beazonosításához a támogatott hangeszközök listáját a Hardware Notes (Hardverjegyzék) oldalán találhatjuk meg. Ebből a jegyzékből mellesleg azt is megtudhatjuk, hogy melyik meghajtó kezeli a kártyánkat.
A hangeszközünk használatához be kell töltenünk a neki megfelelő meghajtót. Ez két módon is megtehető. Ezek közül az a legkönnyebb, ha a kldload(8) paranccsal egyszerűen betöltjük a rendszermag hangkártyánkhoz tartozó modulját. Ezt megtehetjük közvetlenül parancssorból:
# kldload snd_emu10k1vagy a /boot/loader.conf
állományból az alábbihoz
hasonló sor hozzáadásával:
A fenti példák a Creative SoundBlaster® Live!
hangkártyára vonatkoznak. A többi
betölthető hangkártya-modul felsorolása
a /boot/defaults/loader.conf
állományban található. Ha nem
vagyunk benne biztosak, hogy melyik meghajtót is akarjuk
pontosan használni, akkor próbálkozzunk az
snd_driver modul
betöltésével:
# kldload snd_driverEz egy olyan metameghajtó, ami egyszerre betölti
az összes érintett eszközmeghajtót,
és segítségével
felgyorsíthatjuk a megfelelő meghajtó
megtalálását. A
/boot/loader.conf
használatával is be tudjuk ugyanígy
tölteni az összes meghajtót.
Az snd_driver metameghajtó
betöltése után úgy kereshetjük
meg a ténylegesen használatban levő
meghajtót, ha megnézzük a
/dev/sndstat állományt a
cat /dev/sndstat paranccsal.
A második módszer szerint a hangkártyánk támogatását statikusan beépítjük a rendszermagba. A lentebb található szakaszban olvashatjuk mindazok az információkat, amelyekre szükségünk lehet ennek elvégzése közben. A rendszermag újrafordításával kapcsolatban forduljunk a 8. fejezet - A FreeBSD rendszermag testreszabásahez.
Elsőként hozzá kell adnunk a rendszermaghoz a hangeszközök alapmeghajtóját, a sound(4) eszközt. Ezt a rendszermag beállításait tartalmazó állományban az alábbi sor felvételével tehetjük meg:
Ezután tegyük még hozzá a hangkártyánkhoz kapcsolódó támogatást is. Ehhez viszont pontosan tudunk kell, melyik meghajtó képes működtetni a kártyát. A hangkártyához tartozó meghajtót a Hardware Notes (Hardverjegyzék)-ben található eszközök listájából deríthetjük ki. Például a Creative SoundBlaster® Live! hangkártyát a snd_emu10k1(4) meghajtó kezeli. Ennek a hangkártyának a támogatását az alábbi sorral állíthatjuk be:
Az itt használatos formátumot a
meghajtó man oldalának
átolvasásából tudhatjuk meg.
Azonban az összes támogatott hangkártya
meghajtó megadásának pontos
formátuma megtalálható a
/usr/src/sys/conf/NOTES
állományban is.
A PnP (Plug n Play)-t nem ismerő ISA
kártyák esetén az összes többi
nem PnP-s ISA kártyához hasonlóan
szükséges lehet a rendszermag
számára megadnunk a kártya hardveres
beállításait (IRQ, I/O port stb). Ezt a
/boot/device.hints
állományon keresztül tehetjük meg. A
rendszerindítási folyamat során a
loader(8) beolvassa ezt az állományt, majd
átadja a benne szereplő
információkat a rendszermagnak.
Például a Creative SoundBlaster® 16, nem PnP-s
ISA kártya az snd_sb16
meghajtóval együtt az snd_sbc(4)
meghajtót használja. A kártya
használatához a rendszermag
beállításait tartalmazó
állományba ezeket a sorokat kell megadni:
valamint a /boot/device.hints
állományba ezeket:
Ekkor a kártya a 0x220 I/O
portot és 5 IRQ-t
használja.
A /boot/device.hints
állományban alkalmazott felírási
módról bővebben a sound(4), valamint a
kérdéses meghajtó man oldalán
tájékozódhatunk.
A fentiekben bemutatott beállítások alapértelmezettek, néhány esetben azonban a kártyánknak megfelelően meg kell változtatnunk az IRQ és egyéb értékeket. Erről a kártyáról konkrétan a snd_sbc(4) man oldalon olvashatunk részletesebben.
Miután újraindítottuk a számítógépünket a módosított rendszermaggal, vagy miután betöltöttük a szükséges modult, a hangkártyának valahogy így kell megjelennie a rendszerünk üzenetpufferében (dmesg(8)):
A hangkártyánk állapota a
/dev/sndstat állományon
keresztül ellenőrizhető:
# cat /dev/sndstat
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384
kld snd_ich (1p/2r/0v channels duplex default)Ez a kiírás rendszerenként
eltérhet. Ha nem látunk semmilyen
pcm0 eszközt, akkor menjünk
vissza és nézzük át újra,
pontosan mit is csináltunk. Vizsgáljuk át
a rendszermagunk beállításait
tartalmazó állományt és
győződjünk meg róla, hogy a megfelelő
meghajtót adtuk meg. Az itt felmerülő gyakori
gondokkal a 7.2.2.1. szakasz - Gyakori problémák foglalkozik.
Ha azonban minden remekül haladt, akkor most már van egy működő hangkártyánk. Ha rendesen összekapcsoltuk hangkártyánkat a CD- vagy DVD-meghajtónk audio csatlakozásával, akkor tegyünk egy CD-t a meghajtóba és kezdjük el játszani a cdcontrol(1) paranccsal:
% cdcontrol -f /dev/acd0 play 1Az olyan alkalmazások, mint például az
audio/workman, ehhez egy
sokkal barátságosabb felületet
nyújtanak. Az MP3 formátumú
állományok meghallgatásához pedig
minden bizonnyal jól fog jönni egy olyan
alkalmazás is, mint például az audio/mpg123.
A kártyát úgy is tesztelhetjük, ha
az alábbihoz hasonló módon adatokat
küldünk a /dev/dsp
állományba:
% cat állománynév > /dev/dspahol az
állománynév
tetszőleges állomány neve lehet. A parancs
hatására valamilyen zajt kell hallanunk, és
ez egyben meg is erősíti, hogy a
hangkártyánk működik.
A hangkártyánk csatornáinak jellemzőit a mixer(8) paranccsal állíthatjuk. Erről további részleteket a mixer(8) man oldalon olvashatunk.
| Hiba | Megoldás |
|---|---|
| sb_dspwr(XX) timed out | Nem állítottuk be jól az I/O portot. |
| bad irq XX | Nem állítottuk be jól az IRQ értékét. Gondoskodjunk róla, hogy a beállított érték megegyezik a hangkártyánkéval. |
| xxx: gus pcm not attached, out of memory | Nincs elég memória az eszköz használatához. |
| xxx: can't open /dev/dsp! | A fstat | grep dsp parancs
kiadásával ellenőrizzük, hogy
valamelyik alkalmazás használja-e
már az eszközt. Gyakori bajkeverő az
esound és a
KDE
hangtámogatása. |
Gyakran szükségünk lehet több hangforrás egyidejű használatára, főleg olyankor, amikor az esound vagy az artsd bizonyos alkalmazásokkal nem hajlandó megosztani a hangeszközt.
A FreeBSD ezt a virtuális hangcsatornák használatával oldja meg, amit a sysctl(8) eszközön keresztül tudunk engedélyezni. Amikor a rendszermagban virtuális csatornák használatával keverünk, akkor lényegében képesek vagyunk a hangkártyánk által egyszerre játszható hangok számát megtöbbszörözni.
A virtuális csatornák számának
beállításához a sysctl három
változóját kell módosítanunk,
amelyet root
felhasználóként így tehetünk
meg:
# sysctl dev.pcm.0.play.vchans=4
# sysctl dev.pcm.0.rec.vchans=4
# sysctl hw.snd.maxautovchans=4A fenti példa négy virtuális
csatornát hoz létre, ami egészen
jellemző a mindennapi használatban. A
dev.pcm.0.play.vchans és
dev.pcm.0.rec.vchans a
pcm0 eszköz
lejátszásra és felvételre
használt virtuális csatornáinak
számát adja meg, amelyet az eszköz
csatlakoztatása után tudunk
beállítani. A
hw.snd.maxautovchans az új
eszközhöz tartozó virtuális
csatornákat adja meg, ami akkor
állítódik be, amikor a kldload(8)
paranccsal csatlakoztatjuk. Mivel a
pcm modul a többi
eszközmeghajtótól függetlenül
töltődik be, ezért a
hw.snd.maxautovchans azt tárolja, hogy
a később hozzá csatlakozó
eszközök mennyi virtuális csatornát
fognak majd kapni. Erről részletesebben a
pcm(4) man oldalon olvashatunk.
A használatban levő eszközöknél nem tudjuk megváltoztatni a virtuális csatornák számát. Ehhez először le kell állítanunk az eszközt használó összes programot, tehát a zenelejátszókat és hangdémonokat.
Amennyiben nem használjuk ki a devfs(5)
által nyújtott lehetőségeket, az
összes alkalmazásnak a
/dev/dsp0.
eszközre kell mutatnia, ahol az
xx értéke 0-tól
3-ig terjedhet attól függően, hogy a
dev.pcm.0.rec.vchans
értékét a fenti példához
hasonlóan 4-re állítottuk-e. A
devfs(5) megoldását használó
rendszerek esetén ez a folyamat automatikusan lezajlik,
tehát az összes /dev/dsp
eszközre irányuló kérés
magától
átirányítódik.
A keverőben megjelenő
különböző csatornák
alapértékei a pcm(4) meghajtó
forráskódjában huzalozottan
találhatóak meg. Számos alkalmazás
és démon segít két
hívás közt megőrizni a keverőben
beállított értékeket, azonban ez nem
teljesen tiszta megoldás. A meghajtó
szintjén is be tudjuk állítani a
keverő alapértékeit — ezt a
/boot/device.hints állomány
megfelelő módosításával
érhetjük el, például:
Ezzel a pcm(4) modul betöltése során a hangerő (volume) csatorna alapértelmezett értéket 50-re állítjuk.
Az MP3 (MPEG Layer 3 Audio) használatával közel CD minőségű hangot lehet elérni, ezért a mi FreeBSD munkaállomásunk sem maradhat ki előnyeinek élvezetéből.
Az XMMS (X Multimedia System) kiemelkedően a legnépszerűbb X11-es MP3 lejátszó. Mivel az XMMS grafikus felhasználói felülete szinte teljesen megegyezik a Nullsoft Winampjának felületével, ezért még a Winamp skinjeit is használhatjuk vele. Az XMMS-ben ezenkívül még a natív pluginek támogatását is megtalálhatjuk.
Az XMMS a multimedia/xmms portból vagy
csomagból telepíthető.
Az XMMS használatára könnyű ráérezni: megtaláljuk benne a lejátszandó számok listáját, egy grafikus hangszínszabályzót és még sok minden mást. Akik már ismerik a Winamp működését, azok az XMMS-t is egyszerűnek érzik majd.
Mellette az audio/mpg123
port egy másik, parancssoros MP3 lejátszót
kínál fel.
Az mpg123
futtatásához paraméterként meg kell
adnunk a hangeszközt és lejátszandó
MP3 állományt. Ha a hangeszközünk a
/dev/dsp1.0 és a
IzéMizé-Sláger.mp3
nevű MP3 állományt akarjuk rajta
lejátszatni, akkor a következőt kell
begépelnünk:
# mpg123 -a /dev/dsp1.0 IzéMizé-Sláger.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
Playing MPEG stream from IzéMizé-Sláger.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
Mielőtt MP3 formátumba tömörítenénk egy CD-t vagy annak egy sávját, a CD-n található audio adatot valahogy le kell tudnunk szedni a merevlemezre. Ezt úgy tehetjük meg, ha a nyers CDDA (CD Digital Audio) adatot WAV formátumú állományokba mentjük.
A sysutils/cdrtools
csomag részeként elérhető
cdda2wav segédprogrammal tudjuk a
CD-ken levő audio és a hozzájuk
tartozó egyéb információkat
leszedni.
A meghajtóban levő CD teljes tartalmát
(root felhasználóként)
a következő parancs kiadásával lehet
(sávonként) különálló WAV
állományokba menteni:
# cdda2wav -D 0,1,0 -BA cdda2wav ismeri az ATAPI (IDE) CD-meghajtókat, használatukhoz a SCSI egység sorszáma helyett az eszköz nevét kell megadni. Tehát például így szedjük le egy IDE-meghajtóról a 7. sávot:
# cdda2wav -D /dev/acd0 -t 7A -D a
0,1,00,1,0 sorszámú SCSI
eszközre utal, ami megfelel cdrecord
-scanbus parancs eredményének.
Az egyes sávok lementéséhez a
-t kapcsoló
használható:
# cdda2wav -D 0,1,0 -t 7A példa szerint a zenei CD-ről a hetedik sávot szedjük le. Egyszerre több sávot, például az elsőtől a hetedikig, egy tartomány megadásával menthetünk le:
# cdda2wav -D 0,1,0 -t 1+7A dd(1) segédprogram is használható ATAPI eszközökön levő hangsávok kimentéséhez. Ennek lehetőségéről részletesebben a 18.6.5. szakasz - Audio CD-k másolásaban olvashatunk.
Az MP3 állomány
tömörítésére manapság a
legtöbben a lame
elnevezésű kódolót
választják. A portfában a
lame az audio/lame helyen
található meg.
Az előbb kimentett WAV állományok
felhasználásával az alábbi
paranccsal tudjuk átalakítani a
audio01.wav állományt
audio01.mp3
állománnyá:
# lame -h -b 128 \
--tt "Izé dal címe" \
--ta "Izé-mizé előadó" \
--tl "Izé-mizé album" \
--ty "2001" \
--tc "Leszedte és tömörítette: Izé" \
--tg "Műfaj" \
audio01.wav audio01.mp3A 128 kbites tömörítés a
gyakorlatban leginkább használt
kódolási arány, sokan azonban a sokkal jobb
minőségű 160 vagy 192 kbites
tömörítést szeretik. Minél
nagyobb a kódolási arány, annál
több helyet fog foglalni a keletkező MP3
állomány — habár a
minősége is jobb lesz. A -h
kapcsoló alkalmazásával tudjuk
aktivizálni a „jobb minőségű de
valamivel lassabb” módot. A --t
kezdetű paraméterek ID3 tageket adnak meg, amelyek
segítségével az MP3
állományokba rájuk vonatkozó
információkat tudunk beágyazni. A
tömörítés további
beállításairól a
lame man oldalán
tájékozódhatunk.
Ha MP3 formátumú állományokat szeretnénk audio CD-re írni, akkor ehhez először tömörítetlen WAV formátumba kell ezeket alakítanunk. Az XMMS és az mpg123 is egyaránt lehetőséged ad az MP3 állományok kitömörítésére.
Lemezre írás az XMMS-sel:
Indítsuk el az XMMS alkalmazást.
Az XMMS menüjének felhozásához kattinsunk jobb gombbal az ablakjára.
Válasszuk az Options
almenüben található
Preference menüpontot.
Változtassuk meg az „Output Plugin” beállítást a „Disk Writer Plugin” értékre.
Nyomjunk a Configure gombra.
Írjuk be (vagy válasszuk ki a
Browse gombbal) a könyvtárat,
ahová majd a kitömörített
állományok kerülnek.
Az eddig megszokottak szerint töltsük be az XMMS-be az MP3 állományt, állítsuk 100%-ra a hangerőt és kapcsoljuk ki a hangszínszabályzót (EQ, equalizer).
Nyomjuk le a Play gombot —
úgy fog tűnni, mintha az
XMMS játszaná az
MP3 állományt, de nem hallunk semmit. Ekkor a
tartalmát állományba menti.
Mikor befejeztük a kitömörítést, ne felejtsük el visszaállítani az „Output Plugin” értékét az alapértelmezettre.
Írás a szabványos kimenetre az mpg123-mal:
Futtassuk le a mpg123 -s
parancsot.audio01.mp3 >
audio01.pcm
Az XMMS az
állományokat WAV formátumban írja,
miközben az mpg123 nyers PCM
hangadatokat képez belőlük. A
cdrecord használata
során mind a két formátumból
hozhatóak létre audio CD-k. A nyers PCM a
burncd(8) programmal használható. Amikor WAV
állományokkal dolgozunk, minden egyes sáv
elején egy apró kattanást hallhatunk: ez a
WAV állomány fejléce lesz. A (audio/sox portból vagy
csomagból telepíthető)
SoX segédprogrammal a WAV
formátumú állományok fejléce
pillanatok alatt eltávolítható:
% sox -t wav -r 44100 -s -w -c 2 track.wav track.rawA CD-írók FreeBSD alatti használatával kapcsolatban olvassuk el a 18.6. szakasz - Lézeres tárolóeszközök (CD-k) létrehozása és használatat.
A videolejátszás egy nagyon friss és gyorsan fejlődő alkalmazási terület. Legyünk türelmesek, ez nem minden fog annyira könnyen menni, mint a hangok esetében.
A kezdéshez nem árt tudnunk, hogy a videokártyánk milyen gyártmányú és milyen chipet használ. Míg az Xorg és az XFree86™ számos különféle videokártyát ismer, csupán töredékükkel lehet jó lejátszási teljesítményt előhozni. Az X11 futtatása közben az xdpyinfo(1) parancs kiadásával kérdezhetjük le az X szervertől a kártyánk használatával elérhető kiterjesztéseket.
Érdemes a kezünk ügyében tartani egy
rövidke MPEG formátumú állományt,
amellyel majd ki tudjuk próbálni a
különféle lejátszókat és
azok beállításait. Mivel egyes DVD
lejátszók alapértelmezés szerint a
/dev/dvd helyen keresik a
lejátszandó DVD eszközt, vagy egyszerűen
csak így írták meg ezeket,
mindenképpen hasznos lehet, ha szimbolikus linkeket hozunk
létre a megfelelő eszközökre:
# ln -sf /dev/acd0 /dev/dvd
# ln -sf /dev/acd0 /dev/rdvdA devfs(5) működése miatt azonban ezek a
kézzel létrehozott linkek az
újraindítás után már nem
maradnak meg. A szimbolikus linkeket a rendszer minden egyes
indulásakor úgy tudjuk automatikusan
létrehozni, hogyha az /etc/devfs.conf
állományba felvesszük az alábbi
sort:
Emellett a DVD-k titkosításának feloldása, mely a DVD-meghajtók speciális funkcióit igényli, a DVD eszközökön írási jogot is igényel.
Az X11 osztott memóriát kezelő felületének gyorsításához javasolt néhány sysctl(8) változó értékének megnövelése is:
Több különböző úton lehet X11 alatt videókat nézni, de ennek tényleges módját igazából a rendelkezésre álló hardver határozza meg. Az itt leírt módszerek által kihozható minőség hardverenként eltérhet. Másodsorban a videók megjelenítése az X11-ben az utóbbi időben igen nagy hangsúlyt kapott, ezért az Xorg és az XFree86™ minden egyes változatával jelentősen javulhat a helyzet ezen a téren.
A videók megjelenítésére használt gyakori felületek:
X11: az X11 normális kimenete osztott memórián keresztül
XVideo: az X11 felületének kiterjesztése, ami tetszőleges X11 által kirajzolható objektum esetén támogat videót
SDL: a Simple Directmedia Layer
DGA: a Direct Graphics Access (közvetlen grafikus hozzáférés)
SVGAlib: alacsonyszintű konzolos grafikus réteg
Az Xorg és az XFree86™ 4.X rendelkezik egy XVideo (avagy Xvideo, Xv, xv) elnevezésű kiterjesztéssel, amelyen keresztül egy speciális gyorsítás segítségével a kirajzolható objektumokban közvetlenül meg tudunk jeleníteni videókat. Ezzel a kiterjesztéssel még a gyengébb gépeken is nagyon jó minőségű lejátszást tudunk elérni.
A kiterjesztés
működéséről az
xvinfo parancs kiadásával
győződhetünk meg:
% xvinfoHa a parancs eredménye ehhez hasonló, akkor a kártyánk támogatja az XVideót:
Az XVideo nem mindegyik implementációjában vannak jelen a felsorolt formátumok (YUV2, YUV12 stb.), ami viszont néhány lejátszó számára akadályokat jelenthet.
Amennyiben viszont ezt látjuk:
Akkor a kártyánk nem rendelkezik XVideo támogatással.
Ha az XVideo nem támogatott a kártyánk számára, akkor az csupán csak annyit jelent, hogy a gépünknek nehéz dolga lesz a videók megjelenítéséhez szükséges számítási kapacitás kiszolgálásában. Azonban a videokártyánktól és processzorunktól függően még így is kielégítő eredményt tudunk előcsalni. Ekkor viszont minden bizonnyal érdemes lesz átolvasnunk a 7.4.3. szakasz - Ajánlott olvasmányokban, miként tudjuk növelni a teljesítményét.
A Simple Directmedia Layer, vagy SDL, eredetileg a Microsoft® Windows®, BeOS és UNIX® közti hordozhatóságot szándékozta megvalósítani, aminek segítségével a hangot és grafikát hatékonyan használni tudó alkalmazások hozhatóak létre. Az SDL által nyújtott réteg a hardver olyan alacsonyszintű absztrakcióját öleli fel, amely gyakran még az X11 felületénél is hatékonyabb.
Az SDL a devel/sdl12
helyen található.
A közvetlen grafikus hozzáférés
az X11 egy olyan kiterjesztése, ami lehetővé
teszi a programok számára az X szerver
megkerülését és így
közvetlenül a videokártya
memóriáját képesek elérni.
Mivel a megosztás hatékony
megvalósításához ez nagyban
építkezik alacsonyszintű
leképzési műveletekre, ezért az
ilyet használó programokat
root felhasználóként
kell futtatni.
A DGA kiterjesztés a dga(1)
segítségével tesztelhető és
mérhető. A dga parancs
kiadása után minden billentyű
lenyomására megváltoztatja a
képernyőn látható színeket.
A kilépéshez a q
billentyűt kell lenyomni.
Ebben a szakaszban a FreeBSD Portgyűjteményéből a videók lejátszására alkalmas programokat vesszük számba. A videolejátszás nagyon gyorsan fejlődő terület, ezért az itt említett különböző alkalmazások képességei az itt leírtaktól némileg eltérhetnek.
Először is fontos tisztában lennünk azzal, hogy számos FreeBSD-n futó videoalkalmazás eredetileg linuxos alkalmazásként indult, és közülük sokan még csak béta minőségűek. Íme a FreeBSD-n is megtalálható videocsomagokkal kapcsolatos néhány olyan gond, amivel esetleg összefuthatunk:
Az egyik alkalmazás nem képes visszajátszani olyan állományt, amit egy másik alkalmazás hozott létre.
Az alkalmazás nem képes visszajátszani a saját maga által készített állományokat.
Ugyanazon alkalmazás két különböző gépen, amikor mind a kettőn az adott konfigurációra fordítjuk le, ugyanazt az állományt másképpen játssza vissza.
Egy olyan látszólag egyértelmű szűrő, mint például a kép átméretezése, a hibás átméretező rutin miatt nagyon csúnya eredményt produkál.
Az alkalmazás gyakran elszáll.
A porthoz nem találjuk a
dokumentációt, egyedül csak az interneten
vagy a port work
könyvtárában van.
Sok alkalmazás a „linuxizmus” jeleit is hordozza, vagyis gondok adódhatnak abból, hogy a szerzők az alkalmazások működtetéséhez a Linux rendszermag és a különféle terjesztésekben megtalálható módosított szabványos könyvtárak különlegességeit használják ki. Ezeket a portok karbantartói nem mindig észlelik és javítják ki, ami miatt az alábbiak bármikor bekövetkezhetnek:
A processzor jellemzőit a
/proc/cpuinfo állományon
keresztül állapítják meg.
A szálak helytelen használatuk miatt a program befejeződésekor összeakadnak.
Az alkalmazással gyakran együtt használt egyéb alkalmazások még nem nincsenek benne a FreeBSD Portgyűjteményében.
Az ilyen alkalmazások fejlesztői a hordozhatóság javításával és a problémák megoldásával kapcsolatban eddig mindig igyekeztek együttműködni a portok karbantartóival.
Az MPlayer az utóbbi időben felbukkant, gyorsan fejlődő videolejátszó. Fejlesztőinek célja a sebesség és rugalmasság a Linux, illetve más UNIX® rendszereken. A kezdeményezés abból fakadt, hogy a fejlesztés mögött álló csapat alapítójának elege lett az akkoriban elérhető lejátszók teljesítményéből. Mondhatnánk, hogy ez a program feláldozta a grafikus felületet az áramvonalas kialakításért, azonban ha hozzászokunk a parancssori beállításokhoz és a billentyűkön keresztüli vezérléshez, remekül működik.
Az MPlayer a multimedia/mplayer helyen
található. A program a
fordítási folyamat során elvégez
számos hardverellenőrzést, aminek
eredményeképpen az egyik rendszeren
fordított program nem vihető a másikra.
Ezért különösen fontos portból
fordítani és nem pedig bináris csomagot
használni. Mindezek mellett a
Makefile állományban
még számos, a make
parancsnak a fordítás megkezdésekor
átadható beállítást
találhatunk:
# cd /usr/ports/multimedia/mplayer
# make
N - O - T - E
Take a careful look into the Makefile in order
to learn how to tune mplayer towards you personal preferences!
For example,
make WITH_GTK1
builds MPlayer with GTK1-GUI support.
If you want to use the GUI, you can either install
/usr/ports/multimedia/mplayer-skins
or download official skin collections from
http://www.mplayerhq.hu/homepage/dload.html
Az üzenet fordítása:
A port alapbeállításai a
legtöbb felhasználó számára
megfelelőek, habár az Xvid kódek
használatához meg kell adnunk a
WITH_XVID
beállítást. Rajta kívül
még az alapértelmezett DVD eszközt is
érdemes megadni a WITH_DVD_DEVICE
beállítással, amelynek
alapértéke a
/dev/acd0.
A leírás
elkészítésének
időpontjában az MPlayer
portja létrehozza a HTML dokumentációt
és a két végrehajtható
állományt: az mplayer
lejátszót és a videók
újrakódolásáért
felelős mencoder
segédprogramot.
Az MPlayer HTML dokumentációja nagyon közlékeny, és ha az olvasó nem találná valamelyik videohardver vagy felület leírását ebben a fejezetben, akkor ez a dokumentáció mindenképpen hasznos olvasnivalónak bizonyul. Ha a UNIX®-ok alatt elérhető videotámogatás leírását keressük, határozottan megéri időt szánni az MPlayer dokumentációjának alapos végigolvasására.
Az MPlayer
használatához a felhasználói
könyvtárunkban rendelkeznünk kell egy
.mplayer elnevezésű
könyvtárral. Ezt a következő
paranccsal tudjuk létrehozni:
% cd /usr/ports/multimedia/mplayer
% make install-userAz mplayer parancssori
paraméterei a hozzá tartozó man oldalon
találhatóak meg, valamint mindezek a HTML
dokumentációban még
részletesebben. Ebben a szakaszban csupán
néhányukat mutatjuk be.
Egy állomány, mint például a
,
a tesztvideo.avi-vo
beállításával
játszható le a különböző
felületeken:
% mplayer -vo xv tesztvideo.avi% mplayer -vo sdl tesztvideo.avi% mplayer -vo x11 tesztvideo.avi# mplayer -vo dga tesztvideo.avi# mplayer -vo 'sdl:dga' tesztvideo.aviÉrdemes az itt felsorolt konfigurációk mindegyikét kipróbálni, mivel az egymáshoz mért teljesítményük rengeteg tényezőn múlik, de közülük talán maga a hardver a legjelentősebb.
A DVD-k lejátszásához
cseréljük ki a
paramétert a
tesztvideo.avidvd://
paraméterekkel, ahol az N -dvd-device
ESZKÖZN
a lejátszandó fejezet sorszáma,
valamint az
a DVD-hez tartozó eszközleíró.
Például így tudjuk elkezdeni
ESZKÖZ/dev/dvd eszközről a 3.
fejezet lejátszását:
# mplayer -vo xv dvd://3 -dvd-device /dev/dvdA port fordítása során a
WITH_DVD_DEVICE paraméter
segítségével megadható az
alapértelmezett DVD eszköz, amely
alapból a /dev/acd0.
Erről többet a port
Makefile
állományában
találhatunk.
A leállításhoz,
szüneteltetéshez,
továbblépéshez és többi
hasonló funkcióhoz tartozó
billentyűket a mplayer -h parancs
kimenetéből vagy a man oldal
elolvasásából deríthetjük
ki.
A lejátszáshoz tartozó
néhány viszonylag fontos
beállítás: az -fs
-zoom teljesképernyős módra
vált, valamint a -framedrop
segít növeli a
teljesítményt.
A lejátszáskor kiadandó parancs
túlburjánzását el tudjuk
kerülni, ha létrehozunk egy
.mplayer/config állományt
és itt állítjuk be a gyakori
opciókat:
Végezetül megemlítjük, hogy az
mplayer segítségével
a DVD-n található fejezeteket ki tudjuk
menteni .vob
állományokba. A DVD második
fejezetének kimentéséhez
gépeljük be ezt:
# mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvdA parancs eredményeképpen keletkező
out.vob állomány
formátuma MPEG lesz, amit a fejezetben bemutatott
további csomagokkal tudunk feldolgozni.
A mencoder
használatának megkezdése előtt
javasolt alaposan beleásnunk magunkat a HTML
dokumentációba és megismerkednünk
az alapvető beállításaival. Van
külön man oldala is, azonban a HTML
leírás nélkül
önmagában ez nem túl sokat ér.
Megszámlálhatatlan úton és
módon növelhető benne a
minőség, csökkenthető a
kódolási arány,
változtatható a formátum, és
ezen apró finomságok felelősek a
jó vagy éppen a rossz
teljesítményért. A
témába néhány példa
bemutatásával igyekszünk beavatni az
olvasót. Először vegyünk egy
egyszerű másolást:
% mencoder bemenő.avi -oac copy -ovc copy -o eredmény.aviA parancssori paraméterek helytelen
kombinációja olyan állományokat
eredményezhet, amelyeket még maga az
mplayer sem képes
lejátszani. Ezért ha csak le akarunk szedni
egy állományt, akkor maradjunk meg az
mplayer -dumpfile
opciójánál.
A
állományt MPEG4 video- és MPEG3
hangtömörítéssel (amihez kell majd a
bemenő.aviaudio/lame) így
tudjuk lekódolni:
% mencoder bemenő.avi -oac mp3lame -lameopts br=192 \
-ovc lavc -lavcopts vcodec=mpeg4:vhq -o eredmény.aviEzzel az mplayer és
xine programok számára is
egyaránt lejátszható
állomány jön létre.
A DVD fejezeteit úgy tudjuk közvetlenül
kódolni, ha a parancssorban kicseréljük a
állományt az bemenő.avidvd://1 -dvd-device
/dev/dvd beállításra, illetve
ha a programot root
felhasználóként futtatjuk. De mivel
elsőre általában ritkán vagyunk
elégedettek a kódolással,
érdemes először inkább lementeni az
egész fejezetet egy állományba, majd
azon dolgozni.
A xine egy széles
hatókörű projekt, amelynek nem csak az a
célja, hogy egy „mindenes”
videolejátszó alkalmazást fejlesszenek,
hanem az is, hogy újrahasznosítható
függvénykönyvtárakat és egy
moduláris felépítésű
programot hozzanak létre, amely
kiegészítűkkel bűvíthetű.
A multimedia/xine helyen
portként, valamint csomagként is
elérhető.
A xine itt-ott még valamelyest durva, de mindenképpen egy dicséretes kezdeményezés. A xine a gyakorlatban erős processzort és mellé gyors videokártyát kíván, vagy pedig az XVideo kiterjesztés támogatását. A grafikus felhasználói felülete ugyan használható, de még kicsit esetlen.
Az írás pillanatában a xine mellé még nem kapunk olyan modult, amivel le tudnánk játszani a CSS kódolású DVD-ket. Léteznek azonban olyan külsős modulok, amelyekkel meg lehet valósítani ezt a feladatot, azonban a FreeBSD Portgyűjteményében ezeket még nem találhatjuk meg.
A xine az MPlayerhez képes többet tesz a felhasználóért, azonban ezzel egyidőben el is veszi tőle a finomhangolás lehetőségét. A xine legjobban az XVideót ismerő felületeken teljesít.
A xine alapértelmezés szerint grafikus felülettel indul, ahol a menük segítségével tudunk megnyitni egy adott állományt:
% xineVagy a grafikus felület használata nélkül kiadhatjuk közvetlenül is az állomány lejátszását:
% xine -g -p kedvencmozim.aviA transcode nem egy újabb lejátszó, hanem a video- és audio állományok újratömörítésére használható programok gyűjteménye. A transcode segítségével a szabványos be- és kimeneten keresztül parancssoros programokkal képesek vagyunk videoállományokat összefűzni, megjavítani.
A multimedia/transcode
port fordítása során temérdek
beállítást adhatunk meg, amelyek
közül az alábbi parancsban foglaljuk össze
az általunk javasolandókat:
# make WITH_OPTIMIZED_CFLAGS=yes WITH_LIBA52=yes WITH_LAME=yes WITH_OGG=yes \
WITH_MJPEG=yes -DWITH_XVID=yesEzek a beállítások a legtöbb felhasználó számára elegendőek.
A transcode képességeinek
illusztrálásához lássunk egy
példát, amiben megmutatjuk, hogyan kell egy DivX
állományt PAL szabványú MPEG-1
formátumú (PAL VCD)
állománnyá alakítani:
% transcode -i bemenő.avi -V --export_prof vcd-pal -o output_vcd
% mplex -f 1 -o eredmény_vcd.mpg eredmény_vcd.m1v eredmény_vcd.mpaAz eredményül keletkező
MPEG állomány akár már
játszható is
MPlayerrel. Ha az
állományt kiírjuk egy írható
CD-re, akkor ezzel video CD-t is létre tudunk hozni,
amihez viszont szükségünk van mind a eredmény_vcd.mpgmultimedia/vcdimager és
sysutils/cdrdao
programokra.
A transcode parancsnak van saját
man oldala, azonban ehelyett a transcode
wikiben érdemes inkább további
információkat és példákat
keresni.
A FreeBSD-hez tartozó videoszoftverek nagyon gyorsan fejlődnek. Könnyen elképzelhető, hogy az imént tárgyalt problémák legtöbbje a közeljövőben hamarosan megoldódik. Addig viszont bárkinek, aki a legtöbbet szeretné kihozni a FreeBSD audio- és video lehetőségeiből, rengeteg leírás és dokumentáció elolvasása alapján kell összecsiszolnia a különböző beállításokat, és csak néhány alkalmazás mellett érdemes kitartania. Ebben a szakaszban igyekszünk segíteni az olvasónak megtalálni az ilyen jellegű információkat.
Az MPlayer dokumentációja szakmai szempontból igen közlékeny. Ezt mindenkinek érdemes elolvasnia, aki a későbbiekben magasabb szakmai szinten akar foglalkozni a UNIX®-os videózással. Az MPlayer levelezési listája viszont alig tolerálja a dokumentációt rendesen el nem olvasó emberek kérdéseit, ezért minden egyes hiba bejelentése előtt lehetőleg rendesen nézzük át a dokumentáció odavágó részeit.
A xine HOGYAN egyik külön fejezetében az összes lejátszó esetén érvényesíthető teljesítménynövelési módszereket mutat be.
Végül íme néhány ígéretes alkalmazás, amelyeket érdemes kipróbálnunk:
A TV kártyák segítségével kábeles vagy antennás televízióadásokat tudunk nézni a számítógépünkön. A legtöbbjük RCA vagy S-video bemenettel rendelkezik, valamint néhányukon még FM rádiókészülék is megtalálható.
A FreeBSD a bktr(4) meghajtón keresztül a Brooktree Bt848/849/878/879, illetve a Conexant CN-878/Fusion 878a típusú, PCI-os videorögzító chipeket ismeri. Ügyelnünk kell arra, hogy a kártyánkon levő vevőkészülék is használható legyen, amit pedig a bktr(4) man oldalán megtalálható támogatott eszközök listájából ellenőrizhetünk.
A kártyánk használatához be kell
töltenünk a bktr(4) meghajtót, ami
csupán annyiból áll, hogy a
/boot/loader.conf állományhoz
hozzáadunk egy ilyen sort:
Másik lehetőségünk, ha a TV kártya támogatását statikusan beleépítjük a rendszermagba. Ha ezt a megoldást választjuk, a következő sorokat kell elhelyeznünk a rendszermag beállításait tartalmazó állományba:
A fentebb látható egyéb eszközök megadása azért szükséges, mert a kártya részegységei egy I2C buszon csatlakoznak egymáshoz. Miután beillesztettük a szükséges változtatásokat, fordítsuk le és telepítsük az új rendszermagot.
A támogatás hozzáadása után újra kell indítanunk a számítógépünket. A rendszerindítási folyamat során meg kell jelennie a TV kártyánknak is, valahogy így:
Természetesen a fenti üzenetek az aktuális hardvereszközünknek megfelelően némileg eltérhetnek. Ellenőrizzük, hogy a vevőkészüléket helyesen ismerte-e fel a rendszer. Ha nem sikerült volna, akkor a sysctl(8) és a rendszermag beállításai segítségével még mindig van lehetőségünk állítani rajta. Például, ha egy Philips SECAM vevőkészüléket akarunk beállítani, akkor a rendszermag beállításaihoz még hozzá kell adni a következő sort:
vagy erre közvetlenül használhatjuk a sysctl(8) programot is:
# sysctl hw.bt848.tuner=6A bktr(4) man oldalán és a
/usr/src/sys/conf/NOTES
állományban megtalálhatjuk a többi
beállítás részletes
leírását is.
A TV kártyánk tényleges használatához azonban még a következő alkalmazások valamelyikét is telepítenünk kell:
A multimedia/fxtv
használatával ablakban
tévézhetünk, valamint
lehetőségünk van kép/audio/video
kimentésére is.
A multimedia/xawtv
az fxtv-hez hasonló
lehetőségekkel bíró
tévénéző alkalmazás.
A misc/alevt
dekódolja és megjeleníti a
műsorhoz kapcsolódó Videotex/Teletext
üzeneteket.
Az audio/xmradio
segítségével az egyes TV
kártyákon megtalálható FM
rádiókészülékeket tudjuk
használatba venni.
Az audio/wmtune a
rádióvevőkhöz
használható hasznos grafikus
alkalmazás.
Ebben a témában a FreeBSD Portgyűjteményében további érdekes alkalmazások találhatóak még.
Ha bármilyen gond adódna a TV kártyánkkal kapcsolatosan, akkor először mindenképpen érdemes megnézni, hogy a rajta levő videorögzítő chipet és vevőkészüléket a bktr(4) meghajtó ténylegesen ismeri-e, illetve hogy jól állítottuk-e be. A TV kártyákra irányuló különféle egyéb kérdések és segítség tekintetében érdemes lehet még levelet küldeni a freebsd-multimedia címére is.
A FreeBSD lapolvasókhoz a SANE (Scanner Access Now Easy) elnevezésű API (alkalmazásfejlesztői felület) segítségével képes hozzáférni, amelyet a Portgyűjteményben találhatunk meg. A lapolvasást végző hardvereszközök használatához a FreeBSD a SANE mellett még néhány eszközmeghajtóra is támaszkodik.
A FreeBSD egyaránt ismeri az SCSI és USB
csatlakoztatású lapolvasókat is.
Még mielőtt nekikezdenénk a lapolvasó
beállításához, bizonyosodjuk meg
róla, hogy a SANE
támogatja. A SANE által
ismert eszközök felsorolásában
ellenőrizhetjük a lapolvasónk
támogatottságának állapotát.
A FreeBSD 8.X előtti
kiadásaiban ezenkívül még a
uscanner(4) man oldalon is láthatjuk az ismert USB-s
lapolvasók listáját.
A korábbiak értelmében tehát mind a SCSI, mind pedig a USB felületen csatlakozó eszközök támogatottak. A lapolvasónknak megfelelően eltérő eszközmeghajtók szükségesek.
A GENERIC rendszermag
alapértelmezés szerint tartalmazza az USB-s
lapolvasók használatához
szükséges eszközmeghajtókat. Ha
valamiért azonban mégis saját
rendszermagot akarunk használni, akkor ne
felejtsük el ellenőrizni, hogy a rendszermag
beállításai között
megtalálhatóak a következő
sorok:
A FreeBSD 8.X előtti
kiadásaiban még a következő sorra is
szükségünk lesz:
A FreeBSD ezen változataiban a uscanner(4) eszközmeghajtón keresztül tudjuk használni az USB csatolóval rendelkező lapolvasókat. A FreeBSD 8.0 változatától kezdődően pedig ehhez a libusb(3) függvénykönyvtár nyújt közvetlen támogatást.
A megfelelően előkészített rendszermag elindítása után csatlakoztassuk az USB-s lapolvasónkat. Ez a sor fog megjelenni a rendszer üzenetpufferében (dmesg(8)):
Vagy FreeBSD 7.X rendszerek
esetében:
Ezek az üzenetek elárulják nekünk,
hogy a lapolvasóhoz mostantól a használt
FreeBSD verziótól függően a
/dev/ugen0.2 vagy a
/dev/uscanner0
eszközleíró tartozik. A fenti
példában egy EPSON
Perfection® 1650
típusú USB lapolvasót
láthatunk.
Ha a lapolvasónk SCSI felületen csatlakozik,
fontos tisztában lennünk azzal, hogy pontosan
milyen SCSI-vezérlőn keresztül is
érhetjük el, ugyanis a rajta
található SCSI chipkészletnek
megfelelően kell majd hangolnunk a rendszermag
beállításait. A
GENERIC rendszermag alapból ismeri
a leggyakrabban előforduló
SCSI-vezérlőket. Mindenképpen olvassuk
át a NOTES nevű
állományt és adjuk hozzá a
rendszermag beállításaihoz a
megfelelő sort. A SCSI-kártya
meghajtóján kívül még az
alábbi beállításokat is meg kell
adnunk a rendszermagunk számára:
Ahogy sikerült a rendszermagot sikeresen lefordítani és telepíteni, a rendszer indulása során az üzenetpufferben már láthatjuk is a felismert eszközt:
Ha a rendszer indulásakor még nem kapcsoltuk volna be a lapolvasónkat, a camcontrol(8) parancs segítségével később külön kérhetjük a SCSI buszon található eszközök újbóli felderítését:
# camcontrol rescan all
Re-scan of bus 0 was successful
Re-scan of bus 1 was successful
Re-scan of bus 2 was successful
Re-scan of bus 3 was successfulEkkor a lapolvasó megjelenik a SCSI eszközök felsorolásában:
# camcontrol devlist
<IBM DDRS-34560 S97B> at scbus0 target 5 lun 0 (pass0,da0)
<IBM DDRS-34560 S97B> at scbus0 target 6 lun 0 (pass1,da1)
<AGFA SNAPSCAN 600 1.10> at scbus1 target 2 lun 0 (pass3)
<PHILIPS CDD3610 CD-R/RW 1.00> at scbus2 target 0 lun 0 (pass2,cd0)A SCSI eszközökről további leírásokat a scsi(4) és camcontrol(8) man oldalakon találhatunk.
A SANE rendszere két
részre oszlik: a backendekre (graphics/sane-backends) és a
frontendekre (graphics/sane-frontends). Ezek
közül maguk a backendek szolgáltatják a
lapolvasó
hozzáférhetőségét. A
SANE által ismert
eszközeinek listájából
kifürkészhetjük, hogy lapolvasónkat
melyik backenden keresztül érhetjük el. Az
eszköz megfelelő használatához
döntő fontosságú
megállapítani a hozzá tartozó
backendet. A frontendek között találjuk meg a
lapolvasást felügyelő grafikus felületeket
(mint például az
xscanimage).
Elsőként telepítsük a graphics/sane-backends portot vagy
csomagot. Ezután ellenőrizzük, hogy a
SANE felismeri a lapolvasót,
és ehhez adjuk ki a sane-find-scanner
parancsot:
# sane-find-scanner -q
found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3A kimenetében jelzi a felületet, amin a lapolvasó csatlakozik, valamint a hozzá tartozó eszközleírót. A gyártó neve és a termék típusa nem minden esetben jelenik meg, de ez nem is annyira fontos.
Némely USB-s lapolvasók esetén még egy firmware-t is be kell töltenünk, amiről bővebben a backendhez tartozó man oldalokon olvashatunk. Ajánlott még elolvasni a sane-find-scanner(1) és sane(7) man oldalakat is.
Most pedig nézzük meg, hogy vajon a frontend is
be tudja-e azonosítani a lapolvasónkat.
Alapértelmezés szerint a
SANE backendjéhez tartozik
még egy scanimage(1) nevű segédprogram
is, aminek segítségével listázni
tudjuk a használható eszközöket
és képeket tudunk beolvasni parancssorból.
Közülük a -L kapcsoló
listáz:
# scanimage -L
device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scannerVagy ha a 7.6.2.1. szakasz - Beállítás USB felületenban szereplő USB lapolvasóval nézzük:
# scanimage -L
device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scannerEzt a kimenetet egy FreeBSD 8.X
rendszeren kaptuk, ahol a
'epson2:libusb:/dev/usb:/dev/ugen0.2' az
eszközhöz tartozó backendet
(epson2) és
eszközleírót
(/dev/ugen0.2) adja meg.
Ha ennek eredményeképpen semmi sem jelenik
meg, vagy a scanimage(1) látszólag nem
talált semmilyen eszközt, akkor a lapolvasó
azonosítása nem sikerült. Ilyen esetekben
valószínűleg módosítanunk
kell a backend beállításait
tartalmazó állományt a használni
kívánt lapolvasó eszköz szerint. A
backendek beállításait a /usr/local/etc/sane.d/
könyvtárban találjuk. Ez a probléma
bizonyos USB-s lapolvasók esetében
jelentkezik.
Például, ha 7.6.2.1. szakasz - Beállítás USB felületenban használt USB-s
lapolvasónkat FreeBSD 8.X
alatt tökéletesen felismeri a rendszer, de a FreeBSD
korábbi változatai esetén (ahol a
uscanner(4) eszközmeghajtót
használják) a
sane-find-scanner parancs a
következőket adja vissza:
# sane-find-scanner -q
found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0Akkor a lapolvasót sikerült megtalálni,
és láthatjuk, hogy USB-n keresztül
csatlakozik és a /dev/uscanner0
eszközleíró tartozik hozzá. Most
már ellenőrizhetjük a lapolvasó helyes
beazonosítását is:
# scanimage -L
No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).Az üzenet fordítása:
Mivel a lapolvasót nem sikerült
azonosítani, át kell írnunk a
/usr/local/etc/sane.d/epson2.conf
állományt. A használt lapolvasó
típusa EPSON
Perfection® 1650, ezért
hozzá az epson2 backendet fogjuk
használni. Ehhez feltétlenül olvassuk el a
konfigurációs állományban
található megjegyzéseket is. A sorokat
igen könnyű átírni: tegyük
megjegyzésbe az összes olyat, ahol a
lapolvasónk számára nem megfelelő
felületek találhatóak (a mi esetünkben
tehát megjegyzésbe fogjuk tenni az összes
scsi szóval kezdődő sort,
hiszen nekünk USB-s eszközünk van), majd az
állomány végére írjuk be a
használni kívánt felületet és
eszközleírót. Ez ebben a konkrét
esetben ennyi lenne:
A megfelelő formátum és a további részletek leírásához ne felejtsük el azonban elolvasni a backend konfigurációs állományában felbukkanó megjegyzéseket és az ide tartozó man oldalt sem. Most már megpróbálkozhatunk újra a lapolvasó azonosításával:
# scanimage -L
device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scannerLáthatjuk, hogy az USB-s lapolvasónkat
sikerült azonosítani. Nem számít,
ha esetleg nem egyezne a valósággal a
gyártó vagy a típus
megjelölése. Itt a valóban lényeges
elem az `epson:/dev/uscanner0' mező
lesz, melynek a backend és az
eszközleíró nevét kell helyesen
tartalmaznia.
A beállítást akkor zárhatjuk le,
miután a scanimage -L parancs
képes észlelni a lapolvasót. A eszköz
ekkor már készen áll a
beolvasásra.
Míg a scanimage(1) parancssorból teszi
lehetővé számunkra a lapolvasást,
addig érdemesebb a képek olvasását
egy grafikus felületen keresztül
végeznünk. A SANE egy
egyszerű, ám hatékony grafikus felületet
ajánl fel ehhez, ez az
xscanimage (graphics/sane-frontends).
Az Xsane (graphics/xsane) egy másik
népszerű grafikus frontend.
Segítségével speciális
lehetőségeket is kihasználhatunk, mint
például többféle
képolvasási mód
(fénymásoló, fax stb.),
színkorrekció, kötegelt beolvasás,
stb. Mind a két említett alkalmazás
elérhető a The GIMP
bővítményeként is.
A korábban tárgyalt műveletek
mindegyikét root
felhasználóként tudjuk csak
végrehajtani. Azonban előfordulhat, hogy más
felhasználók számára is
szeretnénk hozzáférést
biztosítani a lapolvasóhoz. Ehhez az
érintett felhasználóknak a
lapolvasóhoz tartozó
eszközleíróhoz olvasási és
írás joggal kell rendelkezniük.
Például az USB-s lapolvasónk a
/dev/ugen0.2
eszközleírót használja, amely
valójában csak a
/dev/usb/0.2.0
eszközleíróra mutató szimbolikus link
(ezt gyorsan le tudjuk ellenőrizni, ha
megnézzük a /dev könyvtár
tartalmát). Az eszközleíró és
a rá mutató szimbolikus link rendre a
wheel és
operator csoportok birtokában van.
Ha a
nevű felhasználót felvesszük ezekbe a
csoportokba, akkor ezáltal hozzá tud majd
férni a lapolvasóhoz. Nyilvánvaló
biztonsági megfontolásokból azonban
kétszer is javasolt meggondolni, mely
felhasználókat mely csoportokba vesszük fel,
különösen, ha pgjwheel
csoportról van szó. Ennél valamivel jobb
megoldást kínál, ha létrehozunk
külön az USB eszközök
használatára vonatkozó csoportot és
a lapolvasót ezen csoport tagjainak számára
elérhetővé tesszük.
Tehát erre a célra például
megalkotjuk a
csoportot. Ehhez első lépésként a
pw(8) parancs segítségével hozzuk
létre magát a csoportot:usb
# pw groupadd usbEzután a /dev/usb/0.2.0
eszközleírót és a rá
mutató /dev/ugen0.2 szimbolikus
linket kell az usb csoport
részére elérhetővé
tennünk, a megfelelő írási
engedélyekkel (0660 vagy
0664) együtt, mivel
alapértelmezetten csak a tulajdonosuk
(root) tudja írni ezeket. Mindezt
úgy tudjuk megtenni, ha az
/etc/devfs.rules
állományhoz hozzáadjuk a megfelelő
sorokat:
A FreeBSD 7.X változatok
esetén valószínűleg a
következő sorokra lesz szükségünk a
/dev/uscanner0
eszközleíróhoz:
Ezt követően az /etc/rc.conf
állományba írjuk be az alábbi sort
és utána indítsuk újra a
számítógépet:
Az itt szereplő sorok pontos jelentéséről a devfs(8) man oldaláról tájékozódhatunk.
Ezután már csak fel kell vennünk azokat a
felhasználókat a
csoportba,
amelyeknek engedélyezzük a lapolvasó
használatát:usb
# pw groupmod usb -m pgjA további részletekről a pw(8) man oldalon olvashatunk.
A rendszermag a FreeBSD 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 FreeBSD egyre jobban konfigurálható dinamikusan, addig alkalmanként elegedhetetlen, hogy újrakonfiguráljuk és újrafordítsuk a rendszermagot.
A fejezet elolvasása során megismerjük:
miért lehet szükségünk egy saját rendszermagra;
hogyan készítsünk konfigurációs állományt a rendszermaghoz, vagy hogyan módosítsunk egy már létezőt;
hogyan használjuk a rendszermag konfigurációs állományát egy új rendszermag lefordítására és létrehozására;
hogyan telepítsük az új rendszermagot;
hogyan orvosoljuk a felmerülő problémákat.
A fejezetben az összes példaként
bemutatásra kerülő parancsot
root felhasználóként
kell kiadni a sikeres végrehajtásukhoz.
A FreeBSD eredetileg ún. „monolitikus” 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.
Manapság azonban a FreeBSD 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.
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.
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 FreeBSD
rendszerünk számára. Eltérően egy
GENERIC (általános)
rendszermagtól, amely rengeteg hardvert támogat, egy
saját rendszermag csak a saját
PC-nk hardverét ismeri. Ennek több előnye is
van, például:
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ő.
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
GENERIC 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.
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 GENERIC rendszermagban,
mint például a
hangkártyákét.
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 FreeBSD nem elsődlegesen használt operációs rendszer, ott ehhez elegendő megnézni a jelenlegi rendszerben található elemeket. Például a Microsoft® rendszerek Eszközkezelőjében (Device Manager) általában az összes eszköz fontosabb adatait megtaláljuk. Magát az Eszközkezelőt pedig a Vezérlőpultból (Control Panel) érhetjük el.
A Microsoft® Windows® egyes verzióiban a Rendszer (System) ikonjára kattintva megkapjuk azt a képernyőt, ahonnan közvetlenül el tudjuk érni az Eszközkezelőt.
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 dmesg(8) és a man(1) parancsok
használata. A FreeBSD-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
psm meghajtó megtalálta a
gépünkhöz tartozó egeret:
Ezután ezt a meghajtót vagy a rendszermagba kell beépítenünk, vagy pedig a loader.conf(5) állományon keresztül betöltenünk.
Bizonyos esetekben a dmesg az
eszközök felkutatásának eredményei
helyett csak a rendszer üzeneteit mutatja. Ilyen
helyzetekben a teljes kimenet a
/var/run/dmesg.boot állományban
tekinthető meg.
A hardverek manuális felderítésének módja a pciconf(8) segédprogram kimenetének böngészése, ami valamivel részletesebb eredményt ad. Mint például:
A pciconf paranccsal
kapott kimenet ezen része azt mutatja, hogy az
-lv
meghajtó talált egy vezeték
nélküli Ethernet eszközt. Innen a athman
paranccsal
érhetjük el a ath(4) man oldalát.ath
A man(1) a -k 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:
# man -k Atherosle tudjuk kérdezni azokat a man oldalakat, amelyek tartalmazzák az adott szót:
A hardvereszközeink listájával felvértezve most már egy saját rendszermag létrehozása sem lesz annyira ijesztő.
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.
A rendszermaghoz tartozó modulok a /boot/kernel
könyvtárban találhatóak, és a
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
ath vezeték nélküli
Ethernet meghajtóval foglalkoztunk. A következő
leírást találjuk a hozzá tartozó
man oldalon:
A fentebb leírtak szerint tehát, ha az
if_ath_load="YES" sort hozzáadjuk a
/boot/loader.conf állományhoz,
akkor a rendszer indulásakor ez a modul mindig dinamikusan
betöltődik.
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 FFS á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.
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 ata(4)
meghajtót kivesszük a rendszermag
konfigurációs
állományából, az
ATA alrendszert használó
meghajtók csak abban az esetben fognak biztosan
működni, ha egyúttal felvesszük a
loader.conf á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.
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 /usr/src/sys
könyvtáron belül található, amely
/sys 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
lesz, ahol majd létrehozzuk a saját rendszermagunk
konfigurációs állományát,
valamint a architektúra/confcompile, ahol majd a
rendszermagunk fordítása történik. Itt
az architektúra lehet
i386, alpha,
amd64, ia64,
powerpc, sparc64 vagy
pc98 (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ő FreeBSD 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.
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.
Ha nem lenne
/usr/src/sys 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 root
felhasználóként elindítjuk a
sysinstall programot és ott
kiválasztjuk a
(Beállítások), azon belül
(Terjesztések)
menüpontot, amiben válasszuk ki a
,
és terjesztéseket.
Ha nem szeretnénk erre a célra a
sysinstall programot
használni, de rendelkezésünkre áll a
„hivatalos” FreeBSD CD, akkor a forrásokat
akár parancssorból is
telepíthetjük:
# mount /cdrom
# mkdir -p /usr/src/sys
# ln -s /usr/src/sys /sys
# cat /cdrom/src/ssys.[a-d]* | tar -xzvf -
# cat /cdrom/src/sbase.[a-d]* | tar -xzvf -Ezután lépjünk be az
könyvtárba és másoljuk le a
i386/confGENERIC konfigurációs
állományt a kedvünk szerinti nevűre.
Például:
# cd /usr/src/sys/i386/conf
# cp GENERIC SAJÁTÁltalában a nevet végig nagybetűkkel
írjuk, és ha több FreeBSD-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
lesz.SAJÁT
A rendszermagunk konfigurációs
állományát nem éppen a legjobb
ötlet a /usr/src
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
/usr/src 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
GENERIC konfigurációs
állomány szerkesztése sem ajánlott,
mivel a források egy esetleges frissítésénél
könnyen felülíródhat és ezzel
együtt elvesznek a módosításaink
is.
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
könyvtárban.i386
Valahogy így:
# cd /usr/src/sys/i386/conf
# mkdir /root/kernel
# cp GENERIC /root/kernel/SAJÁT
# ln -s /root/kernel/SAJÁTMost pedig a kedvenc szövegszerkesztőnkkel
lássunk neki a
átírásának! Ha nemrég
telepítettük csak a rendszerünket, az egyetlen
elérhető szövegszerkesztőnk minden bizonnyal
a vi lesz. Róla most
túlságosan is bonyolult lenne leírást
adnunk, de az Irodalomjegyzékben
található könyvek közül sokban
elég jól bemutatják. Ezen kívül
a FreeBSD ajánl egy könnyebben megtanulható
szövegszerkesztőt is az ee
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 SAJÁTGENERIC
beállításaitól.
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
GENERIC konfigurációs
állomány egy kissé terebélyesnek
tűnhet számunkra, ezért A konfigurációs
állomány című részt
figyelmesen és lassan olvassuk át.
Amennyiben a forrásfánkat a FreeBSD projekt
legfrissebb forrásaival szinkronizáljuk, mindig
olvassuk el a /usr/src/UPDATING
á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
/usr/src/UPDATING mindig a FreeBSD
forrásának legfrissebb változatához
igazodik, és ezért sokkal naprakészebb
információkat tartalmaz, mint ez a
kézikönyv.
Most pedig le kell lefordítanunk a rendszermag forráskódját.
Lépjünk be a /usr/src
könyvtárba:
# cd /usr/srcFordítsuk le a rendszermagot:
# make buildkernel KERNCONF=SAJÁTTelepítsük az új rendszermagot:
# make installkernel KERNCONF=SAJÁTA FreeBSD teljes forrásfájára szükség van a rendszermag lefordításához.
Amikor egy saját rendszermagot
alapértelmezés szerint fordítunk, vele
együtt az összes 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 /etc/make.conf
állományt a rendszermag
fordításának megkezdése
előtt:
Ez a változó megadja a ténylegesen lefordítandó modulok listáját.
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 make.conf(5) man oldalán olvashatunk.
Ezután az új rendszermag a /boot/kernel könyvtárba
kerül /boot/kernel/kernel néven,
a korábbi rendszermag pedig
/boot/kernel.old/kernel 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ó, hibakeresésre
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 nem indul.
A rendszerindítási folyamathoz tartozó
további állományok, mint
például a rendszerbetöltő
(loader(8)) és annak konfigurációs
állománya, a /boot
könyvtárban találhatóak. A
külső és saját modulok a /boot/kernel 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.
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.
A FreeBSD 5.0 megjelenése óta a
konfigurációs állományokban
használható az include
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
GENERIC rendszermaghoz, akkor elegendő
a hozzá vett eltéréseket
nyilvántartanunk egy külön
konfigurációs állományban:
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
GENERIC rendszermag helyi rendszerre
vonatkozó eltéréseit tartalmazza. Így
amikor frissítjük a rendszerünket, a
GENERIC rendszermag összes
újítása elérhetővé
válik, kivéve ha explicit módon le nem
tiltottuk ezeket a noptions vagy a
nodevice 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.
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 LINTItt 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/
állománnyal.i386/conf/GENERIC
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.
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 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.
Ez a rendszermag azonosítója.
Változtassuk meg rendszermagunk nevére, legyen
például
, ha a
korábbi utasításokat követtük. Az
SAJATident 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).
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.
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.
A FreeBSD alapértelmezett rendszerütemezője. Ne változtassuk meg!
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.
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ő!
Engedélyezi az IPv6 kommunikációs protokollok használatát.
Ez a legalapvetőbb merevlemezes állományrendszer. Hagyjuk meg, ha merevlemezről akarjuk indítani a rendszerünket.
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.
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. szakasz - Az állományrendszerek hozzáféréseit vezérlő listákban tárgyaljuk. Az ACL 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.
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 FreeBSD-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.
Ezzel az opcióval engedélyezni tudjuk a rendszer indítását memóriában tárolt virtuális lemezekről.
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.
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).
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.
A futó programok állományrendszere. Ez
csak a /proc könyvtárra
csatlakoztatott „színlelt”
állományrendszer, amelynek
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.
A 6.X verziójú rendszermagokban a
PROCFS használatához
engedélyeznünk kell a PSEUDOFS
használatát is.
Ezzel a beállítással engedélyezni tudjuk nagy mennyiségű partíció támogatását egyetlen lemezen.
Kompatibilitás a 4.3BSD-vel. Ne vegyük ki, mert bizonyos programok furcsán fognak viselkedni a hiánya esetén.
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.
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.
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 FreeBSD nem tudja felismerni a SCSI eszközeinket, akkor növeljük meg valamennyivel.
Engedélyezi a rendszermagban futó rutinok nyomonkövetését, ami hasznos lehet a hibák keresése során.
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.
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.
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.
A ipcs(1) parancs -p
paraméterével ki tudjuk listáztatni azokat
a futó programokat, amelyek ezen System V
eszközöket használják.
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™).
Ez a beállítás kell ahhoz, hogy a
/dev könyvtárban létre
tudjunk hozni eszközleírókat a
billentyűzethez.
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
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.
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.
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.
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.
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.
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.
Ez a hajlékonylemezes meghajtó vezérlője.
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.
Az ATA lemezmeghajtók
támogatásához erre van még
szükség a device ata
mellett.
Az ATA RAID-meghajtók kezeléséhez erre a
sorra van szükség a device ata
mellett.
Az ATAPI CD-meghajtók használatához ezt
is tegyük a konfigurációba a device
ata mellé.
A device ata használata mellett erre
van még szükségünk az ATAPI floppy
meghajtók kezeléséhez.
Az ATAPI szalagos egységek használatához
ezt a sort is tegyük a konfigurációba a
device ata mellé.
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. 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. 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.
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.
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.
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.
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é.
Használjuk ezt az eszközt, ha az egerünk a PS/2 portra csatlakozik.
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.
Videokártya meghajtó.
Nyissunk egy üdvözlőképernyővel! A képernyőkímélőknek is szükségük van erre az eszközre.
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ónkat a
scoansi értékre.
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 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ő.
Í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.
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 energiagazdálkodási események, mint például APM és ACPI időzítőjének eszközmeghajtója.
A PCMCIA támogatása. Mindenképpen szükségünk lesz rá, ha laptopunk van.
Ezek azok a soros portok, amelyek az MS-DOS®/Windows®
világban csak COM
portokként ismernek.
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 okbó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.
Ez az ISA busz párhuzamos portjának felülete.
A párhuzamos porthoz tartozó busz támogatása.
A párhuzamos portra csatlakozó nyomtatók támogatása.
A fentiek közül mind a három szükséges a párhuzamos porton csatlakozó nyomtatók használatához.
Ez a párhuzamos port hálózati felületének meghajtója.
Általános célú („geek port”) és IEEE1284 I/O.
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.
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.
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.
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.
Meghajtók, melyek az MII busz vezérlőkódját használják.
ISA Ethernet meghajtók. A konkrétan
támogatott kártyák teljes
felsorolását lásd a
/usr/src/sys/
állományban.i386/conf/NOTES
Á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.
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.
A különböző vezeték nélküli kártyák támogatása.
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ő!
Kriptográfiai szempontból biztonságos álvéletlenszám generátor.
Az ether 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.
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.
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.
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.
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.
A memóriában levő pszeudo lemezes meghajtók.
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.
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 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.
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.
A különféle USB eszközök támogatása.
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/
állományból
tájékozódhatunk.i386/conf/NOTES
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 hozzáadásával tudjuk engedélyezni:
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.
Négyféle probléma jelentkezhet egy saját rendszermag készítése során. Ezek:
config hibát jelez:Amikor a 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 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:
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
GENERIC konfigurációs
állománnyal vagy más
hivatkozásokkal.
make hibát jelez:Ha a make jelez hibát, az
általában arra utal, hogy az általunk
korábban megadott rendszermag
konfigurációs állományt a
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 FreeBSD general questions levelezési lista címére,
ahol a hozzáértők gyorsan
átnézik.
Ha az új rendszermagunk nem indul vagy nem
képes felismerni az eszközeinket, ne essünk
kétségbe! Szerencsére a FreeBSD
tökéletes megoldással tud
szolgálni az összeférhetetlen
rendszermagok esetére: a FreeBSD
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 „Escape to a
loader prompt” (a betöltő
parancssorának előhívása)
menüpontot. Mikor megjelenik a parancssor,
írjuk be, hogy unload kernel, majd
adjuk ki a boot
/boot/,
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.kernel.old/kernel
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
/var/log/messages
á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
dmesg(8) parancs is meg tudja jeleníteni az
aktuális rendszerindítás
üzeneteit.
Ha gondok merülnének fel a rendszermag
elkészítése során,
mindenképpen tartsuk meg a
GENERIC, 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
kernel.old állományra
ugyanis nem minden esetben számíthatunk,
mivel az új rendszermagok
telepítésénél a
kernel.old 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 /boot/kernel
könyvtárba vagy különben a
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:
# mv /boot/kernel /boot/kernel.rossz
# mv /boot/kernel.jó /boot/kernelHa 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 ps(1) vagy a vmstat(8) nem fognak működni. Ebben az esetben az egész rendszert újra kell fordítanunk és telepítenünk 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.
A FreeBSD a nyomtatók széles skálájával képes együttműködni, a legrégebbi vegyszeres nyomtatótól kezdve egészen napjaink lézernyomtatójáig, aminek köszönhetően alkalmazásainkkal nagyon jó minőségű nyomtatásokat tudunk készíteni.
A FreeBSD a helyi hálózaton nyomtatószervernek is beállítható. Ekkor a vele közös hálózatra csatlakozó többi, FreeBSD, Windows® vagy Mac OS® rendszerű számítógéptől képes nyomtatási kéréseket elfogadni. A FreeBSD gondoskodik róla, hogy egyszerre csak egy nyomtatás készüljön el, számon tartja, hogy mely felhasználók és számítógépek nyomtatnak a legtöbbet, és minden feladathoz „munkalapot” (banner page) készít, amiben többek közt megtalálhatjuk, hogy kihez tartozik.
A fejezet elolvasása során megismerjük:
hogyan állítsuk be a FreeBSD nyomtatási sorát;
hogyan telepítsünk nyomtatási szűrőket, hogyan kezeljünk különböző speciális nyomtatási feladatokat, tehát például miként alakítsuk át a beérkező dokumentumokat olyan nyomtatási formátumra, amelyet a nyomtatónk is megért;
hogyan engedélyezzük a fejléc- vagy nyomtatási információk kinyomtatását;
hogyan nyomtassunk más számítógépekhez csatlakoztatott nyomtatókkal;
hogyan nyomtassunk a hálózatra közvetlenül kapcsolt nyomtatókkal;
hogyan állítsuk be a nyomtatási korlátozásokat, például a nyomtatási feladatok méretét, amivel egyes felhasználók nyomtatását visszafoghatjuk;
hogyan készítsünk nyomtatási kimutatásokat és nyilvántartást a nyomtató használatáról;
hogyan keressük meg a nyomtatás során felmerülő problémák okait.
A fejezet elolvasásához ajánlott:
egy új rendszermag beállításának és telepítésének ismerete (8. fejezet - A FreeBSD rendszermag testreszabása).
A FreeBSD-ben a nyomtatók működéséhez be kell állítani az LPD nyomtatási rendszert. Ez a Berkeley sornyomtatási rendszere, amelyet ezentúl röviden csak LPD-nek fogunk hívni. Ez a FreeBSD alapértelmezett szabványos nyomtatásvezérlő rendszere. Ebben a fejezetben az LPD és annak konfigurációja kerül bemutatásra.
Ha már találkoztunk az LPD-vel vagy hozzá hasonló rendszerekkel, akkor innen nyugodtan ugorhatunk a Kezdeti beállítások című szakaszra.
Az LPD vezérli a számítógéphez csatlakoztatott nyomtató összes funkcióját. Számos feladata van:
Felügyeli a lokálisan és hálózaton keresztül csatlakoztatott nyomtatók hozzáféréseit.
Lehetővé teszi az átküldött állományok kinyomtatását, amelyeket nyomtatási feladatoknak nevezünk.
Minden nyomtatóhoz fenntart egy nyomtatási sort, amivel meg tudja akadályozni, hogy egyszerre több felhasználó is hozzá tudjon férni az egyes nyomtatókhoz.
A fejléceket (vagy más néven munka- vagy elválasztó lapokat) nyomtat, így a felhasználók könnyen megtalálják a saját nyomtatásaikat a többi közt.
Felügyeli a soros portokon csatlakozó nyomtatók kommunikációs beállításait.
A hálózaton keresztül átküldi a nyomtatási feladatokat egy másik számítógép LPD sorába.
A nyomtatási feladatok formázásához lefuttatja az adott nyomtató nyelvéhez és képességeihez illeszkedő speciális szűrőket.
Nyilvántartja a nyomtató kihasználtságát.
A beállításait tartalmazó
állomány (/etc/printcap)
és a speciális szűrőprogramok
segítségével az
LPD sokféle nyomtatón
képes az összes említett feladatot vagy annak
egy részét megvalósítani.
Amikor csak egyedül vagyunk a rendszerben, felmerülhet bennünk a kérdés, hogy minek is kellene nekünk vesződni a nyomtatási sor beállításával, hiszen nincs szükségünk sem a hozzáférések vezérlésére, sem fejlécekre, sem pedig nyilvántartásra. Noha akár közvetlenül is el tudjuk érni a nyomtatót, néhány okból azért mégis érdemes nyomtatási sort használni:
Az LPD a háttérben nyomtat, ezért ilyenkor nem kell megvárni, amíg az adat átmásolódik a nyomtatóra.
Az LPD tetszőlegesen tudja alakítani a nyomtatási feladatokat: hozzájuk tud tenni különböző adatokat (dátum és idő), vagy a speciális állományokat (például a TeX DVI formátumát) képes megértetni a nyomtatóval, és nem nekünk kell mindezeket a lépéseket elvégeznünk.
Számos nyomtatási lehetőséggel rendelkező szabad és kereskedelmi program arra számít, hogy a rendszerünkben nyomtatási sor található, ezért annak beállításával sokkal könnyebb használni ezeket a szoftvereket.
Úgy tudjuk használni a nyomtatókat az LPD nyomtatási rendszerével, ha egyaránt beállítjuk a nyomtatót és magát az LPD-t is. Itt a beállítás két szintjét tárgyaljuk:
Az Alacsonyszintű nyomtatóbeállítás című szakaszból megtudhatjuk, hogyan tudunk csatlakoztatni egy nyomtatót, hogyan adjuk meg az LPD-nek, miként kommunikáljon vele, hogyan nyomtassunk ki egyszerű szöveges állományokat a nyomtatón.
A Magasszintű nyomtatóbeállítás szakaszban bemutatjuk, hogyan nyomtassunk ki különféle speciális állományokat, hogyan készíttessünk fejléceket, hogyan nyomtassunk hálózaton keresztül, hogyan vezéreljük a nyomtatók hozzáférését és hogyan tartsuk nyilván a nyomtató használatát.
Ebben a szakaszban láthatjuk, miképpen kell beállítani a nyomtatónkat és az LPD hogyan lesz képes azt használatba venni. Az alapoktól kezdünk:
A Hardveres beállítás című szakaszban abban kapunk segítséget, hogyan kell a nyomtatót a számítógéphez csatlakoztatni.
A Szoftveres
beállítás című
szakaszban az LPD
nyomtatási rendszer
beállítását tartalmazó
állományt (/etc/printcap)
vesszük sorra.
Amennyiben olyan nyomtatót akarunk beállítani, amely nem helyileg, hanem valamilyen hálózati protokollon keresztül csatlakozik, nézzük meg a Nyomtatók hálózati adatcsatlakozással című szakaszt.
Habár ez a szakasz nevében csupán „Alacsonyszintű nyomtatóbeállításról” szól, meglehetősen szerteágazó tud lenni. A nyomtató hardveres és szoftveres életre keltése az egyik legnehezebb feladat. Ha van egy működő nyomtatónk, a fejlécek és a nyilvántartás beállítása tulajdonképpen már gyerekjáték.
Ebben a szakaszban a nyomtatók csatlakoztatásának lehetséges módozatairól esik szó. Beszélni fogunk mindenféle portokról és kábelekről, és a FreeBSD rendszermagjának az egyes nyomtatók használatához szükséges beállításairól is.
Ha korábban tudtuk csatlakoztatni a nyomtatónkat, és más operációs rendszerekkel már sikeresen nyomtattunk is vele, akkor rögtön ugorhatunk is a Szoftveres beállításokat tartalmazó szakaszra.
A személyi számítógépekhez kapható nyomtatók általában a következő három csatolófelület egyikével rendelkeznek:
A soros, más néven RS-232-es vagy COM porton keresztül kommunikáló felületek a számítógép soros portján küldenek adatot a nyomtatónak. A soros csatolófelületek igen elterjedtek a számítógépiparban, könnyen tudunk ilyen kábelt szerezni, gyorsan is gyártható. Előfordulhat, hogy a soros csatolófelületek használatához valamilyen különleges kábelre, valamint bonyolult kommunikációs beállítások megadására van szükség. A legtöbb soros port által elérhető legnagyobb adatátviteli sebesség másodpercenként 115 200 bit, ami miatt azonban a komolyabb grafikai tartalmak nyomtatása szinte lehetetlen.
A párhuzamos csatolófelületek a számítógépünk párhuzamos portjával küldenek adatokat a nyomtatónak. A párhuzamos felületek gyorsabbak az RS-232 soros felületnél, és a számítógéppiacon is gyakran megtalálhatóak. Könnyen tudunk ilyen kábelt szerezni, azonban kézileg nehezebb elkészíteni. A párhuzamos csatolófelületekhez általában nem tartoznak kommunikációs beállítások, ezért rendkívül egyszerűen el lehet boldogulni velük.
A párhuzamos felületekre olykor „Centronics” csatolófelületként is hivatkoznak, amelyet egy nyomtatótípus után neveztek el.
A Universal Serial Bus (Univerzális soros busz) rövidítéseként használt USB elnevezésű csatolófelület a párhuzamos és a soros felületeknél jóval nagyobb sebességre képes. A hozzá tartozó kábelek felépítése egyszerű és az áruk olcsó. Habár a nyomtatás terén az USB hivatott leváltani az RS-232-es soros és a párhuzamos felületeket, nem mindegyik UNIX® rendszer támogatja kellőképpen. Ezt a problémát például úgy kerülhetjük el, ha olyan nyomtatót vásárolunk, amelyen a legtöbbhöz hasonlóan a párhuzamos és az USB csatlakozás is megtalálható.
A párhuzamos felületeken általában csak egy irányban tudunk üzeneteket küldeni (a számítógéptől a nyomtatóhoz), miközben az USB és a soros felület használatával mind