La richiesta di avvio del servizio è stata ripetuta troppo rapidamente, rifiutando di avviarsi


14

Ho creato un servizio su Debian 8.6 e mentre provo ad avviarlo usando il comando service, ricevo un errore.

Ho provato systemctl daemon-reload, ma ottenendo sempre lo stesso risultato.

$ sudo service cloud9 start
$ sudo service cloud9 status
● cloud9.service - cloud9
   Loaded: loaded (/etc/systemd/system/cloud9.service; enabled)
   Active: failed (Result: start-limit) since Thu 2016-10-13 07:21:02 UTC; 2s ago
  Process: 2610 ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin (code=exited, status=216/GROUP)
 Main PID: 2610 (code=exited, status=216/GROUP)

Oct 13 07:21:02 test-vm systemd[1]: cloud9.service: main process exited, code=exited, status=216/GROUP
Oct 13 07:21:02 test-vm systemd[1]: Unit cloud9.service entered failed state.
Oct 13 07:21:02 test-vm systemd[1]: cloud9.service holdoff time over, scheduling restart.
Oct 13 07:21:02 test-vm systemd[1]: Stopping cloud9...
Oct 13 07:21:02 test-vm systemd[1]: Starting cloud9...
Oct 13 07:21:02 test-vm systemd[1]: cloud9.service start request repeated too quickly, refusing to start.
Oct 13 07:21:02 test-vm systemd[1]: Failed to start cloud9.
Oct 13 07:21:02 test-vm systemd[1]: Unit cloud9.service entered failed state.

La configurazione è in /etc/systemd/system/cloud9.service:

[Unit]
Description=cloud9

[Service]
ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin
Restart=always
User=nobody
Group=nobody
Environment=PATH=/bin:/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/user/c9sdk

[Install]
WantedBy=multi-user.target

1
Se l'errore stampato da systemctl non è molto chiaro, potrebbe essere perché la causa principale viene ingoiata e mascherata come avvio generico non riuscito. Un modo forse utile per capire perché non funziona potrebbe essere semplicemente quello di eseguire manualmente il comando specificato nella direttiva ExecStart. Nel mio caso la causa principale mi è venuta in mente.
Ubunfu,

Risposte:


6
2610 ExecStart = / opt / bitnami / nodejs / bin / node /home/user/c9sdk/server.js -w / home / user -l 0.0.0.0 -a admin: admin (codice = uscito, stato = 216 / GROUP)
...
13 ott 07:21:02 test-vm systemd [1]: cloud9.service: processo principale uscito, codice = uscito, stato = 216 / GROUP

... che descrive il problema. Il tuo gruppo nobodynon è un gruppo valido sul tuo sistema. Specificare un gruppo valido.

Ambiente = PATH = / bin: / usr / bin: / usr / local / bin

Questo probabilmente non è necessario.

-w / home / user -l 0.0.0.0

In un mondo migliore, il programma di servizio cloud9 qui avrebbe ricevuto la sua presa di ascolto come un descrittore di file aperto, ed ereditare la sua directory di lavoro (che, ironia della sorte, è stato esplicitamente impostato altrove nell'unità).

Ulteriori letture


2

La rimozione del parametro Restart e l'aggiunta di un utente / gruppo valido mi hanno aiutato a risolvere il problema.

[Unit]
Description=cloud9

[Service]
ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin
User=user
Group=group
Environment=PATH=/bin:/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/user/c9sdk

[Install]
WantedBy=multi-user.target
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.