NEWS
mihome-vacuum.0 läd keine Map!
-
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Ging aber nicht als user; musste dies als root machen.
Das ist falsch. Das muss auch mit einem (richtig eingestellten) user gehen. Da ist dann noch mehr krumm in dem System.
-
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Ging aber nicht als user; musste dies als root machen.
Das ist falsch. Das muss auch mit einem (richtig eingestellten) user gehen. Da ist dann noch mehr krumm in dem System.
Ich habe doch letzte Woche erst nach deinen Anweisungen einen neuen user erstellt.
(weiß jetzt nicht mehr welcher thread dies war).
Warum soll dies nun schon wieder falsch sein.Komisch.
Sorry Thomas,
aber für mich als linux laie war das logisch, dass ich keine Installation außerhalb von iobroker durchführen darf. Und das wollte die Kiste (irgend ein anderes Verzeichnis bei "install canvas". -
@bahnuhr
user die in der passenden Gruppe sind (iobroker) dürfen npm ausführen, allerdings nur im Pfad /opt/iobroker
Ich meine so sei das in den sudoers angelegt.
Natürlich nicht in den sudoers sondern über das Gruppen-Recht.In meinem System kann ich das mit meinem Standard-User 'echad' auch einwandfrei machen:
echad@chet:/opt/iobroker $ npm install canvas removed 200 packages, and changed 1 package in 19s 97 packages are looking for funding run `npm fund` for details echad@chet:/opt/iobroker $ npm list canvas iobroker.inst@3.0.0 /opt/iobroker ├── canvas@2.8.0 ├─┬ iobroker.echarts@1.0.3 │ ├── canvas@2.8.0 deduped │ └─┬ jsdom@16.7.0 │ └── canvas@2.8.0 deduped ├─┬ iobroker.iot@1.8.25 │ ├── canvas@2.8.0 deduped │ └─┬ jsdom@17.0.0 │ └── canvas@2.8.0 deduped └─┬ iobroker.mihome-vacuum@3.3.1 └── canvas@2.8.0 deduped
Und wieder weg:
echad@chet:/opt/iobroker $ npm uninstall canvas up to date in 14s 97 packages are looking for funding run `npm fund` for details echad@chet:/opt/iobroker $ npm list canvas iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.echarts@1.0.3 │ ├── canvas@2.8.0 │ └─┬ jsdom@16.7.0 │ └── canvas@2.8.0 deduped ├─┬ iobroker.iot@1.8.25 │ ├── canvas@2.8.0 deduped │ └─┬ jsdom@17.0.0 │ └── canvas@2.8.0 deduped └─┬ iobroker.mihome-vacuum@3.3.1 └── canvas@2.8.0 deduped echad@chet:/opt/iobroker $
-
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Ich habe doch letzte Woche erst nach deinen Anweisungen einen neuen user erstellt.
Haben wir da vergessen den auch in die Gruppe 'iobroker' zu setzen?
Schau mal mitgroups
nach.
-
@thomas-braun
In groups ist iobroker drin.trotzdem Fehler:
dieter@VM-iobroker:~$ cd /opt/iobroker dieter@VM-iobroker:/opt/iobroker$ groups dieter sudo iobroker dieter@VM-iobroker:/opt/iobroker$ npm install canvas npm ERR! code EACCES npm ERR! syscall unlink npm ERR! path /opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts npm ERR! errno -13 npm ERR! Error: EACCES: permission denied, unlink '/opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts' npm ERR! [OperationalError: EACCES: permission denied, unlink '/opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts'] { npm ERR! cause: [Error: EACCES: permission denied, unlink '/opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts'] { npm ERR! errno: -13, npm ERR! code: 'EACCES', npm ERR! syscall: 'unlink', npm ERR! path: '/opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts' npm ERR! }, npm ERR! errno: -13, npm ERR! code: 'EACCES', npm ERR! syscall: 'unlink', npm ERR! path: '/opt/iobroker/node_modules/iobroker.javascript/node_modules/@fast-csv/format/node_modules/@types/node/fs/promises.d.ts', npm ERR! parent: '@fast-csv/format' npm ERR! } npm ERR! npm ERR! The operation was rejected by your operating system. npm ERR! It is likely you do not have the permissions to access this file as the current user npm ERR! npm ERR! If you believe this might be a permissions issue, please double-check the npm ERR! permissions of the file and its containing directories, or try running npm ERR! the command again as root/Administrator. npm ERR! A complete log of this run can be found in: npm ERR! /home/dieter/.npm/_logs/2021-11-29T19_36_07_748Z-debug.log dieter@VM-iobroker:/opt/iobroker$
-
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
@fast-csv
Das hat also nix mit canvas zu tun sondern mit dem @fast-csv-Modul.
Vermutlich ist das mal mit root-Rechten da versenkt worden, da reichen die Rechte vom 'dieter' nicht mehr aus. -
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
@fast-csv
Das hat also nix mit canvas zu tun sondern mit dem @fast-csv-Modul.
Vermutlich ist das mal mit root-Rechten da versenkt worden, da reichen die Rechte vom 'dieter' nicht mehr aus.Und was ist das für ein Modul ?
Oder noch besser, was mach ich jetzt ?
Doch zukünftig wieder mit "root" arbeiten. Obwohl ja nicht gewollt.
-
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Und was ist das für ein Modul ?
Das weiß ich nicht. Hab ich in meinem System nicht drin. Schaut aber aus wie ein manuell im javaskript-Adapter angelegtes Modul.
-
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Und was ist das für ein Modul ?
Das weiß ich nicht. Hab ich in meinem System nicht drin. Schaut aber aus wie ein manuell im javaskript-Adapter angelegtes Modul.
Ne, da hab ich sowas nicht drin.
Dann muss ich ja doch wieder mit "root" arbeiten; mit der Gefahr dass ich dann von euch Spezialisten keine Antwort mehr bekomme.
Schade auch. -
@bahnuhr Das könnte als Abhängigkeit vom exceljs angezogen worden sein.
-
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
@bahnuhr Das könnte als Abhängigkeit vom exceljs angezogen worden sein.
Kann sein, aber mal deutlich auf den Punkt gebracht: Das ist doch Mist !
Wie ich letzte Woche irgendwo erwähnt habe; da blickt man als Laie nicht durch.
- man soll nicht als root arbeiten, sondern als user
- man gibt ein zusätzliches js modul ein, und dies zerschießt dann alles
- und wenn man dann einen fehler berichtigt, dann heißt es: mein System ist krumm
- oder auch schon passiert: es heißt: du arbeitest als root; da antworte ich nicht mehr.
Musst doch zugeben, dass Laie damit nicht klar kommen kann.
Das erzeugt Frust.
So: ich habe fertig!
Und nun ganz sachlich:
Ich stoße mit dem linux Kram öfters an meine Grenzen. Windows war gefühlt (für mich) einfacher.
Und es sind halt so Sachen wie hier mit der Karte.
Auf einmal funktioniert diese nicht mehr. Und dies findet man dann durch Zufall raus.
Fehler im log gab es nicht. -
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Kann sein, aber mal deutlich auf den Punkt gebracht: Das ist doch Mist !
Richtig, als root rumhampeln ist Mist. Deswegen wird ja auch mantraartig davon abgeraten.
Musst doch zugeben, dass Laie damit nicht klar kommen kann.
Deswegen meldet sich der Laie ja auch nicht als root an. Denn dafür braucht es $Ahnung. Und die hat Laie natürlich nicht.
Aber auch ich melde mich NIE als root an. Und ich wage mal zu behaupten, dass ich zumindest im Groben etwas davon verstehe. Aber genau deswegen ist MIR das auch zu heiß. Warum dann oben genannte Laien mit heruntergelassener Hose meinen durch das System springen zu können ist dann wohl deren Geheimnis.Ich weiß nicht ob der ioBroker-Fixer auch bis auf diese Ebene durchgreifen kann. Probieren kannst du es aber mal:
iobroker stop iobroker fix iobroker start
-
fixer laufen gelassen.
und dann nochmal: npm install canvas
sieht jetzt besser aus (glaub ich zumindest):dieter@VM-iobroker:~$ cd /opt/iobroker dieter@VM-iobroker:/opt/iobroker$ npm install canvas > cpu-features@0.0.2 install /opt/iobroker/node_modules/cpu-features > node-gyp rebuild make: Verzeichnis „/opt/iobroker/node_modules/cpu-features/build“ wird betreten ACTION Configuring dependencies /opt/iobroker/node_modules/cpu-features/deps/cpu_features/build/Makefile -- The C compiler identification is GNU 8.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Looking for dlfcn.h -- Looking for dlfcn.h - found -- Looking for getauxval -- Looking for getauxval - found -- Configuring done -- Generating done -- Build files have been written to: /opt/iobroker/node_modules/cpu-features/deps/cpu_features/build TOUCH Release/obj.target/config_deps.stamp ACTION Building dependencies /opt/iobroker/node_modules/cpu-features/deps/cpu_features/build/libcpu_features.a make[1]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten make[2]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten Scanning dependencies of target unix_based_hardware_detection make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten [ 11%] Building C object CMakeFiles/unix_based_hardware_detection.dir/src/hwcaps.c.o [ 22%] Building C object CMakeFiles/unix_based_hardware_detection.dir/src/unix_features_aggregator.c.o make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen [ 22%] Built target unix_based_hardware_detection make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten Scanning dependencies of target utils make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten [ 33%] Building C object CMakeFiles/utils.dir/src/filesystem.c.o [ 44%] Building C object CMakeFiles/utils.dir/src/stack_line_reader.c.o [ 55%] Building C object CMakeFiles/utils.dir/src/string_view.c.o make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen [ 55%] Built target utils make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten Scanning dependencies of target cpu_features make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten [ 66%] Building C object CMakeFiles/cpu_features.dir/src/cpuinfo_x86.c.o [ 77%] Linking C static library libcpu_features.a make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen [ 77%] Built target cpu_features make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten Scanning dependencies of target list_cpu_features make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird betreten [ 88%] Building C object CMakeFiles/list_cpu_features.dir/src/utils/list_cpu_features.c.o [100%] Linking C executable list_cpu_features make[3]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen [100%] Built target list_cpu_features make[2]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen make[1]: Verzeichnis „/opt/iobroker/node_modules/cpu-features/deps/cpu_features/build“ wird verlassen TOUCH Release/obj.target/build_deps.stamp CXX(target) Release/obj.target/cpufeatures/src/binding.o In file included from ../src/binding.cc:3: ../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker*)’: ../../nan/nan.h:2294:62: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka void (*)(uv_work_s*, int)’} [-Wcast-function-type] , reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete) ^ In file included from ../src/binding.cc:1: ../src/binding.cc: At global scope: /home/dieter/.cache/node-gyp/14.18.1/include/node/node.h:787:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_fun ’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type] (node::addon_register_func) (regfunc), \ ^ /home/dieter/.cache/node-gyp/14.18.1/include/node/node.h:821:3: note: in expansion of macro ‘NODE_MODULE_X’ NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) ^~~~~~~~~~~~~ ../src/binding.cc:153:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(cpufeatures, init) ^~~~~~~~~~~ SOLINK_MODULE(target) Release/obj.target/cpufeatures.node COPY Release/cpufeatures.node make: Verzeichnis „/opt/iobroker/node_modules/cpu-features/build“ wird verlassen > canvas@2.8.0 install /opt/iobroker/node_modules/canvas > node-pre-gyp install --fallback-to-build [canvas] Success: "/opt/iobroker/node_modules/canvas/build/Release/canvas.node" is installed via remote npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.7 (node_modules/osx-temperature-sensor): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) + canvas@2.8.0 added 1 package from 1 contributor, removed 202 packages, updated 2 packages and moved 16 packages in 64.034s 57 packages are looking for funding run `npm fund` for details dieter@VM-iobroker:/opt/iobroker$
-
npm list canvas
-
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
npm list canvas
Ja, war wie bei dir oben.
dieter@VM-iobroker:/opt/iobroker$ npm list canvas iobroker.inst@2.0.3 /opt/iobroker ├── canvas@2.8.0 └─┬ iobroker.mihome-vacuum@3.3.1 └── canvas@2.8.0 deduped dieter@VM-iobroker:/opt/iobroker$ npm uninstall canvas npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.7 (node_modules/osx-temperature-sensor): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) up to date in 22.394s 58 packages are looking for funding run `npm fund` for details dieter@VM-iobroker:/opt/iobroker$ npm list canvas iobroker.inst@2.0.3 /opt/iobroker └─┬ iobroker.mihome-vacuum@3.3.1 └── canvas@2.8.0
Obwohl mitten drin noch warn Meldungen sind.
-
@thomas-braun sagte in mihome-vacuum.0 läd keine Map!:
Richtig, als root rumhampeln ist Mist. Deswegen wird ja auch mantraartig davon abgeraten.
Obwohl sich immer noch die Frage stellt, ob jetzt root daran Schuld war.
Denn du schreibst ja auch, dass es vom js Modul kommen könnte. -
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Obwohl mitten drin noch warn Meldungen sind.
Die sind harmlos, ist nur Mecker weil das Modul fsevents MacOS erwartet (nur da auch benötigt wird), du hast aber ein Linux da. Nicht weiter wild.
Jetzt hast du deine Installation wieder ein Stück gerader gebogen.
Vermutlich bringt das aber die Karte jetzt auch nicht zurück. -
@bahnuhr sagte in mihome-vacuum.0 läd keine Map!:
Obwohl sich immer noch die Frage stellt, ob jetzt root daran Schuld war.
Denn du schreibst ja auch, dass es vom js Modul kommen könnte.Nein, ich schrieb das das Modul mit Sicherheit seinerzeit vom root angelegt wurde. Und in root-eigenen Dateien/Verzeichnissen können einfache user (nicht ohne weiteres) rummaggeln.
-
mal ein screenshot vom log
-
@akuehnemann73
Bitte keine Screenshots. Kann man nicht lesen. In CodeTags eingebettet als Text posten.