Con quale utente vengono eseguiti gli script nelle cartelle cron? (ad es. cron.daily, cron.hourly, ecc.)


51

Se inserisco uno script in /etc/cron.daily su CentOS, quale utente verrà eseguito? Funzionano tutti come root o come proprietario?

Risposte:


52

Corrono tutti come root. In caso contrario, utilizzare sunello script o aggiungere una voce crontab al crontab ( man crontab) dell'utente o al crontab a livello di sistema (la cui posizione non potrei dirti su CentOS).


17

Modifica: la mia risposta non si applica in questo caso, vedere il commento di Zoredache di seguito. Siamo spiacenti, tutti (specialmente geekosaur). Kyle, nota che se vuoi eseguire uno script regolarmente come utente non root, potrebbe essere utile quanto segue; basta farlo tramite cron.d anziché cron. {orario, giornaliero, settimanale, mensile}.

Odio contraddire, ma temo che il geekosaur non sia del tutto corretto. Funzionano come root tranne dove diversamente specificato . Ecco parte del /etc/cron.d/muninfile del mio box CentOS :

# cron-jobs for munin
MAILTO=root
1-56/5 * * * *     munin /usr/share/munin/munin-limits --force

Nota come, sulla riga sostanziale (riga 3), c'è un nome utente specificato prima dell'eseguibile. Questa particolare voce cron funziona come utente munin, quindi purché il tuo cron sia simile a CentOS 5 (vixie-cron-4.1-77), dovresti essere in grado di fare altrettanto.


3
Sembra che stia parlando specificamente di cron.daily e cron.weekly, e non di cose in cron.d / *.
Zoredache,

4
D'oh! Grazie, Zoredache; Dovrei leggere la domanda più attentamente. Ancora niente caffè! Lo eliminerei, ma penso che ci siano ancora informazioni utili nella mia risposta - non solo per l'OP - quindi sono un po 'propenso a lasciarlo stare. Cosa ne pensi? (Ci scusiamo per il salto errato, geekosaur).
MadHatter supporta Monica

geekosaur ha risposto alla mia domanda di base ma non ho mai saputo a cosa serva effettivamente la cartella cron.d. cron.daily, ecc. sono piuttosto evidenti, come crontab. Ma dove si trova cron.d al suo interno?
Kyle MacFarlane,

1
Hai già capito che l'idea di utilizzare le directory anziché i singoli file per l'archiviazione delle raccolte è che rende più semplice per un pacchetto aggiungere una voce: basta rilasciare un file in una directory, invece di provare qualche complessa invocazione sed per modificare blocchi di testo dentro e fuori dai file ...
MadHatter supporta Monica

... Nel caso di Munin, deve eseguire un lavoro ogni cinque minuti e non come root. Questo è un esempio perfetto del perché cron. {Hourly, ecc.} Non è adatto a tutti; alcuni lavori cron vogliono ancora essere in grado di specificare una frequenza, e forse un utente, e per loro cron.d è meglio. Altri no, e per loro, cron. {Hourly, ecc.} È più semplice, in quanto eseguono semplicemente il dump di uno script anziché di uno script più un wrapper di temporizzazione / impostazione utente.
MadHatter supporta Monica
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.