> I find that when I do a reboot or poweroff (from command line) running
> processes are not being sent SIGTERM. The one that really annoys me is a text
> editor not receiving it and thus me losing work.
>
> The systemd documentation says that it should be sent; good old init
> used to do this.
>
> Is the documentation wrong or do I need to tweak some config somewhere ?
>
> I am running Debian 13 with the mate desktop. MATE Terminal provides the
> terminal emulation. The editor is my own version of microemacs (which does
> handle SIGTERM correctly).
>
> The GUI (mate, etc) is actually irrelevant - the same thing happens to the
> editor being run on a console.

I have no idea what's really going on, but I think there are two
possible explanations:

- Your editor process is sent *another* signal (e.g. because of the
  disappearance of some other endpoint of one of its file descriptors)
  that makes it die without saving-work, before systemd gets a chance to
  send it a SIGTERM.  [ If that's the case, the problem is in your editor
  which should handle that other signal better.  ]

- Maybe same as above but systemd wouldn't send a SIGTERM anyway.

- Your process is not sent any signal.  I think that would qualify as
  a bug in systemd.

- The filesystem is read-only when your process gets SIGTERM so it can't
  save your work?


=== Stefan

Reply via email to