11.07.2015 Views

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

116 CAPITOLO 3. LA CONFIGURAZIONE DEI SERVIZI DI BASESHELL=/bin/shPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# m h dom mon dow user command25 6 * * * root test -e /usr/sbin/anacron || run-parts --report /etc/cron.daily47 6 * * 7 root test -e /usr/sbin/anacron || run-parts --report /etc/cron.weekly52 6 1 * * root test -e /usr/sbin/anacron || run-parts --report /etc/cron.monthlyin cui sono riportate le azioni standard che vengono eseguite tutti i giorni alle ore 6:25, 22 tuttele domeniche alle 6:27 e tutti i primi giorni del mese alle 6:52.Il contenuto standard di questo file già prevede una serie di azioni giornaliere, settimanali emensili che vengono eseguite in maniera automatica. Queste azioni sono eseguite attraverso il comandorun-parts 23 dagli script presenti nelle directory elencate nell’esempio precedente, per cuise non si hanno esigenze particolari non è il caso di intervenire su questo file ma di aggiungere ilproprio script direttamente in /etc/cron.daily/, /etc/cron.weekly/, /etc/cron.monthly/.Occorre comunque fare attenzione, perché run-parts non esegue gli script il cui nome contienecaratteri diversi da lettere maiuscole e minuscole, numeri, il carattere di sottolineatura ed il “-”(per i dettagli si consulti la relativa pagina di manuale).Oltre ai compiti generali appena illustrati il servizio cron è in grado di eseguire anche operazionirichieste da un singolo utente; in questo caso questi dovrà creare un suo crontab personaletramite il comando crontab. 24 Se lo si chiama con l’opzione -e questo invocherà l’editor predefinito(di norma è vi, a meno di non aver impostato diversamente la variabile EDITOR). Ilformato di questo file è identico a quello di /etc/crontab con l’eccezione del sesto campo, chenel caso non è necessario e non deve essere specificato, dato che l’utente è già ben definito.Se lanciato senza opzioni il comando prende come argomento il file da usare come tabella, dicui legge il contenuto che deve essere nella forma in cui lo si scriverebbe con l’editor; usando “-” silegge direttamente dallo standard input. Si può poi vedere la lista delle operazioni programmateusando l’opzione -l che scrive sullo standard output il contenuto del crontab dell’utente. 25 Con-r invece si esegue la rimozione completa della tabella corrente. Infine con -u si potrà modificare(solo da parte dell’amministratore) la tabella dell’utente specificato come parametro.Si tenga presente che l’amministratore può riservare l’uso del servizio cron solo ad alcuniutenti, creando il file /etc/cron.allow, nel quale si devono elencare gli username degli utentiche lo possono usare. Se il file non esiste è possibile vietare l’uso del servizio solo ad alcuni utenticon la creazione del file /etc/cron.deny che di nuovo dovrà contenere la lista degli usernamedi coloro che non possono usarlo. In assenza di detti file chiunque può usare il servizio.3.3.2 Il servizio atAbbiamo visto nella sezione precedente come si può programmare l’esecuzione periodica di processicon crontab, esistono però anche necessità di avere una esecuzione differita dei programmi,senza che questa debba essere periodica. Per provvedere a questo compito esiste un altro servizio,detto at, per il nome dal comando che permette di richiedere l’esecuzione di un programma ad22 la prima riga si legge appunto come minuto 25, ore 6, essendo le altre indicazioni tutti * si intende che giorno,mese e giorno della settimana sono qualsiasi, allo stesso modo si interpretano le altre due righe.23 nel file di crontab mostrato nell’esempio viene fatto un controllo preventivo della presenza del comandoanacron (installabile dal pacchetto omonimo), questo è un sostituto di crond per le macchine che non è previstosiano sempre accese, il quale si incarica anche di eseguire le operazioni che non sono state effettuate perché lamacchina era spenta, se è installato le operazioni periodiche vengono eseguite da lui e non è necessario l’interventodi crond; l’intallazione di default presuppone che la macchina non ne abbia bisogno, per cui il comando non saràpresente e verrà eseguito invece run-parts.24 i file vengono mantenuti in /var/spool/cron/crontabs.25 la versione usata da Debian in realtà non stampa le righe di commento iniziale che avvisano di non modificaredirettamente il contenuto del crontab, in modo da poter riutilizzare l’output del comando direttamente come inputper un successivo crontab -.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!