Por que converter TIMER para SERVICE?
No systemd, estas são duas metades de uma tarefa: o .timer diz quando, e o .SERVICE diz o quê. Portanto, a tarefa realista não é a conversão, mas a escrita da unidade de serviço correspondente que o timer aciona, seja por correspondência de nome padrão ou via diretiva Unit=.
Como converter TIMER para SERVICE
Qualquer editor de texto FREE
Crie um arquivo com o mesmo nome base, por exemplo, backup.service ao lado de backup.timer, adicionando uma seção [Service] com ExecStart= definido para o seu comando; o timer o aciona automaticamente pelo nome.
systemctl edit FREE
Execute systemctl edit --full --force backup.service para abrir uma nova unidade no diretório correto, defina ExecStart=, depois execute systemctl daemon-reload e habilite o timer.
Sobre estes formatos
Um arquivo .timer é uma unidade do systemd que agenda quando outra unidade (geralmente um arquivo .service correspondente) deve ser executada no Linux, funcionando como um substituto…
Abrir detalhes de .TIMER →Um arquivo .SERVICE está associado ao Mac OS X Service Application, um arquivo do tipo system.
Abrir detalhes de .SERVICE →Qualidade e o que observar
- Por padrão, um
backup.timerativa obackup.service; useUnit=na seção[Timer]do timer apenas se o nome do serviço for diferente. - O serviço deve ser tipicamente
Type=oneshotpara tarefas agendadas, para que o systemd trate cada execução como um trabalho discreto. - Após criar ou alterar a unidade, execute
systemctl daemon-reloadou o timer não reconhecerá o novo serviço.
Perguntas frequentes
Um timer pode funcionar sem um serviço?
.service correspondente que define o comando.Como o timer sabe qual serviço executar?
foo.timer executa foo.service), a menos que você o substitua com Unit= no arquivo do timer.Eu habilito o timer ou o serviço?
.timer; o systemd iniciará o serviço conforme o agendamento para você.Onde ficam esses arquivos de unidade?
/etc/systemd/system/ para unidades de todo o sistema; execute systemctl daemon-reload após editar.