Serviço reinicia a cada 2 minutos

0

Eu instalei meu próprio serviço em:

/etc/systemd/system/MyService.service

com a seguinte configuração:

[Unit]
Description=This is My Awesome service
After=network.target

[Service]
Type=forking
ExecStart=/home/me/myProgram
Restart=always

[Install]
WantedBy=multi-user.target

Eu também fiz isso na inicialização:

sudo systemctl enable MyService.service

Mas, por algum motivo, o serviço é reiniciado com muita frequência, como a cada 2 minutos

O que eu fiz de errado? Como posso corrigi-lo para que ele seja reiniciado somente quando o serviço estiver realmente encerrado?

EDITAR:

Eu posso ver isso reiniciar sem motivo:

me@myUbuntu:~ $ systemctl status MyService.service
● MyService.service - This is My Awesome service
   Loaded: loaded (/etc/systemd/system/MyService.service; enabled)
   Active: activating (start) since Wed 2016-08-17 08:30:27 UTC; 1min 28s ago
  Control: 2550 (MyService)
   CGroup: /system.slice/MyService.service
          └─2550 /home/me/myProgram
me@myUbuntu:~ $ systemctl status MyService.service
● MyService.service - This is My Awesome service
   Loaded: loaded (/etc/systemd/system/MyService.service; enabled)
   Active: activating (start) since Wed 2016-08-17 08:31:57 UTC; 13ms ago
  Control: 2575 (MyService)
   CGroup: /system.slice/MyService.service
           └─2575 /home/me/myProgram
    
por BlueMagma 17.08.2016 / 10:17

1 resposta

1

Se o seu programa existir, o parâmetro "Restart = always" reiniciará o programa. Veja aqui: link para mais detalhes. Também importante:

type=forking: systemd considers the service started up once the process forks and the parent has exited. For classic daemons use this type unless you know that it is not necessary. You should specify PIDFile= as well so systemd can keep track of the main process.

Portanto, se o systemd precisar rastrear o processo, será necessário criar um arquivo pid.

    
por 0x0C4 17.08.2016 / 10:38