1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
|
<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
"dtd/kdex.dtd" [
<!ENTITY kappname "&tdm;">
<!ENTITY package "tdebase">
<!ENTITY tdmrc "<filename>tdmrc</filename>">
<!ENTITY ksmserver "<application>ksmserver</application>">
<!ENTITY kdesktop "<application>kdesktop</application>">
<!ENTITY XDMCP "<acronym>XDMCP</acronym>">
<!ENTITY xdm "<application>xdm</application>">
<!ENTITY tdmrc-ref SYSTEM "tdmrc-ref.docbook">
<!ENTITY % addindex "INCLUDE">
<!ENTITY % Polish "INCLUDE"> <!-- change language only here -->
]>
<book lang="&language;">
<bookinfo>
<title>Podręcznik &tdm;</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 &tdm;, menedżera wyświetlania &kde;, nazywanego także <quote>menedżerem logowania</quote>.</para>
</abstract>
<keywordset>
<keyword>KDE</keyword>
<keyword>tdm</keyword>
<keyword>xdm</keyword>
<keyword>menedżer wyświetlania</keyword>
<keyword>menedżer logowania</keyword>
</keywordset>
</bookinfo>
<!-- ********************************************************************** -->
<chapter id="introduction">
<title>Wprowadzenie</title>
<para>&tdm; udostępnia interfejs graficzny do logowania w systemie. Pyta o nazwę użytkownika i hasło, uwierzytelnia użytkownika i rozpoczyna <quote>sesję</quote>. &tdm; 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 TDM (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>starttde</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 &tdm;.</para>
<para>Jako administrator (użytkownik <systemitem class="username">root</systemitem>), wydaj polecenie <userinput><command>tdm</command></userinput>.</para>
<para>Powinno pojawić się okno logowania, które jest 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 &tdm;. 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 &tdm; 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 &tdm; 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>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 jego nową kopię. Następnie pokazywane jest ponownie okno logowania. Ta opcja jest użyteczna, jeśli wyświetlanie działa źle.</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. &tdm; 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 <guibutton>Zamknięcie systemu</guibutton>.</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 &tdm;. </para>
</chapter>
<!-- *********************************************************************** -->
<chapter id="configuring-tdm">
<title>Konfiguracja &tdm;</title>
<para>W tym rozdziale zakłada się, że &tdm; już działa w Twoim systemie i chcesz w pewien sposób zmienić jego zachowanie.</para>
<para>Kiedy &tdm; rozpoczyna działanie, odczytuje konfigurację z katalogu <filename class="directory">$TDEDIR/share/config/tdm/</filename> (może to być także <filename class="directory">/etc/kde3/tdm/</filename> lub inna lokalizacja).</para>
<para>Głównym plikiem konfiguracyjnym jest &tdmrc;. 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 &tdm; importuje te ustawienia, jeśli tylko znajdzie &xdm;).</para>
<para>W związku z tym, że &tdm; 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 &tdmrc;. Wynika z tego, że konfiguracja &tdm; może być zmieniana tylko przez tych, którzy mają prawo do zapisu pliku <filename>$<envar>TDEDIR</envar>/share/config/tdm/tdmrc</filename> (zazwyczaj ograniczone do administratorów systemu zalogowanych jako <systemitem class="username">root</systemitem>).</para>
<para>Możesz przeglądać &tdmrc; używany w Twoim systemie. Konfiguracja &tdm; 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ę &tdm; za pomocą modułu &kcontrolcenter-dopelniacz;, a <link linkend="tdm-files">następny</link> opisuje opcje dostępne w samym &tdmrc;. 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 &tdm;, czytaj dalej.</para>
<sect1 id="tdm-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 &tdm;. 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 &tdmrc;, który w swoim pierwotnym stanie zawiera wiele komentarzy pomagających osiągnąć pożądane zachowanie &tdm;. Wykorzystanie modułu &kcontrolcenter-dopelniacz; spowoduje usunięcie tych komentarzy. Wszystkie dostępne w &tdmrc; opcje są opisane w <xref linkend="tdm-files"/>.</para>
<para>W opisach wszystkich opcji w tym rozdziale znajdują się odnośniki do ich odpowiedników w &tdmrc;. Wszystkie opcje z modułu &kcontrol; są dostępne w &tdmrc;, ale nie odwrotnie.</para></note>
<para>Rozdział ten jest podzielony na kilka części: <link linkend="tdmconfig-appearance"><guilabel>Wygląd TDM</guilabel></link>, <link linkend="tdmconfig-font"><guilabel>Czcionka</guilabel></link>, <link linkend="tdmconfig-background"><guilabel>Tło</guilabel></link>, <link linkend="tdmconfig-shutdown"><guilabel>Zamykanie</guilabel></link>, <link linkend="tdmconfig-users"><guilabel>Użytkownicy</guilabel></link> i <link linkend="tdmconfig-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="tdmconfig-appearance">
<title>Wygląd TDM</title>
<para>Na tej karcie można zmieniać wygląd &tdm;, 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 &tdmrc;. </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 &tdmrc;</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>TDEDIR</envar>/share/apps/tdm/pics/tdelogo.png</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ą środka okna (w procentach rozmiaru ekranu) 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 &tdmrc;.</para>
<para>Podczas gdy styl &kde; zależy od ustawień użytkownika, ten wykorzystywany przez &tdm; 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 &tdmrc;.</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 &tdmrc;.</para>
</sect2>
<sect2 id="tdmconfig-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 mieć wygładzone czcionki w oknie logowania.</para>
</sect2>
<sect2 id="tdmconfig-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="tdmconfig-shutdown">
<title><guilabel>Zamykanie</guilabel></title>
<para><guilabel>Możliwość zamknięcia systemu</guilabel></para>
<para>Ta lista rozwijana służy do wskazania, kto może zamykać system:</para>
<itemizedlist>
<listitem>
<para><guilabel>Nikt</guilabel>: Nikt nie może zamykać systemu za pomocą &tdm;. Trzeba się zalogować i wydać odpowiednie polecenie.</para>
</listitem>
<listitem>
<para><guilabel>Wszyscy</guilabel>: Każdy może zamykać system za pomocą &tdm;.</para>
</listitem>
<listitem><para><guilabel>Tylko administrator</guilabel>: &tdm; 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 <guilabel>Ponowne uruchomienie:</guilabel> 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 &tdm; 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="tdmconfig-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 &tdm; 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ł. &tdm; 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="tdmconfig-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 &tdm;. Domyślną opcją jest <guilabel>Brak</guilabel>. Pozostałe to <guilabel>Poprzedni</guilabel> (&tdm; 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ć &tdm; tak, aby bieżącym polem było pole hasła. W takim przypadku, po uruchomieniu &tdm; 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>
&tdmrc-ref;
<!-- ************************************************************ -->
<chapter id="configuring-your-system-for-tdm">
<title>Konfiguracja systemu do wykorzystania &tdm;</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-tdm">
<title>Konfiguracja &tdm;</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ć &tdm; z wiersza poleceń. Kiedy to działa, możesz zmienić konfigurację tak, aby &tdm; był uruchamiany przy starcie systemu.</para>
<para>Aby sprawdzić działanie &tdm; 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 &tdm; 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 &tdm; przez wydanie polecenia:</para>
<screen><command>tdm <option>-nodaemon</option></command>
</screen>
<para>Jeśli widzisz okno logowania &tdm; 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 &tdm; 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>TDEDIR=<replaceable>/opt/kde</replaceable></option></command>
<command>export
<option>TQTDIR=<replaceable>/usr/lib/qt2</replaceable></option></command>
<command>export
<option>PATH=<replaceable>$TDEDIR/bin:$TQTDIR/bin:$PATH</replaceable></option></command>
<command>export
<option>LD_LIBRARY_PATH=<replaceable>$TDEDIR/lib:$TQTDIR/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ć &tdm;, możesz rozpocząć zamianę &xdm; na &tdm;. 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/tdm</screen>
<para>To powiadamia <command>init</command>(8), że na poziomie 5 ma ponownie uruchamiać &tdm; za każdym razem, kiedy zakończy on działanie. Warto zauważyć, że &tdm; 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 &tdm;. 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=tdm
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/tdm" 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 &tdm; przez zmianę poziomu działania na ten, który powinien spowodować uruchomienie &tdm;. 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ą &tdm;.</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-tdm">
<title>Obsługa wielu menedżerów okien</title>
<para>&tdm; 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 &tdm; 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 &tdm; 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 &tdm; 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>TDEDIR</envar>/share/apps/tdm/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 &tdm;</replaceable></programlisting>
<para>Są także trzy sesje <quote>specjalne</quote>:</para>
<variablelist>
<varlistentry>
<term>default</term>
<listitem>
<para>Domyślna sesja &tdm;, 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 &tdm; 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-tdm">
<title>Wykorzystywanie &tdm; 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 &tdm;. 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-<display>).</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 (⪚ <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>&tdm;</returnvalue></term>
<listitem>
<para>identyfikuje &tdm;, 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 <list></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 <list></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 <number></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><remote></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 (⪚ <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 &tdm; 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>tdmctl</command> (⪚ w skrypcie powłoki) Więcej informacji uzyskuje się po wydaniu polecenia <command>tdmctl</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 tdmctl | grep -q shutdown; then
IFS=$'\t'
set -- `tdmctl listbootoptions`
if [ "$1" = ok ]; then
fbsd=$(echo "$2" | tr ' ' '\n' | sed -ne 's,\\s, ,g;/freebsd/I{p;q}')
if [ -n "$fbsd" ]; then
tdmctl shutdown reboot "=$fbsd" ask > /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 tdmrc 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>
&tdm; has limited support for desktop manager themes. You may enable them
by adding <userinput>UseTheme=true</userinput> to <filename>tdmrc</filename>
and <userinput>Theme=/path/to/theme.xml</userinput>.
</sect1>
-->
</chapter>
<chapter id="Other-Information">
<title>Inne źródła informacji</title>
<para>&tdm; 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 &tdm;, na które odpowiedzi nie ma w tym podręczniku, wykorzystaj fakt, że &tdm; 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>&tdm; bazuje na, i zawiera kod, z &xdm; (C) Keith Packard, MIT X Consortium.</para>
<para>&tdm; 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 &tdm; 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ć &tdm;, jeśli tylko wspomniane są nazwiska autorów.</para>
<para>&tdm; 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;, © 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ęść &tdm;, 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>
|