[Nut-upsuser] Fedora 40 nut-server not starting at boot
Bill Gee
bgee at campercaver.net
Mon Jul 29 15:28:38 BST 2024
Looking at my system, I find that /usr/lib/tmpfiles.d/nut-client.conf
already exists. Its contents are
============ begin paste
# State file (e.g. upsd to driver) and pidfile location for NUT:
D /run/nut 0770 root nut - -
X /run/nut
=========== end paste
The directory /run/nut exists with permissions 0770. The owner and
group are root:dialout, which seems odd. The system has a group called
"nut" and also a group called "dialout" which has as one of its members
the user named "nut". /run/nut contains several files:
=========== begin paste
[root at mythtv log]# ll /run/nut
total 4
drwxrwx--- 2 nut dialout 40 Jul 28 16:24 upssched
srw-rw---- 1 nut nut 0 Jul 28 16:26 usbhid-ups-cyberpower
-rw-r--r-- 1 nut nut 5 Jul 28 16:26 usbhid-ups-cyberpower.pid
============== end paste
Looking through the system log file /var/log/messages, I see this issued
during startup:
=========== begin paste
Jul 28 16:03:38 mythtv systemd-tmpfiles[520178]:
/usr/lib/tmpfiles.d/nut-common-tmpfiles.conf:8: Duplicate line for path
"/run/nut", ignoring.
Jul 28 16:06:49 mythtv nut-server[8759]: mainloop: Interrupted system call
Jul 28 16:06:49 mythtv nut-server[8759]: Signal 15: exiting
=========== end paste
A successful start gives these entries in /var/log/messages:
=========== begin paste
Jul 28 16:07:58 mythtv systemd-tmpfiles[733]:
/usr/lib/tmpfiles.d/nut-common-tmpfiles.conf:8: Duplicate line for path
"/run/nut", ignoring.
Jul 28 16:09:58 mythtv systemd[1]: Created slice
system-nut\x2ddriver.slice - Slice /system/nut-driver.
Jul 28 16:09:58 mythtv udevadm[1663]: systemd-udev-settle.service is
deprecated. Please fix nut-driver at cyberpower.service not to pull it in.
Jul 28 16:09:58 mythtv systemd[1]: Starting
nut-driver at cyberpower.service - Network UPS Tools - device driver for
NUT device 'cyberpower'...
Jul 28 16:09:58 mythtv nut-driver at cyberpower[1696]: Using subdriver:
CyberPower HID 0.80
Jul 28 16:09:58 mythtv nut-driver at cyberpower[1696]: Network UPS Tools -
Generic HID driver 0.53 (2.8.2)
Jul 28 16:09:58 mythtv nut-driver at cyberpower[1696]: USB communication
driver (libusb 1.0) 0.47
Jul 28 16:09:58 mythtv nut-driver at cyberpower[1696]:
cps_adjust_battery_scale: battery readings will be scaled by 2/3
Jul 28 16:09:58 mythtv nut-driver at cyberpower[1667]: Network UPS Tools -
UPS driver controller 2.8.2
Jul 28 16:09:58 mythtv systemd[1]: Started nut-driver at cyberpower.service
- Network UPS Tools - device driver for NUT device 'cyberpower'.
Jul 28 16:09:58 mythtv systemd[1]: Reached target nut-driver.target -
Network UPS Tools - target for power device drivers on this system.
Jul 28 16:09:58 mythtv systemd[1]: Starting nut-server.service - Network
UPS Tools - power devices information server...
Jul 28 16:09:58 mythtv nut-server[1706]: Limit Soft
Limit Hard Limit Units
Jul 28 16:09:58 mythtv nut-server[1706]: Max open files
1048576 1048576 files
Jul 28 16:09:58 mythtv systemd[1]: Started nut-server.service - Network
UPS Tools - power devices information server.
Jul 28 16:09:59 mythtv nut-server[1705]: fopen /run/nut/upsd.pid: No
such file or directory
Jul 28 16:09:59 mythtv nut-server[1705]: Could not find PID file
'/run/nut/upsd.pid' to see if previous upsd instance is already running!
Jul 28 16:09:59 mythtv nut-server[1705]: listening on ::1 port 3493
Jul 28 16:09:59 mythtv nut-server[1705]: listening on 127.0.0.1 port 3493
Jul 28 16:09:59 mythtv nut-server[1705]: Connected to UPS [cyberpower]:
usbhid-ups-cyberpower
Jul 28 16:09:59 mythtv nut-server[1705]: Found 1 UPS defined in ups.conf
Jul 28 16:09:59 mythtv nut-server[1705]: Running as foreground process,
not saving a PID file
Jul 28 16:09:59 mythtv nut-server[1705]: upsnotify: failed to notify
about state 2: no notification tech defined, will not spam more about it
============ end paste
===============
Bill Gee
On 7/28/24 17:44, Simon Wilson via Nut-upsuser wrote:
> I've had fun with nut on RH systems, these are my notes to get it working:
>
> /Create /usr/lib/tmpfiles.d/nut-client.conf:/
>
> /D /run/nut 0770 root nut - /
>
> /...the file did not exist, and so the PID folder/file was not getting
> generated. Then the driver would start./
>
> /Also had to setup enabled services (still not 100% confident that this
> is totally correct):/
>
> /[root at emp80 ups]# systemctl list-unit-files | grep -i nut
> nut-driver-enumerator.path
> disabled nut-driver-enumerator.service
> disabled nut-driver at .service
> disabled nut-monitor.service
> disabled nut-server.service
> disabled nut-driver.target
> enabled nut.target
> enabled/
>
> I made no changes to unit files. Result:
>
> [root at emp90 ~]# systemctl list-units | grep nut
> nut-driver at eaton5sx.service
> loaded active running Network
> UPS Tools - device driver for eaton5sx
> nut-monitor.service
> loaded active running Network
> UPS Tools - power device monitor and shutdown controller
> nut-server.service
> loaded active running Network UPS
> Tools - power devices information server
> system-nut\x2ddriver.slice
> loaded active active Slice
> /system/nut-driver
> nut-driver.target
> loaded active active Network
> UPS Tools - target for power device drivers on this system
> nut.target
> loaded active active Network UPS
> Tools - target for power device drivers, data server and monitoring
> client (if enabled) on this system
>
> Simon
>
>
> On Monday, July 29, 2024 07:52 AEST, Tim Dawson <tadawson at tpcsvc.com> wrote:
>
>> Look in the startup logs and see where itnis starting. I'm not at a RH
>> system at the moment, but at work, I have had to do this, so can look
>> there,mor perhaps put Nut on the test RH8 VM I spun up for other
>> rrasons on Friday and work out the syntax. Not sure if the systemd
>> file you are using came in the RPM or not, but if it did, it's almost
>> a crime that this critical detail was overlooked.
>>
>>
>>
>> On July 28, 2024 5:33:25 PM EDT, Bill Gee <bgee at campercaver.net> wrote:
>>
>> No luck. I modified both /usr/lib/systemd/system/nut.target and
>> /usr/lib/systemd/nut-server.target The behavior did not change.
>>
>> Looking at it a bit more, I noticed a comment in
>> /usr/lib/systemd/system/nut-server.service to the effect that the
>> network does not need to be running - merely present - when nut
>> starts. If a running network is wanted, then a new file needs to
>> be added.
>>
>> I created /etc/systemd/system/nut-server.service.d/network.conf
>> with these three lines:
>>
>> [Unit]
>> Requires=network-online.target
>> After=network-online.target
>>
>> I ran "systemctl daemon-reload" and rebooted. Still no luck.
>> nut-server did not start during the boot. It starts with no
>> problems when run from a command line:
>> ------------------------------------------------------------------------
>> [root at mythtv ~]# systemctl status nut-server
>> ○ nut-server.service - Network UPS Tools - power devices
>> information server
>> Loaded: loaded (/usr/lib/systemd/system/nut-server.service;
>> enabled; preset: disabled)
>> Drop-In: /usr/lib/systemd/system/service.d
>> └─10-timeout-abort.conf
>> /etc/systemd/system/nut-server.service.d
>> └─environ.conf, network.conf
>> Active: inactive (dead)
>> [root at mythtv ~]# systemctl start nut-server
>> [root at mythtv ~]# systemctl status nut-server
>> ● nut-server.service - Network UPS Tools - power devices
>> information server
>> Loaded: loaded (/usr/lib/systemd/system/nut-server.service;
>> enabled; preset: disabled)
>> Drop-In: /usr/lib/systemd/system/service.d
>> └─10-timeout-abort.conf
>> /etc/systemd/system/nut-server.service.d
>> └─environ.conf, network.conf
>> Active: active (running) since Sun 2024-07-28 16:26:42 CDT;
>> 2s ago
>> Process: 1703 ExecStartPre=/usr/bin/systemd-tmpfiles --create
>> /usr/lib/tmpfiles.d/nut-common-tmpfiles.conf (code=ex>
>> Process: 1706 ExecStartPost=/bin/grep -E Units|Max open files
>> /proc/${MAINPID}/limits (code=exited, status=0/SUCCES>
>> Main PID: 1705 (upsd)
>> Tasks: 1 (limit: 9460)
>> Memory: 944.0K (peak: 2.9M)
>> CPU: 27ms
>> CGroup: /system.slice/nut-server.service
>> └─1705 /usr/sbin/upsd -F
>> ------------------------------------------------------------------------
>> Bill Gee
>>
>> On 7/28/24 13:53, Tim Dawson wrote:
>>
>> Wants=network.target network-online.target
>> After=network.target network-online.target
>>
>> Seems to be the case on RedHat8, and other RedHat based
>> distros should match.
>>
>>
>> On July 28, 2024 1:56:49 PM EDT, Bill Gee
>> <bgee at campercaver.net> wrote:
>>
>> These files came from the distro package. I did not change
>> anything
>> myself. Systemd newbie here ...
>>
>> So the detailed question is - Exactly what change is
>> needed to add
>> the network-target dependency? I suspect it is not enough
>> to simply
>> remove the comment symbol on those two lines.
>> ------------------------------------------------------------------------
>> Bill Gee
>>
>> On 7/28/24 10:10, Tim Dawson wrote:
>>
>> Seems like you would also want the "network-target"
>> dependency,
>> since nut will likelynfail without networking being
>> up. (This
>> would also explwin why the sysctl start ... works
>> after boot,
>> but not during . . .
>>
>>
>> On July 28, 2024 10:37:15 AM EDT, Bill Gee
>> <bgee at campercaver.net> wrote:
>>
>> I have also been having this problem. Checking a few
>> of the files
>>
>> ------------------------------------------------------------------------
>> Nut-upsuser mailing list
>> Nut-upsuser at alioth-lists.debian.net
>> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser <https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser>
>>
>> --
>> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>
>
> --
>
> Simon Wilson
> M: 0400 121 116
>
> _______________________________________________
> Nut-upsuser mailing list
> Nut-upsuser at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser
More information about the Nut-upsuser
mailing list