[H-GEN] Systemd killing processes after logout
P Newman
moetunes111 at gmail.com
Mon Jun 6 05:20:31 EDT 2016
On 06/06/16 10:24, Russell Stuart wrote:
> [ Humbug *General* list - semi-serious discussions about Humbug and ]
> [ Unix-related topics. Posts from non-subscribed addresses will vanish. ]
>
> At the last Humbug we discussed in new feature in systemd - it now
> kills all background processes on logout, including those run by nohup,
> screen, tmux, mosh and so on. This new behaviour arrived in Debian
> unstable on May 23.
>
> At the meeting there was furious agreement this was insane, (except
> from Clinton, who defended it - but then he defended binary logs when
> they first came out so this wasn't unexpected). The question most
> interesting to me was WTF? - with the W standing for "why". 'nix has
> had a mechanism for do this for as long as I can remember - all
> descendent processes of the login process is sent a HUP signal when it
> exits. It was simple, robust mechanism and had worked well back when
> we had 100's students learning to use computers for the first time on a
> single timesharing machine. So why this new one?
>
> I knew [0] it was because on Desktop's now it's the fashion to have
> background services are started by via RPC (remote procedure call) sent
> to a background daemon, and the background daemon was evidently not
> started by the login shell. I assumed it was a global background
> process, but Clinton insisted a separate background RPC daemon was
> started for each login session.
>
> Turns out we are both 1/2 right. Clinton is right - a separate RPC
> background daemon is started for each login session, but for some
> reason is *not* a descendent of the login process (lightdm in my case).
> So on my laptop I have two trees of processes for my login:
>
> systemd,1 systemd,1
> `-systemd,2356 `-lightdm,1246
> |-(sd-pam),2362 `-lightdm,2347
> |-dbus-daemon,2383 `-lxsession,2375
> |-dconf-service,2880 |-lxpanel,2440
> |-evolution-addre,2914 |-lxpolkit,2439
> | |-evolution-addre,2952 |-openbox,2436
> |-evolution-calen,2889 | |-evolution,2858
> | |-evolution-calen,2896 | `-iceweasel,2749
> | |-evolution-calen,2905 |-pcmanfm,2442
> | |-evolution-calen,2920 |-pidgin,2443
> |-evolution-sourc,2863 |-ssh-agent,2409
> |-gconfd-2,2610
> |-gnome-terminal-,2691
> | |-bash,2697
> | | `-pstree,3639
> |-goa-daemon,2550
> |-goa-identity-se,2561
> |-gvfs-afc-volume,2532
> |-gvfs-goa-volume,2546
> |-gvfs-gphoto2-vo,2541
> |-gvfs-mtp-volume,2537
> |-gvfs-udisks2-vo,2515
> |-gvfsd,2420
> |-gvfsd-fuse,2425
> |-gvfsd-metadata,2868
> `-gvfsd-trash,2498
>
> I have no idea why they designed it that way - in fact it seems utterly
> inexplicable. But it meant when the user logged out the cleanup
> process wasn't simple. With complexity comes bugs, and so often
> background daemons were left running when a GUI user logged out. The
> systemd guys decided the solution wasn't to fix the design, it was to
> use a bigger hammer that impacted not just the GUI users who had the
> original problem - but all of the headless systems maintained by
> sysadmins who, if they have a process running on logout are almost
> certainly wanted it to remain running.
>
> It's mostly developers who run GUI's on Debian (the unwashed masses
> tend to use something like Ubuntu), and it was Debian developers who
> thought this change was a good idea. But when it's all said and done
> Debian's main users are the thousands if not millions of headless
> servers maintained by those sysadmin's. The howls of protest from them
> started 3 days after the change hit unstable, and ramped up rapidly.
> So it's not surprising the Debian systemd packagers have now uploaded a
> new version reverting this particular "improvement".
>
> But this does mean the original problem it was put in to fix remains a
> problem in Debian. In fact it has hit me - I've seen it those
> duplicate copies of Gnome services running on my laptop from time to
> time. I had wondered who they got started.
>
>
> [0] https://github.com/systemd/systemd/issues/2900
> _______________________________________________
> General mailing list
> General at lists.humbug.org.au
> http://lists.humbug.org.au/mailman/listinfo/general
I've passed the stage where systemd's complexity has made it more of a
hassle than a benefit, so much of it is unused on any system I have.
I've started to migrate to non systemd installs now and life is so much
easier. I don't use any desktop environments though.
More information about the General
mailing list