3 herd and shepherd

The daemon that runs in the background and is responsible for controlling the services is shepherd, while the user interface tool is called herd: it’s the command that allows you to actually herd your daemons1. To perform an action, like stopping a service or calling an action of a service, you use the herd program. It will communicate with shepherd over a Unix Domain Socket.

Thus, you start shepherd once, and then always use herd whenever you want to do something service-related. Since herd passes its current working directory to shepherd, you can pass relative file names without trouble. Both shepherd and herd understand the standard arguments --help, --version and --usage.



In the past, when the GNU Shepherd was known as GNU dmd, the herd command was called deco, for DaEmon COntroller.