/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
Typeažsimple - jinak nastavte
Typenaoneshot
Po provedení změn znovu načtěte konfiguraci pomocí systemctl daemon-reload a spusťte svou službu.