Como usar o @reboot no /etc/cron.d


16

Estou migrando as crontabs de usuários individuais para /etc/cron.d, pois isso permitiria backup, restauração e controle de versão adequados.

Até agora, pelo que entendi, a única diferença entre os crontabs do usuário e os etc é que você precisa especificar o usuário como a 6ª coluna. Isto está certo?

E a minha pergunta principal, para a qual não consegui encontrar a resposta em nenhum lugar da Internet: Qual é a maneira correta de usar @rebootno /etc/cron.d ou / etc / crontab?

algo parecido @reboot root command?

Respostas:


19

Na página de manual do crontab :

Empregos em /etc/cron.d/

As tarefas no cron.d são tarefas do sistema, usadas normalmente para mais de um usuário. Essa é a razão pela qual é necessário o nome do usuário. MAILTO na primeira linha é opcional.

EXEMPLO PARA TRABALHO EM /etc/cron.d/job

 #login as root
 #create job with preferred editor (e.g. vim)
 MAILTO=root
 * * * * * root touch /tmp/file

Essa é a seção inteira sobre o crontab no / etc , então acho que a inclusão do usuário em cujo nome o job é executado é realmente a única diferença.

Novamente na mesma página do manual:

Esses "apelidos" de especificação de horário especial são suportados, que substituem os 5 campos de data e hora iniciais e são prefixados pelo caractere '@':

@reboot: Execute uma vez após a reinicialização.

Portanto, sua inferência de que a maneira correta de usar o @reboot é

   @reboot user_name command

está correto .


1

No caso de /etc/crontabvocê apenas tem que adicionar essas linhas.

@reboot        command

Onde o comando pode ser qualquer script ou um único arquivo.


Isso funciona? /etc/crontabgeralmente requer um nome de usuário.
Mwfearnley #

1

Se você o estiver executando interativamente, como abaixo, não especifique o usuário:

crontab -e
@reboot /root/mycommand

Se você o colocar como um arquivo em /etc/cron.d, por exemplo, /etc/cron.d/mycronfile, será necessário colocar o usuário:

@reboot root /root/mycommand
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.