System Crontab ou Root Crontab

9

Crontab do sistema:

/etc/crontab

Crontab da raiz:

sudo crontab -u root -e

Qual o caminho preferido? Como todos eles executam tarefas dentro do privilégio de administração.

    
por Pei 04.05.2014 / 00:02

2 respostas

13

/etc/crontab é o crontab do sistema.

O formato de /etc/crontab é assim:

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

enquanto crontab -e é por usuário, vale a pena mencionar sem argumento -u o comando crontab vai para o crontab de usuários atuais. Você pode fazer crontab -e -u <username> para editar um crontab de usuários específicos.

Observe que em um crontab por usuário não há campo 'usuário'.

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

Um aspecto de crontabs que pode ser confuso é que a raiz também possui seu próprio crontab. por exemplo. crontab -e -u root não editará /etc/crontab Consulte Configurando o cron .

Em distribuições Linux, os crontabs por usuário são normalmente armazenados em: /var/spool/crontabs/<username>

Referências

link

    
por 04.05.2014 / 00:12
6

/etc/cron.d (e seus irmãos cron.daily / weekly / monthly) é o preferido para todos os crontabs do sistema. Você não deve precisar tocar em / etc / crontab.

É essencial separar as entradas do cron em vários arquivos, com base em sua funcionalidade, se você estiver planejando gerenciar ou automatizar as coisas. Os arquivos em /etc/cron.d podem ser facilmente gerenciados por pacotes ou ferramentas de gerenciamento de configuração, como fantoches e chefs. A crontab da Root OTOH é praticamente não-manutenível por qualquer coisa que não seja humanos.

Então, resumindo, para coisas do sistema você pode usar o /etc/cron.*. Se há algo que você gostaria que o usuário root fizesse, então use o crontab do root. O / etc / crontab deve ser deixado intacto e gerenciado por um pacote.

    
por 04.05.2014 / 00:36

Tags