glug: Downloaad e spegnimento programmato....
Ugo Tartaglino
tartagli@sissa.it
Sat, 16 Dec 2000 20:26:29 +0100
On Sat, 16 Dec 2000, Roberto A. F. wrote:
> Matteo Graci wrote:
>
> > > Devi comunque essere root oppure il tuo utente deve avere il permesso di
> > > spegnere ;-)
...
> Ovviamente il su root deve essere fatto per tutto lo script non solo per lo
> shutdown (altrimenti devi immettere la passwd quando ha finito... ma allora
> ;-).
> Ad esempio:
>
> su root -c "wget -c pinco palla; halt"
>
Segnalo anche un piccolo truccho che permette di sincronizzare i
processi e puo` essere usato per questo scopo.
E` possibile creare dei file speciali di tipo "named pipes" tramite il
comando "mkfifo". Se un processo tenta di scrivere (o leggere) questi file
allora tale processo rimane in attesa che un altro processo legga (o
scriva) sul medesimo file. In questo modo e` possibile realizzare un
piccolo script da eseguire come root, che fa solo due cose:
1 _ scrive su una named pipe ==> quindi aspetta che qualcuno legga la
named pipe.
2 _ esegue lo shutdown del PC
In questo modo lo script che esegue il download quando finisce il suo
lavoro puo` consentire al processo di root di spegnere il PC semplicemente
leggendo il contenuto del file.
Esempio:
mkfifo /home/tizio/tubo
chmod protezioni_che_vuoi /home/tizio/tubo
# Nota: devi concedere ai processi che consentono lo shutdown di poter
# leggere il file /home/tizio/tubo
Script di shutdown:
echo "Allora? Posso procedere?" > /home/tizio/tubo
# tutte le istruzioni che ti pare, compreso lo shutdown
...
Script di download:
# tutte le istruzioni per il download
...
cat /home/tizio/tubo > /dev/null
Ciao,
Ugo