Arquivos em / var / spool / cron (ou / var / spool / cron / crontabs ou / var / spool / cron / tabs em alguns sistemas) serão executados com as permissões do usuário para quem o arquivo é nomeado. Por exemplo, / var / spool / cron / root será executado como usuário "root" e / var / spool / cron / tom_13 será executado como usuário "tom_13".
Se um arquivo crontab for renomeado para outro usuário válido, ele deverá ser executado como esse usuário. No entanto, existem duas ressalvas:
- Se você renomear um crontab para um nome de arquivo que não corresponda a um usuário válido, não sei qual é o comportamento esperado. Pode ser executado como root, pode ser executado como o usuário que possui o arquivo ou pode não ser executado.
- Alguns daemons cron não verificam as alterações no / var / spool / cron, a menos que você faça essas alterações com o comando
crontab
. Se você for fazer alterações manualmente, pode ser necessário reiniciar o daemon do cron para que elas sejam efetivadas.
Verifique a página man do crontab ( man 1 crontab
) para ver como funciona. Se você estiver usando o Vixie cron (que a maioria das distribuições Linux parece favorecer atualmente), você pode fazer o seguinte para fazer um crontab de um usuário rodar como um usuário diferente (mesmo efeito de renomear o arquivo, mas mais seguro):
- Salve o crontab do usuário antigo em um arquivo:
crontab -u olduser -l > olduser.cron
- Importe para o novo crontab do usuário:
crontab -u newuser olduser.cron
- Exclua o crontab do usuário antigo:
crontab -u olduser -r