<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
"dtd/kdex.dtd" [
  <!ENTITY kappname "&kdm;">
  <!ENTITY package "kdebase">
  <!ENTITY kdmrc "<filename
>kdmrc</filename
>">
  <!ENTITY ksmserver "<application
>ksmserver</application
>">
  <!ENTITY kdesktop "<application
>kdesktop</application
>">
  <!ENTITY XDMCP "<acronym
>XDMCP</acronym
>">
  <!ENTITY xdm "<application
>xdm</application
>">
  <!ENTITY kdmrc-ref SYSTEM "kdmrc-ref.docbook">
  <!ENTITY % addindex "INCLUDE">
  <!ENTITY % Polish "INCLUDE"
> <!-- change language only here -->
]>

<book lang="&language;">
<bookinfo>
<title
>Podręcznik &kdm;</title>

<authorgroup>
<author
>&Oswald.Buddenhagen; &Oswald.Buddenhagen.mail; </author
><!-- 
<othercredit role="developer">
&Oswald.Buddenhagen; &Oswald.Buddenhagen.mail;
<contrib
>Developer</contrib>
</othercredit>
<othercredit role="reviewer">
&Lauri.Watts; &Lauri.Watts.mail;
<contrib
>Reviewer</contrib>
</othercredit
> -->

<othercredit role="translator"
><firstname
>Marta</firstname
><surname
>Rybczyńska</surname
><affiliation
><address
><email
>mrybczynska@poczta.onet.pl</email
></address
></affiliation
><contrib
>Polskie tłumaczenie</contrib
></othercredit
> 

</authorgroup>

<copyright>
<year
>2000</year>
<holder
>&Neal.Crook;</holder>
</copyright>

<copyright>
<year
>2002</year>
<holder
>&Oswald.Buddenhagen;</holder>
</copyright>

<copyright>
<year
>2003</year>
<holder
>&Lauri.Watts;</holder>
</copyright>

<date
>2003-03-01</date>
<releaseinfo
>0.05.02</releaseinfo>

<abstract>
<para
>Ten dokument opisuje &kdm;, menedżera wyświetlania &kde;, nazywanego także <quote
>menedżerem logowania</quote
>.</para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdm</keyword>
<keyword
>xdm</keyword>
<keyword
>menedżer wyświetlania</keyword>
<keyword
>menedżer logowania</keyword>
</keywordset>
</bookinfo>

<!-- ********************************************************************** -->  
<chapter id="introduction">
<title
>Wprowadzenie</title>

<para
>&kdm; udostępnia interfejs graficzny do logowania w systemie. Pyta o nazwę użytkownika i hasło, uwierzytelnia użytkownika i rozpoczyna <quote
>sesję</quote
>. &kdm; odróżnia się (pozytywnie) od &xdm; w wielu sprawach.</para>

</chapter>

<!-- Chapters to write -->
<!-- * Just enough config to get it to run and login to KDE 
     * Adding more session types (GNOME, etc)
     * Adding other customizations to XSession (ssh/gpg-agent, etc)
     * Further customization to KDM (via the kcontrol module, and by 
       hand)
     * XDMCP by query
     * XDMCP by broadcast
     * Sound transparency (if Ade can tell me how!)
     * Document all Keys in the Config File
     * Pull in all options from the KControl Module
     * More resources
-->

<chapter id="quickstart">
<title
>Szybkie wprowadzenie</title>

<para
>To wprowadzenie przeznaczone jest dla użytkowników, których sytuacja spełnia następujące warunki:</para>

<itemizedlist>
<listitem>
<para
>Polecenie <command
>startx</command
> wydane z wiersza poleceń powoduje poprawne uruchomienie X Window.</para>
</listitem>
<listitem>
<para
>Każdy użytkownik wykorzystuje jednego menedżera okien lub środowisko i nie zmienia zbyt często swoich przyzwyczajeń, albo nie widzi trudności w modyfikacji jednego pliku.</para>
</listitem>
</itemizedlist>

<para
>Ten scenariusz będzie wystarczający w wielu przypadkach (dla jednego, ale też wielu użytkowników), kiedy po prostu uruchamia się komputer i loguje do swojego ulubionego środowiska.</para>

<procedure>
<title
>Ustawianie domyślnej sesji</title>
<step>
<para
>Utwórz lub otwórz plik <filename
>~/.xinitrc</filename
></para>
<para
>Jeśli już masz poprawny plik <filename
>~/.xinitrc</filename
>, przejdź do następnego kroku</para>
</step>
<step>
<para
>Jeśli jeszcze nie istnieje, dodaj do <filename
>~/.xinitrc</filename
> wiersz z poleceniem uruchamiającym Twoje ulubione środowisko lub menedżera okien.</para>
<para
>Dla &kde; trzeba wpisać:</para>
<screen
><userinput
>startkde</userinput
></screen>
<para
>Jeśli używasz innego menedżera okien lub środowiska, poszukaj właściwego polecenia w jego dokumentacji.</para>
</step>
<step
><para
>Utwórz dowiązanie:</para>
<screen
><userinput
><command
>ln</command
> <option
>-s</option
> <parameter
>~/.xinitrc ~/.xsession</parameter
></userinput
></screen>
</step>
</procedure>

<para
>Na tym etapie użycie polecenia <userinput
><command
>startx</command
></userinput
> w wierszu poleceń powinno uruchomić X Window z sesją &kde;. Następne zadanie to wykorzystanie &kdm;.</para>

<para
>Jako administrator (użytkownik <systemitem class="username"
>root</systemitem
>), wydaj polecenie <userinput
><command
>kdm</command
></userinput
>.</para>

<para
>Powinno pojawić się okno logowania opisane dokładniej w <xref linkend="login"/>.</para>

<para
>Po wpisaniu nazwy użytkownika i hasła lub pozostawieniu opcji <option
>domyślna</option
> jako typu sesji, powinna się rozpocząć nowa sesja &kde;.</para>

<para
>Jeśli dany komputer wykorzystują także inni użytkownicy, powtórz powyższą procedurę dla każdego z nich.</para>

<note>
<para
>Jest to krótkie wprowadzenie, które zajmuje się tylko uruchomieniem &kdm;. Zapewne zajdzie potrzeba dokładniejszej konfiguracji, na przykład ukrycia nazw użytkowników systemowych, zezwalania na kolejne sesje i tak dalej. Jak tego dokonać dowiesz się z dalszej części tego podręcznika.</para>
</note>

</chapter>

<chapter id="login"
> 
<title
>Okno logowania</title
> 

<para
>Interfejs użytkownika &kdm; składa się z dwóch części. Główna ma następujące elementy:</para>

<itemizedlist
> 
<listitem>
<para
>Pole <guilabel
>Nazwa użytkownika:</guilabel
> do wpisywania nazwy użytkownika.</para>
</listitem>

<listitem>
<para
>Pole <guilabel
>Hasło:</guilabel
> służące do wpisywania hasła.</para>
</listitem>

<listitem>
<para
>(Opcjonalnie) Obrazek związany z użytkownikiem (na przykład cyfrowa fotografia). Kliknięcie na obrazku jest równoważne wpisaniu odpowiedniej nazwy użytkownika w pole <guilabel
>Nazwa użytkownika:</guilabel
>. (Ta właściwość jest wzorowana na oknie logowania w systemie &IRIX;).</para
> 
</listitem>

<listitem>
<para
>Lista rozwijana <guilabel
>Menu</guilabel
>, która pozwala na wykorzystywanie &kdm; do rozpoczynania sesji używających różnych, zainstalowanych w systemie, menedżerów okien i środowisk.</para>
</listitem>

<listitem>
<para
>(Opcjonalnie) Obszar po prawej od pól <guilabel
>Nazwa użytkownika:</guilabel
>, <guilabel
>Hasło:</guilabel
> i <guilabel
>Typ sesji:</guilabel
>. Może być wykorzystywany do wyświetlania statycznego obrazu lub zegara analogowego.</para>
</listitem>

<listitem>
<para
>Przycisk <guibutton
>Zaloguj</guibutton
>, który powoduje sprawdzenie poprawności wpisanej nazwy użytkownika i hasła. Jeśli to zakończy się sukcesem, rozpoczynana jest nowa sesja wybranego typu.</para>
</listitem>

<listitem>
<para
>Przycisk <guibutton
>Wyczyść</guibutton
>, którego wciśnięcie powoduje wyczyszczenie zawartości pól <guilabel
>Nazwa użytkownika</guilabel
> i <guilabel
>Hasło</guilabel
>.</para>
</listitem
> 

<listitem>
<para
>(Opcjonalnie) Przycisk <guibutton
>Zamknij system</guibutton
>, którego wciśnięcie powoduje pokazanie okna dialogowego <guibutton
>Zamknięcie systemu</guibutton
>.</para>
</listitem>
<listitem>
<para
>Przycisk <guibutton
>Menu</guibutton
>, którego wciśnięcie powoduje otwarcie menu z następującymi opcjami:</para>
 
<itemizedlist>
<listitem>
<para
>(Na komputerze lokalnym) <guimenuitem
>Ponowne uruchomienie serwera X</guimenuitem
>. Zatrzymuje &X-Server;, uruchamia nową kopię. Następnie pokazywane jest ponownie okno logowania. Ta opcja jest użyteczna, jeśli wyświetlanie źle działa.</para>
</listitem>

<listitem>
<para
>(Na komputerze zdalnym) <guimenuitem
>Zamknij połączenie</guimenuitem
>. Powoduje zakończenie istniejącego połączenia do serwera &XDMCP;. Jeśli nastąpiło ono przez okno do wybierania serwera (X chooser), zobaczysz je ponownie. W przeciwnym wypadku zostanie tylko ponowne uruchomiony &X-Server; i pokazane okna logowania.</para>
</listitem>

<listitem>
<para
>(Opcjonalnie na komputerze lokalnym) <guimenuitem
>Przełącz na konsolę</guimenuitem
>. &X-Server; zakończy działanie, pokazany zostanie ekran logowania na konsoli. &kdm; spowoduje włączenie graficznego logowania jeśli nikt nie będzie zalogowany na konsoli przez pewien czas.</para>
</listitem>
</itemizedlist>
</listitem>

<listitem>
<para
>(Opcjonalnie) Przycisk <guibutton
>Zamknij system...</guibutton
>, którego wciśnięcie powoduje pokazanie okna dialogowego dotyczącego zamykania systemu.</para>
</listitem>
</itemizedlist>

<para
>Okno dialogowe <guilabel
>Zamknięcie systemu</guilabel
> daje możliwość wybrania jednej z następujących opcji:</para>

<variablelist>
<varlistentry>
<term
>Zamknij system</term
> 
<listitem>
<para
>Zamknięcie systemu w kontrolowany sposób; można potem wyłączyć zasilanie komputera.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Uruchom ponownie</term>
<listitem>
<para
>Zamknięcie systemu i ponowne uruchomienie komputera. W systemach, gdzie używane jest <application
>Lilo</application
>, pojawia się dodatkowa rozwijana lista. Pozwala na wybranie systemu (lub wersji jądra), który ma być uruchomiony przy następnym starcie komputera.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Ponowne uruchomienie serwera X</term
> 
<listitem>
<para
>Zatrzymanie i ponowne uruchomienie serwera X. Opcja ta jest użyteczna w przypadku zmiany konfiguracji X11.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Przełącz na konsolę</term>
<listitem>
<para
>&X-Server; zostaje zatrzymany, a system powraca do trybu konsoli. Dzieje się to przez zmianę poziomu działania (runlevel) na 3. Wykorzystanie tej opcji będzie użyteczne przed uaktualnieniem lub zmianą konfiguracji X11.</para
> 
</listitem>
</varlistentry>
</variablelist>

<para
>Wciśnięcie przycisku <guibutton
>OK</guibutton
> powoduje wykonanie wybranej akcji; przycisk <guibutton
>Anuluj</guibutton
> pozwala na powrót do głównego okna &kdm;. </para>

</chapter>

<!-- *********************************************************************** -->
<chapter id="configuring-kdm">
<title
>Konfiguracja &kdm;</title>

<para
>W tym rozdziale zakłada się, że &kdm; już działa w Twoim systemie i chcesz w pewien sposób zmienić jego zachowanie.</para>

<para
>Kiedy &kdm; rozpoczyna działanie, odczytuje konfigurację z katalogu <filename class="directory"
>$KDEDIR/share/config/kdm/</filename
> (może to być także <filename class="directory"
>/etc/kde3/kdm/</filename
> lub inna lokalizacja).</para>

<para
>Głównym plikiem konfiguracyjnym jest &kdmrc;. Wszystkie odwołania do innych plików są w nim zawarte. Mogą one mieć dowolne nazwy i znajdować się w dowolnym katalogu - ale zazwyczaj nie będzie to miało większego sensu z oczywistych przyczyn (szczególnym wyjątkiem są odwołania do plików konfiguracyjnych programu &xdm; - jednak podczas instalacji &kdm; importuje te ustawienia, jeśli tylko znajdzie &xdm;).</para>

<para
>W związku z tym, że &kdm; działa zanim zalogują się użytkownicy, nie jest związany z żadnym z nich. Nie ma też więc oddzielnych plików konfiguracyjnych, wszyscy dzielą jeden &kdmrc;. Wynika z tego, że konfiguracja &kdm; może być zmieniana tylko przez tych, którzy mają prawo do zapisu pliku <filename
>$<envar
>KDEDIR</envar
>/share/config/kdm/kdmrc</filename
> (zazwyczaj ograniczone do administratorów systemu zalogowanych jako <systemitem class="username"
>root</systemitem
>).</para>

<para
>Możesz przeglądać &kdmrc; używany w Twoim systemie. Konfiguracja &kdm; następuje przez jego modyfikację. Inną metodą jest wykorzystanie graficznego narzędzia z &kcontrolcenter-dopelniacz; (<menuchoice
><guisubmenu
>Administracja systemu</guisubmenu
><guimenuitem
>Menedżer logowania</guimenuitem
></menuchoice
>), które jest opisane w <ulink url="help:/kcontrol/login-manager.html"
>plikach pomocy &kcontrolcenter-dopelniacz;</ulink
>. </para>

<para
>Pozostała część tego rozdziału omawia konfigurację &kdm; za pomocą modułu &kcontrolcenter-dopelniacz;, a <link linkend="kdm-files"
>następny</link
> opisuje opcje dostępne w samym &kdmrc;. Jeśli potrzebujesz ustawień tylko dla użytkowników lokalnych, moduł &kcontrolcenter-mianownik; powinien być wystarczający. Jeśli jednak chcesz wykorzystywać zdalne logowanie albo mieć wiele jednocześnie działających sesji &kdm;, czytaj dalej.</para>

<sect1 id="kdm-kcontrol-module">
<sect1info>
<authorgroup>
<author
>&Thomas.Tanghus; &Thomas.Tanghus.mail;</author>
<author
>&Steffen.Hansen; &Steffen.Hansen.mail;</author>
<author
>&Mike.McBride; &Mike.McBride.mail;</author>
</authorgroup>
</sect1info>

<title
>Moduł menedżera logowania w &kcontrolcenter-miejscownik;</title>

<para
>Przy pomocy tego modułu możesz skonfigurować graficznego menedżera logowania &kde;, czyli &kdm;. Masz możliwość wpływania na wygląd ekranu logowania, na to, kto może wykorzystywać menedżera logowania i kto może zakończyć pracę komputera.</para>

<note
><para
>Wszystkie ustawienia zostaną zapisane do pliku konfiguracyjnego &kdmrc;, który w swoim pierwotnym stanie zawiera wiele komentarzy pomagających osiągnąć pożądane zachowanie &kdm;. Wykorzystanie modułu &kcontrolcenter-dopelniacz; spowoduje usunięcie tych komentarzy. Wszystkie dostępne w &kdmrc; opcje są opisane w <xref linkend="kdm-files"/>.</para>

<para
>W opisach wszystkich opcji w tym rozdziale znajdują się odnośniki do ich odpowiedników w &kdmrc;. Wszystkie opcje z modułu &kcontrol; są dostępne w &kdmrc;, ale nie odwrotnie.</para
></note>

<para
>Rozdział ten jest podzielony na kilka części: <link linkend="kdmconfig-appearance"
><guilabel
>Wygląd KDM</guilabel
></link
>, <link linkend="kdmconfig-font"
><guilabel
>Czcionka</guilabel
></link
>, <link linkend="kdmconfig-background"
><guilabel
>Tło</guilabel
></link
>, <link linkend="kdmconfig-shutdown"
><guilabel
>Zamykanie</guilabel
></link
>, <link linkend="kdmconfig-users"
><guilabel
>Użytkownicy</guilabel
></link
> i <link linkend="kdmconfig-convenience"
><guilabel
>Ułatwienia</guilabel
></link
>.</para>

<para
>Możesz przełączać między sekcjami używając kart na górze okna.</para>

<note
><para
>Bez uprawnień administratora nie możesz zmieniać ustawień w tym module. Aby je uzyskać kliknij przycisk <guibutton
>Tryb administratora</guibutton
> i podaj właściwe hasło.</para
></note>

<sect2 id="kdmconfig-appearance">
<title
>Wygląd KDM</title>

<para
>Na tej karcie można zmieniać wygląd &kdm;, menedżera logowania dla &kde;.</para>

<para
><guilabel
>Powitanie:</guilabel
> to tytuł okna logowania. Ustawianie go jest szczególnie przydatne, jeśli logujesz się na kilka serwerów. W tytule okna możesz używać różnych ciągów specjalnych, które są opisane razem z kluczem <link linkend="option-greetstring"
><option
>GreetString</option
></link
> w &kdmrc;. </para>

<para
>Dalej możesz zdecydować, co ma być wyświetlane w oknie logowania: czas systemowy, logo, albo nic. Wyboru tego dokonuje się poprzez zaznaczenie odpowiedniego przycisku z grupy oznaczonej <guilabel
>Logo:</guilabel
>. Odpowiada to opcji <link linkend="option-logoarea"
><option
>LogoArea</option
></link
> w &kdmrc;</para>

<para
>Jeśli wybierzesz <guilabel
>Pokaż logo</guilabel
>, to masz następujące możliwości:</para>

<itemizedlist>
<listitem>
<para
>Upuszczenie pliku obrazka na przycisk obrazka.</para>
</listitem>
<listitem>
<para
>Kliknięcie przycisku obrazka i zaznaczenie właściwego pliku w oknie wyboru.</para>
</listitem>
</itemizedlist>

<para
>Jeśli nie określisz loga, zostanie wykorzystany plik domyślny: <filename
>$<envar
>KDEDIR</envar
>/share/apps/kdm/pics/kdelogo.xpm</filename
>.</para>

<para
>Okno logowania jest zazwyczaj wyświetlane na środku ekranu. Jeśli chcesz zmienić jego położenie, użyj opcji <guilabel
>Położenie:</guilabel
>. Możesz podać pozycję względną (procenty rozmiaru ekranu) środka okna względem lewego górnego rogu ekranu. Do tego służą pola<guilabel
>X:</guilabel
> oraz <guilabel
>Y:</guilabel
>. Opcja ta odpowiada kluczowi <link linkend="option-greeterpos"
><option
>GreeterPos</option
></link
> z &kdmrc;.</para>

<para
>Podczas gdy styl &kde; zależy od ustawień użytkownika, ten wykorzystywany przez &kdm; jest konfigurowany przy pomocy opcji <guilabel
>Styl użytkownika</guilabel
> i <guilabel
>Zestaw kolorów</guilabel
>. Odpowiadają one kluczom <link linkend="option-guistyle"
><option
>GUIStyle</option
></link
> i <link linkend="option-colorscheme"
><option
>ColorScheme</option
></link
> z &kdmrc;.</para>

<para
>Niżej znajduje się lista rozwijana pozwalająca wybrać język używany przez okno logowania. Odpowiada to kluczowi <option
>Language</option
> z &kdmrc;.</para>

</sect2>

<sect2 id="kdmconfig-font">
<title
>Czcionka</title>

<para
>W tej części modułu możesz zmienić czcionki wykorzystywane w oknie logowania. Dostępne są tylko te, do których dostęp mają wszyscy użytkownicy.</para>

<para
>Z listy rozwijanej możesz wybrać trzy różne style czcionek (<guilabel
>Ogólne</guilabel
>, <guilabel
>Błędy</guilabel
>, <guilabel
>Powitanie</guilabel
>). Kiedy klikniesz przycisk <guibutton
>Wybierz...</guibutton
>, pojawi się okno dialogowe służące do ustawiania parametrów stylu czcionki.</para>

<itemizedlist>
<listitem>
<para
><guilabel
>Ogólne</guilabel
> - ta czcionka jest używana we wszystkich innych miejscach okna logowania.</para>
</listitem>
<listitem>
<para
>Jeśli logowanie się nie powiedzie, to jest wykorzystywany styl czcionki <guilabel
>Błędy</guilabel
>.</para>
</listitem>
<listitem>
<para
>Styl <guilabel
>Powitanie</guilabel
> jest wykorzystywany w tytule.</para>
</listitem>
</itemizedlist>

<para
>Możesz także zaznaczyć pole <guilabel
>Użyj antyaliasingu</guilabel
>, jeśli chcesz w oknie logowania wygładzonych czcionek.</para>

</sect2>

<sect2 id="kdmconfig-background">
<title
>Tło</title>

<para
>Tutaj możesz zmienić tło wykorzystywane przed zalogowaniem się użytkownika. Istniejące opcje to pojedynczy kolor lub wykorzystanie obrazka. Jeśli tłem jest wyśrodkowany obrazek i nie zajmuje on całego ekranu, to obszar wokół niego będzie miał kolor taki jak wybrany kolor tła.</para>

<para
>Kolory i efekty tła są ustawiane na karcie <guilabel
>Tło</guilabel
>.</para>

<para
>Aby zmienić kolor(y) tła, po prostu kliknij jeden z przycisków kolorów i wybierz nowy.</para>

<para
>Lista rozwijana powyżej przycisków kolorów pozwala wybrać jeden z kilku dostępnych sposobów przenikania. Na małym monitorze znajdującym się na górze okna pokazywany jest podgląd wybranego ustawienia. Istniejące możliwości to:</para>

<variablelist>
<varlistentry>
<term
>Pojedynczy kolor</term>
<listitem
><para
>Po wybraniu tego trybu użyj przycisku koloru (<guibutton
>Kolor 1</guibutton
>). Wybrany kolor będzie pokrywał całe tło.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Wzorzec</term>
<listitem
><para
>Po wybraniu tego trybu masz do dyspozycji oba przyciski kolorów. </para
> <para
>Wzorzec wybierasz klikając przycisk <guilabel
>Ustawienia</guilabel
>. Otwarte zostanie nowe okno, które daje możliwość wybrania wzorca. Wystarczy wybrać dowolny wzorzec, a następnie kliknąć <guilabel
>OK</guilabel
>, a &kde; zastosuje do tego wzorca wcześniej wybrane dwa kolory. Aby uzyskać dostęp do większej liczby wzorców, zajrzyj do działu pomocy <ulink url="help:/kcontrol/background/index.html#bkgnd-patterns"
>Tło: Dodawanie, usuwanie i zmiana wzorców</ulink
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Program tła</term>
<listitem
><para
>Zaznaczając tą opcję możesz spowodować, aby &kde; używało zewnętrznego programu do rysowania tła. Może być to dowolnie wybrany przez Ciebie program. Aby uzyskać więcej informacji na ten temat, zajrzyj do rozdziału pomocy <ulink url="help:/kcontrol/background/index.html#bkgnd-programs"
>Tło: Korzystanie z zewnętrznego programu</ulink
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Gradient poziomy</term>
<listitem
><para
>Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). &kde; zostanie wtedy uruchomione z <guilabel
>Kolorem 1</guilabel
> po lewej stronie ekranu, przechodzącym powoli w <guilabel
>Kolor 2</guilabel
> po prawej stronie ekranu.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Gradient pionowy</term>
<listitem
><para
>Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). &kde; zostanie wtedy uruchomione z <guilabel
>Kolorem 1</guilabel
> na górze ekranu przechodzącym powoli w <guilabel
>Kolor 2</guilabel
> na dole ekranu.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Piramidkowe przenikanie</term>
<listitem
><para
>Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). &kde; zostanie wtedy uruchomione z <guilabel
>Kolorem 1</guilabel
>znajdującym się w każdym rogu ekranu, przechodzącym w <guilabel
>Kolor 2</guilabel
> na środku ekranu.</para
></listitem
> 
</varlistentry>
<varlistentry>
<term
>Gradient krzyżowy</term>
<listitem
><para
>Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). &kde; zostanie wtedy uruchomione z <guilabel
>Kolorem 1</guilabel
>znajdującym się w każdym rogu ekranu, przechodzącym w <guilabel
>Kolor 2</guilabel
> aż do środka ekranu. Forma tego gradientu jest inna niż piramidkowego przenikania.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Gradient eliptyczny</term>
<listitem
><para
>Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). &kde; zostanie wtedy uruchomione z <guilabel
>Kolorem 2</guilabel
>znajdującym się w środku ekranu, przechodzącym w <guilabel
>Kolor 1</guilabel
> aż do rogów ekranu w formie eliptycznej.</para
></listitem
> 
</varlistentry>
</variablelist>

<para
>Przycisk konfiguracji jest użyteczny tylko przy wyborze opcji <guilabel
>Program tła</guilabel
> lub <guilabel
>Wzorce</guilabel
>. W tych przypadkach, wyświetlone zostanie inne okno służące konfiguracji.</para>
<para
><emphasis
>Tapeta</emphasis
></para>
<para
>Aby wybrać nowy obraz tła, najpierw kliknij kartę <guilabel
>Tapety</guilabel
>, wtedy możesz albo wybrać obraz z listy rozwijanej o nazwie <guilabel
>Tapeta</guilabel
> albo kliknąć przycisk <guibutton
>Przeglądaj...</guibutton
> i wybrać plik obrazu za pomocą wyświetlonego okna wyboru pliku.</para>

<para
>Obrazek może być wyświetlany na sześć sposobów:</para>
<variablelist>
<varlistentry>
<term
>Brak tapety</term
> 
<listitem
><para
>Nie ma obrazka. Wykorzystywane są tylko kolory tła.</para>
</listitem
></varlistentry>
<varlistentry>
<term
>Na środku</term
> 
<listitem
><para
>Obraz jest umieszczany na środku ekranu. Kolory tła będą pokazywane w miejscach, których nie pokrywa obraz tła.</para
> </listitem>
</varlistentry>
<varlistentry>
<term
>Kafelki</term>
<listitem
><para
>Obrazek będzie powielony tak, aby pokrywał cały ekran. Pierwszy zostanie umieszczony w lewym górnym rogu ekranu, powielanie nastąpi w dół i w prawo.</para
> </listitem>
</varlistentry>
<varlistentry>
<term
>Kafelki od środka</term>
<listitem
><para
>Obraz będzie powielany, aż wypełni obszar całego ekranu. Pierwszy obraz zostanie umieszczony na środku ekranu i będzie duplikowany do rogów ekranu.</para
> </listitem>
</varlistentry>
<varlistentry>
<term
>Wyśrodkowanie z przycięciem</term>
<listitem
><para
>Obraz zostanie umieszczony na środku ekranu. Zostanie wyskalowany, aby zmieścił się na ekranie, ale nie zmieni się stosunek wymiarów obrazu. Spowoduje to, że obraz nie będzie rozciągnięty. </para
> </listitem>
</varlistentry>
<varlistentry>
<term
>Skalowany</term>
<listitem
><para
>Obraz będzie dopasowany do rozmiarów ekranu. Zostanie rozciągnięty do wszystkich rogów.</para
> </listitem>
</varlistentry>
</variablelist>

</sect2>

<sect2 id="kdmconfig-shutdown">
<title
><guilabel
>Zamykanie</guilabel
></title>

<para
><guilabel
>Możliwość zamknięcia systemu</guilabel
></para>
<para
>Użyj tej listy rozwijanej, aby wskazać kto może zamykać system:</para>
<itemizedlist>
<listitem>
<para
><guilabel
>Nikt</guilabel
>: Nikt nie może zamykać systemu za pomocą &kdm;. Trzeba się zalogować i wydać odpowiednie polecenie.</para>
</listitem>
<listitem>
<para
><guilabel
>Wszyscy</guilabel
>: Każdy może zamykać system za pomocą &kdm;.</para>
</listitem>
<listitem
><para
><guilabel
>Tylko administrator</guilabel
>: &kdm; wymaga hasła administratora (użytkownika <systemitem
>root</systemitem
>) przed zamknięciem systemu.</para
></listitem
> 
</itemizedlist>

<para
>Dla użytkowników lokalnych (<guilabel
>Lokalnie:</guilabel
>) i zdalnych (<guilabel
>Zdalnie:</guilabel
>) można oddzielnie określić kto ma prawo do zamykania systemu.</para>

<para
><emphasis
>Polecenia</emphasis
></para
> <para
>Te pola tekstowe służą do zdefiniowania dokładnej postaci polecenia zamykającego system.</para
> <para
><guilabel
>Zatrzymanie:</guilabel
> to domyślnie <command
>/sbin/halt</command
> . Z kolei ponowne uruchomienie to domyślnie <command
>/sbin/reboot</command
>.</para>

<para
>Jeśli włączona jest opcja <guilabel
>Pokaż opcje uruchamiania systemu w oknie "Wyłącz system..."</guilabel
>, to przy ponownym uruchamianiu &kdm; pokaże opcje z menedżera rozruchu lilo. Aby ta właściwość działała poprawnie, trzeba podać ścieżkę do polecenia <command
>lilo</command
> i pliku mapy. Uwaga: ta opcja nie jest dostępna we wszystkich systemach operacyjnych.</para>

</sect2>

<sect2 id="kdmconfig-users">
<title
>Użytkownicy</title>

<para
>Tutaj możesz zmienić sposób wyświetlania informacji o użytkownikach w oknie logowania.</para>

<para
>Listę użytkowników w &kdm; można wyłączyć w sekcji <guilabel
>Pokaż użytkowników</guilabel
>. Dostępne są następujące opcje:</para>

<variablelist>
<varlistentry>
<term
><guilabel
>Pokaż listę</guilabel
></term>
<listitem>
<para
>Pokaż tylko użytkowników wskazanych na liście</para>
<para
>Jeśli to pole nie zostanie zaznaczone, nie będzie listy. Jest to ustawienie najbezpieczniejsze, bo atakujący musi zgadnąć zarówno poprawną nazwę użytkownika, jak i hasło. To także dobre wyjście, jeśli system wykorzystuje bardzo wiele osób. W takim przypadku lista byłaby niepraktyczna.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Odwróć wybór</guilabel
></term>
<listitem>
<para
>Pozwala wybrać użytkowników, którzy <emphasis
>nie</emphasis
> będą pokazywani liście. Wszyscy pozostali się tam znajdą.</para>
</listitem>
</varlistentry>
</variablelist>

<para
>Zamiast podawać nazwy użytkowników, możesz wykorzystać pole <guilabel
>UID-y systemowe</guilabel
> do wpisania zakresu <acronym
>UID</acronym
>-ów, które znajdą się na liście. Domyślnie numery poniżej 1000 (oznaczające często użytkowników systemowych lub demony) oraz powyżej 65000 nie są pokazywane.</para>

<para
>Jeśli także włączysz opcję  <guilabel
>Sortuj</guilabel
>, to lista użytkowników będzie posortowana alfabetycznie. W przeciwnym wypadku kolejność określa plik haseł. &kdm; będzie wykorzystywać automatyczne dopełnianie nazw jeśli włączysz opcję <guilabel
>Automatyczne dopełnianie</guilabel
>.</para>

<para
>Jeśli wybierzesz opcję pokazywania użytkowników, okno logowania będzie pokazywało obrazki (można je wybierać) odpowiadające użytkownikom. Kiedy ktoś chce się zalogować, wybiera odpowiednią nazwę użytkownika lub obrazek i wpisuje hasło. Otrzymuje wtedy dostęp do systemu.</para>

<para
>Jeśli zezwalasz na wykorzystywanie obrazków użytkowników, możesz tu wskazać ich źródło.</para>

<para
>Tutaj możesz wskazać domyślny obrazek dla danego użytkownika. W zależności od kolejności wybranej wyżej, użytkownicy mogą lub nie go zmieniać.</para>

<para
>Jeśli nie zdecydujesz się na pokazywanie użytkowników, to okno logowania będzie bardziej tradycyjne. Użytkownicy muszą wpisać odpowiednią nazwę i hasło. Jest to lepsza metoda, jeśli z tego terminala korzysta wiele osób.</para>

</sect2>

<sect2 id="kdmconfig-convenience">
<title
>Ułatwienia</title>

<para
>Karta <guilabel
>Ułatwienia</guilabel
> daje dostęp do kilku opcji, które ułatwiają życie leniwym osobom. Przykłady to automatyczne logowanie i zablokowanie haseł.</para>

<important
><para
>Wykorzystanie ich należy zawsze dokładnie przemyśleć. Każda z opcji z karty <guilabel
>Ułatwienia</guilabel
> znacznie pogarsza poziom bezpieczeństwa Twojego komputera. W praktyce opcje te nadają się do wykorzystania tylko w całkowicie niekrytycznym środowisku, na przykład prywatnym komputerze w domu. </para
></important>

<sect3 id="loginmanager-convenience-autologin">
<title
>Włącz automatyczne logowanie</title>

<para
>Automatyczne logowanie daje każdemu dostęp do określonego konta na Twoim komputerze, bez konieczności jakiegokolwiek uwierzytelniania. Możesz to włączyć używając opcji <guilabel
>Włącz automatyczne logowanie</guilabel
>.</para>

<para
>Konto, które ma być wykorzystane do automatycznego logowania, wybiera się z listy nazwanej <guilabel
>Użytkownik:</guilabel
>.</para>

</sect3>

<sect3 id="loginmanager-convenience-nopasswd">
<title
><guilabel
>Włącz logowanie bez hasła</guilabel
></title>

<para
>Ta właściwość umożliwia niektórym użytkownikom logowanie się bez podawania hasła. Włącza się ją przy użyciu opcji <guilabel
>Włącz logowanie bez hasła</guilabel
>.</para>

<para
>Poniżej tej opcji znajduje się lista użytkowników w systemie. Zaznaczenie pola obok nazwy użytkownika powoduje włączenie logowania bez hasła dla danego użytkownika. Domyślnie jest ono wyłączone dla wszystkich.</para>

<important
><para
>Również ta opcja może być używana tylko w bezpiecznym środowisku. Jeśli zostanie włączona w systemie publicznym, ważne jest, aby stało się tak tylko dla kont o bardzo ograniczonych uprawnieniach. Przykładem takiego konta jest  <systemitem
>guest</systemitem
>.</para
></important>

<para
>Możesz także zdecydować, który użytkownik ma być <quote
>wybrany</quote
> przy starcie &kdm;. Domyślną opcją jest <guilabel
>Brak</guilabel
>. Pozostałe to <guilabel
>Poprzedni</guilabel
> (&kdm; używa ostatniego zalogowanego użytkownika) oraz <guilabel
>Podany</guilabel
>. W tym drugim przypadku należy wybrać jednego z listy. Można także skonfigurować &kdm; tak, aby bieżącym polem było pole hasła. W takim przypadku, po uruchomieniu &kdm; wystarczy tylko wpisać hasło.</para>

<para
>Opcja <guilabel
>Automatycznie zaloguj po awarii serwera X</guilabel
> pozwala pominąć uwierzytelnianie po przypadkowej awarii serwera X.</para>

</sect3>

</sect2>

</sect1>

</chapter>

&kdmrc-ref;

<!-- ************************************************************ -->   
<chapter id="configuring-your-system-for-kdm">
<title
>Konfiguracja systemu do wykorzystania &kdm;</title>

<para
>W tym rozdziale zakłada się, że Twój system posiada już skonfigurowany system &X-Window; i pozostało do dodania tylko graficzne logowanie.</para>

<sect1 id="setting-up-kdm">
<title
>Konfiguracja &kdm;</title>

<para
>Podstawowym parametrem określającym czy Twój system kończy uruchamianie na tekstowym, czy też graficznym ekranie logowania jest domyślny poziom działania. Ustawia go program <application
> <ulink url="man:init"
>/sbin/init</ulink
></application
> korzystając z pliku konfiguracyjnego <filename
>/etc/inittab</filename
>. Istnieją różnice w domyślnych poziomach działania między różnymi systemami z rodziny &UNIX-dopelniacz; (i dystrybucjami &Linux-dopelniacz;). Mimo to początek pliku <filename
>/etc/inittab</filename
> powinien wyglądać mniej więcej tak:</para>

<screen
># Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)

id:3:initdefault:  
</screen>

<para
>Wszystko oprócz ostatniego wiersza to komentarze. Znajduje się w nich informacja, że poziom 5 wykorzystuje X11, a poziom 3 to tryb wielu użytkowników bez X11 (czyli konsola tekstowa). Ostatni wiersz definiuje domyślny poziom działania. W tym przypadku jest to 3. Jeśli Twój system wykorzystuje graficzne logowanie (na przykład używając &xdm;), to poziom domyślny będzie odpowiadał temu z X11.</para>

<para
>Oto poziomy działania z logowaniem graficznym (&xdm;) w niektórych popularnych dystrybucjach &Linux-dopelniacz;:</para>

<itemizedlist>
<listitem
><para
>5 dla &RedHat; 3.x i wersji późniejszych oraz &Mandrake;</para
></listitem>
<listitem
><para
>4 dla Slackware</para
></listitem>
<listitem
><para
>3 dla &SuSE;. 4.x i 5.x</para
></listitem>
</itemizedlist>

<para
>Pierwszym krokiem w konfiguracji Twojego systemu jest sprawdzenie czy udaje się uruchomić &kdm; z wiersza poleceń. Kiedy to działa, możesz zmienić konfigurację tak, aby &kdm; był uruchamiany przy starcie systemu.</para>

<para
>Aby sprawdzić działanie &kdm; musisz najpierw zmienić poziom działania na taki, gdzie nie ma programu &xdm;. Wykorzystuje się do tego polecenie podobne do tego:</para>

<screen
><command
>/sbin/init <option
>3</option
></command
></screen>

<para
>Zamiast <option
>3</option
> użyj właściwego numeru poziomu działania.</para>

<para
>Jeśli w Twoim systemie są używane moduły <abbrev
>PAM</abbrev
> (Pluggable Authentication Modules), co jest standardem w systemie &Linux-mianownik; i &Solaris;, sprawdź czy konfiguracja <abbrev
>PAM</abbrev
> pozwala na logowanie przez usługę <literal
>kde</literal
>. Jeśli poprzednio używany był &xdm;, to do uruchomienia &kdm; nie powinno być konieczności jakichkolwiek zmian w konfiguracji <abbrev
>PAM</abbrev
>, w plikach <filename
>/etc/pam.conf</filename
> lub <filename
>/etc/pam.d/kde</filename
>. Opis konfiguracji <abbrev
>PAM</abbrev
> wychodzi poza zakres tego podręcznika, ale <abbrev
>PAM</abbrev
> posiada bogatą dokumentację (poszukaj w <filename
>/usr/share/doc/*pam*/html/</filename
>).</para>

<para
>Nadszedł czas wypróbowania &kdm; przez wydanie polecenia:</para>

<screen
><command
>kdm <option
>-nodaemon</option
></command
>
</screen>

<para
>Jeśli widzisz okno logowania &kdm; i możesz się zalogować, to wszystko przebiegło dobrze. Najczęściej spotykanym problemem na tym etapie jest sytuacja, kiedy linker nie może znaleźć bibliotek &Qt; lub &kde;. Jeśli posiadasz binarną dystrybucję bibliotek &kde; sprawdź, czy &kdm; jest zainstalowany tam, gdzie biblioteki sądzą, że znajduje się &kde;. Spróbuj także ustawić zmienne środowiska tak, żeby wskazywały biblioteki &Qt; i &kde;.</para>

<para
>Na przykład:</para>

<screen
><command
>export 
<option
>KDEDIR=<replaceable
>/opt/kde</replaceable
></option
></command>
<command
>export 
<option
>QTDIR=<replaceable
>/usr/lib/qt2</replaceable
></option
></command>
<command
>export 
<option
>PATH=<replaceable
>$KDEDIR/bin:$QTDIR/bin:$PATH</replaceable
></option
></command>
<command
>export 
<option
>LD_LIBRARY_PATH=<replaceable
>$KDEDIR/lib:$QTDIR/lib</replaceable
></option
></command
>
</screen>

<para
>W przypadku niepowodzenia, spróbuj uruchomić &xdm;, żeby sprawdzić, czy nie jest ono związane z poważniejszym problemem w konfiguracji X Window.</para>

<para
>Jeśli udało się uruchomić &kdm;, możesz rozpocząć zamianę &xdm; na &kdm;. Znów - metoda zależy od dystrybucji.</para>

<itemizedlist>
<listitem>
<para
>W przypadku dystrybucji &RedHat; musisz zmienić plik <filename
>/etc/inittab</filename
>. Szukaj następującego wiersza:</para>
<screen
>x:5:respawn:/usr/X11/bin/xdm -nodaemon</screen>
<para
>zamień go na:</para>
<screen
>x:5:respawn:/opt/kde/bin/kdm</screen>
<para
>To powiadamia <command
>init</command
>(8), że na poziomie 5 ma ponownie uruchamiać &kdm; za każdym razem, kiedy zakończy on działanie. Warto zauważyć, że &kdm; nie potrzebuje opcji <option
>-nodaemon</option
>.</para>
</listitem>
<listitem>
<para
>W &Mandrake; poziom działania X11 z <filename
>/etc/inittab</filename
> wykorzystuje skrypt <filename
>/etc/X11/prefdm</filename
>, który wybieramenedżera wyświetlania spośród kilku; obsługuje także &kdm;. Upewnij się,że wszystkie ścieżki są poprawnie ustawione.</para
> 
</listitem>
<listitem>
<para
>W &SuSE; dodaj jako pierwszy wiersz do <filename
>/sbin/init.d/xdm</filename
>:</para>

<screen
>. /etc/rc.config
DISPLAYMANAGER=kdm
export DISPLAYMANAGER</screen>
</listitem>
<listitem
><para
>Jeśli używasz FreeBSD, znajdź następujący wiersz w <filename
>/etc/ttys</filename
>:</para>
<screen
>ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure</screen>
<para
>i zmodyfikuj go do następującej postaci:</para>
<screen
>ttyv8   "/usr/local/bin/kdm"  xterm   on secure</screen>
</listitem>

<listitem
><para
>Większość pozostałych dystrybucji używa metod podobnych do przedstawionych wyżej.</para
></listitem>
</itemizedlist>

<para
>Na tym etapie możesz ponownie sprawdzić działanie programu &kdm; przez zmianę poziomu działania na ten, który powinien spowodować uruchomienie &kdm;. Aby to zrobić użyj polecenia podobnego do:</para>

<screen
><command
>/sbin/init <option
>5</option
></command
>
</screen>

<para
>Zamiast liczby <option
>5</option
> podaj właściwy numer poziomu działania  uruchamiającego X11 w Twoim systemie.</para>

<para
>Ostatni krok to zmiana wpisu <parameter
>initdefault</parameter
> w <filename
>/etc/inittab</filename
> i podanie tam poziomu działania uruchamiającego X11.</para>

<warning
><para
>Zanim dokonasz tej zmiany, upewnij się, że posiadasz sposób na awaryjne uruchomienie systemu, jeśli coś pójdzie źle. Może to być dyskietka <quote
>ratunkowa</quote
> wykonana podczas instalacji systemu albo specjalna <quote
>ratunkowa</quote
> dystrybucja, jak <literal
>tomsrtbt</literal
>. Większość płyt instalacyjnych współczesnych dystrybucji posiada opcję awaryjnego uruchomienia systemu. Szczegóły znajdziesz w dokumentacji systemu. Zalecenie posiadania awaryjnego sposobu uruchomienia ignorujesz na własną odpowiedzialność.</para
></warning>

<para
>Zazwyczaj polega to na zmianie wiersza:</para>
<screen
>id:3:initdefault:</screen>
<para
>na</para>
<screen
>id:5:initdefault:</screen>

<para
>Po ponownym uruchomieniu systemu powinno pojawić się graficzne okno logowania za pomocą &kdm;.</para>

<para
>Przypadki niepowodzenia tego etapu są zazwyczaj związane z różnicą między zmiennymi środkowiska używanymi do testowania konfiguracji, a tymi używanymi przy starcie systemu. Jeśli chcesz równocześnie korzystać z dwóch wersji &kde;, zwróć uwagę szczególnie na zgodność między sobą ustawień zmiennych <envar
>PATH</envar
> i <envar
>LD_LIBRARY_PATH</envar
>. Sprawdź czy nie nadpisują ich skrypty startowe.</para>

</sect1>

</chapter>

<chapter id="different-window-managers-with-kdm">
<title
>Obsługa wielu menedżerów okien</title>

<para
>&kdm; jest w stanie znaleźć większość menedżerów okien i środowisk graficznych po uruchomieniu. Oznacza to, że nowe środowisko powinno pojawić się automatycznie w oknie głównym &kdm; w menu <guilabel
>Typ sesji</guilabel
>.</para>

<para
>Jeśli używasz bardzo nowego menedżera okien lub takiego, który nie jest znany programowi &kdm; należy sprawdzić kilka rzeczy. Upewnij się, że ścieżka do uruchamianego menedżera okien znajduje się w <envar
>PATH</envar
>. Oprócz tego sprawdź, czy nazwa programu nie została zmieniona podczas instalacji.</para>

<para
>Jeśli program jest po prostu zbyt nowy i &kdm; jeszcze go nie obsługuje, w dość łatwy sposób możesz dodać nową sesję.</para>

<para
>Sesje są zdefiniowane w plikach <firstterm
>.desktop</firstterm
> w <filename class="directory"
>$<envar
>KDEDIR</envar
>/share/apps/kdm/sessions</filename
>. Możesz po prostu dodać odpowiednio nazwany plik <literal role="extension"
>.desktop</literal
> do tego katalogu. Pola w tym pliku to:</para>

<programlisting
>[Desktop Entry]
Encoding=UTF-8 <lineannotation
>Ustawione na stałe na <option
>UTF-8</option>
i może być pominięte</lineannotation>
Type=XSession <lineannotation
>Ustawione na stałe na <option
>XSession</option>
i może być pominięte</lineannotation>
Exec=<replaceable
>nazwa pliku wykonywalnego</replaceable
> <lineannotation
>Przekazywana poleceniu
<command
>eval exec</command
> powłoki Bourne'a</lineannotation>
TryExec=<replaceable
>nazwa pliku wykonywalnego</replaceable
> <lineannotation
>Obsługiwane,
ale nie wymagane</lineannotation>
Name=<replaceable
>nazwa pokazywana na liście sesji &kdm;</replaceable
></programlisting>

<para
>Są także trzy sesje <quote
>specjalne</quote
>:</para>

<variablelist>
<varlistentry>
<term
>default</term>
<listitem>
<para
>Domyślna sesja &kdm;, zazwyczaj &kde;. Konfigurowana przez administratora. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>custom</term>
<listitem>
<para
>Taka sesja uruchamia skrypt użytkownika ~/.xsession (jeśli istnieje). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>bezpieczna</term>
<listitem>
<para
>Sesja bezpieczna zawiera tylko podstawowe narzędzia i jest użyteczna tylko przy debugowaniu. </para>
</listitem>
</varlistentry>
</variablelist>

<para
>Aby zmienić typ sesji skopiuj plik .desktop z katalogu danych do tego z konfiguracją i dostosuj do swoich potrzeb. Usunięcie sesji domyślnych jest możliwe przez <quote
>przesłonięcie</quote
> ich za pomocą plików zawierających Hidden=true. W przypadku sesji specjalnych domyślnie nie istnieją pliki .desktop, ale &kdm; zachowuje się tak, jakby istniały. Można więc przesłonić je tak samo jak każde inne. W tym miejscu zakładamy, że domyślasz się też jak utworzyć nowy typ sesji.</para>

</chapter>

<chapter id="xdmcp-with-kdm">
<title
>Wykorzystywanie &kdm; do logowania zdalnego (&XDMCP;)</title>

<para
>&XDMCP; to standard Open Group. Skrót ten oznacza <quote
>X Display Manager Control Protocol</quote
>. Protokół XDMCP służy do konfiguracji połączeń między systemami w sieci.</para>

<para
>&XDMCP; jest przydatny w konfiguracjach z wieloma użytkownikami, gdzie istnieje serwer znacznie potężniejszy od stacji roboczych. Ma on zasoby wystarczające dla wielu sesji X. &XDMCP; pozwala, na przykład, na wykorzystanie starych komputerów - Pentium lub nawet 486 z 16 MB pamięci RAM wystarcza do uruchomienia sesji X. Przy wykorzystaniu &XDMCP; można na takim komputerze używać pełnego &kde; w najnowszej wersji z serwera. Od strony serwerakosztowne jest tylko uruchomienie pierwszej kopii &kde; (lub innego środowiska). Każda kolejna sesja zużywa bardzo mało dodatkowych zasobów.</para>

<para
>Udostępnienie innej metody logowania do Twojego systemu ma wpływ na bezpieczeństwo. Ta usługa powinna być uruchamiana tylko wtedy, kiedy potrzebujesz możliwości nawiązywania połączeń z Twoim komputerem przez zdalne serwery X. Nie potrzebują jej użytkownicy korzystający z pojedynczego komputera pracującego pod kontrolą systemu &UNIX;.</para>

</chapter>

<chapter id="advanced-topics">
<title
>Zagadnienia zaawansowane</title>

<sect1 id="command-sockets">
<title
>Gniazda poleceń</title>

<para
>Jest to właściwość, którą można wykorzystywać do zdalnej kontroli &kdm;. Została stworzona z myślą o &ksmserver; i &kdesktop; z działającej sesji, ale będzie także współpracować z innymi programami.</para>

<para
>Gniazda domeny &UNIX-celownik; znajdują się w podkatalogach katalogu podanego w opcji <option
>FifoDir</option
>=. Ten podkatalog jest kluczowy jeśli chodzi o adresowanie i bezpieczeństwo; wszystkie gniazda mają używają nazwy pliku <filename
>socket</filename
> i praw dostępu <literal
>rw-rw-rw-</literal
> (0666). Jest tak, ponieważ niektóre systemy ignorują prawa nadawane plikom gniazd.</para>

<para
>Istnieją dwa typy gniazd: globalne (dmctl) i związane z jednym ekranu (dmctl-&lt;display&gt;).</para>

<para
>Podkatalog globalnego gniazda jest własnością administratora. Podkatalogi z gniazdami związanymi z jednym ekranem są własnością właściciela ekranu (administratora lub zalogowanego użytkownika). Uprawnienia dla grupy ustawia się za pomocą opcji FifoGroup=; domyślnie przyjmowana jest grupa root. Prawa do takiego podkatalogu są ustawione na rwxr-x--- (0750).</para>

<para
>Pola polecenia są oddzielone tabulacjami (<token
>\t</token
>), pola list oddziela się odstępami, znak odstępu na liście pól uzyskuje się za pomocą <token
>\s</token
>.</para>

<para
>Polecenie jest zakończone znakiem nowego wiersza (<token
>\n</token
>).</para>

<para
>To samo odnosi się do odpowiedzi. W przypadku sukcesu odpowiedź to <returnvalue
>ok</returnvalue
>, opcjonalnie poprzedzona żądanymi danymi. Odpowiedź w przypadku błędu to jego krótki kod (&eg; <returnvalue
>perm</returnvalue
>, <returnvalue
>noent</returnvalue
>, &etc;) z następującym dalej dłuższym wyjaśnieniem.</para>

<variablelist>
<title
>Polecenia globalne:</title>
<varlistentry>
<term
><command
>login</command
> <option
>display</option
> (<parameter
>now</parameter
> | <parameter
>schedule</parameter
>) <parameter
>user</parameter
> <parameter
>password</parameter
> [argumenty_sesji]</term>
<listitem>
<para
>Zalogowanie użytkownika do pracy z określonym ekranem. Jeśli podany jest parametr <parameter
>now</parameter
>, istniejąca sesja jest usuwana; w przeciwnym razie logowanie odbywa się po zakończeniu sesji. argumenty_sesji to treść dla .dmrc w formacie podobnym do używanego przez printf. Niewymienione klucze przyjmują ostatnio zapisane wartości.</para>
</listitem>
</varlistentry>
</variablelist>

<variablelist>
<title
>Polecenia odnoszące się do pojedynczego ekranu:</title>
<varlistentry>
<term
><command
>lock</command
></term>
<listitem>
<para
>Ekran jest oznaczony jako zablokowany. Jeśli w tym stanie nastąpi awaria serwera X, nie będzie próby automatycznego ponowienia logowania nawet jeśli odpowiednia opcja jest włączona w konfiguracji.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><command
>unlock</command
></term>
<listitem>
<para
>Odwrócenie efektu polecenia <command
>lock</command
> i ponowne włączenie automatycznego ponawiania logowania.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><command
>suicide</command
></term>
<listitem>
<para
>Bieżąca sesja jest kończona "na siłę". Nie ma próby ponownego logowania, ale wydane wcześniej polecenia "login" odniosą skutek.</para>
</listitem>
</varlistentry>
</variablelist>

<variablelist>
<title
>Polecenia dla wszystkich gniazd</title>
<varlistentry>
<term
><command
>caps</command
></term>
<listitem>
<para
>Zwraca listę właściwości gniazda:</para>

<variablelist>
<varlistentry>
<term
><returnvalue
>&kdm;</returnvalue
></term>
<listitem>
<para
>identyfikuje &kdm;, na wypadek, jakby inne inne menedżery logowania również obsługiwały ten protokół</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>list</returnvalue
>, <returnvalue
>lock</returnvalue
>, <returnvalue
>suicide</returnvalue
>, <returnvalue
>login</returnvalue
></term>
<listitem>
<para
>Odpowiednie polecenie jest obsługiwane.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>bootoptions</returnvalue
></term>
<listitem>
<para
>Obsługiwane jest polecenie <command
>listbootoptions</command
> oraz <option
>=</option
> przy poleceniu <command
>shutdown</command
></para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>shutdown &lt;list&gt;</returnvalue
></term>
<listitem>
<para
>Dla podanej listy użytkowników obsługiwane jest polecenie <command
>shutdown</command
> (lista z elementami oddzielonymi odstępami.) <returnvalue
>*</returnvalue
> oznacza wszystkich użytkowników.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>nuke &lt;list&gt;</returnvalue
></term>
<listitem>
<para
>Wymienieni użytkownicy mają prawo do zamykania systemu.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>nuke</returnvalue
></term>
<listitem>
<para
>Wszyscy użytkownicy mają prawo do zamykania systemu</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><returnvalue
>reserve &lt;number&gt;</returnvalue
></term>
<listitem>
<para
>Skonfigurowane są rezerwowe ekrany, w tej chwili jest dostępnych <returnvalue
>liczba</returnvalue
> z nich</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>list</command
> [<parameter
>all</parameter
> | <parameter
>alllocal</parameter
>]</term>
<listitem>
<para
>Zwraca listę działających sesji. Domyślnie uzyskuje się wszystkie aktywne sesje. Jeśli podano parametr <parameter
>all</parameter
>, dodawane są także sesje pasywne. Parametr <parameter
>alllocal</parameter
> powoduje pokazanie także sesji pasywnych, ale bez przychodzących sesji zdalnych.</para>
<para
>Każdy opis sesji to lista oddzielonych odstępami wartości:</para>
<itemizedlist>
<listitem
><para
>Nazwa ekranu lub TTY</para
></listitem>
<listitem
><para
>Nazwa terminala wirtualnego (VT) dla sesji lokalnych</para
></listitem>
<listitem
><para
>Nazwa użytkownika, pusta dla sesji pasywnych i wychodzących sesji zdalnych (tryb lokalnego programu powitalnego)</para
></listitem>
<listitem
><para
>Typ sesji lub <quote
>&lt;remote&gt;</quote
> dla wychodzących sesji zdalnych, puste dla sesji pasywnych.</para
></listitem>
<listitem
><para
>Pole flag:</para>
<itemizedlist
><listitem
><para
><literal
>*</literal
> jeśli ekran należy do gniazda, z którego pochodzi żądanie.</para
></listitem>
<listitem
><para
><literal
>!</literal
> jeśli sesja nie może być zatrzymana przez gniazdo, z którego pochodzi żądanie.</para
></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<para
>W przyszłości mogą zostać dodane nowe pola.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>reserve</command
> [<parameter
>czas w sekundach</parameter
>]</term>
<listitem>
<para
>Uruchomienie zarezerwowanego ekranu logowania. Jeśli nikt się za jego pomocą nie zaloguje przez określony czas (domyślnie: jedna minuta), to ekran jest usuwany. Po zakończeniu sesji usuwany jest także ekran.</para>
<para
>Dozwolone tylko na gniazdach związanych z lokalnymi ekranami i gniazdach globalnych.</para
> 
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>activate</command
> (<parameter
>vt</parameter
>|<parameter
>display</parameter
>)</term>
<listitem>
<para
>Przełączenie do określonego wirtualnego terminala (VT). Terminal może być podany bezpośrednio (&eg; <parameter
>vt3</parameter
>) lub pośrednio przez używający go ekran (np. <parameter
>:2</parameter
>).</para>
<para
>Dozwolone tylko na gniazdach związanych z lokalnymi ekranami i gniazdach globalnych.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>listbootoptions</command
></term>
<listitem>
<para
>Wyświetlenie dostępnych opcji uruchamiania.</para>
<!--FIXME: "ok" list default current
    default and current are indices into the list and are -1 if unset or
    undeterminable. -->
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>shutdown</command
> (<parameter
>reboot</parameter
> | <parameter
>halt</parameter
>) [<parameter
>=<replaceable
>wybrany</replaceable
></parameter
>] (<parameter
>ask</parameter
>|<parameter
>trynow</parameter
>|<parameter
>forcenow</parameter
>|<parameter
>schedule</parameter
>|<parameter
>start (<parameter
>-1</parameter
>|<parameter
>end (<parameter
>force</parameter
>|<parameter
>forcemy</parameter
>|<parameter
>cancel)</parameter
>)</parameter
>)</parameter
>)</term>
<listitem>
<para
>Żądanie zakończenia pracy systemu, restart lub wyłączenie komputera.</para>
<para
>System operacyjny, który ma być uruchomiony następnym razem, wybiera się z listy zwróconej przez <command
>listbootoptions</command
></para>
<para
>Jeśli żądanie zakończenia pracy pochodzi z gniazda związanego z konkretnym ekranem, to następuje ono po zakończeniu bieżącej sesji na tym ekranie. Wydanie takiego żądania może spowodować pojawienie się okna dialogowego z prośbą o potwierdzenie i/lub żądaniem uwierzytelnienia</para>
<para
><parameter
>start</parameter
> to moment, w którym nastąpi zakończenie pracy systemu. Jeśli czas jest podany ze znakiem plus to wartość ta jest dodawana do czasu bieżącego. Zero oznacza akcję natychmiastową.</para>
<para
><parameter
>end</parameter
> określa kiedy najpóźniej powinno nastąpić zakończenie pracy jeśli są aktywne sesje. Jeśli czas ten jest podanyze znakie plus, dodawany jest czas początkowy. -1 oznacza nieskończone oczekiwanie. Przed zamknięciem systemu z aktywnymi sesjami &kdm; może wykonać jedną z poniższych czynności:</para>
<itemizedlist>
<listitem
><para
><parameter
>cancel</parameter
> - wycofanie żądania zamknięcia systemu</para
></listitem>
<listitem
><para
><parameter
>force</parameter
> - zamknięcie systemu mimo działających sesji</para
></listitem>
<listitem
><para
><parameter
>forcemy</parameter
> - zamknięcie systemu jeśli wszystkie aktywne sesje należą do użytkownika, który zażądał tej operacji. Działa tylko dla gniazd powiązanych z ekranami.</para
></listitem>
</itemizedlist>
<para
>Parametry <parameter
>start</parameter
> oraz <parameter
>end</parameter
> podawane są w sekundach od początku epoki &UNIX-dopelniacz;.</para>
<para
><parameter
>trynow</parameter
> to synonim <parameter
>0 0 cancel</parameter
>, <parameter
>forcenow</parameter
> - <parameter
>0 0 force</parameter
>, a <parameter
>schedule</parameter
> - <parameter
>0 -1</parameter
>.</para>
<para
><parameter
>ask</parameter
> powoduje próbę natychmiastowego zamknięcia systemu. Jeśli istnieją aktywne sesje to wysyła informację do użytkownika. Tylko dla gniazd związanych z ekranami.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>shutdown cancel</command
> [<parameter
>local</parameter
>|<parameter
>global</parameter
>}</term>
<listitem>
<para
>Wycofanie żądania zamknięcia systemu. Wysłane za pomocą gniazda globalnego powoduje wycofanie wszystkich żądań zamknięcia systemu. Jeśli pochodzi z gniazda związanego z ekranem, to dotyczy tylko skolejkowanych żądań pochodzących z tego ekranu.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><command
>shutdown status</command
></term>
<listitem>
<para
>Zwraca listę zawierająca informacje o żądaniach zamknięcia systemu.</para>
<para
>Wpisy składają się z oddzielonych odstępami pól:</para>
<itemizedlist>
<listitem>
<para
>(<returnvalue
>global</returnvalue
>|<returnvalue
>local</returnvalue
>) - zamykanie systemu w toku lub do wykonania w przyszłości. Lokalne zwracane tylko przez gniazdo związane z ekranem.</para>
</listitem>
<listitem
><para
>(<returnvalue
>halt</returnvalue
>|<returnvalue
>reboot</returnvalue
>)</para
></listitem>
<listitem
><para
>start</para
></listitem>
<listitem
><para
>koniec</para
></listitem>
<listitem
><para
>("ask"|"force"|"forcemy"|"cancel")</para
></listitem>
<listitem
><para
>Numer użytkownika od którego pochodzi żądanie, -1 dla gniazda globalnego.</para
></listitem>
<listitem
><para
>System do uruchomienia po restarcie lub "-" jeśli nie wybrano.</para
></listitem>
</itemizedlist>
<para
>W przyszłości mogą zostać dodane nowe pola</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
</variablelist>
<para
>Istnieją dwie metody używania gniazd:</para>
<itemizedlist>
<listitem>
<para
>Bezpośrednie podłączenie do gniazda. FifoDir jest eksportowany jako $<envar
>DM_CONTROL</envar
>; nazwa gniazda związanego z ekranem pochodzi od wartości zmiennej $<envar
>DISPLAY</envar
>.</para>
</listitem>
<listitem>
<para
>Przez wykorzystanie polecenia <command
>kdmctl</command
> (&eg; w skrypcie powłoki) Więcej informacji uzyskuje się po wydaniu polecenia <command
>kdmctl</command
> <option
>-h</option
>.</para>
</listitem>
</itemizedlist>

<para
>Oto przykładowy skrypt powłoki powodujący <quote
>uruchomienie systemu FreeBSD po restarcie</quote
>:</para>

<programlisting
>if kdmctl | grep -q shutdown; then
  IFS=$'\t'
  set -- `kdmctl listbootoptions`
  if [ "$1" = ok ]; then
        fbsd=$(echo "$2" | tr ' ' '\n' | sed -ne 's,\\s, ,g;/freebsd/I{p;q}')
        if [ -n "$fbsd" ]; then
      kdmctl shutdown reboot "=$fbsd" ask &gt; /dev/null
        else
          echo "FreeBSD boot unavailable."
        fi
  else
    echo "Boot options unavailable."
  fi
else
  echo "Cannot reboot system."
fi</programlisting>

</sect1>
<!-- Riddell: so there's no GUI you need to edit kdmrc to say UseTheme=true and Theme=/path/to/theme.xml
[13:31] <Riddell
> jriddell.org/programs has an example theme 

<sect1 id="dm-themes">
<title
>Themes</title>

&kdm; has limited support for desktop manager themes.  You may enable them
by adding <userinput
>UseTheme=true</userinput
> to <filename
>kdmrc</filename>
and <userinput
>Theme=/path/to/theme.xml</userinput
>.  
</sect1>
-->
</chapter>

<chapter id="Other-Information">
<title
>Inne źródła informacji</title>

<para
>&kdm; wywodzi się z programu &xdm;, stąd <ulink url="man:xdm"
>strona podręcznika &xdm;</ulink
> zawiera sporo użytecznych informacji. W przypadku problemów z działaniem X przejrzyj strony podręcznika <ulink url="man:X"
>X</ulink
> i <ulink url="man:startx"
>startx</ulink
>. Jeśli masz pytania dotyczące programu &kdm;, na które odpowiedzi nie ma w tym podręczniku, wykorzystaj fakt, że &kdm; jest rozpowszechniany na licencji <abbrev
>GNU</abbrev
> General Public License: zajrzyj do jego kodu źródłowego. </para>

</chapter>


<chapter id="credits"
><title
>Autorzy i licencja</title>

<para
>&kdm; bazuje na, i zawiera kod, z &xdm; (C) Keith Packard, MIT X Consortium.</para>

<para
>&kdm; 0.1 został napisany przez Matthiasa Ettricha. Późniejsze wersje, do &kde; 2.0.x są autorstwa Steffena Hansena. Nowe właściwości dla &kde; 2.1.x i przepisanie na potrzeby &kde; 2.2.x wykonał Oswald Buddenhagen.</para>

<para
>Prawa autorskie do innych części &kdm; mają ich autorzy. Fragmenty te są objęte licencją <ulink url="common/gpl-license.html"
>GNU GPL</ulink
>. Każdy może modyfikować i rozpowszechniać &kdm;, jeśli tylko wspomniane są nazwiska autorów.</para>

<para
>&kdm; wymaga biblioteki &Qt;, do której prawa autorskie posiada Troll Tech AS.</para>

<para
>Wkład do dokumentacji: <itemizedlist>

<listitem
><para
>Dokumentacja napisana przez Steffena Hansena <email
>stefh@dit.ou.dk</email
></para
></listitem>

<listitem
><para
>Dokumentacja rozszerzona przez Gregor'ego Zumsteina<email
>zumstein@ssd.ethz.ch</email
>. Ostatnie uaktualnienie: 9 sierpnia 1998</para
></listitem>

<listitem
><para
>Dokumentacja poprawiona dla KDE 2 przez Neala Crooka <email
>nac@forth.org</email
>. Ostatnie uaktualnienie: 6 sierpnia 2000</para
></listitem>

<listitem
><para
>Dokumentacja rozszerzona i poprawiona dla KDE 2.2 przez Oswalda Buddenhagena <email
>ossi@kde.org</email
>. Ostatnie uaktualnienie: sierpień 2001</para
></listitem>

</itemizedlist
></para>

<para
>Prawa autorskie do dokumentacji: copyright Steffen Hansen, Gregor Zumstein, Neal Crook i Oswald Buddenhagen. Ten dokument zawiera także długie fragmenty strony podręcznika &xdm;, &copy; Keith Packard.</para>
&underFDL; &underGPL; </chapter>

<glossary id="glossary">
<title
>Słowniczek</title>

<glossentry id="gloss-greeter">
<glossterm
>program powitalny</glossterm>
<glossdef
><para
>Program powitalny to okno dialogowe, czyli ta część &kdm;, którą widzi użytkownik.</para>
</glossdef>
</glossentry>

<glossentry>
<glossterm id="gloss-entropy"
>entropia</glossterm>
<glossdef
><para
>Entropia systemu jest miarą jego nieprzewidywalności. Wykorzystuje się to podczas generacji liczb losowych.</para
></glossdef>
</glossentry>

</glossary>
</book>
<!--
Local Variables:
mode: xml
sgml-omittag: nil
sgml-shorttag: t
End:
-->

