• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer navigation

The Geek Diary

  • OS
    • Linux
    • CentOS/RHEL
    • VCS
  • Interview Questions
  • Database
    • MariaDB
  • DevOps
    • Docker
    • Shell Scripting
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

setsid: command not found

by Deepika

setsid is a command-line utility in Unix-like operating systems that is used to run a program in a new session. A session is a collection of processes that share a common controlling terminal. By running a program in a new session, setsid detaches it from the controlling terminal of the current session, making it immune to hangups, signals, or other events that would otherwise be sent to the terminal.

In Unix-like systems, every process is associated with a process group, which is a collection of processes that share the same process ID. A process group leader is a process that is responsible for controlling the other processes in the group. If the calling process is not a process group leader, setsid creates a new session and sets the calling process as the session leader. The new session is not controlled by the current terminal by default.

The setsid command can be used to start a new process in the background, without any association with the current terminal. For example, the command setsid my_program & will start my_program in a new session and detach it from the current terminal, allowing it to continue running even after the terminal session has ended.

In addition to detaching a process from a controlling terminal, setsid can also be used to create a daemon process. A daemon process is a background process that runs continuously, without any interactive input or output. By using setsid to create a new session for the daemon process, it can be run independently of any user sessions or terminal sessions, ensuring that it continues to run even if the user logs out.

If you encounter the below error while running the command setsid:

setsid: command not found

you may try installing the below package as per your choice of distribution:

Distribution Command
Debian apt-get install util-linux
Ubuntu apt-get install util-linux
Alpine apk add util-linux
Arch Linux pacman -S util-linux
Kali Linux apt-get install util-linux
CentOS yum install util-linux
Fedora dnf install util-linux
OS X brew install util-linux
Raspbian apt-get install util-linux

setsid Command Examples

1. Run a program in a new session:

# setsid program

2. Run a program in a new session discarding the resulting output and error:

# setsid program > /dev/null 2>&1

3. Run a program creating a new process:

# setsid --fork program

4. Return the exit code of a program as the exit code of setsid when the program exits:

# setsid --wait program

5. Run a program in a new session setting the current terminal as the controlling terminal:

# setsid --ctty program

Summary

Overall, setsid is a useful tool for running background processes or creating daemon processes in Unix-like systems. By creating a new session for the process, it detaches it from the current terminal and allows it to continue running independently of any user sessions or terminal sessions.

Filed Under: Linux

Some more articles you might also be interested in …

  1. How to uninstall aria2 from Ubuntu
  2. fnm: Fast Node.js version manager
  3. latex Command Examples
  4. rpmbuild : command not found
  5. UNIX / Linux : How to change the niceness (priority) of a process
  6. mknod: command not found
  7. jmeter Command Examples
  8. CentOS / RHEL : How to create new LVM based swap partition
  9. mtr Command Examples in Linux
  10. resolvectl: command not found

You May Also Like

Primary Sidebar

Recent Posts

  • Vanilla OS 2 Released: A New Era for Linux Enthusiasts
  • mk Command Examples
  • mixxx Command Examples
  • mix Command Examples

© 2025 · The Geek Diary

  • Archives
  • Contact Us
  • Copyright