debian: fix handling SysV units in disableSystemdUnits
systemctl is-enabled always reports "disabled" for them (actually not a
real "disabled", but and error, but exit code is the same). So simply
always disable the unit, it is no-op for already disabled ones.
BTW systemctl preset also do not work for them.
(cherry picked from commit 52d502bce2
)
This commit is contained in:
parent
fc646bc71b
commit
35b364dfac
31
debian/qubes-core-agent.postinst
vendored
31
debian/qubes-core-agent.postinst
vendored
|
@ -149,25 +149,20 @@ displayFailedStatus() {
|
|||
# Disable systemd units
|
||||
disableSystemdUnits() {
|
||||
for unit in $*; do
|
||||
systemctl is-enabled ${unit} > /dev/null 2>&1 && {
|
||||
echo "Disabling ${unit}..."
|
||||
systemctl is-active ${unit} > /dev/null 2>&1 && {
|
||||
systemctl stop ${unit} > /dev/null 2>&1 || displayFailedStatus stop ${unit}
|
||||
}
|
||||
if [ -f /lib/systemd/system/${unit} ]; then
|
||||
if fgrep -q '[Install]' /lib/systemd/system/${unit}; then
|
||||
systemctl disable ${unit} > /dev/null 2>&1 || displayFailedStatus disable ${unit}
|
||||
else
|
||||
echo "Masking service: ${unit}"
|
||||
systemctl mask ${unit}
|
||||
fi
|
||||
else
|
||||
systemctl disable ${unit} > /dev/null 2>&1 || displayFailedStatus disable ${unit}
|
||||
fi
|
||||
} || {
|
||||
echo "It appears ${unit} is already disabled!"
|
||||
#displayFailedStatus is-disabled ${unit}
|
||||
echo "Disabling ${unit}..."
|
||||
systemctl is-active ${unit} > /dev/null 2>&1 && {
|
||||
systemctl stop ${unit} > /dev/null 2>&1 || displayFailedStatus stop ${unit}
|
||||
}
|
||||
if [ -f /lib/systemd/system/${unit} ]; then
|
||||
if fgrep -q '[Install]' /lib/systemd/system/${unit}; then
|
||||
systemctl disable ${unit} > /dev/null 2>&1 || displayFailedStatus disable ${unit}
|
||||
else
|
||||
echo "Masking service: ${unit}"
|
||||
systemctl mask ${unit}
|
||||
fi
|
||||
else
|
||||
systemctl disable ${unit} > /dev/null 2>&1 || displayFailedStatus disable ${unit}
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user