Kde môžete Cygwin inštalovať
Cygwin si môžete nainštalovať napríklad v práci alebo všade tam, kde z rôznych dôvodov musíte používať Windows. Na windowsových strojoch, na ktoré chcete prenášať súbory pomocou SCP alebo sa na tieto stroje pripájať pomocou SSH. Ak máte linuxový server, využitím Cygwinu a X serveru sa môžete pripojiť napríklad pomocou SSH na svôj linuxový stroj a spúšťať grafické programy nainštalované na linuxovom stroji.
Ak sa vám nechce pri prihlasovaní na SSH server zadávať linuxové heslo – vygenerujte si v Cygwine DSA alebo RSA kľúče, pomocou ktorých bude vaša session autentifikovaná bez použitia hesla. Pred tým, ako si ukážeme, ako sa Cygwin inštaluje, musím bohužiaľ spomenúť, že balíčky unixových programov sú v Cygwine menej svižné ako tie isté programy v natívnom prostredí.
Čo môžete inštaláciou Cygwinu získať?
V prvom rade získate na svoju windowsovú stanicu shell. Na výber je hneď niekoľko shellov. Okrem BASH si môžete nainštalovať aj Bourne Shell, TENEX C Shell alebo napríklad Z-Shell. Do bashu alebo vášho obľúbeného shellu, ktorý ste si napríklad editáciou súboru /etc/passwd nastavili ako váš login shell, sa dostanete hneď po spustení Cygwinu. Práca s Bashom je výborne popísaná v seriáli od Bohdana Milara, preto sa ňou nebudem ďalej zaoberať. Ak ste zvyknutí na prácu vo vi editore, nainštalujte si balíček vim. Takto jednoducho na svoju windowsovú stanicu získate aj Midnight Commander, KDE alebo GNOME.
Midnight Commander v Cygwine
Inštaláciou vami zvolených balíčkov získate aj na windowsovej stanici vaše obľúbené linuxové prostredie a programy. Cygwin má však širšie využitie. Spomeniem napríklad balíčky openssl a openssh, pomocou ktorých získate šikovného SSH klienta alebo, ak chcete, jednoduchou konfiguráciou Windowsu aj SSH server. Cygwin môžu využiť aj programátori, k dispozícií je balíček gcc a mnoho textových editorov. Pomocou gcc (GNU Compiler Collection) môžeme kompilovať programy napísané napríklad v jazyku C, C++, Java, Pascal a iných. Na nasledujúcom príklade je ukážka kompilácie jednoduchého programu na prevod uhlov na radiány s krokom 10 stupňov. Zdrojový súbor je napísaný v jazyku C. Zdrojový súbor sa nazýva prevod_01.c, výstupný súbor chceme pomenovať prevod_01.exe. Použitý príkaz je:
$ gcc prevod_01.c -o prevod_01.exe
Kompilácia programu na prevod uhlov na radiány
Pomocou Cygwinu mozete efektívne spúšťať linuxové (respektíve Cygwinové) manuálové stránky, po inštalácií potrebného balíčku spustíte priamo vo windowsovej konzole, aj keď Cygwin sám o sebe nebeží.
Manuálové stránky priamo vo Windows
Inštalácia Cygwinu
Na webovej stránke Cygwinu si stiahnite inštalačný program. Môžeme si zvoliť inštaláciu z internetu, stiahnutie balíčkov na lokálny disk bez následnej inštalácie, alebo inštaláciu z adresára na lokálnom disku. Ak ste sa rozhodli pre inštaláciu z internetu alebo pre inštaláciu z lokálneho adresára, v nasledujúcom okne zadáme umiestnenie, kam budeme Cygwin inštalovať. Ja si balíčky sťahujem na disk, pretože inštalácia z disku je tiež dobre vyriešená. Ak Cygwin inštalujete z disku, inštalačný program prehľadá rekurzívne adresár, ktorý ste zadali ako inštalačný zdroj. V praxi to znamená, že inštalačný program vyhľadá všetky súbory setup.ini v zadanej ceste vrátane vnorených adresárov. Táto vlastnosť sa dá s výhodou využiť, ak si Cygwin sťahujete po častiach podľa potreby. Stiahnuté adresáre si pomenujte napríklad podľa toho, aké balíčky obsahujú, a potom budete môcť tieto balíčky ľahko použiť aj pre iné počítače, na ktorých budete Cygwin inštalovať, prípadne pri nasledujúcej inštalácii Cygwinu, napríklad po preinštalovaní Windowsu. Ak teda máte Cygwin stiahnutý napríklad na disk D: do adresára d:\downloaded\cygwin, mohol by váš inštalačný adresár vyzerať napríklad takto d:\downloaded\cygwin\{cygwin,ssh,gnome,X_server}
Pri inštalácii a pri sťahovaní balíčkov z internetu budete v nasledujúcom okne vyzvaní na zadanie cesty, kam chcete uložiť stiahnuté balíčky. Ak ste si zvolili inštaláciu z lokálneho adresára, budete zadávať cestu ku svojim vopred stiahnutým balíčkom. Pri inštalácii a pri sťahovaní balíčkov z internetu máme možnosť vybrať si z rôznych FTP zdrojov. V dobe písania tohto článku som našiel dva FTP zdroje z Čiech a dva zo Slovenska. Ak budete pokračovať v inštalácii, v nasledujúcom okne, nazvanom Select Packages, vás čaká komplexné menu. Obsahuje balíčky, ktoré si môžete zobraziť, zoradiť a zoskupiť podľa rôznych kritérií a priradiť k nim akciu (inštalovať, preinštalovať, odinštalovať alebo stiahnuť zdrojové kódy).
Výber balíčkov k inštalácii
V pravom hornom rohu nám menu ponúka na výber jednu zo štyroch možností: Keep, Prev, Curr, Exp. Význam týchto možností je nasledujúci.
- Keep: Ponechá balíčky v ich súčasnej verzii, nevykonajú sa žiadne zmeny na balíčkoch.
- Prev: Globálne pre všetky balíčky zvolí predchádzajúcu stabilnú verziu. Znamená to, že vaša súčasná stabilná verzia bude preinštalovaná predchádzajúcou stabilnou verziou.
- Curr: Globálne zvolíte verziu balíčkov, ktorá je v súčasnosti považovaná za najviac stabilnú.
- Exp: Globálne zvolíte najnovšiu verziu, aj keď je považovaná za experimentálnu alebo testovaciu.
Ďalšie tlačítko v pravom hornom rohu je View, ako už sám názov hovorí, podľa tohto tlačítka si volíme zobrazenie a zoradenie podľa nasledujúcich kritérií:
- Category: Zoskupí balíčky podľa kategórií. To znamená, že napríklad balíčky potrebné na inštaláciu KDE budú v položke KDE alebo rôzne shelly budú v položke Shells. Jednotlivé balíčky v príslušných položkách (kategóriách) zobrazíme kliknutím na znamienko plus.
- Full: Zobrazia sa všetky balíčky podľa abecedného zoznamu.
- Partial: Zobrazia sa iba tie balíčky, ktorých sa týka zmena. Tieto balíčky budú po stlačení tlačítka Next nainštalované, preinštalované alebo odinštalované.
- Up To Date: Zobrazené budú balíčky, ktoré sú v žiadanej verzii a nemusí sa s nimi nič robiť.
- Not Installed: Zobrazené budú balíčky, ktoré v súčasnosti nie sú nainštalované a neboli zvolené na inštaláciu.
Defaultne Cygwin nenainštaluje všetky balíčky, nainštaluje iba niektoré z veľkého množstva ponúkaných balíčkov, preto si balíčky prehliadnite a nainštalujte si obľúbené. Vieme už, ako si balíčky zoradiť a zobraziť podľa rôznych kritérií. Vieme nastaviť globálne inštalačné inštrukcie (pomocou volieb Keep, Prev, Curr, Exp). Okrem globálnych inštalačných inštrukcií sa dajú nastaviť inštrukcie pre skupinu (kategóriu) balíčkov, alebo pre jednotlivé balíčky. Inštalačné inštrukcie sú rozdielne pre balíčky, ktoré sú už nainštalované, a pre balíčky, ktoré nainštalované ešte nie sú.
Inštalačné inštrukcie pre kategóriu balíčkov sú Default, Install, Reinstall a Uninstall. Možnosť Default nainštaluje iba defaultné balíčky, ak ju zmeníme na Install, nainštalujeme všetky balíčky z danej kategórie. Uninstall a Reinstall odinštaluje alebo preinštaluje balíčky nainštalované na systéme. Pre jednotlivé nenainštalované balíčky použijeme možnosť Skip alebo číslo verzie, ktorú ideme inštalovať. Pre už nainštalované balíčky máme možnosti Keep, Reinstall, Source, číslo verzie (ak je iná verzia dostupná) a Uninstall. Všetky tieto inštalačné možnosti meníme pomocou tlačítka.
Okno Select Packages je ďalej rozdelené na stĺpce Category, Current, New, Bin, Src, Size a Package. Stĺpec Category vidíme, len ak máme View prepnuté do možnosti Category. V tomto stĺpci, ako prezrádza sám názov, sú názvy kategórií, do ktorých sú jednotlivé balíčky zadelené. V kategórii X11 nájdete balíčky potrebné na rozbehnutie X serveru, v kategórii Net sú napríklad balíčky pre OpenSSL a OpenSSH. V stĺpci Current sú verzie súčasných balíčkov a v stĺpci New sú verzie balíčkov, ktoré sa budú inštalovať. Zaškrtnutím štvorčeka v stĺpci Bin alebo Src získame buď binárne súbory, alebo zdrojové kódy balíčkov. Stĺpec Size ukazuje veľkosť balíčku a stĺpec Package názov a stručný popis balíčku. Na záver inštalácie sa vás inštalačný program spýta, či si želáte umiestniť ikonu na desktop a do ponuky Štart.
Iste tušíte, že to nie je všetko. S výhodou sa dá používať cron a poteší aj zariadenie /dev/null. Spomeniem ešte, že Cygwin sa dá využiť aj ako X server, SSH klient a server alebo ako PostgreSQL klient či server.