# Manuale di &kdm;

## Introduzione

&kdm; fornisce un'interfaccia grafica che permette di loggarti nel sistema. Aspetta per il login (nome utente) e la password, autentica l'utente e apre una sessione.&kdm; è superiore a &xdm;, il display manager di X, per molte ragioni.

## Guida rapida

Questa è una guida rapida per utenti che rispondono al seguente modello:

- X è configurato e lavora con il comando `startx` dalla linea di comando.

- Ogni utente usa generalmente un solo gestore di finestre o ambiente desktop, e non cambia questa scelta molto spesso, ed è molto comodo poter editare un singolo file di testo per modificare la loro scelta.

Questo scenario è sufficiente per più ambienti dove un singolo utente o più utenti normalmente avviano il PC esi loggano nel loro ambiente preferito.

## Settare una sessione predefinita

1. Creare o aprire il file `~/.xinitrc`

   Se hai già un file `~/.xinitrc` funzionante vai al prossimo passo

2. Se ancora non esiste, aggiungi una linea in `~/.xinitrc` per avviare il tuo window manager o ambiente desktop preferito.

   Per &kde; dovresti scrivere:

       startkde

   Per altri window manager o ambienti desktop, dovresti vedere nella loro documentazione quale è l'esatto comando.

3. Crea un collegamento in questo modo:

       ln -s ~/.xinitrc ~/.xsession

A questo punto, digitando ``startx`` dalla linea di comando, dovrebbe partire X, con una sessione di &kde;. Il prossimo passo è provare &kdm;.

Come `root` digita ``kdm`` dal prompt.

Dovresti vedere una finestra per il login, descritta più in dettaglio in login.

Digitando il tuo nome utente e password nei rispettivi campi, e lasciando `predefinito` nella casella di selezione del tipo di sessione, dovrebbe partire &kde; per l'utente immesso.

Se ci sono altri utenti da configurare, bisogna ripetere la procedura appena descritta per ognuno di loro.

Questa è una guida rapida, per la sola configurazione ed esecuzione. Probabilmente vorrai anche personalizzare ulteriormente &kdm;, per esempio per nascondere i nomi degli altri utenti, o per permettere più sessioni, o per altro ancora. Leggi il resto di questo manuale per trovare come fare queste impostazioni.

## La finestra di login

L'interfaccia utente di &kdm; è costituita da due finestre di dialogo. La finestra di dialogo principale ha questi controlli:

- Un campo Login: per permetterti di digitare il tuo nome utente.

- Un campo Pass: per immettere la password.

- (Opzionale) una immagine grafica di ogni utente (per esempio una fotografia digitalizzata). Un clic sull'immagine equivale alla scrittura del nome utente associato ad essa nel campo Nome utente:. (Questa funzione è una imitazione della finestra di login su &IRIX;).

- Una casella combinata denominata Menu che permette a &kdm; di essere usato pe avviare sessioni di vari window manager o ambienti desktop installati nel sistema.

- (Opzionale) una regione a destra dei campi Login:Pass: e Tipo di sessione: che può essere usata per visualizzare sia una immagine statica che un orologio analogico.

- Un pulsante Vai! che convalida la combinazione nome utente/password e tenta di avviare una sessione del tipo selezionato.

- Un pulsante Cancella che ripulisce i campi Login e Pass.

- Un pulsante Menu che apre un menu con le seguenti azioni:

  - (Sui display locali) Un elemento Riavvia il server X che fa terminare l'attuale &X-Server;, ne avvia un altro, e mostra una nuova finestra per l'accesso. Si può usare questa opzione se il contenuto del display sembra essere in qualche modo sbagliato.

  - (Sui display remoti) Un pulsante Chiudi Connessione che chiude le connessioni al server &XDMCP; a cui sei attualmente connesso. Se sei arrivato qui tramite un selettore di host, questa azione ti riporterà al selettore di host, altrimenti la scelta di questa opzione riavvia nuovamente l'&X-Server; locale, e fa comparire nuovamente la finestra di accesso.

  - (Opzionale sui display locali) Un elemento Modo Console che termina l'esecuzione del &X-Server; e ti lascia solo con un login da console. &kdm; riavvia il login grafico se nessuno si logga da console in un determinato tempo.

- (opzionale) Un pulsante Spegni che fa comparire la finestra di dialogo di Spegni.

La finestra di dialogo Spegni presenta un insieme di caselle di scelta che ti permettono la selezione di una di queste opzioni:

Spegni

- Arresta il sistema in maniera controllata, pronto per lo spegnimento.

Riavvia

- Arresta il sistema e riavvia il PC. Per sistemi che usano Lilo come boot manager, una finestra a scelta opzionale ti permette di scegliere quale sistema operativo caricare al prossimo riavvio.

Riavvia il server X

- Ferma e riavvia il server X. Tipicamente si utilizza questa opzione se in qualche modo si sono apportate modifiche alla configurazione di X11.

Modo Console

- Ferma l'&X-Server; e riporta il sistema in modalità console. Questo è ottenuto portando il sistema in runlevel 3. Tipicamente il gestore del sistema potrebbe aver bisogno di usare questa opzione prima di aggiornare o riconfigurare il software X11.

Premendo il pulsante OK si da inizio all'azione selezionata; premendo il pulsante Annulla si ritorna alla finestra principale di &kdm;.

## Configurare &kdm;

Questo capitolo assume che &kdm; sia già in funzione sul tuo sistema, e che si voglia semplicemente cambiarne il comportamento.

Quando &kdm; parte legge la sua configurazione dalla cartella `$KDEDIR/share/config/kdm/` (potrebbe anche essere `/etc/kde3/kdm/` o qualcos'altro nel tuo sistema).

La configurazione principale è il file &kdmrc;; tutti gli altri file sono riferimenti ad altri file memorizzati con altri nomi ovunque nel sistema, ma usualmente questo non fa molta differenza per ovvie ragioni (ua eccezione particolare è il riferimento al file di configurazione del &xdm; precedentemente installato. Infatti quando si installa un nuovo &kdm;, questo crea la possibilità di usare &xdm; quando questo è già installato sul sistema).

Poiché &kdm; deve essere eseguito prima di qualunque altro utente loggato, non è legato a nessun utente in particolare. Quindi non è possibile usare un file di configurazione specifico, ma tutti gli utenti condividono il file &kdmrc;. Ne segue che la configurazione di &kdm; può essere alterata solo da quegli utenti che hanno i permessi di scrittura su `$`KDEDIR`/share/config/kdm/kdmrc` (normalmente ristretta all'amministratore del sistema loggato come `root`).

Puoi vedere il file &kdmrc; attualmente in uso nel tuo sistema e puoi configurare &kdm; modificando questo file. Alternativamente puoi usare uno strumento grafico di configurazione fornito da &kcontrolcenter; (sotto Amministrazione di sistema Gestione degli accessi) che è descritto nella guida di &kcontrolcenter; .

Il rimando di questo capitolo descrive la configurazione di &kdm; tramite il modulo di &kcontrolcenter; e il prossimo capitolo descrive le opzioni disponibili in &kdmrc; stesso. Se hai solo bisogno di configurare gli utenti locali, il modulo &kcontrolcenter; dovrebbe essere sufficiente. Se hai bisogno di configurare gli accessi remoti, o sessioni multiple di &kdm; in esecuzione, hai bisogno di leggere oltre.

### Il modulo di controllo degli accessi di &kcontrolcenter;

Usando questo modulo puoi configurare l'accesso grafico a &kde; fornito da &kdm;. Puoi anche cambiare l'aspetto della schermata di login, chi ha accesso al gestore degli accessi e chi può spegnere il PC.

Tutte le impostazioni sono scritte nel file di configurazione &kdmrc;, che nella sua forma originale contiene molti commenti per aiutarti a configurare &kdm;. Usando il modulo di &kcontrolcenter;, i commenti sono persi. Tutte le opzioni disponibili per &kdmrc; sono spiegate in kdm-files.

Le opzioni elencate in questo capitolo sono riferimenti incrociati con gli equivalenti in &kdmrc;. Tutte le opzioni disponibili nel modulo &kcontrol; sono anche direttamente disponibili in &kdmrc;, ma non è vero il contrario.

Al fine di organizzare tutte queste opzioni, questo modulo è diviso in cinque sezioni: Aspetto, Carattere, Sfondo, Spegni, Utenti e Comodità.

Puoi saltare attraverso le sezioni usando le linguette nella parte alta della finestra.

Se non sei attualmente connesso come superutente, devi fare clic sul pulsante Modalità amministratore.. Ti verrà chiesta la password di root. Immettendo la password corretta puoi modificare le impostazioni di questo modulo.

#### Aspetto

Da questa pagina puoi cambiare l'aspetto di &kdm;, il gestore grafico degli accessi di &kde;.

La frase di Benvenuto: è il titolo della schermata di login. Impostare questo è utile se hai diversi utenti di un server che vogliono autenticarsi. Puoi utilizzare diversi segnaposto, descritti ampiamente con la opzione corrispondente `GreetString` in &kdmrc;.

Puoi anche scegliere di mostrare il logo del sistema, l'orologio o nulla di tutto ciò nella finestra di login. Queste scelte possono essere fatte nell'insieme dei tasti di scelta intitolati Area del logo. Questo corrisponde all'opzione di &kdmrc; `LogoArea`.

Se scegli Mostra logo puoi scegliere un logo:

- Trascina un'immagine sul bottone grande mostrante il logo.

- Fa clic sul bottone del logo e seleziona un'immagine dalla finestra di scelta che appare.

Se non specifichi un logo, sarà mostrato il logo predefinito `$`KDEDIR`/share/apps/kdm/pics/ kdelogo.xpm`.

Normalmente la finestra di login è centrata nello schermo. Le opzioni di Posizione: ti permettono di posizionare la finestra ovunque nello schermo. Puoi specificare la posizione relativa (percentuale della dimensione dello schermo) dell'angolo superiore sinistro della finestra di login, nei campi X: e Y: rispettivamente. In &kdmrc; questi corrispondono all'opzione `GreeterPos`.

Mentre lo stile di &kde; dipende dalle impostazioni dell'utente correntemente registrato, lo stile di &kdm; può essere configurata usando Stile interfaccia grafica e Schema di colori. Queste corrispondono in &kdmrc; alle opzioni `GUIStyle` e `ColorScheme`.

Al di sotto di questo c'è una casella di scelta per selezionare la lingua della finestra di accesso. Questa casella corrisponde all'opzione `Language` di &kdmrc;.

#### Carattere

Da questa sezione del modulo puoi cambiare i caratteri usati nella finestra di login. Solo i caratteri disponibili a tutti gli utenti sono presenti, e non i caratteri che hai personalmente installato come utente semplice.

Puoi selezionare tre differenti stili di caratteri dalla casella di scelta (Generale:, Errori:, Benvenuto:). Quando fai clic su Scegli... appare una finestra da cui puoi selezionare le nuove caratteristiche per lo stile dei caratteri.

- Il carattere Standard: è usato in tutte le altre parti nella finestra di login.

- Il carattere Errori: è usato quando il login fallisce.

- Il carattere Benvenuto: è usato per il titolo (Greeting String nel file &kdmrc;)

Puoi anche spuntare la casella Utilizza l'anti-aliasing per i caratteri se vuoi caratteri arrotondati nella finestra di login.

#### Sfondo

Qui si può cambiare lo sfondo del desktop che viene mostrato quando un utente si autentica. Si può avere un singolo colore o anche un'immagine di sfondo. Se si seleziona un'immagine come sfondo e si seleziona centrata, il colore di sfondo selezionato verrà usato intorno all'immagine, se questa non è larga a sufficienza da coprire l'intero desktop.

Il colore di sfondo e gli effetti sono controllati dalla scheda intitolata Sfondo mentre si può selezionare una immagine di sfondo e il suo posizionamento dalle opzioni nella scheda Immagine di sfondo.

Per cambiare le impostazioni predefinite del colore dello sfondo, semplicemente fai clic sul bottone del colore e seleziona un nuovo colore.

La lista di scelta sopra i pulsanti per i colori permette di aggiungere diversi effetti di missaggio. Scegline uno dalla lista, e potrai vedere l'anteprima sul piccolo monitor mostrato sulla destra. Le scelte sono:

Tinta unita

- Con questa scelta il colore selezionato (selezionato tramite il bottone Colore 1) copre l'intero sfondo con un colore.

Motivo

- Scegliendo questo modo si selezionano due colori (con entrambe i bottoni del colore).

  Dopodiché si può selezionare un motivo facendo clic su Impostazioni.... Questo apre una finestra di dialogo che ti da l'opportunità di selezionare un motivo. Basta fare clic una volta sul motivo scelto e quindi fare clic su OK e &kde; genererà il motivo selezionato con i colori precedentemente scelti. Per ulteriori motivi, vedi la sezione Sfondo: Aggiungere, Rimuovere e Modificare i motivi.

Programma di sfondo

- Selezionando questa opzione è possibile che &kde; usi un programma esterno per generare lo sfondo. Questo può essere qualsiasi programma di tua scelta. Per maggiori informazioni su questa opzione, vedi la sezione Sfondo: usare un programma esterno.

Gradiente orizzontale

- Scegliendo questo modo i due colori scelti con i bottoni colore sono dipinti da &kde; a partire dal Colore 1 sul lato sinistro dello schermo, sfumando lentamente nel Colore 2 mano a mano che si va verso il lato destro dello schermo.

Gradiente verticale

- Scegliendo questo modo i due colori scelti con i bottoni colore sono dipinti da &kde; a partire dal Colore 1 sulla parte alta dello schermo, sfumando lentamente nel Colore 2 mano a mano che si va verso la parte bassa dello schermo.

Gradiente piramidale

- Scegliendo questo modo i due colori scelti con i bottoni colore sono dipinti da &kde; a partire dal Colore 1 su ogni angolo dello schermo, sfumando lentamente nel Colore 2 mano a mano che si va verso il centro dello schermo. La forma sembra quella di una piramide vista dall'alto.

Gradiente a incrocio di tubi

- Scegliendo questo modo i due colori scelti con i bottoni colore sono dipinti da &kde; a partire dal Colore 1 su ogni angolo dello schermo, sfumando lentamente nel Colore 2 mano a mano che si va verso il centro dello schermo. La forma di questo gradiente è differente da quello piramidale. Osservando attentamente la forma sembra quella di due tubi che si incrociano.

Gradiente ellittico

- Scegliendo questo modo i due colori scelti con i bottoni colore sono dipinti da &kde; a partire dal Colore 1 sul centro dello schermo, sfumando lentamente nel Colore 2 mano a mano che si va verso la periferia dello schermo, in unmotivo ellittico.

Il bottone Impostazioni... diventa attivo solo se si seleziona Programma di sfondo o Motivo. In questi casi un'altra finestra appare per configurare le specifiche di ogni modo.

Immagine di sfondo

Per selezionare una nuova immagine di sfondo, fai clic sulla linguetta Sfondo e seleziona un'immagine dalla lista intitolata Immagine o seleziona Sfoglia... e seleziona un file di immagine dal selettore di file.

L'immagine può essere visualizzata in sei differenti maniere:

Nessuna immagine di sfondo

- Nessuna immagine viene visualizzata. Vi sarà solo il colore di sfondo.

Centrata

- L'immagine viene centrata nello schermo. Il colore di sfondo è presente in tutti i punti che l'immagine di sfondo non copre.

Ripetuta

- L'immagine viene ripetuta fino a che l'intero desktop viene coperto. La prima immagine va nell'angolo in alto a sinistra, e scendendo verso l'angolo in basso a destra l'immagine viene ripetuta.

Centrata e ripetuta

- L'immagine viene ripetuta fino a che l'intero desktop viene coperto. La prima immagine parte dal centro dello schermo, mentre gli altri duplicati si dipartono da destra, sinistra, sopra e sotto questa.

Centrata e massimizzata

- L'immagine viene messa al centro dello schermo e viene riscalata fino a coprire il desktop, ma non viene alterato il rapporto delle dimensioni dell'immagine originale. In questo modo l'immagine non si distorce.

Scalata

- L'immagine viene scalata per coprire perfettamente il desktop, in tutti e quattro gli angoli.

#### Spegni

Autorizza a spegnere il computer

Usa questa casella di scelta per scegliere chi ha il permesso di spegnere il PC:

- Nessuno: nessuno può spegnere il computer usando &kdm;. Devi essere loggato, ed eseguire il comando.

- Tutti: tutti possono spegnere il computer usando &kdm;.

- Solo root: &kdm; richiede la password di `root` per poter spegnere il PC.

Si può configurare indipendentemente chi è autorizzato a spegnere il PC sia da utenti in Locale: che da utenti in Remoto:

Comandi

Usa queste caselle di testo per definire i comandi esatti di spegnimento.

Il comando Halt: è predefinito a `/sbin/halt`. Il comando Riavvio: è `/sbin/reboot`.

Quando la casella di spunta Mostra opzioni di avvio è abilitata, &kdm; offre la possibilità di utilizzare le opzioni di lilo. Per questa opzione bisogna esplicitare correttamente il percorso di `lilo` e del file di map di lilo. Nota che questa opzione non sarà disponibile per tutti i sistemi operativi.

#### Utenti

Da qui si può cambiare il modo in cui gli utenti sono rappresentati nella finestra di login.

Puoi sempre disabilitare la lista utenti in &kdm; direttamente nella sezione Mostra utenti. Pui scegliere tra:

Mostra lista

- Mostra solo gli utenti che hai specificatamente selezionato nella lista a fianco

  Non mostra nessun utente. Questa è l'impostazione più sicura se qualcuno tenta di attaccare, in quanto dovrebbe indovinare sia le password che i nomi utente. Questa è anche l'opzione consigliata se si ha più di una manciata di utenti da mostrare, altrimenti la lista potrebbe diventare non maneggevole.

Inverti selezione

- Ti permette di selezionare una lista di utenti da non mostrare, mentre gli altri utenti saranno visualizzati.

Indipendentemente dagli utenti che specifichi dal nome, puoi usare l'UID di sistema per specificare il campo di UID validi che sono mostrati nella lista. Di impostazione predefinita id utente inferiori a 1000, che di solito sono demoni o il sistema stesso, e id utente superiori a 65000 non vengono mostrati.

Puoi anche abilitare la casella di spunta Ordina gli utenti per ordinare la lista degli utenti alfabeticamente. Se questa opzione è disabilitata gli utenti verranno mostrati secondo l'ordine presente nel file di password. &kdm; inoltre completerà automaticamente un nome utente se l'opzione Completamento automatico è abilitata.

Se scegli di mostrare gli utenti, la finestra di login mostrerà le immagini (che hai precedentemente selezionato) degli utenti nella lista. Quando qualcuno vuole autenticarsi nel sistema, seleziona la sua immagine di fianco al nome, immette la sua password e verrà autenticato dal sistema.

Se si permette l'immagine dell'utente, si può configurare la sorgente dove prendere queste immagini.

Puoi configurare le immagini dell'amministratore per ogni utente del sistema. In base all'ordine di selezione sottostante, l'utente può decidere di cambiare questa selezione.

Se scegli di non mostrare gli utenti, la finestra di login sarà un po' più tradizionale. L'utente ha bisogno di inserire il nome utente e password per guadagnare l'accesso. Questa è la maniera preferita di molti utenti.

#### Comodità

Nella scheda Comodità puoi configurare alcune opzioni che rendono la vita facile alle persone pigre, come l'accesso automatico o la disabilitazione delle password.

Per favore pensaci due volte prima di usare queste opzioni. Ogni opzione nella scheda Comodità può facilmente compromettere la sicurezza del sistema. Praticamente queste opzioni sono usate esclusivamente in ambienti non critici, ⪚ un computer privato in casa.

##### Accesso automatico

L'Accesso automatico dona a chiunque l'accesso a certi account nel sistema, senza passare per l'autenticazione. Puoi abilitarlo usando l'opzione Abilita accesso automatico.

Puoi scegliere l'account da usare per l'accesso automatico dalla lista intitolata Utente:.

##### Accesso senza password

Usando questa funzionalità, puoi permettere ad alcuni utenti di accedere senza password. Si abilita questa funzione usando l'opzione Abilita accesso senza password.

Sotto questa opzione c'è una lista di utenti del sistema. Puoi abilitare l'accesso senza password agli utenti elencati aggiungendo un segno di spunta a sinistra del nome utente. Come impostazione predefinita questa opzione è disabilitata per tutti gli utenti.

Ancora una volta, questa opzione è da usare esclusivamente in ambienti sicuri. Se abiliti questa funzione su di un sistema pubblico, devi assicurarti che la potranno usare solo utenti con pesantissime restrizioni di accesso. ⪚ sono gli ospiti (`guest`).

Puoi anche scegliere quale utente è Preselezionato quando parte &kdm;. Inizialmente è Nessuno, ma puoi scegliere precedente se vuoi che &kdm; parta con l'utente predefinito l'utente che ha effettuato l'ultimo accesso, o puoi Specificare un particolare utente che sarà sempre selezionato dalla lista. Puoi anche abilitare focus alla password di modo che la schermata di accesso di &kdm; chieda direttamente la password all'utente predefinito.

L'opzione Nuovo accesso automatico dopo il crash del server X ti permette di saltare la procedura di autenticazione solo se il server X è caduto accidentalmente.

&kdmrc-ref;

## Configura il tuo sistema per usare &kdm;

Questo capitolo presuppone che il tuo sistema sia già configurato per partire con &X-Window;, e che tu debba solo riconfigurarlo per permettere l'accesso con interfaccia grafica.

### Impostare &kdm;

La cosa fondamentale che controlla sei il tuo computer si avvia con un prompt dal terminale (modo consolle) o con la finestra di accesso grafica è il runlevel predefinito. Il runlevel è impostato dal programma /sbin/init sotto il controllo del file di configurazione `/etc/inittab`. I runlevel predefiniti usati da differenti sistemi &UNIX; (e differenti distribuzioni &Linux;) variano, ma se guardi nel file `/etc/inittab` l'inizio dovrebbe essere qualcosa di simile:

    # Default runlevel. The runlevels used by RHS are:
    # 0 - halt (Do NOT set initdefault to this) (NON impostare mai su questo!
    # 1 - Single user mode (modo utente singolo)
    # 2 - Multiuser, without NFS (modo multiutente senza NFS)
    # 3 - Full multiuser mode (modo multiutente pieno)
    # 4 - unused (non usato)
    # 5 - X11
    # 6 - reboot (Do NOT set initdefault to this) (NON impostare mai su questo!)

    id:3:initdefault:

Tutto, tranne l'ultima linea di questa porzione di file, sono commenti. I commenti mostrano che il runlevel 5 è usato da X11 e il runlevel 3 è usato per il modo multiutente senza X11 (modo consolle). La linea finale specifica che il runlevel predefinito del sistema è 3. Se il tuo sistema usa la modalità grafica di accesso (per esempio usando &xdm;), il suo runlevel predefinito coincide con quello specificato per X11. (Nell' esempio precedente è il 5).

Il runlevel con l'accesso grafico (&xdm;) per alcune distribuzioni &Linux; è:

- 5 per &RedHat; 3.x e successivi e per &Mandrake;

- 4 per Slackware

- 3 per &SuSE; 4.x e 5.x

Questo primo passo di configurazione del sistema ti assicura la possibilità di avviare &kdm; dalla linea di comando. Una volta che funziona, puoi cambiare la configurazione del tuo sistema affinché &kdm; parta automaticamente al riavvio del sistema.

Per testare &kdm; devi prima portare il sistema ad un runlevel che non esegue &xdm;. Per fare questo devi dare questi comandi:

    /sbin/init 3

Al posto del numero `3` devi specificare il runlevel appropriato per la modalità consolle nel tuo sistema.

Se il tuo sistema usa Moduli d'Autenticazione Innestabili (PAM in inglese), come è normale nelle recenti distribuzioni &Linux; e &Solaris;, devi controllare che la configurazione di PAM permetta l'autenticazione tramite un servizio chiamato `kde`. Se precedentemente hai usato &xdm; con successo, non hai bisogno di cambiare la configurazione di PAM per usare &kdm;. I file di configurazione sono `/etc/pam.conf` o `/etc/pam.d/kde`. Informazioni su come configurare PAM sono al di fuori dello scopo di questo manuale, ma PAM è fornito xon una completa documentazione completa (vedi in `/usr/share/doc/*pam*/html/`).

Adesso è il momento di testare &kdm; immettendo questi comandi:

    kdm -nodaemon

Se ottieni una finestra di accesso di &kdm; e sei in grado di accedere al sistema, le cose stanno funzionando bene. La cosa principale che può andare male è che il linker a run time non riesce a trovare le librerie condivise di &Qt; o di &kde;. Se hai una distribuzione binaria delle librerie di &kde;, assicurati che &kdm; venga installato dove credi siano installate le librerie &kde; e tenta di impostare alcune variabili d'ambiente per puntare alle tue librerie di &kde; e &Qt;.

Per esempio:

    export
    KDEDIR=/opt/kde
    export
    QTDIR=/usr/lib/qt2
    export
    PATH=$KDEDIR/bin:$QTDIR/bin:$PATH
    export
    LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib

Se ancora non hai successo, prova ad eseguire &xdm;, per vedere se il tuo sistema non soffre di qualche altro problema serio di configurazione di X.

Quando sei in grado di eseguire &kdm; con successo, puoi iniziare a rimpiazzare &xdm; con &kdm;. Ancora una volta, questo è dipendente dalla distribuzione.

- Per &RedHat; modifica il file `/etc/inittab` e cerca questa linea:

      x:5:respawn:/usr/X11/bin/xdm -nodaemon

  rimpiazzala con:

      x:5:respawn:/opt/kde/bin/kdm

  Questo dice a `init`(8) di resuscitare &kdm; quando il sistema è in runlevel 5. Nota che &kdm; non richiede l'opzione `-nodaemon`.

- Per &Mandrake; il runlevel per X11 in `/etc/inittab` invoca uno script di shell `/etc/X11/prefdm`, che è impostato per selezionare tra diversi gestori grafici, incluso &kdm;. Assicurati che tutti i percorsi siano coerenti con la tua installazione.

- Per &SuSE; modifica il file `/sbin/init.d/xdm` per aggiungere la prima riga:

      . /etc/rc.config
      DISPLAYMANAGER=kdm
      export DISPLAYMANAGER

- Per FreeBSD modifica il file `/etc/ttys` e cerca la linea:

      ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

  e modificala così:

      ttyv8   "/usr/local/bin/kdm"  xterm   on secure

- La maggior parte delle distribuzioni sono una variazione di una di queste ora menzionate.

A questo punto puoi provare &kdm; ancora una volta portando il sistema al runlevel grafico. Per fare questo inserisci un comando del tipo:

    /sbin/init 5

Al posto del numero `5` dovresti specificare il runlevel appropriato per eseguire X11 sul tuo sistema.

Il passo finale è modificare il parametro `initdefault` nel file `/etc/inittab` per specificare il runlevel appropriato per X11.

Prima di effettuare questa modifica assicurati di avere un modo di riavviare il sistema se qualcosa va storto. Potrebbe essere ad esempio un disco di ripristino fornito con la tua distribuzione oppure un disco di ripristino appositamente creato, come ad esempio `tomsrtbt`. Ignora questo avviso a tuo pericolo.

Questo generalmente vuol dire modificare la seguente linea:

    id:3:initdefault:

in

    id:5:initdefault:

Quando riavvii il sistema, dovresti ritrovarti la schermata di login grafico di &kdm;.

Se questo passo fallisce, il problema più probabile è che l'ambiente usato nella fase di boot differisce da quello usato per fare le prove da linea di comando. Se stai tentando di far coesistere due versioni di KDE, sii particolarmente prudente nel verificare che le variabili d'ambiente `PATH` e `LD_LIBRARY_PATH` siano consistenti, e che gli script di avviamento non tentino in qualche modo di sovrascriverle.

## Supporto per gestori di finestre multipli

&kdm; rileva la maggior parte dei window manager e degli ambienti desktop quando viene eseguito. Se ne vengono installati di nuovi, questi dovrebbero essere automaticamente disponibili nella finestra principale di &kdm; nella lista Tipo di sessione:.

Se hai un window manager nuovissimo, o qualcosa che &kdm; non supporta, la prima cosa da controllare è che l'applicazione da eseguire si trovi nella variabile di ambiente `PATH` oppure che non sia stata rinominata dall'installazione in qualcosa di inaspettato.

Se veramente l'applicazione è troppo recente e non ancora supportata da &kdm;, puoi semplicemente aggiungere una nuova sessione.

Le sessioni sono definite nei file .desktop in `$`KDEDIR`/share/apps/kdm/sessions`. Puoi semplicemente aggiungere un file chiamato `.desktop` in questa cartella. I campi sono:

    [Desktop Entry]
    Encoding=UTF-8 Questo è fisso a UTF-8 e
    può essere omesso
    Type=XSession Questo è fisso a XSession e
    può essere omesso
    Exec=nome dell'eseguibile Passato a
    eval exec in una Bourne shell
    TryExec=nome dell'eseguibile Supportato
    ma non richiesto
    Name=nome da mostrare nella lista delle sessioni in &kdm;

Ci sono anche tre sessioni magiche che non sono configurabili:

default

- La sessione predefinita di &kdm; è normalmente &kde;, ma può essere configurata dall'amministratore del sistema.

custom

- La sessione custom eseguirà la sessione in ~/.xsession se esiste.

failsafe

- Failsafe eseguirà una sesione nuda e cruda, ed è utile per scopi di debugging.

Per sovrascrivere un tipo di sessione, copia il file .desktop dalla cartella data alla cartella config e modificane le parti che ti interessano. Per rimuovere un tipo di sessione già presente, la si può nascondere, editando il giusto file .desktop e inserendo Hidden=true. Per le sessioni magiche inizialmente non esistono file .desktop, ma &kdm; presuppone che ci siano, quindi puoi sovrascriverle come ogni altro tipo di sessione. Immagino che tu sai già come aggiungere un tipo di sessione! ;-)

## Uso di &kdm; per l'autenticazione da remoto (&XDMCP;)

&XDMCP; è lo standard dell'Open Group: X Display Manager Control Protocol. Viene usato per instaurare connessioni tra sistemi remoti su tutta la rete.

&XDMCP; è molto utile in situazioni con molti utenti, dove ci sono gli utenti con le loro workstation, ed un potente server che fornisce le risorse per eseguire molte sessioni di X. Per esempio &XDMCP; è un buon metodo per riutilizzare vecchi computer, come Pentium o 486 con 16 Mb RAM, sufficienti a far funzionare X, e usando &XDMCP; si riesce ad avere una versione dell'ultimo &kde; che gira sul server. Dalla parte del server, una volta che si esegue una sessione di &kde; (o altri ambienti), eseguire un'altra sessione richiede veramente poche risorse aggiuntive.

Tuttavia permettere un altro metodo di autenticazione alla tua macchina ovviamente comprometterà la sicurezza. Devi eseguire questo servizio solo se hai la necessità di permettere a server X remoti di autenticarsi nel tuo sistema. Utenti con un singolo computer &UNIX; non dovrebbero averne bisogno.

## Argomenti avanzati

### Socket di comando

Questa è una opzione che puoi usare per controllare da remoto &kdm;. Principalmente è fatta per essere usata da &ksmserver; e &kdesktop; da una sessione in esecuzione, ma vanno bene anche altre applicazioni.

I socket sono quelli di dominio &UNIX; e che risiedono nelle sottocartelle della cartella specificata da `FifoDir`=. La sottocartella è una chiave all'indirizzo e alla sicurezza; tutti i socket hanno il nome del file `socket` e hanno i permessi `rw-rw-rw-` (0666). Questo perché alcuni sistemi non tengono conto dei permessi per i file di socket.

Ci sono due tipi di socket: quello globale (dmctl) e quelli per ogni display (dmctl-<display>).

La sottocartella di quello globale è di proprietà di root, mentre le sottocartelle di quelli per singolo display sono di proprietà dell'utente attualmente autenticato (root o l'utente attualmente connesso). Il gruppo di appartenenza delle sottocartelle può essere impostato tramite FifoGroup=, diversamente è root. I permessi delle sottocartelle sono rwxr-x--- (0750).

I campi di un comando sono separati dalle tabulazioni (\t), i campi di una lista sono separati da spazi, uno spazio letterale all'interno di un campo della lista deve essere denotato con \s.

Il comando è terminato da un a capo (\n).

Lo stesso si applica alle risposte. La risposta al successo è ok, possibilmente seguita dalla informazione richiesta. La risposta all'errore è una parola in stile "errno" (⪚ perm, noent, &etc;) seguita da una lunga spiegazione.

### Comandi globali:

`login` `display` (`now` | `schedule`) `user` `password` [session_arguments]

- autentica l'utente su di uno specifico display. Se viene specificato `now`, una eventuale sessione in corso viene terminata, altrimenti l'autenticazione viene eseguita dopo che la sessione corrente si chiude. Gli argomenti session_arguments sono di tipo printf con caratteri di escape per il file .dmrc. Le chiavi non riportate nella lista verrano prese da quelle predefinite preventivamente salvate.

### Comandi per singolo display:

`lock`

- Il display è segnato come bloccato. Se il server X muore in questo stato, non verrà eseguita nessuna autenticazione automatica anche se questa opzione è messa a on.

`unlock`

- Inverte l'effetto di `lock`, e riabilita l'autenticazione automatica.

`suicide`

- La sessione corrente è terminabile coattamente. Nessuna autenticazione automatica sarà possibile, ma ci sarà un accodamento di un comando "login".

### Comandi per tutti i socket

`caps`

- Ritorna una lista delle capacità di questi socket:

  &kdm;

- identifica &kdm;, in caso altri DM implementino questo protocollo

list, lock, suicide, login

- Il rispettivo comando è supportato

bootoptions

- Il comando `listbootoptions`e `=` a `shutdown` sono supportati

shutdown <list>

- Il comando `shutdown` è supportato e permesso per tutti gli utenti in lista (lista separata da virgole). * indica tutti gli utenti autenticati.

nuke <list>

- Lo spegnimento forzato può essere eseguito dagli utenti in lista.

nuke

- Lo spegnimento forzato può essere eseguito da chiunque

reserve <number>

- Vengono configurati display di riserva, e ne sono disponibili attualmente number

`list` [`all` | `alllocal`]

- Ritorna una lista di sessioni correnti. Di default tutte le sessioni vengono elencate. Se viene specificato `all` vengono elencate anche le sessioni passive. Se viene specificato `alllocal` vengono elencate anche le sessioni passive a meno di quelle provenienti da remoto.

  Ogni elemento sessione è una tupla separata da virgole di:

  - Display o nome del terminale TTY

  - nome del terminale VT per le sessioni locali

  - Nome dell'utente autenticato, vuoto per le sessioni passive e sessioni remote (se è stato scelto locale)

  - Tipo di sessione o <remote> per sessioni remote, vuoto per sessioni passive.

  - Un campo con i flag:

    - `*` per il display appartenente al socket richiedente.

    - `!` per le sessioni che non possono essere uccise dal socket richiedente.

  Nuovi campi potrebbero essere aggiunti in futuro.

`reserve` [`timeout in seconds`]

- Avvia uno schermo di autenticazione di riserva. Se nessuno si autentica nel tempo specificato (un minuto di default) il display viene rimosso. Quando la sessione sul display termina, il display viene rimosso.

  Permesso solo sui socket del display locale e sul socket globale.

`activate` (`vt`|`display`)

- Salta ad un particolare terminale VT (virtual terminal). Il terminale VT può essere specificato direttamente (⪚ `vt3`) o tramite un display che lo sta usando (eg; `:2`).

  Permesso solo sui socket del display locale e sul socket globale.

`listbootoptions`

- Elenca le opzioni di boot disponibili.

`shutdown` (`reboot` | `halt`) [`=`bootchoice``] (`ask`|`trynow`|`forcenow`|`schedule`|`start (`-1`|`end (`force`|`forcemy`|`cancel)`)`)`)

- Richiede uno spegnimento del sistema, sia esso un riavvio o uno spegnimento completo.

  Una scelta del sistema operativo per il successivo riavvio può essere specificata dalla lista ottenuta con `listbootoptions`

  Le richieste di spegnimento da parte dei socket per singolo display vengono eseguite quando la sessione corrente su quel display termina. Una richiesta del genere può provocare la comparsa di un pop-up di conferma e di autenticazione.

  Il parametro `start` è il tempo in cui programmare lo spegnimento della macchina. Se inizia con un segno più, è un tempo da aggiungere a quello attuale. Zero significa immediatamente.

  Il parametro `end` è il termine ultimo entro il quale lo spegnimento deve essere eseguito se ci sono sessioni correnti ancora in esecuzione. Se inizia con un segno più, il tempo viene aggiunto a quello riportato nel parametro start. -1 significa un'attesa infinita. Se arriva il tempo di scadenza e ci sono ancora sessioni in esecuzione &kdm; può fare una delle seguenti cose:

  - `cancel` - rinuncia allo spegnimento

  - `force` - forza lo spegnimento

  - `forcemy` - forza lo spegnimento solo se le sessioni attive appartengono all'utente richiedente. Solo per i socket per singolo display.

  I parametri `start` e `end` sono espressi in secondi sin dall'epoca di &UNIX;.

  `trynow` è un sinonimo di `0 0 cancel`, `forcenow` di `0 0 force` e `schedule` per `0 -1`.

  `ask` tenta uno spegnimento immediato e interagisce con l'utente se ci sono ancora sessioni attive. Solo per socket per singolo display.

`shutdown cancel` [`local`|`global`}

- Annulla uno spegnimento programmato in precedenza. Il socket globale cancella sempre gli spegnimenti in attesa, mentre i socket per singolo display cancellano solo le rispettive richieste di spegnimento.

`shutdown status`

- Restituisce una lista con le informazioni riguardo gli spegnimenti richiesti.

  I campi sono tuple separate da virgole di:

  - (global|local) - spegnimenti in attesa contro quelli accodati. Un campo locale viene restituito solo da un socket per singolo display.

  - (halt|reboot)

  - start

  - end

  - ("ask"|"force"|"forcemy"|"cancel")

  - ID utente in forma numerica che ha richiesto lo spegnimento, -1 per il socket globale.

  - La scelta del sistema operativo da caricare al riavvio oppure "-" se non scelto.

  Nuovi campi potrebbero essere aggiunti in futuro

Ci sono due modi per usare i socket:

- Connettersi ad essi direttamente. La variabile FifoDir è esportata come $`DM_CONTROL`; il nome dei socket per singolo display possono essere ricavati da $`DISPLAY`.

- Usando il comando `kdmctl` (⪚ in uno script di shell). Prova `kdmctl` `-h` per saperne di più.

Qui è riportato un esempio di script bash riavviare in FreeBSD:

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

## Altre sorgenti di informazione

Poiché &kdm; discende da &xdm;, la pagina di manuale di xdm può fornire utili informazioni di base. Per i problemi relativi ad X, prova le pagine di manuale di X e startx. Se hai delle domande su &kdm; che non hanno risposta da questo manuale, avvantaggiati dal fatto che &kdm; è distribuito sotto i termini della Licenza Pubblica &GNU;: guarda il codice sorgente.

## Riconoscimenti e License

&kdm; è derivato, e include codice da &xdm;(C) Keith Packard, MIT X Consortium.

&kdm; 0.1 è stato scritto da &Matthias.Ettrich;. Versioni successive fino a &kde; 2.0.x sono state scritte da &Steffen.Hansen;. Alcune nuove funzioni per &kde; 2.1.x e una riscrittura più ampia per &kde; 2.2.x fatte da &Oswald.Buddenhagen;.

Altre parti di codice di &kdm; sono di copyright degli autori e distribuiti secondo i termini della licenza &GNU; GPL. Chiunque può effettuare modifiche a &kdm; e ridistribuire il codice risultante, a patto che i nomi degli autori siano indicati.

&kdm; richiede le librerie &Qt;, che sono copyright di Troll Tech AS.

Contribuenti della documentazione:

- Documentazione scritta da &Steffen.Hansen; stefh@dit.ou.dk

- Documentazione estesa da Gregor Zumstein zumstein@ssd.ethz.ch. Ultimo aggiornamento 9 agosto 1998

- Documentazione rivista per &kde; 2 da &Neal.Crook; &Neal.Crook.mail;. L'ultimo aggiornamento è del 6 agosto 2000

- Documentazione rivista e estesa per &kde; 2.2 da &Oswald.Buddenhagen; &Oswald.Buddenhagen.mail;. L'ultimo aggiornamento è dell'agosto 2001

Copyright documentazione &Steffen.Hansen;, Gregor Zumstein, &Neal.Crook; e &Oswald.Buddenhagen;. Include gran parte della pagina di manuale di &xdm; che è © di Keith Packard.

&underFDL; &underGPL;

## Glossario

Benvenuto

Il benvenuto è la finestra di login, &ie;, la parte di &kdm; che l'utente vede.

entropia

L'entropia di un sistema è la misura della sua imprevedibilità. Questo concetto è usato durante la generazione di numeri casuali.