NUT Package (2.8.1 and above)
-
@apremselaar said in NUT Package (2.8.1 and above):
/var/log/system.log.3:Feb 13 10:17:19 pfs tripplite_usb[79064]: Signal 15: exiting
Unfortunately the only log entry from the tripplite_usb process is an exit signal.
It's more complicated, but would you try the following?
First, this insures that the nut service is running:
/usr/local/etc/rc.d/nut.sh restart
This kills any driver that may be running:
killall tripplite_usb
This starts the tripplite_usb driver in debug mode:
/usr/local/libexec/nut/tripplite_usb -D -a RackTripp
The driver will output debug information in the shell. Let it run for a few seconds, then you can kill it. Please post the output. Thanks.
-
@dennypage Thanks for all of your assistance with this issue. Here is the output you requested:
[23.09.1-RELEASE][root@pfs.internal]/root: /usr/local/libexec/nut/tripplite_usb -D -a RackTripp Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1.1) Warning: This is an experimental driver. Some features may not function correctly. 0.000000 [D1] testval_reloadable: setting 'user' exists and differs: new value 'root' vs. 'nut' 0.000018 [D1] Overriding previously specified user 'nut' with 'root' specified in global section 0.000047 [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --without-nut_monitor --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --without-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0 0.000061 [D1] debug level is '1' 0.000492 [D1] Succeeded to become_user(root): now UID=0 GID=0 0.000830 [D1] nut_libusb_open: invalid libusb bus number 0 0.049407 libusb1: Could not open any HID devices: insufficient permissions on everything 0.049435 No matching USB/HID UPS found 0.049457 upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it [23.09.1-RELEASE][root@pfs.internal]/root:
and in case it's helpful, my ups.conf:
[23.09.1-RELEASE][root@pfs.internal]/root: cat /usr/local/etc/nut/ups.conf user=root [RackTripp] driver=tripplite_usb port=auto
-
@apremselaar Thank you. While I research, would you repeat the test without "user=root" please?
-
@dennypage Here is the output with "user=root" removed:
[23.09.1-RELEASE][root@pfs.internal]/root: /usr/local/libexec/nut/tripplite_usb -D -a RackTripp Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1.1) Warning: This is an experimental driver. Some features may not function correctly. 0.000000 [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --without-nut_monitor --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --without-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0 0.000055 [D1] debug level is '1' 0.000556 [D1] Succeeded to become_user(nut): now UID=316 GID=316 0.048106 libusb1: Could not open any HID devices: insufficient permissions on everything 0.048125 No matching USB/HID UPS found 0.048153 upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it [23.09.1-RELEASE][root@pfs.internal]/root:
-
@apremselaar Sorry for putting you through so many steps. It's hard when you don't have the same gear.
Would you mind repeating the test with the attached driver please? You will need to unzip the file. The checksum of the unzipped file is 36207.
Thanks
-
@apremselaar Also, attached is the release version of NUT 2.8.1 built from the release source rather than from the dev source. The checksum of the unzipped file is 28662.
-
@dennypage here is the debug output from this app:
[23.09.1-RELEASE][root@pfs.internal]/home/alan: ./tripplite_usb -D -a RackTripp Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1.1) Warning: This is an experimental driver. Some features may not function correctly. 0.000000 [D1] Using USB implementation: libusb-1.0.0 (API: 0x1000102) 0.000102 [D1] testval_reloadable: setting 'user' exists and differs: new value 'root' vs. 'nut' 0.000113 [D1] Overriding previously specified user 'nut' with 'root' specified in global section 0.000141 [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.9 --without-python2 --with-python3=/usr/local/bin/python3.9 --without-nut_monitor --with-ltdl --with-nut-scanner --without-avahi --without-cgi --without-dev --without-freeipmi --with-ipmi --with-doc=no --without-modbus --without-neon --without-nss --with-openssl --without-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/share/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0 0.000155 [D1] debug level is '1' 0.000588 [D1] Succeeded to become_user(root): now UID=0 GID=0 0.000925 [D1] nut_libusb_open: invalid libusb bus number 0 0.049046 libusb1: Could not open any HID devices: insufficient permissions on everything 0.049060 No matching USB/HID UPS found 0.049087 upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
-
@dennypage here is the debug output from this version:
(I had to put it in a different directory and rename it to tripplite_usb or it complained about a config mismatch)[23.09.1-RELEASE][root@pfs.internal]/home/alan/2.8.1: ./tripplite_usb -D -a RackTripp Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1) Warning: This is an experimental driver. Some features may not function correctly. 0.000000 [D1] testval_reloadable: setting 'user' exists and differs: new value 'root' vs. 'nut' 0.000017 [D1] Overriding previously specified user 'nut' with 'root' specified in global section 0.000047 [D1] Network UPS Tools version 2.8.1 (release/snapshot of 2.8.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.9 --without-python2 --with-python3=/usr/local/bin/python3.9 --without-nut_monitor --with-ltdl --with-nut-scanner --without-avahi --without-cgi --without-dev --without-freeipmi --without-ipmi --with-doc=no --without-modbus --without-neon --without-nss --with-openssl --without-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/share/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0 0.000070 [D1] debug level is '1' 0.000636 [D1] Succeeded to become_user(root): now UID=0 GID=0 0.001015 [D1] nut_libusb_open: invalid libusb bus number 0 0.051327 libusb1: Could not open any HID devices: insufficient permissions on everything 0.051346 No matching USB/HID UPS found 0.051374 upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
-
@dennypage Also, just to clarify, it was all working for me without issues with the packaged version 2.8.2, it only broke once I installed 2.8.2_1
-
@apremselaar said in NUT Package (2.8.1 and above):
@dennypage Also, just to clarify, it was all working for me without issues with the packaged version 2.8.2, it only broke once I installed 2.8.2_1
Perhaps a dump question, but did you reboot after installing nut ?
In my case, I was getting this permission denied issue and after a reboot, nut is working. -
@mcury yes, I've tried rebooting as well as unplugging and replugging in the USB connection to the UPS
-
@apremselaar said in NUT Package (2.8.1 and above):
Also, just to clarify, it was all working for me without issues with the packaged version 2.8.2, it only broke once I installed 2.8.2_1
This is puzzling.
The dependency that was used in pfSense-pkg-nut-2.8.2, was nut-devel-2023.10.07. For reference, the dependency used in pfSense-pkg-nut-2.8.2_1 is nut-devel-2024.01.03.
I would have expected the file I posted above, "tripplite_usb-2.8.1.zip", to work as that version is from the actual 2.8.1 release and should be almost identical to the version in nut-devel-2023.10.07.
I pulled the tripplite_usb executable from nut-devel-2023.10.07 and have attached it here. Can you please reconfirm that it works with the same test? Thanks!
-
@dennypage Sorry, I'm not seeing the attachment.
Is it possible that when I did the package update it (I assume) also updated the nut-devel package and perhaps the executable is linking to something in the dependency dynamically? or is the tripplite_usb part of the nut-devel package?
Thanks!
-
@dennypage sorry, it appears that for some reason the link to the attachment was delayed in its display. I've got it now and have downloaded it. will try it in a moment
-
@apremselaar said in NUT Package (2.8.1 and above):
Sorry, I'm not seeing the attachment.
Well, isn't that embarrassing! My bad. I just edited the post to add the attachment.
Is it possible that when I did the package update it (I assume) also updated the nut-devel package and perhaps the executable is linking to something in the dependency dynamically? or is the tripplite_usb part of the nut-devel package?
NUT itself, including all executables, comes from the dependency which is currently nut-devel-2024.01.03. The pfSense package, pfSense-pkg-nut, only has the bits required to integrate with pfSense (mostly php). The pfSense package states a dependency on the specific version of the nut package that it wants.
-
@dennypage Yeah, this seems to work. I let it sit for about 30 seconds before hitting ^C to exit. here's the output:
[23.09.1-RELEASE][root@pfs.internal]/home/alan/2023.10.07: ./tripplite_usb -D -a RackTripp Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.34 (2.8.0.1) Warning: This is an experimental driver. Some features may not function correctly. 0.000000 [D1] testval_reloadable: setting 'user' exists and differs: new value 'root' vs. 'nut' 0.000018 [D1] Overriding previously specified user 'nut' with 'root' specified in global section 0.000048 [D1] Network UPS Tools version 2.8.0.1 (release/snapshot of 2.8.0.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --with-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0 0.000064 [D1] debug level is '1' 0.000501 [D1] Succeeded to become_user(root): now UID=0 GID=0 0.000841 [D1] nut_libusb_open: invalid libusb bus number 0 0.000860 [D1] nut_libusb_open: invalid libusb bus number 0 0.000927 [D1] nut_libusb_open: invalid libusb bus number 0 0.006914 Detected a UPS: Tripp Lite /TRIPP LITE SMART500RT1U 0.058424 Using binary SMART protocol (3005) 0.418455 Unit ID: 65535 Attached to Tripp Lite TRIPP LITE SMART500RT1U 0.946800 [D1] Group and/or user account for this driver was customized ('root:nut') compared to built-in defaults. Fixing socket '/var/db/nut/tripplite_usb-RackTripp' ownership/access. 0.946853 [D1] Group access for this driver successfully fixed 0.946875 Running as foreground process, not saving a PID file 0.946893 [D1] Driver initialization completed, beginning regular infinite loop 0.946898 upsnotify: failed to notify about state 2: no notification tech defined, will not spam more about it ^C 41.192535 [D1] set_exit_flag: raising exit flag due to signal 2 41.192563 Signal 2: exiting [23.09.1-RELEASE][root@pfs.internal]/home/alan/2023.10.07:
-
@apremselaar I believe I found the tripplite issue.
Please try adding
upsid=65535
In the "Extra Arguments to driver" section.
You should not need the "user=root".
-
@dennypage yep! that did it.
Thank you!
-
@apremselaar Excellent. It is a tripplite_usb specific bug, introduced 2023.10.11, right after our first devel snapshot. The fix went in on 2024.01.31, right after our most recent devel snapshot.
I expect the fix to be in the next NUT version, after which you may remove the upsid entry from your configuration. Having it in there will not hurt anything if you should forget.
FWIW, upsid is a new optional feature that allows you to select among multiple Tripplite UPSs attached to the same system. The bug was that the feature wasn't quite optional enough.
-
@dennypage I see. Well I'm glad that you were able to identify the problem and a fix for it.
Thanks again for all of your effort and quick responses.