[OT] Systemd and forking programs (was systemd can't start a dæmon and doesn't give any error either)
** Apologies for hijacking the thread, I really wanted to start a new one
but I need the perspective of Greg on this **
On Mon, Oct 08, 2018 at 09:02:18AM -0400, Greg Wooledge wrote:
> On Mon, Oct 08, 2018 at 06:17:52PM +0800, Weiwu Zhang wrote:
> You've used an option named "-daemon". I am guessing that this causes
> the process to "daemonize" itself (auto-background, self-background).
> This is what you want if you're on a BSD system in 1989.
> This is NOT what you want if you're on a systemd system in 2018.
I am interested in understanding the above points. I am not a hater and do not
intend to start a flame war here about systemd. I am an old dog who is trying to
understand the new way of doing things.
> You did not specify what TYPE of service this is. Since you didn't specify
> a Type= option, systemd uses the default, which is "simple", which means
> that it expects a single process to run in the foreground.
> So: either omit that "-daemon" option, or whatever it takes to make the
> process run in the foreground like a good process should.
> Tell systemd that your process uses ancient, broken behavior
> (self-backgrounding) by specifying "Type=forking".
> I know which one I would pick. Assuming that dropping -daemon does what
Please explain as to why "forking" is "broken" behaviour so that I can make
informed decisions whether I should use forking or not in my own scripts.
Again this is not a flame bait, I just want to understand Pros and Cons.
<Sammy> that's *IT*. I'm never fucking attempting to install redhat
<Sammy> this is like the 10th fucking machine on which the installer has
imploded immediately after I went through the hell of their
package selection process.
<timball> Sammy: just use debian and never look back
<Sammy> timball: debian iso's are being written at this very moment.