From da12554998194575c6d32097a17b1003ea0b5918 Mon Sep 17 00:00:00 2001 From: Joe Cooper Date: Sat, 13 Jun 2026 05:34:03 -0500 Subject: [PATCH 1/4] Don't fork. systemd prefers one process. --- webmin-systemd | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/webmin-systemd b/webmin-systemd index d7de6c4d6..52214a373 100644 --- a/webmin-systemd +++ b/webmin-systemd @@ -5,11 +5,10 @@ After=network.target network-online.target [Service] Environment="PERLLIB=WEBMIN_LIBDIR" -ExecStart=WEBMIN_LIBDIR/miniserv.pl WEBMIN_CONFIG/miniserv.conf +ExecStart=WEBMIN_LIBDIR/miniserv.pl --nofork WEBMIN_CONFIG/miniserv.conf ExecStop=WEBMIN_KILLCMD $MAINPID ExecReload=WEBMIN_KILLCMD -HUP $MAINPID PIDFile=WEBMIN_VAR/miniserv.pid -Type=forking Restart=always RestartSec=2s TimeoutSec=15s From 7d6af2074112ede7b9be41af3deb3ca8581661b8 Mon Sep 17 00:00:00 2001 From: Joe Cooper Date: Sat, 13 Jun 2026 15:42:53 -0500 Subject: [PATCH 2/4] Don't need ExecStop if systemd is managing process directly --- webmin-systemd | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/webmin-systemd b/webmin-systemd index 52214a373..34f275644 100644 --- a/webmin-systemd +++ b/webmin-systemd @@ -6,13 +6,10 @@ After=network.target network-online.target [Service] Environment="PERLLIB=WEBMIN_LIBDIR" ExecStart=WEBMIN_LIBDIR/miniserv.pl --nofork WEBMIN_CONFIG/miniserv.conf -ExecStop=WEBMIN_KILLCMD $MAINPID ExecReload=WEBMIN_KILLCMD -HUP $MAINPID -PIDFile=WEBMIN_VAR/miniserv.pid -Restart=always +Restart=on-failure RestartSec=2s -TimeoutSec=15s -TimeoutStopSec=300s +TimeoutStopSec=120s [Install] WantedBy=multi-user.target From 02bdfc20dbf2e4db2dbda58079da690de41741d6 Mon Sep 17 00:00:00 2001 From: Joe Cooper Date: Sat, 13 Jun 2026 15:43:24 -0500 Subject: [PATCH 3/4] Type simple for compat with old systems --- webmin-systemd | 1 + 1 file changed, 1 insertion(+) diff --git a/webmin-systemd b/webmin-systemd index 34f275644..ecb812347 100644 --- a/webmin-systemd +++ b/webmin-systemd @@ -4,6 +4,7 @@ Wants=network-online.target After=network.target network-online.target [Service] +Type=simple Environment="PERLLIB=WEBMIN_LIBDIR" ExecStart=WEBMIN_LIBDIR/miniserv.pl --nofork WEBMIN_CONFIG/miniserv.conf ExecReload=WEBMIN_KILLCMD -HUP $MAINPID From bf722a658d7a183306c1b90e7e0f96767551c5af Mon Sep 17 00:00:00 2001 From: Joe Cooper Date: Sat, 13 Jun 2026 15:59:45 -0500 Subject: [PATCH 4/4] Ah, I guess keep 5 minute TimeoutStopSec --- webmin-systemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webmin-systemd b/webmin-systemd index ecb812347..dc91be820 100644 --- a/webmin-systemd +++ b/webmin-systemd @@ -10,7 +10,7 @@ ExecStart=WEBMIN_LIBDIR/miniserv.pl --nofork WEBMIN_CONFIG/miniserv.conf ExecReload=WEBMIN_KILLCMD -HUP $MAINPID Restart=on-failure RestartSec=2s -TimeoutStopSec=120s +TimeoutStopSec=300s [Install] WantedBy=multi-user.target