8.3.2. Instalacja X-serwera Cygwin/Xorg

System Cygwin/Xorg jest darmowym X-serwerem z otwartymi źródłami. Stanowi dziś najpoważniejszą konkurencję dla produktów komercyjnych (typu WinaXe). Nie dostarcza wprawdzie tak wielu udogodnień a jego interfejs jest dosyć "surowy", ale bieżące wersje działają bardzo stabilnie i spełniają swoje podstawowe funkcje. Najważniejszą funkcją X-serwera Cygwin/Xorg jest umożliwienie komputerowi PC zdalnej pracy na maszynach uniksowych/linuksowych (komputer PC staje się wówczas tzw. X-terminalem). X-terminal jest więc tylko "wyświetlarką" informacji z aplikacji, która w rzeczywistości działa na innym, zdalnym komputerze.

Żeby zainstalować Xorg na systemie Windows, trzeba wcześniej skonfigurować i zainstalować środowisko Cygwin. Pełną informację o możliwych sposobach instalacji cygwina zawiera Sekcja 8.1. Minimalna, w pełni funkcjonalna wersja (bez obsługi polskiej klawiatury), może być ściągnięta ze strony www.szarp.com.pl/download.php. Przy instalacji pyta się ona jedynie o adres IP serwera X-ów. Może być także konieczne zastosowanie opcji -from (zobacz dalej).

Inny, dość prosty i ogólny sposób sprowadza się do następujących czynności:

  1. Uruchomić program ściągnięty z www.cygwin.com/setup.exe.

  2. Potwierdzić domyślny typ instalacji, domyślne opcje i sposób połączenia z internetem (trzy kolejne ekrany).

  3. Wybrać jeden z serwerów lustrzanych, z których będą ściągane pakiety. Jeżeli dane z jakiegoś serwera są ściągane wolno lub w ogóle, należy spróbować z innym serwerem.

  4. Wybrać pakiety do instalacji - w tym celu na górze po prawej stronie okienka do wyboru pakietów klikamy na guzik View, aby uzyskać alfabetyczną listę pakietów, a potem klikamy na napisie Skip w linii z pakietem xorg-x11-xwin - zostanie zaznaczony do instalacji pakiet z X-serwerem oraz kilka innych pakietów. Zatwierdzamy nasz wybór.

  5. Czekamy aż instalator ściągnie i zainstaluje wybrane pakiety - może to trochę potrwać. Na końcu możemy wybrać dodanie pozycji w menu start i utworzenie skrótu na pulpicie.

Uwaga! Cygwin/Xorg, w przeciwieństwie do reszty programów pakietu Cygwin, jest systemem graficznym, więc ma większe wymagania. Korzysta z systemu DirectX. Musi być zainstalowana wersja co najmniej 4. Problem może pojawić się w przypadku starszych wersji systemu Windows (95, 98), nie dotyczy jednak nowszych systemów (Me, 2000, XP), gdzie system DirectX jest standardowo obecny.

Konfiguracja X-terminala nie jest skomplikowana. W pierwszym kroku musimy odszukać plik o nazwie startxdmcp.bat. Powinien znajdować się on w katalogu C:\CYGWIN\USR\X11R6\BIN (jeżeli system Cygwin został zainstalowany na dysku C:). Przegrywamy ten plik w miejsce, z którego będzie nam wygodnie uruchamiać system Cygwin (np. na pulpit). Następnie musimy wyedytować ten plik (np. za pomocą edytora Notepad). Modyfikujemy tu następującą linię w pliku:

SET REMOTE_HOST=10.0.0.1
Powinniśmy ustawić REMOTE_HOST jako adres serwera uniksowego/linuksowego, z którym będziemy się łączyć.

Jeżeli chcielibyśmy skorzystać z serwera fontów, to należy przejść na koniec pliku i odnaleźć linię wywołania X-servera (programu XWin):

REM Connect to a specified machine.

%RUN% Xwin -query %REMOTE_HOST% -nodecoration -lesspointer

...

REM Connect to a specified machine and a specified font server.

REM %RUN% Xwin -query %REMOTE_HOST% -nodecoration -lesspointer -fp \
	tcp/%REMOTE_HOST%:7100
Można ją rozpoznać po braku "REM" na początku. Linię tę należy wykomentować dodając "REM" a odkomentować linię zawierającą opcję -fp tcp/....

Jeśli wystąpią problemy z obsługą klawiatury (powtarzanie wpisanych znaków), należy dodać -kb na końcu linii wywołania Xwin.

Dodatkowo, jeżeli Cygwin jest zainstalowany na komputerze z systemem Windows 98, to konieczne jest podanie w linii wywołania programu Xwin numeru IP komputera z Windows. Przykładowo, jeżeli komputer ma numer IP 192.168.0.100, to na końcu linijki z wywołaniem program XWin dopisujemy:

-from 192.168.0.100
Zdarza się, że taki wpis musimy też zrobić na komputerze z nowszym systemem (także Windows XP), np. gdy komputer ma kilka interfejsów sieciowych.

Po zmodyfikowaniu pliku, zapisujemy zmiany i wychodzimy z edytora. Po uruchomieniu powinniśmy się połączyć z serwerem i po kilku sekundach otrzymać graficzne okno logowania się do systemu.

Jeżeli z jakiegoś powodu nie otrzymujemy okna logowania się do systemu, to powinniśmy sprawdzić czy to "sprawka" ustawień sieci czy raczej złej instalacji X-serwera (np. braku niezbędnych pakietów). W celu sprawdzenia czy system X-Window został poprawnie zainstalowany, uruchamiany konsolę tekstową i wpisujemy komendę:

/usr/X11R6/bin/startxwin.bat

W wyniku powinien uruchomić się X-serwer z prostym window managerem i pojedynczym shellem. Kłopoty z uruchomieniem się X-serwera w tym momencie mogą wynikać z nieprawidłowego zainstalowania (lub braku) pakietów systemu Xorg. Żeby poprawić ten problem, należy jeszcze raz uruchomić program setup.exe i włączyć pakiety z listy X11. Uwaga! Nie można w ten sposób uruchomić X-serwera, gdy mamy zainstalowane zupełnie minimalne środowisko Cygwin (np. bez lokalnych fontów, bez window managera). Taka instalacja jest przez nas jednak niezalecana.

Uwaga (2)! Czasami zdarza się, że X-serwer nie chce się uruchomić zwracając komunikat "Brak miejsca na środowisko" (lub w wersji angielskiej "Out of environment space"). Należy wówczas przydzielić w systemie więcej miejsca na środowisko w programach konsolowych. Szczegółową instrukcję można znaleźć na stronach Microsoftu: http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80 \ /support/kb/articles/Q230/2/05.ASP&NoWebContent=1. Po wprowadzeniu zmian komunikat powinien przestać się pojawiać.

Jeżeli X-serwer uruchamia się poprawnie, możemy spróbować połączyć się ręcznie z jakąś aplikacją iksową do naszego serwera (wykorzystując metodę "putty", opisaną w rozdziale Sekcja 8.3.4). Jeżeli aplikacja się nie uruchamia (jej interfejs nie jest wyświetlany na serwerze), to może oznaczać, że lokalny system Windows ma zainstalowanego firewalla i nie wpuszcza żadnej aplikacji na porty X-serwera (od 6000 w górę).

Jeżeli aplikacja się uruchamia i jest wyświetlana, może to oznaczać, że to serwer z kolei ma zainstalowanego firewalla i nie wpuszcza do siebie pakietów XDMCP. W tym przypadku należy skontaktować się z administratorem serwera.

X-serwer możemy zabić na 2 sposoby:

Stronę serwera (Linux) opisuje Sekcja 8.3.5.