Manuale del CDE Solaris per utenti esperti e amministratori di sistema

Capitolo 1 Configurazione della Gestione del login

La Gestione del login è un server responsabile della visualizzazione della videata di login, dell'autenticazione degli utenti e dell'avvio delle sessioni. Il login grafico è una gradevole alternativa al login tradizionale per i monitor a mappa di bit. I display gestiti dal server di login possono essere collegati direttamente al server di login, oppure a un terminale X o a una workstation della rete.


Nota –

Per avviare, arrestare o personalizzare il server di login è necessario operare come superutente.


Il server di login svolge le seguenti funzioni:

Per disporre di queste funzioni, i display possono essere collegati direttamente al server della Gestione del login oppure a un terminale X o a una workstation della rete. Per i display locali, il server di login avvia automaticamente un server X e visualizza una videata di login. Per i display collegati in rete, come i terminali X, la visualizzazione della videata di login avviene attraverso il protocollo X Display Manager Protocol (XDMCP) 1.0.

Avvio del server di login

Il server di login viene in genere avviato al boot del sistema. Può tuttavia essere avviato anche da una riga di comando.

Per maggiori informazioni sull'utility di configurazione dtconfig, vedere l'Appendice A, che contiene la pagina man dtconfig(1).


Nota –

Il server di login può essere avviato dalla riga di comando quando occorre testare la configurazione, ma in generale è consigliabile avviarlo al boot del sistema.


Gestione dei display locali e di rete

La Figura 1-1 mostra una possibile configurazione del server di login.

Figura 1–1 Possibile configurazione del server di login

Graphic

Determinazione dell'ID di processo del server di login

Nell'impostazione predefinita, il server di login memorizza il suo ID di processo in /var/dt/Xpid.

Per cambiare questa impostazione è possibile modificare la risorsa Dtlogin.pidFile nel file Xconfig. La directory specificata dovrà esistere al momento dell'avvio del server di login.

Per modificare Xconfig, copiare il file da /usr/dt/config in /etc/dt/config. Dopo avere modificato /etc/dt/config/Xconfig, far rileggere Xconfig dal server di login digitando:

/usr/dt/bin/dtconfig -reset

Questa operazione produce il comando kill -HUP ID processo server di login.

Ad esempio, per memorizzare l'ID di processo del server di login in /var/mioserver/Dtpid, modificare come segue il file Xconfig:

Dtlogin.pidFile: /var/mioserver/Dtpid

Al riavvio del server di login, l'ID del processo verrà memorizzato in /var/mioserver/Dtpid. La directory /var/mioserver dovrà esistere quando verrà avviato il server di login.

Visualizzazione di una videata di login su un display locale

All'avvio, il server di login controlla il file Xservers per determinare se debba essere avviato un server X e per stabilire se e come visualizzare le videate di login sui monitor locali e di rete.

Per modificare il file Xservers, copiarlo da /usr/dt/config in /etc/dt/config. Dopo avere modificato /etc/dt/config/Xservers, far rileggere Xservers al server di login digitando:

/usr/dt/bin/dtconfig -reset

Questa operazione produce il comando kill -HUP ID processo server di login

Il formato delle righe di Xservers è il seguente:

nome_display  classe_display  tipo_display  comando_server_X 

dove

nome_display indica al server di login il nome da usare per la connessione al server X (:0 nell'esempio seguente). Il valore * (asterisco) equivale a nome_host:0. Il numero specificato deve corrispondere al numero di connessione del comando_server_X.

classe_display identifica le risorse specifiche del display (Local nell'esempio seguente).

tipo_display indica al server di login se il display è locale o in rete, e specifica come gestire l'opzione “Login dalla riga di comando” nella videata di login (local@console nell'esempio seguente).

comando_server_X identifica la riga di comando, il numero di connessione e altre opzioni che il server di login utilizzerà per avviare il server X (/usr/bin/X11/X: 0 nell'esempio seguente). Il numero di connessione deve corrispondere al numero specificato in nome_display.

La riga predefinita di Xservers ha la forma seguente:

:0 Local local@console /usr/bin/X11/X :0 

Avvio del server di login senza un display locale

Se il sistema utilizzato come server di login non dispone di un monitor a mappa di bit, avviare il server di login senza display locale escludendo la riga corrispondente del file Xservers con il simbolo di commento #. Ad esempio,

# :0 Local local@console /usr/bin/X11/X :0

Il server di login verrà avviato in background e riceverà le richieste dei display della rete.

Accesso al login della riga di comando su un display locale

Scegliendo l'opzione “Login dalla riga di comando” dalla videata di login, il server di login arresta temporaneamente il server delle finestre X e consente di eseguire il login in forma tradizionale sul display a mappa di bit di un terminale. Quando l'utente effettua il logout, o dopo un periodo di tempo specificato, il server di login riavvia il server X.


Nota –

L'opzione “Login dalla riga di comando” non è disponibile sui display collegati via rete.


Il comportamento del “Login dalla riga di comando” dipende dal tipo_display. Il formato di tipo_display è il seguente:

Se si specifica local@display_terminale, il server di login presume che il server X e /dev/display_terminale si trovino sullo stesso dispositivo fisico, e che su quel dispositivo sia in esecuzione un login dalla riga di comando (solitamente getty). Selezionando “Login dalla riga di comando”, il server X viene arrestato e l'utente può accedere al login in esecuzione (getty) su /dev/display_terminale.

Per disabilitare l'opzione “Login dalla riga di comando” su un display, specificare none come display_terminale. Il display_terminale predefinito è console. Specificando local, il valore di display_terminale viene impostato automaticamente su console. Specificando foreign, l'opzione “Login dalla riga di comando” viene disabilitata.


Nota –

Avviando il server di login dalla riga di comando, l'opzione “Login dalla riga di comando” viene automaticamente disabilitata sul display locale.


Abilitazione di una console di visualizzazione a caratteri

Se il sistema utilizzato come server di login è collegato direttamente a un display a caratteri utilizzato come console, si potrà impostare il display_terminale su none per disabilitare l'opzione “Login dalla riga di comando” nella videata di login del display a mappa di bit.

In alternativa, se sia la console a caratteri che il display a mappa di bit utilizzano un login dalla riga di comando (getty), è possibile impostare il display_terminale sul dispositivo usato per il login (getty) sul display a mappa di bit.

Ad esempio, se il login dalla riga di comando (getty) eseguito sul display a mappa di bit si trova sul dispositivo /dev/tty01, cambiare il tipo_display in local@tty01.

Visualizzazione di una videata di login su un display di rete

Il server di login può visualizzare una videata di login su qualsiasi display della rete che la richieda, si tratti di un terminale X o di una workstation.

Per gestire le richieste dei display della rete, il server di login supporta il protocollo XDMCP (X Display Manager Protocol) 1.0, che permette al server di login di negoziare, e quindi accettare o rifiutare, le richieste ricevute dai display della rete. Il protocollo XDMCP è integrato nella maggior parte dei terminali X.

Richieste XDMCP dirette

Quando il terminale X viene configurato per l'utilizzo di XDMCP in modo diretto (modo di interrogazione), l'utente deve specificare al terminale X il nome host del sistema da utilizzare come server di login. Durante il boot, il terminale X contatterà automaticamente il server di login, il quale visualizzerà una videata di login sul terminale. Per informazioni su come configurare il terminale X per l'uso di XDMCP in modo diretto, vedere la documentazione del terminale.

In genere, i server X supportano anche l'opzione -query. In questa modalità, il server X si comporta esattamente come un terminale X, contattando direttamente l'host del server di login per richiedere la visualizzazione della videata di login. Ad esempio, avviando il server X su un display a mappa di bit di una workstation di nome bianca, il server di login anita visualizzerà una videata di login sul server X:

X -query anita

Richieste XDMCP indirette

Quando il terminale X viene configurato per l'utilizzo di XDMCP in modo indiretto, l'utente deve specificare al terminale X il nome host del sistema da utilizzare come server di login. Durante il boot, il terminale X contatterà il server di login, il quale presenterà l'elenco dei server di login disponibili nella rete. Da questo elenco, l'utente potrà scegliere l'host che dovrà visualizzare la videata di login sul terminale X. Per informazioni su come configurare il terminale X per l'uso di XDMCP in modo indiretto, vedere la documentazione del terminale.

In genere, i server X supportano l'opzione -indirect, con la quale il server X contatta il server di login in modalità XDMCP indiretta.

Gestione dei display di rete non-XDMCP

Alcuni terminali X di vecchia produzione non supportano il protocollo XDMCP. Per fare in modo che il server di login visualizzi la videata di login su un terminale di questo tipo, includere il nome del terminale nel file Xservers.

Poiché il display fa parte della rete, il nome_display include anche il nome dell'host. La classe_display può essere usata per indicare risorse specifiche per una determinata classe di terminali X. (Per determinare la classe del terminale X in uso, vedere la documentazione del terminale.) Il tipo_display foreign indica al server di login di collegarsi a un server X esistente anziché avviarne uno nuovo. In questo caso non è specificato alcun comando_server_X.

Esempio

Queste righe del file Xservers ordinano al server di login di visualizzare una videata di login su due terminali X non-XDMCP di nome rosso e grigio:

rosso.blackdog.com:0 AcmeXsta foreign 
grigio:0 PandaCo foreign

Controllo dell'accesso al server di login

Nell'impostazione predefinita, qualsiasi host della rete che abbia accesso al sistema usato come server di login può richiedere la visualizzazione di una videata di login. L'accesso al server di login può tuttavia essere limitato modificando il file Xaccess.

Per modificare Xaccess, copiare il file da /usr/dt/config in /etc/dt/config. Modificare /etc/dt/config/Xaccess e quindi far rileggere Xaccess al server di login digitando:

/usr/dt/bin/dtconfig -reset

Questa operazione genera il comando kill -HUP ID di processo del server di login.

XDMCP diretto

Quando un host cerca di connettersi al server di login usando XDMCP in modo diretto, il nome dell'host viene confrontato con il contenuto del file Xaccess per determinare se quell'host sia autorizzato o meno ad accedere al server di login. Ogni riga del file Xaccess corrisponde a un nome host e può includere i caratteri speciali * (asterisco) e ? (punto interrogativo). L'asterisco corrisponde a zero o più caratteri qualsiasi, mentre il punto interrogativo corrisponde ad un singolo carattere qualsiasi. Un punto esclamativo (!) all'inizio di una riga disabilita l'accesso al server di login, mentre in mancanza di un punto esclamativo l'accesso è abilitato.

Ad esempio, se Xaccess contiene le tre righe seguenti:

adamo.globo.com
 *.div5.globo.com
 !*

La prima riga abilita l'accesso al server di login dall'host adamo.globo.com, la seconda abilita l'accesso da tutti gli host il cui nome completo termini in div5.globo.com, mentre l'ultima riga disabilita l'accesso da qualsiasi altro host.

XDMCP indiretto

Quando un host cerca di connettersi al server di login usando XDMCP in modo indiretto, il nome dell'host viene confrontato con il contenuto di Xaccess per determinare il suo diritto di accesso al server di login. Le righe di Xaccess hanno un formato analogo a quelle usate da XDMCP in modo diretto, inclusi i caratteri speciali, ma in questo caso ogni riga contiene una stringa CHOOSER. Ad esempio:

adamo.globo.com   CHOOSER BROADCAST
 *.div5.globo.com  CHOOSER BROADCAST
 !*		CHOOSER BROADCAST

Anche in questo caso, la prima riga abilita l'accesso al server di login dall'host adamo.globo.com, la seconda abilita l'accesso da tutti gli host il cui nome completo termini in div5.globo.com, mentre l'ultima riga disabilita l'accesso da qualsiasi altro host.

La stringa CHOOSER può essere seguita da:

L'istruzione BROADCAST indica al server di login di generare, mediante una connessione con l'intera sottorete, un elenco degli host disponibili come server di login. Questo elenco verrà usato dal server di login per determinare quali host siano disponibili. Ad esempio:

adamo.globo.com   CHOOSER saturno.globo.com luna.globo.com
 *.div5.globo.com  CHOOSER BROADCAST
 !*		CHOOSER BROADCAST

Collegandosi al server con XDMCP in modo indiretto, adamo.globo.com riceverà un elenco di host contenente saturno e luna, mentre alice.div5.globo.com riceverà l'elenco di tutti i server di login disponibili nella sottorete. Le altre richieste generate con XDMCP in modo indiretto verranno rifiutate.

Un metodo alternativo per specificare un elenco di host consiste nel definire una o più macro contenenti quell'elenco. Ad esempio:

%lista1			saturno.globo.com luna.globo.com
 adamo.globo.com  CHOOSER %lista1

Analisi degli errori

Nell'impostazione predefinita, il server di login registra gli errori nel file /var/dt/Xerrors. Questa impostazione può essere cambiata modificando la risorsa Dtlogin.errorLogFile nel file Xconfig. La directory specificata deve esistere al momento dell'avvio del server di login.

Ad esempio, per fare in modo che il server di login registri gli errori nel file /var/log_personali/Dterrors, impostare la risorsa seguente nel file Xconfig:

Dtlogin.errorLogFile: /var/log_personali/Dterrors

Riavviando il server di login, gli errori verranno registrati nel file /var/log_personali/Dterrors. La directory /var/log_personali dovrà esistere quando verrà riavviato il server di login.

Arresto del server di login

	/usr/dt/bin/dtconfig -d

Questo comando indicherà al sistema di non avviare il server di login al boot successivo.

	/usr/dt/bin/dtconfig -kill

In questo modo verrà eseguito il comando kill ID di processo server di login.


Nota –

L'arresto del processo del server di login con il comando kill causerà l'interruzione di tutte le sessioni utente gestite da quel server.


Il server di login può anche essere arrestato eliminando l'ID del processo, in genere memorizzato in /var/dt/Xpid o in un file specificato in Xconfig dalla risorsa Dtlogin.pidFile.

L'arresto del server di login causerà l'interruzione immediata delle sessioni correnti del desktop.

La videata di login

La videata di login visualizzata dal server offre una serie di funzioni aggiuntive rispetto al login a caratteri tradizionale.

Figura 1–2 Videata di login del desktop

Graphic

Come nel login a caratteri, l'utente deve inserire un nome e una password. Se le informazioni fornite vengono autenticate, il server di login avvia una sessione del desktop per l'utente specificato. Al termine della sessione verrà presentata una nuova videata di login, che potrà essere utilizzata per ripetere l'intero processo.

Per personalizzare la videata di login è possibile:

Ognuna di queste operazioni può essere eseguita per tutti i display o per uno specifico.

Modifica della videata di login

Per personalizzare l'aspetto della videata di login è possibile cambiare il logo o la presentazione grafica, i messaggi di benvenuto e i font.

Per modificare il file Xresources, copiarlo da /usr/dt/config/lingua in /etc/dt/config/lingua. Le modifiche verranno applicate all'avvio successivo della videata di login. Per forzare l'applicazione delle modifiche nella sessione corrente, selezionare “Ripristina videata di login” dal menu Opzioni della videata di login.

Gli attributi della videata di login che dipendono dall'impostazione delle risorse nel file Xresources sono i seguenti:

Dtlogin*logo*bitmapFile: file a mappa di bit o a mappa di pixel da visualizzare come logo

Dtlogin*greeting*persLabelString: messaggio di benvenuto personalizzato

Dtlogin*greeting*labelString: messaggio di benvenuto

Dtlogin*greeting*fontList: font per i messaggi di benvenuto

Dtlogin*labelFont: font per i pulsanti e le opzioni

Dtlogin*textFont: font per la guida e i messaggi di errore

Dtlogin*lingua*languageName: testo alternativo per la lingua della versione locale

Cambiare il logo

    Impostare la risorsa Dtlogin*logo*bitmapFile in Xresources.

Il logo può essere un file a mappa di bit o a mappa di pixel a colori.

In questo esempio viene usato come logo il file a mappa di bit Logo_pers:

Dtlogin*logo*bitmapFile: /usr/local/lib/X11/dt/bitmaps/Logo_pers.bm

Cambiare il messaggio di benvenuto

Nell'impostazione predefinita, il server di login visualizza il messaggio Benvenuti su nome host. Per cambiare questo messaggio:

    Impostare la risorsa Dtlogin*greeting*labelString in Xresources.

Il valore della risorsa labelString potrà contenere %Host_Locale%, che verrà sostituito dal nome dell'host usato come server di login, e %Nome_Display%, che verrà sostituito dal nome del display del server X.

Nell'esempio seguente, il messaggio di benvenuto viene cambiato in Siete su nome_host!:

Dtlogin*greeting*labelString: Siete su %Host_Locale%!

Dopo l'inserimento del nome utente, il server di login visualizza il messaggio Benvenuto, nome_utente. Questo messaggio può essere modificato impostando la risorsa Dtlogin*greeting*persLabelString in Xresources. Il valore di persLabelString potrà contenere la variabile %s, che verrà sostituita dal nome_utente.

Nell'esempio seguente, il messaggio di benvenuto personalizzato viene modificato in Salve nome_utente.

Dtlogin*greeting*persLabelString: Salve %s 

Cambiare i font

I font utilizzati nella videata di login possono essere cambiati impostando una delle risorse seguenti in Xresources:

Dtlogin*greeting*fontList: font per i messaggi di benvenuto

Dtlogin*labelFont: font per i pulsanti, i menu e le opzioni

Dtlogin*textFont: font per la guida e i messaggi di errore

Per ottenere un elenco dei font disponibili, digitare:

xlsfonts [-opzioni] [-fn schema]

L'esempio seguente imposta l'uso di un font di grandi dimensioni per il messaggio di benvenuto (il valore specificato deve occupare una sola riga):

Dtlogin*greeting*fontList: -dt-interface \
 system-medium-r-normal-xxl*-*-*-*-*-*-*-*-*:

Specificare un testo alternativo per le lingue disponibili

Per visualizzare nel menu Lingua una o più opzioni personalizzate anziché i nomi predefiniti delle versioni locali, modificare come nell'esempio la risorsa Dtlogin*lingua*languageName in Xresources:

Dtlogin*En_US*languageName: Americano

Il testo Americano sostituirà il nome predefinito della versione locale En_US.

Modifica del comportamento della videata di login

Il comportamento della videata di login può essere personalizzato modificando le risorse specificate nel file Xconfig.

Per modificare Xconfig, copiare il file da /usr/dt/config in /etc/dt/config. Modificare /etc/dt/config/Xconfig e quindi far rileggere il file al server di login digitando:

/usr/dt/bin/dtconfig -reset

Verrà eseguito il comando kill -HUP ID di processo del server di login

Le risorse specificate nel file Xconfig sono le seguenti:

Dtlogin*authorize: informazioni sul file Xaccess

Dtlogin*environment: ambiente del server X

Dtlogin*language: lingua predefinita

Dtlogin*languageList: elenco delle opzioni del menu Lingua della videata di login

Dtlogin*resources: informazioni sul file Xresources

Dtlogin*setup: informazioni sul file Xsetup

Dtlogin*startup: informazioni sul file Xstartup

Dtlogin*session: informazioni sul file Xsession

Dtlogin*failsafeClient: informazioni sullo script Xfailsafe

Dtlogin*reset: informazioni sullo script Xreset

Dtlogin*userPath: PATH per Xsession e Xfailsafe

Dtlogin*systemPath: PATH per Xsetup, Xstartup e Xfailsafe

Dtlogin*systemShell: SHELL per Xsetup, Xstartup e Xfailsafe

Dtlogin.timeZone: TZ per tutti gli script

Modifica del comportamento della videata di login per ogni display

Negli esempi riportati qui di seguito, la modifica di una risorsa di Xconfig cambia il comportamento della videata di login per tutti i display. Le risorse affiancate da un asterisco (*) possono essere specificate anche limitatamente a un display specifico. Per specificare una risorsa per un determinato display occorre usare il formato Dtlogin*nome_display*risorsa. Ad esempio, per disabilitare il controllo degli accessi basato sugli utenti per il display expo:0 e lasciarlo abilitato per gli altri display, occorrerà specificare:

Dtlogin*expo_0*authorize: False

Nota –

Tutti i caratteri speciali contenuti nei nomi dei display, come i due punti (:) o i punti (.), vengono sostituiti da un carattere di sottolineatura (_).


Modifica dell'accesso al server X

Nell'impostazione predefinita, il server di login abilita il controllo degli accessi al server X basandosi sugli utenti e usando i dati di autorizzazione memorizzati e protetti nel file DirectoryIniziale/.Xauthority. Solo gli utenti autorizzati a leggere questo file potranno connettersi al server X. In generale, questo è il metodo preferito per il controllo degli accessi ai server X.

Un'alternativa è rappresentata dal controllo degli accessi basato sugli host. Con questo metodo, abilitando l'accesso al server X da un determinato host, il diritto di accesso viene esteso automaticamente a tutti gli utenti che hanno accesso a quell'host. Questo metodo può essere utile per le seguenti ragioni:

Cambiare l'ambiente del server X

Se si desidera associare una o più variabili d'ambiente a un server X al momento del suo avvio dal server di login, occorrerà specificare tali variabili usando la risorsa Dtlogin*environment in Xconfig. Ad esempio:

Dtlogin*environment: VAR1=foo VAR2=bar

renderà le variabili VAR1 e VAR2 disponibili per il processo del server X locale. Queste variabili verranno esportate anche negli script Xsession e Xfailsafe.

Cambiare la lingua predefinita

Quando si avvia una sessione del desktop dalla videata di login, è possibile scegliere la lingua da utilizzare dal menu secondario Lingua del menu Opzioni. Se non viene selezionata alcuna lingua specifica verrà usata quella predefinita. La lingua predefinita può essere impostata con la risorsa Dtlogin*language in Xconfig. Ad esempio:

Dtlogin*language: Ja_JP

Per determinare quali lingue sono installate sul sistema in uso, vedere la documentazione del sistema.

Cambiare il menu Lingua della videata di login

Nell'impostazione predefinita, il server di login crea il menu Lingua includendo tutte le versioni locali installate sul sistema. Quando l'utente seleziona una lingua, il server di login ripresenta la videata di login in quella lingua. La sessione del desktop verrà quindi avviata nella lingua selezionata.

È possibile cambiare l'elenco delle lingue presentate nel menu modificando la risorsa Dtlogin*languageList in Xconfig:

Dtlogin*languageList: En_US De_DE

Con l'impostazione riportata in questo esempio, il server di login creerà un menu Lingua contenente solo le opzioni En_US e De_DE.

Esecuzione di un comando prima della comparsa della videata di login

Dopo l'avvio del server X ma prima della comparsa della videata di login, il server di login esegue lo script Xsetup. Questo script richiede le autorizzazioni di superutente ed esegue i comandi che devono essere completati prima della visualizzazione della videata di login.

Per modificare Xsetup, copiare il file da /usr/dt/config in /etc/dt/config. Al login successivo verrà usata la versione modificata di Xsetup.

Esecuzione di un comando prima dell'avvio della sessione utente

Dopo l'inserimento e l'autenticazione del nome utente e della parola chiave, ma prima dell'avvio della sessione utente, il server di login esegue lo script Xstartup. Xstartup richiede le autorizzazioni di superutente ed esegue i comandi che devono essere completati prima dell'avvio della sessione utente.

Per modificare Xstartup, copiare il file da /usr/dt/config in /etc/dt/config. Al login successivo verrà usata la versione modificata di Xstartup.

Avvio di una sessione del desktop

Nell'impostazione predefinita, il server di login avvia la sessione dell'utente eseguendo lo script Xsession. Xsession richiede le autorizzazioni dell'utente ed esegue i comandi necessari per l'avvio del desktop.


Nota –

Non aggiornare mai direttamente lo script Xsession.


Per informazioni su come personalizzare l'avvio delle sessioni del desktop di un utente, vedere il Capitolo 2.

Avvio di una sessione protetta

Selezionando “Sessione protetta” dal menu secondario Sessioni del menu Opzioni della videata di login, il server di login esegue lo script Xfailsafe. Xfailsafe richiede le autorizzazioni dell'utente ed esegue i comandi necessari per l'avvio di un ambiente a finestre base, costituito in genere da un Terminale e talvolta da un gestore di finestre.

Per modificare Xfailsafe, copiare il file da /usr/dt/config in /etc/dt/config. Al login successivo dell'utente verrà eseguita la versione modificata di Xfailsafe.

Al termine della sessione utente

Quando l'utente esce da una sessione normale o protetta del desktop, il server di login esegue lo script Xreset. Xreset richiede le autorizzazioni di superutente ed esegue i comandi necessari dopo la fine della sessione utente.

Per modificare Xreset, copiare il file da /usr/dt/config in /etc/dt/config. La versione modificata di Xreset verrà eseguita al login successivo.

L'ambiente del server di login

Il server di login crea un ambiente che viene poi esportato negli script Xsetup, Xstartup, Xsession, Xfailsafe e Xreset. Questo ambiente viene descritto nella Tabella 1–1. Il server di login può esportare anche altre variabili oltre a quelle elencate.

Tabella 1–1 Ambienti del server di login

Variabile 

d'ambiente 

Xsetup

Xstartup

Xsession

Xreset

Descrizione 

LANG

Lingua predefinita o selezionata 

XAUTHORITY

File alternativo per le autorizzazioni X (opzionale) 

PATH

Valore della risorsa Dtlogin*userPath (Xsession, Xfailsafe) o della risorsa Dtlogin*systemPath (Xsetup, Xstartup, Xreset)

DISPLAY

Numero di connessione del server X 

SHELL

Shell specificata nella risorsa /etc/passwd (Xsession, Xfailsafe) o Dtlogin*systemShell (Xsetup, Xstartup, Xreset)

TZ

Valore della risorsa Dtlogin.timeZone o fuso orario determinato dal sistema

USER

 

Nome dell'utente 

HOME

 

Directory iniziale specificata in /etc/passwd

LOGNAME

 

Nome dell'utente 

Modifica del percorso dell'utente o del sistema

Il server di login imposta la variabile d'ambiente PATH durante l'esecuzione degli script Xsession e Xfailsafe. Ogni utente ha la possibilità di specificare un percorso alternativo per questi script.

Modificare il percorso dell'utente

    Impostare la risorsa Dtlogin*userPath in Xconfig. Ad esempio:

	Dtlogin*userPath: /usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11

Modificare il percorso di sistema

    Impostare la risorsa Dtlogin*systemPath in Xconfig. Ad esempio:

	Dtlogin*systemPath: /usr/bin/X11:/etc:/bin:/usr/bin:/usr/ucb

Cambiare la shell di sistema

Il server di login imposta la variabile d'ambiente SHELL durante l'esecuzione degli script Xsetup, Xstartup e Xfailsafe. L'impostazione predefinita è /bin/sh, che tuttavia può essere modificata cambiando la risorsa Dtlogin*systemShell in Xconfig. Ad esempio:

Dtlogin*systemShell: /bin/ksh

Cambiare il fuso orario

Il server di login imposta la variabile d'ambiente TZ durante l'esecuzione degli script Xsetup, Xstartup, Xsession, Xfailsafe e Xreset. Il valore predefinito viene ricavato dal sistema, perciò di norma non è necessario modificare il valore acquisito. Per impostare un fuso orario differente per questi script, modificare la risorsa Dtlogin.timeZone in Xconfig. Ad esempio:

Dtlogin.timeZone: CST6CDT

Amministrazione della Gestione del login

All'avvio del server di login viene attivato un unico processo dtlogin. Il processo dtlogin legge il file Xconfig per determinare la configurazione iniziale del server di login e localizzare gli altri file di configurazione disponibili. Il server di login legge quindi il file Xservers per determinare la presenza o meno di display da gestire in modo esplicito, e legge il file Xaccess per controllare l'accesso al server di login.

Se nel file Xservers è specificato che il server di login deve gestire un display locale, esso avvierà un server X in base alle informazioni specificate in Xservers e quindi visualizzerà una videata di login su quel display.

Se nel file Xservers è specificato che il server di login deve gestire un display di rete, esso presumerà che il server X richiesto sia già in esecuzione con il nome del display specificato e visualizzerà una videata di login su quel display.

Il server di login attenderà quindi le richieste XDMCP dei client della rete.

Il server di login crea un nuovo processo dtlogin per ogni display da gestire. Questo significa che, se il server di login gestisce un numero n di display, il numero dei processi dtlogin sarà pari a n+1. Il server di login eseguirà lo script Xsetup, caricherà il file Xresources e quindi eseguirà dtgreet per visualizzare la videata di login. Dopo l'inserimento e l'autenticazione del nome utente e della password, il server di login eseguirà lo script Xstartup e quindi lo script Xsession o Xfailsafe. Al termine della sessione eseguirà lo script Xreset.

Se il server di login riceve una richiesta XDMCP indiretta, esso esegue dtchooser per presentare un elenco degli host disponibili come server di login per il display richiedente. La gestione del display verrà quindi affidata all'host selezionato dall'utente.

Per leggere i file di configurazione Xaccess, Xconfig, Xfailsafe, Xreset, lingua/Xresources, Xservers, Xsetup e Xstartup, il server di login cercherà inizialmente in /etc/dt/config, quindi in /usr/dt/config, e utilizzerà il primo file trovato.

File della Gestione del login

Nell'impostazione predefinita, i file della Gestione del login si trovano nelle seguenti posizioni:

/usr/dt/bin/dtlogin: avvia il server di login e la gestione dei display

/usr/dt/bin/dtgreet: visualizza una videata di login per un display

/usr/dt/bin/dtchooser: visualizza una videata di selezione per un display

/usr/dt/bin/Xsession: avvia una sessione del desktop

/usr/dt/config/Xfailsafe: avvia una sessione protetta

/usr/dt/config/Xconfig: file di configurazione del server di login

/usr/dt/config/Xservers: file di descrizione dei display del server di login

/usr/dt/config/Xaccess: file di descrizione degli accessi del server di login

/usr/dt/config/lingua/Xresources: risorse per l'impostazione della visualizzazione

/usr/dt/config/Xsetup: file di configurazione della visualizzazione

/usr/dt/config/Xstartup: file di avvio pre-sessione

/usr/dt/config/Xreset: file di ripristino post-sessione

/var/dt/Xpid: ID del processo del server di login

/var/dt/Xerrors: file di log degli errori del server di login