OS_LINUX FAQ <author> Surinko Albertas Agejevas <alga@uosis.mif.vu.lt> <date> 2000 12 14 <toc> <sect> Šitas FAQ'as <sect1> Q: Kas jį parašė? <p> Klausimus ir atsakymus, pasirodžiusius <tt/os_linux@konferencijos.lt/ mailing list'e surinko, sutvarkė, suformatavo, ir t.t. <url url="mailto:alga@uosis.mif.vu.lt" name="Albertas Agejevas">, o atsakymų autoriai buvo <url url="mailto:mgedmin@puni.osf.lt" name="Marius Gedminas">, <url url="mailto:midom@dammit.lt" name="Domas Mituzas">, <url url="mailto:rafi@voruta.ek.univ.gda.pl" name="Rafal Polonski">, bei listo moderatorius <url name="Mindaugas Eglinskas" url="mailto:mindaugas.eglinskas@maf.vu.lt">. <sect1> Q: Kaip formuluoti klausimus? <p> <url url="mailto:rafi@voruta.ek.univ.gda.pl" name="Rafal Polonski"> moko, kaip reikia formuluoti klausimus į konferenciją. Nėra šitas klausimas labai reikalingas FAQ'e, bet ir nepamaišys, o skaityti linksma. <tt/:-)/ <tscreen><verb> On Thu, Sep 09, 1999 at 02:50:57PM +0200, Donatas wrote: > Pirma karta susiduriau su linux (kazkada buna pirmas kartas) , su sound > korta susitvarkiau , bet va niekaip neisheina modemo instaliuot, faq ir > How-to, nieko nepadejo gal jus padesi ? > pas mane USRobotics sportseter 14400 fax int. , PnP. </verb></tscreen> <quote> <bf/Klausimas:/ Pirma karta pamaciau nuoga mergina (kazkada buna pirmas kartas), su seksu susitvakiau, bet va nezinau ka jai valgyti padaryti, kulinarine knyga nieko nepadejo, gal padesit? </quote> Jei kas nors turi problemas prašyčiau (manau visi prašytų) kad aprašinėtumėte TIKSLIAI kaip problema atrodo. Pvz: <quote> <bf/Klausimas:/ Pirma karta pamaciau nuoga mergina(kazkada buna pirmas kartas), su seksu susitvakiau, bet va nezinau ka jai valgyti padaryti, kulinarine knyga nieko nepadejo, gal padesit? Mergina 90x60x90, ne valgo mesos ir nemegsta grybu. Ji vegetare. Ir dar negeria pieno. Labai megsta pomidorus. </quote> <bf/Atsakymas:/ Manau, rafal, yra du būdai. Vienas lengvas kitas sunkesnis: 1) paskambink į pizzerija ir paprašyk, kad atvežtų vegetarine pizza, su dvigubais pomidorais, bet būtinai pasakyk, kad ši pizza būtų be grybų. Kitoje parduotuvėje nupirk raudoną vyną Riva (1995 metų) ir porą žvakių, kad padarytum gražią atmosferą. 2) Knygoje paieškok puslapių susijusių su "vegetarų patiekalais" Būk atsargus, kad nepadarytum ko nors su grybais. Iš karto matosi, kad reikia turėti kulinarinį `knowledge`. Gali paprašyti pirmam kartui mamos arba sesers, kad parodytų kaip tai daryti. jei jau žinosi ir sugebėsi, galima tada pačiam. Vyną palik tą patį, ir nepamiršk apie žvakes. Sėkmės. Matai, į tokį klausymą labai lengva atsakyti. Daug sunkiau, jei nežinai nei faktų, nei kokios TIKSLIOS informacijos. Šioje konferencijoje linuxistai, o ne burtininkai, kurie moka skaityti mintis. <sect> Paštas <p> Į šios dalies klausimus gurus: gerb. Moderatorius Mindaugas Eglinskas, profesionalas Domas Mituzas, bei visų mylimas Marius Gedminas. <sect1> Q: Kokia yra pašto siuntinėjimo schema Linux'e su dialup ryšiu? <P> Yra du variantai. <bf/Paprastas variantas (paprastai Win kompuose):/ yra programa (mail client'as), kuri ima pastą iš nutolusio POP3/IMAP serverio ir siunčia paštą į provaiderio SMTP serverį. Šitą variantą galima naudoti, susikonfigūravus Netscape mailerį, arba pine. Jis nepatogus tuo, kad pasiimant arba išsiunčiant paštą reikia būti on-line, taigi tenka pastoviai prisijunginėti ir atsijunginėti nuo interneto. <bf/Pilnas variantas (paprastai Unixe):/ visos programos dirba su paštu lokaliai. Pasto dėžutė yra <tt>/var/spool/mail/<vardas> </tt> faile. Sendmailas (SMTP serveris) gautą paštą arba įrašo į reikiamą failą (lokaliems useriams) arba siunčia į reikiamą SMTP serverį (pvz. jei siunti į <tt/user@some.host.com/, ieško DNS'e serverio, aptarnaujančio domeną some.host.com, jungiasi prie to serverio SMTP porto ir sumaitina laišką; jei užduotas "smart relay" nebando pats aiškintis, o tiesiog forwardina visą paštą į nurodytą provaiderio SMTP serverį). Kitos programos paprastai naudoja sendmail'ą. Pvz. fetchmailas atsisiunčia paštą iš nutolusio POP3/IMAP serverio ir sukiša į lokaliame kompe besisukantį SMTP serverį, kuris jau nukopijuoja į reikiamą pašto dežutę; kitos programos irgi paprastai panašiai elgiasi. <sect1> Q: Ar galima naudoti kelias pašto programas? <P> Taip, galima. įeinantis paštas guli <tt>/var/spool/mail/<username></tt> faile, iš kur jį skaito pašto programos. Laiškus išsaugo jos tuo pačiu Unix mailbox formatu, tiktai galbūt skirtingose direktorijose. Pine tam naudoja <tt>~/mail</tt> direktoriją, mutt naudoja <tt>~/Mail</tt>, Netscape savo paštą deda į <tt>~/nsmail</tt>. Mutt ir pine galima nurodyti, kad išsaugomo pašto dėžutes laikytų kokioje kitoje direktorijoje, arba galima tiesiog sukurti simbolines nuorodas: <tscreen><verb> ln -s ~/Mail ~/mail </verb></tscreen> <sect1> Q: Kaip susikonfigūruoti viską, kad galėčiau naudoti Taidės (ex-ALF'o) UUCP elektroninį paštą? <p> Apie tai Albertas Agejevas yra parašęs ištisą HOWTO, kurį galima susirasti <url url="http://ieva.mif.vu.lt/~alga/uucp/UUCP.html"> <sect1> Q: Kaip susikonfigūruoti fetchmail POP3 pašto pasiėmimui? <p> Fetchmailas tikisi, kad pas tave bus paleistas sendmail daemonas. <tt>~/.fetchmailrc</tt> failas: <tscreen><verb> defaults: protocol pop3, timeout 30 poll <serveris>: user <username> with password <password> is <local-username> here poll <antras-serveris>: ... </verb></tscreen> Šiaip failas yra gana lankstus (e.g. visi skyrybos ženklai ignoruojami, galima pridėti visokių nieko nereiškiančių žodelių "with" ir pan.). Jei nori, kad paštą paliktų serveryje, po "here" pridėk "keep". Jei nori, kad paimtų ir jau skaitytus laiškus, pridėk "fetchall". O šiaip <tt/man fetchmail/. Kai nori pasiimti paštą, susidialink ir paleisk `fetchmail'. <sect1> Q: Kaip susikonfigūruoti sendmail pašto išsiuntimui? <p> Geriausia užduok <tt>/etc/sendmail.cf</tt> faile eilute <tt/DS>tavo-providerio-smtp-serveris</ bei išvardink savo kompo vardus <tscreen><verb> Cw localhost Cw e00xxx.UUCP </verb></tscreen> hm... ko gero reiktų, kad sendmail.cf būtų su UUCP palaikymu (kad teisingai veiktų ir įeinantis paštas). Tokiu būdu paštas bus siunčiamas per SMTP, kai paleisi <tt/sendmail -q/ būdamas online. Galima sukonfiguruoti, kad dėtų laiškus į UUCP spoolą, bet ten papildomų rūpesčių yra... Jeigu nori išsiuntinėti paštą per UUCP, <sect1> O jeigu aš noriu naudoti qmail? <p> Didžiausias <tt/qmail/ fanas Domas Mituzas siūlo porą variantų (ji pataiso Aurimas Mikalauskas. Uuuu, ta naujoji karta!): 1.Paštas išsiunčiamas automatiniais metodais. T.y. dedasi į pašto eilę ir bandoma kas kažkiek laiko pristatyti. Galima naudoti kokį nors kitą SMTP kompą kaip relay, kad nekankintum galvos dėl nepristatomų laiskų. Aurimas: Aišku, gerai, kad galima, bet pats pasakymas, kad galima, nemanau, kad kam padės, taigi: reikia į <tt>/var/qmail/control/smtproutes</tt> failą surašyti viską tokiu formatu: <tt> mx'as_kuri_reikia_relayinti:smtp_servas_per_kuri_reikia_relayinti </tt> Pavyzdys iš mano <tt/smtproutes/ (<tt/nevezis.ppf.ktu.lt/ - mano ISP): <tscreen><verb> patm.mintis.lt:nevezis.ppf.ktu.lt nocrew.org:nevezis.ppf.ktu.lt centras.lt:nevezis.ppf.ktu.lt konferencija.lt:nevezis.ppf.ktu.lt konferencijos.lt:nevezis.ppf.ktu.lt takas.lt:nevezis.ppf.ktu.lt </verb></tscreen> <tt/qmail/'e tiesiog apsimoka į <tt>/etc/ppp/ip-up</tt> scriptą įrašyti <tt/killall -ALRM qmail-send/. <tt/sendmail/as tam tikslui turi komanda <tt/sendmail -q/, kuri pradeda eilės tuštinimą. 2.Paštas išsiunčiamas naudojant trečių šalių produktus. qmail'o saite mėtosi neblogas utilitas serialmail. Kurie būtent tam ir reikalingi - pašto pristatymui prisijungus prie interneto. Su jais gana malonu dirbti, turint fiksuota uplink hostą ir darant pašto pristatymus ant dial-on-demand kompiuterių. Tada vėlgi qmaile naudojama kaip uucp metodika - sukuriamas virtualhostas visam pasauliui, kurio paštą apdoroja tam tikra programa. Na, ir jei kyla kokių nors klausimų dėl pašto su <tt/qmail/ organizavimą, <tt/qmail/ kompiliavimą, instaliavimą ir konfigūravimą, tai paskaitykit Aurimo išsamų <url name="Mail-HOWTO-LT" url="http://inner.dammit.lt/doc/Mail-HOWTO-LT">. <sect> XFree86 <sect1> Q: Sulūžo X'ai, kaip man persijungt į tekstinį režimą, kad galėčiau juos pataisyt? <p> Aha. Kaip suprantu, pas tamstą Linux'as iškart paleidžia X'us ir login'as yra grafinis. Ctrl-Alt-F1 išmes iš grafinio režimo į tekstinį. X'ai pasileidžia (kaip taisyklė) ant 7-os konsolės, taigi sugrižti į X'us galima bus su Ctrl-Alt-F7. Galima pasileisti sistemą kitame runlevelyje (SuSE grafika yra 3, tekstinis yra 2, RedHat grafika yra 5, tekstinis 3), taip, kad X'ai net nebūtų startuojami. Tam reikia įrašyti runlevelį į LILO: promptą po pasirenkamo os'o varianto pavadinimo: <tscreen><verb> LILO: linux 2 </verb></tscreen> Kitas, tikresnis būdas -- pasikrauti single user mode'e ir viską pataisyti. <tscreen><verb> LILO: linux s </verb></tscreen> arba <tscreen><verb> LILO: linux single </verb></tscreen> Default runlevelis yra nustatomas faile <tt>/etc/inittab</tt> eilutėje su <tt/:initdefault:/ <sect1> Kokia iš viso yra tų X Window architektūra ir hierarchija? <p> X Window System, sutrumpintai vadinama X Window arba tiesiog X, yra paremta kliento/serverio architektūra. X serveris -- grafikos, klaviatūros bei pelės draiverių visuma, leidžianti kelioms programoms (X klientams) rodyti bet ką atskiruose, gal būt persidengiančiuose languose. Pavyzdžiai: XFree86 serveriai (<tt/XF86_SVGA/, <tt/XF86_S3/ ir t.t.), Metro X, Accelerated X. Visi X klientai yra lygūs, bet vienas iš jų lygesnis uz kitus. Jis vadinasi window manageriu (gal į lietuvių kalbą nebandysiu išversti... "langų vadybininkas?" ;) Window managerio paskirtis -- duoti kiekvienam langui rėmelį su pavadinimų, porą arba kelias dešimtis mygtukų (uždarymo, padidinimo ir t.t.), jis pirmas apdoroja klaviatūros bei pelės paspaudimus ir leidžia langus nešioti, didinti, iškelti į priekį, aktyvuoti ir taip toliau. Pavyzdžiai: Enlightenment, kwm (iš KDE), fvwm, Window Maker ir devynios galybės kitų. Toliau lieka tik vartotojo programos. Jos, žinoma, galėtų pačios keistis su X serveriu žemo lygio komandomis, bet daug paprasčiau naudoti pilnavertes bibliotekas. Šios biliotekos suteikia įvairių standartinių įrankių (vadinamų `widget') -- mygtukų, scroll barų ir t.t. Pavydžiai: Xaw (Athena Widget Set), Xaw3d, Motif, Gtk+, Qt. Galų gale beliko desktopai (na, aš ne kalbininkas, atleiskit kaip nors...). Desktopo paskirtis -- suteikti įvairioms programoms vienodą išvaizdą ir naudojimą (nevykęs `look and feel' vertimas). Paprastai desktopą sudaro biblioteka, window manageris ir krūvelė bendros paskirties programų (paleidimo panelė, failų tvarkyklė ir t.t.). Pavyzdžiai: CDE, KDE, Gnome. <sect1> XFree86-mini-KAIPTAI (lietuviškas mini-HOWTO) <p> Tai sukūrė ir į konfą atsiuntė (spekit kas?) Marius Gedminas. <sect2> Spalvos <p> Pasirinkti norimą spalvų skaičių galima leidžiant X serverį: <tscreen><verb> $ startx -- -bpp 24 </verb></tscreen> (vietoje 24 įrašykite norimą bitų skaičių pikseliui, pvz., 8, 16, 24, 32). Žinoma, jūsų <tt/XF86Config/ faile esančioje Section "Screen" turi būti po Subsection "Display" kiekvienam spalvų gyliui. Nutylėtą reikšmę nurodykite toje pačioje sekcijoje "Screen": <tscreen><verb> DefaultColorDepth 24 </verb></tscreen> <sect2>Rezoliucija <p> Išvardinkite norimas rezoliucijas "Screen" sekcijos "Display" subsekcijose, pvz.: <tscreen><verb> Modes "1024x768" "800x600" </verb></tscreen> Startavus X serverį bus pasirinkta pirmoji rezoliucija; kitas galėsite perjunginėti klavišų kombinacijomis Ctrl+Alt+[+], Ctrl+Alt+[-]. Žinoma, jūsų <tt/XF86Config/ faile turi būti įrašyta bent po vieną Modeline eilutę kiekvienai rezoliucijai. <sect2> Atnaujinimo dažnis <p> XFree86 automatiškai pasirenka didžiausią įmanomą ekrano atnaujinimo dažnį (refresh rate). Pasirinkimo algoritmas yra toks: norimai rezoliucijai surandamos visos Modeline eilutės. Kiekvienai iš jų patikrinami trys parametrai: <itemize> <item> taškų dažnis (dot clock, matuojamas megahercais) -- ar video korta palaiko šį dažnį? <item> horizontalios sinchronizacijos dažnis (hsync, kHz) -- ar monitorius jį palaiko? <item> vertikalios sinchronizacijos arba tiesiog ekrano atnaujinimo dažnis (refresh rate, Hz) -- ar monitorius jį palaiko? </itemize> Siuos tris dydzius sieja ekrano rezoliucija. Supaprastinus: <tscreen><verb> hsync = dot_clock / horiz_total vsync = hsync / vert_total </verb></tscreen> Kur horiz_total bei vert_total -- ekrano rezoliucija (tiksliau -- gal apie 20% daugiau, nes dar reiktų pridėti rėmeli abiejuose kraštuose bei sinchronizacijos taktus). Kas nori daugiau apie tai sužinoti, tegu paskaito XFree86-Video-Timings-HOWTO Video kortos palaikomus taškų dažnius XFree86 serveris nustato pats (arba galima juos nurodyti Clock eilte, jei tikrai žinote, ką darote). Leidžiamus horizontalios ir vertikalios sinchronizacijos dažnius turite nurodyti patys <tt/XF86Config/ faile: <tscreen><verb> HorizSync 30-70 # kHz -- Mano ViewSonic E655-2 manualas VertRefresh 50-120 # Hz šitaip sako </verb></tscreen> Standartinis perspėjimas: jei nurodysite reikšmes virš savo monitoriaus sugebėjimų, galite jį sudeginti. Kiek žinau, šis perspėjimas galioja tik seniems akmens amžiaus fixed frequency monitoriams, bet per daug manim netikėkit, nesu specialistas. Jei kas ne taip -- aš nekaltas. Jei jums neužteks standartinio dažnio (arba jis nepatiks), tuomet galite susirasti visas Modeline eilutes konkrečiai rezoliucijai ir pakaitalioti jose dot_clock parametrą <tscreen><verb> Modeline "1024x768" 75.00 1024 1048 1184 1328 768 771 777 806 -hsync -vsync # dot_clock --^ horiz_total --^ vert_total --^ </verb></tscreen> Žinoma, senų modelainų geriau neliesti, jas tiesiog užkomentuoti ir (nusikopijavus) palikti tik vieną bandymams. Leidžiamas <tt/dot_clock/ reikšmes pamatysite įvykdę komandas <tscreen><verb> $ X -probeonly > /tmp/X.out $ less /tmp/X.out </verb></tscreen> Ieškokite dviejų eilučių "Clocks". <sect2> xvidtune <p> Jei vaizdas ekrane atrodo pasislinkęs, per siauras ar per platus, pasileiskite <tt/xvidtune/, susireguliuokite parametrus, o rezultatą (Modeline eilutę, kurią xvidtune išspausdins terminale paspaudus kažkurį mygtuką) įrašykite į savo <tt/XF86Config/ failą. <sect2> XF86Config failo pavyzdys <p> <tscreen><verb> ... # čia praleistos sekcijos "Files", "ServerFlags", "Keyboard", # "Pointer" Section "Monitor" # Tokių sekcijų gali būti kelios, bet pakanka ir # vienos Identifier "ViewSonic E655" # kaip norit -- taip vadinkit ;) # VendorName, ModelName -- nesvarbu HorizSync 30-65 # įrašykit teisingas reikšmes VertRefresh 50-100 # tik neklauskit manęs, kur jas gauti # ... Modeline eilutės ... EndSection Section "Device" Identifier "My Video Card" # kaip norit -- taip vadinkit II # ... EndSection Section "Screen" # Po vieną kiekvienai X serverio atmainai, t.y. # draiveriui Driver "svga" # palaiko daugumą video kortų. Device "My Video Card" # čia nurodote atitinkamą Device sekciją Monitor "ViewSonic E655" # atitinkama monitoriaus sekcija DefaultColorDepth 24 # nutylėtas spalvų gylis Subsection "Display" # po vieną kiekvienam gyliui Depth 8 # 256 spalvos Modes "1024x768" "800x600" EndSection Subsection "Display" # po vieną kiekvienam gyliui Depth 24 # TrueColor Modes "800x600" # tarkime, nereikia man 1024x768, 24bpp Virtual 1024x768 # bet aš noriu didelio virtualaus ekrano EndSection EndSection </verb></tscreen> <sect2> XF86Setup, xf86config, Xconfigurator ir t.t. <p> Tai yra įvairios X konfigūracijos priemonės, bet visos jos daro praktiškai tą patį: keičia <tt/XF86Config/ failą. (Kitas dalykas, kurį jos daro -- pasirenka norimą X serverio atmainą, e.g. <tt/XF86_SVGA/). Apsimoka iš pradžių su kuria nors iš šių programėlių susigeneruoti <tt/XF86Config/, o po to rankomis jį keisti, jei kas ne taip (pvz., su Xconfiguratorium nepasirinksi daugiau nei 256 spalvų režimo). <sect2> Daugiau informacijos: <p> <tscreen><verb> $ man X $ man XF86Config $ less /usr/doc/HOWTO/XFree86-HOWTO $ less /usr/doc/HOWTO/XFree86-Video-Timings-HOWTO </verb></tscreen> ir t.t. <sect> Reikia lituanizacijos Linux'ui <p> Visų pirma, paprastai distribucijose būna kažkokios lietuvybės užuomazgos, paremtos žemiau paminėtu Ričardo Čepo paketu. Yra Alberto Agejevo lituanizacijos HOWTO: <url url="http://ieva.maf.vu.lt/~alga/lt/"> Yra Ričardo Čepo lituanizacijos paketas x-lt, anksčiau vadintas linux-lt: <url url="http://www.angelfire.com/me/rch/ll.html"> Yra Mariaus Gedmino padaryti RPM'ai Red Hat distribucijoms: <url url="http://www-public.osf.lt/~mgedmin/"> Kažkur yra XSekaFont šriftų rinkinys X Window. Pažiūrėk aukščiau minėtame HOWTO. <sect1> Kaip atsikratyti tų klaustukų lietuviškuose puslapiuose? <p> Tie ????? ??? ?? ?????? lietuviškuose puslapiuose yra Linuxinio Netscape Navigatoriaus bugas. Jį apieti gaima pataisant Netscape vykdomąjį failą. Tam reikalui yra keletas skriptukų: <url url="ftp://diedas.soften.ktu.lt/pub/linux-lt/Netscape-iso8859-13" name="Jono Majausko">, po kurio Netscape naudoja ISO 8859-13 kodavimo šriftus, bei Ričardo Čepo (įtrauktas į <url url="http://www.angelfire.com/me/rch/ll.html" name="x-lt"> paketą), po kurio Netscape visiems lietuviškų raidžių kodavimams naudoja Latin-4 šriftus. Yra ir Artūro-M sprendimas, viską pervedantis į windows-1257 naudojimą. Tai mano akimis pagrindinis jo trūkumas, bet ir jo pranašumas: Netscape'o maileris ir newsreaderis taip pat pradeda teisingai veikti windows-1257 kodavime. <url url="http://hela.w3.lt/lietuvybe/linux/netscape/LietNetscape.tar">. Kitas sprendimas yra pereiti prie ankstyvos Netscape versijos -- 4.51 arba 4.05. Atsargiai, tos versijos turėjo kažkokias saugumo problemas -- JavaScript'u pikti saitai galėjo gauti jūsų history. Galima dar pabandyti Mozilla, Opera, kfm, Konquerror, arba dar ką. <sect> Modemas <sect1> Kaip susikonfigūruoti modemą? <p> Kiek aš žinau, USRobotics PnP modemai gali būti PnP režime, ir ne PnP, tai yra su jumperiais nustatytu portu ir IRQ. Jei gali paaukoti tą modemo plugenplėjiškumą, taip ir daryk. <sect2> Šalin nesąmoningą Plug'n'Pray!!! <p> Pastatyk modemą ant COM4, IRQ3 (pavyzdys, gali daryti ir kitaip). Tada krovimosi metu kernelis parašys: <tscreen><verb> Serial driver version 4.27 with SHARE_IRQ enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A ttyS03 at 0x02e8 (irq = 3) is a 16550A </verb></tscreen> Matai? Pirmi du portai yra motinelės built-in, o trečias -- modemas. Dabar daryk symbolic linką į <tt>/dev/ttyS3</tt> vardu <tt>/dev/modem</tt>: <tscreen><verb> ln -s /dev/ttyS3 /dev/modem </verb></tscreen> Dabar gali bandyti leistis <tt/minicom/ ir pasakyti modemui <tt/"AT <Enter>"/! Jei jis linksmai atsakys OK, vadinasi jau veikia. Sveikinu. Norėdamas išvengti konfliktų, gali BIOS Setup'e išjungti COM2 portą -- jie su COM4 dalinasi IRQ3 linija. <sect2>Tegyvuoja šlykštusis Prug'n'Play! <P> Valio. Nori -- gausi. Tau reikės su <tt/isapnp/ nustatyti modemo parametrus ir su <tt/setserial/ pranešti serial porto draiveriui apie porto parametrus. <tscreen><verb> pnpdump > /etc/isapnp.dump </verb></tscreen> Paredaguoti <tt>/etc/isapnp.dump</tt>. Turėk omeny, kad Portas 0x3f8 yra <tt>/dev/ttyS0</tt> yra COM1, Portas 0x2f8 yra <tt>/dev/ttyS1</tt> yra COM2, Portas 0x3e8 yra <tt>/dev/ttyS2</tt> yra COM3, Portas 0x2e8 yra <tt>/dev/ttyS3</tt> yra COM4. Pasirink tau labiausiai patikusią konfiguraciją, atkomentuok. Dabar padaryk <tscreen><verb> isapnp /etc/isapnp.conf </verb></tscreen> ir daryk <tscreen><verb> setserial ttyS4 irq 5 </verb></tscreen> ar koks bebūtų tavo pasirinktas IRQ. Aisku, yra <sect2> 2b Variantas. <p> Modemas P&P, bet nesinori žaisti su <tt/isapnp/ ir <tt/setserial/ moduliu. Krauniesi windus, jie tau sutvarko PnP modemą, tada <em/be reseto/ su <tt/LOADLIN/ pasikrauni Linux'ą, ir jo serial draiveris be problemų suranda jau sukonfiguruotą modemą. Dabar, kai modemas atsiliepia į AT komandas ant <tt>/dev/modem</tt>, galima bandyti konfigūruotis PPP. <sect1> Nusipirkau Winmodemą. Kaip jį užkurt po Linux'u? <p> Pastaruoju metu labai paplito softmodemai, tai yra modemai, kurie neturi savo galingo signalų procesoriaus, o visą kodavimą/dekodavimą atlieka draiveriai, tai yra centrinis procesorius. Kaip taisyklė, Winmodemai po Linux'u nepalaikomi. Tai susiję su modemų gamintojų nenoru atskleisti savo paslaptis -- visgi visa magija yra draiveriuose. Tačiau yra keletas išimčių, ir jų ateityje daugės. Prieš perkant modemą reikia paskaityti <url name="Modem-HOWTO" url="http://mancius.dammit.lt/LDP/HOWTO/Modem-HOWTO.html"> ir pasižiūreti šiuos puslapius apie modemus, dirbančius ir nedirbančius Linux'e: <url url="http://www.o2.net/~gromitkc/winmodem.html">, <url url="http://www.linmodems.org">. <sect1> Kaip prisiskambinti prie Tako? <p> <enum> <item> Susikonfiguruok PPP. Paprasčiausia tą daryti atsisiuntus kokį nors specialų paketą (kppp, ezppp, vwdial, ar kaip jie ten teikiasi vadintis) arba Red Hat'o control panelį (jei atspesi, kur ten ieškoti ;). <item> Išbandyk: surink ifup ppp0 (jei RedHat) arba ppp-on o gal ppp-go kitose dist. Turi susidialinti. Gali žiūrėti progresą su šita komanda: # less +F /var/log/messages (čia # yra shello promptas, rodantis, kad turi būti root'as) <item> Kai susijungs, pažiūrėk, ar veikia: <tscreen><verb> $ ping 212.59.0.1 [palauki kazkiek] ^C </verb></tscreen> Tada pažiūrėk, ar veikia DNS'as <tscreen><verb> $ ping mail.takas.lt [...] ^C </verb></tscreen> Jei neveikia, daryk <tscreen><verb> # echo nameserver 212.59.0.1 >> /etc/resolv.conf </verb></tscreen> ir bandyk vėl. Turi veikti. </enum> <sect1> O jeigu aš naudojuosi kito providerio paslaugomis? <p> Andrius Armonas parašė programėlę, kuri leidžia lengvai susikonfigūruoti pppd ir prisijungti prie Tako, Omnitelio arba VIKT'o. <url url="http://baubas.hypermart.net/Linux/dialup.htm"> <sect> Bootinimasis <sect1> Kaip pasikrauti be LILO? <p> <bf/Q:/ Instaliacijos metu neįjungiau LILO ir dabar nežinau, kaip pasikrauti... arba Windowsai perrašė MBR'ą ir nebekrauna man Linux'o. Ką daryti? Reikia pasikrauti Linux'ą ir iš naujo suinstaliuoti LILO. Klausimas tik -- kaip pasikrauti Linux'ą? Atsakymai keli: <enum> <item> Boot/Rescue flopiai/CD-ROM'ai <item> LoadLin'as </enum> Detaliau apie 2) variantą, kuris yra paprastesnis (IMHO): reikia DOS'e turėti du failus: <itemize> <item> <url name="loadlin.exe" url="ftp://ftp.suse.com/pub/loadlin/update-1.6a/loadlin.exe.gz"> <item> <tt/vmlinuz/ (t.y. kernelį) </itemize> Failą <tt/vmlinuz/ galima nesunkiai ištraukti iš linuxinio disko pasinaudojus vieną iš šių labai naudingų programų: <itemize> <item> <url name="explore2fs" url="http://uranus.it.swin.edu.au/~jn/explore2fs/explore2fs-1.00-pre1.zip"> (win95/nt grafinė programėlė, panaši į explorerį) <item> <url name="ext2tool" url="http://students.ceid.upatras.gr/~gef/fs/ext2tool.zip"> (dos'inės komandų eilutės programėlės) <item> <url name="lread" url="http://www.it.fht-esslingen.de/~zimmerma/lread.htm"> (dos'inės komandų eilutės programėlės) <item> <url name="fsdext2" url=" http://www.globalxs.nl/home/p/pvs"> (win95 labai gera programėlė, užmountina lokalų linuxinį diską kaip tinklinį) </itemize> Paprastai tai būna failas <tt>/vmlinuz</tt> arba <tt>/boot/vmlinuz</tt>, galimi ir kiti variantai (pvz. <tt/zImage/ arba <tt/vmlinuz-2.2.14/, ir t.t.). Kai viskas jau yra padaryta, telieka pasikrauti DOS'ą (MS-DOS langas iš po Windozes netiks, reikes "restart in MS-DOS mode") ir surinkti <tscreen><verb> loadlin vmlinuz root=/dev/hdXXX ro </verb></tscreen> (vietoje <tt/hdXXX/ reikia įrašyti atitinkamą Linux'ini diską, jei tiksliau -- root partition'ą). Papildymas: kartais gali prireikti ir dar vieno failo -- initial ramdisk image'o, kuris paprastai vadinasi <tt>/boot/initrd-*.img</tt>. Nesu 100% tikras, bet manau, kad RH 6.0/6.1 standartiniams kerneliams šito reikia (niekad nenaudojau standartinio RH kernelio :-). Tada komanda reiktų kviesti šitaip: <tscreen><verb> loadlin vmlinuz root=/dev/hdXXX ro initrd=initrd.img </verb></tscreen> P.S. "dlia osobo tupych povtoriajiem": ankstesnėje komandoje vietoje <tt/vmlinuz/ ir <tt/initrd.img/ reikia užrašyti tikruosius šių failų pavadinimus (e.g. <tt/VMLINU~1.12-/ ir pan.). Tikiuosi, šio post scriptum neprireiks, bet ką gali žinoti... ;) <sect1> Kaip įjungti arba išjungti tam tikrus servisus? <p> Kiekviename Unixe yra toks dalykas kaip runlevel. Galima sakyti tai sistemos darbo režimas. Normaliai SuSE, Debiane (Corel'yje manau irgi yra taip pat), sistema dirba runlevelyje "2". - Multiuser režimas. Komanda <tt>/sbin/runlevel</tt> tai rodo: <tscreen> N 2 </tscreen> Redhate yra "3" - gaila, kad skiriasi tarp distribucijų. Be šių režimų yra daug kitų. Apie juos paskaitysi dokumentacijoje. Pvz. aš noriu išjungti apache iš runlevelio "2". Randu failą: <tscreen> lrwxrwxrwx 1 root root 16 mar 26 1998 /etc/rc2.d/S91apache -> ../init.d/apache </tscreen> Šis linkas susijęs su apache'o paleidimu 2 runlevelyje. Jei aš pervadinsiu šį linką iš <tt/S91apache/ į <tt/s91apache/ jau daugiau apache man nepasileis. Jei noriu grįžti - tai vėl šį <tt/s/ darau DIDELIU. Apskritai panašiai taip daroma ir kituose Unixuose. Jei nori padaryti "labai elegantiškai" Debian way gali panaudoti programą <tt>/usr/sbin/update-rc.d</tt> <sect2> BSD tipo sistemų (Linux Slackware) paleidžiamų demonų kontrolė <p> Skyrelių apie Slackware autorius yra <url name="Tomas Kuliavas" url="mailto:tomas@vmc.ppf.ktu.lt">. Paprastai procesai yra paleidžiami per tam tikrų komandų seką <tt>/etc/rc.d/rc.*</tt> skriptuose. Komandų seka patikrina, ar procesas gali būti paleistas, naudodama if -x komandas ir jei gauna teigiamą rezultatą, paleidžia procesą. Pvz.: <tscreen><verb> --- dalis /etc/rc.d/rc.inet2 skripto --- if [ -x /usr/local/sbin/sshd ]; then echo -n " sshd" /usr/local/sbin/sshd elif [ -x /usr/sbin/sshd ]; then echo -n " sshd" /usr/sbin/sshd fi --- </verb></tscreen> Ši komandų seka patikrina, ar tarp <tt>/usr/local/sbin</tt> yra sshd ir ar jis turi x (execute,vykdymo) teisę, jei taip - paleidžiamas SSH, jei ne, toliau tikrinama, ar sshd nėra tarp <tt>/usr/sbin</tt> ir taip pat bandoma ji paleisti. Jei sshd būtų padėtas ne tarp <tt>/usr/local/sbin/sshd</tt> arba <tt>/usr/sbin/sshd</tt>, SSH demonas būtų nepaleidžiamas. Siekiant nepaleisti proceso, tereikia užkomentuoti (sudėti # simbolius) visas eilutes nuo if iki fi. Pvz.: <tscreen><verb> # Start the SUN RPC Portmapper: #if [ -f /sbin/rpc.portmap ]; then # echo "Starting /sbin/rpc.portmap..." # /sbin/rpc.portmap #fi </verb></tscreen> Kai kurie procesai yra priklausomi nuo kitų procesų, ir sustabdžius vienus, kitų paleidimo komandos gali generuoti klaidas. Pvz. Jei jus sustabdote <bf>rpc.portmap</bf> taip, kaip auksčiau pateiktame pavyzdyje, žemiau esančios <bf>rpc.mountd</bf> ir <bf>rpc.nfsd</bf> paleidimo komandos generuos klaidas, nes <bf>rpc.mountd</bf> ir <bf>rpc.nfsd</bf> būtinas <bf>rpc.portmap</bf> nebus paleistas. <sect1> Procesų paleidimo seka <p> Sistemos pasileidžia per tai, kas pas jas nurodyta /etc/inittab. Būtent ten ir pirmajame sistemos paleidimo skripte nustatoma, kokio tipo (SystemV ar BSD) sistema bus paleidžiami skriptai. <sect2>SystemV tipo sistemos (RedHat, Mandrake, Debian) <p> SystemV sistemose procesai pasileidzia per nuorodas rcS.d ir rc?.d kataloguose. Šių katalogų vieta priklauso nuo Linux distribucijos. RedHat jie yra tarp <tt>/etc/rc.d</tt>, Debian - grynai <tt>/etc</tt>. Vietoj klaustuko nurodomas runlevel numeris (0,1,2,3,4,5,6) Procesų paleidimo eiliškumą apsprendžia skaičiai po S arba K raidžių nuorodos pavadinime. Be to rcS.d skriptai pasileidžia nepriklausomai nuo runlevel ir anksčiau nei rc?.d skriptai. S raidė reiškia, kad procesas turi būti paleistas, o K, kad jis turi būti sustabdytas. Pvz. <tt>/etc/rc2.d/S20apache</tt> pasileis, jei sistemos runlevel bus lygus 2. Ir jis pasileis po <tt>/etc/rcS.d/S30portmap</tt> bei <tt>/etc/rc2.d/S10bind</tt>, bet prieš <tt>/etc/rc2.d/S22linuxconf</tt> <sect2>BSD tipo sistemos (Linux Slackware) <p> Paleidžiamų skriptų seka ir paskirtis Linux Slackware: 1. <tt>/etc/rc.d/rc.S</tt> - sumontuoja swapa, patikrina, ar tvarkinga ext2 failų sistema, sukonfiguruoja ISA PNP irenginius (<tt>/etc/isapnp.conf</tt>), pakrauna branduolio modulius (<tt>rc.modules</tt>), sutvarko PCMCIA nustatymus (<tt>rc.pcmcia</tt>), nuoseklius (serial) portus (<tt>rc.serial</tt>), paleidžia rcS.d SystemV tipo skriptus. 2. Atitinkamo runlevel skriptai a) <tt>/etc/rc.d/rc.M</tt> - multi user, runlevel 2345 rc.M skriptas paleidžia procesus (syslog, klog, lpd, crond, atd, quota, sendmail, apmd) ir kitus skriptus (ju išvardijimo seka, dalies skriptų gali ir nebūti priklausomai nuo instaliuotų paketų) <descrip> <tag/rc.cdrom./ - sumontuoti cdrom, jei CDROM įrenginyje yra kompaktas. Slackware šis skriptas paprastai būna atjungtas. <tag/rc.inet1./ - sutvarkomi tinklo nustatymai. Sukonfiguruojamos tinklo kortos ir keliai (routing) <tag/rc.inet2./ - sutvarkomi tinklo nustatymai. Paleidžiami pagrindiniai tinklo procesai <tag/rc.atalk./ - paleidžiamas Apple Netatalk serveris (failu/spausdinimo serveris Mac kompiuteriams, naudojantiems Appletalk) <tag/rc.font./ - pakrauna vartotojo pasirinktą sisteminį šriftą <tag/rc.keymap./ - pakrauna vartotojo pasirinktą klaviatūros išdėstymą <tag/rc.ibcs2./ - paleidžiamas iBCS emulatorius del Linux <tag/rc.httpd./ - paleidžiamas WWW serveris (Apache) <tag/rc.samba./ - paleidžiamas Samba serveris <tag/rc.gpm./ - paleidžiamas GPM (General Purpose Mouse) serveris <tag/rc.sysvinit./ - vykdomi SystemV tipo atitinkamo runlevel skriptai. Slackware tokių skriptų paprastai nebūna. <tag/rc.local./ - paleidžiami specialūs procesai, kuriuos nustato pats administratorius. Paprastai į čia įdedamos rc.firewall skripto paleidimo komandos. Nors rekomenduotina rc.firewall komandas sudėti auksčiau rc.inet2 skripte. </descrip> b) <tt>/etc/rc.d/rc.K</tt> - single user, vieno vartotojo režimas (runlevel 1) c) <tt>/etc/rc.d/rc.0</tt> - halt, sistemos sustabdymas (Slakware - tai yra simlinkas i rc.6) d) <tt>/etc/rc.d/rc.6</tt> - reboot, sistemos perkrovimas 3. <tt>/etc/rc.d/rc.4</tt> Suveikia, jei sistema startuoja runlevel=4. Paleidžiamas xdm arba jo analogas (kdm, gdm) Pirmumo seka (slackware 7.0): <itemize> <item>/opt/kde/bin/kdm; <item>/usr/bin/gdm; <item>/usr/X11R6/bin/xdm; <item>pranešimas apie klaidą. </itemize> <sect> Netscape <sect1> Netscape6 Activation lango panaikinimas <p> Už šią dalį labai dėkojame <url name="Tomui Kuliavui" url="mailto:tomas@vmc.ppf.ktu.lt">. K: Suinstaliavau Netscape6 ir tas activation langas baigia išvaryti iš proto. Kaip man jį panaikinti? A: Reikia paredaguoti vieną iš dviejų failų. <p> 1. <tt>~/.mozilla/default/pref.js</tt> ~ simbolis reikia vartotojo namų katalogą (homedir) Reikia įrašyti eilutę <tscreen> user_pref("browser.registration.enable", false); </tscreen> Failo redagavimo metu turi būti nepaleistas joks Netscape6 langas. 2. <tt>/netscape6-inst-path/defaults/pref/all_ns.js</tt> eilutė <tt>netscape6-inst-path</tt> yra kelias iki tos vietos, kur jūs suinstaliavote Netscape6. Jeigu Netscape6 neatėjo su jūsų Linux distribucija, ir jūs jį suinstaliavote pats, tai turėtų būti koks nors katalogas tarp <tt>/opt</tt>. Pvz. <tt>/opt/netscape6</tt> <tscreen> pref("browser.registration.enable", true); </tscreen> pakeiskite į <tscreen> pref("browser.registration.enable", false); </tscreen> Nustatymas suveiks visiems vartotojams, nebent jie pas save įjungs activation redaguodami pirmame punkte minėtą failą. <sect> Literatūra <sect1> Resursai internete <p> Rafalo linkai: <itemize> <item> <url url="http://www.oreilly.com/catalog/debian/chapter/index.html"> <item> <url url="http://www.newriders.com/cfm/prod_book.cfm?RecordID=585"> </itemize> <p> Ačiū <url name="Mariui Zalinauskui" url="mailto:mz@osf.su.lt">, už tai, kad pastebėjo spragą šitame FAQ'o skyriuje ir ją ištaisė: Linux Lietuvoje centras, mano galva, yra <url url="http://ice.dammit.lt"> . Tikrai žinai šį Manto Mikucko tinklapį. Citata iš puslapio: <quote> Sveiki, atvykę į saitą, kuriame pasak gerb. Alberto Agejevo rasit daug linkų į saitus, kuriose rasit daug linkų į saitus, kuriose rasit daug informacijos. </quote> (Dar geras bajeris --- Mantą kai kurie žmonės vadina Mr. Mirror ;-) -- Albertas) Nuo gegužės menėsio ten lyg ir nėra jokių pasikeitimų. Bet pagaliau, juk vasara --- atostogų metas. <url url="http://www.andrius.org/projektai/linux/HOWTO/index.html"> --- Andriaus surinkti lietuviški HOWTO ir FAQ. <url url="http://www.linux.org.ru"> --- čia rusai sukišo viską, ką turėjo. Mano galva, labiausiai praversti turetų į rusų kalbą išversta Linux dokumenacija. <sect1> Konferencijos archyvai <p> Šitą džiaugsmą galima rasti <url url="http://www.forum.lt"> svetainėje, bet šviežiausios žinutės ten būna poros savaičių senumo. Domo Mituzo archyvas davė dūbo ir nebeprisikels, užtat atsirado naujas os_linux archyvas: <url url="http://ieva.mif.vu.lt/pipermail/os_linux">. Time-stamp: "2000-12-14 01:35:22 alga" </article>