Differenza tra / etc / crontab e “crontab -e”


42

Qual è la differenza tra il crontab situato in /etc/crontabe il crontab che può essere modificato usando crontab -e?

Risposte:


51

Come ha detto Ignacio, /etc/crontabè il crontab del sistema.

Il formato di /etc/crontabè così:

# m h dom mon dow user      command
*   *  *   *   *  someuser  echo 'foo'

mentre crontab -eè per utente, vale la pena menzionare senza alcun -uargomento il comando crontab va al crontab degli utenti attuali. Puoi fare crontab -e -u <username>per modificare un crontab di utenti specifici.

Si noti che in un crontab per utente non esiste un campo "utente".

# m h  dom mon dow  command
*   *   *   *   *   echo 'foo'

Un aspetto dei crontab che può essere fonte di confusione è che anche root ha il suo crontab. ad es. crontab -e -u rootnon modificherà /etc/crontab Vedi Configurazione cron .

Nella maggior parte delle distro Linux, i crontab per utente sono generalmente memorizzati in: /var/spool/cron/crontabs/<username>(vixie-cron).

Le distribuzioni basate su RHEL sono archiviate in /var/spool/cron/<username>. (Cronie)


Cordiali saluti, il percorso indicato sopra non è corretto: i crontab per utente sono memorizzati in / var / spool / cron / crontabs / <nomeutente> (ho provato due volte a inviare questa semplice correzione.)
MartyMacGyver

1
... ed è corretto ora.
MartyMacGyver

In realtà, è archiviato /var/spool/cron/rootper il crontab per utente di root su un sistema RHEL 6. Non ho controllato Ubuntu, ma dire "in genere" sembra un po 'allungato.
Carattere jolly

@Wildcard Penso che "in genere" sia una parola giusta da usare. Le navi distro RHEL con "cronie" (e anacron credo) che è il loro fork di ISC-Cron / vixie cron. Non penso che sia un tratto, in ogni caso ho aggiornato la mia risposta per includere ulteriori dettagli.
skrewler,

Per una rapida ricerca dei percorsi attraverso le distro, cerca la stringa path[crontabs]nella libreria "percorsi" di CFEngine e controlla il contesto (le linee di contesto precedenti sembrano come ad es redhat::.). C'è più variazione di quanto pensi; es. SUSE li inserisce /var/spool/cron/tabs. (Astrarre le differenze di distribuzione è uno dei motivi per cui CFEngine è stato originariamente creato, quindi spesso è un buon riferimento.)
Wildcard

5

Uno è il crontab di sistema e può essere modificato solo dal root, l'altro è il crontab dell'utente e può essere modificato da un utente ed esiste per utente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.