# Os Arquivos que o &kdm; Usa para Configuração

Este capítulo documenta os arquivos que controlam o comportamento do &kdm;. Uma parte deste comportamento pode também ser controlada pelo módulo do &systemsettings;, mas nem tudo.

## &kdmrc; - O arquivo principal de configuração do &kdm;

O formato básico deste arquivo é no estilo-INI. Opções são pares de valor/chave, colocadas em seções. Tudo no arquivo é sensível à caixa. Erros de sintaxe e chaves/seções desconhecidas fazem com que o &kdm; envie mensagens de erros não fatais.

Linhas iniciando com `#` são comentários; linhas vazias são igualmente ignoradas.

Seções são indicadas com `[`Nome da Seção`]`.

Você pode configurar cada terminal X individualmente.

Cada terminal possui um nome específico, que é composto pelo nome de uma máquina (que é vazio para os terminais locais indicados em `StaticServers` ou em `ReserveServers`), um sinal de dois pontos (:) e um número de terminal. Adicionalmente, um terminal pertence a uma classe específica (que poderá ser ignorada na maioria dos casos).

Seções com configurações específicas por terminal possuem a sintaxe na forma`[X-` máquina [ `:` número [ `_` classe ] ] `-` sub-seção `]`

Todas as seções com a mesma sub-seção constituem uma classe de seção.

Você pode usar o coringa `*` (corresponde a qualquer um) para a máquina, número e classe. Você pode omitir componentes da sintaxe; eles então serão assumidos como *. A parte máquina deve ter uma especificação de domínio como .dominio.br.

A partir de qual seção uma configuração é obtida é determinado pelas seguintes regras:

- Uma correspondência exata tem precedência sobre uma correspondência parcial (para a parte máquina), que tem precedência sobre um coringa (`+` tendo precedência sobre o `*`).

- A precedência diminui da esquerda para direita para as correspondências exatas.

- Exemplo: nome do terminal minhamaquina.foo:0, classe dpy

  - [X-minhamaquina.foo:0_dpy] precede

  - [X-minhamaquina.foo:0_*] (o mesmo que [X-minhamaquina.foo:0]) que precede

  - [X-minhamaquina.foo:*_dpy] que precede

  - [X-minhamaquina.foo:*_*] (o mesmo que [X-minhamaquina.foo]) que precede

  - [X-.foo:*_*] (o mesmo que [X-.foo]) que precede

  - [X-+:0_dpy] que precede

  - [X-*:0_dpy] que precede

  - [X-*:0_*] (o mesmo que [X-*:0]) que precede

  - [X-*:*_*] (o mesmo que [X-*]).

  - Estas seções não correspondem a este terminal:

    [X-suamáquina], [X-minhamáquina.foo:0_dec], [X-*:1], [X-:*]

Seções comuns são [X-*] (todos os terminais), [X-:*] (todos os terminais locais) e [X-:0] (o primeiro terminal local).

O formato para todas as chaves é ``chave` `=` `valor``. Chaves somente são válidas na classe de seção para a qual elas foram definidas. Algumas chaves não se aplicam a determinados terminais, sendo neste caso ignoradas.

Se uma configuração não for encontrada em nenhuma seção correspondente, o padrão é usado.

Os caracteres especiais que necessitam ser 'escapados': espaços anteriores e posteriores (`\s`), tabulações (`\t`), fim-de-linha (`\n`), mudança de linha (`\r`) e a própria barra invertida (`\\`).

Nas listas, os campos são separados por vírgulas, sem espaços no meio.

Alguns textos de comando estão sujeitos à repartição de palavras simplificada do tipo do 'sh': as aspas simples (`'`) e aspas duplas (`"`) possuem o significado normal; a barra invertida 'escapa' tudo (não apenas os caracteres especiais). Lembre-se que as barras invertidas necessitam ser duplicadas, devido aos dois níveis de escape.

O &kdmrc; original é intensamente comentado. Todos os comentários serão perdidos se você mudar este arquivo com a interface do &systemsettings;.

### A seção [General] do &kdmrc;

Esta seção contém opções globais que não cabem em nenhuma outra seção específica.

`ConfigVersion`

  Esta opção existe somente para fins de atualizações automáticas. Não mude-a, ou você pode interferir com atualizações futuras e isto pode resultar numa falha na execução do &kdm;.

`StaticServers`

  Uma lista dos terminais (&X-Server;s) gerenciados permanentemente pelo &kdm;. Os terminais com um nome de máquina são ambientes estrangeiros que se pressupõe que já estejam em execução, enquanto os outros são terminais locais, para os quais o &kdm; inicia o seu próprio &X-Server;; veja o `ServerCmd`. Cada terminal poderá pertencer a uma determinada classe; adicione-a ao nome do terminal, separada por um sublinhado. Veja os detalhes em .

  O padrão é :0.

`ReserveServers`

  Uma lista de terminais sob demanda. Veja a sintaxe no `StaticServers`.

  Vazio por padrão.

`ServerVTs`

  Lista dos Terminais Virtuais a serem alocados para os &X-Server;s. Para números negativos o valor absoluto é usado, e o VT (do inglês, Terminal Virtual) será alocado somente se o kernel disser que ele está livre. Se o &kdm; exaurir esta lista, ele alocará VTs livres maiores que o valor absoluto da última entrada nesta lista. Atualmente somente para o Linux.

  Vazio por padrão.

`ConsoleTTYs`

  Esta opção é para os sistemas operacionais (SOs) com suporte para terminais virtuais (VTs), tanto pelo &kdm; como pelos SOs em si. Atualmente, isto só se aplica ao Linux.

  Quando o &kdm; muda para o modo de console, ele começa a monitorar todas as linhas de TTY aqui indicadas (sem o `/dev/` inicial). Se nenhuma delas ficar ativa durante algum tempo, o &kdm; volta outra vez para o terminal do X.

  Vazio por padrão.

`PidFile`

  O nome do arquivo especificado será criado para conter uma representação ASCII do ID do processo principal do &kdm;; o PID não será armazenado se o nome do arquivo estiver vazio.

  Vazio por padrão.

`LockPidFile`

  Esta opção controla se o &kdm; usa o travamento de arquivo para manter gerenciadores de terminais múltiplos em execução distintamente.

  O padrão é true.

`AuthDir`

  Isto nomeia um diretório sob o qual o &kdm; armazena os arquivos de autorização do &X-Server; ao inicializar a sessão. O &kdm; espera que o sistema limpe este diretório de arquivos antigos ao reiniciar.

  O arquivo de autorização a ser usado por um terminal em particular pode ser especificado com a opção `AuthFile` em [X-*-Core].

  O padrão é /var/run/xauth.

`AutoRescan`

  Este booleano controla se o &kdm; re-lerá automaticamente seus arquivos de configuração se ele descobrir que eles foram mudados.

  O padrão é true.

`ExportList`

  Variáveis de ambiente adicionais do &kdm; que devem ser passadas para todos os programas que ele executa. `LD_LIBRARY_PATH` e `XCURSOR_THEME` são boas candidatas; caso contrário isto não seria necessário muito frequentemente.

  Vazio por padrão.

`RandomFile`

  Se o sistema não possui nenhuma fonte randômica como o /dev/urandom (veja `RandomDevice`) e nenhum daemon randômico como o EGD (veja em `PrngdSocket` e `PrngdPort`) em execução, o &kdm; usará seu próprio gerador de números pseudo-randômicos que, dentre outras coisas, verificará sucessivamente as somas das partes deste arquivo (que, obviamente, deve mudar frequentemente).

  Esta opção não existe em Linux e vários BSDs.

  O padrão é /dev/mem.

`PrngdSocket`

  Se o sistema não possuir nenhuma fonte randômica como o /dev/urandom (veja em `RandomDevice`), lerá dados randômicos a partir de um Daemon Gerador de Números Pseudo-Randômicos, como o EGD (http://egd.sourceforge.net) através deste soquete de domínio UNIX.

  Esta opção não existe em Linux e vários BSDs.

  Vazio por padrão.

`PrngdPort`

  O mesmo que `PrngdSocket`, sendo que somente usa o soquete TCP socket na máquina local.

`RandomDevice`

  O caminho para um dispositivo de caracter que o &kdm; deve ler para obter dados randômicos. Se vazio, significa usar o dispositivo randômico preferencial do sistema se existir um.

  Esta opção não existe em OpenBSD, uma vez que ele usa a função arc4_random em substituição.

  Vazio por padrão.

`FifoDir`

  A pasta onde os 'sockets' de comando deverão ser criados; deixe em branco para desativá-los.

  O padrão é /var/run/xdmctl.

`FifoGroup`

  A que grupo os 'sockets' de comandos deverão pertencer; pode ser um nome ou um ID numérico.

`GreeterUID`

  O usuário com que as boas-vindas deverão ser executadas. Um valor vazio corresponde ao root. Considere o impacto no `LogSource` ao definir este valor.

  Vazio por padrão.

`DataDir`

  O diretório onde o &kdm; deve armazenar dados de trabalho persistentes. Estes dados podem ser por exemplo o usuário anterior que se logou em um terminal em particular.

  O padrão é /var/lib/kdm.

`DmrcDir`

  O diretório onde o &kdm; armazena arquivos de usuários `.dmrc`. Isto somente é necessário se os diretórios pessoais não são legíveis antes do login (como diretórios AFS).

  Vazio por padrão.

### A Seção [Xdmcp] do &kdmrc;

Esta seção contém opções que controlam como o &kdm; manipula requisições &XDMCP;.

`Enable`

  Se o &kdm; deve ouvir as solicitações &XDMCP;.

  O padrão é true.

`Port`

  Isto indica o número da porta UDP que o &kdm; usa para ouvir as requisições do &XDMCP;. A menos que você precise depurar o sistema, deixe isto com seu valor padrão.

  O padrão é 177.

`KeyFile`

  O estilo de autenticação XDM-AUTHENTICATION-1 do &XDMCP; necessita de uma chave privada para ser compartilhada entre o &kdm; e o terminal. Esta opção especifica o arquivo contendo estes valores. Cada entrada no arquivo consiste de um nome de terminal e a chave compartilhada.

  Vazio por padrão.

`Xaccess`

  Para evitar serviço não autorizado do &XDMCP; e para permitir o repasse de requisições IndirectQuery do &XDMCP;, este arquivo contém um banco de dados de nomes de máquinas que terão acesso direto permitido a esta máquina, ou terá uma lista de máquinas das quais consultas devem ser repassadas. O formato deste arquivo é descrito em .

  O padrão é ${`kde_confdir`}/kdm/Xaccess.

`ChoiceTimeout`

  Número de segundos a esperar pela resposta do terminal após o usuário ter selecionado uma máquina a partir do seletor. Se o terminal enviar uma IndirectQuery do &XDMCP; dentro deste tempo, a requisição será repassada para a máquina escolhida. Caso contrário, é considerado que vem de uma nova sessão e o seletor é oferecido novamente.

  O padrão é 15.

`RemoveDomainname`

  Ao processar o nome do terminal para clientes &XDMCP;, o resolvedor de nomes normalmente criará um nome de máquina totalmente qualificado para o terminal. Como isto algumas vezes é confuso, o &kdm; removerá a porção do nome do domínio do nome da máquina se ele for o mesmo da máquina local quando esta opção estiver habilitada.

  O padrão é true.

`SourceAddress`

  Usa o endereço IP numérico da conexão de entrada em máquinas com várias pastas pessoais ao invés do nome da máquina. Use isto para evitar tentar conectar-se em uma interface erra que pode estar desligada no momento da conexão.

  O padrão é false.

`Willing`

  Isto especifica um programa que é executado (como root) quando uma DirectQuery ou BroadcastQuery &XDMCP; é recebida e esta máquina está configurada para oferecer gerenciamento de terminais &XDMCP;. A saída deste programa deve ser exibida na janela do seletor. Se nenhum programa for especificado, o string Requisição de gerenciamento é enviado.

  Vazio por padrão.

### A seção [Shutdown] do &kdmrc;

Esta seção contém opções globais referentes ao desligamento do sistema.

`HaltCmd`

  O comando (sujeito à repartição de palavras) a executar para parar/desligar o sistema.

  O padrão é algo razoável para o sistema em que o &kdm; foi construído, como `/sbin/shutdown `-h` `now``.

`RebootCmd`

  O comando (sujeito à repartição de palavras) a ser executado para reiniciar o sistema.

  O padrão é algo razoável para o sistema em que o &kdm; foi construído, como `/sbin/shutdown `-r` `now``.

`AllowFifo`

  Se uma pessoa pode desligar o sistema através do 'socket' global de comandos.

  O padrão é false.

`AllowFifoNow`

  Se alguém poderá interromper as sessões em execução ao desligar o sistema através do 'socket' global de comandos.

  Isto não terá efeito a menos que `AllowFifo` esteja habilitado.

  O padrão é true.

`BootManager`

  O gerenciador de inicialização que o &kdm; deverá usar para oferecer opções de inicialização no diálogo de desligamento.

  `None`

    sem gerenciador de inicialização

  `Grub`

    Gerenciador de inicialização Grub

  `Lilo`

    Gerenciador de inicialização Lilo (apenas no Linux i386 & x86-64)

  O padrão é None.

### A classe de seção [X-:*-Core] do &kdmrc;

Esta classe de seção contém opções referentes a configuração do programa de base do &kdm; (principal).

`OpenDelay`

  Veja `OpenRepeat`.

  O padrão é 15.

`OpenTimeout`

  Veja `OpenRepeat`.

  O padrão é 120.

`OpenRepeat`

  Estas opções controlam o comportamento do &kdm; ao tentar abrir uma conexão com um &X-Server;. `OpenDelay` é o comprimento da pausa (em segundos) entre as tentativas sucessivas, `OpenRepeat` é o número de tentativas a realizar e `OpenTimeout` é a quantidade de tempo a gastar na tentativa de conexão. Após `OpenRepeat` tentativas terem sido feitas, ou se `OpenTimeout` segundos se passarem em qualquer tentativa de conexão em particular, a tentativa de inicialização é considerada falhada.

  O padrão é 5.

`StartAttempts`

  Quantas vezes o &kdm; deve tentar iniciar um terminal `estrangeiro` listado em `StaticServers` antes de levantá-lo e desabilitá-lo. Terminais locais são tentados apenas uma vez, e os terminais &XDMCP; são tentados indefinidamente pelo cliente (a menos que a opção `-once` seja fornecida ao &X-Server;).

  O padrão é 4.

`ServerAttempts`

  Quantas vezes o &kdm; tenta iniciar um &X-Server; local. A inicialização inclui executá-lo e esperar pelo seu ativamento.

  O padrão é 1.

`ServerTimeout`

  Quantos segundos o &kdm; deve esperar para que um &X-Server; local se torne ativo.

  O padrão é 30.

`ServerCmd`

  A linha de comando com que iniciar o &X-Server;, sem o número da tela e definição do VT. Lembre-se que, com alguns &X-Server;s (em particular, o do OpenSolaris), é necessário adicionar alguns argumentos ao `ServerArgsLocal` e `ServerArgsRemote`, mesmo que sejam iguais para ambos. Este texto está sujeito à repartição de palavras.

  O valor padrão é algo razoável para o sistema em que o &kdm; foi compilado, como por exemplo `/usr/X11R6/bin/X`.

`ServerArgsLocal`

  Os argumentos adicionais para os &X-Server;s nas sessões locais. Este texto está sujeito à repartição de palavras.

  Vazio por padrão.

`ServerArgsRemote`

  Os argumentos adicionais para os &X-Server;s nas sessões remotas. Este texto está sujeito à repartição de palavras.

  Vazio por padrão.

`ServerVT`

  O VT em que o &X-Server; deverá executar. O `ServerVTs` deverá ser usado em vez desta opção. Deixe-o em branco, para que o &kdm; atribua um VT automaticamente. Configure como `-1` para evitar a atribuição de um VT ao mesmo tempo - isto é necessário para as configurações com vários consoles físicos. Atualmente, apenas para Linux.

`ServerTTY`

  Esta opção é para os SOs sem suporte para VTs, quer pelo &kdm; quer pelo SO em si. Atualmente, esta opção aplica-se a todos os SOs, exceto o Linux.

  Quando o &kdm; muda para o modo de console, ele começa a monitorar esta linha de TTY (indicada sem o `/dev/` inicial) por atividade. Se a linha não for usada durante algum tempo, o &kdm; volta para o terminal do X.

  Vazio por padrão.

`ServerUID`

  O usuário com o que o &X-Server; deverá ser executado. Um valor em branco corresponde a root.

  Vazio por padrão.

`PingInterval`

  Veja `PingTimeout`.

  O padrão é 5.

`PingTimeout`

  Para descobrir quando terminais remotos desaparecem, o &kdm; os pinga regularmente. `PingInterval` especifica o tempo (em minutos) entre os pings e `PingTimeout` especifica a quantidade máxima de tempo (em minutos) a esperar pela resposta do terminal. Se o terminal não responder, a sessão será declarada morta e terminada.

  Se você frequentemente usa terminais X que podem ser isolados do gerenciamento de máquinas, você pode precisar aumentar o tempo de espera. A única preocupação é que as sessões continuarão a existir após o terminal ter sido acidentalmente desabilitado.

  O padrão é 5.

`TerminateServer`

  Se o &kdm; deve reiniciar o &X-Server; local após a sessão terminar ao invés de reiniciá-lo. Use isto se o &X-Server; estiver consumindo memória ou trava o sistema nas tentativas de reinicialização.

  O padrão é false.

`Autorizar`

  Controla se o &kdm; gera e usa autorização para conexões com &X-Server; local. Para terminais &XDMCP; a autorização solicitada por terminal é usada, terminais estrangeiros não-&XDMCP; não suportam nenhum tipo de autorização.

  O padrão é true.

`AuthNames`

  Se `Authorize` é verdadeiro, usa os mecanismos de autorização listados nele. A autorização MIT-MAGIC-COOKIE-1 está sempre disponível; XDM-AUTHORIZATION-1, SUN-DES-1 e MIT-KERBEROS-5 devem também estar disponíveis, dependendo da configuração de construção.

  O padrão é DEF_AUTH_NAME.

`ResetForAuth`

  Alguns &X-Server;s antigos releem o arquivo de autorização no momento da reinicialização do &X-Server;, ao invés de quando verifica a conexão inicial. Como o &kdm; gera as informações de autorização antes da conexão com o terminal, um &X-Server; antigo não obterá informações de autorização atualizadas. Esta opção faz com que o &kdm; envie um SIGHUP ao &X-Server; após configurar o arquivo, gerando uma reinicialização adicional do &X-Server;, durante a qual as novas informações de autorização serão lidas.

  O padrão é false.

`AuthFile`

  Este arquivo é usado para comunicar os dados de autorização a partir do &kdm; para o &X-Server;, usando a opção de linha de comando `-auth` do &X-Server;. Ele deve ser mantido em um diretório que não seja gravável por todos de modo que ele possa ser removido facilmente, desabilitando o mecanismo de autorização do &X-Server;. Se não especificado, um nome randômico será gerado a partir do `AuthDir` e do nome do terminal.

  Vazio por padrão.

`Resources`

  Esta opção especifica o nome do arquivo a ser carregado pelo `xrdb` como banco de dados de recursos na janela raiz da tela 0 do terminal. Programas KDE normalmente não se preocupam com recursos-X, logo esta opção somente é necessária se o programa `Setup` precisar de alguns recursos-X.

  Vazio por padrão.

`Xrdb`

  O programa `xrdb` a usar para ler os recursos-X especificados em `Resources`. O comando está sujeito à repartição de palavras.

  O padrão é ${`x_bindir`}/xrdb.

`Setup`

  Este texto está sujeito à repartição de palavras. Indica um programa que é executado (como root) antes de oferecer a janela de saudação. Isto pode ser utilizado para mudar a aparência da tela em torno da saudação ou mostrar outras janelas (por exemplo, você pode querer executar aqui o `xconsole`). Normalmente, um script com nome `Xsetup` é usado aqui. Veja .

  Vazio por padrão.

`Startup`

  Este texto está sujeito à repartição de palavras. Ele indica um programa que é executado (como root) após o processo de autenticação de usuário. Normalmente, um script com nome `Xstartup` é usado aqui. Veja .

  Vazio por padrão.

`Reset`

  Este texto está sujeito à repartição de palavras. Indica um programa que é executado (como root) após a sessão terminar. Normalmente um script com nome `Xreset` é usado aqui. Veja .

  Vazio por padrão.

`Session`

  Este texto está sujeito à repartição de palavras. Indica o programa de sessão que é executado (como o usuário a que pertence da sessão). Normalmente, um script com nome `Xsession` é usado aqui. Veja .

  O padrão é ${`x_bindir`}/xterm -ls -T.

`FailsafeClient`

  Se o programa `Session` falhar na execução, o &kdm; falhará para este programa. Este programa é executado sem argumentos, mas executa-se usando as mesmas variáveis de ambiente que a sessão deve possuir (veja ).

  O padrão é ${`x_bindir`}/xterm.

`UserPath`

  A variável ambiente `PATH` para `Sessões` não-root.

  O padrão depende do sistema no qual o &kdm; foi construído.

`SystemPath`

  A variável de ambiente `PATH` para todos os programas menos as `Sessões` não-root. Observe que é uma boa prática não incluir o `.` (o diretório atual) nesta entrada.

  O padrão depende do sistema no qual o &kdm; foi construído.

`SystemShell`

  A variável de ambiente `SHELL` para todos os programas menos a `Session`.

  O padrão é /bin/sh.

`UserAuthDir`

  Quando o &kdm; é incapaz de gravar no arquivo de autorização do usuário ativo ($`HOME`/.Xauthority), ele cria um nome de arquivo único neste diretório e aponta para a variável de ambiente `XAUTHORITY` do arquivo criado.

  O padrão é /tmp.

`ForceUserAuthDir`

  Se for verdadeira, o `UserAuthDir` será usado incondicionalmente.

  O padrão é false.

`AutoReLogin`

  Se habilitado, o &kdm; automaticamente reiniciará uma sessão após um &X-Server; quebrar (ou se ele for morto por um Alt-Ctrl-BackSpace). Observe que habilitar este recurso abre uma brecha na segurança: um terminal seguro travado pode ser envolvido (a menos que a trava de tela embutida do &kde; seja usada).

  O padrão é false.

`AllowRootLogin`

  Se desabilitado, não permite que o root (e qualquer outro usuário com UID = 0) se logue diretamente.

  O padrão é true.

`AllowNullPasswd`

  Se desabilitado, somente usuários que possuam senhas atribuídas podem logar-se.

  O padrão é true.

`AllowShutdown`

  Quem possui permissão para desligar o sistema. Isto aplica-se tanto à saudação como ao 'socket' de comando.

  `None`

    nenhum entrada de menu Desligar... é mostrada

  `Root`

    a senha do root deverá ser inserida para desligamento

  `All`

    todos podem desligar a máquina

  O padrão é All.

`AllowSdForceNow`

  Quem tem permissão de abortar sessões ativas durante o desligamento.

  `None`

    nenhum desligamento forçado é permitido

  `Root`

    a senha do root deverá ser inserida para desligamento forçado

  `All`

    todos podem realizar um desligamento forçado da máquina

  O padrão é All.

`DefaultSdMode`

  A escolha padrão para condição/hora de desligamento.

  `Schedule`

    desligamento após todas as sessões terminarem (possivelmente ao mesmo tempo)

  `TryNow`

    desligar, se nenhuma sessão estiver aberta, caso contrário não fazer nada

  `ForceNow`

    desligar incondicionalmente

  O padrão é Schedule.

`ScheduledSd`

  Como oferecer opções de agendamento de desligamento:

  `Nunca`

    de nenhuma maneira

  `Opcional`

    como um botão no diálogo de desligamento simples

  `Sempre`

    ao invés do diálogo de desligamento simples

  O padrão é Nunca.

`NoPassEnable`

  Habilita o login sem senha neste terminal. Use com extremo cuidado!

  O padrão é false.

`NoPassUsers`

  Os usuários que não precisam fornecer uma senha para logar-se. Itens que forem precedidos de `@` representam todos os usuários no grupo de usuários nomeado pelo item. `*` significa todos os usuários menos o root (e qualquer outro usuário com UID - 0). Nunca lista o root.

  Vazio por padrão.

`AutoLoginEnable`

  Habilita login automático. Use com extremo cuidado!

  O padrão é false.

`AutoLoginAgain`

  Se for 'true' (verdadeiro), fará o login imediato após encerrar a sessão. Caso contrário, o login automático só é efetuado quando for iniciada uma sessão.

  O padrão é false.

`AutoLoginDelay`

  O atraso em segundos antes do login automático ser disparado. Isto é conhecido também por Login Temporizado.

`AutoLoginUser`

  O usuário para login automático. Nunca especifique o root.

  Vazio por padrão.

`AutoLoginPass`

  A senha para o usuário logar-se automaticamente. Isto não é necessário a menos que o usuário seja logado em um domínio NIS ou Kerberos. Se você usar esta opção, você deve fazer um `chmod `600` `kdmrc`` por motivos óbvios.

  Vazio por padrão.

`AutoLoginLocked`

  Bloqueia automaticamente a sessão iniciada automaticamente. Isto só funciona com as sessões do KDE.

  O padrão é false.

`SessionsDirs`

  Uma lista dos diretórios contendo definições de tipo de sessão ordenada pela prioridade descendente.

  O padrão é ${`kde_datadir`}/kdm/sessions.

`ClientLogFile`

  O arquivo (relativo à pasta pessoal do usuário) para onde direcionar o resultado da sessão.

  Os seguintes pares de caracteres são substituídos pelos seus valores:

  `%d`

    nome da tela atual

  `%u`

    nome do usuário atual

  `%r`

    vazio da primeira vez. Ver abaixo.

  `%%`

    um único `%`

  Quando o nome do arquivo construído não puder ser usado em segurança e a especificação conter `%`dados `r`, serão tentados outros nomes - desta vez, a expansão de `%`dados `r` como dados, seguido de um número aleatório.

  O padrão é .xsession-errors.

`ClientLogFallback`

  Salvaguarda onde o `ClientLogFile` não pode ser usado. São suportadas as mesmas expansões. Não use aqui caminhos relativos.

  O valor padrão é /tmp/xerr-%u-%d%-r.

`UseSessReg`

  Indica se o registro incorporado do &kdm; para o utmp/wtmp/lastlog deverá ser usado. Se não for, a ferramenta `sessreg` deverá ser usada nos programas `Startup` e `Reset` ou, em alternativa, deverá ser usado o módulo 'pam_lastlog' para os sistemas com o PAM ativo.

  O padrão é true.

### A classe de seção [X-*-Greeter] do &kdmrc;

Esta classe de seção contém opções referentes à configuração da interface do &kdm; (saudador).

`GUIStyle`

  Especifica o estilo do widget para o saudador. Vazio significa usar o padrão embutido que atualmente é `Oxygen-air`.

  Vazio por padrão.

`ColorScheme`

  Especifica o esquema de cores do widget para o saudador. Vazio significa usar o padrão embutido que atualmente é `Oxygen-air`.

  Vazio por padrão.

`LogoArea`

  O que deve ser mostrado no saudador no lado direito das linhas de entrada (se `UserList` estiver desabilitado) ou acima delas (se `UserList` estiver habilitado):

  `None`

    nothing

  `Logo`

    a imagem especificada por `LogoPixmap`

  `Relógio`

    um relógio analógico

  O padrão é Clock.

`LogoPixmap`

  A imagem a ser mostrada no saudador se `LogoArea` é `Logo`.

  Vazio por padrão.

`GreeterPos`

  As coordenadas relativas (porcentagens do tamanho da tela; X,Y) as quais o centro do saudador é colocado. O &kdm; alinha o saudador aos cantos da tela se ele extrapolar o espaço.

  O padrão é 50,50.

`GreeterScreen`

  A tela que o saudador deve mostrar em configurações múltiplas e Xinerama. A numeração inicia com 0. Para o Xinerama, ela corresponde a ordem da lista na seção ServerLayout ativa do XF86Config. -1 significa usar a tela superior-esquerda, -2 significa usar a tela superior-direita.

`GreetString`

  O título do saudador. Uma saudação vazia significa nenhuma linha de cabeçalho.

  Os seguintes pares de caracteres serão substituídos pelos seus valores:

  `%d`

    nome do terminal atual

  `%h`

    nome da máquina, possivelmente com o nome de domínio

  `%n`

    nome do nó, mais provavelmente o nome da máquina sem o nome de domínio

  `%s`

    sistema operacional

  `%r`

    versão do sistema operacional

  `%m`

    tipo da máquina (hardware)

  `%%`

    um `%` simples

  O padrão é Welcome to %s at %n.

`Antialiasing`

  Se as fontes usadas no saudador devem ter o efeito de suavização.

  O padrão é false.

`GreetFont`

  A fonte para o título do saudador.

  O valor padrão é Serif,20,bold.

`StdFont`

  A fonte normal usada no saudador.

  O valor padrão é Sans Serif,10.

`FailFont`

  A fonte usada para a mensagem Login Falhou.

  O valor padrão é Sans Serif,10,bold.

`NumLock`

  O que fazer com o modificador Num Lock na hora que o saudador estiver em execução:

  `Off`

    desliga

  `On`

    liga

  `Keep`

    não muda o estado

  O padrão é Keep.

`Language`

  Idioma e localização a ser usado no saudador, codificado como $`LANGUAGE`. Se estiver em branco, é usada a configuração do ambiente.

  Vazio por padrão.

`UserCompletion`

  Habilita a auto-complementação na linha de edição do nome do usuário.

  O padrão é false.

`UserList`

  Mostra uma lista com os nomes de login unix, nomes reais e imagens no saudador.

  O padrão é true.

`ShowUsers`

  Esta opção controla quais usuários serão mostrados na visão de usuários (`UserList`) e/ou oferecidos para completamento automático (`UserCompletion`). Se for `Selected`, `SelectedUsers` contém a lista final de usuários. Se for `NotHidden`, a lista inicial de usuários contém todos os usuários encontrados no sistema. Os usuários contidos em `HiddenUsers` são removidos da lista, tal como todos os usuários com um UID maior do que o indicado em `MaxShowUID` e os usuários com um UID diferente de zero menor do que o indicado em `MinShowUID`. Os itens em `SelectedUsers` e `HiddenUsers` que começam por `@` representam todos os usuários no grupo de usuários com esse nome. Finalmente, a lista de usuários é ordenada alfabeticamente, se a opção `SortUsers` estiver ativa.

  O padrão é NotHidden.

`SelectedUsers`

  Veja `ShowUsers`.

  Vazio por padrão.

`HiddenUsers`

  Veja `ShowUsers`.

  Vazio por padrão.

`MinShowUID`

  Veja `ShowUsers`.

`MaxShowUID`

  Veja `ShowUsers`.

  O padrão é 65535.

`SortUsers`

  Veja `ShowUsers`.

  O padrão é true.

`FaceSource`

  Se `UserList` estiver habilitado, isto especifica de onde o &kdm; obtém as imagens para os usuários:

  `AdminOnly`

    a partir do `<`FaceDir`>/$`USER`.face[.icon]`

  `PreferAdmin`

    preferir o <`FaceDir`>, no lugar do $`HOME`

  `PreferUser`

    ... o contrário do anterior

  `UserOnly`

    a partir do `$`HOME`/.face[.icon]` do usuário

  As imagens pode estar em qualquer formato que o Qt reconheça, mas o nome do arquivo deve corresponder ao esperado pelo &kdm;: `.face.icon` deve ser um ícone de 48x48, enquanto `.face` pode ser uma imagem de 300x300. Atualmente a imagem maior é usada somente como uma referência e é miniaturizada para se ajustar ao saudador, mas no futuro ela poderá ser exibida em tamanho real na área do logotipo ou como uma dica. Para ser acessível ao &kdm;, as imagens terão que ser lidas por todos e as suas pastas-mães deverão ser executáveis por todos.

  O padrão é AdminOnly.

`FaceDir`

  Veja `FaceSource`.

  O padrão é ${`kde_datadir`}/kdm/faces.

`PreselectUser`

  Especifica se, e se for o caso, um usuário deve ser pré-selecionado para login:

  `None`

    não pré-seleciona nenhum usuário

  `Previous`

    o usuário que logou-se com sucesso por último

  `Default`

    o usuário especificado na opção `DefaultUser`

  Se `FocusPasswd` estiver habilitado e um usuário for pré-selecionado, o cursor será colocado no campo de entrada de senha automaticamente.

  Habilitar este recurso pode ser considerado uma brecha na segurança, uma vez que isto apresenta um nome de login conhecido e válido para um potencial atacante, de modo que ele somente precisa fornecer a senha. Por outro lado, pode ser configurado um nome de login falso para o `DefaultUser`.

  O padrão é None.

`DefaultUser`

  Veja `PreselectUser`.

  Vazio por padrão.

`FocusPasswd`

  Veja `PreselectUser`.

  O padrão é false.

`EchoPasswd`

  Se for verdadeiro, a senha inserida é representada com pontos. Caso contrário, não é apresentada qualquer espécie de reação.

  O padrão é true.

`UseBackground`

  Se habilitado o &kdm; automaticamente iniciará o programa `krootimage` para configurar o segundo plano. Caso contrário, o programa `Setup` é responsável pelo segundo plano.

  O padrão é true.

`BackgroundCfg`

  O arquivo de configuração a ser usado pelo `krootimage`. Ele contém uma seção nomeada `[Desktop0]` como o `kdesktoprc` possui. Estas opções não são descrita aqui; deduza seu significado ou use o centro de controle.

  O padrão é ${`kde_confdir`}/kdm/backgroundrc.

`GrabInput`

  Para melhorar a segurança, a tela de boas-vindas poderá capturar os eventos do mouse e do teclado, de modo que nenhum outro cliente do X possa capturá-los. Contudo, o mecanismo de autorização irá normalmente evitar que os clientes de X mal-intencionados se conectem antes dos demais. Em consequência, a ativação das capturas para os telas locais não é necessária e só melhora marginalmente a segurança nas telas remotas.

  A captura do mouse irá inutilizar os teclados de tela.

  `Nunca`

    nunca capturar

  `IfNoAuth`

    capturar se a tela não necessitar de autorização do X

  `Sempre`

    capturar sempre

  O padrão é IfNoAuth.

`GrabServer`

  Para aumentar a segurança, o saudador captura chamadas ao &X-Server; e então de entrada quando ele inicia. Esta opção especifica se o controle do &X-Server; deve ser mantido durante a leitura do nome/senha. Quando desabilitado, o &X-Server; é liberado após a liberação da entrada ocorrer, caso contrário, o &X-Server; é controlado até pouco antes da sessão iniciar.

  Habilitar esta opção desativa o `UseBackground` e o `Setup`.

  O padrão é false.

`GrabTimeout`

  Esta opção especifica o tempo máximo que o &kdm; irá esperar para que o controle ocorra. O controle pode falhar se algum outro cliente X estiver controlando o &X-Server; ou o teclado, ou possivelmente se a latência de rede for muito alta. Você deve ser cauteloso ao aumentar o tempo de espera, uma vez que um usuário pode estar monitorando uma janela no terminal. Se um controle falhar, o &kdm; mata e reinicia o &X-Server; (se possível) e a sessão.

  O padrão é 3.

`AuthComplain`

  Atenção, se um terminal não tiver autorização do X. Este será o caso se

  - o arquivo de autorização para um &X-Server; local não puder ser criado,

  - um terminal remoto a partir do &XDMCP; não solicitar qualquer autorização ou

  - o terminal é um terminal estrangeiro especificado em `StaticServers`.

  O padrão é true.

`LoginMode`

  Especifica se o saudador de terminais locais deve iniciar num modo escolhedor de máquina (remoto) ou login (local) e se ele tem permissão de alternar para outro modo.

  `LocalOnly`

    somente o login local é possível

  `DefaultLocal`

    inicia no modo local, mas permite alternar para o modo remoto

  `DefaultRemote`

    ... o contrário do anterior

  `RemoteOnly`

    somente escolha de máquinas remotas é possível

  O padrão é LocalOnly.

`ChooserHosts`

  Uma lista de máquinas a ser automaticamente adicionada ao menu de login remoto. O nome especial `*` significa difusão na rede. Não tem efeito se o `LoginMode` é `LocalOnly`.

  O padrão é *.

`ForgingSeed`

  Use este número como uma semente aleatória ao criar tipos de são salvas, etc. de usuários desconhecidos. Isto é usado evitar informar um atacante sobre usuários existentes pela conclusão reversa. Este valor deve ser aleatório mas constante pelo do domínio do login.

`ShowLog`

  Habilita o `xconsole` embutido do &kdm;. Observe que isto pode ser habilitado somente para um terminal por vez. Esta opção está disponível somente se o &kdm; foi `configure` (configurado) com `--enable-kdm-xconsole`.

  O padrão é false.

`LogSource`

  A fonte de dados para o `xconsole` embutido do &kdm;. Se vazio, um redirecionamento de registro do console é solicitado a partir de `/dev/console`. Não possui efeito se `ShowLog` estiver desabilitado.

  Vazio por padrão.

`PluginsLogin`

  Especifica os plug-ins de conversação para o diálogo de login; o primeiro na lista é selecionado inicialmente. Cada plug-in pode ser especificado como um nome base (que se expande para `$`kde_modulesdir`/kgreet_base`) ou como um caminho completo.

  Plug-ins de conversação são módulos para o saudador que obtém os dados de autenticação a partir do usuário. Atualmente somente o plug-in `classic` é disponibilizado com o &kde;; ele apresenta a forma bem conhecida de nome de usuário e senha.

  O padrão é classic.

`PluginsShutdown`

  O mesmo que `PluginsLogin`, mas para o diálogo de desligamento.

  O padrão é classic.

`PluginOptions`

  Uma lista de opções na forma Chave`=`Valor. Os plug-ins de conversação podem consultar estas configurações; as chaves possíveis dependerão do plug-in selecionado.

  Vazio por padrão.

`AllowConsole`

  Mostra a ação de Login de Console na tela de boas-vindas (se o `ServerTTY`/`ConsoleTTYs` estiverem configurados).

  O padrão é true.

`AllowClose`

  Mostra a ação Reiniciar Servidor X/Fechar Conexão no saudador.

  O padrão é true.

`Preloader`

  Um programa a ser executado enquanto o saudador estiver visível. Ele é supostamente para pré-carregar bem como possivelmente da sessão que está sendo iniciada (mais provavelmente).

  Vazio por padrão.

`UseTheme`

  Se o saudador deve usar um tema.

  O padrão é false.

`Tema`

  O tema usado pelo saudador. Pode apontar para um diretório ou um arquivo XML.

  Vazio por padrão.

`AllowThemeDebug`

  Permite que a combinação Alt-Ctrl-D ative/desative a depuração do tema de boas-vindas.

  O padrão é false.

## Especificando &X-Server;s permanentes

Cada entrada na lista `StaticServers` indica uma terminal que deverá constantemente ser gerenciado e que não está usando o &XDMCP;. Este método é tipicamente usado somente para &X-Server;s locais que são iniciados pelo &kdm;, mas o &kdm; pode também gerenciar &X-Server;s iniciados externamente (estrangeiros), sejam eles executados na máquina local ou remotamente.

A sintaxe formal de uma especificação é

    nome terminal [_classe terminal]

para todos os &X-Server;s. Os estrangeiros diferem pelo fato de terem um nome da máquina no nome do terminal, mesmo que seja `localhost`.

O nome do terminal deve ser algo que possa ser passado na opção `-display` de um programa X. Este string é usado para gerar os nomes de seção específicos do terminal, logo seja cuidadoso ao corresponder os nomes. O nome do terminal de terminais &XDMCP; é derivado do endereço do terminal por resolução reversa de nome de máquina. Para fins de configuração, o prefixo `localhost` de terminais &XDMCP; locais não é cortado para torná-los distinguíveis dos &X-Server;s locais iniciados pelo &kdm;.

A porção classe de terminal é também usada nas seções específicas de terminal. Isto é útil se você tem uma grande coleção de terminais semelhantes (como um circuito de terminais X) e gostaria de configurar opções para grupos deles. Ao usar o &XDMCP; o terminal é necessário para especificar a classe do terminal, de modo que o manual para seu terminal X em particular deve documentar o string de classe do terminal para seu dispositivo. Caso contrário, você pode executar o &kdm; em modo de depuração e fazer um `grep` do registro para a classe.

A tela especificada em `ReserceServers` não serão iniciadas quando o &kdm; inicializa, mas quando são explicitamente solicitadas através do 'socket' de comando. Se telas reservadas são especificadas, o menu do &kde; possuirá um item Iniciar Nova Sessão perto do fundo; utilize isto para ativar uma tela de reserva com uma nova sessão de usuário. O monitor mudará para a nova tela, e você terá um minuto para se autenticar. Se não houveram mais telas de reserva disponíveis, o item de menu será desabilitado.

Quando o &kdm; iniciar uma sessão, ele configura os dados de autorização para o &X-Server;. Para servidores locais, o &kdm; passa ``-auth` `nome de arquivo`` na linha de comando do &X-Server;, apontando para os dados de autorização. Para terminais &XDMCP;, o &kdm; passa os dados de autorização ao &X-Server; via a mensagem Accept do &XDMCP;.

## Controle de acesso &XDMCP;

O arquivo indicado pela opção `AccessFile` fornece informações que o &kdm; utiliza para controlar o acesso às telas que pedem serviço via &XDMCP;. O arquivo contém quatro tipos de entradas: entradas que controlam a resposta para consultas Direct e Broadcast, entradas que controlam a resposta para consulta Indirect, definições de macros para entradas Indirect e entradas que controlam em que interfaces de rede o &kdm; escuta consultas &XDMCP;. As linhas em branco são ignoradas, `#` é tratado como o delimitador de comentário e faz com que o resto da linha seja ignorado e `\` faz com que a linha imediatamente a seguir seja ignorada, permitindo que a lista de máquinas indiretas ocupe várias linhas.

O formato das entradas Direct é simples, um nome de máquina ou um padrão, que é comparado com o nome de máquina do dispositivo da tela. Os padrões distinguem-se dos nomes de máquina pela inclusão de um ou mais meta-caracteres; `*` corresponde com qualquer sequência de 0 ou mais caracteres e `?` corresponde com qualquer caracter único. Se a entrada for um nome de máquina, todas as comparações são feitas utilizando endereços de rede, por isso qualquer nome que seja convertível para o endereço de rede correto pode ser utilizado. Note que apenas o primeiro endereço de rede devolvido para um nome de máquina é utilizado. Para padrões, apenas nomes canônicos de máquinas são usados na comparação, por isso certifique-se de não tentar corresponder com nomes alternativos. Se preceder a entrada com um caracter `!` as máquinas que correspondem com a entrada são excluídas. Precedê-la com um `=` não terá efeito mas é necessário quando especificando um macro para diferenciar a entrada de uma definição de macro. Para apenas responder a consultas Direct para uma máquina ou padrão, ela pode ser seguida pela palavra-chave opcional `NOBROADCAST`. Isto pode ser utilizado para impedir o servidor &kdm; de aparecer em menus baseados em consultas Broadcast.

Uma entrada Indirect também contém um nome de máquina ou padrão, mas após ela existe uma lista de nomes de máquinas ou macros para onde as consultas devem ser reenviadas. As entradas Indirect também podem servir para excluir, no caso de um nome de máquina falso (válido) deve ser indicado para tornar a entradas possível de distinguir de uma entrada Direct. Se compilado com suporte IPv6, também podem ser incluídos na lista de endereços para onde redirecionar pedidos endereços de grupos de 'multicast'. Se a lista de máquina indiretas contiver a palavra-chave `CHOOSER`, as consultas Indirect não são reenviadas, e em vez disso é mostrada um janela de seleção de máquina pelo &kdm;. A janela de seleção envia uma procura Direct para cada uma das máquinas restantes na lista e oferece um menu com todas as que responderem. A lista de máquinas pode conter a palavra-chave `BROADCAST`, o que faz com que a janela de consulta envie também uma consulta Broadcast; note que em alguns sistemas operacionais, não é possível fazer difusão de pacotes UDP, por isso esta opção não funciona.

Ao verificar o acesso a uma máquina de terminal em particular, cada entrada é pesquisada e a primeira correspondente determina a resposta. Entradas Direct e Broadcast são ignoradas ao pesquisar por uma entrada Indirect e vice-versa.

Uma definição de macro contém um nome de macro e uma lista de nomes de máquinas e outras macros para a qual a macro se expande. Para distinguir macros de nomes de máquina, os nomes de macro iniciam com um caracter `%`.

O último tipo de entrada é a diretiva `LISTEN`. A sintaxe formal é

     LISTEN [interface [multicast lista]]

Se uma ou mais linhas `LISTEN` forem especificadas, o &kdm; ouve por solicitações &XDMCP; somente nas interfaces especificas. A interface pode ser um nome de máquina ou endereço IP representando uma interface de rede nesta máquina, ou o coringa `*` para representar todas as interfaces de rede disponíveis. Se um grupo de endereços múltiplos estiver sendo ouvido em uma linha `LISTEN`, o &kdm; une os grupos múltiplos na interface fornecida. Para IPv6 múltiplo, a IANA atribuiu ff0X:0:0:0:0:0:0:12b como intervalo permanentemente atribuído para endereços múltiplos para o &XDMCP;. O X no prefixo pode ser substituído por qualquer identificador de escopo válido, como 1 para Nó-Local, 2 para Link-Local, 5 para Site-Local, e assim por diante (veja IETF RFC 2373 ou seu substituto para mais detalhes e definições de escopo). O padrão do &kdm; é ouvir no escopo Link-Local scope endereços ff02:0:0:0:0:0:0:12b para atender melhor o comportamento de broadcast em subrede IPv4. Se nenhuma linha `LISTEN` for fornecida, o &kdm; ouve em todas as interfaces e une o padrão de grupo múltiplo IPv6 do &XDMCP; (quando compilado com suporte ao IPv6). Para desabilitar receber solicitações &XDMCP; uma linha `LISTEN` sem nenhum endereço pode ser especificada, mas usar a opção `[Xdmcp]` `Enable` é preferível.

## Programas suplementares

Os seguintes programas são executados pelo &kdm; em vários estágios de uma sessão. Eles são tipicamente scripts shell.

Os programas de Configuração, Inicialização e Reinicialização são executados como root, assim eles devem ser cuidadosos com a segurança. Seu primeiro argumento é `auto` se a sessão resulta de um login automático, caso contrário nenhum argumento é passado para eles.

### O programa de configuração

O programa `Xsetup` é executado após o &X-Server; ser iniciado ou reiniciado, mas antes do saudador aparecer. Ele é o local para mudar o pano de fundo raiz (se `UseBackground` estiver desabilitado) ou levantar outras janelas que devem aparecer na tela junto com o saudador. Os recursos deste programa poderão ser colocados no arquivo definido em `Resources`.

Além de qualquer uma especificada pela `ExportList`, as seguintes variáveis de ambiente são passadas:

DISPLAY

  o nome do terminal associado

PATH

  o valor de `SystemPath`

SHELL

  o valor de `SystemShell`

XAUTHORITY

  pode ser configurado para um arquivo de autorização

DM_CONTROL

  o valor de `FifoDir`

O `GrabInput` pode fazer com que o &kdm; capture o teclado e o mouse, impossibilitando que as outras janelas consigam receber dados. Se o `GrabServer` estiver definido, o `Xsetup` não será capaz de se conectar à tela.

### Programa de inicialização

O programa `Xstartup` é executado como root quando o usuário se loga. Ele é o local para colocar comandos que adicionem entradas ao `utmp` (o programa `sessreg` pode ser útil aqui), montar pastas pessoais de usuário nos servidores de arquivo, ou abortar a sessão se algum requisito não for atingido (mas observe que em sistemas modernos, muitas destas tarefas já podem ser feitas por módulos PAM).

Além de qualquer uma especificada pela `ExportList`, as seguintes variáveis de ambiente são passadas:

DISPLAY

  o nome do terminal associado

HOME

  o diretório inicial de trabalho do usuário

LOGNAME

  o nome do usuário

USER

  o nome do usuário

PATH

  o valor de `SystemPath`

SHELL

  o valor de `SystemShell`

XAUTHORITY

  pode ser configurado para um arquivo de autorização

DM_CONTROL

  o valor de `FifoDir`

O &kdm; espera até este programa terminar antes de iniciar a sessão do usuário. Se o valor de saída do programa não for zero, o &kdm; interrompe a sessão e inicia outro ciclo de autenticação.

### Programa de sessão

O programa `Xsession` é o comando que é executado como usuário da sessão. Ele é executado com as permissões do usuário autorizado. Um das chaves `failsafe`, `default` ou `custom`, ou um string para ser `eval` por um shell compatível é passado como primeiro argumento.

Além de qualquer uma especificada pela `ExportList`, as seguintes variáveis de ambiente são passadas:

DISPLAY

  o nome do terminal associado

HOME

  o diretório inicial de trabalho do usuário

LOGNAME

  o nome do usuário

USER

  o nome do usuário

PATH

  o valor de `UserPath` (ou `SystemPath` para sessões do usuário root)

SHELL

  o shell padrão do usuário

XAUTHORITY

  pode ser configurado para um arquivo de autoridade não-padrão

KRBTKFILE

  pode ser configurado para um nome de cache de credenciais Kerberos4

KRB5CCNAME

  pode ser configurado para um nome de cache de credenciais Kerberos5

DM_CONTROL

  o valor de `FifoDir`

XDM_MANAGED

  contém uma lista de parâmetros separados por vírgulas que a sessão pode achar interessante, como a localização do 'socket' de comando e as suas capacidades e que plug-in de conversação foi utilizado para a ligação

DESKTOP_SESSION

  o nome da sessão que o usuário escolheu rodar

### Programa de reiniciar

Simétrico ao `Xstartup`, o programa `Xreset` é executado após a sessão do usuário terminar. Executado como root, ele deve conter comandos que desfazem efeitos de comandos do `Xstartup`, removendo entradas do `utmp` ou desmontando diretórios de servidores de arquivos.

As variáveis de ambiente que são passadas para o `Xstartup` são também passadas para o `Xreset`.