[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