Linux pod Windows

Mnozí z linuxových fanoušků jsou nuceni v zaměstnání používat operační systém Microsoft Windows. Ať již jde o nařízení šéfa, pravidla IT oddělení nebo nutnost používat Windows aplikace, můžete si konečně oddychnout. Téměř před dvěmi lety přišel s řešením Dan Aloni, kterému se podařilo díky flexibilite a otevřenosti linuxového jádra jej spustit jako úlohu pod Windows. Projek pojmenoval Cooperative Linux (spolupracující linux), zkráceně pak „coLinux“. Během vývoje ranných verzí se k němu přidali další vývojáři a díky jejich úsilí a schopnostem máme dnes možnost používat coLinux velmi snadno a bez komplikací.

Na první pohled se může zdát, že jde o něco podobného jako delá např. Vmware nebo Bochs. Není to však tak docela pravda. Jde spíš o nadstavbu nebo chcete-li bránu přesměrující a překládající požadavky jádra na to správné místo. Samozřejmě zde najdeme podobnosti, ale u nich jde spíš o nutné zlo než stejnou architekturu. VmWare nebo VirtualPC i Bochs nám vytváří kompletní zapouzdřený počítač vč. BIOSu, který používá virtuální zdroje. Pak máme možnost nainstalovat téměř libovolný operační systém a ten pak vlastně ani neví, že běží zapouzdřený ve virtuálním stroji. V případě coLinux nám běží přímo Linuxové jádro v systému jako proces. Má to jednu velkou výhodu. Výkonostní rozdíl oproti nativně nainstalovanému linuxu není téměř žádný. Mluvím však pouze o výkonu samostatného jádra a jeho odezvách na požadavky aplikací. Bohužel nás budou brzdit periferie, jako je virtuálni síť (hlásící se jako 10 mbit adapter), nebo přístup k virtuálnimu pevnému disku v souboru. Kvůli nemožnosti obsloužit všechny typy požadavků není možné použít NTFS souborový systém přímo. Je však možné použít přímo oddíl pevného disku což dramaticky zvýší výkon souborového systému, ovšem autoři to zatím nedoporučují a označili tuto možnost jako experimentální.

CoLinux můžeme spouštět jako službu nebo jako normální úlohu. Spouštění jako služba má výhodu možnosti nastavení automatického startu na pozadí. Pokud však nepotřebujeme mít coLinux vždy spuštený, postačí nám spouštění ve chvíli kdy ji vyžadujeme.

Instalace a konfigurace coLinux

Po stažení instalačního souboru coLinux-0.6.3.exe (necelych 5MiB) se nám nainstalují základní nástroje, jádro, obraz startovacího ramdisku initrd a konfigurační soubory do adresáře „Program FilescoLinux“. Budeme však potřebovat ještě obraz pevného disku. Autoři nabízí ke stažení soubory se základní instalací Gentoo Linux a Debian Linux pro jádro řady 2.6. Pokud jsme během instalace zvolili stažení souboru, proběhne vše automaticky a do adresaře coLinux se nám automaticky stáhne obraz disku. Také se nám nainstaluje virtualní síťová karta (TAP adapter). Po rozbalení se vytvoří 2GiB (Gentoo), resp. 1GiB (Debian) soubor. Ten poté v konfiguračním souboru zapíšeme jako startovací disk.

Zkopírujeme soubor default.colinux.xml do colinux.xml, abychom měli zálohovanou originalní konfiguraci. Dále budu popisovat instalaci Gentoo Linuxu, který používám. Instalace Debian Linuxu však bude velmi podobná, snad jen rychlejší, protože není potřeba kompilovat ze zdrojových kódů, ale instalují se rovnou binární balíčky.

Nejprve tedy rozbalíme soubor Gentoo-2005.1-stage3-ext3.bz2 obsahující náš pevný disk. Pro snažší orientaci jsem si výsledný soubor přejmenoval na Gentoo-newdisk. Doporučuji ještě stáhnout obraz odkládacího disku. Při kompilaci bude potřeba. Naleznete jej např. na této adrese: http://gniarf.nerim.net/colinux/swap/, nebo jej můžete vytvořit z příkazového řádku.

fsutil file createnew c:coLinuxswap_512MB 536870912

Poté otevřeme pomocí libovolného textového editoru soubor colinux.xml. Najdeme řádku block_device (index=“0“) a změníme ji na:

<block_device index=”0″ path=”DosDevicesc:Program FilescoLinuxGentoo-newdisk” enabled=”true” />

Přidáme řádku pro připojení odkládacího disku:

<block_device index=”2″ path=”DosDevicesc:Program FilescoLinuxswap_512Mb” enabled=”true” />

Pokud chceme použít další disky, mužeme buď zkopírovat soubor Gentoo-newdisk pod jiným jménem, připojit jej a později smazat nepotřebná data, nebo si můžeme vytvořit úplně nový soubor. V Přikazové řádce Windows napíšeme příkaz:

fsutil file createnew “c:Program FilescoLinuxnext_file” 536870912

Tím vytvoříme 512MB soubor. Pokud chceme vetší stači trochu počítat a změnit poslední číslo v příkazu udávající počet bytů.

Ještě zkontrolujeme řádku bootparams. Měla by obsahovat přesně toto (lomítko před číslicí 0 je důležité):

<bootparams>root=/dev/cobd/0</bootparams>

Nyní můžeme nastavit síť. Otevřeme Start/Ovladací panely/ Síťová připojení. Přepneme se do detailního zobrazení a najdeme naše připojení k internetu. Zde zvolíme vlastnosti a nastavíme v založce Advanced (Rozšířené) sdílení internetu. V souboru colinux.xml najdeme řádku network a upravíme (je-li potřeba) do následující podoby:

<network index=”0″ type=”tap” />

Ještě je dobré zvětšit velikost přidělené paměti. Já jsem nastavil 384 MiB. Doporučuji nenastavovat příliš vysokou hodnotu v poměru k velikosti fyzické paměti. Systém by pak byl nucen často odkládat pamět na disk, coz by jej zbytečně zpomalovalo.

<memory size=”384″ />

Nyní můžeme přistoupit k samotnému spuštění a instalaci nástrojů, které potřebujeme. Jak jsem zmínil výše máme dvě možnosti spouštění. Samostatně, nebo jako systémová služba. Samostatné spuštění provedeme z příkazové řádky:

cd C:Program FilescoLinux

colinux-daemon.exe -c colinux.xml

Pokud chceme spouštět coLinux jako systémovou službu musíme jí nejdříve nainstalovat příkazem:

cd C:Program FilescoLinux

colinux-daemon.exe -c config.xml –install-service “Cooperative Linux”

Poté je nutné službu spustit. Můžete také nastavit její automatické spouštění po startu Windows. Pro připojení k terminálu můžeme použít program colinux-console-fltk.exe v instalačním adresáři coLinux.

Začínáme pracovat v linuxu

Pokud máme vse nastaveno správně zobrazí se nám příkazová řádka a vidíme jak nabíhá náš nový systém. Heslo pro uživatele root je root. Pokud použijete Gentoo Linux, musíte nejdříve provést tři kroky pro aktualizaci na funkční systém. Bez nich nebude systém po aktualizaci portage stromu správně fungovat.Pokud jej však nehodláte aktualiyovat ani rozšiřovat nejsou následující kroky nutné.

Pokud jste použili obraz disku z našeho DVD můžete přeskočit následující kroky a pokračovat až u aktualizace všech obsažených programů.

1. Nejprve musíme aktualizovat portage strom.

# emerge sync

2. Dále aktualizujeme odkaz make.profile v adresáři /etc. Zjistíme si následujícími příkazy kam směruje původní odkaz a které verze jsou dostupné.

# ls -hal /etc/make.profile

lrwxrwxrwx 1 root root 46 Mar 6 08:33 /etc/make.profile -> /usr/portage/profiles/default-linux/x86/2004.3

# ls /usr/portage/profiles/default-linux/x86/

2005.0 2005.1 2006.0 dev gcc2 make.defaults no-nptl packages parent use.mask virtuals vserver xbox

Na příkladu vidíme, že nejnovější profil je v tomto případě 2006.0, takže na něj provedeme změnu.

# rm /etc/make.profile

# ls -s /usr/portage/profiles/default-linux/x86/2006.0 /etc/make.profile

A jako poslední krok provedeme aktualizaci programu portage.

# emerge -u portage

Doporučuji také provést aktualizaci všech obsažených programu:

# emerge -ua –deep world

Nyní máme plně funkční a aktualizovaný základni Gentoo Linux a můžeme nainstalovat volitelné části nebo služby.

Grafické prostředí pomocí Xserveru

Stav v tomto bodě nám může stačit na serverové aplikace typu apache nebo samba. Pokud však chceme používat i desktopové aplikace budeme muset pokračovat v konfiguraci a instalaci dalsích součástí. Bohužel coLinux zatím nepodporuje přímé zobrazovaní, takže jsme nuceni to obejít. Máme možnost použít VNC, FreeNx, nebo vzdálený X server. Rozhodl jsem se použít poslední možnost. Jako Windows X server jsem použil open-source Xming (http://freedesktop.org/wiki/Xming). Jedná se o samostatný X server bez dalších nástrojů a bez klientských aplikací. Tím že potřebujeme pouze zobrazovat, tak nam to plně postačuje a navíc ušetříme drahocenou pamět.

Na linuxové straně musíme nainstalovat program pro grafické přihlášení a libovolný Desktop Enviroment. Použil jsem gdm a KDE 3.5.1.

# emerge -av gdm kde

Kompilace trvá hodně dlouho, ale na to jsou jistě uživatelé Gentoo zvyklí. Po dokončení zeditujeme soubor: /etc/X11/gdm/gdm.conf. V sekci [xdmpc] umožníme logování ze sítě parametrem:

Enable=true

V sekci server zakomentujeme řádek 0=Standart. Můžeme soubor uložit a zavřít. Nyní nastavíme gdm jako standardního grafický přihlašovací program. V souboru /etc/rc.conf přidáme řádek:

DISPLAYMANAGER=”gdm”

Nastavíme X server pro automatické spouštění při startu a spustíme jej.

# rc-update add xdm default
# /etc/init.d/xdm start

Nemusíte se mít strach y toho že se nic neprojevilo. X server běží, jen nemá výstup. Nyní se tedy vrátíme k Windows X serveru Xming. Po instalaci se nám na ploše objeví dvě ikony. Xming a Xlaunch. Xming spouští samotný X server a Xlaunch nám pomůže jej pomocí průvodce nastavit. Spustíme tedy Xlaunch a vybereme One window, Start no client, Open session via XDMCP. Do pole Connect to host napíšeme IP adresu našeho coLinuxu: 192.168.0.40 a dokončíme nastavení. Mělo by se Vám otevřít jedno velké okno a po chvilce uvidíte přihlašovací obrazovku gdm. Zvolíte v menu prostředí KDE a můžete se přihlásit. Dále již vše probíhá jak jste zvyklí z nativní instalace Gentoo Linuxu.

Jak na zvuk

 Zvuk lze také zprovoznit a to překvapivě jednoduše. Stáhneme si port esd zvukového daemonu ze stránek www.liquid-reality.de/main/project/esound . Rozbalíme zip soubor, přímo na disk c:, takže nám vznikne adresář c:esound. Nyní si otevřeme příkazový řádek ve Windows a spustíme síťového daemona naslouchajícího na portu 16001.

cd c:esound
esd.exe -tcp -bind 192.168.0.1 -port 16001

Windows nam ted poslouchají na naší virtualní TAP síťové kartě. Zvuk v coLinuxu nastavíme také jednoduše. V terminálu nastavime promennou ESPEAKER:

#export ESPEAKER=192.168.0.1:16001

A Control Panelu v KDE nastavíme zvukového daemona arts na výstup pomocí Enlightenment Sound Daemon. Tím nám KDE posílá zvuk daemonu esound a ten jej distribuje po síťi. Yvukový daemon pod windows jej odchytí a pošle na fyzickou zvukovou kartu.

Co obsahuje DVD

Na DVD naleznete v adresáři coLinux instalační soubor a archiv námi připraveného obrazu disku. Systém na něm je zkompilován pro procesor Pentium 4. Pokud jej použijete, nebudete muset procházet celým procesem aktualizace a vše by mělo fungovat bez problému. Obraz disku obsahuje oproti původnímu obrazu základní systémové nástroje jako cron a syslog-ng, grafické prostředí KDE 3.5.1, vývojovou verzi enlightenment-17 a blackbox 0.70.0. Dále pak Apache 2.0.55, PHP-5.1.1 jako modul i jako CGI verzi a MySQL 5.0.18. Dále je přidán souborový manager mc mc-4.6.0, OpenSSH 4.3_p2 (startuje automaticky) a xorg-x11 6.8.2.

odkazy:

http://www.colinux.org
http://wiki.colinux.org
http://www.gentoo.org
http://www.gentoo-wiki.com
http://freedesktop.org/wiki/Xming
http://www.liquid-reality.de/main/projects/esound

Leave a Reply