[arch-general] systemctl daemon-reexec - anything else needed after systemd update?

David C. Rankin drankinatty at suddenlinkmail.com
Thu Dec 20 03:35:43 UTC 2018


On 12/19/2018 05:57 PM, Ralph Corderoy wrote:
> Hi David,
> 
> Robin wrote:
>>> Is there anything else needed other than daemon-reexec when there is
>>> an update to systemd itself?
>>
>> https://git.archlinux.org/svntogit/packages.git/tree/trunk/systemd.install?h=packages/systemd#n80
> 
> You might be interested in what running process have deleted files still
> open, perhaps because a package upgrade has installed a new version, or
> caused a updated version to be generated.  A quickly knocked together
> pipeline I use is
> 
>     sudo -i lsof -n +c0 |
>     sed -n '1{p;d}; /DEL/{p;d}; / (deleted)$/{p;d}' |
>     egrep -v ' /(SYSV00000000|dev/shm/org\.(chromium\.......|mozilla\.ipc\.[0-9]+\.[0-9]+)|memfd:pulseaudio|tmp/#[0-9]{5,7})\>' |
>     sed '1{h; d}; 2{x; G}'
> 
> Not all the entries it shows matter, of course.  It's up to the reader
> to parse and, say, decide to restart postfix.
> 

Robin, Ralph,

  Thanks. Glad to know it is already handled in post_upgrade(). Interesting
use of lsof and the parse of files open. Most of the Arch systems I have
running are servers, so it is fairly easy just to scan the upgrade list and
note which applications I need to restart.

  The interesting part is that I have religiously done 'daemon-reload' if I
noticed any running unit files updated. Since post_upgrade() calls
daemon-reexex -- I don't even need to do that anymore if systemd is among the
ugrades :)

  It may be worth adding to the systemd wiki page. It is silent about
daemon-reexec and the fact that is called with post_upgrade(). (it's there in
the PKGBUILD, and the post_install output "Reloading system manager
configuration...", but I didn't snap to the fact that "reloading" was doing
the reexec) Learning has occurred.

-- 
David C. Rankin, J.D.,P.E.


More information about the arch-general mailing list