LinuxCommandLibrary

setsid

creates a session and sets the process group ID

TLDR

Run a program in a new session

$ setsid [program]
copy


Run a program in a new session discarding the resulting output and error
$ setsid [program] > /dev/null 2>&1
copy


Run a program creating a new process
$ setsid --fork [program]
copy


Return the exit code of a program as the exit code of setsid when the program exits
$ setsid --wait [program]
copy


Run a program in a new session setting the current terminal as the controlling terminal
$ setsid --ctty [program]
copy

SYNOPSIS

setsid [options] program [arguments]

DESCRIPTION

setsid runs a program in a new session. The command calls fork(2) if already a process group leader. Otherwise, it executes a program in the current process. This default behavior is possible to override by the --fork option.

OPTIONS

-c, --ctty

Set the controlling terminal to the current one.

-f, --fork

Always create a new process.

-w, --wait

Wait for the execution of the program to end, and return the exit status of this program as the exit status of setsid.

-V, --version

Display version information and exit.

-h, --help

Display help text and exit.

AUTHORS

REPORTING BUGS

For bug reports, use the issue tracker at <https://github.com/util-linux/util-linux/issues>.

AVAILABILITY

The setsid command is part of the util-linux package which can be downloaded from Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.

SEE ALSO

setsid(2)

Copied to clipboard