NEWS
js-controller 3.1 jetzt im STABLE!
-
Hallo ihr lieben Helfer!
Erster Post, da ich sonst immer alles über stundenlange I-net Recherche gelöst bekomme. Dieses Mal ist aber das ganze WE draufgegangen und ich komme nicht weiter. Seid bitte vorsichtig mit mir. Bin Linux-Noob. Omg....;Ppi@rpi4:/opt/iobroker $ which nodejs && nodejs -v && which node && node -v && which npm && npm -v /usr/bin/nodejs v12.18.3 /usr/bin/node v12.18.3 /usr/bin/npm 6.14.8
Problem: Ich bekomme den js-controller nicht von 2.1.1 auf 3.1.6 aktualisiert. Irgendein Rechteproblem mit npm.
iobroker stop und danach iobroker fix habe ich bereits durchgeführt. Letzteres löst aber nach meinem Verständnis ja nur Berechtigungsprobleme vom iOBroker, nicht vom npm.iobroker stop iobroker upgrade self
schlagen fehl und auch der manuelle Versuch der Aktualisierung schlägt fehl:
pi@rpi4:/opt/iobroker $ sudo -H -u iobroker npm install iobroker.js-controller npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall open npm ERR! path /home/iobroker/.npm/_cacache/index-v5/1d/a8/f99642a9eccb731a5f4be46c26b08f83c59d3cff19a70c94e745504ac47e npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
Auch ein Versuch npm zu aktualisieren schlägt mit ähnlichem Effekt fehl:
pi@rpi4:/opt/iobroker $ npm install -g npm@latest npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall open npm ERR! path /home/iobroker/.npm/_cacache/index-v5/af/03/5c781820370e585dc2323edbbc80669bf714da5b47d56510c7d0bd7521ee npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
pi@rpi4:/opt/iobroker $ ls -la /opt/iobroker insgesamt 1204 drwxrwxr-x+ 8 iobroker iobroker 4096 Aug 23 12:46 . drwxr-xr-x 4 root root 4096 Jan 20 2020 .. drwxrwxr-x+ 2 iobroker iobroker 4096 Aug 21 23:06 backups -rw-rwxr--+ 1 iobroker iobroker 1049 Jan 20 2020 CHANGELOG_FIXER_LINUX.md -rw-rwxr--+ 1 iobroker iobroker 3556 Jan 20 2020 CHANGELOG_INSTALLER_LINUX.md -rw-rwxr--+ 1 iobroker iobroker 23988 Jan 20 2020 fix_installation.sh drwxrwxr-x+ 3 iobroker iobroker 4096 Jan 20 2020 install -rwxrwxrwx+ 1 iobroker iobroker 579 Aug 23 12:46 INSTALLER_INFO.txt lrwxrwxrwx 1 iobroker iobroker 22 Aug 23 12:46 iob -> /opt/iobroker/iobroker -rwxr-xr-x+ 1 iobroker iobroker 305 Aug 23 12:46 iobroker drwxrwxr-x+ 5 iobroker iobroker 4096 Jan 20 2020 iobroker-data drwxrwxr-x+ 2 iobroker iobroker 4096 Jan 20 2020 lib -rw-rwxr--+ 1 iobroker iobroker 1137 Jan 20 2020 LICENSE drwxrwxr-x+ 2 iobroker iobroker 12288 Aug 23 00:00 log drwxrwxr-x+ 901 iobroker iobroker 32768 Aug 23 12:22 node_modules -rw-rwxr--+ 1 iobroker iobroker 91 Aug 23 12:42 .npmrc -rw-rwxr--+ 1 iobroker iobroker 1356 Aug 23 12:22 package.json -rw-rwxr--+ 1 iobroker iobroker 1088153 Aug 23 12:22 package-lock.json -rw-rwxr--+ 1 iobroker iobroker 6101 Jan 20 2020 README.md -rw-rwxr--+ 1 iobroker iobroker 5738 Jan 20 2020 reinstall.js
pi@rpi4:/opt/iobroker $ ls -la /opt/iobroker/node_modules/iobroker.javascript insgesamt 160 drwxrwxr-x+ 7 iobroker iobroker 4096 Mär 20 19:58 . drwxrwxr-x+ 901 iobroker iobroker 32768 Aug 23 12:22 .. drwxrwxr-x+ 6 iobroker iobroker 4096 Mär 20 19:56 admin drwxrwxr-x+ 3 iobroker iobroker 4096 Mär 20 19:56 .github drwxrwxr-x+ 2 iobroker iobroker 4096 Mär 20 19:56 install -rw-rwxr--+ 1 iobroker iobroker 1 Mär 20 19:57 iob_npm.done -rw-rwxr--+ 1 iobroker iobroker 13234 Mär 20 19:57 io-package.json drwxrwxr-x+ 2 iobroker iobroker 4096 Mär 20 19:56 lib -rw-rwxr--+ 1 iobroker iobroker 1137 Okt 26 1985 LICENSE -rw-rwxr--+ 1 iobroker iobroker 53286 Okt 26 1985 main.js drwxrwxr-x+ 6 iobroker iobroker 4096 Aug 23 12:06 node_modules -rw-rwxr--+ 1 iobroker iobroker 3086 Mär 20 19:58 package.json -rw-rwxr--+ 1 iobroker iobroker 5194 Mär 20 19:58 package-lock.json -rw-rwxr--+ 1 iobroker iobroker 7398 Okt 26 1985 README.md
Kommt auch, wenn ich aus der Web-Oberfläche von iOBroker heraus versuche einen Adapter zu aktualisieren.
$ ./iobroker upgrade kodi Update kodi from @1.0.0 to @2.0.4 NPM version: 6.14.8 npm install iobroker.kodi@2.0.4 --loglevel error --prefix "/opt/iobroker" (System call) npm ERR! code EACCESnpm ERR! syscall scandirnpm ERR! path /home/iobroker/.npm/_logsnpm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug innpm ERR! previous versions of npm which has since been addressed.npm ERR! npm ERR! To permanently fix this problem, please run:npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs'} npm ERR! code EACCESnpm ERR! syscall opennpm ERR! path /home/iobroker/.npm/_cacache/index-v5/55/4e/c2f660160d1c674b3857373d9cb3630df300514602bc7c564cc8ba960119npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug innpm ERR! previous versions of npm which has since been addressed.npm ERR! npm ERR! To permanently fix this problem, please run:npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" ERROR: host.rpi4 Cannot install iobroker.kodi@2.0.4: 243 ERROR: process exited with code 25
sudo chown -R 1001:1001 "/home/iobroker/.npm"
....hatte ich schon versucht, aber ihr sagt ja eh immer, npm Fehlermeldungen soll ich nicht beachten.
Any hints? -
-
@Thomas-Braun sagte in js-controller 3.1 jetzt im STABLE!:
sudo chown -R 1001:1001 /home/iobroker/.npm
Danke für die Hilfe!
Problem bleibt bestehen.pi@rpi4:/opt/iobroker $ iobroker stop pi@rpi4:~ $ npm cache clean --force pi@rpi4:/opt/iobroker $ sudo chown -R 1001:1001 /home/iobroker/.npm pi@rpi4:/opt/iobroker $ sudo -H -u iobroker npm install iobroker.js-controller npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall open npm ERR! path /home/iobroker/.npm/_cacache/index-v5/1d/a8/f99642a9eccb731a5f4be46c26b08f83c59d3cff19a70c94e745504ac47e npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
-
@Nies Malden iobroker Fixer versucht?
-
@apollon77 Ja, der fixer lief schon mehrmalig durch. Keine Änderung.
-
@Nies Mal /home/iobroker/.npm gelöscht?
-
@apollon77 auch kein Erfolg. Soll ich npm neu installieren? Wenn ja, welche Methode?
pi@rpi4:~ $ sudo rm -R /home/iobroker/.npm pi@rpi4:~ $ npm cache clean --force npm WARN using --force I sure hope you know what you are doing. pi@rpi4:~ $ cd /opt/iobroker pi@rpi4:/opt/iobroker $ iobroker fix library: loaded Library version=2020-06-12 ========================================================================== Welcome to the ioBroker installation fixer! Script version: 2020-06-15 You might need to enter your password a couple of times. ========================================================================== ========================================================================== Installing prerequisites (1/3) ========================================================================== OK:1 http://archive.raspberrypi.org/debian buster InRelease OK:2 https://repos.influxdata.com/debian buster InRelease Ign:3 https://dl.bintray.com/fg2it/deb-rpi-1b buster InRelease Fehl:4 https://dl.bintray.com/fg2it/deb-rpi-1b buster Release 404 Not Found [IP: 52.29.71.114 443] OK:5 https://deb.nodesource.com/node_10.x buster InRelease OK:6 https://deb.nodesource.com/node_12.x buster InRelease Holen:7 http://raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB] Paketlisten werden gelesen... Fertig E: Das Depot »https://dl.bintray.com/fg2it/deb-rpi-1b buster Release« enthält keine Release-Datei. N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert. N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8). Installed gcc-c++ ========================================================================== Checking ioBroker user and directory permissions (2/3) ========================================================================== Created /etc/sudoers.d/iobroker Fixing directory permissions... ========================================================================== Checking autostart (3/3) ========================================================================== Enabling autostart... Autostart enabled! ========================================================================== Your installation was fixed successfully Run iobroker start to start ioBroker again! ========================================================================== pi@rpi4:/opt/iobroker $ sudo -H -u iobroker npm install iobroker.js-controller npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall open npm ERR! path /home/iobroker/.npm/_cacache/index-v5/1d/a8/f99642a9eccb731a5f4be46c26b08f83c59d3cff19a70c94e745504ac47e npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
-
@Nies
Hast du den Cache denn mal gelöscht?cd /opt/iobroker npm cache clean --force
-
@Thomas-Braun Ja, ich habe es doch immer gepostet, was ich versucht habe.
D.h. vor 2 Std auf deinen Hinweis hin habe ich sudo chown -R 1001:1001 /home/iobroker/.npm und npm cache clean --force gemacht.
Zuletzt habe ich auf @apollon77 Hinweis hin sudo rm -R /home/iobroker/.npm , dann npm cache clean --force , dann aus /opt/iobroker heraus iobroker fix und sudo -H -u iobroker npm install iobroker.js-controller gemacht.Die npm Berechtigungsfehler (Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs') bleiben.
-
sudo rm -rf /home/iobroker/.npm/_logs
-
@Thomas-Braun Ja, /home/iobroker/.npm habe ich gelöscht.
Warum bringt mir sudo -H -u iobroker npm install iobroker.js-controller trotz nicht existentem /home/iobroker/.npm den Fehler immernoch?pi@rpi4:/opt/iobroker $ sudo -H -u iobroker npm install iobroker.js-controller npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall open npm ERR! path /home/iobroker/.npm/_cacache/index-v5/1d/a8/f99642a9eccb731a5f4be46c26b08f83c59d3cff19a70c94e745504ac47e npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
-
ls -la /home/iobroker/.npm/
-
@Thomas-Braun
@Nies sagte in js-controller 3.1 jetzt im STABLE!:npm cache clean --force
löscht den Cache des Users
pi
. Probier malsudo -H -u iobroker npm cache clean --force
-
@AlCalzone Arrrgh, natürlich... Da hab ich aber megagepennt.
-
Blöde Idee: Gehört
/home/iobroker
möglicherweiseroot
?
@Niesls -la /home/iobroker
-
@AlCalzone @Thomas-Braun Nein, /home/iobroker gehört nicht root.
pi@rpi4:~ $ ls -la /home/iobroker insgesamt 40 drwx------ 5 pi pi 4096 Aug 23 22:57 . drwxr-xr-x 4 root root 4096 Jan 20 2020 .. -rw-r--r-- 1 iobroker iobroker 220 Apr 18 2019 .bash_logout -rw-r--r-- 1 iobroker iobroker 3523 Sep 26 2019 .bashrc drwxr-xr-x 3 iobroker iobroker 4096 Jan 20 2020 .cache drwx------ 3 iobroker iobroker 4096 Jan 20 2020 .config -rwx------ 1 iobroker iobroker 5462 Apr 5 14:06 getParrot9333.pl -rw-r--r-- 1 iobroker iobroker 807 Apr 18 2019 .profile drwx------ 2 iobroker iobroker 4096 Feb 3 2020 .ssh
Entschuldigung für doofe Fragen. Ist es relevant, aus welchem Ordner ich npm cache clean ausführe? /home/iobroker oder /opt/iobroker oder root?
aus /home/iobroker:
pi@rpi4:/home/iobroker $ sudo -H -u iobroker npm cache clean --force Error: EACCES: permission denied, scandir '/home/iobroker'
aus /opt/iobroker:
pi@rpi4:/opt/iobroker $ sudo -H -u iobroker npm cache clean --force npm WARN using --force I sure hope you know what you are doing. npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall lstat npm ERR! path /home/iobroker/.npm/_cacache npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
aus root:
pi@rpi4:/ $ sudo -H -u iobroker npm cache clean --force npm WARN using --force I sure hope you know what you are doing. npm ERR! code EACCES npm ERR! syscall scandir npm ERR! path /home/iobroker/.npm/_logs npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm" glob error [Error: EACCES: permission denied, scandir '/home/iobroker/.npm/_logs'] { errno: -13, code: 'EACCES', syscall: 'scandir', path: '/home/iobroker/.npm/_logs' } npm ERR! code EACCES npm ERR! syscall lstat npm ERR! path /home/iobroker/.npm/_cacache npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. npm ERR! npm ERR! To permanently fix this problem, please run: npm ERR! sudo chown -R 1001:1001 "/home/iobroker/.npm"
-
@Nies sagte in js-controller 3.1 jetzt im STABLE!:
sudo chown -R 1001:1001 "/home/iobroker/.npm"
kurze Frage/Hinweis: im Fehlertext steht das Verzeichnis in " ":
sudo chown -R 1001:1001 "/home/iobroker/.npm"
Wenn ich das richtig gelesen habe, wurde der Befehl aber ohne " " abgesetzt (bin auch kein Linux-Profi, ist mir nur beim Lesen ins Auge gesprungen?!)
VG Thorsten -
An sich ist es egal, von wo du cache clean ausführst, es muss nur der richtige User sein.
/home/iobroker/.npm existiert auch nicht mehr, d.h. löschen kannst du dir sparen.@Nies sagte in js-controller 3.1 jetzt im STABLE!:
Nein, /home/iobroker gehört nicht root.
pi@rpi4:~ $ ls -la /home/iobroker
drwx------ 5 pi pi 4096 Aug 23 22:57 .Aber auch nicht iobroker. Bei mir funktioniert es mit Owner iobroker und 755 (hoffe @Thomas-Braun bringt mich für diesen Vorschlag nicht um) - probiers mal so:
sudo chown iobroker:iobroker /home/iobroker sudo chmod 755 /home/iobroker
Danach sollte npm seine Verzeichnisse wieder selbst herstellen.
-
ES KLAPPT!
@Kueppert Mit "" hatte ich auch probiert. Daran lag es nicht. Ich danke dir trotzdem für deinen Versuch.
@AlCalzone Du hattest Recht. Mein home Verzeichnis war wohl doch im Besitz von root.Abhilfe brachte
sudo chown -R -c iobroker:iobroker /home/iobroker
Auf diesen Befehl hin kamen folgende 3 Zeilen: (nur noch sinngemäß, da ich zum testen das Update des js-controllers angestoßen habe und die 3 Zeilen oben aus dem Terminal rausgerutscht sind...)
Der Benutzer von /home/iobroker/.ssh...blabla wurde von root:root zu iobroker:iobroker geändert.
Der Benutzer von /home/iobroker/.ssh...blabla wurde von root:root zu iobroker:iobroker geändert.
Der Benutzer von /home/iobroker wurde von pi:pi zu iobroker:iobroker geändert.js-controller konnte nun erfolgreich aktualisiert werden. Danke für euren super Support.
-
@AlCalzone Jepp, so hats geklappt. Danke dir!