Abíčko Časopis serveru AbcLinuxu.cz Září 2004 Vychází také na CD-ROM jako příloha časopisu PCWORLD. Editoriál Vítejte u čtení časopisu Abíčko. Abíčko vychází jako měsíční příloha serveru http://www.abclinuxu.cz a obsahuje výběr toho nejzajímavějšího obsahu, který zde byl v minulém měsíci publikován. Touto formou chceme předat čtenářům informace v snadno čitelné podobě vhodné i pro tisk. Cílem serveru AbcLinuxu.cz je pomáhat všem uživatelům Linuxu, nezávisle na jejich zkušenostech, platformě či použité distribuci. Motorem, který nás pohání vpřed, je idea vzájemné pomoci a spolupráce. Proto i velkou část obsahu tvoří samotní uživatelé. Zapojit se může kdokoliv, tedy i vy. Na AbcLinuxu.cz najdete rozsáhlou databázi návodů na zprovoznění hardwaru pod Linuxem, velice aktivní diskusní fórum, podrobné návody a tutoriály, recenze, archiv ovladačů, informace o linuxovém jádře (včetně populárních Jaderných novin) i rozcestník po ostatních linuxových serverech. Náměty na články zasílejte do konference našich autorů: autori@abclinuxu.cz. Sponzoring Abíčka a jiné formy reklamy si objednávejte na adrese: reklama@abclinuxu.cz. Ostatní dotazy směřujte na adresu: literakl@abclinuxu.cz. Server AbcLinuxu.cz provozuje firma Stickfish s.r.o., která poskytuje profesionální služby v oblasti Linuxu firmám i jednotlivcům. Zabývá se hlavně bezpečností, instalacemi Linuxu a konfigurací síťových služeb. Více na http://www.stickfish.cz. (c) 2004 Stickfish s. r. o. a autoři článků Editor a sazba: Vlastimil Ott Pro nekomerční účely smíte tento dokument jakkoliv šířit v tištěné i digitální podobě. V ostatních případech nás požádejte o svolení na adrese info@abclinuxu.cz. Typografické konvence Ve výpisech zdrojových textů mohou být použity znaky \\. Značí přechod na nový řádek, který ovšem není součástí samotného zdrojového textu, byl přidán editorem z důvodu lepšího vzhledu případně nemožnosti text formátovat bez jejich použití. Obsah Správce vašich sbírek Jsme na dovolené -- automatická odpověď Kde známé projekty ke svým jménům přišly... Sériová komunikace pod Linuxem VMWARE -- recenze knihy IPSec v kernelu 2.6 Jaderné noviny 268--271 Zprávičky ******************************* Správce vašich sbírek Vlastimil Ott Taky máte zmatek ve své sbírce angličáků, receptů nebo sýrových etiket? Což si v tom takhle udělat pořádek? Našel jsem šikovného pomocníka. O co jde? Nedávno jsem po dlouhém hledání konečně nalezl funkční program pro uspořádání knih a cédéček - Bookcase. Různých pokusů se po Síti povaluje mnoho, ale pouze tento disponuje určitými mechanismy, na které jsem kladl důraz, i když ani tato aplikace nesplňuje můj ideál na 100 %. Jediným vážným konkurentem, který jsem nalezl, je Alexandria; ten mě ale screenshoty nepřesvědčil. Sám autor ještě odkazuje na své (komerční) vzory; zkoušel jsem Readerware, ale vůbec se mi nelíbil. Jaké požadavky tedy na takový software mám? Vše vychází z čistě 'domácího' účelu, takže: * použití dokumentovaného DTD, XML a XSL šablon * žádná SQL databáze * možnost importu a exportu a jistá inteligence při těchto činnostech * samozřejmě lokalizace * podpora pro různé typy sbírek (kromě knih ještě minimálně CD) * stabilita + další vývoj Jak se čtenář dovtípil, Bookcase u mě prozatím vede a já se pokusím nastínit jeho možnosti tak, abych to zvládl v jednom článku. Typy sbírek Pojmem 'sbírka' rozumíme souhrn jednotlivin, které lze na základě společných znaků klasifikovat, řadit, ukládat (třeba do regálu). V současné verzi lze v programu spravovat devět resp. deset typů sbírek. Každá sbírka je uložena v jednom souboru a může mít teoreticky neomezený počet položek. Každá položka může mít *neomezený* počet polí. Zde se omezím na několik nejpraktičtějších typů sbírek a ukážeme si jak vytvořit vlastní typ. Všechny stávající sbírky tedy jsou: knih, bibliografie (možnost exportu do souboru .bib pro BibTeX), komiksů, videa, hudby, mincí, známek, karet a vín. Sbírka je uložena v souboru .bc, což je ZIP archiv obsahující XML soubor a patřičně přejmenované obrázky. Obrázky nejsou nijak upravovány či redukovány, takže se nedoporučuje zbytečně plýtvat místem. Knihy Sbírce knih říkejme knihovna, ostatně podle tohoto zaměření získal program své jméno. Pro přidání záznamu slouží dialogové okno, které pochopitelně mění strukturu v závislosti na typu sbírky. V případě knihy je možné (ale ne nezbytně nutné) vyplnit všechny myslitelné 'parametry', které může kniha mít. Volitelně můžeme přidat i obrázek obálky, které lze najít v nějakém e-shopu. Po kliknutí na 'Uložit záznam' se záznam uloží do databáze a políčka se vyprázdní; pokud chceme celý záznam zrušit, klikneme na 'Nový záznam'. Popisem jednotlivých polí se zde nebudu zabývat, ale věřte, je jich tolik, že jsem měl problém celou kartu vůbec vyplnit (více předchozí odkaz). Lze také připojit osobní komentář, třeba stručný obsah. Z výše uvedeného vyplývá, že pole lze přidat, či ubrat, měnit jejich typ apod. Hudba Tato sbírka slouží k organizaci zvukových nosičů, nenajdeme zde ale možnost pro MP3 či OGG soubory. Typy médií jsou pouze tři: CD, MC a vinyl. Opět lze vložit všechny možné typy údajů včetně bookletu, který lze stáhnout. Zde mě čekalo velké zklamání - program nepodporuje dotaz prostřednictvím CDDB, takže názvy stop musíte doplnit ručně (což se mi dělat nechce). V levém sloupci se zobrazuje struktura databáze podle vybraného pole, to se vybírá na horní liště ('Seskupit podle'). Vedle této lišty je políčko pro filtr, kterým pro změnu ovlivníme výsledek v horní části okna. Tento princip samozřejmě funguje pro všechny typy sbírek, nejen pro hudbu. Ovládání je vůbec vyřešeno intuitivně a funguje dle očekávání. Video Záznam pro video mě nejvíce 'dostal' - nechtělo se mi věřit, co všechno je o filmu možné vyplnit (osoby a obsazení, lidé kolem filmu, technické vlastnosti snímku apod.). Zde už je kromě DVD, VHS a VCD také DivX. Na webu Bookcase existují skripty, které tyto údaje načtou z webových encyklopedií. Já žádnou sbírku nemám, tak jsem to prakticky nezkoušel. Vlastní typ Pro demonstraci jsem si vymyslel jednoduchý seznam hardwaru, který asi nebude možné použít ve velké firmě, ale mohl by být funkční v domácnosti či menší firmě. Položka bude mít následující pole: | Název pole Obsah pole | Název Katalogové označení výrobku - typ, model | Typ Typ hardwaru, výběr z několika možnosti | Cena Cena v korunách | Výrobce Název výrobce | Web výrobce Stránky výrobce, příp. stránka produktu | Identifikace Identifikace výrobku, např. evidenční štítek | Nové Bylo pořízeno jako nové? | Popis Dodatečný popis Definice polí Vytvoříme tedy novou sbírku příkazem 'Soubor/New/Nová vlastní sbírka'. Položka obsahuje pouze jedno obecné pole. Příkazem 'Sbírka/Pole sbírky' vyvoláme okno pro definici nových polí. Ponecháme stávající pole 'Název', pouze změníme jeho popis. Stiskem tlačítka 'New' vytvoříme další pole, tedy 'Typ'. V seznamu 'Druh' vybereme typ pole - 'Choice'. Do pole 'Povoleno' napíšeme typy hardwaru oddělené středníkem: monitor; case; klávesnice; myš; tiskárna; skener; joystick To jsou položky budoucího rolovacího seznamu, ze kterého se bude vybírat typ hardwaru. Další pole 'Cena' bude mít 'Druh' 'Číslo'. Takto tedy postupujeme při zakládání všech polí, každé z nich přidáme do seznamu stiskem tlačítka 'Použít'. Můžeme volit dodatečné parametry pole, jako je např. automatické doplňování apod. Nezapomínejme na 'Popis' - ten se uživateli zobrazí, klikne-li na otazníček na liště okna a následně na požadovaný prvek (ano, tzv. bublinková nápověda). Vynikajícím parametrem je 'Povolit seskupování'. Pokud jej totiž zaškrtnete, bude možné podle tohoto pole řadit seznam v levém sloupci hlavního okna. Tlačítky se šipkami v levé dolní části měníme pořadí polí ve výsledném okně. Po ukončení (můžeme se sem ale vždy vrátit) máme definovanou šablonu a můžeme přidat první položky. Klikutím na ikonu (nebo Ctrl+n) zobrazíme nově vytvořené okno. Jak vidíme, pole se 'sama' inteligentně rozložila do karet a zadávání je tedy přímočaré. Máme tedy základní kostru. Zadáme cvičně několik záznamů a zjistíme, že nám chybí další pole: datum pořízení, počet kusů a obrázek. Nic se neděje, prostě stejným způsobem, jakým jsme pole vytvořili, přidáme další. Nemusíme se bát o již vyplněné údaje - nová pole budou ve starých záznamech prostě nevyplněná. Tak jsme tedy získali snad již funkční rámec, teď jej stačí 'pouze' naplnit daty. Cvičně jsem to udělal a můžete se tedy podívat, jak naše dílo vypadá. Na horní liště máme v seznamu 'Seskupit podle' všechna pole, kterým jsme tuto možnost nastavili; podle toho se také mění levý seznam. Můžeme si tedy nechat vypsat všechny monitory, všechno podle data pořízení, výrobce apod. Samozřejmě se nejedná o nic převratného, nelze například měnit pod-řazení, to je vždy podle abecedy (vzestupně, nebo sestupně). Ale přesto je to velice přehledné. Kliknutím pravým tlačítkem myši na hranu horní části okna vybereme pole, která se mají zobrazit - zde máme Název, Typ, Cena, Pořízeno, Výrobce, Kusy, Náhled. Kliknutím na některé z nich jej zvolíme jako klíč řazení pro tuto část okna (levý sloupec zůstává). Kliknutím na některou položku zobrazíme její obsah v dolní části okna (zde tiskárna). Také zde lze použít filtr, a to dokonce vícepodmínkový či filtr na část výrazu. Pojďme k nastavení programu. Nastavení Obecné Na kartě 'Obecné' můžeme ovlivnit možnosti formátování, zejména výrazy označující členy (the, der), osobní přípony (ml., jr.) a části příjmení (von, van, de, van der, la apod.). Tisk Karta 'Tisk' ovlivňuje výsledný vzhled karty - přítomnost hlaviček, velikost náhledů. Šablony Další důvtipný zlepšovák. U každého typu sbírky lze zvolit šablonu (jedná se o XSL), podle které se zobrazuje obsah položky v dolní části okna. Existuje pět základních šablon, ne všechny lze použít pro každou sbírku (např. pro video je speciální). Pro náš seznam hardwaru můžeme použít Compact, Fancy, nebo Default. BibTeX Několik málo voleb pro BibTeX, program, kterým lze zpracovávat bibliografické citace (a následně je integrovat do dokumentu LaTeXu). Export, import, transport Export Export funguje do XML, HTML, CSV (údaje oddělené zvoleným oddělovačem, např. středníkem), PilotDB a souboru BibTeXu. Také existuje velice flexibilní možnost exportovat data přes vlastní XSL šablonu, což je teprve to nejlepší. HTML export lze ovládat několika parametry, při použití všech voleb se vytvoří základní stránka, z níž vedou odkazy na záznamy jednotlivých zařízení. K dokonalosti ale chybí navigace. Ukázka (.tar.bz2). Import Importovat lze soubor Bookcase, pokud má stejnou strukturu, jinak řečeno, používá-li stejné DTD. Dále CSV, což je praktické, máme-li seznam knih např. ve formátu autor; název knihy Oddělovač lze samozřejmě zvolit. Struktura souboru musí podle mé dosavadní zkušenosti přesně souhlasit se strukturou naší sbírky. Každému Sloupci je nutné přiřadit Datové pole - postupným klikáním na oba prvky. Pole jsou samozřejmě ta, která jsme definovali ve své sbírce. Stejně jako exportovat lze také importovat BibTeXové soubory a soubory prostřednictvím XSL šablony. Pod pokličku Aplikace na mě působí (snad oprávněně) opravdu dobrým dojmem - využívá XML a spřízněné technologie, kde to jen jde. Autor dokonce (což mě opravdu překvapuje) počítá s tím, že si uživatelé budou připodobňovat XSL šablony pro různé výstupy. Lze tedy upravit stávající šablony pro své účely. Základní se nacházejí v adresáři $KDEHOME/share/apps/bookcase, šablony pro definici vzhledu spodní části okna (detaily vybrané položky) jsou v podřízeném adresáři entry-templates. Tam tedy najdeme šablony, o kterých jsem mluvil v sekci Nastavení/Šablony. Kdo rozumí, poradí si. Součástí šablon jsou CSS sekvence, ty lze tedy - asi jako nejjednodušší věc - změnit. Mezi šablonami se nalézá i šablona pro tisk výstupů. Standardní vzhled není nijak uchvacující, proto je na místě jej trochu upravit. To už se ale pohybujeme na jiném poli, takže se úpravě XSLT nebudeme podrobně věnovat. Závěr Program mě potěšil - je dobře navržený, schopný, rozšiřitelný, praktický, intuitivní. Má sice nějaké nedodělky, ale to se jistě změní. Myslím si, že jej lze bez problému používat pro uspořádání domácích sbírek všeho druhu. Ačkoliv se Rober Krátký snažil, lokalizace není kompletní, což působí rušivě. Našel jsem ale další praktický program, kterému svěřím svá poctivě a dlouho vkládaná data. ******************************* Jsme na dovolené - automatická odpověď Petr Bravenec Jak jednoduše nastavit inteligentní automatické odpovídání, které nereaguje na stejnou adresu dvakrát, ignoruje spam a emailové konference a mohou jej využívat i uživatelé Windows? Úvod Vždycky v létě se objeví několik požadavků na automatické poštovní odpovědi. Lidi, kteří celý rok žili se svými zákazníky a obchodními partnery, denně vyřizovali několik desítek mailů, nyní nasedli do svých plechovek a odjeli se válet někam k moři. Samozřejmě chtějí, aby se o svou radost z dovolené mohli podělit i se svým počítačem a se svými poštovními protějšky a vyžadují, aby systém automaticky odesílal informaci o mobilním telefonním čísle, na kterém jsou k zastižení, a kdy zase začnou pracovat a vyřizovat poštu. Nejjednodušším řešením, které napadne i jinak nenápadného uživatele, je nastavení filtru v Outlooku - na všechny zprávy jejich poštovní klient automaticky odpoví "Nejsem tady, vrátím se v pondělí". V pondělí se pak diví, že o jejich dovolené nikdo nic neví a tlučou se do hlavy, když jim dojde, že aby jejich řešení fungovalo, měli nechat počítač zapnutý. Z nenápadného uživatele se stane nápadný v momentě, když se někde na druhé straně poštovního drátu vyskytne podobný chytrák a jejich poštovní programy si začnou hromadně vyměňovat upozornění o dovolené. Nejdříve se zaplní lokální disk v PC, Outlook přestane komunikovat, potom se zaplní disky na serveru a nakonec se natlakují všechny datové dráty a začne hrozit jejich exploze. Po návratu z dovolené se pak ubohý uživatel tluče do hlavy, když se musí probírat několika desítkami tisíc zpráv. Zkušený síťový administrátor, před kterým začnete mluvit o automatické odpovědi, se proto začne zcela oprávněně ježit a bránit. Někdy se ale ubránit nelze a je potřeba něco vymyslet. Procmail Pro podobné úlohy lze docela snadno využít program procmail. Ten dnes bývá použitý ve většině linuxových distribucí. V manuálových stránkách je přímo uvedený příklad, který je docela slušně zabezpečený proti nežádoucí poštovní smršti. Poštu přes internetové prostředí transportuje například postfix nebo sendmail a procmail je program, který se používá pro uložení doručené pošty do uživatelovy schránky na serveru. Tam pak pošta čeká, než si ji uživatel některým protokolem pro přístup ke schránce (imap, pop3) vybere do svého klienta (Outlook, Mozilla, Thunderbird). Při ukládání pošty může dělat procmail spoustu užitečných činností - podle různých kritérií třídit poštu do různých přihrádek, přeposílat poštu jinam, zbavovat uživatele spamu a také odpovídat na poštu. Bohužel jsou procmailovy vyjadřovací prostředky dosti nezvyklé a mnoha lidem dělá problémy v procmailu udělat i ty nejjednodušší úlohy. Je naprosto nemožné přesvědčit obyčejného uživatele a i mnohého správce, aby byl ochotný se procmailu věnovat. Příklad v manuálu procmailex(5) uvádí jednoduchý skript, který imituje činnost programu vacation (nikdy jsem na tento program, narozdíl od procmailu, nenarazil). Podobně si může nastavit automatickou odpověď zkušený administrátor. Jenže pro obyčejného uživatele - většina jich navíc pracuje ve Windows - je takový způsob zcela nevhodný. Skutečně efektivní systém musí splňovat několik kriterií: * Musí si pamatovat adresy, na které už jednou upozornění odesílal. * Nesmí odesílat odpovědi na nevyžádanou poštu * Nesmí odesílat odpovědi na příspěvky v konferencích * Nesmí odesílat odpovědi na servisní zprávy například o nedoručitelné či zavirované poště * Uživatel nesmí být nucený dělat zásahy do skriptu. Pro uživatele musí být použití co nejjednodušší. * Řešení se nesmí omezovat jen na unixové uživatele. Většina lidí má na stole Windows. Skript Předložené řešení používám už poměrně dlouho a celkem se mi osvědčilo. Největším problémem tohoto řešení je, že musím uživatelům vysvětlovat, co je to ten Notepad a že Wordem soubor pro automatické odpovědi opravdu vytvořit nemohou, a že záleží na tom, jestli napíší "dovolena.txt" s dlouhým nebo krátkým písmenem á. Proti nebezpečí poštovní smrště se systém brání hned dvěma způsoby - v prvé řadě si vede seznam adres, na které už byla automatická odpověď odeslaná. Za druhé vyrobí v hlavičce odesílané pošty značku (X-Loop: user@firma.cz), podle které může zprávu nebo odpověď na zprávu později identifikovat. Celý systém se řídí existencí souboru dovolena.txt. Jestliže v domácím adresáři uživatele takový soubor existuje, jeho obsah se odesílá jako automatická odpověď. Uživatelé Windows proto musejí mít přístup do svého domácího adresáře - ten jim lze připojit například přes Sambu. Skript samotný by měl být uložen v domácím adresáři v souboru .procmailrc. Tam se může válet nečinně celou věčnost a čekat na svou příležitost (než se objeví soubor dovolena.txt). Obvyklí uživatelé bývají do konferencí přihlášení jen výjimečně, u nich nejsou potřeba prakticky žádné úpravy. Ve složitějších případech lze úpravou skriptu lépe určit, kam se bude automatická odpověď odesílat. Procmail je dobře dokumentovaný a v manuálových stránkách je uvedeno i velké množství užitečných příkladů. # Tady přepište svou část adresy za zavináčem DOMENA="mojefirma.cz" ############################################ # Filtry na dovolenou. Vše se řídí existencí # souboru $HOME/dovolena.txt # V souboru je text, který se posílá # uživatelům jako automatická odpověď. # Soubor by měl být napsaný v češtině pro # windows. ############################################ # Neexistuje-li soubor dovolena.txt, # není důvod pro existenci souboru # s adresami, na které se někdy posílaly # automatické odpovědi. Smazat. :0 w: * ? test ! -r $HOME/dovolena.txt * ? test -r $HOME/dovolena.cache | rm -f $HOME/dovolena.cache ############################################ # Zkontrolovat, zda nejde o spam. Na ten # se nebude odpovidat. :0fw: spamassassin.lock * !^X-Spam-Status * !^FROM_DAEMON * !^X-Loop: $LOGNAME@$DOMENA * !^X-Loop:.*@$DOMENA * ? test -r $HOME/dovolena.txt | spamc ############################################ # Nezapomenout doplnit konference, na které # se nesmí odpovídat! :0 Whc: dovolena.lock * !^To:.*linux.* * !^X-Spam-Flag: YES * !^FROM_DAEMON * !^X-Loop: $LOGNAME@$DOMENA * !^X-Loop:.*@$DOMENA * ? test -r $HOME/dovolena.txt | formail -rD 16384 dovolena.cache :0 ehc | (formail -rI"Precedence: junk" \ -A"X-Loop: $LOGNAME@$DOMENA" ;\ -A"Content-Type: text/plain; charset=\"win-1250\"" ;\ cat $HOME/dovolena.txt \ ) | $SENDMAIL -oi -t ******************************* Kde známé projekty ke svým jménům přišly... Bohumír Zámečník Proč se Linux a jeho distribuce jmenují tak, jak se jmenují ? Co se skrývá za tajemným názvem vmlinuz? Víte, že Java byla dřív dubem a že pakůň není žádný kastrát? A co démoni a indiáni? Chcete vědět víc? Já už to pro vás zjistil... Spojené klobouky. Tučňák nebo kráva? Sýrová obluda. Tančící voříšek, co si dává kořen mandragory. Na cestu jim svítí ohnivá panda. Dinosauří ptákománie? Že by masopustní rej v Bohnicích? To je jen pohádkový svět svobodného softwaru! GNU Když Richard Mathew Stallman v roce 1983 začal skládat dohromady svobodný operační systém kompatibilní s Unixem, dal projektu jméno GNU - hned z několika důvodů: GNU (vyslovuje se [gnu:]) je zaprvé rekurzivní zkratkou pro "GNU's Not Unix" (GNU Není Unix). Zadruhé "gnu" [nu:] je anglicky pakůň běloocasý resp. žíhaný (Connochaetes gnou resp. taurinus; 1, 2) - ten se stal maskotem projektu GNU. Svůj podíl má na tom i písnička (GNU remake), kterou zpívá onen pakůň - rozčiluje se, že není žádný los, bizon ani velbloud, s nimiž si ho lidé pletou, a přitom má svéráznou výslovnost - g-nice, g-nature, g-know, apod. Tyto jazykové hrátky pak očividně vedly k tomu, že se ve jménech mnoha projektů pod GNU/GPL licencí "až příliš často" vyskytuje právě písmeno "g". Ještě zmíním, že RMS chtěl pravděpodobně vyjádřit, že GNU je něco "new" - nový, svobodný operační systém. (Ale hlavně byla výslovnost s "g" na začátku důležitá, aby se to nepletlo...). Linux Při studiích na helsinské univerzitě se Linus Torvalds setkal s operačním systémem Minix, který byl určen k výuce. Jako koníček začal psát vlastní pokus o jednoduchý OS podobný Minixu a nazval ho Freax (free + freak + minix), protože název Linux (Linusův Minix) se mu zdál příliš egoistický. Verzi 0.0 2 uveřejnil na FTP serveru ftp.funet.fi, jenž spravoval jeho kolega Ari Lemmke. Tomu se však název Freax vůbec nelíbil, a proto Linusovi vytvořil na serveru adresář jménem Linux. Linus se s ním nechtěl hádat, souhlasil a nyní se můžeme radovat z Linuxu. vmlinuz a vmlinux Co se skrývá za těmito podivně znějícími slovy? Jaký je mezi těmito názvy rozdíl, co znamená zImage a bzImage a jak tyto názvy vůbec vznikly? Jedná se o linuxové jádro (neboli kernel), resp. produkt jeho kompilace. Pokud tato kompilace proběhne úspěšně, sestaví se části jádra (kromě modulů) do jednoho souboru - tím je vmlinux. Jak šel čas a jádro čím dál více kynulo, bylo nutné ho komprimovat, proto se komprimovaný obraz jádra nazývá vmlinuz. Možná jste si všimli, že hned na začátku bootování píše jádro: Uncompressing Linux... Dříve, za dob nástroje compress, měly komprimované soubory příponu .Z. Proto vmlinux.Z - vmlinuz. Komprese je ovšem provedena nástrojem gzip, ale vmlinuz nelze rozbalit prostým příkazem gunzip nebo gzip -dc. Na začátku totiž navíc obsahuje krátký kód, který ho rozbalí do paměti a pak spustí. Při kompilaci jádra ale používáme často příkaz make bzImage či make zImage. Image je to, protože se zaprvé jedná o spustitelný obraz jádra a zadruhé, aby se cíl pro příkaz make odlišil např. od vytvoření spouštěcí diskety (make zdisk). Jaký je tedy rozdíl mezi zImage a bzImage? Jelikož jádro rostlo a ani komprese už pořádně nestačila, museli programátoři přepsat spouštěcí rutinu, aby jádro rozbalila do horní paměti (high memory - přes 1MiB), místo do spodní paměti (low memory - prvních 640kiB) - jak tomu je u zImage. zImage tedy znamená něco jako "compressed / zipped image" a bzImage je "big compressed image". Při hledání materiálů k tomuto tématu jsem často narážel na vyvracení pověr tvrdících, že bzImage značí kompresi pomocí bzip2, ale při průzkumů Makefile souborů v balíku zdrojových kódů jádra jsem zjistil, že na tom něco pravdy je. V Makefile pro architekturu m68k (Motorola 68000) se opravdu jádro komprimuje pomocí bzip2. Kdo nevěří, ať tam běží - např.: arch/m68k/Makefile. Na začátku jsem slíbil, že se pokusím objasnit historii názvu vmlinux. Za dávných dob systému Unix bylo binární zkompilované jádro pojmenované jednoduše unix. Poté do verze od univerzity v Berkeley napsali podporu pro virtuální paměť (virtual memory) a aby jádra s tímto novým kódem odlišili na strojích, kde mohlo běžet obojí, pojmenovali binárku jádra vmunix. Na začátku devadesátých let pak Linus přišel s Linuxem, který také ovšem používá virtuální paměť a pojmenoval binárku přirozeně vmlinux. Debian Jedna z nejznámějších a nejuznávanějších linuxových distribucí přišla ke svému jménu v roce svého vzniku (1993). Ačkoli se může zdát, se jedná o přídavné jméno, ve skutečnosti jde o zkratkové slovo ze jména svého autora a jeho manželky - Debra a Ian Murdockovi. Jak prosté, že... Slackware Patrick Volkerding si zvolil tohle jméno pro svou distribuci, jelikož celkem pěkně vyjadřuje její filozofii. Termín Slack prý používá satirický spolek Church of the SubGenius, a to ve významu do češtiny přeloženém asi jako odvaz, uvolnění, být svůj, apod. Slack + software - Slackware - pěkně odvázaný software... A je to pravda. Red Hat To bylo takhle: Marc Ewing, zakladatel společnosti, zdědil po svém dědečkovi lacrossovou kšiltovku (angl. "hat") - červenou s bílými pruhy. Na univerzitě ji pak často nosíval a lidé, kteří se na něj obraceli s počítačovými problémy, ho označovali jako toho chlapíka v červené čepici. Když potom zakládal společnost, pojmenoval ji jednoduše Red Hat, protože Red- and White- Stripes Hat Inc. by asi neznělo moc dobře. Bohužel svou milou čepici prý jednou ztratil a hledal ji tak zoufale, že do manuálu k jedné staré beta verzi Red Hat Linuxu dal prý zmínku, že pokud jeho čepici někdo náhodou najde, aby mu ji vrátil. Zdali svou červenou čepici našel, nevím. SUSE Jméno jedné z nejznámějších distribucí a zároveň společnosti, která ji vyvíjí, SUSE Linux AG, pochází z němčiny: "Software und System Entwicklung", česky "Vývoj softwaru a systémů". Okolo výslovnosti panuje hodně nejasností, vypadá to, že každý to vyslovuje jinak a ani oficiální místa se nevyjádřila jasně. Unix Bellovy laboratoře původně (1964-69) vyvíjely systém MULTICS (MULTiplexed Information and Computer System), ale pak od projektu upustily. Skupina lidí z Bellových laboratoří, Ken Thompson, Dennis Ritchie a Douglas McIlroy, poté napsala zjednodušenou verzi - UNICS (UNiplexed Information and Computer System). Toto pojmenování se však přisuzuje Brianu Kernighanovi (ano, jsou to ti Kernighan a Ritchie, tvůrci jazyka C). Byl zde ale háček - UNICS zní v angličtině jako eunuchs (kastráti) a někteří lidé si dělali srandu, že UNICS je vykastrovaný MULTICS, proto ho později přejmenovali na UNIX. Apache Jak přišel tento nejoblíbenější HTTP server ke svému indiánskému jménu? Při hledání musíme začít od kořenů - od jeho předka NCSA HTTPd. Psal se rok 1993 a Rob McCool spolu s několika dalšími studenty vyvíjel na NCSA (National Center for Supercomputing Aplications) na University of Illinois druhý webový server v historii - NCSA HTTPd (první byl CERN HTTPd od Tima Berners-Lee). Avšak v létě roku 1994 Rob McCool opustil NCSA a vývoj se zbrzdil (až v roce 1998 úplně ustal). Několik webmasterů si vyvíjelo své vlastní úpravy a opravy chyb a dva z nich - Brian Behlendorf a Cliff Skolnick dali dohromady mailovou konferenci, sbírali patche a začali vydávat první verze - ve formě patchů vůči původnímu NCSA HTTPd. Proto legenda praví: "A patchy server" - Apache. První veřejnou verzi 0.6.2 vydali v dubnu 1995 a poté kompletně přepsali architekturu. Celkem asi 8 webmasterů utvořilo Apache Group, která dnes (sice už v obměněné sestavě) tvoří jádro vývojářské skupiny. No a na závěr ještě podotknu, že jako správný indián má Apache ve znaku ptačí péro. Java Někdy okolo roku 1990 začala vznikat Java jako interní projekt Sun Microsystems, jelikož jejich programátorům nevyhovoval jazyk C++ pro programování embedded zařízení (příliš složitý v prostředí s omezenými zdroji, chybějící garbage collector, nesnadná přenositelnost). Původní název zněl Oak - podle dubu, na který koukali z okna kanceláře, ale už existoval jiný jazyk s takovou obchodní značkou. Proto projekt v roce 1994 přejmenovali na Java podle anglického výrazu pro "kafe", na které tito programátoři chodili do místní kavárny (tam onen název i vymysleli). Výraz "java" jako kafe má původ na ostrově Jáva, odkud byla dovážena. Logem Javy je tak voňavý hrníček tohoto kultovního moku programátorů. Daemon Jako daemon se v počítačovém (nebo spíše Unix-like) světě podle tradice většinou označuje program, který běží samostatně, na pozadí a provádí údržbu systému, poskytuje služby, apod. (Tedy ekvivalent tzv. services pod MS Windows). V Unix-like systémech jména takovýchto programů často končí na písmeno -d (httpd, ftpd, lpd, apod.), aby bylo na první pohled vidět, o co jde. Hledáte-li význam tohoto slova, často se můžete dočíst, že jde o starou zkratku "Disk And Execution MONitor", ale původ je spíše v tzv. Maxwellových démonech - drobounkých smyšlených bytůstkách, které pohybují molekulami a jinými částicemi. Takový program se pro nezasvěceného uživatele (pokud o něm vůbec ví) může jevit jako nadpřirozená síla. Linuxové distribuce Fedora Dnešní nástupce Red Hat Linuxu pro obyčejné uživatele, Fedora Core, má původ v projektu Fedora Linux Project , který byl založen v prosinci 2002 Warrenem Togamim, studentem univerzity na Hawaii. Původně šlo o tvorbu neoficiálních, ale kvalitních RPM balíčků pro Red Hat Linux. Později projekt získal podporu Red Hatu a když v roce 2003 Red Hat změnil svou strategii a přeorientoval se na velké podniky, spojily se projekty Red Hat Linux a Fedora Linux Project do nově vzniklého Fedora Project. Jméno Fedora nebylo vybráno náhodně - jelikož jde o projekt spřátelený právě s Red Hat Linuxem, samotné slovo "fedora" značí plstěný klobouk s promáčklou špičkou, jaký nosil kupříkladu Indiana Jones, všelijací mafiáni a právě také hlava na logu Red Hat. Etymologický původ však je v dramatu Fédora francouzského spisovatele jménem Victorien Sardou (1831-1908). Fedora - do češtiny přeloženo Božidara - je ale i ženským jménem používaným především v Rusku. Gentoo Ačkoliv jménem "gentoo" se v angličtině označuje tučňák oslí (Pygoscelis papua), nejrychlejší opeřený plavec, má distribuce za maskota krávu jménem Larry. Ta byla podle legendy znechucena situací na poli linuxových distribucí, a tak si vytvořila svou vlastní. Ve skutečnosti za vznikem Gentoo Linuxu stojí Daniel Robbins. Pracoval na Debianu, YellowDog Linuxu a FreeBSD, ale nic mu plně nevyhovovalo. Tak zkombinoval dobré vlastnosti všech těchto distribucí do jedné - Gentoo. Mandrake Od svého vzniku v červenci 1998 do dnešní doby prodělala tato uživatelsky přívětivá distribuce několik změn svého jména. Původně byla pojmenována svým tvůrcem Gaëlem Duvalem Linux-Mandrake a od verze 8.1 do 9.2 Mandrake Linux. V únoru 2004 ale francouzská společnost MandrakeSoft prohrála soudní při s Hearst Corporation, jež vlastní práva ke obchodní značce "Mandrake the Magician". Jméno tak bylo změněno na současné Mandrakelinux. Co ale znamená slovo "mandrake"? Lidově se tak označuje rostlina mandragora (Mandragora officinarum, L.) známá pro své kořeny podobné lidské postavičce, pročež se věří, že má magické a afrodiziakální účinky, a tak ji mnozí kouzelníci a čarodějnice mají vždy na svém inventáři. Asi i z toho důvodu má Mandrakelinux ve svém znaku pěknou čarodějnou hvězdičku. Software Mozilla Ještě za časných dob společnosti Netscape přezdívali vývojáři její vlajkové lodi, Netscape Navigatoru, Mozilla jako Mosaic killer (Zabiják Mosaicu). Mosaic byl tehdy nejrozšířenějším webovým prohlížečem a Netscape si brousil zuby, že ho sesadí z jeho pomyslného trůnu, což se mu také podařilo. Jelikož si někteří lidé všimli, že jméno Mozilla vypadá, jakoby mělo spojitost s filmovou Godzillou, obřím tyranosaurem, který řádil v New Yorku, získal za nějakou dobu Netscape Navigator svého maskota - zeleného draka (nebo že by dinosaura?), jenž se jmenoval právě Mozilla. Poté, co společnost Netscape v roce 1998 uvolnila zdrojové kódy svého balíku Netscape Communicator, původními programátory nově utvořená Mozilla Organization zastřešila vývoj prohlížeče Mozilla, který sice zdědil mnoho po Netscapu (mimo jiné i základ jádra Gecko a část filozofie), ale kód byl následně totálně překopán (i maskot změnil barvu na červenou - a tentokrát je to určitě dinosaurus). Dnes už není Mozilla nemotorným molochem, ale multiplatformní internetovou platformou a referenční implementací mnoha webových standardů. Na závěr ještě zmíním jeden utajený význam, který objevil Michael Polák (xChaos) z Arachne Labs: O "Sýrové obludě" tvrdí, že "jméno Mozilla nemohlo vzniknout jinak, než spojením slov Mozarella a Godzilla!" Firefox Roku 2002 založili dva mozillí vývojáři pokusnou větev "mozilla/browser", téhož roku vydanou pod názvem Phoenix. Dali si za cíl vytvořit malý, rychlý a jednoduchý prohlížeč, protože Mozilla Navigator byl přespříliš naducaný. Phoenix - fénix, pták, jenž vstal z popela umírajícího Netscapu. Ale už v dubnu 2003 museli Phoenix přejmenovat (obchodní značku Phoenix má výrobce BIOSů). Nové jméno Firebird (pták ohnivák) byl krok z bláta do louže - existuje totiž open-source databázový server se stejným jménem (založený na InterBase). Aby se oba produkty odlišily, vydali vývojáři prohlášení, že prohlížeč se ve skutečnosti jmenuje Mozilla Firebird, a stejně je to jenom kódové, nikoliv oficiální, označení. Pro ujasnění názvů byl v březnu 2004 projekt raději přejmenován podle pandy červené na Mozilla Firefox (ale přesto má ve znaku ohnivou lišku). Kvůli nespokojenosti s mnohým přejmenováním a také jako parodie vznikl dokonce plug-in Firesomething, jenž náhodně generuje titulek prohlížeče i dialog "O programu". Na podzim 2004 je plánovaná přelomová verze 1.0 a až bude prohlížeč dostatečně připraven, stane se součástí nového balíku Mozilla. Thunderbird Jméno mailového klienta Mozilla Thunderbird (původně Minotaur), jež se mělo podobat jeho kolegovi Firebirdovi (nyní Firefox), pochází z mýtů severoamerických indiánů. Podle některých šlo o druh, podle jiných o jedince, jenž přebýval na vrcholcích vysokých hor, sloužil Velkému Duchu jako posel zpráv (tedy mailový klient). Všichni se ale shodovali, že tento pták byl obrovský (to dnes už není pravda - nějakých 6 MB není zas tak moc) a inteligentní (umí skvěle filtrovat spam). Při letu jeho mocně mávající křídla tvořila burácející vítr, blesky měly být pak odlesky slunce v jeho očích. Sunbird Jménem "sunbird" se označují v angličtině ptáci ze skupiny zvané strdimilové (pijí nektar a vypadají jako kolibříci) a jelikož Mozilla zavedla ve svých produktech určitou ptákománii (Firebird, Thunderbird), jmenuje se i kalendář - třetí kolega do party, která utvoří nový balík Mozilla - právě Sunbird. A bude mít opravdu krásné logo. Krusader Dvoupanelový správce souborů Krusader z balíku KDE se může se svou funkčností srovnávat s Midnight Commanderem či Total Commanderem. Jak správně upozorňuje Marek Turnovec (MaT) v diskusi k minulému dílu - cituji: Krusader - anglicky Crusader je dobyvatel, křižák. V KDE musí mít každý program na začátku K. Tak je to snad celkem jasné. Můžete s ním křížem krážem prolézat disk... Vyčerpávající, co víc dodat? Samba Samba získala své jméno přidáním dvou hlásek do zkratky microsoftího protokolu SMB (Server Message Block), který implementuje. Původně byla nazvána "smbserver", ale toto jméno již měl někdo registrované jako ochrannou značku. Protokol SMB byl původně vyvinut společností IBM, ale Microsoft ho později hojně využíval (a dodnes využívá), rozšířil a v roce 1998 přejmenoval na CIFS (Common Internet FileSystem). Samba je rovněž oblíbeným jihoamerickým tancem. Co ale není obecně známo, je fakt, že slovo samba pochází z Angoly (odkud se dostalo přes americké otroky až do Brazílie). V místním jazyce Kimbundu znamená slovo "semba" uvítací tanec, při němž do sebe lidé narážejí svými pupíky. No prostě Tanec s Okny. Mutt Mailový klient Mutt je v překladu z angličtiny "voříšek" čili psí kříženec (ale také zabedněnec, moula). Možná je na tom kříženci něco pravdy: podobně jako program Pine (Program for Internet News and Email, nebo Pine Is Not Elm) i Mutt totiž původně vycházel z programu Elm ... a má ve znaku voříška. Biff Příkaz pro upozornění na příchod mailu získal své jméno úplně prozaicky. Příběh praví, že v dobách vývoje BSD 4.2 na univerzitě v Berkeley měli přítulného zlatého labradora jménem Biff, který si rád hrál, chytal házecí talíře (frisbee) a nosil je zpátky a hlavně štěkal vždy, když přišel pošťák. Prý patřil Heidi Stettner a zemřel 15. sprna 1993. Závěr Velice vám děkuji za přízeň a mnoho námětů - vypadá to, že napíšu ještě jeden nebo víc dílů. Ale koření nesmí být příliš, jinak by jídlo nechutnalo. Příští dezert si tedy dáme až po nějakém seriozním jídle. ******************************* Sériová komunikace pod Linuxem Jan Martinek Zajímá vás jak komunikovat přes sériový port? Ptáte se, co to je? Myslíte si, že zmizel v hlubinách času? Ne tak docela... Sériový port (neboli rozhraní RS-232) je jednoduchá univerzální sběrnice určená pro komunikaci mezi dvěma zařízeními, z nichž jedno je ve většině případů počítač. Mohlo by se zdát zpátečnické zabývat se sériovým portem v dnešní době, která je poznamenána bouřlivým rozmachem USB, ale sériový port ještě dlouhou dobu zůstane používaným standardem zejména pro svou rozšířenost a jednoduchost. A právě tato jednoduchost je důvodem, proč různá amatérská elektronická udělátka bývají navržena pro připojení k sériovému portu a proč je mnoho jednočipových mikropočítačů vybaveno rozhraním RS232. Obvyklý způsob použití sériového portu je čtení a zápis dat, přičemž nejmenší datovou jednotkou je jeden znak, který představuje nejčastěji osm bitů. Ne však vždy. Nešťastný historický vývoj obdařil sériový port schopností přenášet pět, šest, či sedm bitů v jednom znaku. Jakýkoli jiný počet než osm je ovšem pouze pro zlost. Proto aby se člověk divil, že přenos binárních dat nefunguje správně. Říká se, že v *NIXech je všechno soubor - a platí to i o sériovém portu. Tím souborem je /dev/ttyS0, což představuje první sériový port, který zcela určitě ve svém počítači máte. Druhým sériovým portem je /dev/ttyS1, který už takovou samozřejmostí být nemusí (např. u laptopů nebo některých motherboardů). Chcete-li něco poslat do sériového portu, napište echo Hello world! > /dev/ttyS0 Nemáte-li právo zápisu do /dev/ttyS0 (obvykle to smí pouze root), dostanete nejspíš hlášku "Permission denied". Zkoušet tyhle věci jako root je poněkud nerozumné, takže pro začátek bude lepší změnit práva pomocí chmod a+rw /dev/ttyS0 To sice není o mnoho rozumnější, ale bezpečnost ponechme stranou. Nyní se tedy řetězec "Hello world!" bez reptání spláchne kamsi do útrob sériového portu. Kdyby na port bylo připojeno nějaké zařízení, mohlo by si tento řetězec přečíst. A dost možná, že by i odpovědělo. Odpověď by bylo možné přečíst pomocí cat /dev/ttyS0 Jestliže nemáte připojené žádné zařízení, příkaz zůstane viset, protože nejsou k dispozici žádná data. Pokud zrovna nemáte po ruce zařízení, které komunikuje se sériovým portem, nevadí, lze jej snadno zhotovit svépomocí. Potřebujete k tomu pouze kousek alobalu od svačiny. Ten postačí k tomu, abyste v konektoru sériového portu propojili vývod pro vysílání (TxD) s vývodem pro příjem (RxD). Konektor má buď 9 nebo 25 vývodů. Ať už máte kterékoli provedení, jedná se o vývody (piny) číslo 2 a 3. Jednotlivé piny jsou označeny drobnými, takřka nečitelnými číslicemi vyraženými v umělé hmotě konektoru. Situaci v případě devítipinového konektoru ilustrují následující obrázky (fotografie se po kliknutí zvětší): Číslování a význam pinů konektoru RS-232 Obrázek Fotografie konektoru RS-232 Obrázek Konektor RS-232 s propojeným 2. a 3. pinem Obrázek Jsou-li vývody 2 a 3 navzájem propojené, pak cokoli, co vyšleme, bude opět beze změny přijato. Toto lze snadno ověřit tím, že se v jednom terminálu spustí příkaz pro čtení (cat /dev/ttyS0) a následně ve druhém příkaz pro zápis (echo Hello world! > /dev/ttyS0). Jestliže to nedělá vůbec nic, byl to asi ten druhý port a místo /dev/ttyS0 patří /dev/ttyS1. Výsledek však může být poněkud nečekaný. Počáteční nastavení parametrů sériového portu nemusí být totiž pro tyto pokusy zcela vhodné, a tak kupříkladu s mým jádrem a distribucí Linuxu začne příkaz cat /dev/ttyS0 vypisovat řetezec Hello world! stále dokola, přestože do portu již žádná data neposílám. Způsobuje to parametr echo, ale o tom se zmíním později. Data tedy tečou z výstupního pinu na vstupní - ale jakou rychlostí? Přenosová rychlost se u sériového portu udává v tzv. baudech (baudrate), což je zhruba řečeno číslo, které říká, kolik bitů se přenese za jednu sekundu. Obvykle nejvyšší rychlost představuje 115200 a další možné rychlosti musí být dělitelem této rychlosti, např. 57600 = 115200/2 nebo 38400 = 115200/3 atd. Rychlost lze nastavit příkazem stty. Například stty -F /dev/ttyS0 14400 Nastaví přenosovou rychlost na 14400 baudů. Příkazem stty lze také zjistit takřka veškerá nastavení portu. stty -aF /dev/ttyS0 vypíše děsivé množství nepřehledných informací, zde je ukázka: speed 14400 baud; rows 0; columns 0; line = 0; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = ; eol2 = ; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0; -parenb -parodd cs8 hupcl -cstopb cread clocal -crtscts -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke Hned první údaj představuje přenosovou rychlost. Další informace z výpisu jsou vysvětleny v manuálové stránce příkazu stty. Parametry umožňují nastavit sériovému portu zcela nečekané chování, které mělo svůj význam v zaprášených dobách terminálů ovládaných po sériové lince. Bude nejlepší tyto vymoženosti vypnout či zakázat. Nechci zde rozebírat význam jednotlivých položek a také nezastírám, že mi mnohdy uniká. Pouze podotýkám, že rozumné nastavení sériového portu získáte příkazem stty -F /dev/ttyS0 clocal cread -crtscts cs8 -cstopb hup -parenb parodd -brkint -icrnl ignbrk -igncr ignpar imaxbel -inlcr inpck -istrip -iuclc -ixany ixoff -ixon bs0 cr0 ff0 nl0 -ocrnl -ofdel -ofill -olcuc -onlcr -onlret onocr -opost tab0 vt0 -crterase crtkill -ctlecho -echo -echok -echonl -echoprt -icanon -iexten -isig -noflsh -tostop -xcase time 5 min 1 Příkaz stty umožňuje díky parametru -g vypsat nastavení v hexadecimální podobě, které je sice člověkem nečitelné, zato stty umí tento formát nastavení načíst zpátky. Tím je možno zazálohovat aktuální nastavení. Uvedu příklad. Pokud příkaz stty -gF /dev/ttyS0 vypíše 500:5:cad:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:\\ 0:0:0:0:0:0:0:0:0:0:0:0:0 Je možné si toto nastavení kdykoli obnovit příkazem stty -F /dev/ttyS0 500:5:cad:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:\\ 16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 Jednotlivé parametry jsou několikerého typu. Nejčastěji mají možnost zapnuto/vypnuto, a pak, jestliže je nějaký parametr vypsán či zadán s předcházejícím mínusem (pomlčkou), je daná volba vypnuta. Konkrétní použití uvedu na příkladu nastavení paritního bitu. Příkaz stty -F /dev/ttyS0 parenb parodd zapne kontrolu parity (parenb = parity enable) a nastaví ji na lichou (parodd = parity odd). Sudou paritu (parity even) lze nastavit vypnutím liché parity, tedy příkazem stty -F /dev/ttyS0 parenb -parodd Pozor - existuje sice parametr evenp pro nastavení liché parity, ale ten radím nepoužívat - je to jen alias a navíc mění počet bitů v jednom znaku. Sudost či lichost ovládejte vždy pomocí parodd. Úplné vypnutí paritního bitu (parity none) se provede následovně: stty -F /dev/ttyS0 -parenb V tomto případě může být nastavení parodd jakékoli, protože se ignoruje. Pro úplnost uvádím, že parita se používá jako způsob detekce chyb v přenosu. Dalším často zmiňovaným komunikačním parametrem je počet tzv. stopbitů. Bývá buď jeden, nebo dva. Přednastaveny jsou dva, ale volba cstopb (clear stop bit) umí jeden bit vypnout, takže zůstane jeden. Tedy stty -F /dev/ttyS0 cstopb nastaví počet stopbitů na jeden, zatímco stty -F /dev/ttyS0 -cstopb nastaví počet stopbitů na dva. Kromě parametrů, které mají možnost zapnuto/vypnuto, rozeznává příkaz stty ještě parametry s argumentem. Například počet bitů v jednom znaku se nastavuje volbou csn, kde n je počet bitů. Opět uvedu příklad: stty -F /dev/ttyS0 cs8 cs8 nastaví počet bitů na osm. Jestliže najdete na smetišti nějaké pošetilé zařízení, které vyžaduje sedm bitů, lze sériový port přinutit i k tomuto poklesku: stty -F /dev/ttyS0 cs7 ale raději to rychle vraťte zpátky na osm. Dovolil bych si malé srovnání příkazu stty a jeho oškubaného dosovského protějšku MODE při nastavování parametrů sériového portu. Řekněme, že chceme nastavit baudrate = 9600, osm bitů na znak, sudá parita, jeden stop bit. Příkazem MODE v DOSu toho docílíme takto: MODE COM1 9600,8,E,1 Totéž pomocí stty: stty -F /dev/ttyS0 cs8 parenb -parodd cstopb 9600 přičemž k dispozici je celá škála dalších parametrů pro řízení toku dat, zacházení s chybami, timeouty, řídicí sekvence atd. Nebývá jednoduché najít chybu v komunikaci, když sériový port (či spíše jeho driver) ze své vlastní iniciativy mění některé bajty, některé ignoruje a některé zopakuje vícekrát. Celkem častá je situace, kdy chceme, aby sériový port vyslal přesně to, co zapíšeme do /dev/ttyS0 a naopak z /dev/ttyS0 přečteme přesně to, co přišlo po drátech do portu. Mám tedy na mysli nastavení vhodné pro binární přenos. V tomto případě můžeme provést následující test: pošleme do /dev/ttyS0 posloupnost všech 256 možných bajtů a měli bychom dostat zpátky totéž. Pro tento účel přikládám ke stažení soubor bytes_00-FF.bin, který obsahuje bajty 0 až 255. Příkazem xxd bytes_00-FF.bin se můžete přesvědčit, co v souboru je: 0000000: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f ................ 0000010: 1011 1213 1415 1617 1819 1a1b 1c1d 1e1f ................ 0000020: 2021 2223 2425 2627 2829 2a2b 2c2d 2e2f !"#$%&'()*+,-./ 0000030: 3031 3233 3435 3637 3839 3a3b 3c3d 3e3f 0123456789:;<=>? 0000040: 4041 4243 4445 4647 4849 4a4b 4c4d 4e4f @ABCDEFGHIJKLMNO 0000050: 5051 5253 5455 5657 5859 5a5b 5c5d 5e5f PQRSTUVWXYZ[\]^_ 0000060: 6061 6263 6465 6667 6869 6a6b 6c6d 6e6f `abcdefghijklmno 0000070: 7071 7273 7475 7677 7879 7a7b 7c7d 7e7f pqrstuvwxyz{|}~. 0000080: 8081 8283 8485 8687 8889 8a8b 8c8d 8e8f ................ 0000090: 9091 9293 9495 9697 9899 9a9b 9c9d 9e9f ................ 00000a0: a0a1 a2a3 a4a5 a6a7 a8a9 aaab acad aeaf ................ 00000b0: b0b1 b2b3 b4b5 b6b7 b8b9 babb bcbd bebf ................ 00000c0: c0c1 c2c3 c4c5 c6c7 c8c9 cacb cccd cecf ................ 00000d0: d0d1 d2d3 d4d5 d6d7 d8d9 dadb dcdd dedf ................ 00000e0: e0e1 e2e3 e4e5 e6e7 e8e9 eaeb eced eeef ................ 00000f0: f0f1 f2f3 f4f5 f6f7 f8f9 fafb fcfd feff ................ V jednom terminálu pusťte cat /dev/ttyS0 | xxd a v jiném cat bytes_00-FF.bin > /dev/ttyS0 Výsledkem by mělo být cat /dev/ttyS0 | xxd 0000000: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f ................ 0000010: 1011 1213 1415 1617 1819 1a1b 1c1d 1e1f ................ 0000020: 2021 2223 2425 2627 2829 2a2b 2c2d 2e2f !"#$%&'()*+,-./ 0000030: 3031 3233 3435 3637 3839 3a3b 3c3d 3e3f 0123456789:;<=>? 0000040: 4041 4243 4445 4647 4849 4a4b 4c4d 4e4f @ABCDEFGHIJKLMNO 0000050: 5051 5253 5455 5657 5859 5a5b 5c5d 5e5f PQRSTUVWXYZ[\]^_ 0000060: 6061 6263 6465 6667 6869 6a6b 6c6d 6e6f `abcdefghijklmno 0000070: 7071 7273 7475 7677 7879 7a7b 7c7d 7e7f pqrstuvwxyz{|}~. 0000080: 8081 8283 8485 8687 8889 8a8b 8c8d 8e8f ................ 0000090: 9091 9293 9495 9697 9899 9a9b 9c9d 9e9f ................ 00000a0: a0a1 a2a3 a4a5 a6a7 a8a9 aaab acad aeaf ................ 00000b0: b0b1 b2b3 b4b5 b6b7 b8b9 babb bcbd bebf ................ 00000c0: c0c1 c2c3 c4c5 c6c7 c8c9 cacb cccd cecf ................ 00000d0: d0d1 d2d3 d4d5 d6d7 d8d9 dadb dcdd dedf ................ 00000e0: e0e1 e2e3 e4e5 e6e7 e8e9 eaeb eced eeef ................ 00000f0: f0f1 f2f3 f4f5 f6f7 f8f9 fafb fcfd feff ................ Připomínám, že piny 2 a 3 musí být navzájem propojené. Dostanete-li jiný výsledek, neznamená to, že je něco špatně. Vše závisí na způsobu použití. Kupříkladu volba stty -F /dev/ttyS0 igncr způsobí, že se všechny bajty přenesou beze změny, kromě bajtu s hodnotou 0x0d = 13 a dostaneme tedy 0000000: 0001 0203 0405 0607 0809 0a0b 0c0e 0f10 ................ 0000010: 1112 1314 1516 1718 191a 1b1c 1d1e 1f20 ............... 0000020: 2122 2324 2526 2728 292a 2b2c 2d2e 2f30 !"#$%&'()*+,-./0 0000030: 3132 3334 3536 3738 393a 3b3c 3d3e 3f40 123456789:;<=>?@ 0000040: 4142 4344 4546 4748 494a 4b4c 4d4e 4f50 ABCDEFGHIJKLMNOP 0000050: 5152 5354 5556 5758 595a 5b5c 5d5e 5f60 QRSTUVWXYZ[\]^_` 0000060: 6162 6364 6566 6768 696a 6b6c 6d6e 6f70 abcdefghijklmnop 0000070: 7172 7374 7576 7778 797a 7b7c 7d7e 7f80 qrstuvwxyz{|}~.. 0000080: 8182 8384 8586 8788 898a 8b8c 8d8e 8f90 ................ 0000090: 9192 9394 9596 9798 999a 9b9c 9d9e 9fa0 ................ 00000a0: a1a2 a3a4 a5a6 a7a8 a9aa abac adae afb0 ................ 00000b0: b1b2 b3b4 b5b6 b7b8 b9ba bbbc bdbe bfc0 ................ 00000c0: c1c2 c3c4 c5c6 c7c8 c9ca cbcc cdce cfd0 ................ 00000d0: d1d2 d3d4 d5d6 d7d8 d9da dbdc ddde dfe0 ................ 00000e0: e1e2 e3e4 e5e6 e7e8 e9ea ebec edee eff0 ................ Všimněte si, že bajt 0x0d chybí. Měl by být hned v prvním řádku. Uvádím to pouze pro demonstraci zdánlivě podivného chování, které někdy může být i žádoucí. Prostřednictvím sériové linky je možné poslat a přijmout znak (bajt) a pro každý směr přenosu je určen jeden vodič. K obousměrné komunikaci tedy stačí tři dráty - vysílání (TxD), příjem (RxD) a uzemnění (GND). K reálné komunikaci to však úplně dostačovat nemusí, protože při odesílání není jistota, že je cílové zařízení na příjmu a vyslaný znak je schopno zpracovat. V této souvislosti vznikl mechanismus řízení toku dat, který popisuje, kdy je možné znak vyslat. Někdy se používá tzv. softwarové řízení (označované jako XON/XOFF), u kterého jsou určité znaky či sekvence rezervovány pro řízení toku dat. Z toho ovšem vyplývá, že pro binární přenos je tento způsob nepoužitelný, protože se zde může náhodně vyskytnout sekvence, která by byla nesprávně interpretována. Tuto limitaci lze sice obejít na aplikační úrovni, ale to už je složitější. Vznikl proto jiný způsob - hardwarový, označovaný jako RTSCTS nebo CTSRTS. Myšlenka spočívá v tom, že se k sériovému portu přidá další vodič, který bude mít logickou úroveň jedna, nebo nula podle toho, je-li cílové zařízení momentálně schopno přijmout znak. K přenosu této informace musí mít ono zařízení výstupní pin, který je označen jako RTS (Ready To Send). Tento pin musí být propojen s vysílací stranou, která je vybavena vstupním pinem CTS (Clear To Send). Vysílací strana tedy vysílá pouze tehdy, je-li CTS nastaveno na logickou 1. Stavové linky Piny RTS a CTS patří mezi tzv. stavové linky (modem status lines), což jsou vstupní nebo výstupní vývody, které lze použít pro různé účely. Podstatné však je uvědomit si, které jsou vstupní a které výstupní. Výstupní jsou pouze dvě, a to: * DTR (Data Terminal Ready), pin 4 * RTS (Ready To Send), pin 7 Zbývající jsou vstupní. Těmi jsou * DCD (Data Carrier Detect), pin 1 * DSR (Data Set Ready), pin 6 * CTS (Clear To Send), pin 8 * RI (Ring Indicator), pin 9 Výstupní linky jsou po zapnutí počítače nastaveny na úroveň nula, což odpovídá napětí obvykle kolem -12V, ale u notebooků to může být v absolutní hodnotě poněkud nižší. Linky RTS a DTR (nebo jen jednu z nich) lze použít pro napájení nějakých zařízení připojených na sériový port, jako jsou myši, přijímače dálkového ovládání (viz http://lirc.org), jednočipové mikropočítače, teploměry a podobně. V elektronice však bývá zvykem, že napájecí napětí je kladné vůči zemi, a tak je pro aktivaci těchto zařízení potřeba poslat na RTS či DTR logickou 1, a tím se napětí změní na +12V. Při návrhu a konstrukci zařízení napájených ze sériového portu je třeba mít na paměti, že úroveň linek může být různá a zařízení se nesmí zničit při přepólování. Zde je nakresleno typické schéma jak získat stabilizovaný zdroj 5V pro napájení elektronických zařízení. Jak je uvedeno v dokumentaci, stabilizátor 78L05 vyžaduje na vstupu napětí 7 až 30 voltů. U notebooků však spodní napěťová hranice nemusí být zaručena. Voltmetr na fotografii ukazuje pouhých 6.69 V, a to naprázdno, kdy port není zatížený odběrem proudu. Podrobnější informace jak využít sériový port k napájení najdete v tomto článku. Vstupní linky mají logickou úroveň nula, jestliže na ně není nic připojeno. Zkusme tedy propojit nějakou výstupní linku s nějakou vstupní. Opět může posloužit kousek alobalu. Celkem pohodlně to půjde u pinů 6 a 7, tedy DSR a RTS. Linka RTS je však na logické nule, a tudíž i DSR, takže se vůbec nic nestalo. Stav linek je možné číst příkazem cat /proc/tty/driver/serial což vypíše serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:34 rx:0 1: uart:16550A port:000002F8 irq:3 tx:3 rx:0 2: uart:unknown port:000003E8 irq:4 3: uart:unknown port:000002E8 irq:3 4: uart:unknown port:00000000 irq:0 5: uart:unknown port:00000000 irq:0 6: uart:unknown port:00000000 irq:0 7: uart:unknown port:00000000 irq:0 Nikde žádná zmínka o stavové lince, z toho vyplývá, že jsou všechny na nule. Chtělo by to změnit stav linky RTS na logickou jedničku. To je jednoduché, protože stačí sériový port otevřít pro čtení, zápis nebo oboje. Pustíme-li příkaz cat /dev/ttyS0 Nastaví se RTS a DTR na jedničku. Nyní by měl příkaz cat /proc/tty/driver/serial vypsat, že linky RTS i DTR jsou na jedničce, ale zároveň i linka DSR je na logické 1, protože je propojena s RTS: serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:3027 rx:3014 RTS|DTR|DSR 1: uart:16550A port:000002F8 irq:3 tx:3 rx:0 2: uart:unknown port:000003E8 irq:4 3: uart:unknown port:000002E8 irq:3 4: uart:unknown port:00000000 irq:0 5: uart:unknown port:00000000 irq:0 6: uart:unknown port:00000000 irq:0 7: uart:unknown port:00000000 irq:0 Odstraníme-li alobalovou propojku, zmizí i příznak DSR. Za zmínku stojí i program statserial, který se každou sekundu "dívá" na stav linek a přehledně je zobrazuje: Device: /dev/ttyS0 Signal Pin Pin Direction Status Full Name (25) (9) (computer) Name ----- --- --- --------- ------ ----- FG 1 - - - Frame Ground TxD 2 3 out - Transmit Data RxD 3 2 in - Receive Data RTS 4 7 out 1 Request To Send CTS 5 8 in 0 Clear To Send DSR 6 6 in 1 Data Set Ready GND 7 5 - - Signal Ground DCD 8 1 in 0 Data Carrier Detect DTR 20 4 out 1 Data Terminal Ready RI 22 9 in 0 Ring Indicator Všimněte si, že RTS a DTR jsou zapnuté. Je to pochopitelné, protože i program statserial musí zařízení otevřít, a tím tyto linky aktivuje. Multiportové řadiče V případě nedostatku sériových portů lze použít některý z multiportových řadičů a získat tím další dva nebo i více portů. Pod linuxem bez problémů fungují karty založené na čipu Netmos 9835, například řadič Kouwell 222N-2. Jeho cena se v současné době pohybuje kolem 450 Kč. Obsahuje dva sériové porty a jeden paralelní. V linuxu jsou tyto další porty přístupné přes /dev/ttyS4 a /dev/ttyS5. Přídavná karta však může mít také ochranný význam. Dojde-li nějakou nešťastnou náhodou k tomu, že se do portu dostane výrazně vyšší napětí, než na jaké je stavěný, shoří při troše štěstí pouze přídavná karta a základní deska může být ušetřena. Následující fotografie dokládá, co se stane, když se připojí do sériového portu fáze, tj. napětí 220V proti zemi. V tomto případě zůstala základní deska i nadále funkční. Řadič na sériové porty je však pochopitelně zničen. Zdůrazňuji, že přídavné sériové porty nejsou v žádném případě ochranným prvkem v pravém slova smyslu, neobsahují ochranu proti přepětí ani galvanické oddělení. Na závěr bych rád podotkl, že sériový port i přes své stáří a jednoduchost umožňuje řadu kouzel, které by bez něj byly velmi komplikované. A proto doufejme, že jej USB vytlačí co možná nejpozději. ******************************* VMWARE - recenze knihy Vlastimil Ott Recenze knihy VMWARE - Provozujeme více operačních systémů na jednom počítači. Recenzovaná kniha vyšla nedávno v nakladatelství Computer Press. Součástí knihy je i cd se zkušební verzí a návodem jak postupovat při koupi plné verze. VMWARE je virtuální stroj, o jehož principech a použití se více dočtete v tomto článku. Já se budu věnovat pouze knize, se kterou jsem si nevěděl rady. Až po určité chvíli jsem si všiml, že na obálce je uvedeno úplně jiné jméno autora, než uvádějí internetové stránky CPressu. Mno, stane se. Co mi ale vadí, je překlad z angličtiny, se kterým si překladatel dal pouze tolik práce, kolik musel. V textu sice nejsou gramatické chyby, ale věta "Na rozdíl od sériových portů, přenášejících data bit po bitu, paralelní porty přenáší 8 bitů najednou." mně není dostatečně česká. Uvedu proč: * Jedná se o větu jednoduchou, protože obsahuje pouze jeden určitý slovesný tvar. Z toho vyplývá, že počet čárek je jaksi nadbytečný. Ptáte se, proč nemohou být čárky tam, kde jsou? * Čárky by byly na místě, pokud by existovaly 'jiné', ale stejně běžné, sériové porty, které by nepřenášely data bit po bitu. Čárka je totiž v tomto případě vymezující - vymezuje z množiny podmnožinu, která má jiné kvality. To není tento případ. * Správný tvar 3. os. č. mn. slovesa 'přenášet' zní 'přenášejí' podle 'sázet'. Ano, tvar v knize je považován za správný (podle Pravidel českého pravopisu), ale ne za reprezentativní. * Slovosled by podle mého měl znít '...přenášejí paralelní porty...'. * Číslovky v řádu jednotek a celé desítky se vyjadřují slovem. Celá věta by měla - podle mě ovšem - pěkně česky znít: "Na rozdíl od sériových portů přenášejících data bit po bitu přenášejí paralelní porty osm bitů najednou.". Takhle se mi to jeví jako klopotný překlad normální anglické věty. Bohužel není jediná a bohužel se to týká drtivé většiny takových textů. Asi je to daň za překlad, ale nelíbí se mi to. (Podotýkám, že určitou zkušenost s korekturami překladů mám.) Tolik mé stýskání, je mi jasné, že tohle vnímá menšina čtenářů, kteří knihu nekupují kvůli 'krásné češtině'. Česká odborná terminologie je ale stále bouřlivě se vyvíjející oblast slovní zásoby a stylistiky, všechno lze říct lépe. Z hlediska odborné problematiky se jedná o přítulný manuál. Technická kvalita knihy nevybočuje ze standardu vydavatelství, součástí je jako vždy obsáhlý obsah a rejstřík. Typografická kvalita je také pořád stejná, podle mého výborná. Můžeme se tedy soustředit na obsah. Úvod hovoří o knize samotné (typografické konvence, cílový čtenář) a velice krátce o produktech VMWARE. K úvodu se ještě vrátím. Virtuální stroj VMWARE je druhá kapitola a popisuje, co to vlastně VMWARE je. Je zde vysvětleno, že můžeme fyzické zařízení nastavit ve virtuálním stroji a používat je vlastně úplně stejně. Např. port je ve Windows COM a v Linuxu ttySn. Tímto způsobem, společně s kratičkou historií, je probráno každé zařízení, ať už zvuková karta, řadič nebo myš. Instalace VMWARE WORKSTATION (dále jen VW) se zabývá instalací stroje na hostitelském systému Windows a Linux. V případě Linuxu, který nás zajímá, se jedná o instalaci krok za krokem - to vlastně platí pro celou knihu. Je krátce zmíněna každá utilitka, která se nainstaluje. Nezapomnělo se ani na kompilaci jaderných modulů a jejich instalaci. Dále jsou popsány konfigurační soubory - kde leží a proč tam jsou. Konfigurace a provoz VW je obsáhlá kapitola věnovaná průvodci konfigurací, zapnutí, vypnutí a dalším nastavením VW. Je zde popsáno prostředí konfiguračního editoru, způsob, jakým se pracuje se zařízeními disků atp. Kapitola se takřka stejnou měrou věnuje Windows a Linuxu; snad jen obrázků z Windows je více (možná proto, že je to složitější;-)). V závěru je zmíněn BIOS. Hostující systémy Windows a Hostující systémy Linux jsou další dvě kapitoly. Ta první se věnuje (téměř) všem verzím Windows (vyjma NT jsou to 'malé', míněno desktopové Windows); až na XP. Druhá se zabývá obecnou instalací na Linuxu. A zde spatřuji kámen úrazu. Celou kapitolu jako bych už někde tisíckrát četl. Jedná se prostě o nastavení základních zařízení v Linuxu, počínaje /etc/inittab přes instalaci programu (VMware Tools for Linux), konfiguraci XFree ve verzích 3.x a 4.x až po vysvětlení, co je to zařízení v Linuxu (a všechny možné příklady), jaderné moduly a bootování. Prostě instantní návod na Linux pro zelenáče. Kladu si stále otázky: Copak tohle potencionální uživatel VW neví?! Copak to nenajde jinde? Proč je tady vysvětlována struktura souboru /etc/lilo.conf? Těch stránek je něco přes třicet, a připadnou mi jako vata. Vazba na VW tam chybí - kromě toho, že se stále píše o tom, jak je správné nastavení pro VW důležité. Jsou i jiné systémy, třeba Hostující systémy FreeBSD a Další hostující systémy. Dvě kapitoly (celkem přes třicet stran) o rodině *BSD systémů, Novell NetWare, Solaris, FreeDOS, Oberon. Konfigurace sítě v hostujícím a hostitelském systému je opět variace na prezentační téma (tzn. dobře se to prezentuje v obsahu). Nicméně obsah už je lepší a opravdu se 'na střídačku' zabývá konfigurací všech možných typů síťového propojení ve všech dosud zmíněných systémech. Navazuje hutná a poctivá kapitola Síťové služby o komunikaci všech systémů mezi sebou. Základem je Samba, dále něco o síťovém tisku (o CUPS ani zmínka!) a SSH. Kapitola Přenos dat bez využití sítě je asi z úplně jiné knížky. Hemží se to výrazy jako 'obrazy disket' a 'Podpora jádra pro zařízení zpětné smyčky'. Prostě bonus, o VW ani slovo. Naopak kapitolu Řešení problémů je praktická, zabývá se opravdu vážnými problémy a jejich řešením. Styl je otázka - odpověď, problémy jsou děleny podle tematiky, podle systémů. Další 'třešničkou' jsou Režimy zobrazení v systému Linux. Opět úlomkovité výtahy z konfiguračního souboru XFree, které v praxi asi příliš neposlouží. Poslední je krátký návod jak přejít z nižší verze VW (zejména aktualizace zařízení). Moje hloupost, že jsem čekal jinou knihu. Naivně jsem podle názvu odhadoval, že se dozvím, jak takový stroj funguje, že se dozvím něco víc, než jak mám nastavit XFree. Takhle se jedná o nepříliš konzistentní a nepříliš vyvážený manuál, který ale uživateli, jenž VW nasadí naostro, dobře poslouží. Forma je věcná, suchopárná, nikde žádný vtípek, nikde žádný od srdce míněný tip. Prostě manuál. | Název VMWARE - Provozujeme více operačních systémů na jednom počítači | Autor Brian Ward | Vydal Computer Press a.s. | ISBN 80-251-0129-0 | Datum vydání 2004 | Počet stran 268 černobílých + CD-ROM ******************************* IPSec v kernelu 2.6 Marek Cervenka Nový seriál, jenž vám předvede principy šifrované komunikace na bázi IPSec a naučí vás jeho základům pod Linuxem. Úvodem Cílem tohoto článku je zasvětit běžného administrátora do možností, které nabízí kernel 2.6 v oblasti tvorby VPN. Zaměříme se na protokol IPSec, který je silnější a bezpečnější alternativou k protokolu pptp (www.poptop.org) a také umožňuje použít nativního klienta Windows XP/2000 pro přístup do intranetu. Předpokládají se běžné znalosti z oblasti linuxu a síťování. Naopak neočekávejte vysoce sofistikované popisy protokolu, rozebírání jednotlivých hashovacích a šifrovacích algoritmů apod. Článek ani není koncipován jako detailní porovnání s ostatními IPSec implementacemi. Pro budování šifrovaných tunelů máme i další možnosti. Od CIPE, OpenVPN až po nějaké ssh tunelování. PPTP Kromě toho, že pptp je v oblasti šifrování slabší a méně bezpečné než IPSec, existuje také patentový problém, který nedovolí začlenit pptp přímo do distribucí. Kompresní protokol MPPC (Microsoft Point-to-Point Compression) je patentován firmou Hifn Inc.. Protokol MPPE(Microsoft Point-to-Point Encryption) používá algoritmus RC4, který sice není patentovaný, ale je obchodní značkou firmy RSA Data Security Inc. IPSec Původní návrh IP protokolu neobsahoval žádné bezpečnostní prvky. Nový návrh IPv6 obsahuje zabezpečení jako součást protokolu. Pro toto zabezpečení se vžil název IPSec (IP Security). IPSec je dostupný i pro protokol IPv4. IPSec obsahuje 2 základní služby: * AH (Authentication Header) - autentizace hlaviček paketů * ESP (Encapsulating Security Payload) - šifrování přičemž nemusíme nutně používat obě (ESP navíc dokáže zastat i funkce AH). IPSec můžeme používat ve 2 režimech: * transport (host - host) * tunnel (lan - host - host - lan) Dalším pojmem, se kterým se u IPSec setkáme, je SAD (Security Association Database). SA nám vznikne ustanovením spojení a jsou v ní obsaženy veškeré informace o spojení (bezpečnostní protokol, šifrovací algoritmus, countery, atd.). SA jsou identifikovány pomocí SPI (Security Parametr Index), ten je obsažen v každém z paketů. SPD (Security Policy Database) obsahuje pravidla, podle kterých se buď na pakety IPSec aplikuje, nebo jsou pakety zahazovány, nebo propouštěny. Protože manuální správa SAD by byla ve větších sítích velmi problematická, byl navržen protokol, který se snaží tento problém eliminovat. ISAKMP (Internet Security Association and Key Management Protocol) je popsán v RFC2408. Zjednodušeně můžeme říci, že obě strany se snaží dohodnout na stejných parametrech spojení (tzv. proposal). Iniciátor pošle sadu navrhovaných parametrů a responder si z nich vybere tu, která vyhovuje jeho konfiguraci. Pokud se obě strany neshodnou, spojení není možné navázat. ISAKMP komunikace probíhá na UDP portu 500, ten je třeba mít povolený ve firewallu. Ustanovení IPSec spojení je dvoufázové. V první fázi (Phase 1) se vytvoří základní ISAKMP SA, která se dále používá pro druhou fázi (Phase 2) a ustanovení dalších SA pro ESP/AH. Tyto SA jsou zaváděny do kernelu. Průběh komunikace (winXP - Linux[racoon] ) 2004-05-17 18:00:10: INFO: respond new phase 1 negotiation: \\ 192.168.0.226[500]<=>192.168.0.227[500] 2004-05-17 18:00:10: INFO: begin Identity Protection mode. 2004-05-17 18:00:10: INFO: received Vendor ID: MS NT5 ISAKMPOAKLEY 2004-05-17 18:00:10: INFO: ISAKMP-SA established 192.168.0.226[500]-\\ 192.168.0.227[500]spi:dcd3d3d25bc29952:a14e34a6864a095f 2004-05-17 18:00:10: INFO: respond new phase 2 negotiation:\\ 192.168.0.226[0]<=>192.168.0.227[0] 2004-05-17 18:00:11: INFO: IPsec-SA established: ESP/Transport \\ 192.168.0.227->192.168.0.226 spi=174567934(0xa67b1fe) 2004-05-17 18:00:11: INFO: IPsec-SA established: ESP/Transport \\ 192.168.0.226->192.168.0.227 spi=3143250583(0xbb5a3297) O výměnu klíčů v rámci ISAKMP frameworku se stará IKE (Internet Key Exchange) RFC2409. Jedním z kroků při navazování spojení je autentizace. Autentizace může probíhat pomocí: * sdíleného klíče * X.509 certifikátů * kerberosu * plain RSA * ... NAT Problémem ve stávajících IPv4 sítích je pro IPSec NAT. Řešením tohoto problému je návrh draft-ietf-ipsec-nat-t-ike-08.txt. Otázkou kompatibility se zabývá RFC3715. Implementace IPSecu na Linuxu * Openswan (www.openswan.org) (což je fork FreeS/WANu) * port z projektu KAME (ipsec-tools.sf.net) Kernel My se budeme dále zabývat druhou jmenovanou implementací, protože ta je standardně přítomna v kernelu 2.6 a enterprise distributoři provedli její downport i pro kernel řady 2.4 (např. RHEL3). Pokud si kompilujeme vlastní jádro, musíme mít v konfiguraci následující položky: CONFIG_NET_KEY=y CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m CONFIG_XFRM_USER=m CRYPTO=y CRYPTO_HMAC=m CRYPTO_MD5=m CRYPTO_NULL=m CRYPTO_SHA1=m CRYPTO_DES=m CRYPTO_AES=m IPSec-tools Pokud máme připravený kernel, vrhneme se na instalaci ipsec-tools. Pokud máme distribuci SuSE 9.1, Fedora Core 2, Mandrake 10 nebo další aktuální distribuci, jsou tam již ipsec-tools většinou přítomné. IPSec-tools jsou sponzorovány společností SuSE (Novell). Pokud je v distribuci nemáme, stáhneme si je z http://ipsec-tools.sf.net a nainstalujeme standardní trojkombinací: ./configure make make install ipsec-tools obsahují: * racoon - IKE daemon * setkey - nástroj na manipulaci a výpis kernelové SPD a SAD * libipsec - knihovna implementující PF_KEY_V2 socket interface (rfc2367) Ukázka manuální konfigurace transport módu Konečně se dostáváme k něčemu trochu užitečnému, i když ne příliš používanému. Mějme následující topologii: router kryton (192.168.0.226) ---- Internet ---- router lister (192.168.0.227) a chceme mít komunikaci mezi těmito routery šifrovanou. Použijeme manuální konfiguraci pouze s ESP a jako šifrovací algoritmus použijeme 3des. výpis souboru ipsec-kryton.cfg pro router "kryton" #!/sbin/setkey -f flush; spdflush; # ESP SAs using 192 bit long keys (168 + 24 parity) add 192.168.0.226 192.168.0.227 esp 0x201 -E 3des-cbc \\ 0x7aeaca3f87d060a12f4a4487d5a5c3355920fae69a96c831; add 192.168.0.227 192.168.0.226 esp 0x301 -E 3des-cbc \\ 0xf6ddb555acfd9d77b03ea3843f2653255afe8eb5573965df; # Security policies spdadd 192.168.0.226 192.168.0.227 any -P out ipsec esp/transport//require; spdadd 192.168.0.227 192.168.0.226 any -P in ipsec esp/transport//require; Pro router "lister" prohodíme v konfiguračním souboru v sekci "security policies"(prikazy spdadd) ip adresy na řádcích (tzn. tam kde je 192.168.0.226, dáme 192.168.0.227 a naopak) a uložíme jako ipsec-lister.cfg. Na obou routerech potom aktivujeme nastavení pomocí příkazů kryton#setkey -f ipsec-kryton.cfg lister#setkey -f ipsec-lister.cfg SAD a SPD můžeme vypsat pomocí příkazu bash#setkey -D 192.168.0.227 192.168.0.226 esp mode=transport spi=769(0x00000301) reqid=0(0x00000000) E: 3des-cbc f6ddb555 acfd9d77 b03ea384 3f265325 5afe8eb5 573965df seq=0x00000000 replay=0 flags=0x00000000 state=mature created: Jun 1 01:13:14 2004 current: Jun 1 01:13:17 2004 diff: 3(s) hard: 0(s) soft: 0(s) last: hard: 0(s) soft: 0(s) current: 0(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 0 hard: 0 soft: 0 sadb_seq=1 pid=21880 refcnt=0 192.168.0.226 192.168.0.227 esp mode=transport spi=513(0x00000201) reqid=0(0x00000000) E: 3des-cbc 7aeaca3f 87d060a1 2f4a4487 d5a5c335 5920fae6 9a96c831 seq=0x00000000 replay=0 flags=0x00000000 state=mature created: Jun 1 01:13:14 2004 current: Jun 1 01:13:17 2004 diff: 3(s) hard: 0(s) soft: 0(s) last: hard: 0(s) soft: 0(s) current: 0(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 0 hard: 0 soft: 0 sadb_seq=0 pid=21880 refcnt=0 Tady vidíme dvě SA pro router kryton. První SA nám říká, že paket jdoucí z 192.168.0.227 na 192.168.0.226 se SPI=769 je dešifrován tímto klíčem: 0x0xf6ddb555acfd9d77b03ea3843f2653255afe8eb5573965df. Druhé SA nám říká, že paket jdoucí z 192.168.0.226 na 192.168.0.227 se SPI=513 je šifrován tímto klíčem: 0x7aeaca3f87d060a12f4a4487d5a5c3355920fae69a96c831. bash#setkey -DP 192.168.0.227[any] 192.168.0.226[any] any in ipsec esp/transport//require created: Jun 1 01:13:14 2004 lastused: lifetime: 0(s) validtime: 0(s) spid=1856 seq=1 pid=21881 refcnt=1 192.168.0.226[any] 192.168.0.227[any] any out ipsec esp/transport//require created: Jun 1 01:13:14 2004 lastused: lifetime: 0(s) validtime: 0(s) spid=1849 seq=0 pid=21881 refcnt=1 Tyto dvě SP na routeru kryton nastavují policy. První SP nám říká, že pro příchozí pakety jdoucí ze 192.168.0.227 na 192.168.0.226 má aplikovat ESP. U druhé SP je to analogické. Že je provoz šifrovaný se můžeme přesvědčit např. tcpdumpem na rozhraní, kterým pakety odchází do sítě. Jak si můžeme domyslet, nebylo by zrovna ideální udržovat větší počet takovýchto manuálních SA a politik. Ukážeme si konfiguraci pro road warrior scénář. Autentizace bude probíhat sdíleným klíčem a výměna klíču bude realizována pomocí IKE démona racoon. Vzhledem k tomu, že bohužel zatím nejčastějším případem, kdy je někomu umožněn přístup do interní sítě zvenčí, je nějaký pán z vedení, ukážeme si, jak využít integrovaného L2TP/IPSec klienta, který je standardně ve Windows 2000/XP. A když už ten přístup bude hotový, ukážeme si, jak se tam dostane sysadmin z Linuxu. Přehledné porovnání kladů a záporů L2TP/IPSec lze nalézt na http://www.jacco2.dds.nl/networking/freeswan-l2tp.html#ProsCons. K realizaci našeho scénáře potřebujeme nějakou implementaci protokolu L2TP. L2TP Protokol L2TP (Layer Two Tunneling Protocol) je popsán v RFC 2661. L2TP je v podstatě rozšířením protokolu PPP, který umožňuje spojení pouze mezi přístupovým zařízením (NAS) a klientem. L2TP tento problém odbourává a umožňuje, aby koncová zařízení byla kdekoliv v IP síti. V Linuxu je prakticky L2TP používáno tak, že L2TP vrstva se domluví na specifických parametrech protokolu a vlastní spojení už opět realizuje pppd démon. Implementace použitá pro naše testování se nachází na http://www.l2tpd.org. Tamtéž lze nalézt odkazy na další implementace. Implementace l2tpd je kompletně v user-space. Několik pokusů o implementaci v kernelu zůstává na mrtvém bodě. Projekt jako takový také není zrovna příliš ve středu zájmu. Poslední verze 0.69 vyšla někdy v roce 2002. Od té doby se nashromáždilo několik patchů, které jsou třeba pro správnou funkčnost. Patchovaný balíček udržuje Jacco de Leeuw na adrese: http://www.jacco2.dds.nl/networking/freeswan-l2tp.html#L2TPoverview Pro Debian se udržuje balíček na této stránce: http://packages.qa.debian.org/l/l2tpd.html. Tamtéž by měl být zapracovaný patch na poslední bezpečnostní problém (http://www.securityfocus.com/archive/1/365211). Při použití s kernelem 2.6 je třeba mít povolené CONFIG_LEGACY_PTYS=y. Alternativní implementace: http://www.mail-archive.com/l2tpd-devel@l2tpd.org/msg00153.html. Mimochodem, taková poznámka k patentům: http://www.jacco2.dds.nl/networking/freeswan-l2tp.html#Patent Racoon Racoon je implementace IKEv1 protokolu sloužícího pro automatickou výměnu klíčů. Podporuje autentizaci pomocí certifikátů, sdíleného klíče, kerberosu a rozpracována je podpora plain RSA klíčů. Ta je důležitá pro interoperabilitu se *Swan implementacemi. V některém z dalších dílů třeba také na nějakou ukázku dojde ;). Při testování byla použita distribuce Fedora Core 2, ale stejné chování lze očekávat i u SuSE apod. Balíček, ve kterém se racoon nachází, se jmenuje ipsec-tools. Podpora pro IPSec je již i v balíku initscripts, takže lze standardně používat konfigurační soubory typu ifcfg-ipsec0, keys-ipsec0. Parametry lze najít v /etc/sysconfig/network-scripts/ifup-ipsec nebo v dokumentaci k distribuci. Průvodce nastavením IPSecu můžeme spustit příkazem system-config-network. Konfigurace se nevztahuje na L2TP. V našem případě ovšem zůstaneme u ruční konfigurace. Konfigurace serveru - IPSec Konfigurační soubor pro racoon je /etc/racoon/racoon.conf a obsahuje: * globální nastavení * sekci listen, padding, timer * sekce remote * sekce sainfo Dále si uvedeme parametry, které jsou podstatné pro náš příklad. Ostatní parametry lze nalézt v manuálových stránkách - man racoon.conf. Konfiguraci bereme z pohledu, že racoon je příjemce spojení. Parametry tedy znamenají, jaké hodnoty jsou akceptovatelné. Pokud bude racoon iniciátor (klient), budou hodnoty znamenat, jaké parametry požaduje od druhé strany. Mezi komunikujícími musí nastat vzájemná shoda v požadovaných a akceptovatelných parametrech. globální nastavení log ; #level - notify, debug, debug2 Nastavuje úroveň logování. path pre_shared_key "/etc/racoon/psk.txt"; Cesta k souboru, ve kterém jsou uloženy sdílené klíče. sekce listen, padding, timer Obsahují direktivy, které umožňují přesněji specifikovat, na jakém portu má racoon poslouchat. Dále obsahují nastavení kolem časovačů a nastavení formátu vyplňování paketů - padding. sekce remote remote anonymous { Klíčové slovo "anonymous" nám říká, že tato sekce se použije pro všechna spojení, pro které neexistuje jiná remote sekce se specifikovanou IP adresou. exchange_mode main; Specifikuje, jaký mód komunikace je akceptovatelný ve fázi 1 (phase1), rozdíly mezi módy jsou v rychlosti/náročnosti/bezpečnosti. generate_policy on; Racoon bude automaticky generovat politiky, pokud nebudou existovat (pro klienty s dynamickými ip adresami). proposal { encryption_algorithm 3des; Šifrovací algoritmus pro fázi 1. hash_algorithm md5; Hash algoritmus pro fázi 1. authentication_method pre_shared_key; Metoda autentizace (v našem případě sdílený klíč). dh_group modp1024; Skupina pro Diffie-Hellman (DH) algoritmus výměny klíčů. } } sekce sainfo sainfo anonymous { encryption_algorithm 3des; Specifikuje šifrovací algoritmus pro fázi 2. authentication_algorithm hmac_md5; Algoritmus pro autentizaci paketů v rámci ESP. compression_algorithm deflate; Kompresní algoritmus. } Konfigurační soubor tedy bude ve finále vypadat takto: path pre_shared_key "/etc/racoon/psk.txt"; log debug; remote anonymous { exchange_mode main; generate_policy on; proposal { encryption_algorithm 3des; hash_algorithm md5; authentication_method pre_shared_key; dh_group modp1024; } } sainfo anonymous { encryption_algorithm 3des; authentication_algorithm hmac_md5; compression_algorithm deflate; } Identifikace klienta Jak už někoho určitě napadlo (minimálně ty, co se tím živí), abychom klienta mohli ověřit, musíme ho nějak identifikovat. V případě, že identifikaci nijak zvlášť nespecifikujeme, bere racoon jako bernou minci IP adresu klienta. To ovšem znamená, že tuto adresu potřebujeme vždy vědět předem. Soubor se sdílenými hesly by potom vypadal nějak takto. # psk.txt 192.168.0.150 hladjemujnepritel Toto řešení se nám ovšem nelíbí, protože je velmi pravděpodobné, že někdo bude mít adresu dynamickou. Dle kapitoly 4.6.2.1 v RFC 2407 máme tyto možnosti identifikace klienta: | RESERVED 0 | ID_IPV4_ADDR 1 | ID_FQDN 2 | ID_USER_FQDN 3 | ID_IPV4_ADDR_SUBNET 4 | ID_IPV6_ADDR 5 | ID_IPV6_ADDR_SUBNET 6 | ID_IPV4_ADDR_RANGE 7 | ID_IPV6_ADDR_RANGE 8 | ID_DER_ASN1_DN 9 | ID_DER_ASN1_GN 10 | ID_KEY_ID 11 V situaci, kdy nám stačí jedno sdílené heslo pro všechny klienty (např. máme 5 manažerů) a používáme autentifikaci pomocí L2TP, bychom potřebovali ID_IPV4_ADDR_SUBNET 4. Tato možnost bohužel zatím není v racoonu implementována (hledá se nový majitel tohoto kousku kódu ;)). Soubor se sdílenými hesly by potom mohl vypadat nějak takto. # psk.txt 0.0.0.0/0 hladjemujnepritel Vyhnout se tomuto problému je možné při použití jiné metody identifikace. Například lze použít ID_FQDN 2. V konfiguraci racoona (klient) potom použijeme v sekci remote direktivu peers_identifier fqdn "fakt.jsem.to.ja.ver.mne.cz";. V konfiguraci racoona (server) použijeme v sekci remote direktivu peers_identifier fqdn;. Soubor se sdílenými hesly by potom vypadal takto. # psk.txt fakt.jsem.to.ja.ver.mne.cz hladjemujnepritel Po tom, co se přátelsky poplácáme po rameni, zase raději vychladneme, protože nastavit způsob identifikace ve windows pravděpodobně nepůjde. Další věc je, že takto peers_identifier fqdn "fakt.jsem.to.ja.ver.mne.cz"; si identifikaci může nastavit kdokoliv. Politika V okamžiku, kdy máme hotovou konfiguraci racoona, musíme zajistit pravidla, podle kterých se spojení bude šifrovat. Níže uvedený skript zařídí, že paket jdoucí na port 1701 (l2tp) musí být šifrovaný. V okamžiku, kdy se klient pokusí spojit pomocí L2TP/IPSec, se spustí proces, ve kterém se ustanoví IPSec tunel. Na straně serveru racoon se díky direktivě generate_policy on; vygenerují pravidla pro komunikaci s klientem. Tímto šifrovaným tunelem již potom dále probíhá L2TP komunikace. #!/bin/sh /sbin/setkey -FP /sbin/setkey -F /sbin/setkey -c << EOF spdadd moje.vpngateway.cz[1701] 0.0.0.0/0 any -P out ipsec esp/transport//require ; EOF Politika se nastavuje pomocí nástroje setkey - více man setkey. Pro testování doporučuju pouštět racoon na popředí a mít v konfiguraci zapnutý debug: bash# racoon -F. l2tpd Konfigurace serveru Hlavní konfigurační soubor pro l2tpd je /etc/l2tpd/l2tpd.conf a obsahuje: * globální sekce * sekce lns * sekce lac sekce lns LNS je zkratka pro L2TP Network Server. Konfigurace v této sekci se tedy vztahují k nastavení serveru. [lns default] ip range = 10.10.10.10-10.10.10.100 Rozsah adres, které se budou přidělovat klientům. local ip = 10.10.10.1 Lokální IP adresa na serveru. require chap = yes Požadujeme ověření hesla metodou CHAP. refuse pap = yes Odmítáme ověření hesla metodou PAP. require authentication = yes Požadujeme ověřování. name = LinuxVPNserver Jméno (pro vazbu v chap-secrets). ppp debug = yes Debug spojení. pppoptfile = /etc/ppp/options.l2tpd Soubor se specifickými parametry pro pppd. sekce lac LAC je zkratka pro L2TP Access Concentrator. Konfigurace v této sekci se tedy vztahují k nastavení klienta. Jelikož konfigurujeme server, zůstane tato sekce prázdná. Konfigurační soubor tedy bude ve finále vypadat takto: # l2tpd.conf [global] [lns default] ip range = 10.128.253.10-10.128.253.100 local ip = 10.128.253.1 require chap = yes refuse pap = yes require authentication = yes name = LinuxVPNserver ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd length bit = yes V souboru /etc/ppp/options.l2tpd jsou již klasické parametry pro PPP démona. ipcp-accept-local ipcp-accept-remote ms-dns 10.10.10.1 auth crtscts idle 1800 mtu 1400 mru 1400 nodefaultroute debug lock deflate 9 proxyarp connect-delay 5000 V souboru /etc/ppp/chap-secrets uvedeme jména a hesla uživatelů, kterým chceme umožnit připojení. # Secrets for authentication using CHAP # client server secret IP addresses pepa * zdepa * Pro testování doporučuju pouštět l2tpd na popředí: bash# l2tpd -D. Konfigurace klienta - Windows 2000/XP Možností jak nastavit OS Windows bude zřejmě více, já uvedu ten, který znám. Vytvoření připojení Start - Nastavení - Ovládací panely - Síťová připojení. Vlevo nahoře je odkaz na Vytvořit nové připojení. Dále postupujeme takto: Připojit k firemní síti - Připojení k VPN - zadáme libovolný název připojení - zadáme ip/fqdn adresu našeho VPN serveru - dokončíme. Dále je potřeba nastavit sdílené heslo (PSK - Pre Shared Key). V konfiguraci serveru jsme si zvolili PSK "hladjemujnepritel". Spustíme vlastnosti připojení a heslo zadáme do nastavení protokolu IPSec - viz obrázek. Uložíme vlastnosti a zkusíme vytočit připojení. Tam ještě zadáme uživatelské jméno a heslo, které musí odpovídat chap-secrets na VPN serveru. Konfigurace klienta - linux + racoon + l2tpd Konfigurace klienta je v podstatě stejná jako konfigurace serveru. V sekci remote uvedeme místo "anonymous" IP adresu našeho VPN serveru. Konfigurační soubor bude vypadat takto: # racoon.conf path pre_shared_key "/etc/racoon/psk.txt"; log debug; remote ip.vpn.serveru { exchange_mode main; generate_policy on; proposal { encryption_algorithm 3des; hash_algorithm md5; authentication_method pre_shared_key; dh_group modp1024; } } sainfo anonymous { encryption_algorithm 3des; authentication_algorithm hmac_md5; compression_algorithm deflate; } Politika Pravidla, podle kterých se kernel rozhoduje, zda pakety šifrovat, či ne, opět zavedeme pomocí nástroje setkey. #!/bin/sh /sbin/setkey -FP /sbin/setkey -F /sbin/setkey -c << EOF spdadd 0.0.0.0/0 ip.vpn.serveru [1701] any -P out ipsec esp/transport//require ; spdadd ip.vpn.serveru [1701] 0.0.0.0/0 any -P in ipsec esp/transport//require ; EOF Konfigurace serveru - l2tpd V konfiguračním souboru /etc/l2tpd/l2tpd.conf nyní potřebujeme sekci lac. Parametrem lns říkáme, na jaké adrese sedí náš přístupový VPN server. [global] [lac vpn] lns = ip.vpn.serveru require chap = yes refuse pap = yes require authentication = no name = LinuxVPNserver ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd length bit = yes V souboru /etc/ppp/options.l2tpd je změn více. Důležité je uvést name, protože tímto říkáme lns, jakým uživatelským jménem se budeme autentizovat. noauth name cervajs crtscts mtu 1400 mru 1400 defaultroute debug noipdefault local lock proxyarp usepeerdns Záznam pro toto jméno musíme tedy mít v chap-secrets. # chap-secrets # Secrets for authentication using CHAP # client server secret IP addresses pepa * zdepa * Pokud máme konfigurace připraveny, můžeme připojení spustit. bash# echo "c vpn" > /var/run/l2tp-control Parametr "c vpn" znamená, že l2tpd má iniciovat spojení (c jako connect) podle sekce lac s názvem "vpn". L2tpd se pokusí připojit na port 1701 na přístupovém VPN serveru. Protože VPN server má v politice nastaveno, že vše, co jde na port 1701, musí být šifrované, spustí se proces ustanovení šifrovaného IPSec tunelu. Jakmile se podaří tunel sestavit, proběhne již zabezpečeným kanálem autentizace na úrovni l2tp. Klient je připojen, je mu přidělena ip adresa a může vesele firemní poštou posílat hanbaté obrázky a provádět jiné podobné běžné pracovní úkony. NAT Jedním z velkých problémů, který ještě není uspokojivě vyřešen, je průchod NATem. Podpora NAT traversal pro transport mód v racoonu zatím není implementována. Závěrem Dnes ukázaný scénář je vhodný spíše pro malé sítě a firmy, kde změna sdíleného hesla není problémem. Lepší správu v případě velkého množství klientů nám zabezpečí použití certifikátů. Jakým způsobem nahradit sdílený klíč pomocí certifikátů si ukážeme příště. Zdroje: * Pavel Satrapa - IPv6 (ISBN 80-86330-10-9) * www.ipsec-howto.org * www.kame.net * archív ipsec-tools-devel at list.sf.net ******************************* Jaderné noviny 268-271 Leoš Literák (268), Robert Krátký (269-271) Ukládání čísla verze a data do .config. Podpora SMP u Software Suspend. GFS uvolněn pod GPL. Sloučení ext2 a ext3. Transparentní meziprocesový komunikační protokol (TIPC). Stav začlenění UML do 2.6; patchovací nástroj quilt. Podivné intelovské chování. Linux Trace Toolkit (LTT) v 2.6. Logování chyb firmwaru během bootu. Možné poničení dat na XFS po nekorektním vypnutí. Linux 2.6.7-mm6 s paketovým zápisem na CD-RW. Podpora bootovacího splash-screenu u software suspend. Zvyšování počtu kontrol ext3 disků v případě nekorektního vypnutí. Přístup ke zdrojovým kódům jádra přes CVS. Vydán Linux 2.6.8-rc2. jfsutils verze 1.1.7. Ukládání čísla verze a data do .config, 16 e-mailů Randyho Dunlapa napadlo, že by se informace o verzi jádra měla automaticky ukládat do souboru .config. Ukázalo se, že jde o jeden z těch zřejmých nápadů, na které nikdo roky ani nepomyslí, dokud jej někdo nedostane. Spousta lidí napsala, že je to skvělý nápad, který zjednoduší práci s konfiguračními soubory. Willy Tarreau navrhnul přidat i informaci o datu a Randy upravil svůj patch o tuto podporu. Zajímal se, proč nepostačuje časová značka souboru. Sam Ravnborg odpověděl, že datum uvnitř souboru je snadnější hledat grepem. Willy dodal: Může být spousta důvodů. Jako první mě napadá, že když archivuji několik koniguračních souborů ve stejném adresáři, zřídka přidám parametr -a k příkazu cp, aby uchovával data. A když experimentuješ s kernelem a jsi na konci dne s dvacátou verzí, datum uvnitř souboru je často spolehlivější než ty sám pro sledování, o co ses snažil. Podpora SMP u Software Suspend, 4 e-maily Pavel Machek napsal: Zde máte podporu SMP pro swsusp; mně funguje [s hackem klávesnice], ale uvítal bych více testerů. Pokud to vypadá v pořádku, začlením to s Andrewem. Patricku Mochelovi se patch líbil, nabízel kosmetickou kritiku, ale nebyla ta žádná skutečná diskuse. GFS uvolněn pod GPL, 4 e-maily Ken Preslan napsal: Red Hat uvolnil svůj clusterový souborový systém GFS a s ním spojenou infrastrukturu pod GPL. Projekty tvořící infrastrukturu jsou: * GFS - shared-disk cluster file system * CLVM - clusterové rozšíření LVM2 nástrojů * CMAN - obecný manažer pro symetrické clustery * DLM - obecný manažer distribuovaných zámků * CCS - clusterový systém konfigurace určený pro řízení konfiguračního souboru clusteru * GULM - alternativní redundantní serverový manažer zámku/clusteru pro GFS * GNBD - ovladač blokového síťového zařízení, jenž sdílí prostor přes síť * Fence - I/O fencing system Zdrojáky a patche pro řadu 2.6 jsou dostupné na adrese http://sources.redhat.com/cluster/. Zdrojáky pro řadu 2.4 se objeví zítra. Hledáme lidi, kteří nám pomohou na tomto projektu pracovat, abychom jej jednou mohli eventuálně začlenit do linuxového kernelu. Komentáře, návrhy, patche a testeři jsou více než vítáni. Bernd Eckenfels byl rád, když tento email viděl a Jonathan Fors se zeptal, co přesně GFS je. Zda to náhodou není 'Google FS' clusterovací souborový systém, o němž četl, nicméně Ken to vyvrátil, že jde o něco úplně jiného. Sloučení ext2 a ext3, 30 e-mailů John Richard Moser navrhnul sloučení souborových systémů ext2 a ext3 do jednoho, neboť se to kvůli jejich podobnosti zdá vhodné. Helge Hafting citoval Linuse Torvaldse, když poprve přišla řeč na téma rozšíření ext2 o podporu žurnálu. Linus tehdy navrhnul vytvoření nového souborového systému, aby ext2 nebyl během vývoje této vlastnosti nestabilní. Takže ext3 je založeno na ext2, protože to v podstatě začalo jako jeho kopie. Podobně Sean Neakums připomněl, že kdysi dávno už někdo navrhnul odstranění ext2 vzhledem k tomu, že ext3 podporuje mód bez žurnálu. Andrew Morton odpověděl: Myslím, že se to může provést, hlavně jako cvičení v šetření místa kernelu. Nicméně v dnešní době jsou oba souborové systémy docela odlišné. Ext2 používá keš stránek na úrovni inodů pro adresáře, ext3 používá blockdev pagecache. Také truncate algoritmus je velmi odlišný. Prostě málo muziky za hodně peněz. Transparentní meziprocesový komunikační protokol (TIPC), 1 e-mail Jon Maloy napsal: Chtěl bych oznámit dostupnost TIPC (Transparent Inter Process Communication protocol). TIPC je protokol speciálně navržený pro vysoce výkonnou, na poloze transparentní komunikaci mezi loosely propojenými clustery a byl úspěšně používán několik let v různých produktech Ericssonu. Ve spolupráci s kolegy z OSDL a Intelu jsem portoval TIPC do Linuxu a přepsal jsem velké části kódu, aby pasovaly do prostředí linuxového kernelu a požadavkům na způsob programování. TIPC může být kompilováno jako část jádra nebo nahratelný modul a byl uvolněn pod duální licencí GPL/BSD. Přehled TIPC poskytuje dobrou podporu pro návrh škálovatelných, distribuovaných, vysoce dostupných, vysoce výkonných a na umístění nezávislých aplikací. Poskytuje následující funkce: * Spolehlivé a nespolehlivé nespojované [connectionless] komunikační mody SOCK_RDM a SOCK_DGRAM. * Spolehlivé na spojení orientované komunikační mody SOCK_SEQPACKET a SOCK_STREAM. * Spolehlivé a nespolehlivé všesměrové vysílání přes celý cluster. * O 35-80 % lepší výkon než TCP/IP pro zprávy > 1.5 kb. * Funkční adresovací schéma, jež umožňuje adresování přes primární/sekundární klíč a skupinové adresování. * Možnost adaptace na různá média a protokoly v závislosti na síťové infrastruktuře a bezpečnostním požadavkům: Ethernet, RapidIO, ATM/AAL5, TCP, SCTP, UDP atd. (Jen Ethernet je podporován v poslední verzi). * Topologická služba pomáhající aplikacím znát funkční a fyzické adresy v clusteru. Odkazy: Stránka TIPC na SourceForge: http://tipc.sourceforge.net Download zdrojových kódů a dokumentace: http://sourceforge.net/projects/tipc/ Návrh protokolu předvedený na IETF-59 v Soulu k posledním březnu. http://www.ietf.org/internet-drafts/draft-maloy-tipc-00.txt Článek psaný pro dubnové číslo Linux World Magazine: http://www.linux.ericsson.ca/papers/tipc_lwm/index.shtml Prezentace na OLS v Ottawě příští měsíc: http://www.linux.ericsson.ca/papers/tipc_ols.pdf Ocenili bychom vaše reakce a rady. Stav začlenění UML do 2.6; patchovací nástroj quilt, 16 e-mailů 26. črv - 3. črc Paolo Giarrusso se zeptal: Jaké jsou podmínky pro stabilní zařazení aktualizace UML do 2.6-mm (nebo přímo 2.6.8)? V současné době (když oddělíme malý kousek, který by začleněn být neměl) máme téměř všechno v arch/um a include/asm-um, pak přidání a dvou filesystémů pro použití pouze s UML a tenhle malý kousek (plus 2 jeho použití v mm/page_alloc.c). +#ifndef HAVE_ARCH_FREE_PAGE +static inline void arch_free_page(struct page *page, int order) { } +#endif Mohlo by to být přidáno tak, jak to je? Zvláště se to obávám příliš brzy zařadit do 2.6.8, protože když se to naposledy objevilo v -mm, šlo to po jedné verzi zase pryč. Ten patch lze aplikovat na 2.6.7; současný kód není naopak ani možné zkompilovat, takže není důvod to nepoužít (pokud nechceš odstranit podporu UML / ale protože to jsi nikdy neřekl, potřebujeme ten patch aplikovat). Pokud však některé části toho kódu nechceš, stačí říct; čekám s tím než připravím k poslání ten UML patch. Andrew Morton odpověděl: Nebude mi vadit šoupnout to do -mm, pokud to nezpůsobí moc nepříjemností. Naposledy kvůli tomu byly problémy se správou patchů, ale ať už se s tím pralo cokoliv, mezitím to asi bylo začleněno do hlavního stromu, takže to bude OK. Ale pro začlenění výše by bylo potřeba na tom zapracovat - znovuzavedení ghash.h by nebylo vítané (myslel jsem, že se toho Jeff zbaví). A posledně byly součástí patche i nějaké ovladače blokových zařízení, které prováděly zastaralé věci jako ve 2.4. Obecně se zdá, že UML v 2.6 je dost pozadu a jednou ten patch budeme muset rozdělit, prohlédnout a opravit. Jeff Dike odpověděl: Jo. Už mi došlo, že jsem si to pěkně s BK a mým současným stylem práce zavařil. Uvažuji o používání quilt. Vzal bych všechny změny od chvíle, kdy Linus naposledy začlenil UML (2.5.69 nebo tak nějak) a rozdělil je na rozumné patche. Bude to dost práce, ale myslím, že je potřeba ji udělat. Diskuze se v tuto chvíli stočila k nástroji quilt. Paul Jackson napsal: Dobrá věc. Trošku jako nabitá zbraň bez pojistky. Naučíte se pár nových způsobů, jak se střelit do vlastní nohy, a začnete být dobří v první pomoci. S takovou servisní prací vám pomůže uložená osobní historie revizí patchů. CVS, RCS, lokální bitkeeper nebo (pro přestárlé hackery jako jsem já) samotné SCCS nebo něco podobného. Quilt se postará o patche, ale sám o sobě historii nezachová. Veškerý software je rozdělen na dvě části - pevný a pohyblivý. Jakmile je něco přijato do hlavního kernelu, je to pevné. Už nelze jít zpět - lze nad tím pouze vrstvit opravy. Bitkeeper je pro tohle ideální. Ale nedokončená práce, pro kterou jste hlavním zdroje vy sami, je pohyblivá. Můžete jí rozdělovat, přehazovat a předělávat, což je přesně to, co chcete pro získání nejlepší sady patchů. A na to je nejlepší quilt a podobní. Závěr - používejte quilt (s oblíbeným systémem kontroly verzí) nad Bitkeeperem. Otázka - jaké existují nástroje pro pohodlné odesílání sad patchů? Sestavování mnoha souvisejích sad emailů v GUI mailovém klientu je trochu zdlouhavé a náchylné k chybám. Je to zjevný kandidát pro skriptování. Podivné intelovské chování, 18 e-mailů 28. črv - 1. črc Roland McGrath napsal: Andrew Cagney na tento problém narazil při práci na GDB. Predpokládám, že ta chyba tam byla vždycky, ale testoval jsem to jen na 2.6 jádrech. Když dokrokujete do trap instrukce, nedostanete SIGTRAP dokud neproběhne také instrukce následující po té trap instrukci. Demonstroval jsem to na třech případech: `into' generuje SIGSEGV, který je potlačen přes ptrace; zadání systémového volání `int $0x80'; a zadání systémového volání `sysenter' přes vstupní bod vsyscall. Na https:// bugzilla.redhat.com/bugzilla/show_bug.cgi?id=126699 najdete funkční testovací program a kompletní podrobnosti o reprodukování problému s pomocí gdb. Linus Torvalds odpověděl: To je dokumentované intelovské chování. Jestli si dobře pamatuji, tak zároveň garantuje, že v některých podivných případech nebude postup zastaven. A já odmítám zpomalení rychlé cesty [fast path] jen kvůli tomu. Nejenže takhle Linux vždycky fungoval, ale pokud vím, tak všechny ostatní x86 operační systémy dělají to samé. Linux Trace Toolkit (LTT) v 2.6, 11 e-mailů 30. črv - 6. črc Peter Martuccelli poslal patch pro subsystém 'audit', Andrew jej přijal a vedlo to k následující diskuzi. Karim Yaghmour napsal: Společně s dalšími lidmi se snažím procpat do jádra Linux Trace Toolkit posledních 5 let. A přitom ten kód je téměř shodný s tím, který přidává ten audit patch. Zatím jsme však vždy dostali odpověď ve smyslu "je to přeplácané" a Linus nám řekl, že pro podobnou věc nevidí žádné použití. To jsme prostě jen neodhalili tajný způsob potřesení rukou? Skutečně bych rád dostal nějakou radu, protože jsem přesvědčen, že jsme zkusili každý trik z návodu: posílání patchů ke kontrole, zajímání se o názor vývojářů jádra, portování na více architektur, modularizace systému, atd. Andrew odpověděl, že kód auditu je daleko méně intrusivní než LTT. Připojil seznam souborů modifikovaných oběma projekty ukazující daleko větší počet u LTT a řekl, že LTT všude přidává háčky. A pokračoval: Bezpečnostní kód má také háčky všude, ale poskutuje funkčnost pro koncového uživatele, místo aby to byl čistě vývojářský nástroj. Podpůrné nástroje pro vývojáře jsou fajn, ale nejsou tak přesvědčivé jako funkce pro koncové uživatele. Protože obecenstvo je menší a vývojáři vědí, jak aplikovat patche a překompilovávat. Ohledně 'tajného potřesení rukou' Andrew řekl: Jde o rovnováhu mezi (průběžnou náročností na správu vynásobenou počtem ovlivněných vývojářů) versus (přidaná funkčnost vynásobená počtem uživatelů, kteří z ní budou mít prospěch). Podle mě LTT (a kgdb a různé další podpůrné věci pro vývojáře) nenabízejí dobrý poměr. Navrhl, aby LTT používalo háčky kprobe. Karim odpověděl na mnoha úrovních. Ze všeho nejdříve argumentoval, že patch není tak velký, jak si Andrew myslí, a že podívá-li se někdo na to, co skutečně dělá, zjistí, že většina háčků jsou jednoduché jednořádkové úpravy. Ale nejrozsáhleji se Karim vyjádřil k tomu, že Andrew nazval LTT vývojářským nástrojem. Upozornil, že pro debugování kernelu je naopak funkčnost LTT naprosto nedostatečná a LTT tedy vůbec není zamýšleno jako nástroj pro vývojáře jádra. Je to však platný nástroj například pro sysadminy nebo vývojáře aplikací, kteří mohou jeho výstup využít k analýze problémů, se kterými se na svých systémech potýkají. Andrew řekl, že Karim jeho slova špatně pochopil - Andrew měl na mysli všechny vývojáře, ne pouze vývojáře jádra. Andrew objasnil, že chtěl říci, že LTT je nástroj pro vývojáře jakéhokoliv druhu, ne pouze těch od kernelu. Díky tomu Andrew vyvodil, že by množství uživatelů bylo omezeno, a že takoví uživatelé by měli být schopni si patche aplikovat dle svého uvážení sami. Karim odpověděl: Mohou-li se do jádra dostat funkce jako UML, oprofile, audit, bezpečnostní háčky, vserver, atd., které jsou určeny pro stejnou skupinu uživatelů jako LTT, těžko hledám opodstatnění pro odmítání LTT pouze na základě toho, že z něj nemohou těžit ti nejméně počítačově vzdělaní uživatelé Linuxu. Ale diskuze nijak nepokračovala. Logování chyb firmwaru během bootu, 16 e-mailů 29. črv - 8. črc Linas Vepstas napsal: Firmware může hlásit chyby kdykoliv a není to neobvyklé ani při bootu. Jenže tyto zprávy nejsou k ničemu do chvíle, kdy naběhne rtasd, což je poměrně pozdě. V důsledku toho jsou chyby firmawaru během bootu tiše ignorovány. Tenhle patch je alespoň vypíše pomocí printk, takže se objeví v boot.msg/syslog. Existují ještě dva logovací mechanismy, které jsem radši nechal na pokoji, protože nerozumím jejich chování. Především nvram není povoleno až do pozdní fáze bootu... Ale jaký má pak nvram logování smysl, jestli ne zachytávat zprávy, které se objevily časně během bootu? Paul Mackerras odpověděl: Printk vypisující chyby je otravné a nezdá se mi to příliš přínosné vzhledem k tomu, že jde jen o nečitelná hexová čísla, kterých může být opravdu moc. Musí existovat lepší způsob. Dát to do nvram se mi zdá jako lepší možnost. Neznám důvod, proč bychom nemohli nvram používat hned zkraje. Jake Moilanen poznamenal: nvram můžeme inicializovat velmi brzy, ale události v nvram uložené bychom neměli zahazovat, dokud neběží rtasd a ty události si nevytáhne, protože by mohlo jít o tu chybu, která minule při bootu systém shodila. Mohli bychom asi rtasd nastartovat o trochu dříve, ale nepřipadá mi, že by nás to mělo tolik trápit. Greg KH celou záležitost považoval za diskutabilní, protože Linas by měl prostě použít syslog nebo netlink jako celý zbytek kernelu. Nevynalézejte znovu kolo. Paul také Linasovi řekl: Tento typ problému se obyčejně řeší pomoci netlinku. Myslím, že by dávalo smysl vypisovat pomocí printk RTAS chybové události se závažností "fatal" a možná i "error". Varování a události by však měly být poslány na rtasd. Hollis Blanchard napsal: Už jsem se na to ptal dříve a bylo mi řečeno, že neexistuje způsob, jak zjistit závažnost události bez předchozího úplného zpracování binárních dat. Byl bych nadšen, kdybych se mýlil... Nathan Fontenot odpověděl: Zjistit závažnost RTAS události lze a ani to není moc náročné. Podívej se na asm-ppc64/rtas.h, kde najdeš definici hlavičky RTAS události (struct rtas_error_log). Všechny RTAS události mají počáteční hlavičku obsahující závažnost dané události. Dekódování RTAS událostí za hranicemi hlavičky je po chvilce pěkně nechutné a doufejme, že to v jádře nikdy nebude potřeba dělat. Možné poničení dat na XFS po nekorektním vypnutí, 45 e-mailů 4. črc - 14. črc Norberto Bensa si všiml, že XFS vynuluje soubory po nekorektním vypnutí. Zeptal se, jestli existuje způsob, jak se tomu vyhnout. L. A. Walsh odpověděla, že jde o starý problém, který byl již dříve hlášen v XFS konferenci; ale dodala: Zjevně to nelze snadno reprodukovat, nikdo nemá tušení, proč se tak děje. Prostě to dělá. I po několika synchronizacích jsou někdy soubory editované během posledních několika dní vynulovány. Dobrý důvod pro pořizování denních záložních kopií, protože ty většinou obsahují bezchybné soubory... Kdybych jen mohla přijít na to, jak to reprodukovat... když se o to pokusím, nic se nestane. Grrr... ví, že kontroluji! :-) Chris Wedgwood během diskuze řekl: XFS soubory nevynulovává, pouze vrací nuly místo nezapsaných úseků. Otevřete-li existující soubor a celý jej popíšete, možná během spadnutí uvidíte stará data, nebo nová data, pokud byla zapsána [flush]. Neměli byste však vidět nuly. Hádám, že u jiných filesystémů (když se žurnálují pouze metadata) jsou bloky alokované pro nově zapsaná data většinou stejné jako nedávno uvolněné bloky, takže to vypadá, že všechno funguje, ale ve skutečnosti je to pravděpodobně pouze náhoda. XFS by se mohlo chovat podobně, ale dříve nebo později byste na to stejně doplatili, když byste dostali nesmysly místo starých dat. Některé aplikace je prostě potřeba opravit. L. A. odpověděla: Nevím, jestli to nějak pomůže (pochybuji, mě to mate)... Soubory, které jsem zapsala ve vimu, a které vrátily "nuly", byly soubory napsané před 2-3 DNY -- přičemž čerstvější zápisy byly často uloženy bez problémů. Kdyby to byl soubor, který jsem právě editovala, a v tu chvíli to spadlo, to bych to chápala lépe než soubory, kterých jsem se pár dní nedotkla. Chris řekl, že podobné chování skutečně nikdy neviděl, rozhodně pak ne u souborů, které byly upraveny před několika dny. Byl si jistý, že na jeho systému by checksum skripty, které kontrolují všechny jeho soubory, něco takového zachytily. Jeho odhad v odpovědi na popis od L. A. byl, že soubory jsou skutečně nějak měněny, ale nedělá to XFS. Linux 2.6.7-mm6 s paketovým zápisem na CD-RW, 51 e-mailů 5. črc - 8. črc Andrew Morton oznámil Linux 2.6.7-mm6: ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7/2.6.7-mm6/ * Přidal jsem patche pro paketový zápis na DVD-RW/CD-RW. Je potřeba na nich ještě pracovat. * Aktualizace USB zdá se působí zatuhávání. Jednu chybu jsem opravil, ale i tak můj testovací ia64 stroj tuhne při bootu. Kdyby se vám to také stalo, odstraňte patch usb-locking-fix.patch a pak bk-usb.patch. Znovu otestujte a pošlete report do této konference a do linux-usb-devel@lists.s ourceforge.net. Podpora bootovacího splash-screenu u software suspend, 22 e-mailů 8. črc - 14. črc Erik Rigtorp napsal: Tento patch do swsusp přidává podporu pro bootsplash. Na kódu, který je rozhraním k bootsplash, je ještě nutné pracovat, v této chvíli je víceméně ukradený ze swsusp2. Nějaký další kód by šlo místo toho pravděpodobně přesunout do console.c. Christoph Hellwig poukázal na to, že CONFIG_BOOTSPALSH není v současné době v oficiálním stromu jádra; takže podporovat to u software suspend je předčasné. Christoph rovněž naznačil, že CONFIG_BOOTSPALSH v hlavním stromu vítáno není. Pavel Machek odpověděl: Ten patch nebyl určen pro hlavní strom... Ale i tak se bude hodit, protože velká distra tenhle druh věcí chtějí... Možná by CONFIG_BOOTSPLASH nakonec v hlavní stromu být mělo. Vůbec se mi nelíbí představa dvou nekompatibilních sad háčků do swsusp.... Ale Christoph řekl: Ne. Tyhle věci nemají v kernelu co dělat. Malujte si své pěkné obrázky přes fbdev. A ten bootsplash patch od SUSE je totální humus - vždyť co musíš hulit, abys dal JPEG dekodér do jádra? Stefana Reinauera se to dotklo a napsal: Souhlasím, že v případě jádra 2.6 by to šlo udělat lépe díky pořádné podpoře initramfs, ale v 2.4 nebyl žádný rozumný způsob, jak vložit uživatelský kód dost brzy na to, aby byl spuštěn před inicializací framebufferu. Na druhou stranu, ten JPEG dekodér má 8k - méně než desítky gzip/gunzip algoritmů v kernelu. Takže stěžování mi přijde trochu hloupé. Jestli chceš jen držkovat, pak běž kritizovat to, že s rozlišením 1024x768 sežere bootsplash nadobro 1.5MB paměti. Pokud něco, tak TO by dávalo smysl. A jestli chceš retro textové hlášky nebo grafický boot, to je dozajista filosofická otázka. Dle mého skromného názoru není možné tak brzy startovat X. Pavel pak také Christophovi řekl: SUSE verzi bootsplashe jsem neviděl... Ani nechci vidět. Ale takhle má SUSE svůj mizerný bootsplash, RedHat pravděpodobně také, Mandrake asi také, atd. A teď bude chtít SUSE splash u swsusp, RedHat pravděpodobně také, Madrake asi také, atd. Nechce se mi trápit se třemi různými sadami háčků do swsusp. Takže... kdyby si pročištěný bootsplash našel cestu do jádra, mohlo by to zmírnit množství humusu v distribucích. Aspoň by existoval jednotný způsob, jak tu věc vypnout... Christoph odpověděl: Red Hat to dělá správně, protože používá program, který využívá fbdev. Zároveň také nemají žádnou podporu pro swsusp, což dává docela smysl, když vezmeme v potaz, jakým tempem se ten kód i nadále mění. Zvyšování počtu kontrol ext3 disků v případě nekorektního vypnutí, 7 e-mailů 14. črc - 16. črc Pavel Machek si všiml, že u ext3 proběhne program fsck přibližně po 30 běžných i nekorektních (např. cvaknutí síťovým vypínačem) vypnutích. Ale připadalo mu, že narušení souborů je pravděpodobnější spíše po nekorektním vypnutí; a proto by dávalo smysl nechat fsck proběhnout v případě nekorektního vypnutí častěji. Poslal patch, který to umožňoval, ale Theodore Ts'o odpověděl: Nekorektní vypnutí by alespoň teoreticky nemělo způsobit žádný problém - pokud není vadný hardware, pak by ovšem způsobilo problémy i jediné vypnutí natvrdo. Nezdá se mi, že by dávalo smysl prostě jen tak říct, že u tvrdého vypnutí je pětkrát větší pravděpodobnost problémů. Asi bychom mohli umožnit, aby si to uživatelé konfigurovali, ale nejsem si jistý, jestli to stojí za přidávání takových složitostí. Pavel odpověděl, že byl-li počítač vypnut kvůli výpadku elektřiny, mohl by mít Theodore pravdu; ale na druhou stranu, pokud by k vypnutí došlo v důsledku chyby softwaru, pak by nebyla žádná záruka, že data žurnálu nějak pomohou. Andreas Dilger měl k Pavlovu původnímu patchi také připomínky. Připadalo mu, že nerozhoduje správně o tom, kdy by mělo být fsck provedeno. Andreas navrhl: Zvyšuj počet připojení po čistém odpojení pouze ve 20 % případů (náhodně). Vzhledem k tomu, že většina lidí stejně kvůli plnému fsck nadává, bude to tak pravděpodobně lepší, než zvýšit frekvenci kontrol a nutit lidi měnit interval kontrol, aby dosáhli původního chování. Původní Pavlův patch obsahoval chybu, která způsobila prosté provádění kontroly u ext3 systémů pětkrát tak často, bez ohledu na korektní nebo nekorektní restarty. Pavel s Andreasem souhlasil a poslal nový patch. O tom již Andreas soudil, že má dobrou šanci se do hlavního jádra dostat; a vlákno skončilo. Přístup ke zdrojovým kódům jádra přes CVS, 4 e-maily 17. črc - 22. črc Martin Waitz si chtěl stáhnout CVS repozitář jádra (přes bránu BitKeeperu), ale zjistil, že hostname cvs.kernel.org existuje, ale na portu 2401 nikdo neposlouchá. Je to deaktivované záměrně nebo je jen někde chyba? Po několika zprávách odpověděl H. Peter Anvin: Stáhni si ten repozitář pomocí rsync z: rsync://rsync.kernel.org/pub/scm/linux/kernel/bkcvs/ Přímý přístup byl zrušen kvůli zneužívání a bezpečnostním problémům. A rsync je stejně příjemnější. Vydán Linux 2.6.8-rc2, 18 e-mailů 17. črc - 20. črc Linus Torvalds oznámil Linux 2.6.8-rc2: Aktualizace MTD, i2c a něco málo USB. Spousta malých věcí (sem tam pročištění a opravy od Al Vira atd.). Jurgen Kramer hlásil: Můj EHCI řadič stále nefunguje (Asus P4C800-E i875p) - stejně jako v řadě 2.6.7-mm. Ale Will Beers řekl: O tom už se mluvilo ve vlákně "správné předání BIOSu v ehci-hcd". Jde vlastně o vadný BIOS. David Brownell pro to má opravu, která se však zatím nedostala do jádra. Dokud to nebude, tak mi stačí změnit "return 1" na řádku 308 v drivers/usb/host/ehci-hcd.c" na "return 0". Na jiném místě Ralf Hildebrandt potvrdil, že mu funguje kompilace pomocí GCC 3.4; a že na jeho HP Pavilion laptopu vůbec poprvé funguje vesafb. A ještě jinde hlásil Thomas Zehetbauer, že: podpora ACPI stále není u desky Intel D865PERL funkční. Když je jádro zkompilováno pro SMP/HT, bootování zatuhne. Jde to pouze s bootovacím paramatrem acpi=off nebo acpi=ht. Pozsar Balazs doplnil: S Intel D865GRH to také nefunguje, jak už jsem hlásil u 2.6.7-rc3. A Kevin P. Fleming napsal: V RedHat Bugzille už je patch, který ten problém napravuje (omezuje jednu z akcí nastavení ACPI tak, aby běžela pouze na CPU 0). Snad to bude brzy začleněno do jádra - i když všichni vývojáři jsou tento týden na OLS [Ottawa Linux Symposium] :-(. jfsutils verze 1.1.7, 1 e-mail 22. črc Dave Kleikamp napsal: Dnes byla vydána verze jfsutils 1.1.7. Toto vydání obsahuje následující změny: * --replay_journal_only by nemělo vyčistit FM_DIRTY * Změny na disku by se měly odehrát ve správném pořadí * Opravy zpráv * Opravy Directory Index Table pro big-endian systémy. Ta poslední je nejzávažnější. Používáte-li na big-endian systému (tj. ppc64) verzi 1.1.6, měli byste upgradovat na 1.1.7. Více podrobností o JFS najdete na naší stránce http://oss.software.ibm.com/jfs. ******************************* Zprávičky 1.8.2004 12:02 Vlastimil Ott Zajímavý a dlouhý přehled videoeditorů vyšel na technet.cz: Editácia videa pod Linuxom nie je sci-fi. 2.8.2004 13:15 Petr Krčmář Pamatujete, jak vám máma říkala, abyste nekoukali do slunce? Redaktoři PC Worldu na to naštěstí zapomněli a podívali se důkladně na Sunovskou distribuci Linuxu. 2.8.2004 13:20 Petr Krčmář Jak by také mohlo vypadat striktní dodržení amerických patentních zákonů nastiňuje v humorném článku Bedoper. 2.8.2004 22:21 Bohumír Zámečník Právě běží na ČT1 pořad Reportéři ČT o amatérských wifi sítích v Česku. 3.8.2004 08:52 Petr Hatina Novell tento týden představí novou verzi Linuxového serveru SuSE Linux Enterprise Server 9 založené na novém kernelu 2.6.Nový kernel 2.6 lépe pracuje s velkými multiprocesorovými systémy a umožní zlepšit a usnadnit správu a podporu databází. 3.8.2004 09:11 Petr Hatina Mozilla Security Bug Bounty Program nabízí za nalezení kritické bezpečnostní chyby v programu Mozilla 500 US$.Svědčí to o jejich důvěře v sílu Open Source programů. 3.8.2004 14:13 Petr Krčmář Lidé okolo CNet vyčmuchali, že nová verze CrossOver Office (3.1) nyní podporuje Applovské iTunes. Nová verze je zatím testována a je k dispozici stávajícím zákazníkům CodeWeavers. 3.8.2004 14:25 Petr Krčmář Sun Microsystems si pohrává s myšlenkou koupě Linuxového prodejce Novell. Jak říká šéf Sunovské divize operačních systému Jonathan Schwartz: "Ten, kdo vlastní Novell, kontroluje operační systém, na němž závisí budoucnost IBM." (Že by to bylo až tak žhavé?) 3.8.2004 14:29 Petr Krčmář DistroWatch vydal krátký článek o aktuálním stavu FVWM. Stále žije a daří se mu dobře. 3.8.2004 14:38 Petr Krčmář A o Sunu ještě jednou: Podle Eweeku představí Sun tento týden na LinuxWorldu linuxový port Sun Ray Serveru. Ten dovolí použít tenké klienty Sun Ray na SuSE nebo Red Hat boxu a to při zachování stejných vlastností, které doposud podporoval jen na Solarisu. 3.8.2004 15:07 Petr Krčmář Možná víte, že projekt Mozilla Sunbird (samostatný kalendář) hledá nové logo. Celá akce přešla do poslední fáze, kterou je hlasování pro konkrétní návrhy. 3.8.2004 15:13 Petr Krčmář Ministerstvo informatiky ČR vydalo doporučující materiál pro tvorbu přístupných webových stránek ve státní správě. Zásady jsou ve shodě s pravidly WAI (Iniciativa pro bezbariérový web). 3.8.2004 15:28 Petr Krčmář Dan Ravicher, vedoucí Public Patent Foundation, provedl pro Open Source Risk Management novou studii linuxového jádra. Podle ní Linux potencionálně porušuje 283 patentů, z nichž 27 náleží Microsoftu (dále například 60 IBM, 20 Hewlett-Packardu a 11 Intelu). 3.8.2004 15:57 Vlastimil Ott Ze světa OpenOffice.org: 29 800 000 stažení, 24 700 jedinečných adres v konferencích do 24.7.2004. Aktuální buildy (budoucí verze 2.0), přídavná makra pro koncové uživatele. Zdroj a další zajímavá čísla. 3.8.2004 21:34 Vlastimil Ott Německá firma Netline Internet Service oznámila, že uvolní svůj Open-XChange Server s licencí GPL. Tento groupware produkt se dosud prodává jako SUSE LINUX Openexchange Server. 3.8.2004 22:47 Vlastimil Ott Po dlouhé době konečně vychází nová verze NEditu - 5.5RC1. Konečně jsou zapracovány záložky oken (tabbing), opraveny nějaké chyby a podobně (jak to tak bývá). Plnou verzi můžeme očekávat snad brzy. Stáhnout betaverzi, README. 4.8.2004 07:20 Petr Hatina Borland ohlásil Together Designer Community Edition, modelovací nástroj pro tvorbu analýzy dle UML nezávislý na platformě. Kromě tvorby UML a ER diagramů poskytuje rovněž import modelů z XMI a Rational Rose. Lze si ho zdarma stáhnout zde. 4.8.2004 08:42 Petr Krčmář HP je podle vlastních slov prvním z velkých výrobců PC, který nyní začal prodávat notebooky s předinstalovaným Linuxem (HP Compaq nx5000). Systém je notebooku upraven přesně na míru (včetně všech potřebných ovladačů). 4.8.2004 08:49 Petr Krčmář Dnes se na webu LinuxWorld Expo objevil seznam vítězných projektů, které letos získaly některou z každoročně udílených cen. 4.8.2004 09:20 Petr Krčmář Uživatelé, kteří by rádi kombinovali výhody Solarisu s aplikacemi, běžícími na Linuxu už nemusejí dlouho čekat. Nastupující Solaris 10 totiž umožní přímé spouštění linuxových aplikací. 4.8.2004 20:58 Vlastimil Ott Potvrzeno: Mnichov odkládá přechod na GNU/Linux k ledu. Město Vídeň naopak dává svým zaměstnancům možnost vybrat si v příštích letech systém na svém desktopu (15000 PC, 1500 notebooků). 5.8.2004 07:29 Petr Hatina Superpočítač Stryker, který má dodat IBM pro vývoj pokročilých zbraní pro americkou armádu, bude postaven na distribuci Linuxu. Celý cluster bude složen z 1186 strojů po AMD procesorech, s 64bit. rozšířením, jeho výkon bude 10 teraflops, čímž se zařadí mezi dvacet nejvýkonnějších superpočítačů na světě. 5.8.2004 09:44 Tomáš Morstein "Linux kernel file offset pointer handling": Byla nalezena nová chyba týkající se jádra řady 2.4 a 2.6, včetně 2.6.7. Více se dočtete zde. 5.8.2004 11:08 Ivan Bibr Na světě je Beta 1 nového Mandrakelinuxu 10.1. Oznámení, detaily a odkazy naleznete zde. Čeští a slovenští uživatelé mohou nově hlásit chyby v rodném jazyce pomocí formuláře na www.mandrake.cz. 5.8.2004 12:49 David Nečas (Yeti) Knihovna libpng je děravá (buffer overflow a pár dalších problémů). Většina distribucí vydala včera opravné balíčky: FC, RH, Deb, MDK. 6.8.2004 08:37 Petr Krčmář Yoper linux V2 vyšel před pár týdny. Jeho tvůrce tvrdí, že je to nejrychlejší Out-of-the-Box Linux systém na světě. Je-li to pravda, zjistíte z recenze na osnews. 6.8.2004 08:41 Petr Krčmář Vyšly aktualizace všech tří hlavních produktů na Mozilla.org. Firefox 0.9.3, Thunderbird 0.7.3 a Mozilla 1.7.2. Opravují především 4 hlavní bezpečnostní problémy. Stahovat můžete přímo z Mozilla.org: Mozilla, Firefox, Thunderbird. 6.8.2004 08:56 Petr Krčmář Google nabídne ve speciální aukci své první akcie v objemu zhruba tří miliard dolarů, tedy asi devíti procent kapitálu, v rozpětí od 108 do 135 dolarů za kus. Nebývalá internetová aukce, zaměřená na drobné investory, by se mohla uskutečnit již příští týden. 6.8.2004 22:34 Vlastimil Ott Na AbcLinuxu.cz jsme 4.8. zadali tisící zprávičku. Kdy dosáhneme druhé tisícovky? 7.8.2004 20:22 Martin Košírer Zaplatili jste uz za svoji licenci GNU/Linuxu? 8.8.2004 09:36 finn Jádro 2.4.27-rc6 bylo beze změn vydáno jako verze 2.4.27, k nahlédnutí je ChangeLog se seznamem oprav, stahovat lze třeba z českého mirroru. 9.8.2004 06:20 Zdeněk Burda Byla vydána nová verze oblíbeného bezpečnostního patche do jádra grsecurity pro jádro 2.4.27 a 2.6.7. 9.8.2004 07:35 Petr Hatina IBM slíbila, že nepoužije své patenty proti Linuxu a vyzvala, aby se stejně zachovali i ostatní majitelé sporných patentů. Týká se to 283 patentů v kódu Linuxu, které odhalila Open Source Risk Management. 9.8.2004 11:03 Zdeněk Štěpánek Že Český rozhlas 1 Radiožurnál vysílá ve formátu OGG, už víme. Radiožurnál má ale zřejmě toho nejlepšího Linux-pozitivního admina, jakého může mít. Podívejte se sem (Real) a sem (WMA). 12.8.2004 08:58 Petr Hatina Mitchell Baker, úřadující prezidentka Mozilla Foundation, získala vůbec první Silver Award, speciální cenu udělovanou za neprogramátorský přínos. Obdržela ji za sepsání Mozilla Public License (MPL) a spoluvedení projektu Mozilly. 12.8.2004 13:59 ivan Druhá Open Party Olomouc pro všechny zájemce o open-source, GNU/Linux, svobodný software se koná v pátek 17. září 2004 od 18:00 v Hospodě u Dášenky v Olomouci. Podrobnosti. 13.8.2004 10:03 Vlastimil Ott Pro srovnání: instalace Slackwaru 10.0 tentokráte španělsky. Najděte deset rozdílů a pošlete korespondenční lístek. ;-) Keep slackin'! 13.8.2004 10:24 ALIUM Jak to vypadá, tak zbrusu nové Openoffice.org 2.0 se plánují na březen 2005. Údajně by měla oproti verzi 1.1 být mnohem rychlejší, neboť se předělává jádro od Sunu. 13.8.2004 12:14 Michal Novák Návod na rozjetí multimediální klávesnice bez nutnosti modifikovat konfigurační soubory X serveru - pomocí programu LinEAK. 13.8.2004 12:30 Milan Lajtoš Už aj Google drží krok s olympiádou! A ešte odkaz, ktorý každý pozná... 13.8.2004 18:57 Petr Ruzicka Vyšla nová verze live distribuce Danix. Můžete ji stahovat zde (ISO), nebo na mirrorech. 14.8.2004 18:27 Josef Kufner A je to tady! Další verze kernelu, tentokrát 2.6.8, je na světě. 14.8.2004 19:23 ALIUM Ani ne po měsíci vyšla nová verze PHP, konkrétně 5.0.1. Řeší chyby s MySQL, XSLT, gettext, strtotime, chyby při práci s pamětí, instalací .Net objektů; aktualizace knihoven libxml2-2.6.11, libxslt-1.1.7 and iconv-1.9.1, úprava ActiveScript SAPI a další chyby. Stahujte. 14.8.2004 20:27 Petr Tomeš Dnes večer vyjde nové číslo zpravodaje Mozilla Links. Najdete v něm mj. spoustu novinek a tipů, zajímavý rozhovor s tvůrcem rozšíření Jedem Brownem a zprávy o samostatných projektech. Také se dozvíte o nových funkcích Firefoxu 1.0 PR. K odběru zpravodaje se můžete přihlásit prostřednictvím formuláře. 16.8.2004 09:14 Petr Krčmář The Gnoppix Project vydal Gnoppix 0.8. Řada 0.8 přináší Gnome 2.6, Kernel 2.6.7, gcc 3.4, egroupware, Openoffice a další. The Mono/MonoDevelop je také přibalen. Gnoppix obsahuje nový grafický instalátor, který jej umožní nainstalovat celou distribuci na sedm kliknutí. 16.8.2004 09:19 Petr Krčmář Nejste-li spokojeni se standardními instalacemi Mozilly Firefox a rádi byste vytvářeli vlastní balíčky, podívejte se na návod, který vám pomůže začít (Fedora News). Dočtete se, jak vytvářet RPM balíčky pro Fedora Core 1. 16.8.2004 15:18 Vlastimil Ott Společnost Stickfish s. r. o. hledá zaměstnance na pozici Sales Manager ? zkušený obchodník. Více informací. 17.8.2004 00:23 Petr Semelka Před dvěma dny vyšlo nové Wine - 20040813. V nové verzi je opraveno, jak už to u Wine bývá, hodně chyb, má nový msiexec instalátor a přidanou podporu alphablendingu. Můžete si přečíst changelog, nebo si Wine stáhnout. 17.8.2004 14:17 Petr Krčmář Vyšla nová kniha českého guru Martina Kysely "Linux - kapesni pruvodce administratora". K dispozici je i pár stránek k nahlédnutí. 17.8.2004 14:36 Petr Krčmář Newsforge přináší rozhovor s vývojářem KDE Georgem Staikosem, ve kterém se snaží vyčmuchat novinky z chystaného KDE 3.3. 17.8.2004 14:43 Petr Krčmář Jako reakci na doporučení alternativních prohlížečů americkou vládní agenturou vydala Mozilla.org dokument Security and Mozilla browsers (český překlad) ve kterém vysvětluje, proč jsou prohlížeče Mozilla a Mozilla Firefox z bezpečnostního hlediska správnou volbou. 18.8.2004 09:24 Josef Na IRCNetu byl znovuobnoven kanál #penguin.cz. Kanál věnující se převážne linuxu a věcí s tím souvisejících... Informace o IRCNetu a české servery jsou na stránce www.irc.cz nebo stručněji na mém webu. 18.8.2004 09:58 finn Server Crypto-World upozornil na nalezení kolize v oblíbeném hešovacím algoritmu MD5 (a několika dalších ? MD4, SHA-0, pravděpodobně i SHA-1 aj.). 18.8.2004 14:14 Petr Krčmář Gary Routh se na osnews.com podíval podrobně na zoubek RealPlayeru 10 pro Linux a byl velmi mile překvapen. 18.8.2004 14:27 Petr Krčmář America online právě vydala Netscape 7.2, který je založen na Mozille 1.7. Poslední verze vylepšuje blokování reklamních oken, podporu standardů, spam filtr, výkon zobrazování a opravuje několik stovek chyb. (Download). 19.8.2004 08:57 Petr Krčmář Na LinuxBeta.com jsou k dispozici slidy, které ukazují instalaci Debianu krok za krokem. Užitečné především pro ty, kteří se chystají na svou první instalaci. 19.8.2004 09:11 Petr Krčmář Černá, bílá, černá, bílá, černá, bíla, ... co je to? Tučňák válí sudy. :-D 19.8.2004 09:28 Petr Krčmář Mozilla.org vydala v rámci prodlouženeho vývojového cyklu Mozillu 1.8 Alpha 3. Mezi novinkami nalezneme průhledná okna na GTK 2, nedetekovatelnou podporu document.all, možnost vypnout styly stránky, zlepšení importu z mailové klienta Eudora či základní podporu revolučních sloupců z CSS 3. (Download) 19.8.2004 10:23 Juraj Kubelka Používáte program Liferea? Poslední dvě verze už mluví česky. Bohužel se mi nepodařilo včas vložit češtinu pro novou verzi 0.5.3. Pokud ji používáte stáhněte si ji zde. 19.8.2004 13:38 Petr Krčmář Přestože je PHP většinou používáno jako nástroj pro tvorbu webu, má většinu vlastností moderního skriptovacího jazyka. Linuxjornal.com přináší článek, ve kterém je nastíněna řada možností, jak řádkovou verzi využít například na práci s datovými soubory nebo ke zpracování XML. 19.8.2004 15:26 Tomáš Morstein V pondělí bude ukončen vývoj a výroba slavných RISC procesorů Alpha AXP. Firma HP je bude prodávat do roku 2006 a technická podpora bude poskytována až do roku 2011. Rozlučme se s legendou mezi procesory, s čistou architekturou, na které byly vystavěny... 19.8.2004 19:28 radfoj Všichni příznivci desktopoveho prostředí KDE vězte, že jeho nová verze 3.3 je venku. Více zde. 19.8.2004 20:01 Vlastimil Ott Hans Reiser nabízí k testování novou verzi svého souborového systému ReiserFS. Srovnání s ostatními FS. 19.8.2004 20:21 Vlastimil Ott IOSN, iniciativa United Nations Development Programme, představuje User Guide to Using the Linux Desktop. (Má to být) Univerzální (!) manuál k GNU/Linuxu, nezbytně nutné obrázky vzaty z Fedory. 20.8.2004 08:30 Petr Krčmář Že je POV-Ray velmi mocným nástrojem pro tvorbu realistických 3D obrázků asi víte. Možná už ale nevíte, že právě slaví své desáté výročí a že jeho fanoušci uspořádali soutěž o nejlepší výtvor, ve které můžete vyhrát jednu z 25 zajímavých cen. K nahlédnutí je už i síň slávy. 20.8.2004 08:37 Petr Krčmář Asian Art Museum ze San Franciska, které vlastní největší sbírku asijského umění na západní polokouli, testuje nový web, který umožní návštěvníkům nahlédnout na digitální fotografie všech děl v celkové hodnotě téměř 4 miliard dolarů. Pro nás je ovšem zajímavé spíše to, že celá záležitost běží na SUSE Linuxu a železe IBM iSeries. 20.8.2004 12:05 Vlastimil Ott Japonská firma Aruze představila motherboard AP-3 pro herní automaty, který bude oživovat Linux. Do konce března 2005 chce také pro tuto 'platformu' představit 20 her a motivovat tak další firmy k využití Linuxu v podobných zařízeních. Zdroj pro-linux. 20.8.2004 12:11 Vlastimil Ott Novellu se ve 3. kvartálu daří, získal 23 mil. dolarů, obrat stoupl na 305 mil. dolarů. 20.8.2004 12:39 Vlastimil Ott Další petice: tentokráte pro ATI, věc: mizerné ovladače jejich produktů v ne-windowských systémech. Že máte nVidii? Podepište i přesto, oni vám to 'atiňáci' třeba budou moct někdy vrátit... 20.8.2004 22:04 Leoš Literák Právě jsem nasadil novou verzi Abíčka, jež hlavně přináší upgrade na zpětně nekompatibilní verzi 2.3 šablonovacího systému Freemarker. Prosím o hlášení případných chyb. 21.8.2004 19:34 Vlastimil Ott V sobotu 13. listopadu 2004 se koná konference Open Source a Free Software ve školství. Hledají se přednášející. Usiluje se o získání akreditace MŠMT. Diskusní fórum. 22.8.2004 16:59 Milan Lajtoš Prosím nekameňovať! Vyšla nová verzia (0.5.1) často odsudzovaného desktopového prostredia XPde, ktoré už má aj "Štart" menu... 22.8.2004 17:28 David Nečas (Yeti) Pokud si ještě stále nemyslíte, že se svět zbláznil, přečtěte si článek Jak používat RAM jako swap (a následný flamewar) na kerneltrap.org. 23.8.2004 09:39 Petr Krčmář Autor známého vypalovacího programu CDrecord změnil licenci. Prý proto, aby zamezil změnám v kódu bez jeho vědomí. Chce se tak bránit zanášení dalších bugů v jednotlivých distribucích. 23.8.2004 09:50 Petr Krčmář Mezi novinkami v Mozille 1.8 Alpha 3 se objeví i podpora document.all. Protože se jedná o velmi kontroverzní a diskutovaný krok, vydali členové týmu Czilla článek, který odpovídá na nejčastěji kladené otázky. 23.8.2004 10:02 Petr Krčmář Hledáte-li způsob, jak získat jednoduše Mozillu s vylepšeným vyhlazovaním fontů a uživatelským prostředím zapadajícím do GNOME 2, můžete se podívat na verzi kompilovanou proti GTK 2 a Xft na stránce Mozilla Xft. 23.8.2004 15:45 Ivan Bibr Vyšla druhá betaverze Mandrakelinuxu 10.1. Čeští a slovenští uživatelé Mandrakelinuxu mohou hlásit chyby pomocí formuláře na www.mandrake.cz. 24.8.2004 09:51 Petr Krčmář Cherry corp. vyvinul ve spolupráci se SUSE novou klávesnici pro Linux. Místo win kláves na ní najdeme klávesy s Tuxem a 29 horkých kláves, přímo pro použití v Linuxu. Cena je stanovena na ?29.99. 24.8.2004 11:22 Petr Krčmář Reiser4 konečně vyšel a jeho tvůrci tvrdí, že se jedná o nejrychlejší souborový systém současnosti. Je založen na modulárním systému a je navržen s ohledem na bezpečnost v armádním sektoru. 24.8.2004 13:51 Petr Krčmář Velmi brzy by měl vyjít XOrg X11 Server Release 6.8. Obsahuje mnoho zajímavých vylepšení a úprav. Podrobnější představu si můžete udělat z článku, který na toto téma vyšel, případně přímo z changelogu. 24.8.2004 14:06 Petr Krčmář Aničku možná znáte, ale už jste viděli její nové tričko? (neangličtinářům: "Pokloň se přede mnou, neboť já jsem root.") 25.8.2004 08:13 Petr Krčmář Znáte Hacklese? Pokud ne, jedná se o komiks z počítačového prostředí plného tučňáků. Důležité ovšem je, že začal vznikat český překlad tohoto veselého dílka. (Upozornil Adam Šindelář.) 25.8.2004 09:06 Petr Krčmář Vyšel YOPER Linux V series verze 2.1.0. Nová verze přináší REISER4 podporu, nový nedestruktivní NTFS resizing, grafický nástroj pro práci s oddíly, výběr mezi GRUB a LILO, nový kontrolní panel, KDE 3.3.0, jádro 2.6.8.1 a OpenOffice.org. To vše na jednom CD. 25.8.2004 10:49 Petr Krčmář Klávesnici pro linuxáky jsme už představili. Existuje však také další řešení, kterým je sada osmi linuxáckých kláves. Cena je ovšem mírně řečeno nepříznivá. 25.8.2004 17:04 Vlastimil Ott Kromě jiných změn byl do -current Slackwaru přidán Grub včetně instalační utility. Skončilo-li LILO, či neskončilo-li LILO? A co Netscape? A co Jan Tleskač? Keep slackin'! 26.8.2004 10:15 Vlastimil Ott Další zkušenost s Linuxem popisuje The Independent. Opakují se stejné problémy se softmodemy, skenerem, hledáním náhrady za MS Outlook, kompatibilitou dokumentů. Závěr zní ale kladně: Linux šplhá na vrchol. 26.8.2004 10:55 Petr Krčmář Ars Technica zpovídala managera vývoje freedesktop.org, kterým je Daniel Stone. 26.8.2004 12:43 Petr Krčmář Právě byl spuštěn projekt Linux Incompatibility List, který má přesně opačné ambice než ÁBíČko. Vytvořit katalog hardware všeho druhu, který pod Linuxem nefunguje. 26.8.2004 22:22 Vlastimil Ott Jak jsme už informovali, vyšel nový ReiserFS. Nyní se ukazuje, že se má stát pod názvem Namesys souborovým systémem budoucnosti, na který sází SUSE, Linspire, Red Hat a další. Hans Reiser tvrdí, že se vám nyní vyplatí uložit si každé telefonní číslo do zvláštního souboru. Nebo chcete milión malých souborů v adresáři? Není problém... 27.8.2004 08:29 ALIUM Vyšla nová verze oblíbeného a schopného zvukového editu Audacity 1.2.2. Tato verze obsahuje nové vlastnosti, jako jsou ukazatele úrovně, export více souborů a vícestopé nahrávání s nižší latencí. Opraveno bylo také mnoho chyb. Stáhnout. 27.8.2004 09:38 Rastislav Stanik Vyše 30 krajin bude 28. augusta oslavovať Deň slobodného softvaru. Pridajte sa ;-) 27.8.2004 10:00 Petr Krčmář Vývojaři jádra odstranili část kódu, který umožňoval zavádění binárních modulů. To naštvalo programátora, který přes pět let pracoval na binárním ovladači k webkamerám Philips. Projekt byl proto ukončen. 27.8.2004 13:15 Petr Krčmář Aby umožnila hladký přechod z konkurenčních systémů, vydala firma Lycoris společně s CodeWeavers novou verzi PowerPak 1.4, která má usnadnit samotný přechod bez potřeby vlastnit původní operační systém. 27.8.2004 13:17 Petr Krčmář Pokud hledáte výkonný, nenáročný a bezpečný web server, můžete se podívat na lighttpd. Umí FastCGI, CGI, Auth, Output-Compression, URL-Rewriting a mnoho dalšího. 28.8.2004 12:21 Petr Krčmář Krátce po vydání oficiální verze Corel WordPerfect for Linux, ji Corel zase rychle stáhl a na webu se objevilo oznámení o tom, že je tento produkt dále nedostupný. Znamenalo to ukončení projektu a jeho zmizení v propadlišti dějin? Corel tvrdí, že ne! 28.8.2004 13:05 Petr Krčmář Nástroj ccache umožňuje výrazné zkrácení doby (až 10x) kompilace ukládáním kompilačních výstupů, jež mohou být znovu použity při opakované kompilaci. Jedná se tedy o kompilační cache. Na IBM.com vyšel článek, který popisuje instalaci a použití tohoto užitečného programu. 28.8.2004 16:15 Petr Krčmář České stránky s překladem Hacklese byly přesunuty na hackles.gnu.cz. 29.8.2004 17:39 Vlastimil Ott Vyšel Scribus 1.2. Nová je podpora šablon, bylo vyřešeno přes 800 bugreportů, aplikace se stala jednou z Cool Applications rozhraní Qt a byla nasazena při výrobě skutečných novin. Konečně má také pořádnou dokumentaci. Stáhnout. 30.8.2004 08:58 Petr Krčmář FreeBSD je nejpopulárnější BSD systém. I přesto je na tom s popularitou mnohem hůře než řada linuxových distribucí. Proč je tomu podle vás tak? Můžete se vyjádřit v anketě, která se tomu snaží přijít na kloub. 30.8.2004 09:16 Petr Krčmář Internet slaví své 35. narozeniny. O jeho minulosti i budoucnosti píše CNN. Tak všechno nejlepší! 30.8.2004 11:05 Petr Krčmář Ještě máte dva dny na to, abyste si vybrali a objednali trička na Hysterce. ?Jde o trička pro h4x0ry, codery a geeky vůbec.? 30.8.2004 16:53 Vlastimil Ott Osvobozené hry jsou původně komerční, ale dnes už v určitém směru 'free' - ať už zdroják, nebo binárky, jenom pod Windows, nebo i pro další systémy. Od Abuse po Wolfenstein3D. 30.8.2004 17:05 Vlastimil Ott Na webu Slackware se vybarvil nový a praktický Package browser, s jehož pomocí můžete najít libovolný soubor, balíček nebo patch pro svůj Slackware 8.1 až -current. Keep slackin'! 30.8.2004 17:41 Robert Krátký Čile diskutované odstranění kódu, který v jádře umožňoval natažení binárního ovladače webových kamerek Philips, nakonec nedopadne pro uživatele tohoto hardware tak špatně. Sám Alan Cox po vzrušené debatě nabídl, že bude ovladač (bez háčku pro binární část) spravovat. 30.8.2004 21:11 Vlastimil Ott V české linuxové konferenci se dnes objevilo oznámení o zdarma dostupném (jak jinak) patchi, který umožňuje dvojnásobně zvýšit rychlost u CDMA modemu GPC-2460 (tedy na cca 480 kbps). [Zároveň upozornil i Petr Šobáň.] 30.8.2004 21:47 Leoš Literák Novinkou na abíčku je rychlá navigace ve slovníku (šest okolních pojmů) a pro rozsáhlé diskuse užitečný odkaz na nadřazený komentář. Enjoy :-) 31.8.2004 09:38 Petr Krčmář Projekt translate.org.za se snaží pomoci jižní Africe. Cílem je přeložit svobodný software do jedenácti afrických jazyků. OpenOffice.org jsou již přeloženy do čtyř z nich a chystá se Mozilla, Knoppix a další. 31.8.2004 12:58 Petr Krčmář Neziskové organizace se vždy snaží šetřit se svým majetkem. Se stále se zmenšujícími dotacemi je však někdy problémem samotné přežití. Článek na NewsForge vysvětluje, jak se jedné oklahomské neziskovce začalo dařit díky svobodnému software. 31.8.2004 13:12 Ondra 'Kepi' Kudlík Tento pátek, tj. 3. 9. 2004, se v 18:00 uskuteční Linuxové setkání v Brně. *******************************