mirror of
https://github.com/systemd/systemd.git
synced 2024-11-24 02:33:36 +08:00
rpm triggers: do nothing if systemd is not running (#5065)
If we are running in a chroot/container/..., we would print a useless warning about not being able to communicate with systemd. Trying to do daemon-reload is pointless in those cases, so let's just skip all actions in that case. The check uses /run/system/system, as recommended by sd_booted(3). https://bugzilla.redhat.com/show_bug.cgi?id=1411299
This commit is contained in:
parent
a69f65dd3d
commit
13749f5473
@ -27,11 +27,13 @@
|
||||
-- installed, because other cases are covered by the *un scriptlets,
|
||||
-- so sometimes we will reload needlessly.
|
||||
|
||||
pid = posix.fork()
|
||||
if pid == 0 then
|
||||
assert(posix.exec("%{_bindir}/systemctl", "daemon-reload"))
|
||||
elseif pid > 0 then
|
||||
posix.wait(pid)
|
||||
if posix.access("/run/systemd/system") then
|
||||
pid = posix.fork()
|
||||
if pid == 0 then
|
||||
assert(posix.exec("%{_bindir}/systemctl", "daemon-reload"))
|
||||
elseif pid > 0 then
|
||||
posix.wait(pid)
|
||||
end
|
||||
end
|
||||
|
||||
%transfiletriggerun -p <lua> -- @systemunitdir@ /etc/systemd/system
|
||||
@ -48,10 +50,12 @@ end
|
||||
-- file in %transfiletriggerun and execute the daemon-reload in
|
||||
-- the first %filetriggerpostun.
|
||||
|
||||
posix.mkdir("%{_localstatedir}/lib")
|
||||
posix.mkdir("%{_localstatedir}/lib/rpm-state")
|
||||
posix.mkdir("%{_localstatedir}/lib/rpm-state/systemd")
|
||||
io.open("%{_localstatedir}/lib/rpm-state/systemd/needs-reload", "w")
|
||||
if posix.access("/run/systemd/system") then
|
||||
posix.mkdir("%{_localstatedir}/lib")
|
||||
posix.mkdir("%{_localstatedir}/lib/rpm-state")
|
||||
posix.mkdir("%{_localstatedir}/lib/rpm-state/systemd")
|
||||
io.open("%{_localstatedir}/lib/rpm-state/systemd/needs-reload", "w")
|
||||
end
|
||||
|
||||
%filetriggerpostun -P 1000100 -p <lua> -- @systemunitdir@ /etc/systemd/system
|
||||
if posix.access("%{_localstatedir}/lib/rpm-state/systemd/needs-reload") then
|
||||
|
Loading…
Reference in New Issue
Block a user