XINIT(1)

NAZWA
xinit - program inicjujący system X Window

SKŁADNIA
xinit [ [ klient ] opcje ... ] [ -- [ server ] [ ekran ] opcje ... ]

OPIS
Program xinit jest używany do startu systemu X Window i pierwszego programu klienta dla systemów, które nie używają menedżera logowania, takiego jak xdm(1) lub w środowisku używającym wiele systemów okien. Kiedy pierwszy klient istnieje, xinit będzie kończył proces X serwera i zakończy się.

Jeżeli żaden program klienta nie jest podany w linii komendy, xinit będzie szukał w głównym katalogu użytkownika pliku .xinitrc aby wykonać go jako skrypt powłoki w celu uruchomienia programu klienta. Jeżeli ten plik nie istnieje, xinit będzie używał następującej komendy jako domyślnej:

  xterm -geometry +1+1 -n login -display :0

Jeżeli w wierszu polecenia nie jest podany żaden program serwera, xinit będzie szukał w głównym katalogu użytkownika pliku skryptowego .xserverrc. Następnie wykona go jako skrypt powłoki w celu uruchomienia programu serwera. Jeżeli plik ten nie istnieje, xinit będzie używał następującej komendy domyślnej:

  X :0

Proszę zwrócić uwagę, że jest to program o nazwie X w aktualnej ścieżce dostępu. Administrator sieci powinien więc utworzyć dowiązanie do odpowiedniego typu serwera w komputerze lub utworzyć skrypt powłoki, który wywoła xinit z odpowiednim serwerem.

Uwaga, podczas używania skryptu .xserverrc należy upewnić się czy wykonujemy "exec" z prawdziwym X serwerem. Nieudane wykonanie tego etapu może spowodować, że serwer X będzie się powoli uruchamiał i zakańczał. Na przykład:

  exec Xdisplaytype

Ważnym punktem jest to, że programy, które są wykonywane przez skrypt .xinitrc powinny być wykonywane w tle, jeżeli one nie zakończą się prawidłowo, tak że one nie uchronią innych programów przed wystartowaniem. Jednak najdłużej żyjący z uruchomionych programów (zazwyczaj menedżer okien lub emulator terminala) powinien zostać pozostawiony na pierwszym planie. Jest to konieczne by skrypt się nie zakończył (co sygnalizuje, że zadanie użytkownika jest wykonane i xinit powinien się zakończyć).

W wierszu polecenia może być jeszcze podany alternatywny klient i/lub serwer. Żądany program klienta i jego argumenty powinny być podane jako pierwsze argumenty wiersza polecenia xinit. W celu zadeklarowania szczególnej linii komendy serwera, proszę dołączyć podwójną kreskę (--) do wiersza polecenia xinit (po wszelkich klientach i argumentach), a za nią oczekiwaną komendę serwera.

Zarówno nazwa programu klienta jak i nazwa programu serwera muszą się zaczynać znakiem ukośnika (/) albo kropką (.). W przeciwnym razie będą one traktowane jako argumenty dołączane do ich indywidualnych wierszy startowych. To umożliwia dodanie argumentów (na przykład, kolorów obrazu i tła) bez potrzeby powtarzania całego wiersza polecenia.

Jeżeli nazwa serwera nie jest zadeklarowana, a pierwszy argument występujący po podwójnej kresce (--) to dwukropek z doklejoną cyfrą, to xinit rozpozna ten numer jako kod ekranu zamiast zero. Wszystkie pozostałe argumenty są dołączane na końcu wiersza polecenia serwera.

PRZYKŁADY
Poniżej są poszczególne przykłady na używanie argumentów w wierszu polecenia xinit.

xinit
    Xinit uruchomi tu serwer o nazwie X i wykona skrypt użytkownika .xinitrc, o ile taki istnieje, a w przeciwnym razie wystartuje program xterm.

xinit -- /usr/bin/Xvnc  :1
    Tu widać, jak można uruchomić określony typ serwera na innym ekranie.

xinit -geometry =80x65+10+10 -fn 8x13 -j -fg white -bg navy
    To uruchomi serwer o nazwie X, i dołączy podane argumenty do domyślnego wiersza polecenia programu xterm. Program zignoruje skrypt .xinitrc.

xinit -e widgets -- ./Xorg -l -c
    Ten przykład użyje polecenia ./Xorg -l -c aby uruchomić serwer i dołączyć argumenty -e widgets do domyślnego polecenia xterm.

xinit /usr/ucb/rsh fasthost cpupig -display ws:1 --  :1 -a 2 -t 5
    Ten przykład uruchomi serwer o nazwie X na wyświetlaczu 1, z argumentami -a 2 -t 5. Potem uruchomi sieciową powłokę na zdalny komputer fasthost, na którym wykona polecenie cpupig, nakazując mu wyświetlanie obrazu z powrotem do lokalnej stacji.

Poniżej jest przykład skryptu .xinitrc uruchamiającego zegar, poszczególne terminale i pozostawiającego menedżer okien pracujący w trybie "ostatniej" aplikacji. Zakładając, że menedżer okien został skonfigurowany prawidłowo, użytkownik wybiera pozycję menu "Exit" aby zamknąć program X.

xrdb -load $HOME/.Xresources
xsetroot -solid gray &
xclock -g 50x50-0+0 -bw 0 &
xload -g 50x50-50+0 -bw 0 &
xterm -g 80x24+0+0 &
xterm -g 80x24+0-0 &
twm

Sieć, która chce tworzyć wspólne środowisko startowe może po prostu utworzyć domyślny skrypt .xinitrc, który odwołuje się do pliku startowego dla sieci rozległych o ścieżce dostępu:

#!/bin/sh
. /etc/X11/xinit/site.xinitrc

Innym podejściem jest napisanie skryptu, który uruchomi xinit ze specjalnym skryptem powłoki. Takie skrypty są zwykle nazywane x11, xstart albo startx i są wygodnym sposobem zapewnienia prostego interfejsu dla początkujących użytkowników:

#!/bin/sh
xinit /etc/X11/xinit/site.xinitrc -- /usr/bin/X -br

ZMIENNE ŚRODOWISKOWE

DISPLAY
    Ta zmienna określa nazwę ekranu, z którym programy klienta powinny się połączyć.

XINITRC
    Ta zmienna deklaruje plik skryptu inicjującego zawierający polecenia powłoki do wystartowania inicjującego okna. Domyślnie jest używany plik .xinitrc w katalogu domowym.

PLIKI

.xinitrc
    .xinitrc domyślny skrypt programu klienta

xterm
    uruchamiany, jeżeli nie istnieje plik .xinitrc

.xserverrc
    domyślny skrypt programu serwera

X   serwer uruchamiany jeżeli nie istnieje plik .xserverrc

ZOBACZ TAKŻE
X(7), startx(1), Xserver(1), Xorg(1), xorg.conf(5), xterm(1)

AUTOR
Bob Scheifler, MIT Laboratory dla Computer Scienc

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Rafał Witowski, Przemek Borys <pborys@dione.ids.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 (https://www.gnu.org/licenses/gpl-3.0.html) lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.