NEWS
iob diag - Skript
-
Doch, testen geht hier:
https://forum.iobroker.net/topic/68035/iob-node-fix-skript -
Eine Frage zu deinem Diag-Skript. Die ausstehenden OS Updates wird ja folgendermaßen ermittelt:
echo -e "\033[34;107m*** OS-Repositories and Updates ***\033[0m"; sudo apt-get update 1>/dev/null && sudo apt-get update APT=$(apt-get upgrade -s |grep -P '^\d+ upgraded'|cut -d" " -f1) echo -e "Pending Updates: $APT";
Warum wird der Befehl 'sudo apt-get update' zweimal ausgeführt?
Ich wollte im ioBroker mittels Javascript die Anzahl der OS Updates ermitteln.
exec('sudo apt-get update && apt-get upgrade -s', function (error, stdout, stderr) { let result = stdout.match(/[0-9]+ aktualisiert/g); if (result) { let result2 = result[0].split(' '); console.log('OS Updates: ' + String(result2[0])); } });
Der Code funktioniert auch mit 1x 'sudo apt-get update'. Übersehe ich da was?
-
@pk68 sagte in iob diag - Skript:
Warum wird der Befehl 'sudo apt-get update' zweimal ausgeführt?
Hat rein optische Gründe. Beim ersten Aufruf hast du da (mehr) GET-Meldungen drin. Die wollte ich ausblenden.
€dit: Deswegen landet die Ausgabe auch im Null-device.
-
Ok, danke.
-
Kann mir jemand mit einem Docker mal die aktuelle Ausgabe von
iob diag
posten? Danke schön!
-
@thomas-braun sagte in iob diag - Skript:
Kann mir jemand mit einem Docker mal die aktuelle Ausgabe von
Ist eine kleine Test-Installation. Hoffe, das reicht.
Skript v.2023-10-10 *** BASE SYSTEM *** Hardware Vendor : Intel(R) Client Systems Kernel : x86_64 Userland : amd64 Docker : v9.0.1 Virtualization : Docker Kernel : x86_64 Userland : amd64 Systemuptime and Load: 21:20:37 up 16 days, 1:21, 0 user, load average: 0.58, 0.76, 0.64 CPU threads: 4 *** Time and Time Zones *** Thu Oct 26 19:20:37 UTC 2023 Thu Oct 26 21:20:37 CEST 2023 CEST +0200 Etc/UTC *** User and Groups *** root /root root *** X-Server-Setup *** X-Server: false Desktop: Terminal: *** MEMORY *** total used free shared buff/cache available Mem: 16G 5.9G 434M 108M 10G 10G Swap: 4.3G 16M 4.3G Total: 20G 6.0G 4.7G 15718 M total memory 5665 M used memory 4923 M active memory 8757 M inactive memory 414 M free memory 1187 M buffer memory 8783 M swap cache 4095 M total swap 16 M used swap 4079 M free swap *** FILESYSTEM *** Filesystem Type Size Used Avail Use% Mounted on overlay overlay 63G 20G 41G 33% / tmpfs tmpfs 64M 0 64M 0% /dev shm tmpfs 64M 0 64M 0% /dev/shm /dev/nvme0n1p3 ext4 63G 14G 47G 23% /opt/iobroker /dev/nvme0n1p2 ext4 63G 20G 41G 33% /etc/hosts tmpfs tmpfs 7.7G 0 7.7G 0% /proc/acpi tmpfs tmpfs 7.7G 0 7.7G 0% /proc/scsi tmpfs tmpfs 7.7G 0 7.7G 0% /sys/firmware Messages concerning ext4 filesystem in dmesg: dmesg: read kernel buffer failed: Operation not permitted Show mounted filesystems \(real ones only\): TARGET SOURCE FSTYPE OPTIONS /opt/iobroker /dev/nvme0n1p3[/iobroker2] ext4 rw,relatime /opt/userscripts /dev/nvme0n1p3[/userscripts] ext4 rw,relatime /etc/resolv.conf /dev/nvme0n1p2[/var/lib/docker/containers/1692bf02133947c23fc1042a4cdfa5caf0fcc3ece1c5f76e03a4a84b7cf3d709/resolv.conf] ext4 rw,relatime /etc/hostname /dev/nvme0n1p2[/var/lib/docker/containers/1692bf02133947c23fc1042a4cdfa5caf0fcc3ece1c5f76e03a4a84b7cf3d709/hostname] ext4 rw,relatime /etc/hosts /dev/nvme0n1p2[/var/lib/docker/containers/1692bf02133947c23fc1042a4cdfa5caf0fcc3ece1c5f76e03a4a84b7cf3d709/hosts] ext4 rw,relatime Files in neuralgic directories: /var: 16M /var/ 13M /var/lib/dpkg 13M /var/lib 12M /var/lib/dpkg/info 1.9M /var/cache /opt/iobroker/backups: 1.3M /opt/iobroker/backups/ /opt/iobroker/iobroker-data: 34M /opt/iobroker/iobroker-data/ 14M /opt/iobroker/iobroker-data/files 13M /opt/iobroker/iobroker-data/files/admin.admin/custom/static/js 13M /opt/iobroker/iobroker-data/files/admin.admin/custom/static 13M /opt/iobroker/iobroker-data/files/admin.admin/custom The five largest files in iobroker-data are: 20M /opt/iobroker/iobroker-data/objects.jsonl 6.3M /opt/iobroker/iobroker-data/files/admin.admin/custom/static/js/vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_js-node_modules_iobr-99c23e.847b8ad9.chunk.js.map 2.8M /opt/iobroker/iobroker-data/files/admin.admin/custom/static/js/vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_js-node_modules_iobr-99c23e.847b8ad9.chunk.js 1.6M /opt/iobroker/iobroker-data/files/admin.admin/custom/static/js/vendors-node_modules_mui_material_Accordion_index_js-node_modules_mui_material_AccordionDetai-57e02d.0886b730.chunk.js.map 652K /opt/iobroker/iobroker-data/files/admin.admin/custom/static/js/vendors-node_modules_mui_material_index_js.40e01f69.chunk.js.map USB-Devices by-id: USB-Sticks - Avoid direct links to /dev/* in your adapter setups, please always prefer the links 'by-id': find: '/dev/serial/by-id/': No such file or directory *** NodeJS-Installation *** /usr/bin/nodejs v18.18.2 /usr/bin/node v18.18.2 /usr/bin/npm 9.8.1 /usr/bin/npx 9.8.1 /usr/bin/corepack 0.19.0 nodejs: Installed: 18.18.2-1nodesource1 Candidate: 18.18.2-1nodesource1 Version table: *** 18.18.2-1nodesource1 100 100 /var/lib/dpkg/status Temp directories causing npm8 problem: 0 No problems detected Errors in npm tree: *** ioBroker-Installation *** ioBroker Status iobroker is running on this host. At least one iobroker host is running. Objects type: redis States type: redis Core adapters versions js-controller: 5.0.14 admin: 6.11.0 javascript: "javascript" not found Adapters from github: 0 Adapter State + system.adapter.admin.0 : admin : iobroker2 - enabled, port: 8081, bind: 0.0.0.0, run as: admin + system.adapter.awtrix-light.0 : awtrix-light : iobroker2 - enabled + system.adapter.backitup.0 : backitup : iobroker2 - enabled + instance is alive Enabled adapters with bindings + system.adapter.admin.0 : admin : iobroker2 - enabled, port: 8081, bind: 0.0.0.0, run as: admin ioBroker-Repositories stable : http://download.iobroker.net/sources-dist.json beta : http://download.iobroker.net/sources-dist-latest.json Active repo(s): stable, beta Installed ioBroker-Instances Used repositories: stable, beta Adapter "admin" : 6.12.0 , installed 6.11.0 [Updatable] Adapter "awtrix-light" : 0.10.0 , installed 0.9.2 [Updatable] Adapter "backitup" : 2.8.7 , installed 2.8.7 Controller "js-controller": 5.0.14 , installed 5.0.14 Objects and States Please stand by - This may take a while Objects: 202 States: 128 *** OS-Repositories and Updates *** Hit:1 http://deb.debian.org/debian bookworm InRelease Hit:2 http://deb.debian.org/debian bookworm-updates InRelease Hit:3 https://repos.influxdata.com/debian stable InRelease Hit:4 http://deb.debian.org/debian-security bookworm-security InRelease Hit:5 https://deb.nodesource.com/node_18.x nodistro InRelease Reading package lists... Pending Updates: 0 *** Listening Ports *** Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name tcp 0 0 127.0.0.11:42087 0.0.0.0:* LISTEN 0 69068993 - tcp6 0 0 :::8081 :::* LISTEN 1000 69072792 - udp 0 0 127.0.0.11:41594 0.0.0.0:* 0 69068992 - *** Log File - Last 25 Lines *** 2023-10-26 21:17:14.559 - info: host.iobroker2 instance system.adapter.admin.0 started with pid 840 2023-10-26 21:17:14.561 - info: host.iobroker2 Delete state "system.host.iobroker2.versions.npmNewestNext" 2023-10-26 21:17:14.562 - info: host.iobroker2 Delete state "system.host.iobroker2.versions.nodeCurrent" 2023-10-26 21:17:14.563 - info: host.iobroker2 Some obsolete host states deleted. 2023-10-26 21:17:15.057 - info: admin.0 (840) starting. Version 6.11.0 in /opt/iobroker/node_modules/iobroker.admin, node: v18.18.2, js-controller: 5.0.14 2023-10-26 21:17:15.072 - info: admin.0 (840) requesting all objects 2023-10-26 21:17:15.251 - info: admin.0 (840) received all objects 2023-10-26 21:17:15.340 - info: admin.0 (840) Request actual repository... 2023-10-26 21:17:15.348 - info: admin.0 (840) socket.io server listening on port 8081 2023-10-26 21:17:15.349 - info: admin.0 (840) http server listening on port 8081 2023-10-26 21:17:15.349 - info: admin.0 (840) Use link "http://127.0.0.1:8081" to configure. 2023-10-26 21:17:15.497 - info: host.iobroker2 Updating repository "stable" under "http://download.iobroker.net/sources-dist.json" 2023-10-26 21:17:15.574 - error: admin.0 (840) Cannot update news: TypeError: newNews.forEach is not a function 2023-10-26 21:17:16.743 - info: host.iobroker2 Updating repository "beta" under "http://download.iobroker.net/sources-dist-latest.json" 2023-10-26 21:17:18.313 - info: admin.0 (840) Repository received successfully. 2023-10-26 21:17:18.581 - info: host.iobroker2 instance system.adapter.backitup.0 started with pid 879 2023-10-26 21:17:19.016 - info: backitup.0 (879) starting. Version 2.8.7 in /opt/iobroker/node_modules/iobroker.backitup, node: v18.18.2, js-controller: 5.0.14 2023-10-26 21:17:19.038 - info: backitup.0 (879) [iobroker] backup will be activated at 02:40 every 1 day(s) 2023-10-26 21:17:19.888 - info: admin.0 (840) ==> Connected system.user.admin from ::ffff:192.168.1.98 2023-10-26 21:17:22.577 - info: host.iobroker2 instance system.adapter.awtrix-light.0 started with pid 894 2023-10-26 21:17:22.998 - info: awtrix-light.0 (894) starting. Version 0.9.2 in /opt/iobroker/node_modules/iobroker.awtrix-light, node: v18.18.2, js-controller: 5.0.14 2023-10-26 21:17:23.028 - info: awtrix-light.0 (894) Starting - connecting to http://192.168.0.111:80/ 2023-10-26 21:17:23.052 - info: awtrix-light.0 (894) error ENETUNREACH from stats: connect ENETUNREACH 192.168.0.111:80 2023-10-26 21:17:44.896 - info: admin.0 (840) <== Disconnect system.user.admin from ::ffff:192.168.1.98 admin 2023-10-26 21:18:04.555 - info: admin.0 (840) ==> Connected system.user.admin from ::ffff:192.168.1.98
======================= SUMMARY ======================= v.2023-10-10 model name : Intel(R) Core(TM) i3-10110U CPU @ 2.10GHz Kernel : x86_64 Userland : amd64 Docker : v9.0.1 Installation: Docker Kernel: x86_64 Userland: amd64 Timezone: Etc/UTC User-ID: 0 X-Server: false Pending OS-Updates: 0 Pending iob updates: 2 Nodejs-Installation: /usr/bin/nodejs v18.18.2 /usr/bin/node v18.18.2 /usr/bin/npm 9.8.1 /usr/bin/npx 9.8.1 /usr/bin/corepack 0.19.0 Recommended versions are nodejs 18.18.2 and npm 9.8.1 Your nodejs installation is correct MEMORY: total used free shared buff/cache available Mem: 16G 6.0G 388M 108M 10G 10G Swap: 4.3G 16M 4.3G Total: 20G 6.0G 4.7G Active iob-Instances: 4 Active repo(s): stable, beta ioBroker Core: js-controller 5.0.14 admin 6.11.0 ioBroker Status: iobroker is running on this host. At least one iobroker host is running. Objects type: redis States type: redis Status admin and web instance: + system.adapter.admin.0 : admin : iobroker2 - enabled, port: 8081, bind: 0.0.0.0, run as: admin Objects: 202 States: 128 Size of iob-Database: 20M /opt/iobroker/iobroker-data/objects.jsonl 404K /opt/iobroker/iobroker-data/states.jsonl =================== END OF SUMMARY ====================
-
@marc-berg sagte in iob diag - Skript:
Ist eine kleine Test-Installation. Hoffe, das reicht.
Ja, ich will nur mal sehen was auf dem Docker nicht funktioniert und das dann ausklammern.
Danke schön!
-
Hallo zusammen,
ich versuche gerade einzugrenzen warum ich nicht von node.js 18.17 auf die 18.18 komme.
Leider bekomme ich das Skript so nicht ausgeführt, weil er das Kennwort für den ioBroker user verlangt.Ich melde mich via. "normal" Account und SSH an. Wechsle dann auf den root, weil der normal Account keine Rechte hat und führe das Skript wie folgt aus:
root@ioBroker:/home/administrator# sudo --user=iobroker iob diag
Wenn ich es mit dem administrator ausführe, steht dort, dass dieser keine Rechte hat im Namen von iobroker etwas auszuführen.
Was mache ich hier falsch?
Grüße
-
@hc-yami Also wenn du es normal aufgesetzt hast dann sollte sudo für deinen user eingerichtet sein und du kannst das skript normal starten und er fragt nach dem Passwort des users
-
@apollon77 die Installation ist leider schon sehr lange her. Nutze ioBroker schon seit den anfängen.
Ich denke die Installation war durch eine damalige Vorlage auf der Webseite.Wenn ich das Skript via. "normalen" User, in meinem Fall administrator starte, bekomme ich folgende Meldung:
administrator@ioBroker:~$ sudo iob fix [sudo] Passwort für administrator: Leider darf der Benutzer administrator »/usr/bin/iob fix« als root auf ioBroker nicht ausführen.
Starte ich das Skript als root, erhalte ich folgende Meldung:
root@ioBroker:/home/administrator# iob diag This script must not be run as root! Please use your standard user!
iob fix hatte ich schon ausgeführt. Auch ein reboot ist durch.
-
-
@thomas-braun said in iob diag - Skript:
groups
schön, dass es die kleinen Dinge sind.
Hab den Nutzer nun über
su - usermod -aG iobroker administrator
hinzugefügt.
administrator@ioBroker:~$ groups administrator cdrom floppy audio dip video plugdev netdev iobroker
Leider darf er dadurch immer noch nicht:
administrator@ioBroker:~$ sudo iob diag [sudo] Passwort für administrator: Leider darf der Benutzer administrator »/usr/bin/iob diag« als root auf ioBroker nicht ausführen.
-
-
@hc-yami sagte in iob diag - Skript:
Leider darf er dadurch immer noch nicht:
Logisch. Der ist ja auch nicht in der Gruppe
sudo
drin.Als root:
usermod -aG sudo administrator
Und dann NIE, NIE, NIE MEHR direkt als root herumkaspern.
-
administrator@ioBroker:~$ iob diag [sudo] Passwort für administrator: Leider darf der Benutzer administrator »/usr/bin/curl -sLf https://iobroker.net/diag.sh --output /home/iobroker/.diag.sh« als iobroker auf ioBroker nicht ausführen. administrator@ioBroker:~$ su - Passwort: root@ioBroker:~# usermod -aG sudo administrator root@ioBroker:~# exit Abgemeldet administrator@ioBroker:~$ iob diag [sudo] Passwort für administrator: Leider darf der Benutzer administrator »/usr/bin/curl -sLf https://iobroker.net/diag.sh --output /home/iobroker/.diag.sh« als iobroker auf ioBroker nicht ausführen. administrator@ioBroker:~$ sudo iob diag [sudo] Passwort für administrator: Leider darf der Benutzer administrator »/usr/bin/iob diag« als root auf ioBroker nicht ausführen. administrator@ioBroker:~$
-
Den 'administrator' aus- und wieder einloggen.
Geänderte Gruppen werden erst beim nächsten Login eingelesen. -
@thomas-braun wieder etwas gelernt, vielen Dank dafür. Leider löst das mein Update Problem noch nicht, weil iob diag eigentlichr echt gut aussieht:
======================= SUMMARY ======================= v.2023-10-10 Static hostname: ioBroker Icon name: computer-vm Chassis: vm Virtualization: microsoft Operating System: Debian GNU/Linux 11 (bullseye) Kernel: Linux 5.10.0-19-amd64 Architecture: x86-64 Installation: microsoft Kernel: x86_64 Userland: amd64 Timezone: Europe/Berlin (CET, +0100) User-ID: 1000 X-Server: false Boot Target: graphical.target Pending OS-Updates: 133 Pending iob updates: 0 Nodejs-Installation: /usr/bin/nodejs v18.17.1 /usr/bin/node v18.17.1 /usr/bin/npm 9.6.7 /usr/bin/npx 9.6.7 /usr/bin/corepack 0.18.0 Recommended versions are nodejs 18.18.2 and npm 9.8.1 Your nodejs installation is correct MEMORY: total used free shared buff/cache available Mem: 3.9G 2.3G 911M 0.0K 675M 1.3G Swap: 974M 0B 974M Total: 4.9G 2.3G 1.9G Active iob-Instances: 30 Active repo(s): stable ioBroker Core: js-controller 5.0.12 admin 6.12.0 ioBroker Status: iobroker is running on this host. Objects type: jsonl States type: jsonl Status admin and web instance: + system.adapter.admin.0 : admin : ioBroker - enabled, port: 8081, bind: 0.0.0.0, run as: admin + system.adapter.web.0 : web : ioBroker - enabled, port: 8082, bind: 0.0.0.0, run as: admin Objects: 9722 States: 7869 Size of iob-Database: 26M /opt/iobroker/iobroker-data/objects.jsonl 8.3M /opt/iobroker/iobroker-data/objects.json.migrated 8.3M /opt/iobroker/iobroker-data/objects.json.bak.migrated 2.5M /opt/iobroker/iobroker-data/states.jsonl 1020K /opt/iobroker/iobroker-data/states.json.migrated 1020K /opt/iobroker/iobroker-data/states.json.bak.migrated 0 /opt/iobroker/iobroker-data/states.json.broken =================== END OF SUMMARY ====================
-
@hc-yami sagte in iob diag - Skript:
Pending OS-Updates: 133
HUST
Das ist auch ein Update-Problem...
sudo apt update sudo apt full-upgrade iob stop iob fix iob nodejs-update sudo systemctl set-default multi-user.target sudo reboot
-
@thomas-braun hatte tatsächlich nie manuell apt upgrade ausgeführt. Habe das nun nachgeholt. Irgendwie hatte ich im Kopf, dass man das nicht tun sollte, weil ioBroker das für einen erledigt. Faktisch praktisch ist aber apt update / upgrade und full-upgrade im ioBroker Umfeld okay?
Gehe gerade die Befehle durch. Nach apt upgrad ehabe ich schonmal keine Updates mehr. Jetzt möchte er aber gerade einen Neustart.
-
@hc-yami sagte in iob diag - Skript:
weil ioBroker das für einen erledigt.
Quatsch. Das wurde noch nie von einer Anwendung übernommen, die dafür gar nicht gedacht ist.
Faktisch praktisch ist aber apt update / upgrade und full-upgrade im ioBroker Umfeld okay?
Das hat mit dem Umfeld nix zu tun, das ist eine reine Sache des Betriebssystems.
Jetzt möchte er aber gerade einen Neustart.
Natürlich. Deswegen hatte ich den oben schon vorweggenommen.