Il Control+Alt+End Micro HowTo

Galluzzo Gabriele (gnappoTOGLIMI@mail.viplink.it)

v. 0.01 15/9/1998


Questo documento nasce dall'esigenza di avere la possibilità di effettuare in modo rapido lo shutdown ed il reboot della Linux Box premendo pochi tasti. In particolare, usando una macchina con un utente normale, sarebbe comodo avere la possibilità di effettuare reboot e shutdown con due differenti combinazioni di tasti senza diventare root. Con questo (micro) HowTo cercherò di dare una "pezza" che possa essere utile a quanti, come me, sentono l'esigenza di "uscire rapidamente" da Linux (per rientrarci però subito dopo ;-) ). Non me ne vogliano i guru se dico cose a loro arcinote.

1. Copyright

Potete copiare, diffondere questo HowTo.

Se lo modificate, migliorate (cosa di sicuro molto facile :) ) o lo traducete mi piacerebbe saperlo (vedi Note Finali).

2. Nota legale

Quanto riportato funziona sul mio sistema RedHat 5.0 ed è frutto di mie personali sperimentazioni, non assicuro che funzioni sul vostro sistema (non sono un guru!).

Se fate i backup dei file che modificate non dovrebbero esserci problemi se qualcosa dovesse andare storto.

Usate quanto descritto a vostro rischio e pericolo.

3. Soluzione !

La soluzione a questo (piccolo) problema è abbastanza semplice: far capire ad init che vogliamo usare CTRL+ALT+END per lo shutdown.

Il problema è che lui capisce l'evento CTRL+ALT+CANC ma non quello che ci serve.

Allora dobbiamo andare un po' più a monte e modifichiamo il file di mappa dei caratteri.

Personalmente uso it.map.gz che si trova nella directory /usr/lib/kbd/keytables/ (uso una RedHat 5.0) per cui farò riferimento a questa mappa.

Nella documentazione del kbd c'è un riferimento ad una "curiosa" azione che può essere associata a QUALSIASI tasto o combinazione di tasto+modificatori: Spawn_Console.

Questa azione, a dispetto del nome (a nota nell'autore del kbd), può essere usata per qualsiasi cosa.

Occorre dire ad init cosa vogliamo e per farlo editiamo il file /etc/inittab.

Ora è tutto a posto, salvate tutto quello che avete aperto e date un bel ctrl+alt+end.

Et voilà lo shutdown è servito! Per un ulteriore test, dopo aver rebootato Linux, date ctrl+alt+canc e dovrebbe effettuare il reboot.

Per ricapitolare ora abbiamo disponibili:

The Three Finger Salute

che effettua il reboot : ctrl+alt+canc

The Three Finger Salute2

che effettua lo shutdown : ctlr+alt+end

NOTA: Se l'evento kbdrequest è già gestito da init, quanto descritto in questo documento non credo che funzionerà (non l'ho testato ma da quanto ho capito c'è un solo evento kbdrequest gestibile da init).

Per accertarsi che questo evento non sia già gestito è sufficiente dare uno sguardo al file inittab e vedere se è già presente un kbrequest (nelle distribuzioni che ho visto non c'è mai un kbrequest già gestito, ma conviene controllare).

In ogni caso se avete altre soluzioni siete vivamente invitati ad inviarmele (vedi Note Finali alla fine del documento).

3.1 Limitazione dello shutdown

Potrebbe darsi il caso che abbiate la Linux Box condivisa con alcune persone di cui non vi fidate troppo e che vogliate essere loggato voi per effettuare lo shutdown.

Niente paura! è sufficiente editare il file /etc/shutdown.allow ed inserirvi i nomi di login degli utenti che devono essere loggati per consentire a tutti di dare le sequenze di reboot e shutdown.

Per esempio se /etc/shutdown.allow contiene

root
pippo
pluto
allora QUALSIASI utente (per es. paperino) può dare le due sequenze: ctrl+alt+end e ctrl+alt+canc SOLO se almeno uno dei tre utenti (root, pluto, pippo) è loggato da console.

In caso contrario non avviene nessuno shutdown/reboot.

4. Documenti ispiratori e ringraziamenti

Ringrazio tutti quelli che supportano, sviluppano, diffondono, criticano, (positivamente) e fanno crescere Linux e ne apprezzano lo "spirito" libero, il PLUTO Group, Linus Torvalds & C. :) e Tiziana C. (Titti ;-P ).

Documenti consigliati, secondo me, per saperne di più sono (i path sono quelli della RedHat 5.0):

5. Note Finali

Se questo documento vi è stato utile fatemelo sapere : (gnappoTOGLIMI@mail.viplink.it ovviamente dovete togliere TOGLIMI).

Se vi ha procurato fastidi, notti insonni o avete trovato soluzioni migliori avete l'obbligo :) di farmelo sapere.

Se intedete tradurlo (nel rarissimo caso in cui ciò fosse ritenuto opportuno :) ) mi piacerebbe che me lo diceste sempre all'indirizzo email precedente.

Grazie a Te che hai avuto la pazienza di leggere questo HowTo fin qui!