NEWS
Javascript Instanz steht / wie starten ohne Internet
-
@jan_
Ist das FS noch/wieder RO gemounted? -
Hu. Interessant:
root@iobroker:~# file /usr/bin/iobroker /usr/bin/iobroker: symbolic link to /opt/iobroker/iobroker root@iobroker:~# file /opt/iobroker/iobroker /opt/iobroker/iobroker: empty
Ich tippe darauf: das sollte nicht so sein.
-
@jan_ sagte in Javascript Instanz steht / wie starten ohne Internet:
root@iobroker
Todsünde!
Sofort als user anmelden!Und was machst du da mit file?
Schau dir das mitpi@raspberrypi:/opt/iobroker $ ls -la /usr/bin/iobroker lrwxrwxrwx 1 root root 22 Nov 17 10:24 /usr/bin/iobroker -> /opt/iobroker/iobroker pi@raspberrypi:/opt/iobroker $ ls -la /opt/iobroker/iobroker -rwxr-xr-x+ 1 iobroker iobroker 305 Nov 17 10:24 /opt/iobroker/iobroker
an.
-
Alle Filesysteme sind rw, wenn ich das richtig verstehe. Stimmt das eigentlich dass das so viele sind?
pi@iobroker:~ $ mount | column -t /dev/mmcblk0p2 on / type ext4 (rw,noatime) devtmpfs on /dev type devtmpfs (rw,relatime,size=1827808k,nr_inodes=97777,mode=755) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) proc on /proc type proc (rw,relatime) securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755) tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k) tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755) cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate) cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd) none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700) cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio) cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls) cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer) cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices) cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct) cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset) cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids) sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime) debugfs on /sys/kernel/debug type debugfs (rw,relatime) mqueue on /dev/mqueue type mqueue (rw,relatime) systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=40,pgrp=1,timeout=0,minproto=5,maxproto=5,direct) configfs on /sys/kernel/config type configfs (rw,relatime) /dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro) tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=391980k,mode=700,uid=1000,gid=1000)
Das letztendliche File in /opt ist leer.
Und zwar, soweit ich das verstehe, "nur" leer, also nicht nach /dev/null gelinked, also eigentlich nicht gemasked.pi@iobroker:~ $ ls -la /usr/bin/iobroker lrwxrwxrwx 1 root root 22 Nov 24 11:54 /usr/bin/iobroker -> /opt/iobroker/iobroker pi@iobroker:~ $ ls -la /opt/iobroker/iobroker -rwxr-xr-x+ 1 iobroker iobroker 0 Nov 24 11:54 /opt/iobroker/iobroker
-
@jan_ sagte in Javascript Instanz steht / wie starten ohne Internet:
/opt/iobroker/iobroker
Die 'mask' liegt ja auch nicht auf dem file in /opt/iobroker sondern in den services.
cat /opt/iobroker/iobroker
In der Datei sollte dieses kurze shell-skript drin sein:
#!/bin/bash if (( $# == 1 )) && ([ "$1" = "start" ] || [ "$1" = "stop" ] || [ "$1" = "restart" ]); then sudo systemctl $1 iobroker elif [ "$1" = "fix" ]; then curl -sL https://iobroker.net/fix.sh | bash - else sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@" fi
-
@Thomas-Braun
Danke!
Leider klappt das mit dem unmasken trotzdem nichtpi@iobroker:~ $ sudo systemctl unmask iobroker pi@iobroker:~ $ sudo systemctl unmask iobroker.service pi@iobroker:iobroker start Failed to start iobroker.service: Unit iobroker.service is masked.
;-(
-
cat /opt/iobroker/iobroker
-
@Thomas-Braun said in Javascript Instanz steht / wie starten ohne Internet:
cat /opt/iobroker/iobroker
Naja, das was Du mir gepostet hast - ich habe das File "neu befüllt":
#!/bin/bash if (( $# == 1 )) && ([ "$1" = "start" ] || [ "$1" = "stop" ] || [ "$1" = "restart" ]); then sudo systemctl $1 iobroker elif [ "$1" = "fix" ]; then curl -sL https://iobroker.net/fix.sh | bash - else sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@" fi
"iobroker status" gibt auch einen sinnvollen output - "not running"
Nur beim starten kommt "masked". -
systemctl status iobroker
-
pi@iobroker:~ $ systemctl status iobroker ● iobroker.service Loaded: masked (Reason: Unit iobroker.service is masked.) Active: inactive (dead)
Da ist übrigens weder in /etc/systemd/system/ noch in /etc/init.d/ ein Symlink / File von iobroker zu finden...
-
In einem 'gesunden' System sieht das so aus:
/etc/systemd/system/multi-user.target.wants/iobroker.service /lib/systemd/system/iobroker.service /run/systemd/units/invocation:iobroker.service
Da man jetzt nur ganz schwer nachvollziehen kann, was da warum mit dem System passiert ist (root-login, Aufruf von iobroker mit sudo, schwaches Netzteil, angeschossenes Filesystem usw.) installier das mit neuer Hardware neu und spiel ein Backup ein.
-
@Thomas-Braun
Sehe ich genauso.
Das wird jetzt ein reparieren von Stöckchen zu Stöckchen.
Und wer sagt dass nicht noch mehr Dienste einen Schaden haben.Werde ich machen. Bis dahin muss ich eben die eine Hälfte der Lichter (zigbee) über Phoscon mit der Hand steuern und die shellys über ihre Webinterface.
Wie gesagt: kannst Du einschätzen ob ich mit dem vorliegenden Backup von Backitup "voll versorgt" bin ober ob die Tatsache dass meine Zigbee-Geräte über den Deconz-Stick kommen bedeutet, dass irgendwas fehlt?
Ganz herzlichen Dank für Deinen irrsinnigen Einsatz und die vielen guten Tipps!
Habe wieder viel gelernt. -
@jan_
Für deconz gibt es soweit ich weiß einen eigenen Backup-Prozess, das ist im Backitup nicht drin. -
@Thomas-Braun
Tatsächlich: unter "Menü -> Gateway -> Backup-Optionen" kann man sich eins ziehen. Was bei mir auch noch funktioniert.
Hervorragend.
Wieder was gelernt.
Danke!