NEWS
[gelöst]iobroker startet nur noch manuell, nicht mehr automatisch
-
root@cubietruck:~# sudo systemctl status iobroker
● iobroker.service - LSB: starts ioBroker
Loaded: loaded (/etc/init.d/iobroker.sh)
Active: failed (Result: exit-code) since Mo 2018-01-29 22:34:02 CET; 12min ago
Process: 524 ExecStart=/etc/init.d/iobroker.sh start (code=exited, status=203/EXEC)
Jan 29 22:34:02 cubietruck systemd[524]: Failed at step EXEC spawning /etc/i…r
Jan 29 22:34:02 cubietruck systemd[1]: iobroker.service: control process ex…03
Jan 29 22:34:02 cubietruck systemd[1]: Failed to start LSB: starts ioBroker.
Jan 29 22:34:02 cubietruck systemd[1]: Unit iobroker.service entered failed…e.
Hint: Some lines were ellipsized, use -l to show in full.
root@cubietruck:~#
-
root@cubietruck:~# iobroker stop
iobroker controller daemon is not running
root@cubietruck:~# /etc/init.d/iobroker.sh start
Starting ioBrokerStarting iobroker controller daemon…
iobroker controller daemon started. PID: 994
root@cubietruck:~#
-
ioBroker startet; das Skript iobroker.sh funktioniert also. Wenn ioBroker nach reboot nicht startet, dann noch
update-rc.d iobroker.sh defaults reboot
-
root@cubietruck:~# update-rc.d iobroker.sh defaults
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~#
Startet noch immer nicht automatisch nur manuell
-
Startet noch immer nicht automatisch nur manuell `
Eigenartig.
@blackangel15741:iobroker controller daemon is not running
root@cubietruck:~# /etc/init.d/iobroker.sh start
Starting ioBrokerStarting iobroker controller daemon…
iobroker controller daemon started. PID: 994 `
zeigt doch, dass ioBroker über das Skript startet.An der Stelle bin ich mit meinen bescheidenen Linux-Kenntnissen am Ende.
-
Es startet, dass ist korrekt
aber es startet nur, wenn ich z.B. eingebe
iobroker start.
Aber dass sollte ja im Hintergrund eigentlich alles von alleine laufen.
Ging ja vorher auch. Das System macht täglichl nachts einen reboot.
Das bedeutet, ich muss jeden tag manuell starten.
-
root@cubietruck:~# update-rc.d iobroker.sh defaults
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided! `
Die Aktivierung ist vermutlich nicht erfolgt, weil die alte iobroker.sh mit dem falschen Pfad zu node bereits aktiviert ist. Dann muss man sie wahrscheinlich erst löschen, bevor man das korrigierte Skript aktivieren kann (user root):update-rc.d -f iobroker.sh remove update-rc.d iobroker.sh defaults reboot
-
Connecting to 192.168.178.27 port 22, please wait…
login as:
root@192.168.178.27's password:
____ _ _ _ _
/ _| | | () __| | _ __ _ _ ___| | __
| | | | | | '_ | |/ _ \ | '| | | |/ __| |/ /
| || || | |) | | / || | | || | (| __,|./|_|_|_|| _,|___|_|_\
Welcome to ARMBIAN Debian GNU/Linux 8 (jessie) 4.7.3-sunxi
System load: 0.00 Up time: 8 hours
Memory usage: 2 % of 2012Mb IP: 192.xxx
HDD temp: 46°C
root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~# update-rc.d iobroker.sh defaults
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~# reboot
Unverändert ist über Port 8081 nicht erreichbar.
-
Ich hatte vor ein paar Tagen ein Update über die iobroker Oberfläche gemacht.
Irgendwie stand da
Iobroker Version 3.1.4 glaube ich über browser am Lappi mit Firefox.
Als ich die Probleme hatte mit der Erreichbarkeit habe ich wieder iobroker 2.0.9 glaube ich draufgespielt.
Ob es damit zusammenhängen könnte weiß ich nicht.
-
Ob es damit zusammenhängen könnte weiß ich nicht. `
Nein, wenn Du ioBroker manuell starten kannst und es dann funktioniert, hat es nichts mit dem Autostart zu tun.
@blackangel15741:root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided! `
Diese Meldung hatte ich nicht erwartet. Offenbar wurde iobroker.sh nicht aus den runlevels gelöscht.Habe gerade gelesen, dass die Datei nicht unter /etc/init.d existieren darf, damit dies funktioniert.
` > REMOVING SCRIPTSWhen invoked with the remove option, update-rc.d removes any links in the /etc/rcrunlevel.d directories to the script /etc/init.d/ name. The script must have been deleted already. If the script is still present then update-rc.d aborts with an error message. `
Also vorher umbennen und anschießend wieder zurück in iobroker.sh.cd /etc/init.d mv iobroker.sh iob.sh update-rc.d -f iobroker.sh remove mv iob.sh iobroker.sh update-rc.d iobroker.sh defaults reboot
reboot nur, wenn die Meldungen o.k. sind.
-
Startet immer noch nicht automatisch.
root@cubietruck:~# cd /etc/init.d
root@cubietruck:/etc/init.d# mv iobroker.sh iob.sh
root@cubietruck:/etc/init.d# update-rc.d -f iobroker.sh remove
insserv: script iob.sh: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:/etc/init.d# mv iob.sh iobroker.sh
root@cubietruck:/etc/init.d# update-rc.d iobroker.sh defaults
insserv: script iobroker.sh.save.1: service iobroker.sh already provided!
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:/etc/init.d# reboot
-
root@cubietruck:~# iobroker start
Starting iobroker controller daemon…
iobroker controller daemon started. PID: 949
root@cubietruck:~# cat /opt/iobroker/node_modules/iobroker/install/linux/install
.sh
#!/bin/bash
#Create empty directories
IO_USER=$USER
NODE=
which node
#Create user if first install
#if [ ! -f "/opt/iobroker/conf/iobroker.json" ]; then
# if [ $(cat /etc/passwd | grep "/home" |cut -d: -f1 | grep '^iobroker/t> | wc -l) -eq 0 ]
# then
# read -p "Use current user '$USER' for iobroker? If not, the 'iobroker' user will be created.! [Y/n]" yn
# case $yn in
# [Nn]* ) echo "Create user iobroker …";
# apt-get install sudo;
# useradd iobroker;
# adduser iobroker sudo;
# IO_USER=iobroker;
# break;;
# [Yy]* ) echo "Use user '$USER' for iobroker.";;
# * ) echo "Use user $USER for iobroker.";;
# esac
# else
# IO_USER=iobroker
# fi
#else
if [ $(cat /etc/passwd | grep "/home" |cut -d: -f1 | grep '^iobroker/t> | wc -l) -eq 0 ]
then
IO_USER=$USER
else
IO_USER=iobroker
fi
echo "Use user $IO_USER for install."
#fi
#Modify /etc/couchdb/local.ini. Replace ";bind_address = 127.0.0.1" with "bind_address = 0.0.0.0"
#if grep -Fq ";bind_address = 127.0.0.1" /etc/couchdb/local.ini; then
# sed -i -e 's/;bind_address = 127.0.0.1/bind_address = 0.0.0.0/g' /etc/couchdb/local.ini
# /usr/bin/couchdb -d
# /usr/bin/couchdb -b
#fi
## if iobroker.sh not exists. Copy it
if [ ! -f "/etc/init.d/iobroker.sh" ]; then
cp /opt/iobroker/node_modules/iobroker.js-controller/../iobroker/install/linux/iobroker.sh /etc/init.d/iobroker.sh
fi
if [ ! -f "/usr/bin/iobroker" ]; then
echo 'node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5' > /usr/bin/iobroker
fi
#Set rights
echo "Set permissions…"
#find /opt/iobroker/node_modules/iobroker.js-controller/ -type d -exec chmod 777 {} ;
#find /opt/iobroker/node_modules/iobroker.js-controller/ -type f -exec chmod 777 {} ;
#chown -R $IO_USER:$IO_USER /opt/iobroker/node_modules/iobroker.js-controller/
chmod 755 /etc/init.d/iobroker.sh
chmod 755 /usr/bin/iobroker
#Replace user pi with current user
sed -i -e "s/IOBROKERUSER=.*/IOBROKERUSER=$IO_USER/" /etc/init.d/iobroker.sh
NODE=${NODE////\/}
sed -i -e s/NODECMD=.*/NODECMD=$NODE/ /etc/init.d/iobroker.sh
chown root:root /etc/init.d/iobroker.sh
update-rc.d iobroker.sh defaults
# Start the service!
echo "Start iobroker..."
cd /opt/iobroker/node_modules/iobroker.js-controller/
#chmod 777 * -R
./iobroker start
echo "call http://ip_address:8081/ in browser to get the AdminUI of ioBroker"root@cubietruck:~#
-
Startet immer noch nicht automatisch. `
Da würde ich bei den Meldungen auch nicht erwarten. Interessant ist das
@blackangel15741:root@cubietruck:/etc/init.d# update-rc.d -f iobroker.sh remove
insserv: script iob.sh: service iobroker.sh already provided! `
Offenbar wurde erkannt, dass die Datei lediglich umbenannt wurde. Also muss man die Datei iobroker.sh erst in einen anderen Ordner verschieben und anschließend wieder zurück ?mv /etc/init.d/iobroker.sh /opt/iobroker/ update-rc.d -f iobroker.sh remove mv /opt/iobroker/iobroker.sh /etc/init.d/
-
Unverändert kein automatischer start von iobroker
root@cubietruck:~# mv /etc/init.d/iobroker.sh /opt/iobroker/
root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~# mv /opt/iobroker/iobroker.sh /etc/init.d/
root@cubietruck:~# reboot
-
Was passiert bei ?
mv /etc/init.d/iobroker.sh /opt/iobroker/ update-rc.d -f iobroker.sh remove update-rc.d -f iobroker.sh remove
-
root@cubietruck:~# mv /etc/init.d/iobroker.sh /opt/iobroker/
root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~# service iobroker.sh already provided!
root@cubietruck:~# update-rc.d -f iobroker.sh remove
insserv: script iobroker.sh.save.2: service iobroker.sh already provided!
insserv: script iobroker.sh.save.3: service iobroker.sh already provided!
insserv: script iobroker.sh.save.4: service iobroker.sh already provided!
root@cubietruck:~#
-
Muss jetzt wieder was zurück verschoben werden?
-
Muss jetzt wieder was zurück verschoben werden? `
Später.Es sieht so aus, dass man die Links wohl manuell löschen muss. Was ergibt
ls -l /etc/rc?.d/*iob* ls -l /etc/init.d/*iob*
-
root@cubietruck:~# ls -l /etc/rc?.d/iob
ls: cannot access /etc/rc?.d/iob: No such file or directory
root@cubietruck:~# ls -l /etc/init.d/iob
-rwxr-xr-x 1 root root 1107 Jan 29 20:48 /etc/init.d/iobroker.sh.save
-rwxr-xr-x 1 root root 1135 Jan 29 20:48 /etc/init.d/iobroker.sh.save.1
-rwxr-xr-x 1 root root 1106 Jan 29 20:57 /etc/init.d/iobroker.sh.save.2
-rwxr-xr-x 1 root root 1107 Jan 29 21:52 /etc/init.d/iobroker.sh.save.3
-rwxr-xr-x 1 root root 1107 Jan 29 21:52 /etc/init.d/iobroker.sh.save.4
root@cubietruck:~#
-
Das sind die Übeltäter ! Die sollten gelöscht werden !
rm /etc/init.d/iobroker* ls -l /etc/init.d/iob*