Copyright © 2000 Neal Crook
Copyright © 2002 Oswald Buddenhagen
Copyright © 2003 Lauri Watts
Ten dokument opisuje kdm, menedżera wyświetlania KDE, nazywanego także „menedżerem logowania”.
Spis treści
kdm udostępnia interfejs graficzny do logowania w systemie. Pyta o nazwę użytkownika i hasło, uwierzytelnia użytkownika i rozpoczyna „sesję”. kdm odróżnia się (pozytywnie) od xdm w wielu sprawach.
To wprowadzenie przeznaczone jest dla użytkowników, których sytuacja spełnia następujące warunki:
Polecenie startx wydane z wiersza poleceń powoduje poprawne uruchomienie X Window.
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.
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.
Procedura 2.1. Ustawianie domyślnej sesji
Utwórz lub otwórz plik ~/.xinitrc
Jeśli już masz poprawny plik ~/.xinitrc
, przejdź do następnego kroku
Jeśli jeszcze nie istnieje, dodaj do ~/.xinitrc
wiersz z poleceniem uruchamiającym Twoje ulubione środowisko lub menedżera okien.
Dla KDE trzeba wpisać:
startkde
Jeśli używasz innego menedżera okien lub środowiska, poszukaj właściwego polecenia w jego dokumentacji.
Utwórz dowiązanie:
ln -s
~/.xinitrc ~/.xsession
Na tym etapie użycie polecenia startx
w wierszu poleceń powinno uruchomić X Window z sesją KDE. Następne zadanie to wykorzystanie kdm.
Jako administrator (użytkownik root
), wydaj polecenie kdm
.
Powinno pojawić się okno logowania, które jest opisane dokładniej w Rozdział 3, Okno logowania.
Po wpisaniu nazwy użytkownika i hasła lub pozostawieniu opcji domyślna
jako typu sesji, powinna się rozpocząć nowa sesja KDE.
Jeśli dany komputer wykorzystują także inni użytkownicy, powtórz powyższą procedurę dla każdego z nich.
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.
Interfejs użytkownika kdm składa się z dwóch części. Główna ma następujące elementy:
Pole Nazwa użytkownika: do wpisywania nazwy użytkownika.
Pole Hasło: służące do wpisywania hasła.
(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 Nazwa użytkownika:. (Ta właściwość jest wzorowana na oknie logowania w systemie IRIX®).
Lista rozwijana Menu, która pozwala na wykorzystywanie kdm do rozpoczynania sesji używających różnych, zainstalowanych w systemie, menedżerów okien i środowisk.
(Opcjonalnie) Obszar po prawej od pól Nazwa użytkownika:, Hasło: i Typ sesji:. Może być wykorzystywany do wyświetlania statycznego obrazu lub zegara analogowego.
Przycisk , 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.
Przycisk , którego wciśnięcie powoduje wyczyszczenie zawartości pól Nazwa użytkownika i Hasło.
Przycisk , którego wciśnięcie powoduje otwarcie menu z następującymi opcjami:
(Na komputerze lokalnym) . Zatrzymuje X-Server, uruchamia jego nową kopię. Następnie pokazywane jest ponownie okno logowania. Ta opcja jest użyteczna, jeśli wyświetlanie działa źle.
(Na komputerze zdalnym) . 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.
(Opcjonalnie na komputerze lokalnym) . 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.
(Opcjonalnie) Przycisk , którego wciśnięcie powoduje pokazanie okna dialogowego .
Okno dialogowe Zamknięcie systemu daje możliwość wybrania jednej z następujących opcji:
Zamknięcie systemu w kontrolowany sposób; można potem wyłączyć zasilanie komputera.
Zamknięcie systemu i ponowne uruchomienie komputera. W systemach, gdzie używane jest Lilo, pojawia się dodatkowa rozwijana lista. Pozwala na wybranie systemu (lub wersji jądra), który ma być uruchomiony przy następnym starcie komputera.
Zatrzymanie i ponowne uruchomienie serwera X. Opcja ta jest użyteczna w przypadku zmiany konfiguracji X11.
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.
Wciśnięcie przycisku powoduje wykonanie wybranej akcji; przycisk pozwala na powrót do głównego okna kdm.
W tym rozdziale zakłada się, że kdm już działa w Twoim systemie i chcesz w pewien sposób zmienić jego zachowanie.
Kiedy kdm rozpoczyna działanie, odczytuje konfigurację z katalogu $KDEDIR/share/config/kdm/
(może to być także /etc/kde3/kdm/
lub inna lokalizacja).
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).
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 $
(zazwyczaj ograniczone do administratorów systemu zalogowanych jako KDEDIR
/share/config/kdm/kdmrcroot
).
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 Centrum sterowania KDE (->), które jest opisane w plikach pomocy Centrum sterowania KDE.
Pozostała część tego rozdziału omawia konfigurację kdm za pomocą modułu Centrum sterowania KDE, a następny opisuje opcje dostępne w samym kdmrc
. Jeśli potrzebujesz ustawień tylko dla użytkowników lokalnych, moduł Centrum sterowania KDE powinien być wystarczający. Jeśli jednak chcesz wykorzystywać zdalne logowanie albo mieć wiele jednocześnie działających sesji kdm, czytaj dalej.
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.
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 Centrum sterowania KDE spowoduje usunięcie tych komentarzy. Wszystkie dostępne w kdmrc
opcje są opisane w Rozdział 5, Pliki wykorzystywane podczas konfiguracji programu kdm.
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.
Rozdział ten jest podzielony na kilka części: Wygląd KDM, Czcionka, Tło, Zamykanie, Użytkownicy i Ułatwienia.
Możesz przełączać między sekcjami używając kart na górze okna.
Bez uprawnień administratora nie możesz zmieniać ustawień w tym module. Aby je uzyskać kliknij przycisk i podaj właściwe hasło.
Na tej karcie można zmieniać wygląd kdm, menedżera logowania dla KDE.
Powitanie: 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 GreetString
w kdmrc
.
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 Logo:. Odpowiada to opcji LogoArea
w kdmrc
Jeśli wybierzesz Pokaż logo, to masz następujące możliwości:
Upuszczenie pliku obrazka na przycisk obrazka.
Kliknięcie przycisku obrazka i zaznaczenie właściwego pliku w oknie wyboru.
Jeśli nie określisz loga, zostanie wykorzystany plik domyślny: $
.KDEDIR
/share/apps/kdm/pics/kdelogo.xpm
Okno logowania jest zazwyczaj wyświetlane na środku ekranu. Jeśli chcesz zmienić jego położenie, użyj opcji Położenie:. Możesz podać pozycję względną środka okna (w procentach rozmiaru ekranu) względem lewego górnego rogu ekranu. Do tego służą pola X: oraz Y:. Opcja ta odpowiada kluczowi GreeterPos
z kdmrc
.
Podczas gdy styl KDE zależy od ustawień użytkownika, ten wykorzystywany przez kdm jest konfigurowany przy pomocy opcji Styl użytkownika i Zestaw kolorów. Odpowiadają one kluczom GUIStyle
i ColorScheme
z kdmrc
.
Niżej znajduje się lista rozwijana pozwalająca wybrać język używany przez okno logowania. Odpowiada to kluczowi Language
z kdmrc
.
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.
Z listy rozwijanej możesz wybrać trzy różne style czcionek (Ogólne, Błędy, Powitanie). Kiedy klikniesz przycisk , pojawi się okno dialogowe służące do ustawiania parametrów stylu czcionki.
Ogólne - ta czcionka jest używana we wszystkich innych miejscach okna logowania.
Jeśli logowanie się nie powiedzie, to jest wykorzystywany styl czcionki Błędy.
Styl Powitanie jest wykorzystywany w tytule.
Możesz także zaznaczyć pole Użyj antyaliasingu, jeśli chcesz mieć wygładzone czcionki w oknie logowania.
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.
Kolory i efekty tła są ustawiane na karcie Tło.
Aby zmienić kolor(y) tła, po prostu kliknij jeden z przycisków kolorów i wybierz nowy.
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:
Po wybraniu tego trybu użyj przycisku koloru (). Wybrany kolor będzie pokrywał całe tło.
Po wybraniu tego trybu masz do dyspozycji oba przyciski kolorów.
Wzorzec wybierasz klikając przycisk Ustawienia. Otwarte zostanie nowe okno, które daje możliwość wybrania wzorca. Wystarczy wybrać dowolny wzorzec, a następnie kliknąć OK, 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 Tło: Dodawanie, usuwanie i zmiana wzorców.
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 Tło: Korzystanie z zewnętrznego programu.
Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). KDE zostanie wtedy uruchomione z Kolorem 1 po lewej stronie ekranu, przechodzącym powoli w Kolor 2 po prawej stronie ekranu.
Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). KDE zostanie wtedy uruchomione z Kolorem 1 na górze ekranu przechodzącym powoli w Kolor 2 na dole ekranu.
Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). KDE zostanie wtedy uruchomione z Kolorem 1znajdującym się w każdym rogu ekranu, przechodzącym w Kolor 2 na środku ekranu.
Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). KDE zostanie wtedy uruchomione z Kolorem 1znajdującym się w każdym rogu ekranu, przechodzącym w Kolor 2 aż do środka ekranu. Forma tego gradientu jest inna niż piramidkowego przenikania.
Wybierając ten tryb, zaznaczasz dwa kolory (korzystając z obu przycisków kolorów). KDE zostanie wtedy uruchomione z Kolorem 2znajdującym się w środku ekranu, przechodzącym w Kolor 1 aż do rogów ekranu w formie eliptycznej.
Przycisk konfiguracji jest użyteczny tylko przy wyborze opcji Program tła lub Wzorce. W tych przypadkach, wyświetlone zostanie inne okno służące konfiguracji.
Tapeta
Aby wybrać nowy obraz tła, najpierw kliknij kartę Tapety, wtedy możesz albo wybrać obraz z listy rozwijanej o nazwie Tapeta albo kliknąć przycisk i wybrać plik obrazu za pomocą wyświetlonego okna wyboru pliku.
Obrazek może być wyświetlany na sześć sposobów:
Nie ma obrazka. Wykorzystywane są tylko kolory tła.
Obraz jest umieszczany na środku ekranu. Kolory tła będą pokazywane w miejscach, których nie pokrywa obraz tła.
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.
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.
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.
Obraz będzie dopasowany do rozmiarów ekranu. Zostanie rozciągnięty do wszystkich rogów.
Możliwość zamknięcia systemu
Ta lista rozwijana służy do wskazania, kto może zamykać system:
Nikt: Nikt nie może zamykać systemu za pomocą kdm. Trzeba się zalogować i wydać odpowiednie polecenie.
Wszyscy: Każdy może zamykać system za pomocą kdm.
Tylko administrator: kdm wymaga hasła administratora (użytkownika root
) przed zamknięciem systemu.
Dla użytkowników lokalnych (Lokalnie:) i zdalnych (Zdalnie:) można oddzielnie określić kto ma prawo do zamykania systemu.
Polecenia
Te pola tekstowe służą do zdefiniowania dokładnej postaci polecenia zamykającego system.
Zatrzymanie: to domyślnie /sbin/halt . Z kolei Ponowne uruchomienie: to domyślnie /sbin/reboot.
Jeśli włączona jest opcja Pokaż opcje uruchamiania systemu w oknie "Wyłącz system...", 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 lilo i pliku mapy. Uwaga: ta opcja nie jest dostępna we wszystkich systemach operacyjnych.
Tutaj możesz zmienić sposób wyświetlania informacji o użytkownikach w oknie logowania.
Listę użytkowników w kdm można wyłączyć w sekcji Pokaż użytkowników. Dostępne są następujące opcje:
Pokaż tylko użytkowników wskazanych na liście
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.
Pozwala wybrać użytkowników, którzy nie będą pokazywani liście. Wszyscy pozostali się tam znajdą.
Zamiast podawać nazwy użytkowników, możesz wykorzystać pole UID-y systemowe do wpisania zakresu UID-ó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.
Jeśli także włączysz opcję Sortuj, 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ę Automatyczne dopełnianie.
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.
Jeśli zezwalasz na wykorzystywanie obrazków użytkowników, możesz tu wskazać ich źródło.
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ć.
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.
Karta Ułatwienia daje dostęp do kilku opcji, które ułatwiają życie leniwym osobom. Przykłady to automatyczne logowanie i zablokowanie haseł.
Wykorzystanie ich należy zawsze dokładnie przemyśleć. Każda z opcji z karty Ułatwienia 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.
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 Włącz automatyczne logowanie.
Konto, które ma być wykorzystane do automatycznego logowania, wybiera się z listy nazwanej Użytkownik:.
Ta właściwość umożliwia niektórym użytkownikom logowanie się bez podawania hasła. Włącza się ją przy użyciu opcji Włącz logowanie bez hasła.
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.
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 guest
.
Możesz także zdecydować, który użytkownik ma być „wybrany” przy starcie kdm. Domyślną opcją jest Brak. Pozostałe to Poprzedni (kdm używa ostatniego zalogowanego użytkownika) oraz Podany. 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.
Opcja Automatycznie zaloguj po awarii serwera X pozwala pominąć uwierzytelnianie po przypadkowej awarii serwera X.
Ten rozdział opisuje pliki, które wpływają na zachowanie programu kdm. Niektóre z nich można zmieniać przy pomocy modułów KControl, ale nie wszystkie.
Ogólny format pliku przypomina format „plików INI”. Opcje to pary złożone z klucza i wartości, umieszcza się je w sekcjach. Ważna jest wielkość liter (wielkie i małe są traktowane inaczej). Błędy składniowe i nierozpoznane pary klucz/wartość powodują komunikaty o błędach, ale nie zakończenie działania kdm.
Wiersze zaczynające się od znaku #
to komentarze; puste wiersze są także ignorowane.
Sekcje są wyróżnione przez [
Nazwę sekcji
]
.
Każdy ekran X można konfigurować osobno.
Każdy ekran ma nazwę , która składa się z nazwy komputera (która jest pusta dla ekranów lokalnych podanych w StaticServers
i ReserveServers
), dwukropka i numeru ekranu. Ekran należy także do lasy ekranów (w większości przypadków można to zignorować).
Sekcje z ustawieniami dotyczącymi określonego ekranu mają składnię, którą można zapisać formalnie jako [X-
komputer
[ :
numer
[ _
klasa
] ] -
podsekcja
]
Wszystkie sekcje z tą samą podsekcją
tworzą klasę sekcji.
Znaku specjalnego *
można użyć w polach komputer
, numer
i klasa
. W ten sposób określa się wszystkie wartości tego pola. Można także pominąć końcowe pola, zakłada się wtedy, że mają one wartość *
. Nazwa komputera to albo nazwa domenowa, jak .inf.tu-dresden.de
lub znak specjalny +
(oznacza wartość niepustą).
Sekcja, z której wykorzystywane są ustawienia jest określona zgodnie z pewną liczbą zasad. Oto one:
Dokładne dopasowanie jest ważniejsze od niepełnego (dla nazwy komputera), które z kolei jest ważniejsze od znaku specjalnego (+
przed *
).
Dla dokładnych dopasowań ważność spada z lewej do prawej.
Przykład: nazwa ekranu „mojkomputer.gdzies:0”, klasa „dpy”
[X-mojkomputer.gdzies:0_dpy] to dopasowanie lepsze od
[X-mojkomputer.gdzies:0_*] (to samo co [X-mojkomputer.gdzies:0]), które z kolei jest lepsze od
[X-mojkomputer.gdzies:*_dpy], które jest lepsze od
[X-mojkomputer.gdzies:*_*] (to samo co [X-mojkomputer.gdzies]), które jest lepsze od
[X-.gdzies:*_*] (to samo co [X-.gdzies]), które jest lepsze od
[X-+:0_dpy], które jest lepsze od
[X-*:0_dpy] , które jest lepsze od
[X-*:0_*] (to samo co [X-*:0]), które jest lepsze od
[X-*:*_*] (to samo co [X-*]).
Te sekcje nie pozwolą na dopasowanie ekranu:
[X-jegokomputer], [X-mojkomputer.gdzies:0_dec], [X-*:1], [X-:*]
Często spotykane sekcje to [X-*] (wszystkie ekrany), [X-:*] (wszystkie lokalne ekrany) i [X-:0] (pierwszy ekran lokalny).
Format wszystkich kluczy to
. Klucze są ważne tylko w klasie sekcji, dla której są zdefiniowane. Niektóre klucze nie stosują się do części ekranów, są wtedy ignorowane. klucz
=
wartość
Jeśli ustawienie nie zostało znalezione dla żadnej z pasujących sekcji to używana jest wartość domyślna.
Znaki specjalne uzyskuje się używając kombinacji rozpoczynających się od odwrotnego ukośnika. Te znaki to: odstępy na początku i końcu (\s
), tabulacje (\t
), koniec wiersza (\n
), powrót karetki (\r
) i odwrotny ukośnik (\\
)).
Na listach pola są oddzielane przecinkami, bez białych znaków.
Niektóre polecenia podlegają podziałowi na słowa, podobnemu do tego wykonywanego przez sh: pojedyncze i podwójne cudysłowy ('
oraz "
) mają swoje zwykłe znaczenie; odwrotny ukośnik cytuje wszystko (nie tylko znaki specjalne). Podwójne ukośniki muszą być podwojone z powodu dwóch poziomów cytowania.
Standardowy kdmrc
zawiera bardzo wiele komentarzy. Wszystkie one są tracone po wykonaniu w nim zmian za pomocą Centrum Sterowania KDE.
Ta sekcja zawiera opcje globalne, które nie pasują do żadnej z pozostałych sekcji.
ConfigVersion
Ta opcja istnieje tylko w celu ułatwienia automatycznego uaktualniania. Nie zmieniaj jej wartości, może to spowodować konflikt przy kolejnych uaktualnieniach i, w niektórych przypadkach, uniemożliwić uruchomienie kdm.
StaticServers
Lista ekranów (X-Server) zarządzanych przez kdm. Ekrany z nazwą komputera są ekranami zdalnymi, które powinny już działać; pozostałe ekrany są lokalne, kdm uruchamia dla każdego z nich własny X-Server; zobacz też ServerCmd
. Każdy ekran należy do klasy ekranów; nazwę klasy dołącza się do nazwy ekranu po podkreśleniu. Po więcej szczegółów zajrzyj do „Miejsce na listę stale uruchomionych programów X-Server”.
Domyślną wartością jest „:0”.
ReserveServers
Lista ekranów uzyskiwanych na żądanie. Składnia taka sama jak w przypadku opcji StaticServers
.
Domyślnie puste.
ServerVTs
Lista wirtualnych terminali, które może otrzymać X-Server. W przypadku podania wartości ujemnej zostanie użyta jej wartość bezwzględna, a terminal wirtualny zostanie utworzony tylko jeśli jądro systemu stwierdzi, że taki jeszcze nie istnieje. Jeśli kdm wykorzysta wszystkie terminale z listy, utworzy nowe terminale wirtualne o numerach większych od ostatniego w listy. Opcja ta działa obecnie tylko w Linuksie.
Domyślnie puste.
ConsoleTTYs
Opcja dla systemów operacyjnych (OS) z obsługą terminali wirtualnych (VT) zarówno w kdm, jak i w samym OS. Obecnie działa tylko w Linuksie.
Kiedy kdm przełącza do trybu wiersza poleceń, rozpoczyna monitorowanie wszystkich TTY wpisanych w tej opcji (bez początkowego /dev/
). Jeśli żaden z nich nie jest aktywny przez określony czas, kdm przełącza do graficznego okna logowania.
Domyślnie puste.
PidFile
Wartością jest nazwa pliku, do którego zostanie zapisany identyfikator głównego procesu kdm w formacie ASCII (czyli jako ciąg cyfr). Jeśli nazwa pliku jest pusta, numer procesu nie będzie przechowywany w pliku.
Domyślnie puste.
LockPidFile
Ta opcja wskazuje czy kdm używa blokad plików do synchronizacji między wieloma menedżerami wyświetlania.
Domyślna wartość to „true” (prawda).
AuthDir
Nazwa katalogu, w którym kdm, podczas inicjalizacji sesji, przechowuje pliki uwierzytelniania wykorzystywane przez X-Server. kdm spodziewa się, ze system wyczyści ten katalog podczas ponownego uruchamiania.
Plik uwierzytelniania do użycia dla konkretnego ekranu podaje się za pomocą opcji AuthFile
w [X-*-Core].
Domyślna wartość to „/var/run/xauth”.
AutoRescan
Wartość typu prawda/fałsz, która wskazuje, czy kdm automatycznie ponownie wczytuje konfigurację jeśli stwierdzi, że została zmieniona.
Domyślna wartość to „true” (prawda).
ExportList
Dodatkowe zmienne środowiska przekazywane przez kdm do uruchamianych przez niego programów. Często są to LD_LIBRARY_PATH
i XCURSOR_THEME
; w innych przypadkach opcja ta nie jest potrzebna zbyt często.
Domyślnie puste.
RandomFile
Jeśli system nie ma własnego źródła entropii jak /dev/urandom (zobacz: RandomDevice
) i nie ma demona entropii takiego jak EGD (zobacz: PrngdSocket
i PrngdPort
), to kdm wykorzysta własny generator liczb pseudolosowych który, między innymi, będzie wykorzystywał sumy kontrolne fragmentów tego pliku (które, oczywiście, powinny się często zmieniać).
Ta opcja nie istnieje w Linuksie i wielu BSD.
Domyślna wartość to „/dev/mem”.
PrngdSocket
Jeśli system nie ma własnego źródła entropii jak /dev/urandom (zobacz: RandomDevice
), wykorzystuje dane losowe z demona generatora liczb pseudolosowych, takiego jak EGD (http://egd.sourceforge.net) przez gniazdo domeny UNIX-a.
Ta opcja nie istnieje w Linuksie i wielu BSD.
Domyślnie puste.
PrngdPort
To samo co PrngdSocket
, wykorzystuje gniazdo TCP na komputerze lokalnym.
RandomDevice
Ścieżka do urządzenia znakowego, z którego kdm powinien czytać dane losowe. Pusta wartość oznacza, że ma zostać użyte systemowe źródło entropii, jeśli takie istnieje.
Ta opcja nie istnieje w OpenBSD, gdzie zamiast tego jest wykorzystywana systemowa funkcja arc4_random.
Domyślnie puste.
FifoDir
Katalog, w którym mają zastać utworzone FiFo;pusta wartość wyłącza je.
Domyślna wartość to „/var/run/xdmctl”.
FifoGroup
Grupa, do której powinno należeć globalne polecenie FiFo; nazwa lub numer identyfikacyjny grupy.
DataDir
Katalog, w którym kdm ma przechowywać stałe dane robocze. Takie dane to na przykład informacja o poprzednio zalogowanym użytkowniku na określonym ekranie.
Domyślna wartość to „/var/lib/kdm”.
DmrcDir
Katalog, w którym kdm ma przechowywać pliki .dmrc
użytkowników. Jest potrzebny tylko jeśli przez zalogowaniem nie można odczytywać katalogów domowych (tak jest w przypadku AFS).
Domyślnie puste.
Ta sekcja zawiera opcje sterujące sposobem obsługi żądań XDMCP przez kdm.
Enable
Czy kdm ma nasłuchiwać nadchodzących żądań XDMCP.
Domyślna wartość to „true” (prawda).
Port
Port UDP używany przez kdm do nasłuchiwania nadchodzących żądań XDMCP. Jeśli nie zajmujesz się wyszukiwaniem błędów w systemie, zostaw domyślną wartość.
Domyślna wartość to „177”.
KeyFile
Metoda uwierzytelniania XDMCP XDM-AUTHENTICATION-1 wymaga, żeby klucz prywatny był współdzielony między kdm i terminalem. Za pomocą tej opcji podaje się plik z tymi wartościami. Każdy wpis pliku składa się z nazwy ekranu i współdzielonego klucza.
Domyślnie puste.
Xaccess
Aby zapobiegać nieautoryzowanym usługom XDMCP i pozwolić na przekazywanie żądań XDMCP IndirectQuery, ten plik zawiera bazę nazw komputerów, którym zezwala się na połączenia do tego komputera albo listę komputerów, do których takie żądania mają być przekazywane. Format tego pliku jest opisany w „Kontrola dostępu XDMCP”.
Domyślna wartość to „${kde_confdir
}/kdm/Xaccess”.
ChoiceTimeout
Liczba sekund oczekiwania na odpowiedź ekranu po wybraniu go przez użytkownika za pomocą programu wyboru. Jeśli ekran wyśle w tym czasie IndirectQuery XDMCP to żądanie jest przekazywane do wybranego komputera. W przeciwnym wypadku zakłada się, że pochodzi z nowej sesji i użytkownik ponownie otrzymuje ekran wyboru.
Domyślna wartość to „15”.
RemoveDomainname
Podczas tworzenia nazwy klientów XDMCP zostaje zazwyczaj użyta w pełni kwalifikowana nazwa terminala. Taka nazwa jest czasami nieczytelna, więc, jeśli ta opcja jest włączona, kdm usuwa część zawierającą nazwę domeny.
Domyślna wartość to „true” (prawda).
SourceAddress
Wykorzystanie numerycznych adresów IP zamiast nazw komputerów dla połączeń przychodzących. Dla komputerów mających kilka połączeń sieciowych. W ten sposób unika się próby połączenia z interfejsem sieciowym, który może być w danej chwili wyłączony.
Domyślna wartość to „false” (fałsz).
Willing
Program, który jest uruchamiany (jako root
) kiedy otrzymane zostanie żądanie XDMCP DirectQuery lub BroadcastQuery, a komputer został skonfigurowany tak, aby udostępniał zarządzanie ekranami przez XDMCP. Wynik działania tego programu może być pokazywany w oknie wyboru. Jeśli nie podano żadnej nazwy programu, wysyłany jest ciąg znaków „Willing to manage”.
Domyślnie puste.
Ta sekcja zawiera opcje globalne dotyczące zamykania systemu.
HaltCmd
Polecenie (objęte podziałem na słowa) używane do zatrzymania/zakończenia pracy systemu.
Wartość domyślna to coś sensownego dla systemu, dla którego zbudowano kdm. Przykład: /sbin/shutdown -h
now
.
RebootCmd
Polecenie (objęte podziałem na słowa) używane do ponownego uruchomienia systemu.
Wartość domyślna to coś sensownego dla systemu, dla którego zbudowano kdm. Przykład: /sbin/shutdown -r
now
.
AllowFifo
Czy dozwolone jest zamykanie systemu za pomocą polecenia globalnego FiFo.
Domyślna wartość to „false” (fałsz).
AllowFifoNow
Czy jest dozwolone przerywanie aktywnych sesji podczas zamykania systemu przy użyciu polecenia globalnego FiFo.
Odniesie skutek tylko jeśli włączona jest opcja AllowFifo
.
Domyślna wartość to „true” (prawda).
BootManager
Menadżer rozruchu, którego ma użyć kdm przy pokazywaniu opcji ponownego uruchomienia w oknie zamykania systemu.
None
Brak menedżera rozruchu
Grub
Menadżer rozruchu Grub
Lilo
Menadżer rozruchu Lilo (tylko Linux na i386 & x86-64)
Domyślna wartość to „None”.
Ta sekcja klasy zawiera opcje dotyczące ogólnych mechanizmów kdm (tzw. core).
OpenDelay
Zobacz: OpenRepeat
.
Domyślna wartość to „15”.
OpenTimeout
Zobacz: OpenRepeat
.
Domyślna wartość to „120”.
OpenRepeat
Te opcje kontrolują sposób zachowania kdm podczas próby otwarcia połączenia doX-Server. OpenDelay
to długość oczekiwania(w sekundach) między próbami zakończonymi sukcesem, OpenRepeat
to liczba wykonywanych prób, a OpenTimeout
to maksymalny czas trwania jednej próby. Po OpenRepeat
próbach lub po OpenTimeout
sekundach trwania dowolnej próby przyjmuje się, że próba rozpoczęcia połączenia nie udała się.
Domyślna wartość to „5”.
StartAttempts
Ile razy kdm próbuje uruchomić odległy
ekran z listy StaticServers
. Jeśli nie uda się, ekran zostanie zablokowany. Jest tylko jedna próba uruchomienia ekranu lokalnego, a próby dla ekranów XDMCP są powtarzane w nieskończoność przez klienta (jeśli nie przekazano opcji -once
do X-Server).
Domyślna wartość to „4”.
ServerAttempts
Liczba prób uruchomienia przez kdm lokalnego X-Server. Uruchomienie obejmuje także oczekiwanie na pojawienie się ekranu.
Domyślna wartość to „1”.
ServerTimeout
Ile sekund kdm powinien czekać na start lokalnego X-Server.
Domyślna wartość to „15”.
ServerCmd
Polecenie używane do uruchomienia X-Server, bez numeru ekranu i terminala wirtualnego. Ciąg ten podlega podziałowi na słowa.
Wartość domyślna to coś sensownego dla systemu, dla którego zbudowano kdm. Przykład: /usr/X11R6/bin/X.
ServerArgsLocal
Dodatkowe argumenty X-Server dla sesji lokalnych. Ciąg podlega podziałowi na słowa.
Domyślnie puste.
ServerArgsRemote
Dodatkowe argumenty X-Server dla sesji zdalnych. Ciąg podlega podziałowi na słowa.
Domyślnie puste.
ServerVT
Terminal wirtualny na którym powinien być uruchomiony X-Server. Zamiast tej opcji powinno się używać ServerVTs
. Wartość zerowa oznacza, że kdm ma automatycznie przydzielić VT. Ustawienie wartości -1
powoduje nie przydzielanie VT - jest wymagane w przypadku konfiguracji z wieloma fizycznymi konsolami. Obecnie ta opcja jest dostępna tylko w Linuksie.
ServerTTY
Jest to opcja dla OSów bez obsługi VT; tak przez kdm jak i przez sam OS. Obecnie odnosi się do wszystkich OSów poza Linuksem.
Po przełączeniu kdm do trybu wiersza poleceń zaczyna on monitorować ten TTY (podany bez początkowego /dev/
). Jeśli nie jest używany przez pewien czas, kdm przełącza do graficznego ekranu logowania.
Domyślnie puste.
PingInterval
Zobacz: PingTimeout
.
Domyślna wartość to „5”.
PingTimeout
Aby dowiedzieć się o zniknięciu odległych ekranów, kdm regularnie je sprawdza. PingInterval
określa czas (w minutach) między kolejnymi próbami, a PingTimeout
maksymalny czas oczekiwania na odpowiedź od terminala (w minutach). Jeśli terminal nie odpowiada, to sesja zostaje zakończona.
W przypadku częstego wykorzystywania terminali X, które mogą zostać odcięte od głównego komputera, dobrym pomysłem może być zwiększenie czasu oczekiwania. Jedynym problemem jest to, że sesje będą istniały dalej po przypadkowym wyłączeniu terminala.
Domyślna wartość to „5”.
TerminateServer
Czy kdm powinien uruchamiać ponownie lokalny X-Server po zakończeniu sesji, zamiast jej resetu. Ta opcja jest przydatna jeśli X-Server posiada błędy wycieków pamięci lub powoduje awarię systemu przy próbie resetu.
Domyślna wartość to „false” (fałsz).
ResetSignal
Numer sygnału do użycia do resetu lokalnego X-Server.
Wartość domyślna to „1 (SIGHUP)”.
TermSignal
Numer sygnału do użycia do zakończenia działania lokalnego X-Server.
Wartość domyślna to „15 (SIGTERM)”.
Authorize
Określa czy kdm generuje i używa uwierzytelniania dla lokalnych połączeń z X-Server. W przypadku ekranów XDMCP wykorzystywane jest uwierzytelnianie żądane przez ekran; zdalne ekrany nie wykorzystujące XDMCP w ogóle nie obsługują uwierzytelniania.
Domyślna wartość to „true” (prawda).
AuthNames
Jeśli opcja Authorize
ma wartość true (prawda), wykorzystywany jest podany tu mechanizm uwierzytelniania. Metoda MIT-MAGIC-COOKIE-1 jest dostępna zawsze; dostępność XDM-AUTHORIZATION-1, SUN-DES-1 i MIT-KERBEROS-5 zależy od konfiguracji użytej do budowania.
Wartość domyślna to „DEF_AUTH_NAME”.
ResetForAuth
Niektóre stare X-Servery ponownie odczytują plik uwierzytelniania podczas resetu X-Servera, zamiast sprawdzenia pierwotnego połączenia. kdm generuje informacja wykorzystywane przy uwierzytelnianiu zaraz przed połączeniem z ekranem, więc stary X-Server nie otrzyma aktualnej informacji. Włączenie tej opcji powoduje, że kdm wysyła do X-Server sygnał SIGHUP po utworzeniu pliku. Powoduje to dodatkowy reset X-Servera, podczas którego odczyta on nowe informacje dotyczące uwierzytelniania.
Domyślna wartość to „false” (fałsz).
AuthFile
Ten plik jest wykorzystywany do przekazywania danych uwierzytelniania z kdm do X-Server, przy pomocy opcji wiersza poleceń -auth
programu X-Server. Powinien być przechowywany w katalogu, który nie jest dostępny do zapisu dla użytkowników, jako że mógłby być łatwo usunięty, co spowodowałoby wyłączenie mechanizmu uwierzytelniania w X-Server. Jeśli nic nie podano, tworzona jest losowa nazwa z AuthDir
i nazwą ekranu.
Domyślnie puste.
Resources
Ta opcja określa nazwę pliku do wczytania przez xrdb jako baza danych o zasobach dla okna głównego ekranu 0. Programy KDE nie używają zazwyczaj zasobów X, więc opcja ta jest potrzebna tylko jeśli programu Setup
tego potrzebuje.
Domyślnie puste.
Xrdb
Program xrdb używany do odczytu pliku zasobów X podanego w Recources
. Ciąg podlega podziałowi na słowa.
Wartość domyślna to „${x_bindir
}/xrdb”.
Setup
Ciąg podlega podziałowi na słowa. Znajduje się tam nazwa programu uruchamianego przed oknem logowania (jako użytkownik root
). Można go wykorzystać do zmiany wyglądu ekranu wokół okna logowania lub do umieszczenia na ekranie innych okien (np. xconsole). Najczęściej używa się tutaj nazwy pliku Xsetup. Zobacz: „Program konfiguracyjny”.
Domyślnie puste.
Startup
Ciąg podlega podziałowi na słowa. Znajduje się tam nazwa programu uruchamianego (jako root
) po sukcesie procesu uwierzytelniania użytkownika. Najczęściej spotykaną tu nazwą pliku jest Xstartup. Zobacz: „Program uruchamiający”.
Domyślnie puste.
Reset
Ciąg podlega podziałowi na słowa. Znajduje się tam nazwa programu uruchamianego (jako root
) po zakończeniu sesji. Najczęściej spotykaną tu nazwą pliku jest Xreset. Zobacz: „Program resetujący”.
Domyślnie puste.
Session
Ciąg podlega podziałowi na słowa. Podaje się tu program sesji, który ma być uruchomiony (z prawami użytkownika posiadającego daną sesję). Najczęściej spotykaną nazwą wykorzystywanego tu pliku jest Xsession. Zobacz: „Program sesji”.
Wartość domyślna to „${x_bindir
}/xterm -ls -T”.
FailsafeClient
Jeśli nie uda się uruchomić programu Session
, kdm spróbuje podanego tutaj. Ten program jest uruchamiany bez argumentów, ale przy wykorzystaniu takich samych zmiennych środowiska jakie miałaby sesja (zobacz: „Program sesji”).
Wartość domyślna to „${x_bindir
}/xterm”.
UserPath
Zmienna środowiska PATH
dla nie należącego do użytkownika root
programu Session
.
Wartość domyślna zależy od systemu, dla którego zbudowano kdm.
SystemPath
Zmienna środowiska PATH
dla wszystkich programów poza nie należącym do użytkownika root
programem Session
. Jest dobrym pomysłem nie wpisywanie tu .
(bieżący katalog).
Wartość domyślna zależy od systemu, dla którego zbudowano kdm.
SystemShell
Zmienna środowiska SHELL
dla wszystkich programów poza Session
.
Wartość domyślna to „/bin/sh”.
UserAuthDir
Jeśli kdm nie może zapisać do zwykłego pliku uwierzytelniania ($HOME
/.Xauthority), tworzy plik o unikalnej nazwie w tym katalogu i tak zmienia zmienną środowiska XAUTHORITY
, żeby na niego wskazywała.
Wartość domyślna to „/tmp”.
AutoReLogin
Jeśli włączona, kdm automatycznie ponownie uruchomi sesję po awarii programu X-Server (lub jeśli został on wyłączony za pomocą Alt-Ctrl-BackSpace). Włączenie tej opcji otwiera lukę w bezpieczeństwie: blokadę ekranu daje się obejść (jeśli nie jest wykorzystana blokada wbudowana w KDE).
Domyślna wartość to „false” (fałsz).
AllowRootLogin
Jeśli włączone, nie pozwala użytkownikowi root
(i każdemu innemu z UID = 0) na bezpośrednie zalogowanie.
Domyślna wartość to „true” (prawda).
AllowNullPasswd
Jeśli wyłączone, mogą się logować tylko użytkownicy posiadający hasło.
Domyślna wartość to „true” (prawda).
AllowShutdown
Użytkownicy mający uprawnienia do zamykania systemu. Odnosi się to zarówno do okna logowania, jak i polecenia FiFo.
None
brak opcji Zamknij system... w menu
Root
aby zamknąć system trzeba podać hasło użytkownika root
All
wszyscy mogą zamykać system
Wartość domyślna to „All”.
AllowSdForceNow
Użytkownicy, którzy mają uprawnienia do przerywania aktywnych sesji przy zamykaniu systemu.
None
nie jest możliwe wymuszone zakończenie sesji
Root
aby wymusić zamknięcia systemu konieczne jest hasło użytkownika root
All
każdy może wymusić zamknięcie systemu
Wartość domyślna to „All”.
DefaultSdMode
Domyślny sposób wykonania zlecenia zamknięcia systemu.
Schedule
zamknięcie systemu po zakończeniu wszystkich aktywnych sesji (możliwie szybko)
TryNow
zamknięcie systemu jeśli nie ma aktywnych sesji; w przeciwnym wypadku brak akcji
ForceNow
bezwarunkowe zamknięcie systemu
Domyślna wartość to „Schedule”.
ScheduledSd
Sposób podania sposobu wykonania zlecenia zamknięcia systemu:
Never
brak
Optional
jako przycisk w podstawowym oknie dialogowym dotyczącym zamykania systemu
Always
zamiast zwykłego okna dialogowego zamykania systemu
Wartość domyślna to „Never”.
NoPassEnable
Włączenie logowania bez podawania hasła na tym ekranie. Należy używać tej opcji z rozwagą!
Domyślna wartość to „false” (fałsz).
NoPassUsers
Użytkownicy, którzy nie muszą podawać hasła, żeby się zalogować. Elementy rozpoczynające się od @
odnoszą się do wszystkich użytkowników w grupie o tej nazwie. *
oznacza wszystkich użytkowników oprócz root
(i innych o UID = 0). Nigdy nie należy podawać tu użytkownika root
.
Domyślnie puste.
AutoLoginEnable
Włączenie automatycznego logowania. Tej opcji należy używać z rozwagą!
Domyślna wartość to „false” (fałsz).
AutoLoginAgain
Jeśli włączone, automatycznie logowanie po wylogowaniu. Jeśli wyłączone to automatyczne logowanie odbywa się tylko przy rozpoczęciu sesji ekranu.
Domyślna wartość to „false” (fałsz).
AutoLoginDelay
Czas w sekundach przed rozpoczęciem automatycznego logowania. Taki efekt jest też nazywany „opóźnionym logowaniem”.
AutoLoginUser
Użytkownik do automatycznego logowania. Nigdy nie należy tu podawać nazwy root
!
Domyślnie puste.
AutoLoginPass
Hasło użytkownika, który ma być automatycznie zalogowany. To nie jest potrzebne jeśli tylko użytkownik nie jest zalogowany w NIS lub domenie Kerberos. Jeśli wykorzystuje się tą opcję, powinno się także wykonać polecenie chmod 600
kdmrc
z oczywistych przyczyn.
Domyślnie puste.
AutoLoginLocked
Natychmiastowe zablokowanie automatycznie uruchomionej sesji. Działa tylko dla sesji KDE.
Domyślna wartość to „false” (fałsz).
SessionsDirs
Lista katalogów zawierających definicje typów sesji.
Wartość domyślna to „${kde_datadir
}/kdm/sessions”.
ClientLogFile
Plik (o ścieżce określonej względem katalogu domowego użytkownika), do którego ma być przekierowane wyjście sesji. Jedno wystąpienie %s
w tym ciągu zostanie zastąpione nazwą ekranu. Użycie %%
pozwala uzyskać pojedynczyznak %
.
Wartość domyślna to „.xsession-errors”.
UseSessReg
Określenie czy ma być wykorzystana wbudowana w kdm rejestracja w utmp/wtmp/lastlog. Jeśli nie, to uruchomienie narzędzia sessreg powinno znaleźć się w skryptach Startup
i Reset
. Inna metoda to wykorzystanie modułu pam_lastlog w systemach wykorzystujących PAM.
Domyślna wartość to „true” (prawda).
Ta klasa sekcji zawiera opcje związane z konfiguracją okna logowania kdm (tzw. greeter).
GUIStyle
Styl stosowany w programie logowania. Wartość pusta oznacza wykorzystanie stylu domyślnego, którym obecnie jest Plastik
.
Domyślnie puste.
ColorScheme
Zestaw kolorów dla ekranu logowania. Wartość pusta oznacza wykorzystanie zestawu domyślnego, który obecnie wykorzystuje odcienie szarożółte z niektórymi elementami jasnoniebieskimi i żółtymi.
Domyślnie puste.
LogoArea
Obiekt, który ma być pokazywany po prawej od pól logowania (jeśli wyłączona jest opcja UserList
) lub ponad nimi (jeśli opcja UserList
jest włączona):
None
brak obiektu
Logo
obraz podany w LogoPixmap
Clock
zegar analogowy
Domyślna wartość to „Clock”.
LogoPixmap
Obraz pokazywany w oknie logowania jeśli LogoArea
ma wartość Logo
.
Domyślnie puste.
GreeterPos
Względne współrzędne (procent rozmiaru ekranu; X,Y) środka ekranu logowania.kdm przesuwa okno do wnętrza ekranu jeśli miałoby się znaleźć poza nim.
Wartość domyślna to „50,50”.
GreeterScreen
Ekran logowania powinien być pokazywany na wielu ekranach lub przy wykorzystaniu Xinerama. Licznik zaczyna się od 0. Dla Xinerama odpowiada to porządkowi aktywnych sekcji ServerLayout w pliku XF86Config; -1 oznacza wykorzystanie górnego lewego ekranu, a -2 górnego prawego.
GreetString
Nagłówek ekranu logowania. Pusty oznacza brak nagłówka.
Następujące pary znaków są zastępowane ich wartością:
%d
nazwa bieżącego ekranu
%h
nazwa komputera lokalnego, może zawierać nazwę domeny
%n
nazwa lokalnego węzła, zazwyczaj nazwa komputera bez nazwy domeny
%s
system operacyjny
%r
wersja systemu operacyjnego
%m
typ komputera (sprzęt)
%%
pojedyncze %
Domyślna wartość to „Welcome to %s at %n”.
AntiAliasing
Czy czcionki używane w oknie logowania powinny wykorzystywać antyaliasing.
Domyślna wartość to „false” (fałsz).
GreetFont
Czcionka używana w nagłówku okna logowania.
Domyślna wartość to „Serif,20,bold”.
StdFont
Zwykła czcionka używana w oknie logowania.
Wartość domyślna to „Sans Serif,10”.
FailFont
Czcionka używana w wiadomości „Logowanie się nie powiodło”.
Domyślna wartość to „Sans Serif,10,bold”.
NumLock
Co zrobić z modyfikatorem Num Lock podczas działania programu logowania:
Off
wyłączyć
On
włączyć
Keep
nie zmieniać jego stanu
Domyślna wartość to „Keep”.
Language
Język i ustawienia regionalne używane w programie logowania, zakodowane jak w $LC_LANG
.
Domyślna wartość to „en_US”.
UserCompletion
Włączenie automatycznego uzupełniania nazwy użytkownika.
Domyślna wartość to „false” (fałsz).
UserList
Pokazywanie listy użytkowników zawierającej nazwę, imię i nazwisko i obrazek.
Domyślna wartość to „true” (prawda).
ShowUsers
Ta opcja określa, którzy użytkownicy będą pokazywani w widoku użytkowników (UserList
) i/lub będą mieli włączone automatyczne uzupełnianie (UserCompletion
). Jeżeli wartością tej opcji jest Selected
, to lista użytkowników jest wartością SelectedUsers
. Jeśli jest to NotHidden
, pokazywani są wszyscy użytkownicy znalezieni w systemie. Ci podani w HiddenUsers
są usunięci z tej listy, tak samo jak wszyscy o numerze użytkownika większym niż podany w MaxShowUID
oraz ci o numerze niezerowym i mniejszym od MinShowUID
. Elementy list SelectedUsers
i HiddenUsers
rozpoczynające się od @
oznaczają wszystkich użytkowników należących do określonej grupy. Oprócz tego, jeśli lista użytkowników ma być posortowana alfabetycznie, to włączona powinna być opcja SortUsers
.
Domyślna wartość to „NotHidden”.
SelectedUsers
Zobacz: ShowUsers
.
Domyślnie puste.
HiddenUsers
Zobacz: ShowUsers
.
Domyślnie puste.
MinShowUID
Zobacz: ShowUsers
.
MaxShowUID
Zobacz: ShowUsers
.
Domyślna wartość to „65535”.
SortUsers
Zobacz: ShowUsers
.
Domyślna wartość to „true” (prawda).
FaceSource
Jeśli włączona jest opcja UserList
, podane jest tu miejsce skąd kdm pobiera obrazki:
AdminOnly
z <
FaceDir
>/$USER
.face[.icon]
PreferAdmin
<FaceDir
>, jeśli tam nie ma, to $HOME
PreferUser
inny sposób
UserOnly
z należącego do użytkownika $
HOME
/.face[.icon]
Obrazki mogą być w dowolnym formacie rozpoznawanym przez Qt, ale nazwa pliku musi spełniać oczekiwania kdm: .face.icon
to ikona 48x48, a .face
obraz 300x300. Obecnie duży obraz jest używany tylko jeśli nie ma małego i jest skalowany w dół. W przyszłości może być wyświetlany w pełnym rozmiarze w oknie logowania lub podpowiedzi.
Domyślna wartość to „AdminOnly”.
FaceDir
Zobacz: FaceSource
.
Domyślna wartość to „${kde_datadir
}/kdm/faces”.
PreselectUser
Użytkownik, który ma być domyślnie wybrany z listy logowania:
None
nie ma domyślnie wybranego użytkownika
Previous
użytkownik, który ostatnio się zalogował
Default
użytkownik podany w opcji DefaultUser
Jeśli włączone jest FocusPasswd
i jest domyślnie wybrany użytkownik, to kursor zostaje automatycznie umieszczony w polu hasła.
Włączenie automatycznego wyboru użytkownika można uważać za otworzenie luki w zabezpieczeniach, bo daje potencjalnemu napastnikowi prawidłową nazwę użytkownika. Napastnik musi więc „tylko” zgadnąć hasło. Z drugiej strony, można ustawić DefaultUser
na nazwę użytkownika, który nie istnieje w systemie.
Domyślna wartość to „None”.
DefaultUser
Zobacz: PreselectUser
.
Domyślnie puste.
FocusPasswd
Zobacz: PreselectUser
.
Domyślna wartość to „false” (fałsz).
EchoMode
Pole hasła ukrywa wpisywane znaki. Obsługiwane sposoby tego ukrywania to:
OneStar
pokazywany jest znak *
dla każdej wpisywanej litery
ThreeStars
dla każdej wpisanej litery pokazywane jest ***
NoEcho
nic nie jest pokazywane, kursor się nie porusza
Domyślna wartość to „OneStar”.
UseBackground
Jeśli włączone, kdm uruchomi program krootimage ustawiający tło; w przeciwnym wypadku za tło odpowiedzialny jest program Setup
.
Domyślna wartość to „true” (prawda).
BackgroundCfg
Plik konfiguracyjny dla krootimage. Zawiera sekcję o nazwie [Desktop0]
, tak jak kdesktoprc
. Opcje tego pliku nie są tu opisane, można zgadnąć ich znaczenie lub skorzystać z Centrum Sterowania.
Domyślna wartość to „${kde_confdir
}/kdm/backgroundrc”.
GrabServer
Program logowania przejmuje X-Server i klawiaturę podczas startu w celu zwiększenia bezpieczeństwa. Ta opcja pozwala określić czy przechwycenie programu X-Server ma trwać przez okres czytania nazwy użytkownika i hasła. Jeśli jest włączona, przechwycenie programu X-Server kończy się po przechwyceniu klawiatury. W przeciwnym wypadku X-Server jest zwalniany dopiero na chwilę przed rozpoczęciem sesji.
Włączenie tej opcji wyłącza UseBackground
i Setup
.
Domyślna wartość to „false” (fałsz).
GrabTimeout
Ta opcja określa maksymalny czas oczekiwania kdm na zakończenie przechwytywania. Proces przechwytywania może się nie powieść jeśli inny klient X posiada ten X-Server lub klawiaturę lub jeśli opóźnienia sieci są bardzo duże. Czas oczekiwania należy zwiększać ostrożnie, bo użytkownik może być oszukany przez wyświetlenie mu podobnie wyglądającego okna. Jeśli przechwycenie się nie uda, kdm ponownie uruchamia X-Server (jeśli to możliwe) i sesję.
Domyślna wartość to „3”.
AuthComplain
Ostrzegaj, jeśli ekran nie jest uwierzytelniony. Taki przypadek może mieć miejsce jeśli
nie można utworzyć pliku autoryzacji dla lokalnego programu X-Server,
zdalny ekran z XDMCP nie żądał uwierzytelniania lub
ekran jest „odległym” ekranem podanym w StaticServers
.
Domyślna wartość to „true” (prawda).
LoginMode
Określenie czy programy logowania na ekranach lokalnych powinny uruchamiać program wyboru komputera (zdalnie), czy też program logowania (lokalnie) i czy mogą przełączać się między tymi dwoma trybami.
LocalOnly
dozwolone tylko logowanie lokalne
DefaultLocal
uruchomienie w trybie lokalnym, ale dozwolone przełączanie do trybu zdalnego
DefaultRemote
inny sposób
RemoteOnly
tylko wybór zdalnego komputera
Domyślna wartość to „LocalOnly”.
ChooserHosts
Lista komputerów dodawanych automatycznie do menu logowania zdalnego. Nazwa specjalna *
oznacza rozgłaszanie. Nie ma efektu jeśli wartością LoginMode
jest LocalOnly
.
Wartość domyślna to „*”.
ForgingSeed
Ta liczba jest używana jako ziarno generatora pseudolosowego przy tworzeniu typu sesji itd nieistniejących użytkowników. Utrudnia to atakującemu stwierdzenie, którzy użytkownicy istnieją w rzeczywistości. Ta wartość powinna być losowa, ale stała w domenie logowania.
ShowLog
Włączenie wbudowanego w kdm programu xconsole. Jest to możliwe tylko dla jednego ekranu na raz. Ta opcja jest dostępna tylko jeśli podczas budowania kdm skrypt configure został uruchomiony z parametrem --enable-kdm-xconsole
.
Domyślna wartość to „false” (fałsz).
LogSource
Źródła danych dla wbudowanego w kdm programu xconsole. Jeśli puste, następuje żądanie przekierowanie dzienników z /dev/console
. Nie ma znaczenia jeśli wyłaczona jest opcja ShowLog
.
Domyślnie puste.
PluginsLogin
Miejsce na podanie wtyczek konwersji dla okna logowania. Pierwsza na liście jest wybrana na początku. Wtyczki można podawać za pomocą tylko ich nazw (które są rozwijane do $
) lub pełnych ścieżek. kde_modulesdir
/kgreet_nazwa
Wtyczki konwersji to moduły programu logowania, które pobierają od użytkownika dane logowania. Obecnie domyślnie w KDE jest dostępna tylko wtyczka classic
, która pokazuje dobrze znane okno z pytaniem o nazwę użytkownika i hasło.
Domyślna wartość to „classic”.
PluginsShutdown
To samo co PluginsLogin
, ale dla okna zamykania systemu.
Domyślna wartość to „classic”.
PluginOptions
Lista opcji o formacie klucz
=
wartość
. Wtyczki konwersji mogą sprawdzać te ustawienia; nazwy kluczy są określane przez wtyczki.
Domyślnie puste.
AllowConsole
Pokazanie akcji Tryb konsoli w programie logowania (jeśli skonfigurowane jest ServerTTY
/ConsoleTTYs
).
Domyślna wartość to „true” (prawda).
AllowClose
Pokazanie akcji Ponowne uruchomienie serwera X/Zamknij połączenie w programie logowania.
Domyślna wartość to „true” (prawda).
Preloader
Program uruchamiany kiedy program logowania jest widoczny. Jego zadaniem jest wczytanie tyle danych sesji (najbardziej prawdopodobnej) ile to możliwe.
Domyślnie puste.
UseTheme
Czy program logowania powinien używać motywów.
Domyślna wartość to „false” (fałsz).
Theme
Motyw używany przez program logowania. Może wskazywać na katalog lub plik XML.
Domyślnie puste.
Każdy wpis listy StaticServers
określa ekran nie wykorzystujący XDMCP, który ma być stale zarządzany. Ta metoda jest zazwyczaj stosowana tylko dla lokalnych programów X-Server uruchamianych przez kdm, ale kdm może zarządzać zewnętrznie uruchomionymi („odległymi”) programami X-Server, niezależnie od tego czy działają na komputerze lokalnym czy zdalnym.
Formalna składnia to
nazwa ekranu
[_
klasa ekranu
]
dla wszystkich programów X-Server. „Odległe” ekrany odróżniają się posiadaniem nazwy komputera w nazwie ekranu; może to być także localhost
.Nazwa ekranu
musi być możliwa do przekazania jako wartość parametru -display
programu X. Ten ciąg jest używany do tworzenia zależnych od ekranu nazw sekcji, więc należy uważać, żeby nazwy do siebie pasowały. Nazwy ekranów XDMCP pochodzą od adresu ekranu uzyskiwanego podczas odwrotnego odwzorowania nazw. Dla celów konfiguracyjnych przedrostek localhost
w nazwach lokalnych ekranów XDMCP nie jest usuwany, co pozwala na odróżnienie ich od lokalnych programów X-Server uruchomionych przez kdm.
Część klasa ekranu
jest też używana w sekcjach dotyczących ekranu. Jest to użyteczne jeśli ma się wiele podobnych ekranów (na przykład zbiór X-terminali) i potrzeba ustawić opcje dla całej ich grupy. Kiedy używa się XDMCP, ekran musi mieć klasę ekranów, więc dokumentacja każdego X terminala powinna zawierać klasę ekranu danego urządzenia. Jeśli tak nie jest, można uruchomić kdm w trybie rozwiązywania problemów (debug) i użyć polecenia grep na logach w poszukiwaniu ciągu „class”.
Ekrany podane w ReserveServers
nie zostaną uruchomione na początku działania KDM, ale dopiero po żądaniu otrzymanym z gniazda sterującego (lub FiFo). Jeśli podane są rezerwoweekrany, menu KDE będzie posiadało na dole element Uruchom nową sesję. Jego użycie powoduje zarezerwowanie ekranu z nową sesją logowania. Monitor przełączy się na nowy ekran. Na zalogowanie się jest minuta. Jeśli nie ma więcej zarezerwowanych ekranów to ten element menu jest zablokowany.
Kiedy kdm rozpoczyna sesję, tworzy dane uwierzytelniania dla programu X-Server. W przypadku serwerów lokalnych kdm przekazuje -auth
do wiersza poleceń programu X-Server wskazując mu dane uwierzytelniania. W przypadku ekranów XDMCP, kdm przekazuje dane uwierzytelniania do programu X-Server za pomocą wiadomości XDMCP „Accept”.nazwa_pliku
Plik podany w opcji AccessFile
zawiera informacjewykorzystywane przez kdm do kontroli dostępu z ekranów wysyłających żądania za pomocą XDMCP. Plik zawiera cztery typy wpisów: wpisy kontrolujące odpowiedzi na żądania typu „Direct” i „Broadcast”, wpisy kontrolujące odpowiedzi na żądania typu „Indirect”, definicje makr dla wpisów typu „Indirect” i wpisy określające to, na którym interfejsie sieciowym kdm nasłuchuje żądań XDMCP. Puste wiersze są ignorowane, #
traktowany jest jako znacznik komentarza powodujący ignorowanie reszty wiersza, a \
powoduje ignorowanie następującego dalej znaku nowego wiersza, co pozwala na zajmującą wiele wierszy listę komputerów.
Format wpisów typu „Direct” jest prosty, składa się z nazwy komputera lub wzorca porównywanego z nazwą komputera, na którym znajduje się ekran. Wzorce różnią się od nazw komputerów zawieraniem jednego lub więcej meta znaku; *
oznacza każdą sekwencję 0 lub więcej znaków, a ?
pojedynczy znak. Jeśli wpis jest nazwą komputera, to wszystkie porówniania dotyczą adresów sieciowych, może być więc użyta każda nazwa, którą daje się zamienić na poprawny adres sieciowy. Używany jest tylko pierwszy uzyskany adres. W przypadku wzorców do porównań używane są tylko nazwy kanoniczne, trzeba się więc upewnić, czy nie próbuje się porównywać aliasów. Nazwy komputerów z żądań XDMCP zawsze zawierają lokalną domenę, nawet jeśli odwrotne odwzorowanie nazwy zwraca krótką formę nazwy. Można więc używać wzorców dla lokalnej domeny. Poprzedzenie wpisu znakiem !
powoduje wyłączenie nazwy, która miała być porównywana. Aby wysyłane były tylko odpowiedzi na żądania typu „Direct” o nazwę komputera lub wzorzec można użyć słowa kluczowego NOBROADCAST
. Taka możliwość pozwala uniknąć pokazywania serwera z programem kdm w menu bazujących na żądaniach typu „Broadcast”.
Wpis „Indirect” zawiera także nazwę komputera lub wzorzec, ale dalej następuje lista nazw komputerów lub makr, do których żądania mają być przekazywane. Wpisy„Indirect” mogą być także wyłączające, w takich przypadkach (poprawna) nazwa komputera musi być podana w takiej formie, żeby wpis był odróżnialny od podobnego, ale typu „Direct”. Jeśli kdm jest skompilowany z obsługą IPv6, lista adresów, do których są przekazywane żądania może zawierać także adresy grup multicast. Jeśli w wierszu zawierającym nazwę komputera znajduje się słowo kluczowe CHOOSER
, żądania „Indirect” nie są przekazywane, a zamiast tego pokazywane jest okno logowania. Program logowania będzie wysyłał żądania typu „Direct” do każdego pozostałego komputera z listy. Dla tych, które odpowiedzą będzie oferował menu. Lista komputerów może zawierać słowo kluczowe BROADCAST
, co spowoduje wysyłanie także żądania typu „Broadcast”. W niektórych systemach pakiety UDP nie mogą być rozgłoszeniowe, wtedy ta właściwość nie będzie działać.
Podczas sprawdzania dostępu dla konkretnego komputera sprawdzany jest każdy wpis. Pierwszy dopasowany określa odpowiedź. Wpisy typów „Direct” i „Broadcast” są ignorowane podczas poszukiwania wpisu typu „Indirect” i odwrotnie.
Definicja makra zawiera nazwę makra i listę nazw komputerów i innych makr, na które rozwija się to makro. Aby rozróżnić makra od nazw komputerów nazwy makr zaczynają się od znaku %
.
Ostatnim typem wpisu jest dyrektywa LISTEN
. Składania to
LISTEN
[interfejs
[lista multicast
]]
Jeśli podany jest jeden lub więcej wiersz LISTEN
, kdm nasłuchuje na żądania XDMCP tylko na podanych interfejsach. interfejs
może być nazwą komputera lub adresem IP reprezentującym interfejs sieciowy na tym komputerze lub znakiem specjalnym *
oznaczającym wszystkie dostępne interfejsy sieciowe. Jeśli w wierszu LISTEN
podany jest adres grupy multicast, kdm dołącza do grupy na podanym interfejsie. W przypadku multicastu w IPv6 IANA przypisało zakres adresów ff0X
:0:0:0:0:0:0:12b XDMCP. X
w przedrostku można zastąpić każdym poprawnym identyfikatorem zakresu, takim jak 1 dla Node-Local, 2 dla Link-Local, 5 dla Site-Local i tak dalej (więcej informacji i definicje zakresów można znaleźć w IETF RFC 2373 lub dokumentach go zastępujących). kdm domyślnie nasłuchuje na adresie zakresu Link-Local ff02:0:0:0:0:0:0:12b, żeby możliwie dokładnie odwzorować rozgłaszanie w podsieci IPv4. Jeśli nie ma wierszy LISTEN
, kdm nasłuchuje na wszystkich interfejsach i dołącza się do domyślnej grupy multicast IPv6 XDMCP (jeśli skompilowano go z obsługą IPv6). Wyłączenie nasłuchiwania XDMCP jest możliwe za pomocą wiersza LISTEN
bez żadnego adresu. Preferowane jest jednak użycie [Xdmcp]
Enable
. Następujące programy są uruchamiane przez kdm na różnych etapach sesji. Zazwyczaj są to skrypty powłoki.
Program konfiguracyjny, uruchamiający i kończący (Setup, Startup i Reset) są uruchamiane jako root
, więc używając je trzeba brać pod uwagę bezpieczeństwo. Ich pierwszym argumentem jest auto
jeśli sesja jest wynikiem automatycznego logowania. W przeciwnym wypadku nie są do nich przekazywane żadne argumenty.
Program Xsetup
jest uruchamiany, kiedy działa już lub został ponownie uruchomiony X-Server, ale przed pokazaniem okna logowania. Jest to miejsce na zmianę tła (jeśli wyłączone jest UseBackground
) lub pokazanie innych okien, które mają być na ekranie razem z oknem logowania.
Oprócz zmiennych środowiska podanych w ExportList
, przekazywane są także:
nazwa związanego ekranu
wartość SystemPath
wartość SystemShell
może być ustawione na plik uwierzytelniania
wartość FifoDir
kdm przechwytuje klawiaturę, więc inne okna nie będą otrzymywać informacji o naciśniętych klawiszach. Mogą wykorzystywać mysz; uwaga na luki w zabezpieczeniach z tym związane. Jeśli ustawione jest GrabServer
, to programowi Xsetup
nie uda się podłączenie do ekranu. Zasoby dla tego programu mogą być umieszczone w pliku o nazwie określonej przez opcję Resources
.
Program Xstartup
jest uruchamiany jako root
podczas logowania się użytkownika. Jest to miejsce na polecenia dodające wpisy do utmp
(może być tu przydatny program sessreg), montujące katalogi domowe użytkowników z serwerów plików lub też przerywające sesję jeśli niektóre wymagania nie są spełnione (we współczesnych systemach większość z tych zadań jest wykonywana przez moduły PAM).
Oprócz zmiennych środowiska podanych w ExportList
, przekazywane są także:
nazwa związanego ekranu
początkowy katalog roboczy użytkownika
nazwa użytkownika
nazwa użytkownika
wartość SystemPath
wartość SystemShell
może być ustawione na plik uwierzytelniania
wartość FifoDir
kdm czeka na zakończenie pracy tego programu przed rozpoczęciem sesji użytkownika. Jeśli wartość wyjściowa programu jest niezerowa, kdm przerwie sesję i rozpocznie kolejny cykl uwierzytelniania.
Program Xsession
to polecenie uruchamiane jako sesja użytkownika. Działa z uprawnieniami użytkownika. Jako pierwszy argument przekazywane jest jedno ze słów kluczowych failsafe
, default
lub custom
, albo ciąg znaków przekazywanych do polecenia eval powłoki Bourne'a.
Oprócz zmiennych środowiska podanych w ExportList
, przekazywane są także:
nazwa związanego ekranu
początkowy katalog roboczy użytkownika
nazwa użytkownika
nazwa użytkownika
wartość UserPath
(lub SystemPath
dla sesji użytkownika root
)
domyślna powłoka użytkownika
może wskazywać niestandardowy plik uwierzytelniania
może być ustawiony na pamięć podręczną uwierzytelniania za pomocą Kerberos4
może być ustawiony na pamięć podręczną uwierzytelniania za pomocą Kerberos5
wartość FifoDir
zawiera listę oddzielonych przecinkami parametrów, które mogą być interesujące dla sesji, jak lokalizacja polecenia FiFo i jego możliwości czy to, która wtyczka została użyta do logowania
nazwa sesji wybranej do uruchomienia przez użytkownika
Symetrycznie do Xstartup
, Xreset
jest uruchamiany po zakończeniu sesji użytkownika. Wykonywany jako root
; powinien zawierać polecenia wycofujące efektypoleceń z Xstartup
, usuwające wpisy z utmp
lub odmontowujące katalogi z serwera plików.
Zmienne środowiska przekazywane do Xstartup
są też przekazywane do Xreset
.
W tym rozdziale zakłada się, że Twój system posiada już skonfigurowany system X Window System® i pozostało do dodania tylko graficzne logowanie.
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 /sbin/init korzystając z pliku konfiguracyjnego /etc/inittab
. Istnieją różnice w domyślnych poziomach działania między różnymi systemami z rodziny Uniksa (i dystrybucjami Linuksa). Mimo to początek pliku /etc/inittab
powinien wyglądać mniej więcej tak:
# 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:
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.
Oto poziomy działania z logowaniem graficznym (xdm) w niektórych popularnych dystrybucjach Linuksa:
5 dla Red Hat® 3.x i wersji późniejszych oraz Mandrake™
4 dla Slackware
3 dla SuSE®. 4.x i 5.x
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.
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:
/sbin/init 3
Zamiast 3
użyj właściwego numeru poziomu działania.
Jeśli w Twoim systemie są używane moduły PAM (Pluggable Authentication Modules), co jest standardem w systemie Linux i Solaris™, sprawdź czy konfiguracja PAM pozwala na logowanie przez usługę kde
. Jeśli poprzednio używany był xdm, to do uruchomienia kdm nie powinno być konieczności jakichkolwiek zmian w konfiguracji PAM, w plikach /etc/pam.conf
lub /etc/pam.d/kde
. Opis konfiguracji PAM wychodzi poza zakres tego podręcznika, ale PAM posiada bogatą dokumentację (poszukaj w /usr/share/doc/*pam*/html/
).
Nadszedł czas wypróbowania kdm przez wydanie polecenia:
kdm -nodaemon
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.
Na przykład:
exportKDEDIR=
export/opt/kde
QTDIR=
export/usr/lib/qt2
PATH=
export$KDEDIR/bin:$QTDIR/bin:$PATH
LD_LIBRARY_PATH=
$KDEDIR/lib:$QTDIR/lib
W przypadku niepowodzenia, spróbuj uruchomić xdm, żeby sprawdzić, czy nie jest ono związane z poważniejszym problemem w konfiguracji X Window.
Jeśli udało się uruchomić kdm, możesz rozpocząć zamianę xdm na kdm. Znów - metoda zależy od dystrybucji.
W przypadku dystrybucji Red Hat® musisz zmienić plik /etc/inittab
. Szukaj następującego wiersza:
x:5:respawn:/usr/X11/bin/xdm -nodaemon
zamień go na:
x:5:respawn:/opt/kde/bin/kdm
To powiadamia init(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 -nodaemon
.
W Mandrake™ poziom działania X11 z /etc/inittab
wykorzystuje skrypt /etc/X11/prefdm
, który wybieramenedżera wyświetlania spośród kilku; obsługuje także kdm. Upewnij się,że wszystkie ścieżki są poprawnie ustawione.
W SuSE® dodaj jako pierwszy wiersz do /sbin/init.d/xdm
:
. /etc/rc.config DISPLAYMANAGER=kdm export DISPLAYMANAGER
Jeśli używasz FreeBSD, znajdź następujący wiersz w /etc/ttys
:
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure
i zmodyfikuj go do następującej postaci:
ttyv8 "/usr/local/bin/kdm" xterm on secure
Większość pozostałych dystrybucji używa metod podobnych do przedstawionych wyżej.
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:
/sbin/init 5
Zamiast liczby 5
podaj właściwy numer poziomu działania uruchamiającego X11 w Twoim systemie.
Ostatni krok to zmiana wpisu initdefault
w /etc/inittab
i podanie tam poziomu działania uruchamiającego X11.
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 „ratunkowa” wykonana podczas instalacji systemu albo specjalna „ratunkowa” dystrybucja, jak tomsrtbt
. 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ść.
Zazwyczaj polega to na zmianie wiersza:
id:3:initdefault:
na
id:5:initdefault:
Po ponownym uruchomieniu systemu powinno pojawić się graficzne okno logowania za pomocą kdm.
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 PATH
i LD_LIBRARY_PATH
. Sprawdź czy nie nadpisują ich skrypty startowe.
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 Typ sesji.
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 PATH
. Oprócz tego sprawdź, czy nazwa programu nie została zmieniona podczas instalacji.
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ę.
Sesje są zdefiniowane w plikach .desktop w $
. Możesz po prostu dodać odpowiednio nazwany plik KDEDIR
/share/apps/kdm/sessions.desktop
do tego katalogu. Pola w tym pliku to:
[Desktop Entry] Encoding=UTF-8 Ustawione na stałe naUTF-8
i może być pominięte Type=XSession Ustawione na stałe naXSession
i może być pominięte Exec=nazwa pliku wykonywalnego
Przekazywana poleceniu eval exec powłoki Bourne'a TryExec=nazwa pliku wykonywalnego
Obsługiwane, ale nie wymagane Name=nazwa pokazywana na liście sesji kdm
Są także trzy sesje „specjalne”:
Domyślna sesja kdm, zazwyczaj KDE. Konfigurowana przez administratora.
Taka sesja uruchamia skrypt użytkownika ~/.xsession (jeśli istnieje).
Sesja bezpieczna zawiera tylko podstawowe narzędzia i jest użyteczna tylko przy debugowaniu.
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 „przesłonięcie” 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.
XDMCP to standard Open Group. Skrót ten oznacza „X Display Manager Control Protocol”. Protokół XDMCP służy do konfiguracji połączeń między systemami w sieci.
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.
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®.
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.
Gniazda domeny Uniksowi znajdują się w podkatalogach katalogu podanego w opcji FifoDir
=. Ten podkatalog jest kluczowy jeśli chodzi o adresowanie i bezpieczeństwo; wszystkie gniazda mają używają nazwy pliku socket
i praw dostępu rw-rw-rw-
(0666). Jest tak, ponieważ niektóre systemy ignorują prawa nadawane plikom gniazd.
Istnieją dwa typy gniazd: globalne (dmctl) i związane z jednym ekranu (dmctl-<display>).
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).
Pola polecenia są oddzielone tabulacjami (\t), pola list oddziela się odstępami, znak odstępu na liście pól uzyskuje się za pomocą \s.
Polecenie jest zakończone znakiem nowego wiersza (\n).
To samo odnosi się do odpowiedzi. W przypadku sukcesu odpowiedź to ok, opcjonalnie poprzedzona żądanymi danymi. Odpowiedź w przypadku błędu to jego krótki kod (np. perm, noent, itp.) z następującym dalej dłuższym wyjaśnieniem.
Polecenia globalne:
display
(now
| schedule
) user
password
[argumenty_sesji]Zalogowanie użytkownika do pracy z określonym ekranem. Jeśli podany jest parametr now
, 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.
Polecenia odnoszące się do pojedynczego ekranu:
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.
Odwrócenie efektu polecenia lock i ponowne włączenie automatycznego ponawiania logowania.
Bieżąca sesja jest kończona "na siłę". Nie ma próby ponownego logowania, ale wydane wcześniej polecenia "login" odniosą skutek.
Polecenia dla wszystkich gniazd
Zwraca listę właściwości gniazda:
identyfikuje kdm, na wypadek, jakby inne inne menedżery logowania również obsługiwały ten protokół
Odpowiednie polecenie jest obsługiwane.
Obsługiwane jest polecenie listbootoptions oraz =
przy poleceniu shutdown
Dla podanej listy użytkowników obsługiwane jest polecenie shutdown (lista z elementami oddzielonymi odstępami.) * oznacza wszystkich użytkowników.
Wymienieni użytkownicy mają prawo do zamykania systemu.
Wszyscy użytkownicy mają prawo do zamykania systemu
Skonfigurowane są rezerwowe ekrany, w tej chwili jest dostępnych liczba z nich
all
| alllocal
]Zwraca listę działających sesji. Domyślnie uzyskuje się wszystkie aktywne sesje. Jeśli podano parametr all
, dodawane są także sesje pasywne. Parametr alllocal
powoduje pokazanie także sesji pasywnych, ale bez przychodzących sesji zdalnych.
Każdy opis sesji to lista oddzielonych odstępami wartości:
Nazwa ekranu lub TTY
Nazwa terminala wirtualnego (VT) dla sesji lokalnych
Nazwa użytkownika, pusta dla sesji pasywnych i wychodzących sesji zdalnych (tryb lokalnego programu powitalnego)
Typ sesji lub „<remote>” dla wychodzących sesji zdalnych, puste dla sesji pasywnych.
Pole flag:
*
jeśli ekran należy do gniazda, z którego pochodzi żądanie.
!
jeśli sesja nie może być zatrzymana przez gniazdo, z którego pochodzi żądanie.
W przyszłości mogą zostać dodane nowe pola.
czas w sekundach
]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.
Dozwolone tylko na gniazdach związanych z lokalnymi ekranami i gniazdach globalnych.
vt
|display
)Przełączenie do określonego wirtualnego terminala (VT). Terminal może być podany bezpośrednio (np. vt3
) lub pośrednio przez używający go ekran (np. :2
).
Dozwolone tylko na gniazdach związanych z lokalnymi ekranami i gniazdach globalnych.
Wyświetlenie dostępnych opcji uruchamiania.
reboot
| halt
) [=wybrany
] (ask
|trynow
|forcenow
|schedule
|start (-1
|end (force
|forcemy
|cancel)
)
)
)Żądanie zakończenia pracy systemu, restart lub wyłączenie komputera.
System operacyjny, który ma być uruchomiony następnym razem, wybiera się z listy zwróconej przez listbootoptions
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
start
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ą.
end
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:
cancel
- wycofanie żądania zamknięcia systemu
force
- zamknięcie systemu mimo działających sesji
forcemy
- 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.
Parametry start
oraz end
podawane są w sekundach od początku epoki Uniksa.
trynow
to synonim 0 0 cancel
, forcenow
- 0 0 force
, a schedule
- 0 -1
.
ask
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.
local
|global
}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.
Zwraca listę zawierająca informacje o żądaniach zamknięcia systemu.
Wpisy składają się z oddzielonych odstępami pól:
(global|local) - zamykanie systemu w toku lub do wykonania w przyszłości. Lokalne zwracane tylko przez gniazdo związane z ekranem.
(halt|reboot)
start
koniec
("ask"|"force"|"forcemy"|"cancel")
Numer użytkownika od którego pochodzi żądanie, -1 dla gniazda globalnego.
System do uruchomienia po restarcie lub "-" jeśli nie wybrano.
W przyszłości mogą zostać dodane nowe pola
Istnieją dwie metody używania gniazd:
Bezpośrednie podłączenie do gniazda. FifoDir jest eksportowany jako $DM_CONTROL
; nazwa gniazda związanego z ekranem pochodzi od wartości zmiennej $DISPLAY
.
Przez wykorzystanie polecenia kdmctl (np. w skrypcie powłoki) Więcej informacji uzyskuje się po wydaniu polecenia kdmctl -h
.
Oto przykładowy skrypt powłoki powodujący „uruchomienie systemu FreeBSD po restarcie”:
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 > /dev/null else echo "FreeBSD boot unavailable." fi else echo "Boot options unavailable." fi else echo "Cannot reboot system." fi
kdm wywodzi się z programu xdm, stąd strona podręcznika xdm zawiera sporo użytecznych informacji. W przypadku problemów z działaniem X przejrzyj strony podręcznika X i startx. 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 GNU General Public License: zajrzyj do jego kodu źródłowego.
kdm bazuje na, i zawiera kod, z xdm (C) Keith Packard, MIT X Consortium.
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.
Prawa autorskie do innych części kdm mają ich autorzy. Fragmenty te są objęte licencją GNU GPL. Każdy może modyfikować i rozpowszechniać kdm, jeśli tylko wspomniane są nazwiska autorów.
kdm wymaga biblioteki Qt™, do której prawa autorskie posiada Troll Tech AS.
Wkład do dokumentacji:
Dokumentacja napisana przez Steffena Hansena (stefh AT dit.ou.dk)
Dokumentacja rozszerzona przez Gregor'ego Zumsteina(zumstein AT ssd.ethz.ch)
. Ostatnie uaktualnienie: 9 sierpnia 1998
Dokumentacja poprawiona dla KDE 2 przez Neala Crooka (nac AT forth.org)
. Ostatnie uaktualnienie: 6 sierpnia 2000
Dokumentacja rozszerzona i poprawiona dla KDE 2.2 przez Oswalda Buddenhagena (ossi AT kde.org)
. Ostatnie uaktualnienie: sierpień 2001
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, (c) Keith Packard.
Ta dokumentacja jest rozprowadzana na zasadach Licencji GNU Free Documentation License.
Ten program jest rozprowadzany na zasadach Licencji GNU General Public License.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team