giaever-online-iot / zwave-js-ui

Fully configurable Z-wave JS Control Panel and Z-Wave to MQTT Gateway
MIT License
10 stars 1 forks source link

Unable to start `cannot create user data directory: failed to verify SELinux context of /root/snap: exec: "matchpathcon": executable file not found in $PATH` #12

Closed LordMike closed 4 months ago

LordMike commented 4 months ago

Hey,

A few hours ago my zwave-js ui stopped working and the last logs I have are this. I accidentally left the snap on the edge version, so I think when you pushed a few hours ago (v371) it rebooted and then stopped. I have no idea what might've caused this now - but it seems I'm running SELinux somehow (Ubuntu 22.04).

Anyhoo. I'm downgrading to stable (where I should've been anyways :)) - but I wanted to let you know in case you didn't know. :)

May 27 21:26:59 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:26:59.330 INFO Z-WAVE: [Node 023] Metadata updated: 50-0-value-66561
May 27 21:26:59 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:26:59.333 INFO Z-WAVE: [Node 023] Value updated: 50-0-value-66561 225.259 => 224.989
May 27 21:27:03 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:03.881 INFO Z-WAVE: [Node 022] Metadata updated: 50-0-value-65537
May 27 21:27:03 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:03.884 INFO Z-WAVE: [Node 022] Value updated: 50-0-value-65537 67.463 => 67.463
May 27 21:27:04 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:04.879 INFO Z-WAVE: [Node 022] Metadata updated: 50-0-value-66049
May 27 21:27:04 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:04.881 INFO Z-WAVE: [Node 022] Value updated: 50-0-value-66049 2.104 => 2.113
May 27 21:27:05 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:05.879 INFO Z-WAVE: [Node 022] Metadata updated: 50-0-value-66561
May 27 21:27:05 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:27:05.881 INFO Z-WAVE: [Node 022] Value updated: 50-0-value-66561 224.54 => 224.72
May 27 21:30:34 mbwodr02 systemd[1]: Stopping Service for snap application zwave-js-ui.zwave-js-ui...
May 27 21:30:34 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:30:34.658 WARN APP: Shutdown detected: closing clients...
May 27 21:30:34 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:30:34.659 INFO GATEWAY: Closing Gateway...
May 27 21:30:34 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:30:34.660 INFO GATEWAY: Driver is CLOSED
May 27 21:30:34 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:30:34.672 INFO Z-WAVE-SERVER: Client disconnected
May 27 21:30:34 mbwodr02 zwave-js-ui.zwave-js-ui[2360122]: 2024-05-27 21:30:34.683 INFO Z-WAVE-SERVER: Server closed
May 27 21:30:34 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Deactivated successfully.
May 27 21:30:34 mbwodr02 systemd[1]: Stopped Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:34 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Consumed 12h 23min 31.327s CPU time.
May 27 21:30:39 mbwodr02 systemd[1]: Started Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:40 mbwodr02 zwave-js-ui.zwave-js-ui[1571418]: cmd_run.go:1046: WARNING: cannot create user data directory: failed to verify SELinux context of /root/snap: exec: "matchpathcon": executable file not found in $PATH
May 27 21:30:40 mbwodr02 root[1571461]: zwave-js-ui: Missing plug: «serial-port»
May 27 21:30:40 mbwodr02 root[1571462]: zwave-js-ui: Connect with:
May 27 21:30:40 mbwodr02 root[1571463]: zwave-js-ui: $ sudo snap connect zwave-js-ui:serial-port <slot name>
May 27 21:30:42 mbwodr02 systemd[1]: Stopping Service for snap application zwave-js-ui.zwave-js-ui...
May 27 21:30:42 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Deactivated successfully.
May 27 21:30:42 mbwodr02 systemd[1]: Stopped Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:42 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Consumed 2.202s CPU time.
May 27 21:30:42 mbwodr02 systemd[1]: Started Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:42 mbwodr02 zwave-js-ui.zwave-js-ui[1571682]: cmd_run.go:1046: WARNING: cannot create user data directory: failed to verify SELinux context of /root/snap: exec: "matchpathcon": executable file not found in $PATH
May 27 21:30:42 mbwodr02 root[1571718]: zwave-js-ui: Missing plug: «serial-port»
May 27 21:30:42 mbwodr02 root[1571719]: zwave-js-ui: Connect with:
May 27 21:30:42 mbwodr02 root[1571720]: zwave-js-ui: $ sudo snap connect zwave-js-ui:serial-port <slot name>
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571682]: > zwave-js-ui@9.12.0 start
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571682]: > node --preserve-symlinks server/bin/www.js
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]: node:internal/modules/cjs/loader:1143
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:   throw err;
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:   ^
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]: Error: Cannot find module '/snap/zwave-js-ui/371/lib/node_modules/zwave-js-ui/server/bin/www.js'
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:     at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:     at Module._load (node:internal/modules/cjs/loader:981:27)
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12)
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:     at node:internal/main/run_main_module:28:49 {
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:   code: 'MODULE_NOT_FOUND',
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]:   requireStack: []
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]: }
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571807]: Node.js v18.20.3
May 27 21:30:45 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Main process exited, code=exited, status=1/FAILURE
May 27 21:30:45 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Failed with result 'exit-code'.
May 27 21:30:45 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Consumed 3.716s CPU time.
May 27 21:30:45 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Scheduled restart job, restart counter is at 1.
May 27 21:30:45 mbwodr02 systemd[1]: Stopped Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:45 mbwodr02 systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Consumed 3.716s CPU time.
May 27 21:30:45 mbwodr02 systemd[1]: Started Service for snap application zwave-js-ui.zwave-js-ui.
May 27 21:30:45 mbwodr02 zwave-js-ui.zwave-js-ui[1571815]: cmd_run.go:1046: WARNING: cannot create user data directory: failed to verify SELinux context of /root/snap: exec: "matchpathcon": executable file not found in $PATH
May 27 21:30:46 mbwodr02 root[1571859]: zwave-js-ui: Missing plug: «serial-port»
May 27 21:30:46 mbwodr02 root[1571860]: zwave-js-ui: Connect with:
May 27 21:30:46 mbwodr02 root[1571861]: zwave-js-ui: $ sudo snap connect zwave-js-ui:serial-port <slot name>
LordMike commented 4 months ago

For future readers. I followed some advice which had me install selinux-policy-default and then set SELINUX=disabled in /etc/selinux/config.

I do not know why I'm seeing selinux stuff as apparmor is ubuntus preference. :|

So yea. I probably didn't need to nuke my snap, but a quick restore from backup and I'm back.. wee :)

jmgiaever commented 4 months ago

Hi,

Yes, it's not wise to use the edge channel. The snap is now built slightly differently and also uses the core24 base.

It should be fixed now, so if you're up to give it a try, you can try it from the edge channel.

jmgiaever commented 4 months ago

Should be fixed now. Please reopen if the issue isn't resolved for you.