/etc/systemd/system
složka:
[Unit]
Description=WSO2 IoT Message broker
[Service]
Environment="JAVA_HOME=/usr/lib/jvm/java-8-oracle"
Type=forking
ExecStart=/home/ubuntu/wso2iot-3.1.0/bin/broker.sh
[Install]
WantedBy=multi-user.target
Vážím si spuštění jednoho z mudlů serveru WSO2 IoT, ale na tom nezáleží.
Když spustím tento bash
skript ručně, načítá se dlouhou dobu a udržuje se ve spuštěném režimu, protože na něm běží něco jako aplikace webového serveru, která pak zabírá konkrétní port.
Když spustím tuto službu takto:
sudo systemctl start myservice.service
Trvá to dlouho a pak se ozve:Start operation timed out. Terminating.
Potřebuji, aby byla tato služba spuštěna navždy, dokud ji ručně nezastavím.
Co mi chybělo v konfiguračním souboru služby?
Přijatá odpověď:
Nastavte Type
vašeho servisního skriptu buď na simple
nebo oneshot
. V závislosti na chování skriptu shellu, který je spuštěn.
- Pokud skript shellu běží nekonečná smyčka a neukončí se, nastavte
Type
ažsimple
- jinak nastavte
Type
naoneshot
Po provedení změn znovu načtěte konfiguraci pomocí systemctl daemon-reload
a spusťte svou službu.