NEWS
Fehlermeldungen bei Installation mac
-
Du kannst mal versuchen dem Ordner /usr/local/lib/node_modules/iobroker/ die Rechte 777 zuzuweisen.
Aber: Existiert der Ordner /usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller überhaupt?
-
Den Ordner: /usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller gibt es doch nicht in meiner Kopie.
Muss morgen weiterschauen…
Danke nochmal !!
-
Frage 1:
Existiert der Ordner?
Edit: hier stand Mist
Frage 2:
Existiert der Ordner?
/usr/local/lib/node_modules/iobroker/iobroker-data/
-
Frage 2:
Existiert der Ordner?
/usr/local/lib/node_modules/iobroker/iobroker-data/ ```` `
Ja den gibt es bei mir.
Den ersten nicht…
Wie war der Befehl nochmal um an einen bestimmten Platz zu installieren?
-
Ich vermute dein Mac versuche auf den falschen Ordner zuzugreifen.
EDIT […...]
-
Kannst du mir nochmal den Befehl zum installieren an einem bestimmten Platz nennen?
Du hattest ihn vorhin mal irgendwo geschrieben, jetzt ist er leider weg.
-
Ich bin mir nicht sicher ob iobroker bzw. npm das mag..
Aber du kannst es hiermit versuchen:
sudo npm install https://github.com/ioBroker/ioBroker/tarball/master --unsafe-perm --prefix /ort/wohin/es/soll
-
Edit; hier stand Müll..
-
sudo npm install https://github.com/ioBroker/ioBroker/tarball/master –unsafe-perm --prefix /ort/wohin/es/soll
Leider nicht funktioniert:
MacMini-LAN:node_modules MacMini$ cd node_modules/iobroker.js-controller -bash: cd: node_modules/iobroker.js-controller: No such file or directory MacMini-LAN:node_modules MacMini$ cd iobroker MacMini-LAN:iobroker MacMini$ cd node_modules/iobroker.js-controlle -bash: cd: node_modules/iobroker.js-controlle: No such file or directory MacMini-LAN:iobroker MacMini$ cd node_modules/iobroker.js-controller MacMini-LAN:iobroker.js-controller MacMini$ chmod +x iobroker MacMini-LAN:iobroker.js-controller MacMini$ node controller.js host.MacMini-LAN.fritz.box check instance "system.adapter.admin.0" for host "MacMini-LAN.fritz.box" host.MacMini-LAN.fritz.box check instance "system.adapter.discovery.0" for host "MacMini-LAN.fritz.box" { Error: EACCES: permission denied, open '/usr/local/lib/node_modules/iobroker/log/iobroker.2017-07-26.log' errno: -13, code: 'EACCES', syscall: 'open', path: '/usr/local/lib/node_modules/iobroker/log/iobroker.2017-07-26.log' } EACCES: permission denied, open '/usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak' Error: EACCES: permission denied, open '/usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak' at Object.fs.openSync (fs.js:652:18) at Object.fs.writeFileSync (fs.js:1299:33) at saveConfig (/usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1749:16) at ObjectsInMemServer.destroy (/usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2677:26) at /usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/controller.js:2244:49 at Timeout.waitForInstances [as _onTimeout] (/usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/controller.js:2197:49) at ontimeout (timers.js:469:11) at tryOnTimeout (timers.js:304:5) at Timer.listOnTimeout (timers.js:264:5) MacMini-LAN:iobroker.js-controller MacMini$
Bis morgen dann :lol:
-
In welchem Ordner landest du wenn du den Befehl
cd /usr/local/lib/node_modules/iobroker/node_modules/iobroker.js-controller/lib/states/../../../../iobroker-data ````?? eingibst?
-
Hab ich noch nicht versucht, wollte es erneut aber diesmal an den richtigen Platz installieren. War ja nix
Morgen teste ich mal deinen anderen Vorschlag…
-
Also halten wir kurz fest:
1. Ich kenne mich nicht mit Mac aus…
npm install https://github.com/ioBroker/ioBroker/tarball/master --unsafe-perm ````im Hauptverzeichnis "/" ausgeführt hat die Installation "korrekt" beendet. Die Versuche vorher in einem /User/ Ordner die Installation auszuführen hat nicht funktioniert. (Eventuell gibt es Probleme mit der Berechtigung wenn ein Script versucht in einen /User/ Ordner zu schreiben bzw. Dateien zu erstellen?!) 3. Du hast den durch die Installation erstellen Ordner verschoben und jetzt gibts einen Haufen von Fehlern beim starten dass die Module nicht existieren bzw. nicht gefunden werden können. Dadurch dass du jetzt nochmal versucht hast ioBroker zu installieren bin ich mir nicht ganz sicher was passiert ist. Versuche nochmal ioBroker zu stoppen und dann wieder zu starten. Welche Ausgabe bekommst du dann im Log auf dem ioBroker Webinterface? Die gleiche die du vorhin schon gepostet hast? Bis Morgen. :D
-
Habe über Nacht mal meine Gedanken neu sortiert..
Als erstes setzt du jetzt die Rechte für den Ordner /usr/local/lib/node_modules/iobroker/ auf 777
sudo chmod -R 777 /usr/local/lib/node_modules/iobroker/
Jetzt versuch ioBroker aus diesem Ordner raus nochmal neu zu installieren..
Also du befindest dich im Terminalfenster in dem Ordner /usr/local/lib/node_modules/iobroker/ und dort soll iobroker auch installiert werden ja?
Hast du wirklich "sudo chmod -R 777 /usr/local/lib/node_modules/iobroker/" ausgeführt?
Wenn ja, dann nochmal in diesem Ordner ioBroker installieren mit
sudo npm install https://github.com/ioBroker/ioBroker/tarball/master --unsafe-perm
ioBroker wird in dem Ordner installiert in dem du den Befehl zum installieren gibst.
Wenn du also das Terminal öffnest und eingibst
cd /usr/local/lib/node_modules/iobroker/
befindest du dich logischerweise jetzt im Ordner /usr/local/lib/node_modules/iobroker/
mit dem Befehl
sudo npm install https://github.com/ioBroker/ioBroker/tarball/master --unsafe-perm
wird es in den aktuellen Ordner (also dann /usr/local/lib/node_modules/iobroker/) installiert.
Wichtig ist, dass du vorher den befehl "chmod -R 777 /usr/local/lib/node_modules/iobroker/" ausführst um dem Ordner wo du installieren willst die Rechte 777 zu geben und erst dann installierst.
-
Als absoluter Neuling und MAC Nutzer versuche ich mal zu unterstützen.
Da meine erste Installation von ioBroker nicht so verlief, wie hier (http://www.iobroker.net/docu/?page_id=2293&lang=de) beschrieben, habe ich den weiteren Verlauf dieses Beitrages und vor Allem die tolle Unterstützung von BuZZy durchgelesen.
Ich habe daraufhin meine zwar laufende aber "unsaubere" erste Installation gemäß Anleitung gelöscht.
Bei der Neuinstallation habe ich mich an die Anleitung von BuZZy gehalten.
Voraussetzung ist:
raunet:~ Gernot$ node -v v6.11.1
1. einen Ordner "ioBrokerMac" in "Documents" erstellt.
(@thoduh: im Folgenden ersetzen: …/Gernot/… durch: .../MacMini/…):
raunet:~ Gernot$ mkdir /Users/Gernot/Documents/ioBrokerMac
2. die Datei https://codeload.github.com/ioBroker/io … zip/master heruntergeladen und in den neu erstellten Ordner ioBrokerMac kopiert
cp /Users/Gernot/Downloads/ioBroker.js-controller-master.zip /Users/Gernot/Documents/ioBrokerMac
3. die Installation gem. BuZZy mit Vorgabe Verzeichnis gestartet
raunet:ioBrokerMac Gernot$ npm install iobroker.js-controller --production --prefix /Users/Gernot/Documents/ioBrokerMac
4. in das Verzeichnis /Users/Gernot/Documents/ioBrokerMac/node_modules/iobroker.js-controller gewechselt un die Datei ioBroker ausführbar gemacht
raunet:ioBrokerMac Gernot$ cd /Users/Gernot/Documents/ioBrokerMac/node_modules/iobroker.js-controller raunet:iobroker.js-controller Gernot$ chmod +x iobroker
5. mit node controller.js gestartet
raunet:iobroker.js-controller Gernot$ node controller.js host.raunet.private check instance "system.adapter.admin.0" for host "raunet.private" Cannot send diag info: ETIMEDOUT cmdExec on raunet.private(223091688): add fhem ...
und es läuft im Browser http://127.0.0.1:8081/
Vielleicht hilft's,
Gernot
-
Hallo Gernot,
Danke für diese Anleitung und zwei Zwischenfragen:
Hast du außer dem chmod +x auch noch irgendwo ein chmod 777 o.ä. gemacht?
Hast du als normaler User oder als Admin installiert?
Gruß
Rainer
-
Kurz als Hinweis:
NPM unterstützt das automatische holen und installieren von Githubrepos/.tar.gz Dateien.
Damit entfällt Schritt 2 komplett (der Download und das kopieren der Zip Datei)
Dementsprechend lautet der Befehl dann einfach
npm install https://github.com/ioBroker/ioBroker.js-controller/tarball/master --production --prefix /Users/Gernot/Documents/ioBrokerMac
Was mich zusätzlich wundert ist:
in der Docu steht
"ioBroker installieren: npm install iobroker –unsafe-perm"
Aber du (supernova1963) hast ja jetzt ioBroker.js-controller installiert...
Anscheinend wird ioBroker dann automatisch mit installiert.
Weil unter Linux installiert man ja wirklich einfach nur mit "sudo npm install iobroker --unsafe-perm"..
Hmmm.. Schauen wir mal was thoduh heute Abend dazu sagt..
Ich bin gespannt ob wir das Ding hier endlich zu machen können und die Docu für Mac neu schreiben können..
-
Hallo Rainer,
Hast du außer dem chmod +x auch noch irgendwo ein chmod 777 o.ä. gemacht? ` Nein, mußte ich nur bei meinem 1. Versuch, da existierte das log-Verzeichnis bereits von einer anderen Programminstallation mit sudo.
@Homoran:Hast du als normaler User oder als Admin installiert? ` Als User mit Admin-Rechten, aber ohne sudo.
Gernot
-
Hallo BuZZy,
es wird wohl gelingen …
In der Installationsbeschreibung OS X ist als erstes dieser Link genannt: https://github.com/ioBroker/ioBroker.js-controller
und eine Zeile darunter wird direkt diese Datei heruntergeladen: https://github.com/ioBroker/ioBroker/archive/master.zip
Den Unterschied kenne ich nicht. Es ist aber definitiv nicht das Gleiche!
Was bedeutet eigentlich der Parameter "--unsafe-perm". Da du den "--production" Parameter mit der Pfadangabe "--prefix ..." empfohlen hattest habe ich diesen genommen. Ob es auch mit "--unsafe-perm --prefix ..." habe ich nicht getestet.
Gernot
-
Den Unterschied kenne ich nicht. Es ist aber definitiv nicht das Gleiche! `
Das erste ist nur der js-controller, also die Engine, das zweite ist das vollständige PaketIch kenne auch nur den Weg über npm bei RasPi & Co.
Die Anleitung installiert erst den js-controller, der wiederum den Rest über npm installiert.
Gruß
Rainer
-
Also jetzt verstehe ich es garnicht mehr. Gestern ist iobroker gelaufen (zwar mit Fehlern im Log, aber es ist gelaufen), da ich allerdings den Ordner kopiert hatte, wollte ich heute alles nochmal neu installieren.
sudo mkdir iobroker sudo chmod -R 777 /iobroker
Bin diesmal direkt auf Macintosh HD geblieben, also keine Unterordner, direkt /iobroker.
Und bekomme es einfach nicht mehr fehlerfrei installiert
MacMini-LAN:~ MacMini$ cd /iobroker MacMini-LAN:iobroker MacMini$ sudo npm install https://github.com/ioBroker/ioBroker/tarball/master --unsafe-perm Password: > iobroker@1.0.0 install /iobroker/node_modules/iobroker > node lib/setup.js npm install iobroker.discovery --production --prefix /iobroker node-pre-gyp info it worked if it ends with ok node-pre-gyp verb cli [ '/usr/local/bin/node', node-pre-gyp verb cli '/iobroker/node_modules/serialport/node_modules/.bin/node-pre-gyp', node-pre-gyp verb cli 'install', node-pre-gyp verb cli '--fallback-to-build' ] node-pre-gyp info using node-pre-gyp@0.6.32 node-pre-gyp info using node@8.2.1 | darwin | x64 node-pre-gyp verb command install [] node-pre-gyp info check checked for "/iobroker/node_modules/serialport/build/Release/serialport.node" (not found) node-pre-gyp http GET https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v57-darwin-x64.tar.gz node-pre-gyp http 404 https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v57-darwin-x64.tar.gz node-pre-gyp ERR! Tried to download(404): https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v57-darwin-x64.tar.gz node-pre-gyp ERR! Pre-built binaries not found for serialport@4.0.7 and node@8.2.1 (node-v57 ABI) (falling back to source compile with node-gyp) node-pre-gyp http 404 status code downloading tarball https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v57-darwin-x64.tar.gz node-pre-gyp verb command build [ 'rebuild' ] ../src/serialport.cpp:90:44: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] return getValueFromObject(options, key)->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:102:44: warning: 'ToNumber' is deprecated [-Wdeprecated-declarations] return getValueFromObject(options, key)->ToNumber()->NumberValue(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9300:22: note: 'ToNumber' has been explicitly marked deprecated here Local <number>Value::ToNumber() const { ^ ../src/serialport.cpp:174:23: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = argv[1]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:193:21: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:217:108: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] baton->baudRate = Nan::Get(options, Nan::New<v8::string>("baudRate").ToLocalChecked()).ToLocalChecked()->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:252:21: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:369:24: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] baton->fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:480:21: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:528:21: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport.cpp:585:21: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] int fd = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ 10 warnings generated. ../src/serialport_unix.cpp:44:101: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] result->vmin = Nan::Get(options, Nan::New<v8::string>("vmin").ToLocalChecked()).ToLocalChecked()->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ ../src/serialport_unix.cpp:45:103: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] result->vtime = Nan::Get(options, Nan::New<v8::string>("vtime").ToLocalChecked()).ToLocalChecked()->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ 2 warnings generated. ../src/serialport_poller.cpp:86:23: warning: 'ToInt32' is deprecated [-Wdeprecated-declarations] obj->fd_ = info[0]->ToInt32()->Int32Value(); ^ /Users/MacMini/.node-gyp/8.2.1/include/node/v8.h:9336:21: note: 'ToInt32' has been explicitly marked deprecated here Local <int32>Value::ToInt32() const { ^ 1 warning generated. node-pre-gyp info ok npm WARN saveError ENOENT: no such file or directory, open '/iobroker/package.json' npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN enoent ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN iobroker No description npm WARN iobroker No repository field. npm WARN iobroker No README data npm WARN iobroker No license field. npm install iobroker.admin --production --prefix /iobroker npm WARN saveError ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN enoent ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN iobroker No description npm WARN iobroker No repository field. npm WARN iobroker No README data npm WARN iobroker No license field. npm install iobroker.js-controller --production --prefix /iobroker npm WARN saveError ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN enoent ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN iobroker No description npm WARN iobroker No repository field. npm WARN iobroker No README data npm WARN iobroker No license field. Write "./iobroker start" to start the ioBroker Cannot create file /usr/bin/iobroker!. Non critical ----------------------------------------------------- You can manually copy file into /usr/bin/. Just write: sudo cp /iobroker/node_modules/iobroker/install/iobroker /usr/bin/ sudo chmod 777 /usr/bin/iobroker ----------------------------------------------------- npm WARN enoent ENOENT: no such file or directory, open '/iobroker/package.json' npm WARN iobroker No description npm WARN iobroker No repository field. npm WARN iobroker No README data npm WARN iobroker No license field. + iobroker@1.0.0 added 46 packages in 130.318s MacMini-LAN:iobroker MacMini$ cd node_modules/iobroker.js-controller MacMini-LAN:iobroker.js-controller MacMini$ chmod +x iobroker MacMini-LAN:iobroker.js-controller MacMini$ node controller.js host.MacMini-LAN.fritz.box check instance "system.adapter.admin.0" for host "MacMini-LAN.fritz.box" host.MacMini-LAN.fritz.box check instance "system.adapter.discovery.0" for host "MacMini-LAN.fritz.box" { Error: EACCES: permission denied, open '/iobroker/log/iobroker.2017-07-27.log' errno: -13, code: 'EACCES', syscall: 'open', path: '/iobroker/log/iobroker.2017-07-27.log' } EACCES: permission denied, open '/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak' Error: EACCES: permission denied, open '/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak' at Object.fs.openSync (fs.js:652:18) at Object.fs.writeFileSync (fs.js:1299:33) at saveConfig (/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1749:16) at ObjectsInMemServer.destroy (/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2677:26) at /iobroker/node_modules/iobroker.js-controller/controller.js:2244:49 at Timeout.waitForInstances [as _onTimeout] (/iobroker/node_modules/iobroker.js-controller/controller.js:2197:49) at ontimeout (timers.js:469:11) at tryOnTimeout (timers.js:304:5) at Timer.listOnTimeout (timers.js:264:5) MacMini-LAN:iobroker.js-controller MacMini$</int32></int32></v8::string></int32></v8::string></int32></int32></int32></int32></int32></int32></v8::string></int32></int32></number></int32>
Ich bin wieder alle Schritte mehrmals durchgegangen, alle bisherigen Versuche wiederholt und habe auch die Anleitung von supernova1963 probiert, alles ohne Erfolg.
Das kann doch nicht sein, seit Ewigkeiten läuft Homebridge bei mir bestens und mit iobroker gibt es so extreme Probleme…
Und gestern hat es doch funktioniert