Töprengõ

Hogy hová jutottunk...!

estvérlapunk, a Journal alatt kellett behozniuk a nyugat (lega- gekre fittyet hányva elérték a céljukat, most ünnepli a századik számát. lább) négyéves elõnyét, csekély külsõ és egy-két év múlva majd minden Mi ugyan csak a huszadik lap- támogatás mellett, vagy éppenséggel vállalatnál boldogan bólintanak, ha a Tzártát izguljuk végig, és nem tekinthe- az árral szemben úszva. Ez pedig látvá- munkatárs Linux alatt kíván dolgozni. tünk vissza nyolcéves múltra, mégis úgy nyos sikerrel járt. Ma már szerencsére De addig is még sok dolgunk van! Itt érzem, osztozhatunk az ünneplésben. nincs olyan épeszû közép- vagy nagy- van például nagy vesszõparipám, a Akárhogy is nézzük, nagyon sokat vállalat, ahol ne használnának linuxos magyarítás, a honosítás. változott a számítástechnika ez alatt a gépeket, sõt egyre több szervezet is nyolc év alatt. Hogy mennyire így van büszkén hirdeti, hogy náluk a szabad Szépen magyarul… ez, akkor tûnik szembe, amikor „rövid rendszerek viszik el a pálmát. Azért, Bizonyára mindenki tudja, aki pár

© Kiskapu Kft. Minden jog fenntartva összefoglalót” szeretnénk készíteni errõl hogy ez megvalósulhatott, nagyon lapszámunkat átfutotta, hogy nálunk az idõszakról. Erre vállalkoztak az LJ nagy köszönet illeti az egyetemi és fõis- is komoly viták alakulnak ki egy-egy munkatársai is, és akárhogy igyekeztek kolai oktatókat, akik nem elégszenek szó használatával kapcsolatban. Szeren- is megragadni a száz legfontosabb meg a „szokásos” tananyaggal, hanem csére nagyon sok kifejezés értelmezése pillanatot (a hétoldalnyi összesítõt lásd folyamatosan újítják, bõvítik azt. Mert és használata már letisztult, de mindig a 20. oldalon), érezhetõ, hogy bizony a Linux remek segédeszköz a számítás- vannak „elsietett” fordítások, utólag sok mindent ki kellett hagyniuk. technika oktatásához! És ma már szeren- észrevett ütközések. Történt például csére sokkal több annál. az elõzõ számunkban, hogy a nagy Visszatekinteni? sietésben a szerkesztõ a „konferencia” De milyen tanulságot hordoz ez a mi szá- Sikító Linux szót mindenhol „tanácskozás”-ra munkra? Nézzük csak… nyolc év alatt Pár hónapja jutott el a rendszer oda, cserélte le, ennek szomorú mellékhatá- jutottak el az elsõ „üzemeltethetõ” rend- hogy bátran kijelenthetjük, egy hozzá- saként a több éve rendezett Linux szer felbukkanásától (ami messze nem értõ rendszergazda fel tud készíteni egy Konferencia viccesen Linux-tanácskozás volt komoly munkavégzésre alkalmasnak hálózatot az irodai munkára, de akár a néven került bele az újságba. Ezért nevezhetõ) a jelenlegi helyzetig. Tehát titkárnõk számára is. Itt most nem a ezúton is elnézést kérünk a Linux addig a pontig, hogy ma már mind titkárnõket szeretném leszólni, félreértés Konferencia szervezõitõl. nyugatról, mind keletrõl rendkívül sok ne essék, csupán két dologra kívánok Emellett nagy elõrelépés, hogy végre hírt hallani, hogy az X állami szervezet rámutatni: az egyik, hogy bizony sokat üzembe helyeztük weben is elérhetõ vagy az Y óriáscég a GNU/Linuxra való kellett várnunk (és dolgoznunk) ahhoz, szótárunkat: nem túl bonyolult prog- átállás hatásait elemzi, vagy éppen nyilat- hogy a megfelelõ eszközök és progra- ramról van szó, remélhetõleg ennek kozatban fejtik ki lesújtó véleményüket mok elkészüljenek, a másik pedig, hogy ellenére könnyen és gyorsan használ- a Microsoft üzletpolitikájáról. Amerika és a GNU/Linuxot nem arra találták ki, ható, és sokaknak segítséget tud majd Nyugat-Európa több területe is eljutott hogy egy titkárnõ vagy egy képzetlen nyújtani a fordítások, magyarítások oda, hogy egy rendszergazda számára a rendszergazda telepítse, üzemeltesse. világában! Természetesen ez a szótár is Linux ismerete alapkövetelmény, nem Amennyire tudom, a Linuxot ért legtöbb egy folyamatosan bõvülõ és változó pedig elnézendõ hóbort. Nyolc év kellett lesújtó vélemény mögött egy félig (sem) adatbázis, ezért arra kérek mindenkit, „odakint” ahhoz, hogy megismerjék és képzett, a rendszert nem ismerõ vagy ha hibát talál benne, vagy hiányol belõle megszeressék ezt a rendszert. éppen lusta rendszergazda áll. valamilyen kifejezést, írja meg nekem! És a másik nagyon fontos terület, a Sõt, azt is örömmel fogadom, ha a És idehaza? magyar szakirodalom hiányossága is szótárban lévõ szavaknál ötletesebb, A linuxos világ egy csöppet késve megoldódni látszik. Három évvel ezelõtt találóbb fordítást kapok. Elõre is indult, és valljuk be, amolyan „magyar igen furán néztek rám a kiadóban, köszönöm és sok sikert kívánok! módra”. Az oktatásban értetlenül néztek amikor kijelentettem, hogy a Linux a jövevényre, a vállalatoknál tûzzel- hálózatok címû könyvet ki szeretném vassal irtották a Linux-pártiakat, a adni. Szerencsére a könyvnek remek Szy György továbbképzésre fordított összegekbõl fogadtatása volt, és azóta se szeri, se a Linuxvilág fõszerkesztõje, sem jutott erre a területre (már ahol volt száma a Linuxszal és a rendszerhez a Kiskapu Kiadó vezetõje. ilyen keret), sõt gyakorta olyan hango- kapcsolódó témákkal foglalkozó köny- Mindenki véleményét és kat is hallani lehetett, hogy komoly veknek. Ma már olyan témákról is levelét örömmel várja az szakmai döntések alkalmával határoztak komoly kiadványokat lehet találni, mint alábbi levélcímen: a „szabad rendszerek” ellen, nyilvánva- például a héjprogramozás, sõt az LME [email protected] lóan a szakmai hozzá nem értésnek és által készített Pingvin Füzeteknek is a zárt rendszerek ügyes marketingpoli- egyre több része készül el (lásd a lemez- Kiskapu-szótár tikájának következtében. mellékletet!). Ha viszont a másik oldalról nézzük, a Röviden összefoglalva tehát úgy látom,  szotar.kiskapu.hu hazai szakembereknek két-három év hogy a hazai szakemberek a nehézsé-

4 Linuxvilág Vezérfonal

Programvadászat

Gnome 2 SuSE 8.0-rendszerfrissítés píteni, egy dupla kattintással levehe- Hosszas fejlesztés és hibajavítás Az elõzõ számunkból kimaradt SuSE ti a listáról (vagy válassza ki a meg- után megjelent végre a Gnome 2. Linux 8.0-frissítéseknek mostani koron- felelõ sort, és használja az ALT-A-t). Az X Window Systemre épülõ Gnome- • G: elérhetõ, de nem feltétlenül szük- környezet a GNU/Linux-felületen séges frissítõcsomag (frissítés egy kívül Solaris, HP-UX, BSD és Darwin olyan csomaghoz, ami az Ön rend- (MacOS X) rendszereken is futtatható. szerén nincs telepítve). A frissítõcso- Az új Gnome a grafikus felhasználói magot letöltheti, de a YaST2 nem felületek készítéséhez használt GTK+ fogja önmûködõen telepíteni. lib 2-es változatát használja, amely a • _: nem kiválasztott frissítõcsomag © Kiskapu Kft. Minden jog fenntartva szokásos GLib-en kívül újabb rendszer- (a YaST2 se nem tölti le, se nem tele- könyvtárakat is igényel. A szövegkeze- píti). Kiválasztásához kétszer kattint- lés és betûtípus-leképezés (font rende- son a kívánt csomagra (vagy ALT-A). ring) feladata a GTK+ 2-es változatától Miután mindezzel végeztünk, kezdjünk kezdve a Pango nevû könyvtárra neki a frissítésnek! Kattintsunk a hárul, míg az ATK a kisegítõ lehetõ- Következõ gombra, ekkor a rendszer ségek (például a választható be- és csak a kijelölt csomagok letöltését végzi, kimeneti eszközök használatának) majd ismételten a Következõ gombra GTK-n keresztüli könyvtárszintû kattintva a csomagok ellenõrzése és megvalósításáért felel. telepítése történik meg. Ez a rendelke- zésre álló memória nagyságától és a processzor erejétõl függõen bizony eléggé elhúzódhat. A frissítés elvégzése után jelentést kapunk a telepített cso- magok, illetve a biztonsági frissítések számáról, errõl bõvebb tájékoztatást is kérhetünk. Legvégül kattintsunk a Kész Korongunkra felkerült a Gnome 2 for- gombra, és élvezzük munkánk gyümöl- rása és Red Hat rendszerhez tartozó csét! A telepítéssel, illetve a frissítéssel rpm-csomagok. kapcsolatos kérdésekre a gunkon adunk helyet, ebben a rövidke  http://sdb.suselinux.hu adatbázisban Pingvin Füzetek írásban használatának rejtelmeibe kaphatnak választ. Korongunkon helyet kaptak az LME szeretném olvasóinkat bevezetni. A SuSE 8.0 hivatalos frissítõ-CD-t a SuSE által készített eddigi Pingvin-füzetek Helyezzük be a CD-t a meghajtónkba, Linux magyarországi irodája állította darabjai. Ezek a következõk: és indítsuk el a YaST2 programot. össze a Linuxvilág olvasói számára. • Linux-alapparancsok A rendszergazdai jelszó megadása után • Linux-héjprogramozás kattintsunk a Frissítés Patch CD-rõl Rendszermag • Linux-segédprogramok feliratra vagy ikonra. Féléves fejlesztés után megjelent a • Linux-hálózat Ezután a program beolvassa a CD-n lévõ 2.4.19-es megbízható rendszermag, • Linux-karbantartás adatokat, és megkeresi a telepített mostani korongunkon ezt és a 2.5.30-as A füzetek segítségével megbarátkoz- programok új vagy javított változatát. Ezt fejlesztõi magot is közreadjuk. hatunk a Linux látásmódjával, alapvetõ követõen egy listát kapunk, amelybõl parancsaival, a hálózati beállításokkal, kiválaszthatjuk és módosíthatjuk a Yast2 Játék a héjak programozásával és a rendszer által felajánlott csomagok frissítését. Az elõzõ korongra sajnos hibásan került karbantartásával. Ezek a számok mind- A frissítés különlegessége az elsõ helyen fel a Tux Racer játék, ezért most ismét mind különálló nagy témaköröket szereplõ KDE_3.0.2-1 csomag, amelynek szerepel rajta. Sokan kérték, hogy érintenek. A kezdõket bevezetik 0,0 MB a mérete – ettõl nem kell meg- tegyük újra közzé, mivel nagyon sze- a Unix rejtelmeibe, megismertetik õket ijedni, csak kétszer két kattintás választ retnék kipróbálni ezt a remek játékot. ezzel a különleges világgal; a haladók el bennünket a telepítéstõl, kattintgas- pedig kedvükre turkálhatnak rend- sunk hát bátran! szerük legmélyebb bugyraiban is, így A csomagok melletti jelek magyarázata: Csontos Gyula veszélyeztetve azt; ám mindenképpen • X: az Ön által kiválasztott és a telepí- ([email protected]) sokat tanulva és fejlõdve fognak felállni téshez kijelölt frissítõcsomag. a Linuxvilág szakmai és a gép elõl. Egy jótanács: a rendszer- A YaST2 ezeket a frissítõcsomagokat CD-szerkesztõje. Szabadidejé- gazdai teendõket elõször ne „éles” letölti és telepíti. Ha egy bizonyos ben szívesen mászik hegyet gépen gyakoroljuk! frissítõcsomagot mégsem akar tele- és kerékpározik.

www.linuxvilag.hu 2002. szeptember 5 Hír-lelõ

Új ATi Radeon kártyák jelentek meg Debian GNU/Linux 3.0 Megjelent az Ogg Vorbis 1.0 Az ATi Radeon sorozata új tagokkal A Debian Project bejelentette a 3.0-s Többéves munka eredményeképpen bõvült, illetve bõvül a közeljövõben. Debian GNU/Linux-terjesztést. A ko- megjelent a szabadon hozzáférhetõ Ugyan az új kártyák Radeon 9000, rábbi változat még „csak” hatféle, a hang- és folyamkódoló kodek 1.0-s Radeon 9000 Pro és 9700 jelzést viselõ legújabb terjesztés azonban a MIPS, változata, a fejlesztéséhez az alapítvá- Intel Itanium, HP PA-RISC és S/390 gép- nyi hátteret a Xiph Foundation bizto- típusok hozzáadásával immár tizenegy sítja. Az On2 Technologies géptípus támogatására alkalmas, így az máris bejelentette, hogy új rendszer a kézigépektõl kezdve egé- videokodekjét hama- szen a szuperszámítógépekig szinte rosan Ogg Vorbis hang- bármin futtatható. Az új terjesztésnél is kódolással is hozzáfér- hetõvé teszi. Az Ogg Vorbis hívõi azt várják, hogy az új kodek átveszi az MP3 formátum vezetõ helyét – annak hatalmas felhasználói elsõdleges a biztonság és az adatvéde- bázisa ellenére is. Míg az elõbbi még lem, de többek között a KDE 2.2-es és a cégek számára is ingyenes, illetve bár-

© Kiskapu Kft. Minden jog fenntartva lapkákkal kerülnek forgalomba, ez a Gnome 1.4-es változata sem maradt ki. milyen termékbe szabadon beépíthetõ, Radeon már messze nem az a Radeon, A fejlesztõk javítottak a telepítõn – a ter- addig az utóbbi a fejlesztõ Fraunhofer amit jó ideje ismerhetünk. A legnagyobb jesztés CD-rõl, hálózatról és hajlékonyle- Institute és az MPEG Consortium elle- sorszámot kapott lapkához például mezrõl egyaránt feltehetõ, illetve a ko- nõrzése alatt áll, amelyek minden kia- 128 MB memória társul, a DVI-felülettel rábbi terjesztések frissítése is kényelme- dott kódolóprogram után szerzõi díj rendelkezõ megjelenítõket és 1024×768- sen elvégezhetõ. beszedésére jogosultak. as felbontásig tévékészülékeket is meg Ez az elsõ olyan Debian-változat, amely  http://www.xiph.org tudja hajtani; támogatja a 8× AGP és a megfelel a Filesystem Hierarchy Standard 9.0-s DirectX szabványt, nyolc párhuza- (FHS) elõírásainak, és – bár a megfelelõ Liberty kontra Passport mosan mûködõ leképezõ csõvezetékkel tanúsítvány beszerzése még várat magá- Alig egy éve alakult meg a Liberty és négy független geometriai motorral ra – a Linux Standard Base (LSB) szerint Alliance Project, és máris közzétette rendelkezik, hogy csak a legfontosab- fejlesztett alkalmazásokat is támogatja. a nyílt Liberty-elõírások 1.0-s változatát. bakat említsük. A Radeon 9000 kártyák  http://www.debian.org A fejlesztés célja az, hogy a felhasználók a tengerentúlon már kaphatók, a 9700-as egyszeri bejelentkezéssel és egyszerû- példányokra még várni kell egy Oroszország nem kér sített kilépéssel szörfölhessenek egyik hónapot. a Nyugat programjaiból? internetes oldaltól a másikig. Használa-  http://www.atitech.com Vannak, akik máris a hideg- tával lehetõvé válik, hogy a különbözõ háború folytatását emlegetik, oldalak és kiszolgálók egyszerûbben, Ellenségbõl jóbarát? szerintem azonban teljesen gyorsabban azonosítsák a látogatókat, A nyílt programok világá- természetes önállóság-megõr- és bonyolítsák le a tranzakciókat. A fel- nak hívei és a Microsoft zési törekvésrõl van szó. A nagyhatalmak használók saját választásuknak megfe- képviselõi eddig nem sok jót mondtak ugyanis általában nem szeretnek más lelõen több szolgáltatóból álló bizalmi egymásról, most mégis egyfajta közre- hatalmakra hagyatkozni, ami nemcsak az köröket hozhatnak létre, és miután mûködés alakul ki az elõbbihez tartozó atombombák egymásra halmozásában ér- bejelentkeztek az egyikhez, újabb belé- Apache Software Foundation és a hetõ tetten, de a számítógépek területén pés nélkül használhatják a többi oldal mamutcég között. Az érintettek közvet- is érvényes. Kína példáját követve most lenül ugyan nem dolgoznak együtt, ám orosz részrõl is elkottyantották, hogy az a Covalent Technologies által fejlesztett államigazgatásban minél több nyílt – és Enterprise Ready Server termékben természetesen ingyenes – operációs rend- megvalósul az Apache 2.0 és a Microsoft szert és alkalmazást szeretnének látni. ASP .NET fejlesztõi környezetének Maga Vlagyimir Putyin is azt kívánja, együttélése. hogy csökkenjen az országnak a nyugati Ezzel a lépéssel a Microsoft részben cégek által készített programoktól való kiránthatja a talajt a saját IIS webkiszol- függése, különösen a stratégiai, nemzet- gálója alól, viszont megnyerheti a fej- biztonsági szempontból fontos területe- lesztõket az ASP .NET eszközök számá- ken. Az sem utolsó szempont, hogy újab- ra. A Microsoft egy nap eltéréssel azt is ban Oroszországban is kezdenek odafi- szolgáltatásait. Az elsõ mûködõ bejelentette, hogy a .NET-alkalmazások gyelni a jogtisztaságra, ám a költségek rendszerek felbukkanása már év végére az Oracle adatbázisokkal is magas szin- vásárlás elõtti összesítése sokszor mellbe- várható, és az újabb változaton is meg- ten együtt fognak mûködni, így a külön- vágó eredménnyel jár. kezdõdött a munka. féle rendszerek a korábbinál sokkal job- Az orosz Védelmi Minisztériumnál már Az sem utolsó szempont, hogy így fel ban összebékíthetõk lesznek. Azt, hogy most is használnak egy Linux-alapú rend- lehet venni a harcot a Microsoft által a Microsoft valóban nyitásra szánta el szert, amelynek biztonsága a NetWare 5.1 fejlesztett Passport-megoldással. magát, vagy csak rendkívül ügyes üzlet- és Windows NT-rendszerekénél is maga- A Liberty-tervezetben a teljesség igénye politikát folytat, még meglátjuk. sabb szintû – hasonló fejlesztés egyébként nélkül olyan cégek vesznek részt, mint  http://apachetoday.com az amerikai oldalon is mûködik. a Novell, az RSA Security, az American

6 Linuxvilág Hír-lelõ

Express, az AOL, a HP, a Nokia, a Sony, Kipróbálható a Mandrake 9.0 a Vodafone vagy a Sun Microsystem; próbaváltozata ez utóbbi a Java – C#, .NET-ügyek miatt A nagy nyári melegben sem szünetel eddig is hagyományosan „jóban” volt a munka a Mandrake háza táján. Újdon- a Microsofttal. A Liberty részérõl máris ságok már nem kerülnek a terjesztésbe, hangsúlyozzák, hogy a Liberty és a jelenleg a hibák javítása folyik, amiben Passport közötti átjárás megoldható, és bárki segítséget nyújthat, ha letölti a valószínûleg megfelelõ programok is terjesztés elsõ próbaváltozatát, és jelenti lesznek. A szövetség a Microsoftot is a megtalált rendellenességeket. A várha- felkérte a csatlakozásra, és a cég nem is tóan októberben megjelenõ Mandrake zárta ki ennek lehetõségét, bár szoros Linux 9.0 felvonultatja a közelmúlt új- együttmûködésre éppen az eddigi pen- donságait: többek között a KDE 3.0.2, a geváltások miatt valószínûleg nem érde- Mozilla 1.0.0, a Gnome 2.0, az Evolution mes számítani. Ennek fényében viszont 1.08 és a GCC 3.1.1 kerül bele a DVD-n nem egyértelmû, hogy az adatvédelmi is elérhetõ terjesztésbe. szempontok miatt sokat támadott, a Nem kevésbé fontos, hogy a Mandrake felhasználók – és sokszor a vásárló-fel- pénzügyi helyzete is megszilárdulni

használók – szokásainak megfigyelését látszik. A cég bevétele jelentõsen növe- © Kiskapu Kft. Minden jog fenntartva lehetõvé tévõ Passport miért volna kedett, ezzel párhuzamosan csökkent a rosszabb a Liberty megoldásánál. veszteség, a 2001/2002-es pénzügyi év  http://www.projectliberty.org harmadik negyedéve az eddigi legjobb volt a cég történetében. Machinima Fesztivál 2002  http://www.mandrakesoft.com Filmfesztivált rendeztek az Academy Of Machinima Arts & Sciences és az nVidia Az örök OpenGL Corporation szervezésében és támoga- Az SGI tíz évvel ezelõtt ismerte fel, tásával augusztus 17-én a texasi Mes- hogy a világnak egy általános 3D-s quite városban. Az egynapos rendez- programozási felületre lesz szüksége vényen filmek bemutatásán kívül talál- – ekkor indult el az OpenGL 1.0 fejlesz- kozókat és kisebb kiállítást is rendeztek. tése. Azóta a 3D-gyor- sítók piaca többmilliárd dolláros üzletté fejlõdött, ám az OpenGL fejlesztése továbbra sem állt le. Nemrég bejelentették az 1.4-es szabványt, ugyanakkor megala- kult az a munkacsoport, amelynek a 2.0-s változat kidolgozása lesz a fela- data. Az új szabvány megjelenése valamikor a jövõ évben várható. Fej- lesztését sajnálatos módon hátráltat- Talán létezik még olyan ember, akinek hatja, hogy a Microsoft megkaparintott a Machinima kifejezés ismeretlen. néhány 3D-s képmegjelenítéssel kap- Ez alatt az olyan digitális mozgófilme- csolatos szabadalmat, és ezek után ket értik, amelyeket virtuális világban, szabadalmi díjra jogosult – ez kellemet- ám a hagyományos filmekhez hason- lenül érintheti a Linux- és Macintosh- lóan forgatnak. A mûvelet egyszerre felhasználókat. hasonlít a számítógépes animációk Elsõ hallásra kicsit elvetemült ötletnek készítéséhez, a játékok fejlesztéséhez tûnik, hogy a Nokia és az SGI egy és a filmforgatáshoz. Rövid történetváz, mobiltelefonokra szánt, OpenGL-alapú forgatókönyv készül hozzá, külön programozási-megjele- veszik fel a hanghatásokat és a szerep- nítési felület fejlesztésére lõk hangját, majd rendezõvel, operatõr- szövetkezett. A munká- rendezõvel felveszik a filmet, befeje- ban a Khronos Group zésül véglegesre vágják. is részt vesz, amely játékgépekhez, A rendezvényen a díjakat 10 kategó- terminálokhoz és repülésirányító mû- riában osztották ki, például a legjobb szerekhez készülõ különféle grafikai és hang, a legjobb vágás vagy a legjobb médiaszabványok fejlesztésével fog- látvány kategóriákban. A jelentkezési lalkozik. A mobilgépeken, telefonokon határidõ augusztus 9. volt, lapzártakor is használható 3D-s megjelenítési még nem tudni, vajon akad-e magyar lehetõség révén teljesen új, például alkotó a jelentkezõk között, és ha igen, térinformatikai alkalmazások vagy milyen eredménnyel szerepel. játékok jelenhetnek majd meg.  http:// www.machinima.org  http://www.opengl.org

www.linuxvilag.hu 2002. szeptember 7 Hír-lelõ

A D-Link bejelentette az elsõ építkezve – elsõsorban olyan készülékek- Tessék, itt Miki egér beszél! kétsávos vezeték nélküli útválasztót ben kaphat helyet, amelyeket fejlesztõik A Motorola és a Disney közösen A D-Link az elsõ olyan cég, amely két- weben keresztül felügyelhetõvé szeretné- próbálják elbûvölni a 6–12 sávos, 2,4 és 5 GHz-es frekvenciákon nek tenni – ilyenek például az ipari éves korosztályt új rádiók- egyaránt mûködõképes vezeték nélküli mérõmûszerek, a vezérlések, a biztonsági kal és vezeték nélküli tele- útválasztót hoz forgalomba. A készülék és az épületfelügyeleti berendezések. fonokkal. A készülékek egyszerre szolgál IEEE  http://www.zilog.com megjelenését és csengõ- 802.11a szabvány szerint hangját népszerû Disney- mûködõ, 54 Mb/s sebessé- Zöld NEC gép Transmeta szívvel karakterek, mint Miki gû; IEEE Az NEC takarékos PowerMate eco egér és Buzz Lightyear 802.11b számítógépébe a Transmeta TM5800 (Toy Story) ihlették. szabvány jelzésû processzora kerül, jelentette be A 2,4 GHz-es frekvencián üzemelõ szerinti, a lapkagyártó cég. A Transmeta lapkái készülékek az Egyesült Államokban 11 Mb/s se- 60 dolláros áron már a nyár végén kap- bességû; és IEEE hatók lesznek, a világ egyéb részein 802.11b szerinti 22 Mb/s viszont csak jövõre jelennek meg. sebességû vezeték nélküli útválasztó-  http://www.motorola.com ként, valamin négykapus, 10/100 Mb/s sebességû ethernetkapcsolóként. Segít- Levelezni csak szépen! ségével könnyedén építhetõk a jövõbeli Két alkalmazottjának búcsút intett, fejlõdést is követni, kiszolgálni képes további 150 dolgozót pedig felfüggesz- hálózatok, illetve a meglévõ eszközök tett a HP Angliában és Írországban. mellé gond nélkül vásárolhatók újabb Az alkalmazottak bûne az volt, hogy a 5 GHz-es hálózati elemek. cég erõforrásait nem a belsõ szabályzat- A D-Link AirPro DI-764 webalapú grafi- nak megfelelõ levelezésre használták. kus felhasználói felülettel bír, amelyen A nagyobb cégek egyre komolyabban minden beállítás súgóval támogatottan ügyelnek arra, hogy munkatársaik adható meg, a késõbbi visszaállításokra valóban munkavégzésre, és ne viccek, gondolva a számítógép merevlemezére szexképek, rosszabb esetben törvény- is menthetõ. Az új rádiós eszköz képes sértõ anyagok terjesztésére használják tartományok, IP- és MAC-címek, vala- energiatakarékosságuk miatt eddig elsõ- hálózatukat – a HP lépése is ennek a mint URL-ek – a bennük szereplõ sza- sorban a hordozható gépekben jutottak törekvésnek a jele. vak alapján történõ – kizárására, támo- szerephez, így a bejelentés fontos lehet gatja a virtuális magánhálózatokat, a a folyamatosan értékesítési – és ezzel Startra kész a PCI-X 2.0 hálózati címfordítást, beépített tûzfallal párhuzamosan fennmaradási – gondok- Több mint húsz gyártó várta izgatottan rendelkezik, valamint 256 bites WEP- kal küzdõ cég számára. Ugyan Japánban a PCI Special Interest Group által fej- titkosítással védi a hálózat sértetlenségét. egy ideje már kapható PowerMate lesztett PCI-X 2.0 szabvány végleges  http://www.dlink.com asztali gép, nem áll messze a hordoz- változatának a meg- ható eszközöktõl, hiszen belsõ szerveit jelenését. Az elsõsor- eZ80 Webserver-i 15 hüvelykes TFT-kijelzõjének talpába ban kiszolgálókban A ZiLOG beharangozta eZ80 procesz- építették be, külön házzal nem rendel- alkalmazott megoldás szorcsaládjának legújabb tagját, az eZ80 kezik. A 900 MHz-es Transmeta procesz- a jól ismert PCI-busz kiterjesztése, Webserver-i lapkát. Az új termékbe szor csak kismértékben melegszik, így ám az asztali gépekénél jóval nagyobb minden olyat beépítettek, amely egy hûtõventilátorra sincs szüksége, ezért adatátviteli sebességet tesz lehetõvé. kisebb webkiszolgáló üzemeltetéséhez a gép nemcsak kevés áramot fogyaszt, A PCI-X 2.0 kétféle változatban létezik, szükséges lehet: az 50 MHz-es procesz- de csendes is. Ki gondolná például, amelyek 266 és 533 MHz-es órajellel szorhoz 16 MB memória, teljes TCP/IP- hogy a világ fejlettebb részein a kórházi üzemelnek. Az elõbbi 2,1, az utóbbi gépek ventilátorai által felkavart porra pedig 4,3 GB/s sebességû átvitelt tesz és a vele együtt utazó kórokozókra is lehetõvé, miközben az adatok épségét ügyelnek? ECC-kóddal védi. A PowerMate TFT-kijelzõje a hagyomá-  http://www.pcisig.com nyos képernyõkkel ellentétben nem tartalmaz ólmot, így elhasználódás után sem szennyezi vele a környezetet. Hasonlóan ólommentesek az alaplap Medgyesi Zoltán protokollkészlet, infravörös és ethernet- forrasztásai is. A készülék háza az NEC ([email protected]) a BMGE 24 éves csatoló jár. Nem is akármilyen áron, szabadalmazott, NuCycle nevû, teljes informatika szakos hallgatója. 1000 darabot vásárolva a lapka ára nagy- mértékben újrahasznosítható mûanyag- Szabadidejét legszívesebben a barát- jából 1500 forint darabonként, de egy jából készül, amely különleges adaléko- nõjével tölti. Szeret autózni és bog- kicsivel magasabb díjszabás ellenében lásának köszönhetõen adott esetben a rácsban fõzni. A Linuxot hat éve akár egyetlen példány is megrendelhetõ tüzek terjedését is környezetszennyezés ismeri, de még nem volt lelkiereje, Interneten keresztül. nélkül gátolja. hogy áttérjen rá. A Linuxvilág magazin © Kiskapu Kft. Minden jog fenntartva Az új lapka – a jó öreg Z80-as alapjaira  http://www.neccomp.com hírszerkesztõje.

8 Linuxvilág Láttuk-hallottuk

Cégvilág

Oracle-tervek: Server SC45 szuperszámítógépét a NASA mérnökei a a Red Hat és a Dell adja a hátteret kaliforniai El Segundóból irányított Computer Sciences Az adatbázis-rendszerérõl világszerte híres cég Corporation munkatársaival közösen helyezték üzembe (legutóbb júniusban döntöttek sebességrekordot az és próbálták ki. Az új gép birtokában a NASA kutatói Oracle 9i 2. változatával) is folyamatosan figyeli a nagyobb pontossággal tudják elõrejelezni a különféle piacot. Bár valószínûleg sosem jut el a GNU-rend- éghajlatváltozások következményeit. A CSC munkatársai szerek árszintjére, de a Microsoft árait az Oracle is az NCCS telephelyén egy 512 processzoros HP SC45 sokallja. Valószínûleg a nagyvállalatok között lesz szuperszámítógépet helyeztek üzembe. Az új rendszer nagy visszhangja a július 10-én bejelentett új csoport- – amely a világ húsz leggyorsabb szuperszámítógépének munka-támogató rendszerének, melyet egyértelmûen egyike – több mint kétszeresére növeli a központ a Microsoft hasonló termékének versenytársaként jelenlegi teljesítõképességét. helyez el a piacon.  http://www.csc.com A legújabb hír pedig, hogy az Oracle, a Dell és a Red  http://www.hp.hu Hat összefogott, hogy kifejlesszenek egy „mindent Leépítés az IBM © Kiskapu Kft. Minden jog fenntartva kibíró” linuxos megoldást. A megoldáshoz a vasat a székesfehérvári üzemében Dell PowerEdge kiszolgálói jelentik, Dell/EMC és Az IBM 2002. július 29-én jelezte, hogy a merevlemezek PowerVault tárolórendszerekkel, a programok oldaláról gyártásáról ismert székesfehérvári üzemében munkaerõ- az Oracle9i Database Release 2 tartja a frontot, Real csökkentést fog végrehajtani. A leépítést a termékek Application támogatással, a Red Hat Linux pedig az iránti kereslet visszaesésével indokolták. Az elbocsátan- Advanced Server változatát igyekszik megfelelõen dók egy részének egyébként is lejár a munkaszerzõdése, hozzáhangolni az igényekhez. Valószínûleg a linuxos másoktól viszont közös megegyezés alapján vesz búcsút fejlesztõk körében tapasztalható rendkívüli érdeklõdés- a cég. Az IBM merevlemez-üzletágát nemrég a Hitachi nek köszönhetõ e lépés is (a fejlesztõk több, mint vette meg, azt azonban tagadták, hogy ennek bármi köze félmillió linuxos terméket töltöttek le másfél év alatt az lenne a leépítéshez. Oracle honlapjáról). A cég egyébként komoly terveket  http://www.ibm.hu dédelget a „feltörhetetlen és eltörhetetlen” linuxos telepekkel kapcsolatban, a fejlesztõk a honlapról teljes Rádiós EnterNet-szolgáltatás fejlesztõi tájékoztató csomagot tölthetnek le. Az EnterNet vezeték nélküli szolgáltatást indít, amely telefondíj nélkül kínál internetkapcsolatot az ország Ingyenes GPRS-hozzáférés számos pontján. A technológia pont-multipont rend- 3 hónapig a Vodafone hálózatán szerû, és a bérelt vonalakhoz hasonló minõséget biztosít A Vodafone 2002. július 15-én indította el GPRS-szol- az elõfizetõk számára. Az új szolgáltatás használatba gáltatását teljes magyarországi hálózatán, amely három vételi ideje elõreláthatóan két hét lesz. hónapig – azaz október 15-ig – ingyenes (bejegyzési, A vezeték nélküli internetelérés augusztus 10-tõl Baja, havi- és forgalmi díj nélküli), korlátlan hozzáférést tesz Balatonboglár, Balatonfüred, Kalocsa, Kaposvár, Keszt- lehetõvé. A cég átalánydíjas internetszolgáltatást is hely, Pápa, Salgótarján és Szentes városokban érhetõ el, kínál elõfizetõinek, ennek ára bruttó 3125 forint havon- és rövid idõn belül további 45 város bekötését tervezik. ta, így akik megfelelõ készülékkel rendelkeznek, a Jelenleg az EnterNet által kiépített háttér 4 km-es suga- Vodafone hálózatán kedvezõ áron internetezhetnek. rú körben biztosít internet-hozzáférést, igény esetén A GPRS a hálózat terheltségétõl függõen akár 20–40 azonban a szolgáltatási terület tovább növelhetõ. A háló- kbit/s adatátviteli sebességre is képes, így jól hasz- zat a vezeték nélküli hálózatokra kidolgozott, nemzetkö- nálható hálózati hozzáférést jelent olyan területeken, zileg legelterjedtebb 802.11b szabványnak megfelelõen ahol semmilyen széles sávú hozzáférési lehetõség nem a 2,4 GHz-es szabad frekvencián mûködik, és jelenleg áll rendelkezésre – esetleg jobb minõségû telefonvonal 11 Mb/s adatátviteli sebességet biztosít. sem. Akinek a telefonja nem rendelkezik GPRS-képes- A rendszer a hamarosan piacra kerülõ bõvítõmodul ségekkel, az a cég egyik akciós csomagjában bruttó segítségével az 5 GHz-es frekvenciasávban akár 19 900 forintért beszerezheti a Sony-Ericsson R600-as, 54 Mb/s sebességgel is képes lesz mûködni. GPRS-re alkalmas mobiltelefonját.  http://www.enternet.hu  http://www.vodafone.hu NASA Medgyesi Zoltán A NASA mostantól a világ egyik legnagyobb szuperszá- ([email protected]) a BMGE 24 éves informatika mítógépe segítségével vizsgálja a Föld éghajlatát és jelzi szakos hallgatója. Szabadidejét legszívesebben elõre a vulkánkitörések, a globális felmelegedés és más a barátnõjével tölti. Szeret autózni és bográcsban hasonló természeti jelenségek idõjárásra gyakorolt hatá- fõzni. A Linuxot hat éve ismeri, de még nem volt sát. A Maryland állambeli Greenbelt város Goddard ûrre- lelkiereje, hogy áttérjen rá. A Linuxvilág magazin pülési központjában mûködõ NASA-központ HP Alpha- hírszerkesztõje.

www.linuxvilag.hu 2002. szeptember 9 Láttuk-hallottuk

Linux a tanteremben – 2. rész

Amennyiben a jövõ szempontjából értékesnek tartjuk bizonyos feladatokat közösen kell elvégezniük. A legegy- a Linuxot, a jövõ nemzedékét kell felkarolnunk, hogy szerûbb példa a programozói projektmunka, ahol a ter- elsajátítsák a Unix-gondolkodásmódot, és megtanul- vezést, a kivitelezést és a munka például bemutatóként ják kezelni a Unix-rendszereket. történõ leírását egyszerre több gyerekre rá lehet bízni. Sajnos, nem minden gyereket sikerül fellelkesíteni. Egy- „A tanár úr szerint ez a Linux egy idõ múlva egy tanuló szívesen veszi és örül, ha elmegyek a laká- jobban elterjed majd, és azért tanuljuk?” sukra Linuxot telepíteni, vagy egyszerûen „megnézni”, Jellegzetes kérdés, amit bárki feltehet, és mi baja a számítógépüknek. Mások attól is elzárkóznak, nincs biztos válasz. A kérdést az egyik ki- hogy az iskolában a délutáni szabad gépidõben a közelgõ lencedikes tanítványom tette föl, miközben dolgozatra gyakoroljanak, még akkor is, ha segítséget a vonaton zötykölõdtünk az osztálykirándu- ajánlok fel nekik. Ennek oka lehet a tanulók túlterhelt- lásból hazafelé jövet. Ez egyszerre kételke- sége, a kamaszkor, és sokszor az is, hogy a tanárokat dés és bizakodás. Kételkedés, mert a gyere- a társadalom csak lassan kezdi ismét elismerni. kek körében szinte csak a Windows ismert A Linuxot, mivel a diák nem találkozik vele lépten-nyo- mint egyetlen és megdönthetetlen játékfe- mon, csak nagyon sok további idõ ráfordításával tudja lület; legtöbbjük az iskolát kivéve még so- megtanulni. Olyan ez, mint bármilyen más tudomány: sem látott Linuxot. Bizakodás, mert elszánt- egyesek önállóan, a témába beleszeretve kíváncsiságból ságomat és határozottságomat látva meg- tanulnak, másokat meg kell gyõzni, hogy például az egye- gyõzõdhettek róla, hogy „márpedig itt a Li- temen több lesz a Linux, mint a Windows, és lépéselõny- nuxot komolyan fogjuk venni, és meg fogjuk be kerül, ha már a középiskolában megismeri. Örvende- tanulni”, azaz furcsa tanáruk furcsa hobbija tes, hogy egyre több magyar nyelvû linuxos segédanyag remélhetõleg értékálló befektetés lesz. létezik, bár az oktatás területén még sok a lefedetlen Mondtam, bízom benne, hogy a Linux el fog terület. Egy bizonyos szinten túl elengedhetetlen az angol terjedni, azután szépen lassan rátértem nyelv ismerete, amely követelményt az idegen nyelvek „széles út, keskeny út” elméletemre, vagyis oktatásában akár kedvezõ módon is fel lehet használni. hogy a tömegnyomás nem törheti le a szak- mát, és ha a kevesek képviselik az értékálló Linux a tanórán tudást, akkor a kevesekkel kell tartani. Hogy A 2001–2002-es évben a 7. és a 9. osztályban, mate- a világ már csak ilyen, és az élet minden matika tagozaton tanítottam Linuxot az informatika tan- területén sokszor elõfordul, hogy az árral óra keretein belül, a Windows mellett. Kollégáim csak szemben kell úszni; hogy a látható dolgok Windowst tanítanak, és nekem is az a meggyõzõdésem, vakító csillogása sokszor elfedi a láthatatlan hogy „mindkét” operációs rendszert be kell mutatni, de dolgok nagyszerûségét, mélységét. olyan módon, hogy elsõsorban szemléletmódot, és ne Itt van például a Linux-konzol. Milyen nagy- adott programokat tanítsunk. szerû, hogy rövidebb-hosszabb parancssorok- A legjobb lenne, ha egy kivetítõ segítségével a gyerekek kal képeket alakíthatunk át egyik formátum- számára azonnal látható módon be tudnánk mutatni, ból a másikba, ide-oda kattintgatások nélkül: hogy „mikor hova kell kattintani”. Így jobban együtt for i in *.png; do convert $i bírnánk dolgozni. Ekkora beruházásról azonban egyelõre jpeg:‘basename $i .png‘.jpg; álmodni sem merünk. Marad az a módszer, hogy néhány done alapvetõ fogást közösen, egyszerre haladva nézünk meg, Ez csak egy lehetõség, amit például egy majd a teremben ülõ 13–16 gyereknek megadott fela- olyan órán mutathatunk meg, amikor web- datokat adok (12 gép van a teremben), és egyenként oldalt készítünk a gyerekekkel. „Az egyszerû segítek, ha elakadnak. Egy másik lehetõség, hogy önálló szép.” Természetesen ahhoz, hogy mindez feldolgozásra 10–20 pontból álló feladatsort adok ki, mûködjön, sok-sok programozó összehangolt amelyben pontosan le van írva, mit hogyan kell tenni, munkája igényeltetik. A Linux látásmódjának mit kell beírni stb. megértéséhez önzetlenségre, önfeláldozásra A tanterv szerint a cél elsõsorban irodai programok és a csapatmunka élményének megélésére tanítása, azaz a szövegszerkesztés, a táblázat- és adat- van szükség. Emellett az is számít, hogy a bázis-kezelés van napirenden. Emellett bizonyos szintû szabad program nem fekete doboz: tanulmányozható, algoritmikus gondolkodásra is meg kell tanítanunk a hogy „mitõl megy”, de az sem utolsó szempont, hogy diákokat. Mindehhez olyan alapra van szükség, ami a a BSA-tól sem kell többé tartanunk. Ezek mind komoly számítógép mûködésének megértését is feltételezi, így érvek, amelyek esetleg évek hosszú sora alatt érnek a szokványos 7. és 9. osztályos anyag a gép–program meg – nem csak – a gyerekekben. A legfontosabbnak fogalmával, az operációs rendszer alapjaival kezdõdik. mégis a pozitív közösségi élményt tartom, ezért tanári Sok középiskolában jellemzõen DOS-t tanítanak, ami a munkám során rendszeresen olyan feladatokat igyek- tanulók szerint is idejétmúlt. Korszerûbb, ha a DOS (és szem adni a gyerekeknek, amelyek megoldása során a grafikus Windows) mellett a Unix-alapparancsokat is © Kiskapu Kft. Minden jog fenntartva

10 Linuxvilág Láttuk-hallottuk

«

oktatjuk, elmondva, hogy a DOS a Unixból alakult ki, kényszerültem. Emiatt várhatóan jövõre is a Pascalnál voltaképpen annak egy lebutított változata. Több párhu- maradok. Nagy örömömre azonban Linux alatt sikerült zamot is lehet vonni a DOS és a Linux rendszertöltõ összekapcsolnom a PostgreSQL adatbázis-kezelõt és a folyamata között, talán a Linuxé annyival izgalmasabb is, Free Pascalt, így az adatbázis-kezelést teljes egészében hogy „látjuk”, mikor mi történik. Kár, hogy a Windows- PostgreSQL segítségével taníthattam. A pc10-es kiszol- nál ugyanez egyre kevésbé tanítható, mivel a Microsoft gálónkon kísérleti jelleggel már hosszabb ideje fut egy nem köti a felhasználó orrára, hogy a rendszert milyen PostgreSQL/PHP-alapú érdemjegy-nyilvántartó program, lépésekben éleszti fel. és gyerekek egyik összefoglaló feladata az volt, hogy úgy módosítsák a jegyeiket lekérdezõ Pascal programot Programok Az elmúlt tanévben még egyik osztályban sem tanítot- tam StarOffice-t, hanem a Microsoft Word–Excel párost Julius Caesar titkosítási módszere a tanórán mutattam be; sok tanuló elég magas szinten ismeri már ezeket a programokat, különösen a Wordöt. A kö- /* Julius Caesar titkos tÆsi m dszere */ vetkezõ tanévben a StarOffice (vagy OpenOffice) mellett © Kiskapu Kft. Minden jog fenntartva a LyX és a TeX bemutatását tervezem, melyek a mate- #define MAXHOSSZ 100 matikai osztályokban különösen motiválóak lehetnek, például matematikai versenyfeladatok megoldásainak main() gépeléséhez. { Az idén a 7. osztályban 2–3 hónapon keresztül tanítot- char sz[MAXHOSSZ]; tam a C nyelvet, miután komoly szavazást tartottunk a int h,i; gyerekekkel arról, hogy Pascalt vagy C-t szeretnének-e char b; tanulni. Egy egyetemi kollégám ugyanis nehezményezte, printf("A titkos tand sz veg  hogy miért Logót, illetve Pascalt tanítunk a lánya osztá- (csak kisbetßk, Økezetek "); lyában, miért nem C-t, amikor ez utóbbinak sokkal több printf("nØlk l, max. %d karakter):\n",  gyakorlati haszna van. Korábban magam is írtam egy MAXHOSSZ); magyar nyelvû, csak az alapvetõ szolgáltatásokat tartal- gets(sz); mazó Logót, ami elõször csak DOS alatt futott, de egy printf("A k dolt sz veg:\n"); éve SVGAlib-támogatással már Linuxon is elérhetõ h=strlen(sz); ( http://logonyelv.sf.net); a Comenius Logóval (az isko- for (i=0;i’z’) b-=26; A C a kicsik számára nehéznek bizonyult, még akkor is, printf("%c",b); ha kifejezetten jó képességû, matematika tagozatos } osztályról volt szó. Sok apró szabályt kell megtanulni, printf("\n"); és ezekhez nem lehet elég sok gyakorlati példát mutatni. } Néhányan azonban elõnyre tettek szert a tanórák anya- gából, és a délutáni C-szakkörökön néhányuk komolyab- ( ftp://pc10.radnoti-szeged.sulinet.hu/home/kovacsz/ ban is hozzá tudott szólni az elhangzottakhoz. A listán Linux/PostgreSQL/tanulo.pas), hogy azt kényelmes látható programkódot két tanórán keresztül elemeztük, legyen kezelni. Önálló adatbázisokat is készítettünk végül a tanulók többsége jó dolgozatot írt ebbõl a téma- néhány táblával, de a szûkös idõ miatt leginkább a körbõl is. Sikerült tehát a 7. osztályban megjelenõ titko- SELECT utasítások logikáját tanultuk. Végül „gyárlátoga- sítási tantervi részt „becsempészni” a programozás tást” szerveztem programozói irodánkba, ahol barátaim- témakörébe, ezáltal is elmélyítve a tudásukat. Az ügye- mal már három éve dolgozunk egy szintén PostgreSQL- sebb gyerekek ezután a titkosító algoritmust tetszés alapú információs rendszeren. szerint módosíthatták, például az ábécét megfordítva, A PostgreSQL Windowszal is összekapcsolható. vagy az eredeti három betû helyett más eltolási értéket A  http://odbc.postgresql.org címrõl is letölthetõ meg- is választhattak. hajtóprogram segítségével könnyedén köthetjük össze a A 9. osztályban, szintén matematika tagozaton Pascalt Microsoft Office-t és a PostgreSQL-t. A gyerekek akár a tanítottam. Ez utóbbi osztályt második éve oktatom, születésnapi bulijukra szóló meghívókat is létrehozhatták a tavaly Pascalban kezdtünk. A gépeken még csak a DOS- Microsoft Word körlevél szolgáltatásával, mivel a pc10-en os DJGPP volt fenn, ami sajnos nem megbízható, emiatt az egész osztálynévsor önmûködõen rendelkezésre állt. a C-vel nem is számoltam. Kilencedikben több a lány, Egy kollégám rendszerint MS Query segítségével mutatja mint hetedikben, és a tapasztalat azt mutatja, hogy a be az SQL-t; az általában tanított Accesst én is túl bonyo- lányoknak nehezebb a számítástechnika, mint a fiúknak; lultnak tartom, így felhasználtam a Queryt, és ezen így a felsõbb osztályban sokszor könnyítõ lépésekre keresztül küldtünk lekérdezéseket az SQL-kiszolgálónak.

www.linuxvilag.hu 2002. szeptember 11 Láttuk-hallottuk

«

 http://www.mupad.de címrõl igazából térítésmente- © Kiskapu Kft. Minden jog fenntartva sen tölthetõ le – igaz, a forráskód nem hozzáférhetõ). A gyerekek hamar rájöttek, hogy a számítógépet hogyan lehet gyorsan „paffra vágni”: a 999999^999999 hatvá- nyozással a program hamar lemerevedik, és csak számol, számol… Ezt a feladványt egyébként a bc-nek is feladhatjuk, garantáltan el fogja vinni a processzort. Számelméleti jellegû feladatok megoldására a bc sokkal jobb, mint a hagyományos (rendszerint grafikus) kalkulátorok, mivel nem normálalakban adja meg a számolási eredményt. Szakmai ártalom, hogy két további matematikai programot mindig megmutatok a gyerekeknek: a gnuplot függvényáb- rázolót és a XaoS fraktálrajzolót. A fenti négy program egy- egy jellemzõ képernyõje látható az itt szereplõ képeken. A Linux egyébként nem csak informatika órán hasz- nálható. Mivel másik szakom a matematika, leginkább a matematikai programokat ismerem. De vannak nagy- szerû földrajzi, kémiai, fizikai és idegen nyelvi programok is, amelyek egyik legjobb gyûjtõhelye a  http://schoolforge.net. Hasznos lenne, ha a magyar számítástechnika-, illetve más szakos tanárok összefog- nának, hogy a szabadon rendelkezésre álló programokat széles körben megismertessék egymással és a tanulóik- kal is. Csak kívánni lehet, hogy – miként a téma az elmúlt hónapokban az érdeklõdés középpontjába került – az emelkedõ pedagógusbérekkel és a csökkenõ kötelezõ óraszámmal a tanárok alkotóbb, minõségibb munkát tud- janak majd végezni, és ez a hazai iskolarendszerbeli, szá- mítógéppel segített oktatásra is kedvezõen hasson majd. Mind a hetedik, mind a kilencedik osztályban nagy sikere Sorozatunk következõ, egyben utolsó részében a Linux- volt a Gimp programnak. Az 10. oldalon szereplõ képeken számítástechnika szakkörök egy lehetséges megközelí- látható, milyen ügyesen és alkotó módon tudták a gyere- tésérõl lesz szó. kek használni ezt a nagyszerû grafikus programot az elsõ Kovács Zoltán negyedórás tanári segítség után, különösen a lányok. Ké- ([email protected]) sõbb Windows alatt is telepítettük a gyerekekkel a Gim- tanársegéd a Szegedi Tudomány- pet, amit többen hazavittek maguknak CD-n (Windows egyetem Bolyai Intézetében az alatt lényegesen megbízhatatlanabb, de erre a Win- Analízis Tanszéken, matematikát és dowson futó változatot tartalmazó weboldal is figyelmez- számítástechnikát tanít óraadóként tet: „Ne csodálkozzunk, ha a Gimp lefagy. Kereskedelmi a szegedi Radnóti Miklós Kísérleti Gimnáziumban. programok is gyakran fagynak le Windows alatt.”). Matematikai tárgyú programok oktatási felhaszná- Matematika tagozatos osztály lévén a MuPAD algebrai lásával foglalkozik. Hobbija a Linux programozása rendszernek is nagy sikere volt (ez ugyan nem szabad és a fraktálok matematikájának kutatása. program, de része a SuSE 7.3-asnak, és a németországi

12 Linuxvilág Láttuk-hallottuk

Linux-index Õk mondták

1. Ennyi országban fontolgatják reklám- Visszatérés kampány vagy mozgalom indítását, „Tényleg azt hitte, hogy azt akarjuk, betartsák azokat a törvénye- hogy megpróbálják elérni a szabad ket?” – kérdezte Dr. Ferris. „Éppen ellenkezõleg: az a célunk, hogy programok kormányzati használatát: 9 megszegjék. Jobb, ha tudja, nem egy cserkészcsapattal áll szem- ben… mi hatalmat akarunk és komolyan gondoljuk… ártatlan 2. Az ALSA (Advanced Linux Sound emberek fölött nem lehet uralkodni. Bármelyik kormány hatalma Architecture) által támogatott hang- kizárólag abban áll, hogy lecsaphat a bûnözõkre. Amikor pedig kártyák és lapkakészletek száma: 94 94 nincs elég bûnözõ, gondoskodni kell róla, hogy legyen. Annyi 3. Azoknak a kártyáknak a száma, dolgot kell bûnnek nyilvánítani, hogy egyszerûen lehetetlenné amelyekhez van leírás, de még nincs váljon a törvényeket betartva élni. Ugyan mire jók a törvénytisz- ALSA-meghajtóprogram: 20 telõ állampolgárok? Mi haszna van belõlük bárkinek is? Ha viszont 4. Azoknak a hangkártyáknak a száma, olyan törvényeket hozunk, amiket nem lehet sem betartani, sem amelyek leírását a gyártók nem haj- betartatni, de még csak tárgyilagosan értelmezni sem – a nemzet landók az ALSA Project rendelkezé- menten törvénysértõvé válik, és dõl a lé a büntetésekbõl. Nos,

így mûködik a rendszer, Mr. Reardon, erre megy ki a játék, és ha © Kiskapu Kft. Minden jog fenntartva sére bocsátani: 4 végre megérti, sokkal könnyebben kijövünk majd egymással.” 5. Ennyi karakterbõl áll az a Perl szabá- (Ayn Rand, Atlas Shrugged) lyos kifejezés, amely bármilyen érvényes URL címre illeszkedik: 7579 Az Internet nyilvánvalóan lényegi szerepet játszik minden 6. A Linux 1.0 köszönetnyilvánításában e-üzletben, holott pusztán egy az adatátvitel megvalósítására szereplõ nevek száma: 80 szolgáló, közönséges protokollhalmaz. (Sybase-hirdetés) 7. A Linux 1.0 tömörített mérete: 1,2 MB (hozzájárulónként 15,4 KB) Ha manapság a vállalaton belül egy elejétõl a végéig titkosított 8. A Linux 2.4.18 köszönetnyilvánításá- levél fordul meg, nagy valószínûséggel arra utal, hogy valamelyik ban szereplõ nevek száma: 411 alkalmazott kábítószer-kereskedõ vagy pornóképeket küldözget. 9. A Linux 2.4.18 tömörített mérete: (Greg Olson elnök és alapítótag, Sendmail.com) 28,8 MB (hozzájárulónként 71,5 KB) Amilyen rossz a mobiltelefonos szolgáltatások minõsége, olyan 10. Az „e-mail marketing” üzletág mérete éberen ügyelnek rá a szolgáltatók, nehogy kicsússzon a kezükbõl milliárd dollárban: 1 a szolgáltatás minõségének felügyelete. Ezért nem akarják meg- 11. 2006-ra várhatóan ennyi levélszemét érteni a 802.11 elõnyeit. Az õ környezetükben semmilyen érkezik évente minden egyes posta- vírusszerû dolog nem lehet. ládába: 1500 (Dave Sifry) 12. Az év folyamán ennyi levélszemét Amennyiben Ön saját honlapjára egy ránk mutató hivatkozást gyûlt össze egy nem használt earthlin- kíván elhelyezni, a hivatkozás kizárólag webhelyünk fõoldalára kes postaládában 2001. augusztus mutathat, tehát nem más oldalára, sem valamelyik altartományra. óta: 1200 (Dallas Morning News, A szolgáltatás feltételei – a bejegyzés 13. Ennyi levélszemét gyûlt össze ugyan- oldalán) ebben a postaládában 2002. április 18. és május 13. között: 1124 Ne hagyd magadat becsapni! 14. Ennyi levélszemét érkezett a Linux A BPDG szabvány célja nem a „kalózkodás” megállítása. Holly- Journal egyik szerkesztõjének postalá- wood így próbálja visszanyerni befolyásának egy részét afelett, dájába 2002. május 1-jén: 197 hogy mit tehetünk és mit nem a televízióval. A szabvány a VCP- dzsinnt akarja visszagyömöszölni a palackba, mely által Hollywood letörheti az új technológiákat, mielõtt azok új lehetõségekhez

Források juttatnák a fogyasztókat. 1.:  http://www.lugcos.org.ar/serv/mirrors/ (Fred von Lohmann) proposicion/doc/referencias/#ref.#1 2.:  http://linuxmafia.com/~rick/linux-info/tape-backup Hadd jegyezzem meg, hogy a láncolt listák, a „kivág és másol” 3–4.:  http://www.alsa-project.org/soundcards.php3 típusú hulladékgyûjtés és a TABULATOR billentyû szintén szabadal- 5.:  http://www.foad.org/~abigail/Perl/ url2.html mazva vannak. Ha mindig gondosan ellenõriznénk a programok  6–9.: http://kernel.org szabadalmait, soha semmit nem írnánk. 10.: San Jose Mercury News (Martin Pool az rsync gyakori kérdéseiben) 11.: Jupiter Media Metrix  http://www.jmm.com 12–14.: a Linux Journal fõszerkesztõje

Linux Journal 2002. július, 99. szám; Linux Journal 2002. augusztus, 100. szám Linux Journal 2002. augusztus, 100. szám

www.linuxvilag.hu 2002. szeptember 13 Láttuk-hallottuk

Linux Tábor 2002

Az idén – immár másodszor – ismét megrendezték lódás közben, a nyár örömeiben lubickolva tanulhassa- a nyári Linux-tábort. nak Linuxot az érdeklõdõk. A szervezésrõl talán még annyit érdemes elmondanom, A tavalyi tábor sikerein felbuzdulva beszélgetõtársam, hogy az idén a tavalyihoz képest megkétszerezõdött a Czakó Krisztián (Slapic) az idén is megszervezte a résztvevõk száma, mondhatnám azt is, hogy mindenki Linux-tábort. A Budapesttõl közel kétszáz kilométerre hozott magával még egy embert. Komolyra fordítva a található Szerencsi Középiskolai Kollégium parkjának szót, a gyakorlatban lényegében csak annyit kellett árnyas fái alatt tenni, hogy eldöntöttük, közhírré tettük, és máris jöttek beszélgetünk. az emberek. Az elõadókat sem kellett különösebben Gibizer Tibor csalogatni, hiszen számukra teljesen ingyenes volt az (a továbbiakban ott-tartózkodás, és cserében csak arról kellett beszél- Gibzo): A hazai niük, amirõl amúgy is imádnak. linuxos élet nagy Gibzo: Szerencset nem nevezném üdülõparadicsomnak. eseményei között Nekem a cukorgyár jut róla az eszembe. Miért éppen tartjuk számon az erre a településre esett a választásod? általad szervezett Slapic: Valóban országosan ismert az itteni cukorgyár, nyári tábort. Az de legalább ennyire ismertek a helyi borok, hiszen elsõnél egy kicsit Szerencs Tokajhegyalja talán legfestõibb részén talál- talán meglepõd- ható. Ezért természetesen a részvételi díjban szerepelt tünk, és mélyen egy ingyenes pincelátogatás, ahol igazi fahordókból magunkba nézve kóstolgathattuk a hegy levét. Tehát miért Szerencs? azon tûnõdtünk, Ennek több oka is van. Lenyûgözõ az a csend és nyuga- vajon honnan van lom, ami az itteni életet jellemzi. Itt sikerült Csider Andor benned ennyi személyében megtalálni azt az embert, aki ennyire energia és el- olcsón ilyen tökéletes körülményeket tudott biztosítani. szántság, és Nézz körül! A kollégium épülete olyan, mint egy szálloda, hányan vannak, egész nap ingyenes internetezési lehetõség, 3–4 ágyas akik önköltségi szobák, nappali tévével, napi háromszori étkezés, ami alapon vállalnák igazán házias – és itt nem csak az ízekre, de a mennyi- egy ilyen komoly ségre is gondolok. Alig 300 méterre van a gimnázium, szervezést igény- ahol három Pentium II–III gépekkel szerelt terem áll a lõ tábor lebonyo- rendelkezésünkre, amelyek egyenként 15–20 fõ befo- lítását? gadására alkalmasak. Van foci-, tenisz-, teke- és kosár- Czakó Krisztián: labdapálya, bérelhetõk kerékpárok, vagy a közeli stran- Azt sajnos nem dok is meglátogathatók. tudom meg- Gibzo: Nézzük a száraz tényeket. Hányan jöttek el, mondani, hogy miként folyt az oktatás? hányan vállalnának ilyesmit. Nekem ez nem jelent külön Slapic: Összesen 90 fõ vett részt a táborban, csopor- terhet, hiszen lényegében egész évben ingyenes linuxos tonként öt-öt oktatóval. Úgy érzem, megérdemlik, hogy oktatást tartok. A Linux-tábor talán csak azért kap név szerint is megemlítsem õket: Szalai Ferenc, Balázs nagyobb figyelmet, mert egyrészt valóban önköltségi Tibor, Deim Ágoston, Magosányi Árpád, Tomka Gergõ, alapon szervezõdik, tehát csak annyit fizetnek a résztve- Haluska György, és természetesen én is igyekeztem võk, amibe szállás, illetve az ellátás kerül; de azt is kivenni a részemet az oktatásból. Tudom, ez nem tíz fõ, hozzáteszem, hogy hála és köszönet ezért Csider Andor csak hét, de ennek az az oka, hogy voltak olyanok, akik kollégiumvezetõnek, mert õ is önköltségi alapon számolt mind a két hetet végigdolgozták. Napirendünk szerint nekünk mindent. Így sikerült a hihetetlenül alacsony árat az ébredés idõpontja szabadon választott volt, azonban elérnünk, ami nagyjából húszezer forintot tett ki egy csak reggel 9 óráig lehetett reggelizni. 9-tõl 13 óráig hétre, azaz egy váltásra. Természetesen ez helyenként tartottak az órák szünetekkel megtûzdelve. Utána ebé- csökkent, hiszen a Linux-felhasználók Magyarországi deltünk. A délutáni program a szabadon választott kate- Egyesületének (LME) tagjai kedvezményt kaptak, illetve góriába tartozott, tehát a pincelátogatás sem volt köte- szállás, és étkezés nélkül is lehetett jelentkezni, ami akár lezõ, sõt az általam fõzött bográcsos borjúpörkölt sem, 15 000 forinttal csökkenthette a részvételi díjat, és akkor amit itt a kollégium parkjában készítettem el. Hozzá kell még nem számoltam bele, hogy a 6–14 éves korosztály tennem, hogy nem vagyok avatott szakértõje a konyha- féláron vehetett részt, a hat évnél fiatalabb csemeték mûvészetnek, de az elsõ „bétapörköltek” után mára után pedig nem is kellett fizetni. Õk a családi vakációzás büszkén kijelenthetem, hogy sikerült elérni a „stabil” szépségeit élvezték, nem a Linux rejtelmeit. változatot. Visszatérnék az oktatásra. Akik figyelemmel Másrészt talán ez az egyetlen lehetõség, hogy kikapcso-

© Kiskapu Kft. Minden jog fenntartva kísérték eddigi tanfolyamaimat, azok talán nem

14 Linuxvilág Láttuk-hallottuk

«

lepõdnek meg azon, hogy most is a lehetõségekhez ványos csomagonkénti telepítés közben. mérten igyekeztünk igazodni a tanulni vágyókhoz. Gibzo: Pár szóban értékelnéd az elmúlt két hetet? Tehát nem használtunk szoros témaköröket, inkább arra Slapic: Nos, ez nem könnyû. Sokan voltunk, a hangulat helyeztük a hangsúlyt, hogy az érdeklõdõk igényeinek és az idõjárás jó volt, rengeteget pihentünk, és hihetet- a lehetõ legmesszebbmenõkig eleget tegyünk. Három len mennyiségû tudást adtunk át. Manapság nem szíve- csoportban folyt az ismeretek átadása. A kezdõk meg- sen jósolok elõre, most azonban úgy érzem, hogy lesz ismerkedhettek a Linux történetével, egy Debian Woody még folytatás. GNU/Linuxot telepítettek, elsajátították az alapvetõ Gibzo: Köszönjük szépen az interjút, és a Linuxvilág parancsok használatát, majd az utolsó mozzanatok egyi- nevében továbbra is ilyen sikeres táborozást kívánunk! keként egy grafikus felületet telepítettek és állítottak be. Kapcsolódó címek Természetesen ide kívánkozott a Világháló elérésének  http://kollegium.szerencs.hu és a levelezés alapjainak ismertetése is. Lényegében ez  http://linuxtabor.webhome.hu a szint volt az, ami az otthoni felhasználáshoz elenged- hetetlen. A középhaladók a kezdõknek szóló anyag mélyebb ismertetésén túl közelebbi ismeretséget kötöt- Gibizer Tibor © Kiskapu Kft. Minden jog fenntartva tek a hálózatok rejtelmeivel, tehát szerepelt benne ([email protected]) Apache-oktatás és a levelezõrendszerek beható tanul- újságíró, immár hét éve a Linux mányozása. A haladók a hálózati biztonság témakörét elkötelezett híve. Imádja a kutyákat, járták körül, valamint meglehetõsen mélyenszántóan a kerékpározást és az autós megismerhették a rendszer mûködését egy nem szok- csavargást.

Linux-index

1. A lemezkiadók körében végzett ellenõrzések az 15. A Winnebago ennyit fizetett linuxos levelezõrend- esetek ennyi százalékában találták úgy, hogy a szeréért, mely összeg nagy részét a vállalat IBM mûvészt alulfizették: 99,99 nagygépének frissítése tette ki (dollár): 26 2. A fenti szám ennyi ezer eset vizsgálatából származik: 9 16. Az IBM által 2001 negyedik negyedévében kiszállított 3. Ugyanebben a csoportban a lemezkiadó ennyi eset- összes nagyszámítógépes MIPS ennyi százalékát ben fizette túl a mûvészt: 1 ültették át Linuxra: 11 4. Ennyi millió dollárba kerül egy slágerfelvétel 17. Az antarktiszi Larsen B jégpárkány kiterjedése elkészítése: 0,5 2001 végén (négyzetkilométer): 3,250 5. Ennyi családot kísért figyelemmel az a 17 évet 18. A Larsen B jégpárkány súlya 2001 végén átfogó tanulmány, amely a televíziózás és az erõszak (milliárd tonna): 500 közti összefüggést vizsgálja: 707 19. Átlagos hõmérsékletemelkedés a Larsen B jégpár- 6. A Sony hanglemezeladásból származó bruttó kány környezetében az elmúlt ötven év alatt bevétele (milliárd dollár): 4,6 (Celsius): 2,5 7. A Sony elektronikai cikkek értékesítésébõl származó 20. Ennyi éven át állt szilárdan a Larsen B jégpárkány: bruttó bevétele (milliárd dollár): 40 1 800 8. A hanglemezipar haszonkulcsa 1994-ben (százalék): 30 21. A Larsen B jégpárkány 2002-ben ennyi hónap alatt 9. A hanglemezipar haszonkulcsa ebben a tartomány- esett szét a felmelegedéstõl: 2 ban mozog 2002-ben (százalék): 8–10 10. Az amerikai népesség ennyi százaléka használta az Források Internetet 2001 szeptemberében: 54 1–3.: Simon Renshaw, a Dixie Chicks ügyvezetõje a New York 11. Ennyi millió amerikai használta az Internetet 2001 Timesnak adott interjúban szeptemberében: 143 4–6.: New York Times 7–10.: US Department of Commerce, Economics and Statistics 12. Az 5–17 éves amerikai gyerekek ennyi százaléka Administration használ számítógépet otthon és az iskolában: 90 11–13.: US Department of Commerce (az USA kereskedelmi 13. Az amerikai tizenévesek ennyi százaléka használja minisztériuma) az Internetet: 75 14–16.: eWeek 17–21.: BBC 14. A Winnebago Industries ekkora összegre számított a Microsoft Exchange frissítésének költségeként (ezer dollár): 150 Linux Journal 2002. június, 98. szám

www.linuxvilag.hu 2002. szeptember 15 Láttuk-hallottuk

«

lepõdnek meg azon, hogy most is a lehetõségekhez ványos csomagonkénti telepítés közben. mérten igyekeztünk igazodni a tanulni vágyókhoz. Gibzo: Pár szóban értékelnéd az elmúlt két hetet? Tehát nem használtunk szoros témaköröket, inkább arra Slapic: Nos, ez nem könnyû. Sokan voltunk, a hangulat helyeztük a hangsúlyt, hogy az érdeklõdõk igényeinek és az idõjárás jó volt, rengeteget pihentünk, és hihetet- a lehetõ legmesszebbmenõkig eleget tegyünk. Három len mennyiségû tudást adtunk át. Manapság nem szíve- csoportban folyt az ismeretek átadása. A kezdõk meg- sen jósolok elõre, most azonban úgy érzem, hogy lesz ismerkedhettek a Linux történetével, egy Debian Woody még folytatás. GNU/Linuxot telepítettek, elsajátították az alapvetõ Gibzo: Köszönjük szépen az interjút, és a Linuxvilág parancsok használatát, majd az utolsó mozzanatok egyi- nevében továbbra is ilyen sikeres táborozást kívánunk! keként egy grafikus felületet telepítettek és állítottak be. Kapcsolódó címek Természetesen ide kívánkozott a Világháló elérésének  http://kollegium.szerencs.hu és a levelezés alapjainak ismertetése is. Lényegében ez  http://linuxtabor.webhome.hu a szint volt az, ami az otthoni felhasználáshoz elenged- hetetlen. A középhaladók a kezdõknek szóló anyag mélyebb ismertetésén túl közelebbi ismeretséget kötöt- Gibizer Tibor © Kiskapu Kft. Minden jog fenntartva tek a hálózatok rejtelmeivel, tehát szerepelt benne ([email protected]) Apache-oktatás és a levelezõrendszerek beható tanul- újságíró, immár hét éve a Linux mányozása. A haladók a hálózati biztonság témakörét elkötelezett híve. Imádja a kutyákat, járták körül, valamint meglehetõsen mélyenszántóan a kerékpározást és az autós megismerhették a rendszer mûködését egy nem szok- csavargást.

Linux-index

1. A lemezkiadók körében végzett ellenõrzések az 15. A Winnebago ennyit fizetett linuxos levelezõrend- esetek ennyi százalékában találták úgy, hogy a szeréért, mely összeg nagy részét a vállalat IBM mûvészt alulfizették: 99,99 nagygépének frissítése tette ki (dollár): 26 2. A fenti szám ennyi ezer eset vizsgálatából származik: 9 16. Az IBM által 2001 negyedik negyedévében kiszállított 3. Ugyanebben a csoportban a lemezkiadó ennyi eset- összes nagyszámítógépes MIPS ennyi százalékát ben fizette túl a mûvészt: 1 ültették át Linuxra: 11 4. Ennyi millió dollárba kerül egy slágerfelvétel 17. Az antarktiszi Larsen B jégpárkány kiterjedése elkészítése: 0,5 2001 végén (négyzetkilométer): 3,250 5. Ennyi családot kísért figyelemmel az a 17 évet 18. A Larsen B jégpárkány súlya 2001 végén átfogó tanulmány, amely a televíziózás és az erõszak (milliárd tonna): 500 közti összefüggést vizsgálja: 707 19. Átlagos hõmérsékletemelkedés a Larsen B jégpár- 6. A Sony hanglemezeladásból származó bruttó kány környezetében az elmúlt ötven év alatt bevétele (milliárd dollár): 4,6 (Celsius): 2,5 7. A Sony elektronikai cikkek értékesítésébõl származó 20. Ennyi éven át állt szilárdan a Larsen B jégpárkány: bruttó bevétele (milliárd dollár): 40 1 800 8. A hanglemezipar haszonkulcsa 1994-ben (százalék): 30 21. A Larsen B jégpárkány 2002-ben ennyi hónap alatt 9. A hanglemezipar haszonkulcsa ebben a tartomány- esett szét a felmelegedéstõl: 2 ban mozog 2002-ben (százalék): 8–10 10. Az amerikai népesség ennyi százaléka használta az Források Internetet 2001 szeptemberében: 54 1–3.: Simon Renshaw, a Dixie Chicks ügyvezetõje a New York 11. Ennyi millió amerikai használta az Internetet 2001 Timesnak adott interjúban szeptemberében: 143 4–6.: New York Times 7–10.: US Department of Commerce, Economics and Statistics 12. Az 5–17 éves amerikai gyerekek ennyi százaléka Administration használ számítógépet otthon és az iskolában: 90 11–13.: US Department of Commerce (az USA kereskedelmi 13. Az amerikai tizenévesek ennyi százaléka használja minisztériuma) az Internetet: 75 14–16.: eWeek 17–21.: BBC 14. A Winnebago Industries ekkora összegre számított a Microsoft Exchange frissítésének költségeként (ezer dollár): 150 Linux Journal 2002. június, 98. szám

www.linuxvilag.hu 2002. szeptember 15 Láttuk-hallottuk

Jogos – jogtalan – 2. rész

Sorozatunkat folytatva ezúttal a jogok és jogosult- E témakör vizsgálatánál kettõs – szakmai és jogi – ságok környékén vizsgálódunk. Elemezni fogjuk, szempontokat kell szem elõtt tartanunk; ezek együttesen hogy szakmai szempontból nézve mit jelent a tör- rendelkeznek a jogokról és a jogosultságokról. Három fõ vény szövegében szereplõ „jogosulatlan belépés”, fogalmat szükséges egymástól megkülönböztetnünk: valamint „a jogosultság kereteit megsértve bent • Az információgazda az adatok felett valamilyen korlá- marad” fogalma. tozott szintû vagy teljes jogosultsággal rendelkezik, vagyis rögzítésére, módosítására, törlésére, megis- Btk. 300/C. § merésére jogosult. Tevékenységének része az infor- (1) Aki számítástechnikai rendszerbe a számítástechnikai rendszer máció felhasználása is. védelmét szolgáló intézkedés megsértésével vagy kijátszásával • Az információ jogosultja kettõs jelentésû: egyrészt jogosulatlanul belép, vagy a belépési jogosultsága kereteit túllépve, arra utal, akitõl az információ származik, aki azt illetõleg azt megsértve bent marad, vétséget követ el, és egy évig keletkezteti (létrehozza a forrást); illetve arra, aki az terjedõ szabadságvesztéssel, közérdekû munkával vagy pénz- információmegismerésre jogosított. büntetéssel büntetendõ. 1. • A harmadik a rendszergazda, aki az adatok kezelé- © Kiskapu Kft. Minden jog fenntartva sét, megõrzését, hozzáférhetõségének biztosítását technikai szempontból végzi, aki az információgaz- VI. fejezet Adatvédelem dák és az információra jogosultak számára számítás- Tv. 30. § (1) A jegyzõ, a 6. § (1) bekezdésében meghatározott idõpontig a rend- technikai, informatikai vagy egyszerûen dokumentá- õrkapitányság vezetõje, a megyei, fõvárosi közigazgatási hivatal ciós-raktározási szolgáltatást biztosít. Tevékenysé- vezetõje, valamint a Hivatal vezetõje a polgárok személyes adatai gének tárgya az információ tárolása, védelme, védelméért való felelõsségének körében köteles olyan technikai, elõkeresése. szervezési intézkedéseket tenni, ellenõrzési rendszert kialakítani, A jogosultak e három köre technikai és jogi szempontból és adatvédelmi szabályzatot kiadni, amely biztosítja az adatvédelmi lényegében elkülönültnek tekinthetõ. követelmények teljesülését. Jogi meghatározottság esetén, tehát amikor valamilyen (2) Az adatkezelés törvényességének ellenõrzésére a belügyminiszter jogszabály (törvény vagy rendelet) rendelkezik, azaz a Hivatalnál, a megyei, fõvárosi közigazgatási hivatal vezetõje mind információgazdákat, mind információra jogosulta- – az illetékességi területére kiterjedõen – a megyei, fõvárosi közi- kat meghatároz(hat), de rendszergazdákat kötelezõ eljá- gazgatási hivatalnál adatvédelmi felelõst nevez ki. rásokat, jogokat és jogosultságokat is. Szakmai szem- Tv. 31. § pontból mindennapi életünk informatikai területe azon- (1) A nyilvántartás szervei (6. §) kötelesek adatszolgáltatási nyilvántar- ban nem jogszabállyal szabályozott, azaz a határvonalak tást vezetni. elmosódottak vagy nincsenek. Ezek sokkal több veszélyt (2) A nyilvántartás tartalmazza jelentenek a gyakorló informatikusok számára. Egy cég a) az adatkezelõ nyilvántartási azonosítóját; fejlõdése során elérkezik az a pont, amikor az addig b) az adatszolgáltatás idejét; „lazán” kezelt adatbiztonság egyszerre csak komoly bün- c) az adatszolgáltatás célját és jogalapját; tetõjogi felelõséggel terhelt helyzetet eredményezhet. d) az adatszolgáltatást igénylõ polgár, jogi személy vagy jogi szemé- A fentebb említett, kicsit száraznak tûnõ fogalmakat lyiséggel nem rendelkezõ szervezet, illetve megbízottja vagy – az alábbi példával szeretnénk kézzelfoghatóbbá tenni. képviselõje nevét; Az 1992 LXVI. törvény „A polgárok személyi adatainak e) a szolgáltatott adatok körének megnevezését. és lakcímének nyilvántartásáról” címen rendelkezik az (3) A polgár az adatszolgáltatási nyilvántartásból jogosult megismerni, adatvédelemrõl, illetve a jogosultságokról, amelyek e hogy mely adatszolgáltatások alanya volt. Ezt a jogosultságot a 24. §-ban felsorolt szervek részére teljesített adatszolgáltatás tekinte- tárgyban a közigazgatást, a polgárokat illetik. Ezt rész- tében külön törvény korlátozhatja vagy kizárhatja. letesebben a törvény a VI. fejezet „Adatvédelem” (4) Az adatszolgáltatási nyilvántartást öt évig meg kell õrizni. részében tárgyalja (lásd a 2. ábrát). (5) A jegyzõ nyilvántartást vezet azokról a köztisztviselõkrõl, akik az Ennek a törvénynek a 31. paragrafusa informatikusi eljárás során jogosultak az egyes okmánynyilvántartások adataihoz szemmel nézve semmi mást nem jelent, mint hogy hozzáférni. kijelöli az információgazdát, e szövegkörnyezetben az (6) Az (5) bekezdésben meghatározott nyilvántartás tartalmazza: „adatkezelõt”, valamint meghatározza az adatkezelõn a) az érintett köztisztviselõ természetes személyazonosító adatait; keresztül történõ információforgalom ellenõrzését, b) okmánynyilvántartásonként elkülönítve a hozzáférési jogosultsá- vagyis a „naplózást” a következõképpen rögzítik (lásd got, a hozzáférési jogosultság kezdõ idõpontját és idõtartamát, a 3. ábrát). valamint a hozzáférési jogosultság módosításának, visszavoná- A következõ, azaz a (3) bekezdés szerint az információ- sának okát és idõpontját. gazda a megfelelõ feltételek fennállása esetén az infor- (7) A jegyzõ az érintett köztisztviselõ nevét, nyilvántartási kódszámát és mációra jogosultaknak információt szolgáltat. Itt a a (6) bekezdés b) pontjában meghatározott adatokat legkésõbb a jo- törvény megnevezi a „polgárt” mint az információ for- gosultság kezdõ idõpontját megelõzõ munkanapon közli a Hivatallal. rását, aki jogosult a róla nyilvántartott adatok megis- (8) A nyilvántartás adatait a hozzáférési jogosultság megszûné- merésére, és jogosult megismerni, hogy mely adatszol- sétõl számított 5 évig kell megõrizni. 2. gáltatások alanya volt.

16 Linuxvilág Láttuk-hallottuk

«

Tv. 31. § Vhr. 42. § (1) A nyilvántartás szervei (6. §) kötelesek (1) A nyilvántartás szerveinél az adatvédelemért adatszolgáltatási nyilvántartást vezetni. felelõs vezetõ, valamint a számítástechnikai (2) A nyilvántartás tartalmazza rendszerek üzemeltetõje gondoskodik az a) az adatkezelõ nyilvántartási azonosítóját; adatállomány fizikai megsemmisülés elleni b) az adatszolgáltatás idejét; védelmérõl, a rendszerben alkalmazott c) az adatszolgáltatás célját és jogalapját; adatkezelési eljárások és az adatállományok d) az adatszolgáltatást igénylõ polgár, jogi biztonságáról, valamint az illetéktelen hozzá- személy vagy jogi személyiséggel nem férés elleni védelemrõl. rendelkezõ szervezet, illetve megbízottja (2) A nyilvántartás kezelõje, illetve üzemeltetõje vagy képviselõje nevét; a) gondoskodik a fokozott tûzvédelemrõl, e) a szolgáltatott adatok körének valamint lehetõség szerint folyamatos megnevezését. 3. áramforrást alkalmaz; © Kiskapu Kft. Minden jog fenntartva b) nyilvántartja a mágneses adathordozókat, (3) A polgár az adatszolgáltatási nyilvántartásból és azokat a biztonsági elõírásoknak jogosult megismerni, hogy mely adatszolgál- megfelelõen kezeli; tatások alanya volt. c) rendszeresen menti az adatállományt, és a másolatot olyan helyen tárolja, ahol Az (5) bekezdés megszabja a más információra biztonságosan megõrizhetõ és hozzáfér- jogosultak körének kijelölési szabályait, tehát azok körét, hetõ. A helyi állomány biztonsági máso- akik valamilyen oknál fogva az „okmánynyilvántartások latául a területi, továbbá a központi adataihoz hozzáférni” jogosultak. számítógépes adatbázis szolgál; (5) A jegyzõ nyilvántartást vezet azokról a köztisztvi- d) gondoskodik a vírusvédelemrõl. selõkrõl, akik az eljárás során jogosultak az egyes Vhr. 44. § okmánynyilvántartások adataihoz hozzáférni. (1) A nyilvántartó szerv, az üzemeltetõ, illetve az adatszolgáltatást közvetlenül (online) igénybe A továbbiakban a (6) bekezdés b) pontja idõkorlátokat vevõ szerv dolgozói csak meghatározott állít a jogosultak adat-hozzáférhetõségéhez, mely szerint jelszó és azonosító használatával férhetnek a hozzáférési jogosultságnak kezdõ és vég idõpontja hozzá az adatállományhoz, amelyek egyide- van. A végzõ idõpont lehet idõtartammal kijelölt, de jûleg meghatározzák az adathozzá- visszavonásig terjedõ is. férési jogosultság mértékét is. 4. (6) Az (5) bekezdésben meghatározott nyilvántartás tartalmazza: a) az érintett köztisztviselõ természetes A „jogosultság kereteit megsértve bentmaradás” ese- személyazonosító adatait; tében a jogosultság idõkorlátját valaki szándékosan lépi b) okmánynyilvántartásonként elkülönítve a túl, és ezáltal valósítja meg a törvényi tényállást. hozzáférési jogosultságot, a hozzáférési jogo- Hogyan tehetjük meg? Ha például a rendszergazda a sultság kezdõ idõpontját és idõtartamát, vala- jogosultságának lejártával a jogosult hozzáférését nem mint a hozzáférési jogosultság módosításának, törli, ezért neki lehetõsége marad az (immár) illetéktelen visszavonásának okát és idõpontját. hozzáférésre. Amennyiben illetéktelen hozzáférését A törvény a végrehajtási rendeletben rendelkezik a szándékosan használja, az büntetendõ. „rendszergazda” feladatairól, tehát a technikai oldalról Érdekes, vitára okot adó gondolat a fenti 300 § C (1) (lásd a 4. ábrán). értelmezése olyan esetekben, amikor az informatikai Ennyi példa után nézzük meg a Büntetõ törvénykönyv munka egy cég életében nem jogszabályokon alapul, 300 C § (1) „Aki számítástechnikai rendszerbe a számí- ráadásul szervezetlen is (lássuk be, ez igen gyakori), tástechnikai rendszer védelmét szolgáló intézkedés meg- tehát a felelõsségi határok elmosódottak. Vajon ekkor sértésével vagy kijátszásával jogosulatlanul belép” hogyan alakul a büntetõjogi megközelítés? Erre a részének értelmét. Ha tehát valaki szándékosan – vagyis következõ alkalommal térünk vissza. nem a saját nevén és jelszavával – jut be egy számára nem jogosított adatállományba, megvalósítja a 300 § C Granek István (1) bekezdés szerinti vétséget. szervezõmérnök, kajak-kenu szak- Hasonlóan kell értelmezni minden olyan eljárást, edzõ, és immár Linux-rajongó is. amellyel valaki a számítástechnikai rendszer védelmét 1998 óta helyi hálózatok tervezésé- szolgáló intézkedés megsértésével vagy kijátszásával vel és kiszolgálóépítéssel foglalko- jogosulatlanul lép be. A szándékos jogosulatlan belépés zik, valamint a JPTE harmadéves maga a tényállás lényegi eleme! joghallgatója. Szeret síelni, biciklizni, de úszni is.

www.linuxvilag.hu 2002. szeptember 17 Láttuk-hallottuk

CD-író program karakteres felületen

Beszélgetõtársam Várkonyi Balázs, a „cdw” Gibzo: Sokan végigjártuk ezt az utat. Maradjunk karakteres CD-író program alkotója. Munkatársunk továbbra is a múltnál. Mióta programozol, és milyen a szerzõt a program születésérõl és a felmerülõ nyelvet használsz? nehézségekrõl kérdezte. vbali: 1992-ben egy aprócska asztali gépen ismerked- tem meg a Basic csodáival. Akkor még az Enterprise Gibizer Tibor (a továbbiakban Gibzo): Ma már egyre 128-as gépe jelentette számomra a számítástechnika többen programoznak Linux alatt. Te mikor ismerkedtél elérhetõ csúcsát. Miután meglett az elsõ PC-m, áttértem meg ezzel a csodálatos rendszerrel? Pascalra. Egy éve dolgozom C-ben. Mindig szerettem Várkonyi Balázs (a továbbiakban vbali): Megközelítõleg volna C-ben programozni, de kicsit féltem is tõle. Ezt a hat éve találkoztam elõször a Linuxszal az egyik ismerõ- lépést fontos volt megtennem, mivel szerettem volna sömnél. Akkor már sokat hallottam róla, és mindenki, aki átlépni a Pascal korlátait, és a nyílt forrású programozás ismerte, dicsérte. – mely már régen megnyerte a tetszésemet – a C nyelv Nekem akkoriban ismerete nélkül nem az igazi. Talán fontos megjegyez- még nem nagyon nem, hogy ezeket a nyelveket mind könyvbõl tanultam,

© Kiskapu Kft. Minden jog fenntartva nyerte meg a tet- tanulom. A kezdeti nehézségek után nagyon megszeret- szésemet, mivel tem a nyelvet, és mostanra szerencsére már kezdek túlságosan fapados- kicsit „C-sen” gondolkodni. nak találtam, egy Gibzo: Akkor ebbõl egyenesen következik, hogy az csomó dolgot nem általad készített programok C nyelven íródnak? értettem, amivel egy vbali: Lassan elmondhatom magamról, hogy igen, bár kezdõ linuxos általá- vannak régebbi próbálkozásaim, amelyek csak egyszerû ban találkozhat. parancsfájlok, azokra most inkább nem is pazarolnék Azóta seregnyit vál- idõt, mert nem túl jól sikerültek. tozott a Linux is meg Gibzo: Szerencsére ennek ellenére sem rejtetted el õket én is. Megközelí- a nyilvánosság elõl, hiszen a honlapodon megtalálhatók. tõleg fél év serény vbali: Valóban kitettem õket, azonban ezeknek haszná- SuSE-használat után lati értékük nincs, inkább esettanulmányok, vagy nevez- rá kellett jönnöm, hetjük õket apró ötleteknek is, amit már csak azért is hogy az akkor még érdemes megnézni, hogy lássuk, milyen jó dolgokat kezdõknek kiválóan lehet a héjprogramozással elérni. alkalmas SuSE csak Gibzo: Milyen programokkal dolgozol? megvillantja a Linux- vbali: Ha programozom, akkor általában a Midnight ban rejlõ lehetõsé- Commander (mc) beépített szövegszerkesztõjét, az geket, azonban az mcedit-et használom. Nagyon szeretem és ugyancsak érdemi munkához megszoktam. Ha Gtk-t vagy Gnome-ot prog- ramozok, az Anjutát használom, amely szintén nagyon jól hasz- nálható program. Itt ki is merül a munkámhoz hasz- nált programok sora, azonban természetesen valami olyasmit kell keresnem, ami lényegesen közelebb én is használok olyan általános dolgokat, mint az áll a Linux eredeti látásmódjához. Az sem mellékes, hogy OpenOffice.org (hála és köszönet a magyarítóknak), nem kell évente kétszer-háromszor komoly összeget kiad- Gimp, XMMS – bár ezek nem közvetlenül a munkámhoz nom valamiért, amit szabadon és ingyen is meg tudok szükségesek. szerezni, ráadásul ez a megoldás tényleg azt és úgy teszi, Gibzo: Miért kezdtél el CD-író programot készíteni? ahogy én szeretném. Nem húzom tovább az idõt, hiszen vbali: Miután sikerült Debian alatt beüzemelni az írómat, a lényeg az, hogy Debianra (Woody) váltottam, amit las- elkezdtem próbálgatni az íróprogramokat. Mivel jobban san egy éve használok. Elõtte sok mindent kipróbáltam, szeretek karakteres felületen dolgozni, fõleg olyanokat Red Hat, Slackware, de a Debian GNU/Linux az, ami a kerestem, amelyek grafikus felület nélkül is használha- legjobban megnyerte a tetszésemet.

18 Linuxvilág Láttuk-hallottuk

«

tók. A cdrecord önmagában nagyon jó program, mivel hogy azt szeretnéd, ha a munkád szerves részévé válna azonban kellõképpen lusta vagyok hozzá, hogy mindig néhány összeállításnak. Jól érzem? kézzel pötyögjem be az adatokat, kezelõfelületet szerettem vbali: Természetesen igen. Meggyõzõdésem, hogy egy volna találni hozzá. Van is néhány a „piacon”, de sajnos programra soha nem mondhatjuk, hogy kész, mivel nem találtam olyat, amit igazán használhatónak nevez- mindig akad rajta csiszolnivaló, de ha végre eljut a hetnék, így elkezdtem írni egyet. megbízható változatig, biztosan nagyon boldog leszek. Gibzo: Jelenleg hol tart a fejlesztés? Nem titkolt vágyam, hogy egy olyan CD-író programot vbali: Gõzerõvel készül a 0.1.4-es változat, amelyben készítsek, mely a hang- és adatírás mellett a hang-minta- rengeteg újítás lesz az elõzõ változatokhoz képest. vételezést is tudja, tehát a wav és MP3 formátumot oda- Szerencsére pár srác segítõ kezet nyújtott, és közvetlen vissza kezeli, MP3-tagszerkesztéssel rendelkezik és vagy közvetett módon beszállt a fejlesztésbe. A 0.1.3-as sorolhatnám. változat debianos csomagja már elkészült és az uhus Gibzo: Jelenleg hányan dolgoztok a csoportban? csomagon is dolgoznak már. Az új honlapot is készítik, vbali: Túl kevesen. 3–4 fõ dolgozik rendszeresen a

mert a jelenlegi enyhén szólva elmarad a mai kívánal- csapatban, de sajnos egyedül vagyok programozó. © Kiskapu Kft. Minden jog fenntartva maktól. Ennek csupán az az oka, hogy a honlapkészítéshez A tagok listája megtalálható a nem túlságosan értek, éppen ezért bíztam a dolgot  http://sourceforge.net/projects/cdw címen. olyanra, akinek jobban megy az ilyesmi. Gibzo: Köszönöm a beszélgetést, és jó munkát, sok sikert Gibzo: Mire lenne szükséged a továbbhaladáshoz? kívánok a „cdw”-hez. vbali: Legfõképpen több idõre. Fõállásban egy irodában dolgozom, mellette végzem a fõiskolát, ezért elég túl- Érdeklõdõ olvasóink Várkonyi Balázsnak terhelt vagyok. Amikor idõm engedi, azért progra- a [email protected] címre írhatnak.  mozgatok. Éppen ezért programozókra nagyon nagy http://vbali.freeweb.hu szükség volna. Ha többen tudnánk írni a programot, sokkal gyorsabban haladnánk és jobban el tudnánk Gibizer Tibor készíteni az egészet. Már az is nagy segítség lenne, ([email protected]) ha valaki átnézné az eddigi munkámat, és egy kicsit újságíró, immár hét éve a Linux „kitakarítaná” a soraimat. elkötelezett híve. Imádja a kutyákat, Gibzo: Említetted, hogy már elkészült a debianos csomag, a kerékpározást és az autós és az Uhu is folyamatban van. Ebbõl arra következtetek, csavargást.

A HP üzenete az alkatrészgyártóknak: áruljatok másnak NDA-t!

Bruce Perens, a Hewlett-Packard Linux-cárja szerint „na- irányelv eredményeképpen a HP a korábbi NDA-ba bújta- gyon jó” esély mutatkozik arra, hogy az újonnan létrejött, tottak helyett már nyílt leírású modemlapkákat használ. legnagyobb Linux-kereskedõ, az összeolvadt HP-Compaq a Az összeolvadást megelõzõen a HP-n belül „vállalati irány- Linuxszal együttmûködõ alkatrészeket részesítse elõnyben. vonalként” elfogadták a leírt alkatrészeket javasló rendsza- Az új irányelv vállalatszerte megkövetelné, hogy „a terve- bályt, amely a legjobb úton haladt afelé, hogy vállalati ha- zés során elsõsorban olyan eszközöket vegyenek figye- gyománnyá váljon. Az új, egyesült vállalati vezetéssel azon- lembe, amelyekhez rendelkezésre áll az illesztõfelület ban Perensnek újból jóvá kell hagyatnia. „Az egyesítés sok nyilvános leírása”. dolgot megakasztott, és a (compaqos) vezetõk tudomására A HP tervezõmérnökei számára ez annyit jelent, hogy két kell hoznom, hogy erre szükségünk van” – jelentette ki. lehetséges alkatrész közül azt kell választani, amelyikhez van Abból, hogy a HP laptopok és PDA-k Linuxszal is használ- nyílt forrású meghajtóprogram, vagy amelyikhez programo- hatók lesznek, még nem következik, hogy a cég a Linuxot zási kézikönyvet is ad a forgalmazó. NDA-val kísért alkatrész ezeken a gépeken hivatalosan is támogatni fogja. Nem mellett csak akkor dönthetnek, ha nincs más megoldás, tervezik linuxos laptopok eladását, és nem akarják hasz- vagy a másik megoldás megfizethetetlenül drága lenne. nosítani Jim Getty munkáját, aki azzal foglalkozott, hogyan Perens nem latolgatta, hogy a HP mennyivel fogja keve- futtatható Linux és az X a (korábban Compaq, most már sebbre becsülni az NDA-ba burkolt elemeket. A kérdés úgy HP) iPAQ gépeken. „Fõleg linuxos kiszolgálókkal dolgo- is feltehetõ, hogy a HP mennyivel hajlandó többet fizetni a zom” – mondja Perens. Hogyan érinti az összeolvadás nyilvános leírással rendelkezõ eszközökért? Perens azt ta- a Linuxot a HP-nál és a Compaqnál? „Hacsak valami nácsolja a tervezõknek, hogy „használják a fejüket”. „Gra- szörnyûség nem történik, biztosan a javára válik majd.” fikus lapkákkal foglalkoztam” – árulja el. Az ATI alacsony Don Marti szintû grafikus alkatrészei viszonylag jók, a magas szintû- ek, azonban véleménye szerint „mind vacakok”. Az új Linux Journal 2002. augusztus, 100. szám

www.linuxvilag.hu 2002. szeptember 19 Láttuk-hallottuk

«

tók. A cdrecord önmagában nagyon jó program, mivel hogy azt szeretnéd, ha a munkád szerves részévé válna azonban kellõképpen lusta vagyok hozzá, hogy mindig néhány összeállításnak. Jól érzem? kézzel pötyögjem be az adatokat, kezelõfelületet szerettem vbali: Természetesen igen. Meggyõzõdésem, hogy egy volna találni hozzá. Van is néhány a „piacon”, de sajnos programra soha nem mondhatjuk, hogy kész, mivel nem találtam olyat, amit igazán használhatónak nevez- mindig akad rajta csiszolnivaló, de ha végre eljut a hetnék, így elkezdtem írni egyet. megbízható változatig, biztosan nagyon boldog leszek. Gibzo: Jelenleg hol tart a fejlesztés? Nem titkolt vágyam, hogy egy olyan CD-író programot vbali: Gõzerõvel készül a 0.1.4-es változat, amelyben készítsek, mely a hang- és adatírás mellett a hang-minta- rengeteg újítás lesz az elõzõ változatokhoz képest. vételezést is tudja, tehát a wav és MP3 formátumot oda- Szerencsére pár srác segítõ kezet nyújtott, és közvetlen vissza kezeli, MP3-tagszerkesztéssel rendelkezik és vagy közvetett módon beszállt a fejlesztésbe. A 0.1.3-as sorolhatnám. változat debianos csomagja már elkészült és az uhus Gibzo: Jelenleg hányan dolgoztok a csoportban? csomagon is dolgoznak már. Az új honlapot is készítik, vbali: Túl kevesen. 3–4 fõ dolgozik rendszeresen a

mert a jelenlegi enyhén szólva elmarad a mai kívánal- csapatban, de sajnos egyedül vagyok programozó. © Kiskapu Kft. Minden jog fenntartva maktól. Ennek csupán az az oka, hogy a honlapkészítéshez A tagok listája megtalálható a nem túlságosan értek, éppen ezért bíztam a dolgot  http://sourceforge.net/projects/cdw címen. olyanra, akinek jobban megy az ilyesmi. Gibzo: Köszönöm a beszélgetést, és jó munkát, sok sikert Gibzo: Mire lenne szükséged a továbbhaladáshoz? kívánok a „cdw”-hez. vbali: Legfõképpen több idõre. Fõállásban egy irodában dolgozom, mellette végzem a fõiskolát, ezért elég túl- Érdeklõdõ olvasóink Várkonyi Balázsnak terhelt vagyok. Amikor idõm engedi, azért progra- a [email protected] címre írhatnak.  mozgatok. Éppen ezért programozókra nagyon nagy http://vbali.freeweb.hu szükség volna. Ha többen tudnánk írni a programot, sokkal gyorsabban haladnánk és jobban el tudnánk Gibizer Tibor készíteni az egészet. Már az is nagy segítség lenne, ([email protected]) ha valaki átnézné az eddigi munkámat, és egy kicsit újságíró, immár hét éve a Linux „kitakarítaná” a soraimat. elkötelezett híve. Imádja a kutyákat, Gibzo: Említetted, hogy már elkészült a debianos csomag, a kerékpározást és az autós és az Uhu is folyamatban van. Ebbõl arra következtetek, csavargást.

A HP üzenete az alkatrészgyártóknak: áruljatok másnak NDA-t!

Bruce Perens, a Hewlett-Packard Linux-cárja szerint „na- irányelv eredményeképpen a HP a korábbi NDA-ba bújta- gyon jó” esély mutatkozik arra, hogy az újonnan létrejött, tottak helyett már nyílt leírású modemlapkákat használ. legnagyobb Linux-kereskedõ, az összeolvadt HP-Compaq a Az összeolvadást megelõzõen a HP-n belül „vállalati irány- Linuxszal együttmûködõ alkatrészeket részesítse elõnyben. vonalként” elfogadták a leírt alkatrészeket javasló rendsza- Az új irányelv vállalatszerte megkövetelné, hogy „a terve- bályt, amely a legjobb úton haladt afelé, hogy vállalati ha- zés során elsõsorban olyan eszközöket vegyenek figye- gyománnyá váljon. Az új, egyesült vállalati vezetéssel azon- lembe, amelyekhez rendelkezésre áll az illesztõfelület ban Perensnek újból jóvá kell hagyatnia. „Az egyesítés sok nyilvános leírása”. dolgot megakasztott, és a (compaqos) vezetõk tudomására A HP tervezõmérnökei számára ez annyit jelent, hogy két kell hoznom, hogy erre szükségünk van” – jelentette ki. lehetséges alkatrész közül azt kell választani, amelyikhez van Abból, hogy a HP laptopok és PDA-k Linuxszal is használ- nyílt forrású meghajtóprogram, vagy amelyikhez programo- hatók lesznek, még nem következik, hogy a cég a Linuxot zási kézikönyvet is ad a forgalmazó. NDA-val kísért alkatrész ezeken a gépeken hivatalosan is támogatni fogja. Nem mellett csak akkor dönthetnek, ha nincs más megoldás, tervezik linuxos laptopok eladását, és nem akarják hasz- vagy a másik megoldás megfizethetetlenül drága lenne. nosítani Jim Getty munkáját, aki azzal foglalkozott, hogyan Perens nem latolgatta, hogy a HP mennyivel fogja keve- futtatható Linux és az X a (korábban Compaq, most már sebbre becsülni az NDA-ba burkolt elemeket. A kérdés úgy HP) iPAQ gépeken. „Fõleg linuxos kiszolgálókkal dolgo- is feltehetõ, hogy a HP mennyivel hajlandó többet fizetni a zom” – mondja Perens. Hogyan érinti az összeolvadás nyilvános leírással rendelkezõ eszközökért? Perens azt ta- a Linuxot a HP-nál és a Compaqnál? „Hacsak valami nácsolja a tervezõknek, hogy „használják a fejüket”. „Gra- szörnyûség nem történik, biztosan a javára válik majd.” fikus lapkákkal foglalkoztam” – árulja el. Az ATI alacsony Don Marti szintû grafikus alkatrészei viszonylag jók, a magas szintû- ek, azonban véleménye szerint „mind vacakok”. Az új Linux Journal 2002. augusztus, 100. szám

www.linuxvilag.hu 2002. szeptember 19 Láttuk-hallottuk

A Linux 100 pillanata

A Linux Journal 100. megjelenése alkalmából testvérla- nagy népszerûségre tesz szert a Linux-közösségen belül. punk bemutatta a Linux történetének 100 legjelentõsebb 1993. augusztus eseményét. Amint azt az idõszalagon is megfigyelhetjük, Matt Welsh Linux Installation and Getting Started ver- a Linux Journal elsõ kiadása egybeesett a Linux 1.0 sion 1 címû mûvének kiadása. Ez az elsõ linuxos könyv. megjelenésével. Azóta a magazin sorsa nagymértékben követi a Linux életvonalát. Lássuk, mi is történt velük! 1994. március „A megjelenés óta nyolc, érdekes eseményekkel teli, viha- Megjelenik a Linux Journal elsõ száma. A szám egy ros év telt el. A történések közül mindössze százat kiválasz- beszélgetést tartalmaz -szal, illetve tani egyáltalán nem volt könnyû feladat, és biztos, hogy cikkeket Phil Hughes, lesznek olyan olvasóink, akik hamar meg tudnak említeni Robert „Bob” Young, olyan eseményt, amelyet kiválaszthattunk volna, de nem Michael K. Johnson, Arnold tettük. Mindenesetre választásunkkal megpróbáltuk hûen Robbins, Matt Welsh, Ian A. visszaadni a Linux történelmét jellemzõ hullámvasútjelleget. Murdock, Frank B. Brokken, Szeretnénk hangsúlyozni, milyen lekötelezve érezzük K. Kubat, Micahel Kraehe © Kiskapu Kft. Minden jog fenntartva magunkat Rebecca Sobol-nak és Jonathan Corbet-nek és Bernie Thompson tollá- a Linux Weekly Newstól pontos és szíves történelmi szer- ból. A bemutatkozó kiadás kesztésükért, illetve amiért lehetõvé tették nekünk a hon- hirdetõi közt találjuk az lapjukon bemutatott idõszalag adatainak felhasználását.” Algorithms Inc., az Amtec Engineering, a Basmark, a Linux-idõszalag Fintronic (amelyet késõbb VA Research, illetve VA 1991. augusztus Linux Systems néven ismerünk), az Infomagic, a Prime „Üdv minden Minix-felhasználónak odakinn! Készítek egy Time Freeware, a Promox, a Signum Support, az SSC, (ingyenes) operációs rendszert (csak hobbi, nem lesz a Trans Ameritech, a USENIX, a Windsor Tech és a olyan nagy és profi, mint a GNU) a 386- (486) AT-kló- Yggdrasil cégeket. Megjelenik a Linux 1.0. nokhoz. Április óta kotyvasztom, és már kezd elkészülni. Szeretnék visszajelzéseket hallani, mit szerettek, illetve 1994. június nem szerettek a Minixben, mivel az én operációs rend- A New Orleans-i tanácskozás alatt Jon „maddog” szerem némileg hasonlít rá (többek között azonos a fájl- Hall meggyõzi Linust, hogy a Linuxot ültesse át a DEC rendszer fizikai kiosztása – gyakorlati okokból). 64-bites Alpha gépeinek processzorára. Kevesebb mint Mostanában ültettem át a bash (1.08) és gcc (1.40) két hét múlva maddog a DEC-et is meggyõzi, hogy programokat, és úgy tûnik, mûködnek a dolgok. Ez azt is támogassák a projektet – azon nyomban küldtek Linus- jelenti, hogy pár hónapon belül valami használhatót fogok nak egy Alpha-munkaállomást. kapni, és kíváncsi lennék, milyen képességeket szeret- „A Digital (DEC) és a Linux-közösség együttese volt az nének az emberek. Minden javaslatot szívesen veszek, elsõ igazán sikeres próbálkozás, ahol az öltönyösök és azt viszont nem ígérem, hogy meg is csinálom õket :-) a Linux-megszállottak (geek) együtt tudtak dolgozni” – Linus ([email protected]) – vélte maddog. Ui.: Igen! Nincs benne Minix-kód és többszálú fs-sel Jon „maddog” Hall megalapítja a Linux International (fájlrendszerrel) rendelkezik. Nem hordozható (portable) nonprofit ismeretterjesztõ szervezetet. A Linux Interna- (a 386 feladatváltást használja stb.), és lehet, hogy soha tional jó úton halad afelé, hogy a Linux sikerének egyik nem is fog az AT-merevlemezeken kívül bármi mást fõbb részesévé váljon azáltal, hogy a Linux operációs támogatni, minthogy nekem csak ez van :-(.” rendszer megismertetésében, használatában és terjesz- tésében cégeket és másokat is segít. 1991. szeptember Megjelenik a Linux 0.01-es változata, és felkerül a 1994. augusztus hálózatra. Linux-védjegyvita: legyen-e védjegy a Linux? William R. Della Croce, Jr. 1994. augusztus 15-én kérelmezi 1992. április a „Linux” védjegyet, amit szeptemberben be is jegyez- Ari Lemmke javasolja, majd be is indítja az elsõ linuxos nek. Della Crocénak nincsen ismert köze a Linux-közös- hírcsoportot comp.os.linux címen. séghez azt leszámítva, hogy leveleket küld a jelentõ- 1992. október sebb Linux-cégeknek, pénzt követelve tõlük a „Linux” Peter MacDonald bejelenti az SLS-t, az elsõ önálló Linux-te- védjegy használatáért. 1996-ban a bíróság Della lepítést. A javasolt szabad lemezterület legkevesebb 10 MB. Croce ellen hoz ítéletet. Az ügy felperesei közt találjuk 1993. június Linus Torvaldsot; a Specialized Systems Consultants, Slackware- Inc. (a Linux Journal kiadója); a Yggdrasil Computing, je lesz az elsõ önálló kereske- Inc.; a Linux International; és a WorkGroup Solutions delmi terjesztés, és hamar igen (más néven LinuxMall) cégeket. A felperesek gyõze-

20 Linuxvilág Láttuk-hallottuk

«

delmeskednek, és 1997-ben kihirdetik, hogy a védjegy 1998. január minden felperes és Linux-felhasználó nevében Linus A Jonathan Corbet és Elizabeth Coolbaugh alapította Torvaldsot illeti meg. Linux Weekly News megkezdi tevékenységét. Legelsõ kiadásuk január 22-én csak egy apró utalás arra nézvést, 1994. szeptember hogy az LWN mivé szeretne válni. A Linux elsõ feltûnése a sajtó fõ áramában. A Wired A Netscape bejelenti, hogy böngészõjük forrását nyílt magazin megjelenteti Seth Rosenthal forrású szabadalom alatt fogják kiadni. Csaknem teljesen Kernel Kid címû cikkét, amelyben a biztosan ez marad az év egyik legfontosabb eseménye következõt írja: „Vajon Linus Finnor- – ugyanis sok szemet felnyitott, megmutatva, hogy milyen szág Bill Gates-évé szeretne válni? lehetõségeket teremthet a Linux és a szabad programok. Valószínûleg nem. Ahogyan saját A Red Hat Advanced Development Labs (RHAD) alapítá- maga jellemezte önmagát: „semmi- sának éve. Azóta már az egyik olyan nélkülözhetetlen képpen sem mintatanuló”, és végezni hellyé vált, ahol az embereknek azért fizetnek, hogy sza- sem siet, amióta „a Linux olyan sok bad programokat fejlesszenek, és lényeges összetevõket idõt elvesz a tanulástól, és egyébként is szeretem azt © Kiskapu Kft. Minden jog fenntartva készítsenek a GNOME Projecthez. Az RHAD olyan a munkát, amit az egyetemen végzek. Ez tart ébren.” fejlesztõket tudott megnyerni, mint „Rasterman” (igaz, Randolph Bentson a Linux Journal közönségének beje- csak egy rövid idõre) és Federico Mena-Quintero. lenti a világ elsõ, gyártó által támogatott linuxos eszköz- meghajtóját. A Cyclades egy több kapuval szerelt soros 1998. február kártyát (multiport serial card) küldött neki, hogy cserébe Megjelenik a Cobalt Qube és – nagy teljesítményének, fejlesszen hozzá linuxos meghajtót. alacsony árának és ügyes formatervezésének köszönhe- tõen – szinte azon nyomban a kereskedelmi sajtó ked- 1994. december vencévé válik. A Cobalt Linux terveit nem más készí- Egy nagyobb bemutató (tradeshow) és tanácskozás tette, mint David Miller, akitõl igen sok jó dolog szárma- hívja fel a figyelmet a Linuxra. Az Open Systems World zik a Linux-rendszermagban. felállít egy Linux-követõt, amelynek a Linux Journal ad A Linux-felhasználók közössége otthont. A két napos szemináriumon Eric Youngdale, megnyeri az InfoWorld technikai Donald Becker, Dirk Hohndel, Phil Hughes, Michael K. támogatás díját (Technical Support Johnson és David Wexelblat is felszólal. Award), a Red Hat 5.0 pedig az 1995. április Operációs rendszer díjat (Operating Lezajlik a Linux Expo, az elsõ Linux-központú bemutató System Award). A technikai támogatás díjja volt az, ami (tradeshow) és tanácskozássorozat ebédekkel, köszönet- igazán felnyitotta az emberek szemét – eddig mindenki nyilvánítással a North Carolina State University munka- azt mondogatta, hogy a Linuxnak egyáltalán nincs támo- társainak, köztük kiemelten Donnie Barnes-nek. Az elõ- gatása. Ez lett tehát az ellenzõk „nincs is támogatása” adók közt találjuk például Marc Ewing-et, Rik Faith-et és érvének a vége. Michael K. Johnson-t. A Linux Expo sikeres lesz: a leg- Eric Raymond és barátai elkezdik használni a „nyílt népszerûbb és leglátogatottabb éves linuxos eseménnyé forráskódú” (open source) kifejezést. Védjegyért válik az elkövetkezõ néhány év során (három év múltán folyamodnak, és felállítják az  http://opensource.org a Red Hat veszi át a szervezést és válik a fõ támoga- honlapot. Ilyen módon kezdõdnek az elsõ formai tóvá). A kiállítás belépti díja és a tanácskozásra szóló erõfeszítések a Linux testületi felhasználására. jegy ára 4 dollár volt. 1998. március 1997. január Ralph Nader fogyasztóvédelmi ügyvéd arra kéri a nagy Az elsõ „Linux-vírus” felfedezése. A vírus neve Bliss, PC-gyártókat (Dell, Gateway, Micron stb.), hogy ne tulajdonképpen bármilyen Unix-szerû operációs rend- Microsoft-rendszerekkel, hanem többek között Linuxszal szeren mûködik és rendelkezik egy – „bliss-uninfect- telepített gépeket is árusítsanak. files-please” (Bliss, kérlek, fertõtlenítsd a fájlokat) 1998. április parancssori kapcsolóval. rámutat, hogy a Az US National Public Radio hírének témája a Linux, Bliss „nem tudja kijátszani a biztonsági rendszert; azon jelezve elsõ megjelenését a nem technikai sajtó alapul, hogy az elõjogokkal bíró emberek valami buta- fõáramában is. ságot tesznek”, és emlékezteti a felhasználókat, hogy O'Reilly megtartja a „legelsõ” Szabad Szoftver Csúcsot kizárólag digitálisan aláírt programokat telepítsenek (Free Software Summit), ahol Larry Wall, Brian Behlendorf, megbízható gépekrõl, illetve a telepítés elõtt ellenõrizzék Linus Torvalds, Guido van Rossum, Eric Allman, Phil az aláírásokat. Zimmermann, Eric Raymond és Paul Vixie szerepel. „Linux alá valószínûleg könnyebb vírust írni, hiszen nyílt forráskódú, azaz a kódja elérhetõ. Ezért aztán egyre több 1998. május Linux-vírust fogunk látni, ahogy az OS egyre gyakoribbá A Google keresõmotor megjelenése. Nemcsak az egyik és népszerûbbé válik”– vágyakozó McAfee-s gondolatok. legjobb keresõmotor, de Linuxon alapul és Linuxszal

www.linuxvilag.hu 2002. szeptember 21 Láttuk-hallottuk

«

foglalkozó keresõlapokat mutat be. Internet.com megszerez, kétségtelenül minden idõk Kezdenek a nagy adatbázisok is megérkezni. A Computer legolvasottabb és látogatottabb Linux portálja. Associates bejelenti Linux-támogatását az Ingres Steve Ballmer a Microsofttól bevallja, hogy „aggódnak” rendszerhez, az Ardent Software pedig az O2 object a szabad programok miatt, és azt javasolja, hogy a Win- database-hez. dows NT forráskódjának egy részét esetleg tegyék elérhetõvé a fejlesztõk számára. Ugyanebben a hónap- 1998. június ban a Microsoft a Linuxot fenyegetõ versenytársként „Számos terméknek, ami ingyenes, hûséges követõi kezdi jegyezni az éves SEC (US Securities and Exchange vannak, még ha csak kevesen is. Soha nem hallottam, Commission) irataiban. Számosan úgy gondolják, hogy hogy egy vásárló a Linuxról tett volna említést nekem.” valódi céljuk a közelgõ antitrösztper befolyásolása. – Bill Gates, PC Week, 1998. június 25. „… ezek az operációs rendszerek az elkövetkezõ három 1998. október évben nem fognak széles körben elterjedni a fõ üzleti „Jelen pillanatban azonban a redmondi (Washington) alkalmazások piacán, és nem lesz széles körû, külsõ cég, úgy tûnik, hálás a Linux felemelkedéséért, ugyanis

© Kiskapu Kft. Minden jog fenntartva fejlesztõk (third-party) által nyújtott támogatásuk.” felismerték benne azt a lehetõséget, amellyel bizonyít- A Gartner Group szerint a szabad programoknak nem hatják, hogy a Windows mégsem monopólium. Ez sok reményük van. azonban csak most jutott eszükbe, amikor a cég október A Datapro tanulmány eredménye szerint minden rend- 15-én kezdõdõ antitröszttárgyalása elõtt áll. Ez a rövid szer között a Linux rendelkezik a legnagyobb felhasználói távú cél. Hosszú távon a Linux és más nyílt forrású elégedettségi mutatóval; és arra is rámutat, hogy a programok még sok fájdalmat okozhatnak Mr. Gatesnek.” Linux az egyetlen rendszer a Microsoft Windows NT – The Economist, 1998. október 3. után, amely a piaci részesedését növeli. Az Intel és a Netscape (és két befektetõ cég) bejelentik Az IBM bejelenti, hogy terjeszteni és támogatni fogja kisebbségi részvételüket a Red Hat Software-ben. az Apache webkiszolgálót, miután megegyezett az A pénzt az „enterprise support division” létrehozására Apache-csapattal. használják fel a Red Haten belül. Az esemény hihetetlen hatást és nagymennyiségû írást vált ki a sajtóból, mivel 1998. július ebben látják a Linux befogadását a komoly üzleti világba. Az asztalháború elmérgesedik, a KDE- és a Gnome-hívõk A Corel bejelenti, hogy a WordPerfect 8 for Linux sértéseket vágnak egymás fejéhez. Linus közbeavatko- „személyes használatra” ingyenesen letölthetõ. Egyben zik, és kijelenti, hogy felõle mehet a bejelentik partneri viszonyukat a Red Hattel, miszerint KDE. Ekkor jön ki a KDE 1.0-s változata. Linuxot futtatnak a Netwinderhez. A K Desktop Environment elsõ kiadása népszerû, mindazok aggodalmai ellenére, akik nem 1998. december szeretik a Qt könyvtár szabadalmát. Az IDC jelentése szerint 1998-ban a Linux-szállítások több Az Informix csendben programokat ad ki Linux alá. mint 200 százalékkal, piaci részesedése pedig 150 száza- Mindeközben az Oracle egy bölcs PR-fogással kiüti az lékkal nõtt. A Linuxnak 17 százalékos piaci részesedése Informix céget, és elsõként jelenti be Linux-barátságát, van, és növekedési üteme minden más, a piacon részt- azt sugallva, hogy hamarosan támogatni fogja a Linuxot. vevõ operációs rendszert messze maga mögött hagy. Az Oracle ígéretei szerint 1998 végére már elérhetõk 1999. január lesznek a próbaváltozatok, amelyek hónapokkal a „A Microsoft Corp. óriási hírveréssel közli majd a világ- határidõ elõtt elkészülnek. Ez volt – úgy tûnik – a Linux gal, ha a Windows 2000 végül megjelenik. A Linuxot hosszútávú felhasználhatóságának tûzkeresztsége; alkotó Linus Torvalds a Linux következõ nemzedékét ugyanis mind az Informix, mind az Oracle bejelentése jelentõ 2.2-es változat megszületését egy egyszerû meg- igen nagy port vert fel. jegyzéssel jelezte a Linux-kernel levelezõlistán.” Az Informix tulajdonképpen az Oracle-bejelentés utáni – Steven J. Vaughan-Nichols, Sm@rt Reseller pillanatokban hozza nyilvánosságra Linux- Megjelenik a Samba 2.0., amely visszafejtett Microsoft támogatását. Késõbb a Sybase szintén tartományvezérlõprotokoll-megvalósítást tartalmaz, így kijelenti, hogy támogatni kívánja a Linuxot. téve lehetõvé, hogy a Linux-kiszolgálók a windowsos Linus feltûnik a Forbes magazin címlapján. hálózatokban is teljes értékû szolgáltatást nyújtsanak. A lap hosszú történetet közöl a Linuxról, A Hewlett-Packard és a Compaq bejelenti, hogy Linux- az igen kedvezõ hangvételû írás sokak alapú rendszerek eladását tervezik. Késõbb a Dell szintén figyelmét felhívja a rendszerre, olyanokét bejelenti, hogy tervbe vette a Linux-telepítésû rendsze- is, akik addig soha nem is hallottak róla. A Linux közis- rek árusítását. Az SGI is bizonyítja hajlandóságát, amikor mert fogalommá válik. nyilvánosságra hozza, hogyan lehet Linuxot telepíteni 1998. szeptember a rendszerükre. Whitinger és Dwight Johnson beindítja a A Loki Entertainment Software bejelenti, hogy a LinuxToday.com honlapot. A honlap, amelyet késõbb az Civilization: Call to Power Linux alatt is megjelenik.

22 Linuxvilág Láttuk-hallottuk

«

1999. február között nem tudott meggyökeresedni – a ford.). Csak ezt A Linux- és BSD-felhasználók a „Windows Refund Day” kell suttogni, és minden a miénk lehet: a média figyel- (a Windows-visszatérítés napja) alkalmából egyesülnek. me, a fogyasztók érdeklõdése és természetesen a koc- Meglátogatják a Microsoftot, remélve, hogy fel nem hasz- kázati befektetõk bizalma”. nált Windows-engedélyüket visszavihetik, amelyet akkor – Andrew Leonard, Wired voltak kénytelenek megvásárolni, amikor operációs 1999. augusztus rendszerrel együtt árusított számítógépet vásároltak. Az elsõ Intel IA-64 Merced lapka. Bár az Intel több ope- 1999. március rációs rendszernek is adott szimulátorokat, a Linux az „Ahogyan az orosz forradalmárt kiretusálták a fotóról, egyetlen OS, amelyen az új kiépítés már elsõ napjaiban úgy hagyják ki a történetírásból. Stallman volt a Free is mûködik. A Register fõcíme: „Megjelent a Merced Software-elképzelés és a lapka: a Linux fut, az NT nem”. GNU/Linux operációs rendszer Az SGI bejelenti Linux-alapú kiszolgálórendszerét, az kezdeményezõje. Ezt azonban a 1400L-t. Az SGI egyben közli partneri viszonyát a Red

LinuxWorld (Expo) írásaiból nem tudhatjuk meg. Linus Hattel, és komolyan beszáll a rendszermag fejlesztésébe. © Kiskapu Kft. Minden jog fenntartva Torvaldsnak jutott az összes tinta.” Megjelennek a Red Hat induló részvényei (IPO); az utol- – Leander Kahney, Wired magazine, 1999. március só pillanatban végrehajtott átárazás segít megnehezíteni Az elsõ LinuxWorld Konferenciát és Expót Kaliforniában, azoknak az embereknek a dolgát, akik a közösség fela- San Joséban tartják. Erre az elsõ nagy linuxos üzleti jánlásaiból vették ki a részüket. A részvényárak azonnal „bemutatóra”, amely a világ figyelmét felhívta a Linux ötven dollárra emelkednek, ami ez idõ tájt még magas- megérkezésére, állítólag 12 000 ember jelentkezett. nak tûnik. Bemutatkozott a Linux Magazine, további versengést „Immár sokadszor valaki utat mutatott a paradicsomba, hozva a Linux-sajtó világába. Késõbb egyéb magazinok és kiépítette a parkolót Linux-programozók ezrei szá- tûnnek fel és el: az Open, a Journal of Linux Technology mára, akik létrehozták az utopisztikus nyílt forráskódú (JOLT), illetve a Maximum Linux. – szabad segítség a szabadon használható operációs A VA Research egymillió dollárért megvásárolja a rendszer megalkotásához – mozgalmat. A Red Hat kezdõ Linux.com tartományt és bejelenti, hogy Linux-portált részvényeinek sorsa volt a biztos jele annak, hogy a kíván létrehozni. A Microsoft állítólagos ajánlata a Wall Street átvágta az új Linux-sétány szalagját.” tartományra meghiúsul. – The Industry Standard A Motorola linuxos nyilatkozatokat tesz a linuxos beá- 1999. április gyazottrendszer-protokollról, a támogatási és oktatási „…képzeljék el, milyen érzés látni, hogy egy eszményi szolgáltatásokról, valamint a Lineóval alakuló partneri projekt megakad és hatástalan, csak azért, mert az viszonyáról. emberek nem adják meg azt a megbecsülést, A Sun megszerzi a StarDivisiont; bejelenti tervét, misze- amiért megdolgoztál. Ha olyan idealista vagy, rint a StarOffice-t a Sun Community Source License mint én, ez az egész évtizededet elronthatja.” védelme alatt adná ki, illetve elkészíti az irodai csomag – a GNU/Linuxról webre felkészített változatát. Al Gore elnöki kampányának honlapjáról azt állítják, hogy nyílt forráskódú. Késõbb a hírt visszavon- 1999. szeptember ják, de a honlapon továbbra is a következõk szerepelnek: „A New Jersey-beli, burlingtoni székhelyû Burlington „A Gore 2000 Volunteer Source Code Projectet a nyílt Coat Factory Warehouse Corp. körülbelül egymillió dollárt forrás haladó szellemében hoztuk létre; a költ 1250 Linuxszal telepített Dell-számítógép vásárlá-  http://www.algore2000.com nyílt honlap”. sára, a Red Hatnek azonban egy centet sem fizet a támo- A HP bejelenti 24/7 támogatási szolgáltatását a Caldera-, gatásért” – mondja Michael Prince információs vezetõ. Turbolinux-, Red Hat- és SuSE-változatokhoz. Egyben az „Feltételezem, hogy a Red Hat üzleti modellje van, akinek OpenMailt is kiadják Linux alá. hasznos, viszont számunkra nincs sok értelme”. A Linux FreeS/WAN projekt kiad egy ingyenes IP Sec- – Daniel Lyons, Forbes, 1999. május 31. megvalósítást, lehetõvé téve, hogy a Linux ma már ipari Szeptemberben a Burlington végül mégiscsak vásárolt szabványnak számító VPN-átjáróként mûködjön. támogatást a Red Hattõl. „Egyszerûen az a tény, hogy egy hivatalos SEC-dokumen- Az elsõ nagy Linux-részvényroham. Az Applix részvényei tum tartalmazza a GPL-szöveget, már épp eléggé bizonyít- mennyiségileg több mint a kétszeresére nõnek, elérve ja, hogy a program üzleti szabályai erõsen újraíródnak.” a közel 27 millió részvényt – a tényleges piacon lévõ – Andrew Leonard, Salon kilencmillió részvény háromszorosát. A SCO Észak-Európában kiadott füzetében a Linuxot 1999. május becsmérli: „Ez a két kicsiny szó: „nyílt forrás”, mágikus jelentést „A Linux jelen pillanatban sokkal inkább tekinthetõ nyert, akárcsak a portál 1998-ban (nálunk kicsit késõbb az IT-tanulók játékszerének, mint komoly operációs – a ford.), vagy a push 1997-ben (ami a hazai viszonyok

www.linuxvilag.hu 2002. szeptember 23 Láttuk-hallottuk

«

rendszernek, amelyre egy üzlet mûködését, biztonságát meglovagolni. A Vitamins.com például a következõt írja: és jövõjét lehet alapozni. Mivel a Linux alapvetõen „A Vitamins.com újfent kitûnt a hasonló internetes mindenkinek szabad, ez azt jelenti, hogy nincsen olyan egészségügyi honlapok tömegébõl, hiszen az elsõk ember, illetve cég, akit felelõsségre lehetne vonni, ha között van, akik a vezetõ fejlesztõ és nyílt forráskódú valami nem jól mûködik, ráadásul nem lehet elõrejelezni, megoldásokat nyújtó Red Hat által készített Linux hogy a Linux melyik úton fog továbbfejlõdni.” operációs rendszert használják.” A Red Hat részvényei elérik a 135 dollár/részvény árat, 2000. február ami ez idõ tájt hihetetlenül magasnak tûnik. A legfrissebb IDC-jelentések azt sugallják, hogy a kiszol- 1999. október gáló operációs rendszerek 1999-es eladásának 25 száza- A Sun Microsystems nyilvánosságra hozza, hogy a lékával a Linux most a „kiszolgálókon alkalmazott máso- Solaris forrását a Sun Community Source License dik legnépszerûbb operációs rendszer”. Az elsõ a Win- védelme alatt fogja kibocsátani. A tényleges kiadást dows NT 38 százalékkal, harmadik helyen a Netware áll azonban bírálatok érik: 19 százalékkal. Az IDC korábban azt jelezte, hogy a Linux

© Kiskapu Kft. Minden jog fenntartva „A Linuxra irányuló törekvésként a Sun elhatározta, hogy 2002 vagy 2003 táján tornázhatja fel magát a második szerdán bejelenti: az új Solaris 8 operációs rendszer for- helyre. A forradalom az elõrejelzésnél jóval elõbbre jár. ráskódja nyílt lesz. A Webster szótára igen sok meghatá- A VA Linux Systems egy magas szintû vásárlás kereté- rozást kínál erre a szóra, többek között a „nem lezárt, ben megszerzi az Andover.net-et, ahol az Andover-rész- rögzített vagy bezárt” is szerepel benne. Ha a Sun-nyilat- vények 0,425 VA részvényt érnek, azaz az áruk megkö- kozat mélyére ásunk, azt találjuk majd, hogy a felaján- zelítõleg 50 dollár/részvény. Az Andover.net a lásuk nem igazán találkozik a szótár meghatározásával, tulajdonosa többek közt a népszerû Slashdot.org és ezt a Nyílt Forráskód mozgalomra hagyja.” a Freshmeat.org lapoknak. – Lawrence Aragon, Redherring.com, 2000. január 26. A LinuxMall.com, illetve a Frank Kaspar and Associates szintén az egyesülést tervezgeti. A LinuxMall.com csak- 1999. november nem a kezdetektõl a Linux kiskereskedelmi értékesítésé- „… ha egy dologgal kellene jellemezni a Linux-felhasz- nek vezetõje volt, a Kaspar az egyik legnagyobb hálózat. nálókat, õk a cselekvõk, nem a siránkozók.” A Red Hat immár sorozatban a negyedik alkalommal nyeri – Andy Patrizio, Wired el az InfoWorld Az év terméke (Product of the Year) díját. A Red Hat részvényben, csaknem 700 millióért megvá- sárolja a Cygnust. A Red Hat további beszerzéseirõl is 2000. március felröppenek pletykák, és úgy tûnik, nincs megállás. „A nyílt kód törvénye kimondja, hogy egyetlen alkotó sem kaphat végtelen hatalmat egy nyílt kód felett. Még 1999. december a királyok sem nyerhetnek teljhatalmat. Ha például Linus A VA Linux Systems két átárazás után kilép a piacra Torvalds, a Linux-rendszermag atyja olyan módon próbál- (eredeti értéke 11–13 dollár/részvény volt). A végleges ná félrekormányozni a GNU/Linuxot, amit a közösség IPO-ár 30 dollár/részvény; ez szinte azonnal 300 dollárra többi tagja elutasítana, akkor õk egyszerûen kiszedhet- szökik, majd záráskor 250 dollár körül végez. Ezzel felál- nék a sértõnek talált részeket, és elindulhatnának egy lítja a NASDAQ történetének legmagasabb IPO-emelke- külön úton. Ez a fenyegetés dés csúcseredményét. megköti a királyok kezét „Hûha! Még emlékszem arra, amikor a nagy kérdés az – csak arrafelé vezethetnek, volt: hogyan fogunk ebbõl pénzt csinálni?!” ahová tudják, hogy az emberek követni fogják õket.” – Eric Raymond – Lawrence Lessignek a The American Prospectben 2000. január megjelent „Befektetés, szabályozás és az Internet” A VA Linux Systems bemutatja a SourceForge-t (igaz, címû írásából. a honlap maga már 1999 novemberétõl elkészült és Megjelent a LILO új változata, amely képes túllépni az mûködött). A SourceForge GPL engedély 1024-sávos rendszerindítási határt, ami már évek óta alatt egyben mûködésének kódját is hátráltatta a PC-rendszereket. elérhetõvé tette. Az év végére A legfrissebb Netcraft-felmérés szerint a Web csaknem a SourceForge 12 000 projektnek ad otthont és 92 000 hatvan százalékán Apache fut. bejegyzett fejlesztõje van. Március 21-én, némi késlekedés után, a Caldera Systems A Kínai Népköztársaságban megjelenik a Red Flag nyilvánossá válik. A részvény, amelyet Linux 1.0. 14 dollár/részvény áron ajánlottak, A Transmeta megtöri hosszan tartó hallgatását, és 26 dolláron kezd és 29,44-en zár. Így 110 százalékos bemutatja a világnak, mire készül: a Crusoe lapkára. nyereséget könyvelhet el már az elsõ napon. A Linux Professional Institute bejelenti az elsõ profi „A Caldera egyetlen olyan céget sem ismer, amely Linux-hitelesítõ vizsgalehetõség létrejöttét. nyereséges üzletet hozott volna létre részben vagy A Linuxot sztároló sajtó önti magából az olyan cégek egészében nyílt forráskódú programok alapján.” híradásait, amelyek a Linux részvények sikerét próbálják – Caldera SEC-iratok

24 Linuxvilág Láttuk-hallottuk

«

A Walnut Creek (a Slackware kezelõ létezik, melyeket a Linux és a Free Software anyavállalata) és a BSDi közösségek széles körben használnak: a PostgreSQL és beharangozza egyesülését. A Yahoo! saját tõkés a MySQL, mivel a Debian Free Software irányelveknek (equity investment) beruházásba kezd az új cégnél. és a Nyílt Forráskód irányelveknek egyaránt megfelel- A Motorola Computer Group közzéteszi HA Linux-ter- nek. Továbbá a Progress Software NuSphere néven jesztésének megszületését. Ez a terjesztés azokat a tele- kizárólag a MySQL támogatását célzó új céget alapít. kommunikációs alkalmazásokat célozza meg, amelyek- 2000. július nek igen magas rendelkezésreállásra van szükségük; „Az NDA-khoz (titoktartási nyilatkozatokhoz) kötött üzleti ide értendõk olyan tulajdonságok, mint a menet közbeni világban a Debian nyitott könyv. A feladatnyilatkozatok cserélhetõség (hot-swap capability), illetve az i386- és (mission statements) világában a Debian társadalmi PowerPC-megoldásokon való elérhetõség. megegyezésen alapul. Amikor az üzleti terjesztõk azon Megjelenik az Embedded Linux Consortium (Beágyazott ügyeskednek, vajon hány üzleti programot tudnak bele- Linux Konzorcium). Célja „a hatalmas beágyazott piacon préselni egyetlen Linux-termékbe, a Debian továbbra is elmélyíteni, kiszélesíteni és felgyorsítani a Linux-megol- a programok szabadságának védõbástyája marad – élõ © Kiskapu Kft. Minden jog fenntartva dások terjedését”. Elsõ vezetõje Rick Lehrbaum, ugyanaz bizonyítékaként a tökéletesen mûködõ és használható az ember, aki többek közt a LinuxDevices.com és a operációs rendszernek, minden üzleti kód nélkül megy.” DesktopLinux.com honlapok mögött áll. – Evan Leibovitch, ZDNet Az Ericsson beharangozza Screen Phone HS210 termé- A Sun nyilvánosságra hozza, hogy a StarOffice GPL alatt két, amely tulajdonképpen Linux-alapú érin- jelenik meg. A kódot újraszerkesztik, beépítik a Bonobo tõképernyõs telefon, amelyet levelezésre, és GTK-rendszerbe, és újrahasznosítható összetevõkként böngészésre és egyebekre lehet használni. adják ki. A StarOffice-t szintén átírják, hogy képes Az Ericsson és az Opera Software bejelenti, hogy az legyen néhány nyílt, XML-alapú fájlformátumot használni. Ericsson Linux-alapú HS210 Screen Phone-ja az Opera Az Oracle Linux-alapú internetes eszköze megjelenik a böngészõt fogja alkalmazni. polcokon. 2000. április Napvilágot lát Larry Ellison – régóta tartó, a világ számára A kód beszédesnek ítéltetik. 2000. április 4-én az Egyesült nem Microsoft-rendszereket nyújtani kívánó személyes Államok feljebbviteli bírósága kihirdette döntését Peter hadjáratának – legújabb eredménye, a „New Internet Junger az Exportfelügyeleti szabályozás (Export Administ- Computer” (NIC). Azokat az embereket célozza meg, akik ration Regulations) kérdését illetõen, amely megakadá- csak a Hálózatot kívánják elérni. A termék tulajdonképpen lyozta õt, hogy titkosító algoritmusokat tartalmazó példa- egy (monitor nélküli) 199 dolláros X-terminál. kódokat továbbítson az Interneten. A döntés legfontosabb Megérkeznek az elsõ jelentések, miszerint a Caldera része: „Mivel a számítógépes forráskód a számítógép- esetleg megveszi az SCO-t. Késõbb, 2000-ben a Caldera programozással kapcsolatos információk és ötletek cseré- és a SCO bejelentik a Caldera International kialakítását, jének kifejezõ formája, döntésünk értelmében az Elsõ amely a Caldera létezõ tevékenységébõl és a három kiegészítés (First Amendment) rá is vonatkozik.” SCO-részleg közül kettõbõl alakulna. Andy Tanenbaum BSD felhasználási szerzõdés alatt kiadja Ted Ts'o az új 2.4 állapotlista kezelõjeként (status list a Minix operációs rendszert. Ha a Minix a kezdetektõl maintainer) lép elõ. Ezt a munkát Alan Cox végezte, míg nyílt forráskódú lett volna, a Linux talán meg sem születik. ki nem jelentette, hogy ideje volt „valaki mást keresni a fenntartására”. Ted Ts'o végül válaszolt Linus többszöri 2000. május kérésére, és elfogadta az állapotlista-kezelõi helyet. A SuSE kibocsátja az elsõ, IBM S/390 nagygépeket támogató Linux-terjesztést. „Közel 140 terjesztõcég 2000. augusztus létezik szerte a világon. Úgy gondoljuk, hogy az irányadó A HP, az Intel, az IBM és a NEC bejelentik a nyíltforráskód- öt kivételével valamennyit felvásárolják, kiszorítják a fejlesztõ labor (Open Source Development Lab) megalaku- piacról vagy jelentéktelenségre kárhoztatják. A piacon lását, amely a teljesítményméréshez és kipróbáláshoz osztozó vezetõ cégek jelenleg jól körvonalazható földrajzi számos eszközt elérhetõvé tesz a Linux-fejlesztõk számára. határokhoz kötõdnek. A Red Hat rendelkezik a legna- 2000. szeptember gyobb piaci jelenléttel, és az észak-amerikai piacon is „Mocsok vagyok. Fogalmam sincs, miért gondolják irányító szerepet játszik; Európában a SuSE vezet, Ázsiá- másként az emberek. Pedig úgy gondolják. Az emberek ban a Turbolinux, Dél-Amerikában pedig a Conectiva.” azt képzelik, hogy rendes ember vagyok, pedig a valóság – Keith Bachman, a WR Hambrecht elemzõje a The Red az, hogy áskálódó, megalkuvó mocsok vagyok, akit nem Herring elõrejelzésérõl érdekel, ha belegázol mások lelkébe, és nem hatnak meg 2000. június az elveszett munkaórák, csakis akkor, ha olyasmit Egyes üzleti megfontolások felgyorsítják eredményeznek, amit jobb rendszernek tartok.” a MySQL GPL-alapú szerzõdés alatti kia- – Linus Torvalds, amint éppen megpróbálja megváltoz- dását. Immár két ingyenesen felhasználható adatbázis- tatni a róla kialakult képet

www.linuxvilag.hu 2002. szeptember 25 Láttuk-hallottuk

«

Lejár az RSA-szabadalom, lehetõvé téve az üzleti prog- 2001. június ramok nélküli biztonságos webes vásárlásokat. A Sharp beharangozza Lineo Embedix rendszerén alapuló A Trolltech GPL alá helyezi a Qt könyvtárat, egyszer és linuxos tenyérgépének (PDA) küszöbön álló megjelenését. mindenkorra pontot téve a régóta húzódó, kínos szaba- Az alkatrésziparban tevékenykedõ VA Linux Systems dalom körötti civakodás végére. inkább a SourceForge-ra szeretne összpontosítani. CueCat-fiaskó. A Digital Convergence megpróbálja Késõbb a VA teljes egészében kiejti nevébõl a „Linux” lecsukatni azokat a programozókat, akik Linux-vezérlõt szót, és VA Software Corporation néven indul újra. írtak a CueCat vonalkódolvasóhoz. A cég nagy számban A szerda délután megjelent sajtóhírekben Larry M. terjesztett ilyen ingyenes vonalkódolvasókat, azt várva, Augustin, a VA Linux vezérigazgatója (CEO) a stratégia- hogy az emberek kényszerûségbõl az üzleti programmal váltást logikus lépésnek nevezte és honlappal használják majd õket. A fenyegetés miatt „Megkülönböztetõ erõnk mindig is a programszaktu- a vezérlõt egy rövid ideig valamivel nehezebb volt meg- dásunkban volt – mutatott rá Augustin.” találni a Neten, amit a cég gyõzelemként értékelt, és – Wired gyorsan továbblépett. Ezek szerint csak mi gondoltuk azt, hogy a VA alkat- © Kiskapu Kft. Minden jog fenntartva részgyártó cég volt. 2000. október A Microsoft egy európai hirdetésben azt állítja, hogy a 2001. július pingvinek hamar mutációnak indulnak – a hirdetés rövid Szabadítsuk ki Dmitryt! Dmitry Sklyarov-ot letartóz- idõ alatt nagy népszerûségre tesz szert. tatják Las Vegasban, miután az Adobe panaszt tesz az Advanced eBook Processor miatt. 2000. december A következõ hónapban elítélik a DMCA „Döbbenten fedeztem fel, hogy a Linux telepítése milyen (digitális szerzõi jogi törvény) megsér- egyszerû. Miért? Nos, a világ megváltozott. Többé már téséért és összeesküvésért: a legna- nem kell a telepítés elõtt megértenünk mindent a Linux- gyobb kiszabható büntetés felsõ határa szal kapcsolatban, letöltenünk azt a rengeteg kódrészle- 25 évig terjedõ szabadságvesztés. tet, ami a teljes értékû rendszer futtatásához szükséges, Dmitry védelme a DMCA alkotmánysértõ voltának majd még a „BSW” szabvány elõtti õsrégi csomagolás- elemzésén, a szólásszabadsággal kapcsolatos és technikával összeraknunk õket. Az olyan cégek, mint a jogszolgáltatási kérdéseket feszegetõ tételeken alapul. Red Hat és a Corel, minden nélkülözhetetlen programot Az év hátralevõ részében a vádakat feltételesen ejtik betesznek a termékbe, és a gond (többnyire) a múlté.” – az egy év jó magaviselet és az ElcomSoft tárgyalások – John Schwartz, Washington Post bizonyítékai alapján. Az IBM bejelenti, hogy egymilliárd dollárt szándékozik „Bár az Adobe visszavonta a Dmitry Sklyarov ellen 2001-ben a Linuxba fektetni. felhozott vádakat, tiszteletben tartjuk az esküdtszék és 2001. január a szövetségi kormány döntését, miszerint az ElcomSoft Január 4-én megérkezik a várva várt 2.4.0-s rendszermag. céget pereljük be mint törvényszegõ jogi személyt. Az US Nemzetbiztonsági Ügynökség (National Security Az Adobe szeretne teljes mértékben együttmûködni a Agency – NSA) GPL alatt kiadja a SELinuxot. A SELinux kormányzattal, ahogyan azt a törvény megköveteli.” a hagyományos Unix-szerû jogosultságrendszeren felül – Az Adobe álláspontja egy további biztonsági réteget is nyújt. 2001. november 2001. március A Sharp Electronics Corporation nekikezd a Zaurus San Joséban (Kalifornia állam) megtartják a Linux 2.5 tenyérgép különleges Linux fejlesztõi elõkiadásának, rendszermag-fejlesztõi találkozóját; ez talán a világtör- hogy a szabad programok fejlesztõit erre az új felü- ténelem legteljesebb Linux-magfejlesztõi összejövetele. letre csábítsa. 2001. április 2002. február Az IBM-nek néhány városban „Peace, Love and Linux” Az Avaya, a korábbi PBX és a Lucent vállalkozási rend- (Béke, szeretet és Linux) feliratú graffitijeivel gondjai szerrészlege nyilvánosságra hozza a Linux-alapú PBX támadnak. rendszerek megjelenését. „A Slackware mindig is pénzt hozott a házhoz (melyik „Akadnak néhányan – magamat is közéjük sorolom –, másik üzleti alkalmazásgyártó mondhatja el ugyanezt?), akik úgy gondolják, jó dolog visszatérni a Földre. Semmi csakhogy a BSDi-vel végül a süllyedõ hajón végezzük.” rossz sincs abban, ha az ember pénzt szeretne keresni, – Patrick Volkerding és a Linux nem sokat nyer vele, ha egy bizonytalan alapítvány hátán a földhözragadt világ fölé emelkedik.” 2001. május – mondja Evan Leibovitch a Linux rohanó világáról. A Japánban árusított Sony Playstation Linux-készlet nyolc perc alatt elfogy, annak ellenére, hogy az áru- készletet megkétszerezték. Linux Journal 2002. augusztus, 100. szám

26 Linuxvilág Láttuk-hallottuk

Tudod-e?

Sumith Dhar – 1. A képen Richard M. 2. Ki az a híres kitalált személy, aki a képen 3. E híres személy neve Linux Journal Stallman látható, amint az látható Metacortex nevû cégnél dolgozik? matematikai eredetû. 2002. augusztus, 100. szám

1999-es LinuxWorld Expón a kaliforniai San Joséban átve- szi az IDG Open Source Com- 5. Nézd meg jól a képet! Ha elég ügyes puting díjat. A kérdés: ki az a Sokszor említik együtt a vagy, ki tudod találni, ki is szerepel rajta. két kisgyerek a színpadon? BugTraqkel, az átmeneti tár túlcsordulásáról írt köny- vére pedig klasszikusként 4. A Hollandiában található hivatkoznak. Hogy hívják? Groningeni Egyetemen dokto-

7. Valódi neve Peiter Zatko, de más elnevezé- seken is ismert. Azt beszé- lik, hogy a 2000. februári, Clintonnal való találkozása elõtt egyetlen képet sem 6. Másoddiplomás hallgatóként írt egy kísér- leti programot, mely saját magát terjesztette. lehetett róla találni. A programot az MIT-bõl indí- rált. Tizenkét évet töltött az totta útjára, hogy Eindhoveni Egyetem Számí- ne derüljön ki, tástudományi tanszékén, ahol hogy Cornellben rendszermérnökként dolgo- fejlesztette. zott. Most az IBM Thomas J. Az évkönyvek Watson kutatóközpontjában a programot tevékenykedik, és ha alkalma alkotója után kínálkozna rá, mindent „bebur- nevezték el.

kolna”. Nevezzük meg õt!

Melyik programról van szó, és ki az alkotó?

eiknek. gyerek a meg veszik

8. David Kahn (The Codebreakers) a rene- nem szülõk amerikai az így hogy

9. Minden tartott, attól Namco a ugyanis nevét, szánsz óta azt tartotta a legforradalmibb idõkegyik a megváltoztatták hangzású) hasonló

gondolatnak, legkedveltebb szóhoz trágár egy (mivel miatt rikaiak

uckMannek hívták, de az ame- az de hívták, uckMannek

amin a kérdé- P tileg

ot Japánban erede- Japánban ot játékának, a játék A enni. tesz:

ses személy

PacMannek eredetileg más annyit származik, szlengkifejezésbõl

acMan név a japán „paku-paku” japán a név acMan P A

dolgozott. volt a neve. Mi volt az, és 9. osírást.

A munka, miért hívták úgy? titk kulcsú nyilvános a ték

orábban ismer- orábban k el

amiben egy évekk már õk állítja,

írás apjának tartják – igaz, az NSA azt NSA az igaz, – tartják apjának írás

os- titk kulcsú nyilvános orszerû k A párpból). -Hellman” „Diffie (a , stanfordi ta- 8. Whitfield Diffie Whitfield

e. nárral együtt @stak pontosabban L0pht, of Mudge 7.

, aki a Morris féregrõl ismert. féregrõl Morris a aki , 6. Morris .

tevékeny- T Robert

, a Vim kifejlesztõje. Vim a , 5.

kedett, meg- Mololenaar Bram 4. 4. enema. V Wietse

rofit” címû írásnak. címû rofit” P and un jelent az IEEE Transaction on Information F for Stack the „Smashing

raq-felügyelõ (volt), és õ a szerzõje a szerzõje a õ és (volt), raq-felügyelõ BugT One. Aleph néven más , 3.

Theoryben, és így kezdõdik: „Forradalmi Levy Elias

változások elõtt állunk a titkosírás területén”. Mátrixból. a Anderson) Thomas nevén (teljes Neo 2.

eit. gyermek a magával hozta õ és át adta orvalds T Linus díjat A

Ki ez a személy? 1. Válaszok © Kiskapu Kft. Minden jog fenntartva

www.linuxvilag.hu 2002. szeptember 27 Láttuk-hallottuk

A hónap szakmai tanácsai

Nincs állandó IP-címem, Az elveszett DDS-3 szalag fosztogatói de SMTP-t szeretnék használni HP9000-es gépen, Linux-kiszolgálón (Red Hat 7.2-t Lehetséges internetes levélkiszolgálót mûködtet- – 2.4.9.31SMP rendszermag – futtat) egy HP-UX 11 ni betárcsázós kapcsolaton keresztül? Tudom, alatt írt DDS-3 szalagot próbálok beolvasni. A Linux-ki- hogy a ppp0 IP-címe minden kapcsolódás al- szolgálóban a /dev/st0 eszközön egy Sony SCSI szalagos kalmával más és más. Az MX-bejegyzésnek egység van. A szalag egy nagy Oracle adatbázis export- a levélkiszolgálóra kell mutatnia, és a szol- állományait tartalmazza. A HP gép többé nem érhetõ gáltatómnál a kiszolgáló IP-címét is meg el, feladatom Linuxon újraépíteni az adatbázist. Olvasás- kell adni, bár az a következõ kapcsolódás- nál akár tar -tvf /dev/st0-t, akár tar -xvf kor nem lesz érvényes. Helyben kell DNS-t /dev/st0-t használok, mindig hibaüzenetet kapok: futtatnom, vagy használhatom a szolgálta- Input/Output error at the beginning of the tape, error tó DNS-ét? Nemrég olvastam Marcel Gag- is not recoverable, exiting now. Miért? né írását az otthoni és kisirodai levélkiszol- Adrian Manship, [email protected] gálókról, mégis úgy érzem, nem állt össze teljesen a kép. A Linux Journal honlapján Két szalagos meghajtóval kapcsolatos dolgot kell ellen- Daryl E. Murray, [email protected] számtalan gond megoldá- õrizned. Elõször is a DDS-meghajtók a vas szintjén támo- sához találhattok további Betárcsázós kapcsolaton keresztül is lehetséges SMTP- gatják a tömörítést, talán ez be volt állítva a HP-UX-nál, segítséget. A Sunsite kiszolgálót futtatni, és úgy állítani be a DNS-t, hogy de a Linuxnál nem. Ha ez a beállítás nem egyezik, gon- tüköroldalait, a gyakran minden IP-címváltáskor frissüljön, de hidd el, nem ezt dok lehetnek a szalag beolvasásával. feltett kérdéseket és az akarod. Ha nem lehet UUCP-t használni, ami a te eseted- Másodszor, bár a tar eléggé elterjedt alkalmazás, talán egyéb útmutatásokat a ben helyes megoldás lenne a levelek átirányítására, mégsem tar-ral készítették a szalagot. A szalag létre-  www.linuxjournal.com használj Fetchmailt a levelek letöltésére (az UUCP elég hozására használt Oracle program talán a saját belsõ honlapon olvashatjátok el. régi és a rendszergazdák már nem nagyon ismerik, való- formátumában írja és olvassa a mentéseket. Az állo- A rovatban közzétett színûleg internetszolgáltatód sem támogatja). Ha több mány egy kis darabjából állapítsd meg, hogy tényleg válaszokat Linux-szakértõk postafiók leveleit kell letöltened, használd szolgáltatód tar-ról van-e szó. Add ki a kis csapata készítette el. spoolját, ahol minden neked szóló levél egy leveleslá- dd if=/dev/st0 of=/tmp/tape bs=512 További kérdéseiteket dában van; ezt szedd le a Fetchmaillel, és válogasd szét count=16 parancsot – a bs után meghajtódnak meg- szívesen fogadják az Envelope-To: mezõ alapján vagy aszerint, amit a szol- felelõ blokkméretet írva, és akkora count értéket hasz- (angol nyelven) a gáltatód az eredeti Envelope-To tárolására használ. nálva, amely a gyors betekintéshez már elegendõ számú  www.linuxjournal.com/ Marc Merlin, [email protected] blokkot eredményez. A példa 8 Kb-et olvas be a szalagról. lj-issues/techsup.html Lehet, hogy maga a szalag hibásodott meg. Ha ez a A Fetchmailt csak akkor tudod leveleid letöltésére hasz- címen, ahol csak egy helyzet, használj hexaszerkesztõt vagy olyan szövegszer- nálni, ha szolgáltatód minden levélnél az Envelope-To: kérdõívet kell kitöltenetek, kesztõt, amelyik az ASCII karaktertábla felsõ felében el- fejlécsort használja. Olvasd el az errõl szóló figyelmez- de a [email protected] címre helyezkedõ elemektõl sem akad ki, és vizsgáld meg a tetést a  http://www.tuxedo.org/~esr/fetchmail/ levelet is írhattok. A levél szalag tartalmát. Az általános formátum szerint minden fetchmail-man.html#25 címen. tárgyában szerepeljen állománybejegyzés az állomány nevével kezdõdik, ezt Ha betárcsázós kapcsolatodhoz állandó IP-cím jár, és a „BTS” kulcsszó. követi a fejléc mindenféle adattal (például méret és jogo- szolgáltatód hajlandó a leveleidet ideiglenesen tárolni, sultságok), majd maga az állomány következik. a kapcsolat felépülése után az SMTP ETRN parancsát Chad Robinson, [email protected] kell kiadnod. A Sendmailben létezik hozzá egy segédprogram. A legegyszerûbb az lenne, ha vennél, kölcsönkérnél, Don Marti, [email protected] kerítenél egy ugyanolyan gépet, és azon állítanád vissza Az újonnan telepített Linux nem indul az adatokat. Christopher Wingert Megpróbáltam telepíteni a Red Hat 6.2-t az egyik , [email protected] gépemre. A telepítés rendben lezajlott. Eltávolítottam a Egykor én is DDS-szalagokat használtam HP-UX alatt, és telepítõlemezt és újraindítottam a gépet. Ezután folyton a legtöbb esetben a cpio segédprogram segítségével azt a hibaüzenetet kapom, hogy nem rendszerlemez van készítettem mentéseket. Ne feledd, hogy a cpio bonyo- a meghajtóban, és cseréljem ki. lult alkalmazás sok kapcsolóval, ezért olvasd el a súgó- Tim Dreas, [email protected] oldalát (man cpio), és játssz el kicsit a beállításokkal! Úgy tûnik, hogy sem a LILO, sem a GRUB rendszerbe- Légy óvatos, és véletlenül se írd felül a szalag tartalmát; töltõ program nem települt megfelelõen. Ha a telepítés a legjobb, ha fizikailag írásvédetté teszed. A következõ címen egy bevezetõ jellegû cpio leírást találsz: során készítettél vészindító lemezt (természetesen készí-  tettél, nem igaz?), akkor annak segítségével elindíthatod http://www.lns.cornell.edu/public/COMP/info/cpio/ a gépet. Amikor a Linux parancsértelmezõ beviteli sora cpio_2.html. Felipe E. Barousse Boué (#) megjelenik, írd be a lilo -v parancsot, amely a , [email protected] rendszerbetöltõt megpróbálja a merevlemezre írni. Linux Journal 2002. augusztus, 100. szám Felipe E. Barousse Boué, [email protected] © Kiskapu Kft. Minden jog fenntartva

28 Linuxvilág Láttuk-hallottuk

Új termékek

Linux USB 2.0 meghajtó BladeRack RS-1100V Eclipse Database Center A Cypress Semiconductor kiadta az A RackSaver mai ajánlata a kiszol- A Linux NetworX bejelentette az SL811 HS beágyazott eszközvezérlõ- gálók piacán: a BladeRack (szaba- Eclipse Database Clustert. A termék jéhez való USB meghajtóprogramot, dalmi oltalom alatt). A BladeRack az Oracle9i Real Application ennek segítségével a fejlesztõk beá- akár 66 RS-1100RV RackBlade-et Cluster rendszeren alapul. gyazott alkalmazásaikat – például tartalmazhat, amelyek darabonként A felhasználásra kész rend- a mobiltelefonokat, a PDA-kat és a legfeljebb két 2,4 GHz-es Xeon pro- szer méretezhetõ, megbíz- hálózati eszközöket – USB-képessé- cesszornak adhatnak helyet. Ez egy ható és magas elérhetõ- gekkel ruházhatják fel. Mivel az 210 cm magasságú hordozható séget biztosít. Alkalmas SL811HS vezérlõ memóriába leképe- házban összesen 132 processzort adattárház üzemeltetésére, zett eszköz, a meghajtó lehetõvé jelent. AMD-alapú processzorok online tranzakciókezelésre teszi, hogy a Linux-gazdaverem az használata is lehetséges. A Blade- és adatkezelõ alkalmazások USB-támogatást anélkül nyújtsa, Rack 66 GB/s DDR ECC PC-2100 számára. A kiszolgálótelep hogy tudatában lenne a nem OHCI/ Corsair memóriát tartalmazhat több Xeon procesz- UHCI-típusú vezérlõ jelenlétének. Supermicro's P4DPR-6GM+ alap- szorra épül, Dot Hill adat- Az SL811HS gazdavezérlõ két sze- lapon. Mindezeken felül a BladeRack tárolókat használ, a cso- repet ellátó kapuval rendelkezik, könnyen méretezhetõ és elérhetõ, a mópontok közti összeköt- amely USB-gazdaként és USB-esz- ventilátorok, hálózati alegységek és tetés nagysebességû közként is mûködhet, továbbá támo- a kiszolgálók maguk is menet közben Gigabit Fiber Channelen gatja a gyors és az alacsony sebes- cserélhetõk. A mindenhol kapható, valósul meg. Az Eclipse ségû USB-eszközöket. A meghajtó- szabványos elemeket használó egybeépül az ICE telepke- program forráskódja a következõ BladeRack a számításigényes kuta- zelõ eszközökkel, így távol- címrõl tölthetõ le: tásokat végzõ központokat és egye- ról nyomon követhetõ a rendszer  http://www.cypress.com/press/linux. temeket, valamint a 3D-s alkalma- áramellátásának állapota, mérhetõ Adatok: Cypress Semiconductor zásokat, és más nagy mennyiségû és lekérdezhetõ a hõmérséklete, Corporation, adatkezeléssel járó feladatokat valamint valós idõben az egész  http://www.cypress.com futtató felhasználókat célozza meg. rendszer figyelemmel kísérhetõ. Adatok: RackSaver, Inc., Adatok: Linux NetworX, Tetra Platform e-mail: [email protected],  http://www.linuxnetworx.com Az Equator Technologies Tetra elne-  http://www.racksaver.com vezésû gépe kis helyigényû, könnyen Cobalt RaQ 550 bõvítetõ, így Xcelerix Embedded IMDB A Sun Cobalt RaQ 550 egy egység alapul szolgálhat A Xcelerix bejelentette a cég hiva- magas, szekrénybe szerelhetõ kiszol- egyéb eszközök, talos megalakulását és a korábban gálókészülék, amelyen az elõre tele- mint például ERDB néven ismert Xcelerix In- pített programok és eszközök soka- értelmes Memory Database megjelenését. sága azonnal lehetõvé IP-kamerák, digitális képmagnók A Xcelerix IMDB rendszere elõre teszi az e-mail, vagy IP-alapú internetes videotováb- meghatározott lekérdezések alapján webkiszolgáló vagy más bító készülékek gyors fejlesztéséhez. összeköti a megfelelõ adatbá- internetes szolgáltatás azonnali A választható elemek között megta- zistáblákat, és bináris fát használ az üzembe helyezését. Az 1,26 GHz-es lálható a Tetra processzorkártya, egy indexeléshez. Ez lehetõvé teszi a processzorra és akár 2 GB memó- nyílt eszközcsatoló felület, amely szûk keresztmetszetek felszámolását, riára épülõ, 80 GB RAID 0-ra és 1-re további eszközök csatlakoztatását így a rendszer másodpercenként képes merevlemezzel rendelkezõ ké- teszi lehetõvé. A minden processzor- akár egymillió tranzakció kezelésére szüléket olyan kis- és középes mé- kártyán megtalálható közös alkatré- képes (SQL mérési eredmény). A kis retû vállalkozások számára tervezték, szek, például a BSP lapkacsalád, memóriaigény és a memóriában amelyek internetes szolgáltatásaikról a memóriaalrendszer és a hálózati tárolt adatok 20:1 arányú tömörítése saját maguk szeretnének gondos- csatoló elférnek a 2,75 hüvelyk×4 a Xcelerix IMDB-t alkalmassá teszik kodni. Az elõre telepített programok hüvelyk méretû eszközön. A termék beágyazott, válaszidõre érzékeny között megtalálható az Apache web- 64 MB SDRAM-mal és 4 MB flash- vagy valós idejû rendszerekben való kiszolgáló, az Apache Tomcat, a memóriával rendelkezik, továbbá felhasználásra. A termék több 32- és Sendmail, a Bind DNS-kiszolgáló, analóg hangkimenetet, S/P-DIF hang 64-bites rendszerre elérhetõ. a JSP, az SNMP-ügynök, és a Legato ki- és bemenetet és 10/100Base-T A Xcelerix IMDB az SQL, a TCP/IP, NetWorker, valamint Knox Arkeia ethernetet tartalmaz. Támogatja a az IEEE 802.3 és a POSIX mellett mentõügyfelek. Linux- és a VxWorks-rendszereket. lemezalapú adatbázisrendszerekkel Adatok: Sun Microsystems, Inc., Adatok: Equator Technologies, Inc., is egyesíthetõ.  http://www.sun.com/cobalt e-mail: [email protected], Adatok: Xcelerix Corporation,

 http://www.equator.com  http://www.xcelerix.com Linux Journal 2002. augusztus © Kiskapu Kft. Minden jog fenntartva

www.linuxvilag.hu 2002. szeptember 29 Láttuk-hallottuk

Köznép–Hollywood 2:0

A szórakoztatóipar és a technológia küzdelmének kez- jesztésének korlátozása céljából. dete messzire nyúlik vissza. 1984-ben Jack Valenti, A szervezet a Stanford Egyetemen található, ahol szoro- az MPAA elnöke így nyilatkozott: „A videomagnó olyan san együttmûködik az egyetem internetes és társadalmi az amerikai filmgyártók és az amerikai közönség központjával (Center for Internet and Society). Ezenkívül számára, mint a bostoni fojtogató a házban egyedül „nagylelkû támogatást” kap a Center for the Public tartózkodó nõnek.” A jelenlegi bizalmatlanság gyökerét Domain szervezettõl. Ez utóbbi korábban a Red Hat azonban egészen 1908-ig vissza lehet vezetni, Center nevet viselte, és a Duke Egyetem ad neki ott- amikor is a zenei kiadók azt állították, hogy a hont. Elnöke Bob Young, a Red Hat alapítója. gépzongorák tekercsei megsértik a zenei szerzõi A Creative Commons nem lobbizik a szórakoztatóipar jogokat. A pert ugyan elvesztették a Legfelsõbb ellen, hanem kézzelfogható megoldásokat dolgoz ki Bíróságon, de az ipar rábírta a Kongresszust, hogy a szellemi termékek eredeti forrása, azaz a mûvészek vezessék be az úgynevezett mechanikus enge- számára. A tanácskozáson tartott beszédében Lessig délyt, amely megszabott szabadalmi díj ellenében a következõket mondta: engedélyezte a megjelente- „A törvényben említett tartalom az enyém, tehát nekem tett zenemûvek másolását. kellene megszabni, hogy milyen feltételek mellett teszem 1931-ben néhány zene- elérhetõvé. A szerzõ szándékait a tartalom természetét szerzõ pert indított, mert illetõen a számítógép által olvasható formában kell meg- szerintük az egyik szálloda adni. Nem kellene megosztani a világot a felügyelet és rádióállomása megsértette az elérhetõség hívei között. Azoknak is megoldást kell szerzõi jogaikat, amikor leját- találni, akik – egyéni szinten – mindkettõt pártolják.” szotta az általuk írt zenét. A Creative Commons készülõdése közben komoly A zeneszerzõk maradtak alul. veszély fenyegette az internetes rádiózást, amely több Az 1960-as években a könyv- ezer állomást számlál (sokan közülük ügyesen Linuxot kiadók elvesztették a fénymá- és más nyílt forrású programokat használnak). A 2002 solókkal szemben folytatott februárjában benyújtott CARP-javaslat nyomán az adók pert, de a Legfelsõbb Bíróság döntése többsége valószínûleg csõdbe ment volna. Amennyiben lehetõvé tette a kiadott mûvek elfogadták volna, a CARP 2002. május 22-tõl vált volna „szerzõi jogilag megengedett felhasz- kötelezõ érvényûvé. Május 21-én azonban a Kongresz- nálását”. A hatvanas évek végén és a hetvenes évek szusi Könyvtár vezetõje kiadta „a testület határozatát elején a mûsorszórók a Community Antenna Television elutasító rendeletet”, amely egy hónap múlva végleges- (CATV) kábeltelevíziót támadták (a moziipar szintén a sé vált. A rádióállomások és az õket támogató csopor- pereskedõk között volt, és a színházi alkalmazottakat tok, például a SaveInternetRadio.org megkönnyebbülten is rávették, hogy „Harcolj a fizetõs tévé ellen!” feliratú lélegeztek fel. kitûzõt viseljenek). A Legfelsõbb Bíróság döntése a két Ezzel az ügy azonban még távolról sincs megoldva. ügyben megnyitotta az utat a mai kábeltelevíziózás A CARP a digitális szerzõi jogi törvény (Digital Millen- elõtt. A fentiekbõl látható, hogy ez a háború már igen- nium Copyright Act) származéka, amely változatlanul csak régóta tart. érvényben van. Ennél is fontosabb, hogy a Commons Öröm az ürömben, hogy a technológia két újabb gyõzel- alapötletét sem értik kellõképpen – különösen kormány- met aratott azok felett, akik irányítani akarják: az egyiket körökben nem, ahol a szórakoztatóipar továbbra is a Creative Commons elindítása jelenti, a másikat pedig hatalmas befolyással bír. az, hogy az amerikai Kongresszusi Könyvtár vezetõje Ismét Larry Lessiget idézem: „Csak akkor juttathatjuk visszautasította a Copyright Arbitration Royalty Panel érvényre ennek a területnek a fontosságát, ha a hét- (CARP) javaslatát, amely szigorú feltételeket és magas köznapi emberek is megértik. Ez pedig mindaddig nem jogdíjat szabott volna ki az internetes rádióállomásokra. következik be, amíg a szakértõk el nem magyarázzák A Creative Commons ( http://www.creativecommons.org) a politikusoknak, hogy a technológiába beépített szervezet az O’Reilly Emerging Technologies tanácsko- értékek milyen jelentõsek a szabadság és az alkotóerõ zásán alakult meg a kaliforniai Santa Clara városában, szempontjából.” május 16-án, több hónapon át tartó, csendes elõkészü- letek eredményeképpen. Vezetõje, Lawrence Lessig a Linux Journal 2002. augusztus, 100. szám stanfordi jogi egyetem professzora, aki két nagy jelen- tõségû mû (Code and Other Laws of Cyberspace, The Doc Searls Future of Ideas) szerzõje. Mindkét írásában elmarasztalja ([email protected]) a Linux Journal a szórakoztatóipart, amiért folyamatosan a saját érde- szerkesztõje és a Cluetrain keik szerint próbálják alakítani a szerzõi jogi törvényt, és Manifesto társszerzõje. az Internet kialakult szokásai helyett egy szigorúan sza- bályozott rendszert akarnak bevezetni a „tartalmak” ter- © Kiskapu Kft. Minden jog fenntartva

30 Linuxvilág Láttuk-hallottuk

Méltányos használat

A szerzõi jogi törvény (17 U.S.C. § 107) méltányos mûvek, mint a szépirodalom terjesztését. Amennyiben használatról szóló elvének meghatározása a nyelvi megfogalmazás másolását a mögöttes tény- nehezebb, mint gondolnánk. anyag terjesztése érdekében engedélyezni kell, a másolás könnyebben igazolható. Idõrõl idõre olyan esetekkel találkozom, amikor valaki a 3. A felhasznált rész mennyisége és fontossága a mû méltányos használat (fair use) elvére hivatkozva sérti egészéhez viszonyítva. A méltányos használat kevés- meg valaki másnak a szerzõi jogait. A „méltányos” szó bé helytálló, ha egész mûveket vagy legértékesebb hétköznapi értelemben sajnos olyan jelentésekkel is bír, részeiket másoljuk. amelyek különböznek a „méltányos használat” kifejezés 4. A használat hatása a mû feltételezhetõ piacára vagy jogi értelmétõl. értékére. Ha a mû másolása megakadályozza a szerzõi A törvény nem rendelkezik arról, hogy azokat a felhasználói jog tulajdonosát abban, hogy haszonra tegyen szert engedélyeket, amelyeket visszataszítónak találunk vagy belõle, még abban az esetben is, ha csupán a lehet- erkölcsileg elítélünk, figyelmen kívül hagyhassunk, ameny- séges haszonról van szó, a másolás kevésbé igazol- nyiben ez méltányos. Egy bíróság a következõképpen írta A jogi tanácsadás ható. Ez a szempont a méltányos használat oldalára le a méltányos használat elvének alkotmányos alapját: megfelelõ kerete egy billentheti a mérleget olyan esetekben, amikor a mûnek jogász-ügyfél A méltányos használat kiváltságának alapvetõ igazolása nincsenek más ismert példányai, amikor a tulajdonos kapcsolat, amely egy abban az alkotmányos szándékban fedezhetõ föl, amely személye nem azonosítható, vagy amikor nincs olyan adott helyzet minden a szerzõi jogi védelmet egyáltalán lehetõvé teszi, tudni- valós piac, amely a mû értékesítését lehetõvé tenné. tényállását figyelembe illik „a tudomány és a hasznos mûvészetek haladásának Önmagában e szempontok egyike sem meghatározó, veszi, és a helyileg támogatására” (USA Alkotmány, I. Cikk, 8§/8)... ennek a bíróságoknak „a különbözõ érdekek figyelmes mér- érvényes jognak felel a célnak a megvalósítása érdekében „a szerzõi jog meg- legelésével” kell elemeznie õket (Financial Information, meg. Bár ezt a cikket sértésének ügyében eljáró bíróságoknak idõnként a szer- Inc. kontra Moody's Inv. Serv., 751 F.2d 501 (2d Cir. egy jogász írta, a zõi jog birtokosának legmagasabb anyagi megtérüléshez 1984)). Ehhez hasonlóan, amikor valakinek meg akarjuk benne foglalt adatok fûzõdõ érdekét alá kell rendelnie annak a magasabb sérteni a szerzõi jogait, az „érdekek figyelmes mérlege- nem helyettesíthetik rendû közérdeknek, ami a tudományok, a mûvészet és lését” magunknak is el kell végeznünk. Fontoljuk meg, az esetre szabott, az ipar elõremozdításához fûzõdik” – Rosemont Enters. hogy célunk elég hasonló-e a törvényben felsorolt célok bejegyzett jogásztól kontra Random House, Inc., 366 F.2d 303 (2d Cir. 1966), egyikéhez, és vegyük sorra a szempontokat, megvizs- származó tanácsadást. cert. denied, 385 U.S. 1009 (1976). gálva, hogy az adott szempont kedvez-e nekünk. Ha nem E szerint a megfogalmazás szerint a méltányos használat gyõzõdtünk meg róla, hogy átjutottunk a méltányos kiváltság, nem csupán védekezés. Azt a jogunkat, hogy használat rostáján, ne sértsük meg a szerzõi jogokat. szerzõi joggal védett mûveket bizonyos célokra felhasz- Amennyiben nyílt forrású programokat használunk, mint náljunk, az alkotmánynak ugyanaz a mondata biztosítja, amilyen a Linux, a méltányos használat kérdése általá- amely egy szerzõ számára lehetõvé teszi, hogy mûvét ban nem merül föl. A nyílt forrású programok terjesztési szerzõi jogi védelem alá helyezze. engedélye mindenkinek mindenhol mindenféle elképzel- A méltányos használat elvét a kongresszus törvénybe hetõ célra biztosítja a program másolásának, módosí- iktatta (Copyright Act, 17 U.S.C. § 107), hogy világossá tásának, terjesztésének (eladásának vagy ingyenes tegye, mely felhasználási módok tekinthetõk méltányos- továbbadásának) a jogát, valamint a hozzáférést a prog- nak. A törvény a következõ felsorolást tartalmazza: ramkódhoz, amely mindezt lehetõvé teszi. A szerzõi jog „olyan célokra, mint a mûbírálat, a magyarázat, a híradás, birtokosa mindenkit felhatalmaz, így nem szükséges a az oktatás (beleértve tantermi használatra több másolat méltányos használat elvére hivatkoznunk. Megint egy készítését), a tudományos célok vagy a kutatás”. szempont, amely szerint a szabad és nyílt kódú progra- Amikor az „olyan célokra, mint” kifejezést látjuk egy mok jobbak a jogdíjas programoknál. Jogdíjas program jogszabályban, vitára készüljünk fel. A törvényhozók esetében gyõzõdjünk meg róla, hogy jó érveink vannak nyilvánvalóan nem sorolhatták föl az összes lehetséges a felhasználás méltányossága mellett, ha bármi olyat célt, tehát a kérdés az, hogy milyen további célok felel- teszünk, amit a felhasználói engedély nem tesz lehetõvé. hetnek meg a mintának? A kongresszus négy szempon- A szabad és nyílt forrású programok esetében élvezzük tot adott meg annak megállapítására, hogy a felhasz- a teljes körû méltányos felhasználási jogot. nálás az adott esetben méltányosnak tekinthetõ-e: Linux Journal 2002. augusztus, 100. szám 1. A felhasználás jellege és célja, ideértve azt is, hogy a felhasználás üzleti jellegû vagy nonprofit oktatási célú. Lawrence Rosen A híradás, a tudományos kutatás és az oktatás pél- (www.rosenlav.com) magángyakor- dául az elõnyben részesített méltányos felhasználás latot folytató jogász. A Nyílt Forrás körébe tartozik. Az üzleti célú felhasználás nem Kezdeményezés ügyvezetõ támogatott. igazgatója és jogtanácsosa 2. A szerzõi jog által védett mû jellege. A törvény álta- ( www.opensource.org). lában szükségesebbnek tartja a tényeken alapuló © Kiskapu Kft. Minden jog fenntartva

www.linuxvilag.hu 2002. szeptember 31 Vezérfonal

A 100. szám

A dotcomkorszak elõtt nem létezett a „Linux-cég” fogalma; késõbb viszont nehéz volt olyan nagy számítástechnikai céget találni, amelyik ne használt volna Linuxot, vagy a kínálatában ne szerepeltek1 volna Linux-alapú00 termékek.

anapság a Wall Street Journal leghangsúlyosabb • További cégek, például a Kerbango és a Cobalt nagyobb M szava a Linux. Holtversenyben áll a Unixszal, Win- cégek tulajdonába kerültek – ezeknél a 3Com és a Sun volt dowszal, a Checkbooksszal, a Rocksszal és a DB2- a felvásárló. vel. Az újság piaccal foglalkozó részében mind együtt szerepel- • A Linux kikerült mások tevékenységének középpontjából. nek az elsõ olyan oldalon, amely a reklámoknak van fenntartva. A VA Linux cég a nevét VA Software-re változtatta, pedig

© Kiskapu Kft. Minden jog fenntartva Nem túlzok, ha azt állítom, hogy a Linux sikertermék lett a egykor olyannyira összefonódott ezzel az L betûs szóval, rendszerszintû megoldásokat szállító cégek berkeiben, és a hogy hétszámjegyû összeget fizetett a Linux.com tarto- folyamat itt nem ér véget. Egy évvel ezelõtt a Linux csak a mánynévért. webkiszolgálók területén volt sikeres, ám most terjeszkedik. • A Corel, miután megpróbált a Linux köré a felhasználókra A HP szerint legutóbbi eladási mutatóik azt jelzik, hogy a épülõ üzletet teremteni, megszabadult a Linuxtól és egyéb Linux növekvõ jelenléttel bír a pénzügyi szolgáltatások piacán. nehezékektõl, hogy a felszínen tudjon maradni. A Windows még mindig uralkodó helyzetben van, de vajon • A Linuxcare még él, bár az alapítói nélkül, akik a Sputnik meddig? Néhány éve még maga a kérdés is nevetséges lett névvel kerültek be a hírek közé – ez egy új cég a mobil volna! Bár a Microsoft háborút látszik hirdetni a Linux és a nyílt vezeték nélküli hálózatok piacán. forrású programok ellen, a fegyver visszafelé sül el. A cég állító- • Más cégek – például a Boxx (nem azonos a texasi Boxx lag megpróbálta meggyõzni az Egyesült Államok Nemzetvédel- Technologies-zel), ami Linux/Windows hibrid hordozható mi Minisztériumát, hogy a nyílt forrású programok mind a biz- gépet készített (a prototípusig eljutott) – egyszerûen eltûntek. tonságra, mind pedig a cég szellemi tulajdonára veszélyt jelen- • Két, egymással kapcsolatban álló piaci kísérlet, a CoSource tenek. Eközben a Védelmi Minisztérium a MITRE Társasággal és a SourceExchange érdeklõdés hiányában csendben jelentést készíttetett, amelyben 249 olyan esetet határoznak meg, megszûnt. amikor nyílt forrású eszközöket lehet használni. Ilyen többek • Természetesen sikertörténetek is léteznek. A Linux-alapú között a Hírszerzési Osztály webportálja, vagy az USA hadse- TiVo a nagy érdeklõdést kiváltó digitális videokamera-üzlet regében és légierejében használt hálózati biztonsági programok. rokon értelmû kifejezése lett. A Borland, megszabadulva a Ahol a Linux mint operációs rendszer nem jöhet számításba, felejthetõ Inprise névtõl, jó üzletet csinált többfelületen futó új ajtókat nyit más ingyenes és nyílt Unix-változatoknak, linuxos fejlesztõ eszközével, a Kylixszal. pédául a BSD-nek, amelyet beépítettek a Darwinba, az Apple • A SuSE ugyan csökkentette mûködési területeit, Európában OS X nyílt forrású kezdeményezésébe. Ezek az események továbbra is vezetõ a különbözõ Linux-változatok terén, és nagymértékben növelték a világ Linux-barát PC-inek és kiszol- világviszonylatban is erõs. A Caldera elég jól tartja magát, gálóinak számát. csakúgy, mint a Turbolinux. A nagy gyõztes egy olyan cég, 1993-ban Phil Hughes felvett engem egy levelezõlistára, amely amelytõl nincs üzleti kártyám: a Red Hat, mely továbbra is egy ingyenes programokkal foglalkozó magazin lehetõségeit büszkén lengeti a pingvines zászlót, és a messze legnép- derítette fel. Miután egy ideig csak ötleteket ütköztettünk, Phil szerûbb Linux-változat készítõje. hirtelen bejelentette, hogy saját kis cége, az SSC útjára indít Mi itt, a Linux Journalnál együtt vészeltük át a nehéz idõket a egy lapot, ami egy 21 éves finn srác szellemi gyermekével, talpon maradó linuxos cégekkel. Ami tovább lökött minket, az a Linuxszal foglalkozik. Azt hittem, elment az esze. De Phil a Linux folyamatos menetelése volt afelé, amit Linus Torvalds ösztönösen ráérez olyan dolgokra, amelyeket mások nem is félig viccesen „világuralomnak” nevezett. látnak. Néhány évvel késõbb olyan KDE alatt futó irodai alkal- A Linuxnak végre sikerült, amire a Unix-rajongók évtizedek mazásokat mutatott nekem, amelyek kísértetiesen hasonlítottak óta vágytak: az operációs rendszer elterjedtté vált. Ma az arra a látványra, amely Windows alatt fogadja az embert – azzal egyetlen komoly jövõvel rendelkezõ Unix-rendszer ingyenes, a különbséggel, hogy ingyenes volt és nyitott. Annyira elbû- nyitott és készen áll a fejlesztésre – bárki beugorhat és segíthet. völt, hogy kaptam az ajánlatán és csatlakoztam a magazinhoz. Ezt nevezem én sikertörténetnek. Ez 1999 elején történt, akkortájt a tõkebefektetések még nagy lendülettel folytak, és a Linuxnak a befektetõkre gyakorolt Linux Journal 2002. augusztus, 100. szám erõteljes hatása a Viagráéhoz volt mérhetõ. Néhány hónapig nem volt hiány Linux-milliárdosokban. Nemrégiben nagytakarítást végeztem üzleti kártyáim között, Doc Searls de mielõtt kidobtam volna õket, helyzetképet készítettem. ([email protected]) a Linux Journal szerkesztõje Érdekes történet bontakozott ki: és a Cluetrain Manifesto társszerzõje. • Néhány cég felhagyott az üzleti tevékenységgel. Ebben a cipõben járt a Linux Laptops, a Rebel.com, a Loki, az Eazel és OpenSales, amely az Xelerate nevet vette fel, mielõtt megszûnt.

32 Linuxvilág Töprengõ

Halló, beágyazottrendszer-fejlesztõk!

egyétek meg ezt az újságot! Lapunkban most már egy olyan rész is megtalálható, amely aVbeágyazott rendszerek Linux alatti fejlesztésével foglalkozik, és részletes tájékoztatást tartalmaz az eszköz- vezérlõk kódolásáról és más olyan té- mákról, amelyeket az asztali rendszerek fejlesztõi is hasznosítani tudnak. Akiket elsõsorban a beágyazott rend-

szerek fejlesztése érdekel, talán felteszik © Kiskapu Kft. Minden jog fenntartva a kérdést, hogy miért kezdjék el most olvasni a Linux Journalt, amikor eleve tudják, hogy tele lesz nem beágyazott rendszerekrõl szóló témákkal is. És ugyan miért érdekeljék a hagyományos Linux-programok fejlesztõit a beágya- zott rendszerekrõl szóló cikkek? Az, ami nagyon hasznos eszköznek is tûnik. 1. A beágyazott rendszereknek nincs õket érdekli, amúgy sem fog egy linuxos Mesterként és szolgaként (master-slave) szükségük rendszergazdákra. órán futni, nem igaz? is képes mûködni, ami azt jelenti, hogy 2. Az alkalmazás már fel van rájuk A rövid válasz az, hogy ebben a hónap- a gépedhez egy PDA-t csatlakoztathatsz, telepítve. Nem kell további ban indul útjára Greg Kroah-Hartman amellyel összhangba hozhatod az állo- programokat telepíteni, hogy képes Beágyazott rendszerek címû rovata mányaidat, majd a PDA-hoz USB-esz- legyen a feladata elvégzésére. az eszközvezérlõkrõl. Greg foglalkozik közöket csatlakoztathatsz, például ege- 3. Gyorsan válaszol. Sok beágyazott a Linux USB és PCI Hot Plug karbantar- ret vagy billentyûzetet. Próbáld csak ki! rendszernél alapkövetelmény a valós tásával és támogatásával, és már régeb- Ti, akik asztali gépként vagy kiszolgá- idejûség, de még ha nem is az, akkor ben is nagyszerû cikkeket írt a Linux lóként mûködõ Linuxra fejlesztetek, sem kényszerítenek rá, hogy olyan Journalba és az Embedded Linux Jour- miért kényszerítitek állandó üldögélésre ostobaságokra kelljen várnod, mint nalba. A Beágyazott rendszerek rovat a felhasználókat, és arra, hogy kéztõcsa- az fdisk. kéthavonta jelenik meg, ami azt jelenti, torna-szindrómától szenvedjenek, 4. Közvetlenül a való világgal áll kap- hogy átlagosan havonta nyújtunk segít- amikor kényelmes beágyazott eszközö- csolatban, nem pusztán a hálózattal séget, és félhavonta hozunk le olyan ket használhatnának ott is, ahol a vagy a kéztõcsatornát pusztító bil- rendszermagínyencségeket, amelyeket valódi munka (vagy a szórakozás) lentyûzettel és egérrel. sehol máshol nem találhattok meg. zajlik? Vagy ami még jobb, miért nem 5. Nem lehet vele vitatkozni! Nem érez Most, miután már elküldted az elõfize- hagyjuk ki a felhasználót teljesen az sajnálatot, bánatot vagy félelmet! tési lapodat, eláruljuk a hosszú választ unalmas részekbõl, és engedjük, hogy 6. És soha, de soha nem áll le, amíg is, vagyis azt, hogy a Linux és általában a gép foglalkozzon a való világgal? csak meg nem halsz! a szabad programok természetüknél Programjaitok hatékonyabb munkát Várjunk csak, az utolsó két pont a fogva beágyazhatóak. A beágyazható végeznek „beágyazott” rendszerekben, Terminátorra vonatkozik, és az összes projektek eleve olyan programokon mint a kiszolgálószobában vagy az beágyazott rendszerre nem áll. De a indulnak fejlõdésnek, amelyek más irodában. Ugyanez vonatkozik a web- lényeg érthetõ – a beágyazott rend- rendszerre szabadon átvihetõk, testre- lapokra is. Próbáljátok csak ki egy szerek már most olyanok, amilyenné a szabhatók és árusíthatók. Ha nem Zauruson még ma! programok válni akarnak, ha felnõnek, hiszed, figyeld meg a sokat dicsért, kife- De térjünk vissza egy kicsit arra, mi is és a „hagyományos” Linux ugyanebbe jezetten „média operációs rendszernek” a csízió. A beágyazott Linux nem csupán az irányba tart. szánt BeOS lenyûgözõ sikerét (ah!), egy befóliázott csomag, amelyre rá van mely a legnagyobb csendben tûnt el írva, hogy „beágyazott”. Ez egy szab- Linux Journal 2002. augusztus, 100. szám a süllyesztõben, míg a valódi médiaesz- ványos, általános felület, széles körû közök – például a TiVo vagy a Moxi – meghajtógyûjteménnyel, ami napról Linuxra tértek át. napra bõvül (köszönjük a Cypressnek Amikor Gregnek az új Cypress USB is), és amelyet olyan felhasználói szer- Don Marti lapkáról, az SL811HS-rõl beszéltem, zõdéssel adnak ki, ami engedi, hogy a Linux Journal szakmai valamint arról, hogy a vezérlõjét a elvégezzük a munkát. A szokványos szerkesztõje, olvasóink a Cypress GPL alatt adja ki, az elsõ reak- Linuxhoz hasonlóan a beágyazott rend- [email protected] ciója az volt, hogy örül neki, hogy a szerek is jó programok a csíziót értõ címen érhetik el. Cypress érti „a csíziót”. És valóban, emberek számára.

www.linuxvilag.hu 2002. szeptember 33 Vezérfonal

A tty-réteg Az eszközmeghajtók fejlesztésérõl szóló sorozatunk elsõ részében azzal foglalkozunk, hogyan kezeli a rendszermag a rendszerkonzolt és a soros kapukat.

öszöntöm az olvasót a „Driving Me Nuts” címû új rendelve, annak értéke 0 kell legyen. A num mezõ értéke rovatban. Ebben a rovatban a Linux-rendszermag mutatja meg, hogy hány különbözõ mellékszámot rendeltünk különbözõ eszközmeghajtó-alrendszereit vizsgáljuk, az eszközmeghajtóhoz. Kmegpróbáljuk átlátni az általuk és az eszközmeghajtókon Vagyis amennyiben eszközmeghajtónk a 188-as fõszámmal keresztül biztosított különbözõ felületek széles skáláját. Ha rendelkezik, az alábbi értékeket kell beállítani: valaki azt szeretné, hogy egy adott alrendszert közelebbrõl major: 188 megvizsgáljunk, kérem, küldjön levelet. minor_start: 0

© Kiskapu Kft. Minden jog fenntartva Számos nagyon jó referencia létezik a Linux-rendszermag és num: 255 a Linux-eszközmeghajtók programozásának témakörében A type és subtype mezõk írják le, hogy eszközmeghajtónk (lásd a Kapcsolódó címeket). Ez a rovat feltételezi, hogy legalább milyen típusú tty-meghajtóként szerepel a tty-réteg számára. futólag ismerjük ezeket, vagy elérhetõ közelségben vannak A type mezõ az alábbi értékeket veheti fel: olvasóink számára. • TTY_DRIVER_TYPE_SYSTEM: a tty-alrendszer belsõ Vágjunk neki az útnak: elõször vizsgáljuk meg a rendszermag használatára van fenntartva annak közlésére, hogy belsõ tty-rétegét. Ezt a réteget minden Linux-felhasználó igénybe tty-eszközmeghajtóról van szó. Ha ezt az értéket veszi fel, veszi, amikor parancssorba ír, vagy a soros kapun keresztül lép akkor a subtype értéke SYSTEM_TYPE_TTY, kapcsolatba valamilyen eszközzel. SYSTEM_TYPE_CONSOLE, SYSTEM_TYPE_SYSCONS Minden tty-meghajtó számára létre kell hozni egy struct vagy SYSTEM_TYPE_SYSPTMX lehet. Ezt a típust normál tty_driver-t, amely leírja saját magát, és a tty-réteg segítsé- tty-eszközmeghajtó nem használhatja. gével bejegyzi a felépítését. A struct tty_driver az TTY_DRIVER_TYPE_CONSOLE: csak a konzolmeghajtó include/linux/tty_driver.h állományban kerül megadásra. használhatja, másra ne használjuk! Az 1. lista mutatja, hogyan épül fel ez a szerkezet a 2.4.18 • TTY_DRIVER_TYPE_SERIAL: bármilyen soros eszköz rendszermagváltozattól kezdve. A szerkezet mérete igen meghajtója használhatja. Ez esetben a subtype értéke tekintélyes, úgyhogy próbáljuk meg kisebb részekre bontani. SERIAL_TYPE_NORMAL vagy SERIAL_TYPE_CALLOUT, A magic mezõnek minden esetben a TTY_DRIVER_MAGIC a meghajtó típusától függõen. A type mezõnek ez az egyik értéket kell felvennie. Ezt a tty-réteg annak ellenõrzésére leggyakrabban használt beállítása. használja, hogy valóban tty-meghajtóról van szó. • TTY_DRIVER_TYPE_PTY: a pseudo terminal felület (pty) A driver_name és name mezõk az eszközmeghajtó leírására által használt beállítás. Ha ezt az értéket használjuk, a használatosak. A driver_name mezõ tartalmát, ami a subtype a PTY_TYPE_MASTER vagy PTY_TYPE_SLAVE /proc/tty/driversc fájlban is megjelenik, valamilyen kifejezõ értéket veheti fel. értékre kell beállítani. A name mezõ annak megadására szolgál, Az init_termios mezõ a kezdeti idõértékek (sorbeállítások, hogy milyen /dev vagy devfs név szolgál alapul a meghajtónk- sebességek) beállítására szolgál az eszköz elsõ létrehozásakor. hoz. Például a rendszermag soros meghajtója a driver_name A flags mezõ az eszközmeghajtó igényeitõl függõen az mezõ értékét serial-ra, a name mezõét pedig ttyS-re állítja, alábbi bitértékek eredõjét veszi fel: ha a devfs nincs engedélyezve és tts/%d-re, ha engedélyezve • TTY_DRIVER_INSTALLED: a bit beállításakor az eszköz- van. Amennyiben a devfs engedélyezett, a mezõt használja meghajtó nem tudja saját magát bejegyezni a tty-réteggel, az eszközmeghajtó számára történõ új eszközcsomópont létre- úgyhogy ne használjuk. hozására. A name mezõ %d része az eszköz mellékszámával • TTY_DRIVER_RESET_TERMIOS: a bitet magasra állítva a (minor number) kerül feltöltésre, amikor a tty-alrendszer szá- tty-réteg nullázza az idõértékeket, amikor az utolsó folyamat mára megtörténik a bejegyzése. lezárja az eszközt. Konzol- és pty-meghajtók esetén hasznos. A name_base mezõre csak akkor van szükség, ha az eszköz • TTY_DRIVER_REAL_RAW: e bit bekapcsolása azt jelzi, számozása nem a 0 mellékszámmal kezdõdik. Csaknem hogy az eszközmeghajtó biztosítja a párosságadat (parity) minden eszközmeghajtónál a 0 értéket kell beállítani. vagy a megszakításjelzõ karakterek jelentését a sorvezérlõ A major, minor_start és num mezõk írják le, hogy a tty-rétegben felé, amennyiben a sorvezérlõt erre nem utasítjuk. Általá- eszközmeghajtónkhoz milyen fõ-, illetve mellékszámok vannak ban minden eszközmeghajtónál beállítjuk, ez lehetõvé teszi rendelve. A major mezõ tartalmának az eszközmeghajtóhoz a sorvezérlõ hatékonyságának növelését. rendelt fõszámnak (major number) kell lennie. Amennyiben új • TTY_DRIVER_NO_DEVFS: a bit magas értékénél a eszközmeghajtót hozunk létre, olvassuk el a Documentation/ tty_register_driver() hívása nem hoz létre devfs devices.txt leírást arra vonatkozóan, hogyan biztosíthatunk bejegyzést. Bármilyen eszközmeghajtó esetén hasznos eszközmeghajtónk számára új fõszámot. Annak is hasznos a fájl lehet, ha az eszköz fizikai jelenlététõl függõen a fõ eszkö- elolvasása, aki arra kíváncsi, hogy az egyes eszközmeghajtók zöket dinamikusan akarjuk létrehozni, illetve megsemmi- milyen fõ- és mellékszámpárokat használnak. A minor_start síteni. Példák olyan meghajtókra, amelyek használják a mezõ az eszköz által használt elsõ mellékszám megadására szol- bitet: USB soros meghajtók, USB modemmeghajtó és az gál. Ha eszközmeghajtónkhoz egy teljes fõszám hozzá van USB Bluetooth tty-meghajtó.

34 Linuxvilág Vezérfonal

1. lista A struct tty_driver

struct tty_driver { unsigned char ch); int magic; void (*flush_chars)(struct tty_struct *tty); const char *driver_name; int (*write_room)(struct tty_struct *tty); const char *name; int (*chars_in_buffer)(struct tty_struct int name_base; *tty); short major; int (*ioctl)(struct tty_struct *tty, short minor_start; struct file * file, unsigned int cmd, short num; unsigned long arg); short type; void (*set_termios)(struct tty_struct short subtype; *tty, struct termios * old); struct termios init_termios; void (*throttle)(struct tty_struct * tty); int flags; void (*unthrottle)(struct tty_struct * tty); int *refcount; void (*stop)(struct tty_struct *tty); struct proc_dir_entry *proc_entry; void (*start)(struct tty_struct *tty); struct tty_driver*other; void (*hangup)(struct tty_struct *tty);

void (*break_ctl)(struct tty_struct *tty, © Kiskapu Kft. Minden jog fenntartva /* int state); * Pointer to the tty data structures void (*flush_buffer)(struct tty_struct *tty); */ void (*set_ldisc)(struct tty_struct *tty); struct tty_struct **table; void (*wait_until_sent)(struct tty_struct struct termios **termios; *tty, int timeout); struct termios **termios_locked; void (*send_xchar)(struct tty_struct *tty, void *driver_state; char ch); int (*read_proc)(char *page, char **start, /* off_t off, int count, int *eof, void *data); * Interface routines from the upper tty int (*write_proc)(struct file *file, layer to the tty driver. const char *buffer, unsigned long count, */ void *data); int (*open)(struct tty_struct * tty, struct file * filp); /* void (*close)(struct tty_struct * * linked list pointers tty, struct file * filp); */ int (*write)(struct tty_struct * tty, struct tty_driver *next; int from_user, const unsigned char struct tty_driver *prev; *buf, int count); }; void (*put_char)(struct tty_struct *tty,

A refcount mezõ egy a tty-meghajtóban lévõ egészre mutató poin- hajtja, néhányat közülük kötelezõ jelleggel meg kell adnia. ter típusú változó; a tty-réteg használja a meghajtó hivatkozásai- Az open függvényt a tty-réteg akkor hívja, amikor az open(2) nak kezelésére, a tty-meghajtónak nem szabad használnia. azon az eszközcsomóponton meghívása kerül, amihez tty- A proc_entry mezõ beállítását nem közvetlenül a tty-meghajtó meghajtónk rendelve van. A tty-réteg egy fájlmutatóval, vala- végzi. Ha a tty-meghajtó write_proc vagy read_proc mint egy olyan mutatóval végzi a függvényhívást, amely az függvényt valósít meg, ez a mezõ tartalmazza a létrejövõ meg- eszközhöz rendelt tty_struct szerkezetre mutat. Ezt a hajtó proc_entry mezõjét. A másik mezõt csak a pty-meghajtó mezõt a tty-meghajtónak a helyes mûködéshez mindenképpen használja, tty-meghajtók nem alkalmazhatják. be kell állítania a helyes mûködéshez (ellenkezõ esetben a Van még néhány különbözõ tty-szerkezetre mutató pointer felhasználó az open(2) hívásakor -ENODEV üzenetet kap). típusú változónk. Az egyik a table mezõ, ami egy tty_struct- A close függvényt a tty-réteg akkor hívja, amikor release(2) mutatókból álló tömbre mutat. A termios és a termios_locked hívás érkezik a korábban az open(2) által létrehozott fájlmu- mezõk egy struct termios mutatókból álló tömbre mutat- tatóra. Ez azt jelenti, hogy az eszközt le kell zárni. nak. E tömbök mindegyikének annyi eleme van, amennyit a A write függvény hívását a tty-réteg akkor kezdeményezi, feljebb említett minor mezõben beállítottunk. Ezeket a tty-réteg amikor a tty-eszköz felé adatot kell továbbítani. Az adat érkez- használja a különbözõ mellékszámú eszközök megfelelõ kezelé- het a felhasználó, illetve a rendszermag felõl (a from_user bit séhez, a tty-meghajtónak közvetlenül nem szabad módosítania. beállításra kerül, ha a felhasználó felõl érkezik). A függvénynek A driver_state mezõt csak a pty-meghajtó használja, más tty- az eszközre kivitt karakterek számával kell visszatérnie. Ezt meghajtónak nem szabad módosítania. a függvényt a tty-meghajtónak kötelezõen meg kell adnia. A tty_driver szerkezet a különbözõ függvénymutatók hosszú A put_char függvényt a tty-réteg akkor hívja, amikor az eszköz- listáját tartalmazza. Ezeket a tty-réteg használja a tty-meghajtó re egyetlen karaktert kell továbbítani. Amennyiben az eszközön meghívására, amikor valamilyen mûveletet akar végrehajtani. nincs hely a karakter számára, figyelmen kívül hagyható. Ameny- Egy tty-meghajtónak nem kell az összes függvénymutatót meg- nyiben egy tty-meghajtó nem adja meg ezt a függvényt, a tty-ré- adni, ám amennyiben ezt a függvényt a tty-meghajtó végre- teg a write függvényt hívja, ha egyetlen karaktert akar küldeni.

www.linuxvilag.hu 2002. szeptember 35 Vezérfonal

2. lista Egy minimál tty-meghajtó

#define TINY_TTY_MAJOR 240 /* experimental range */ termios_locked: tiny_termios_locked, #define TINY_TTY_MINORS 255 /* use the whole open: tiny_open, major up */ close: tiny_close, static int tty_refcount; write: tiny_write, static struct tty_struct write_room: tiny_write_room, *tiny_tty[TINY_TTY_MINORS]; }; static struct termios *tiny_termios[TINY_TTY_MINORS]; static int __init tiny_init (void) static struct termios { *tiny_termios_locked[TINY_TTY_MINORS]; /* register the tty driver */ tiny_tty_driver.init_termios = static struct tty_driver tiny_tty_driver { tty_std_termios; magic: TTY_DRIVER_MAGIC, tiny_tty_driver.init_termios.c_cflag = driver_name: "tiny_tty", B9600 | CS8 | CREAD | HUPCL | CLOCAL;

© Kiskapu Kft. Minden jog fenntartva #ifdef CONFIG_DEVFS_FS if (tty_register_driver (&tiny_tty_driver)) { name: "tts/ttty%d", printk (KERN_ERR "failed to register #else tiny tty driver"); name: "ttty", return -1; #endif return 0; major: TINY_TTY_MAJOR, } num: TINY_TTY_MINORS, type: TTY_DRIVER_TYPE_SERIAL, static void __exit tiny_exit (void) subtype: SERIAL_TYPE_NORMAL, { flags: TTY_DRIVER_REAL_RAW | tty_unregister_driver (&tiny_tty_driver); TTY_DRIVER_NO_DEVFS, }

refcount: &tiny_refcount, module_init (tiny_init); table: tiny_tty, module_exit (tiny_exit); termios: tiny_termios,

A flush_chars függvényt a tty-réteg bizonyos számú karak- unthrottle függvény akkor hívódik, amikor a bemeneti tár ter put_char függvénnyel történt kiírása után hívja. A tty- kiürült, és a tty-réteg újabb karakterek elfogadására kész. A tty- meghajtónak az eszközt a visszamaradt adatok azonnali továb- meghajtónak jeleznie kell az eszköznek, hogy az adatok bítására kell felszólítania. fogadásának nincs akadálya. A write_room függvényt a tty-réteg akkor használja, ha azt A stop és start függvények sok tekintetben hasonlítanak a szeretné lekérdezni, hogy a tty-meghajtó még hány felhasznál- throttle és unthrottle függvényhez, de azt is jelzik, hogy ható hellyel rendelkezik az írási tárban. Ez a szám asszerint a tty-meghajtónak az eszközhöz történõ adatküldést félbe kell változhat, ahogy a karakterek kiürülnek az átmeneti tárból. szakítania, és késõbb folytatja a mûveletet. A chars_in_buffer függvény annak lekérdezésére szolgál, A hangup függvény azt jelzi a tty-meghajtónak, hogy a tty- hogy hány karakter várakozik még mindig az írási átmeneti eszköz tevékenységét fel kell függesztenie. tárból való továbbításra. A break_ctrl függvény hívására akkor kerül sor, amikor a tty- Az ioctl függvényt a tty-réteg akkor hívja, amikor az eszköz- meghajtónak az RS-232 kapu BREAK állapotát kell ki-bekap- csomópontra ioctl(2) hívás érkezik. Ez a tty-meghajtó csolnia. Ha az állapot -1, be kell kapcsolnia, ha 0, akkor a BREAK számára eszközfüggõ ioctl függvények végrehajtását teszi állapot kikapcsolása szükséges. Amennyiben ezt a függvényt a lehetõvé. Amennyiben az ioctl-kérést a meghajtó nem támo- tty-meghajtó végrehajtja, a tty-réteg kezeli a TCSBRK, TCSBRKP, gatja, egy ENOIOCTLCMD üzenettel kell visszatérnie. Ennek TIOCSBRK és TIOCCBRK ioctl-eket. Ellenkezõ esetben ezek a köszönhetõen a tty-réteg képes arra, hogy ha lehet, az általános tty-meghajtó ioctl függvénye számára továbbítódnak. ioctl-változatot valósítsa meg. A flush_buffer függvény akkor kerül hívásra, ha a tty-meg- A set_termios függvényt a tty-réteg akkor hívja meg, amikor hajtónak az írási átmeneti tárból minden adatot ki kell ürítenie. az eszköz termiosbeállításai megváltoznak. A tty-meghajtónak Ez azt is jelenti, hogy a visszamaradó adatok elvesznek, és nem ekkor meg kell változtatnia az eszköz fizikai beállításait a termios- továbbítja õket az eszközhöz. szerkezet különbözõ mezõinek értékeitõl függõen. A tty-meghaj- A set_ldisc függvényt a tty-réteg akkor hívja, amikor meg- tónak képesnek kell lennie kezelni azt az esetet, amikor függvény változtatta a tty-meghajtó sorszerkezetét. Ez a függvény általá- hívásakor egy korábbi változó esetleg NULL értékkel bír. ban többször nem is használatos, ezért nem is kell beállítani. A throttle és unthrottle függvények a tty-réteg bemeneti A wait_until_sent függvényt a tty-réteg akkor hívja, tárolójának túlterhelését segítenek kezelni. A throttle függvény amikor a tty-meghajtó írási tárában lévõ összes adatot ki akarja akkor használatos, amikor a tty-réteg bemeneti tárolója kezd küldeni az eszközre. A függvény a befejezésig nem térhet megtelni. A tty-meghajtónak meg kell próbálnia jeleznie az vissza, ennek eléréséhez az alvó üzemmód is megengedett. eszköznek, hogy ne küldjön neki több karaktert. Az A send_xchar függvény a nagyobb fontosságú XON és XOFF

36 Linuxvilág Vezérfonal

karakterek tty-eszközre való küldését végzi. eszköz átmeneti fliptárjában helyezzük el. Ezt a következõ A read_proc és write_proc függvények akkor használa- kóddal is megvalósíthatjuk: tosak, amikor a meghajtó egy proc/tty/driver/ for (i = 0; i < data_size; ++i) { bejegyzést akar megvalósítani, ekkor a a feljebb leírt if (tty->flip.count >= name mezõ nevét veszi fel. Ha ezek közül valamelyik függvény TTY_FLIPBUF_SIZE) be van állítva, akkor a bejegyzés létrejön és bármilyen read(2) tty_flip_buffer_push(tty); vagy write(2) hívás az alkalmas függvényhez továbbítódik. tty_insert_flip_char(tty, data[i], 0); Végül a next és prev mezõket a tty-réteg az összes különbözõ } tty-meghajtó összefûzésére használja, a tty-meghajtónak nem tty_flip_buffer_push(tty); szabad hozzányúlnia. Ebben a példában biztosított, hogy ne történjen túlcsordulás, miközben adatokat helyezünk el a tárban. Azoknak a meghaj- Nincs read függvény? tóknak az esetében, amelyek nagyon nagy sebességgel képesek Az egyik dolog, ami szemet szúrhat a fenti függvénylistában, az adatok fogadására, a tty->low_latency kapcsolót kell a read függvény megvalósításának hiánya. A tty-réteg egy beállítani, ennek hatására az utolsó tty_flip_buffer_push() átmeneti tárral rendelkezik, amely adatokat küld a felhasználó hívás azonnal végrehajtódik. A példában a tty_timer függ- számára, amikor read(2)-hívás érkezik valamelyik tty-eszköz vény egy egybájtos adatot helyez el a tty fliptárjában, majd csomópontja felõl. Azt a tárat a tty-meghajtónak kell feltöltenie, az idõzítõt a következõ hívásra várva visszaállítja. Ezzel egy

ha adat érkezik az eszközrõl. Mivel a tty-adat nem mindig eszközrõl érkezõ lassú karakterfolyamot utánoz. © Kiskapu Kft. Minden jog fenntartva akkor áll rendelkezésre, amikor a felhasználó akarja, ennek a Eszközre történõ adat küldésekor a write függvény hívódik modellnek a használata szükséges. Ily módon a tty-réteg min- meg. Fontos, hogy a függvény ellenõrzi a from_user jelzõt, den kapott adatot átmenetileg tárol, az egyedi tty-meghajtók- így elkerüli, hogy a felhasználói adatok véletlenül közvetlenül nak pedig nem kell aggódniuk a forgalom elakadása miatt, a rendszermag területére legyenek másolva. A write függvény amíg az adat feltûnik a tty-vonalon. számára engedélyezett a rövid írási visszatérés. Ez annyit tesz, hogy az eszköz nem tudott minden kért adatot elküldeni. A Tiny tty Driver A write(2) függvényt hívó felhasználói program feladata Most hogy túl vagyunk a különbözõ mezõkön, valójában mik – a visszatérési érték alapján – annak eldöntése, hogy az összes azok, amikre egy alapvetõ tty-meghajtó felélesztéséhez és adat tényleg el lett-e küldve. Sokkal könnyebb ezt az ellenõrzést futtatásához szükségünk van? A 2. listán látható példa a lehetõ a felhasználói területen lefolytatni, mint egy meghajtóprogram- legkisebb tty-meghajtót tartalmazza. Ha a bemutatott lépéseket nak addig várakoznia, míg az adatok kiküldésre kerülhetnek. elvégeztük, hozzuk létre a tiny_open, tiny_close, tiny_write és tiny_write_room függvényeket, és már A tty-felület változásai készen is vagyunk egy parányi tty-meghajtó létrehozásával. A tty-réteg a 2.0, 2.2 és 2.4 rendszermagokkal igen megbízható, Ennek megvalósítására látható egy példa a 3. listán (39. CD és ez idõ alatt nagyon kevéssé változott. Így a 2.0-s változathoz Magazin /tty könyvtár). Ez a tty-meghajtó egy idõzítõt hoz létre, írt meghajtó a 2.4-es maggal szinte változtatás nélkül mûködni ami – egy igazi eszközt utánozva – minden második másodperc- fog. A 2.5-ös rendszermagsorozatban a tty-réteg átírásra van ben adatot helyez el a tty-rétegen. Továbbá megfelelõen kezeli az kijelölve, így ez a cikk is tartalmazhat olyan részeket, amelyek eszköz szerkezetének zárolását, amennyiben SMP-gépen fut. már nem érvényesek. Amennyiben kétség merülne fel, fordul- junk annak a rendszermagnak az include/tty_driver.h fájljához, Az adatok áramlása amelyikre a meghajtót fejleszteni szeretnénk. Továbbá vessünk Amikor a tty-meghajtó open függvénye hívásra kerül, a egy pillantást a driver/char könyvtárban található bármelyik meghajtótól azt várjuk, hogy adatokat mentsen a tty_struct tty-meghajtóra olyan függvények megvalósításainak példáiért, változóba, amit átadunk neki. Ennek célja, hogy az eszköz- amelyek e cikkben nem szerepelnek. meghajtó tisztában legyen vele, melyik eszközre hivatkozunk, amikor a késõbbi close, write vagy más függvényeket hív- Összegzés juk. Ha ezt nem tesszük, a meghajtó a MINOR(tty->device) Áttekintettük a tty-réteg alapjait, feltárva a 2.4-es rendszermag függvény segítségével adja át az eszköz mellékszámát. tty_driver-szerkezetének összes mezõjét, kiemelve, hogy, Ha rápillantunk a tiny_open függvényre, látható, hogy a tty- melyekre van szükség egy eszközmeghajtó megvalósításához. meghajtóban a tiny_serial szerkezet kerül mentésre. Ez lehe- A 3. listán látható tiny_tty.c meghajtó (39. CD Magazin/tty tõvé teszi a tiny_write, tiny_write_room és tiny_close könyvtár) jó példa egy kis méretû, sikeresen mûködtethetõ tty- függvények számára lehetõvé teszi, hogy visszakeressék a eszközmeghajtóra. A kód a jövõbeli saját tty-eszközmeg- tiny_serial szerkezetet, és megfelelõen változtassák meg. hajtóink létrehozásához szabadon felhasználható. A tty-meghajtó open és close függvényei ugyanarra az esz- közre többször is hívhatók – ahogyan a különbözõ felhasználók Kapcsolódó címek a 39. CD Magazin/tty könyvtárában találhatók. és programok kapcsolódnak az eszközhöz. Ez megengedné, hogy az egyik folyamat adatokat írjon, míg egy másik olvas. Linux Journal 2002. augusztus, 100. szám Hogy minden helyesen folyjék le, meg kell számolnunk, hogy a kapu hányszor volt kinyitva és becsukva. Amikor elõször nyitjuk meg a kaput, elvégezhetjük a szükséges eszköz-elõkészítést és Greg Kroah-Hartman memóriafoglalást. Az utolsó kapuzáráskor pedig megfelelõen ([email protected]) jelenleg a Linux USB és állíthatjuk le az eszközt és szabadíthatjuk fel a memóriát. Példa- a PCI Hot Plug rendszermagfelelõse. ként figyeljük meg a tiny_open() és tiny_close() függvé- Az IBM-nél dolgozik, ahol számos, a Linux nyeket, ahol látható, hogyan lehet megszámolni a kapu nyitásait. rendszermagjával kapcsolatos kérdéssel Amikor az eszköz felõl adat érkezik, szükség van rá, hogy a tty- foglalkozik.

www.linuxvilag.hu 2002. szeptember 37 Vezérfonal

Beágyazott rendszerek ízlés szerint A Virtex-II Pro FPGA és a MontaVista Linux együttese rendkívül rugalmas megoldást kínál a tervezõk számára.

ányszor fordult már elõ, hogy a követelmények általában véve az FPGA képességeit, részletesebben is ismer- meghatározása után döbbentél rá, hogy egyszerûen tetem. A vas és a programok közötti magas szintû párbeszéd nincs olyan mikroprocesszor, ami megfelelne elvárá- teszi egyedivé a Virtex-II Pro FPGA-t, hiszen így válik lehe- Hsaidnak és kellõ számú csatolt eszközt lenne képes kezelni? tõvé a teljesen testreszabott beágyazott megoldások egyetlen Hányszor kellett szembesülnöd azzal, hogy a alkalmasabb lapkán történõ fejlesztése. A vas és a rajta futó alkalmazások processzorra még nincs átültetve a Linux? Mennyit kellett együttes tervezéséhez kiváló programtervezõ és beágyazott szenvedned, hogy a tervezéshez és a hibakereséshez az hibakeresõ alkalmazások állnak rendelkezésre. Mielõtt azon-

© Kiskapu Kft. Minden jog fenntartva összes szükséges eszköz rendelkezésre álljon? Hány óra ban elmerülnénk az együttes tervezéssel kapcsolatos részle- munkád ment el ezeknek a buktatóknak a megkerülésével? tekben, ismerjük meg egy kicsit jobban a Virtex-II Pro FPGA Nyugi, ne húzd fel magadat! A Virtex-II Pro FPGA családhoz lelkivilágát! tartozó eszközökkel, a MontaVista Linux operációs rendsze- A PowerPC 405 processzorok 300 MHz-es vagy nagyobb rével és fejlesztõi környezettel rendszeredet a saját elképze- órajellel futnak, 16 KB adat és 16 KB utasítás-gyorsítótárral léseid szerint, rengeteg idõ és fáradtság megtakarításával rendelkeznek. A helyi processzor- és a külsõ eszközöket csatla- alakíthatod ki. koztató sín 100 MHz-es vagy nagyobb órajellel üzemel. A Virtex-II Pro FPGA család akár négy PowerPC 405 típusú A Virtex-II Pro FPGA egy fontos jellemzõje a lapkán elhelyezett processzort, 16 darab 3,125 Gb/s sebességû Rocket I/O soros memória (OCM). Az OCM elérési jellemzõit tekintve hason- adóvevõt és 3,8 Mb blokk-RAM-ot (BRAM) is képes kezelni, lóan viselkedik, mint a gyorsítótár, ám kezelését a felhasználó valamint egy négymillió kapus programozható rendszerlapka végzi. A Virtex-II Pro FPGA OCM-ként kétkapus BRAM-ot is a rendelkezésedre áll. A nagytudású eszközök alkalmazások tartalmaz, amely rendkívül nagy sebességû adattovábbítási széles köréhez használhatók fel, és kellõ rugalmasságot bizto- sítanak a rendszertervezõk számára. A teljes rendszer egyetlen lapkából is állhat, tetszõleges be- és kiviteli eszközök csatlakoz- A Virtex-II Pro Platform FPGA-k az alábbi protokollokat tathatók hozzá, például használhatunk öt UART-ot, egy PCI- és sebességeket támogatják sínt és akár több Gigabit ehernetkaput is – mindet a központi lapkán elhelyezett processzorok vezérlik. Protokoll Sebesség A Xilinx és az IBM együttmûködése révén valósul meg a 3GIO 2,5 Gb/s PPC405 szabvány támogatása, amely egy rendkívül üzembiztos Serial ATA 1,5 Gb/s sínrendszert jelent, valamint az egyes összetevõk egymás kö- zötti kapcsolatát is meghatározza. A Xilinx igen sokféle eszközt InfiniBand 2,5 Gb/s kínál a Virtex-II Pro FPGA-hoz, amelyek meghatározott szolgál- Gb ethernet 1,25 Gb/s tatáskészlettel rendelkezõ modulok, és közvetlenül csatlakoz- 10 GE (XAUI) 3,125 Gb/s nak az IBM CoreConnect sínrendszere szerint mûködõ közös Serial RapidIO 1,25 Gb/s sínre (lásd az ábrán). A CoreConnect számos szolgáltatással segíti a processzor és az Fibre Channel 1,06 Gb/s FPGA-összetevõ összekapcsolását, így állnak össze teljes beren- dezéssé. A legfontosabb CoreConnect-szolgáltatások: alkalma- zás-központú rendszersínek, amelyek között megtalálható eszközként szolgál a külsõ eszközök és a processzor, illetve a helyi processzorsín (PLB), a lapkán elhelyezett, a külsõ eszkö- átmeneti tárként a processzorok között. zök használatát lehetõvé tévõ sín (OPB), valamint az eszközve- A 3,125 Gb/s sebességre képes Rocket I/O-soros adóvevõk zérlõ regisztersín (DCR). A modulok révén sokféle be- és kivi- számos különbözõ adattovábbítási szabványt támogatnak, teli módszert és külsõ memóriavezérlõt is használhatunk. amelyek felsorolása táblázatunkban látható. Az olyan fontos A be- és kiviteli eszközök között említhetem meg a 16450-es és szolgáltatásokat, mint az átmeneti tárak biztosítását, a 8B/10B 16550-es UART-, az IIC- és SPI-vezérlõket. A memóriavezérlõk kódolást és dekódolást, a CRC-számítást és -ellenõrzést a között SRAM/FLASH, SDRAM, DDR SDRAM és ZBT eszközök lapkák valósítják meg, így az FPGA-összetevõ mellett semmi kezelésére alkalmasak egyaránt találhatók. Modulként termé- sem foglalja a helyet. szetesen további rendszerszintû be- és kiviteli felületeket is A BRAM-ok a processzor által kezelt memóriákként használ- elérhetünk: PCI-vezérlõt, 10/100 Mb és Gb sebességû vezér- hatók, és a CoreConnect sínre vagy OCM-ként csatlakoztat- lõket, valamint a System ACE beállítófelületet is. Minden mo- hatók. Az OCM jobb teljesítményt és közvetlen hozzáférési dulhoz eszközillesztõ program is tartozik, ha a használatához lehetõséget kínál a processzor részérõl, a BRAM-ot a helyi szükség van rá. Az eszközillesztõket forráskódként bocsátják processzorsínre kötve az összetevõk DMA-átviteleket is rendelkezésre. végezhetnek, amivel nem terhelik a processzort. A tervezõ A sokoldalú programtervezõ eszközöket, amelyek segítségével feladata tehát eldönteni, hogy mi módon lehet a BRAM-ot a felhasználók kiaknázhatják a processzorok, a modulok és a legjobban kihasználni.

38 Linuxvilág Vezérfonal

Az FPGA-összetevõ a Xilinx moduljaival, illetve saját terve- bevetve az eszközillesztõk átlátszó beépítésével kapcsolatos zésû modulokkal egészülhet ki. Egyes modulok egymással is tapasztalatait. Mindkét réteg nyílt forrású tárházba kerül és folytatnak párbeszédet, mások viszont csak párhuzamosan GPL szerzõdéssel érhetõ el. Az eszközillesztõk a rendszer- tudnak dolgozni. magba fordítva és betölthetõ modulként egyaránt használ- Mivel az FPGA-k tetszés szerint átállíthatók, a csatlakozóesz- hatók. Meghagyva a modulok betöltésének és eltávolításának közök száma és típusa a rendszer mûködése közben is módo- lehetõségét olyan készülékek építhetõk, amelyek a rendszer sítható. Ilyen rugalmas rendszerhez megfelelõ operációs rend- futása közben is átállíthatók. Futó operációs rendszer mellett szerre is szükség van, illetve olyan eszközökre, amelyek segít- teljesen megszokott dolog egy-egy USB-s készüléket vagy PC-kártyát kicserélni, ám magán a lapkán található eszközt leváltani, és menet közben betölteni a hozzá tartozó illesz- Memória- Gyors- Lasso- tõprogramot – ez azért egészen új dolog. felület eszközök eszközök A Linux-átültetés elsõként a Xilinx Virtex-II Pro ML300 felület- hez (lásd a képen) készült el, és az áramkörön található mo-

Block I/O- dulok és eszközök nagy részét támogatja. Mivel az ML300 RAM felület sokoldalú, jól kidolgozott áramkör, az átültetést a felhasználók saját eszközeikhez minden bizonnyal könnyedén hozzá tudják OPB Power PLB majd igazítani. A MontaVista Software magas szintû támo- PC OPB híd

gatást nyújt a hasonló tervezetekhez. © Kiskapu Kft. Minden jog fenntartva Lássuk, milyen eszközök állnak az eszköz- és programmér- PLB irányító OPB irányító Rögzített IP nökök rendelkezésére a rendszerek fejlesztéséhez, indításához és hibáik kijavításához. A Xilinx által biztosított System Lágy IP Generator for Processors, a GDB/XMD, a System ACE és a Alap buszkiépítés ChipScope Pro teljes eszközkészletet jelent bármely vassal, alkalmazásokkal és rendszerrel kapcsolatos tervezéshez. A System Generator for Processors (SGP) segítségével a Virtex- A CoreConnect segítségével csatlakozó modulok II Pro FPGA alapján fejlesztett eszköz mind a vas, mind a programok oldaláról végleges egésszé állítható össze. Felhasz- nálóbarát párbeszédablakokban lehet megadni a rendszer beállításait, például a csatlakozóeszközök alapcímeit, a hasz- nálni kívánt megszakításokat vagy a telepített memória nagy- ságát. Az SGP elkészíti az eszköz felépítését leíró állományokat, amelyek alapján az FPGA legyártható, illetve a szimulációk lefuttathatók. Egy beállítóállományt is készít, amely a Linux- rendszermag és a szükséges illesztõprogram-modulok fordítá- sához használható. Listánk egy ilyen beállítóállomány egy részletét ismerteti, ebben a felhasználó által megadott, a rendszer megszakításvezérlõjének mûködését befolyásoló beállítások találhatók. Az SGP segítségével a tervezõk különbözõ beállításokkal és variációkban próbálhatják ki születõben lévõ beágyazott rendszerüket. A beállítások módosításával mind a vas, mind a programok a pillanatnyi követelményeknek megfe- lelõen finomhangolhatók. Csak azok a szolgáltatások kerülnek A Virtex-II Pro ML300 felülnézetbõl be a késztermékbe, amelyekre valóban szükség van, a felesle- gesek a tervezés során eltávolíthatók. Az eszközök alapér- ségével a készülékek és a programok tervezõi beágyazott telmezett elõbeállításokkal is rendelkeznek. Mindennek ered- alkalmazásaikat fejleszthetik és hibajavítással láthatják el. ménye az, hogy a vas és a programok kevesebb helyet igényel- Az alkalmazástól függõen a felhasználók általában a keres- nek, jobb teljesítményt nyújtanak és egyszerûsödik – illetve kedelmi, készen megvásárolható valós idejû operációs rend- egyes esetekben teljesen elmarad – a rendszerindítási eljárás szerek közül választanak, vagy beágyazott Linuxot telepíte- is. Az SGP és a hozzá tartozó eszközök nyílt felületet hasz- nek. A Linux világából a Xilinx a Virtex-II Pro FPGA családhoz nálnak, így bárki bõvítheti õket saját eszközeinek szolgáltatá- rendkívüli sokoldalúsága miatt a MontaVista Linuxot válasz- saival vagy eszközillesztõivel. Az XMD egy hibakeresõ kiszol- totta, mint a céljainak leginkább megfelelõ beágyazott operá- gáló, a vizsgált rendszeren található GDB-vel az On-Chip ciós rendszert. A Linux alapállapotban is rengeteg eszközt Debug (OCD) protokoll segítségével tartja fenn a kapcsolatot; támogat. A Xilinx és a MontaVista Software réteges eszközil- és a célrendszert a Virtex-II Pro FPGA-ban található processzor lesztõ szerkezet fejlesztése mellett döntött. Ez egy alacsony JTAG kapuján keresztül vezérli. Az XMD egyszerre több GDB szintû, operációs rendszertõl független rétegbõl áll, amely kiszolgálására is képes, így egyidejûleg több processzoron is közvetlenül a vasat kezeli; valamint egy operációs rendszertõl hibakeresést végezhetünk. Hogy pontosabb legyek: a Virtex-II függõ illesztési rétegbõl, ami az operációs rendszer és az ala- Pro FPGA-n belül található négy processzor mindegyikén akár csony szintû eszközillesztõk közé fészkeli be magát. A Xilinx egyazon idõben is végezhetünk hibakeresést. Linux alatt a készíti az alacsony szintû eszközillesztõket, amelyek így GDB parancssorból vagy a többféle grafikus felület valamelyi- a lehetõ legjobban kihasználják a modulok képességeit. kével futtatható. Alapértelmezettként Insight-felületet támo- A MontaVista Software a linuxos illesztési réteget készíti el, gat, de DDD és Emacs is társulhat hozzá.

www.linuxvilag.hu 2002. szeptember 39 Vezérfonal

hasznos lehet, A beállítófájl eszközillesztõk beállítására szolgáló részlete ha ugyanazokat a jeleket több ILA is #ifndef XPARAMETERS_H /* a k rk r s beillesztØsek megelızØsØre */ vizsgálja. Volt olyan eset, hogy két ILA- #define XPARAMETERS_H /* vØdelmi makr kat hasznÆlva */ egységet csatlakoz- tattunk a PLB cím- /****************************************** és adatvonalaira, hogy * egy memóriakezelés- * Megszak tÆs-vezØrlı (Intc) meghatÆrozÆsok. sel kapcsolatos hibát * DeviceID kezdıØrtØke 0 kivizsgáljunk. Az * egyik ILA a PPC405-re csatlakozva vizsgálta #define XPAR_INTC_NUM_INSTANCES 1 /* A pØldÆnyok szÆma*/ a PLB-jeleket. Tudtuk, hogy a hiba fellépé- #define XPAR_INTC_NUM_INSTANCES 1 /* Device ID pØlda */ sekor a processzor #define XPAR_INTC_0_MAX_ID 31 /* jelenleg csak 32 hozzáfér a memó-

© Kiskapu Kft. Minden jog fenntartva megszak tÆs hasznÆlhat */ riához. A másik ILA /* az ØrvØnyes tartomÆny 0-31 */ a DDR memóriave- zérlõre csatlakozva #define XPAR_INTC_0_REG_BASE 0xD0000FC0 figyelte a PLB jeleit. /* Regiszter alapc m */ A két ILA által a cím- és adatvonalakról #define XPAR_INTC_0_UARTNS550_0_VEC_ID 31 szállított adatok alap- #define XPAR_INTC_0_IIC_0_VEC_ID 29 ján megtaláltuk a #define XPAR_INTC_0_EMAC_0_VEC_ID 28 hibát, és sikeresen kiküszöböltük. Az #define XPAR_INTC_MAX_ID 31 /* az ØrvØnyes tartomÆny eszköz belsõ világá- 0-31 */ nak elérhetõsége és a síneken folyó #endif /* vØge a vØdelmi makr nak */ átvitelek megfigyel- hetõsége különösen Linux-alapú, MMU-t is használó rendszer- A GDB-t a PPC405 rendszerek támogatásával bõvítették, illetve nél hasznos. Ekkor a programok oldaláról nézve ugyanaz a a target ocd parancs is képes a Virtex-II Pro FPGA összes fizikai memóriablokk több képzetes címtérre is leképezhetõ, szolgáltatásának kihasználására. Ennek köszönhetõen a PPC405 a vas oldaláról nézve viszont minden cím fizikai. összes regisztere, a gyorsítótárak és a TLB bejegyzései, illetve az A ChipScope Pro, a GDB és az XMD együtt alkalmazva rend- OCM tartalma nemcsak figyelemmel kísérhetõ és módosítható, kívül mély betekintést tesz lehetõvé a rendszer belsõ életébe. hanem a processzor memóriaterébe is bemásolható. A programok közös, az FPGA JTAG kapujára csatlakozó adat- A beágyazott rendszerek hibáinak felderítése hagyományosan kábelt használnak. Az alkalmazások barátságos egymás mellett nehéz feladat – a vas és a programok mûködését egyszerre kell élése jelentõsen megkönnyíti a hibakeresési környezet figyelemmel kísérni. Külsõ, a folyamatokba bele nem avatkozó kialakítását. hibakeresõ programmal, például a GDB és XMD párossal a A rendszerindítás folyamata roppant fontos a beágyazott munka sokkal egyszerûbb. A PPC405 emellett vasból megvaló- készülék bekapcsolásakor. Néhány lépésben megtörténik a sított töréspontokat is tud kezelni, így kivételek esetén a pro- processzor, a memóriarendszer és az átviteli eszközök indítása. cesszor mûködése befagyasztható. A végrehajtott adatátvitelek A Virtex-II Pro FPGA esetében a rendszerindítás két lépésben és a memória-hozzáférések figyelemmel követése különösen zajlik. Egyrészt megtörténik az FPGA beállítása, másrészt nehézzé válik, ha a processzorok és a hozzájuk csatlakozó elindul a processzor. Az FPGA-t a számos lehetséges módszer eszközök egyetlen lapkára kerülnek. Ekkor ugyanis minden egyikével kell beállítani a szükséges feladatokhoz. A cikk során fontos jel a lapkán belül utazik, és gyakorlatilag nem nagyon még visszatérünk az egyik jól használható eljárásra. Gyakran lehet hozzájuk férni. A Virtex-II Pro FPGA esetén nincsenek az igényekhez igazított eszközzel folyik a rendszer és a pro- ilyen korlátozások, mivel a külsõ eszközök „puha” vasként cesszor indítása, a Linux-rendszermag betöltése a memóriába, épülnek be a rendszerbe. A megfelelõ eszközzel minden jel majd a vezérlés átadása a rendszermag belépési pontjára. látható és elérhetõ. A Virtex-II Pro FPGA a hagyományos rendszerindítást is A ChipScope Pro egy a vasba beépített logikai elemzõ. támogatja, amelynél az elsõdleges rendszertöltõ külsõ ROM- Egyrészt a logikai elemzõbõl áll, amely a vizsgálórendszeren ban, vagy a belsõ BRAM-ban található. Az utóbbi esetben fut, másrészt a magába az eszközbe fordított vagy beépített nincs is szükség külsõ ROM-ra, ilyenkor az FPGA beállítását ravaszokból és adategységekbõl. A beépített logikai elemzõ- végzõ bitfolyam a rendszerbetöltõt is tartalmazza. Közvetlenül egységek (ILA) tetszõleges számú belsõ jel vizsgálatára állít- azután, hogy az FPGA beállítása megtörtént, a processzor hatók be, és a felhasználó által megadott feltételek teljesülé- kikerül azalapállapotból, a BRAM-ból megkezdi az utasítások sekor vagy a processzorsín-átvitelek hatására cselekednek. olvasását, és lefuttatja az elsõdleges rendszerindítót. Egyszerre több ILA-egység is mûködõ lehet. Egyes esetekben Egy – különösen MontaVista Linuxszal együtt – remekül hasz-

40 Linuxvilág Vezérfonal

nálható megoldás a System ACE segítségével indítja a rend- feladatokhoz, akár munkaállomásként is. szert. A System ACE külsõ kísérõlapka a Virtex-II Pro FPGA- A processzorok az FPGA-lapba építése több jövõbeli fejlesz- hoz, és ROM nélkül is lehetõvé teszi a rendszer indítását. Két téshez és érdekes elgondoláshoz szolgál alapul. Rendszerszer- fõ feladata van: az elsõ az FPGA, a processzor és a processzor- vezési szempontból egyetlen közös processzorsínre egyetlen sínen található egyéb eszközöknek a JTAG kapun keresztül gépben több processzor rákapcsolható. A kifinomultabb történõ beállításával végzett rendszerindítás, amelyet Compact- rendszerek a sín bedugulását kapcsolókkal elõzik meg, és Flash-kártya vagy Microdrive segítségével végez el. A második, növelik a teljesítményt. Az FPGA jellegénél fogva a rend- hogy az általa használt tárolóeszköz a Linux által is elérhetõ szertervezõk elõször az egyszerûbb megoldást választhatják, fájlrendszerként jelenik meg. majd áttérhetnek a bonyolultabbra. Teljesen mindegy, hogyan A Microdrive egy FAT12 vagy FAT16 és egy Linux-részt tartal- döntenek, a Linux hûséges társuk marad. Mivel a jelzõk és maz. A Linux-rendszermag a System ACE támogatására van mutexek kétkapus BRAM-okkal könnyedén megvalósíthatók, beállítva, fordításkor a System ACE különleges fájlformátumára az erõforrások kezelése és a megosztott memóriakezelés alakítják, összefûzik az FPGA-t beállító bitfolyammal, és a különösebb nehézségek nélkül megoldható. A vas és az alkal- FAT-fájlrendszeren helyezik el. A készülék bekapcsolásakor a mazások szoros együttmûködése jelentõsen növeli a rendszer System ACE a beállítóállományt beolvassa a FAT-fájlrendszer- teljesítményét. A vas oldaláról a gépek gyorsak, képesek a rõl, beállítja az FPGA-t és elindítja a rendszermagot. Az indítási párhuzamosított mûködésre, a programok pedig rendkívül folyamat alatt a Linux-rendszermag a Microdrive linuxos részét rugalmasak. A Linux számos olyan rendszerhívást használ,

saját könyvtárként fûzi be. A System ACE használatának amelyek vasból valósíthatók meg. A rendszertervezõ számára © Kiskapu Kft. Minden jog fenntartva ugyancsak fontos elõnye, hogy a processzor alapállapotához csak az jelenthet kihívást, hogy meg kell találnia azokat a nem szükséges külön memória, a FAT-részen több különbözõ függvényeket, amelyeket érdemes a vasra terhelni, ezzel is indítási beállítás is tárolható, és ezek normál fájlmûveletekkel gyorsabb, kifinomultabb rendszert építve. A még bonyolul- is módosíthatók. tabb gépeknél a Linux mellékprocesszorok igény szerinti A System ACE a JTAG láncot veszi igénybe, akár a processzor használatára is képes. Ilyenkor részben átállítja az FPGA-t, így hibakeresõ kapuját használó külsõ hibakeresõk. A programkód, az éppen futtatott alkalmazás igényeinek megfelelõ eszközök az adatok és szükség szerint a Linux-rendszermag által hasz- elérhetõvé válnak. Míg az egyik alkalmazás nagyszámú FFT- nált ramlemez betöltése a memóriába a JTAG láncon és a átalakítást végez, a másik például adott részeket keres az processzorsínen keresztül történik. A processzor által elérhetõ adatfolyamokban. Amikor az idõzítõ az egyik alkalmazástól egyéb összetevõk beállítása is hasonló módon, a rendszermag a vezérlést átadja a másiknak, a megfelelõ kiegészítõ modult betöltése elõtt végezhetõ el. A folyamat végén a PPC405 prog- is lecseréli. Az idõzítõ a korábbi tapasztalatok alapján dönti el, ramszámlálóját a Linux-rendszermag kezdõ címére állítjuk, és hogy érdemes-e kihasználni a vas gyorsítását, vagy a megfe- megkezdjük az operációs rendszer futtatását. lelõ programból megvalósított függvényeket kell alkalmazni. A System ACE egy kapcsolót tartalmaz, amely a nyolc mûködõ A Virtex-II Pro FPGA és a MontaVista Linux a megfelelõ beállítás egyikét választja ki. A betöltendõ beállítást programból rendszertervezõ, hibakeresõ és beállító eszközökkel együtt is lehet módosítani. A futó Linux-rendszer kiválasztja az új rendkívül rugalmas és kiváló teljesítményû eszközkészletet beállításokat, alapállapotba hozza a gépet, amely immár az új jelentenek. Az elkészülõ eszköz tervezése a követelmények, beállításokkal indul el, akár teljesen más külsõ eszközöket és nem az eszközök és programok korlátjai szerint történik, használva. a rendszer részei magas fokon egybeépíthetõk, miközben A FAT-fájlrendszer révén a System ACE által használt állományt nem kell lemondani a megfigyelhetõségrõl, a moduloknak a rendszer mûködése közben is lehet frissíteni – így lényegében és a hozzájuk kapható illesztõprogramoknak köszönhetõen használat közben a teljes eszköz javítható, frissíthetõ. csökken a piacrajutás ideje, végül a mérnökök alkotóereje új A Virtex-II Pro fejlesztõi készletével szinte élmény egy-egy teret nyer a készülékek és a rajtuk futó alkalmazások együttes új rendszert tervezni. A készlet segítségével még annak tervezésében. megépítése elõtt szimulálható a beágyazott rendszer mûkö- dése, illetve a hibakeresési szakasz is újabb elvonatkoztatási Linux Journal 2002. augusztus, 100. szám szinttel gazdagodik. A készülék minden egyes összetevõje önmagában is vizsgálható. A teljes készülék összeállítása után a vas és az alkalmazások együttes mûködése is utánozható, Michael Baxter így a beágyazott rendszer kifogástalansága ellenõrizhetõ. kilencéves kora óta dolgozik a számítógép- A valódi eszközben felfedezett hibák a szimulációs szakaszba iparban, amióta magával ragadta az 1969-os visszavezethetõk és pontosan visszakövethetõk. A GDB/XMD 2001-vízió, az Ûrodüsszeia. Tapasztalt oly módon is beállítható, hogy HDL szimulátorhoz kapcso- számítógép-, rendszer-, áramkör- és FPGA- lódjon, következésképpen a tervezõ lépésrõl lépésre követheti tervezõ. Tíz USA-szabadalmat jegyez számí- a programok végrehajtását, figyelheti a síneken folyó átvite- leket, valamint az eszközök állapotváltozásait. A Virtex-II tógépek és áramkörök tervezésével kapcsolatban, valamint Pro FPGA és a MontaVista Linux együttese százszázalékos, további ötnek a társfeltalálója. Szeret túrázni, érdekli az kiváló megoldást kínál számos különbözõ alkalmazási terü- amatõr rádiózás és a Lisp nyelven való programozás. letre. A soros, több gigabit sebességû Rocket I/O adóvevõknek köszönhetõen távközlési területen is jól használható, például Peter Ryser bázisállomásokon, ahol a nagy sávszélesség mellett hatalmas rendszertervezõ mérnök a Xilinx, Inc. cégnél. számítási teljesítményre is szükség van. Ugyanezeket az Több, a Virtex-II Próval kapcsolatos beágya- adóvevõket több eszköz között hátoldali átkötésként is lehet zott alkalmazástervezetért felelõs. használni. Az elérhetõ külsõ eszközök a négy processzorral A [email protected] címen érhetõ el. társulva kiváló választássá teszik adatfeldolgozási és grafikus

www.linuxvilag.hu 2002. szeptember 41 Vezérfonal

GNU Bayonne, a kapcsolatteremtõ A Bayonne Projekt bármely gyártó kártyájával képes telefonos kapcsolatot létrehozni.

árom évvel ezelõtt rá kellett de akár olyan berendezés is, amely számítógépi telefonos piacon jelenlevõ jönnöm, hogy komoly hiány többkapus hangvezérlést nyújt ISDN tagjaikra nehezedõ nyomás mértékét. tapasztalható a szabad progra- vagy T1 digitális hangáramkörön ke- A másik népszerû szervezet az ITU Hmok terén. Igaz ugyan, hogy a szabad resztül, amit a nagyobb vállalatok köz- (International Telecommunications programok elterjedtek, és a vállalkozói vetlenül a helyi távközlési szolgáltató Union) névre hallgat, amely leginkább területen szinte minden rést be is töltöt- központjából kaphatnak meg. arról ismert, hogy kinevezéseit gyakran tek, de egyikük sem próbálta megoldani Figyelembe véve, hogy az ilyen rend- nemzeti kormányzatok adják. Az USA- a távközlésben felmerült gondokat. szerek a múltban általában igen költsé- ban például a kinevezéseket az állami

© Kiskapu Kft. Minden jog fenntartva Pedig a kapcsolattartás nemcsak hogy gesnek számítottak, soha nem voltak részleg adja, politikai alapokon, ahelyett, minden üzletnek része, de egyben (gya- nyíltak, és gyakran nehezen progra- hogy a legjobb és legragyogóbb elmék korta észre sem vett) része a felhasználói mozhatónak bizonyultak, úgy gondol- közt válogatnának. élménynek is. Ugyanakkor a nyilvános tam, ezeket a gondokat egyszerre fogom A mi célunk nemcsak az volt, hogy telefonos hálózaton keresztül mûködõ megoldani a jelenleg legtámogatottabb szabad programként telefonos kiszol- telefonos szolgáltatások létrehozásához nyílt programrendszer, a GNU/Linux alá gálót hozzunk létre, de egyúttal a tele- szükséges alkatrészek egyre szélesebb írt kiszolgálóprogram létrehozásával. fonos alkalmazásszolgáltatásokat is körben terjednek el a piaci PC gépek és Amikor nekikezdtünk a projektnek, még olyan könnyen és egyszerûen kezelhe- operációs rendszerek körében, ideértve igen kevés cég kínált GNU/Linux alatt is tõvé szerettük volna tenni, amilyen természetesen a GNU/Linuxot is. használható alkatrészeket, így azt hasz- egy weblap készítése és karbantartása. Hogy szabad programmal célozhassuk náltuk, ami elérhetõ volt. Még manap- Ugyanakkor a telefonos meghajtókat meg ezt a piacrészt, néhányan úgy dön- ság is minden telefonos kártya teljesen és API-kat egy olyan szintig akartuk töttünk, egy keretrendszert hozunk különbözõ, és többnyire saját API-t mel- elvonatkoztatni, hogy ezek az alkalma- létre, amelyben leírjuk, milyennek kel- lékelnek hozzá. Mivel sem az eszkö- zásszolgáltatások fejlesztésénél már lene lenniük ezeknek a szolgáltatások- zök, sem az API-k nem szabványosítot- egyáltalán ne számítsanak, és láthatat- nak; az asztali felhasználók és alkalma- tak, a legtöbb ember, aki telefonos alkal- lanok legyenek. Ha ez sikerülne, az azt zásfejlesztõk igényeitõl kezdve egészen mazásokat készít, csak egyetlen gyártó jelentené, hogy bárki tetszés szerint a legnagyobb távközlési cégek által tá- kártyacsoportjához fejleszt, és ezt kizá- lecserélheti az eszközeit, ahelyett, hogy masztott elvárásaikig. A projekt késõbb rólag a gyártó által nyújtott API-n egyetlen gyártó által nyújtott termékek- GNUCOMM néven vált ismertté, keresztül teszi. Ez a gyakorlat egyben hez lenne kötve. amikor hivatalosan is a GNU projekt azt jelenti, hogy a számítógépes távköz- munkacsoportjává vált. lési üzletben minden gyártónak igen Kezdetben volt az ACS Az egyik olyan terület, amit meg szeret- széles termékcsalád-kínálatot kell készí- Mivel a kiszolgálóban mindent alacsony tünk volna határozni, a telefonos alkal- tenie, mivel a felkínált termékskála réseit szinten akartunk elvonatkoztatni, az mazáskiszolgáló volt. Egy ilyen kiszol- nem egykönnyen lehet más termékekkel elsõ szükséges dolog egy C++ nyelven gáló a könnyen telepíthetõ új telefonos helyettesíteni. Ezek a tényezõk igencsak íródott osztálykészlet volt. Több okból is alkalmazásszolgáltatások egyszerû létre- megnehezítik, hogy új telefonos kártya- a C++-t szerettem volna használni. hozását tenné lehetõvé. Ezek olyan gyártó lépjen a színre, ugyanakkor meg- Elõször is, a meghajtó csatolófelületek alkalmazások lennének, amelyeket könnyíti a korlátozott számban jelenlévõ létrehozásához az osztálybeágyazások kifejezetten arra fejlesztenek ki, hogy gyártók dolgát, hogy komolyabb változ- felhasználása tûnt természetesnek, a kiszolgálót a hagyományos telefon- tatás nélkül megtarthassák piacukat. figyelembe véve elvont természetüket. vonalon, elérõ hús-vér emberekkel tart- Természetesen nem állíthatjuk, hogy Másodszor, úgy láttam, sokkal gyorsab- sák a kapcsolatot, akik az alkalmazással egyáltalán nem történtek próbálkozások ban tudok hibamentes C++-kódot hang, illetve a telefon nyomógombjai- szabványosított API kialakítására. Végül írni, mint hibamentes C-kódot. Tulaj- nak segítségével érintkezhetnek. is ott van a ECTF (European Community donképpen ez lett az elsõ nagyméretû Jellegzetesen ilyen alkalmazások a Telework/Telematics Forum). Lévén C++-projektem. hangpostafiók-rendszerek vagy az elõre üzleti gyártók ipari konzorciuma, már Ugyancsak könnyû megmagyarázni, fizetett (prepaid) hívási megoldások. elõ kellett volna állniuk egy, bizottsá- miért nem a már meglévõ keretrend- Minden ilyen rendszer meglehetõsen gokon keresztül vizsgált összetett szab- szereket használtuk. Tudtuk, hogy összetett, valamint a PC-rendszer és a ványkészlettel, és olyan javaslatokkal, szükségünk lesz szálasításra, foglalatok nyilvános telefonhálózat közötti kap- amelyek azt határoznák meg, hogyan (socket) támogatására és néhány egyéb csolat megteremtése néha programozott fejlesszék és támogassák a gyártók a elemre. Egyetlenegy létezõ keretrend- rendszereket vagy különleges számító- számítógépes telefonos megoldásokat. szer sem tudta az összes szükséges gépes telefonalkatrészeket igényel. Továbbá mindezt olyan módon kellene dolgot biztosítani, kivéve néhányat, Ez lehet olyan eszköz amely analóg megtenniük, amely növeli a különleges amelyek azonban jóval nagyobbak és telefonvonalon képes beszélni a hívóval, tudás iránti igényt, emelve ezzel a összetettebbek voltak, mint amire

42 Linuxvilág Vezérfonal

nekünk szükségünk volt. Például sze- De milyen formát ölthet egy ilyen parancsfájlok kezelése. Hogy a parancs- rettünk volna egy telefonoskiszolgáló- parancsnyelv? Sok parancsnyelv egyes fájlok töltése során fellépõ késlekedést vázat. Ez idõ tájt a legjobban hasznosít- értelmezõ példányhoz elkülönített vagy akadályoztatást megelõzzük, a ható keretrendszer a ACE (Adaptive végrehajtást tételez fel (szálanként vagy memóriában az összes parancsfájl egy Communication Environment) volt, folyamatonként) minden ami sajnos virtuális gép (Virtual Machine azaz VM) amely általában néhány MB-tal növelte használhatatlanná teszi õket a céljaink- memóriaszerkezetébe töltõdik be, és itt meg a futtatható könyvtár méretét. ra. Sok nyelv feltételezi, hogy a kifejezés értelmezõdik. Ha meg akarjuk változ- Mivel célunk az volt, hogy akár 8–12 MB értelmezésének ideje nem határozható tatni a parancsfájlt, egy teljesen új VM- példány jön létre, amely az új parancs- fájlt tartalmazza. A jelenleg futó hívások a régi VM-ben futnak tovább, az új hívók számára azonban már az új VM lesz elérhetõ. Amikor az utolsó régi hívás is lezárult, a teljes régi VM törlõ- dik. Így még akkor is elérhetjük a száz- százalékos rendelkezésre állást, ha a szolgáltatások idõközben módosulnak.

Végül, mivel C++ parancsnyelv-rend- © Kiskapu Kft. Minden jog fenntartva szert készítettünk, a parancsértelmezõ közvetlen osztálykiegészítését is lehe- tõvé tettük, hogy a késõbbiekben új parancsképességekkel lehessen bõvíteni. Így bárki készíthet a nyelvbõl egy az adott alkalmazáshoz, vagy (ha szüksé- ges) az adott telefonos vezérlõhöz leve- zetett nyelvváltozatot, egyszerûen csak a hagyományos C++-osztálykiterjesz- tést kell felhasználnia. A kiegészítés az eredeti nyelvbõl levezethetõ. memóriával rendelkezõ gépeken is meg. Egy kifejezés ugyanis például Bár a kiszolgáló parancsnyelv teljes tele- futtatni tudjuk a programot, ez önhívó (rekurzív) függvényeket vagy fonos szolgáltatások létrehozását is tá- elfogadhatatlan hátránynak bizonyult. akár egész alprogramokat meghívhat. mogatja, nem általános célú programo- A GNU Common C++ (eredetileg APE) Mi azonban – ahogy már korábban zási nyelvnek terveztük, és külsõ prog- azért jött létre, hogy egyszerûen értel- említettük – nem szerettünk volna ramkönyvtárakkal sem lehet egybeépí- mezhetõ és hordozható osztálymeghatá- minden egyes értelmezõ példányhoz teni, ahogyan a hagyományos nyelve- rozásokat nyújtson a szálak, a foglalatok egy-egy külön végrehajtási folyamatot ket. A nem blokkosítottság elõfeltétele, (socket), a jelzõk (semaphore), a kivé- rendelni, és azt sem akartuk, hogy az hogy minden a kiszolgálóhoz készülõ telek és egyéb elemek részére. Az APE összes példány válaszoljon a telefonos kiegészítés magas szinten testreszabott azóta megnõtt: mostanra már számos vezérlõ legelsõ eseményhívására, amint kell legyen. Ehelyett mi egy általános fejlesztés forrásává vált azon felül, hogy az állapota megváltozik, így aztán a már célú parancsfájlkészítõ módszert szeret- a GNU része. létezõ, általánosan használt megoldások tünk volna, ami adatbázisokkal és más Maguknak a szolgáltatásoknak a készí- (Tcl, Perl, Guile stb.,) egyike sem jöhe- rendszererõforrásokkal is képes kap- tése közben ráébredtünk, hogy új mód- tett közvetlenül szóba. Ehelyett elsõ csolatot tartani. Ezért ACS (Adjunct szerre van szükségünk a telefonos al- kiszolgálónkhoz inkább egy új, nem Communication Server) Projektünk kalmazások létrehozásához – mégpedig blokkosított, determinisztikus parancs- létrehozásakor lényegében ugyanazt a olyanra, amely a folyamatot egy átlagos nyelvet készítettünk. modellt választottuk, mint amit a web- rendszergazda számára is érthetõvé Parancsnyelvünk több szempontból is kiszolgálók esetében alkalmaznak. teszi. Az egyszerûség kedvéért egy álta- egyedülállónak volt nevezhetõ. Elõször Kiszolgálónk TGI-modellje nagyon lános parancsnyelv használata mellett is lépésenként végrehajtott volt és nem hasonló a webkiszolgálók CGI-rendsze- döntöttünk, amely késõbb GNU ccScript blokkosított. Az utasítások vagy azonnal rének mûködéséhez. A TGI külön néven vált ismertté. Parancsfájlok írásá- végrehajtódtak és visszatértek, vagy a folyamatként indul el, majd az adatokat val és hangminták rögzítésével gyakor- végrehajtó segítségével végrehajtásukat környezeti változókon keresztül juttatja latilag bárki anélkül hozzájárulhat a egy késõbbi idõpontra idõzítették. Így a telefonhívóhoz. Azért használunk telefonos alkalmazásszolgáltatások lét- lehetõvé vált, hogy egyetlen szál több környezeti változókat parancssori para- rehozásához, hogy különleges isme- értelmezõpéldányt hívjon meg és kezel- méterátadás helyett, mert így megelõz- retekre vagy átfogó rálátásra lenne szük- jen. A telefonos kiszolgáló akár egy hetjük az adatok utáni kémkedést sége; vagy olyan hihetetlenül összetett idejû hívások százait kell kezelje egy (hiszen azok lényeges dolgokat is tartal- API-kra, mint amilyeneket a ECTF nagy terheltségû távközlési eszközön. mazhatnak, például hitelkártyaszámo- támogat. Mivel az alul elhelyezkedõ Mivel nekünk nincs szükségünk a ki- kat), amelyek egyébként egy egyszerû telefonos vas láthatatlan, és csak elvont szolgálón futó hagyományos szálak ps paranccsal kiolvashatóak lennének. formában érhetõ el az alkalmazás százaira, szerény CPU-terhelést kapunk. A TGI-folyamat szabványos kimeneten parancsfájlnyelvébõl, a kártyacsaládtól A másik dolog, amiben parancsnyel- keresztül kapcsolódik a kiszolgálóhoz, való függõség hátránya is megszûnt. vünk egyedülálló, a memóriába töltött ahol a TGI-alkalmazás által készített

www.linuxvilag.hu 2002. szeptember 43 Vezérfonal

kimenetet kiszolgáló parancsok meghí- beépíteni. Mint már korábban megje- kaptam különbözõ emberektõl, akik arra vására használjuk fel. Ezek a parancsok gyeztük, az egyetlen követelmény az, mutattak rá, hogy az ACS nevet már különbözõ feladatokat láthatnak el: hogy a rendszergazda kiszolgálóoldali több másik projekt is használja, például visszatérõ értékeket állíthatnak be, ame- parancsfájlokat legyen képes készíteni, az Al’s Circuit Simulator. Ez természe- lyeket például egy adatbázis-keresés hangfelvételeket tudjon lejátszani és tesen baj volt. eredményeképpen kapunk, vagy új fo- rögzíteni, illetve legyen valamennyi Ugyanakkor az ACS szerkezetének lyamatokat hívhatnak meg, ilyen lehet gyakorlata valamilyen általános eszköz korlátai is kezdtek megmutatkozni. például a kifelé menõ tárcsázás. Ahelyett, (például Perl) használatában. Elõször is azon az elképzelésen alapult, hogy minden egyes egyidejû hívásnak Kiszolgálónk egy jellemzõ alkalmazása hogy a kiszolgálót közvetlenül a telefo- nos kártyához kell kapcsolni, valahogy úgy, ahogyan az XFree86 3 köti az X-ki- szolgálót az adott videokártya-család- Perl hoz. Ez azt jelenti, hogy minden egyes Központi Python kártyacsaládhoz külön kiszolgálót kell Webkiszolgáló Hanganyag hívóállomás fordítani, ezáltal sok kód szükségtelenül Héj többszörözötten fog szerepelni. Bayonne Úgy döntöttem, hogy a teljes kiszolgáló-

© Kiskapu Kft. Minden jog fenntartva parancsnyelv magot az alapoktól kezdve újraírom, és ezt néhány héten belül be is tudtam TGI-folyamatok XML betöltõ fejezni. Az elsõ dolog, amit megtervez- tem, a bõvítmények (plugin) támoga- tása volt, egy kicsit más elképzelés Bayonne kiszolgáló alapján, ahogyan azt a legtöbb ember korábban csinálta. A bõvítmény általában egy kis objek- Kiszolgáló- Meghajtó- Általános C++ bõvítmények bõvítmények tumfájl, amelyet egy ismert szimbólum vagy szerkezet alapján dinamikusan • parancsfájl-kiegészítõk • telefonvezérlõ töltünk be, és azután a betöltött fájl ccScript • hálózati protokollok • RTP/oSip átvizsgálásával könnyedén megtalál- • • ellenõrzés openH323 dlopen • hatjuk. Így a modult az utasí- RPC és CORBA tással bárki megnyithatja, majd a dlsym ccAudio • nyelvi szabályok • ellenõrzés és segítségével megkeresheti az adott szim- grafikus felület bólumot, hogy aztán a modulon belül libxml2, pthreads függvényeket hívhasson meg. Én egy másik megoldást alkalmaztam: az új kiszolgálót úgy alakítottam ki, hogy a saját szimbólumait exportálja. A kiszolgáló egy létrehozókkal külön átjárót biztosítanánk, minden valahogy úgy nézhet ki, miként azt az (constructor) ellátott alaposztályhalmaz- TGI-átjáróhoz egy-egy folyamatkészletet ábrán láthatjuk (elérhetõ az zal rendelkezik, amely a rendszerleíró tartunk fenn, így azokat korlátozott erõ-  www.linuxvilag.hu/Bayonne címen), szerkezetet készíti fel a használatra. forrásoknak tekinthetjük. Feltételezzük, ez nevezetesen a playrec parancsfájl. A betölthetõ modulokat C++ nyelven, hogy az átjáró végrehajtási ideje a teljes A parancsfájl bemutatja a jelenlegi származtatott osztályként lehet megírni, hívási idõnek csak kis százalékát jelenti, parancsnyelv különbözõ jellegzetes- melyek alaposztálya a kiszolgálóban van így a gyors TGI-indítás érdekében ségeit, az érvényességi köröket, az megadva, és ezek levezetett osztályai- hatékony megoldást jelent egy kis számú eseményvezérlést, amelyek (nevesített nak statikus objektumokat tehet elérhe- folyamatkészlet állandó készenlétben parancsfájl-hivatkozások alatt futva) tõvé. Amikor a modult az dlopen-nel tartása. Ez a módszer segít elkerülni a létrehozzák az interaktív telefonos betöltjük, a statikus objektumok létre- torlódást, például ha az összes hívó alkalmazás feldolgozásához szükséges hozói (constructor) önmûködõen éppen egyszerre érkezik a TGI-hez. logikai láncot. A 2. listában (ami a meghívódnak, az alaposztályból a Ezekkel az alapvetõ eszközökkel végül  www.linuxvilag.hu/Bayonne címen ér- kiszolgálólenyomatra (server image) lehetõvé vált a hangválaszokat adó hetõ el), a Perl felhasználására mutatunk mutató hivatkozások pedig önmûkö- (voice response) alkalmazások elkészí- be egy példát a TGI.pm modul és a tgi- dõen feloldásra kerülnek (resolved). tése. Amikor a rendszer végre mûködni getdbval.pl Perl parancsfájl segítségével. A kiszolgálólenyomatban tárolt alap- kezdett, elsõ telefonos kiszolgálónk már osztály a létrehozó által önmûködõen üzleti környezetben futott az Open Hogyan lett az ACS-bõl GNU Bayonne? meghívódik és bejegyzi a modulobjek- Source Telecom és más cégek gépein. Mint korábban már említettük, ezeket tumot. Így aztán az dlopen nemcsak, Ez a széles körû felhasználás más vállal- a célokat az elsõ ilyen telefonos alkal- hogy betölti a modult, de egyben a kozási-gazdasági tényezõk mellett mazáskiszolgálóval már nagyjából két használatra való felkészítést is elvégzi részben annak volt köszönhetõ, hogy évvel ezelõtt elértük, ezt Adjunct Com- – mindezt egyetlen mûveletben. annyira könnyen lehet új alkalmazás- munication Servernek, röviden ACS-nek Továbbá néhány dolog, ami korábban szolgáltatásokat készíteni, illetve telefo- neveztük. Sajnos az ACS névgondokkal az ACS része volt, most külön csomagba nos alkalmazásokat a kiszolgáló alá küszködött, és számos olyan levelet került. Ekkor vált a GNU ccScript és a

44 Linuxvilág Vezérfonal

GNU ccAudio külön osztálykönyvtárrá, a célunk a telefonos alkalmazásszolgál- preViking projekt közvetlen bevonását minthogy ezek jelképezték az ACS-ben tatások elérhetõségének minél teljesebb a GNU Bayonne fejlesztésébe. korábban is megtalálható igen hasznos körben történõ elterjesztése a szabad Az egyik legnagyobb kihívást a jelenlegi parancsnyelvmotort és a hangfeldolgozó program fejlesztõi közt, ez igen kellemes GNU Bayonne kiszolgáló fejlesztésében szolgáltatásokat. Különösen az iránt ér- elõrelépést jelent. a telefonos kártyák moduljainak elkészí- deklõdtünk, hogyan tudnánk a parancs- A GNU Bayonne-t máris széles körben tése jelenti. Ezek gyakran minden egyes nyelvet más kiszolgálókban használni, használják szerte a világon. A felhasz- meghajtóhoz komoly fejlesztést követel- amely a GNUCOMM része lehetne. nálók köre az orosz üzleti távközlési nek meg, és a kód is sokszor szerepel A GNU ccAudio bizonyítottan hasznos, szolgáltatóktól az USA állami és szövet- többszörözötten. A GNU Bayonne 2 általános célú hangfeldolgozó könyvtár. ségi kormányzati ügynökségeiig terjed, ezt a kihívást úgy oldja meg, hogy a Felhasználható egyszeres és duplafrek- és számos olyan vállalkozást találhatunk vezérléshez használt állapotgépet (state venciás hangok elõkészítésére, amelye- köztük, amelyek különleges hangszol- machine) a kiszolgálómagba helyezi át, ket késõbb a memóriából lejátszhatunk, gáltatásokat biztosítani tudó egybekötött majd C++-osztálymeghatározásokon továbbá több bemeneti fájlból csoma- webhelyeket vagy hangüzenet-szolgál- keresztül teljes mértékben elfedi. Ezáltal golt, állandó hosszúságú keretekbõl tatáshoz hasonló vállalkozási alkalma- a meghajtók egyszerûbbé válnak, (fixed-length frames) álló hangfelvételt zásokat kerestek. ugyanakkor lehetõvé teszi számunkra, képes összeállítani (a végükön szünet- A GNU Bayonne nem önmagában hogy egyetlen kódalapból többféle

tel), ahogyan azt a legtöbb DSP (digital létezik, hanem egy sokkal nagyobb kiszolgálót hozzunk létre. © Kiskapu Kft. Minden jog fenntartva signal processor; digitális jelfeldolgozó) metaprojekt, a GNUCOMM része. A GNU Bayonne 2 másik újdonsága bemenete megköveteli. Ez a képesség A GNUCOMM célja a jelenlegi és a a távközlési cégeknek készített linuxos kiemeli a többi hangfeldolgozó könyvtár következõ nemzedékbeli telefonos megoldások sokkal közvetlenebb támo- sorából, amelyek ilyen mutatványokra hálózatok részére telefonos szolgáltatás gatása. Azaz elõdjével szemben ez az új rendszerint nem képesek. A legjobb az nyújtása, szabadon felhasználható (free megoldás folyamatosan élõ kiszolgáló lenne, ha a GNU ccAudió-t sikerülne license) program segítségével. Ezeket esetén is képes a szolgáltatásból kapukat teljes értékû, általános célú hangfeldol- a szolgáltatásokat a következõképpen kivenni és visszahelyezni, ami lehetõvé gozó keretrendszerré fejleszteni, amely határozhatjuk meg teszi, hogy a kártyákat menet közben egyben kiszolgálóalapú DSP-szerû 1. olyan szolgáltatások, amelyek az telepítsük (hot-plug) vagy cseréljük feldolgozásra is alkalmas. asztali felhasználókkal tartják a kap- (hot-swap). A távközlési osztályú kiszol- Megvolt tehát az új kiszolgálónk, mind- csolatot, ilyenek például a telefonszá- gálókon a rendszermag figyelmeztetést össze a neve hiányzott. Mivel valami mok tárcsázására képes címtárak és küld a változás tényérõl, az alkalmazás- egyedi és mások által valószínûleg még a telefonprogram-alkalmazások (soft szolgáltatások pedig figyelhetik és vála- nem használt nevet szerettünk volna, phone applications); szolhatnak ezekre az eseményekre. úgy döntöttünk, nem használunk újabb 2. olyan szolgáltatások, amelyek telefon- A GNU Bayonne 2-t úgy terveztük, rövidítést. Helyette, mivel a kiszolgáló kapcsolatokat valósítanak meg, ilyen hogy vegye figyelembe ezt a „értesítõ” tulajdonképpen híd a számítógép és például a IPSwitch GNU softswitch elvet az általa irányított erõforrások a telefonos világ közt, logikusan egy projekt és a GNU oSIP proxykiszolgáló; kezelése során. hídmetaforát választottunk. De melyik 3. olyan szolgáltatások, amelyek átjáró- Végül a GNU Bayonne 2 a kezdetektõl hídra essen a választásunk? ként mûködnek a jelenlegi és a követ- úgy készül, hogy több módon is kihasz- Kézenfekvõ lenne a Brooklyn híd. Csak- kezõ nemzedékbeli telefonos háló- nálja az XML nyújtotta elõnyöket. Beál- hogy ez meglehetõsen gyakran használt zatok közt, ilyen a troll és a tûzfallal lításnyelvként saját XML-nyelvjárást név, és negatív mellékzöngéi vannak, védett telefonos hálózatok proxy- használ, webszolgáltatásként is mûkö- így nem tûnt jó választásnak. Ugyanígy kiszolgálói, például az Ogre; dik, amely egyszerre képes az éppen a Golden Gate név is meglehetõsen fel- 4. valós idejû adatbázis-adatforgalmazó futó GNU Bayonne pillanatnyi állapotát kapott, és többnyire az IBM Java kez- rendszerek, mint például a preViking XML formában megadni, illetve az deményezésével kapcsolják össze. Szóba Infotel és a BayonneDB; XMLRPC-t támogatni. Ez illeszkedik került a Tacoma Narrows is mint lehe- 5. hangalapú alkalmazásszolgáltatások, ahhoz az elképzelésünkhöz, amely tõség, de figyelembe véve, hogy önmeg- mint amilyeneket a GNU Bayonne-n szerint a telefonos kiszolgálókat webki- semmisítésérõl volt híres, úgy gondol- keresztül is megvalósíthatunk. szolgálókkal építhetjük egybe, s amely tuk, ezt inkább ejtjük, meghagyjuk a Még a GNU Bayonne 1.0 befejezése jól mutatja, hogyan képzeljük el a washingtoni kereskedelmi gyártóknak. elõtt, 2001 végefelé már elkezdõdött a projekt további útját. Létezik viszont egy híd nem messze GNU Bayonne örökösének fejlesztése is. innen, New Jersey-tõl, a Bayonne. Ez az örökös számos olyan szerkezeti Linux Journal 2002. augusztus, 100. szám Valószínûleg nem nagyon hallott róla választást megpróbál leegyszerûsíteni, senki, tehát a neve is kevéssé használt. amelyek a fejlesztések kezdeti szakaszá- ban kerültek a projektbe, remélve, hogy David Sugar A ma és a holnap az új megoldások által a GNU Bayonne-t több mint 20 éve fejleszt 2002 nyara a GNU Bayonne 1.0-s könnyebb lesz majd átdolgozni és egy- szabad programokat. változatának megjelenését jelzi. Jelenleg ségesíteni. A terv kiválasztása és a kez- A GNU Project számos a GNU Bayonne nemcsak, hogy része deti tervezés nagy része 2001 végén két csomagjának elsõdleges a GNU Projektnek, de csomagját több nap alatt ment végbe, mialatt a londoni szerzõje, köztük a GNU GNU/Linux terjesztés alaprészeként is találkozón összejöttem a preViking tele- Bayonne-é is. Õ az Open Source Telecom megtalálhatjuk, így a GNU/Debian és fonos kiszolgálót tervezõ emberekkel. alapítója és a DotGNU-t kormányzó Mandrake-terjesztésekben is. Minthogy Néhány ilyen változtatás indokolta a bizottság elnöke.

www.linuxvilag.hu 2002. szeptember 45 Vezérfonal

Ahol pingvin még sosem járt Tux megérkezett az Északi-sarkra, így a beágyazott Linux hódítása valóban világméretûvé válik.

ikeres-e a beágyazott Linux? kapcsolatok kezelése mellett a készülék A megjelenõ újabb és újabb hagyományos telefonos szolgáltatások- eszközök láttán azt kell monda- kal is bír: hívástartásra, a hívások vára- Snunk, igen. Ebben a hónapban megtud- koztatására, hívásátadásra, hívásátirá- juk, hogy Tux hogyan hódította meg nyításra, a hívó fél azonosítására is a sarkvidéket. Lehet, hogy a Mikulást alkalmas és így tovább. A snom 100 kereste? Mindenféle aprósággal is fog- belsejében egy 50 MHz-es Motorola

© Kiskapu Kft. Minden jog fenntartva lalkozunk, amelyek ugyancsak beágya- MPC855T PowerQUICC Integrated zott Linuxot futtatnak. Communications processzor és 16 MB RAM található. Saját fejlesztésû A Mikulás nyomában Az Amerikai Óceán- és Légkörkutató Intézet (NOAA) eljuttatta az elsõ webka- 2. kép A StarDot Technologies NetCam merát az Északi-sarkra – a készülék kamerája beágyazott Linuxot futtat. Telepítésére 2002. április 28-án került sor. A gép ami a StarDot Technologies, egy húszfõs naponta négy képet rögzít, amelyek kaliforniai cég terméke. A StarDot 1996- a NOAA honlapján tekinthetõk meg ban készítette elsõ webkameráját, majd ( http://www.arctic.noaa.gov/ 1997-ben egy egyedi kameravezérlõ gallery_np.html). lapkát fejlesztettek ki, amivel több mint A webkamera képein követni lehet az 65 ezer kamerát adtak el. Északi-sark hórétegének és idõjárásának A NetCam beágyazott számítógépén alakulását, valamint a NOAA Csendes- µClinux ( http://www.uclinux.org) fut, óceáni Környezeti Laboratórium kihe- lelke egy 54 MHz órajelû Motorola 3. kép snom 100 VoIP Phone lyezett mûszereinek állapotát – állítja ColdFire processzor 8 MB RAM-mal és James Overland, a NOAA Északi-sark 2 MB flashmemóriával. Két RS-232-es beágyazott operációs rendszere a 2.4.18- Tervezetének vezetõje. soros kapuval rendelkezik, egy 10 Mb/s es Linux-rendszermagra épül, a snom Bár a kamera arra is képes, hogy másod- sebességû ethernetcsatolóval, I2C soros fejlesztõi saját illesztõprogramjaikat és percenként egy képkockányi frissítéssel busszal, valamint négy digitális ki- és könyvtáraikat a grafikus LCD-hez házon mozgóképet továbbítson, a NOAA az bemeneti csatlakozóval. Az eszköz Boa- belül készítették, illetve külön beágya- idõ túlnyomó részében kikapcsolva ( http://www.boa.org) alapú webki- zott HTTP-kiszolgálót írtak. tartja, hogy takarékoskodjon a napele- szolgálót futtat, így webböngészõvel a  http://www.snomag.de/snom100_en.htm mekkel töltött akkumulátor energiájával. világ bármely pontjáról elérhetõ, feltéve, A kamera minden nap négyszer feléb- hogy ethernet-, modemes vagy vezeték hippo Internet Phone red, az Iridium-hálózat alacsony pályán nélküli internetkapcsolattal látjuk el. A hippo Internet Phone ugyanúgy néz keringõ mûholdjainak segítségével fel-  http://www.stardot-tech.com ki, mint egy teljesen átlagos asztali hívja a NOAA kiszolgálóját, majd 2400 telefon, ám a telefonhívásokat ethernet- baud sebességgel, PPP-n keresztül Mindenféle alapú hálózati kapcsolaton és normál továbbítja a legújabb képeket. finomság beágyazott Linuxszal telefonvonalon – PPP-protokollon, a fel- A kamera egy NetCam-típusú készülék, snom 100 VoIP Phone használó internetkapcsolatát használva – A snom VoIP telefon különféle nyílt egyaránt el tudja intézni. A beszélge- telefonszabványokat támogat: SIP, tések nem hagyományos analóg jelek- H.323/H.450 és Asterisk, illetve ismeri a ként, hanem digitálisan, az Interneten HTTP-, a TAPI- és a LDAP-protokollokat keresztül továbbítódnak. A kapcsolat is. A cég szerint a snom 100 segítségével túlsó végén a hívást egyaránt fogadhatja létesített IP-alapú kapcsolatok hangmi- egy másik internetes telefon – akár PC- nõsége semmivel sem marad el a hagyo- alapú, akár célkészülék –, de egy normál, mányos ISDN telefonokétól. Emellett hagyományos telefonkészülék, ide értve a 128×64 képpontos grafikus LCD-n a mobiltelefonokat is. Használatával megjelenõ webböngészõ jellegû felület tekintélyes mértékben csökkenthetõ a segítségével a hívások indítása, a távoli telefonszámla, hiszen nem kell megfi- felügyelet és a beállítások módosítása is zetni a távolsági hívások árát. A hippo 1. kép A NetCam az Északi-sarkon kényelmesen elvégezhetõ. Az IP-alapú Internet Phone egy 4×20 karakteres

46 Linuxvilág Vezérfonal

LCD-vel, ethernethálózaton keresztül. USB-kap- Portslave, OpenSSH 3.1, crontab, 12 gombos csolaton át Rio hordozható MP3-leját- BusyBox, net-tools, rsyncm és egyebek. telefonos szóra is áttölthetünk róla számokat. A Cylades a MontaVista Hard Hat Linux billentyû- A készülék külsõ USB-ethernetcsatoló 1.2-es változatával kezdett el dolgozni, a zettel, hat segítségével kezelni tudja a széles sávú rendszer átalakításait maguk végezték. szolgálta- kapcsolatokat, az ilyen kapcsolattal nem  http://www.cyclades.com tásgomb- rendelkezõ felhasználókra gondolva bal, vala- beépített 56 Kb/s sebességû modemmel Linksys Wireless Presentation Gateway mint egy is, illetve 10 Mb/s sebességû HomePNA- Érdekes, beágyazott Linuxot futtató Ehippo Internet Phone telefon kézibeszé- csatlakozással rendelkezik. készülék, amelynek segítségével a veze- lõvel bír,  http://www.sonicblue.com ték nélküli hálózati kapcsolattal rendel- amely a hagyományos telefonoknál kezõ mobilgépek tulajdonosai bemu- megszokott hangjelzéseket is képes szi- Cyclades Device Server tatókat vagy egyéb mulálni. A hippo Internet Phone telefon- A Cyclades TS100 nagy teljesítményû, adatokat jeleníthet- jának belsejében egy 48 MHz-es Moto- ugyanakkor kis méretû készülék, ame- nek meg. Ezt VGA- rola MPC850/823 PowerPC-típusú, a lyet különféle soros eszközök TCP/IP- szabvány szerinti teljes rendszert egyetlen lapkán hordozó hálózatra való csatlakoztatására használ- eszközön, például

beágyazott számítógép található, amely hatunk. Jellemzõ alkalmazási területei: multimédia-kivetí- © Kiskapu Kft. Minden jog fenntartva 16 MB DRAM-mal gazdálkodik, és a az ipari automatizálás, a sávon kívüli Linksys Wireless tõn, képernyõn MontaVista Hard Hat Linuxán alapuló felügyelet, a gépesített értékesítés, illetve Presentation vagy LCD-n tehetik operációs rendszert futtat. az egyéb soros felülettel rendelkezõ Gateway meg, méghozzá  http://www.hippoinc.com eszközök hálózatba kötése. A készülék úgy, hogy nem kell 10/100 Mb a megjelenítõ eszközhöz csatlakoztatni SONICblue Rio Central sebességû az egyes gépeket fizikailag nem kell a Kiváló hangminõségû, az otthoni ethernet és megjelenítõ eszközhöz csatlakoztatni. hifitornyokba illeszkedõ egység, amely RS-232/RS- A WPG11 lehetõvé teszi, hogy a felhasz- 40 GB-os merevlemezén 650 CD-nyi 485 soros nálók a megjelenítõ vezérlését pillana- zene tárolására képes. Mondhatni egy- kapukkal tok alatt átadják egymásnak. Minden szerû, akár egy CD-lejátszó, ám okos, rendelkezik, felhasználó saját, egyedi kóddal ren- mint egy PC – mármint egy Linuxot így haszná- delkezik, amellyel elérheti és vezérelheti futtató PC. A készülék önálló hangrend- latával az eszközt. Mivel a kábelezésre és a tele- szerként is üzemeltethetõ, és jelentõsen Cyclades TS100 hagyomá- pítésre nem kell külön idõt szánni, a megkönnyíti a zeneszámok tárolását nyos, soros vezeték nélküli kapcsolattal rendelkezõ – „csak be kell helyezni a lemezeket, a felülettel rendelkezõ gépek és mûszerek felhasználók könnyedén, a kódokat többit elvégzi magától” –, illetve szinte is széles sávú TCP/IP-hálózatra kapcsol- megadva adogathatják körbe a megje- hatók. Versenytársaival ellentétben lenítõ használati jogát. Így például egy – amelyek saját fejlesztésû programokon tárgyalás résztvevõi valós idõben, mon- alapulnak – a TS100-on beágyazott dandójuk ismertetése közben azonnal Linux és egyéb nyílt alkalmazások fut- vizuális háttéranyagot szolgáltathatnak nak, így testreszabása is könnyen meg- a többieknek. oldható. Noha alig nagyobb, mint egy  http://www.linksys.com csomag kártya – 7,1×8,6×3 cm méretû –, a TS100 két mikroprocesszort is tartal- Egyre többen vannak… 5. kép SONICblue Rio Central maz, ugyanis belsejébe a Motorola Ha érdekelnek a beágyazott Linuxot MPC855T jelzésû „PowerQUICC Integ- futtató újdonságok, látogass el a végtelen számú, ízlés szerint összeállí- rated Communications Processor” lap- LinuxDevices.com „Embedded Linux tott lejátszási listát hozhatunk vele létre. kája került. Az MPC855T kétmagú, a Cool Devices Quick Reference Guide” Nem szabad elfeledkezni a nagy méretû teljes rendszert egyetlen lapkán tartal- részlegébe, amely a kijelzõrõl, az ötletes kezelõi felületrõl, mazó processzor, amely egyrészt egy  http://www.linuxdevices.com/articles/ illetve azokról a fejlett keresési lehetõ- 50 MHz órajelû PowerPC processzort, AT4936596231.html címen található. ségekrõl, amelyek segítségével pillana- valamint egy külön RISC-motort foglal tok alatt rátalálhatunk a kívánt zenére. magában, az utóbbi az adatátvitellel Linux Journal 2002. augusztus, 100. szám A készülék arra is képes, hogy korábbi kapcsolatos feladatokat vállalja át. szokásaink alapján ajánlatokat állítson 16 MB SDRAM és egy 4 MB-os flash- össze. Belül egy 206 MHz órajelû Intel lemez található benne, bekapcsoláskor a Rick Lehrbaum StrongARM processzor gazdálkodik belsõ programnak a memóriába történõ ([email protected]) 16 MB memóriával, operációs rendszere kibontása az utóbbiból történik. A ké- hozta létre a LinuxDevi- pedig Debian/ARM-alapú Linux. A Rio szülék beágyazott Linux-rendszere a ces.com „beágyazott Central összetettebb hálózat központja- 2.2.14-es rendszermagon alapul, de fut Linuxok portálját”, ként is szolgálhat, így több Rio Receiver rajta néhány nyílt forrású segédprogram amely nemrég tagja lett vékony ügyfél kiszolgálására képes is, mint a GoAhead webkiszolgáló, a ZDNet Linux Resource Centernek. – ezek egyébként szintén beágyazott amellyel a készülék webalapú beállítását Rick 1979 óta foglalkozik beágyazott Linuxot futtatnak – HomePNA vagy és felügyeletét oldhatjuk meg, továbbá rendszerek fejlesztésével.

www.linuxvilag.hu 2002. szeptember 47 Dobbantó

Csomagtelepítési trükkök Miután a felhasználók feltelepítették életük elsõ Linuxát, elõbb-utóbb eljutnak arra a szintre, hogy új alkalmazással szeretnék rendszerüket gyarapítani. Most a csomagtelepítés rejtelmeibe avatjuk be olvasóinkat.

gy terjesztés nemcsak magát az operációs rendszert (tehát a rendszermagot, azaz a rendszer lelkét jelentõ programot), hanem több ezer hozzávaló alkalmazást, Eprogramozási könyvtárakat (libraries), illetve egyéb bõvítmé- nyeket is tartalmaz. Ezeket a könnyebb telepíthetõség kedvéért

© Kiskapu Kft. Minden jog fenntartva csomagokba (packages) szervezzük. Réges-régen, az elsõ Linux-változatok megjelenésekor ezek a cso- magok pusztán tömörített állományok voltak. A telepítéskor meg kellett mondani, hogy melyeket szeretnénk felpakolni, és a rend- szer szépen egyesével kicsomagolta õket a merevlemezünkre. Az idõ múlásával ez a rendszer nem volt hatékony, ezért megszülettek az úgynevezett csomagkezelõk (package mana- gers). A csomagkezelõk adatbázissal bírnak, amelyben a rend- szerünkre feltelepített összes csomag szerepel. Ebben az adat- bázisban nemcsak a csomagok nevei, hanem a hozzájuk tar- tozó állományok is fel vannak tüntetve, így egy csomag eltávo- lítása nem okozhat gondot. Ha új csomagot telepítünk a rend- A Kpackage segítségével könnyen kezelhetjük csomagjainkat szerünkre, természetesen az is bekerül az adatbázisba. A csomagkezelõk nemcsak egy csomag telepítését, illetve eltá- nak a feladata általában bizonyos beállítások megváltoztatása volítását könnyítik meg, hanem a csomagok frissítését is vagy különbözõ könyvtárak és egyéb állományok létrehozása, leegyszerûsítik. amelyek az alkalmazás gördülékeny használatához szükségesek. Egy csomag egyébként több egyszerû tömörített állománynál. Napjainkban a két legelterjedtebb csomagkezelõ a Red Hat Minden csomag tudja magáról azt is, hogy milyen további RPM-je, illetve a Debian által fejlesztett DPKG. A Linux-válto- csomagokra van szükség ahhoz, hogy az adott alkalmazás vagy zatok többsége fõleg ezek valamelyikét használja. bõvítmény gond nélkül mûködjön. Az ablakkezelõknek pél- A SuSE és a Mandrake, illetve a kezdõbb felhasználókat meg- dául szükségük van a grafikus rendszerre, a KDE alá írt alkal- célzó terjesztések elsõsorban az RPM-et támogatják. Rengeteg mazásoknak pedig a Qt-könyvtárakra. Ezeket hívjuk a csomag RPM-et támogató grafikus csomagkezelõ napvilágot látott, függõségeinek (dependencies). amelyek leegyszerûsítik a csomagok telepítését, illetve törlését. Új csomag telepítésekor a csomagkezelõ mindig ellenõrzi a Sõt egyes terjesztések saját fejlesztésû csomagkezelõvel is csomag függõségét, azaz azt, hogy az akadálytalan mûködés- rendelkeznek, amely megkönnyíti a telepítõ CD-n lévõ cso- hez megvannak-e az elengedhetetlen csomagok. Ha nincsenek, magok böngészését, felpakolását. hibaüzenetet kapunk, amely kiírja, hogy milyen további cso- Mi most ezekkel nem kívánunk foglalkozni, hiszen „ahány magokat kell felraknunk. Általában van rá a mód, hogy a terjesztés, annyi szokás”. Inkább azt nézzük meg, hogy akkor csomagkezelõt rávegyük, hagyja figyelmen kívül a függõségi mi a teendõ, ha egy Internetrõl letöltött vagy a telepítõ CD-n gondokat, és mindenképpen telepítse az adott csomagot. lévõ RPM-csomagot szeretnénk rendszerünkre telepíteni az Ebben az esetben azonban számolnunk kell azzal, hogy az rpm parancs segítségével. adott alkalmazás egyáltalán nem fog elindulni. Az RPM-csomagokat roppant egyszerû felismerni, ugyanis Egy csomag azt is tudja önmagáról, hogy melyek azok a cso- .rpm kiterjesztésûek. Mind a Debian-, mind az RPM-csomagok magok, amelyekkel ütközik. Ez azt jelenti, hogy egy rendszer- állománynevei három részbõl épülnek fel: az elsõ rész a ben bizonyos csomagok nem férnek meg egymással: vagy csomag neve, a második a változatszáma, a harmadik pedig azt azért, mert akadályozhatják egymás mûködését, vagy mert mondja meg, hogy az adott csomag melyik processzorcsaládra mind a ketten ugyanazt a feladatot látják el, amelyet csak egy- lett lefordítva (bár ez nem minden esetben van feltüntetve). valaki végezhet el. Efféle összeütközések felhasználói alkalma- Egy RPM-csomagot a következõ módon telepíthetünk: rpm -i zásoknál ritkán fordulnak elõ (hiszen semmi sem zárja ki pél- csomagnØv-vel vagy rpm --install csomagnØv-vel. Ha dául azt, hogy kétféle szövegszerkesztõvel is rendelkezzünk), nem akarjuk felpakolni, csupán az épségét szeretnénk hasonló gondok leginkább programozási könyvtáraknál szok- ellenõrizni, a -V kapcsolót használjuk! Ha az adott csomag tak jelentkezni. Ilyen esetekben a felhasználónak el kell dön- rendszerünkön már fent van, és újabb változatúra kívánjuk tenie, hogy a két csomag közül melyiket szeretné használni. lecserélni, akkor a -U vagy a --upgrade használható. Egy A csomagok két parancsfájlt tartalmaznak: egy telepítõt és egy csomag rpm -e csomagnØv utasítással távolítható el. eltávolítót. Az elsõ a csomag a telepítés, a második pedig az A Debian-csomagok kiterjesztése .deb. A csomagkezelést a dpkg eltávolítás után fut le önmûködõen. Ezeknek a parancsfájlok- utasítással tudjuk végrehajtatni. A csomagtelepítés ennél a

48 Linuxvilág Dobbantó

A csomagkategóriák listája Az egyes csomagfajták kezelésének engedélyezése © Kiskapu Kft. Minden jog fenntartva Ha egy csomagot szeretnénk telepíteni, az adatbázisból megke- resi a nevét, ellenõrzi a függõséget, letölti (vagy átmásolja a CD-rõl), majd meghívja a dpkg-t, amely a telepítést intézi. Ezt az adatbázist az apt-get update paranccsal frissíthetjük, illetve ha új CD-t szeretnénk az adatbázishoz adni, az apt- cdrom add parancsot használjuk. Nagyon fontos, hogyha új forrást tüntetünk fel a sources.list állományban, ezt az utasítást akkor is ki kell adnunk. Egy csomag telepítését az apt-get install csomagnØv módon végezhetjük. Ha a rendszerün- kön lévõ csomagokat az adott forráson megtalálható frissebb változatokra szeretnénk frissíteni, az apt-get upgrade parancsot kell használnunk. Az Internetet böngészve bármikor ráakadhatunk egy-egy hasz- nosnak tûnõ linuxos alkalmazásra. Ezek sajnos nem mindig érhetõk el Debian- vagy Red Hat-csomagban, általában csak A Kpackage a már rendszerünkön lévõ csomagok kezelését teszi egyszerûbbé a forrását közlik, tar.gz típusú állományokban. Ebben az esetben kénytelenek vagyunk lefordítani, majd saját kezûleg változatnál is a -i kapcsoló használatával zajlik. A már telepített telepíteni. De ez csak elsõ hallásra tûnik ördöngös feladatnak. csomagokat a -r-rel törölhetjük le (2002. március, 43. oldal: Elsõ dolgunk a kicsomagolás, ami a tar -xvzf Csomagkezelés Debian/GNU alatt, Mihez kezdjünk, ha már áll ÆllomÆny.tar.gz utasítás kiadásával lehetséges. Lépjünk a rendszer, de valamit telepíteni, frissíteni szeretnénk? – Szy be a létrejött könyvtárba! Az ilyen csomagoknál általában György; 2002. augusztus, 44. oldal: Csomagkezelés GNU/Debian létezik egy INSTALL nevû állomány, amelyben az üzembe alatt (2. rész); Az aptitude további lehetõségei – Szy György) helyezés menete pontosan le van írva. Mi most az általában Érdemes pár szót szólnunk az Alien nevû programról, amely- használatos utat mutatjuk be, de elképzelhetõ, hogy egyes nek segítéségével RPM-csomagból Debian-csomagot készíthe- csomagoknál a telepítés menete eltérõ. tünk, és fordítva. Az Alien minden Linux-változatban Elsõ lépésként adjuk ki a ./configure utasítást! Ilyenkor a fellelhetõ. Ha egy csomagból Debian-csomagot szeretnénk program ellenõrzi, hogy minden a fordításhoz és mûködéshez készíteni, a --to-deb, ha RPM-csomagot, akkor pedig a szükséges dolog megtalálható-e a rendszeren (például C-for- --to-rpm kapcsolókat kell használnunk. Az Alien tar.gz dító). Ha a configure gond nélkül lefutott, kezdõdhet a for- csomagok készítésére is képes, ebben az esetben a --to-tgz dítás. Ha nem, feladatunk annyival súlyosbodik, hogy nekünk kapcsolót kell segítségül hívnunk. Ha például Debian-csomagot kell kitalálni, milyen csomagok hiányoznak, bár azok szeretnénk átalakítani RPM-mé, a következõ utasítást kell a mellékelt leírásban általában fel vannak tüntetve. kiadnunk: alien --to-rpm csomagnØv.deb. A fordításhoz semmiféle programozási elõismeret nem szükséges, Ha már a Debian csomagkezelését érintettük, illik pár szót szólni csak a make parancsot kell kiadnunk. Ezután rendszergazdaként az APT-rõl is. Ez is a dpkg-re épül, és a csomagok „beszerzését”, jelentkezzünk be, és térjünk vissza ugyanebbe a könyvtárba, majd illetve frissítését könnyíti meg. Csak egy parancs kiadásába a programot a make install utasítás segítségével telepítsük fel. kerül, és már le is szedi az Internetrõl a kívánt csomag legfris- Az így telepített programokat csak kézzel tudjuk eltávolítani! sebb változatát. De ez még nem minden, egy utasítás segítségé- vel akár a rendszerünkön lévõ összes csomagot is frissíthetjük. Garzó András Az APT egyébként nagyon rugalmas rendszer, mert teljesen mindegy, hogy a csomagok „beszerzési helye” az Interneten ([email protected]) Körülbelül három éve foglalkozik lévõ egyik tükrözés-e, esetleg a gépbe helyezett Debian CD-n Linux- és más Unix-rendszerekkel. Legjobban az operációs található. Ezeket a forrásokat a /etc/apt/sources.list állományban rendszerek lelkivilága érdekli, de nyitott egyéniség. Kedvenc fel kell sorolnunk. Az APT is rendelkezik adatbázissal, amely- étele a palacsinta, és van egy Richard nevû macskája. Min- ben a telepíthetõ csomagok nevét függõségükkel együtt tárolja. den észrevételt, megjegyzést, levelet szívesen fogad.

www.linuxvilag.hu 2002. szeptember 49 Dobbantó

Versenyhelyzet és holtpont nélkül Sorozatunk elõzõ részébõl már kiderült, hogy az operációs rendszer összes szolgáltatása a folyamatkezelésen alapul. Az elõzõ részben végig a folyamatokat és a velük szorosan összefüggõ fogalmakat tárgyaltuk, korántsem értünk azonban a témakör végére.

essék, még mindig a folyamatoknál tartunk! Nehezen szerû operációs rendszerek azonban azt is megengedik, hogy tudunk elszakadni ettõl a témától, pedig hány más egy folyamat további vezérlési szálakat hozzon létre. izgalmas dologról nem esett még szó, például a fájl- és A szálak sok tekintetben hasonlítanak a folyamatokhoz. Itt is Tmemóriakezelésrõl, vagy a beviteli és kiviteli eszközök vezér- megtalálható a három alapvetõ állapot (futó, futásra kész,

© Kiskapu Kft. Minden jog fenntartva lésérõl. Az elõzõ részben azt tárgyaltuk, hogy az operációs illetve blokkolt). A tárolásukról egy úgynevezett száltáblázat- rendszerek legalapvetõbb szolgáltatásokat ellátó részei is ban kell gondoskodnunk, amely többek között az utasítás- – például a memóriakezelõ vagy az eszközmeghajtók – egy-egy számlálókat tartalmazza, amelyek azt mondják meg, hogy folyamatként, a felhasználói alkalmazásokkal párhuzamosan éppen hol függesztettük fel a szálak futását. futnak (igaz, alacsonyabb, gépközelibb szinten). A folyamatke- A szálak azonban nem folyamatok a folyamatban. Míg ugyanis zelés tehát a legfontosabb, ha nem is a legérdekesebb elem az a folyamatok külön címtartománnyal (memóriaszelettel) ren- operációs rendszerek életében. delkeznek, amelyekbe más folyamatok nem „túrhatnak bele”, A feladatkezelés tárgyalásakor még nem érintettük az úgyneve- addig a szálak közösen osztoznak folyamatuk címtartományán. zett szálakat, illetve nem esett szó a folyamatok közötti kapcso- A szálak megvalósítására két út is kínálkozik. Az elsõ, az operá- lattartás megvalósításáról. Ez utóbbi nagyon fontos, az erõforrás- ciós rendszer a rendszermag szintjén támogatja, hogy egy kezelés ugyanis teljes egészében erre a rendszerre fog épülni. folyamat több vezérlési szállal rendelkezzen. A második, a rendszer egyáltalán nem törõdik a vezérlési szálakkal, a meg- A szálak valósítás a felhasználóra van bízva (azaz maga a folyamat fog Tegyük fel, hogy barátunktól megkaptuk egy weboldal címét, a saját vezérlési szálainak kezelésérõl gondoskodni). Vajon ahol topmodellek fürdõruha-divatbemutatójáról készült fény- melyik megoldás a nyerõ? képek tömkelege található. A férfi felhasználók többsége az Aki úgy gondolja, hogy az elsõ variáció a jobb, azaz a szálak ilyenekre felkapja a fejét, és rögtön be is „izzítja” kedvenc bön- kezelését az operációs rendszerre kell bízni, igaza van. Tegyük gészõprogramját. fel, hogy van egy folyamatunk két vezérlési szállal, és a szálak Az ehhez hasonló oldalak általában rengeteg kis képet tartal- kezelése a felhasználói területen történik. Semmi gond sem lesz maznak, nem is beszélve az elhelyezett reklámok sokaságáról. egészen addig, amíg az egyik szál valami oknál fogva nem Elméletben egy weboldal betöltése a következõképpen zajlana: blokkolódik (például azért, mert visszajelzésre vár egy eszköz- a böngészõ elõször megkapja a HTML-forrást, amelyben töb- tõl). Ebben az esetben az ütemezõ az egész folyamatot blok- bek között le van írva az oldalon megjelenítendõ képek elérési kolni fogja. Ha azonban az ütemezõ tudna a szálak létezésérõl, helye. Ezután sorban egymás után letöltjük a képeket a saját akkor egy szál blokkolása esetén az adott folyamat szálai közül gépünkre, majd megjelenítjük az oldalt. kiválasztana egy futásra kész szálat. Ha nincs ilyen, egy másik A valóságban ez a módszer nem hatékony. Ahhoz, hogy egy folyamatban keres futásra kész szálat. képet letölthessünk a kiszolgálóról, elõször kapcsolódnunk kell, Az sem téved viszont, aki úgy gondolja, hogy a szálak felügye- meg kell várnunk, amíg a kép teljes egészében lejön, majd letének a felhasználó hatáskörébe kell tartoznia. A sebesség bontanunk kell a kapcsolatot. Kis képekrõl lévén szó a kapcso- szempontjából sokkal hatékonyabb, ha a szálak közötti kap- latok létrehozása és lebontása csaknem annyi idõbe telik, mint csolgatást felhasználói szinten végezzük, és nem a rendszer- maga az adatátvitel, tehát rengeteg idõ kárba vész. Több száz magon keresztül. Mivel tökéletes megoldás nincs, az operációs kép esetében annyira idegölõ lehet ez a sok üresjárat, hogy für- rendszerek mind a kétféle módszert egyszerre használják. dõruhás topmodellek ide vagy oda, a felhasználónak elmegy Sajnos, korántsem ez az egyetlen bonyodalom a szálak keze- a kedve az egésztõl. lésének a kérdésében. Így nehézséget okoz, hogy a folyamat A legjobb megoldás az lenne, ha a letöltéseket párhuzamosít- szálai közös adatterületen osztoznak. A legklasszikusabb példa hatnánk. Az ilyen és ehhez hasonló nehézségek feloldására egy rendszerhívás végrehajtása. Az elsõ szál meghív egy rend- – amikor egy folyamaton belül is további párhuzamosításra szerhívást. A Linux esetében ennek sikerérõl (vagy kudarcáról) van szükség – találták ki az úgynevezett pehelysúlyú folyama- az errno nevû globális változó ad felvilágosítást. Mielõtt azon- tokat, közismertebb nevükön a vezérlési szálakat. ban ellenõrizni tudnánk az errno értékét, szálváltás történik, Egy vezérlési szálat úgy is elképzelhetünk, mint utasításokból és a második szál is végrehajt egy rendszerhívást, ennek hatá- álló sorozatot. Az elsõ helyen van az elsõ végrehajtandó uta- sára pedig az errno értéke megváltozik. Amikor a vezérlés sítás, a másodikon a második és így tovább. Minden szálhoz visszakerül az elsõ szálra, az már hamis adatokkal fog dolgozni. tartozik egy utasításszámláló, amely megmondja, hogy éppen Ez viszont csak a jéghegy csúcsa. Mi történik akkor, ha az egyik hol tartunk az utasítások végrehajtásában. szál látja, hogy nincs elég memória, ezért újabb blokkokat kezd Nem meglepõ, hogy minden folyamatnak legalább egy vezér- lefoglalni, miközben egy szálváltás következtében a másik szál lési szállal és egy utasításszámlálóval rendelkeznie kell. A kor- ugyanígy cselekszik?

50 Linuxvilág Dobbantó

A szálak bevezetése nehezen leküzdhetõ feladatok elé állítja az üzeneteket. Például úgy, hogy mindegyiket egy egyedi karak- operációs rendszerek fejlesztõit. Valószínû, hogyha egy meglé- terrel zárja, vagy megegyezünk az üzenetek egy állandó võ rendszerbe szeretnénk beültetni a vezérlési szálakat, azt méretében. nem úszhatjuk meg a rendszer alapjainak újratervezése nélkül. Versenyhelyzetek A folyamatok kapcsolattartása Két vagy több folyamat olykor arra kényszerül, hogy közös Az elõzõ részben alaposan kiveséztük a folyamatkezelés egyik tárterületen dolgozzon. Nem kell messzire mennünk egy legfontosabb elemét, az ütemezést. Most egy másik, nem hétköznapi példáért, csak a legközelebbi 12 termes multiplex kevésbé elhanyagolható részt tekintünk át. moziba, ahol a helyfoglalásokat számítógépes adatbázisban A folyamatok közötti kapcsolattartás (InterProcess Communi- tartják nyilván. cation, röviden IPC) megvalósítása is a rendszermagra hárul. Tegyük fel, hogy minden pénztárhoz tartozik egy terminál, Ha felidézzük magunkban az operációs rendszerek elvi felépí- amelyeken a foglalásokat be lehet táplálni. A terminálok az tését bemutató táblázatot, akkor az IPC-t is valahol a legalsó réteg bugyraiban kell keresnünk. Az ütemezõ-megszakítás- kezelõ réteg tehát újabb feladatot kapott: a folyamatok közötti kapcsolattartás megvalósítását és ellenõrzését. Az IPC témakörébe nem csak az tartozik, hogy két folyamat

miképp tud üzenetet küldeni egymásnak. Az IPC-nek olyan © Kiskapu Kft. Minden jog fenntartva feladatokat is meg kell oldania, mint a versenyhelyzetek felol- dása, illetve a folyamatok közötti összehangolás. Hogy ezek pontosan mit jelentenek, az alábbiakból mindjárt ki is derül.

Üzenetküldés A Linux és Unix-rendszerek a folyamatok közötti kapcsolat- tartást úgynevezett üzenetküldéses rendszerrel valósítják meg. Ehhez mindössze két könyvtári eljárásra van szükség: egyre, amellyel üzenetet továbbíthatunk egy másik folyamatnak; és egy másikra, amellyel fogadhatjuk a nekünk küldött üzenete- ket. Ezeket az eljárásokat a folyamatok bármikor meghívhatják. Az üzenetküldéses rendszer elõnyeit elsõsorban az osztott osztott adatbázist tartalmazó számítógéppel össze vannak rendszereknél élvezhetjük. Sorozatunk bevezetõ részében kapcsolva. A rendszer minden terminálhoz külön folyamatot említettük: az a jól felépített operációs rendszer, amely átültet- rendel, tehát a helyfoglalásokat az összes pénztárból egyszerre hetõ akár több gépbõl összeállított osztott (telepekre) rendsze- végezhetjük. rekre átültethetõ anélkül, hogy az egészet az alapjaitól fogva Képzeljük el, hogy egy idõben két pénztárban is ugyanazt a újra kellene terveznünk. Az üzenetküldés ebbõl a szempontból helyet szeretnék lefoglalni (például azért, mert a teremben már nagyon hatékony, mivel a folyamatok szemszögébõl teljesen csak egy hely maradt, és az utolsó pillanatban érkezõ két mellékes, hogy a kapcsolattartásban résztvevõ másik folyamat vendég ugyanazért a helyért verseng). Nézzük meg lépésen- a telep egy másik gépén fut-e vagy sem. Egy gép esetében ként, hogy mi történik a rendszerben! azonban sokkal gyorsabb megoldásokat is találhatnánk az Az elsõ terminált kezelõ folyamat az adatbázisból ellenõrzi, üzenetküldésnél. hogy a lefoglalni kívánt hely valóban szabad-e még. Mivel az, De miként valósítsuk meg az üzenetküldést? A két legkézen- buzgón nekilát lefoglalni, azaz frissíteni az adatbázis megfelelõ fekvõbb megoldás a randevú és a levelesláda. Az elsõ a követ- rekordját. Igen ám, de éppen ebben a pillanatban történik egy kezõképpen mûködik: ha egy folyamat üzenetet küld egy óramegszakítás, és az ütemezõ a másik terminál folyamatának másik folyamatnak, akkor egészen addig blokkolódik, amíg azt adja át a vezérlést. Ámde ott is áll egy vendég, aki ugyanarra a másik folyamat nem fogadja. Fordítva is így van. Ha egy a helyre áhítozik. Ez a folyamat is ellenõrzi tehát, hogy szabad- folyamat meghívja az „üzenet fogadása” eljárást, mindaddig e az adott hely (tudjuk, hogy szabad, mert a másik folyamat blokkol, amíg az üzenete meg nem érkezik. Ez a megoldás az adatbázis frissítését még nem tudta befejezni), majd lefog- roppant egyszerû, mivel a rendszernek az üzenetet csak át kell lalja azt. Ezután a vezérlés visszakerül az elsõ folyamatra, másolnia az egyik folyamattól a másikhoz. Ez a módszer azon- amely mit sem tud arról, hogy közben valaki a „háta mögött” ban megköveteli, hogy a kapcsolattartásban résztvevõ két már megkapta a kérdéses helyet, így ez is lefoglalja ugyanazt. folyamatnak a futását egymáshoz kell igazítanunk. Ilyenkor úgynevezett versenyhelyzet alakul ki. Ennek lényege, A levelesláda ennél sokkal rugalmasabb. Minden folyamatnak hogy két (ritkább esetben több) folyamat egy idõben ugyan- fenntartunk egy memóriarekeszt, amely meghatározott számú ahhoz az egymás között megosztott adathoz szeretne hozzá- üzenet ideiglenes tárolására képes. Ha az adott folyamatnak férni. Ha nem figyelünk arra, hogy abban a pillanatban valaki üzenete érkezik, a rendszer a levelesládába teszi, és egészen más is dolgozik az adott adattal, akkor a mûvelet végered- addig ott is tartja, amíg a folyamat ki nem szedi onnan. ménye attól függ, hogy melyik folyamat mikor és hogyan A Unix-rendszerek a levelesláda-módszer egyik egyedi formá- futott. Sohasem jósolhatjuk meg tehát, hogy mi lesz egy létre- ját használják, mégpedig a csõvezetékeket (a pipe-okat). A csõ- jött versenyhelyzet eredménye. vezeték olyan levelesláda, amely az üzeneteket nem egymástól Minden olyan rendszerben, ahol két vagy több folyamat meg- elválasztva, külön, hanem egyben, egy fájlként tárolja. A leve- osztott adatokkal dolgozik, számolnunk kell a versenyhelyze- lesláda ürítésekor a folyamat az összes üzenetet egy darabban tek kialakulásával. Vitatkozhatunk arról, hogy az elõbb említett fogja megkapni. A folyamatoknak kell gondoskodniuk arról, mozis példánál mekkora a valószínûsége egy versenyhelyzet hogy a fogadó el tudja különíteni egymástól a beérkezett kialakulásának. De a számítástechnika nem valószínûség-szá-

www.linuxvilag.hu 2002. szeptember 51 Dobbantó

mítás. Másrészt pedig egy olyan rendszerben, ahol egy adat- kárba, azonkívül könnyen el lehet képzelni olyan egyedi bázist egyszerre több százan írnak és olvasnak, és az adatok helyzetet, ahol ez a fajta megoldás nem alkalmazható. akár egy másodpercen belül többször is frissülhetnek, a ver- Erre találták ki az altatás-ébresztés rendszerét. Egy folyamat, senyhelyzetek mindennapossá válhatnak. Ha egy rendszerben ha nem tud belépni a kényes területre, blokkolja magát. Az lehetõség van a versenyhelyzet kialakulására, de ez nem ébresztésrõl majd a másik folyamat fog gondoskodni, miután egészséges helyzet, lehetõleg el kell kerülni. kilépett a kritikus területrõl. Egy folyamat „élete során” sok mindet olyasmit is tesz, ami Vannak azonban olyan esetek, amikor ez sem használható nem fenyeget versenyhelyzettel. A belsõ vagy a saját memória- eredményesen (például az úgynevezett összekötött tároló tartományán végzett számítások nem járnak ezzel a veszéllyel. megvalósításához). Erre találták ki a különbözõ jelzõket Amikor azonban egy megosztott memóriarészhez vagy állo- (semaphore), figyelõket (monitor) és még sok minden mást. mányhoz nyúl, egybõl megváltozik a helyzet. Ezért a folya- A feladat és megoldási módjainak ismertetése azonban matok tevékenységének ezt a részét a folyamat saját kényes meghaladja e cikk kereteit, de a kíváncsibb olvasók az Inter- (kritikus) területének nevezzük. neten rendkívül sok anyagot találhatnak errõl és az IPC más A versenyhelyzetek elkerülésére a kézenfekvõ megoldás a kérdéseirõl (az összekötött tároló, közismertebb nevén a kölcsönös kizárás elve: meg kell tiltanunk, hogy egy idõben gyártó-fogyasztó kérdésére a legjobb megoldást az üzenet- egynél több folyamat is ugyanahhoz a megosztott dologhoz küldés alkalmazása jelenti). nyúlhasson. Másképpen szólva el kell érnünk, hogy egyszerre A lényeg az, hogy olyan megoldást találni, amely minden

© Kiskapu Kft. Minden jog fenntartva csak egy folyamat „tartózkodhasson” a saját kényes területén. helyzetben megvéd minket a versenyhelyzetektõl, nagyon Ennek megvalósítására az egyik legkézenfekvõbb megoldás az, nehéz. De szerencsére sok esetben az üzenetküldés is ha valamilyen úton-módon az ütemezést a kényes feladatok felhasználható erre a célra. idejére felfüggesztjük. Ahogyan sorozatunk elõzõ részében is említettük, az egész ütemezés a megszakításrendszerre épül. Filozófusok és holtpontok Tehát a megszakításokat csak le kell tiltanunk egy erre megfe- Bizonyos esetekben nemcsak a versenyhelyzetek elhárítására lelõ processzorutasítással. A kényes rész után pedig csak kell figyelmet fordítanunk, hanem arra is, hogy bizonyos „vissza kell kapcsolni” azokat. Na de rendelkezhet egy közön- eseménysorozatok ne következhessenek be. Ezt összehango- séges folyamat ekkora hatalommal a számítógépünk felett? lásnak nevezzük. Nézzünk erre egy ma már klasszikussá vált Mi történne, ha a saját kényes területén végtelen ciklusba példát, az étkezõ filozófusok kérdését. Öt filozófus egy kerek kerülne? – lefagyna ez egész szekció. Ez nyilvánvalóan nem asztal körül ül, elõttük egy-egy tál spagetti, a tányérok között jó megoldás, tehát valami másra lesz szükség. egy-egy villa. A filozófusok élete meglehetõsen sivár, mivel Próbálkozhatnánk esetleg egy olyan globális változó bevezeté- csak gondolkodásból és evésbõl áll. sével, amelynek megmondja, van-e valamilyen folyamat a Ha egy filozófus sokáig gondolkozik, elõbb-utóbb megéhezik, saját kényes területén. A gyakorlatban ez úgy zajlana, hogyha és ennie kell. Igen ám, de a spagetti annyira csúszós, hogy egy egy folyamat be szeretne lépni a kritikus területre, a változó villával képtelenség megfogni, ezért a sikeres étkezéshez lega- értékét ellenõriznie kell. Ha az 0, akkor belép, és beállítja 1-re; lább két villára van szükség. A filozófus csak a tányérja melletti ha eredetileg nem 0 volt az értéke, akkor folyamatosan ellen- villákat próbálhatja megszerezni, és egyszerre csak egyet. õrzi, hogy mikor lesz az értéke ismét 0. A feladat egy jó algoritmus megírása az étkezésre, amely soha- Ezt a folyamatos ellenõrzést tevékeny várakozásnak nevezzük, sem akad el. ugyanis a folyamat semmi érdemlegeset nem tesz, mégis Ez nem is olyan egyszerû feladat. Nézzük például legegysze- zabálja a processzoridõt. Ám ennek a megoldásnak is akad rûbb megoldást, amikor a filozófus elõször a bal, majd a jobb hátulütõje: egy kis szerencsétlenség következtében itt is villát próbálja meg megszerezni. De mi történik, ha az összes kialakulhatnak versenyhelyzetek. Egy rosszul jött óramegsza- filozófus egyszerre éhezik meg, és egy idõben kaparintja meg kítás következtében elõfordulhat, hogy egyszerre két folyamat a tõle balra lévõ villát? Ebben az esetben egyik filozófusnak is bekerül a saját kritikus területére. Például az egyik folyamat sem lesz esélye arra, hogy a jobb oldalit megszerezze, és ellenõrizte, hogy a változó értéke 0, és át akarja állítani 1-re, kialakul az úgynevezett holtpont. azonban közben történik egy váltás, és egy másik folyamat A holtpontok és a versenyhelyzetek elkerülése is az IPC belép a saját kritikus területére. Miután a vezérlés visszakerül témakörébe tartozik, még ha ez nem is jár mindig közvetlen az elõzõ folyamatra, az nem fogja ismét ellenõrizni a belépés adatátvitellel. Nem jó, ha egy rendszerben elõfordulhatnak lehetõségét, így egy idõben két folyamat dolgozhat a megosz- holtpontok és versenyhelyzetek fordulhatnak elõ. tott adatokkal. Az étkezõ filozófusokkal tulajdonképpen ugyanaz a gond, Bizonyos szempontból jobb megoldást jelent az úgynevezett mint a korlátozott számú beviteli-kiviteli eszközök vezérlésével, szigorú váltogatás, amikor is a kritikus területre való belépés ha a villákat úgy fogjuk fel, mint egy-egy ilyen eszközt. A holt- jogát a folyamatok egymásnak „adogatják”, tehát az A folyamat pontok tehát a következõ részben is visszaköszönnek, amikor egészen addig nem léphet be, amíg a B folyamat ki nem lépett, is a különbözõ eszközök kezelésével foglalkozunk, továbbá viszont ezután a B folyamat sem léphet vissza mindaddig, néhány olyan megoldást mutatunk be, amelyek segítségével amíg az A folyamat be nem fejezte a saját kényes területét. elkerülhetjük a holtpontok kialakulását. A szigorú váltogatás megvéd minket a versenyhelyzetek kialakulásától, csakhogy olyankor nem hatékony, ha a két Garzó András folyamat sebessége különbözõ, mivel a lassabb a gyorsabb folyamatot hátráltatni fogja. ([email protected]) körülbelül három éve foglalkozik Sokféle más megoldást is kitaláltak a tevékeny várakozásra Linux- és más Unix-rendszerekkel. Legjobban az operációs alapozva, amellyel szigorú váltogatás nélkül is elkerülhetjük rendszerek lelkivilága érdekli, de nyitott egyéniség. Kedvenc a versenyhelyzeteket. Az alapkérdés azonban még mindig étele a palacsinta, és van egy Richard nevû macskája. Min- fennáll: a tevékeny várakozás közben sok processzoridõ megy den észrevételt, megjegyzést, levelet szívesen fogad.

52 Linuxvilág

Dobbantó

Egy kis térinformatika A TNT programcsomag bemutatása.

éhány éve térinformatikával foglalkoztam, és akko- a TNT-programok is meg tudnak birkózni (az alábbiakban riban hívták fel a figyelmemet egy programcsomagra, a TNT-programleírást használtam forrásként.) ami az oktatásban is jól használható. A MicroImages A TNT-programok adatszerkezetének megértéséhez érdemes (N http://www.microimages.com) cég által forgalmazott cso- megtekinteni a projektfájl felépítését (lásd az ábrát). magban TNT néven egy teljes térinformatikai rendszer rejlik. A próbaváltozat próbaadatokkal az ftp-kiszolgálójukról letölt- hetõ. Most ennek rövid bemutatására vállalkozom. Maga a program több felületen is elérhetõ. A Unix az alapfelü-

© Kiskapu Kft. Minden jog fenntartva let, hiszen a windowsos változat is a TWM ablakkezelõn ke- resztül tudja megjeleníteni a program különbözõ ablakait. Ezen belül a rendszer több Unix-változatot támogat, például Sun SPARCstationt, a HP 9000 sorozatú 700 munkaállomást, a Sili- con Graphics munkaállomást, az IBM RS/6000-t (Power PC ala- pú processzor), és a DEC Alpha AXP sorozatot (Digital Unix). Mûködéséhez a következõ követelmények teljesítése szüksé- ges: megjelenítéshez legkevesebb 256 színû képernyõ, körül- belül 400 MB merevlemez-terület, minimum 16 MB memória ajánlatos (természetesen ezt az értéket a feldolgozandó adatok mennyiségével arányosan növelni kell). A PCk közül az Intel 486-alapú vagy AMD, Cyrix CPU mate- matikai co-processzorral, Pentium vagy ennél újabb ajánlott (Windows NT esetében DEC Alpha AXP processzor is lehet- séges). Legkevesebb 16 MB memóriával kell rendelkeznünk, A TNT-objektumok belsõ felépítése a képernyõ-megjelenítésnek legkevesebb 256 színûnek és 640×480-as felbontásúnak kell lennie (ajánlott az 1024×768-as Itt – annak ellenére, hogy a vektoros és raszteres képeket meg felbontás használata). A rendszer csak PC-n hardverkulcsos, tudja jeleníteni és szerkeszteni is lehet – nem mondhatjuk el, ezért egy párhuzamos vagy soros kapu is szükséges. Egy egér hogy a program vegyes adatszerkezetet használ. Ezt tapasz- használata is igényeltetik, mert enélkül a rendszert nem lehet talataim alapján állítom, mert amennyire átláttam a program- használni. Windows 95, 98 vagy NT esetében elkél a CD-ROM- csomagot, a vektoros és raszteres képeket külön alprogram meghajtó, és megközelítõleg 300 MB merevlemez-terület. Mini- tette szerkeszthetõvé, és igazából csak a megjelenítésre alkal- mum kiépítés Macintosh gépeknél a Power Macintosh 60× vagy mas harmadik program volt az, ahol mindkettõt együtt lehetett G3 processzor. A többi feltétel megegyezik az elõbb felsoroltakkal. használni. A Linuxszal szemben támasztott követelmények azonosak a PC-nél ismertetettekkel, errõl és a telepítésrõl a késõbbiekben A projektfájl elemei még szó lesz. • Raszteres objektumok Néhány szóban arról, mit is jelent a térinformatika. Feladata A raszteres objektum jellemzõje, hogy kétdimenziós: általánosságban a térbeli, helyhez köthetõ adatok ábrázolása, sorokból és oszlopokból épül fel. A legkisebb egység, megjelenítése, valamint ezen adatok kiértékelése. Eszköztárába amit képes megjeleníteni és tárolni tud, a pixel, ami többféle nagyon sok adatgyûjtési módszer, eszköz beletartozik. Néhány formájú lehet, az esetek nagy részében négyzet alakú ezek közül a teljesség igénye nélkül: (gondoljunk csak az általunk használt raszteres képfor- mátumokra, például .jpg, .gif, .tif stb.). Egy raszteres képre • földi adatgyûjtõ eszközök, jellemzõ pixeleinek nagysága és tájolása (a derékszögû • földmérõ mûszerek, eljárások, koordinátarendszertõl való elfordulásuk). A raszteres adat- • légifelvételek, szerkezetben a pixelek helyzetén kívül fontos adat a pixel- • ûrfelvételek. hez rendelt és általában megjelenített érték. Ennek az értéknek a nagyságát általában a pixelhez rendelt színek Az így összegyûjtött adatokat az informatika fejlõdésének milyenségével érzékelhetjük. Gondoljunk például egy köszönhetõen digitalizálják, és úgynevezett térképi adatbázi- légifelvételre, ahol a hétköznapi életben ismert fénykép- sokban tárolják. Ezekbõl az adatokból szakértõ kezekben nagy- hatásoknak megfelelõen a létrejövõ képen az erdõk zöldek, számú információ nyerhetõ, így számos szakterületen felhasz- a tavak kékek stb. Ha ugyanezt a területet infrakamerával nálhatjuk – ilyen például a honvédség, a térképészet, a mezõ- fényképezzük, az adatrögzítõrõl beolvasott képek színei gazdaság, a bányászat és a geológia. jócskán eltérhetnek az általunk megszokottakétól (esetleg A késztermékek és az alapadatok igen sokfélék lehetnek. Ezek az erdõ mélyvörös színben jelenik meg). Ezen raszterkép esetében csak azok magyarázatával foglalkozom, amelyekkel mérete általában jóval nagyobb a hasonló tartalmú vektoros

54 Linuxvilág Dobbantó

CAD-kép méreténél, hiszen itt jóval több adatot kell tárolni legnagyobb CAD-objektum 2 000 000 000 rajzelemet (a vonal esetében ellentétben a vektoros adatszerkezettel tartalmazhat. A szabadon letölthetõ TNTlite esetében a nemcsak a két végpontot, hanem a vonal összes köztes CAD-objektumok száma legfeljebb 500 rajzelem lehet. pontjának koordinátáit rögzíteni kell.) A TNT-programok a megjelenítési lehetõségeknek megfele- Egyéb adatok, késztermékek lõen a szükséges átalakítások után a különbözõ színmély- Ebben a részben azokat az adattároló, adatmegjelenítõ eszkö- ségû képeket meg tudják jeleníteni, függetlenül attól, zöket próbálom bemutatni, amelyek az elemzéseknek a vég- hogy valójában milyen színképzési eljárással lettek tárolva, eredményei, de akár az alapjai is lehetnek. illetve különbözõ fedvényeket, hisztogramokat stb. is létre tudunk belõlük hozni. • TIN-objektumok A raszter által kezelt színmélységek a követezõek lehetnek: A TIN vagy Triangulated Irregular Network jelentése 1 bit (binary), 4 bit, 8 bit, 16 bit, 32 bit vagy 64 bit. Képes szabálytalan háromszöghálózat. A TIN-objektumok 128-bites rasztert is kezelni, de csak különleges feltételek négyféle rajzelembõl épülhetnek fel: pontokból, élekbõl, mellett. A TNT professional által támogatott legnagyobb háromszögekbõl és héjból. Azok számára, akik nem igazán raszterkép mérete 2 000 000 000×2 000 000 000, pixelenként tudják, mi is ez, álljon itt egy kis magyarázat: a dombor- 1-tõl 128-bites adattartalommal. Annak szemléltetésére, zatnak vannak olyan elemei, amelyek adatait valamilyen hogy ez milyen nagy érték, a leírás Dél-Afrikát említi adatgyûjtõ eszközzel rögzítve könnyedén létre tudunk

(amelynek területe 1200×1500 km), amirõl a 10m×10 m-es hozni egy domborzatmodellt. Leegyszerûsítve: ha a © Kiskapu Kft. Minden jog fenntartva felbontású SPOT mûhold felvételei csak 120 000×150 000 pontokat csak a legközelebb lévõ szomszédaival kötjük pixelt használnak fel. Dél-Afrika esetében ennek a pixelmé- össze, a terepfelszínhez nagyon hasonló háromszögekbõl retnek egy milliméternél kisebbnek kellene lennie ahhoz, álló térbeli felület hozható létre. Példaként lássuk a TIN- hogy a program legnagyobb teljesítõképességét kihasznál- modellt mutató ábrát (lásd a 2. képet). hassuk. A szabadon felhasználható TNTlite esetében a legnagyobb méret „csak” 314 368 pixel (1024×256, 512×512, 640×480 pixel). • Vektoros objektumok A TNT-programok adatfelépítése vektoros és CAD-adatokat különböztet meg, holott mindkettõ a vektoros adatszer- kezethez tartozik. A következõkben a TNT-leírás általi megkülönböztetést mutatjuk be. A vektorelemek és objektumok három alapvetõ elembõl épülnek fel: pontokból, vonalakból és poligonokból. A pon- tok a pontszerû egyetlen mérési ponttal helyhez köthetõ elemeket ábrázolják, például a hétköznapi életbõl vett mérési pontok a villanyoszlopok. A vonalak két végponttal határolható egyenesek, mint például egy kerítés. A poligon tulajdonképpen egyenes vonalakból felépülõ vonalsor. Ezeket használhatjuk mondjuk egy határvonal megrajzo- lására. Érdemes megemlíteni, hogy sok esetben az ívek, a körívek is ilyen poligonokként kerülnek tárolásra, mivel az ív mért pontjai azok, amelyek meghatározzák a formáját, 1. kép Egy ITR-ben készített térképrészlet .dxf állománya beolvasás után és az csupán egy adat, hogy a programnak a megjelenítés- kor nem egyenesekkel, hanem ívekkel kell õket összekötnie A TIN-objektumok az elemeknél annyival többek, hogy itt (AutoCAD esetében ezt jól lehet látni). Fontos megemlíteni a pontokat csomópontokként tároljuk, a vonalakat pedig a vektoros objektumok egyik fontos jellemzõjét, hogy belõ- poligonokként. lük úgynevezett topológiai hálózat hozható létre. Ennek A TNT professional esetében az egyszerû TIN-objektumok a hálózatnak többek között az a feladata, hogy az egyes legnagyobb száma a projektfájlon belül 2 000 000 000 há- földterületek egyetlen egységes rajzelembõl, egy zárt poli- romszög, 2 000 000 000 él és 2 000 000 000 pont. A TNTlite gonból álljanak össze. Gondoljunk csak földhivatalokban esetében ez csak 1500 pont. meglévõ ingatlan-nyilvántartásra. Csak a földterülethez • Szöveges objektumok kapcsoltan van értelme a tulajdonos adatainak társításának, Ide tartoznak a különféle feliratok és a leíró adatok (attribú- a határvonal egyes elemeihez külön-külön nem sok értelme tumadatok) egy része. A felhasznált rajzok – legyenek azok lenne. A vektoros adatszerkezet szinte sugallja, hogy réteg- vektoros, raszteres, a képi elemek XY (esetleg Z mint magas- megjelenítésre is szükségünk van. A rétegek feladata az ság) adatain túl egy-egy egyéb leíró jellemzõt is hozzájuk egyes, valamilyen közös tulajdonság szempontjából azonos csatol. Ezeket az adatokat a rendszer általában nem a képi vektorelemek kezelhetõségének megvalósítása (például állományon belül, hanem egy külön adatbázisban tárolja. a víznek, az erdõs területeknek egy-egy saját egyedi Az adatok tartalmazhatják az objektum azonosítóját, a rajz- megjelenítési formával kell rendelkezniük). elemek stílusát stb. Például egy földterület esetében a hely- A TNT által CAD-objektumnak hívott rajzelemek több rajzi számot egy külön adatbázisban tároljuk, ami az adat- vektoros elembõl épülnek fel. A TNT-programok többek bázisban az adott földterület azonosítójaként szerepel. közt a következõ elemek rajzolására képesek: pont, vonal, • Adatbázis-objektumok téglalap, poligon, kör, húr, ék, szöveg. Az adatbázis-objektumok az elõbbi leíró adatokhoz kapcso- A TNT Professional esetében a projektfájlban tárolható lódnak, hiszen sok esetben azokat valamilyen adatbázisban

www.linuxvilag.hu 2002. szeptember 55 Dobbantó

5. kép Példa a raszterobjektumokra

korlátja nem olyan erõs –, az ODBC használata. Ebben az esetben több DBMS-program adattábláihoz kapcsolódha- tunk, például dBase-hez és Oracle-hez. A TNT Professional esetén a külsõ adatbázis mérete akkora

© Kiskapu Kft. Minden jog fenntartva 2. kép Az elõbbi állomány szerkesztés közben lehet, amekkorát a rendszer elbír. Például a dBASE IV fájlnak kisebbnek kell lennie kétmilliárd bájtnál, ami több mint egymilliárd rekordot tesz ki. A TNTlite esetében ez a szám nagyságrendekkel kisebb, csupán 1500 rekord. A belsõ adatbázis esetén az adatbázis a TNT projektfájlján belül kerül tárolásra. Ekkor természetesen külsõ, már meglévõ adatbázisokból is importálhatunk adatokat, így dBASE III+ és IV, INFO, R:BASE adatbázisokból, ODBC- bõl, Tydac SPANS leíró, illetve vesszõvel határolt szöveges fájlokból. E feladatok ellátásért többek közt a TNTmips nevû programrész felelõs.

A programról Sajnos a programcsomag bemutatásakor erõsen válogatnom kell, hiszen a program rengeteg olyan szolgáltatással rendel- kezik, amit csak egy térképész vagy térinformatikus tud érté- kelni. Emiatt inkább csak a megemlítés szintjén sorolnám azokat az adatfeldolgozó lehetõségeket, amelyeket a program a magáénak tudhat: 3. kép A bemutató állományok között találtam ezt a 3D-s rácsra alakított • GPS- (Global Positioning System) adatok beolvasásának mûholdképet a lehetõsége. • a CartoScriptTM, a TNT térképészeti parancsnyelv lehetõvé teszi a szimbólumok és egyéb rajzelemek egyszerû és gyors kezelését, például a vonalak típusának együttes módosítását. • Jól testreszabható topológiaépítõ szolgáltatás. • 3D-s domborzatmodellek, TIN-modellek. • Tematikus térképkészítési lehetõség, például éves csapadék- térkép megyénkénti részletességgel. • Rasztertranszformációs lehetõség: a lapolvasóval beolvasott kép földrajzi koordinátákhoz való igazítása. • Felületmodellek készítése, elemzése, vízgyûjtõterület 4. kép Talán mindenki emlékszik meghatározása. a piros-kék lencséjû 3D-s képet adó szemüvegre • Raszterképmozaik, képelemzési lehetõségek, hisztogramok készítése. tároljuk. A képi adatokhoz kapcsolódó adatbázisadatokat • Lekérdezésépítõ a csatolt adatbázisokhoz. az egyes raszter-, vektor-, CAD- vagy TIN-objektumokhoz • Meglehetõsen sok vetületi és mértékegységrendszert rendelhetjük hozzá. Kétféle adatkapcsolat hozható létre. támogat. A külsõ adattárolás esetében a projektfájlhoz egy külsõ fájlt • Mozgókép, film is létrehozható a segítségével, mintha a csatolunk, és abban tároljuk az adatokat. Ezen belül ismét terület felett repülnék, vagy egy dombtetõrõl néznénk körül. két lehetõség van. Az elsõ esetben az adatok egy külsõ adatbázisfájlban vannak tárolva, így többek közt ASCII szö- A program telepítése veges, DBASE, INFO adatbázis, Mapinfo leírófájl RBASE Mint említettem, én csak a próbaváltozatot töltöttem le. Telepí- formátumban. Ebben az esetben az adatbázis sorainak tése meglehetõsen egyszerû feladat volt: a letöltött tar.gz fájlo- adatai közvetlenül a hozzájuk kapcsolódó sorokhoz, rajz- kat kicsomagoltam a saját könyvtáramba. A program könyvtá- elemhez kapcsolódnak. A másik eset, amit talán jobban rán belül nem találtam telepítõprogramot, hanem csak a már lehet alkalmazni – hiszen a csatolható adatok mennyiségi lefordított futtatható fájlokat. Futtatáskor a programok nálam

56 Linuxvilág Dobbantó

a libstdc++.so.2.8 fájlt keresték. Mivel ennek jelenleg a és néhány egyszerûbb játék is libstdc++.so.3, libstdc++.so.4 változatai voltak fenn, fel kellett ment mellette. Ez az idõtartam telepítenem egy korábbi változatot, ami együttmûködött a soknak tûnhet, de még régebbi keresett változattal. A libstdc++2.9-glibc2.1.deb által tartalma- tapasztalataim szerint az zott libstdc++-2-libc6.1-1-2.9.0.so fájl bizonyult megfelelõnek. AutoCAD Map Windows NT Ezek után a program mindenféle hiba nélkül mûködött. alatt szintén 256 MB memóriával egy 400 MHz-es Pentium II-es A program részei, feladataik gépen, jóval kevesebb adat ese- A telepítési könyvtárban több futtatható fájl van, némelyikük tében is hasonló idõtartamot egy másik futásához szükséges, a többség azonban saját önálló mutatott (a mért pontok száma grafikus ablakot indít el. Most lássuk õket feladatuk rövid ott nem érte el az ötvenezret). leírásával! Az idõ, úgy gondolom, nem volt rossz, viszont zavaró volt, hogy • tntview: talán ez a program rendelkezik a legtöbb szolgál- 6. kép Készítsünk a 3D-s az importálandó adatokat elõbb tatással. Ebben az ablakban új 2D-s, illetve 3D-s projektfájl- domborzatmodell alapján filmet! talán szûrni kellett volna, mielõtt adatcsoportot tudunk létrehozni, új nézeti ablakot tudunk a program bármiféle hálózatot létrehozni, valamelyik meglévõ projektrõl másolatot tu- megpróbálna létrehozni. Gon-

dunk készíteni, több projektelemet is meg bírunk nyitni. doljunk csak bele abba, hogy egy adott földterületbõl és a rajta © Kiskapu Kft. Minden jog fenntartva Itt található a külsõ adatbeolvasási lehetõség, a parancsfájl- átmenõ útból három területi egység jön létre, attól függetlenül, építõ, az eszköztár-beállító és a szolgáltatásbeállító ablak, hogy ezek külön rétegben helyezkednek el. valamint a súgóeszközök indítója is. Egy másik település pontjait és vonalait úgy töröltem, hogy az • tntdisp: az elõbbi program egyszerûsített változatát elemek száma kisebb legyen a próbaváltozat által maximálisan jeleníti meg. használhatóknál. Az adatok beolvasása egy másodperc alatt • tntmips: a beolvasott adatok raszteres és vektoros kiérté- elkészült (lásd, a 4. képet). kelése ebben a programban végezhetõ el. A Display menü- Ezek után az így elkészült állományt az sedit programmal beol- ben rengeteg átalakítást segítõ menüpontot találunk. vastattam, és a rajzszerkesztési lehetõségekkel próbálkoztam. Ajánlott a Display/GettingStarted pont menüinek megte- Szerintem viszonylag rövid idõ alatt meg lehet szokni a kezelõ- kintése. felület sajátosságait. Egyetlen furcsasággal találkoztam: a billen- • tntmenu: az elõbbi szolgáltatás menüpontjait jeleníti meg. tyûzet többek között a BACKSPACE, DELETE billentyûkre és a • tntatlas (a startatlasszal azonos): a rajzok megjelenítését, az számbillentyûzetre nem válaszol. Ez valószínûleg a többi Unix- atlasfájlok (elõre meghatározott nézetû képek) változatról történõ átprogramozás eredménye (törléskor a megtekintését, a különféle nézetek elõállítását segíti. DELETE használata helyett a szöveget az egérrel jelöltem ki, és • sdedit: a vektoros és a CAD-állományok szerkesztését teszi aCTRL+C billentyûkombinációval töröltem.) Az ehhez kapcso- lehetõvé. lódó képen jól látható a rajzeszközök beállítására szolgáló • georef: az RGB raszteres képfájlok átalakítását segíti. Számos GeoToolbox (jobb oldalt lent), illetve a rétegkezelõ ablak (jobb átalakítást ismer. oldalt fent). Ez utóbbiban sorrendben a réteg elemeinek kivá- • featmap: a raszteres képfájlok szerkesztését teszi lehetõvé, laszthatóságát, beállításait, részletes adatait, a rétegmûvelete- és a területek osztályozását segíti. ket, a láthatóságot és a törlését lehetett kiválasztani. A CAD Tools ablak (középen fent) – mint látható – eléggé sokféle új A próba tapasztalatai rajzelem hozzáadását és beállítását teszi lehetõvé. A programcsomag néhány szolgáltatását kipróbáltam. Kíváncsi A programhoz letöltöttem az ugyancsak elérhetõ próbaállo- voltam a sebességre, az átláthatóságra, a kezelõeszközök elér- mányokat is. Az egyik ezek közül a 3DSIM könyvtár, amiben hetõségére, egyáltalán: arra, hogy mennyire felhasználóbarát. egy 3D-s domborzatmodell volt látható az alapjául szolgáló Az elsõ próbálkozás során lakóhelyem egy nagyobb területé- légifelvétellel együtt. A domborzatmodell érdekessége többek nek beolvasására voltam kíváncsi. Természetesen a teljes beol- között az volt, hogy „körülnézhettem benne”, vagyis a képen vasás lehetetlen volt, mivel a letölthetõ programváltozat adat- bal oldalon látható domborzatmodellen a kamerát körbe mennyiségét a beolvasandó terület jócskán meghaladta, a tudtam forgatni. program azonban a betöltési folyamatot ilyenkor is végrehajtja, és csak ennek végeztével jelzi a határoltságot. A beolvasandó Összegzés adatokat még régebben az ITR-bõl (interaktív térképszerkesztõ Összességében a program jól kezelhetõ, rengeteg adatkezelési rendszer, magyar fejlesztésû DOS-os program) .DXF állomány- lehetõséget tartalmaz és jól leírt. Ezért mindenkinek a figyel- ba mentettem. Az állomány mérete közel 14 MB volt, a tartal- mébe ajánlom, egy kipróbálás erejéig, és térinformatika-okta- mazott pontok száma csaknem 400 ezer (ez csak a pontok tási, -tanulási célokra ez a gyengített lehetõségekkel rendelkezõ száma az összekötõ vonalak, feliratok, jelkulcsok nélkül). változat is mindenképpen jól használható. A beolvasást egy 600-ról 900-ra felpörgetett Celeron procesz- szoros, 256 MB memóriával rendelkezõ gépen, Debian SID Tóth Béla operációs rendszerrel végeztem. A külsõ vektoros adat beolva- ([email protected]) sásáról tudnunk kell, hogy ez a program, ha úgy van beállítva, Nõs, két gyermek büszke atyja. Dolgozott föld- önmûködõen megpróbálja létrehozni a topológiát. A térkép mérõként, majd térinformatikus szakmérnöki többek közt tartalmazta az épületeket, a melléképületeket, képesítést szerzett. Egyaránt otthonosan mo- a földterületeket, az utakat és a vízfolyásokat is. Az adatok zog a CAD és a térinformatikai programokban, beolvasása, átalakítása nem teljes processzorkihasználtság valamint a DOS- és Windows-alkalmazásokban. mellett 4,5 órát vett igénybe, mivel idõnként az OpenOffice Legkedveltebb elfoglaltsága már két és fél éve a Linux.

www.linuxvilag.hu 2002. szeptember 57 Szaktekintély

Legyen saját IRC-botod! Egy kis Perl-tudás, kevés hálózati ismeret és egy csipetnyi RFC-olvasgatás a biztos receptje egy egyéni IRC-bot készítésének.

z IRC (Internet Relay Chat) egy olyan TCP/IP-alapú Így gyorsabb a fejlesztés, és biztosan senkinek nem okozol protokoll, amely hálózaton keresztül valós idejû kellemetlenséget. Egy kiszolgáló telepítése és beállítása párbeszédek folytatását teszi lehetõvé. Ha két ügyfél túlmutat e cikk keretein, ezért kérlek, vedd a fáradtságot, és csevegniA szeretne egymással, mindketten csatlakoznak egy- válassz egyet a terjesztésedhez megfelelõk közül. A Debiant egy kiszolgálóhoz (nem feltétlenül ugyanahhoz). Legalább használók az csomag telepítésével az ircd két változatához is az egyiküknek tudnia kell a másik azonosítóját (becenevét, hozzájuthatnak. Õk ircd néven az Undernet hivatalos azaz nickjét), hogy a beszélgetés megkezdõdhessen. Az elsõ kiszolgálóját érhetik el, míg a dancer egy kisebb hálózatokra

© Kiskapu Kft. Minden jog fenntartva ügyfél üzenete elküldéséhez azt a kiszolgálót használja, tervezett változat. amelyikhez kapcsolódott. Amikor a kiszolgáló megkapja a kézbesítendõ üzenetet, felállít egy útvonalat, amelyen kiszol- A protokollról nagyvonalakban gálóról kiszolgálóra terjed az üzenet, amíg csak el nem éri azt, Az IRC-hálózaton mind a kiszolgálók, mind az ügyfelek üzene- amelyikhez a másik ügyfél kapcsolódott. Így õ megkapja tekkel tartják a kapcsolatot. Egy üzenet a következõképpen fest: az üzenetet, és ugyanezzel a módszerrel válaszolhat rá. Habár az IRC egyszerû szöveges alapú protokoll, a biztonság érde- [’:’ ] kében több dologra is ügyel. Egyrészt az ügyfél csak akkor  kapja meg az üzenetet, ha a címzettek között van (ugyanazt az üzenetet több becenévre is el lehet küldeni), másrészt egy Az elõtag (prefix) használata nem kötelezõ. Az elõtag jelenlétét kiszolgáló egy adott ügyfél megtalálásához csak egyetlenegy a kettõspont (:) mutatja. A kettõspont és az elõtag között nem másik kiszolgálónak adhatja tovább az üzenetet. Ez jó, hiszen lehet szóköz. Az elõtag az üzenet feladójának azonosítását valamiféle biztonságot nyújt, ha egy IRC-hálózaton a kiszol- szolgálja, ha elmarad, az IP-csomag küldõje lesz a feladó. Elsõ- gálók közül remélhetõleg nem az összes kapja meg az sorban kiszolgálók használják; ha ügyfél használja, és nem üzenetedet. Ez a felépítés ugyanakkor gátja is a rendszernek. önmagát tünteti fel feladóként, az elsõ kiszolgáló, amelyikhez A csatornákon, ahol nemegyszer 50–60 ügyfél is eszmét cserél, eljut az üzenet, visszajelzés nélkül megsemmisíti azt. Én sem gyakran tapasztalható, hogy nem minden ügyfélhez jut el használtam sehol az elõtagot. idõben az üzenet, és a többiek úgy látják, hogy már megtár- A parancs szabványos IRC-parancs. Habár a parancsnevekben gyalt kérdésekrõl beszél (lag). Az is elõfordul, hogy ha a két az IRC-alkalmazások elvileg nem különböztetik meg a kis- és (földrajzi értelemben vett) hely közti összeköttetést biztosító nagybetûket, érdemes csupa nagybetûvel írnunk. kiszolgáló leáll, az IRC-hálózat két félre szakad. Legyenek A kapcsolók a parancstól függnek. Nem tartalmazhatnak szó- az ügyfelek ugyanazon a csatornán, mindenki csak azt látja, közt, legfeljebb az utolsó, ebben az esetben kettõspontot kell aki vele azonos oldalon van (split). Ilyenkor idõbe telik, amíg tennünk elé. új útvonalat találva ismét elérhetik egymást. A sort sortörés-kocsivissza zárja, de ha jobban tetszik, a legtöbb nyelvben ez is megteszi: \n\r. Mi az a bot? Mielõtt ügyfél csatlakozhatna egy csatornához, elõször be kell Egy IRC-bot ahhoz hasonló ügyfél, amilyet csevegésre is hasz- jegyeznie magát a kiszolgálónál. Ez két paranccsal történik: nálsz. A különbség, hogy a botot valamilyen sokszor ismétlõdõ USER és NICK. feladatra tartják, és nem szükséges elõtte embernek ülnie. A #linux.hu csatornán létezik egy Rozsdas nevû bot, ami a két USER kérdõjellel kezdõdõ sorokat keresi, és ha ilyet lát, a kérdõje-  leket követõ kifejezésre valamilyen leírást ad. Akad olyan csa- torna, ahol egy botnak nincs más dolga, mint feltennie egy Az elsõ kapcsoló a felhasználói név. A linuxos IRC-ügyfelek kérdést, majd a válaszra várni. Ha valaki a megadott idõn belül legtöbbször annak a felhasználónak a nevét küldik el, helyesen válaszol, egy pontot kap. Ezután – vagy az idõ lejár- akinek a nevében a program fut. Te mint programozó akármit tával – a bot felteszi a következõ kérdést. Egy játék megadott megadhatsz. Arra figyelj, hogy bizonyos felhasználóneveket számú kérdésbõl áll, és a végén az gyõz, akinek a legtöbb egyes csatornákon szûrnek. A #linux.hu-ra például root pontja van. Ezekhez hasonló és ezer másik feladat képzelhetõ felhasználónévvel nem lehet felmenni (illetve fel lehet, de el egy bothoz. Természetesen én egy egyszerûbbet írtam, ami egy bot kidob). adott idõközönként felolvas egy az állományból véletlensze- A mód egy szám, ami az ügyfél különleges tulajdonságait rûen kiválasztott sort. Gyakorlásnak megfelelõ, viszont hasz- írja le. Itt lehet többek között azt beállítani, hogy láthatatlan navehetetlen. Ezért arra kérek mindenkit, ezt a botot ne küldje legyél. Ez azt jelenti, hogy a csatorna tagjainak listájában fel egyik kiszolgálóra sem! Egyrészt egyes kiszolgálók kifeje- nem jelensz meg. zetten megtiltják a botok jelenlétét, másrészt nincs olyan csa- A harmadik kapcsoló jelenleg használaton kívül van, ezért torna, ahol szívesen látnának egy ilyen botot. A legjobb, ha csillag (*) karaktert szokás helyette írni. feltelepítesz egy saját IRC-kiszolgálót, és azon próbálkozol. A valódi név egy tetszõleges karakterlánc. Ide többnyire

58 Linuxvilág Szaktekintély

a felhasználói névhez tartozó teljes nevet szokták ide írni, vonatkozik: nem használ átmeneti tárat az íráshoz, minden ám ez változó. Mivel szóközt is tartalmazhat, kettõsponttal adatot azonnal kiír. kell kezdõdnie. A $nick a becenevet, a $channel a csatorna nevét, a $wait pedig egy számot tartalmaz, amely másodpercekben fejezi ki NICK azt az idõt, amennyinek két bemondott idézet között legalább el kell telnie. Ezzel a kapcsolóval határozhatod meg a becenevedet. A helyi géphez a 6667-es kapun, TCP/IP-protokollon keresztül Bejegyzés után bármelyik kiszolgáló küldhet a botnak egy kapcsolódik. Ha nem sikerült, a program leáll. ping-et. Az IRC-kiszolgálók ugyanis nem ICMP-üzenetekkel Láthatóan semmiféle különleges módot nem adok a botnak, ellenõrzik, hogy egy ügyfél fent van-e még a hálózaton, hanem és a teljes neve Zebulon Master. belsõ ping-gel. Ha nem készíted fel a botot, hogy ezekre vála- A @stuff tömböt több dologra is használni fogom (lásd szoljon, a kiszolgáló bontani fogja a kapcsolatot. A ping paran- késõbb). Amennyiben a $joined 0, még nem kapcsolódott, csot kapcsolóként egy azonosító követi. Az erre válaszoló ügy- ha 1, az elõbbi iterációban kapcsolódott, amennyiben 2, már félnek egy pong parancsot kell küldenie, kapcsolóként ugyan- rég fent van a csatornán. A $last tárolja az utolsó kiíratás ezzel az azonosítóval. dátumát az 1970. január 1-je óta eltelt másodpercek számában. A PRIVMSG parancsot használhatod, ha hozzá akarsz szólni a A $i általános ciklusváltozó. beszélgetéshez, és te is ilyeneket fogsz kapni, ha valaki veled A while ciklus minden lefutásakor beolvas egy sort a $irc

beszélget. foglalatról. © Kiskapu Kft. Minden jog fenntartva Az elsõ, hogy ellenõrzi, megpingelték-e. Ha igen, a ping PRIVMSG kapcsolóként megadott azonosítóval egy pong-ot küld. Ha nem ping volt, és épp most csatlakozott a csatornához, egy Ha a címzett egy becenév, akkor magánbeszélgetés indul üdvözlõ szöveget küld. Ha valaki megszólította, és azt mondta, közted és a címzett között. Ha kettõs kereszttel (#) kezdõdik, „aludj”, kilép. egy csatornát jelöl, és a csatorna összes tagja megkapja az Ha letelt a megadott idõ, a megadott állományból kiválaszt üzenetet. Ha dollárjellel ($) indul, a dollárjel után álló kiszol- egy sort és elküldi. gálóhoz csatlakozó összes ügyfél olvasni fogja a szöveget. Amennyiben még nem csatlakozott, megteszi. Helyettesítõ karakterek mindhárom esetben használhatók A ciklusból történõ kilépés után a Quit paranccsal búcsút (*, ?). Egy megszorítás létezik, miszerint a kettõs kereszttel, mond a kiszolgálónak, és ha nem szakította volna meg a illetve dollárjellel kezdõdõ nevekben legalább egy pontnak (.) kapcsolatot, akkor a bot megteszi. szerepelnie kell, és az utolsó pontot nem követheti helyette- sítõ karakter. Ezt azért találták ki, hogy például a $*-ra ne Bothibák lehessen üzenetet küldeni, ezt ugyanis a világ összes IRC- Ez egy nagyon kezdetleges bot, és több gond is akad vele. hálózatot használója megkapná. Nem kezeli az olyan váratlan eseményeket, ha a becenév A szöveg természetesen tartalmazhat szóközt, így kettõsponttal foglalt, vagy nem engedik be a csatornára (miért is ne enged- kell kezdõdnie. nék). Továbbá a saját kitûzött célját sem látja el tisztességesen. Ha további részletekre vagy kíváncsi a protokollal kapcsolat- Nem 12 másodpercenként olvas fel egy sort az állományból. ban, vagy más parancsok is érdekelnek, ajánlom figyelmedbe Ha senki sem szólal meg a csatornán, és nem kap üzenetet, a kapcsolódó RFC-ket: RFC1459 és RFC2812 (lásd a 39. CD nem fog beszélni. Ez azért van, mert a Perl <> mûveletjelét Magazin/Bot könyvtárában). használtam olvasásra. Ez a megadott leíróról egy sort olvas be. Mivel a leíró nyitva van (a foglalat nem zárult le), nincs Egy perlbeli megvalósítás állományvége (EOF), és addig nem tér vissza, amíg üzenetet Ezek után lássunk egy példát! Az én kis IRC-botom nem csinál nem kap. Valójában az olvasást a sysread() függvénnyel mást, csak csatlakozik a megadott csatornára, és bizonyos idõ- kellene megoldani, ahogy más Perlben írt botok is teszik, de közönként felolvas egy véletlenszerûen kiválasztott sort egy nem akartam túlbonyolítani a példát. Léteznek bõvítmények állományból. Az Interneten ezeket a botokat nagyon idegesí- az IRC-protokollhoz, mint például a CTCP (Client To Client tõnek tartják, és végleg meg tudod vele utáltatni magadat. Protocol). Ezzel a kiszolgálót megkerülve lehet adatot kérni Mindenki elismeri a programozói teljesítményt, azonban nem egy ügyféltõl. Egy ügyfél a másiktól a használt ügyfél típusát, gyõzöm elégszer hangsúlyozni: ne használd ezt a botot nyilvá- a rendszeridõt és más hasonló adatot kérdezhet le. Ha a mi nos IRC-kiszolgálón! Ha nagyon tetszik, írj egy olyat, amelyik botunk kap egy ilyen üzenetet, nem válaszol rá. Én azért hasznos. És feltétlenül kérdezd meg a kiszolgáló rendszergaz- szeretem, mert az enyém. dáját, hogy felteheted-e! Tudomásom szerint az irc.extra.hu egyáltalán nem engedélyezi a botok használatát a kiszolgálón. Végezetül Az elte.irc.hu napi üzenetébõl (motd, message of the day) Nagyon izgalmas IRC-botot írni. Remélem, te is örömet lelsz az derül ki, hogy két hétig elviselik a botokat, utána mindenkit benne, és a tudásodat okosan használod. Sok szerencsét az IRC nyomatékosan megkérnek, hogy távolítsa el kis kedvencét. határtalan világához! A sote.irc.hu-ra lehet botot vinni, de errõl egy e-mailben ([email protected]) értesíteni kell a kiszolgáló üzemeltetõjét. (A listát lásd a 39. CD Magazin/Bot könyvtárában). Fülöp Balázs Mivel feltételezem, hogy programoztál már Perlben, csak ([email protected]) 17 éves, imádja a Túró Rudit, nagy vonalakban magyarázom el a program mûködését. a Debian Linuxot és a teheneket. Az ELTE Rad- A $\ különleges változót a Perl minden kimenõ adat végéhez nóti Miklós Gyakorlóiskola tanulója immár ötödik hozzáfûzi. Így a print utasítások végére nem kell mindig a éve. Kedvenc írója Slawomir Mroek. Leginkább kötelezõ \n\r-t odaírni. A $| szintén a kimenõ adatokra a számítógépes hálózatok biztonsága érdekli.

www.linuxvilag.hu 2002. szeptember 59 Szaktekintély

Szüreteljünk almát! Sorozatunk mostani részében az Apple Mac OS futtatásához szükséges környezet beállításával kapcsolatban szerzett ismereteimet kísérlem meg olvasóinknak átadni.

indenekelõtt szerezzük be a nélkülözhetetlen össze- tevõket! Szükség lesz a Basilisk II forrására, egy A ROM-fájl eredeti Macintosh-gép ROM-jára, az Apple webol- Mint már szóltam róla, az emulátor futtatásához egy eredeti Mac Mdaláról letölthetõ Mac OS 7.5.3-as, illetve a 7.5.5-ös Mac OS- ROM szükséges, amihez egy a saját tulajdonunkban lévõ gép ROM- frissítésre (ezeket az Apple ingyenesen elérhetõvé, letölthetõvé jának a kinyerésével juthatunk hozzá. Felhívnám mindenkinek a tette), egy indító lemezlenyomatra, néhány segédprogramra figyelmét, hogy bármilyen más forrásból származó ROM használata – és már indulhat is a móka. törvénytelen!

© Kiskapu Kft. Minden jog fenntartva Én azt szeretem, ha egy program vagy egy kísérlet mindig külön munkakönyvtárral bír, így a múlt hónapban elkezdett EMU könyvtárban létrehoztam egy MacOS alkönyvtárat, elérni (lásd késõbb); végezetül a rendszerindítás eszközét innentõl ebben dolgozom. Elõször a Basilisk II csomagot állíthatjuk be – ez lehet bármi (Any) vagy CD-ROM, illetve készítem elõ a fordításra az alábbi parancs segítségével: engedélyezhetjük vagy tilthatjuk a CD-ROM használatát. Graphics/Sound: itt adhatjuk meg a grafikus felület jellegét, ami tar -xvzf BasiliskII_src_31052001.tar.gz lehet teljes képernyõs (Fullscreen) vagy ablakban futó (Window); beállíthatjuk az ablak másodpercenkénti frissítését, az ablak feltételezve, hogy a fentebb említett fájl az EMU/MacOS méretét, illetve a hang engedélyezését. Egészen különleges könyvtárban található. Ekkor létrejön egy BasiliskII-0.9 képernyõméreteket is megadhatunk, például 800×384-et. könyvtár, a BasiliskII-0.9/src/Unix könyvtárba belépve rögtön Serial/Network: e helyütt a soros kapukat és a hálózati eszközt nekiállhatunk a program fordításának: adjuk ki a állíthatjuk be (lásd késõbb). ./configure, majd a make és a make install parancsokat. Memory/Misc: a Volumes után ez a legfontosabb beállításokat Alapértelmezettként a program a /usr/local alkönyvtáraiba tartalmazó menüpont, az emulált gép fizikai memóriaméretét, telepíti magát, ehhez azonban írási joggal kell rendelkeznünk, a Macintosh-gép fajtáját, illetve a ROM-fájl elérési útvonalát a legegyszerûbben a su parancs segítségével szerezhetünk adhatjuk meg vele (a ROM-fájl nélkül a programot egyáltalán rendszergazdai jogokat. Természetesen más könyvtárat is meg- nem tudjuk használni). adhatunk. Most már futtathatjuk is a programot, adjuk ki a Ha ezzel készen vagyunk, kísérletet tehetünk a Mac bekap- BasiliskII parancsot. Ekkor egy kényelmesen kezelhetõ csolására: kattintsunk a Start gombra. Most csak egy szürkés grafikus beállítófelületet kapunk, ahol a program mûködését hátteret kapunk középen egy lemezzel, aminek a kellõs köze- mindenre kiterjedõen állíthatjuk be (1. kép). pén egy kérdõjel villog – ez bizony azt jelenti, hogy hiányzik a rendszer indulásához szükséges operációs rendszer. 1. Az operációs rendszer telepítése Ehhez a lépéshez egy „rendszerindító” lemezre lesz szükség. Én az Interneten találtam egy ilyen lemezt, és ezt használtam. Hozzunk létre egy lemezlenyomatot a rendszernek, nevezzük mondjuk 7.5.3.dsk-nak. Legalább egy 150–250 MB-os lemez létrehozását javaslom, mivel saját tapasztalataim alapján a jó öreg programokkal ezt is hamar meg lehet tölteni. Adjuk hozzá az indító lemezlenyomatot is; a memóriaméret 16–32 MB között eszményi választásnak tûnik, ezek után kattintsunk a Start gombra. Most már látnunk kell az operációs rendszer betöltõdését. A rendszer betöltése közben láthatjuk, hogy az általunk létrehozott lemezlenyomatot is felismeri, azonban nem tudja birtokba venni, mivel nincs elõkészítve a haszná- latra. Ezt tegyük meg, kattintsunk az Initialize gombra, amikor is figyelmeztetõ üzenetet kapunk, miszerint a lemez tartalma Vegyük sorra a menüpontokat! elvész, ha a mûveletet tovább folytatjuk. Ennek ellenére kat- Volumes: azokat a lemezrészeket állíthatjuk be, amelyeket tintsunk bátran a Continue gombra. használni szeretnénk; az Add... gombra kattintva már meglévõ Ezután a 2. képen látható képernyõhöz hasonlót kell látnunk. lemezlenyomatokat adhatunk a rendszerhez, a Create... Macintoshunk feltámadt! Kattintsunk a Stuffit Expander ikonra, gombbal új lemezlenyomat(ok)at hozhatunk létre, a Remove majd a File/Preferences... menüponttal csalogassuk elõ a csoma- gomb használatával pedig eltávolíthatjuk a kijelölt lemezle- golóprogram beállítófelületét. Itt a Destination ikonra kattintva nyomatot. A Unix Root sorában adhatjuk meg, hogy melyik állíthatjuk be azt a kívánt könyvtárat, ahová a kicsomagolt könyvtárat szeretnénk az emulátorból a unix nevû lemezzel anyagok kerülnek. Nálam ez a 7.5.3-as lemezen létrehozott

60 Linuxvilág Szaktekintély

insmod sheep_net-up.o paranccsal lehetséges. Ezután 2. használhatjuk az eth0 hálózati kaput, amelynek beállításait a Mac OS elindulása után a System Folder/Control Panels/ TCP/IP ikonokon keresztül érhetjük el.

Frissítés 7.5.5-re Az alapterjesztés nem tartalmazza a Stuffit Expander-t, ezért töltsük le a  http://www.stuffit.com/expander/download.html címrõl, és telepítsük. Ám ahhoz, hogy telepíteni tudjuk, a kicsomagoláshoz egy elõzõ változatra lesz szükség (kicsit a 22-csapdájára emlékeztetõ helyzet…). Az elsõ indításkor hasz- nált lemezbõl kinyerhetjük ezt a programot. Ezután másoljuk be a System 7.5.5 update.hqx fájlt az emulátor meghajtójára, majd ismét kattintgassunk, amíg csak a fájl ki nem csomago- lódik. A kicsomagolásra megadott könyvtárban ismét egy Installer programot kell keresni, erre kattintva a telepítõ frissíti a rendszerösszetevõket.

A telepítés befejezése után virtuális gépünket indítsuk újra! © Kiskapu Kft. Minden jog fenntartva 3. Élvezzük a frissített rendszert! Csak akkor, ha elindul – én az induláskor fellépõ hibát úgy tudtam orvosolni, hogy a követ- kezõ indításkor a SHIFT billentyût lenyomva tartottam, ezáltal a rendszer semmilyen kiegészítést nem töltött be. A Control Panels/Memory ikonján kattintva egy beállítófelületet kapunk, ahol a Virtual Memory-t kapcsoljuk ki. Ezután már tökéletesen mûködött minden. A következõ részben a különféle programok lelõhelyeit és telepítésüket vesszük szemügyre.

Csontos Gyula ([email protected]) a Linuxvilág szakmai és CD-szerkesztõje. Szabadidejében szívesen mászik hegyet és kerékpározik.

Kapcsolódó címek Install könyvtár lett. Ezek után a Unix nevû lemezrészre kat- tintva keressük meg a 7.5.3-as Mac OS telepítõfájljait, szám szerint 19-et, és mindet kijelölve dobjuk rá a Stuffit Expander Ahol mindenképpen érdemes bóklászni: ikonra – ekkor az összes fájl kicsomagolódik. A megadott  http://www.uni-mainz.de/~bauec002/B2Main.html könyvtárban kattintsunk a System 7.5.3 01of19.smi fájlra, a  http://www.info.apple.com/support/downloads.html felhasználói szerzõdést fogadjuk el. Az ellenõrzés után létrejön  http://www.ultimatemac.com/ egy Sys7.5 V7.5.3 CD Ins ikon a munkaasztalon. Bõszen kattint-  http://lowendmac.com/mac2win/02/0501.html sunk rá, így megkapjuk az Installer programot. Erre is  http://sourceforge.net/forum/forum.php?forum_id=6132 kattintanunk kell kettõt (akinek a kattintóizmai esetleg elfá-  http://download.info.apple.com/Apple_Support_Area/Ap radtak, az pihenhet egy kicsit), ekkor már ténylegesen a 7.5.3- ple_Software_Updates/English- as rendszert telepítjük! Választhatjuk az egyszerû (Easy), vagy North_American/Macintosh/System/Older_System/Syste az egyéni (Custom) telepítést. m_7.5_Version_7.5.3/ A teljes telepítés megközelítõleg 82 MB helyet foglal el. Ha  http://www.apple.com/ végeztünk vele, lépjünk ki belõle, és indítsuk újra a rendszert.  Távolítsuk el az indító lemezlenyomatot, és élvezzük a sok http://www.vineyard.net/vni/faq/config/mactcp.shtml  http://toastytech.com/guis/mac755.html kattintgatás eredményét: a Mac OS 7.5.3-as rendszert a PC-n!  Nálam az egyetlen hibát valami a/rose bõvítmény jelentette, http://www.seanet.com/help/dial/mac/ de miután eltávolítottam a rendszer könyvtárából, egy teljesen opentransportppp.shtml  egészséges rendszert kaptam. http://www.peak.org/ipswitch/mactcp.html  http://libweb.sonoma.edu/research/instructions/ mac7_5_3.html Hálózati beállítások  Ahhoz, hogy a mostani Mac-gépbõl a hálózatot is lássuk, elõ- http://geeks.free.fr/macos.htm  ször a sheep-net rendszermagmodult le kell fordítani és be kell http://www.welovemacs.com/macos7-5-5.html tölteni a memóriába. Nekem a Basilisk II-vel egy csomagban  http://www.speakeasy.net/low/main.php?page=macos758 érkezõ modult nem sikerült lefordítanom, így hosszas keres-  http://www.its.unimelb.edu.au/InfoSheets/ gélés után ráakadtam egy Mandrake-csomagra, amivel azután InfoSheet_135.html sikerrel jártam. A modul betöltése a rendszergazdaként kiadott

www.linuxvilag.hu 2002. szeptember 61 Szaktekintély

PHP – mnoGoSearch

Azaz hogyan házasítsuk az izmos keresõmotort a szeretett PHP-val?

okszor felmerülõ igény egy kiterjedtebb honlappal S szemben, hogy a tartalma kereshetõ legyen. A feladat elég nyögvenyelõs lehet, amennyiben a webhely sok, különféle mûködésû modulból épül fel. Minden egyes modulra saját keresõt építeni, majd egy rendszerbe foglalni õket, igen nagy falat lehet. Érdemes elgondolkodni, nem volna-e jó általá- nosítani valahogy a feladatot, és az összes egyedi esetet egysé- ges rendszerbe foglalni. Hosszú távon mindenképpen kifizetõ-

© Kiskapu Kft. Minden jog fenntartva dõ az egyszeri nagyobb munkát bevállalni. Egy jól összerakott keresõrendszert feleltetni meg a késõbbi igényeknek már töredékét teszi ki az amúgy szükséges munkaóráknak. Amikor az ember azon gondolkodik, hogy valamiféle általános megol- dás lenne az igazi, az sem árt, ha körülszimatol egy kicsit a Világhálón, hátha a több tízezer nyílt forrású megoldás között talál valami, a célnak megfelelõt.

A mnoGoSearch – ismerkedés Jómagam a fenti gondolatmenetet végigvezetve jutottam el a  mnoGoSearch keresõmegoldásához, még messzire sem kellett 1. kép http://hu.php.net/mnogo érte mennem. A PHP kézikönyvét böngészgetve akadtam rá – mondhatni véletlenül – a mnoGoSearch nevû kiegészítésre. • FTP-helyek végignyálazása sem okoz neki gondot; Kis utánajárás után kiderült, hogy a mnoGoSearch maga egy • adatbázis-kiszolgálók tábláinak indexelésével is elboldogul, igen kiterjedt, nyílt forrású keresõmotor. Saját, C-ben írt CGI- bár itt vannak megkötések. felülete is jól használható és rugalmas. Emellett Perlhez és PHP-hez is létezik illesztés. Ez a támogatás a PHP hivatalos A keresõmotor maga is SQL-alapú, adatbázisban tárolja az terjesztésének részét képezi. indexelés során összegyûjtött adatokat. Rengeteg adatbáziski- Maga a mnoGoSearch két jól elkülöníthetõ részre bontható. szolgáló-típussal képes együttmûködni. Ha indexelésük céljából Az egyik végzi a weboldalak, adatbázistáblák indexelését a közvetlen adattáblákban is turkálni szeretnénk, egy erõs meg- megadott beállítások alapján. Ezt idõszakosan (tipp: cron) szorítással találkozunk: csak ugyanabban az adatbázisban képes futtatva egy szorgalmas keresõrobotot állíthatunk munkába. feldolgozni a mnoGoSearch-adattáblákat, amelyikben a saját Magának a keresõfelületnek a megvalósításában lehetõségünk indexelésre fenntartott táblákat is tárolja. Ez alól az egyedüli nyílik dönteni, hogy a mnoGoSearch sajátját használjuk-e fel kivétel az, ha háttéradatbázisként MySQL-t használunk. vagy írunk egyet. Ha a keresõ saját megoldását alkalmazzuk, a keresõoldalt sablonfájl segítségével faraghatjuk egyedi arcu- A mnoGoSearch telepítése latúra. Ha a PHP-illesztésen keresztül vesszük fel a kapcsolatot, Elõször is szükség lesz egy friss forrásra. Ehhez a mnoGo- teljesen egyedi felületeket hozhatunk létre. Ennek a progra- Search honlapját kell felkeresnünk, azon belül is a következõ mozói feladatnak a bonyolultsága nem haladja meg egy egy- oldalt:  http://www.mnogosearch.org/download.html. A cikk szerû adatbázis-lekérdezés szintjét. írásakor a legutolsó üzembiztos kiadás mellett döntöttem, ami A mnoGoSearch nagy erõssége, hogy külsõ szûrõket is képes a 3.1.20 változatszámmal bír. Ennek telepítését Debian Woody alkalmazni, amelyek segítségével akár .pdf vagy egyéb külön- környezetben próbáltam ki, de egyes apró eltéréseket kivéve legesebb formátumú állományok szövegének indexelésére is ez a folyamat valószínûleg más GNU/Linux-rendszereken is sor kerülhet. Ehhez egy, az adott formátumú anyagot szöveges követhetõ. A bemutatott telepítés MySQL jelenlétét feltételezi, állománnyá alakító programot kell beszereznünk. Ha a prog- ugyanis ezt választottam háttéradatbázisnak. ram megvan, a keresõt kell beállítani, hogy az adott típusú Ha megvan a mnogosearch-3.1.20.tar.gz állomány (vagy az állományokat ezen a szûrõn átengedve lásson hozzá a tartalom éppen legfrissebb), a szokásos módon lehet nekiesni. átvizsgálásához. A mnoGoSearch jó pár formátummal és Kicsomagolás, belépés a könyvtárba, ismerkedés a kapcsolódási lehetõséggel önmagában is elboldogul. Beépített ./configure --help kiadása által kapott lehetõségekkel. képességei a következõk: Eztán a configure parancsfájl megfelelõ beállításokkal való • egyszerû text/html, text/plain oldalakat indexel (még szép); futtatása következik, végül make, make install. • dinamikusan létrehozott tartalmú oldalakat a legcifrább Ez a hagyományos telepítési módszer, ám érdemes észrevenni, URL-en keresztül is is elér; hogy a fejlesztõk egy kellemes Perlben írt kis kérdezgetõprog- • titkosított (HTTPS) kapcsolatokat is kezel; ramot mellékeltek, ami végül a válaszoknak megfelelõen • ha kell, jelszavasan védett (HTTP-azonosítás) oldalak is hívja meg a configure héj-parancsfájlt. Lássuk, miféle feldolgoztathatók vele; beállításokat hajthatunk végre!

62 Linuxvilág Szaktekintély

Ha a fent említett install.pl futtatása mellett döntünk, az További tennivalók és beállítások elsõ kérdése arra fog vonatkozni, hogy mi legyen a telepítés Bizony, a keresõrendszer telepítése még csak az elsõ lépés volt. célkönyvtára – ez alapesetben a /usr/local/mnogosearch könyv- A feltett csupasz rendszert életre kell kelteni, be kell állítani. tár. Ha nincs jobb ötlet, így is maradhat, a PHP is itt fog majd Elõször is a mnoGoSearch számára létre kell hozni a MySQL kutakodni utána. háttéradatbázist: Ha a configure közvetlen meghívását választjuk a fordítás elõtti beállítások végrehajtására, e fenti adat a mysqladmin -uroot -p create --prefix= kapcsolóval adható meg. Ha meg mnogosearch

Ezáltal létrejött az üres adatbázis, amelyben majd a mnoGoSearch a szótárát, az oldaladatbázisát fogja tárolni. Ehhez azonban még nincsenek meg a szükséges adattáblák. Ezek létrehozásához a mnoGoSearch forráskönyvtárában, a create/ könyvtárban találunk segéd- anyagot, jelen esetben a create/mysql alatt. Ezt a szöveges állományt egy az egyben ráengedhetjük a MySQL-re, amely a kívánt adattáblákat létrehozza: © Kiskapu Kft. Minden jog fenntartva mysql -u -p mnogosearch < create.txt

Az adatbázis megvan, a táblák rendben, de akad még tenni- való a ház körül. Ha másért nem is, de próbaképpen érdemes beüzemelni a mnoGoSearch saját CGI-felületét. Ehhez a mnoGoSearch telepítési könyvtárának bin alkönyvtárában található search.cgi programocskát kell átmásolni az Apache cgi-bin könyvtárába. Emellett search.htm néven másoljuk le a mnoGoSearch /etc könyvtárában levõ search.htm-dist nevû sablonállományt is. Ez azért szükséges, mert ezen arculatmeg- 2. kép A mnoGoSearch hivatalos honlapja határozó állomány nélkül a keresõfelület meg sem mozdul, ráadásul innen veszi a beállításait. Ekkor a keresõfelületnek vagyunk elégedve az alapértelmezett könyvtárral (lásd az a www.kiszolgálódneve.hu/cgi-bin/search.cgi címen mûködnie elõzõ bekezdést), az adat megadása el is hagyható. kell, de természetesen nem lehet keresni, hiszen még nincs Ha másképp nem rendelkezünk, a most megadott könyvtár semmilyen adathalmaz. Ráadásul egy kis beállítgatásra is szük- alá kerül minden mnoGoSearchcsel kapcsolatos adat, a beállítá- ség lesz, hiszen a keresõprogram még arról sem tud, merre soktól egészen a naplóállományokig. Nálam ez így maradt. keresse a háttéradatbázisát. A keresõfelület beállításához Kézi configure híváskor ez esetben semmit nem kell meg- nem, de az indexelõ robot beállításához szükséges beállításo- adni, az install.pl futtatásánál is elég ENTER-t ütni az alap- kért felelõs állományra szükség lesz. Ez a fájl a sablonfájllal értelmezett no válaszra. Ha ez a felállás mégsem tetszene, egy könyvtárban található, indexer.conf-dist néven. Ebbõl egy yes után az összes alkönyvtár elhelyezkedése sorra megad- indexer.conf elnevezéssel szükség lesz egy másolatra, amelyben ható. Parancssoros beállítás esetén a szükséges kapcsolók a mnoGoSearch indexelõ motorjának beállításait tudjuk meg- a configure súgójából ismerhetõk meg. adni. Furcsának tûnhet, hogy külön beállítóállomány szüksé- Ha a könyvtárak megadásán túltettük magunkat, következik geltetik az indexelést végzõ programrésznek, külön a keresõ- a háttéradatbázis megadása. A beépített adatbázis-támogatásra felületnek. Jobban belegondolva viszont belátható, hogy ez nem lesz szükség, hiszen a gépen van telepített MySQL. a két modul akár két teljesen más gépen is elhelyezkedhet, Az install.pl ezt magától képes megtalálni, tegye is csak. ráadásul ugyanahhoz az adatbázishoz csak az indexelõ részre Válaszoljunk yes-t arra a kérdésre, hogy maga keresse-e meg kell olyan adatbázis-kapcsolat, amelynek a mnoGoSearch adat- a lehetséges adatbázis-csatlakozásokat. Ha nem találná a meg- bázisába írni kell tudnia. A search.cgi teljesen mellõzhetõ, felelõ könyvtárat, magunknak kell megadnunk. Elõször az hiszen e cikk végcélja, hogy bemutassa, hogyan lehet PHP-ban adatbáziskiszolgáló típusát, majd azt a könyvtárat kell meg- mnoGoSearch-háttérrel dolgozó keresõfelületeket kialakítani. adni, ami alatt a MySQL fejlécfájlok és függvénykönyvtárak Mivel amúgy sem árt a PHP és a mnoGoSearch házasítása elõtt találhatók. A MySQL-támogatással való felruházáshoz kézi kipróbálni, hogy a keresõt hajlandó-e mûködni, és mert a beál- vezérlés esetén a --with-mysql= megadására lítások oroszlánrészét úgyis az indexer.conf-ban kell megadni, lesz szükség. érdemes ezt a kis pluszmunkát elvégezni. Lássuk hát, mit és Az ezt követõ kérdésekre mindenütt hagyhatjuk az alapértel- hogyan kell „belõnünk”! mezett választ, ezek a beállítások céljainkhoz javarészt jók Be kell állítani többek között, hogy melyik kiszolgálón található lesznek. Ha a kézi configure meghívást választottuk, és az adatbáziskiszolgáló, és milyen felhasználónév–jelszó páros- semmilyen egyedi beállítást nem akarunk alkalmazni, nem kell sal lehet hozzáférni. Kezdjük az indexer.conf-fal! A DBAddr további kapcsolókkal bajlódnunk. címke után az adatbázis-hozzáférés adatait címformátumban Vagy így, vagy úgy, de eljutottunk oda, hogy a configure kell megadnunk. Szokatlan elgondolásnak tûnhet, hogy egy parancsfájl sikeresen lefutott. Ekkor már a hagyományokat ilyen erõforrást is ebben a formában adjunk meg, ám mivel ez követve jöhet a szokásos make, majd a make install. Ezáltal egy az ftp:// vagy http:// címekkel képviselt adatforrással a mnoGoSearch alaptelepítése a helyére került. teljesen egyenértékû háttérerõforrást jelöl meg, e megadási

www.linuxvilag.hu 2002. szeptember 63 Szaktekintély

mód abszolút jogos és célravezetõ:

DBAddr mysql://felhasznalo:jelszo@localhost/ mnogosearch/

A cím elején a mysql:// jelzi, hogy mysql „protokollt” szük- séges használni. Ezután a mnogosearch adatbázishoz férõ MySQL-felhasználó neve és jelszava következik, kettõsponttal elválasztva. A @ jelet követõen lehet megadni az adatbázis- kiszolgáló gazdagép teljes nevét. Mivel ez nálam ugyanaz a gép, elegendõ volt a localhost. Itt ha a mysql nem a szab- ványos kapun figyel, egy kettõsponttal elválasztva a kapu száma is megadható. Az ezt követõ perjel után adható meg az adatbázis neve, ami pár bekezdéssel ezelõtt mnogosearch néven lett létrehozva. Ugyancsak ezt az adatsort kell a search.htm sablonállományban megadni, hogy a keresõfelület is tudja, hol kutakodjon. A megadás módja teljesen megegye-

© Kiskapu Kft. Minden jog fenntartva zõ, itt is a DBAddr címke a felelõs az adatbázis-kapcsolat meg- határozásáért. Ezzel mind a search.cgi-t, mind az indexelõ 3. kép A CGI-felület munkára fogva programot mûködõképessé varázsoltuk. A keresõfelület már bármely szóra hibajelzés nélkül képes kijelenteni, hogy nincs Azaz ha a htp://www.valami.hu/pillanatnyi címrõl indulva rá találat az adatbázisában. hivatkozást talál a www.valami.hu-ra vagy annak bármely A használhatóság céljából érdemes egy kis figyelmet szentelni alkönyvtárára, vígan követni fogja. Más webhelyekre a LocalCharset címkének, ugyanis itt adható meg, hogy mutató címeket viszont továbbra sem követ. milyen kódolás szerint értelmezzen, valamint hogy milyen • world: ezt a típust választva indexelõ programunkat arra karakterek számítanak értékelhetõ betûnek. E beállítás hiányá- utasítjuk, hogy minden fellelt hivatkozást gátlástalanul ban az indexelõ motor a számára nem kezelhetõ karakterek kövessen. Figyelem, ezzel a típussal érdemes nagyon óva- mentén a szavakat szétvágja, és a két szórészletet tárolja tosan bánni, mert hamar elérhetjük vele gépünk tárhelyé- indexelt szóként. Ez magyar szövegnél annyit jelentene, hogy nek határait, hiszen egy jó kezdõoldalról pók barátunk a fél a hosszú ékezetes karaktert tartalmazó szavaink biztosan több Internetet végig próbálja majd nyálazni! szóként tárolódnának. Példának okáért a „következõek” szó helyett a mnoGoSearch a „következ” és az „ek” szavakra lelne. Az elméleti alapok után jöjjön egy élõ példa! Jómagam póko- Állítsuk tehát a LocalCharset címke mögötti értéket az mat a www.linux.hu címre engedtem rá, a következõ sorral: iso-8859-2 értékre. Ezt mind az indexer.conf, mind a search.htm állományban meg kell tennünk. Server site http://www.linux.hu/ A search.html-ben megadandó beállításoknak ezzel a végére is Ezzel a sorral pókunk számára megjelöltünk egy belépési pon- értünk. Az egyelõre szóba sem került, miként fogja az indexelõ tot, ahol megkezdheti a munkáját. Derék munkásunk ügyesen program feldolgozni a kívánt oldalakat, ráadásul azt sem tudja, végig is nyálazza a megtalált hivatkozásokat, csakhogy kizáró- melyek az indexelhetõ (azaz a kereshetõnek szánt) webcímek lag a www.linux.hu címen belül maradva. Próbaszerencse, és tartományok. Ahhoz, hogy a honlapokat feldolgozó prog- együk meg a pudingot. Az indexelés elindításához ram tényleges munkát végezhessen, meg kell neki adnunk a mnoGoSearch sbin könyvtárában az indexer nevû futtatható azokat a belépési pontokat, ahonnan a tartalom indexelését el állományt kell elindítani. A pók elstartol, és meg sem áll az kell kezdenie. Szintén megadandó, hogy a lapban talált hivat- utolsó oldalig. Amit talál, nem túl sok, mert a linux.hu fõbb kozások közül melyeket kövesse és melyeket ne. Erre való az alegységei különbözõ altartományokban helyezkednek el: indexer.conf Server címkéje. Ezáltal adhatók meg az olyan lists.linux.hu, devel.linux.hu stb. Ezeket az indexelõ – teljesen belépési pontok címei, melyek mentén a weblap feldolgozása jogosan – nem követi. De mi módon tehetnénk meg, hogy eze- megindulhat. A lap címének megadása mellett azt is közölni ket is kövesse? Újabb Server parancsokkal? Azok nem erre kell, hogy az esetleges hálóhivatkozások milyen szinten legye- valók, hiszen tartománymegjelölésen túl fõ feladatuk a belépési nek lekövetve. Ennek négy különféle módja létezik: pontok megjelölése. Olyan címtartományokat kell megadni, ahová a keresõpók még beteheti a lábát, s ez a Realm címkével • page: semmiféle hivatkozást nem hajlandó követni, csakis lehetséges. Ahhoz, hogy programunk a linux.hu-t,és összes ezt az oldalt indexeli. Ritkán van rá szükség. altartományát indexelje, a következõ sorra is szükség lesz: • path: ez esetben szorgalmas kis pókunk a megadott címen található oldalban csak az olyan hivatkozásokon fog Realm http://*.linux.hu/ végigszaladni, amelyek a megadott címmel egy könyvtárba vagy az alá mutatnak. Mondhatni, az eme elérési útvonal Ez utasítja az indexelõt, hogy bátran kövessen minden olyan alatti területet fogja végigzongorázni. Alapértelmezésben, hivatkozást, ami megfelel a fenti szûrésnek. A Realm alap- ha külön nem adjuk meg, az indexelõ program ezt a fajta esetben nem szabályos kifejezésekkel szûr, ehelyett kevésbé hivatkozáskövetési módot fogja alkalmazni. erõforrás-igényes megoldással él: a * (csillag) jelent akárhány • site: annyiban különbözik az elõzõtõl, hogy a teljes webhe- akármilyen karaktert, a ? (kérdõjel) pedig egy tetszõleges lyet hajlandó végigkövetni, még akkor is, ha a megadott karaktert. A legtöbb címszûrést ennyivel el is lehet intézni, belépési pont annak csak egy alkönyvtára. Csak akkor néha azonban a szabályos kifejezésekre is szükség lehet. A fenti megy ki innen, ha a kijutáshoz szükséges hivatkozást talál. sort behelyettesíthetjük a következõvel:

64 Linuxvilág Szaktekintély

Realm Regex ^http://.*\.linux.hu/ E második függvénnyel tudjuk elvégezni munkánk végén a ta- karítómunkát – némi hasznos memória visszaadásával a rend- Ez pontosan ugyanazt a szûrést fogja elvégezni, mint az eggyel szernek. Ennek egyetlen értéke az azonosító, amit a kapcsolat feljebbi. Szabályos kifejezést ennél sokkal összetettebb fela- létrehozásakor az udm_alloc_agent()-tõl kapunk. A függ- datokra érdemes alkalmazni. Ha ezen beállításokkal élve indí- vény egyetlen kötelezõ értékében a kapcsolódási adatokat kell tanánk el az „indexer”-t, kis hivatkozáskövetõ robotunk már megadnunk, melyek megadási formája teljes mértékben meg- jelentõs mennyiségû oldalon menne keresztül, de ne paza- egyezik a mnoGoSearch beállítási fájljaiban használatos DBAddr- roljuk a linux.hu erõforrásait. Ha egy mód van rá, az indexelõ féle címformával. Érdemes megemlíteni, hogy az itt megadott robot figyelmét inkább egy saját weblapra irányítsuk! adatbázisfelhasználó–jelszó páros nem kerül kiértékelésre, csak A feldolgozás végeztével, de akár közben is, böngészõnkkel ha az udm_find() függvény meghívásával érdemi keresést ismét meglátogathatjuk a search.cgi-t, és lõn csoda: ha jó szót kezdeményezünk. Ezért ne csodálkozzunk, ha az esetleges írunk be, elõbukkan a találati lista. Hurrá, pezsgõbontás, csatlakozási hiba nem itt, az erõforrás foglalásakor keletkezik, tûzijáték! A keresõmotor telepítése és élesztése sikeresen lezaj- hanem pár utasítássorral késõbb. Nagyon fontos, ezért külön lott. Korántsem lehet elégedetten hátradõlni a karosszékben, kiemelendõ, hogy az adatbázis-hozzáférést megadó címet egy / hiszen egészen idáig egy mukkot sem ejtettem arról, miként (perjellel) zárjuk, enélkül ugyanis a kapcsolat nem fog létrejönni. fog a mnoGoSearch és a PHP együttmûködni. Ahhoz, hogy a hõn áhított együttmûködés létrejöjjön, a PHP-t

természetesen a mnoGoSearch-támogatással kiegészítve újra © Kiskapu Kft. Minden jog fenntartva kell fordítani. Ezért akár az egész PHP is újrafordítható, de vélhetõleg a kiszolgálón futó PHP-programocskáink jelenték- telen hányada fogja a PHP-nak ezt a modulját dolgoztatni. És biza, ha befordítjuk, minden PHP-fájl futtatásakor ott lesz a memóriában, amibõl pedig sosem elég. Fontos még, hogy gépünkön a libz.so függvénykönyvtár telepítve legyen, és a PHP is -with-zlib beállítással legyen lefordítva. A zlib Debianon az apt-get install libz parancssorral ott is volt a gépen, ezek után a PHP újrafordítása is könnyedén lezajlott. Ha már újrafordítás, a --with-mnogosearch kapcsolót is be lehetne illeszteni, de a fenti takarékossági megfontolásból nem tettem meg. Kinek hogy tetszik: a PHP újrafordítható, ha az ere- deti beállítások mellé a mnogosearch beillesztését is felvesszük. Az újrafordítás megkezdése elõtt ne feledjünk el egy make clean-t is kiadni, és a config.cache állomány törlése is hasznos. A mnogosearch-kiegészítés külön lefordítása sem ördöngösség, 4. kép Keresés, immár PHP-val ehhez mindössze a PHP forráskönyvtárából a ./configure -with-mnogosearch=shared parancsra, majd egy make-re Az elõbb említett udm_find() függvény által tudunk keresé- lesz szükség. Ezzel a mûveletsorral a forráskönyvtár modules seket végrehajtani. Két értéket vár, az elsõben a keresés kezde- alkönyvtárában egy mnogosearch.so nevû állományt kapunk ményezése elõtt lefoglalt erõforrás azonosítóját kell megadni, vissza, ezt kell beraknunk a PHP kiterjesztõ moduljait tartalma- másodikként magát a keresõkérést. Egy keresés megadásakor zó könyvtárba. E könyvtár elhelyezkedése egy phpinfo()-ból a keresendõ szavak szóközzel elválasztott listáján felül egyéb extension_dir néven megtudható, de a php.ini-ben termé- trükkökkel is élhetünk: a különféle szavakat zárójelekkel szetesen meg is adható. A lényeg a végeredmény, a csoportosíthatjuk, köztük logikai mûveleteket is végrehajtha- mnogosearch.so az extension_dir-nek megfelelõ könyvtárba tunk. Az & (és jel) a logikai és-t, míg a | (csõjel) a logikai vagyot kell kerüljön. Innentõl amelyik PHP-parancsfájlban szükségünk hivatott jelképezni. Megjegyzem, a sima szavak felsorolása is lesz a mnoGoSearch-kezelõ függvényekre, be kell szúrni egy olyan, mintha logikai és jellel választottam volna el õket egy- mástól. Azaz a linux php keresõkulcs ugyanazt az eredmény dl( mnogosearch.so ); fogja adni, mint a linux&php. Ugyanakkor a linux|php olyan találatokat hoz, amelyekben vagy a linux vagy a php szó sort az elejére, és rendszerünkbe máris behúztuk a megfelelõ megtalálható. A kizárt szavak megjelölésére a keresõkben kiterjesztést. általában megszokott kizáró - (mínuszjel) helyett itt a ~-t (tilde- jelet) állították hadrendbe. Az ilyen jellel elõjelzett szavakat Együtt a PHP-val tartalmazó dokumentumok e lehetõség kihasználásával nem Most, hogy minden együtt van, minden mûködik, lássuk, mi kerülnek a találati listába. Megjegyzem, önmagában egy ~php módon tudjuk kisajtolni a kereséseket a mnoGoSearch adatbá- keresési kulcs megadása nem értelmezhetõ, nem fogja az zisából a PHP erre szakosodott, immár telepített utasításain összes olyan találatot kiadni, amelyben nem szerepel a php keresztül. Ahhoz, hogy a mnoGoSearch keresõjében lekérdezé- szó. Ez csak ara való, hogy a meglévõ találati listából kizárja seket hajthassunk végre, szükség lesz egy kapcsolódásra. Ez a a nem megfelelõket. Az alábbi tehát mûködik: linux ~php, modul is a szokásos utat követi, ahogyan azt a fájl- vagy az adat- ami által olyan dokumentumok kerülnek a találati listára, bázis-kezelésben megszokhattuk. Elõször le kell foglalnunk egy melyek Linux témába vágóak, ámde amelyekben szó sem adott típusú erõforrást, hogy aztán ennek az azonosítójával esik a php-ról. Ha végül sikerült keresést kezdeményeznünk, hivatkozva végezhessünk mûveleteket. Az elsõ lépés mindig az eredményéhez egy azonosítón keresztül férhetünk hozzá. udm_alloc_agent() függvény meghívása lesz, az utolsó szó Ezt az azonosítót az udm_find() adja meg számunkra, vissza- joga pedig minden esetben az udm_free_agent()-et illeti. térési értékként.

www.linuxvilag.hu 2002. szeptember 65 Szaktekintély

A keresõoldal

’;

if (!extension_loaded(’mnogosearch.so’)) { dl(’mnogosearch.so’); $maxpage = ceil($num_found / _PERPAGE); } $page = floor($page); $page = ($page > $maxpage) ? $maxpage:$page; echo ’

echo ’
’; echo ’ ’.urlencode($searchtxt).’&page=’.($i).’">

© Kiskapu Kft. Minden jog fenntartva

’; ’.($i+1).’’; } echo ’
’; $agentid = udm_alloc_agent (’mysql://nØv:jelsz @localhost/mnogosearch/’); for ($i=0; $i<$num_rows; $i++) { udm_set_agent_param ($agentid,UDM_PARAM_CHARSET,’iso-8859-2’); $hit_url = udm_get_res_field udm_set_agent_param ($sres,$i, UDM_FIELD_URL); ($agentid,UDM_PARAM_PAGE_SIZE,_PERPAGE); $hit_title = udm_get_res_field udm_set_agent_param ($sres,$i, UDM_FIELD_TITLE); ($agentid,UDM_PARAM_PAGE_NUM,$page); $hit_text = udm_get_res_field ($sres,$i, UDM_FIELD_TEXT); $sres = udm_find($agentid,$searchtxt); $hit_rating = udm_get_res_field ($sres,$i, UDM_FIELD_RATING); $num_rows = udm_get_res_param ($sres, UDM_PARAM_NUM_ROWS); echo ’ $num_found = udm_get_res_param

($sres, UDM_PARAM_FOUND); (’.$hit_rating.’) ’.$hit_title.’ echo ’NUM_ROWS: ’.$num_rows.’
’; 

’.$hit_text.’
echo ’FOUND: ’.$num_found.’
’; ’.$hit_url.’ echo ’WORDINFO: ’.udm_get_res_param 
’; ($sres, UDM_PARAM_WORDINFO).’
’; echo ’SEARCHTIME: ’.udm_get_res_param } ($sres, UDM_PARAM_SEARCHTIME).’
’; echo ’FIRST_DOC: ’.udm_get_res_param echo ’

Api version: ’.udm_api_version().’
’; ($sres, UDM_PARAM_FIRST_DOC).’
’; ?>

Miféle adatok nyerhetõk ki ebbõl az azonosítóból? Az hogy az egyes szavakra külön-külön hány találat érkezett. udm_get_res_param() a keresés eredményére általánosan • UDM_PARAM_SEARCHTIME: századmásodperc pontos- jellemzõ adatokat adja vissza, míg az udm_get_res_field() sággal a keresési idõ. segítségével a találatok adatainak kinyerése lehetséges. • UDM_PARAM_FIRSTDOC: az éppen listázandó oldal elsõ Kezdjük az általános adatokkal! Ezek megszerzéséhez elsõ találatának sorszáma. értékként a keresési eredményt megjelölõ azonosítót kell • UDM_PARAM_LASTDOC: az éppen listázandó oldal utolsó megadni, tehát azt, amit az udm_find() kiadásakor kaptunk, találatának sorszáma. másodiknak pedig azt kell megadnunk, hogy mely adatra van Lapok? Bizony-bizony, a mnoGoSearch modul a találatokat szükségünk. Ezek az adatok a következõk: lapokra osztja. Ha másképp nem rendelkezünk, az elsõ oldalt • UDM_PARAM_NUM_ROWS: a listázásra kerülõ találatok fogjuk visszakapni, és egy oldalon húsz találat megjelenítésére száma. kapunk módot. Ezen természetesen lehet változtatni, csupán • UDM_PARAM_FOUND: az összes találatok száma. Mivel az udm_set_agent_param() függvényt kell szorgalmasan a találatok megadható méretû oldalakra bontódnak szét, hívogatni. Pár példa a teljesség igénye nélkül: az eggyel ezelõtti adat nem feltétlenül egyezik meg ezzel, ami valóban megadja, hány találat sikeredett. // 10 talÆlat legyen 1 oldalon: • UDM_PARAM_WORDINFO: szöveges formában adja vissza, udm_set_agent_param($aid,UDM_PARAM_PAGE_SIZE,10);

66 Linuxvilág Szaktekintély

// UgrÆs a harmadik oldalra • UDM_FIELD_TEXT: az oldal szövegének elsõ pár sora. // (az elsı oldal szÆma a 0) A fenti Description hiányában érdemes kijelezni, hogy a udm_set_agent_param($aid,UDM_PARAM_PAGE_NUM,2); keresést kezdeményezõ némi rálátással bírhasson, ez-e a // Ennek megadÆsa nagyon fontos, mert enØlk l neki megfelelõ oldal. // a mnoGoSearch hibÆsan keresi a megadott // Økezetes szavakat! Végszó // Meg kell egyeznie az indexer.conf-ban Nagyjából ennyi azoknak a PHP-utasításoknak a köre, amelyek // megadott LocalCharset ØrtØkkel. alkalmazása elengedhetetlen, ha ezen a módon akarunk udm_set_agent_param($aid,UDM_PARAM_CHARSET, kereséseket végrehajtani. Összefoglalóként lássuk mindezt ’iso-8859-2’); egyben is, egy igen egyszerû keresõoldal példáján keresztül, melyet a 66. oldalon tanulmányozhatnak részletesebben. A fentieken túl ezen a függvényen keresztül rengeteg beállítást lehet megadni, de helyszûke miatt erre most nincs lehetõség,  viszont a http://hu.php.net/mnogo címen a teljes lista elér- Heilig (Cece) Szabolcs hetõ. Térjünk inkább rá, hogyan is lehet a találatokat kipré- ([email protected]) Veszprémben él. Hobbija, selni, hogy azután gusztusos formában tálalhassuk a nyájas kedvenc idõtöltése és munkája is a prog- látogató elé. Erre a korábban már említett ramozás. Szabadidejében hajlamos kerék- udm_get_res_field() hivatott. Elsõ értékként a keresési © Kiskapu Kft. Minden jog fenntartva párra pattanni, vagy baráti társaságban eredménylistára hivatkozó azonosítót kell megadni, második- szerepjátékokkal foglalatoskodni. ként pedig a találat oldalon belüli sorszámát. Figyelem, a számozás nulláról indul! A harmadikkal megmondjuk, melyik adatra van szükségünk az adott találati sorral kapcsolatban, lehetséges értékei közül a fontosabbak: Kapcsolódó címek A keresõmotor hivatalos lapja • UDM_FIELD_URL: a talált oldal webcíme.  http://www.mnogosearch.org • UDM_FIELD_TITLE: a meglelt weboldal A mnoGoSearch PHP-modul leírása címkéi közt megadott oldal elnevezés.  • UDM_FIELD_DESC: a meglelt oldal leírása. Ezt a mnoGo- http://hu.php.net/mnogo Search az oldal Description-típusú metaelemébõl nyeri ki.

www.linuxvilag.hu 2002. szeptember 67 Szaktekintély

Adatbázisok egységesített elérése PHP-val Írásunkban két olyan módszert tárgyalunk, amelyekkel egyszerûbben férhetünk hozzá adatbázisainkhoz: a PEAR::DB-t és az ADODB-t.

mennyiben foglalkoztál már PHP-val, a PEAR név biztosan ismerõsen cseng. Magyarul körtét jelent, 1. lista A MySQL-adatbázis létrehozása (db.sql) de PHP-s körökben hallatán inkább az e névvel fémje- Alezett alkalmazáscsomagra gondol az ember. Tapasztaltabb CREATE DATABASE konyvesbolt; felhasználóknak az ADODB név is ismerõsen csenghet. USE konyvesbolt; Cikkünkben a PEAR::DB és az ADODB nevû egységesített adatbázis-elérési rétegekkel fogunk megismerkedni. Mindkét CREATE TABLE konyvek (

© Kiskapu Kft. Minden jog fenntartva programcsomag egy egyszerûnek tûnõ, de eddig megoldatlan sorszam smallint NOT NULL auto_increment, gondot orvosol. Tegyük fel, hogy az egyik délután írtál egy darabszam tinyint, néhány oldalas PHP-kódot, amellyel a cég MySQL-adatbá- konyvcim varchar(20), zisában kell valamilyen mûveletet elvégezned. Tételezzük fel PRIMARY KEY (sorszam) azt is, hogy nap mint nap ilyen egyszerûbb kódokkal foglala- ); toskodsz. Hónapok, esetleg évek során egész szép mennyiségû kód gyûlik össze, benne kisebb-nagyobb programokkal, ame- INSERT INTO konyvek (darabszam, konyvcim) lyekben csak az a közös, hogy egy adatbázis-kiszolgálón VALUES(10, "AkiØrt a harang sz l"); végeznek különbözõ mûveleteket. A programok száma egyre INSERT INTO konyvek (darabszam, konyvcim) nõ, a cég ügyfélköre is folyamatosan gyarapodik, egy szép VALUES(15, "Egri csillagok"); napon pedig – amikor már nem tudod tovább állítgatni az INSERT INTO konyvek (darabszam, konyvcim) adatbázis-kiszolgálót – rádöbbensz, hogy a jelenlegi rendszer VALUES(20, "Zabhegyezı"); teherbírása már nem elégséges. A cég vezetõsége úgy dönt, INSERT INTO konyvek (darabszam, konyvcim) hogy ezt elhárítandó egy Oracle adatbázis lenne a megfelelõ. VALUES(8, "A PÆl utcai fiœk"); És innentõl kezdve csõstõl jönnek a nehézségek: az adatbázis megváltoztatásával az összes eddigi alkalmazás alól – mond- hatni – kihúzod a szõnyeget. Minden egy csapásra mûködés- teleknek mind a programkönyvtárhoz kapcsolódó C-progra- képtelenné válik. moknak, mind a PHP-programoknak meg kell felelniük. Ha nem voltál elég elõrelátó, és ilyen helyzetben találod Egy alkalmazás csak akkor lehet a programcsomag része, magad, az elkövetkezõ hónapok lehet, hogy a korábbi prog- ha minden elvárásnak eleget tesz. ramok újraírásával fognak telni. Ha ellenben erre az eshetõ- A PEAR telepítéséhez elõször a csomagkarbantartó programot ségre már a legelején is gondoltál, elõfordulhat, hogy mind- kell letöltenünk és telepítenünk a következõ paranccsal: össze egyetlen fájlban kell egy változó értékét módosítanod. Amennyiben elõretekintõ vagy, a fenti módosítással a cég – és lynx -source http://pear.php.net/go-pear | php4 egyben az adatbázis – fejlõdése akadálytalanul folyhat tovább, és neked nem kell mást tenned, mint amit eddig: az adatbá- Megeshet, hogy a PHP4 rendszerünkön a php paranccsal zisból értékeket kihalászni, megjeleníteni és olykor módosítani. érhetõ el, ez esetben a következõt kell beírnunk: Ha viszont balszerencsésnek bizonyulsz, nincs más választá- sod, mint ettõl a pillanattól kezdve elszakadni az, eddig hasz- lynx -source http://pear.php.net/go-pear | php nált adatbázisodtól, és egy adatbázis-független kód írásába kezdeni, szabadidõdben pedig a korábban felhalmozódott Mindkettõhöz az szükségeltetik, hogy rendszerünkön a PHP4 kódtömeg rendbetételével foglalatoskodni. CGI-csomagja elérhetõ legyen, akkor is, ha a PHP4-et nem Mostanra valószínûleg mindenki számára világossá vált, miért CGI-ként, hanem Apache-bõvítményként futtatjuk. A csomag is kell a PHP alapértelmezett adatbázis-felületét úgy ahogy van neve php4-cgi, ami Debian rendszereken az apt-get elfelejteni. Lássuk hát a megoldást! install php4-cgi paranccsal egyszerûen telepíthetõ, más rendszerek esetén pedig az adott Linux-terjesztéshez adott A PEAR CD-k valamelyikén találjuk meg. A parancs futtatása után A PEAR egy nyílt forráskódra épülõ PHP-programkönyvtár, fogadjuk el a felajánlott beállításokat, és kérjük az alapértel- mely PHP- és C-bõvítményeket egyaránt tartalmaz. Hasonló mezett csomagok telepítését. Ha rendszerünkön nem a PHP4 a Perl CPAN-jához. Az teszi mégis különlegessé, hogy a CGI-változatát használjuk, a /etc/php4/cgi/php.ini PEAR-ben található bõvítményeknek egy sor szabálynak meg megváltoztatása nem szükséges, ellenben a kell felelniük. Ezek a szabályok ugyanúgy vonatkoznak a /etc/php4/apache/php.ini fájlban az include_path nevû változót kódolási stílusra, a kód tagoltságára, a bekezdések elhelyez- módosítanunk kell, hogy tartalmazza a PEAR könyvtárát. kedésére és a behúzások nagyságára, mint az alkalmazások Ha a kérdéses sor eddig így nézett ki: egységesített programozói felületére, valamint a megjegy- zések elhelyezkedésére és szerkezetére. Ezeknek a felté- include_path = "."

68 Linuxvilág Szaktekintély

2. lista A beállításokat tartalmazó fájl (config.inc.php) 4. lista A PEAR::DB-példa (pear-db.php)

1. 7. // erre itt nincs sz ksØg (select_db) 8. $sql = "SELECT * FROM konyvek"; 9. $res = $db->query($sql); 10. while ($row = $res->fetchRow()) 3. lista A MySQL közvetlenül (mysql.php) 11. printf("%s (%ddb)
\n", $row[2], $row[1]); 1.

2. 13. printf("K nyvek szÆma: %d
\n", © Kiskapu Kft. Minden jog fenntartva 3. include(’config.inc.php’); $res->numRows()); 4. // ... 14. $db->disconnect(); 5. $db = mysql_connect($dbhost, $dbuser, 15. $dbpass); 16. ?> 6. // ... 7. mysql_select_db($dbname); 8. $sql = "SELECT * FROM konyvek"; 9. $res = mysql_query($sql); 5. lista Példák adatbázis-azonosítókra 10. while ($row = mysql_fetch_row($res)) 11. printf("%s (%ddb)
\n", $row[2], dbt pus://felhnØv:jelsz @protokoll+gØpnØv: $row[1]); 555//usr/dbnØv.db 12. dbt pus://felhnØv:jelsz @gØpnØv/dbnØv 13. printf("K nyvek szÆma: %d
\n", dbt pus://felhnØv:jelsz @gØpnØv mysql_num_rows($res)); dbt pus://felhnØv @gØpnØv 14. mysql_close($db); dbt pus://gØpnØv/dbnØv 15. dbt pus://gØpnØv 16. ?> dbt pus (vÆltozat) dbt pus dbt pus://felhnØv:jelsz @tcp(localhost:555)/ dbnØv akkor erre kell cserélnünk: dbt pus://felhnØv:jelsz @unix (/var/run/dbsocket)/dbnØv include_path = "/usr/share/pear:."

A telepítést követõen rendszerünkön rendelkezésre áll a Elõkészületek /usr/bin/pear nevû futtatható fájl, amellyel a PEAR Mielõtt belevágnánk programjaink és elveink megreformálá- bõvítményeit kezelhetjük. A rendelkezésre álló bõvítmények sába, nézzük csak meg, hogyan dolgoznánk, ha adatbázisain- listája  http://pear.php.net/packages.php címen érhetõ el, kat a PHP felületén keresztül közvetlenül kezelnénk. Ebben az de kipróbálhatjuk az alábbi a parancsot is: esetben az elsõ dolgunk az, hogy meghatározzuk, milyen adat- bázist szeretnénk használni, mert ettõl függ a kód többi része. pear list-remote-packages Mi most a MySQL-t vesszük alapul, tekintve, hogy ez az egyik legnépszerûbb adatbázisrendszer (PostgreSQL-rajongóknak: A listából kiválasztott elemet a csak a PostgreSQL után!). Hozzunk tehát létre a MySQL-ben egy új adatbázist, és abban egy példatáblát (lásd 1. lista). pear install Ha ezzel megvagyunk, készítsünk egy egyszerû eljárást, http://pear.php.net/get/csomag_neve amellyel adatbázisunk tartalmát kiíratjuk (2. és 3. lista). Ha ez is kész, továbbléphetünk, és megtudhatjuk, hogyan zajlik mindez paranccsal telepíthetjük fel, vagy ha a szükséges csomagot a függetlenített adatbázis-elérési módozatokkal. már letöltöttük, a következõ is elég lesz: Adatbázis-kezelés PEAR::DB módra pear install csomag.tgz A 4. listán a MySQL-es példa látható kissé átalakítva. Az óriási különbség a két programkód között az, hogy míg az elsõ A Debian-változat legújabb terjesztéseiben a PEAR, illetve esetben a kód mondjuk Oracle-re történõ átültetése legalább az alapértelmezett csomagok az apt-get install 5–10 percünkbe kerülne, addig ebben az esetben nem tart libphp-pear paranccsal is telepíthetõk. tovább néhány másodpercnél. Nem is beszélve arról, hogy az

www.linuxvilag.hu 2002. szeptember 69 Szaktekintély

6. lista A PEAR::DB által támogatott adatbázistípusok 7. lista A prepare(), az execute() és a quote() (pear-db-2.php) mysql -> MySQL pgsql -> PostgreSQL 1. $ujkonyvek = array("AAAA", "BBBB", "CCCC"); ibase -> InterBase 2. msql -> Mini SQL 3. $sql = "INSERT INTO konyvek (darabszam, mssql -> Microsoft SQL Server konyvcim) VALUES(10, ?)"; oci8 -> Oracle 7/8/8i 4. $query = $db->prepare($sql); odbc -> ODBC (Open Database Connectivity) 5. sybase -> SyBase 6. foreach ($ujkonyvek as $ujkonyv) ifx -> Informix 7. $res = $db->execute($query, fbsql -> FrontBase $db->quote($ujkonyv)); 8. 9. $ujkonyvek2 = array(); Oracle PHP-s felületének leírását is át kellene rágnunk, 10. $ujkonyvek2[] = array(12, "SzØp mielõtt belekezdünk az új kód megírásába. Itt mutatkozik remØnyek");

© Kiskapu Kft. Minden jog fenntartva meg igazán, micsoda kényelmet jelent egy egységesített 11. $ujkonyvek2[] = array(21, "Bœcsœ a felület használata. fegyverektıl"); Vegyük szépen sorra, mit jelentenek az egyes sorok! Elõször 12. is a 3. sorban beillesztjük az adatbázissal kapcsolatos beállítá- 13. $sql = "INSERT INTO konyvek (darabszam, sokat tartalmazó fájlt – ez egyértelmû. A 4. sorban esetleg konyvcim) VALUES(?, ?)"; a require_once() tûnhet furcsának. A _once módosító 14. $query = $db->prepare($sql); arra hivatott, hogy ha a programunk egy más részén már 15. beszúrtuk a kérdéses fájlt, programunkat esetlegesen meg- 16. foreach ($ujkonyvek2 as $ujkonyv2) zavarva ne szúródjék be újra. Az include() és a 17. $res = $db->execute($query, require() között egyébként csak annyi a különbség, hogy DB->quote($ujkonyv2)); az include() csak figyelmeztet, ha nincs meg a keresett fájl, viszont a require(), ha nem találja a fájlt, a program futását le is állítja. Az elsõ lényeges különbségek az 5–7. sorban mutatkoznak meg. Míg a PHP alapfelületével szük- 8. lista Az ADODB-példa (adodb.php) séges volt külön kijelölni az adatbázist, PEAR::DB esetében egy különleges DSN-t, vagyis adatbázis-azonosítót kell 1. Connect($dbhost, $dbuser, $dbpass, A 8. és 9. sorban sem találhatunk lényeges újdonságokat: meg- $dbname); adjuk a lekérdezést, majd a $db objektumon keresztül futtat- 7. // erre itt nincs sz ksØg (select_db) juk. A 10. sor már tartalmaz néhány újdonságot, itt tûnik fel 8. $sql = "SELECT * FROM konyvek"; a fetchRow() tagfüggvény is. Ennek a feladata, hogy az 9. $res = $db->Execute($sql); adatbázistól sorban lekérdezze az SQL-utasításra válaszul 10. for (; !$res->EOF; $res->MoveNext()) érkezett mezõket. A 13. sorban található numRows() tagfügg- 11. printf("%s (%ddb)
\n", vény a lekérdezés által visszaadott sorok számát jeleníti meg, $res->fields[2], $res->fields[1]); ezt követõen pedig a disconnect() tagfüggvénnyel leválunk 12. az adatbázisról. 13. printf("K nyvek szÆma: %d
\n", Az adatbázis módosítása az INSERT, UPDATE és DELETE $res->RecordCount()); utasításokkal ugyanúgy mûködik, ahogy korábban megszok- 14. $db->Close(); tuk, csak ebbe az új környezetbe van beleültetve. 15. A fetchRow() függvényrõl még tudnunk kell valamit. Sokkal 16. ?> barátságosabbá tehetjük programunkat, hogyha számok helyett az adatbázis egyes mezõire a nevükkel hivatkozunk. Ennek beállítására szolgál a fetchRow() tagfüggvény elsõ és egyben el is hagyható kapcsolója, amely alapértelmezésben print($row[ konyvcim ]); a DB_FETCHMODE_ORDERED értéket veszi fel. Ha azonban az eddigiekkel ellentétben a DB_FETCHMODE_ASSOC vagy vagy: DB_FETCHMODE_OBJECT értékekkel hívjuk meg, a mezõkre a nevükkel is hivatkozhatunk: az elsõ esetben egy nevesített $row = $res->fetchRow(DB_FETCHMODE_OBJECT); tömb segítségével, az utóbbinál pedig objektumhivatkozáson print($row->konyvcim); keresztül. Például: Ha a fetchRow()-nak nem akarjuk minduntalan megadni $row = $res->fetchRow(DB_FETCHMODE_ASSOC); az általunk elõnyben részesített hivatkozási mód nevét, a kö-

70 Linuxvilág Szaktekintély

vetkezõ paranccsal alapértelmezetté tehetjük: Bemutatkozik az ADODB Az ADODB ugyanazt a célt szolgálja, mint a PEAR DB nevû $db->setFetchMode(DB_FETCHMODE_ASSOC); csomagja. Mûködési elve és programozói felülete is hasonló, a különbség csupán annyi, hogy az ADODB jóval kiforrottabb Hibakezelés kódra épül, és számtalanul többen használják, mint a A PEAR::DB isError() statikus – vagyis nem objektumhoz PEAR::DB-t. Az is az ADODB mellett szól, hogy jelenleg sokkal kötött – tagfüggvényével ellenõrizhetõ, hogy az elvégzett több adatbázisrendszert támogat, mint a PEAR::DB. mûvelet során történt-e valamilyen hiba: A PHP MySQL-rõl átalakított példaprogramunk ADODB-s változata a 8. listán látható. Az elgondolás itt is ugyanaz, mint a $db = DB::connect($DSN); PEAR::DB esetében, és a két felülethez tartozó kód – a kezelést illetõen – lényegében ugyanaz, eltekintve a megvalósítás rész- if (DB::isError($dB)) leteiben rejlõ különbségektõl. Az elsõ különbség az, hogy az die($db->getMessage()); ADODB esetében a csatlakozás két sorba tagolódik. A második szembetûnõbb: a for-t használjuk az eddig megszokott while A hiba leírásával a getMessage() tagfüggvény tér vissza. helyett. Ez azért szükséges, mert az ADODB az egyes sorok Az adatbázis-lekérdezésnél elõforduló hibákat az alábbi módon lekérdezése után a sormutatót nem önmûködõen lépteti ellenõrizhetjük: tovább, azt magunknak kell a MoveNext() tagfüggvény

meghívásával megtenni. © Kiskapu Kft. Minden jog fenntartva $res = $db->query($sql); Összegzés if ($db->isError($res)) Az ADODB és a PEAR::DB két jól átgondolt, adatbázis-keze- die(DB::errorMessage($res)); lést egységesítõ rendszer, melyek használata minden komoly fejlesztõ és cég számára mindenképpen indokolt. Jelen pilla- A PEAR::DB-nek egy önmûködõ szerkezete is létezik a hibák natban az ADODB használata fejlettségének köszönhetõen kezelésére. Errõl bõvebben a  http://pear.php.net/manual/en/ elterjedtebb, ugyanakkor a PEAR::DB a PHP PEAR projektjé- címen olvashatsz, a DB::setErrorHandling() nek a része – idõvel valószínûleg ez fog fölénybe kerülni. Ter- tagfüggvénynél. mészetesen csak akkor, ha az ADODB-t mind az adatbázisok támogatottságában, mind a leírás használhatóságában utolérik. További lehetõségek Az ADODB-hez nagyon jó leírás tartozik, míg a PEAR-hez a Amennyiben több hasonló módosítást szeretnénk végrehajtani szép és ügyes PHPDoc-ra épülõ – ez azonban egyelõre sajnos egy adatbázison, jó szolgálatot tehet nekünk a prepare() és még nagyon hézagos: teljesen hiányoznak belõle a példaprog- az execute() tagfüggvény. Mindkettõ ismerõs lehet, hiszen ramok, a tagfüggvények leírása sokszor egy-egy mondatra a Perl DBI programozása során már találkozhattunk velük. Vess korlátozódik, nem is beszélve arról, hogy a dolgok a valóság- egy pillantást a 7. listára! ban gyakorta nem úgy mûködnek, mint ahogyan elképzelték. A prepare() tagfüggvénnyel egy lekérdezést többszöri Bármelyik megvalósítás mellett döntünk is, végeredményben használatra lehet felkészíteni, a lekérdezésben változó érté- csak jól járhatunk. keket pedig az execute() tagfüggvény egymás után követ- kezõ meghívásai során adjuk meg. Az execute() elsõ értéke Gludovátz Gábor a prepare() által visszaadott $query változó, melyet az értéket tartalmazó változó vagy – több érték esetén – az érté- ([email protected]) egy soproni cég Linux- keket tartalmazó tömb követ. rendszerekkel foglalkozó rendszergazdája. A quote() függvény szerepe nagyon fontos: a segítségé- Kedvenc idõtöltése a programozás, és a vel biztosíthatjuk ugyanis, hogy az adatbázisba kerülõ értékek Linux lelkivilágában való kutakodás. Ha ideje mindig az adott adatbázisnak megfelelõen kódolódjanak. engedi, szívesen hódol szenvedélyének és Az „ez egy ’A’ betû” karakterláncban az aposztrófot a MySQL bringáján a környezõ erdõket járja. Honlapja a esetén egy visszafelé tört vonallal védenénk le („ez egy \’A\’  http://www.sopron.hu/~ggabor/ címen érhetõ el. betû”), míg MS Accessben vagy Sybase-ben egy másik aposzt- róffal („ez egy ’’A’’ betû”). Egy jól megtervezett adatbázis-egy- ségesítési rendszerben az ilyesmikre is gondolni kell! Kapcsolódó címek A PEAR::DB hátulütõi PEAR  http://pear.php.net A PEAR::DB egyik legnagyobb hibája minden bizonnyal ADODB  http://.php.weblogs.com/ADODB/ az, hogy még igencsak fejlesztés alatt áll, következéskép- PEAR-leírás  http://pear.php.net/manual/en/ pen néhány dolog nem mûködik benne, vagy nem úgy Különféle PEAR::DB-oktatók címei mûkö dik, ahogy az ember elvárná. A PEAR::DB-bõl  http://vulcanonet.com/soft/?pack=pear_tut egyelõre az adatbázisrendszerek kezeléséhez elengedhetet-  http://www.phpbuilder.com/columns/ len dátumkezelés egységesítését megvalósító függvények allan20010115.php3?page=1 is hiányoznak. Erre feltétlenül szükség van ahhoz, hogy  http://evolt.org/article/Abstract_PHP_s_database_code_ valódi adatbázis-független kódot írjunk, így remélhetõleg with_PEAR_DB/17/21927/index.html a közeljövõben ennek a megalkotására is sor kerül. Addig  http://www.devshed.com/Server_Side/PHP/ pedig – ha a PEAR::DB mellett döntünk – saját magunk DBAbstraction/page1.html alkotta függvényekkel vagyunk kénytelenek elvégeztetni ezt a feladatot.

www.linuxvilag.hu 2002. szeptember 71 Szaktekintély

Együttélés Az elmúlt hónapban sokat játszottam egy dobozos SuSE Linux 8.0-s Professional kiadással. Telepítettem, próbálgattam, hangolgattam. Amit egy új rendszerrel általában tenni szokás, mind megtettem vele, sõt talán egy kicsivel többet is.

egtapasztalhattam mindent, amit egy Használat egyszerû felhasználó valaha ki akarna A KDE magyar felületének köszönhetõen fris- próbálni. Ezeket a benyomásaimat sen telepített operációs rendszerét bárki azonnal Mfogom most kedves olvasóinkal megosztani. használatba veheti, a YAST felülete szintén anyanyelvünkön szól hozzánk, így a kisebb

© Kiskapu Kft. Minden jog fenntartva A telepítés rendszerbeállításokat könnyedén elláthatjuk. Az elsõ korong behelyezése után a rendszer telepí- A grafikus bejelentkezés könnyedén és zökkenõ- tése a gép elindulásakor elkezdõdik. Én a legegy- mentesen mûködik, bejelentkezés elõtt kiválaszt- szerûbb telepítési módot választottam, mivel a leg- hatjuk, hogy milyen ablakkezelõt szeretnénk többen valószínûleg ezt választják. Viszonylag min- indítani a meglévõk közül. Valószínûleg a KDE den rendben zajlott, de a merevlemez felosztásánál már a legnépszerûbb, és ezt az ablakkezelõt készí- egy négy, illetve egy tíz gigabájtos lemezrésszel rendelkeztem tették fel arra, hogy a legjobban együttmûködjön – ezek közül a tíz gigabájtoson tartom azokat az adataimat, a SuSE rendszerrel. Az AfterStep ablakkezelõt is kipró- amiket egy esetleges újratalepítés után is használni szeretnék. báltam, de sajnos hiába foglal kevés memóriát, ha a telepített A telepítõ azonban csak a nagyobbat jelölte meg mint telepítési alkalmazások nem jelennek meg a menüjében, csak a gyárilag célpontot – formázással együtt–, a kisebbik pedig mintha nem is beállított értékek szerepeltek. Ha rendszer-karbantartási fela- létezne a rendszeremen, tudtomra sem adta, hogy oda is tele- datot szeretnénk végrehajtani, a YaST ikonra kattintva elõugrik píthetném, vagy hogy egyáltalán létezik ilyen. Miután megér- egy rendszergazdai jelszót kérõ ablak. Bár megadhatjuk, hogy tettem a telepítõvel, hogy ez így nincs rendben, elkezdõdhetett jegyezze meg a jelszót, errõl mégis mindenkit lebeszélnék, a tényleges telepítés. Az elõre kiválasztott csomagokat telepítet- mivel nem biztonságos. Ezután a YaST-ban szinte mindent tem, nem változtattam semmit az összetevõkön, így a merevle- beállíthatunk. Egyik fõ erõssége a csomagok frissítése (szerin- mezen elfoglalt hely 1,7 GB lett (ezt kissé sokallottam, de miu- tem) – frissíthetünk az Internetrõl, CD-rõl, de merevlemezrõl tán láttam a programok mennyiségét, no meg a KDE 3 sem a is (a CD-rõl történõ frissítés leírását a programvadászat oldalon pehelysúlyú csomagok közé tartozik, kissé megnyugodtam). találod meg). Nagyon kellemes a magyar nyelv használata, A rendszer laptopomban szinte az összes általános alkatrészt mivel aki rendelkezik némi számítógépes vénával, de nem hibátlanul felismerte, amit azonban hiányoltam, az az infravö- beszéli sem a német, sem az angol nyelvet, az is hamar képes rös kapu, mivel így az Internetet nem tudtam rögtön mobilte- ráérezni a rendszer elõnyeire. A csomagok leírásának magyarí- lefonnal használni. Végsõ lépésként a rendszerindító program tása azonban még nem az igazi, ezért böngészésük közepette beállítása és telepítése zajlik. Sajnos itt nem adatott meg a elkél egy kis angoltudás. választás lehetõsége a LILO-GRUB párosból, mindenképpen A SiS VGA-meghajtójának zártsága miatt a grafikus felületet a LILO-val kellett megbarátkoznom. Mivel a laptop, amire tele- sajnos nem sikerült tökéletesen beállítanom, mivel hiányzott pítettem, számomra nem nyilvánvaló okok miatt képtelen a a 3D-támogatás. Ezt csak az Interneten való keresgélés után, LILO használatára, mindenképpen örültem volna a választási a SiS oldaláról letöltött meghajtó és néhány leírás elolvasását lehetõségnek. Indítólemezt készítettem egy hajlékonylemezre, követõen sikerült üzembe helyezni, az irodai munkához azon- ezzel élesztve fel a rendszert. Ezután telepítettem és állítottam ban szükségtelen a 3D-támogatás. Nyomtatási rendszernek a be a GRUB-ot. Laptopom immár teljes értékû rendszerrel bírt. CUPS-rendszert (Common Unix Printing System) választottam, Az elõre meghatározott csomagok között azonban nem szere- mivel ez könnyedén felismerte a hálózatban fellelhetõ megosz- pelt olyan program, mint a Gimp vagy a Mozilla. Számomra tott nyomtatókat, és elsõre mindent jól állított be, így kézzel mindkét program nagyon fontos, annak ellenére, hogy a KDE semmihez sem kellett hozzányúlnom. Ez különösen azoknak 3-ban a Konqueror nagyon sokat fejlõdött az internetböngészés a felhasználóknak jelent segítséget, akik nem szeretnének terén. Én akkor is a Mozillát szeretem használni, mivel ebben elmélyedni a hálózati beállításban, nem kívánnak minden egyes szinte mindent egy helyen tudok elvégezni, a Gimprõl pedig hálózati megosztásról pontos adatokat szerezni, mégis minden azt hiszem, nem kell sokat írnom, a hiánya azonnal érezhetõ elõnyét ki szeretnék aknázni. Nagyon érdekesnek találtam, volt! A másik furcsaság, hogy két igen nagyméretû irodai cso- hogy Samba-megosztásokat csak a rendszergazda fûzhet be a mag is felkerült a merevlemezemre: az egyik a StarOffice 5.2 könyvtárszerkezetbe, ami biztonsági szempontból jó, de ha egy (megközelítõleg 200 MB), a másik az OpenOffice.org 641-es ma- felhasználó egy távoli könyvtárat szeretne használni, azt bizony gyarított változata (nagyjából ugyancsak 200 MB). Ha ebbõl csak csak a rendszergazda jelszavának ismeretében teheti meg (vagy az egyiket telepítettem volna, a rendszer 1,5 GB-on is elfért volna. szól a rendszergazdának). Mivel laptopra telepítettem, a rend- Tudom, ezeket kézzel is beállíthattam volna, hogy települjenek; szer energiatakarékosságára is kíváncsi voltam. Eddig nem volt illetve azt is, hogy ne tegyék, de úgy vélem, egy kezdõ linuxos rossz tapasztalatom ezzel a lehetõséggel, viszont a rendszer a még azt sem tudja, mi fán terem a csomagok kiválasztása. számtalan gépindítás közül háromszor annyira takarékoskodott

72 Linuxvilág Szaktekintély © Kiskapu Kft. Minden jog fenntartva • A botkormány beállítása • Hangkezelés az ALSA-val • Nyomtatás • A rendszermag és paraméterei • Rendszerjellemzõk • A SuSE Linux rendszerindítási elgondolás • Linux a hálózatban • A Squid proxy szerver • Hálózati biztonság • A GNU GPL

Mindez közel ötszáz oldalon – az oldalszámból sejteni lehet, hogy kellõ mennyiségû adatot tartalmaz a rendszer megisme- réséhez, karbantartásához, és mindezt úgy teszi, hogy a doku- mentáció teljességgel a feltelepített rendszerhez íródott. Így sokkal kevesebb kínnal tanulhatjuk meg mindazt, amit egy általános Linux-könyv megvételénél bizony szinte minden kezdõ pingvinista megtapasztalhat. Mindehhez a az energiával, hogy a processzorhûtõ ventilátort elfelejtette  http://sdb.suselinux.hu weboldalon található ingyenesen bekapcsolni, ami nyáron különösen hamar lefagyáshoz vezet, használható adatbázis tartozik, ahol választ kaphatunk a kér- ezért ennek a kezelését inkább a BIOS-ra bíztam. désekre, illetve a termék mellé egy 90 napos ingyenes telepítési segítség is jár. Összegzés A dobozos változat megvásárlásával alapjában véve egy leírá- Csontos Gyula sokkal megfelelõen ellátott rendszert kapunk kézhez. A több ([email protected]) mint nyolcszázoldalas magyar nyelvû leírás végigvezet a tele- pítésen, a beállításon, a rendszer finomhangolásán és az ablak- a Linuxvilág szakmai és CD-szerkesztõje. kezelõk (KDE, Gnome) megismerésén (a leírásban ezt grafikus Szabadidejében szívesen mászik hegyet munkakörnyezetnek hívják). Megismerkedhetünk az alapvetõ és kerékpározik. programok használatával, így az OpenOffice.orggal, a Windowsból már biztosan ismerõs pdf-olvasóval, az Adobe Acrobat Readerrel, a KDE és a Gnome böngészõivel, a KMail levelezõprogrammal, a KOnCD CD-író programmal, a Gimp Kapcsolódó címek képszerkesztõ programmal, a Kooka lapolvasó felülettel, a hangkezeléssel és a tévé, videó, rádió és webkamera kérdés- A hivatalos magyar oldal  http://www.suselinux.hu körével is. A harmadik és egyben legvaskosabb könyv a rend- A hivatalos német oldal  http://www.suse.de szer lelkéhez közelebb álló tudományt csurgatja az ember A hivatalos angol oldal  http://www.suse.de/en/ fejébe, a fõbb fejezetcímek (idézve a könyvbõl): Alkatrész-adatbázis  http://hardwaredb.suse.de/ • Telepítés YaST2-vel Terméktámogatási adatbázis • Különleges telepítési módok  http://sdb.suselinux.hu/hu/sdb/html/ • Rendszerfrissítés és csomagkezelés Programkarbantartás  http://support.suse.de/psdb/ • YaST2 – beállítási eszközök Biztonsági bejelentések • Rendszerbetöltés és rendszerbetöltõ programok  http://www.suselinux.hu/biztonsag/ • Az X Window rendszer • A grafikus felület beállítása

www.linuxvilag.hu 2002. szeptember 73 Szaktekintély

Webkiszolgálók harca A cikkben a Linux alatt is futó webkiszolgálókat veszem górcsõ alá, ezek közül is azokat, amelyek szabadon elérhetõk. Lássuk, mibõl gazdálkodhatunk, és melyik kiszolgálónak mi az erénye, illetve a hátránya.

ögtön tisztázzuk, hogy bizonyos alkalmazások nemcsak 1. webkiszolgálóként, hanem alkalmazáskiszolgálóként is mûködnek, esetleg saját beépített webfejlesztési eszkö- Rzeik vannak. Az ismerkedést kezdjük a jó öreg Apache-csal, és tekintettel a népszerûségére, egy kicsit többet foglalkozunk vele. © Kiskapu Kft. Minden jog fenntartva Apache Az Apache a világ legtöbbet használt webkiszolgálója, az összes kiszolgálóprogram körülbelül 55–60 százalékát ez a program teszi ki. Jelenleg a 2.0-s sorozat a legújabb, ami jelentõs megú- juláson ment keresztül az elõzõ 1.3-as sorozathoz képest. Teherbírása és bõvíthetõsége legendás. Bõvíthetõségét modul- alapú felépítésének köszönheti, és él is ezzel a lehetõséggel. A program fordításakor mi dönthetjük el, hogy mi kerüljön magába a webkiszolgáló szerepét ellátó alkalmazásba, és mi modulba. Ha úgy kívánjuk, az összes modult belefordíthatjuk a programba, ennek azonban semmi értelme, mert csak lassab- ban fog elindulni, és egy csomó olyan modul lesz benne, ami szálat használó, vagy egy harmadik, úgynevezett Perchild felesleges. Milyen újdonságokkal rendelkezik, illetve hogyan modult használva. A Worker MPM az a modul, ami a kevert is mûködik a 2.0-s Apache? Nos, az elõzõ sorozathoz képest megoldást alkalmazza. Elindul egy folyamat, és az ügyfelek elõrelépés, hogy már nem folyamat- (process), hanem szál- egy bizonyos kérésszámig ezen belül szolgálják ki a rendszer. alapú (thread) futtatásra is lehetõség nyílik. Miért elõnyös ez? Ha a kérések túllépik ezt a számot, egy újabb folyamat indul, A weblapok lekérésekor legalább egy új folyamatnak el kellett és kéréseket azon belül lehet ismét a meghatározott számig indulnia, ilyenkor természetesen újra be kellett tölteni a kiszolgálni. Mind a folyamatok, mind a folyamaton belüli démont a memóriába, következésképpen pazarolta az erõfor- szálak legnagyobb mérete megadható. A Preforking MPM rásokat, és lassabb volt az indulás. Ezzel ellentétben a szálak a régi Apache-megközelítést használja, a már fent leírt egy közös memóriaterületet használnak, és egy folyamaton belül démon folyamatmegközelítést. Itt a kiszolgálható ügyfelek több kiszolgálódémon is elindulhat. Ekkor tehát az Apache legnagyobb számát az engedélyezett folyamatok száma kevesebb memóriát használ, és gyorsabban szolgálja ki a kéré- határozza meg. Az erõforrások tekintetében a drágább indu- seket. A szálak programozásánál ugyanakkor körültekintõen lásért és a nagyobb igényért cserébe nagyobb megbízhatóságot kell eljárnunk, mivel súlyos gondok adódhatnak, ha elrontja kapunk. A Perchild MPM pedig egy olyan új, szintén kevert az ember, és ezt nem mindegyik felület támogatja megfelelõ megoldást alkalmazó rendszer, amelynél folyamatonként módon. Érdemes hát ezt a módszert használni a webkiszolgá- beállítható, hogy milyen felhasználói azonosító alatt mûködjön. lónál. A fejlesztõk viszont a választás lehetõségét meghagyják Ezzel a felhasználókat teljesen el tudjuk határolni egymástól. a rendszergazdáknak, hogy a megbízhatóságot és a kipróbált Ez a modul nem minden felületen érhetõ el, és a fejlesztõk is módszert választják-e – hiszen az Apache ebben is nagyon jól felhívják rá a figyelmet, hogy bár már üzembiztos, még fejlesz- teljesített –, esetleg megkockáztatják a még kevesebb ideje tés alatt álló modulról van szó. használatos kódot, és valóban nagyobb teljesítményt érnek el. Az Apache felügyeleti eszközökkel is jól el van látva, ame- Hogyan lehetséges ez? Az 1.3-as ág fejlesztésénél a fejlesztõk lyek közül a Webmin – mint nyílt forrású megoldás – külön a POSIX-szabványokon alapuló megoldást használták, ahol kiemelhetõ (1. kép). pedig ezt megvalósító réteg nem állt rendelkezésre az operá- Az Apache felhasználási szerzõdése mind az üzleti felhasználást, ciós rendszerben, ott egy POSIX-emulációs réteget húztak fel mind az olyan megoldások fejlesztését lehetõvé teszi, amelyek a rendszerre. Ez néhol kevésbé megbízhatóvá és lassabbá tette már nem lesznek nyílt forrásúak. A világon a legismertebb cég, a rendszert. A 2.0-s ág a hálózati kapcsolatok kezeléséhez és a amely Apache-csal foglalkozik és kereskedelmi tevékenységet fájlrendszer eléréséhez már a futtató operációs rendszer által is folytat, a Covalent. Nemrég olyan megállapodást kötöttek a használt natív rendszerhívásokat használ. A natív rendszerhí- Microsofttal, amelynek értelmében az ASP.Net-alapú alkalmazá- vások lehetõségét a fent említett MPM-ek (Multi-processing sok Apache alatt is futtathatók lesznek. A kiadott leírás csak a Modules) és az APR (Apache Portable Runtime) biztosítja. Windows operációs rendszerrõl szólt, de ne feledjük, hogy egy Az MPM-ek teszik lehetõvé azt is, hogy a rendszergazda modullal már most is lehetõség nyílik .asp kiterjesztésû webla- kiválaszthassa, milyen módon használja a kiszolgálót – a régi, pokat futtatni Apache alatt, bár ez tényleg nem rendelkezik folyamatalapú, vagy az új, kevert, több folyamatot és több a .NET lehetõségeivel. Ez az Apache legnagyobb erõssége:

74 Linuxvilág Szaktekintély

2. ugyanis nem szeretik a BSD felhasználási szerzõdést). Külön- legessége, hogy nagy részét a Pike nevû parancsnyelvben írták – erre sok más tekintetben is támaszkodik –, és folyamatok helyett a kezdetektõl fogva szálakat használt. Ami számos rendszergazda szemében vonzóvá teheti, az a weben keresztüli felügyelhetõség. Ez egyben legnagyobb hátránya is: amikor elõször nézünk bele a beállítófájlba, valószínûleg még a léleg- zetünk is eláll, és nem kis idõt vesz igénybe, mire elsajátítjuk a felület kezelését. Az XML ugyanis nagyon szép lehetõségeket kínál az adatok megjelenítésére, de ha egy beállítófájlt ebben tárolnak, és azt nekünk kézzel kell szerkeszteni, nos… Én inkább maradok az Apache szemléleténél – egyszerû beállító- fájl, ha valaki nem ismeri, grafikus beállítóprogramot kap. Nos, a Roxennél meg sem próbálkoznék kézzel beállítani a kiszol- gálót. A Pike nyelven keresztül kitûnõen és gyorsan lehet olyan 3. weboldalakat összeütni, amelyek .rxml kiterjesztéssel rendel- keznek. Figyelem! Csak a Roxen Webchallenger tartozik GPL

felhasználási szerzõdés alá, és a Roxen honlapján © Kiskapu Kft. Minden jog fenntartva ( http://www.roxen.com) szinte csak a Roxen CMS-rõl esik szó – ez teljes fejlesztési és vezérlõfelületet ad az oldalhoz, de kereskedelmi termék. A letöltéseket a Download menüpont alól tehetjük meg, a legutolsó változat a 2.2-es. Érdekessége, hogy egy hozzá fejlesztett webmail tartozik mellé, ami a legjobbak egyike, az IMHO (2. kép).

Caudium A Caudium a Roxen 1.3-as sorozatából indult ki mint külön fejlesztési ág, kihasználva a GPL adta lehetõségeket. A történet valamikor még az 1.3-as Roxen idejében kezdõdött, amikor is a fejlesztõk úgy gondolták, hogy nem raknak vissza minden foltot (patch). Elég sok külsõ és néhány belsõ – értsd: céges – fejlesztõ úgy gondolta, hogy külön utakra lépnek, és nem köve- a modulokon keresztül nemcsak az igényeinknek megfelelõen tik a cég elképzeléseit és jövõbeni terveit. Így született meg a finomhangolható, de gyakorlatilag nincs olyan parancsnyelv, Caudium. Sok mindenben hasonlít a Roxenre, abban is, hogy amit ne támogatna. Az Apache projekt azonban ennél sokkal saját webmail programmal rendelkezik, amelynek neve CAMAS. szélesebb körû: szerepel benne Java-alapú webkiszolgáló, illetve Ez is külön fejlesztési ág, az IMHO-ból jött létre a Caufiumhoz alkalmazáskiszolgáló, XML-RPC- és SOAP-megvalósítás is – ezek- igazítva. További megegyezõ tulajdonságuk, hogy csak rõl egy másik számban bõvebben írok majd. webfelületen keresztül érdemes beállítani õket (3. kép). Ha tele- pítjük a támogatást, PHP-oldalaink is mûködni fognak alatta. Boa Ha valakinek egyszerû, gyors, CGI-ket is futtatni tudó web- Zope kiszolgálóra lenne szüksége, a Boa a számára megfelelõ kiszol- A Linuxvilágban már sorozat is megjelent róla, így sokaknak gáló. Futása közben csak akkor indít magából újabb példá- ismerõs lehet. Beépített webkiszolgálóval rendelkezik, a fõ nyokat, ha CGI-t kell futtatnia, máskülönben a már futó biná- hangsúly azonban mégiscsak a tartalomszolgáltatáson van, rison belül oldja meg a kért oldalak kiszolgálását. A már futó amit rendkívül magas szintû nyelven lát el. Már készül hozzá folyamat önmagán belül többszörözi a HTTP-csatornákat. a sablonértelmezõ, amelynek segítségével a kiszolgált oldalak Sebessége is lenyûgözõ: a tesztek alapján egy 300 MHz-es küllemének cseréje könnyedén megoldhatóvá válik, és a meg- gépen is több ezer kapcsolatot képes kezelni! Fõ célja a sebes- jelenítés sokkal jobban elválasztható lesz magától az alkal- ség, és nem utolsósorban a biztonság. Fejlesztése már 1991-ben mazástól. Ehhez részletesebben lapozzuk fel a Linuxvilág elkezdõdött, ezenkívül beállítófájlja nagyon hasonlít az régebbi számait (15–19. szám). Apache-éhoz. Ha ennyi mindent tud egy kis bináris, akkor miért nem ismert és népszerû? Például azért, mert nem támo- Deim Ágoston ([email protected]) gatja a kiszolgálóoldali parancsnyelveket, például a PHP-t. Kedveli a sört, szereti a futást és imádja A legritkább esetben gyorsabb vagy könnyebb C-alapú CGI- Szabó Lõrinc verseit. Nem hisz vakon egyik ben írni meg egy dinamikus weboldalt, mint PHP-ban, nem rendszerben sem. Vonzódik a BSD-hez is. meglepõ tehát, hogy a rendszergazdák legtöbbször más meg- Tagja az LME-nek és a MBE-nek. Mottója: oldásokhoz fordulnak. a gép nem lehet fontosabb az embernél.

Roxen   A Roxen Webchallenger a második legnépszerûbb nyílt forrású httpd.apache.org; http://www.boa.org   program a világon. Megbízhatóságáról sok mindent elárul, http://www.roxen.com; http://www.caudium.org hogy a  http://www.bsd.hu is ezt használja (az élet furcsa  http://www.lysator.liu.se/~stewa/IMHO/ fintora: a Roxen GPL felhasználási szerzõdésû, a fejlesztõk

www.linuxvilag.hu 2002. szeptember 75 Kovácsmûhely

Miért Linux?

Reuven visszatér az alapokhoz, és áttekintést ad a Linux üzleti világban való fejlõdésérõl.

ontsunk pezsgõt! A Linux Journal ebben a hónapban ezért felhasználóbarátabb, mint B jelenik meg századszorra. Ennek örömére egy kicsit a hagyományos programfejlesztési félreteszem szokásos nyílt forrású webes-adatbázisos modellek: csökkenti a költségeket témáimat és csatlakozom az ünneplõkhöz. és erõsíti a versenyt. Számos okuk van a Linux felhasználóinak (és általában a nyílt Természetesen nem minden szabad program jó minõségû, forrású programok híveinek) az örömre. A csúcstechnológiára és nem minden tanácsadó tudja, hogy mit kell tenni. A kö- épülõ gazdaság ugyan visszaesett, a nyílt forrású programok zösségi fejlesztés kitûnõ eredményeket hozhat, de ez nem

© Kiskapu Kft. Minden jog fenntartva fejlesztése azonban továbbra is nagy lépésekkel halad elõre. azt jelenti, hogy minden Interneten megjelenõ program Amikor a Linux Journal elsõ száma megjelent, még kevés biztonságos és megbízható. Valójában teljesen világos, hogy ember hallott a finn egyetemista által írott rendszermagról, sok programot, beleértve egy-két népszerût is, egyáltalán amely komoly szerepet játszott a Linux és a szabad programok nem próbáltak ki a kiadás elõtt. Az ilyen programok az egész sikerében. nyílt forrás közösséget lejáratják, és több kárt okoznak, mint Manapság sokan tudnak a Linuxról, még ha nem is értik meg, amennyi hasznot hajtanak. Évente többször elõfordul, hogy hogy mi az és mire jó. Sok ügyfelem tudja, hogy a nyílt forrású felhív az ügyfél, hogy ki kellene javítani egy programot, megoldásokat részesítem elõnyben, és mindig kíváncsiak arra, amelyet letöltöttek, és elsõ ránézésre mûködött is, de végül hogy miért van ez így, és ami még fontosabb, miért érdekük kiderült, hogy nem biztonságos, nem megbízható, és tele nekik is, hogy ilyen megoldást válasszanak. Vállalva annak a van hibákkal. kockázatát, hogy a már hívõ emberek között tartsak hittérítést, ebben a hónapban áttekintem azokat az okokat, amiért a Linux A hibák javítása kiváló választás a kiszolgálóoldali alkalmazások futtatásánál. Még ha úgy is találod, hogy a kiszolgálód hibás és nem Remélem, néhány itt leírt ötlet a jövõben segíteni fog a szabad biztonságos nyílt forrású alkalmazásoktól függ, nincs minden programokon alapuló megoldások népszerûsítésében munka- veszve. A szabad programok természetébõl következõen adott társaid és ügyfeleid körében. a lehetõség, hogy igényeid szerint módosítsd vagy javítsd, ha valami nem tetszik. A megosztott forrású programok felhasz- Ár és megbízhatóság nálói szerzõdéseinek kitalálói nem értik a lényeget, amikor A megszállott szakembereket a módszerek és az eszközök megengedik a forráskód megtekintését, csakhogy nem engedik érdeklik, amelyek új tudáshoz és új távlatokhoz vezetnek. meg a módosítását vagy a javítását. Ha veszek egy házat vagy A való világban viszont az embereket az érdekli, hogy mun- egy autót, akkor tökéletesíthetem és meg is javíthatom, ha kájukat a lehetõ leggyorsabban és legolcsóbban végezzék el. akarom; miért lenne ez másképp a programokkal? A program csak eszköz a cél eléréséhez, nem maga a cél. Az igaz, hogy a megosztott forráskód lehetõvé teszi a kód Emiatt úgy vettem észre, hogy a legjobban úgy adható el az tanulmányozását, így a megbízhatósági és a biztonsági hibák embereknek a nyílt forrású program, ha azt mondjuk: keve- gyorsabban elõkerülnek és kijavíthatók. A forráskód olvasá- sebbe kerül és többet tud. Egyik tényezõ sem elég önmagában sának lehetõsége azonban közel sem olyan fontos, mint a to- – könnyen találhatunk drága, jó minõségû programokat, vábbfejlesztés lehetõsége. Ráadásul a továbbfejlesztett változat valamint telepítésre sem méltó, ócska és olcsó programokat. visszajuttatása a közösségi változatba azt eredményezi, hogy A fogyasztók, és így az ügyfeleim is, mindig szívesen szerez- mindenki hasznosítja az egyén javítását, és további fejlesztésre nek többet kevesebbért, és emiatt a szabad programok tetsze- nyílik lehetõség. Ezért a közösségi munkában való részvétel nek nekik. minden nyílt forrású program felhasználójának érdeke; ez nem Amikor az ügyfélnek vázolom a megoldást, elkezdem elma- egyszerûen csak szép dolog. gyarázni, hogy olyasmit ajánlok, amit õk lehetetlennek hittek: Mivel általában kiforrott eszközöket használok – például a szabad és olcsó programok pontosan azt teszik, amit elvárnak Linuxot, Apache-ot, Perlt és Pythont –, viszonylag ritka, hogy tõlük, ráadásul le sem fagynak. Amikor elmondom egy hibát találok a letöltött programokban. Évente többször is Windows-felhasználónak, hogy még sohasem láttam Linuxot elõfordul azonban, hogy az általam használt programokban lefagyni hat év és több tucat rendszer után, meglepõdnek és valami hiányosságot fedezek fel. Mivel hozzáférek a forrás- hitetlenkednek. Ha elmondom azt is, hogy ez a program szaba- kódhoz, a lehetõ leggyorsabban meg tudom változtatni, és ez don letölthetõ az Internetrõl, még nehezebben hiszik el. azt is jelenti, hogy ezzel a gonddal másoknak már nem kell Ügyfeleim gyakran érdeklõdnek, hogy ki támogatja a progra- megbirkózniuk. mot, mi lesz, ha valami elromlik. Megkönnyebbülve veszik Érdekes, hogy ez az érv még ma is használható, tekintve, tudomásul, hogy nemcsak én ajánlom fel a szükséges támo- hogy a nyomtatómeghajtókkal kapcsolatos hasonló gondok gatást, hanem más is képes erre, ha az én munkámmal nem indították arra Richard Stallmann-t, hogy megalapítsa a Free lennének elégedettek. Ez természetesen szöges ellentétben áll Software Foundationt, amely a GNU-projekttel döntõ szerepet számos tanácsadó cég programtelepítésekkel kapcsolatos visel- játszott a GNU/Linux és a szabad program sikerében. Az is kedésével és megszorításaival. A nyílt forrású megközelítés csodálatos, milyen hamar hozzászoktunk, hogy a forráskód

76 Linuxvilág Kovácsmûhely

elérhetõ, és a számítógépes rendszer minden pontját tetszés amellyel az online közösségi rendszerek létrehozása és szerint megvizsgálhatjuk vagy megváltoztathatjuk. módosítása válik egyszerûbbé. Továbbá az Apache Software Hasonlóképpen a Linux-terjesztések is egyre inkább teljes Foundation által támogatott mod_perl, Mason és számos rendszerré válnak. Nemrég kezdtem el dolgozni egy projekten, Javához és XML-hez kapcsolódó eszköz egyre inkább azt a amelynek Solarison kell futnia, és rögtön rájöttem, hogy kedvezõtlen folyamatot gerjeszti, hogy a megfelelõ eszköz mennyivel gazdagabb és jobban felépített egy átlagos Linux- kiválasztása a telepítéssel és a használattal összemérhetõ terjesztés, mint például a Solaris alapkiépítésben. Fél napig is nehézségû feladattá válik. eltart, amíg letöltöm és telepítem az összes szükséges progra- Bármily csodálatosak is legyenek ezek az eszközök, ne feled- mot, mint a gcc, a Perl, a Python stb. Az elmúlt években hoz- jük, hogy nem mindenkit lehet a mi oldalunkra állítani. A leg- zászoktam, hogy minden környezetemben levõ gépen ott van durvább élményem ezzel kapcsolatban az, hogy tavaly egy a gcc, ezért úgy éreztem magamat, mint akit visszadobtak a leendõ ügyfél nem engem választott egy egyszerû tartalom- Unix sötét középkorába. kezelõ rendszer megvalósítására, amely a termékeit jelenítette volna meg a weben. Megtudtam, hogy az ajánlatom 800 000 Nincsenek titkok dollárral volt kevesebb, mint a legközelebb álló versenytársa- A mérnökök nem tudnak titkot tartani, erre Scott Adams is mé. Mivel azonban én nyílt forráskódra építettem, a verseny- rámutatott a Dilbert-képregényekben. Valóban, az egyik dolog, társ neve viszont ismert volt tartalomszolgáltatás világában, amit nagyon vonzónak találok a nyílt forrású programokban, vesztettem (az ügyfél azóta sorozatos elbocsátásokra kénysze-

hogy nincsenek titkok. Az ügyfelek azért bérelnek fel engem, rült, negyedéves eredményei egyre romlottak, és weboldalát © Kiskapu Kft. Minden jog fenntartva mert idõt akarnak megtakarítani maguknak, vagy mert nem még mindig kézzel rakják össze, így legalább némi erkölcsi értenek egy bizonyos területhez, de nem azért, mert rákény- gyõzelmet elkönyvelhetek). szerülnek. Ebbõl az okból kifolyólag munkámat az ügyvédi Azt is meg kell jegyeznünk, hogy a nyílt forrású világ nem vagy könyvelõi munkához hasonlónak tekintem, hiszen taná- minden résztvevõje tartja be a közösségnek tett ígéreteit. csot és megoldásokat ajánlok fel nyilvánosan elérhetõ tudás- A nyílt forrás számos támogatója meglepõdött és csalódott, anyag alapján. amikor a Lutris tavaly „bezárta” az addig nyílt forrású A „nincs titok” eszmeisége jól mûködik az ügyfeleimnél, még Enhydra Enterprise Java alkalmazáskiszolgáló kódját. Szeren- azoknál is, akiket egyáltalán nem érdekel a programok mûkö- csére vannak helyettesítõ termékek, nemcsak a GPL-es JBoss dése. Tudják, hogy kérdezhetnek, és én a legjobb tudásom alkalmazáskiszolgáló tett szert óriási népszerûségre az elmúlt szerint válaszolok, nem kell marketingrizsával, kötelezõ frissí- év során, hanem nemrég a Sun is bejelentette, hogy a nem tésekkel és kétértelmû beszéddel fárasztanom õket. Mûszaki üzleti, nyílt forrású J2EE-megvalósítások is hivatalos tanúsít- érdeklõdésû ügyfeleim élvezik, hogy ha akarnak, belenyúl- ványt kaphatnak a következõ hónapokban. Ez csökkentheti hatnak a kódba és elolvashatják a leírást; csak azért nem tud- néhány üzleti szereplõ idegenkedését a nyílt forrású progra- nak annyit, amennyit én tudok, mert nincs hozzá idejük és mokkal szemben. elég tapasztalatuk. Még ha érnek is kudarcok, ne hagyd magadat becsapni: az A nem haszonelvû ügyfelek sok tekintetben tökéletes célpont- IBM, a HP és még a Sun is elismeri ma már, hogy a Linuxot jai a nyílt forrású programoknak, és sokszor fellelkesednek, és a nyílt forrású programokat komolyan kell venni, mert ha ilyen eszközöket használhatnak. Különösen az oktatási sokoldalúak és megbízhatóak. A „világuralom” ideje még nem intézményeknek tetszik a tudás megosztásának és a közösségi jött el, de a márkanevet már elismerik, a pénzügyi tényezõk munkának az eszméje. Hathatós érv, ha elmondjuk nekik, és az akadémiai és üzleti világból érkezõ elismerés segít minket hogy pénzt takaríthatnak meg, és a hasonló gondolkozású a továbblépésben. emberek közösségébe tartozhatnak. Ráadásul a nem haszon- elvû szervezetek nem érzik fontosnak, hogy a változtatásokat Boldog születésnapot! a cégen belül tartsák, így könnyebben részt vehetnek a nyílt Írásomat azzal fejezem be, hogy az újság létrejöttét lehetõvé forrású közösség munkájában. tevõ keményen dolgozó munkatársakat elismerés és nagyra- becsülés illeti. A Linux Journalt egy évvel azelõtt kezdtem Jó minõségû eszközök olvasni, hogy az elsõ cikkem megjelent benne, és azóta is Amikor cikkeket kezdtem írni a Linux Journalba, a legtöbb minden hónapban olvasom. A cikkek a világ legalkotóbb kiszolgálóoldali alkalmazás kézzel írott CGI-program volt. programozóinak sokféle érdeklõdési területét mutatják be. Rengeteg webhely használ még ma is ilyen programokat. De A tény, hogy a Linux Journal a 100. számához érkezett, minden ahogy a web egyre bonyolultabbá vált, az emberek olyan kétség nélkül azt jelenti, hogy a Linuxnak és a nyílt forrású eszközöket kezdtek igényelni, amelyekkel könnyen és gyorsan programoknak helyük van ezen a világon. Remélem a 200. lehet jó minõségû és méretezhetõ webalkalmazásokat készí- számba is írhatok egy hasonló cikket! teni. Nem túl meglepõ módon seregnyi zárt forrású kereske- delmi program jelent meg, hogy kielégítse ezeket az igényeket. Linux Journal 2002. augusztus, 100. szám Az már viszont felháborító, hogy mennyi pénzt kérnek el ezekért a programokért – ráadásul kötelezõ szerzõdést kötni velük, hogy az õ tanácsadóikat béreld fel a testreszabáshoz. Reuven M. Lerner Szerencsére a nyílt forrású világ válaszolt a kihívásra. Számos ([email protected]) kisebb webes és nyílt forrású eszköztár áll rendelkezésre bonyolult kiszolgá- internetes módszerekkel foglalkozó tanács- lóoldali alkalmazások készítéséhez. A Zope, mint az elmúlt adó cég tulajdonosa és vezetõje. A cikk hónapokban láttuk, egy rendkívüli (bár bonyolult) alkalmazás- megjelenésének idõpontjában valószínûleg kiszolgáló, amelynek segítségével adatbázisokhoz és más már végleg elkészült Core Perl címû adatforrásokhoz kapcsolódni képes webalkalmazásokat készít- könyvével, melyet idén jelentet meg a Prentice-Hall. Az ATF hetünk. A következõ hónapban megnézzük az OpenACS-t, honlapon érhetõ el ( http://www.lerner.co.il/atf/).

www.linuxvilag.hu 2002. szeptember 77 Fogadó a Linuxhoz

Zendítsünk rá és ünnepeljünk! Marcel ezúttal két médialejátszót ismertet, és azt is bemutatja, hogyan lehet rájuk különbözõ bõröket húzni.

röm téged újra látni, François, mon ami! Bízom benne, hogy becsülettel gondját viselted az étteremnek, mialatt én fergeteges európai körutamon vettem részt. ÖKöszönöm kérdésedet, valóban nagyszerû volt az utazás. Oui, az ételek is kitûnõek voltak, de sajnos egyik étterem sem dicsekedhetett hozzád hasonló pincérrel. Láttam a zene és a fények városait: Londont, Salzburgot,

© Kiskapu Kft. Minden jog fenntartva Rómát, Firenzét és még sok más rendkívüli helyet. És a sorból természetesen nem hiányozhatott a legcsillogóbb város, Párizs sem. Ez valahogy illik is ahhoz az ünnepi alkalomhoz, amely- hez a mai menüt kell összeállítanom: a Linux Journal századik, 1. kép Az XMMS alapértelmezett képe ünnepi kiadásához. Mais oui, François, mivel is lehetne jobban ünnepelni, mint zenével és fényekkel? Gyorsan, még mielõtt a vendégeink megérkeznek, szaladj le a pincébe, és hozd fel, kérlek, az 1989-es Pessac Léognant. De hiszen már itt is vannak a vendégek! François, siess! Foglal- jatok helyet, mes amis, helyezzétek magatokat kényelembe. Linux-konyhánk mai menüje egy különleges alkalomhoz kötõ- dik. A Linux Journal megérte a 100. számát, ami már jó évjá- ratnak számít. Vessünk egy pillantást a menü elsõ fogására, erre az XMMS-nek nevezett programocskára. Alapjait tekintve szabályos médialejátszóról van szó, az XMMS mégis több egy egyszerû zenelejátszónál. Közelebbrõl megvizsgálva látványos fénybemutatóval is megörvendeztet minket. Támogatja az Ogg Vorbis, MP3 és WAV formátumokat, és megfelelõ bõvítmények- kel RealAudio-fájlok lejátszására is használható. Nem kell túl messzire mennünk érte, hiszen minden elterjed- tebb Linux-rendszercsomag tartalmazza. Ha a pillanatnyi telepítéseteknek nem része, próbálkozzatok a rendszercsomag 2. kép Az XMMS fényjátéka CD-ivel, ha pedig minden mással kudarcot vallottatok, a  http://www.xmms.org címrõl tölthetitek le a legújabb és legjobb forráskódot. dezésünk további két Az XMMS fordítása egyszerû, ismerõs lépéseken keresztül egysége lép mûködésbe. valósítható meg. A jelenlegi változat a GTK 1.2.2 vagy késõbbi Mivel a három egység változatára épül. Szükségetek lehet az OpenGL vagy Mesa egymástól függetlenül könyvtárakra, amennyiben az OpenGL-bõvítményeket akar- mozgatható, elõfordulhat, játok használni (errõl késõbb bõvebben is szó lesz). A forrás- hogy helyzetük beál- kódból kiindulva az alábbi lépéseket kell követni: lításával több idõt vaca- kolunk el, mint amennyit tar -xzvf xmms-1.2.7.tar.gz szeretnénk. Ez a nehéz- 3. kép A KDE Media Player cd xmms-1.2.7 ség egyszerûen megold- (alapértelmezett bõr) ./configure ható, elég csak a jobb make egérgombbal kattintani az erõsítõ egységen, majd a megjelenõ su -c "make install" menübõl kiválasztani az Options (beállítás) menüpont Easy Move (egyszerû mozgatás) beállítást. A CTRL-E gyorsbillentyû- A program elindításához az xmms & parancsot kell begépel- kombinációt is használhatjátok ugyanerre. nünk, majd ENTER-t ütnünk. Ha ez az elsõ alkalom, amikor az Az XMMS széles körûen támogatja a bemenetet, a kimenetet XMMS-t futtatjuk, valami olyasmit fogunk látni, mint az erõsítõ és a megjelenést kezelõ bõvítményeket. Ehhez a Preferences az asztali hifiberendezésünkön (lásd az 1. képet). (környezeti beállítás) menüponton keresztül juthatunk el Ez még csak a program elsõ egysége. Nézzük az erõsítõ jobb (vagy a CTRL-P gyorsbillentyûvel). Ennek hatására egy új ablak oldalán található gombokat. Az egyiknek EQ (equalizer, azaz jelenik meg, amely számos futásidejû beállítást kínáló fület hangszín-szabályozó), a másiknak PL (playlist – a lejátszandó tartalmaz. Itt találjuk meg az audió be- és kimenet szabályozá- zeneszámok listája) a felirata. A gombokra kattintva beren- sának eszközeit is a különleges hatások és a megjelenés bõvít-

78 Linuxvilág Fogadó a Linuxhoz

ményei mellett. Ha az XMMS elsõ elindításakor gondok adód- a Kaiman-felület esetén is. Erre a menüpontra kattintva jobb nának a hanggal, elsõ utatok ide vezessen. Nyissátok meg az oldalon egy legördülõ lista jelenik meg a telepített bõrök elõnézeti audiooldalt, és ellenõrizzétek a kimenet bõvítményének beállí- képével. A Noatun bõreit a $HOME/.kde/share/apps/noatun/skins tásait. Nekem az XMMS fordításakor itt az OSS-meghajtót könyvtár tartalmazza. kellett beállítanom. Új bõrök hozzáadásához erre a könyvtárra kell váltani, kicso- Még rengeteg idõt tölthetnék a különbözõ beállítások ismer- magolni a  http://www.kde-look.org címrõl letöltött bõröket, tetésével, ehelyett azonban inkább rátok bízom a kipróbálásu- és már készen is vagyunk. Egy buktatója mégis van a dolognak: kat. A megjelenítés bõvítményeinél kezdõdik az igazi látvá- az XMMS-tõl eltérõen a bõröknek png formátumban kell len- nyosság. Találni fogtok olyan eszközöket, mint a Spectrum niük, és muszáj õket kicsomagolni a bõrök alkönyvtárába. Más- Analyzer (hangképelemzõ), illetve a Blur Scope. Korábban már honnan letöltött bõrök is használhatók, de a jpg formátumban említettem az OpenGL Spectrum Analyzer-t, egy másik remek lévõ képeket elõtte png formátumúra át kell alakítani. Szeren- bõvítményt, ami a zenéhez illõ háromdimenziós színes lát- csére ez pofonegyszerû mûvelet, amelyet a convert paranccsal ványt biztosítja – ezt akár teljes képernyõn is futtathatjátok, végezhetünk el (a parancs az ImageMagick csomag része): elég csak hátradõlni a fotelben, és élvezni az elõadást. Az XMMS általam egyik legkedveltebb vonása (létezik egy pár) convert image.jpg image.png a különbözõ bõrök (skin) használatának lehetõsége. Ezekkel az XMMS kinézetét állíthatjátok át az eredeti fekete fémes kiné- A fenti parancs csak a KDE 2.x esetén mûködik, azonban KDE

zetrõl valami hagyományosabbra, cseresznyefa színûre vagy 3.x-et használata esetén egy kicsit eltérõen mûködik a dolog. © Kiskapu Kft. Minden jog fenntartva csiszolt alumínium felületûre. A CTRL-S gyorsbillentyûvel hív- A $HOME/.kde/share/apps/noatun/skins könyvtárban további ható elõ a Skin Browser (bõrböngészõ), amely a jobb kattintásra két alkönyvtárat fogtok találni winamp és kaiman néven. Ha megjelenõ menübõl is kiválasztható. Ha épp most fejeztétek be még nem léteznek, hozzátok létre. Ezután a winamp könyvtár- a program telepítését, elõfordulhat, hogy a lista egyetlen ba csomagolhattok ki minden arra érdemesnek tartott XMMS- bejegyzést sem tartalmaz. Ebben az esetben be kell szereznetek bõrt. Példaként térjünk vissza a cseresznyefa-kinézethez: néhány bõrt. Ehhez térjetek vissza az XMMS honlapjára és válasszátok ki a Skins menüpontot. Biztosíthatlak benneteket, cd $HOME/.kde/share/apps/noatun/skins/winamp nem fogjátok egyhamar megunni a program kinézetét. Az itt tar -xzvf /path_to/cherrywood.tar.gz fellelhetõ számtalan bõr között megtaláljátok a fent említett cseresznyefa hatásút is. Mostantól, ha a Noatun beállítása menüpontra kattintotok, Hogy miképpen telepíthetitek ezeket a bõröket? A honlapon ezt az új bõrt látnotok kell a Winskin-listán a felhasználói mindegyiket tar.gz formátumban találjátok. Töltsétek le, beállítások menüpontja alatt. amelyik tetszik, és mentsétek a $HOME/.xmms/Skins könyv- Az XMMS-rõl szólva említettem a programhoz található remek tárba. Nem kell kicsomagolni a fájlt, elég csak az említett helyre bõrök széles választékát. Ez a KDE Media Playerre és a Noa- másolni. Ha kiderülne, hogy mégis tévedtem, esetleg a tunra is igaz. Kedvenceim közül való a Tyler és a Blur Scope.  http://www.xmms.org oldalon lévõ választékot is unni Próbáljatok ki néhányat közülük, de azért legyetek óvatosak! kezdenétek, örülni fogtok, ha elmondom, hogy az XMMS A Madness nevû tényleg az, aminek hívják, csak akkor próbál- a Winamp bõreit is támogatja. Tegyetek látogatást a játok ki, ha egy kis bolondságra vágytok – én mindenesetre  http://www.winamp.com oldalon, egy ideig biztosan nem elõre figyelmeztettelek benneteket. fogtok unatkozni. Csak kattintsatok a menü Skins feliratára Tekerjétek fel a hangerõ-szabályozót, mes amis! François (aki- – és jó szórakozást! A második képen a hagyományos cseresz- nek éppen ebben a számban sikerült egy kis szerephez jutnia, nyefa-felületû XMMS rendszeremet láthatjátok különbözõ lásd a 25. oldalt) teletölti a poharaitokat. Ma este a pince nyitva látványos bõvítmények ablakainak a társaságában. áll, mindenki kedvére fogyaszthatja, amit kíván. Szóljon a Még mindig a bõröknél maradva, egy kicsit elbúcsúzom az zene, táncoljanak a fények! Ünnepeljünk! XMMS-tõl, mivel a következõ program is remekül kezeli ezeket Viszontlátásra a következõ hónapban! A votre santé! Bon appétit! a bõvítményeket. Ha KDE-t használtok, van egy remek kis programotok a gépen, a Media Player. A program indítása a Linux Journal 2002. augusztus, 100. szám K-menübõl, a Mutimedia majd a KDE Media Player menü- pontot választva vagy a noatun & parancs begépelésével tör- ténhet. A gond az, hogy elsõ indításkor valószínûleg a 3. képen Marcel Gagné ([email protected]) lévõ meglehetõsen unalmas formában fog megjelenni. Mississaugaban (Ontario, Kanada) él, a Salmar Azért ne keseredjetek el, ez még csak az alapértelmezett Consulting Inc. rendszerépítéssel és hálózati Excellent nevû bõr. Kattintsatok a Beállítások, majd a Noatun tanácsadással foglalkozó cég elnöke. Pilóta beállítása… menüpontra. Az elõugró menü Bõvítõmodulok és sci-fi író egy személyben. A Világhálón pontját választva egy fülekkel ellátott menübe juttok. Az Csat- elérhetõ honlapján sok hasznos dolgot lakozási felületek felirat alatt a lejátszó négyféle típusa állítható találhatunk.  http://www.salmar.com/marcel/ be. Ezek közül a K-Jofol és a Kaiman rendelkezik a bõr cseré- lésének lehetõségével. Mindkét esetben további bõrök tölthetõk le a KDE-Look weboldalról ( http://www.kde-look.org). Ez a Kapcsolódó címek hely akkor is nagyon hasznos, ha a KDE-környezet megjelené- ImageMagick  http://www.imagemagick.org sével kapcsolatos egyéb anyagokat – asztali témákat, ikonkész- A KDE honlapja (Noatun)  http://www.kde.org leteket – szeretnétek letölteni. Marcel borlapja  http://www.marcelgagne.com/nfwine.html Kezdjétek az Excellent felület kikapcsolásával, és válasszátok  a K-Jofol felületet. Egy megjelenõ menüsor mutatja a változást, Az XMMS honlapja http://www.xmms.org a K-Jofol-bõrök beállítása is kiválasztható. Ugyanez történne

www.linuxvilag.hu 2002. szeptember 79 Falatka

Visszaélések az Interneten

Segíts a levélszemét megállításában, készíts teszteket a diákjaidnak, és természetesen figyeld a csomagokat.

éhány hónapja egy érdekes telefonbeszélgetés részese SmtpRC N voltam. Nagyjából így folyt le (helyszûke miatt rövi- Ellenõrizd, hátha a saját hálózatodról is küldözget dítve közlöm): valaki levélszemetet! Ezzel a kiegészítõvel minden – Szevasz, David, van egy kis gond az egyik ügyfelem levél- bizonnyal megoldhatod az e téren jelentkezõ gon- kiszolgálójával (Caldera eServer 2.3). Két évvel ezelõtt telepí- dokat. A futtatásához libpthread és glibc szükséges.  © Kiskapu Kft. Minden jog fenntartva tettem, azóta remekül ment, de nemrég volt egy kis áramszü- http://sourceforge.net/projects/smtprc net, ami miatt leállt. Most a gép elindul ugyan, de az ethernet- csatolók nem kelnek életre. GTK-Agenda – Hm, indítsd el õket kézzel, aztán kiderül, miért nem indulnak Kiváló kezdeményezés egy tetszetõs, GTK-alapú naptár készí- el bekapcsoláskor. Az fsck nem talál semmit? tésére. PostgreSQL-adatbázisban tárol neveket, telefonszámo- – Nem, semmi. Próbáltam futtatni az ifconfig-ot, de nem kat és elektronikus levélcímeket. Jelenleg sajnos csak spanyol állítja be a csatolókat. nyelven érhetõ el, ám a feliratok és egyéb szövegek módosítása – Futtasd az lsmod-ot, talán nincsenek felrakva az illesztõ- nem lehet túl bonyolult, így remélhetõleg hamarosan más programok. Az lsmod után próbálkozz újra az ifconfiggal. nyelveken is elérhetõ lesz. Az alkalmazásból leveleket is lehet – A modulok telepítve vannak, az ifconfig segfault-tal száll küldeni, ha rendelkezünk futó SMTP-démonnal. Ha további el. elvárásaink vannak az adatbázissal szemben, a bõvítése – úgy – Segfault? – Ekkor mintha félrevertek volna egy harangot tûnik – könnyen megoldható. A futtatáshoz szükséges: libgtk, a fejemben. – Az ifconfig RPM-et cseréld le, lehet, hogy a libgdk, libgmodule, libglib, libdl, libXext, libX11, libm, libpq, gép leállásakor megsérült – az ifconfig ugyanis nem az a fajta libssl, libcrypto, libcrypt, libresolv, libnsl és glibc. program, ami csak hipp-hopp elszállogat – gondoltam.  http://pbrufal.kleenux.org/proyectos.shtml – A csomagot a --force beállítással tudod lecserélni. – Úgy látom, nem lehet lecserélni az ifconfig-ot, még x86info a --force is hatástalan. Ha nem elégedsz meg a /proc/cpuinfo segítségével megsze- – Akkor futtasd le az lsattr ifconfig parancsot, rezhetõ adatokkal, erre van szükséged. Közvetlenül a pro- és mondd, mit látsz. cesszor regisztereibõl olvas, így annyi adatot szolgáltat, – Egy „i” betû van a neve mellett. amennyit a legtöbbünk soha nem fog megérteni és sohasem Eközben az Ûrszekerekbõl ismerõs vészjelzõ fények és hangok fog használni. A futtatásához glibc szükséges. zsongtak a fejemben. – Akkor figyelj ide, futtasd a locate  http://sourceforge.net/projects/x86info ifconfig parancsot. – A következõt látom: /sbin/ifconfig; ILIAS /dev/sdg/.azgub/backup/ifconfig, /usr/man/man8/ifconfig.8.gz. Ha az Interneten keresztül szeretnél feladatokat és vizsgala- – Remek, találtunk egy rejtett támadócsomagot (rootkit) a /dev pokat kiosztani a diákoknak, megtaláltad a megfelelõ eszközt. könyvtárban. Betörtek az ügyfeled gépére. Egyébként a A hallgatók adatai, a vizsgaeredmények és a további tudni- kiszolgáló felrakása óta telepítettél valamilyen biztonsági valók egy MySQL-adatbázisba kerülnek. A futtatáshoz szük- foltot? – Válasz nem érkezett, de feltételeztem, hogy nem. séges: Apache, PHP és MySQL, MySQL kiszolgáló, GD, zlib, Egy hónap telt el azóta, hogy ajánlatot küldtem neki, ami freetype, libjpeg, ImageMagick, zip és unzip. szerint megoldanám a biztonsági gondjait, és néhány egyéb  http://www.ilias.uni-koeln.de/ios/index-e.html szolgáltatás mellett telepítenék neki egy tûzfalat is. A beha- toló azóta is szabadon garázdálkodik a gépen, az ethernet- pktstat kártyák lehallgató üzemmódban vannak, a tisztelt ügyfél Rengeteg olyan alkalmazás érhetõ el, ami a hálózati csoma- pedig valószínûleg könnyen múlónak tartja a biztonsági gokat figyeli, ez azonban egy kicsit más. Ez ugyanis a csoma- gondokat; hát igen, megváltoztatta a jelszavát, elõvigyázatos gok sávszélesség-használatát figyeli. Apró gyöngyszem, a segít- volt – szerintem ez is több a semminél. Hogy ki tört be? ségével pillanatok alatt észreveszed, ha valamelyik felhasz- Miért? Hogy a derekasan aláaknázott gépet felhasználták-e nálód mondjuk Kazaaval foglalja le a sávszélesség 99,7 száza- más rendszerek feltörésére, DDOS-támadásokhoz zombiként, lékát. Futtatásához libm és glibc szükséges. ne adj’ isten mindkét célra? Néhány embert egyszerûen el  http://www.itee.uq.edu.au/~leonard/personal/software/#pktstat kellene tiltani az Internettõl. Vajon egyedül van? Aligha. Kiszolgálóimat naponta megpróbálják feltörni, a sávszéles- DNSMan ségemet vírusok, önmûködõ támadások és egyéb vackok Webes alkalmazás, talán a legegyszerûbb módja annak, hogy a emésztik fel. Én pedig fizetek érte. Szerintem egy jó kis tör- BIND zónafájljait karbantartsd, szerintem még a webmin BIND vényre lenne szükségünk… moduljánál is jobb. A követelmények között kevés dolog szere-

80 Linuxvilág Falatka

pel, viszont a DNS-es rendszeren webkiszolgálót kell üzemeltet- integrit ned. Fejlesztését továbbra is figyelemmel fogom kísérni, ugyanis Ez az érdekes kis program a Tripwire és az AIDE mellé sorolja a készítõje jó pár érdekes ötletet vonultatott fel a tennivalók listá- magát. Újabb eszköz a rendszer megfigyelésére, és egész jól jában. A futtatáshoz szükséges: webkiszolgáló (Apache), amely mûködik. Könnyen használható, és beállítható a legfontosabb képes CGI-parancsfájlok futtatására, továbbá Perl, BIND 8 vagy 9. állományok és könyvtárak változásainak követésére. Az integrit  http://www.xsta.cc/dnsman statikusan van lefordítva, így a futtatásához nem kell külsõ fájl.  http://integrit.sourceforge.net ntop A három évvel ezelõtti emlékek felidézésekor erõsen inga- GRPN doztam két nagyszerû program között. Az ntop és a sticker- Ebben a hónapban eléggé megkavarodtam, amikor a három book voltak versenyben, az utóbbi remek fejlesztés gyere- évvel ezelõtti felhozatalból válogattam. A Keystone-t eladták keknek – jómagam nagyon szeretem, de végül mégis az ntop a WhitePajamasnak, fejlesztését leállították, számos más nyert. Három év alatt sokat fejlõdött: egyszerû ncurses segéd- alkalmazás pedig kevés fejlõdésen ment keresztül, már ha programból HTTP- vagy HTTPS-protokoll felett használható, egyáltalán dolgoztak rajta. Sok más programmal ellentétben nagy tudású webes ügyféllé nõtte ki magát, amely gdgraph nem lett ugyan a kedvencem, mégis a GRPN-t választottam. segítségével grafikus megjelenítésre is alkalmas, ha úgy kíván- Valószínûleg nem sokan emlékeznek a fordított lengyel juk. Az ntop kevéssé hasonlít korábbi önmagára, használata is ábrázolásra, azonban elég sok számításnál használtuk, és ha

sokkal könnyebb lett. Ha top jellegû hálózati programra van jól emlékszem, szinte az összes tudományos számításnál © Kiskapu Kft. Minden jog fenntartva szükséged, ne keresgélj túl sokat. A futtatáshoz szükséges: elõkerült. Ha szükséged van a lengyel módszerre, vagy egy- libmysqlclient, libcrypt, libm, libssl, libpthread, libresolv, libnsl, szerûen csak megtetszett, akkor ez a számológép neked libdl, libgdbm, libz és glibc. készült. Kezeli az általános matematikai mûveleteket, valamint  http://www.ntop.org az exponenciális, logaritmikus és trigonometrikus függvé- nyeket. A futtatáshoz szükséges: libgtk, libgdk, libmodule, Nessus libglib, libdl, libXext, libX11, libm és glibc. Három évvel ezelõtt írtam még a Tedrõl, egy kiváló RTF szö-  http://lashwhip.com/grpn.html vegszerkesztõrõl, a Nessusról, egy biztonságellenõrzõ program- ról és az Nmapról, amely hálózatpásztázó. Nehéz volt, mégis TuxTyping a Nessust választottam közülük. Gyermekeknek készült gépelésoktató program. A betûk Na jó, csaltam is egy kicsit. A Nessus ugyanis az Nmapot is lehulló halakkal érkeznek, amelyeket Tuxnak, a pingvinnek használja. A Nessus talán a legteljesebb és legnagyobb tudású el kell kapnia. Ha valami bonyolultabbra vágyunk, rövidebb, biztonság-felülvizsgálati eszköz, amit csak meg lehet szerezni túlnyomórészt hárombetûs szavakat is kérhetünk, a feladat – ráadásul ingyenes is. Ha a fejlesztõi kiadást használod, akkor nem változik. A grafika és a remek játszhatóság kiváló az összes biztonsági hiányosságról áttekintést kapsz, és megte- szórakozást nyújt a gyerekeknek, és eközben még gépelni heted a szükséges intézkedéseket. Ha te felelsz a hálózat biz- is megtanulnak. A futtatáshoz szükséges: libSDL, tonságért, nélküle neki se állj semminek. A futtatáshoz szüksé- liSDL_image, libSDL_mixer, libm, libdl, libartsc, libpthread, gesek: libX11, libXext, libXi, glibc, libdl, libgdk, libglib, libg mp2, libX11, libjpeg, libpng, libz, libtiff, libvorbisfile, libvorbis, libgtk, libm, libnsl és libresolv. libogg, libsmpeg, glibc.  http://www.nessus.org  http://www.geekcomix.com/dm/tuxtype xlog di Rádióamatõrök számára kiváló naplózó eszköz a megismert A di segédprogram (disk information – lemezinformációk) emberek elérhetõségének nyilvántartására. Több naplót is rengeteg hasznos adatot árul el a merevlemezedrõl. Ezek vezethetsz, a sávokat pedig a Preferences (Tulajdonságok) jelentõs részét a df is elárulja, ám nem mindet. Az utóbbi menüben törölheted vagy adhatod hozzá a listához. A dátumot idõben például a ReiserFS és az ext3 fájlrendszer egyaránt már a program írja be, a kapcsolat létrehozásakor pedig elég bekerültek a rendszermagba (hogy az LVM-et már ne is említ- rákattintani a Time (Idõ) gombra, és az idõpont is megjelenik. sük), és sokszor nem árt tudni, milyen fájlrendszerrel van Ezután elég megadni a Hívó/válaszoló állomás-t, bepötyögni dolgunk. A df ezt nem árulja el, a di ellenben azonnal meg- a megjegyzéseket, kiválasztani a frekvenciát, és az Add (Hozzá- mutatja. A kimenet formátuma is letisztultabb, mint a df adás) gombra kattintani. A naplókban késõbb – többek között – esetében, különösen a hosszú devfs elnevezésekkel rendelkezõ keresni is lehet. A felület párját ritkító mértékben felhasználó- rendszerek esetében. A futtatásához glibc szükséges. barát, a naplókkal akár egy kívülálló is dolgozni tud. Nekem  http://www.gentoo.com/di is menni fog. A futtatáshoz szükségesek: libgtk, libgdk, libgmo- dule, libglib, libdl, libXext, libX11, libm és glibc. Ennyit erre a hónapra.  http://people.debian.org/~pa3aba/xlog.html Linux Journal 2002. augusztus, 100. szám. axelq Az Axel segédprogramban nem alakítható ki olyan letöltési sor, amellyel a letöltéseket késõbbre állíthatnánk. A kiegészítés David A. Bandel segítségével ezt is megtehetjük, és a megadott lista tagjait ([email protected]) jelenleg Panamában egy késõbbi idõpontban az Axel segítségével tölthetjük le. él, Linux- és Unix-tanácsadással foglalkozik. Ha megtetszik az Axel, érdemes letölteni. A futtatáshoz Társszerzõje a Que Special Edition: Using /bin/sh szükséges. Caldera OpenLinux címû könyvnek.  http://electron.its.tudelft.nl/~hemmin98/axelq.html

www.linuxvilag.hu 2002. szeptember 81