Tarefa Upstart no formato systemd

0

Eu examinei os documentos oficiais para a inicialização , mas não consegui replicar meu trabalho do Upstart para o systemd.

Upstart Job:

description  "evercam_media"
start on filesystem or runlevel [2345]
stop on runlevel [!2345]
limit nofile 1000000 1000000

respawn
chdir /
setuid root
setgid root

exec watch -n1 '/usr/local/bin/run_evercam_media.sh'

post-stop exec sudo pkill beam

Eu tenho replicado quase o mesmo ao ler os arquivos doc como

[Unit]
Description=evercam_media
[Service]
User=root
Group=root
WorkingDirectory=/
ExecStart=/bin/sh -ec "exec watch -n1 '/usr/local/bin/run_evercam_media.sh'"
ExecStopPost=sudo pkill beam
Restart=always

[Install]
WantedBy=multi-user.target

Mas quando eu faço systemctl daemon-reload e systemctl status evercam_media.service , só recebo os erros

● evercam_media.service - evercam_media
   Loaded: loaded (/etc/systemd/system/evercam_media.service; enabled; vendor preset: enabled)
   Active: inactive (dead) (Result: exit-code) since Tue 2017-07-18 08:41:23 CEST; 12s ago
  Process: 32596 ExecStart=/bin/sh -ec exec watch -n1 '/usr/local/bin/run_evercam_media.sh' (code=exited, status=1/FAILURE)
 Main PID: 32596 (code=exited, status=1/FAILURE)

Jul 18 08:41:22 Ubuntu-1604-xenial-64-minimal systemd[1]: evercam_media.service: Unit entered failed state.
Jul 18 08:41:22 Ubuntu-1604-xenial-64-minimal systemd[1]: evercam_media.service: Failed with result 'exit-code'.
Jul 18 08:41:23 Ubuntu-1604-xenial-64-minimal systemd[1]: evercam_media.service: Service hold-off time over, scheduling restart.
Jul 18 08:41:23 Ubuntu-1604-xenial-64-minimal systemd[1]: Stopped evercam_media.
Jul 18 08:41:23 Ubuntu-1604-xenial-64-minimal systemd[1]: evercam_media.service: Start request repeated too quickly.
Jul 18 08:41:23 Ubuntu-1604-xenial-64-minimal systemd[1]: Failed to start evercam_media.
root@Ubuntu-1604-xenial-64-minimal:/etc/systemd/system# 

Como eles mencionaram nos documentos .. exec vai ser /bin/sh 'exec' Então eu tentei como acima, mas ele falha. Mas se eu fizer isso no terminal exec watch -n1 '/usr/local/bin/run_evercam_media.sh' Tudo começa.

ATUALIZAÇÃO:

Eu só quero executar o script sh todos 1 segundo e Watch é a ferramenta que acabei usando.

    
por Junaid Farooq 18.07.2017 / 10:22

0 respostas