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

14

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

Até agora, como eu entendo a única diferença entre crontabs do usuário e os etc é que você tem que especificar o usuário como a 6ª coluna. Está certo?

E minha principal pergunta, para a qual não encontrei resposta em nenhum lugar da internet: Qual é o caminho certo para usar @reboot em /etc/cron.d ou / etc / crontab?

algo como @reboot root command ?

    
por hyperknot 28.01.2014 / 13:47

2 respostas

15

De a página do manual crontab :

Jobs in /etc/cron.d/

The jobs in cron.d are system jobs, which are used usually for more than one user. That's the reason why is name of the user needed. MAILTO on the first line is optional.

EXAMPLE FOR JOB IN /etc/cron.d/job

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

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

Novamente na mesma página do manual:

These special time specification "nicknames" are supported, which replace the 5 initial time and date fields, and are prefixed by the '@' character:

@reboot : Run once after reboot.

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

   @reboot user_name command

está correto .

    
por 28.01.2014 / 15:12
1

No caso de /etc/crontab , basta adicionar essas linhas.

@reboot        command

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

    
por 28.01.2014 / 14:03

Tags