I modified the "slurm.spec" file in the TAR.BZ2 file by prepending "###" to the
`%systemd_postun_with_restart slurmdbd.service`
line at the end, in the "%postun" section and added
`%systemd_postun slurmdbd.service`
That didn't seem to work.
I still ended up with a postuninstall script that tries to restart the slurmdbd
service:
```
# rpm -q --scripts
"rpmbuild.20260204/RPMS/x86_64/slurm-slurmdbd-22.05.4-1.el8.x86_64.rpm"
postinstall scriptlet (using /bin/sh):
if [ $1 -eq 1 ] ; then
# Initial installation
systemctl --no-reload preset slurmdbd.service &>/dev/null || :
fi
preuninstall scriptlet (using /bin/sh):
if [ $1 -eq 0 ] ; then
# Package removal, not upgrade
systemctl --no-reload disable --now slurmdbd.service &>/dev/null || :
fi
postuninstall scriptlet (using /bin/sh):
###
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
systemctl try-restart slurmdbd.service &>/dev/null || :
fi
```
The prepended "###" on that line might've been the problem. If I just changed
the SPEC file to
```
...
%post slurmdbd
%systemd_post slurmdbd.service
%preun slurmdbd
%systemd_preun slurmdbd.service
%postun slurmdbd
%systemd_postun slurmdbd.service
```
,
I then get a better looking postuninstall script:
```
# rpm -q --scripts "rpmbuild.20260204 Modified SPEC
v1/RPMS/x86_64/slurm-slurmdbd-22.05.4-1.el8.x86_64.rpm"
postinstall scriptlet (using /bin/sh):
if [ $1 -eq 1 ] ; then
# Initial installation
systemctl --no-reload preset slurmdbd.service &>/dev/null || :
fi
preuninstall scriptlet (using /bin/sh):
if [ $1 -eq 0 ] ; then
# Package removal, not upgrade
systemctl --no-reload disable --now slurmdbd.service &>/dev/null || :
fi
postuninstall program: /bin/sh
```
Is having an empty "postuninstall program: /bin/sh" entry okay?
--
slurm-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]