Hlavní navigace

Linux otevírá průhledy do budoucnosti

3. 1. 2003
Doba čtení: 5 minut

Sdílet

Měli jsem tu možnost se v uplynulém roce věnovat počítačové realizaci zajímavé digitální výstavy "Průhledy do budoucnosti", která je přístupná v prostorách Hvězdárny a Planetária Mikuláše Koperníka v Brně na Kraví hoře. Tématicky je určena pro zájemce o astronomii a kosmonautiku, nicméně v tomto příspěvku se nebudeme ani tak zajímat o téma, ale o technické aspekty provozu takové výstavy.

Zadání spočívalo v rozjetí osmi počítačů s ovládáním pomocí tabletu ((ne)hliněné destičky), po kterém bude návštěvník jezdit prstem a řídit pohyb kursoru. Na obrazovce přitom bude jednoduché menu s možností výběru obrázku nebo doprovodného textu.

Komplikovaná analýza možností, zdrojů a potenciálu vedla k rozhodnutí, že celý počítačový systém pojede pod Linuxem. Vedly nás k tomu zkušenosti z jiných brněnských kulturních zařízení, která mají také ve svých prostorách počítače a předvádí na nich prezentace. Při jedné z návštěv měl jeden z autorů možnost si sednou k počítači a začít klikat. Uvaděčky byly ve vedlejší místnosti.. Následuje strohé líčení celé akce:

,,? kliknu 2×, 3× a objeví se známá zelená plocha s ikonkami. Aplikace spadla a jsem v systému. Co teď? Hledám v ikonkách, v menu a nic s očekávaným názvem mě do očí netrkne. Autostart při nabootování tu taky není… kliknu tedy na ikonu na ploše. Ok. Dobrý. Startuje se to.. Ok, ale je tu malý problém. Je to zjevně jiná prezentace. Co teď? Po několika minutách klikání a pokusu o další pád to vzdávám a zbaběle opouštím místnost.. Přichází uvaděčka… pomalu odcházím chodbou.. první uvaděčka volá další (obě poněkud starší dámy zjevně bez počítačových znalostí). Potutelně se začínám usmívat. Kochám se, když obě volají svého kolegu…''

Nyní ale zpět k práci. Operační systém na serveru i klientech je Debian GNU/Linux 3.0 „woody“. Jako optimální architektura se nám jeví jeden server s řadou bezdiskových klientů. Princip je poměrně jednoduchý. Klient je představován počítačem bez jakéhokoli disku se síťovou kartou umožnující bootování po síti. Po zapnutí vypínače se síťová karta snaží kontaktovat boot server, od kterého získá IP adresu a následně jádro k nabootování. Nakonec z něj získá i filesystém přes NFS. Principy jsou poměrně všeobecně známy. Proto odkazujeme na příslušné HOWTO (Diskless-HOWTO, Diskless-root-NFS-HOWTO, Diskless-root-NFS-other-HOWTO). V češtině jsou pak bezdiskové systémy popsány například v knize Linux Programujeme Profesionálně (recenze na ROOTovi) vydané u Computer Press, Praha 2001. Navíc existuje projekt přímo zaměřený právě na popsanou situaci. Proto jsme využili služebLinux Terminal Serveru. Tento projekt si klade za cíl vytvořit sadu nástrojů pro snadnou instalaci a užívání bezdiskového klienta.

Důvodů k použití bezdiskových klientů je řada. Jedním z nich je jejich nízká cena (ušetří se za disk, CD, disketu). Dalším je bezpečnost. V našem případě je ovšem cennější další vlastnost a tou je odolnost proti uživatelům. Systém musí byt připraven na to, že jej bude obsluhovat i méně kvalifikovaná obsluha, která bude vypínat počítače jako světla v místnosti. Je iluzí předpokládat znalost takových pojmů, jako je shutdown systému a podobně. Bezdiskový systém je naprosto ideální. Prostě se jen zapne a nabootuje. Nebo vypne a pak prostě jen server napíše do logu, ze se příslušná stanice nehlásí. Stačí jeden vypínač na vše, žádné čekání, žádný fsck, žádné obnovení jurnálu.

Ltsp není problém nainstalovat, ale jak dál? Ltsp poskytne základní funkce systému jako možnost se nalogovat, rozjet X-session, ale to není to, co potřebujeme. Po celém systému požadujeme, aby se po nabootování objevila rovnou obrazovka s připravenou prezentací bez loginů a jiných požadavků na uživatele. Navíc musíme spouštět programy lokálně, aby se snížilo zatížení serveru a sítě všeobecně. To nás vedlo k drobným úpravám.

V první řadě je zde přihlašování na server. To musí být automatické (zkuste si tabletem zadat heslo a říct ho každému návštěvníkovi). V LTSP je k autentifikaci použit NIS systém společně s NFS mountováním adresáře. Ten vyžaduje zadání hesla. Naštěstí existuje šikovná utilitka – autologin – která se bez hesla přihlásí sama. Přesněji řečeno jako universální uživatel. Je to sice určité bezpečnostní riziko, na druhé straně návštěvník nemá moc možností, jak systému ublížit. V případě, kdy se mu přece jen podaří shodit aplikační program, se nic moc nestane, program se sám restartuje, protože je místo shellu v inittabu:

7:7:respawn:/usr/local/bin/vystava

script vystava pak obsahuje jednoduchý shell, který naloguje uživatele se jménem totožným s intranetovou adresou. Ten vypadá nějak takhle:

#!/bin/sh
#
# script na start vystavy

...

/usr/local/bin/autologin tty1 $HOSTNAME /usr/local/bin/startn

exit 0

Příkaz startn je malá variace na startx příkaz. Obsahuje kromě nepodstatných příkazů na mazání cache, locku a podobně příkaz:

startx netscape -geometry 1024x768+0+0
  http://server/${HOSTNAME}.html -- -s 0

tedy start X systému bez window managera (okno se nedá přesouvat, minimalizovat, zrušit). Nastartuje netscape s danou velikostí a na dané stránce. Parametr -s pro server pak ruší funkci screensaveru tak, aby nepohasínaly obrazovky po nějaké době nečinnosti.

A to je z hlediska systému vše. Jak vás asi už napadlo, na serveru běží nějaký http daemon, ze kterého si klienti sosají data tak, jak potřebují. Celý systém je tedy vybudován tak, že není problém změnit některý z panelů. Snadno updatovat počítače nebo server.

root_podpora

Fakticky největší problém je s tím, jak přemluvit netscape, aby fungoval i s pluginy. Jak známo, netscape musí uložit nějaké informace do home adresáře, i když dáte pluginy do systémových adresářů. Proto musí mít každý počítač na serveru adresář, kam se ukládají tato data. Systém NIC je dobrá volba, přestože dnes existuje například LDAP.

Protože výstava má být plná obrázků, animací a interagovat s uživatelem, rozhodli jsme se použít vývojové prostředí Macromedia Flash MX. Jak už tušíte z předchozích řádků, cílem bylo vyrobit vlastně webovou prezentaci s širokými možnostmi použití. Protože plugin do web prohlížeče pro Linux verze MX nebyl v době výroby k dispozici, vyrobili jsme první verzi výstavy (počítáme s pravidelným obměňováním obsahu, aby to nebyla nuda) staticky (tedy pracně ručně). Protože nyní je k dispozici celkem zdařilá beta verze MX verze pluginu také pro Linux, budou další výstavy načítány dynamicky z MySql databáze na serveru, včetně doprovodných bitmap (ty asi z disku). Poté se v našich prezentacích provizorně uložených v minulé verzi pluginu objeví také animace a prohlížení v Linuxu bude prosto kontur (nový plugin zobrazuje 24bitově). Vznikne tak šablona ve flashi, která umožní za splnění určitých počátečních podmínek později snadnou výměnu celé výstavy, případně prohlížení všech výstav během jedné návštěvy. O to, co vám uniklo od posledního projíždění prstem po (ne)hliněné destičce, tedy nepřijdete. Protože je nám jasné, že mnoho z počítačově gramotných uživatelů možná upřednostní prohlížení v klidu domova (nebo (ne)klidu v zaměstnání), připravujeme nyní výstavu na cédéčko. Dostupné bude buď prostřednictvím našich internetových stránek, nebo raději (levněji) přímo na hvězdárně.

Byl pro vás článek přínosný?

Autor článku