Winmodemek és a Linux HOGYAN <author>Alexandre J., alexandre12@mageos.com <date>v1.2, 2001 április 29. <abstract> Ez a dokumentum segít a Winmodem tulajdonos felhasználóknak működésre bírni az eszközt Linux alatt. </abstract> <toc> <sect>Mik azok a Winmodemek?<p> <sect1>Ezek a modemek... <p>Egy Winmodem - mint a más modemek is - arra használható, hogy telefonos szolgáltatásokat vehessünk vele igénybe. Ezek lehet: BBS, Internet, hagyományos telefon, fax stb. A telefonvonalra van kötve és a sebességével jellemezzük. Ha többet akarsz tudni róluk, ajánlom olvasd el a Modems-HOWTO (Modem-HOGYAN) leírást. <sect1>...nem igazi modemek !<p> De azért WINmodemek. Ezért kell a Windows ahhoz, hogy működjenek. Miért? Egyszerűen azért mert buták. Egy speciális programra - meghajtóra - van szükségük ahhoz, hogy feladatukat elláthassák. Aki meghajtóprogramot mond operációs rendszert is mond, a modemekhez mellékelt meghajtók pedig az esetek 99%-ban kizárólag MS-Windows platformra készülnek el. A Linux előretörésével azonban néhány gyártó - mint az LT vagy a Motorola - elhatározta, hogy a Linux alá is elkészítik modemeik meghajtóját. Viszont nem értették meg a Linux filozófiáját: a meghajtók természetesen működnek, de "zárt forráskódúak". Ezek ingyenesek, de nem a GPL licenc szerint használhatók. Ez azt jelenti, hogy a forráskódjuk nem hozzáférhető. <p>Így néhány "buherátor" elhatározta, hogy készítenek egy nyílt forráskódú meghajtót, de nem sokat tudtak a modemeikről, mert a gyártók nem akartak nyilatkozni azok jellemzőiről. Ezért a nyílt forráskódú meghajtók gyakran alfa vagy béta állapotban vannak. <p> <sect1>Honnan tudhatom meg, hogy Winmodemem van? <p>1. Próbáld megállapítani annak a soros portnak a nevét, amelyikhez a modemed csatlakozik (Windows vagy MSDOS alatt például: COM1, COM2...) <p>A modem neve Linux alatt /dev/ttySx, ahol az x a DOS alatti portszám -1. Például.: DOS alatt COM1, Linux alatt /dev/ttyS0 <p>Második példa: DOS alatt: COM3, Linux alatt /dev/ttyS2<p> és így tovább... <p> 2. Készíts egy szimbolikus hivatkozást (symlink) a /dev/ttySx eszközről a /dev/modem eszközre: <code> rm -f /dev/modem<p> ln -s /dev/ttySx /dev/modem </code> 3. Töltsd le és telepítsd a minicom csomagot, majd futtasd a "minicom -s" parancsot. <p>Válaszd ki a "Serial Port Setup" (soros port beállítása) menüpontot, nyomd le az "A" billentyűt a "Serial Device" (soros eszköz) beállításához. Töröld az egész sort, majd gépeld a "/dev/modem" sort, aztán az [Enter] billentyűt lenyomva fogadd el. Az [Esc] billentyű lenyomása után válaszd a "Save setup as dfl" menüpontot, aztán lépj ki az "Exit" menüpont kiválasztásával. Várj egy kicsit, majd gépeld be: "AT". Ha a modem OK-val válaszol, akkor NEM Winmodemed van, hanem hagyományos... <p>Ha az inicializáció túl sokáig tart, akkor bizony Winmodemed van - olvasd tovább ezt a dokumentumot ezzel is hasznossá téve. Jelentkezz be root felhasználóként.<p> 4. Lépj ki a Minicom programból a CTRL-A, majd X begépelésével. <p> <sect>ISA vagy PCI?<p> <sect1>PCI?<p> Rendben, Winmodemünk van, de ennek is két típusa van: ISA vagy PCI. Jó, Winmodemünk van...de ennek is két típusa van: ISA vagy PCI. Hogy bonyolítsuk a dolgokat, a két csatolótípus teljesen különböző. Ezért most fogjuk tesztelni, hogy megtudjuk nekünk milyen van. Először be kell állítanod a rendszermagot (kernel). A beállítás (ez make config; make menuconfig vagy make xconfig lehet - a lektor) során igennel ("yes") kell válaszolnod a következő kérdésekre: <p> <itemize> <item>"Loadable module support" (betölthető modulok támogatása): 'Enable loadable module support (betölthető modulok támogatásának engedélyezése) (CONFIG_MODULES)', és 'Set version information on all modules for symbols (CONFIG_MODVERSIONS)' (ehhez a modutils csomagot telepítettnek kell lennie; lásd a Kerneld-HOWTO leírásban) <item>"General setup" (általános beállítás): <p> 'PCI support' (PCI támogatás) (CONFIG_PCI)<p> Válaszd az 'Any' beállítást a 'PCI Access Mode' (PCI elérési mód) tulajdonsághoz (CONFIG_PCI_GOBIOS)<p> 'PCI quirks' (CONFIG_PCI_QUIRKS)<p> 'Backward compatible /proc/pci' (visszamenőleg kompatibilis /proc/pci) (CONFIG_PCI_OLD_PROC)<p> <item>Ha be tudod állítani a PCI Device Name Database (PCI eszközök neveinek adatbázisa) tulajdonságot (talán a 2.4+ rendszermagnál), igennel válaszolhatsz, ez könnyebbé teszi a /proc/pci fájl megértését (CONFIG_PCI_NAMES). <item>A fájlrendszereknél<p> '/proc filesystem support' (/proc fájlrendszer támogatás) (CONFIG_PROC_FS)<p> </itemize> Ha még sosem fordítottad újra a rendszermagot, a disztribúciód rendszermagjában ez benne lehet Ha új rendszermagot akarsz fordítani, olvasd el a Kernel-HOWTO leírást.<p> <p> Most feltételezzük, hogy az új rendszermag telepítve van. <p> <p> Most futtasd a 'cat /proc/pci' parancsot. Most futtasd a "cat /proc/pci" parancsot. Ha látod a modemed nevét a megjelenő sorok közt, akkor PCI Winmodemed van. Ugorj "A meghajtó telepítése" pontra.<p> <sect1>vagy ISA ?<p> Ha nem találtad meg, akkor feltehetőleg ISA modemed van. Hogyan bizonyosodhatsz meg erről?<p> Az ISA támogatást nem feltételezi a rendszermagod (FRISSÍTÉS: ha 2.4.x rendszermagod van, akkor az automatikusan megteszi Neked, ha így van ugord át ezt a részt és olvasd a következőt). Létezik egy isapnp nevű program, ami elvégzi ezt. Először is nézd meg, hogy a csomag telepítve van-e. Ha nincs, töltsd le az isapnptools csomagot. <p>Ennek telepítése után a pnpdump nevű speciális programot fogjuk futtatni, ez megvizsgálja a géped és megtalálja az ISA eszközöket. Ezek után megpróbálja kitalálni, milyen erőforrásokat használnak az eszközök, majd beírja ezeket az adatokat egy /etc/isapnp.conf nevű fájlba. A fájl szerkesztése után majd egy másik program, az isapnp futtatásakor a beállításokat kiolvasva automatikusan beállítja az eszközeidet. <p> <p> Durván hangzik? Akkor kövesd ezeket a lépéseket: <p> <p> 1. Futtasd a 'pnpdump > /etc/isapnp.conf' parancsot. <p>2. Szerkeszd át a kedvenc szövegszerkesztőddel<p> 3. Keresd meg azt a részt, ahol a modemed leírása van. <p>4. Töröld ki a # jelet bizonyos sorok elől. A következőkre lesz szükséged: <p> 1 line '(IO 0 ...)'<p> 1 line '(INT 0 ...)'<p> 1 line '(DMA 0 ...)'<p> 1 line '(DMA 1 ...)'<p> 1 line '(IO 1...)'<p> 5. Távolíts el minden '(CHECK)' bejegyzést, a nem megjegyzésként szereplő IO sorokban<p> 6. Futtasd a 'isapnp /etc/isapnp.conf' parancsot. Ha hibaüzeneteket kapsz, szerkeszd az isapnp.conf fájlt és változtasd a paramétereket a hibaüzenetek segítségével. Ha nincs több hiba, távolítsd el a fájlból a "#" jelet az '(ACT Y)' sor elől a modem-résznél, majd futtasd újra az 'isapnp /etc/isapnp.conf' parancsot. Most ki kell írja, hogy "[[A modemed neve]] Enabled OK"<p> 7. Add hozzá az 'isapnp /etc/isapnp.conf' bejegyzést a "/etc/rc.d/rc.local" fájlhoz, az 'echo "isapnp /etc/isapnp.conf ">> /etc/rc.d/rc.local' begépelésével. Ezt minden egyes indításkor felhasználhatod eszközeid automatikus beállításához. <p> <p> Ha ez segít, íme egy kivonat az én /etc/isapnp.conf fájlomból (kommenteztem a fájlt, az eredeti megjegyzések "##" jellel kezdődnek):<p> <code> # hasznos részletek ... ## (DEBUG) (READPORT 0x0203) (ISOLATE PRESERVE) (IDENTIFY *) (VERBOSITY 2) (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING # belső modemem azonosítása ## Card 1: (serial identifier e2 00 00 01 00 05 50 c3 1e) ## Vendor Id GVC5005, Serial Number 256, checksum 0xE2. ## Version 1.0, Vendor version 0.1 ## ANSI string -->LT Win Modem<-- ## ## Logical device id HSM0140 ## Device support I/O range check register # # Mi egy GVC5005/256 kártyát akarunk beállítani (CONFIGURE GVC5005/256 (LD 0 # I/O Base address 0x03f8, with a range of 8 (IO 0 (SIZE 8) (BASE 0x03f8) ) # IRQ 4 (INT 0 (IRQ 4 (MODE +E))) # DMA 5 (DMA 0 (CHANNEL 5)) # DMA 7 (DMA 1 (CHANNEL 7)) # I/O Base Address 2 0x0100, range 8 (IO 1 (SIZE 8) (BASE 0x0100) ) # a kártya neve (NAME "GVC5005/256[0]{LT Win Modem }") # aktiválás (ACT Y) # beállítás vége )) ######## Paraméterek egyéb ISA eszközeim számára ############## ## Minden kártya "Wait for Key" állapotba tér vissza (WAITFORKEY) </code> <sect1>ISA és a 2.4 rendszermagok<p> Amennyiben 2.4 rendszermagod van (add ki a "uname -r" parancsot ennek megállapítására), nincs szükséged erre a trükkös szövegfájl és egyéb csomagok telepítésre. A 2.4 sorozat óta egy a PCI-hoz hasonlatos módszer van a rendszermagban, ez idejétmúlttá teszi az "isapnptools" csomagot. A szolgáltatáshoz használatához az "y" vagy "m" billentyűt kell lenyomnod a 'Plug and Play support' (PNP támogatás) (CONFIG_PNP) és az 'ISA Plug and Play support' (ISA PNP támogatás) (CONFIG_ISAPNP) kérdésre a rendszermag konfigurálása során (mindezek a "Plug and Play configuration" részen belül vannak.) Ismét fordítsd újra és telepítsd a rendszermagot. Ha az "m" billentyűt nyomtad le az "ISA Plug-and-play support" kérdésre/menüpontra, hasznos a "modprobe isapnp" parancs kiadása. Ehhez egy olyan meghajtóra van szükséged (mint pl. az ltmodem 5.78 - lásd a következő részt), ami támogatja ezt az új eszközhozzáférési módszert. <sect>Egy modem meghajtójának telepítése<p> Ezt a részt nem kell végig elolvasnod; elég csak azt a részt elolvasnod, amely a modemedre vonatkozik. Itt jelenleg az LT modem telepítése van leírva - a Lucent vagy nyílt forráskódú meghajtó használatával. Ha már írtál vagy használsz más Winmodem meghajtót - akár zárt akár nyílt forráskódút - írj egy e-mailt nekem (alexandre12@mageos.com), és belerakom annak leírását ebbe a fejezetbe. <p> <p> <sect1>ltmodem 5.78<p> URL: http://www.tux.org/pub/dclug/marvin/ltmodem-5.78e.tar.gz<p> Szerző: Lucent<p> Licenc: nem GPL<p> Támogatás: ISA/PCI modem, Lucent chipkészlettel (Mars család)<p> Szolgáltatások: rendszermag-modul; soros port szimulálása. PPP, fax és hang kezelése<p> Jelenlegi változat: 5.78e<p> Dokumentáció: README-1ST<p> Igények: 2.2.x or 2.4.x; ISA PNP támogatás; "Loadable module support" (betölthető modulok támogatása); C fordító<p> Használata: olvasd el a README-1ST leírást. Nagyon világos.<p> Problémák: <p> <itemize> <item>Unresolved symbols: xxx_isapnp_xxxx: futtasd a "modprobe isapnp" parancsot. <item>Device or ressource busy: modemed nem kompatibilis a meghajtóval </itemize> Megjegyzések: a Lucent jelenleg - a rendszermag változatai és disztribúciós problémák elkerülésére - közreadja a forráskód egyes részeit. <sect1>Az LT WinModem (Lucent) 5.68 (ELAVULT)<p> URL: http://www.linmodems.org/linux568.zip<p> Szerző: Lucent Technologies<p> Licenc: nem GPL<p> Támogatás: ISA/PCI modemek, Lucent chipkészlettel (Mars család)<p> Szolgáltatások: rendszermag-modul; soros port szimulálása. PPP, fax és hang kezelése<p> Jelenlegi változat (amennyire tudom): 5.68<p> Dokumentáció: README<p> Igények: 2.2.12 vagy újabb RedHat rendszermag; "loadable module support" (betölthető modulok támogatása)<p> Használata: csomagold ki ('unzip linux568.zip'), és futtasd az ./ltinst parancsot. Ennyi!<P> Problémák: <p> <itemize><p> <item>'insmod: ltmodem: Unresolved symbol(s) *****': A rendszermagod nem használható az ltmodem programmal. Szerezd be a 2.2.12 rendszermagot az ftp.kernel.org helyről, fordítsd le és telepítsd <item>'Warning: kernel version mismatch...": Ez egyszerűen azt jelenti, hogy nem 2.2.12-20 rendszermagod van. Ez mindössze egy figyelmeztetés, ez nem akadályozza a modem használatát <item>'ltmodem: init_module: device or resource busy': <itemize> <item>Nem lt modem vagy kompatibilis eszköz van telepítve <item>Ha ISA modem, nincs beállítva az isapnp segítségével <item>Ha ISA modem, nincs beállítva az isapnp segítségével </itemize> </itemize> <sect1>Az LTMODEM program (OpenSource meghajtó)<p> URL: http://www.close.u-net.com<p> Szerzők: Richard Close and Pavel Machek<p> Licenc: GPL<P> Támogatás: ISA/PCI modemek, Lucent chipkészlettel (Mars család)<p> Szolgáltatás: felhasználói meghajtó; Voice calls; nem támogatja a PPP-t (V90)<p> Jelenlegi változat (amennyire én tudom): 0.99<p> Dokumentáció: README<p> Igények: GNU C fordító, automake<p> Használata: <p> <itemize><p> <item>PCI: make ; make install - ezután használd az 'ltmodem' programot a modemmel való kommunikáláshoz <item>ISA: (olvasd a README.ISA fájlt) mv Makefile Makefile.PCI ; mv Makefile.ISA Makefile ; szerkeszd a config.h fájl, állítsd be a helyes értékeket modemedhez (I/O cím, DMA, IRQ) ; make ; make install - ezután használd az 'ltmodem' programot a modemmel való kommunikáláshoz. <p> </itemize> Problémák: <p> <itemize> <item>"Sorry, I can't found any modem...": <p> <itemize> <item>Nem LT modemed van <item>ISA modemed van, amit nem állítottál be az isapnp programmal <item>ISA modemed van, de az ltmodem nem ISA modemhez lett lefordítva <item>PCI modemed van viszont a rendszermagodban nincs PCI támogatás beállítva <item>PCI modemed és megfelelő a rendszermagod, de az ltmodem nem PCI modemhez lett lefordítva </itemize> </itemize> <sect>Végül... <p><sect1>Licenc, szerzői jog<p> Copyright (C) 2000, 2001 Alexandre J. <p> Ez a program egy szabad szoftver; terjesztheted és/vagy módosíthatod<p> a Free Software Foundation által közzétett<p> GNU General Public License alapján;<p> vagy a Licenc 2. változata, illetve<p> (saját belátásod alapján) ennek későbbi változata szerint.<p> <p> Ez a program a használhatóságának reményében került terjesztésre, de MINDENFÉLE GARANCIA NÉLKÜL; beleértve az ELADHATÓSÁGOT vagy BÁRMELY CÉLRA VALÓ ALKALMASSÁGOT. Lásd a GNU General Public License leírásban a további részleteket.<p> <p> A GNU General Public License egy példányát meg kell kapnod ezzel a programmal együtt; amennyiben ezt nem kapnád meg írj a következő címre: Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA<p> <sect1>Kapcsolatfelvétel<p> Ha bármilyen ötleted van ezzel a leírással kapcsolatban, kérlek küldj egy e-mailt nekem (Alexandre J.) az alexandre12@mageos.com címre. <p> <sect1>Források<p> <itemize> <item>A Linmodems project honlapja: http://www.linmodems.org<p> <item>Az LTModem project honlapja: http://www.close.u-net.com<p> <item>A Lucent Technologies honlapja: http://www.lucent.com<p> <item>A Linux rendszermag: http://www.kernel.org<p> <item>Az isapnptools honlapja: http://www.roestock.demon.co.uk/isapnptools<p> <item>Az LDP honlapja (itt szerezhetsz be HOGYANokat): http://www.redhat.com/mirrors/LDP <p> </itemize> <sect1>Magyar fordítás <p> A magyar fordítást <url url="mailto:laca@janus.gimsz.sulinet.hu_NO_SPAM" name="Szijjártó László"> készítette (2002.07.17). Bármilyen fordítással kapcsolatos észrevételt a <url url="mailto:linuxhowto@sch.bme.hu_NO_SPAM" name="linuxhowto@sch.bme.hu"> címre küldjetek. A lektorálást <url url="mailto:dacas@freemail.hu_NO_SPAM" name="Daczi László"> végezte el (2002.10.21). A fordítás javítva 2002.10.25.-én. Eme dokumentum legfrissebb változata megtalálható a <url url="http://tldp.fsf.hu/index.html" name="Magyar Linux Dokumentációs Projekt"> honlapján. </article>