What breakage does this actually fix?
What breakage does this actually fix?
Posted Jun 8, 2016 5:35 UTC (Wed) by iamsrp (subscriber, #84011)Parent article: Distributors ponder a systemd change
srp
Posted Jun 8, 2016 5:59 UTC (Wed)
by marcH (subscriber, #57642)
[Link] (2 responses)
The Linux desktop is coming!
Posted Jun 8, 2016 7:25 UTC (Wed)
by SimonO (guest, #56318)
[Link] (1 responses)
On servers, cluster nodes in a scientific environment, shared desktops, etc. I'd expect this to be disabled by default. With Linux that is the majority of use-cases, as single user linux-desktop is a small niche of the whole spectrum I guess...
The whole thing appears to be in the hands of distributors. Systemd is a raw tool (like a swiss army knife with a BFG 9000 included ;-) and they need to expose only the safe parts for normal use and include some safety precautions for the BFG.
If all distro's have to put in work to make every new systemd release palatable it should become an upstream problem to reduce the redundant work in all distro's.
Posted Jun 8, 2016 8:34 UTC (Wed)
by ovitters (guest, #27950)
[Link]
It's not that much work to integrate new systemd releases. It often aligns behaviour and reduces differences across distribution, making things easier. It is usually the differences causing the interesting bugs. Theoretically you should be able to modify anything you want, but it does lead to bugs.
Posted Jun 8, 2016 6:36 UTC (Wed)
by oldnpastit (subscriber, #95303)
[Link] (2 responses)
> The commit that made the change:
And if you go look at those bugreports, the first of them is complaining that latest dbus leaves processes lying around.
And if you go investigate why dbus is now leaving processes around, it's because gnome leaves special magical gnome per-user processes running after the user's session has terminated. And that in turn is relying on some new systemd features to create a user session which persists (or something, I don't really understand systemd).
Posted Jun 8, 2016 18:56 UTC (Wed)
by drag (guest, #31333)
[Link]
Remember how it was common in Gnome 2-land to have a session manager process? So you could go into there and say 'I want FOO started when I log in'?. People would use it for all sorts of fun things. Starting up browsers, launching their terminals, blocking daemons they didn't want launched.
Then along came XDG and the various *.desktop things to make app menus cross-platform. So you could put *.desktop files in ~/.config/autostart/ and have them autostart when you logged into X (provided you used a desktop environment that was compliant).
Systemd wants to do that same sort of thing for your user, but have it be system-wide. That is one of the reasons they want Kdbus.. so you wouldn't have to run all the dbus-launch stuff for each login. You could have a dbus for a user account and have it 'just work'. Thus you have 'user sessions'.
So a lot of the commands you use for managing the init system for your system can be used to manage your user session for your user by using the '--user' option.
So for example I have a ~/.config/systemd/user/synergys.service on my desktop. When I start up my laptop I have a corresponding synergyc service that launches and they try to talk over a ssh session. I can automate the management of all of this through systemd and '--user'.
systemctl enable --user synergys
systemctl start --user synergys
systemctl status --user synergys
journalctl --user -f
etc etc. These things work as expected, but just for your user account.
Posted Jun 9, 2016 16:06 UTC (Thu)
by cortana (subscriber, #24596)
[Link]
Posted Jun 8, 2016 8:49 UTC (Wed)
by matthias (subscriber, #94967)
[Link] (8 responses)
I have seen processes consuming 100% CPU just because shutdown did not work (the SIGHUP handler was there but failed to terminate the process). Having the session management kill such processes seems reasonable. Therefore it has to know which processes should survive.
Posted Jun 8, 2016 10:25 UTC (Wed)
by NAR (subscriber, #1313)
[Link] (7 responses)
As to the technical choice that every program who wants to avoid getting killed after logout has to link against libsystemd - throwing out binary compatibility again. They could have provided some kind of wrapper, so screen could be aliased to something like "wrapper screen".
Posted Jun 8, 2016 11:21 UTC (Wed)
by matthias (subscriber, #94967)
[Link] (1 responses)
And asking that the administrator should do the job of session management seems like a joke to me. It is enough work when the administrator has to react to a user doing malicious things on purpose.
I expect that the usual tools for having background processes are changed before this change hits stable distributions. Before that, disabling the feature is a reasonable choice. tmux and screen could need proper session management (using PAM) anyway (e.g., to avoid that the ssh-agent gets terminated when the user logs out). The current behaviour looks broken even without the systemd change. PAM will do the necessary things to avoid systemd killing the tmux/screen session in this case. I do not see a problem, when a distribution, which uses systemd as PID 1, needs a version of nohup that is linked against libsystemd.
Once theese changes are in place, the distributions can enable the feature again.
Posted Jun 8, 2016 13:18 UTC (Wed)
by NAR (subscriber, #1313)
[Link]
Posted Jun 8, 2016 21:36 UTC (Wed)
by xtifr (guest, #143)
[Link] (4 responses)
Like a lot of programmers (and other technical people), you're ignoring the very common case of the *family* computer! Dad may log out so the kid can work on a school paper. Doesn't mean that dad wants his emacs "daemon" to die. In fact, he may be relying on it not dying!
Posted Jun 8, 2016 23:50 UTC (Wed)
by johannbg (guest, #65743)
[Link] (3 responses)
Posted Jun 9, 2016 4:26 UTC (Thu)
by xtifr (guest, #143)
[Link] (2 responses)
Not everyone has a screaming, top-of-the-line, latest model machine with all the trimmings. Especially those who are trying to feed three or more children! :)
Posted Jun 9, 2016 10:37 UTC (Thu)
by NAR (subscriber, #1313)
[Link] (1 responses)
Posted Jun 9, 2016 21:45 UTC (Thu)
by mstone_ (subscriber, #66309)
[Link]
^^^ lol, yeah, the machine's unusable for several minutes every time someone "fast" user switches.
Posted Jun 9, 2016 2:51 UTC (Thu)
by kokada (guest, #92849)
[Link]
The workaround was to reduce the time that systemd waits for a process to be killed, however this is a more definitive and less hacky solution, at the cost of changing on how you think about *nix logins.
And yeah, this is a problem with Gnome that should be fixed. However it is the kind of problem that is intermitent, does not occur with everyone, and come back after a while (I didn't had this problem in some point update of Gnome 3.18, got back in 3.20). And I remember to had this problem in KDE too, even before systemd existed. So yeah, an old and annoying problem.
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
> https://github.com/systemd/systemd/commit/97e5530cf20
> referenced two bugreports:
>
> https://bugs.freedesktop.org/show_bug.cgi?id=94508
> https://github.com/systemd/systemd/issues/2900
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?
What breakage does this actually fix?