Em qual usuário os scripts nas pastas cron são executados? (ou seja, cron.daily, cron.hourly, etc)

48

Se eu colocar um script em /etc/cron.daily no CentOS, como ele será executado? Todos eles são executados como root ou como proprietário?

    
por Kyle MacFarlane 14.03.2011 / 07:45

2 respostas

47

Todos eles são executados como root . Se você precisar de outra forma, use su no script ou adicione uma entrada crontab ao crontab do usuário ( man crontab ) ou ao crontab do sistema (cuja localização eu não poderia informar sobre o CentOS).

    
por 14.03.2011 / 07:50
17

Editar: minha resposta não se aplica neste caso, veja o comentário da Zoredache abaixo. Desculpe, todos (especialmente geekosaur). Kyle, note que se você quiser executar um script regularmente como um usuário não-root, o seguinte pode ser útil; basta fazê-lo através do cron.d em vez de cron. {horária, diária, semanal, mensal}.

Eu odeio contradizer, mas temo que o geekossauro não esteja certo. Eles são executados como raiz exceto onde especificado de outra forma . Aqui está parte do arquivo /etc/cron.d/munin da minha caixa do CentOS:

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

Note como, na linha substantiva (linha 3), existe um nome de usuário especificado antes do executável. Esta entrada cron específica é executada como munin do usuário, portanto, desde que seu cron seja semelhante ao CentOS 5 (vixie-cron-4.1-77), você deve ser capaz de fazer o mesmo.

    
por 14.03.2011 / 08:02