sisungo / airup

🚀 Airup is a modern, portable and blazingly fast implementation of service supervisor and the init daemon.
MIT License
18 stars 1 forks source link

[BUG] Services with kind `forking` hangs the starting task #16

Closed sisungo closed 1 year ago

sisungo commented 1 year ago

When a service is set kind = "forking", starting it waits forever.

Minimal example

[service]
type = "forking"
pid-file = "/var/run/sshd.pid"

[exec]
start = "/usr/sbin/sshd -f /etc/ssh/sshd_config"

Save the file as sshd.airs, and run airup start --sideload sshd.airs sshd.

Expected Behavior

The service started successfully, and the command soon returns.

Actual Behavior

The command would never returns. To query the service, the status is starting. The sshd process started by Airup keeps as a zombie process.

sisungo commented 1 year ago

WARNING: This is a high priority issue. It causes important functions not working.