Open To-Fu112 opened 3 years ago
Hallo, vielleicht schließe ich mich To-Fu112 mal an.... Habe das selbe Problem:
`Sun Jan 10 2021 16:37:44 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Error: Command failed: cd /usr/local/addons/hvl;npm install homematic-virtual-weatherundergrounddevice --production --prefix "/usr/local/addons/hvl" npm ERR! code EROFS npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -30 npm ERR! rofs EROFS: read-only file system, mkdir '/.npm' npm ERR! rofs Often virtualized file systems, or other file systems npm ERR! rofs that don't support symlinks, give this error.
at checkExecSyncError (child_process.js:630:11)
at Object.execSync (child_process.js:666:15)
at Server.installNPM (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1472:30)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1172:26
at Array.some (<anonymous>)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1167:18
at Server.buildPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1242:13)
at Server.fetchPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1220:14)
at Server.installPlugin (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1165:10)
at Server.handleConfigurationRequest (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:653:26)
Sun Jan 10 2021 16:37:33 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - Installing homematic-virtual-weatherundergrounddevice to /usr/local/addons/hvl`
Das Problem liegt daran, das npm (das ist der Paketinstaller) einen temporären Pfad benutzt. Dieser liegt normalerweise im Home des Users unter .npm ... Dummerweise ist das Verzeichnis auf der CCu3 nicht beschreibbar.
Man kann dem npm aber eine Pfadangabe mitgeben. Dazu müsste ich was am Core ändern.
Arbeitest du da aktuell an einem Patch oder so? Besteht dann nicht auch die Möglichkeit das verzeichnis manuell vorübergehend Schreibrechte zu erteilen, oder lohnt sich das nicht (mehr)?
Ein Patch ist derzeit nicht in Sicht , das ich zumindest im Entwicklungssystem das ganze komplett auseinander gerissen habe, um es neu zu bauen. Was machbar wäre ist das Filesystem beschreibbar zu machen:
mount -o remount,rw /
und hinterher wieder auf RO
mount -o remount,ro /
oder diese Zeile zu ändern:
in
var cmd = 'cd ' + destPath + ';' + this.npmCommand + ' install ' + npmName + ' --cache /tmp --production --prefix "' + destPath + '"'
Damit wird das Cache Verzeichnis auf /tmp gesetzt und das ist beschreibbar
Welches Verzeichnis müsste dann Schreibrechte bekommen? Schöner ist natürlich die Variante das Verzeichnis auszutauschen. Wenn ich die Zeile austausche, wie bekomme ich den Quellcode in die CCU, bzw. wie (wo) tausche ich die Zeile aus?
Es ist so, das die ganze Root Partition immer nur lesend gemountet wird, daher das Remount Commando um die Partition beschreibbar zu machen. Einzig /usr/local ist normalerweise beschreibbar. /tmp und /var sind RAM Discs
Achso das File wo es die Zeile zu erweitern gilt liegt in /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/ und heisst Server.js ..
Ich habe die Zeile ausgetauscht, gespeichert und HVL neu gestartet. Leider vergebens. Die Fehlermeldung siht meineserachtens identisch zu der vorherigen aus?
Tue Jan 12 2021 23:03:27 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Error: Command failed: cd /usr/local/addons/hvl;npm install homematic-virtual-backupservice --production --prefix "/usr/local/addons/hvl" npm ERR! code EROFS npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -30 npm ERR! rofs EROFS: read-only file system, mkdir '/.npm' npm ERR! rofs Often virtualized file systems, or other file systems npm ERR! rofs that don't support symlinks, give this error.
at checkExecSyncError (child_process.js:630:11)
at Object.execSync (child_process.js:666:15)
at Server.installNPM (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1472:30)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1172:26
at Array.some (<anonymous>)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1167:18
at Server.buildPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1242:13)
at Server.fetchPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1220:14)
at Server.installPlugin (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1165:10)
at Server.handleConfigurationRequest (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:653:26)
Tue Jan 12 2021 23:03:17 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - Installing homematic-virtual-backupservice to /usr/local/addons/hvl Tue Jan 12 2021 23:02:56 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - done Tue Jan 12 2021 23:02:56 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - Restart (/etc/init.d/S51hvl restart) Tue Jan 12 2021 22:52:19 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Error: Command failed: cd /usr/local/addons/hvl;npm install homematic-virtual-backupservice --production --prefix "/usr/local/addons/hvl" npm ERR! code EROFS npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -30 npm ERR! rofs EROFS: read-only file system, mkdir '/.npm' npm ERR! rofs Often virtualized file systems, or other file systems npm ERR! rofs that don't support symlinks, give this error.
at checkExecSyncError (child_process.js:630:11)
at Object.execSync (child_process.js:666:15)
at Server.installNPM (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1472:30)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1172:26
at Array.some (<anonymous>)
at /usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1167:18
at Server.buildPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1242:13)
at Server.fetchPluginList (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1220:14)
at Server.installPlugin (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1165:10)
at Server.handleConfigurationRequest (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:653:26)
Kann es sein, das du dich geirrt hast? Du schreibst oben, dass das temp Verzeichnis schreibgeschützt ist. In der geändertten Komandozeile verweist du aber auf ein temp Verzeichnis, oder irre ich da?
Ich habe die andere Option gewählt... was soll ich sagen, ich installiere soeben diverse Plugins im Plugin :-)
mount -o remount,rw /
und hinterher wieder auf RO
mount -o remount,ro /
das einzige, was ich nicht installieren kann, ist das tägliche Backup...
Tue Jan 12 2021 23:14:27 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Cannot initialize Backup - TypeError: Cannot set property 'callback' of null at BackupPlatform.schedule (/usr/local/addons/hvl/node_modules/homematic-virtual-backupservice/BackupPlatform.js:63:22) at BackupPlatform.init (/usr/local/addons/hvl/node_modules/homematic-virtual-backupservice/BackupPlatform.js:45:10) at new module.exports (/usr/local/addons/hvl/node_modules/homematic-virtual-backupservice/index.js:10:19) at Server._loadPlugins (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1287:40) at Server.reloadPlugins (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:248:25) at Server.activatePlugin (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:1106:10) at Server.handleConfigurationRequest (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:669:30) at ConfigurationServer.<anonymous> (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/Server.js:132:26) at ConfigurationServer.emit (events.js:315:20) at Server.handleRequest (/usr/local/addons/hvl/node_modules/homematic-virtual-interface/lib/ConfigurationServer.js:106:26)
Hast du dafür das gesamte root Verzeichnis beschreibbar gemacht?
Eleganter wäre natürlich die andere Variante.
oh. genau das versuche ich die ganze Zeit.
Das Backup Problem kann ich bestätigen. Selbes Problem. Add on wird als Installiert angezeigt, kann aber nicht aktiviert werden.
die Ursache scheint was anderes zu sein...
Backup schau ich mir an ... ist ein anderes Problem ...
HVL läuft bei mir direkt auf der Raspbarrymatic (ehemalige CCU3). Nach der Installation von HVL ließen sich Mudule installieren, aktivieren und einrichten. Dann hatte ich wie hier bei den Eintägen zu lesen, das Problem, dass HVL nach einem Firmwareupdate nicht richtig lief, da dort immer systeminterne Einträge verschunden sind. Dieses Problem wurde dank thkl gefixt und leuft seit dem auch super (Beim letzten Update keine Probleme). Allerdings lassen sich seit irgenwann mal, vermutlich aufgetreten mit dem gefixten Problem, keinerlei Module mehr installieren. Im Logfile erscheinen folgende Einträge (Reproduzierbar mit jedem Modul):
Wed Dec 30 2020 23:49:02 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Error: Command failed: cd /usr/local/addons/hvl;npm install homematic-virtual-backupservice --production --prefix "/usr/local/addons/hvl" npm ERR! code EROFS npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -30 npm ERR! rofs EROFS: read-only file system, mkdir '/.npm' npm ERR! rofs Often virtualized file systems, or other file systems npm ERR! rofs that don't support symlinks, give this error.
Wed Dec 30 2020 23:48:52 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - Installing homematic-virtual-backupservice to /usr/local/addons/hvl Wed Dec 30 2020 23:48:26 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - done Wed Dec 30 2020 23:48:26 GMT+0100 (CET)[Homematic Virtual Interface.Server] [INFO] - Restart (/etc/init.d/S51hvl restart) Wed Dec 30 2020 23:41:28 GMT+0100 (CET)[Homematic Virtual Interface.Server] [ERROR] - Error: Command failed: cd /usr/local/addons/hvl;npm install homematic-virtual-sonosdevice --production --prefix "/usr/local/addons/hvl" npm ERR! code EROFS npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -30 npm ERR! rofs EROFS: read-only file system, mkdir '/.npm' npm ERR! rofs Often virtualized file systems, or other file systems npm ERR! rofs that don't support symlinks, give this error.
Leider kann ich damit nichts anfangen. Vielleicht jemand eine Idee? Neuinstallation von HVL in allen möglichen Variationen bringen leider keinen Erfolg.