Mansioni automatizzate su Linux (Cron)

Configurazione del 1° maggio 2008 Linux | 9:10 di admin @

Linguette di Linux CronLinguette di Linux Cron

In Linux, le mansioni possono essere configurate per funzionare automaticamente durante un periodo specificato, ad una data specificata, o quando la media del carico di sistema è sotto un numero specificato. Red Hat Enterprise Linux pre-configured per fare funzionare le mansioni di sistema importanti mantenere il sistema aggiornato. Per esempio, la base di dati dello slocate usata dall'ordine di posizionamento è aggiornata giornalmente. Un gestore di systema può usare le mansioni automatizzate effettuare i sostegni periodici, controlla il sistema, gli scritti su ordinazione di funzionamento ed il più.

Red Hat Enterprise Linux viene con parecchi programmi di utilità automatizzati di mansioni: cron, a e gruppo.

1. Cron

Cron è un demone che può essere usato per programmare l'esecuzione delle mansioni di ricorso secondo una combinazione dell'ora, di giorno del mese, di mese, di giorno della settimana e di settimana.
Cron suppone che il sistema è continuamente sopra. Se il sistema non è su quando un'operazione è preveduta, non è eseguita. Per programmare le mansioni di una volta, riferisca a a e gruppo.

Per usare il servizio del cron, il pacchetto del vixie-cron RPM deve essere installato ed il servizio del crond deve funzionare. Per determinare se il pacchetto è installato, usi il RPM - ordine del vixie-cron di q. Per determinare se il servizio stia funzionando, usi la condizione del crond di /sbin/service di ordine.

1.1. Mansioni di configurazione di Cron

La lima di configurazione principale per cron, /etc/crontab, contiene le seguenti linee:

SHELL=/bin/bash
PATH=/sbin: /bin: /usr/sbin: /usr/bin
MAILTO=root
HOME=/

# fare funzionare-parti
01 * * * * fare funzionare-parti /etc/cron.hourly della radice
02 4 * * * fare funzionare-parti /etc/cron.daily della radice
22 4 * * fare funzionare-parti /etc/cron.weekly delle 0 radici
42 4 fare funzionare-parti /etc/cron.monthly della 1 * * radice

Le prime quattro linee sono variabili usate per configurare l'ambiente in cui le mansioni del cron sono fatte funzionare. La variabile di SHELL dice al sistema quale ambiente delle coperture da usare (in questo esempio le coperture di colpo), mentre la variabile del PERCORSO definisce il percorso utilizzato per eseguire gli ordini. L'uscita delle mansioni del cron è inviata con la posta elettronica al username definite con la variabile di MAILTO. Se la variabile di MAILTO è definita come stringa vuota (MAILTO=„ "), il email non è trasmesso. La variabile della CASA può essere usata per regolare l'indice domestico per usare quando esegue gli ordini o gli scritti.

Ogni linea nella lima di /etc/crontab rappresenta un'operazione ed ha la seguente disposizione:

minuto | ora | giorno | mese | ordine del dayofweek

minuto - qualsiasi numero intero da 0 a 59

ora - qualsiasi numero intero da 0 a 23

giorno - qualsiasi numero intero da 1 a 31 (deve essere un giorno valido se un mese è specificato)

mese - qualsiasi numero intero da 1 a 12 (o il breve nome del mese quali gennaio o febbraio)

dayofweek - qualsiasi numero intero da 0 a 7, dove 0 o 7 rappresenta domenica (o il breve nome della settimana quali il sole o lunedì)

ordine - l'ordine eseguire (l'ordine può essere un ordine quale il ls /proc >> /tmp/proc o l'ordine eseguire uno scritto su ordinazione)

Per c'è ne dei valori di cui sopra, un asterisco (*) può essere usato per specificare tutti i valori validi. Per esempio, un asterisco per i mezzi di valore di mese esegue ogni mese l'ordine all'interno dei vincoli degli altri valori.

Un trattino (-) fra i numeri interi specifica una gamma dei numeri interi. Per esempio, 1-4 significa i numeri interi 1, 2, 3 e 4.

Una lista dei valori ha separato dai virgole (,) specifica una lista. Per esempio, 3, 4, 6, 8 indicano quei quattro numeri interi specifici.

Il taglio di andata (/) può essere usato per specificare i valori di punto. Il valore di un numero intero può essere saltato all'interno di una gamma quanto segue la gamma con/<integer>. Per esempio, 0-59/2 può essere usato per definire ogni altro minuto nel campo minuscolo. I valori di punto possono anche essere usati con un asterisco. Per esempio, il valore */3 può essere utilizzato nel campo di mese per fare funzionare l'operazione ogni terzo mese.

Tutte le linee che cominciano con un contrassegno (#) sono osservazioni e non sono procedate.

Secondo le indicazioni della lima di /etc/crontab, lo scritto delle fare funzionare-parti esegue gli scritti in /etc/cron.hourly/, in /etc/cron.daily/, in /etc/cron.weekly/ e negli indici di /etc/cron.monthly/ un orario, quotidiano, sul settimanale, o sulla base mensile rispettivamente. Le lime in questi indici dovrebbero essere shell script.

Se un'operazione del cron è richiesta essere eseguito su un programma non orario, quotidiano, settimanalmente, o mensilmente, può aggiungersi all'indice di /etc/cron.d/. Tutte le lime in questo indice usano la stessa sintassi di /etc/crontab. Esempi.

# annotazione l'uso di memoria del sistema ogni lunedì
# al 3:30 nella lima /tmp/meminfo
30 3 * * gatto /proc/meminfo >> /tmp/meminfo di lunedì
# faccia funzionare lo scritto su ordinazione il primo giorno di ogni mese al 4:10
10 4 1 * * /root/scripts/backup.sh

Gli utenti tranne la radice possono configurare le mansioni del cron usando il programma di utilità del crontab. Tutti i crontabs prestabiliti dall'utente sono memorizzati nell'indice di /var/spool/cron/ e sono eseguiti usando i nomi utente degli utenti che li hanno generati. Per per generare un crontab come un utente, inizio attività come quell'utente e scriv il crontab a macchina di ordine - e per pubblicare il crontab dell'utente usando il redattore specificato variabile da ambiente del REDATTORE o di RAPPRESENTAZIONE. La lima usa la stessa disposizione di /etc/crontab. Quando i cambiamenti al crontab sono conservati, il crontab è memorizzato secondo il username ed è scritto alla lima /var/spool/cron/username.

Il demone del cron controlla la lima di /etc/crontab, l'indice di /etc/cron.d/ e l'indice che di /var/spool/cron/ ogni minuto per c'è ne cambia. Se dei cambiamenti sono trovati, sono caricati nella memoria. Quindi, il demone non deve essere ricominciato se una lima del crontab è cambiata.

1.2. Accesso di controllo a Cron

Le lime di /etc/cron.deny e di /etc/cron.allow sono usate per limitare l'accesso a cron. La disposizione di entrambe le lime di controllo di accesso è un username su ogni linea. Whitespace non è consentito in la una o la altra lima. Il demone del cron (crond) non deve essere ricominciato se le lime di controllo di accesso sono modificate. Le lime di controllo di accesso sono lette ogni volta un utente prova ad aggiungere o cancellare un'operazione del cron.

L'utente della radice può utilizzare sempre il cron, senza riguardo ai nomi utente elencati nelle lime di controllo di accesso.

Se la lima cron.allow esiste, solo agli utenti elencati in esso sono permessi usare il cron e la lima di cron.deny è ignorato.

Se cron.allow non esiste, agli utenti elencati in cron.deny non sono permessi usare il cron.

1.3. Iniziando ed arrestando il servizio

Per iniziare il servizio del cron, usi l'inizio del crond di /sbin/service di ordine. Per arrestare il servizio, usi l'arresto del crond di /sbin/service di ordine. È suggerito che iniziate il servizio a tempo del caricamento del sistema.

Dopo per a e job tipo batch

Nessun osservazioni

Nessun osservazioni ancora.

Alimentazione di TrackBack URI

Spiacente, la forma di commento è chiusa attualmente.