Domanda poco ortodossa...

Massimo Rossi massi.rossi@alice.it
Sab 10 Apr 2010 18:03:14 CEST


On 10/04/2010 00:15, Mauro Cabella wrote:
> La macchina contenente Ubuntu server deve comportarsi così:
> In condizioni normali è sempre acceso, durante il giorno non offre 
> nessun servizio.
> Alle 20:00 partono 2 server TeamSpeak 3, uno pubblico ed uno protetto 
> da pwd (privato), più un server FTP e due server giochi Left4Dead 
> (sono script, nessun problema)
> Alle 07 del mattino dopo si killano tutti i demoni di prima, alle 
> 07:05 si forza un riavvio (e anche qui "quasi" nessun problema)
> Il sabato e la domenica non si killano i demoni e non si riavvia. Il 
> primo kill diventa lunedi alle 07:00.
> Se per caso manca la corrente, il pc va giù, ma quando torna il pc si 
> riaccende in virtù del Bios.
> In quel momento, bisogna controllare se:
> 1) è un giorno in settimana. Se si, che ora è. Se l'ora è tra le 20 e 
> le 07, esegui gli script.
> 2) è sabato o domenica. Esegui gli script senza condizioni.
> 3) se non è tempo tra le 20 e le 07 di giorno feriale e non è sabato o 
> domenica, ignora tutto.
>
Secondo me dovrebbe funzionare tutto con:

i crontab che ha suggerito Alessio
> Tu devi presupporre che il pc sia acceso quando il server deve essere
> eseguito, quindi imposti una crontab di questo tipo:
> 0 20 * * 1-6 /usr/bin/eseguiilservergame.sh
> 0 7 * * 1-5 /usr/bin/uccidiservergame.sh
che servono per quando il server è acceso regolarmente e lo script in 
/etc/rc.local che viene eseguito in caso di riavvio (non so se Ubuntu 
sia come Debian, ma penso di si)

/usr/local/bin/_start_mauro_cabella.sh

con il seguente codice:
> #!/bin/sh
> if [[ `date +%u` -ge 6 || `date +%k` -lt 7 || `date +%k` -ge 20 ]]; then
>         /usr/bin/eseguiilservergame.sh
> fi
> exit
che, eseguito al riavvio, controlla se il numero del giorno della 
settimana è >= 6 (Sabato o Domenica) oppure l'ora è < 7 oppure l'ora è 
 >= 20 fa partire i servizi, altrimenti non fa nulla.



Saluti,

Massimo


Maggiori informazioni sulla lista glug