<para>Det här kapitlet dokumenterar filerna som styr &tdm;s beteende. En del av det här kan också ställas in från modulen i inställningscentralen, men inte allt.</para>
<title>&tdmrc; - huvudkonfigurationsfilen för &tdm;</title>
<para>Det grundläggande formatet hos filen är <quote>INI-likt</quote>. Alternativ är par av nycklar och värden, placerade i sektioner. Allting i filen är skiftlägeskänsligt. Syntaxfel och nycklar och sektionsidentifierare som inte känns igen gör att &tdm; ger felmeddelanden som inte är fatala.</para>
<para>Rader som börjar med <literal>#</literal> är kommentarer. Tomma rader ignoreras också.</para>
<para>Sektioner anges med <literal>[<replaceable>sektionsnamn</replaceable>]</literal>. </para>
<para>Du kan ställa in varje X-skärm individuellt.</para>
<para>Varje skärm har ett namn, som består av värddatornamnet (som är tomt för lokala skärmar som anges i filen <option>StaticServers</option> eller <option>ReserveServers</option>), ett kolon och ett skärmnummer. Dessutom hör en skärm till en skärmklass (som kan ignoreras i de flesta fall).</para>
<para>Sektioner med skärmspecifika inställningar har den formella syntaxen <literal>[X-</literal> <replaceable>värddator</replaceable> [ <literal>:</literal> <replaceable>nummer</replaceable> [ <literal>_</literal> <replaceable>klass</replaceable> ] ] <literal>-</literal> <replaceable>delsektion</replaceable> <literal>]</literal> </para>
<para>Alla sektioner med samma <replaceable>delsektion</replaceable> utgör en sektionsklass.</para>
<para>Du kan använda jokertecknet <literal>*</literal> (matcha vilken som helst) för värddator, nummer och klass. Du kan utelämna avslutande komponenter, som då antas vara <quote>*</quote>. Värddatordelen kan vara en domänspecifikation som <quote>.inf.tu-dresden.de</quote> eller jokertecknet <literal>+</literal> (matcha alla som inte är tomma).</para>
<para>Sektionen som en inställning verkligen hämtas från bestäms av följande regler:</para>
<para>En exakt träff har företräde framför en delträff (för värddatordelen), som i sin tur har företräde framför ett jokertecken (<literal>+</literal> har företräde framför <literal>*</literal>).</para>
<para>Vanliga sektioner är [X-*] (alla skärmar), [X-:*] (alla lokala skärmar) och [X-:0] (den första lokala skärmen).</para>
<para>Formatet för alla nyckelord är <userinput><option><replaceable>nyckelord</replaceable></option> <literal>=</literal> <parameter>värde</parameter></userinput>. Nyckelord är bara giltiga i sektionsklassen de är definierade för. Vissa nyckelord gäller inte för vissa skärmar, och i så fall ignoreras de. </para>
<para>Om en inställning inte hittas i någon sektion som passar in, används standardvärdet.</para>
<para>Specialtecken måste citeras med bakstreck (inledande och avslutande mellanslag (<literal>\s</literal>), tabulatorer (<literal>\t</literal>), nyrader (<literal>\n</literal>), returtecken (<literal>\r</literal>) och bakstrecket självt (<literal>\\</literal>).</para>
<para>I listor åtskiljs fält med kommatecken utan mellanliggande blanktecken. </para>
<para>Vissa kommandosträngar utsätts för förenklad orduppdelning på samma sätt som sh: enkla citationstecken (<literal>'</literal>) och dubbla citationstecken (<literal>"</literal>) har vanlig mening. Bakstrecken citerar allting (inte bara specialtecken). Observera att bakstreck måste dubbleras på grund av de två nivåerna av citation.</para>
<note><para>En orörd &tdmrc; är mycket utförligt kommenterad. Alla kommentarer går förlorade om du ändrar filen med Inställningscentralens gränssnitt. </para></note>
<para>Det här alternativet finns bara för att rensa automatiska uppgraderingar. Ändra det <emphasis>inte</emphasis>, du kan störa framtida uppgraderingar och det kan göra att &tdm; inte kan köra. </para>
<para>Lista med skärmar (&X-Server;) som permanent hanteras av &tdm;. Skärmar med värddatornamn är främmande skärmar som redan antas köra. Övriga är lokala skärmar där &tdm; startar en egen &X-Server;. Se <option>ServerCmd</option>. Varje skärm kan tillhöra en skärmklass, tillagt till skärmnamnet åtskild med ett understreck. Se <xref linkend="tdmrc-xservers"/> för detaljinformation. </para>
<para>Lista med virtuella terminaler att tilldela till alla &X-Server;. För negativa tal används absolutvärdet, och en <acronym>VT</acronym> tilldelas bara om kärnan säger att den är ledig. Om &tdm; gör slut på listan, tilldelar den lediga <acronym>VT</acronym> större än absolutvärdet för den sista posten i listan. Gäller för närvarande bara Linux. </para>
<para>Alternativet är för operativsystem (<acronym>OS</acronym>) med stöd för virtuella terminaler (<acronym>VT</acronym>), både i &tdm; och i själva operativsystemet. För närvarande gäller det bara Linux. </para><para>När &tdm; byter till konsolläge, börjar det bevaka alla <acronym>TTY</acronym>-anslutningar som listas här (utan det inledande <literal>/dev/</literal>). Om ingen är aktiv under en viss tid, byter &tdm; tillbaka till X-inloggning. </para>
<para>Filnamnet som anges skapas för att innehålla en ASCII-representation av process-id för huvudprocessen i &tdm;. Process-id lagras inte om filnamnet är tomt. </para>
<para>Det här namnger katalogen där &tdm; lagrar &X-Server; behörighetsfiler när sessionen initieras. &tdm; förväntar sig att systemet rensar den här katalogen från föråldrade filer vid omstart. </para><para>Behörighetsfilen att använda för en viss skärm kan anges med alternativet <option>AuthFile</option> i [X-*-Core]. </para>
<para>Standardvärdet är <quote>/var/run/xauth</quote>.</para>
<para>Ytterligare miljövariabler &tdm; ska skicka vidare till alla program som det kör. <envar>LD_LIBRARY_PATH</envar> och <envar>XCURSOR_THEME</envar> är bra kandidater. Annars ska det inte behövas särskilt ofta. </para>
<para>Om systemet inte har en inbyggd entropikälla som /dev/urandom (se <option>RandomDevice</option>) och ingen entropidemon som EGD (se <option>PrngdSocket</option> och <option>PrngdPort</option>) kör, går &tdm; tillbaka till sin egen slumptalsgenerering som bland annat successivt checksummerar delar av den här filen (vilken uppenbarligen bör ändras ofta). </para><para>Det här alternativet finns inte på Linux och diverse BSD-versioner. </para>
<para>Standardvärdet är <quote>/dev/mem</quote>.</para>
<para>Om systemet inte har en inbyggd entropikälla som /dev/urandom (se <option>RandomDevice</option>) läs slumpdata från en slumptalsgenereringsdemon som EGD (http://egd.sourceforge.net) via det här Unix-domänuttaget. </para><para>Det här alternativet finns inte på Linux och diverse BSD-versioner. </para>
<para>Sökvägen till en teckenenhet som &tdm; ska läsa slumpdata från. Tom betyder att använda entropienheten som systemet föredrar, om det finns en. </para><para>Det här alternativet finns inte på OpenBSD, eftersom den använder funktionen arc4_random istället. </para>
<para>Katalogen där &tdm; ska lagra användarnas <filename>.dmrc</filename>-filer. Det här behövs bara om hemkatalogerna inte är läsbara innan inloggning verkligen sker (som med AFS). </para>
<para>Det här anger UDP-portnumret som &tdm; använder för att lyssna på inkommande &XDMCP;-begäran. Om du inte behöver felsöka systemet, lämna kvar standardvärdet. </para>
<para>Standardvärdet är <quote>177</quote>.</para>
<para>Stilen XDM-AUTHENTICATION-1 för behörighetskontroll med &XDMCP; kräver en privat nyckel som delas mellan &tdm; och terminalen. Det här alternativet anger filen som innehåller dessa värden. Varje post i filen består av ett skärmnamn och den delade nyckeln. </para>
<para>För att förhindra obehörig &XDMCP;-tjänst och tillåta att en &XDMCP; IndirectQuery begäran skickas vidare, innehåller den här filen en databas med värddatornamn som antingen direkt får komma åt den här datorn, eller har en lista med värddatorer som en begäran ska skickas vidare till. Filens format beskrivs i <xref linkend="tdmrc-xaccess"/>. </para>
<para>Standardvärdet är <quote>${<envar>kde_confdir</envar>}/tdm/Xaccess</quote>.</para>
<para>Antal sekunder att vänta för att skärmen ska svara efter användaren har valt en värddator i urvalsdialogrutan. Om skärmen skickar en &XDMCP; IndirectQuery under den här tiden, skickas denna begäran vidare till vald värddator. Annars antas den vara från en ny session och urvalsdialogrutan visas igen. </para>
<para>När skärmnamn för &XDMCP; klienter beräknas, skapar namnupplösningen typiskt ett fullständigt kvalificerat värddatornamn för terminalen. Eftersom det ibland kan vara förvirrande, tar &tdm; bort domännamnsdelen från värddatornamnet om den är samma som domännamnet för den lokala värddatorn, när det här alternativet är aktiverat. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Använd den numeriska IP-adressen för inkommande anslutning för värddatorer med flera hem istället för värddatornamnet. Det är för att undvika att försöka ansluta till fel enhet, som kan vara nerkopplat vid den här tiden. </para>
<para>Standardvärdet är <quote>false</quote>.</para>
<para>Det här anger ett program som körs (som <systemitem class="username">root</systemitem>) när en &XDMCP; DirectQuery eller BroadcastQuery tas emot och värddatorn är inställd för att erbjuda &XDMCP; skärmhantering. Utmatningen från programmet kan visas i ett urvalsfönster. Om inget program anges, skickas strängen <quote>Willing to manage</quote>. </para>
<para>Kommandot (som utsätts för orduppdelning) att köra för att stanna eller stänga av systemet. </para><para>Standardvärdet är något som är rimligt för systemet som &tdm; byggdes på, som <command>/sbin/shutdown <option>-h</option> <parameter>now</parameter></command>. </para>
<para>Kommandot (som utsätts för orduppdelning) att köra för att starta om systemet. </para><para>Standardvärdet är något som är rimligt för systemet som &tdm; byggdes på, som <command>/sbin/shutdown <option>-r</option> <parameter>now</parameter></command>. </para>
<para>Om det är tillåtet att avbryta sessioner som fortfarande kör vid avstängning av systemet via det globala kommando-<acronym>FIFO</acronym>:t. </para><para>Det här har ingen verkan om du inte <option>AllowFifo</option> är aktiverat. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>De här alternativen styr beteendet hos &tdm; vid försök att öppna en anslutning till en &X-Server;. <option>OpenDelay</option> är pausens längd (i sekunder) mellan två försök. <option>OpenRepeat</option> är antalet försök som görs och <option>OpenTimeout</option> är tidsrymden som används för ett anslutningsförsök. Efter <option>OpenRepeat</option> antal försök har gjorts, eller om <option>OpenTimeout</option> sekunder har gått ut vid ett visst anslutningsförsök, anses startförsöket vara misslyckat. </para>
<para>Hur många gånger &tdm; ska försöka starta en <literal>foreign</literal> skärm som listas i <option>StaticServers</option> innan det ger upp och inaktiverar den. För lokala skärmar görs försöket bara en gång, och för &XDMCP; skärmar fortsätter klienten försöka för evigt (om inte alternativet <option>-once</option> angavs till denna &X-Server;). </para>
<para>Hur många gånger &tdm; ska försöka starta en lokal &X-Server;. Att starta den omfattar att köra den, och vänta på att den ska komma igång. </para>
<para>Kommandoraden för att starta en &X-Server;, utan skärmnummer och VT-specifikation. Strängen utsätts för orduppdelning. </para><para>Standardvärdet är något som är rimligt för systemet som &tdm; byggdes på, som <command>/usr/X11R6/bin/X</command>. </para>
<para>Den virtuella terminal som en &X-Server; ska köra på. <option>ServerVTs</option> ska användas istället för det här alternativet. Lämna det som noll för att låta &tdm; automatiskt tilldela en <acronym>VT</acronym>. Sätt det till <literal>1</literal> för att undvika att tilldela en <acronym>VT</acronym> överhuvudtaget: det krävs för datorer med flera fysiska konsoller. För närvarande bara för Linux. </para>
<para>Det här alternativet är för operativsystem utan stöd för virtuella terminaler, antingen i &tdm; eller i själva operativsystemet. För närvarande gäller det alla operativsystem utom Linux. </para><para>När &tdm; byter till konsolläge, börjar det bevaka alla <acronym>TTY</acronym>-anslutningar (som anges utan det inledande <literal>/dev/</literal>) efter aktivitet. Om anslutningen inte är aktiv under en viss tid, byter &tdm; tillbaka till X-inloggning. </para>
<para>För att upptäcka när <emphasis>fjärrskärmar</emphasis> försvinner, pingar &tdm; dem regelbundet. <option>PingInterval</option> anger tiden (i minuter) mellan varje ping och <option>PingTimeout</option> anger maximala tiden (i minuter) att vänta på att terminalen ska svara på en begäran. Om terminalen inte svarar, anses sessionen död och avslutas. </para><para>Om du ofta använder X-terminaler som kan bli isolerade från den hanterande värddatorn, kan du vilja öka tidsgränsen. Det enda problemet är att sessioner fortsätter att existera efter terminalen har blivit avstängd av misstag. </para>
<para>Om &tdm; ska starta om en lokal &X-Server; efter sessionen avslutats istället för att återställa den. Använd det här om en &X-Server; har minnesläckor eller kraschar systemet vid återställningsförsök. </para>
<para>Standardvärdet är <quote>false</quote>.</para>
<para>Styr om &tdm; skapar och använder behörighetskontroll för <emphasis>lokal</emphasis> anslutning till en &X-Server;. För &XDMCP; skärmar används behörighetskontrollen som begärs av skärmen. Främmande skärmar som inte använder &XDMCP; stöder inte behörighetskontroll alls. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Om <option>Authorize</option> är sant, använd mekanismen för behörighetskontroll som anges här. Behörighetskontrollen MIT-MAGIC-COOKIE-1 är alltid tillgänglig. XDM-AUTHORIZATION-1, SUN-DES-1 och MIT-KERBEROS-5 kan också vara tillgängliga, beroende på byggkonfigurationen. </para>
<para>Standardvärdet är <quote>DEF_AUTH_NAME</quote>.</para>
<para>Vissa <emphasis>gamla</emphasis> &X-Server; läser om behörighetsfilen vid återställning av &X-Server;, istället för när den ursprungliga anslutningen kontrolleras. Eftersom &tdm; skapar behörighetsinformationen precis innan anslutning till skärmen, skulle inte en gammal &X-Server; få uppdaterad behörighetsinformation. Det här alternativet gör att &tdm; skickar SIGHUP till en &X-Server; efter att filen har uppdaterats, vilket orsakar att ytterligare en &X-Server; återställning sker, och under tiden läses den nya behörighetsinformationen. </para>
<para>Standardvärdet är <quote>false</quote>.</para>
<para>Den här filen används för att kommunicera behörighetsdata från &tdm; till &X-Server; med &X-Server; kommandoradsväljaren <option>-auth</option>. Den bör finnas i en katalog som inte kan skrivas av alla, eftersom den lätt skulle kunna tas bort, vilket inaktiverar behörighetsmekanismen i en &X-Server;. Om inte angiven, skapas ett slumpmässigt namn från <option>AuthDir</option> och skärmens namn. </para>
<para>Det här alternativet anger namnet på filen som ska laddas av <command>xrdb</command> som resursdatabasen till skärmens rotfönster på skärm 0. KDE-program bryr sig i allmänhet inte om X-resurser, så alternativet behövs bara om programmet <option>Setup</option> behöver några X-resurser. </para>
<para>Programmet <command>xrdb</command> som används för att läsa X-resursfilen som anges i <option>Recources</option>. Kommandot utsätts för orduppdelning. </para>
<para>Standardvärdet är <quote>${<envar>x_bindir</envar>}/xrdb</quote>.</para>
<para>Strängen utsätts för orduppdelning. Den anger ett program som körs (som <systemitem class="username">root</systemitem>) innan välkomstfönstret visas. Det kan användas för att ändra utseende på skärmen omkring välkomstfönstret eller visa andra fönster (du kan t.ex. vilja köra <command>xconsole</command> här). Det konventionella namnet på programmet som används här är <command>Xsetup</command>. Se <xref linkend="tdmrc-xsetup"/>. </para>
<para>Strängen utsätts för orduppdelning. Den anger ett program som körs (som <systemitem class="username">root</systemitem>) efter processen för behörighetskontroll av användaren har lyckats. Det konventionella namnet på programmet som används här är <command>Xstartup</command>. Se <xref linkend="tdmrc-xstartup"/>. </para>
<para>Strängen utsätts för orduppdelning. Den anger ett program som körs (som <systemitem class="username">root</systemitem>) efter sessionen avslutats. Det konventionella namnet på programmet som används här är <command>Xreset</command>. Se <xref linkend="tdmrc-xreset"/>. </para>
<para>Strängen utsätts för orduppdelning. Den anger sessionsprogrammet som ska köras (som användaren som äger sessionen). Det konventionella namnet på programmet som används här är <command>Xsession</command>. Se <xref linkend="tdmrc-xsession"/>. </para>
<para>Standardvärdet är <quote>${<envar>x_bindir</envar>}/xterm -ls -T</quote>.</para>
<para>Om programmet <option>Session</option> misslyckas köra, återgår &tdm; till det här programmet. Programmet körs utan väljare, men kör med samma miljövariabler som sessionen skulle ha haft (se <xref linkend="tdmrc-xsession"/>). </para>
<para>Standardvärdet är <quote>${<envar>x_bindir</envar>}/xterm</quote>.</para>
<para>Miljövariabeln <envar>PATH</envar> för en <option>Session</option> som inte tillhör <systemitem class="username">root</systemitem>. </para><para>Standardvärdet beror på systemet där &tdm; byggdes. </para>
<para>Miljövariabeln <envar>PATH</envar> för alla program utom <option>Session</option> som inte tillhör <systemitem class="username">root</systemitem>. Observera att det är lämpligt att inte ta med <literal>.</literal> (nuvarande katalog) i det här värdet. </para><para>Standardvärdet beror på systemet där &tdm; byggdes. </para>
<para>När &tdm; inte kan skriva till den vanliga användarens behörighetsfil ($<envar>HOME</envar>/.Xauthority), skapar det ett unikt filnamn i den här katalogen och låter miljövariabeln <envar>XAUTHORITY</envar> peka på den skapade filen. </para>
<para>Standardvärdet är <quote>/tmp</quote>.</para>
<para>Om aktiverad startar &tdm; automatiskt om en session efter en &X-Server; krasch (eller om den avslutas med Alt+Ctrl+Backsteg). Observera att aktivera den här funktionen öppnar ett säkerhetshål: en säker skärmlåsning kan kringgås (om inte &kde;:s inbyggda skärmlåsning används). </para>
<para>Standardvärdet är <quote>false</quote>.</para>
<para>Om inaktiverad, tillåt inte <systemitem class="username">root</systemitem> (och alla andra användare med användar-id = 0) att logga in direkt. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Användarna som inte behöver ange ett lösenord för att logga in. Poster som inleds med <literal>@</literal> representerar alla användare i gruppen som namnges av posten. <literal>*</literal> betyder alla användare utom <systemitem class="username">root</systemitem> (och andra användare med användar-id = 0). Ange <emphasis>aldrig</emphasis> <systemitem class="username">root</systemitem>. </para>
<para>Lösenord för användare som ska loggas in automatiskt. Det krävs <emphasis>inte</emphasis> om användaren inte är inloggad i en <acronym>NIS</acronym>- eller Kerberos-domän. Om du använder alternativet, måste du göra <command>chmod</command> <option>600</option> <filename>tdmrc</filename> av uppenbara skäl. </para>
<para>Filen (i förhållande till användarens hemkatalog) dit sessionens utmatning skall skickas. En förekomst av <parameter>%s</parameter> i strängen ersätts med skärmnamnet. Använd <parameter>%%</parameter> för att få tecknet <literal>%</literal>. </para>
<para>Standardvärdet är <quote>.xsession-errors</quote>.</para>
<para>Anger om &tdm;:s inbyggda registrering med utmp/wtmp/lastlog ska användas. Om den inte gör det, ska verktyget <command>sessreg</command> användas i skripten <option>Startup</option> och <option>Reset</option>, eller som ett alternativ, ska modulen pam_lastlog användas i system med <acronym>PAM</acronym> aktiverat. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Ange komponentstil för välkomstrutan. Tom betyder använd det inbyggda standardvärdet, vilket för närvarande är <literal>Plastik</literal>. </para>
<para>Ange komponenternas färgschema för välkomstrutan. Tom betyder använd det inbyggda standardvärdet, vilket för närvarande är gulgrått med några ljusblåa och gula delar. </para>
<para>Vad som ska visas i välkomstrutan till höger om inmatningsraderna (om <option>UserList</option> är inaktiverad) eller ovanför dem (om <option>UserList</option> är aktiverad): </para>
<para>Relativa koordinater (X och Y i procent av skärmstorleken) där välkomstrutans centrum placeras. &tdm; justerar välkomstrutan till skärmkanten om den annars skulle korsas. </para>
<para>Standardvärdet är <quote>50,50</quote>.</para>
<para>Skärmen där välkomstrutan ska visas på datorer med flera skärmar eller Xinerama. Numreringen börjar med 0. För Xinerama motsvarar det ordningen hos listan i den aktiva ServerLayout-sektionen i <filename>XF86Config</filename>. Värdet -1 betyder använd skärmen överst till vänster, -2 betyder skärmen överst till höger. </para>
<para>Det här alternativet styr vilka användare som visas i användarvyn (<option>UserList</option>) och/eller erbjuds för automatisk komplettering (<option>UserCompletion</option>). Om den är <literal>Selected</literal>, innehåller <option>SelectedUsers</option> den slutliga listan med användare. Om den är <literal>NotHidden</literal>, är den ursprungliga listan alla användare som hittas på systemet. Användare som finns i <option>HiddenUsers</option> tas bort från listan, precis som alla användare med ett användar-id större än det som anges av <option>MaxShowUID</option> och användare med ett användar-id skilt från noll och mindre än det som anges av <option>MinShowUID</option>. Poster i <option>SelectedUsers</option> och <option>HiddenUsers</option> som inleds med <literal>@</literal> representerar alla användare i gruppen som namnges av posten. Till sist sorteras användarlistan alfabetiskt om <option>SortUsers</option> är aktiverad. </para>
<para>Standardvärdet är <quote>NotHidden</quote>.</para>
<para>Bilderna kan ha vilket format som helst som Qt känner igen, men filnamnen måste stämma med &tdm;:s förväntningar: <literal>.face.icon</literal> måste vara en 48 x 48 ikon, medan <literal>.face</literal> måste vara en 300 x 300 bild. För närvarande används bara den stora bilden som reserv, och skalas ner, men i framtiden kan den visas med full storlek i logotypområdet eller som ett verktygstips. </para>
<para>Standardvärdet är <quote>AdminOnly</quote>.</para>
<para>Om <option>FocusPasswd</option> är aktiverad, och en användare är förvald, placeras markören automatiskt i inmatningsfältet för lösenord. </para>
<note><para>Att aktivera förval av användare kan anses vara en säkerhetslucka, eftersom det visar ett riktigt användarnamn för en möjlig attack, så att <quote>bara</quote> lösenordet måste gissas. Å andra sidan skulle man kunna ställa in <quote>DefaultUser</quote> till ett påhittat inloggningsnamn.</para></note>
<para>Om aktiverad, startar &tdm; automatiskt programmet <command>krootimage</command> för att ställa in bakgrunden. Annars är programmet <option>Setup</option> ansvarig för bakgrunden. </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Inställningsfilen som ska användas av <command>krootimage</command>. Den innehåller en sektion som heter <literal>[Desktop0]</literal> liksom <filename>kdesktoprc</filename> gör. Dess alternativ beskrivs inte här. Gissa vad de betyder, eller använd inställningscentralen. </para>
<para>Standardvärdet är <quote>${<envar>kde_confdir</envar>}/tdm/backgroundrc</quote>.</para>
<para>För att öka säkerheten låser välkomstrutan &X-Server; och därefter tangentbordet när den startar. Det här alternativet anger att låsningen av &X-Server; ska behållas under hela tiden namnet och lösenordet läses. Om inaktiverat, avslutas låsningen av &X-Server; efter låsningen av tangentbordet lyckas, annars förblir &X-Server; låst till precis innan sessionen börjar. </para>
<note><para>Aktiveras det här alternativet, inaktiveras <option>UseBackground</option> och <option>Setup</option>.</para></note>
<para>Det här alternativet anger den maximala tid som &tdm; väntar på att en låsning ska lyckas. En låsning kan misslyckas om andra X-klienter använder en &X-Server; eller om tangentbordet är låst eller möjligen om nätverkslatenstider är mycket höga. Du bör vara försiktig om du ökar tidsgränsen, eftersom en användare kan luras av ett fönster som ser liknande ut på skärmen. Om en låsning misslyckas, dödar &tdm; och startar om denna &X-Server; (om möjligt) och session. </para>
<para>Anger om välkomstrutan för lokala skärmar ska starta i läget för att välja värddator (fjärrläge) eller inloggningsläge (lokalt läge) och om det är tillåtet att byta till det andra läget. </para>
<para>En lista med värddatorer som automatiskt ska läggas till i fjärrinloggningsmenyn. Det särskilda namnet <parameter>*</parameter> betyder utsändning. Har ingen effekt om <option>LoginMode</option> är <literal>LocalOnly</literal>. </para>
<para>Använd det här talet som ett slumptalsfrö när sparade sessionstyper för okända användare förfalskas, etc. Det används för att undvika att låta en inkräktare får reda på befintliga användare genom omvänd slutledning. Värdet ska vara slumpmässigt, men konstant för hela inloggningsdomänen. </para>
<para>Aktivera &tdm;:s inbyggda <command>xconsole</command>. Observera att den bara kan vara aktiverad för en skärm åt gången. Alternativet är bara tillgängligt om &tdm; konfigurerades med <command>configure</command> <option>--enable-tdm-xconsole</option>. </para>
<para>Standardvärdet är <quote>false</quote>.</para>
<para>Datakällan för &tdm;:s inbyggda <command>xconsole</command>. Om tom, begärs omdirigering av konsolloggningen från <filename>/dev/console</filename>. Har ingen effekt om <option>ShowLog</option> är inaktiverad. </para>
<para>Ange kontrollinsticksprogram för inloggningsdialogrutan. Det första i listan väljes från början. Varje insticksprogram kan anges om ett basnamn (som utökas till <filename>$<envar>kde_modulesdir</envar>/kgreet_<replaceable>bas</replaceable></filename>) eller som en fullständig sökväg. </para><para>Kontrollinsticksprogram är moduler för välkomstrutan som hämtar behörighetsdata från användaren. För närvarande levereras bara insticksprogrammet <literal>classic</literal> med &kde;. Det visar det välkända formuläret med namn och lösenord. </para>
<para>Standardvärdet är <quote>classic</quote>.</para>
<para>En lista med alternativ på formen <replaceable>nyckel</replaceable><literal>=</literal><replaceable>värde</replaceable>. Kontrollinsticksprogrammen kan läsa av inställningarna. Det är upp till dem vilka de möjliga nycklarna är. </para>
<para>Visa alternativet <guilabel>Konsollinloggning</guilabel> i välkomstrutan (om <option>ServerTTY</option>/<option>ConsoleTTYs</option> är inställda). </para>
<para>Standardvärdet är <quote>true</quote>.</para>
<para>Ett program att köra medan välkomstrutan är synlig. Det är meningen att det ska förladda så mycket som möjligt av sessionen som ska startas (troligtvis). </para>
<para>Varje specifikation i listan <option>StaticServers</option> anger en skärm som hela tiden ska hanteras och som inte använder &XDMCP;. Den här metoden används oftast bara för en lokal &X-Server; som startas av &tdm;, men &tdm; kan också hantera en (<quote>främmande</quote>) &X-Server; som startats externt, vare sig den kör på den lokala datorn eller på en annan dator istället.</para>
<para>Den formella syntaxen för en specifikationn är <screen>
</screen> för alla &X-Server;s. <quote>Främmande</quote> skärmar skiljer sig genom att de har ett värddatornamn i skärmnamnet, även om det är <literal>localhost</literal>.</para>
<para>Värdet <replaceable>skärmnamn</replaceable> måste vara något som kan skickas med väljaren <option>-display</option> till ett X-program. Strängen används för att skapa skärmspecifika sektionsnamn, så var försiktig med att matcha namnen. Skärmnamnet för &XDMCP;-skärmar härleds från skärmens adress med omvänd upplösning av värddatornamn. Av inställningssyften tas <emphasis>inte</emphasis> prefixet <literal>localhost</literal> bort från &XDMCP;-skärmar som kör lokalt, för att skilja dem från en lokal &X-Server; startad av &tdm;.</para>
<para>Värdet <replaceable>skärmklass</replaceable> används också i de skärmspecifika sektionsnamnen. Det är användbart om du har en stor samling liknande skärmar (som en farm med X-terminaler) och vill ställa in alternativ för grupper bland dem. När &XDMCP; används krävs att skärmen anger skärmklassen, så handboken för din speciella X-terminal bör dokumentera strängen skärmklass för enheten. Om den inte gör det, kan du köra &tdm; i felsökningsläge och använda <command>grep</command> för att leta efter <quote>class</quote> i loggen.</para>
<para>Skärmarna som anges i <option>ReserveServers</option> kommer inte att startas när &tdm; startar, utan när det uttryckligen begärs via kommandouttaget (eller <acronym>FIFO</acronym>:t). Om reservskärmar anges, kommer &kde;-menyn att ha alternativet <guilabel>Starta ny session</guilabel> nära nederkanten. Använd det för att aktivera en reservskärm med en ny inloggningssession. Bildskärmen byter till den nya sessionen, och du har en minut på dig att logga in. Om det inte finns några ytterligare reservskärmar tillgängliga, är menyalternativet inaktiverat.</para>
<para>När &tdm; starar en session, ställer det in behörighetsdata för en &X-Server;. För lokala servrar, skickar &tdm; <command><option>-auth</option> <filename><replaceable>filnamn</replaceable></filename></command> via &X-Server;-kommandoraden för att peka på dess behörighetsdata. För en &XDMCP;-skärm, skickar &tdm; behörighetsdata till en &X-Server; via &XDMCP;-meddelandet <quote>Accept</quote>.</para>
<para>Filen som anges med alternativet <option>AccessFile</option> tillhandahåller information som &tdm; använder för att styra åtkomst från skärmar som begär en tjänst via &XDMCP;. Filen innehåller fyra sorters poster: poster som styr svaret på frågorna <quote>Direct</quote> och <quote>Broadcast</quote>, poster som styr svaret på frågan <quote>Indirect</quote>, makrodefinitioner för <quote>Indirect</quote>-poster, och poster som styr vilken nätverksenhet &tdm; använder för att lyssna på &XDMCP;-frågor. Tomma rader ignoreras. Tecknet <literal>#</literal> behandlas som en kommentaravgränsning som gör att resten av raden ignoreras, och <literal>\</literal> gör att nyraden som omedelbart följer ignoreras, vilket tillåter att indirekta värddatorlistor sträcka sig över flera rader. </para>
<para>Formatet för posten <quote>Direct</quote> är enkelt, antingen ett värddatornamn eller ett mönster som jämförs med skärmenhetens värddatornamn. Mönster skiljs från värddatornamn genom att ett eller flera metatecken ingår: <literal>*</literal> matchar vilken följd av noll eller flera tecken som helst, och <literal>?</literal> matchar vilket ensamt tecken som helst. Om posten är ett värddatornamn, görs alla jämförelser med nätverksadresser, så det går att använda vilket namn som helst som kan översättas till en riktig nätverksadress. Observera att bara den första nätverksadressn som returneras för ett värddatornamn används. För mönster används bara verkliga värddatornamn i jämförelsen, så försäkra dig om att du inte försöker matcha ett alias. Genom att inleda posten med <literal>!</literal> undantas alla värddatorer som matchar posten. För att bara svara på frågor av typen <quote>Direct</quote> för en värddator eller ett mönster, kan posten följas av nyckelordet <literal>NOBROADCAST</literal>. Det kan användas för att förhindra att &tdm;-servern syns i menyer som är baserade på frågor av typen <quote>Broadcast</quote>.</para>
<para>Posten <quote>Indirect</quote> innehåller också ett värddatornamn eller mönster, men följer det med en lista av värddatornamn eller makron dit frågorna ska vidarebefordras. Poster av typen <quote>Indirect</quote> kan också vara uteslutande, och om det är fallet måste ett (giltigt) värddatornamn utan betydelse anges för att göra det möjligt att skilja posten från en post av typen <quote>Direct</quote>. Om kompilerad med stöd för IPv6, kan också adressgrupper för multicast ingå i adresslistan som frågorna vidarebefordras till. Om den indirekta värddatorlistan innehåller nyckelordet <literal>CHOOSER</literal>, skickas inte <quote>indirekta</quote> frågor vidare, utan istället visas en dialogruta för värddatorval av &tdm;. Dialogrutan skickar en <quote>direkt</quote> fråga till vart och ett av värddatornamnen som är kvar i listan och visar en meny med alla värddatorer som svarar. Värddatorlistan kan innehålla nyckelordet <literal>BROADCAST</literal>, för att få dialogrutan att också skicka en <quote>utsändningsfråga</quote>. Observera att för vissa operativsystem, kan inte utsändning göras med UDP-paket, så detta fungerar inte för dem. </para>
<para>När åtkomst kontrolleras för en viss skärmvärddator, söks varje post igenom i tur och ordning, och den första posten som matchar avgör svaret. Posterna <quote>Direct</quote> och <quote>Broadcast</quote> ignoreras vid sökning efter posten <quote>Indirect</quote> och tvärtom.</para>
<para>En makrodefinition innehåller ett makronamn och en lista med värddatornamn och andra makron som makrot utvidgas till. För att skilja makron från värddatornamn, börjar makronamn med tecknet <literal>%</literal>.</para>
<para>Den sista typen av post är direktivet <literal>LISTEN</literal>. Den formella syntaxen är <screen>
</screen> Om en eller flera rader med <literal>LISTEN</literal> anges, lyssnar &tdm; bara på en &XDMCP;-begäran via de angivna enheterna. Värdet <replaceable>enhet</replaceable> kan vara ett värddatornamn eller en IP-adress som representerar en nätverksenhet på datorn, eller jokertecknet <literal>*</literal> för att representera alla tillgängliga nätverksenheter. Om multicast-grupper anges på raden <literal>LISTEN</literal>, går &tdm; med i multicast-grupperna för den angivna enheten. För IPv6-multicast har IANA tilldelat ff0<replaceable>X</replaceable>:0:0:0:0:0:0:12b som det permanenta området med multicast-adresser för &XDMCP;. Värdet <replaceable>X</replaceable> i prefixet kan ersättas med vilken giltig omfattningsidentifierare som helst, som 1 för nodlokal, 2 för länklokal, 5 för platslokal, och så vidare (se IETF RFC 2373 eller dess ersättning för ytterligare detaljinformation och omfattningsidentifierare). &tdm; lyssnar normalt på adressen för länklokal omfattning ff02:0:0:0:0:0:0:12b för att så nära som möjligt matcha beteendet hos IPv4-delnätsutsändning. Om inga rader med <literal>LISTEN</literal> anges, lyssnar &tdm; på alla enheter och går med i den normala &XDMCP; IPv6 multicast-gruppen (om kompilerat med stöd för IPv6). För att sluta lyssna på &XDMCP;- begäran, kan raden <literal>LISTEN</literal> anges utan några adresser, men att använda alternativet <literal>[Xdmcp]</literal> <option>Enable</option> är att föredra. </para>
<para>Programmen Setup, Startup och Reset körs som <systemitem class="username">root</systemitem>, så de måste vara försiktiga med säkerhet. Deras första argument är <literal>auto</literal> om sessionen orsakas av en automatisk inloggning, annars skickas inga argument till dem. </para>
<para>Programmet <filename>Xsetup</filename> körs efter en &X-Server; startats eller återställts, men innan välkomstrutan visas. Det här är stället att ändra skärmbakgrund (om <option>UseBackground</option> är inaktiverad) eller visa andra fönster som ska synas på skärmen samtidigt med välkomstrutan. </para>
<para>Förutom de som anges av <option>ExportList</option>, skickas följande miljövariabler med:</para>
<para>Observera att eftersom &tdm; låser tangentbordet, kan inte några andra fönster ta emot inmatning från tangentbordet. De kan dock använda sig av musen, men var medveten om möjliga säkerhetshål här. Om alternativet <option>GrabServer</option> är aktiverat, kommer inte <filename>Xsetup</filename> att kunna ansluta till skärmen alls. Resurser för programmet kan anges i filen som namnges av alternativet <option>Resources</option>. </para>
<para>Programmet <filename>Xstartup</filename> körs som <systemitem class="username">root</systemitem> när användaren loggar in. Det här är stället att ange kommandon som lägger till poster i <filename>utmp</filename> (programmet <command>sessreg</command> kan vara användbart här), monterar användares hemkataloger från filservrar, eller avbryter sessionen om några krav inte uppfylls (men observera att för moderna system hanteras många av dessa aktiviteter redan av <acronym>PAM</acronym>-moduler).</para>
<para>Förutom de som anges av <option>ExportList</option>, skickas följande miljövariabler med:</para>
<para>&tdm; väntar på att programmet avslutas innan användarsessionen startas. Om programmets slutvärde inte är noll, avbryter &tdm; sessionen och börjar en ny cykel med behörighetskontroll.</para>
<para>Programmet <filename>Xsession</filename> är det kommando som körs som användarens session. Det körs med den behöriga användarens rättigheter. Ett av nyckelorden <literal>failsafe</literal>, <literal>default</literal> eller <literal>custom</literal>, eller en sträng till kommandot <command>eval</command> i ett skal med Bourne-funktion, skickas som första argumentet.</para>
<para>Förutom de som anges av <option>ExportList</option>, skickas följande miljövariabler med:</para>
<listitem><para>värdet på alternativet <option>UserPath</option> (eller <option>SystemPath</option> för användarsessioner som <systemitem class="username">root</systemitem>)</para>
<listitem><para>innehåller en lista med parametrar åtskilda med kommatecken som sessionen kan finna intressanta, som platsen för kommando-<acronym>FIFO</acronym>:t och dess funktioner, och vilket kontrollinsticksprogram som användes vid inloggningen.</para>
<para>Symmetriskt i förhållande till <filename>Xstartup</filename>, körs programmet <filename>Xreset</filename> efter användarsessionen har avslutats. Det körs som <systemitem class="username">root</systemitem> och ska innehålla kommandon som tar bort effekten av kommandon i <filename>Xstartup</filename>, tar bort poster från <filename>utmp</filename> eller avmonterar kataloger från filservrar.</para>
<para>Miljövariablerna som skickas till <filename>Xstartup</filename> skickas också till <filename>Xreset</filename>. </para>