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
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
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
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*-*-*-*-*-*-*-*-*:
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.
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
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
Tutti i caratteri speciali contenuti nei nomi dei display, come i due punti (:) o i punti (.), vengono sostituiti da un carattere di sottolineatura (_).
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:
I vecchi client X di tipo R2 e R3 non possono connettersi a un server X che utilizzi il controllo degli accessi basato sugli utenti.
Se la rete non è protetta, è possibile che un estraneo riesca a intercettare i dati di autorizzazione scambiati tra il client X e il server X.
La risorsa Dtlogin*authorize di Xconfig indica al server di login di usare il controllo degli accessi basato sugli utenti. Per usare il metodo basato sull'host, cambiare il valore della risorsa di autorizzazione in False. Ad esempio:
Dtlogin*authorize: False
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 |
---|---|---|---|---|---|
X |
X |
X |
X |
Lingua predefinita o selezionata |
|
X |
X |
X |
X |
File alternativo per le autorizzazioni X (opzionale) |
|
X |
X |
X |
X |
Valore della risorsa Dtlogin*userPath (Xsession, Xfailsafe) o della risorsa Dtlogin*systemPath (Xsetup, Xstartup, Xreset) |
|
X |
X |
X |
X |
Numero di connessione del server X |
|
X |
X |
X |
X |
Shell specificata nella risorsa /etc/passwd (Xsession, Xfailsafe) o Dtlogin*systemShell (Xsetup, Xstartup, Xreset) |
|
X |
X |
X |
X |
Valore della risorsa Dtlogin.timeZone o fuso orario determinato dal sistema |
|
|
X |
X |
X |
Nome dell'utente |
|
|
X |
X |
X |
Directory iniziale specificata in /etc/passwd |
|
|
X |
X |
X |
Nome dell'utente |
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.
Dtlogin*userPath: /usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11
Dtlogin*systemPath: /usr/bin/X11:/etc:/bin:/usr/bin:/usr/ucb
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
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