1 giugno 2007

Una doverosa precisazione

Il post precedente sul lasciare un cortese messaggio a chi occupa impunemente una postazione in un CED, era ovviamente ironico, spero che almeno questo si sia capito: di certo lasciare un messaggio non è una soluzione al problema postazioni occupate. Visto però che sono finito su OSSblog.it (:-O) e che magari ho dato adito a fraintendimenti, ecco qui un piccolo approfondimento.

Come anticipato la nuova funzione "Lascia un messaggio" non è una soluzione al problema del sovraffollamento dei CED. Il buon gnome-screensaver infatti implementa una funzione dedicata per terminare la sessione in corso quando lo schermo è bloccato senza passare per il tasto reset o per Ctrl-Alt-Backspace (che in un luogo come un CED dovrebbe essere bloccato per ovvie ragioni di sicurezza).

La funzione per "liberare" una postazione abusivamente bloccata è facilmente attivabile per mezzo di tre semplici e comode chiavi GConf (per me tutte le chiavi GConf sono comode):
  • /apps/gnome-screensaver/logout_enabled - chiave booleana per attivare o meno la possibilità di terminare una sessione dal dialogo di sblocco del salvaschermo
  • /apps/gnome-screensaver/logout_delay - chiave numerica per definire il numero di minuti dopo il quale compare il pulsante "Termina sessione" nel dialogo di sblocco
  • /apps/gnome-screensaver/logout_command - comando da far eseguire quando si preme il pulsante al punto precedente
Impostare queste chiavi per-utente non ha senso. Tali chiavi debbono essere impostate dall'amministratore di sistema e devono essere impositive, altrimenti che cavolo di politica predefinita sarebbe se gli smanettoni possono scavalcarla? Per chi non sapesse cosa è una chiave impositiva, c'è la comoda guida per l'amministrazione di sistema di GNOME, bellamente tradotta da me negli scorsi anni.

La documentazione fornita con le chiavi stesse è sufficiente a capire come funzionano, l'unica mancanza è il comando per terminare la sessione. Tale comando, con un po' di arzigogolo mentale è gnome-session-save --kill --silent (già, terminare una sessione invocando il comando per salvarla è un po' strano...) ed è anche il valore che deve assumere la chiave logout_command.

Una volta impostato, il funzionamento è semplice: passati gli N minuti definiti in logout_delay, nel dialogo di sblocco appare un nuovo pulsante, Termina sessione. Facendo clic su di esso viene eseguito il comando. Se la sessione è GNOME e il comando è quello indicato sopra, lo schermo si "sblocca", la sessione finisce senza riapparire e senza chiedere conferma[1] e si riparte dalla schermata di login.

Analogamente, è possibile scegliere di non mostrare il pulsante Cambia utente nel dialogo di sblocco, impostando a FALSO la chiave booleana /apps/gnome-screensaver/user_switch_enabled. In realtà tale opzione sembra non avere effetto, ma tranquilli, ho prontamente segnalato il bug.

Un buon amministratore di CED quindi potrebbe disattivare l'user switch per impedire che un computer giustamente bloccato venga usato da altri e al tempo stesso attivare la terminazione della sessione quando il computer è stato bloccato più a lungo del tempo consentito. Provate a comunicarlo al vostro amministratore - ma attenti che non sia un bofh se non volete ritorsioni - magari è la volta buona che vi ringrazierà sentitamente e vi garantirà un accesso a vita senza rinnovo di semestre in semestre ;-)

[1] non ho provato a vedere cosa succede se ci sono documenti non salvati, specie con applicazioni non GNOME.

1 commento:

zeroneg ha detto...

Ciao Luca, sono l'autore del post su OSSblog...per quanto mi riguarda il tuo post era chiarissimo: si tratta di una feature per dare voce agli utenti, non per risolvere il problema.

Spero che il mio post sia stato altrettanto limpido.

Ciao e buon lavoro!