NEWS
Javascript Instanz steht / wie starten ohne Internet
-
@jan_
Ich würde da nicht dran rumdoktorn sondern auf einer frischen Karte das Betriebssystem flugs aufspielen, per Einzeiler iobroker drauf, den Backitup-Adapter und dann das Backup einspielen. -
@Thomas-Braun said in Javascript Instanz steht / wie starten ohne Internet:
@jan_
Ich würde da nicht dran rumdoktorn sondern auf einer frischen Karte das Betriebssystem flugs aufspielen, per Einzeiler iobroker drauf, den Backitup-Adapter und dann das Backup einspielen.Danke - aber "flugs" ist leider nicht: Kabel-Internet ist kaputt, ich hab nur LTE und ein Raspbian-Image hat knapp 2GB.
Ich habe hier ein Raspbian lite-image von Herbst 2019, aber das wird zu hunderten MB updates führen.
Ich glaube ich pausiere hier und ziehe mir morgen ein neueres image woanders wo ich WLAN bekomme.Kurze Verständnisfrage:
Wenn ich iobroker & Phoscon (Deconz) installiere und dann ein "backitup"-backup einspiele... hat phoscon (Deconz) dann die ganzen Zigbee-Geräte auch wieder drin oder muss ich die neu anlernen? Also ich meine: Deconz ist ja eine eigene getrennte Applikation, hat das evtl. eine eigene Datenbasis die man sicher müsste?
Ich probiere es aus - zurück auf die kaputte Karte kann ich immer noch.Danke Dir für die viele Hilfe!
-
Da fällt mir grad ein mal zu probieren...
pi@iobroker:~ $ sudo systemctl start iobroker Failed to start iobroker.service: Unit iobroker.service is masked.
"masked" ist doch gegen /dev/null gelinked?
WTF?
Oder ist das weil man das bitte nicht über systemctl starten soll? -
@jan_
Doch, natürlich startet das über systemd:pi@raspberrypi:/opt/iobroker $ systemctl status iobroker ● iobroker.service - ioBroker Server Loaded: loaded (/lib/systemd/system/iobroker.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2020-11-24 12:46:45 CET; 39min ago Docs: http://iobroker.net Main PID: 28366 (node) Tasks: 143 (limit: 4915) CGroup: /system.slice/iobroker.service ├─28366 iobroker.js-controller ├─28390 io.admin.0 ├─28466 io.alexa2.0 ├─28505 io.backitup.0 ├─28540 io.javascript.0 ├─28620 io.mihome.0 ├─28654 io.nuki-extended.0 ├─28730 io.tado.0 ├─28769 io.tr-064.0 ├─28808 io.tradfri.0 ├─28880 io.web.0 ├─28918 io.info.0 └─29153 io.whatsapp-cmb.0 Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.nuki-extended.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.tado.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.tr-064.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.tradfri.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.vodafone-speedtest.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.web.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.info.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.whatsapp-cmb.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.deconz.0" for host "raspberrypi" Nov 24 12:46:47 raspberrypi bash[28366]: host.raspberrypi check instance "system.adapter.samsung-community.0" for host "raspberrypi"
-
sudo systemctl unmask iobroker
-
@Thomas-Braun
ein sehr naheliegender Gedanke. Leider Zonk.pi@iobroker:~ $ sudo systemctl unmask iobroker pi@iobroker:~ $ sudo systemctl start iobroker Failed to start iobroker.service: Unit iobroker.service is masked.
-
@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!