Skip to content

abbshr/daemonization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

How to daemonize a process

TL; DR: detach the (daemon) process (via setsid)

  1. In parent process: fork

  2. In parent process: exit

  3. In child process: setsid maybe...
    3.1. In child process: fork again => child process B
    3.2. In child process: exit
    3.3. In child process B: setsid

  4. In child process (maybe B): set umask

  5. In child process (maybe B): set I/O redirection

  6. In child process (maybe B): close other fds

  7. In child process (maybe B): change workdir to /

  8. In child process (maybe B): fork/exec the process to run

In Bash

(Warning: Just worked in Linux)

# Usage
./daemonize.sh [command]
ps -ef | grep daemonize.sh
# PPID => 1 (init)

About

创建一个标准的守护进程

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages