Hallo zusammen,
ich kenne das Prblem mit dem fehlenden Autostart nur zu gut.
Komischerweise habe ich das Problem ausschließlich bei der PI3 Serie.
Bei meinen PiZeroW hatte ich noch nie dieses Problem.
Bei mir hat es letztendlich so funktioniert:
(Ich möchte nicht behaupten, dass dieser technisch korrekt ist. Ich bin auch kein Linux Profi !)
Checkt mal welche NPM ihr installiert habt.
bei der 4.x wird die /etc/init.d/iobroker.sh überhaupt nicht angelegt. siehe auch HIER
Btw: die NPM4 musste ich installieren, da sich mit der aktuellsten NPM der AmazonDash Button Adapter nicht installieren ließ.
am besten Ihr legt in diesen Fall die iobroker.sh zunächst mal mit folgendem Inhalt an: (alles mit Sudo)
#!/bin/bash
### BEGIN INIT INFO
# Provides: iobroker.sh
# Required-Start: $network $local_fs $remote_fs
# Required-Stop:: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts ioBroker
# Description: starts ioBroker
### END INIT INFO
(( EUID )) && echo .You need to have root privileges.. && exit 1
PIDF=/opt/iobroker/node_modules/iobroker.js-controller/lib/iobroker.pid
NODECMD=/usr/bin/node
IOBROKERCMD=/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js
RETVAL=0
IOBROKERUSER=root
start() {
export IOBROKER_HOME=@@HOME@@
echo -n "Starting ioBroker"
sudo -u ${IOBROKERUSER} $NODECMD $IOBROKERCMD start
RETVAL=$?
}
stop() {
echo -n "Stopping ioBroker"
sudo -u ${IOBROKERUSER} $NODECMD $IOBROKERCMD stop
RETVAL=$?
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage: iobroker {start|stop|restart}"
exit 1
;;
esac
exit $RETVAL
Alles anzeigen
chmod habe ich 777 vergeben
Anschließend habe ich noch die rc.local im Verzeichnisch /etc/ angepasst:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
iobroker start
exit 0
Alles anzeigen
Neustarten und hoffen
Viel Erfolg
Über Eure Rückmeldung/Verbesserung würde ich mich freuen.
Wauzzi