U N I V E R Z I TA
PA L A C K É H O
V
OLOMOUCI
Pedagogická fakulta Katedra technické a informační výchovy
Mgr. Miroslav Novotný 2. ročník – program celoživotního vzdělávání Program: Informatika – učitelství pro ZŠ
Uživatelský software v operačním systému GNU/Linux Závěrečná písemná práce
Vedoucí závěrečné písemné práce: Mgr. Jan Kubrický
Olomouc 2013
Prohlášení Prohlašuji, že jsem závěrečnou písemnou práci zpracoval samostatně a použil jen uvedených pramenů, literatury a elektronických zdrojů. V Konici dne 20. března 2013
Mgr. Miroslav Novotný
Obsah 1 Úvod........................................................................................................................................4 2 Popis systému.........................................................................................................................5 2.1 Prostředí operačního systému Linux...............................................................................5 2.2 Emulace a virtualizace....................................................................................................6 2.2.1 Možnosti emulace a virtualizace............................................................................6 2.2.2 DOSBox.................................................................................................................8 2.2.3 Virtual Box...........................................................................................................10 2.3 Wine..............................................................................................................................11 2.3.1 Charakteristika Wine............................................................................................11 2.3.2 Instalace Wine......................................................................................................12 2.3.3 Konfigurace Wine.................................................................................................14 2.3.4 Winetricks.............................................................................................................18 3 Praktické aplikace...............................................................................................................19 3.1 Internet Explorer...........................................................................................................19 3.2 Bakaláři.........................................................................................................................20 3.3 Výukové programy.......................................................................................................23 3.3.1 Terasoft.................................................................................................................23 3.3.2 Didakta.................................................................................................................26 3.3.3 BSP multimedia....................................................................................................27 4 Závěr.....................................................................................................................................28 5 Použité zdroje informací.....................................................................................................30
1 Úvod K volbě tématu této práce mě především vedla moje preference svobodného softwaru spojená s postem učitele informatiky na základní škole a současně na gymnáziu. Navíc zastávám funkci koordinátora ICT a správce školní sítě. Mám tedy na problematiku využívání svobodného softwaru náhled z více směrů. Jednak z pohledu učitele, který se na používaný software dívá především didakticky, jednak z pozice ICT koordinátora, který mimo jiné dohlíží na licence k softwaru používanému ve škole, s čímž souvisí i otázka finanční náročnosti. A za třetí se na problematiku dívám z pohledu správce sítě, čili z hlediska technického. Pokud jde o nasazení svobodného softwaru v instituci – tedy přesněji nasazení softwaru se svobodnou licencí – mám na mysli situaci, kdy svobodný je jak operační systém, tak aplikace. V současnosti tomuto stavu odpovídá nejčastěji nasazení GNU/Linux a příslušného aplikačního softwaru, většinou obsaženého přímo v distribuci nebo jejích komunitních repozitářích. V praxi se často řeší otázky celkových nákladů při srovnání použití Windows vs. Linux, či další hlediska při použití Linuxu místo Windows. Tímto problémem se zabývá hodně zdrojů, např. [1]. Tato práce řeší podmnožinu této problematiky, kdy jsme již rozhodnuti Linux použít, shledali jsme vhodnými mnohé nativní aplikace, ale vyvstala před námi potřeba použití (byť třeba jen jediné) aplikace určené pro Windows. Předkládaná práce se snaží ukázat možný přístup k problematice, jak provozovat windowsové aplikace pod Linuxem. Je členěna na dvě části. V první části můžeme nalézt přehled možností, které se nám nabízejí, chceme-li v Linuxu provozovat ne-nativní aplikace. Obsah této části je upřen především na hlavní objekt mé práce – API wrapper Wine. Druhá část práce je praktická, neboť je zde na konkrétních případech aplikací předvedeno, jak lze postupovat. Jednotlivé případy byly mnou odzkoušeny, takže u uvedených aplikací bude uvedeno i posouzení funkčnosti a vhodnosti dané aplikace. Výběr praktických aplikací byl přizpůsoben školnímu prostředí - a to jak pro potřeby výuky (např. výukové programy), tak pro nevýukové potřeby škol (např. software Bakaláři). Hlavním cílem mé práce je souhrn poznatků pro použití software Wine pod operačním systémem GNU/Linux a následně praktická aplikace těchto poznatků. Praktická aplikace spočívá v testování chování vybraných windowsových programů při jejich provozu pomocí Wine. Při testech bude hodnocena funkčnost a uživatelská použitelnost vybraných programů.
4
2 Popis systému 2.1 Prostředí operačního systému Linux Pokud se řekne Linux, myslí se tím většinou celý operační systém, i když striktně bychom měli pojmem Linux označovat jádro (kernel) – původně dílo Linuse Torvaldse. To, co dostane uživatel, je linuxový kernel spolu se systémovými nástroji a velkým množstvím aplikací souhrnně v tzv. linuxové distribuci. Linux a většina software pro něj se řadí do kategorie svobodného software, též označovaného jako open source software. Svobodné licence (nejčastěji nějaká varianta GNU/GPL) totiž vyžadují, aby byl spolu se softwarem šířen i zdrojový kód – odtud pojem open source. Správný název by tedy byl GNU/Linux. Toto označení jednak vyjadřuje fakt, že se jedná o svobodný software, a také fakt, že Linux je jenom jádro, ne celý systém. Tohoto striktního označení se dnes drží zejména komunita vydávající distribuci Debian. Většinou se ale setkáme s jistým zjednodušením, kdy se pojem Linux používá pro celý operační systém. Pokud bude v této práci použit pojem Linux, bude tím míněno totéž – operační systém, postavený na linuxovém jádru. Pro potřeby této práce uvádím popis linuxového operačního systému v rozsahu, který se dotýká samotné problematiky spouštění aplikací napsaných pro Windows. Proto zde budou uvedeny z oblasti správy a údržby systému jen ty oblasti, které se této problematiky bezprostředně dotýkají. Výchozím bodem bude stav, kdy máme nainstalovaný a zprovozněný systém a hodláme řešit potřebu spouštění windowsových aplikací. Systém Windows se instaluje vždy s grafickým interpretem. Uživatel nemá možnost instalace bez grafického interpretu ani možnost výběru mezi více grafickými interprety. V Linuxu tyto možnosti máme. Instalace pouze s řádkovým interpretem se používá zejména u serverů, kde grafický interpret není třeba a často není ani žádoucí. I zde máme na výběr mezi interprety – nejčastěji se ale používá řádkový interpret BASH. Na pracovní stanici se prakticky vždy používá grafický interpret, nicméně práci v řádkovém interpretu se ani zde zcela nevyhneme. Grafický interpret (grafické prostředí) se v systémech unixového typu řeší pomocí softwaru X Window System, zkráceně též X11 nebo též prostě X. Nad X11 se spouští samotné grafické uživatelské rozhraní (GUI). X11 obsahuje i jednoduchého správce oken (window manager), jednotlivá GUI ale často používají svého vlastního správce oken. Důsledkem této filozofie je skutečnost, že uživatel na unixových systémech, tedy i na Linuxu,
5
může narazit na různá GUI a systém se tedy vizuálně může jevit v různých případech dosti odlišně. Nejčastější grafická prostředí jsou: •
KDE – K Desktop Environment. Prostředí vizuálně podobné MS Windows. Má bohaté možnosti přizpůsobení jak funkčnosti, tak vzhledu. Balík KDE obsahuje i hodně aplikačního softwaru, který je dobře integrován do prostředí. Tyto aplikace lze nainstalovat i do jiných GUI, stačí spolu s nimi nainstalovat i QT knihovny.
•
GNOME – toto GUI je vytvořeno s důrazem na jednoduchost ovládání i pro méně zkušené uživatele, kdy pokročilejší funkce jsou skryty, aby uživatele nemátly. Tento fakt je občas kritizován. GNOME využívá knihovny GTK, které byly původně vytvořeny pro grafický editor GIMP.
•
UNITY – rozhraní vytvořené společností Canonical, která jej používá ve své distribuci Ubuntu. Podobně jako GNOME je zaměřeno na jednoduchost a přímočarost, navíc s ohledem na možnost použití dotykového displeje. UNITY je poměrně novátorské rozhraní a dělí uživatele v podstatě na dvě skupiny: jedni jej uznávají, druzí nikoliv.
•
Xfce, LXDE – tato GUI uvádím pohromadě, neboť mají podobné vlastnosti i vzhled. Jedná se o „lehká“ prostředí s nízkými nároky na výkon hardwaru. Používají se buď na starších strojích a nebo je používají uživatelé, kteří preferují graficky jednoduché a svižné prostředí bez zbytečných okras. Vzhledově jsou tato prostředí velmi podobná Windows 2000, nebo spíše Windows XP s nabídkou Start přepnutou do klasického provedení. Hardwarová náročnost již byla zmíněna u prostředí Xfce a LXDE. Oproti těmto
prostředím jsou prostředí KDE, GNOME a UNITY graficky propracovaná, s většími nároky na výkon hardwaru. Aby veškerý výpočetní výkon neležel na bedrech procesoru, používá se grafická akcelerace pomocí procesoru na grafické kartě. Pro všechny dostupné grafické efekty je nutno mít na grafické kartě funkční 3D akceleraci. Je to situace podobná jako u grafického systému Windows Aero, použitého ve Windows Vista a Windows 7. Pro naše potřeby není důležité, jaké GUI z uvedených budeme používat. Osobně preferuji prostředí KDE, proto většina screenshootů bude provedena v KDE.
2.2 Emulace a virtualizace 2.2.1 Možnosti emulace a virtualizace Tato problematika je široká – od špičkových profesionálních řešení až po řešení pro běžné uživatele doma či ve školách. Přidržím se druhé varianty. 6
Emulace znamená napodobení funkcí jiného zařízení či softwaru tak, aby v určitém systému (architektuře) bylo možno provozovat zařízení či software určené pro jiný systém. Pro naši problematiku je podstatná softwarová emulace. V [2] je emulace uváděna jako speciální případ virtualizace. Konkrétně emulace softwarová vytvoří v hostitelském systému podmínky, aby spouštěné aplikaci (která je určena pro jiný systém) poskytla kompatibilní prostředí a služby, a to takovým způsobem, aby tato byla schopna běhu. Podle výše zmíněného [2] je virtualizace chápána jako obecnější, nadřazený případ. Obecně vzato, virtualizace je široký pojem. Pro potřeby naší problematiky se omezíme na virtualizaci za účelem spouštění aplikací určených pro jiný než hostitelský operační systém. V tomto případě půjde o windowsových aplikací na Linuxu. Jak uvádí [3], virtualizace se v zásadě dělí na dvě řešení: •
Virtuální server (VS) – v jednom operačním systému je spuštěno více samostatných serverů.
•
Virtuální stroj (Virtual machine, VM) – na jednom počítači může být spuštěno více operačních systémů v různých virtuálních strojích. Na hostitelském počítači je nainstalován software na správu virtuálních strojů – virtual monitor. Virtuální servery běží na jednom kernelu hostitelského systému a jsou od sebe odděleny
na úrovni procesů. Pokud máme zůstat v rámci naší problematiky, z uvedené dvojice možností pro nás připadá v úvahu druhá možnost. V tom případě je situace následující. V hostitelském (host) systému je nainstalován virtualizační software (virtual monitor), kterým se vytvoří virtuální stroj emulující určitý hardware a do tohoto virtuálního stroje se nainstaluje požadovaný hostovaný (guest) operační systém, ve kterém lze spouštět potřebné aplikace. Výhody tohoto řešení jsou: ✔ Na rozdíl od emulace (jak bude popsáno dále) zde nejsou žádná softwarová omezení, protože z hlediska hostovaného operačního systému se virtuální stroj jeví jako fyzický stroj. ✔ Uživatel má k dispozici plnou funkčnost systému. Může pracovat s plným oprávněním, aniž by ohrozil hostitelský systém. Toto je velmi výhodné pro pokusy, testování softwaru či výuku Naproti tomu nevýhody jsou následující: ✗
Pokud potřebujeme hostovaný systém pouze pro spouštění určité aplikace, je spouštění a běh virtuálního stroje pouze z tohoto důvodu poněkud těžkopádným řešením.
✗
Někdy není zcela snadné či pohodlné sdílení dat mezi hostitelským a hostovaným
7
systémem. ✗
Při instalaci do virtuálního stroje musíme dodržovat licenční podmínky. To znamená, že v případě operačního systému Windows jako hostovaného systému musíme mít zakoupenu licenci. V případě použití pouhého emulátoru jsou jeho vlastnosti po stránce výhod a nevýhod
prakticky „inverzní“. Emulátor má následující výhody: ✔ Adresářová struktura emulátoru je vytvořena přímo v adresářové struktuře hostitelského systému. Z toho plyne, že sdílení dat mezi hostitelským systémem a aplikací běžící v emulátoru je snadné. ✔ Emulátor se nainstaluje jako běžná aplikace do systému a je připraven k použití. Není třeba spouštění žádného hostovaného operačního systému před spouštěním aplikace. ✔ Emulátor pouze vytváří prostředí vhodné pro běh dané aplikace. Není to operační systém a tudíž nejsme licenčně vázáni k výrobci operačního systému, jehož prostředí emulujeme. (Pokud nepoužijeme pro běh aplikace části systému – např. knihovny, které podléhají licenci.) Naproti uvedenému jsou nevýhody emulátoru oproti plnohodnotnému operačnímu systému: ✗
Oproti plnohodnotně nainstalovanému systému jsou funkce emulátoru omezeny, často je emulátor přímo optimalizován pro určitý typ aplikací (např. hry). Tvůrce emulátoru zveřejňuje seznam aplikací, u kterých byla ověřena funkčnost či nefunkčnost. Předmětem této práce je spouštění aplikací v emulátoru, virtualizace je uvedena jen pro
nástin problematiky. Dále bude představen emulátor DOSBox, virtualizační software Virtual Box a jako poslední software Wine. V případě Wine se nejedná o čistý emulátor, ale především je hlavním předmětem této práce. Proto bude probrán v širším záběru.
2.2.2 DOSBox Jak název napovídá, slouží k emulaci prostředí systému MS-DOS. V [4] jsou uvedeny základní vlastnosti tohoto emulátoru. Emuluje pro aplikace prostředí MS-DOSu „běžícím“ na procesoru 286/386 v reálném nebo chráněném režimu. DOSBox je zaměřen především na podporu starých DOSových her, v [4] je mimo jiné uveden i soupis podporovaných her. Z toho vyplývá, že je kladen důraz na emulaci starého hardwaru potřebného pro hry: zvukové karty, myši, joysticky a dále emulace modemového spojení, spojení po sériovém portu, či síťové spojení pomocí emulace IPX/SPX protokolu. Kromě her je samozřejmě možno 8
spouštět i jiný software. DOSBox je tak dobrá volba, pokud potřebujeme spouštět staré DOSové aplikace. Z hlediska výpočetního výkonu je DOSBox neefektivní. Uvádí se, že pro hostitelský počítač s procesorem Pentium 4 (3 GHz) je emulovaný výkon přibližně na úrovni procesoru Pentium. Tato vlastnost je ale mnohdy výhodou, neboť jinak bývá problém s neschopností běhu starých DOSových aplikací na rychlých procesorech (tzv. chyba 200 – dělení nulou). DOSBox je postaven na SDL knihovnách, což umožňuje jeho portování na různé platformy: Windows, Linux, MacOS, BSD, BeOS a další. Práce s programem probíhá v příkazové řádce. Na zdrojové wiki [4] je podrobná dokumentace, zde bych jako příklad práce s programem uvedl pouze nejčastější činnost, a to připojení adresáře jako virtuálního disku DOSBoxu. Po spuštění DOSBoxu se objeví následující okno s příkazovým řádkem a stručnými základními instrukcemi (obr. 1). Je vytvořen disk Z:, který slouží jako „systémový“ pro DOSBox. Stačí již jen připojit adresář s aplikacemi jako disk pod požadovaným písmenem (nejčastěji C:). Připojení se děje příkazem mount, podobně jako v unixových systémech. Syntaxe příkazu je např.: mount c ~/dos-apps
Zároveň stojí za připomenutí, že písmeno disku se v příkazu píše bez dvojtečky. Zbylá část příkazu je adresář, který se připojuje jako disk. Po jeho připojení je možno pracovat v DOSovské příkazové řádce nebo použít pro zvýšení komfortu některý dobový souborový manažer (M602, Norton Commander, apod.)
Obr. 1: Úvodní obrazovka DOSBoxu
Obr. 2: Textový editor T602 v DOSBoxu
Pro rychlou nápovědu slouží příkaz intro. Pokud nás zajímá konkrétní příkaz, napíšeme např. intro mount. Funkčnost je tedy podobná jako u příkazu man v Linuxu. Na obr. 2 je jako ukázka běh textového editoru T602.
9
2.2.3 Virtual Box Virtual Box je virtualizační software, který je v současnosti vyvíjený za podpory společnosti Oracle pod licencí GNU/GPL. Je multiplatformní, podporovány jsou hostitelské operační systémy Windows (XP a novější), většina linuxových distribucí, Mac OSX, Solaris a Open Solaris. Výčet hostovaných operačních systémů je obsáhlý, a proto je uveden na [5], odkud jsou čerpány i ostatní informace o Virtual Boxu. Umožňuje vytváření virtuálních strojů, jejich správu a spouštění. Podporuje řadu formátů virtuálních strojů a virtuálních pevných disků (podrobnosti v [5]). Virtual Box je podobný MS Virtual PC 2007. Má některé zajímavé vlastnosti, např. dobrou podporu USB zařízení, sdílené složky (snadný přenos souborů mezi hostitelským a hostovaným systémem). Zajímavá a praktická vlastnost je Seamless Mode (bezešvý mód), kdy jsou okna hostovaného systému včleněna do prostředí hostitelského systému (obr. 3). Tato práce je sice věnována spouštění windowsových aplikací po Linuxem pomocí softwaru Wine, ale Seamless Mode Virtual Boxu může být poslední (a vcelku vhodná) záchrana v případě že námi požadovanou aplikaci nelze spustit pod Wine. Musíme ovšem vlastnit licenci k Windows.
Obr. 3: Windows XP v Seamless Mode v OpenSUSE 12.1 (prostředí KDE)
10
2.3 Wine 2.3.1 Charakteristika Wine Software Wine je hlavním objektem této práce. Podle [6] je název Wine akronym: Wine Is Not an Emulator. Je označován jako vrstva zajišťující kompatibilitu a schopnost běhu windowsových aplikací na některých operačních systémech odpovídajících standardu POSIX. Konkrétně jsou uváděny: Linux, Mac OSX, BSD a Solaris. Místo toho, aby Wine simuloval vnitřní logickou strukturu Windows, jako to dělají virtuální stroje nebo klasické emulátory, Wine překládá volání Windows API přímo za běhu aplikace na volání POSIXová. Z hlediska efektivity a výpočetního výkonu se dosahuje příznivějších poměrů než při emulaci nebo virtualizaci. Další výhodou je čistá integrace windowsové aplikace do hostitelského prostředí, jak je uvedeno v [6]. Tato metoda se někdy označuje jako API wrapper (obálka). Jak už bylo řečeno, Wine sice není emulátor, ale svou povahou má blíže k emulátoru než k virtuálnímu stroji. S tím souvisí i jedna vlastnost pro emulátory typická: Není zaručen zdárný běh jakékoliv aplikace, byť na skutečném systému Windows běží bez problému. Na [6] je databáze otestovaných aplikací ohledně funkčnosti pod Wine. Praxe ukazuje, že vývoj Wine je docela dynamický, což je bezesporu dobře. Bohužel se však mohou z tohoto důvodu vyskytnout regrese, kdy novější verze Wine může (spíše výjimečně) přinést i nefunkčnost aplikace, která v předešlé verzi byla funkční. Pokud uživatel není zrovna fanoušek do testování funkčnosti různých aplikací, pravděpodobně využívá Wine k běhu jedné či několika málo aplikací. Pak ovšem, pokud se stávající verze wine jeví jako bezproblémová, není třeba za každou cenu instalovat novou verzi. Wine je svobodný software, šířený pod licencí GNU/LGPL. Asi polovina kódu je tvořena komunitou dobrovolníků, zbytek je sponzorován komerčními subjekty, zejména společností CodeWeavers. Tato společnost prodává produkt CrossOver, což je v podstatě Wine konfigurovaný a optimalizovaný zejména pro běh důležitých aplikací typu MS Office apod. Dále například existuje placený produkt Cedega, který je odnož (fork) Wine z doby, kdy ještě nepodléhal svobodné licenci GNU/LGPL. Tento produkt je zaměřen na hry. Hlavní úsilí jeho tvůrců se napíná do implementace „herních“ technologií, zejména DirectX. Následující části se budou zabývat podrobnější specifikací, instalací a konfigurací Wine. Struktura POSIXových systémů je v mnoha rysech obdobná, proto většina informací bude mít všeobecnou platnost. Veškeré praktické postupy pro účely této práce však probíhaly na této konfiguraci: 11
počítač: AMD Athlon 64 X2 4000+ (2,1 GHz), 4 GB RAM, Nvidia GeForce 7300GT systém: linuxová distribuce OpenSUSE 12.2 64bit, grafické prostředí KDE v4.8.5 Wine: verze 1.4.1 (stable) Proto screenshooty a některé informace budou poplatné uvedené konfiguraci. Oproti jiným linuxovým distribucím budou rozdíly minimální, největší rozdíly budou ve způsobu instalace. Kromě svého, výše uvedeného systému, provozuji Wine ještě v zaměstnání na distribuci Ubuntu. Zde se mi potvrdilo výše zmíněné: jediný viditelnější rozdíl je ve způsobu instalace.
2.3.2 Instalace Wine Instalace Wine probíhá obdobně jako instalace jiné aplikace na Linuxu. Doby, kdy uživatel musel stáhnout zdrojové kódy a pro svůj systém si aplikaci zkompilovat a poté nainstalovat, jsou už dávno pryč. Kompilace se používá ve speciálních případech, například při optimalizaci aplikací na určitý hardware. V případě desktopu si vystačíme s kompilovanými hotovými binárními balíčky. Balíčky dané aplikace při instalaci vyžadují často další balíčky, tyto balíčky mohou vyžadovat další, atd. Jedná se o tzv. závislosti balíčků. Uživatel mohl tak být postaven do situace, kdy pracně sehnal balíček (popř. si ho zkompiloval) a při instalaci byl dotázán na další balíček, atd.. Proto bylo vhodnější si závislosti instalovaného balíčku zjistit a nachystat si potřebné balíčky předem. Toto byl jeden z prvků, které Linux činily pro běžné uživatele poněkud uživatelsky nepřívětivým. Dnes prakticky všechny linuxové distribuce, které se snaží být přívětivé pro uživatele, používají pro instalaci a aktualizaci softwaru tzv. repozitáře. Repozitář je adresář se zkompilovanými balíčky. Většinou je umístěný na webu, ale jako repozitář je možné připojit i lokální adresář s balíčky vlastními. Uživatel nemusí procházet repozitáře ručně. Má k dispozici správce balíčků, který kontroluje verze balíčků obsažených v repozitářích a verze balíčků nainstalovaných v systému a přehledně je zobrazuje včetně verzí. Může také automaticky nabízet aktualizace v případě výskytu vyšší verze. Po vybrání balíčku k instalaci nebo aktualizaci si správce balíčků ověří závislosti a zajistí případné stažení požadovaných dalších balíčků. Po potvrzení uživatelem dojde ke stažení balíčků, instalaci a patřičné konfiguraci systému a je hotovo. Díky tomu, že repozitáře jsou velmi obsáhlé, pro běžného uživatele prakticky vymizel problém se závislostmi balíčků. Pomocí repozitářů se instaluje nebo aktualizuje v systému prakticky všechno. Od kernelu, jaderných modulů a ovladačů až po „nejposlednější“ aplikaci. Veškerý software je tak spravován jednotně a centrálně, což je pro uživatele velmi komfortní. 12
Každá linuxová distribuce používá určitý balíčkovací systém a svého správce balíčků. OpenSUSE používá balíčkovací systém RPM a jako správce balíčků je použit modul Správce programů, který je součástí ovládacího centra YAST (obr. 4). K dispozici je ještě Zypper, což je správce pro příkazový řádek. Ve Správci programů se zobrazují balíčky ze všech repozitářů, které máme připojeny (obr. 5). Častá je situace, kdy daný software (v tomto případě wine) je obsažen v hlavním repozitáři distribuce a zároveň je možnost připojit si komunitní repozitář zaměřený výhradně na daný software. Zde jsou pak většinou novější a častěji aktualizované verze. Tato možnost v OpenSUSE existuje. Máme tak na výběr mezi různými verzemi Wine. Občas se stává i to, že balíčky v různých repozitářích jsou zkompilovány s různými parametry a software má pak odlišnou podporu různých funkcionalit. S tímto jsem se ale u Wine nesetkal. Pro potřeby této práce byla použita verze 1.4.1 z hlavního repozitáře distribuce. Ve stejné době byla v repozitáři Vývojové verze Wine k dispozici verze 1.5.1.
Obr. 4: Ovládací centrum YAST v OpenSUSE
13
Obr. 5: Správce programů s nainstalovaným software Wine
2.3.3 Konfigurace Wine Wine jako takový není software, který musí uživatel ručně spouštět před spuštěním samotné aplikace (tak jako u klasického emulátoru – např. DOSBoxu). Wine při instalaci nakonfiguruje systém tak, že spustitelné windowsové soubory (.exe) jsou zasociovány tak, že si při pokusu o spuštění zavolají Wine. Tak to platí při spouštění z některého grafického správce souborů – v mém případě z Dolphinu nebo Krusaderu. V případě spouštění aplikace pomocí příkazového řádku je třeba specifikovat, že jde o Wine. V podstatě spouštíme Wine, jehož parametrem je windowsová aplikace. Např.: wine ~/downloads/setup.exe
Předtím, než pod Wine spustíme první aplikaci, musí proběhnou konfigurace prostředí Wine. Konfigurační utilitu můžeme spustit kdykoliv příkazem winecfg. Objeví se následující okno (obr. 6):
14
Toto okno se objeví i v případě, kdy máme čerstvou instalaci wine a pokusíme se spustit nějakou windows aplikaci. Aby bylo možno se v konfiguraci orientovat, je třeba si ujasnit souborovou strukturu Wine. Pokud
se
pro
názornost
přidržíme
představy, že Wine jsou „jakási Windows“, pak jejich „instalační složka“ je ~/.wine
Pro úplnost dodávám, že vlnovka značí domovský adresář uživatele a tečka v názvu značí, že adresář je skrytý. Z hlediska Linuxu Obr. 6: Konfigurace Wine
je tedy adresář .wine pouze jeden z mnoha adresářů v profilu daného uživatele. Pokud si
do prostředí Wine uživatel nainstaluje nějaký windowsový software, ostatní uživatele to nijak neovlivní a ani se to nedozví. Celé prostředí Wine je tedy pro každého uživatele v Linuxu jiné a oddělené. Adresář .wine se vytvoří při prvním spuštění Konfigurace Wine. Adresářová struktura Wine je následující: ~/.wine/ |-dosdevices |
c: -> ../drive_c
|
z: -> /
|-drive_c |
Program Files
|
Program Files (x86)
|
users
|
windows
|system.reg |userdef.reg |user.reg
Adresář dosdevices obsahuje pouze několik symbolických linků (odkazů), odkazujících na adresáře v linuxové struktuře. Slouží k mapování diskových jednotek pod písmeny, jak je to běžné ve Windows. Link c: vede na adresář ../drive_c, který obsahuje známé adresáře Windows, Program Files, Users. Adresář Users obsahuje adresář uživatele, kde jsou položky jako Plocha, Dokumenty, apod. opět pouze jako linky na příslušné adresáře v linuxové struktuře uživatele. Soubory .reg jsou obdoba registrů ve Windows. 15
Jednotlivé karty okna Konfigurace Wine (obr. 6) mají následující význam: •
Programy – zde se nastavuje, jak se má Wine „tvářit“, kterou verzi Windows má předstírat. Je možné zadat i pro jednotlivé aplikace individuálně.
•
Knihovny – v případě, že aplikace má problém s knihovnou, určí se zde, zda použít vestavěné knihovny Wine nebo dodané zvenčí.
•
Obraz – zde se nastavují možnosti integrace Windows oken do linuxového desktopu. Zde je možno vyhradit pro windowsové aplikace virtuální desktop a zadat mu rozměry. Někdy toto může vyřešit problémy s grafikou.
•
Začlenění do pracovní plochy – zde je možné nainstalovat motiv vzhledu oken, jinak bude použit vzhled podobný Windows 2000. Dále je zde možno měnit namapování složek Plocha, Dokumenty, apod do Wine.
•
Disky – zde se provádí již zmíněné mapování adresářů pod písmenka disků. C: je neměnné (namapované na ~/.wine/drive_c). Ostatní písmena je možno editovat. Např. flashdisk mám jako D: namapovaný na /media/jmenovkadisku,
•
Zvuk – možnost otestování zvukového výstupu, popř. konfigurace. Pokud není problém se zvukem, všechny položky je lépe ponechat na System default. V praxi je někdy vhodné mít „více instalací Windows“. Například tvůrce webových
stránek testuje svoje dílo v různých prohlížečích a může si do jedné instance Wine nainstalovat Internet Explorer 7 a do jiné instance Internet Explorer 8 a mít je v případě potřeby spuštěné oba současně. Tato možnost se nazývá instalace aplikací do wine lahví (bottles). Základní lahev je adresář .wine. Ostatní lahve mají svoje adresáře, svoje nastavení. Na vytváření a správu lahví existuje i utilita s grafickým rozhraním WIBOM (Wine Bottles Manager). Je popsána v [7]. Všechny operace, které program nabízí, se ale dají snadno vykonat i „ručně“ pomocí příkazového řádku. Všechny operace s lahvemi se vykonávají za pomoci příkazu WINEPREFIX.
Kompletní zápis je:
WINEPREFIX=cesta k složce wine lahve
Tento výraz se předřazuje běžnému příkazu. Pokud nepoužijeme WINEPREFIX, pracuje se vždy automaticky s výchozí lahví .wine Např. winecfg
– založí (pokud již neexistuje) výchozí wine lahev .wine WINEPREFIX=/home/franta/.wine_ie7 winecfg
16
– založí (pokud již neexistuje) wine lahev .wine_ie7 pro uživatele franta. Adresář s lahví se může jmenovat libovolně, pouze je vhodné použít tečku, aby byl skrytý. Dále je vhodné volit pro přehlednost název adreáře ve tvaru .wine_něco. Pozor, Linux, stejně jako ostatní unixové systémy, je case-senzitivní. Výraz WINEPREFIX musí být zapsán velkými písmeny. Příklad spuštění programu ve výchozí lahvi: wine iesetup.exe
Příklad spuštění programu v lahvi .wine_ie7: WINEPREFIX=/home/franta/.wine_ie7 wine iesetup.exe
Další důvod pro používání Wine lahví je určitý způsob zabezpečení instalace vybrané aplikace před nechtěnými zásahy uživatele. Je třeba si uvědomit, že každá Wine lahev je umístěna v domovském adresáři uživatele, a proto k ní má uživatel plný přístup. Pokud je třeba provozovat pod Wine aplikaci, na jejíž funkčnosti záleží, je vhodné tuto aplikaci nainstalovat do zvláštní lahve. Filozofie tohoto přístupu spočívá ve faktu, že běžný uživatel neovládá práci s příkazovým řádkem. Pokud si opatří nějaký windowsový instalátor a spustí ho poklepem myši v grafickém prostředí, poběží tento ve výchozí Wine lahvi ( .wine). Tímto způsobem může uživatel pracovat s různými soubory, které si například „postahuje“ z internetu. Wine lahev je pak „nakonfigurována“ vším možným, včetně malwaru a virů. Pokud je potřeba pod Wine provozovat aplikaci, na jejíž funkci záleží, není optimální, běží-li ve výchozí lahvi spolu se vším ostatním, co si uživatel (i nevědomky) nainstaloval. Pokud by chtěl uživatel nainstalovat program do vyhrazené Wine lahve, musel by spustit konzoli (příkazový řádek) a tam použít parametr WINEPREFIX spolu s názvem adresáře příslušné Wine lahve. Použití konzole, znalost problematiky Wine lahví – to jsou předpoklady, které méně zkušený uživatel splňuje s malou mírou pravděpodobnosti. Pokud jsou aplikace nainstalované do různých láhví, uživatel se tuto skutečnost vůbec nedoví, pokud se po ní nebude pídit. Na ploše nebo v nabídce aplikací bude mít patřičné ikony a vůbec nemusí mít ponětí o tom, že je spouští z různých lahví. Tato myšlenka se objevila v souvislosti s problematikou, uvedenou v [8]. Tento příklad bude uveden v praktické části této práce, konkrétně se bude jednat o instalaci programu Bakaláři na linuxovou stanici. Bakaláři, jakožto windowsová aplikace na linuxovém desktopu jsou typický příklad, kdy si aplikace zasluhuje instalaci do samostatné lahve. 17
V [9] je doporučeno pro každou významnější aplikaci vytvořit vlastní Wine láhev. Ostatně touto cestou jde i CrossOver - komerční varianta Wine.
2.3.4 Winetricks Winetricks není aplikace, je to jenom skript, který se používá pro zjednodušení práce při doinstalovávání runtime knihoven a jiného podpůrného software do Wine. Postupně se nabídka rozrůstala o konkrétní software pro Windows, dnes je ve Winetricks např. i podsekce hry. Winetricks se většinou nainstaluje spolu s Wine. Pokud by bylo potřeba, je možné jej stáhnout z http://winetricks.org/winetricks. Pro správnou funkci Winetricks je třeba ještě balíček cabextract. Po spuštění se objeví jednoduché okno, kde lze potřebné volby naklikat. Mně se jako efektivnější jevila práce v příkazovém řádku, tudíž budu dále popisovat práci s winetricks v konzoli. Pro zobrazení nápovědy stačí napsat: winetricks -h
Vypíše se seznam parametrů, se kterými lze skript spustit. Pro moje potřeby byly nejužitečnější volby: winetricks dlls list
Vypíše všechny podporované položky (runtime knihovny, DirectX, patří sem ale např. i Internet Explorer, apod.). winetricks list-installed
Vypíše nainstalované položky. V případě vybrané položky proběhne stažení a instalace následovně: winetricks položka
V případě instalace do oddělené láhve se použije WINEPREFIX: WINEPREFIX=~/.wine-něco winetricks položka
Konkrétní případy použití Winetricks budou uvedeny v praktické části.
18
3 Praktické aplikace 3.1 Internet Explorer Je nepravděpodobné, že by uživatel Linuxu preferoval Internet Explorer (IE) jako výchozí prohlížeč k běžnému prohlížení webu. Pokud ale tvoří webové stránky, měl by svoje dílo testovat ve všech rozšířených prohlížečích. V případě Internet Exploreru to platí zvláště, protože chování tohoto prohlížeče je oproti prohlížečům založeným na jádře Gecko (Mozilla), Webkit (Chrome, Safari, Konqueror) či Presto (Opera) mírně odlišné. Často je potřeba optimalizovat kód speciálně pro IE. Z vlastní praxe vím, že pokud vytvořím validní kód a bude bezproblémový např. ve Firefoxu, odchylky zobrazení na ostatních ne-IE prohlížečích budou žádné nebo nepodstatné. Navíc díky značnému rozšíření Windows XP je stále hodně přístupů na web z IE 8, který oproti IE 9 nepodporuje některé funkce, např. v CSS. Proto je vhodné testovat i funkčnost starších verzí IE oproti IE 9. Při pokusu instalace Internet Exploreru pomocí Wine jsem narazil na tři problémy, které způsobily, že v podstatě musím konstatovat, že instalace IE pomocí Wine je problematická. I. Winetricks nabízí k instalaci IE6, IE7 a IE8. Postupoval jsem podle [10], kde jsou informace totožné s mnoha podobnými informačními zdroji. Použil jsem vyhrazený prefix (láhev) pro tuto instalaci, správně jsem nastavil architekturu „stroje“ pomocí příkazu WINEARCH. Celý příkaz potom vypadal následovně: Vytvoření prefixu (lahve): WINEPREFIX=~/.wine32ie7 WINEARCH=win32 winecfg
Instalace: WINEPREFIX=~/.wine32ie7 WINEARCH=win32 winetricks ie7
Předstíraný restart „Windows“: wineboot -r
Následně spuštění: WINEPREFIX=~/.wine32ie7 WINEARCH=win32 wine 'C:\Program Files\Internet Explorer\iexplore'
Program se spustil, nicméně po několika sekundách nahlásil chybu a došlo k ukončení. Nepomohla ani aktivace virtuálního desktopu v nastavení Wine. Pravděpodobně je funkčnost velmi závislá na verzi Wine. Ostatně to že situace není jednoduchá, vyplývá ze záznamu v databázi testovaných aplikací Wine [11]. Je možné, že na jiné konfiguraci bude funkčnost lepší, nicméně nemohu toto řešení označit za funkční. II. Instalace IE pod Wine porušuje licenční ujednání k programu. Jak jsem se sám 19
přesvědčil a jak se uvádí i v [10], je v licenčním ujednání v instalátoru IE výslovně stanoveno, že software je uživatel oprávněn použít, jestliže má licenci k patřičné verzi Windows. Jestliže tuto licenci nemá, není oprávněn software instalovat a používat. III. Verzi IE9, která je aktuální, pomocí Wine provozovat nelze. Uvádí to jak [10], tak [11]. V [10] je pro případ IE9 uvedena možnost, která se nabízí v [12]. Microsoft nabízí hotové virtuální disky ve formátu VHD určené pro vytvoření virtuálního stroje v Microsoft VirtualPC. V tomto souboru VHD je zkušební instalace Windows s příslušnou verzí IE. Na stránce je uveden jako účel testování webů na rozdílných verzích IE. Jelikož Virtual BOX plně podporuje formát virtuálních disků VHD, není problém vytvořit virtuální stroj. Tato možnost se mi jeví jako jediná schůdná pro spouštění IE na linuxovém systému.
3.2 Bakaláři Pokud chceme požívat Linux na pracovních stanicích ve školství, narazíme často na aplikace, které potřebujeme a které nemají v oblasti open-source alternativu. Typický příklad je správa školní matriky systémem Bakaláři. Při řešení tohoto problému jsem použil postup uvedený v [8]. Při instalaci Bakalářů na Windows stanici je nutné nejdříve namapovat adresář s Bakaláři na serveru jako síťový disk na stanici. Tento síťový disk je potom použit pro instalaci programu Bakaláři na síťovou stanici. V případě instalace na linuxovou stanici je situace podobná. Ve Wine je třeba namapovat vhodné písmeno disku na adresář na serveru. Wine ale neumožňuje mapovat přímo síťové položky, pouze lokální. Proto je nutno nejdříve obsah serverového adresáře připojit na linuxové stanici do vhodného adresáře. Situace, na které byla vyzkoušena funkčnost Bakalářů pod Linuxem, byla následující: Souborový server se systémem Windows 2003, síťová stanice s nainstalovanou linuxovou distribucí Ubuntu, přesněji řečeno Lubuntu (Ubuntu s „lehkým“ grafickým prostředím LXDE) verze 12.04 LTS. Prvním krokem je připojení obsahu adresáře na serveru do lokální adresářové struktury Linuxu. Příkaz pro připojování souborových systémů je univerzálně platný mount. Jeho přímé použití by mělo dvě nevýhody. Jednak bychom museli tento příkaz vykonat ručně a komfort dále snižuje fakt, že pro připojení disku potřebujeme mít oprávnění roota. Tato situace se dá řešit použitím su nebo sudo. Pohodlnější je ale provést připojení automaticky při startu systému záznamem do konfiguračního souboru /etc/fstab. V [8] je uveden zápis do fstab v tomto tvaru: 20
//10.108.6.10/bakalar /mnt/albert/bakalar cifs _netdev,iocharset=utf8,domain=WORKGROUP,credentials=/etc/cifs/cifs_bakalar, gid=bakalari,dir_mode=0770,file_mode=0660 0 0
Mnou použitý zápis byl následující: //192.168.1.100/Aplikace /mnt/bakalari cifs _netdev,iocharset=utf8,credentials=/etc/cifs/cifs_bakalar,dir_mode=0777,fil e_mode=0666 0 0
Některé položky v zápisu jsou proměnlivé případ od případu (IP adresa serveru, názvy adresářů). Další rozdíly vyplývají z faktu, že autor měl linuxový server se Sambou, protože některé stanice měl s Linuxem, některé s Windows . Já jsem měl k dispozici server s Bakaláři pod Windows, tudíž mi stačil na straně stanice samba-klient a server jsem nemusel konfigurovat vůbec. Jak vyplývá z výpisu, připojení se děje protokolem cifs a je použit samostatný soubor s uloženými přístupovými údaji k serveru (položka credentials). Pokud máme menší nároky na bezpečnost, je možno přístupové údaje uvést přímo do zápisu v fstab. Potom použijeme položky username= a password= místo credentials. Dále jsem musel přístupová práva změnit z 770 na 777 pro adresáře a z 660 na 666 pro soubory. Autor doporučuje instalaci Bakalářů do vyhrazené Wine láhve (pod samostatným prefixem). Předpokládejme, že máme výchozí wineprefix (.wine) vytvořen. Vytvoření samostatného prefixu pro Bakaláře se provede: WINEPREFIX=~/.wine_bakalar winecfg
Obr. 7: Virtuální desktop ve Wine
Obr. 8: Mapování disků
Otevře se okno Konfigurace Wine, kde na záložce Obraz je dobré zapnout emulaci 21
virtuálního desktopu a nastavit rozlišení nižší, než je rozlišení monitoru (obr. 7). Autor postupu uvádí, že integrace oken není vždy zcela bezproblémová a u Bakalářů se mu virtuální desktop osvědčil. Na záložce disky se nastaví namapování vhodného písmene disku na adresář /mnt/bakalari (obr. 8). Dále je doporučeno doinstalovat do Wine základní fonty a některé knihovny. To se pohodlně provede pomocí WINETRICKS (postupně): WINEPREFIX=~/.wine_bakalar winetricks corefonts WINEPREFIX=~/.wine_bakalar winetricks vb6run WINEPREFIX=~/.wine_bakalar winetricks vcrun6sp6 WINEPREFIX=~/.wine_bakalar winetricks mdac28
Na tomto místě bych připomenul, že v [8] má autor drobnou chybu, kdy v některých příkazech má jako název adresáře .wine_bakalar, v jiných .wine_bakalari. Pokud jsou učiněny předchozí kroky, můžeme přistoupit k instalaci Bakalářů. Autor doporučuje totéž, k čemu jsem v praxi došel také, a to nakopírování obsahu instalačního CD Bakalářů do podadresáře na serveru. Obsah je tak dostupný pohodlně z kterékoliv stanice. V mém případě na linuxovém desktopu je cesta k instalátoru: /mnt/bakalari/install/Baka_verze/install/winlocal/inst_lok.exe
Celý příkaz pro instalaci Bakalářů na stanici je: WINEPREFIX=~/.wine_bakalar wine /mnt/bakalari/install/Baka_verze/install/winlocal/inst_lok.exe
Od této chvíle dál instalace postupuje stejně jako na stanici s Windows. Nainstalovaný software Bakaláři na linuxové stanici je na naší škole používán více uživateli převážně z 1. stupně ZŠ zcela bezproblémově, a to včetně tiskových výstupů. Na obr. 9 je screenshoot běžících Bakalářů na stanici s linuxovou distribucí Lubuntu 12.04 LTS. Jak je vidět, přidržel jsem se doporučení autora [8] použít emulaci virtuálního desktopu. Okno Bakalářů tedy není volně integrováno do linuxového desktopu, ale běží ve virtuálním desktopu Wine.
22
Obr. 9: Bakaláři, běžící na linuxové stanici (Lubuntu 12.04 LTS)
3.3 Výukové programy 3.3.1 Terasoft Software Terasoft patří k velmi rozšířeným výukovým programům na školách. Výrobce vytvořil mnoho titulů, není tedy v mých silách, ani v rozsahu této práce, otestovat větší počet produktů. Pro test byl vybrán titul TS Angličtina hrou I pro 1. stupeň ZŠ. Postup instalace: Vytvoření Wine láhve (založení instance Wine pod vlastním prefixem). WINEPREFIX=~/.wine_terasoft winecfg
Spuštění instalátoru z CD. WINEPREFIX=~/.wine_terasoft wine "/media/TS English/setup"
Instalátor byl spuštěn z uvedené cesty, protože sem byl systémem připojen disk CD. Uvozovky v adresářové cestě k CD instalátoru byly použity, protože v cestě se vyskytuje mezera. Poté se spustila standardní instalace Terasoft. (obr. 10 a 11) 23
Obr. 11: Instalace Terasoft
Obr. 10: Instalace Terasoft
Po proběhlé instalaci bylo možno program spustit ze systémového spouštěče aplikací, kde instalátor vytvořil spouštěcí ikonu automaticky. (obr. 12)
Obr. 12: Spouštěcí ikona Terasoft ve Spouštěči aplikací
Program se bez problémů spustil a bezchybně fungoval. (obr. 13)
24
Obr. 13: Výukový program TS Angličtina hrou v distribuci OpenSUSE
Jelikož program Terasoft Angličtina hrou běžel naprosto bez problémů, rozhodl jsem se vyzkoušet další produkty od této firmy, aby test měl větší výpovědní hodnotu. Vybral jsem produkty TS Němčina 4 a Český jazyk 4. Vytvářet pro každý program samostatný prefix (lahev) jsem považoval za zbytečné. Všechny programy Terasoft jsem instaloval do společné lahve .wine_terasoft. Instalační příkaz je analogický u všech Terasoft programů, liší se pouze v cestě k instalačnímu programu na CD. Instalace proběhla bezproblémově u obou programů. Automaticky se vytvořily ikony ve spouštěči aplikací. Oba programy se bez problémů spustily ve správném rozlišení. Ovšem u obou nefungoval zvuk. Pokusil jsem se problém napravit konfigurací Wine: WINEPREFIX=~/.wine_terasoft winecfg
V konfiguračním okně (obr. 14) jsem se soustředil na nastavení na kartě zvuk. Z výchozích hodnot (system default) jsem výstupní i vstupní zvukové zařízení přepnul na konkrétní hardware, což v mém případě je HDA ATI SB – AD198x Analog. V jiném systému tato položka bude jiná. Zvuk začal bez problémů fungovat u obou testovaných programů. Pravděpodobná příčina je v přímém přístupu k zvukovému systému ALSA, zatímco v defaultním nastavení se přistupuje přes zvukový server Pulse Audio, který byl možným zdrojem problémů. 25
Obr. 14: Konfigurace zvuku pro Terasoft
3.3.2 Didakta Z výukových programů Didakta (výrobce Silcom) byl vybrán program Geometrie 1. Instalace má obdobné kroky, jako v případě Terasoftu – vytvoření prefixu a instalace programu z CD. Podobně jako u Terasoftu se vytvořil spouštěč v systémové nabídce. Pokus o spuštění ale vedl k chybovému hlášení: Run-time error '425': Object doesn't support
this
action.
Program je poměrně starý – z roku 2002. V systémových
požadavcích jsou verze Windows uvedeny po Windows 2000 včetně. První, co jsem tedy zkusil, bylo v nastavení Wine deklarovat starší verzi Windows. Dále jsem zkusil prefix založit znovu s výslovnou deklarací platformy Windows 32bit. Můj linuxový systém je 64-bitový a wine ve výchozím nastavení se „chová“ jako 64-bitová Windows. Toto by nemělo být na závadu při spouštění 32-bitových aplikací, nicméně s ohledem na stáří programu jsem raději zkusil nadeklarovat 32-bitovou architekturu pomocí parametru WINEARCH. Celý zápis je pak následující: WINEARCH=win32 WINEPREFIX=~/.wine-didakta winecfg
Obdobná syntaxe je i v případě instalace programu. Všechna tato opatření ale nevedla ke změně k lepšímu. Informace k chybě 425, které jsou k dohledání na webu, jsou buď příliš všeobecné nebo vedou na softwarové nástroje pro automatickou „opravu“ instalace Windows. Z uvedeného vyplývá, že chyba 425 může mít pestrou paletu příčin. Nevylučuji, že by se řešení dalo nalézt, ale spíše to považuji za nepravděpodobné. Jelikož posuzuji dosažení funkčnosti z hlediska uživatele, který nechce nebo nemůže nad každou instalací příliš dlouze přemýšlet, nezbývá mi než program hodnotit jako nefunkční. 26
Od uvedeného výrobce jsem vyzkoušel ještě program Diktáty 1 – nižší stupeň. Tento program je novějšího data – 2005. Tentokrát jsem se rozhodl, že opatření, jež jsem zkoušel u programu Geometrie 1 (a která ke zdárnému výsledku stejně nevedla), provádět nebudu a omezil jsem se na vytvoření samostatného prefixu bez dalších úprav instance Wine. V tomto případě jsem zaznamenal částečný úspěch. Program se spustil, nicméně v poměrně hrubém rozlišení 640x480. Zvuk fungoval. Z odpozorovaných projevů usuzuji, že programy Didakta jsou vytvořeny technikami, které s Wine nejsou zcela kompatibilní.
3.3.3 BSP multimedia Od tohoto vydavatele jsem vyzkoušel tituly: •
Jak věci pracují
•
Encyklopedie přírody
•
ASTRO 2001 – Báječný vesmír Po zkušenostech s programy Didakta jsem zvolil jednotný postup: Vytvoření
vyhrazeného prefixu bez dalších nastavení a následně instalace bez zkoušení dalších praktik. První dva programy měly problém se spuštěním instalátoru a instalace neproběhla. V případě ASTRO 2001 sice proběhla instalace, program se i spustil, nicméně po úvodní obrazovce přestal reagovat. Nezbylo, než jej ukončit příkazem KILL ve správci procesů v hostitelském systému. Následně program zanechal linuxový desktop v rozlišení 800x600 a bylo nutno jej opravit ručně zpět na původní hodnotu.
27
4 Závěr Při prověřování funkčnosti aplikací byly zjištěny značné rozdíly u jednotlivých aplikací. Přesto nelze jednoznačně formulovat vhodnost či nevhodnost nasazení GNU/Linux ve škole bez toho, aniž abychom přihlédli ke konkrétní situaci ve škole. Pokud by byl požadavek na funkčnost libovolného windowsového programu prostřednictvím Wine, pak tento samozřejmě splnit nelze. Při použití GNU/Linux ve škole z pohledu tématu této práce je možno uvažovat následující situace: •
Kabinet učitele – zde požadujeme hlavně kancelářský balík (zde u nás ve škole používáme LibreOffice, a to i na stanicích s Windows) a ostatní běžné aplikace, dále přístup do školní matriky. U nás používáme software Bakaláři, jehož funkčnost pod Wine je bezproblémová. Pokud škola používá výukové programy, je vhodné, aby je měl pro případ přípravy učitel k dispozici v kabinetu. Z tohoto hlediska se pak tento bod prolíná s následujícím.
•
Počítačová učebna – zde záleží na způsobu využití. Většinou se v praxi počítačová učebna využívá jak pro výuku informatiky, tak pro využívání výukových programů. V případě výuky informatiky požadavek na spouštění windowsových aplikací ustupuje do pozadí, protože potřebné aplikace existují v nativní linuxové variantě. V případě využívání výukových programů pro podporu výuky předmětů mimo informatiku je již situace pestřejší. Mnoho škol (i naše) má poměrně velké množství výukových programů, které získaly z velké části v minulosti v rámci různých hromadných akcí vybavování škol softwarem. Výsledky mého testu naznačují, že nejméně problematickou skupinou jsou programy Terasoft. Testovány byly tři programy a všechny se podařilo zprovoznit. Další testované skupiny už jako použitelné ke spouštění pod Wine označit nelze.
•
Počítač u interaktivní tabule – naše škola používá tabule SMART, výrobce tyto tabule podporuje i pod Linuxem.
•
Počítač pro volnočasové využití žáky – některé školy mají pro žáky vyhrazený prostor s přístupem k počítačům pro využití mimo běžnou výuku. U nás mají žáci k dispozici po vyučování počítače ve školním klubu, čímž je současně vyřešena i problematika dozoru. Zde požadavek na výukové programy ustupuje do pozadí, pro žáky je důležitý hlavně přístup na web, popřípadě běžná práce s dokumenty a jejich tisk.
28
Učitel, používající výukové programy, nenarazí na zásadní odlišnost mezi používáním programu pod Windows a používáním programu prostřednictvím Wine pod Linuxem. Při instalaci programu se vytvoří ve spouštěči aplikací ikony podobně, jako při běhu programu pod Windows v nabídce Start. Z hlediska uživatele (učitel, žák) tedy nedochází k podstatnému rozdílu při práci s programem. To platí samozřejmě za předpokladu, že daný program je provozuschopný pod Wine. Z hlediska koordinátora ICT přináší svobodný software úsporu finanční za licence a úsporu práce při správě licencí a dohledu nad legálností používání softwaru. Samotné výukové programy jsou však většinou pro Windows, s placenou, uzavřenou licencí. Koordinátor ICT zde ale může zasáhnout v případě, že se pořizují výukové programy až po zavedení open source softwaru ve škole, a vybírat podle funkčnosti. Funkčnost odzkouší podle postupů uvedených v této práci ve spolupráci se správcem učebny. Na správci učebny leží konkrétní technické řešení. Pokud zvládá administraci linuxových systémů, problematika Wine pro něj není příliš obtížnou součástí jeho práce. Provádí konfiguraci Wine, testování programů a následnou instalaci na pracovní stanice. Výběr programů provádí ve spolupráci s koordinátorem ICT. Z uvedeného vyplývá, že v případě využití GNU/Linux ve škole a potřebě spouštění windowsových aplikací se těžiště problematiky přesouvá na pole výukových programů. Těch je v praxi velké množství, prakticky výlučně pro Windows. Z výsledků této práce a ze zkušeností z praxe vyplývá, že situace situace bude na různých školách různorodá a musí se posuzovat individuálně. Věřím, že k tomu může přispět i tato práce.
29
5 Použité zdroje informací 1. BEDNÁŘ, Vojtěch. Linux na firemním PC: možnosti, rizika, cena. Praha: BEN technická literatura, 2007, 143 s. ISBN 978-80-7300-225-1. 2. Emulátor. Wikipedie [online]. 2013 [cit. 2013-02-02]. Dostupné z: http://cs.wikipedia.org/wiki/Emul%C3%A1tor 3. Klonovanie tučniaka alebo virtualizácia v Linuxe: úvod. Root.cz [online]. 2005 [cit. 2013-02-03]. Dostupné z: http://www.root.cz/clanky/klonovanie-tucniaka-alebovirtualizacia-v-linuxe-uvod/ 4. DOSBox. DOSBox Wiki [online]. 2012 [cit. 2013-02-02]. Dostupné z: http://www.dosbox.com/wiki/Main_Page 5. Oracle VM VirtualBox [online]. 2012 [cit. 2013-02-03]. Dostupné z: https://www.virtualbox.org/ 6. WineHQ - Run Windows applications on Linux, BSD, Solaris and Mac OS X [online]. 2013 [cit. 2013-02-04]. Dostupné z: http://www.winehq.org/ 7. Správce Wine lahví Wibom spouští aplikace pro Windows v Linuxu z grafického programu. Linux EXPRES [online]. 2010 [cit. 2013-02-13]. Dostupné z: http://www.linuxexpres.cz/okenko-do-oken/wibom-spravce-wine-lahvi 8. Bakaláři na Wíně. Linux ve škole [online]. 2012 [cit. 2013-02-13]. Dostupné z: http://linuxveskole.cz/bakalari-na-wine/ 9. Wine pro pokročilé. ABC Linuxu [online]. 2012 [cit. 2013-02-13]. Dostupné z: http://www.abclinuxu.cz/clanky/wine-pro-pokrocile 10. How to Run Internet Explorer 7, 8 and 9 in Linux with or without Wine. Rdeeson.com [online]. 2012 [cit. 2013-02-17]. Dostupné z: http://www.rdeeson.com/weblog/126/how-to-run-internet-explorer-7-8-and-9-in-linuxwith-or-without-wine.html 11. Internet Explorer. WineHQ [online]. 2013 [cit. 2013-02-17]. Dostupné z: http://appdb.winehq.org/objectManager.php?sClass=application&iId=25 12. Internet Explorer Application Compatibility VPC Image. Microsoft Download Center [online]. 2012 [cit. 2013-02-17]. Dostupné z: http://www.microsoft.com/enus/download/details.aspx?id=11575
30